@genesislcap/foundation-layout 14.375.2 → 14.376.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.
Files changed (2) hide show
  1. package/dist/custom-elements.json +721 -721
  2. package/package.json +13 -13
@@ -171,861 +171,377 @@
171
171
  },
172
172
  {
173
173
  "kind": "javascript-module",
174
- "path": "src/styles/constants.ts",
175
- "declarations": [
176
- {
177
- "kind": "function",
178
- "name": "glVisualConfig",
179
- "return": {
180
- "type": {
181
- "text": "Omit<LayoutConfig, 'root'>"
182
- }
183
- }
184
- },
185
- {
186
- "kind": "variable",
187
- "name": "LAYOUT_ICONS",
188
- "type": {
189
- "text": "{\n renameSVG,\n maximiseSVG,\n minimiseSVG,\n closeSVG,\n tabDropdownSVG,\n popoutSVG,\n}"
190
- },
191
- "default": "{\n renameSVG,\n maximiseSVG,\n minimiseSVG,\n closeSVG,\n tabDropdownSVG,\n popoutSVG,\n}",
192
- "description": "A collection of SVG icons in base64 format.",
193
- "privacy": "public"
194
- }
195
- ],
196
- "exports": [
197
- {
198
- "kind": "js",
199
- "name": "glVisualConfig",
200
- "declaration": {
201
- "name": "glVisualConfig",
202
- "module": "src/styles/constants.ts"
203
- }
204
- },
205
- {
206
- "kind": "js",
207
- "name": "LAYOUT_ICONS",
208
- "declaration": {
209
- "name": "LAYOUT_ICONS",
210
- "module": "src/styles/constants.ts"
211
- }
212
- }
213
- ]
214
- },
215
- {
216
- "kind": "javascript-module",
217
- "path": "src/styles/dragging.styles.ts",
218
- "declarations": [
219
- {
220
- "kind": "variable",
221
- "name": "globalDraggingStyles",
222
- "default": "`\n .lm_dragProxy .lm_content {\n box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.9);\n }\n .lm_dropTargetIndicator {\n outline: 1px dashed #cccccc;\n transition: all 200ms ease;\n }\n .lm_dropTargetIndicator .lm_inner {\n background: var(${neutralFillStealthRest.cssCustomProperty});\n opacity: 0.2;\n }\n .lm_dragProxy.lm_left .lm_header,\n .lm_dragProxy.lm_right .lm_header {\n width: 20px;\n float: left;\n vertical-align: top;\n }\n .lm_dragProxy.lm_left .lm_header .lm_tabs,\n .lm_dragProxy.lm_right .lm_header .lm_tabs {\n transform-origin: left top;\n top: 0;\n width: 1000px;\n }\n .lm_dragProxy.lm_left .lm_header .lm_controls,\n .lm_dragProxy.lm_right .lm_header .lm_controls {\n bottom: 0;\n }\n .lm_dragProxy.lm_left .lm_items,\n .lm_dragProxy.lm_right .lm_items {\n float: left;\n }\n .lm_dragProxy.lm_left .lm_header .lm_tabs {\n transform: rotate(-90deg) scaleX(-1);\n left: 0;\n }\n .lm_dragProxy.lm_left .lm_header .lm_tabs .lm_tab {\n transform: scaleX(-1);\n margin-top: 1px;\n }\n .lm_dragProxy.lm_left .lm_header .lm_tabdropdown_list {\n top: initial;\n right: initial;\n left: 20px;\n }\n .lm_dragProxy.lm_right .lm_content {\n float: left;\n }\n .lm_dragProxy.lm_right .lm_header .lm_tabs {\n transform: rotate(90deg) scaleX(1);\n left: 100%;\n margin-left: 0;\n }\n .lm_dragProxy.lm_right .lm_header .lm_controls {\n left: 3px;\n }\n .lm_dragProxy.lm_right .lm_header .lm_tabdropdown_list {\n top: initial;\n right: 20px;\n }\n .lm_dragProxy.lm_bottom .lm_header .lm_tab {\n margin-top: 0;\n border-top: none;\n }\n .lm_dragProxy.lm_bottom .lm_header .lm_controls,\n .lm_stack.lm_bottom .lm_header .lm_controls {\n top: 3px;\n }\n .lm_dragProxy.lm_bottom .lm_header .lm_tabdropdown_list,\n .lm_stack.lm_bottom .lm_header .lm_tabdropdown_list {\n top: initial;\n bottom: 20px;\n }\n .lm_dragProxy {\n cursor: move;\n position: absolute;\n top: 0;\n left: 0;\n z-index: 30;\n }\n .lm_dragProxy .lm_header {\n background: transparent;\n }\n .lm_dragProxy .lm_title {\n color: white;\n padding-left: 10px;\n }\n .lm_dragProxy .lm_content {\n border-top: none;\n overflow: hidden;\n }\n .lm_dropTargetIndicator {\n display: none;\n position: absolute;\n z-index: 20;\n }\n .lm_dropTargetIndicator .lm_inner {\n width: 100%;\n height: 100%;\n position: relative;\n top: 0;\n left: 0;\n }\n .lm_transition_indicator {\n display: none;\n width: 20px;\n height: 20px;\n position: absolute;\n top: 0;\n left: 0;\n z-index: 20;\n }\n`",
223
- "description": "This is defined as a string rather than a css template\nbecause it is applied to a CSSStyleSheet object rather than\nused as a FAST template"
224
- }
225
- ],
226
- "exports": [
227
- {
228
- "kind": "js",
229
- "name": "globalDraggingStyles",
230
- "declaration": {
231
- "name": "globalDraggingStyles",
232
- "module": "src/styles/dragging.styles.ts"
233
- }
234
- }
235
- ]
236
- },
237
- {
238
- "kind": "javascript-module",
239
- "path": "src/styles/index.ts",
174
+ "path": "src/main/index.ts",
240
175
  "declarations": [],
241
176
  "exports": [
242
177
  {
243
178
  "kind": "js",
244
- "name": "*",
179
+ "name": "FoundationLayoutItem",
245
180
  "declaration": {
246
- "name": "*",
247
- "package": "./constants"
181
+ "name": "FoundationLayoutItem",
182
+ "module": "./layout-item"
248
183
  }
249
184
  },
250
185
  {
251
186
  "kind": "js",
252
- "name": "*",
187
+ "name": "FoundationLayoutRegion",
253
188
  "declaration": {
254
- "name": "*",
255
- "package": "./dragging.styles"
189
+ "name": "FoundationLayoutRegion",
190
+ "module": "./layout-region"
256
191
  }
257
192
  },
258
193
  {
259
194
  "kind": "js",
260
- "name": "*",
195
+ "name": "FoundationLayout",
261
196
  "declaration": {
262
- "name": "*",
263
- "package": "./layout.styles"
197
+ "name": "FoundationLayout",
198
+ "module": "./layout-main"
264
199
  }
265
- }
266
- ]
267
- },
268
- {
269
- "kind": "javascript-module",
270
- "path": "src/styles/layout.styles.ts",
271
- "declarations": [
272
- {
273
- "kind": "variable",
274
- "name": "layoutStyles",
275
- "default": "css`\n ${containerStyles}\n ${loadingSpinnerStyles}\n\n :host {\n --foundation-tab-height: calc((( (var(--base-height-multiplier) + var(--density)) * var(--design-unit)) - 4) * 1px);\n }\n\n .lm_goldenlayout {\n border-radius: calc(var(--control-corner-radius) * 1.5px);\n }\n\n .lm_stack.lm_item {\n background-color: var(--neutral-layer-3);\n border-radius: calc(var(--control-corner-radius) * 1.5px);\n }\n .lm_maximised .lm_header {\n background-color: var(--neutral-layer-3);\n border-radius: calc(var(--control-corner-radius) * 1.5px);\n position: unset;\n }\n\n .lm_maximised .lm_header .lm_tabs {\n z-index: 3;\n }\n\n .lm_content {\n background-color: var(--neutral-layer-card-container);\n border-radius: calc(var(--control-corner-radius) * 1.5px);\n border: 1px solid;\n border-color: var(--neutral-stroke-rest);\n box-sizing: border-box;\n color: var(--neutral-foreground-rest);\n }\n\n .lm_header .lm_tabs {\n padding: 0 16px;\n }\n\n .lm_stack > .lm_items {\n box-shadow: 0px -1px 15px rgba(0, 0, 0, 0.15);\n }\n\n .lm_header .lm_tab.lm_active.lm_focused {\n background-color: var(--neutral-layer-card-container);\n }\n .lm_header .lm_tab.lm_active {\n background-color: var(--neutral-layer-card-container);\n border: 1px solid;\n border-color: var(--neutral-stroke-rest);\n border-bottom: 0;\n color: var(--accent-foreground-rest);\n }\n\n .lm_header .lm_tab {\n align-items: center;\n background-color: var(--neutral-layer-4);\n border: 0;\n border-bottom-color: transparent;\n border-bottom: 0px solid;\n border-color: var(--neutral-stroke-rest);\n border-radius: calc(var(--control-corner-radius) * 1.5px) calc(var(--control-corner-radius) * 1.5px) 0 0;\n color: var(--accent-foreground-rest);\n display: flex;\n font-family: inherit;\n font-size: 13px;\n font-weight: 400;\n height: calc(var(--foundation-tab-height, ${DEFAULT_TAB_HEIGHT}) - 8px);\n margin-right: 2px;\n margin-top: 3px;\n padding: 2px 16px;\n }\n\n .lm_header .lm_tab:not(.lm_active):hover {\n background-color: var(--neutral-layer-card-container);\n color: var(--accent-foreground-rest);\n }\n\n .lm_header .lm_controls {\n top: 4px;\n display: flex;\n }\n .lm_header .lm_controls > * {\n width: calc(var(--foundation-tab-height, ${DEFAULT_TAB_HEIGHT}) - 6px);\n height: calc(var(--foundation-tab-height, ${DEFAULT_TAB_HEIGHT}) - 6px);\n background-repeat: no-repeat;\n background-position: center;\n background-size: calc(var(--foundation-tab-height, ${DEFAULT_TAB_HEIGHT}) * 0.533333);\n background-color: color-mix(in srgb, var(--neutral-fill-strong-rest), transparent 90%);\n border-radius: calc(var(--control-corner-radius) * 1.5px);\n margin-right: 4px;\n top: 3px;\n opacity: 1;\n }\n .lm_header .lm_controls > *:hover {\n background-color: color-mix(in srgb, var(--neutral-fill-strong-hover), transparent 75%);\n cursor: pointer;\n }\n\n .lm_controls .lm_maximise {\n background-image: url('${LAYOUT_ICONS.maximiseSVG}');\n }\n .lm_maximised .lm_controls .lm_maximise {\n background-image: url('${LAYOUT_ICONS.minimiseSVG}');\n }\n .lm_controls .lm_close {\n background-image: url('${LAYOUT_ICONS.closeSVG}');\n }\n .lm_header .lm_tab .lm_close_tab {\n background-image: url('${LAYOUT_ICONS.closeSVG}');\n background-size: calc(var(--foundation-tab-height, ${DEFAULT_TAB_HEIGHT}) * 0.2777);\n background-repeat: no-repeat;\n margin-left: 12px;\n position: relative;\n top: 0;\n right: 0;\n }\n\n .lm_header .lm_tab.lm_active {\n padding: 4px 25px 3px 10px;\n }\n\n .lm_header .lm_tab:not(.lm_active) .lm_title {\n color: var(--neutral-foreground-hint);\n }\n\n .lm_header .lm_controls .lm_tabdropdown::before {\n content: none;\n }\n .lm_header .lm_controls .lm_tabdropdown {\n background-image: url('${LAYOUT_ICONS.tabDropdownSVG}');\n }\n .lm_header .lm_tabdropdown_list {\n top: var(--foundation-tab-height, ${DEFAULT_TAB_HEIGHT});\n right: 108px;\n background-color: var(--neutral-layer-3);\n border: 1px solid;\n border-color: var(--neutral-stroke-rest);\n border-radius: calc(var(--control-corner-radius) * 1.5px);\n box-shadow: 0px 5px 15px rgba(0, 0, 0, 0.35);\n }\n .lm_header .lm_tabdropdown_list > .lm_tab {\n box-shadow: none;\n padding: 0 16px;\n white-space: nowrap;\n background-color: transparent;\n color: var(--neutral-foreground-rest);\n height: var(--foundation-tab-height, ${DEFAULT_TAB_HEIGHT});\n border-radius: 0;\n overflow: visible;\n text-overflow: normal;\n }\n .lm_header .lm_tabdropdown_list > .lm_tab:last-child {\n border-bottom: 0;\n }\n\n /* gl base styles start */\n .lm_root {\n position: relative;\n }\n .lm_row > .lm_item {\n float: left;\n }\n .lm_content {\n overflow: hidden;\n position: relative;\n }\n .lm_dragging,\n .lm_dragging * {\n cursor: move !important;\n user-select: none;\n }\n .lm_maximised {\n left: 0;\n padding: 1px;\n position: absolute;\n top: 0;\n z-index: 40;\n }\n .lm_maximise_placeholder {\n display: none;\n }\n .lm_splitter {\n position: relative;\n z-index: 20;\n }\n .lm_splitter:hover,\n .lm_splitter.lm_dragging {\n background: var(--accent-fill-rest);\n border-radius: calc(var(--control-corner-radius) * 4px);\n }\n .lm_splitter.lm_vertical .lm_drag_handle {\n width: 100%;\n height: 15px;\n position: absolute;\n top: -5px;\n cursor: ns-resize !important;\n }\n .lm_splitter.lm_horizontal {\n float: left;\n height: 100%;\n }\n .lm_splitter.lm_horizontal .lm_drag_handle {\n width: 15px;\n height: 100%;\n position: absolute;\n left: -5px;\n cursor: ew-resize !important;\n }\n .lm_header {\n overflow: visible;\n position: relative;\n }\n .lm_header [class^='lm_'] {\n box-sizing: content-box !important;\n }\n .lm_header .lm_controls {\n position: absolute;\n right: 3px;\n }\n .lm_header .lm_controls > li {\n cursor: pointer;\n float: left;\n width: 18px;\n height: 18px;\n text-align: center;\n }\n .lm_header ul {\n margin: 0;\n padding: 0;\n list-style-type: none;\n }\n .lm_header .lm_tabs {\n position: absolute;\n }\n .lm_header .lm_tab {\n cursor: pointer;\n float: left;\n margin-top: 1px;\n padding: 3px 25px 3px 10px;\n position: relative;\n }\n .lm_header .lm_tab i {\n width: 2px;\n height: 19px;\n position: absolute;\n }\n .lm_header .lm_tab i.lm_left {\n top: 0;\n left: -2px;\n }\n .lm_header .lm_tab i.lm_right {\n top: 0;\n right: -2px;\n }\n .lm_header .lm_tab .lm_title {\n display: inline-block;\n overflow: hidden;\n text-overflow: ellipsis;\n user-select: none;\n }\n .lm_header .lm_tab .lm_title:only-child {\n padding-left: 10px;\n }\n .lm_header .lm_tab .lm_close_tab {\n width: calc(var(--foundation-tab-height, ${DEFAULT_TAB_HEIGHT}) * 0.3888);\n height: calc(var(--foundation-tab-height, ${DEFAULT_TAB_HEIGHT}) * 0.3888);\n top: calc(var(--foundation-tab-height, ${DEFAULT_TAB_HEIGHT}) * 0.3055);\n position: absolute;\n right: 0;\n text-align: center;\n }\n .lm_stack.lm_left .lm_header,\n .lm_stack.lm_right .lm_header {\n height: 100%;\n }\n .lm_dragProxy.lm_left .lm_header,\n .lm_dragProxy.lm_right .lm_header,\n .lm_stack.lm_left .lm_header,\n .lm_stack.lm_right .lm_header {\n width: 20px;\n float: left;\n vertical-align: top;\n }\n .lm_dragProxy.lm_left .lm_header .lm_tabs,\n .lm_dragProxy.lm_right .lm_header .lm_tabs,\n .lm_stack.lm_left .lm_header .lm_tabs,\n .lm_stack.lm_right .lm_header .lm_tabs {\n transform-origin: left top;\n top: 0;\n width: 1000px;\n }\n .lm_dragProxy.lm_left .lm_header .lm_controls,\n .lm_dragProxy.lm_right .lm_header .lm_controls,\n .lm_stack.lm_left .lm_header .lm_controls,\n .lm_stack.lm_right .lm_header .lm_controls {\n bottom: 0;\n }\n .lm_dragProxy.lm_left .lm_items,\n .lm_dragProxy.lm_right .lm_items,\n .lm_stack.lm_left .lm_items,\n .lm_stack.lm_right .lm_items {.lm_header .lm_tab.lm_active\n float: left;\n }\n .lm_dragProxy.lm_left .lm_header .lm_tabs,\n .lm_stack.lm_left .lm_header .lm_tabs {\n transform: rotate(-90deg) scaleX(-1);\n left: 0;\n }\n .lm_dragProxy.lm_left .lm_header .lm_tabs .lm_tab,\n .lm_stack.lm_left .lm_header .lm_tabs .lm_tab {\n transform: scaleX(-1);\n margin-top: 1px;\n }\n .lm_dragProxy.lm_left .lm_header .lm_tabdropdown_list,\n .lm_stack.lm_left .lm_header .lm_tabdropdown_list {\n top: initial;\n right: initial;\n left: 20px;\n }\n .lm_dragProxy.lm_right .lm_content {\n float: left;\n }\n .lm_dragProxy.lm_right .lm_header .lm_tabs,\n .lm_stack.lm_right .lm_header .lm_tabs {\n transform: rotate(90deg) scaleX(1);\n left: 100%;\n margin-left: 0;\n }\n .lm_dragProxy.lm_right .lm_header .lm_controls,\n .lm_stack.lm_right .lm_header .lm_controls {\n left: 3px;\n }\n .lm_dragProxy.lm_right .lm_header .lm_tabdropdown_list,\n .lm_stack.lm_right .lm_header .lm_tabdropdown_list {\n top: initial;\n right: 20px;\n }\n .lm_dragProxy.lm_bottom .lm_header .lm_tab,\n .lm_stack.lm_bottom .lm_header .lm_tab {\n margin-top: 0;\n border-top: none;\n }\n .lm_dragProxy.lm_bottom .lm_header .lm_controls,\n .lm_stack.lm_bottom .lm_header .lm_controls {\n top: 3px;\n }\n .lm_dragProxy.lm_bottom .lm_header .lm_tabdropdown_list,\n .lm_stack.lm_bottom .lm_header .lm_tabdropdown_list {\n top: initial;\n bottom: 20px;\n }\n .lm_drop_tab_placeholder {\n float: left;\n width: 100px;\n height: 10px;\n visibility: hidden;\n }\n .lm_header .lm_tabdropdown_list {\n position: absolute;\n top: 20px;\n right: 0;\n z-index: 5;\n overflow: hidden;\n }\n .lm_header .lm_tabdropdown_list .lm_tab {\n clear: both;\n padding-right: 10px;\n margin: 0;\n }\n .lm_header .lm_tabdropdown_list .lm_tab .lm_title {\n width: 100px;\n }\n .lm_header .lm_tabdropdown_list .lm_close_tab {\n display: none !important;\n }\n .lm_dragProxy {\n position: absolute;\n top: 0;\n left: 0;\n z-index: 30;\n }\n .lm_dragProxy .lm_header {\n background: transparent;\n }\n .lm_dragProxy .lm_content {\n border-top: none;\n overflow: hidden;\n }\n .lm_dropTargetIndicator {\n display: none;\n position: absolute;\n z-index: 20;\n box-shadow: none;\n }\n .lm_dropTargetIndicator .lm_inner {\n width: 100%;\n height: 100%;\n position: relative;\n top: 0;\n left: 0;\n }\n .lm_transition_indicator {\n display: none;\n width: 20px;\n height: 20px;\n position: absolute;\n top: 0;\n left: 0;\n z-index: 20;\n }\n .lm_popin {\n width: 20px;\n height: 20px;\n position: absolute;\n bottom: 0;\n right: 0;\n z-index: 9999;\n }\n .lm_popin > * {\n width: 100%;\n height: 100%;\n position: absolute;\n top: 0;\n left: 0;\n }\n .lm_popin > .lm_bg {\n z-index: 10;\n }\n .lm_popin > .lm_icon {\n z-index: 20;\n } /*# sourceMappingURL=goldenlayout-base.css.map */\n`",
276
- "description": "`ElementStyles` which defines the css for FoundationLayout.",
277
- "privacy": "public"
278
- }
279
- ],
280
- "exports": [
200
+ },
281
201
  {
282
202
  "kind": "js",
283
203
  "name": "layoutStyles",
284
204
  "declaration": {
285
205
  "name": "layoutStyles",
286
- "module": "src/styles/layout.styles.ts"
287
- }
288
- }
289
- ]
290
- },
291
- {
292
- "kind": "javascript-module",
293
- "path": "src/utils/constants.ts",
294
- "declarations": [
295
- {
296
- "kind": "variable",
297
- "name": "DEFAULT_RELOAD_BUFFER",
298
- "type": {
299
- "text": "number"
300
- },
301
- "default": "500",
302
- "description": "Default time in milliseconds for the layout to buffer calls to reloading\nthe layout while the declarative API is loading.\n\nDuring the first load of the layout, a loading spinner will be shown.",
303
- "privacy": "public"
304
- },
305
- {
306
- "kind": "variable",
307
- "name": "LAYOUT_POPOUT_CONTAINER_CLASS",
308
- "type": {
309
- "text": "string"
310
- },
311
- "default": "'f-layout-popout'",
312
- "description": "Put this classname on an element which is a DOM parent of the layout, and\nif the layout goes into popout mode then it will place itself as the only child\nfor the popout container you set."
313
- },
314
- {
315
- "kind": "variable",
316
- "name": "DEFAULT_TAB_HEIGHT",
317
- "type": {
318
- "text": "string"
319
- },
320
- "default": "'36px'"
321
- },
322
- {
323
- "kind": "function",
324
- "name": "getLayoutHeaderHeight"
325
- }
326
- ],
327
- "exports": [
328
- {
329
- "kind": "js",
330
- "name": "DEFAULT_RELOAD_BUFFER",
331
- "declaration": {
332
- "name": "DEFAULT_RELOAD_BUFFER",
333
- "module": "src/utils/constants.ts"
334
- }
335
- },
336
- {
337
- "kind": "js",
338
- "name": "LAYOUT_POPOUT_CONTAINER_CLASS",
339
- "declaration": {
340
- "name": "LAYOUT_POPOUT_CONTAINER_CLASS",
341
- "module": "src/utils/constants.ts"
342
- }
343
- },
344
- {
345
- "kind": "js",
346
- "name": "DEFAULT_TAB_HEIGHT",
347
- "declaration": {
348
- "name": "DEFAULT_TAB_HEIGHT",
349
- "module": "src/utils/constants.ts"
350
- }
351
- },
352
- {
353
- "kind": "js",
354
- "name": "getLayoutHeaderHeight",
355
- "declaration": {
356
- "name": "getLayoutHeaderHeight",
357
- "module": "src/utils/constants.ts"
358
- }
359
- }
360
- ]
361
- },
362
- {
363
- "kind": "javascript-module",
364
- "path": "src/utils/error.ts",
365
- "declarations": [
366
- {
367
- "kind": "class",
368
- "description": "",
369
- "name": "LayoutUsageError",
370
- "superclass": {
371
- "name": "Error",
372
- "module": "src/utils/error.ts"
206
+ "module": "./layout-main"
373
207
  }
374
208
  },
375
- {
376
- "kind": "class",
377
- "description": "",
378
- "name": "LayoutRegistrationError",
379
- "superclass": {
380
- "name": "Error",
381
- "module": "src/utils/error.ts"
382
- }
383
- }
384
- ],
385
- "exports": [
386
209
  {
387
210
  "kind": "js",
388
- "name": "LayoutUsageError",
211
+ "name": "layoutTemplate",
389
212
  "declaration": {
390
- "name": "LayoutUsageError",
391
- "module": "src/utils/error.ts"
213
+ "name": "layoutTemplate",
214
+ "module": "./layout-main"
392
215
  }
393
216
  },
394
217
  {
395
218
  "kind": "js",
396
- "name": "LayoutRegistrationError",
219
+ "name": "*",
397
220
  "declaration": {
398
- "name": "LayoutRegistrationError",
399
- "module": "src/utils/error.ts"
221
+ "name": "*",
222
+ "package": "./layout-components"
400
223
  }
401
224
  }
402
225
  ]
403
226
  },
