@genesislcap/foundation-layout 14.375.1 → 14.375.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/dist/custom-elements.json +962 -962
  2. package/package.json +13 -13
@@ -171,47 +171,88 @@
171
171
  },
172
172
  {
173
173
  "kind": "javascript-module",
174
- "path": "src/main/index.ts",
175
- "declarations": [],
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
+ ],
176
196
  "exports": [
177
197
  {
178
198
  "kind": "js",
179
- "name": "FoundationLayoutItem",
199
+ "name": "glVisualConfig",
180
200
  "declaration": {
181
- "name": "FoundationLayoutItem",
182
- "module": "./layout-item"
201
+ "name": "glVisualConfig",
202
+ "module": "src/styles/constants.ts"
183
203
  }
184
204
  },
185
205
  {
186
206
  "kind": "js",
187
- "name": "FoundationLayoutRegion",
207
+ "name": "LAYOUT_ICONS",
188
208
  "declaration": {
189
- "name": "FoundationLayoutRegion",
190
- "module": "./layout-region"
209
+ "name": "LAYOUT_ICONS",
210
+ "module": "src/styles/constants.ts"
191
211
  }
192
- },
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": [
193
227
  {
194
228
  "kind": "js",
195
- "name": "FoundationLayout",
229
+ "name": "globalDraggingStyles",
196
230
  "declaration": {
197
- "name": "FoundationLayout",
198
- "module": "./layout-main"
231
+ "name": "globalDraggingStyles",
232
+ "module": "src/styles/dragging.styles.ts"
199
233
  }
200
- },
234
+ }
235
+ ]
236
+ },
237
+ {
238
+ "kind": "javascript-module",
239
+ "path": "src/styles/index.ts",
240
+ "declarations": [],
241
+ "exports": [
201
242
  {
202
243
  "kind": "js",
203
- "name": "layoutStyles",
244
+ "name": "*",
204
245
  "declaration": {
205
- "name": "layoutStyles",
206
- "module": "./layout-main"
246
+ "name": "*",
247
+ "package": "./constants"
207
248
  }
208
249
  },
209
250
  {
210
251
  "kind": "js",
211
- "name": "layoutTemplate",
252
+ "name": "*",
212
253
  "declaration": {
213
- "name": "layoutTemplate",
214
- "module": "./layout-main"
254
+ "name": "*",
255
+ "package": "./dragging.styles"
215
256
  }
216
257
  },
217
258
  {
@@ -219,340 +260,783 @@
219
260
  "name": "*",
220
261
  "declaration": {
221
262
  "name": "*",
222
- "package": "./layout-components"
263
+ "package": "./layout.styles"
223
264
  }
224
265
  }
225
266
  ]
226
267
  },
