OXIESEC PANEL
- Current Dir:
/
/
var
/
www
/
reader
/
_backup
/
tinymce
/
tinymce
/
src
/
themes
/
silver
/
main
/
ts
/
ui
/
core
/
complex
Server IP: 139.59.38.164
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
02/20/2020 06:40:30 AM
rwxr-xr-x
📄
AlignSelect.ts
2.7 KB
02/20/2020 06:40:33 AM
rw-r--r--
📄
BespokeSelect.ts
6.28 KB
02/20/2020 06:40:33 AM
rw-r--r--
📄
FontSelect.ts
5.13 KB
02/20/2020 06:40:34 AM
rw-r--r--
📄
FontsizeSelect.ts
3.12 KB
02/20/2020 06:40:34 AM
rw-r--r--
📄
FormatSelect.ts
2.63 KB
02/20/2020 06:40:35 AM
rw-r--r--
📄
SelectDatasets.ts
1.7 KB
02/20/2020 06:40:35 AM
rw-r--r--
📄
StyleFormat.ts
5.07 KB
02/20/2020 06:40:36 AM
rw-r--r--
📄
StyleSelect.ts
2.79 KB
02/20/2020 06:40:36 AM
rw-r--r--
📁
utils
-
02/20/2020 06:42:40 AM
rwxr-xr-x
Editing: SelectDatasets.ts
Close
/** * Copyright (c) Tiny Technologies, Inc. All rights reserved. * Licensed under the LGPL or a commercial license. * For LGPL see License.txt in the project root for license information. * For commercial licenses see https://www.tiny.cloud/ */ import { Objects } from '@ephox/boulder'; import { Arr } from '@ephox/katamari'; import { SelectData } from './BespokeSelect'; import Editor from 'tinymce/core/api/Editor'; const process = (rawFormats): Array<{ title: string, format: string}> => { return Arr.map(rawFormats, (item) => { let title = item, format = item; // Allow text=value block formats const values = item.split('='); if (values.length > 1) { title = values[0]; format = values[1]; } return { title, format }; }); }; export interface BasicSelectDataset { type: 'basic'; data: Array<{ title: string; format: string; }>; } export interface AdvancedSelectDataset extends SelectData { type: 'advanced'; } const buildBasicStaticDataset = (data): BasicSelectDataset => { return { type: 'basic', data }; }; export enum Delimiter { SemiColon, Space } const split = (rawFormats: string, delimiter: Delimiter): string[] => { if (delimiter === Delimiter.SemiColon) { return rawFormats.replace(/;$/, '').split(';'); } else { return rawFormats.split(' '); } }; const buildBasicSettingsDataset = (editor: Editor, settingName, defaults, delimiter: Delimiter): BasicSelectDataset => { const rawFormats = Objects.readOptFrom<string>(editor.settings, settingName).getOr(defaults); const data = process(split(rawFormats, delimiter)); return { type: 'basic', data }; }; export { buildBasicSettingsDataset, buildBasicStaticDataset };