404
227
  {
405
228
  "kind": "javascript-module",
406
- "path": "src/utils/events.ts",
229
+ "path": "src/main/layout-components.ts",
407
230
  "declarations": [
408
231
  {
409
232
  "kind": "variable",
410
- "name": "LayoutEmitEvents",
411
- "type": {
412
- "text": "{\n firstLoaded: 'first-loaded',\n itemAdded: 'item-added',\n itemRemoved: 'item-removed',\n itemResized: 'item-resized',\n}"
413
- },
414
- "default": "{\n firstLoaded: 'first-loaded',\n itemAdded: 'item-added',\n itemRemoved: 'item-removed',\n itemResized: 'item-resized',\n}",
415
- "description": "Defines events that the layout system emits\n\n'firstLoaded' - emitted when the layout has finished loading the first time\nusing the declarative API after DEFAULT_RELOAD_BUFFER ms.\n<br/>\n'itemAdded' - emitted when an item is added to the layout'\n<br/>\n'itemRemoved' - emitted when an item is removed from the layout'\n<br/>\n'itemResized' - emitted when the user drags the divider to resize elements",
416
- "privacy": "public"
417
- },
418
- {
419
- "kind": "variable",
420
- "name": "LayoutReceiveEvents",
233
+ "name": "foundationLayoutComponents",
421
234
  "type": {
422
- "text": "{\n changeTitle: 'change-title',\n autosave: 'autosave',\n}"
235
+ "text": "object"
423
236
  },
424
- "default": "{\n changeTitle: 'change-title',\n autosave: 'autosave',\n}",
425
- "description": "Defines events that the layout system listens for\n\n'changeTitle' - emit this from a contained item to update the title of the window that contains it.\n'autosave' - emit this from a contained item to hint to the layout system that it should autosave the layout. A contained item should do this if it has just changed some state it would like to persist. See LayoutComponentWithState.",
237
+ "default": "{\n foundationLayout,\n foundationLayoutRegion,\n foundationLayoutItem,\n register(container?: Container, ...rest: any[]) {\n if (!container) {\n // preserve backward compatibility with code that loops through\n // the values of this object and calls them as funcs with no args\n return;\n }\n for (const key in this) {\n if (key === 'register') {\n continue;\n }\n this[key]().register(container, ...rest);\n }\n },\n}",
238
+ "description": "Registration object to register the layout with your design system.",
426
239
  "privacy": "public"
427
240
  }
428
241
  ],
429
242
  "exports": [
430
243
  {
431
244
  "kind": "js",
432
- "name": "LayoutEmitEvents",
433
- "declaration": {
434
- "name": "LayoutEmitEvents",
435
- "module": "src/utils/events.ts"
436
- }
437
- },
438
- {
439
- "kind": "js",
440
- "name": "LayoutReceiveEvents",
245
+ "name": "foundationLayoutComponents",
441
246
  "declaration": {
442
- "name": "LayoutReceiveEvents",
443
- "module": "src/utils/events.ts"
247
+ "name": "foundationLayoutComponents",
248
+ "module": "src/main/layout-components.ts"
444
249
  }
445
250
  }
446
251
  ]
447
252
  },