227
268
  {
228
269
  "kind": "javascript-module",
229
- "path": "src/main/layout-components.ts",
270
+ "path": "src/styles/layout.styles.ts",
230
271
  "declarations": [
231
272
  {
232
273
  "kind": "variable",
233
- "name": "foundationLayoutComponents",
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": [
281
+ {
282
+ "kind": "js",
283
+ "name": "layoutStyles",
284
+ "declaration": {
285
+ "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",
234
298
  "type": {
235
- "text": "object"
299
+ "text": "number"
236
300
  },
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.",
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.",
239
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"
240
325
  }
241
326
  ],
242
327
  "exports": [
243
328
  {
244
329
  "kind": "js",
245
- "name": "foundationLayoutComponents",
330
+ "name": "DEFAULT_RELOAD_BUFFER",
246
331
  "declaration": {
247
- "name": "foundationLayoutComponents",
248
- "module": "src/main/layout-components.ts"
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"
249
358
  }
250
359
  }
251
360
  ]
252
361
  },
253
362
  {
254
363
  "kind": "javascript-module",
255
- "path": "src/main/layout-item.ts",
364
+ "path": "src/utils/error.ts",
256
365
  "declarations": [
257
366
  {
258
367
  "kind": "class",
259
368
  "description": "",
260
- "name": "FoundationLayoutItem",
261
- "members": [
262
- {
263
- "kind": "field",
264
- "name": "title",
265
- "type": {
266
- "text": "string"
267
- },
268
- "description": "Sets the title of the item which is displayed on the tab.",
269
- "privacy": "public"
270
- },
271
- {
272
- "kind": "field",
273
- "name": "closable",
274
- "type": {
275
- "text": "boolean"
276
- },
277
- "default": "false",
278
- "description": "Boolean attribute controls whether the window can be closed in the GUI.\nDefaults to `false`.",
279
- "privacy": "public"
280
- },
281
- {
282
- "kind": "field",
283
- "name": "size",
284
- "type": {
285
- "text": "string"
286
- },
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
- }
369
+ "name": "LayoutUsageError",
370
+ "superclass": {
371
+ "name": "Error",
372
+ "module": "src/utils/error.ts"
373
+ }
374
+ },
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
+ {
387
+ "kind": "js",
388
+ "name": "LayoutUsageError",
389
+ "declaration": {
390
+ "name": "LayoutUsageError",
391
+ "module": "src/utils/error.ts"
392
+ }
393
+ },
394
+ {
395
+ "kind": "js",
396
+ "name": "LayoutRegistrationError",
397
+ "declaration": {
398
+ "name": "LayoutRegistrationError",
399
+ "module": "src/utils/error.ts"
400
+ }
401
+ }
402
+ ]
403
+ },
404
+ {
405
+ "kind": "javascript-module",
406
+ "path": "src/utils/events.ts",
407
+ "declarations": [
408
+ {
409
+ "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",
421
+ "type": {
422
+ "text": "{\n changeTitle: 'change-title',\n autosave: 'autosave',\n}"
423
+ },
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.",
426
+ "privacy": "public"
427
+ }
428
+ ],
429
+ "exports": [
430
+ {
431
+ "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",
441
+ "declaration": {
442
+ "name": "LayoutReceiveEvents",
443
+ "module": "src/utils/events.ts"
444
+ }
445
+ }
446
+ ]
447
+ },
448
+ {
449
+ "kind": "javascript-module",
450
+ "path": "src/utils/factory-registry.ts",
451
+ "declarations": [
452
+ {
453
+ "kind": "function",
454
+ "name": "registerFactory",
455
+ "return": {
456
+ "type": {
457
+ "text": "void"
409
458
  }
410
- ],
411
- "attributes": [
459
+ },
460
+ "parameters": [
412
461
  {
413
- "name": "title",
462
+ "name": "key",
414
463
  "type": {
415
464
  "text": "string"
416
465
  },
417
- "description": "Sets the title of the item which is displayed on the tab.",
418
- "fieldName": "title"
466
+ "description": "Unique identifier for the factory. Should be descriptive and unique across the application."
419
467
  },
420
468
  {
469
+ "name": "factory",
421
470
  "type": {
422
- "text": "boolean"
471
+ "text": "ComponentFactory"
423
472
  },
424
- "default": "false",
425
- "description": "Boolean attribute controls whether the window can be closed in the GUI.\nDefaults to `false`.",
426
- "fieldName": "closable"
427
- },
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": [
428
488
  {
429
- "name": "size",
489
+ "name": "key",
430
490
  "type": {
431
491
  "text": "string"
432
492
  },
433
- "description": "optional string describing the size of the new item (see the written documentation for more info)",
434
- "fieldName": "size"
435
- },
493
+ "description": "The unique identifier for the factory."
494
+ }
495
+ ],
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": [
436
508
  {
437
- "name": "registration",
509
+ "name": "key",
438
510
  "type": {
439
511
  "text": "string"
440
512
  },
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"
513
+ "description": "The unique identifier for the factory to remove."
443
514
  }
444
515
  ],
445
- "superclass": {
446
- "name": "FoundationElement",
447
- "package": "@microsoft/fast-foundation"
448
- },
449
- "tagName": "%%prefix%%-layout-item",
450
- "customElement": true
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"
451
518
  }
452
519
  ],
453
520
  "exports": [
454
521
  {
455
522
  "kind": "js",
456
- "name": "FoundationLayoutItem",
523
+ "name": "registerFactory",
457
524
  "declaration": {
458
- "name": "FoundationLayoutItem",
459
- "module": "src/main/layout-item.ts"
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",
540
+ "declaration": {
541
+ "name": "unregisterFactory",
542
+ "module": "src/utils/factory-registry.ts"
460
543
  }
461
544
  }
462
545
  ]
463
546
  },
464
547
  {
465
548
  "kind": "javascript-module",
466
- "path": "src/main/layout-main.ts",
467
- "declarations": [
549
+ "path": "src/utils/index.ts",
550
+ "declarations": [],
551
+ "exports": [
468
552
  {
469
- "kind": "class",
470
- "description": "",
471
- "name": "FoundationLayout",
472
- "members": [
473
- {
474
- "kind": "field",
475
- "name": "layout",
476
- "type": {
477
- "text": "GoldenLayout"
478
- },
479
- "privacy": "private"
480
- },
481
- {
482
- "kind": "field",
483
- "name": "layoutConfig",
484
- "type": {
485
- "text": "LayoutConfig"
486
- },
487
- "privacy": "private",
488
- "default": "{ root: undefined }"
489
- },
490
- {
491
- "kind": "field",
492
- "name": "defaultLayoutConfig",
493
- "type": {
494
- "text": "LayoutConfig"
495
- },
496
- "privacy": "private",
497
- "default": "{ root: undefined }"
498
- },
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": [
741
+ {
742
+ "kind": "class",
743
+ "description": "",
744
+ "name": "FoundationLayoutItem",
745
+ "members": [
499
746
  {
500
747
  "kind": "field",
501
- "name": "reloadBuffer",
748
+ "name": "title",
502
749
  "type": {
503
- "text": "number"
750
+ "text": "string"
504
751
  },
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).",
752
+ "description": "Sets the title of the item which is displayed on the tab.",
507
753
  "privacy": "public"
508
754
  },
509
755
  {
510
756
  "kind": "field",
511
- "name": "reloadPending",
757
+ "name": "closable",
512
758
  "type": {
513
759
  "text": "boolean"
514
760
  },
515
- "privacy": "private",
516
- "default": "false"
761
+ "default": "false",
762
+ "description": "Boolean attribute controls whether the window can be closed in the GUI.\nDefaults to `false`.",
763
+ "privacy": "public"
517
764
  },
518
765
  {
519
766
  "kind": "field",
520
- "name": "registeredComponents",
767
+ "name": "size",
521
768
  "type": {
522
- "text": "number"
769
+ "text": "string"
523
770
  },
524
- "privacy": "private",
525
- "default": "0"
771
+ "description": "optional string describing the size of the new item (see the written documentation for more info)",
772
+ "privacy": "public"
526
773
  },
527
774
  {
528
775
  "kind": "field",
529
- "name": "autoSaveKey",
776
+ "name": "registration",
530
777
  "type": {
531
- "text": "string | undefined"
778
+ "text": "string"
532
779
  },
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"
535
- },
536
- {
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.",
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.",
540
781
  "privacy": "public"
541
782
  },
542
783
  {
543
784
  "kind": "field",
544
- "name": "dimensionsConfig",
785
+ "name": "_presentation",
545
786
  "type": {
546
- "text": "LayoutConfig.Dimensions | undefined"
787
+ "text": "ComponentPresentation | null | undefined"
547
788
  },
548
- "description": "Apply dimensions config to the layout, such as setting the size of the drag handles.",
549
- "privacy": "public"
789
+ "privacy": "private",
790
+ "default": "void 0",
791
+ "inheritedFrom": {
792
+ "name": "FoundationElement",
793
+ "module": "src/foundation-element/foundation-element.ts"
794
+ }
550
795
  },
551
796
  {
552
797
  "kind": "field",
553
- "name": "hasFirstLoaded",
798
+ "name": "$presentation",
554
799
  "type": {
555
- "text": "boolean"
800
+ "text": "ComponentPresentation | null"
801
+ },
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
+ }
808
+ },
809
+ {
810
+ "kind": "field",
811
+ "name": "template",
812
+ "type": {
813
+ "text": "ElementViewTemplate | void | null"
814
+ },
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
+ }
821
+ },
822
+ {
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
+ }
835
+ },
836
+ {
837
+ "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",
1029
+ "type": {
1030
+ "text": "LayoutConfig.Dimensions | undefined"
1031
+ },
1032
+ "description": "Apply dimensions config to the layout, such as setting the size of the drag handles.",
1033
+ "privacy": "public"
1034
+ },
1035
+ {
1036
+ "kind": "field",
1037
+ "name": "hasFirstLoaded",
1038
+ "type": {
1039
+ "text": "boolean"
556
1040
  },
557
1041
  "default": "false",
558
1042
  "description": "Boolean signifies whether the layout has loaded for the first time or not.",
@@ -954,738 +1438,254 @@
954
1438
  },
955
1439
  "default": "DEFAULT_RELOAD_BUFFER",
956
1440
  "description": "Number describing how long to wait in ms before reloading the config when adding items\ndeclaratively by the html API. Default 500 (ms).",
957
- "resolveInitializer": {
958
- "module": "/src/utils/"
959
- },
960
- "fieldName": "reloadBuffer"
961
- },
962
- {
963
- "name": "auto-save-key",
964
- "type": {
965
- "text": "string | undefined"
966
- },
967
- "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`.",
968
- "fieldName": "autoSaveKey"
969
- },
970
- {
971
- "name": "popout-config",
972
- "type": {
973
- "text": "string | undefined"
974
- },
975
- "default": "undefined",
976
- "description": "Controls whether popout functionality is enabled on the layout. Defaults to disabled.\nSet this attribute to any string to enable popout functionality. If this string is of format `number;number` then this will be interpreted as the width and height of the popout window.",
977
- "resolveInitializer": {
978
- "module": "src/main/layout-main.ts"
979
- },
980
- "fieldName": "popoutConfig"
981
- }
982
- ],
983
- "superclass": {
984
- "name": "FoundationElement",
985
- "package": "@microsoft/fast-foundation"
986
- },
987
- "tagName": "%%prefix%%-layout",
988
- "customElement": true
989
- },
990
- {
991
- "kind": "variable",
992
- "name": "layoutTemplate",
993
- "default": "html<FoundationLayout>`\n <template>\n ${when((x) => !x.hasFirstLoaded && x.usingDeclerativeAPI, loadingTemplate)}\n <div class=\"layout-container\" ${ref('layoutElement')}></div>\n </template>\n`",
994
- "description": "`ViewTemplate` which defines the html for FoundationLayout.",
995
- "privacy": "public"
996
- }
997
- ],
998
- "exports": [
999
- {
1000
- "kind": "js",
1001
- "name": "layoutStyles",
1002
- "declaration": {
1003
- "name": "layoutStyles",
1004
- "module": "../styles"
1005
- }
1006
- },
1007
- {
1008
- "kind": "js",
1009
- "name": "FoundationLayout",
1010
- "declaration": {
1011
- "name": "FoundationLayout",
1012
- "module": "src/main/layout-main.ts"
1013
- }
1014
- },
1015
- {
1016
- "kind": "js",
1017
- "name": "layoutTemplate",
1018
- "declaration": {
1019
- "name": "layoutTemplate",
1020
- "module": "src/main/layout-main.ts"
1021
- }
1022
- }
1023
- ]
1024
- },
1025
- {
1026
- "kind": "javascript-module",
1027
- "path": "src/main/layout-region.ts",
1028
- "declarations": [
1029
- {
1030
- "kind": "class",
1031
- "description": "",
1032
- "name": "FoundationLayoutRegion",
1033
- "members": [
1034
- {
1035
- "kind": "field",
1036
- "name": "size",
1037
- "type": {
1038
- "text": "string"
1039
- },
1040
- "description": "optional string describing the size of the new item (see the written documentation for more info)",
1041
- "privacy": "public"
1042
- },
1043
- {
1044
- "kind": "field",
1045
- "name": "type",
1046
- "type": {
1047
- "text": "LayoutRegionType"
1048
- },
1049
- "default": "layoutRegionValue[0]",
1050
- "description": "Defines the LayoutRegionType| type of the region.\nDefaults to `horizontal`.",
1051
- "privacy": "public"
1052
- },
1053
- {
1054
- "kind": "field",
1055
- "name": "_presentation",
1056
- "type": {
1057
- "text": "ComponentPresentation | null | undefined"
1058
- },
1059
- "privacy": "private",
1060
- "default": "void 0",
1061
- "inheritedFrom": {
1062
- "name": "FoundationElement",
1063
- "module": "src/foundation-element/foundation-element.ts"
1064
- }
1065
- },
1066
- {
1067
- "kind": "field",
1068
- "name": "$presentation",
1069
- "type": {
1070
- "text": "ComponentPresentation | null"
1071
- },
1072
- "privacy": "public",
1073
- "description": "A property which resolves the ComponentPresentation instance\nfor the current component.",
1074
- "inheritedFrom": {
1075
- "name": "FoundationElement",
1076
- "module": "src/foundation-element/foundation-element.ts"
1077
- }
1078
- },
1079
- {
1080
- "kind": "field",
1081
- "name": "template",
1082
- "type": {
1083
- "text": "ElementViewTemplate | void | null"
1084
- },
1085
- "privacy": "public",
1086
- "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.",
1087
- "inheritedFrom": {
1088
- "name": "FoundationElement",
1089
- "module": "src/foundation-element/foundation-element.ts"
1090
- }
1091
- },
1092
- {
1093
- "kind": "method",
1094
- "name": "templateChanged",
1095
- "privacy": "protected",
1096
- "return": {
1097
- "type": {
1098
- "text": "void"
1099
- }
1100
- },
1101
- "inheritedFrom": {
1102
- "name": "FoundationElement",
1103
- "module": "src/foundation-element/foundation-element.ts"
1104
- }
1105
- },
1106
- {
1107
- "kind": "field",
1108
- "name": "styles",
1109
- "type": {
1110
- "text": "ElementStyles | void | null"
1111
- },
1112
- "privacy": "public",
1113
- "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.",
1114
- "inheritedFrom": {
1115
- "name": "FoundationElement",
1116
- "module": "src/foundation-element/foundation-element.ts"
1117
- }
1118
- },
1119
- {
1120
- "kind": "method",
1121
- "name": "stylesChanged",
1122
- "privacy": "protected",
1123
- "return": {
1124
- "type": {
1125
- "text": "void"
1126
- }
1127
- },
1128
- "inheritedFrom": {
1129
- "name": "FoundationElement",
1130
- "module": "src/foundation-element/foundation-element.ts"
1131
- }
1132
- },
1133
- {
1134
- "kind": "method",
1135
- "name": "compose",
1136
- "privacy": "public",
1137
- "static": true,
1138
- "return": {
1139
- "type": {
1140
- "text": "(\n overrideDefinition?: OverrideFoundationElementDefinition<T>\n ) => FoundationElementRegistry<T, K>"
1141
- }
1142
- },
1143
- "parameters": [
1144
- {
1145
- "name": "this",
1146
- "type": {
1147
- "text": "K"
1148
- }
1149
- },
1150
- {
1151
- "name": "elementDefinition",
1152
- "type": {
1153
- "text": "T"
1154
- },
1155
- "description": "The definition of the element to create the registry\nfunction for."
1156
- }
1157
- ],
1158
- "description": "Defines an element registry function with a set of element definition defaults.",
1159
- "inheritedFrom": {
1160
- "name": "FoundationElement",
1161
- "module": "src/foundation-element/foundation-element.ts"
1162
- }
1163
- }
1164
- ],
1165
- "attributes": [
1166
- {
1167
- "name": "size",
1168
- "type": {
1169
- "text": "string"
1170
- },
1171
- "description": "optional string describing the size of the new item (see the written documentation for more info)",
1172
- "fieldName": "size"
1173
- },
1174
- {
1175
- "name": "type",
1176
- "type": {
1177
- "text": "LayoutRegionType"
1178
- },
1179
- "default": "defaultLayoutType",
1180
- "description": "Defines the LayoutRegionType| type of the region.\nDefaults to `horizontal`.",
1181
- "resolveInitializer": {
1182
- "module": "src/main/layout-region.ts"
1183
- },
1184
- "fieldName": "type"
1185
- }
1186
- ],
1187
- "superclass": {
1188
- "name": "FoundationElement",
1189
- "package": "@microsoft/fast-foundation"
1190
- },
1191
- "tagName": "%%prefix%%-layout-region",
1192
- "customElement": true
1193
- }
1194
- ],
1195
- "exports": [
1196
- {
1197
- "kind": "js",
1198
- "name": "FoundationLayoutRegion",
1199
- "declaration": {
1200
- "name": "FoundationLayoutRegion",
1201
- "module": "src/main/layout-region.ts"
1202
- }
1203
- }
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
- }
1441
+ "resolveInitializer": {
1442
+ "module": "/src/utils/"
1443
+ },
1444
+ "fieldName": "reloadBuffer"
1445
+ },
1446
+ {
1447
+ "name": "auto-save-key",
1448
+ "type": {
1449
+ "text": "string | undefined"
1450
+ },
1451
+ "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`.",
1452
+ "fieldName": "autoSaveKey"
1453
+ },
1454
+ {
1455
+ "name": "popout-config",
1456
+ "type": {
1457
+ "text": "string | undefined"
1458
+ },
1459
+ "default": "undefined",
1460
+ "description": "Controls whether popout functionality is enabled on the layout. Defaults to disabled.\nSet this attribute to any string to enable popout functionality. If this string is of format `number;number` then this will be interpreted as the width and height of the popout window.",
1461
+ "resolveInitializer": {
1462
+ "module": "src/main/layout-main.ts"
1463
+ },
1464
+ "fieldName": "popoutConfig"
1465
+ }
1466
+ ],
1467
+ "superclass": {
1468
+ "name": "FoundationElement",
1469
+ "package": "@microsoft/fast-foundation"
1470
+ },
1471
+ "tagName": "%%prefix%%-layout",
1472
+ "customElement": true
1617
1473
  },
