@genesis-community/golden-layout 2.6.0
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.
- package/LICENSE +21 -0
- package/README.md +24 -0
- package/dist/cjs/index.js +40 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/ts/config/config.js +870 -0
- package/dist/cjs/ts/config/config.js.map +1 -0
- package/dist/cjs/ts/config/resolved-config.js +477 -0
- package/dist/cjs/ts/config/resolved-config.js.map +1 -0
- package/dist/cjs/ts/container/component-container.js +412 -0
- package/dist/cjs/ts/container/component-container.js.map +1 -0
- package/dist/cjs/ts/controls/browser-popout.js +298 -0
- package/dist/cjs/ts/controls/browser-popout.js.map +1 -0
- package/dist/cjs/ts/controls/drag-proxy.js +221 -0
- package/dist/cjs/ts/controls/drag-proxy.js.map +1 -0
- package/dist/cjs/ts/controls/drag-source.js +149 -0
- package/dist/cjs/ts/controls/drag-source.js.map +1 -0
- package/dist/cjs/ts/controls/drop-target-indicator.js +31 -0
- package/dist/cjs/ts/controls/drop-target-indicator.js.map +1 -0
- package/dist/cjs/ts/controls/header-button.js +34 -0
- package/dist/cjs/ts/controls/header-button.js.map +1 -0
- package/dist/cjs/ts/controls/header.js +366 -0
- package/dist/cjs/ts/controls/header.js.map +1 -0
- package/dist/cjs/ts/controls/splitter.js +42 -0
- package/dist/cjs/ts/controls/splitter.js.map +1 -0
- package/dist/cjs/ts/controls/tab.js +262 -0
- package/dist/cjs/ts/controls/tab.js.map +1 -0
- package/dist/cjs/ts/controls/tabs-container.js +236 -0
- package/dist/cjs/ts/controls/tabs-container.js.map +1 -0
- package/dist/cjs/ts/controls/transition-indicator.js +64 -0
- package/dist/cjs/ts/controls/transition-indicator.js.map +1 -0
- package/dist/cjs/ts/errors/external-error.js +46 -0
- package/dist/cjs/ts/errors/external-error.js.map +1 -0
- package/dist/cjs/ts/errors/internal-error.js +38 -0
- package/dist/cjs/ts/errors/internal-error.js.map +1 -0
- package/dist/cjs/ts/golden-layout.js +299 -0
- package/dist/cjs/ts/golden-layout.js.map +1 -0
- package/dist/cjs/ts/items/component-item.js +190 -0
- package/dist/cjs/ts/items/component-item.js.map +1 -0
- package/dist/cjs/ts/items/component-parentable-item.js +18 -0
- package/dist/cjs/ts/items/component-parentable-item.js.map +1 -0
- package/dist/cjs/ts/items/content-item.js +414 -0
- package/dist/cjs/ts/items/content-item.js.map +1 -0
- package/dist/cjs/ts/items/ground-item.js +352 -0
- package/dist/cjs/ts/items/ground-item.js.map +1 -0
- package/dist/cjs/ts/items/row-or-column.js +609 -0
- package/dist/cjs/ts/items/row-or-column.js.map +1 -0
- package/dist/cjs/ts/items/stack.js +841 -0
- package/dist/cjs/ts/items/stack.js.map +1 -0
- package/dist/cjs/ts/layout-manager.js +1618 -0
- package/dist/cjs/ts/layout-manager.js.map +1 -0
- package/dist/cjs/ts/utils/config-minifier.js +218 -0
- package/dist/cjs/ts/utils/config-minifier.js.map +1 -0
- package/dist/cjs/ts/utils/dom-constants.js +3 -0
- package/dist/cjs/ts/utils/dom-constants.js.map +1 -0
- package/dist/cjs/ts/utils/drag-listener.js +132 -0
- package/dist/cjs/ts/utils/drag-listener.js.map +1 -0
- package/dist/cjs/ts/utils/event-emitter.js +201 -0
- package/dist/cjs/ts/utils/event-emitter.js.map +1 -0
- package/dist/cjs/ts/utils/event-hub.js +135 -0
- package/dist/cjs/ts/utils/event-hub.js.map +1 -0
- package/dist/cjs/ts/utils/i18n-strings.js +74 -0
- package/dist/cjs/ts/utils/i18n-strings.js.map +1 -0
- package/dist/cjs/ts/utils/jquery-legacy.js +15 -0
- package/dist/cjs/ts/utils/jquery-legacy.js.map +1 -0
- package/dist/cjs/ts/utils/style-constants.js +11 -0
- package/dist/cjs/ts/utils/style-constants.js.map +1 -0
- package/dist/cjs/ts/utils/types.js +94 -0
- package/dist/cjs/ts/utils/types.js.map +1 -0
- package/dist/cjs/ts/utils/utils.js +211 -0
- package/dist/cjs/ts/utils/utils.js.map +1 -0
- package/dist/cjs/ts/virtual-layout.js +247 -0
- package/dist/cjs/ts/virtual-layout.js.map +1 -0
- package/dist/css/goldenlayout-base.css +319 -0
- package/dist/css/themes/goldenlayout-borderless-dark-theme.css +136 -0
- package/dist/css/themes/goldenlayout-dark-theme.css +139 -0
- package/dist/css/themes/goldenlayout-light-theme.css +129 -0
- package/dist/css/themes/goldenlayout-soda-theme.css +126 -0
- package/dist/css/themes/goldenlayout-translucent-theme.css +152 -0
- package/dist/esm/index.js +21 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/ts/config/config.js +864 -0
- package/dist/esm/ts/config/config.js.map +1 -0
- package/dist/esm/ts/config/resolved-config.js +474 -0
- package/dist/esm/ts/config/resolved-config.js.map +1 -0
- package/dist/esm/ts/container/component-container.js +408 -0
- package/dist/esm/ts/container/component-container.js.map +1 -0
- package/dist/esm/ts/controls/browser-popout.js +294 -0
- package/dist/esm/ts/controls/browser-popout.js.map +1 -0
- package/dist/esm/ts/controls/drag-proxy.js +217 -0
- package/dist/esm/ts/controls/drag-proxy.js.map +1 -0
- package/dist/esm/ts/controls/drag-source.js +145 -0
- package/dist/esm/ts/controls/drag-source.js.map +1 -0
- package/dist/esm/ts/controls/drop-target-indicator.js +27 -0
- package/dist/esm/ts/controls/drop-target-indicator.js.map +1 -0
- package/dist/esm/ts/controls/header-button.js +30 -0
- package/dist/esm/ts/controls/header-button.js.map +1 -0
- package/dist/esm/ts/controls/header.js +362 -0
- package/dist/esm/ts/controls/header.js.map +1 -0
- package/dist/esm/ts/controls/splitter.js +38 -0
- package/dist/esm/ts/controls/splitter.js.map +1 -0
- package/dist/esm/ts/controls/tab.js +258 -0
- package/dist/esm/ts/controls/tab.js.map +1 -0
- package/dist/esm/ts/controls/tabs-container.js +232 -0
- package/dist/esm/ts/controls/tabs-container.js.map +1 -0
- package/dist/esm/ts/controls/transition-indicator.js +60 -0
- package/dist/esm/ts/controls/transition-indicator.js.map +1 -0
- package/dist/esm/ts/errors/external-error.js +38 -0
- package/dist/esm/ts/errors/external-error.js.map +1 -0
- package/dist/esm/ts/errors/internal-error.js +31 -0
- package/dist/esm/ts/errors/internal-error.js.map +1 -0
- package/dist/esm/ts/golden-layout.js +295 -0
- package/dist/esm/ts/golden-layout.js.map +1 -0
- package/dist/esm/ts/items/component-item.js +186 -0
- package/dist/esm/ts/items/component-item.js.map +1 -0
- package/dist/esm/ts/items/component-parentable-item.js +14 -0
- package/dist/esm/ts/items/component-parentable-item.js.map +1 -0
- package/dist/esm/ts/items/content-item.js +410 -0
- package/dist/esm/ts/items/content-item.js.map +1 -0
- package/dist/esm/ts/items/ground-item.js +348 -0
- package/dist/esm/ts/items/ground-item.js.map +1 -0
- package/dist/esm/ts/items/row-or-column.js +605 -0
- package/dist/esm/ts/items/row-or-column.js.map +1 -0
- package/dist/esm/ts/items/stack.js +837 -0
- package/dist/esm/ts/items/stack.js.map +1 -0
- package/dist/esm/ts/layout-manager.js +1614 -0
- package/dist/esm/ts/layout-manager.js.map +1 -0
- package/dist/esm/ts/utils/config-minifier.js +215 -0
- package/dist/esm/ts/utils/config-minifier.js.map +1 -0
- package/dist/esm/ts/utils/dom-constants.js +2 -0
- package/dist/esm/ts/utils/dom-constants.js.map +1 -0
- package/dist/esm/ts/utils/drag-listener.js +128 -0
- package/dist/esm/ts/utils/drag-listener.js.map +1 -0
- package/dist/esm/ts/utils/event-emitter.js +197 -0
- package/dist/esm/ts/utils/event-emitter.js.map +1 -0
- package/dist/esm/ts/utils/event-hub.js +131 -0
- package/dist/esm/ts/utils/event-hub.js.map +1 -0
- package/dist/esm/ts/utils/i18n-strings.js +71 -0
- package/dist/esm/ts/utils/i18n-strings.js.map +1 -0
- package/dist/esm/ts/utils/jquery-legacy.js +11 -0
- package/dist/esm/ts/utils/jquery-legacy.js.map +1 -0
- package/dist/esm/ts/utils/style-constants.js +8 -0
- package/dist/esm/ts/utils/style-constants.js.map +1 -0
- package/dist/esm/ts/utils/types.js +91 -0
- package/dist/esm/ts/utils/types.js.map +1 -0
- package/dist/esm/ts/utils/utils.js +191 -0
- package/dist/esm/ts/utils/utils.js.map +1 -0
- package/dist/esm/ts/virtual-layout.js +243 -0
- package/dist/esm/ts/virtual-layout.js.map +1 -0
- package/dist/img/lm_close_black.png +0 -0
- package/dist/img/lm_close_tab_white.png +0 -0
- package/dist/img/lm_close_white.png +0 -0
- package/dist/img/lm_maximise_black.png +0 -0
- package/dist/img/lm_maximise_white.png +0 -0
- package/dist/img/lm_minimize_black.png +0 -0
- package/dist/img/lm_minimize_white.png +0 -0
- package/dist/img/lm_popin_black.png +0 -0
- package/dist/img/lm_popin_white.png +0 -0
- package/dist/img/lm_popout_black.png +0 -0
- package/dist/img/lm_popout_white.png +0 -0
- package/dist/less/goldenlayout-base.less +422 -0
- package/dist/less/themes/goldenlayout-borderless-dark-theme.less +230 -0
- package/dist/less/themes/goldenlayout-dark-theme.less +233 -0
- package/dist/less/themes/goldenlayout-light-theme.less +223 -0
- package/dist/less/themes/goldenlayout-soda-theme.less +211 -0
- package/dist/less/themes/goldenlayout-translucent-theme.less +237 -0
- package/dist/scss/goldenlayout-base.scss +422 -0
- package/dist/scss/themes/_goldenlayout-var-theme.scss +232 -0
- package/dist/types/golden-layout-untrimmed.d.ts +3428 -0
- package/dist/types/index.d.ts +2246 -0
- package/dist/types/tsdoc-metadata.json +11 -0
- package/package.json +107 -0
- package/src/TOOLCHAIN.md +54 -0
- package/src/img/lm_close_black.png +0 -0
- package/src/img/lm_close_tab_white.png +0 -0
- package/src/img/lm_close_white.png +0 -0
- package/src/img/lm_maximise_black.png +0 -0
- package/src/img/lm_maximise_white.png +0 -0
- package/src/img/lm_minimize_black.png +0 -0
- package/src/img/lm_minimize_white.png +0 -0
- package/src/img/lm_popin_black.png +0 -0
- package/src/img/lm_popin_white.png +0 -0
- package/src/img/lm_popout_black.png +0 -0
- package/src/img/lm_popout_white.png +0 -0
- package/src/index.ts +21 -0
- package/src/less/goldenlayout-base.less +422 -0
- package/src/less/themes/goldenlayout-borderless-dark-theme.less +230 -0
- package/src/less/themes/goldenlayout-dark-theme.less +233 -0
- package/src/less/themes/goldenlayout-light-theme.less +223 -0
- package/src/less/themes/goldenlayout-soda-theme.less +211 -0
- package/src/less/themes/goldenlayout-translucent-theme.less +237 -0
- package/src/scss/goldenlayout-base.scss +422 -0
- package/src/scss/themes/_goldenlayout-var-theme.scss +232 -0
- package/src/ts/config/config.ts +1283 -0
- package/src/ts/config/resolved-config.ts +621 -0
- package/src/ts/container/component-container.ts +500 -0
- package/src/ts/controls/browser-popout.ts +325 -0
- package/src/ts/controls/drag-proxy.ts +259 -0
- package/src/ts/controls/drag-source.ts +167 -0
- package/src/ts/controls/drop-target-indicator.ts +35 -0
- package/src/ts/controls/header-button.ts +39 -0
- package/src/ts/controls/header.ts +483 -0
- package/src/ts/controls/splitter.ts +50 -0
- package/src/ts/controls/tab.ts +293 -0
- package/src/ts/controls/tabs-container.ts +281 -0
- package/src/ts/controls/transition-indicator.ts +78 -0
- package/src/ts/errors/external-error.ts +39 -0
- package/src/ts/errors/internal-error.ts +34 -0
- package/src/ts/golden-layout.ts +365 -0
- package/src/ts/items/component-item.ts +252 -0
- package/src/ts/items/component-parentable-item.ts +16 -0
- package/src/ts/items/content-item.ts +513 -0
- package/src/ts/items/ground-item.ts +404 -0
- package/src/ts/items/row-or-column.ts +707 -0
- package/src/ts/items/stack.ts +975 -0
- package/src/ts/layout-manager.ts +1862 -0
- package/src/ts/utils/config-minifier.ts +235 -0
- package/src/ts/utils/dom-constants.ts +44 -0
- package/src/ts/utils/drag-listener.ts +178 -0
- package/src/ts/utils/event-emitter.ts +275 -0
- package/src/ts/utils/event-hub.ts +163 -0
- package/src/ts/utils/i18n-strings.ts +96 -0
- package/src/ts/utils/jquery-legacy.ts +12 -0
- package/src/ts/utils/style-constants.ts +6 -0
- package/src/ts/utils/types.ts +145 -0
- package/src/ts/utils/utils.ts +206 -0
- package/src/ts/virtual-layout.ts +328 -0
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
import { UnexpectedNullError } from '../errors/internal-error';
|
|
2
|
+
import { EventEmitter } from './event-emitter';
|
|
3
|
+
/**
|
|
4
|
+
* An EventEmitter singleton that propagates events
|
|
5
|
+
* across multiple windows. This is a little bit trickier since
|
|
6
|
+
* windows are allowed to open childWindows in their own right.
|
|
7
|
+
*
|
|
8
|
+
* This means that we deal with a tree of windows. Therefore, we do the event propagation in two phases:
|
|
9
|
+
*
|
|
10
|
+
* - Propagate events from this layout to the parent layout
|
|
11
|
+
* - Repeat until the event arrived at the root layout
|
|
12
|
+
* - Propagate events to this layout and to all children
|
|
13
|
+
* - Repeat until all layouts got the event
|
|
14
|
+
*
|
|
15
|
+
* **WARNING**: Only userBroadcast events are propagated between windows.
|
|
16
|
+
* This means the you have to take care of propagating state changes between windows yourself.
|
|
17
|
+
*
|
|
18
|
+
* @public
|
|
19
|
+
*/
|
|
20
|
+
export class EventHub extends EventEmitter {
|
|
21
|
+
/**
|
|
22
|
+
* Creates a new EventHub instance
|
|
23
|
+
* @param _layoutManager - the layout manager to synchronize between the windows
|
|
24
|
+
* @internal
|
|
25
|
+
*/
|
|
26
|
+
constructor(
|
|
27
|
+
/** @internal */
|
|
28
|
+
_layoutManager) {
|
|
29
|
+
super();
|
|
30
|
+
this._layoutManager = _layoutManager;
|
|
31
|
+
/** @internal */
|
|
32
|
+
this._childEventListener = (childEvent) => this.onEventFromChild(childEvent);
|
|
33
|
+
globalThis.addEventListener(EventHub.ChildEventName, this._childEventListener, { passive: true });
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Emit an event and notify listeners
|
|
37
|
+
*
|
|
38
|
+
* @param eventName - The name of the event
|
|
39
|
+
* @param args - Additional arguments that will be passed to the listener
|
|
40
|
+
* @public
|
|
41
|
+
*/
|
|
42
|
+
emit(eventName, ...args) {
|
|
43
|
+
if (eventName === 'userBroadcast') {
|
|
44
|
+
// Explicitly redirect the user broadcast to our overridden method.
|
|
45
|
+
this.emitUserBroadcast(...args);
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
super.emit(eventName, ...args);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Broadcasts a message to all other currently opened windows.
|
|
53
|
+
* @public
|
|
54
|
+
*/
|
|
55
|
+
emitUserBroadcast(...args) {
|
|
56
|
+
// Step 1: Bubble up the event
|
|
57
|
+
this.handleUserBroadcastEvent('userBroadcast', args);
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Destroys the EventHub
|
|
61
|
+
* @internal
|
|
62
|
+
*/
|
|
63
|
+
destroy() {
|
|
64
|
+
globalThis.removeEventListener(EventHub.ChildEventName, this._childEventListener);
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Internal processor to process local events.
|
|
68
|
+
* @internal
|
|
69
|
+
*/
|
|
70
|
+
handleUserBroadcastEvent(eventName, args) {
|
|
71
|
+
if (this._layoutManager.isSubWindow) {
|
|
72
|
+
// We are a sub window and received an event from one of our children.
|
|
73
|
+
// So propagate it to the Root.
|
|
74
|
+
this.propagateToParent(eventName, args);
|
|
75
|
+
}
|
|
76
|
+
else {
|
|
77
|
+
// We are the root window, propagate it to the subtree below us.
|
|
78
|
+
this.propagateToThisAndSubtree(eventName, args);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Callback for child events raised on the window
|
|
83
|
+
* @internal
|
|
84
|
+
*/
|
|
85
|
+
onEventFromChild(event) {
|
|
86
|
+
const detail = event.detail;
|
|
87
|
+
this.handleUserBroadcastEvent(detail.eventName, detail.args);
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Propagates the event to the parent by emitting
|
|
91
|
+
* it on the parent's DOM window
|
|
92
|
+
* @internal
|
|
93
|
+
*/
|
|
94
|
+
propagateToParent(eventName, args) {
|
|
95
|
+
const detail = {
|
|
96
|
+
layoutManager: this._layoutManager,
|
|
97
|
+
eventName,
|
|
98
|
+
args: args,
|
|
99
|
+
};
|
|
100
|
+
const eventInit = {
|
|
101
|
+
bubbles: true,
|
|
102
|
+
cancelable: true,
|
|
103
|
+
detail,
|
|
104
|
+
};
|
|
105
|
+
const event = new CustomEvent(EventHub.ChildEventName, eventInit);
|
|
106
|
+
const opener = globalThis.opener;
|
|
107
|
+
if (opener === null) {
|
|
108
|
+
throw new UnexpectedNullError('EHPTP15778');
|
|
109
|
+
}
|
|
110
|
+
opener.dispatchEvent(event);
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Propagate events to the whole subtree under this event hub.
|
|
114
|
+
* @internal
|
|
115
|
+
*/
|
|
116
|
+
propagateToThisAndSubtree(eventName, args) {
|
|
117
|
+
this.emitUnknown(eventName, ...args);
|
|
118
|
+
for (let i = 0; i < this._layoutManager.openPopouts.length; i++) {
|
|
119
|
+
const childGl = this._layoutManager.openPopouts[i].getGlInstance();
|
|
120
|
+
if (childGl) {
|
|
121
|
+
childGl.eventHub.propagateToThisAndSubtree(eventName, args);
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
/** @public */
|
|
127
|
+
(function (EventHub) {
|
|
128
|
+
/** @internal */
|
|
129
|
+
EventHub.ChildEventName = 'gl_child_event';
|
|
130
|
+
})(EventHub || (EventHub = {}));
|
|
131
|
+
//# sourceMappingURL=event-hub.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"event-hub.js","sourceRoot":"","sources":["../../../../src/ts/utils/event-hub.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { AssertError } from '../errors/internal-error';
|
|
2
|
+
/** @public */
|
|
3
|
+
export var I18nStrings;
|
|
4
|
+
(function (I18nStrings) {
|
|
5
|
+
/** @internal */
|
|
6
|
+
let initialised = false;
|
|
7
|
+
/** @internal */
|
|
8
|
+
const infosObject = {
|
|
9
|
+
PopoutCannotBeCreatedWithGroundItemConfig: {
|
|
10
|
+
id: 0 /* I18nStringId.PopoutCannotBeCreatedWithGroundItemConfig */,
|
|
11
|
+
default: 'Popout cannot be created with ground ItemConfig'
|
|
12
|
+
},
|
|
13
|
+
PleaseRegisterAConstructorFunction: {
|
|
14
|
+
id: 1 /* I18nStringId.PleaseRegisterAConstructorFunction */,
|
|
15
|
+
default: 'Please register a constructor function'
|
|
16
|
+
},
|
|
17
|
+
ComponentTypeNotRegisteredAndBindComponentEventHandlerNotAssigned: {
|
|
18
|
+
id: 2 /* I18nStringId.ComponentTypeNotRegisteredAndBindComponentEventHandlerNotAssigned */,
|
|
19
|
+
default: 'Component type not registered and BindComponentEvent handler not assigned',
|
|
20
|
+
},
|
|
21
|
+
ComponentIsAlreadyRegistered: {
|
|
22
|
+
id: 3 /* I18nStringId.ComponentIsAlreadyRegistered */,
|
|
23
|
+
default: 'Component is already registered',
|
|
24
|
+
},
|
|
25
|
+
ComponentIsNotVirtuable: {
|
|
26
|
+
id: 4 /* I18nStringId.ComponentIsNotVirtuable */,
|
|
27
|
+
default: 'Component is not virtuable. Requires rootHtmlElement field/getter',
|
|
28
|
+
},
|
|
29
|
+
VirtualComponentDoesNotHaveRootHtmlElement: {
|
|
30
|
+
id: 5 /* I18nStringId.VirtualComponentDoesNotHaveRootHtmlElement */,
|
|
31
|
+
default: 'Virtual component does not have getter "rootHtmlElement"',
|
|
32
|
+
},
|
|
33
|
+
ItemConfigIsNotTypeComponent: {
|
|
34
|
+
id: 6 /* I18nStringId.ItemConfigIsNotTypeComponent */,
|
|
35
|
+
default: 'ItemConfig is not of type component',
|
|
36
|
+
},
|
|
37
|
+
InvalidNumberPartInSizeString: {
|
|
38
|
+
id: 7 /* I18nStringId.InvalidNumberPartInSizeString */,
|
|
39
|
+
default: 'Invalid number part in size string',
|
|
40
|
+
},
|
|
41
|
+
UnknownUnitInSizeString: {
|
|
42
|
+
id: 8 /* I18nStringId.UnknownUnitInSizeString */,
|
|
43
|
+
default: 'Unknown unit in size string',
|
|
44
|
+
},
|
|
45
|
+
UnsupportedUnitInSizeString: {
|
|
46
|
+
id: 9 /* I18nStringId.UnsupportedUnitInSizeString */,
|
|
47
|
+
default: 'Unsupported unit in size string',
|
|
48
|
+
},
|
|
49
|
+
};
|
|
50
|
+
I18nStrings.idCount = Object.keys(infosObject).length;
|
|
51
|
+
/** @internal */
|
|
52
|
+
const infos = Object.values(infosObject);
|
|
53
|
+
function checkInitialise() {
|
|
54
|
+
if (!initialised) {
|
|
55
|
+
for (let i = 0; i < I18nStrings.idCount; i++) {
|
|
56
|
+
const info = infos[i];
|
|
57
|
+
if (info.id !== i) {
|
|
58
|
+
throw new AssertError('INSI00110', `${i}: ${info.id}`);
|
|
59
|
+
}
|
|
60
|
+
else {
|
|
61
|
+
i18nStrings[i] = info.default;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
initialised = true;
|
|
66
|
+
}
|
|
67
|
+
I18nStrings.checkInitialise = checkInitialise;
|
|
68
|
+
})(I18nStrings || (I18nStrings = {}));
|
|
69
|
+
/** @public */
|
|
70
|
+
export const i18nStrings = new Array(I18nStrings.idCount);
|
|
71
|
+
//# sourceMappingURL=i18n-strings.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"i18n-strings.js","sourceRoot":"","sources":["../../../../src/ts/utils/i18n-strings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAgBvD,cAAc;AACd,MAAM,KAAW,WAAW,CA2E3B;AA3ED,WAAiB,WAAW;IACxB,gBAAgB;IAChB,IAAI,WAAW,GAAG,KAAK,CAAC;IAWxB,gBAAgB;IAChB,MAAM,WAAW,GAAgB;QAC7B,yCAAyC,EAAE;YACvC,EAAE,gEAAwD;YAC1D,OAAO,EAAE,iDAAiD;SAC7D;QACD,kCAAkC,EAAE;YAChC,EAAE,yDAAiD;YACnD,OAAO,EAAE,wCAAwC;SACpD;QACD,iEAAiE,EAAE;YAC/D,EAAE,wFAAgF;YAClF,OAAO,EAAE,2EAA2E;SACvF;QACD,4BAA4B,EAAE;YAC1B,EAAE,mDAA2C;YAC7C,OAAO,EAAE,iCAAiC;SAC7C;QACD,uBAAuB,EAAE;YACrB,EAAE,8CAAsC;YACxC,OAAO,EAAE,mEAAmE;SAC/E;QACD,0CAA0C,EAAE;YACxC,EAAE,iEAAyD;YAC3D,OAAO,EAAE,0DAA0D;SACtE;QACD,4BAA4B,EAAE;YAC1B,EAAE,mDAA2C;YAC7C,OAAO,EAAE,qCAAqC;SACjD;QAED,6BAA6B,EAAE;YAC3B,EAAE,oDAA4C;YAC9C,OAAO,EAAE,oCAAoC;SAChD;QACD,uBAAuB,EAAE;YACrB,EAAE,8CAAsC;YACxC,OAAO,EAAE,6BAA6B;SACzC;QACD,2BAA2B,EAAE;YACzB,EAAE,kDAA0C;YAC5C,OAAO,EAAE,iCAAiC;SAC7C;KACJ,CAAA;IAEY,mBAAO,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC;IACvD,gBAAgB;IAChB,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IAEzC,SAAgB,eAAe;QAC3B,IAAI,CAAC,WAAW,EAAE;YACd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAA,OAAO,EAAE,CAAC,EAAE,EAAE;gBAC9B,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBACtB,IAAI,IAAI,CAAC,EAAE,KAAK,CAAC,EAAE;oBACf,MAAM,IAAI,WAAW,CAAC,WAAW,EAAE,GAAG,CAAC,KAAK,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;iBAC1D;qBAAM;oBACH,WAAW,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC;iBACjC;aACJ;SACJ;QACD,WAAW,GAAG,IAAI,CAAC;IACvB,CAAC;IAZe,2BAAe,kBAY9B,CAAA;AACL,CAAC,EA3EgB,WAAW,KAAX,WAAW,QA2E3B;AAED,cAAc;AACd,MAAM,CAAC,MAAM,WAAW,GAAG,IAAI,KAAK,CAAS,WAAW,CAAC,OAAO,CAAC,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { pixelsToNumber } from './utils';
|
|
2
|
+
/** @internal */
|
|
3
|
+
export function getJQueryLeftAndTop(element) {
|
|
4
|
+
const style = getComputedStyle(element, null);
|
|
5
|
+
const leftAndTop = {
|
|
6
|
+
left: pixelsToNumber(style.left),
|
|
7
|
+
top: pixelsToNumber(style.top),
|
|
8
|
+
};
|
|
9
|
+
return leftAndTop;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=jquery-legacy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jquery-legacy.js","sourceRoot":"","sources":["../../../../src/ts/utils/jquery-legacy.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAEzC,gBAAgB;AAChB,MAAM,UAAU,mBAAmB,CAAC,OAAoB;IACpD,MAAM,KAAK,GAAG,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC9C,MAAM,UAAU,GAAe;QAC3B,IAAI,EAAE,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC;QAChC,GAAG,EAAE,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC;KACjC,CAAA;IACD,OAAO,UAAU,CAAC;AACtB,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/** @public */
|
|
2
|
+
export var StyleConstants;
|
|
3
|
+
(function (StyleConstants) {
|
|
4
|
+
StyleConstants.defaultComponentBaseZIndex = 'auto';
|
|
5
|
+
StyleConstants.defaultComponentDragZIndex = '32';
|
|
6
|
+
StyleConstants.defaultComponentStackMaximisedZIndex = '41';
|
|
7
|
+
})(StyleConstants || (StyleConstants = {}));
|
|
8
|
+
//# sourceMappingURL=style-constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"style-constants.js","sourceRoot":"","sources":["../../../../src/ts/utils/style-constants.ts"],"names":[],"mappings":"AAAA,cAAc;AACd,MAAM,KAAW,cAAc,CAI9B;AAJD,WAAiB,cAAc;IACd,yCAA0B,GAAG,MAAM,CAAC;IACpC,yCAA0B,GAAG,IAAI,CAAC;IAClC,mDAAoC,GAAG,IAAI,CAAC;AAC7D,CAAC,EAJgB,cAAc,KAAd,cAAc,QAI9B"}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import { UnreachableCaseError } from '../errors/internal-error';
|
|
2
|
+
import { StyleConstants } from './style-constants';
|
|
3
|
+
/** @internal */
|
|
4
|
+
export var WidthOrHeightPropertyName;
|
|
5
|
+
(function (WidthOrHeightPropertyName) {
|
|
6
|
+
WidthOrHeightPropertyName.width = 'width';
|
|
7
|
+
WidthOrHeightPropertyName.height = 'height';
|
|
8
|
+
})(WidthOrHeightPropertyName || (WidthOrHeightPropertyName = {}));
|
|
9
|
+
/** @public */
|
|
10
|
+
export var Side;
|
|
11
|
+
(function (Side) {
|
|
12
|
+
Side.top = 'top';
|
|
13
|
+
Side.left = 'left';
|
|
14
|
+
Side.right = 'right';
|
|
15
|
+
Side.bottom = 'bottom';
|
|
16
|
+
})(Side || (Side = {}));
|
|
17
|
+
/** @public */
|
|
18
|
+
export var LogicalZIndex;
|
|
19
|
+
(function (LogicalZIndex) {
|
|
20
|
+
LogicalZIndex.base = 'base';
|
|
21
|
+
LogicalZIndex.drag = 'drag';
|
|
22
|
+
LogicalZIndex.stackMaximised = 'stackMaximised';
|
|
23
|
+
})(LogicalZIndex || (LogicalZIndex = {}));
|
|
24
|
+
/** @public */
|
|
25
|
+
export const LogicalZIndexToDefaultMap = {
|
|
26
|
+
base: StyleConstants.defaultComponentBaseZIndex,
|
|
27
|
+
drag: StyleConstants.defaultComponentDragZIndex,
|
|
28
|
+
stackMaximised: StyleConstants.defaultComponentStackMaximisedZIndex,
|
|
29
|
+
};
|
|
30
|
+
/** @public */
|
|
31
|
+
export var JsonValue;
|
|
32
|
+
(function (JsonValue) {
|
|
33
|
+
function isJson(value) {
|
|
34
|
+
return isJsonObject(value);
|
|
35
|
+
}
|
|
36
|
+
JsonValue.isJson = isJson;
|
|
37
|
+
// eslint-disable-next-line @typescript-eslint/ban-types
|
|
38
|
+
function isJsonObject(value) {
|
|
39
|
+
return !Array.isArray(value) && value !== null && typeof value === 'object';
|
|
40
|
+
}
|
|
41
|
+
JsonValue.isJsonObject = isJsonObject;
|
|
42
|
+
})(JsonValue || (JsonValue = {}));
|
|
43
|
+
/** @public */
|
|
44
|
+
export var ItemType;
|
|
45
|
+
(function (ItemType) {
|
|
46
|
+
ItemType.ground = 'ground';
|
|
47
|
+
ItemType.row = 'row';
|
|
48
|
+
ItemType.column = 'column';
|
|
49
|
+
ItemType.stack = 'stack';
|
|
50
|
+
ItemType.component = 'component';
|
|
51
|
+
})(ItemType || (ItemType = {}));
|
|
52
|
+
/** @public */
|
|
53
|
+
export var ResponsiveMode;
|
|
54
|
+
(function (ResponsiveMode) {
|
|
55
|
+
ResponsiveMode.none = 'none';
|
|
56
|
+
ResponsiveMode.always = 'always';
|
|
57
|
+
ResponsiveMode.onload = 'onload';
|
|
58
|
+
})(ResponsiveMode || (ResponsiveMode = {}));
|
|
59
|
+
/** @public */
|
|
60
|
+
export var SizeUnitEnum;
|
|
61
|
+
(function (SizeUnitEnum) {
|
|
62
|
+
SizeUnitEnum["Pixel"] = "px";
|
|
63
|
+
SizeUnitEnum["Percent"] = "%";
|
|
64
|
+
SizeUnitEnum["Fractional"] = "fr";
|
|
65
|
+
SizeUnitEnum["Em"] = "em";
|
|
66
|
+
})(SizeUnitEnum || (SizeUnitEnum = {}));
|
|
67
|
+
/** @public */
|
|
68
|
+
(function (SizeUnitEnum) {
|
|
69
|
+
function tryParse(value) {
|
|
70
|
+
switch (value) {
|
|
71
|
+
case SizeUnitEnum.Pixel: return SizeUnitEnum.Pixel;
|
|
72
|
+
case SizeUnitEnum.Percent: return SizeUnitEnum.Percent;
|
|
73
|
+
case SizeUnitEnum.Fractional: return SizeUnitEnum.Fractional;
|
|
74
|
+
case SizeUnitEnum.Em: return SizeUnitEnum.Em;
|
|
75
|
+
default: return undefined;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
SizeUnitEnum.tryParse = tryParse;
|
|
79
|
+
function format(value) {
|
|
80
|
+
switch (value) {
|
|
81
|
+
case SizeUnitEnum.Pixel: return SizeUnitEnum.Pixel;
|
|
82
|
+
case SizeUnitEnum.Percent: return SizeUnitEnum.Percent;
|
|
83
|
+
case SizeUnitEnum.Fractional: return SizeUnitEnum.Fractional;
|
|
84
|
+
case SizeUnitEnum.Em: return SizeUnitEnum.Em;
|
|
85
|
+
default:
|
|
86
|
+
throw new UnreachableCaseError('SUEF44998', value);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
SizeUnitEnum.format = format;
|
|
90
|
+
})(SizeUnitEnum || (SizeUnitEnum = {}));
|
|
91
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/ts/utils/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
/** @internal */
|
|
2
|
+
export function numberToPixels(value) {
|
|
3
|
+
return value.toString(10) + 'px';
|
|
4
|
+
}
|
|
5
|
+
/** @internal */
|
|
6
|
+
export function pixelsToNumber(value) {
|
|
7
|
+
const numberStr = value.replace("px", "");
|
|
8
|
+
return parseFloat(numberStr);
|
|
9
|
+
}
|
|
10
|
+
/** @internal */
|
|
11
|
+
export function splitStringAtFirstNonNumericChar(value) {
|
|
12
|
+
value = value.trimStart();
|
|
13
|
+
const length = value.length;
|
|
14
|
+
if (length === 0) {
|
|
15
|
+
return { numericPart: '', firstNonNumericCharPart: '' };
|
|
16
|
+
}
|
|
17
|
+
else {
|
|
18
|
+
let firstNonDigitPartIndex = length;
|
|
19
|
+
let gotDecimalPoint = false;
|
|
20
|
+
for (let i = 0; i < length; i++) {
|
|
21
|
+
const char = value[i];
|
|
22
|
+
if (!isDigit(char)) {
|
|
23
|
+
if (char !== '.') {
|
|
24
|
+
firstNonDigitPartIndex = i;
|
|
25
|
+
break;
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
if (gotDecimalPoint) {
|
|
29
|
+
firstNonDigitPartIndex = i;
|
|
30
|
+
break;
|
|
31
|
+
}
|
|
32
|
+
else {
|
|
33
|
+
gotDecimalPoint = true;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
const digitsPart = value.substring(0, firstNonDigitPartIndex);
|
|
39
|
+
const firstNonDigitPart = value.substring(firstNonDigitPartIndex).trim();
|
|
40
|
+
return { numericPart: digitsPart, firstNonNumericCharPart: firstNonDigitPart };
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
/** @internal */
|
|
44
|
+
export function isDigit(char) {
|
|
45
|
+
return char >= '0' && char <= '9';
|
|
46
|
+
}
|
|
47
|
+
/** @internal */
|
|
48
|
+
export function getElementWidth(element) {
|
|
49
|
+
return element.offsetWidth;
|
|
50
|
+
}
|
|
51
|
+
/** @internal */
|
|
52
|
+
export function setElementWidth(element, width) {
|
|
53
|
+
const widthAsPixels = numberToPixels(width);
|
|
54
|
+
element.style.width = widthAsPixels;
|
|
55
|
+
}
|
|
56
|
+
/** @internal */
|
|
57
|
+
export function getElementHeight(element) {
|
|
58
|
+
return element.offsetHeight;
|
|
59
|
+
}
|
|
60
|
+
/** @internal */
|
|
61
|
+
export function setElementHeight(element, height) {
|
|
62
|
+
const heightAsPixels = numberToPixels(height);
|
|
63
|
+
element.style.height = heightAsPixels;
|
|
64
|
+
}
|
|
65
|
+
/** @internal */
|
|
66
|
+
export function getElementWidthAndHeight(element) {
|
|
67
|
+
return {
|
|
68
|
+
width: element.offsetWidth,
|
|
69
|
+
height: element.offsetHeight,
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
/** @internal */
|
|
73
|
+
export function setElementDisplayVisibility(element, visible) {
|
|
74
|
+
if (visible) {
|
|
75
|
+
element.style.display = '';
|
|
76
|
+
}
|
|
77
|
+
else {
|
|
78
|
+
element.style.display = 'none';
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
/** @internal */
|
|
82
|
+
export function ensureElementPositionAbsolute(element) {
|
|
83
|
+
const absolutePosition = 'absolute';
|
|
84
|
+
if (element.style.position !== absolutePosition) {
|
|
85
|
+
element.style.position = absolutePosition;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Replacement for JQuery $.extend(target, obj)
|
|
90
|
+
* @internal
|
|
91
|
+
*/
|
|
92
|
+
export function extend(target, obj) {
|
|
93
|
+
for (const key in obj) {
|
|
94
|
+
if (obj.hasOwnProperty(key)) {
|
|
95
|
+
target[key] = obj[key];
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
return target;
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Replacement for JQuery $.extend(true, target, obj)
|
|
102
|
+
* @internal
|
|
103
|
+
*/
|
|
104
|
+
export function deepExtend(target, obj) {
|
|
105
|
+
if (obj !== undefined) {
|
|
106
|
+
for (const key in obj) {
|
|
107
|
+
if (obj.hasOwnProperty(key)) {
|
|
108
|
+
const value = obj[key];
|
|
109
|
+
const existingTarget = target[key];
|
|
110
|
+
target[key] = deepExtendValue(existingTarget, value);
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
return target;
|
|
115
|
+
}
|
|
116
|
+
/** @internal */
|
|
117
|
+
export function deepExtendValue(existingTarget, value) {
|
|
118
|
+
if (typeof value !== 'object') {
|
|
119
|
+
return value;
|
|
120
|
+
}
|
|
121
|
+
else {
|
|
122
|
+
if (Array.isArray(value)) {
|
|
123
|
+
const length = value.length;
|
|
124
|
+
const targetArray = new Array(length);
|
|
125
|
+
for (let i = 0; i < length; i++) {
|
|
126
|
+
const element = value[i];
|
|
127
|
+
targetArray[i] = deepExtendValue({}, element);
|
|
128
|
+
}
|
|
129
|
+
return targetArray;
|
|
130
|
+
}
|
|
131
|
+
else {
|
|
132
|
+
if (value === null) {
|
|
133
|
+
return null;
|
|
134
|
+
}
|
|
135
|
+
else {
|
|
136
|
+
const valueObj = value;
|
|
137
|
+
if (existingTarget === undefined) {
|
|
138
|
+
return deepExtend({}, valueObj); // overwrite
|
|
139
|
+
}
|
|
140
|
+
else {
|
|
141
|
+
if (typeof existingTarget !== "object") {
|
|
142
|
+
return deepExtend({}, valueObj); // overwrite
|
|
143
|
+
}
|
|
144
|
+
else {
|
|
145
|
+
if (Array.isArray(existingTarget)) {
|
|
146
|
+
return deepExtend({}, valueObj); // overwrite
|
|
147
|
+
}
|
|
148
|
+
else {
|
|
149
|
+
if (existingTarget === null) {
|
|
150
|
+
return deepExtend({}, valueObj); // overwrite
|
|
151
|
+
}
|
|
152
|
+
else {
|
|
153
|
+
const existingTargetObj = existingTarget;
|
|
154
|
+
return deepExtend(existingTargetObj, valueObj); // merge
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
/** @internal */
|
|
164
|
+
export function removeFromArray(item, array) {
|
|
165
|
+
const index = array.indexOf(item);
|
|
166
|
+
if (index === -1) {
|
|
167
|
+
throw new Error('Can\'t remove item from array. Item is not in the array');
|
|
168
|
+
}
|
|
169
|
+
array.splice(index, 1);
|
|
170
|
+
}
|
|
171
|
+
/** @internal */
|
|
172
|
+
export function getUniqueId() {
|
|
173
|
+
return (Math.random() * 1000000000000000)
|
|
174
|
+
.toString(36)
|
|
175
|
+
.replace('.', '');
|
|
176
|
+
}
|
|
177
|
+
/** @internal */
|
|
178
|
+
export function getErrorMessage(e) {
|
|
179
|
+
if (e instanceof Error) {
|
|
180
|
+
return e.message;
|
|
181
|
+
}
|
|
182
|
+
else {
|
|
183
|
+
if (typeof e === 'string') {
|
|
184
|
+
return e;
|
|
185
|
+
}
|
|
186
|
+
else {
|
|
187
|
+
return 'Unknown Error';
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/ts/utils/utils.ts"],"names":[],"mappings":"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"}
|