448
253
  {
449
254
  "kind": "javascript-module",
450
- "path": "src/utils/factory-registry.ts",
255
+ "path": "src/main/layout-item.ts",
451
256
  "declarations": [
452
257
  {
453
- "kind": "function",
454
- "name": "registerFactory",
455
- "return": {
456
- "type": {
457
- "text": "void"
458
- }
459
- },
460
- "parameters": [
258
+ "kind": "class",
259
+ "description": "",
260
+ "name": "FoundationLayoutItem",
261
+ "members": [
461
262
  {
462
- "name": "key",
263
+ "kind": "field",
264
+ "name": "title",
463
265
  "type": {
464
266
  "text": "string"
465
267
  },
466
- "description": "Unique identifier for the factory. Should be descriptive and unique across the application."
268
+ "description": "Sets the title of the item which is displayed on the tab.",
269
+ "privacy": "public"
467
270
  },
468
271
  {
469
- "name": "factory",
272
+ "kind": "field",
273
+ "name": "closable",
470
274
  "type": {
471
- "text": "ComponentFactory"
275
+ "text": "boolean"
472
276
  },
473
- "description": "The factory function that creates the component."
474
- }
475
- ],
476
- "description": "Registers a factory function with a unique key.\nThis allows framework components to be used in the declarative layout API\nwithout needing to pass function references through HTML attributes.",
477
- "privacy": "public"
478
- },
479
- {
480
- "kind": "function",
481
- "name": "getFactory",
482
- "return": {
483
- "type": {
484
- "text": ""
485
- }
486
- },
487
- "parameters": [
277
+ "default": "false",
278
+ "description": "Boolean attribute controls whether the window can be closed in the GUI.\nDefaults to `false`.",
279
+ "privacy": "public"
280
+ },
488
281
  {
489
- "name": "key",
282
+ "kind": "field",
283
+ "name": "size",
490
284
  "type": {
491
285
  "text": "string"
492
286
  },
493
- "description": "The unique identifier for the factory."
287
+ "description": "optional string describing the size of the new item (see the written documentation for more info)",
288
+ "privacy": "public"
289
+ },
290
+ {
291
+ "kind": "field",
292
+ "name": "registration",
293
+ "type": {
294
+ "text": "string"
295
+ },
296
+ "description": "Sets the registration name for the item, which can be used later to add the item via the JavaScript API using FoundationLayout.addItem.",
297
+ "privacy": "public"
298
+ },
299
+ {
300
+ "kind": "field",
301
+ "name": "_presentation",
302
+ "type": {
303
+ "text": "ComponentPresentation | null | undefined"
304
+ },
305
+ "privacy": "private",
306
+ "default": "void 0",
307
+ "inheritedFrom": {
308
+ "name": "FoundationElement",
309
+ "module": "src/foundation-element/foundation-element.ts"
310
+ }
311
+ },
312
+ {
313
+ "kind": "field",
314
+ "name": "$presentation",
315
+ "type": {
316
+ "text": "ComponentPresentation | null"
317
+ },
318
+ "privacy": "public",
319
+ "description": "A property which resolves the ComponentPresentation instance\nfor the current component.",
320
+ "inheritedFrom": {
321
+ "name": "FoundationElement",
322
+ "module": "src/foundation-element/foundation-element.ts"
323
+ }
324
+ },
325
+ {
326
+ "kind": "field",
327
+ "name": "template",
328
+ "type": {
329
+ "text": "ElementViewTemplate | void | null"
330
+ },
331
+ "privacy": "public",
332
+ "description": "Sets the template of the element instance. When undefined,\nthe element will attempt to resolve the template from\nthe associated presentation or custom element definition.",
333
+ "inheritedFrom": {
334
+ "name": "FoundationElement",
335
+ "module": "src/foundation-element/foundation-element.ts"
336
+ }
337
+ },
338
+ {
339
+ "kind": "method",
340
+ "name": "templateChanged",
341
+ "privacy": "protected",
342
+ "return": {
343
+ "type": {
344
+ "text": "void"
345
+ }
346
+ },
347
+ "inheritedFrom": {
348
+ "name": "FoundationElement",
349
+ "module": "src/foundation-element/foundation-element.ts"
350
+ }
351
+ },
352
+ {
353
+ "kind": "field",
354
+ "name": "styles",
355
+ "type": {
356
+ "text": "ElementStyles | void | null"
357
+ },
358
+ "privacy": "public",
359
+ "description": "Sets the default styles for the element instance. When undefined,\nthe element will attempt to resolve default styles from\nthe associated presentation or custom element definition.",
360
+ "inheritedFrom": {
361
+ "name": "FoundationElement",
362
+ "module": "src/foundation-element/foundation-element.ts"
363
+ }
364
+ },
365
+ {
366
+ "kind": "method",
367
+ "name": "stylesChanged",
368
+ "privacy": "protected",
369
+ "return": {
370
+ "type": {
371
+ "text": "void"
372
+ }
373
+ },
374
+ "inheritedFrom": {
375
+ "name": "FoundationElement",
376
+ "module": "src/foundation-element/foundation-element.ts"
377
+ }
378
+ },
379
+ {
380
+ "kind": "method",
381
+ "name": "compose",
382
+ "privacy": "public",
383
+ "static": true,
384
+ "return": {
385
+ "type": {
386
+ "text": "(\n overrideDefinition?: OverrideFoundationElementDefinition<T>\n ) => FoundationElementRegistry<T, K>"
387
+ }
388
+ },
389
+ "parameters": [
390
+ {
391
+ "name": "this",
392
+ "type": {
393
+ "text": "K"
394
+ }
395
+ },
396
+ {
397
+ "name": "elementDefinition",
398
+ "type": {
399
+ "text": "T"
400
+ },
401
+ "description": "The definition of the element to create the registry\nfunction for."
402
+ }
403
+ ],
404
+ "description": "Defines an element registry function with a set of element definition defaults.",
405
+ "inheritedFrom": {
406
+ "name": "FoundationElement",
407
+ "module": "src/foundation-element/foundation-element.ts"
408
+ }
494
409
  }
495
410
  ],
496
- "description": "Retrieves a factory function by its key.",
497
- "privacy": "public"
498
- },
499
- {
500
- "kind": "function",
501
- "name": "unregisterFactory",
502
- "return": {
503
- "type": {
504
- "text": ""
505
- }
506
- },
507
- "parameters": [
411
+ "attributes": [
508
412
  {
509
- "name": "key",
413
+ "name": "title",
510
414
  "type": {
511
415
  "text": "string"
512
416
  },
513
- "description": "The unique identifier for the factory to remove."
417
+ "description": "Sets the title of the item which is displayed on the tab.",
418
+ "fieldName": "title"
419
+ },
420
+ {
421
+ "type": {
422
+ "text": "boolean"
423
+ },
424
+ "default": "false",
425
+ "description": "Boolean attribute controls whether the window can be closed in the GUI.\nDefaults to `false`.",
426
+ "fieldName": "closable"
427
+ },
428
+ {
429
+ "name": "size",
430
+ "type": {
431
+ "text": "string"
432
+ },
433
+ "description": "optional string describing the size of the new item (see the written documentation for more info)",
434
+ "fieldName": "size"
435
+ },
436
+ {
437
+ "name": "registration",
438
+ "type": {
439
+ "text": "string"
440
+ },
441
+ "description": "Sets the registration name for the item, which can be used later to add the item via the JavaScript API using FoundationLayout.addItem.",
442
+ "fieldName": "registration"
514
443
  }
515
444
  ],
516
- "description": "Removes a factory from the registry.\nThis is useful for cleanup when a component is unmounted or no longer needed.",
517
- "privacy": "public"
445
+ "superclass": {
446
+ "name": "FoundationElement",
447
+ "package": "@microsoft/fast-foundation"
448
+ },
449
+ "tagName": "%%prefix%%-layout-item",
450
+ "customElement": true
518
451
  }
519
452
  ],
520
453
  "exports": [
521
454
  {
522
455
  "kind": "js",
523
- "name": "registerFactory",
524
- "declaration": {
525
- "name": "registerFactory",
526
- "module": "src/utils/factory-registry.ts"
527
- }
528
- },
529
- {
530
- "kind": "js",
531
- "name": "getFactory",
532
- "declaration": {
533
- "name": "getFactory",
534
- "module": "src/utils/factory-registry.ts"
535
- }
536
- },
537
- {
538
- "kind": "js",
539
- "name": "unregisterFactory",
456
+ "name": "FoundationLayoutItem",
540
457
  "declaration": {
541
- "name": "unregisterFactory",
542
- "module": "src/utils/factory-registry.ts"
458
+ "name": "FoundationLayoutItem",
459
+ "module": "src/main/layout-item.ts"
543
460
  }
544
461
  }
545
462
  ]
546
463
  },
547
464
  {
548
465
  "kind": "javascript-module",
549
- "path": "src/utils/index.ts",
550
- "declarations": [],
551
- "exports": [
552
- {
553
- "kind": "js",
554
- "name": "*",
555
- "declaration": {
556
- "name": "*",
557
- "package": "./constants"
558
- }
559
- },
560
- {
561
- "kind": "js",
562
- "name": "*",
563
- "declaration": {
564
- "name": "*",
565
- "package": "./error"
566
- }
567
- },
568
- {
569
- "kind": "js",
570
- "name": "*",
571
- "declaration": {
572
- "name": "*",
573
- "package": "./events"
574
- }
575
- },
576
- {
577
- "kind": "js",
578
- "name": "*",
579
- "declaration": {
580
- "name": "*",
581
- "package": "./factory-registry"
582
- }
583
- },
584
- {
585
- "kind": "js",
586
- "name": "*",
587
- "declaration": {
588
- "name": "*",
589
- "package": "./misc"
590
- }
591
- },
592
- {
593
- "kind": "js",
594
- "name": "*",
595
- "declaration": {
596
- "name": "*",
597
- "package": "./templates"
598
- }
599
- },
600
- {
601
- "kind": "js",
602
- "name": "*",
603
- "declaration": {
604
- "name": "*",
605
- "package": "./types"
606
- }
607
- },
608
- {
609
- "kind": "js",
610
- "name": "*",
611
- "declaration": {
612
- "name": "*",
613
- "package": "./error"
614
- }
615
- }
616
- ]
617
- },
618
- {
619
- "kind": "javascript-module",
620
- "path": "src/utils/logger.ts",
621
- "declarations": [
622
- {
623
- "kind": "variable",
624
- "name": "logger"
625
- }
626
- ],
627
- "exports": [
628
- {
629
- "kind": "js",
630
- "name": "logger",
631
- "declaration": {
632
- "name": "logger",
633
- "module": "src/utils/logger.ts"
634
- }
635
- }
636
- ]
637
- },
638
- {
639
- "kind": "javascript-module",
640
- "path": "src/utils/misc.ts",
641
- "declarations": [],
642
- "exports": []
643
- },
644
- {
645
- "kind": "javascript-module",
646
- "path": "src/utils/templates.ts",
647
- "declarations": [],
648
- "exports": []
649
- },
650
- {
651
- "kind": "javascript-module",
652
- "path": "src/utils/types.ts",
653
- "declarations": [],
654
- "exports": []
655
- },
656
- {
657
- "kind": "javascript-module",
658
- "path": "src/main/index.ts",
659
- "declarations": [],
660
- "exports": [
661
- {
662
- "kind": "js",
663
- "name": "FoundationLayoutItem",
664
- "declaration": {
665
- "name": "FoundationLayoutItem",
666
- "module": "./layout-item"
667
- }
668
- },
669
- {
670
- "kind": "js",
671
- "name": "FoundationLayoutRegion",
672
- "declaration": {
673
- "name": "FoundationLayoutRegion",
674
- "module": "./layout-region"
675
- }
676
- },
677
- {
678
- "kind": "js",
679
- "name": "FoundationLayout",
680
- "declaration": {
681
- "name": "FoundationLayout",
682
- "module": "./layout-main"
683
- }
684
- },
685
- {
686
- "kind": "js",
687
- "name": "layoutStyles",
688
- "declaration": {
689
- "name": "layoutStyles",
690
- "module": "./layout-main"
691
- }
692
- },
693
- {
694
- "kind": "js",
695
- "name": "layoutTemplate",
696
- "declaration": {
697
- "name": "layoutTemplate",
698
- "module": "./layout-main"
699
- }
700
- },
701
- {
702
- "kind": "js",
703
- "name": "*",
704
- "declaration": {
705
- "name": "*",
706
- "package": "./layout-components"
707
- }
708
- }
709
- ]
710
- },
711
- {
712
- "kind": "javascript-module",
713
- "path": "src/main/layout-components.ts",
714
- "declarations": [
715
- {
716
- "kind": "variable",
717
- "name": "foundationLayoutComponents",
718
- "type": {
719
- "text": "object"
720
- },
721
- "default": "{\n foundationLayout,\n foundationLayoutRegion,\n foundationLayoutItem,\n register(container?: Container, ...rest: any[]) {\n if (!container) {\n // preserve backward compatibility with code that loops through\n // the values of this object and calls them as funcs with no args\n return;\n }\n for (const key in this) {\n if (key === 'register') {\n continue;\n }\n this[key]().register(container, ...rest);\n }\n },\n}",
722
- "description": "Registration object to register the layout with your design system.",
723
- "privacy": "public"
724
- }
725
- ],
726
- "exports": [
727
- {
728
- "kind": "js",
729
- "name": "foundationLayoutComponents",
730
- "declaration": {
731
- "name": "foundationLayoutComponents",
732
- "module": "src/main/layout-components.ts"
733
- }
734
- }
735
- ]
736
- },
737
- {
738
- "kind": "javascript-module",
739
- "path": "src/main/layout-item.ts",
740
- "declarations": [
466
+ "path": "src/main/layout-main.ts",
467
+ "declarations": [
741
468
  {
742
469
  "kind": "class",
743
470
  "description": "",
744
- "name": "FoundationLayoutItem",
471
+ "name": "FoundationLayout",
745
472
  "members": [
746
473
  {
747
474
  "kind": "field",
748
- "name": "title",
475
+ "name": "layout",
749
476
  "type": {
750
- "text": "string"
477
+ "text": "GoldenLayout"
751
478
  },
752
- "description": "Sets the title of the item which is displayed on the tab.",
753
- "privacy": "public"
479
+ "privacy": "private"
754
480
  },
755
481
  {
756
482
  "kind": "field",
757
- "name": "closable",
483
+ "name": "layoutConfig",
758
484
  "type": {
759
- "text": "boolean"
485
+ "text": "LayoutConfig"
760
486
  },
761
- "default": "false",
762
- "description": "Boolean attribute controls whether the window can be closed in the GUI.\nDefaults to `false`.",
763
- "privacy": "public"
487
+ "privacy": "private",
488
+ "default": "{ root: undefined }"
764
489
  },
765
490
  {
766
491
  "kind": "field",
767
- "name": "size",
492
+ "name": "defaultLayoutConfig",
768
493
  "type": {
769
- "text": "string"
494
+ "text": "LayoutConfig"
770
495
  },
771
- "description": "optional string describing the size of the new item (see the written documentation for more info)",
772
- "privacy": "public"
496
+ "privacy": "private",
497
+ "default": "{ root: undefined }"
773
498
  },
774
499
  {
775
500
  "kind": "field",
776
- "name": "registration",
501
+ "name": "reloadBuffer",
777
502
  "type": {
778
- "text": "string"
503
+ "text": "number"
779
504
  },
780
- "description": "Sets the registration name for the item, which can be used later to add the item via the JavaScript API using FoundationLayout.addItem.",
505
+ "default": "DEFAULT_RELOAD_BUFFER",
506
+ "description": "Number describing how long to wait in ms before reloading the config when adding items\ndeclaratively by the html API. Default 500 (ms).",
781
507
  "privacy": "public"
782
508
  },
783
509
  {
784
510
  "kind": "field",
785
- "name": "_presentation",
511
+ "name": "reloadPending",
786
512
  "type": {
787
- "text": "ComponentPresentation | null | undefined"
513
+ "text": "boolean"
788
514
  },
789
515
  "privacy": "private",
790
- "default": "void 0",
791
- "inheritedFrom": {
792
- "name": "FoundationElement",
793
- "module": "src/foundation-element/foundation-element.ts"
794
- }
516
+ "default": "false"
795
517
  },
796
518
  {
797
519
  "kind": "field",
798
- "name": "$presentation",
520
+ "name": "registeredComponents",
799
521
  "type": {
800
- "text": "ComponentPresentation | null"
522
+ "text": "number"
801
523
  },
802
- "privacy": "public",
803
- "description": "A property which resolves the ComponentPresentation instance\nfor the current component.",
804
- "inheritedFrom": {
805
- "name": "FoundationElement",
806
- "module": "src/foundation-element/foundation-element.ts"
807
- }
524
+ "privacy": "private",
525
+ "default": "0"
808
526
  },
809
527
  {
810
528
  "kind": "field",
811
- "name": "template",
529
+ "name": "autoSaveKey",
812
530
  "type": {
813
- "text": "ElementViewTemplate | void | null"
531
+ "text": "string | undefined"
814
532
  },
815
- "privacy": "public",
816
- "description": "Sets the template of the element instance. When undefined,\nthe element will attempt to resolve the template from\nthe associated presentation or custom element definition.",
817
- "inheritedFrom": {
818
- "name": "FoundationElement",
819
- "module": "src/foundation-element/foundation-element.ts"
820
- }
533
+ "description": "Attribute which if set will auto save and load the layout as the user changes it.\nOmit this attribute to disable this feature.\nSet attribute using `auto-save-key`.",
534
+ "privacy": "public"
821
535
  },
822
536
  {
823
- "kind": "method",
824
- "name": "templateChanged",
825
- "privacy": "protected",
826
- "return": {
827
- "type": {
828
- "text": "void"
829
- }
830
- },
831
- "inheritedFrom": {
832
- "name": "FoundationElement",
833
- "module": "src/foundation-element/foundation-element.ts"
834
- }
537
+ "kind": "field",
538
+ "name": "missingItemPlaceholder",
539
+ "description": "Function which is used to generate the placeholder text when a layout is loaded\nwith a missing item.",
540
+ "privacy": "public"
835
541
  },
836
542
  {
837
543
  "kind": "field",
838
- "name": "styles",
839
- "type": {
840
- "text": "ElementStyles | void | null"
841
- },
842
- "privacy": "public",
843
- "description": "Sets the default styles for the element instance. When undefined,\nthe element will attempt to resolve default styles from\nthe associated presentation or custom element definition.",
844
- "inheritedFrom": {
845
- "name": "FoundationElement",
846
- "module": "src/foundation-element/foundation-element.ts"
847
- }
848
- },
849
- {
850
- "kind": "method",
851
- "name": "stylesChanged",
852
- "privacy": "protected",
853
- "return": {
854
- "type": {
855
- "text": "void"
856
- }
857
- },
858
- "inheritedFrom": {
859
- "name": "FoundationElement",
860
- "module": "src/foundation-element/foundation-element.ts"
861
- }
862
- },
863
- {
864
- "kind": "method",
865
- "name": "compose",
866
- "privacy": "public",
867
- "static": true,
868
- "return": {
869
- "type": {
870
- "text": "(\n overrideDefinition?: OverrideFoundationElementDefinition<T>\n ) => FoundationElementRegistry<T, K>"
871
- }
872
- },
873
- "parameters": [
874
- {
875
- "name": "this",
876
- "type": {
877
- "text": "K"
878
- }
879
- },
880
- {
881
- "name": "elementDefinition",
882
- "type": {
883
- "text": "T"
884
- },
885
- "description": "The definition of the element to create the registry\nfunction for."
886
- }
887
- ],
888
- "description": "Defines an element registry function with a set of element definition defaults.",
889
- "inheritedFrom": {
890
- "name": "FoundationElement",
891
- "module": "src/foundation-element/foundation-element.ts"
892
- }
893
- }
894
- ],
895
- "attributes": [
896
- {
897
- "name": "title",
898
- "type": {
899
- "text": "string"
900
- },
901
- "description": "Sets the title of the item which is displayed on the tab.",
902
- "fieldName": "title"
903
- },
904
- {
905
- "type": {
906
- "text": "boolean"
907
- },
908
- "default": "false",
909
- "description": "Boolean attribute controls whether the window can be closed in the GUI.\nDefaults to `false`.",
910
- "fieldName": "closable"
911
- },
912
- {
913
- "name": "size",
914
- "type": {
915
- "text": "string"
916
- },
917
- "description": "optional string describing the size of the new item (see the written documentation for more info)",
918
- "fieldName": "size"
919
- },
920
- {
921
- "name": "registration",
922
- "type": {
923
- "text": "string"
924
- },
925
- "description": "Sets the registration name for the item, which can be used later to add the item via the JavaScript API using FoundationLayout.addItem.",
926
- "fieldName": "registration"
927
- }
928
- ],
929
- "superclass": {
930
- "name": "FoundationElement",
931
- "package": "@microsoft/fast-foundation"
932
- },
933
- "tagName": "%%prefix%%-layout-item",
934
- "customElement": true
935
- }
936
- ],
937
- "exports": [
938
- {
939
- "kind": "js",
940
- "name": "FoundationLayoutItem",
941
- "declaration": {
942
- "name": "FoundationLayoutItem",
943
- "module": "src/main/layout-item.ts"
944
- }
945
- }
946
- ]
947
- },
948
- {
949
- "kind": "javascript-module",
950
- "path": "src/main/layout-main.ts",
951
- "declarations": [
952
- {
953
- "kind": "class",
954
- "description": "",
955
- "name": "FoundationLayout",
956
- "members": [
957
- {
958
- "kind": "field",
959
- "name": "layout",
960
- "type": {
961
- "text": "GoldenLayout"
962
- },
963
- "privacy": "private"
964
- },
965
- {
966
- "kind": "field",
967
- "name": "layoutConfig",
968
- "type": {
969
- "text": "LayoutConfig"
970
- },
971
- "privacy": "private",
972
- "default": "{ root: undefined }"
973
- },
974
- {
975
- "kind": "field",
976
- "name": "defaultLayoutConfig",
977
- "type": {
978
- "text": "LayoutConfig"
979
- },
980
- "privacy": "private",
981
- "default": "{ root: undefined }"
982
- },
983
- {
984
- "kind": "field",
985
- "name": "reloadBuffer",
986
- "type": {
987
- "text": "number"
988
- },
989
- "default": "DEFAULT_RELOAD_BUFFER",
990
- "description": "Number describing how long to wait in ms before reloading the config when adding items\ndeclaratively by the html API. Default 500 (ms).",
991
- "privacy": "public"
992
- },
993
- {
994
- "kind": "field",
995
- "name": "reloadPending",
996
- "type": {
997
- "text": "boolean"
998
- },
999
- "privacy": "private",
1000
- "default": "false"
1001
- },
1002
- {
1003
- "kind": "field",
1004
- "name": "registeredComponents",
1005
- "type": {
1006
- "text": "number"
1007
- },
1008
- "privacy": "private",
1009
- "default": "0"
1010
- },
1011
- {
1012
- "kind": "field",
1013
- "name": "autoSaveKey",
1014
- "type": {
1015
- "text": "string | undefined"
1016
- },
1017
- "description": "Attribute which if set will auto save and load the layout as the user changes it.\nOmit this attribute to disable this feature.\nSet attribute using `auto-save-key`.",
1018
- "privacy": "public"
1019
- },
1020
- {
1021
- "kind": "field",
1022
- "name": "missingItemPlaceholder",
1023
- "description": "Function which is used to generate the placeholder text when a layout is loaded\nwith a missing item.",
1024
- "privacy": "public"
1025
- },
1026
- {
1027
- "kind": "field",
1028
- "name": "dimensionsConfig",
544
+ "name": "dimensionsConfig",
1029
545
  "type": {
1030
546
  "text": "LayoutConfig.Dimensions | undefined"
1031
547
  },
@@ -1686,6 +1202,490 @@
1686
1202
  }
1687
1203
  }
1688
1204
  ]
1205
+ },
1206
+ {
1207
+ "kind": "javascript-module",
1208
+ "path": "src/styles/constants.ts",
1209
+ "declarations": [
1210
+ {
1211
+ "kind": "function",
1212
+ "name": "glVisualConfig",
1213
+ "return": {
1214
+ "type": {
1215
+ "text": "Omit<LayoutConfig, 'root'>"
1216
+ }
1217
+ }
1218
+ },
1219
+ {
1220
+ "kind": "variable",
1221
+ "name": "LAYOUT_ICONS",
1222
+ "type": {
1223
+ "text": "{\n renameSVG,\n maximiseSVG,\n minimiseSVG,\n closeSVG,\n tabDropdownSVG,\n popoutSVG,\n}"
1224
+ },
1225
+ "default": "{\n renameSVG,\n maximiseSVG,\n minimiseSVG,\n closeSVG,\n tabDropdownSVG,\n popoutSVG,\n}",
1226
+ "description": "A collection of SVG icons in base64 format.",
1227
+ "privacy": "public"
1228
+ }
1229
+ ],
1230
+ "exports": [
1231
+ {
1232
+ "kind": "js",
1233
+ "name": "glVisualConfig",
1234
+ "declaration": {
1235
+ "name": "glVisualConfig",
1236
+ "module": "src/styles/constants.ts"
1237
+ }
1238
+ },
1239
+ {
1240
+ "kind": "js",
1241
+ "name": "LAYOUT_ICONS",
1242
+ "declaration": {
1243
+ "name": "LAYOUT_ICONS",
1244
+ "module": "src/styles/constants.ts"
1245
+ }
1246
+ }
1247
+ ]
1248
+ },
1249
+ {
1250
+ "kind": "javascript-module",
1251
+ "path": "src/styles/dragging.styles.ts",
1252
+ "declarations": [
1253
+ {
1254
+ "kind": "variable",
1255
+ "name": "globalDraggingStyles",
1256
+ "default": "`\n .lm_dragProxy .lm_content {\n box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.9);\n }\n .lm_dropTargetIndicator {\n outline: 1px dashed #cccccc;\n transition: all 200ms ease;\n }\n .lm_dropTargetIndicator .lm_inner {\n background: var(${neutralFillStealthRest.cssCustomProperty});\n opacity: 0.2;\n }\n .lm_dragProxy.lm_left .lm_header,\n .lm_dragProxy.lm_right .lm_header {\n width: 20px;\n float: left;\n vertical-align: top;\n }\n .lm_dragProxy.lm_left .lm_header .lm_tabs,\n .lm_dragProxy.lm_right .lm_header .lm_tabs {\n transform-origin: left top;\n top: 0;\n width: 1000px;\n }\n .lm_dragProxy.lm_left .lm_header .lm_controls,\n .lm_dragProxy.lm_right .lm_header .lm_controls {\n bottom: 0;\n }\n .lm_dragProxy.lm_left .lm_items,\n .lm_dragProxy.lm_right .lm_items {\n float: left;\n }\n .lm_dragProxy.lm_left .lm_header .lm_tabs {\n transform: rotate(-90deg) scaleX(-1);\n left: 0;\n }\n .lm_dragProxy.lm_left .lm_header .lm_tabs .lm_tab {\n transform: scaleX(-1);\n margin-top: 1px;\n }\n .lm_dragProxy.lm_left .lm_header .lm_tabdropdown_list {\n top: initial;\n right: initial;\n left: 20px;\n }\n .lm_dragProxy.lm_right .lm_content {\n float: left;\n }\n .lm_dragProxy.lm_right .lm_header .lm_tabs {\n transform: rotate(90deg) scaleX(1);\n left: 100%;\n margin-left: 0;\n }\n .lm_dragProxy.lm_right .lm_header .lm_controls {\n left: 3px;\n }\n .lm_dragProxy.lm_right .lm_header .lm_tabdropdown_list {\n top: initial;\n right: 20px;\n }\n .lm_dragProxy.lm_bottom .lm_header .lm_tab {\n margin-top: 0;\n border-top: none;\n }\n .lm_dragProxy.lm_bottom .lm_header .lm_controls,\n .lm_stack.lm_bottom .lm_header .lm_controls {\n top: 3px;\n }\n .lm_dragProxy.lm_bottom .lm_header .lm_tabdropdown_list,\n .lm_stack.lm_bottom .lm_header .lm_tabdropdown_list {\n top: initial;\n bottom: 20px;\n }\n .lm_dragProxy {\n cursor: move;\n position: absolute;\n top: 0;\n left: 0;\n z-index: 30;\n }\n .lm_dragProxy .lm_header {\n background: transparent;\n }\n .lm_dragProxy .lm_title {\n color: white;\n padding-left: 10px;\n }\n .lm_dragProxy .lm_content {\n border-top: none;\n overflow: hidden;\n }\n .lm_dropTargetIndicator {\n display: none;\n position: absolute;\n z-index: 20;\n }\n .lm_dropTargetIndicator .lm_inner {\n width: 100%;\n height: 100%;\n position: relative;\n top: 0;\n left: 0;\n }\n .lm_transition_indicator {\n display: none;\n width: 20px;\n height: 20px;\n position: absolute;\n top: 0;\n left: 0;\n z-index: 20;\n }\n`",
1257
+ "description": "This is defined as a string rather than a css template\nbecause it is applied to a CSSStyleSheet object rather than\nused as a FAST template"
1258
+ }
1259
+ ],
1260
+ "exports": [
1261
+ {
1262
+ "kind": "js",
1263
+ "name": "globalDraggingStyles",
1264
+ "declaration": {
1265
+ "name": "globalDraggingStyles",
1266
+ "module": "src/styles/dragging.styles.ts"
1267
+ }
1268
+ }
1269
+ ]
1270
+ },
1271
+ {
1272
+ "kind": "javascript-module",
1273
+ "path": "src/styles/index.ts",
1274
+ "declarations": [],
1275
+ "exports": [
1276
+ {
1277
+ "kind": "js",
1278
+ "name": "*",
1279
+ "declaration": {
1280
+ "name": "*",
1281
+ "package": "./constants"
1282
+ }
1283
+ },
1284
+ {
1285
+ "kind": "js",
1286
+ "name": "*",
1287
+ "declaration": {
1288
+ "name": "*",
1289
+ "package": "./dragging.styles"
1290
+ }
1291
+ },
1292
+ {
1293
+ "kind": "js",
1294
+ "name": "*",
1295
+ "declaration": {
1296
+ "name": "*",
1297
+ "package": "./layout.styles"
1298
+ }
1299
+ }
1300
+ ]
1301
+ },
1302
+ {
1303
+ "kind": "javascript-module",
1304
+ "path": "src/styles/layout.styles.ts",
1305
+ "declarations": [
1306
+ {
1307
+ "kind": "variable",
1308
+ "name": "layoutStyles",
1309
+ "default": "css`\n ${containerStyles}\n ${loadingSpinnerStyles}\n\n :host {\n --foundation-tab-height: calc((( (var(--base-height-multiplier) + var(--density)) * var(--design-unit)) - 4) * 1px);\n }\n\n .lm_goldenlayout {\n border-radius: calc(var(--control-corner-radius) * 1.5px);\n }\n\n .lm_stack.lm_item {\n background-color: var(--neutral-layer-3);\n border-radius: calc(var(--control-corner-radius) * 1.5px);\n }\n .lm_maximised .lm_header {\n background-color: var(--neutral-layer-3);\n border-radius: calc(var(--control-corner-radius) * 1.5px);\n position: unset;\n }\n\n .lm_maximised .lm_header .lm_tabs {\n z-index: 3;\n }\n\n .lm_content {\n background-color: var(--neutral-layer-card-container);\n border-radius: calc(var(--control-corner-radius) * 1.5px);\n border: 1px solid;\n border-color: var(--neutral-stroke-rest);\n box-sizing: border-box;\n color: var(--neutral-foreground-rest);\n }\n\n .lm_header .lm_tabs {\n padding: 0 16px;\n }\n\n .lm_stack > .lm_items {\n box-shadow: 0px -1px 15px rgba(0, 0, 0, 0.15);\n }\n\n .lm_header .lm_tab.lm_active.lm_focused {\n background-color: var(--neutral-layer-card-container);\n }\n .lm_header .lm_tab.lm_active {\n background-color: var(--neutral-layer-card-container);\n border: 1px solid;\n border-color: var(--neutral-stroke-rest);\n border-bottom: 0;\n color: var(--accent-foreground-rest);\n }\n\n .lm_header .lm_tab {\n align-items: center;\n background-color: var(--neutral-layer-4);\n border: 0;\n border-bottom-color: transparent;\n border-bottom: 0px solid;\n border-color: var(--neutral-stroke-rest);\n border-radius: calc(var(--control-corner-radius) * 1.5px) calc(var(--control-corner-radius) * 1.5px) 0 0;\n color: var(--accent-foreground-rest);\n display: flex;\n font-family: inherit;\n font-size: 13px;\n font-weight: 400;\n height: calc(var(--foundation-tab-height, ${DEFAULT_TAB_HEIGHT}) - 8px);\n margin-right: 2px;\n margin-top: 3px;\n padding: 2px 16px;\n }\n\n .lm_header .lm_tab:not(.lm_active):hover {\n background-color: var(--neutral-layer-card-container);\n color: var(--accent-foreground-rest);\n }\n\n .lm_header .lm_controls {\n top: 4px;\n display: flex;\n }\n .lm_header .lm_controls > * {\n width: calc(var(--foundation-tab-height, ${DEFAULT_TAB_HEIGHT}) - 6px);\n height: calc(var(--foundation-tab-height, ${DEFAULT_TAB_HEIGHT}) - 6px);\n background-repeat: no-repeat;\n background-position: center;\n background-size: calc(var(--foundation-tab-height, ${DEFAULT_TAB_HEIGHT}) * 0.533333);\n background-color: color-mix(in srgb, var(--neutral-fill-strong-rest), transparent 90%);\n border-radius: calc(var(--control-corner-radius) * 1.5px);\n margin-right: 4px;\n top: 3px;\n opacity: 1;\n }\n .lm_header .lm_controls > *:hover {\n background-color: color-mix(in srgb, var(--neutral-fill-strong-hover), transparent 75%);\n cursor: pointer;\n }\n\n .lm_controls .lm_maximise {\n background-image: url('${LAYOUT_ICONS.maximiseSVG}');\n }\n .lm_maximised .lm_controls .lm_maximise {\n background-image: url('${LAYOUT_ICONS.minimiseSVG}');\n }\n .lm_controls .lm_close {\n background-image: url('${LAYOUT_ICONS.closeSVG}');\n }\n .lm_header .lm_tab .lm_close_tab {\n background-image: url('${LAYOUT_ICONS.closeSVG}');\n background-size: calc(var(--foundation-tab-height, ${DEFAULT_TAB_HEIGHT}) * 0.2777);\n background-repeat: no-repeat;\n margin-left: 12px;\n position: relative;\n top: 0;\n right: 0;\n }\n\n .lm_header .lm_tab.lm_active {\n padding: 4px 25px 3px 10px;\n }\n\n .lm_header .lm_tab:not(.lm_active) .lm_title {\n color: var(--neutral-foreground-hint);\n }\n\n .lm_header .lm_controls .lm_tabdropdown::before {\n content: none;\n }\n .lm_header .lm_controls .lm_tabdropdown {\n background-image: url('${LAYOUT_ICONS.tabDropdownSVG}');\n }\n .lm_header .lm_tabdropdown_list {\n top: var(--foundation-tab-height, ${DEFAULT_TAB_HEIGHT});\n right: 108px;\n background-color: var(--neutral-layer-3);\n border: 1px solid;\n border-color: var(--neutral-stroke-rest);\n border-radius: calc(var(--control-corner-radius) * 1.5px);\n box-shadow: 0px 5px 15px rgba(0, 0, 0, 0.35);\n }\n .lm_header .lm_tabdropdown_list > .lm_tab {\n box-shadow: none;\n padding: 0 16px;\n white-space: nowrap;\n background-color: transparent;\n color: var(--neutral-foreground-rest);\n height: var(--foundation-tab-height, ${DEFAULT_TAB_HEIGHT});\n border-radius: 0;\n overflow: visible;\n text-overflow: normal;\n }\n .lm_header .lm_tabdropdown_list > .lm_tab:last-child {\n border-bottom: 0;\n }\n\n /* gl base styles start */\n .lm_root {\n position: relative;\n }\n .lm_row > .lm_item {\n float: left;\n }\n .lm_content {\n overflow: hidden;\n position: relative;\n }\n .lm_dragging,\n .lm_dragging * {\n cursor: move !important;\n user-select: none;\n }\n .lm_maximised {\n left: 0;\n padding: 1px;\n position: absolute;\n top: 0;\n z-index: 40;\n }\n .lm_maximise_placeholder {\n display: none;\n }\n .lm_splitter {\n position: relative;\n z-index: 20;\n }\n .lm_splitter:hover,\n .lm_splitter.lm_dragging {\n background: var(--accent-fill-rest);\n border-radius: calc(var(--control-corner-radius) * 4px);\n }\n .lm_splitter.lm_vertical .lm_drag_handle {\n width: 100%;\n height: 15px;\n position: absolute;\n top: -5px;\n cursor: ns-resize !important;\n }\n .lm_splitter.lm_horizontal {\n float: left;\n height: 100%;\n }\n .lm_splitter.lm_horizontal .lm_drag_handle {\n width: 15px;\n height: 100%;\n position: absolute;\n left: -5px;\n cursor: ew-resize !important;\n }\n .lm_header {\n overflow: visible;\n position: relative;\n }\n .lm_header [class^='lm_'] {\n box-sizing: content-box !important;\n }\n .lm_header .lm_controls {\n position: absolute;\n right: 3px;\n }\n .lm_header .lm_controls > li {\n cursor: pointer;\n float: left;\n width: 18px;\n height: 18px;\n text-align: center;\n }\n .lm_header ul {\n margin: 0;\n padding: 0;\n list-style-type: none;\n }\n .lm_header .lm_tabs {\n position: absolute;\n }\n .lm_header .lm_tab {\n cursor: pointer;\n float: left;\n margin-top: 1px;\n padding: 3px 25px 3px 10px;\n position: relative;\n }\n .lm_header .lm_tab i {\n width: 2px;\n height: 19px;\n position: absolute;\n }\n .lm_header .lm_tab i.lm_left {\n top: 0;\n left: -2px;\n }\n .lm_header .lm_tab i.lm_right {\n top: 0;\n right: -2px;\n }\n .lm_header .lm_tab .lm_title {\n display: inline-block;\n overflow: hidden;\n text-overflow: ellipsis;\n user-select: none;\n }\n .lm_header .lm_tab .lm_title:only-child {\n padding-left: 10px;\n }\n .lm_header .lm_tab .lm_close_tab {\n width: calc(var(--foundation-tab-height, ${DEFAULT_TAB_HEIGHT}) * 0.3888);\n height: calc(var(--foundation-tab-height, ${DEFAULT_TAB_HEIGHT}) * 0.3888);\n top: calc(var(--foundation-tab-height, ${DEFAULT_TAB_HEIGHT}) * 0.3055);\n position: absolute;\n right: 0;\n text-align: center;\n }\n .lm_stack.lm_left .lm_header,\n .lm_stack.lm_right .lm_header {\n height: 100%;\n }\n .lm_dragProxy.lm_left .lm_header,\n .lm_dragProxy.lm_right .lm_header,\n .lm_stack.lm_left .lm_header,\n .lm_stack.lm_right .lm_header {\n width: 20px;\n float: left;\n vertical-align: top;\n }\n .lm_dragProxy.lm_left .lm_header .lm_tabs,\n .lm_dragProxy.lm_right .lm_header .lm_tabs,\n .lm_stack.lm_left .lm_header .lm_tabs,\n .lm_stack.lm_right .lm_header .lm_tabs {\n transform-origin: left top;\n top: 0;\n width: 1000px;\n }\n .lm_dragProxy.lm_left .lm_header .lm_controls,\n .lm_dragProxy.lm_right .lm_header .lm_controls,\n .lm_stack.lm_left .lm_header .lm_controls,\n .lm_stack.lm_right .lm_header .lm_controls {\n bottom: 0;\n }\n .lm_dragProxy.lm_left .lm_items,\n .lm_dragProxy.lm_right .lm_items,\n .lm_stack.lm_left .lm_items,\n .lm_stack.lm_right .lm_items {.lm_header .lm_tab.lm_active\n float: left;\n }\n .lm_dragProxy.lm_left .lm_header .lm_tabs,\n .lm_stack.lm_left .lm_header .lm_tabs {\n transform: rotate(-90deg) scaleX(-1);\n left: 0;\n }\n .lm_dragProxy.lm_left .lm_header .lm_tabs .lm_tab,\n .lm_stack.lm_left .lm_header .lm_tabs .lm_tab {\n transform: scaleX(-1);\n margin-top: 1px;\n }\n .lm_dragProxy.lm_left .lm_header .lm_tabdropdown_list,\n .lm_stack.lm_left .lm_header .lm_tabdropdown_list {\n top: initial;\n right: initial;\n left: 20px;\n }\n .lm_dragProxy.lm_right .lm_content {\n float: left;\n }\n .lm_dragProxy.lm_right .lm_header .lm_tabs,\n .lm_stack.lm_right .lm_header .lm_tabs {\n transform: rotate(90deg) scaleX(1);\n left: 100%;\n margin-left: 0;\n }\n .lm_dragProxy.lm_right .lm_header .lm_controls,\n .lm_stack.lm_right .lm_header .lm_controls {\n left: 3px;\n }\n .lm_dragProxy.lm_right .lm_header .lm_tabdropdown_list,\n .lm_stack.lm_right .lm_header .lm_tabdropdown_list {\n top: initial;\n right: 20px;\n }\n .lm_dragProxy.lm_bottom .lm_header .lm_tab,\n .lm_stack.lm_bottom .lm_header .lm_tab {\n margin-top: 0;\n border-top: none;\n }\n .lm_dragProxy.lm_bottom .lm_header .lm_controls,\n .lm_stack.lm_bottom .lm_header .lm_controls {\n top: 3px;\n }\n .lm_dragProxy.lm_bottom .lm_header .lm_tabdropdown_list,\n .lm_stack.lm_bottom .lm_header .lm_tabdropdown_list {\n top: initial;\n bottom: 20px;\n }\n .lm_drop_tab_placeholder {\n float: left;\n width: 100px;\n height: 10px;\n visibility: hidden;\n }\n .lm_header .lm_tabdropdown_list {\n position: absolute;\n top: 20px;\n right: 0;\n z-index: 5;\n overflow: hidden;\n }\n .lm_header .lm_tabdropdown_list .lm_tab {\n clear: both;\n padding-right: 10px;\n margin: 0;\n }\n .lm_header .lm_tabdropdown_list .lm_tab .lm_title {\n width: 100px;\n }\n .lm_header .lm_tabdropdown_list .lm_close_tab {\n display: none !important;\n }\n .lm_dragProxy {\n position: absolute;\n top: 0;\n left: 0;\n z-index: 30;\n }\n .lm_dragProxy .lm_header {\n background: transparent;\n }\n .lm_dragProxy .lm_content {\n border-top: none;\n overflow: hidden;\n }\n .lm_dropTargetIndicator {\n display: none;\n position: absolute;\n z-index: 20;\n box-shadow: none;\n }\n .lm_dropTargetIndicator .lm_inner {\n width: 100%;\n height: 100%;\n position: relative;\n top: 0;\n left: 0;\n }\n .lm_transition_indicator {\n display: none;\n width: 20px;\n height: 20px;\n position: absolute;\n top: 0;\n left: 0;\n z-index: 20;\n }\n .lm_popin {\n width: 20px;\n height: 20px;\n position: absolute;\n bottom: 0;\n right: 0;\n z-index: 9999;\n }\n .lm_popin > * {\n width: 100%;\n height: 100%;\n position: absolute;\n top: 0;\n left: 0;\n }\n .lm_popin > .lm_bg {\n z-index: 10;\n }\n .lm_popin > .lm_icon {\n z-index: 20;\n } /*# sourceMappingURL=goldenlayout-base.css.map */\n`",
1310
+ "description": "`ElementStyles` which defines the css for FoundationLayout.",
1311
+ "privacy": "public"
1312
+ }
1313
+ ],
1314
+ "exports": [
1315
+ {
1316
+ "kind": "js",
1317
+ "name": "layoutStyles",
1318
+ "declaration": {
1319
+ "name": "layoutStyles",
1320
+ "module": "src/styles/layout.styles.ts"
1321
+ }
1322
+ }
1323
+ ]
1324
+ },
1325
+ {
1326
+ "kind": "javascript-module",
1327
+ "path": "src/utils/constants.ts",
1328
+ "declarations": [
1329
+ {
1330
+ "kind": "variable",
1331
+ "name": "DEFAULT_RELOAD_BUFFER",
1332
+ "type": {
1333
+ "text": "number"
1334
+ },
1335
+ "default": "500",
1336
+ "description": "Default time in milliseconds for the layout to buffer calls to reloading\nthe layout while the declarative API is loading.\n\nDuring the first load of the layout, a loading spinner will be shown.",
1337
+ "privacy": "public"
1338
+ },
1339
+ {
1340
+ "kind": "variable",
1341
+ "name": "LAYOUT_POPOUT_CONTAINER_CLASS",
1342
+ "type": {
1343
+ "text": "string"
1344
+ },
1345
+ "default": "'f-layout-popout'",
1346
+ "description": "Put this classname on an element which is a DOM parent of the layout, and\nif the layout goes into popout mode then it will place itself as the only child\nfor the popout container you set."
1347
+ },
1348
+ {
1349
+ "kind": "variable",
1350
+ "name": "DEFAULT_TAB_HEIGHT",
1351
+ "type": {
1352
+ "text": "string"
1353
+ },
1354
+ "default": "'36px'"
1355
+ },
1356
+ {
1357
+ "kind": "function",
1358
+ "name": "getLayoutHeaderHeight"
1359
+ }
1360
+ ],
1361
+ "exports": [
1362
+ {
1363
+ "kind": "js",
1364
+ "name": "DEFAULT_RELOAD_BUFFER",
1365
+ "declaration": {
1366
+ "name": "DEFAULT_RELOAD_BUFFER",
1367
+ "module": "src/utils/constants.ts"
1368
+ }
1369
+ },
1370
+ {
1371
+ "kind": "js",
1372
+ "name": "LAYOUT_POPOUT_CONTAINER_CLASS",
1373
+ "declaration": {
1374
+ "name": "LAYOUT_POPOUT_CONTAINER_CLASS",
1375
+ "module": "src/utils/constants.ts"
1376
+ }
1377
+ },
1378
+ {
1379
+ "kind": "js",
1380
+ "name": "DEFAULT_TAB_HEIGHT",
1381
+ "declaration": {
1382
+ "name": "DEFAULT_TAB_HEIGHT",
1383
+ "module": "src/utils/constants.ts"
1384
+ }
1385
+ },
1386
+ {
1387
+ "kind": "js",
1388
+ "name": "getLayoutHeaderHeight",
1389
+ "declaration": {
1390
+ "name": "getLayoutHeaderHeight",
1391
+ "module": "src/utils/constants.ts"
1392
+ }
1393
+ }
1394
+ ]
1395
+ },
1396
+ {
1397
+ "kind": "javascript-module",
1398
+ "path": "src/utils/error.ts",
1399
+ "declarations": [
1400
+ {
1401
+ "kind": "class",
1402
+ "description": "",
1403
+ "name": "LayoutUsageError",
1404
+ "superclass": {
1405
+ "name": "Error",
1406
+ "module": "src/utils/error.ts"
1407
+ }
1408
+ },
1409
+ {
1410
+ "kind": "class",
1411
+ "description": "",
1412
+ "name": "LayoutRegistrationError",
1413
+ "superclass": {
1414
+ "name": "Error",
1415
+ "module": "src/utils/error.ts"
1416
+ }
1417
+ }
1418
+ ],
1419
+ "exports": [
1420
+ {
1421
+ "kind": "js",
1422
+ "name": "LayoutUsageError",
1423
+ "declaration": {
1424
+ "name": "LayoutUsageError",
1425
+ "module": "src/utils/error.ts"
1426
+ }
1427
+ },
1428
+ {
1429
+ "kind": "js",
1430
+ "name": "LayoutRegistrationError",
1431
+ "declaration": {
1432
+ "name": "LayoutRegistrationError",
1433
+ "module": "src/utils/error.ts"
1434
+ }
1435
+ }
1436
+ ]
1437
+ },
1438
+ {
1439
+ "kind": "javascript-module",
1440
+ "path": "src/utils/events.ts",
1441
+ "declarations": [
1442
+ {
1443
+ "kind": "variable",
1444
+ "name": "LayoutEmitEvents",
1445
+ "type": {
1446
+ "text": "{\n firstLoaded: 'first-loaded',\n itemAdded: 'item-added',\n itemRemoved: 'item-removed',\n itemResized: 'item-resized',\n}"
1447
+ },
1448
+ "default": "{\n firstLoaded: 'first-loaded',\n itemAdded: 'item-added',\n itemRemoved: 'item-removed',\n itemResized: 'item-resized',\n}",
1449
+ "description": "Defines events that the layout system emits\n\n'firstLoaded' - emitted when the layout has finished loading the first time\nusing the declarative API after DEFAULT_RELOAD_BUFFER ms.\n<br/>\n'itemAdded' - emitted when an item is added to the layout'\n<br/>\n'itemRemoved' - emitted when an item is removed from the layout'\n<br/>\n'itemResized' - emitted when the user drags the divider to resize elements",
1450
+ "privacy": "public"
1451
+ },
1452
+ {
1453
+ "kind": "variable",
1454
+ "name": "LayoutReceiveEvents",
1455
+ "type": {
1456
+ "text": "{\n changeTitle: 'change-title',\n autosave: 'autosave',\n}"
1457
+ },
1458
+ "default": "{\n changeTitle: 'change-title',\n autosave: 'autosave',\n}",
1459
+ "description": "Defines events that the layout system listens for\n\n'changeTitle' - emit this from a contained item to update the title of the window that contains it.\n'autosave' - emit this from a contained item to hint to the layout system that it should autosave the layout. A contained item should do this if it has just changed some state it would like to persist. See LayoutComponentWithState.",
1460
+ "privacy": "public"
1461
+ }
1462
+ ],
1463
+ "exports": [
1464
+ {
1465
+ "kind": "js",
1466
+ "name": "LayoutEmitEvents",
1467
+ "declaration": {
1468
+ "name": "LayoutEmitEvents",
1469
+ "module": "src/utils/events.ts"
1470
+ }
1471
+ },
1472
+ {
1473
+ "kind": "js",
1474
+ "name": "LayoutReceiveEvents",
1475
+ "declaration": {
1476
+ "name": "LayoutReceiveEvents",
1477
+ "module": "src/utils/events.ts"
1478
+ }
1479
+ }
1480
+ ]
1481
+ },
1482
+ {
1483
+ "kind": "javascript-module",
1484
+ "path": "src/utils/factory-registry.ts",
1485
+ "declarations": [
1486
+ {
1487
+ "kind": "function",
1488
+ "name": "registerFactory",
1489
+ "return": {
1490
+ "type": {
1491
+ "text": "void"
1492
+ }
1493
+ },
1494
+ "parameters": [
1495
+ {
1496
+ "name": "key",
1497
+ "type": {
1498
+ "text": "string"
1499
+ },
1500
+ "description": "Unique identifier for the factory. Should be descriptive and unique across the application."
1501
+ },
1502
+ {
1503
+ "name": "factory",
1504
+ "type": {
1505
+ "text": "ComponentFactory"
1506
+ },
1507
+ "description": "The factory function that creates the component."
1508
+ }
1509
+ ],
1510
+ "description": "Registers a factory function with a unique key.\nThis allows framework components to be used in the declarative layout API\nwithout needing to pass function references through HTML attributes.",
1511
+ "privacy": "public"
1512
+ },
1513
+ {
1514
+ "kind": "function",
1515
+ "name": "getFactory",
1516
+ "return": {
1517
+ "type": {
1518
+ "text": ""
1519
+ }
1520
+ },
1521
+ "parameters": [
1522
+ {
1523
+ "name": "key",
1524
+ "type": {
1525
+ "text": "string"
1526
+ },
1527
+ "description": "The unique identifier for the factory."
1528
+ }
1529
+ ],
1530
+ "description": "Retrieves a factory function by its key.",
1531
+ "privacy": "public"
1532
+ },
1533
+ {
1534
+ "kind": "function",
1535
+ "name": "unregisterFactory",
1536
+ "return": {
1537
+ "type": {
1538
+ "text": ""
1539
+ }
1540
+ },
1541
+ "parameters": [
1542
+ {
1543
+ "name": "key",
1544
+ "type": {
1545
+ "text": "string"
1546
+ },
1547
+ "description": "The unique identifier for the factory to remove."
1548
+ }
1549
+ ],
1550
+ "description": "Removes a factory from the registry.\nThis is useful for cleanup when a component is unmounted or no longer needed.",
1551
+ "privacy": "public"
1552
+ }
1553
+ ],
1554
+ "exports": [
1555
+ {
1556
+ "kind": "js",
1557
+ "name": "registerFactory",
1558
+ "declaration": {
1559
+ "name": "registerFactory",
1560
+ "module": "src/utils/factory-registry.ts"
1561
+ }
1562
+ },
1563
+ {
1564
+ "kind": "js",
1565
+ "name": "getFactory",
1566
+ "declaration": {
1567
+ "name": "getFactory",
1568
+ "module": "src/utils/factory-registry.ts"
1569
+ }
1570
+ },
1571
+ {
1572
+ "kind": "js",
1573
+ "name": "unregisterFactory",
1574
+ "declaration": {
1575
+ "name": "unregisterFactory",
1576
+ "module": "src/utils/factory-registry.ts"
1577
+ }
1578
+ }
1579
+ ]
1580
+ },
1581
+ {
1582
+ "kind": "javascript-module",
1583
+ "path": "src/utils/index.ts",
1584
+ "declarations": [],
1585
+ "exports": [
1586
+ {
1587
+ "kind": "js",
1588
+ "name": "*",
1589
+ "declaration": {
1590
+ "name": "*",
1591
+ "package": "./constants"
1592
+ }
1593
+ },
1594
+ {
1595
+ "kind": "js",
1596
+ "name": "*",
1597
+ "declaration": {
1598
+ "name": "*",
1599
+ "package": "./error"
1600
+ }
1601
+ },
1602
+ {
1603
+ "kind": "js",
1604
+ "name": "*",
1605
+ "declaration": {
1606
+ "name": "*",
1607
+ "package": "./events"
1608
+ }
1609
+ },
1610
+ {
1611
+ "kind": "js",
1612
+ "name": "*",
1613
+ "declaration": {
1614
+ "name": "*",
1615
+ "package": "./factory-registry"
1616
+ }
1617
+ },
1618
+ {
1619
+ "kind": "js",
1620
+ "name": "*",
1621
+ "declaration": {
1622
+ "name": "*",
1623
+ "package": "./misc"
1624
+ }
1625
+ },
1626
+ {
1627
+ "kind": "js",
1628
+ "name": "*",
1629
+ "declaration": {
1630
+ "name": "*",
1631
+ "package": "./templates"
1632
+ }
1633
+ },
1634
+ {
1635
+ "kind": "js",
1636
+ "name": "*",
1637
+ "declaration": {
1638
+ "name": "*",
1639
+ "package": "./types"
1640
+ }
1641
+ },
1642
+ {
1643
+ "kind": "js",
1644
+ "name": "*",
1645
+ "declaration": {
1646
+ "name": "*",
1647
+ "package": "./error"
1648
+ }
1649
+ }
1650
+ ]
1651
+ },
1652
+ {
1653
+ "kind": "javascript-module",
1654
+ "path": "src/utils/logger.ts",
1655
+ "declarations": [
1656
+ {
1657
+ "kind": "variable",
1658
+ "name": "logger"
1659
+ }
1660
+ ],
1661
+ "exports": [
1662
+ {
1663
+ "kind": "js",
1664
+ "name": "logger",
1665
+ "declaration": {
1666
+ "name": "logger",
1667
+ "module": "src/utils/logger.ts"
1668
+ }
1669
+ }
1670
+ ]
1671
+ },
1672
+ {
1673
+ "kind": "javascript-module",
1674
+ "path": "src/utils/misc.ts",
1675
+ "declarations": [],
1676
+ "exports": []
1677
+ },
1678
+ {
1679
+ "kind": "javascript-module",
1680
+ "path": "src/utils/templates.ts",
1681
+ "declarations": [],
1682
+ "exports": []
1683
+ },
1684
+ {
1685
+ "kind": "javascript-module",
1686
+ "path": "src/utils/types.ts",
1687
+ "declarations": [],
1688
+ "exports": []
1689
1689
  }
1690
1690
  ]
1691
1691
  }