1618
1474
  {
1619
- "kind": "js",
1620
- "name": "*",
1621
- "declaration": {
1622
- "name": "*",
1623
- "package": "./misc"
1624
- }
1625
- },
1475
+ "kind": "variable",
1476
+ "name": "layoutTemplate",
1477
+ "default": "html<FoundationLayout>`\n <template>\n ${when((x) => !x.hasFirstLoaded && x.usingDeclerativeAPI, loadingTemplate)}\n <div class=\"layout-container\" ${ref('layoutElement')}></div>\n </template>\n`",
1478
+ "description": "`ViewTemplate` which defines the html for FoundationLayout.",
1479
+ "privacy": "public"
1480
+ }
1481
+ ],
1482
+ "exports": [
1626
1483
  {
1627
1484
  "kind": "js",
1628
- "name": "*",
1485
+ "name": "layoutStyles",
1629
1486
  "declaration": {
1630
- "name": "*",
1631
- "package": "./templates"
1487
+ "name": "layoutStyles",
1488
+ "module": "../styles"
1632
1489
  }
1633
1490
  },
1634
1491
  {
1635
1492
  "kind": "js",
1636
- "name": "*",
1493
+ "name": "FoundationLayout",
1637
1494
  "declaration": {
1638
- "name": "*",
1639
- "package": "./types"
1495
+ "name": "FoundationLayout",
1496
+ "module": "src/main/layout-main.ts"
1640
1497
  }
1641
1498
  },
1642
1499
  {
1643
1500
  "kind": "js",
1644
- "name": "*",
1501
+ "name": "layoutTemplate",
1645
1502
  "declaration": {
1646
- "name": "*",
1647
- "package": "./error"
1503
+ "name": "layoutTemplate",
1504
+ "module": "src/main/layout-main.ts"
1648
1505
  }
1649
1506
  }
1650
1507
  ]
