lexgui 8.2.1 → 8.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -10,7 +10,7 @@ const g = globalThis;
10
10
  let LX = g.LX;
11
11
  if (!LX) {
12
12
  LX = {
13
- version: '8.2.1',
13
+ version: '8.2.2',
14
14
  ready: false,
15
15
  extensions: [], // Store extensions used
16
16
  extraCommandbarEntries: [], // User specific entries for command bar
@@ -1 +1 @@
1
- {"version":3,"file":"Namespace.js","sources":["../../src/core/Namespace.ts"],"sourcesContent":["// Namespace.ts @jxarco\r\n\r\n/**\r\n * Main namespace\r\n * @namespace LX\r\n */\r\n\r\nconst g = globalThis as any;\r\n\r\n// Update global namespace if not present (Loading module)\r\n// Extension scripts rely on LX being globally available\r\nlet LX: any = g.LX;\r\n\r\nif ( !LX )\r\n{\r\n LX = {\r\n version: '8.2.1',\r\n ready: false,\r\n extensions: [], // Store extensions used\r\n extraCommandbarEntries: [], // User specific entries for command bar\r\n signals: {}, // Events and triggers\r\n activeDraggable: null, // Watch for the current active draggable\r\n\r\n spacingMode: 'default',\r\n layoutMode: 'app',\r\n\r\n MOUSE_LEFT_CLICK: 0,\r\n MOUSE_MIDDLE_CLICK: 1,\r\n MOUSE_RIGHT_CLICK: 2,\r\n\r\n MOUSE_DOUBLE_CLICK: 2,\r\n MOUSE_TRIPLE_CLICK: 3,\r\n\r\n CURVE_MOVEOUT_CLAMP: 0,\r\n CURVE_MOVEOUT_DELETE: 1,\r\n\r\n DRAGGABLE_Z_INDEX: 101\r\n };\r\n\r\n g.LX = LX;\r\n}\r\n\r\nexport { LX };\r\n"],"names":[],"mappings":";AAAA;AAEA;;;AAGG;AAEH,MAAM,CAAC,GAAG,UAAiB;AAE3B;AACA;AACA,IAAI,EAAE,GAAQ,CAAC,CAAC;AAEhB,IAAK,CAAC,EAAE,EACR;AACI,IAAA,EAAE,GAAG;AACD,QAAA,OAAO,EAAE,OAAO;AAChB,QAAA,KAAK,EAAE,KAAK;QACZ,UAAU,EAAE,EAAE;QACd,sBAAsB,EAAE,EAAE;QAC1B,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,IAAI;AAErB,QAAA,WAAW,EAAE,SAAS;AACtB,QAAA,UAAU,EAAE,KAAK;AAEjB,QAAA,gBAAgB,EAAE,CAAC;AACnB,QAAA,kBAAkB,EAAE,CAAC;AACrB,QAAA,iBAAiB,EAAE,CAAC;AAEpB,QAAA,kBAAkB,EAAE,CAAC;AACrB,QAAA,kBAAkB,EAAE,CAAC;AAErB,QAAA,mBAAmB,EAAE,CAAC;AACtB,QAAA,oBAAoB,EAAE,CAAC;AAEvB,QAAA,iBAAiB,EAAE;KACtB;AAED,IAAA,CAAC,CAAC,EAAE,GAAG,EAAE;AACb;;;;"}
1
+ {"version":3,"file":"Namespace.js","sources":["../../src/core/Namespace.ts"],"sourcesContent":["// Namespace.ts @jxarco\r\n\r\n/**\r\n * Main namespace\r\n * @namespace LX\r\n */\r\n\r\nconst g = globalThis as any;\r\n\r\n// Update global namespace if not present (Loading module)\r\n// Extension scripts rely on LX being globally available\r\nlet LX: any = g.LX;\r\n\r\nif ( !LX )\r\n{\r\n LX = {\r\n version: '8.2.2',\r\n ready: false,\r\n extensions: [], // Store extensions used\r\n extraCommandbarEntries: [], // User specific entries for command bar\r\n signals: {}, // Events and triggers\r\n activeDraggable: null, // Watch for the current active draggable\r\n\r\n spacingMode: 'default',\r\n layoutMode: 'app',\r\n\r\n MOUSE_LEFT_CLICK: 0,\r\n MOUSE_MIDDLE_CLICK: 1,\r\n MOUSE_RIGHT_CLICK: 2,\r\n\r\n MOUSE_DOUBLE_CLICK: 2,\r\n MOUSE_TRIPLE_CLICK: 3,\r\n\r\n CURVE_MOVEOUT_CLAMP: 0,\r\n CURVE_MOVEOUT_DELETE: 1,\r\n\r\n DRAGGABLE_Z_INDEX: 101\r\n };\r\n\r\n g.LX = LX;\r\n}\r\n\r\nexport { LX };\r\n"],"names":[],"mappings":";AAAA;AAEA;;;AAGG;AAEH,MAAM,CAAC,GAAG,UAAiB;AAE3B;AACA;AACA,IAAI,EAAE,GAAQ,CAAC,CAAC;AAEhB,IAAK,CAAC,EAAE,EACR;AACI,IAAA,EAAE,GAAG;AACD,QAAA,OAAO,EAAE,OAAO;AAChB,QAAA,KAAK,EAAE,KAAK;QACZ,UAAU,EAAE,EAAE;QACd,sBAAsB,EAAE,EAAE;QAC1B,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,IAAI;AAErB,QAAA,WAAW,EAAE,SAAS;AACtB,QAAA,UAAU,EAAE,KAAK;AAEjB,QAAA,gBAAgB,EAAE,CAAC;AACnB,QAAA,kBAAkB,EAAE,CAAC;AACrB,QAAA,iBAAiB,EAAE,CAAC;AAEpB,QAAA,kBAAkB,EAAE,CAAC;AACrB,QAAA,kBAAkB,EAAE,CAAC;AAErB,QAAA,mBAAmB,EAAE,CAAC;AACtB,QAAA,oBAAoB,EAAE,CAAC;AAEvB,QAAA,iBAAiB,EAAE;KACtB;AAED,IAAA,CAAC,CAAC,EAAE,GAAG,EAAE;AACb;;;;"}
@@ -1,137 +1,137 @@
1
- import { LX } from '../core/Namespace';
2
- declare const Area: any;
3
- declare const Panel: any;
4
- declare const NodeTree: any;
5
- declare const Tree: any;
6
- export type AssetViewAction = 'select' | 'dbl_click' | 'check' | 'clone' | 'move' | 'delete' | 'rename' | 'enter_folder' | 'create-folder' | 'refresh-content' | 'node-drag';
7
- export interface AssetViewItem {
8
- id: string;
9
- type: string;
10
- children: AssetViewItem[];
11
- parent?: AssetViewItem;
12
- path?: string;
13
- src?: string;
14
- dir?: AssetViewItem[];
15
- domEl?: HTMLElement;
16
- metadata: any;
17
- }
18
- interface AssetViewEvent {
19
- type: AssetViewAction;
20
- items?: AssetViewItem[];
21
- result?: AssetViewItem[];
22
- from?: AssetViewItem;
23
- to?: AssetViewItem;
24
- where?: AssetViewItem;
25
- oldName?: string;
26
- newName?: string;
27
- search?: any[];
28
- userInitiated: boolean;
29
- }
30
- /**
31
- * Signature for cancelable events.
32
- * `resolve()` MUST be called by the user to perform the UI action
33
- */
34
- export type AssetViewEventCallback = (event: AssetViewEvent, resolve?: (...args: any[]) => void) => boolean | void | Promise<void>;
35
- /**
36
- * @class AssetView
37
- * @description Asset container with Tree for file system
38
- */
39
- export declare class AssetView {
40
- static LAYOUT_GRID: number;
41
- static LAYOUT_COMPACT: number;
42
- static LAYOUT_LIST: number;
43
- static CONTENT_SORT_ASC: number;
44
- static CONTENT_SORT_DESC: number;
45
- root: HTMLElement;
46
- area: typeof Area | null;
47
- content: HTMLElement;
48
- leftPanel: typeof Panel | null;
49
- toolsPanel: any;
50
- contentPanel: any;
51
- previewPanel: any;
52
- tree: typeof NodeTree | null;
53
- prevData: AssetViewItem[];
54
- nextData: AssetViewItem[];
55
- data: AssetViewItem[];
56
- currentData: AssetViewItem[];
57
- currentFolder: AssetViewItem | undefined;
58
- rootItem: AssetViewItem;
59
- path: string[];
60
- rootPath: string;
61
- selectedItem: AssetViewItem | undefined;
62
- allowedTypes: any;
63
- searchValue: string;
64
- filter: string;
65
- gridScale: number;
66
- layout: number;
67
- sortMode: number;
68
- skipBrowser: boolean;
69
- skipPreview: boolean;
70
- useNativeTitle: boolean;
71
- onlyFolders: boolean;
72
- allowMultipleSelection: boolean;
73
- previewActions: any[];
74
- contextMenu: any[];
75
- itemContextMenuOptions: any;
76
- private _assetsPerPage;
77
- get assetsPerPage(): any;
78
- set assetsPerPage(v: any);
79
- _callbacks: Record<string, AssetViewEventCallback>;
80
- _lastSortBy: string;
81
- _paginator: typeof LX.Pagination | undefined;
82
- _scriptCodeDialog: typeof LX.Dialog | undefined;
83
- _moveItemDialog: typeof LX.Dialog | undefined;
84
- _movingItem: AssetViewItem | undefined;
85
- constructor(options?: any);
86
- /**
87
- * @method on
88
- * @description Stores an event callback for the desired action
89
- */
90
- on(eventName: string, callback: AssetViewEventCallback): void;
91
- /**
92
- * @method load
93
- * @description Loads and processes the input data
94
- */
95
- load(data: any): void;
96
- /**
97
- * @method addItem
98
- * @description Creates an item DOM element
99
- */
100
- addItem(item: AssetViewItem, childIndex: number | undefined, updateTree?: boolean): HTMLLIElement;
101
- /**
102
- * @method clear
103
- * @description Creates all AssetView container panels
104
- */
105
- clear(): void;
106
- _processData(data: any, parent?: AssetViewItem): void;
107
- _updatePath(): void;
108
- _createNavigationBar(panel: typeof Panel): void;
109
- _createTreePanel(area: typeof Area): void;
110
- _subscribeTreeEvents(tree: typeof Tree): void;
111
- _setContentLayout(layoutMode: number): void;
112
- _createContentPanel(area: typeof Area): void;
113
- _makeNameFilterFn(searchValue: string): (name: string) => boolean;
114
- _refreshContent(searchValue?: string, filter?: string, userInitiated?: boolean): void;
115
- _previewAsset(file: AssetViewItem): void;
116
- _processDrop(e: DragEvent): void;
117
- _sortData(sortBy?: string, sortMode?: number): void;
118
- _enterFolder(folderItem: AssetViewItem | undefined, storeCurrent?: boolean): Promise<void>;
119
- _removeItemFromParent(item: AssetViewItem): boolean;
120
- _requestDeleteItem(item: AssetViewItem): void;
121
- _deleteItem(item: AssetViewItem): void;
122
- _requestMoveItemToFolder(item: AssetViewItem, folder: AssetViewItem): void;
123
- _moveItemToFolder(item: AssetViewItem, folder: AssetViewItem): void;
124
- _moveItem(item: AssetViewItem, defaultFolder?: AssetViewItem | AssetViewItem[]): void;
125
- _requestCloneItem(item: AssetViewItem): false | undefined;
126
- _cloneItem(item: AssetViewItem): AssetViewItem;
127
- _getClonedName(originalName: string, siblings: any[]): string;
128
- _requestRenameItem(item: AssetViewItem, newName: string, treeEvent?: boolean): void;
129
- _renameItem(item: AssetViewItem, newName: string, data?: AssetViewItem[]): void;
130
- _renameItemPopover(item: AssetViewItem): void;
131
- _requestCreateFolder(folder?: AssetViewItem): void;
132
- _createFolder(folder?: AssetViewItem): AssetViewItem;
133
- _openScriptInEditor(script: any): void;
134
- _setAssetsPerPage(n: number): void;
135
- _lastModifiedToStringDate(lm: number): string;
136
- }
137
- export {};
1
+ import { LX } from '../core/Namespace';
2
+ declare const Area: any;
3
+ declare const Panel: any;
4
+ declare const NodeTree: any;
5
+ declare const Tree: any;
6
+ export type AssetViewAction = 'select' | 'dbl_click' | 'check' | 'clone' | 'move' | 'delete' | 'rename' | 'enter_folder' | 'create-folder' | 'refresh-content' | 'node-drag';
7
+ export interface AssetViewItem {
8
+ id: string;
9
+ type: string;
10
+ children: AssetViewItem[];
11
+ parent?: AssetViewItem;
12
+ path?: string;
13
+ src?: string;
14
+ dir?: AssetViewItem[];
15
+ domEl?: HTMLElement;
16
+ metadata: any;
17
+ }
18
+ interface AssetViewEvent {
19
+ type: AssetViewAction;
20
+ items?: AssetViewItem[];
21
+ result?: AssetViewItem[];
22
+ from?: AssetViewItem;
23
+ to?: AssetViewItem;
24
+ where?: AssetViewItem;
25
+ oldName?: string;
26
+ newName?: string;
27
+ search?: any[];
28
+ userInitiated: boolean;
29
+ }
30
+ /**
31
+ * Signature for cancelable events.
32
+ * `resolve()` MUST be called by the user to perform the UI action
33
+ */
34
+ export type AssetViewEventCallback = (event: AssetViewEvent, resolve?: (...args: any[]) => void) => boolean | void | Promise<void>;
35
+ /**
36
+ * @class AssetView
37
+ * @description Asset container with Tree for file system
38
+ */
39
+ export declare class AssetView {
40
+ static LAYOUT_GRID: number;
41
+ static LAYOUT_COMPACT: number;
42
+ static LAYOUT_LIST: number;
43
+ static CONTENT_SORT_ASC: number;
44
+ static CONTENT_SORT_DESC: number;
45
+ root: HTMLElement;
46
+ area: typeof Area | null;
47
+ content: HTMLElement;
48
+ leftPanel: typeof Panel | null;
49
+ toolsPanel: any;
50
+ contentPanel: any;
51
+ previewPanel: any;
52
+ tree: typeof NodeTree | null;
53
+ prevData: AssetViewItem[];
54
+ nextData: AssetViewItem[];
55
+ data: AssetViewItem[];
56
+ currentData: AssetViewItem[];
57
+ currentFolder: AssetViewItem | undefined;
58
+ rootItem: AssetViewItem;
59
+ path: string[];
60
+ rootPath: string;
61
+ selectedItem: AssetViewItem | undefined;
62
+ allowedTypes: any;
63
+ searchValue: string;
64
+ filter: string;
65
+ gridScale: number;
66
+ layout: number;
67
+ sortMode: number;
68
+ skipBrowser: boolean;
69
+ skipPreview: boolean;
70
+ useNativeTitle: boolean;
71
+ onlyFolders: boolean;
72
+ allowMultipleSelection: boolean;
73
+ previewActions: any[];
74
+ contextMenu: any[];
75
+ itemContextMenuOptions: any;
76
+ private _assetsPerPage;
77
+ get assetsPerPage(): any;
78
+ set assetsPerPage(v: any);
79
+ _callbacks: Record<string, AssetViewEventCallback>;
80
+ _lastSortBy: string;
81
+ _paginator: typeof LX.Pagination | undefined;
82
+ _scriptCodeDialog: typeof LX.Dialog | undefined;
83
+ _moveItemDialog: typeof LX.Dialog | undefined;
84
+ _movingItem: AssetViewItem | undefined;
85
+ constructor(options?: any);
86
+ /**
87
+ * @method on
88
+ * @description Stores an event callback for the desired action
89
+ */
90
+ on(eventName: string, callback: AssetViewEventCallback): void;
91
+ /**
92
+ * @method load
93
+ * @description Loads and processes the input data
94
+ */
95
+ load(data: any): void;
96
+ /**
97
+ * @method addItem
98
+ * @description Creates an item DOM element
99
+ */
100
+ addItem(item: AssetViewItem, childIndex: number | undefined, updateTree?: boolean): HTMLLIElement;
101
+ /**
102
+ * @method clear
103
+ * @description Creates all AssetView container panels
104
+ */
105
+ clear(): void;
106
+ _processData(data: any, parent?: AssetViewItem): void;
107
+ _updatePath(): void;
108
+ _createNavigationBar(panel: typeof Panel): void;
109
+ _createTreePanel(area: typeof Area): void;
110
+ _subscribeTreeEvents(tree: typeof Tree): void;
111
+ _setContentLayout(layoutMode: number): void;
112
+ _createContentPanel(area: typeof Area): void;
113
+ _makeNameFilterFn(searchValue: string): (name: string) => boolean;
114
+ _refreshContent(searchValue?: string, filter?: string, userInitiated?: boolean): void;
115
+ _previewAsset(file: AssetViewItem): void;
116
+ _processDrop(e: DragEvent): void;
117
+ _sortData(sortBy?: string, sortMode?: number): void;
118
+ _enterFolder(folderItem: AssetViewItem | undefined, storeCurrent?: boolean): Promise<void>;
119
+ _removeItemFromParent(item: AssetViewItem): boolean;
120
+ _requestDeleteItem(item: AssetViewItem): void;
121
+ _deleteItem(item: AssetViewItem): void;
122
+ _requestMoveItemToFolder(item: AssetViewItem, folder: AssetViewItem): void;
123
+ _moveItemToFolder(item: AssetViewItem, folder: AssetViewItem): void;
124
+ _moveItem(item: AssetViewItem, defaultFolder?: AssetViewItem | AssetViewItem[]): void;
125
+ _requestCloneItem(item: AssetViewItem): false | undefined;
126
+ _cloneItem(item: AssetViewItem): AssetViewItem;
127
+ _getClonedName(originalName: string, siblings: any[]): string;
128
+ _requestRenameItem(item: AssetViewItem, newName: string, treeEvent?: boolean): void;
129
+ _renameItem(item: AssetViewItem, newName: string, data?: AssetViewItem[]): void;
130
+ _renameItemPopover(item: AssetViewItem): void;
131
+ _requestCreateFolder(folder?: AssetViewItem): void;
132
+ _createFolder(folder?: AssetViewItem, newFolderName?: string): AssetViewItem;
133
+ _openScriptInEditor(script: any): void;
134
+ _setAssetsPerPage(n: number): void;
135
+ _lastModifiedToStringDate(lm: number): string;
136
+ }
137
+ export {};
@@ -1332,7 +1332,7 @@ class AssetView {
1332
1332
  const onBeforeCreateFolder = this._callbacks['beforeCreateFolder'];
1333
1333
  const onCreateFolder = this._callbacks['createFolder'];
1334
1334
  const resolve = (...args) => {
1335
- const newFolder = this._createFolder(folder);
1335
+ const newFolder = this._createFolder(folder, ...args);
1336
1336
  const event = {
1337
1337
  type: 'create-folder',
1338
1338
  result: [newFolder],
@@ -1354,14 +1354,14 @@ class AssetView {
1354
1354
  resolve();
1355
1355
  }
1356
1356
  }
1357
- _createFolder(folder) {
1357
+ _createFolder(folder, newFolderName) {
1358
1358
  folder = folder ?? this.currentFolder;
1359
1359
  if (!folder) {
1360
1360
  throw ('_createFolder: Something went wrong!');
1361
1361
  }
1362
1362
  const dir = folder.children ?? folder;
1363
1363
  const newFolder = {
1364
- id: this._getClonedName('New Folder', dir),
1364
+ id: this._getClonedName(newFolderName ?? 'New Folder', dir),
1365
1365
  type: 'folder',
1366
1366
  children: [],
1367
1367
  parent: this.currentFolder,
@@ -1373,7 +1373,7 @@ class AssetView {
1373
1373
  if (this._moveItemDialog && this._movingItem) {
1374
1374
  this._moveItem(this._movingItem, folder);
1375
1375
  }
1376
- return folder;
1376
+ return newFolder;
1377
1377
  }
1378
1378
  _openScriptInEditor(script) {
1379
1379
  if (this._scriptCodeDialog) {