1651
1508
  },
1652
1509
  {
1653
1510
  "kind": "javascript-module",
1654
- "path": "src/utils/logger.ts",
1511
+ "path": "src/main/layout-region.ts",
1655
1512
  "declarations": [
1656
1513
  {
1657
- "kind": "variable",
1658
- "name": "logger"
1514
+ "kind": "class",
1515
+ "description": "",
1516
+ "name": "FoundationLayoutRegion",
1517
+ "members": [
1518
+ {
1519
+ "kind": "field",
1520
+ "name": "size",
1521
+ "type": {
1522
+ "text": "string"
1523
+ },
1524
+ "description": "optional string describing the size of the new item (see the written documentation for more info)",
1525
+ "privacy": "public"
1526
+ },
1527
+ {
1528
+ "kind": "field",
1529
+ "name": "type",
1530
+ "type": {
1531
+ "text": "LayoutRegionType"
1532
+ },
1533
+ "default": "layoutRegionValue[0]",
1534
+ "description": "Defines the LayoutRegionType| type of the region.\nDefaults to `horizontal`.",
1535
+ "privacy": "public"
1536
+ },
1537
+ {
1538
+ "kind": "field",
1539
+ "name": "_presentation",
1540
+ "type": {
1541
+ "text": "ComponentPresentation | null | undefined"
1542
+ },
1543
+ "privacy": "private",
1544
+ "default": "void 0",
1545
+ "inheritedFrom": {
1546
+ "name": "FoundationElement",
1547
+ "module": "src/foundation-element/foundation-element.ts"
1548
+ }
1549
+ },
1550
+ {
1551
+ "kind": "field",
1552
+ "name": "$presentation",
1553
+ "type": {
1554
+ "text": "ComponentPresentation | null"
1555
+ },
1556
+ "privacy": "public",
1557
+ "description": "A property which resolves the ComponentPresentation instance\nfor the current component.",
1558
+ "inheritedFrom": {
1559
+ "name": "FoundationElement",
1560
+ "module": "src/foundation-element/foundation-element.ts"
1561
+ }
1562
+ },
1563
+ {
1564
+ "kind": "field",
1565
+ "name": "template",
1566
+ "type": {
1567
+ "text": "ElementViewTemplate | void | null"
1568
+ },
1569
+ "privacy": "public",
1570
+ "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.",
1571
+ "inheritedFrom": {
1572
+ "name": "FoundationElement",
1573
+ "module": "src/foundation-element/foundation-element.ts"
1574
+ }
1575
+ },
1576
+ {
1577
+ "kind": "method",
1578
+ "name": "templateChanged",
1579
+ "privacy": "protected",
1580
+ "return": {
1581
+ "type": {
1582
+ "text": "void"
1583
+ }
1584
+ },
1585
+ "inheritedFrom": {
1586
+ "name": "FoundationElement",
1587
+ "module": "src/foundation-element/foundation-element.ts"
1588
+ }
1589
+ },
1590
+ {
1591
+ "kind": "field",
1592
+ "name": "styles",
1593
+ "type": {
1594
+ "text": "ElementStyles | void | null"
1595
+ },
1596
+ "privacy": "public",
1597
+ "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.",
1598
+ "inheritedFrom": {
1599
+ "name": "FoundationElement",
1600
+ "module": "src/foundation-element/foundation-element.ts"
1601
+ }
1602
+ },
1603
+ {
1604
+ "kind": "method",
1605
+ "name": "stylesChanged",
1606
+ "privacy": "protected",
1607
+ "return": {
1608
+ "type": {
1609
+ "text": "void"
1610
+ }
1611
+ },
1612
+ "inheritedFrom": {
1613
+ "name": "FoundationElement",
1614
+ "module": "src/foundation-element/foundation-element.ts"
1615
+ }
1616
+ },
1617
+ {
1618
+ "kind": "method",
1619
+ "name": "compose",
1620
+ "privacy": "public",
1621
+ "static": true,
1622
+ "return": {
1623
+ "type": {
1624
+ "text": "(\n overrideDefinition?: OverrideFoundationElementDefinition<T>\n ) => FoundationElementRegistry<T, K>"
1625
+ }
1626
+ },
1627
+ "parameters": [
1628
+ {
1629
+ "name": "this",
1630
+ "type": {
1631
+ "text": "K"
1632
+ }
1633
+ },
1634
+ {
1635
+ "name": "elementDefinition",
1636
+ "type": {
1637
+ "text": "T"
1638
+ },
1639
+ "description": "The definition of the element to create the registry\nfunction for."
1640
+ }
1641
+ ],
1642
+ "description": "Defines an element registry function with a set of element definition defaults.",
1643
+ "inheritedFrom": {
1644
+ "name": "FoundationElement",
1645
+ "module": "src/foundation-element/foundation-element.ts"
1646
+ }
1647
+ }
1648
+ ],
1649
+ "attributes": [
1650
+ {
1651
+ "name": "size",
1652
+ "type": {
1653
+ "text": "string"
1654
+ },
1655
+ "description": "optional string describing the size of the new item (see the written documentation for more info)",
1656
+ "fieldName": "size"
1657
+ },
1658
+ {
1659
+ "name": "type",
1660
+ "type": {
1661
+ "text": "LayoutRegionType"
1662
+ },
1663
+ "default": "defaultLayoutType",
1664
+ "description": "Defines the LayoutRegionType| type of the region.\nDefaults to `horizontal`.",
1665
+ "resolveInitializer": {
1666
+ "module": "src/main/layout-region.ts"
1667
+ },
1668
+ "fieldName": "type"
1669
+ }
1670
+ ],
1671
+ "superclass": {
1672
+ "name": "FoundationElement",
1673
+ "package": "@microsoft/fast-foundation"
1674
+ },
1675
+ "tagName": "%%prefix%%-layout-region",
1676
+ "customElement": true
1659
1677
  }
1660
1678
  ],
1661
1679
  "exports": [
1662
1680
  {
1663
1681
  "kind": "js",
1664
- "name": "logger",
1682
+ "name": "FoundationLayoutRegion",
1665
1683
  "declaration": {
1666
- "name": "logger",
1667
- "module": "src/utils/logger.ts"
1684
+ "name": "FoundationLayoutRegion",
1685
+ "module": "src/main/layout-region.ts"
1668
1686
  }
1669
1687
  }
1670
1688
  ]
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
  }