@genesislcap/foundation-layout 14.69.3 → 14.69.5

Sign up to get free protection for your applications and to get access to all the features.
@@ -113,47 +113,125 @@
113
113
  },
114
114
  {
115
115
  "kind": "javascript-module",
116
- "path": "src/main/index.ts",
117
- "declarations": [],
116
+ "path": "src/styles/constants.ts",
117
+ "declarations": [
118
+ {
119
+ "kind": "variable",
120
+ "name": "glVisualConfig",
121
+ "type": {
122
+ "text": "Omit<LayoutConfig, 'root'>"
123
+ },
124
+ "default": "{\n dimensions: {\n headerHeight: 38,\n borderWidth: 12,\n },\n header: {\n maximise: 'maximise',\n minimise: 'minimise',\n popout: false,\n },\n}"
125
+ },
126
+ {
127
+ "kind": "variable",
128
+ "name": "maximisSVG",
129
+ "type": {
130
+ "text": "string"
131
+ },
132
+ "default": "'data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0NDggNTEyIj48IS0tISBGb250IEF3ZXNvbWUgUHJvIDYuMi4wIGJ5IEBmb250YXdlc29tZSAtIGh0dHBzOi8vZm9udGF3ZXNvbWUuY29tIExpY2Vuc2UgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbS9saWNlbnNlIChDb21tZXJjaWFsIExpY2Vuc2UpIENvcHlyaWdodCAyMDIyIEZvbnRpY29ucywgSW5jLiAtLT48cGF0aCBkPSJNMTQ0IDMyaC0xMjhDNy4xNTYgMzIgMCAzOS4xNiAwIDQ4djEyOEMwIDE4NC44IDcuMTU2IDE5MiAxNiAxOTJTMzIgMTg0LjggMzIgMTc2VjY0aDExMkMxNTIuOCA2NCAxNjAgNTYuODQgMTYwIDQ4UzE1Mi44IDMyIDE0NCAzMnpNMTQ0IDQ0OEgzMnYtMTEyQzMyIDMyNy4yIDI0Ljg0IDMyMCAxNiAzMjBTMCAzMjcuMiAwIDMzNnYxMjhDMCA0NzIuOCA3LjE1NiA0ODAgMTYgNDgwaDEyOEMxNTIuOCA0ODAgMTYwIDQ3Mi44IDE2MCA0NjRTMTUyLjggNDQ4IDE0NCA0NDh6TTQzMiAzMjBjLTguODQ0IDAtMTYgNy4xNTYtMTYgMTZWNDQ4aC0xMTJjLTguODQ0IDAtMTYgNy4xNTYtMTYgMTZzNy4xNTYgMTYgMTYgMTZoMTI4YzguODQ0IDAgMTYtNy4xNTYgMTYtMTZ2LTEyOEM0NDggMzI3LjIgNDQwLjggMzIwIDQzMiAzMjB6TTQzMiAzMmgtMTI4QzI5NS4yIDMyIDI4OCAzOS4xNiAyODggNDhTMjk1LjIgNjQgMzA0IDY0SDQxNnYxMTJDNDE2IDE4NC44IDQyMy4yIDE5MiA0MzIgMTkyUzQ0OCAxODQuOCA0NDggMTc2di0xMjhDNDQ4IDM5LjE2IDQ0MC44IDMyIDQzMiAzMnoiIGZpbGw9IiM4NzliYTYiLz48L3N2Zz4='"
133
+ },
134
+ {
135
+ "kind": "variable",
136
+ "name": "minimiseSVG",
137
+ "type": {
138
+ "text": "string"
139
+ },
140
+ "default": "'data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1MTIgNTEyIj48IS0tISBGb250IEF3ZXNvbWUgUHJvIDYuMi4wIGJ5IEBmb250YXdlc29tZSAtIGh0dHBzOi8vZm9udGF3ZXNvbWUuY29tIExpY2Vuc2UgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbS9saWNlbnNlIChDb21tZXJjaWFsIExpY2Vuc2UpIENvcHlyaWdodCAyMDIyIEZvbnRpY29ucywgSW5jLiAtLT48cGF0aCBkPSJNMCA0NjRDMCA0NTUuMiA3LjE2NCA0NDggMTYgNDQ4SDQ5NkM1MDQuOCA0NDggNTEyIDQ1NS4yIDUxMiA0NjRDNTEyIDQ3Mi44IDUwNC44IDQ4MCA0OTYgNDgwSDE2QzcuMTY0IDQ4MCAwIDQ3Mi44IDAgNDY0eiIgZmlsbD0iIzg3OWJhNiIvPjwvc3ZnPg=='"
141
+ },
142
+ {
143
+ "kind": "variable",
144
+ "name": "closeSVG",
145
+ "type": {
146
+ "text": "string"
147
+ },
148
+ "default": "'data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzMjAgNTEyIj48IS0tISBGb250IEF3ZXNvbWUgUHJvIDYuMi4wIGJ5IEBmb250YXdlc29tZSAtIGh0dHBzOi8vZm9udGF3ZXNvbWUuY29tIExpY2Vuc2UgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbS9saWNlbnNlIChDb21tZXJjaWFsIExpY2Vuc2UpIENvcHlyaWdodCAyMDIyIEZvbnRpY29ucywgSW5jLiAtLT48cGF0aCBkPSJNMzE1LjMgNDExLjNjLTYuMjUzIDYuMjUzLTE2LjM3IDYuMjUzLTIyLjYzIDBMMTYwIDI3OC42bC0xMzIuNyAxMzIuN2MtNi4yNTMgNi4yNTMtMTYuMzcgNi4yNTMtMjIuNjMgMGMtNi4yNTMtNi4yNTMtNi4yNTMtMTYuMzcgMC0yMi42M0wxMzcuNCAyNTZMNC42OSAxMjMuM2MtNi4yNTMtNi4yNTMtNi4yNTMtMTYuMzcgMC0yMi42M2M2LjI1My02LjI1MyAxNi4zNy02LjI1MyAyMi42MyAwTDE2MCAyMzMuNGwxMzIuNy0xMzIuN2M2LjI1My02LjI1MyAxNi4zNy02LjI1MyAyMi42MyAwYzYuMjUzIDYuMjUzIDYuMjUzIDE2LjM3IDAgMjIuNjNMMTgyLjYgMjU2bDEzMi43IDEzMi43QzMyMS42IDM5NC45IDMyMS42IDQwNS4xIDMxNS4zIDQxMS4zeiIgZmlsbD0iIzg3OWJhNiIvPjwvc3ZnPg=='"
149
+ },
150
+ {
151
+ "kind": "variable",
152
+ "name": "tabDropdownSVG",
153
+ "type": {
154
+ "text": "string"
155
+ },
156
+ "default": "'data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0NDggNTEyIj48IS0tISBGb250IEF3ZXNvbWUgUHJvIDYuMi4wIGJ5IEBmb250YXdlc29tZSAtIGh0dHBzOi8vZm9udGF3ZXNvbWUuY29tIExpY2Vuc2UgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbS9saWNlbnNlIChDb21tZXJjaWFsIExpY2Vuc2UpIENvcHlyaWdodCAyMDIyIEZvbnRpY29ucywgSW5jLiAtLT48cGF0aCBkPSJNNC4yNTEgMTgxLjFDNy4zOTIgMTc3LjcgMTEuNjkgMTc1LjEgMTYgMTc1LjFjMy44OTEgMCA3Ljc4MSAxLjQwNiAxMC44NiA0LjI1bDE5Ny4xIDE4MS4xbDE5Ny4xLTE4MS4xYzYuNS02IDE2LjY0LTUuNjI1IDIyLjYxIC45MDYyYzYgNi41IDUuNTk0IDE2LjU5LS44OTA2IDIyLjU5bC0yMDggMTkyYy02LjE1NiA1LjY4OC0xNS41NiA1LjY4OC0yMS43MiAwbC0yMDgtMTkyQy0xLjM0MyAxOTcuNy0xLjc0OSAxODcuNiA0LjI1MSAxODEuMXoiIGZpbGw9IiM4NzliYTYiLz48L3N2Zz4='"
157
+ }
158
+ ],
118
159
  "exports": [
119
160
  {
120
161
  "kind": "js",
121
- "name": "FoundationLayoutItem",
162
+ "name": "glVisualConfig",
122
163
  "declaration": {
123
- "name": "FoundationLayoutItem",
124
- "module": "./layout-item"
164
+ "name": "glVisualConfig",
165
+ "module": "src/styles/constants.ts"
125
166
  }
126
167
  },
127
168
  {
128
169
  "kind": "js",
129
- "name": "FoundationLayoutRegion",
170
+ "name": "maximisSVG",
130
171
  "declaration": {
131
- "name": "FoundationLayoutRegion",
132
- "module": "./layout-region"
172
+ "name": "maximisSVG",
173
+ "module": "src/styles/constants.ts"
133
174
  }
134
175
  },
135
176
  {
136
177
  "kind": "js",
137
- "name": "FoundationLayout",
178
+ "name": "minimiseSVG",
138
179
  "declaration": {
139
- "name": "FoundationLayout",
140
- "module": "./layout-main"
180
+ "name": "minimiseSVG",
181
+ "module": "src/styles/constants.ts"
141
182
  }
142
183
  },
143
184
  {
144
185
  "kind": "js",
145
- "name": "layoutStyles",
186
+ "name": "closeSVG",
146
187
  "declaration": {
147
- "name": "layoutStyles",
148
- "module": "./layout-main"
188
+ "name": "closeSVG",
189
+ "module": "src/styles/constants.ts"
149
190
  }
150
191
  },
151
192
  {
152
193
  "kind": "js",
153
- "name": "layoutTemplate",
194
+ "name": "tabDropdownSVG",
154
195
  "declaration": {
155
- "name": "layoutTemplate",
156
- "module": "./layout-main"
196
+ "name": "tabDropdownSVG",
197
+ "module": "src/styles/constants.ts"
198
+ }
199
+ }
200
+ ]
201
+ },
202
+ {
203
+ "kind": "javascript-module",
204
+ "path": "src/styles/dragging.styles.ts",
205
+ "declarations": [
206
+ {
207
+ "kind": "variable",
208
+ "name": "globalDraggingStyles",
209
+ "default": "`\n .lm_dragProxy .lm_content {\n box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.9);\n }\n .lm_dropTargetIndicator {\n box-shadow: inset 0 0 30px #000000;\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 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 }\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`",
210
+ "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"
211
+ }
212
+ ],
213
+ "exports": [
214
+ {
215
+ "kind": "js",
216
+ "name": "globalDraggingStyles",
217
+ "declaration": {
218
+ "name": "globalDraggingStyles",
219
+ "module": "src/styles/dragging.styles.ts"
220
+ }
221
+ }
222
+ ]
223
+ },
224
+ {
225
+ "kind": "javascript-module",
226
+ "path": "src/styles/index.ts",
227
+ "declarations": [],
228
+ "exports": [
229
+ {
230
+ "kind": "js",
231
+ "name": "*",
232
+ "declaration": {
233
+ "name": "*",
234
+ "package": "./constants"
157
235
  }
158
236
  },
159
237
  {
@@ -161,606 +239,298 @@
161
239
  "name": "*",
162
240
  "declaration": {
163
241
  "name": "*",
164
- "package": "./layout-components"
242
+ "package": "./dragging.styles"
243
+ }
244
+ },
245
+ {
246
+ "kind": "js",
247
+ "name": "*",
248
+ "declaration": {
249
+ "name": "*",
250
+ "package": "./layout.styles"
165
251
  }
166
252
  }
167
253
  ]
168
254
  },
169
255
  {
170
256
  "kind": "javascript-module",
171
- "path": "src/main/layout-components.ts",
257
+ "path": "src/styles/layout.styles.ts",
172
258
  "declarations": [
173
259
  {
174
260
  "kind": "variable",
175
- "name": "foundationLayoutComponents",
176
- "type": {
177
- "text": "object"
178
- },
179
- "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}",
180
- "description": "Registration object to register the layout with your design system.",
261
+ "name": "layoutStyles",
262
+ "default": "css`\n ${containerStyles}\n ${loadingSpinnerStyles}\n\n .lm_goldenlayout {\n padding: 1px;\n background: ${neutralLayer1};\n border-radius: calc(${controlCornerRadius} * 1.5px);\n }\n\n .lm_stack.lm_item {\n background-color: ${neutralLayer4};\n border-radius: calc(${controlCornerRadius} * 1.5px);\n }\n .lm_maximised .lm_header {\n background-color: ${neutralLayer4};\n border-radius: calc(${controlCornerRadius} * 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: ${neutralLayer3};\n border-radius: calc(${controlCornerRadius} * 1.5px);\n border: 1px solid;\n border-color: #2e3339;\n box-sizing: border-box;\n }\n\n .lm-header {\n z-index: 1;\n }\n .lm_header .lm_tabs {\n padding: 0 16px;\n }\n\n .lm_stack > .lm_items {\n z-index: 2;\n box-shadow: 0px -1px 15px rgba(0, 0, 0, 0.35);\n }\n\n .lm_header .lm_tab.lm_active.lm_focused {\n background-color: ${neutralLayer3};\n }\n .lm_header .lm_tab.lm_active {\n background-color: ${neutralLayer3};\n border: 1px solid;\n border-color: #2e3339;\n border-bottom: 0;\n color: ${accentFillRest};\n }\n\n .lm_header .lm_tab {\n align-items: center;\n background-color: ${neutralLayer4};\n border: 1px solid;\n border-bottom-color: #2e3339;\n border-bottom: 0px solid;\n border-color: rgba(0, 0, 0, 0.35);\n border-radius: calc(${controlCornerRadius} * 1.5px) calc(${controlCornerRadius} * 1.5px) 0 0;\n box-shadow: 1px -1px 2px rgba(0, 0, 0, 0.35);\n color: rgba(255, 255, 255, 0.3);\n display: flex;\n font-family: inherit;\n font-size: 13px;\n font-weight: 700;\n height: 30px;\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: rgba(255, 255, 255, 0.1);\n color: #f1f1f1;\n }\n\n .lm_header .lm_controls {\n top: 4px;\n display: flex;\n }\n .lm_header .lm_controls > * {\n width: 30px;\n height: 30px;\n background-repeat: no-repeat;\n background-position: center;\n background-size: 16px;\n background-color: rgba(255, 255, 255, 0.03);\n border-radius: calc(${controlCornerRadius} * 1.5px);\n margin-right: 4px;\n top: 3px;\n opacity: 1;\n }\n .lm_header .lm_controls > *:hover {\n background-color: rgba(255, 255, 255, 0.1);\n cursor: pointer;\n }\n\n .lm_controls .lm_maximise {\n background-image: url('${maximisSVG}');\n }\n .lm_maximised .lm_controls .lm_maximise {\n background-image: url('${minimiseSVG}');\n }\n .lm_controls .lm_close {\n background-image: url('${closeSVG}');\n }\n .lm_header .lm_tab .lm_close_tab {\n background-image: url('${closeSVG}');\n background-size: 10px;\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: ${accentFillRest};\n opacity: 0.7;\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('${tabDropdownSVG}');\n }\n .lm_header .lm_tabdropdown_list {\n top: 38px;\n right: 108px;\n background-color: ${neutralLayer3};\n border: 1px solid;\n border-color: #2e3339;\n border-radius: calc(${controlCornerRadius} * 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: #c9c9c9;\n height: 36px;\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: ${accentFillRest};\n border-radius: calc(${controlCornerRadius} * 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;\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;\n }\n .lm_header {\n overflow: visible;\n position: relative;\n z-index: 1;\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 }\n .lm_header .lm_tab .lm_title:only-child {\n padding-left: 10px;\n }\n .lm_header .lm_tab .lm_close_tab {\n width: 14px;\n height: 14px;\n position: absolute;\n top: 11px;\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 {\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 }\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`",
263
+ "description": "`ElementStyles` which defines the css for FoundationLayout.",
181
264
  "privacy": "public"
182
265
  }
183
266
  ],
184
267
  "exports": [
185
268
  {
186
269
  "kind": "js",
187
- "name": "foundationLayoutComponents",
270
+ "name": "layoutStyles",
188
271
  "declaration": {
189
- "name": "foundationLayoutComponents",
190
- "module": "src/main/layout-components.ts"
272
+ "name": "layoutStyles",
273
+ "module": "src/styles/layout.styles.ts"
191
274
  }
192
275
  }
193
276
  ]
194
277
  },
195
278
  {
196
279
  "kind": "javascript-module",
197
- "path": "src/main/layout-item.ts",
280
+ "path": "src/utils/constants.ts",
198
281
  "declarations": [
199
282
  {
200
- "kind": "class",
201
- "description": "",
202
- "name": "FoundationLayoutItem",
203
- "members": [
204
- {
205
- "kind": "field",
206
- "name": "title",
207
- "type": {
208
- "text": "string"
209
- },
210
- "description": "Sets the title of the item which is displayed on the tab.",
211
- "privacy": "public"
212
- },
213
- {
214
- "kind": "field",
215
- "name": "closable",
216
- "type": {
217
- "text": "boolean"
218
- },
219
- "default": "false",
220
- "description": "Boolean attribute controls whether the window can be closed in the GUI.\nDefaults to `false`.",
221
- "privacy": "public"
222
- },
223
- {
224
- "kind": "field",
225
- "name": "size",
226
- "type": {
227
- "text": "string"
228
- },
229
- "description": "optional string describing the size of the new item (see the written documentation for more info)",
230
- "privacy": "public"
231
- },
232
- {
233
- "kind": "field",
234
- "name": "registration",
235
- "type": {
236
- "text": "string"
237
- },
238
- "description": "Sets the registration name for the item, which can be used later to add the item via the JavaScript API using FoundationLayout.addItem.",
239
- "privacy": "public"
240
- }
241
- ],
242
- "attributes": [
243
- {
244
- "name": "title",
245
- "type": {
246
- "text": "string"
247
- },
248
- "description": "Sets the title of the item which is displayed on the tab.",
249
- "fieldName": "title"
250
- },
251
- {
252
- "type": {
253
- "text": "boolean"
254
- },
255
- "default": "false",
256
- "description": "Boolean attribute controls whether the window can be closed in the GUI.\nDefaults to `false`.",
257
- "fieldName": "closable"
258
- },
259
- {
260
- "name": "size",
261
- "type": {
262
- "text": "string"
263
- },
264
- "description": "optional string describing the size of the new item (see the written documentation for more info)",
265
- "fieldName": "size"
266
- },
267
- {
268
- "name": "registration",
269
- "type": {
270
- "text": "string"
271
- },
272
- "description": "Sets the registration name for the item, which can be used later to add the item via the JavaScript API using FoundationLayout.addItem.",
273
- "fieldName": "registration"
274
- }
275
- ],
276
- "superclass": {
277
- "name": "FoundationElement",
278
- "package": "@microsoft/fast-foundation"
283
+ "kind": "variable",
284
+ "name": "DEFAULT_RELOAD_BUFFER",
285
+ "type": {
286
+ "text": "number"
279
287
  },
280
- "tagName": "%%prefix%%-layout-item",
281
- "customElement": true
288
+ "default": "500",
289
+ "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.",
290
+ "privacy": "public"
282
291
  }
283
292
  ],
284
293
  "exports": [
285
294
  {
286
295
  "kind": "js",
287
- "name": "FoundationLayoutItem",
296
+ "name": "DEFAULT_RELOAD_BUFFER",
288
297
  "declaration": {
289
- "name": "FoundationLayoutItem",
290
- "module": "src/main/layout-item.ts"
298
+ "name": "DEFAULT_RELOAD_BUFFER",
299
+ "module": "src/utils/constants.ts"
291
300
  }
292
301
  }
293
302
  ]
294
303
  },
295
304
  {
296
305
  "kind": "javascript-module",
297
- "path": "src/main/layout-main.ts",
306
+ "path": "src/utils/error.ts",
298
307
  "declarations": [
299
308
  {
300
309
  "kind": "class",
301
310
  "description": "",
302
- "name": "FoundationLayout",
303
- "members": [
304
- {
305
- "kind": "field",
306
- "name": "layout",
307
- "type": {
308
- "text": "GoldenLayout"
309
- },
310
- "privacy": "private"
311
- },
312
- {
313
- "kind": "field",
314
- "name": "layoutConfig",
315
- "type": {
316
- "text": "LayoutConfig"
317
- },
318
- "privacy": "private",
319
- "default": "{ root: undefined }"
320
- },
321
- {
322
- "kind": "field",
323
- "name": "reloadBuffer",
324
- "type": {
325
- "text": "number"
326
- },
327
- "default": "DEFAULT_RELOAD_BUFFER",
328
- "description": "Number describing how long to wait in ms before reloading the config when adding items\ndeclaratively by the html API. Default 500 (ms).",
329
- "privacy": "public"
330
- },
331
- {
332
- "kind": "field",
333
- "name": "reloadPending",
334
- "type": {
335
- "text": "boolean"
336
- },
337
- "privacy": "private",
338
- "default": "false"
339
- },
340
- {
341
- "kind": "field",
342
- "name": "registeredComponents",
343
- "type": {
344
- "text": "number"
345
- },
346
- "privacy": "private",
347
- "default": "0"
348
- },
349
- {
350
- "kind": "field",
351
- "name": "autoSaveKey",
352
- "type": {
353
- "text": "string | undefined"
354
- },
355
- "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`.",
356
- "privacy": "public"
357
- },
358
- {
359
- "kind": "field",
360
- "name": "missingItemPlaceholder",
361
- "description": "Function which is used to generate the placeholder text when a layout is loaded\nwith a missing item.",
362
- "privacy": "public"
363
- },
364
- {
365
- "kind": "field",
366
- "name": "hasFirstLoaded",
367
- "type": {
368
- "text": "boolean"
369
- },
370
- "default": "false",
371
- "description": "Boolean signifies whether the layout has loaded for the first time or not.",
372
- "privacy": "public"
373
- },
374
- {
375
- "kind": "field",
376
- "name": "dragging",
377
- "type": {
378
- "text": "boolean"
379
- },
380
- "default": "false",
381
- "privacy": "public"
382
- },
383
- {
384
- "kind": "method",
385
- "name": "layoutRequiredRegistrations",
386
- "static": true,
387
- "return": {
388
- "type": {
389
- "text": ""
390
- }
391
- },
392
- "parameters": [
393
- {
394
- "name": "layout",
395
- "type": {
396
- "text": "SerialisedLayout"
397
- },
398
- "description": "any version of {@link SerialisedLayout}object describing the layout\n * "
399
- }
400
- ],
401
- "description": "JS API, public",
402
- "privacy": "public"
403
- },
404
- {
405
- "kind": "method",
406
- "name": "registeredItems",
407
- "return": {
408
- "type": {
409
- "text": ""
410
- }
411
- },
412
- "privacy": "public"
413
- },
414
- {
415
- "kind": "method",
416
- "name": "getLayout",
417
- "return": {
418
- "type": {
419
- "text": ""
420
- }
421
- },
422
- "privacy": "public"
423
- },
424
- {
425
- "kind": "method",
426
- "name": "tryLoadLayoutFromLocalStorage",
427
- "return": {
428
- "type": {
429
- "text": ""
430
- }
431
- },
432
- "description": "Try to load a layout from local storage, or return false. Only required if manually calling FoundationLayout.registerItem",
433
- "privacy": "public"
434
- },
435
- {
436
- "kind": "method",
437
- "name": "loadLayout",
438
- "parameters": [
439
- {
440
- "name": "layout",
441
- "type": {
442
- "text": "SerialisedLayout"
443
- },
444
- "description": "any version of {@link SerialisedLayout}object describing the layout\n * "
445
- },
446
- {
447
- "name": "handleMissingItem",
448
- "default": "'error'",
449
- "type": {
450
- "text": "'placeholder' | 'error'"
451
- },
452
- "description": "what to do if the layout contains items that are not currently registered with the layout system. Defaults to 'error' which will throw an error. If set to 'placeholder' then any missing items will be replaced with a placeholder element. You can control the text of the placeholder element with {@link FoundationLayout.missingItemPlaceholder}.\n * "
453
- }
454
- ],
455
- "privacy": "public"
456
- },
457
- {
458
- "kind": "method",
459
- "name": "addItem",
460
- "parameters": [
461
- {
462
- "name": "config",
463
- "type": {
464
- "text": "RegisteredElementConfig | RegisteredElementConfig[]"
465
- },
466
- "description": "{@link RegisteredElementConfig}configuration items for the new items(s). Pass an array of {@link RegisteredElementConfig}to add multiple items at once.\n * "
467
- },
468
- {
469
- "name": "placement",
470
- "default": "defaultAddItemPlacement",
471
- "type": {
472
- "text": "Placement"
473
- },
474
- "description": "where and how to add the new items to the layout. For more info and defaults see {@link Placement}.\n * "
475
- }
476
- ],
477
- "privacy": "public"
478
- },
479
- {
480
- "kind": "method",
481
- "name": "registerItem",
482
- "return": {
483
- "type": {
484
- "text": ""
485
- }
486
- },
487
- "parameters": [
488
- {
489
- "name": "registration",
490
- "type": {
491
- "text": "string"
492
- },
493
- "description": "string of the registration ID"
494
- },
495
- {
496
- "name": "elements",
497
- "type": {
498
- "text": "Element[]"
499
- },
500
- "description": "Elements[] containing the reference to the elements to register for later usage"
501
- }
502
- ],
503
- "privacy": "public"
504
- }
505
- ],
506
- "attributes": [
507
- {
508
- "name": "reload-buffer",
509
- "type": {
510
- "text": "number"
511
- },
512
- "default": "DEFAULT_RELOAD_BUFFER",
513
- "description": "Number describing how long to wait in ms before reloading the config when adding items\ndeclaratively by the html API. Default 500 (ms).",
514
- "resolveInitializer": {
515
- "module": "/src/utils/"
516
- },
517
- "fieldName": "reloadBuffer"
518
- },
519
- {
520
- "name": "auto-save-key",
521
- "type": {
522
- "text": "string | undefined"
523
- },
524
- "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`.",
525
- "fieldName": "autoSaveKey"
526
- }
527
- ],
311
+ "name": "LayoutUsageError",
528
312
  "superclass": {
529
- "name": "FoundationElement",
530
- "package": "@microsoft/fast-foundation"
531
- },
532
- "tagName": "%%prefix%%-layout",
533
- "customElement": true
313
+ "name": "Error",
314
+ "module": "src/utils/error.ts"
315
+ }
534
316
  },
535
317
  {
536
- "kind": "variable",
537
- "name": "layoutTemplate",
538
- "default": "html<FoundationLayout>`\n <template>\n ${when((x) => !x.hasFirstLoaded && x.usingDeclerativeAPI, loadingTemplate)}\n <div class=\"layout-container\" ${ref('layoutElement')}></div>\n </template>\n`",
539
- "description": "`ViewTemplate` which defines the html for FoundationLayout.",
540
- "privacy": "public"
318
+ "kind": "class",
319
+ "description": "",
320
+ "name": "LayoutRegistrationError",
321
+ "superclass": {
322
+ "name": "Error",
323
+ "module": "src/utils/error.ts"
324
+ }
541
325
  }
542
326
  ],
543
327
  "exports": [
544
328
  {
545
329
  "kind": "js",
546
- "name": "layoutStyles",
547
- "declaration": {
548
- "name": "layoutStyles",
549
- "module": "../styles"
550
- }
551
- },
552
- {
553
- "kind": "js",
554
- "name": "FoundationLayout",
330
+ "name": "LayoutUsageError",
555
331
  "declaration": {
556
- "name": "FoundationLayout",
557
- "module": "src/main/layout-main.ts"
332
+ "name": "LayoutUsageError",
333
+ "module": "src/utils/error.ts"
558
334
  }
559
335
  },
560
336
  {
561
337
  "kind": "js",
562
- "name": "layoutTemplate",
338
+ "name": "LayoutRegistrationError",
563
339
  "declaration": {
564
- "name": "layoutTemplate",
565
- "module": "src/main/layout-main.ts"
340
+ "name": "LayoutRegistrationError",
341
+ "module": "src/utils/error.ts"
566
342
  }
567
343
  }
568
344
  ]
569
345
  },
570
346
  {
571
347
  "kind": "javascript-module",
572
- "path": "src/main/layout-region.ts",
348
+ "path": "src/utils/events.ts",
573
349
  "declarations": [
574
350
  {
575
- "kind": "class",
576
- "description": "",
577
- "name": "FoundationLayoutRegion",
578
- "members": [
579
- {
580
- "kind": "field",
581
- "name": "size",
582
- "type": {
583
- "text": "string"
584
- },
585
- "description": "optional string describing the size of the new item (see the written documentation for more info)",
586
- "privacy": "public"
587
- },
588
- {
589
- "kind": "field",
590
- "name": "type",
591
- "type": {
592
- "text": "LayoutRegionType"
593
- },
594
- "description": "Defines the LayoutRegionType| type of the region.\nDefaults to `horizontal`.",
595
- "privacy": "public"
596
- }
597
- ],
598
- "attributes": [
599
- {
600
- "name": "size",
601
- "type": {
602
- "text": "string"
603
- },
604
- "description": "optional string describing the size of the new item (see the written documentation for more info)",
605
- "fieldName": "size"
606
- },
607
- {
608
- "name": "type",
609
- "type": {
610
- "text": "LayoutRegionType"
611
- },
612
- "description": "Defines the LayoutRegionType| type of the region.\nDefaults to `horizontal`.",
613
- "fieldName": "type"
614
- }
615
- ],
616
- "superclass": {
617
- "name": "FoundationElement",
618
- "package": "@microsoft/fast-foundation"
351
+ "kind": "variable",
352
+ "name": "LayoutEmitEvents",
353
+ "type": {
354
+ "text": "{\n firstLoaded: 'first-loaded',\n itemAdded: 'item-added',\n itemRemoved: 'item-removed',\n itemResized: 'item-resized',\n}"
619
355
  },
620
- "tagName": "%%prefix%%-layout-region",
621
- "customElement": true
356
+ "default": "{\n firstLoaded: 'first-loaded',\n itemAdded: 'item-added',\n itemRemoved: 'item-removed',\n itemResized: 'item-resized',\n}",
357
+ "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",
358
+ "privacy": "public"
359
+ },
360
+ {
361
+ "kind": "variable",
362
+ "name": "LayoutReceiveEvents",
363
+ "type": {
364
+ "text": "{\n changeTitle: 'change-title',\n}"
365
+ },
366
+ "default": "{\n changeTitle: 'change-title',\n}",
367
+ "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.",
368
+ "privacy": "public"
622
369
  }
623
370
  ],
624
371
  "exports": [
625
372
  {
626
373
  "kind": "js",
627
- "name": "FoundationLayoutRegion",
374
+ "name": "LayoutEmitEvents",
628
375
  "declaration": {
629
- "name": "FoundationLayoutRegion",
630
- "module": "src/main/layout-region.ts"
376
+ "name": "LayoutEmitEvents",
377
+ "module": "src/utils/events.ts"
378
+ }
379
+ },
380
+ {
381
+ "kind": "js",
382
+ "name": "LayoutReceiveEvents",
383
+ "declaration": {
384
+ "name": "LayoutReceiveEvents",
385
+ "module": "src/utils/events.ts"
631
386
  }
632
387
  }
633
388
  ]
634
389
  },
635
390
  {
636
391
  "kind": "javascript-module",
637
- "path": "src/styles/constants.ts",
638
- "declarations": [
639
- {
640
- "kind": "variable",
641
- "name": "glVisualConfig",
642
- "type": {
643
- "text": "Omit<LayoutConfig, 'root'>"
644
- },
645
- "default": "{\n dimensions: {\n headerHeight: 38,\n borderWidth: 12,\n },\n header: {\n maximise: 'maximise',\n minimise: 'minimise',\n popout: false,\n },\n}"
646
- },
647
- {
648
- "kind": "variable",
649
- "name": "maximisSVG",
650
- "type": {
651
- "text": "string"
652
- },
653
- "default": "'data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0NDggNTEyIj48IS0tISBGb250IEF3ZXNvbWUgUHJvIDYuMi4wIGJ5IEBmb250YXdlc29tZSAtIGh0dHBzOi8vZm9udGF3ZXNvbWUuY29tIExpY2Vuc2UgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbS9saWNlbnNlIChDb21tZXJjaWFsIExpY2Vuc2UpIENvcHlyaWdodCAyMDIyIEZvbnRpY29ucywgSW5jLiAtLT48cGF0aCBkPSJNMTQ0IDMyaC0xMjhDNy4xNTYgMzIgMCAzOS4xNiAwIDQ4djEyOEMwIDE4NC44IDcuMTU2IDE5MiAxNiAxOTJTMzIgMTg0LjggMzIgMTc2VjY0aDExMkMxNTIuOCA2NCAxNjAgNTYuODQgMTYwIDQ4UzE1Mi44IDMyIDE0NCAzMnpNMTQ0IDQ0OEgzMnYtMTEyQzMyIDMyNy4yIDI0Ljg0IDMyMCAxNiAzMjBTMCAzMjcuMiAwIDMzNnYxMjhDMCA0NzIuOCA3LjE1NiA0ODAgMTYgNDgwaDEyOEMxNTIuOCA0ODAgMTYwIDQ3Mi44IDE2MCA0NjRTMTUyLjggNDQ4IDE0NCA0NDh6TTQzMiAzMjBjLTguODQ0IDAtMTYgNy4xNTYtMTYgMTZWNDQ4aC0xMTJjLTguODQ0IDAtMTYgNy4xNTYtMTYgMTZzNy4xNTYgMTYgMTYgMTZoMTI4YzguODQ0IDAgMTYtNy4xNTYgMTYtMTZ2LTEyOEM0NDggMzI3LjIgNDQwLjggMzIwIDQzMiAzMjB6TTQzMiAzMmgtMTI4QzI5NS4yIDMyIDI4OCAzOS4xNiAyODggNDhTMjk1LjIgNjQgMzA0IDY0SDQxNnYxMTJDNDE2IDE4NC44IDQyMy4yIDE5MiA0MzIgMTkyUzQ0OCAxODQuOCA0NDggMTc2di0xMjhDNDQ4IDM5LjE2IDQ0MC44IDMyIDQzMiAzMnoiIGZpbGw9IiM4NzliYTYiLz48L3N2Zz4='"
654
- },
392
+ "path": "src/utils/index.ts",
393
+ "declarations": [],
394
+ "exports": [
655
395
  {
656
- "kind": "variable",
657
- "name": "minimiseSVG",
658
- "type": {
659
- "text": "string"
660
- },
661
- "default": "'data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1MTIgNTEyIj48IS0tISBGb250IEF3ZXNvbWUgUHJvIDYuMi4wIGJ5IEBmb250YXdlc29tZSAtIGh0dHBzOi8vZm9udGF3ZXNvbWUuY29tIExpY2Vuc2UgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbS9saWNlbnNlIChDb21tZXJjaWFsIExpY2Vuc2UpIENvcHlyaWdodCAyMDIyIEZvbnRpY29ucywgSW5jLiAtLT48cGF0aCBkPSJNMCA0NjRDMCA0NTUuMiA3LjE2NCA0NDggMTYgNDQ4SDQ5NkM1MDQuOCA0NDggNTEyIDQ1NS4yIDUxMiA0NjRDNTEyIDQ3Mi44IDUwNC44IDQ4MCA0OTYgNDgwSDE2QzcuMTY0IDQ4MCAwIDQ3Mi44IDAgNDY0eiIgZmlsbD0iIzg3OWJhNiIvPjwvc3ZnPg=='"
396
+ "kind": "js",
397
+ "name": "*",
398
+ "declaration": {
399
+ "name": "*",
400
+ "package": "./constants"
401
+ }
662
402
  },
663
403
  {
664
- "kind": "variable",
665
- "name": "closeSVG",
666
- "type": {
667
- "text": "string"
668
- },
669
- "default": "'data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzMjAgNTEyIj48IS0tISBGb250IEF3ZXNvbWUgUHJvIDYuMi4wIGJ5IEBmb250YXdlc29tZSAtIGh0dHBzOi8vZm9udGF3ZXNvbWUuY29tIExpY2Vuc2UgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbS9saWNlbnNlIChDb21tZXJjaWFsIExpY2Vuc2UpIENvcHlyaWdodCAyMDIyIEZvbnRpY29ucywgSW5jLiAtLT48cGF0aCBkPSJNMzE1LjMgNDExLjNjLTYuMjUzIDYuMjUzLTE2LjM3IDYuMjUzLTIyLjYzIDBMMTYwIDI3OC42bC0xMzIuNyAxMzIuN2MtNi4yNTMgNi4yNTMtMTYuMzcgNi4yNTMtMjIuNjMgMGMtNi4yNTMtNi4yNTMtNi4yNTMtMTYuMzcgMC0yMi42M0wxMzcuNCAyNTZMNC42OSAxMjMuM2MtNi4yNTMtNi4yNTMtNi4yNTMtMTYuMzcgMC0yMi42M2M2LjI1My02LjI1MyAxNi4zNy02LjI1MyAyMi42MyAwTDE2MCAyMzMuNGwxMzIuNy0xMzIuN2M2LjI1My02LjI1MyAxNi4zNy02LjI1MyAyMi42MyAwYzYuMjUzIDYuMjUzIDYuMjUzIDE2LjM3IDAgMjIuNjNMMTgyLjYgMjU2bDEzMi43IDEzMi43QzMyMS42IDM5NC45IDMyMS42IDQwNS4xIDMxNS4zIDQxMS4zeiIgZmlsbD0iIzg3OWJhNiIvPjwvc3ZnPg=='"
404
+ "kind": "js",
405
+ "name": "*",
406
+ "declaration": {
407
+ "name": "*",
408
+ "package": "./error"
409
+ }
670
410
  },
671
- {
672
- "kind": "variable",
673
- "name": "tabDropdownSVG",
674
- "type": {
675
- "text": "string"
676
- },
677
- "default": "'data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0NDggNTEyIj48IS0tISBGb250IEF3ZXNvbWUgUHJvIDYuMi4wIGJ5IEBmb250YXdlc29tZSAtIGh0dHBzOi8vZm9udGF3ZXNvbWUuY29tIExpY2Vuc2UgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbS9saWNlbnNlIChDb21tZXJjaWFsIExpY2Vuc2UpIENvcHlyaWdodCAyMDIyIEZvbnRpY29ucywgSW5jLiAtLT48cGF0aCBkPSJNNC4yNTEgMTgxLjFDNy4zOTIgMTc3LjcgMTEuNjkgMTc1LjEgMTYgMTc1LjFjMy44OTEgMCA3Ljc4MSAxLjQwNiAxMC44NiA0LjI1bDE5Ny4xIDE4MS4xbDE5Ny4xLTE4MS4xYzYuNS02IDE2LjY0LTUuNjI1IDIyLjYxIC45MDYyYzYgNi41IDUuNTk0IDE2LjU5LS44OTA2IDIyLjU5bC0yMDggMTkyYy02LjE1NiA1LjY4OC0xNS41NiA1LjY4OC0yMS43MiAwbC0yMDgtMTkyQy0xLjM0MyAxOTcuNy0xLjc0OSAxODcuNiA0LjI1MSAxODEuMXoiIGZpbGw9IiM4NzliYTYiLz48L3N2Zz4='"
678
- }
679
- ],
680
- "exports": [
681
411
  {
682
412
  "kind": "js",
683
- "name": "glVisualConfig",
413
+ "name": "*",
684
414
  "declaration": {
685
- "name": "glVisualConfig",
686
- "module": "src/styles/constants.ts"
415
+ "name": "*",
416
+ "package": "./events"
687
417
  }
688
418
  },
689
419
  {
690
420
  "kind": "js",
691
- "name": "maximisSVG",
421
+ "name": "*",
692
422
  "declaration": {
693
- "name": "maximisSVG",
694
- "module": "src/styles/constants.ts"
423
+ "name": "*",
424
+ "package": "./misc"
695
425
  }
696
426
  },
697
427
  {
698
428
  "kind": "js",
699
- "name": "minimiseSVG",
429
+ "name": "*",
700
430
  "declaration": {
701
- "name": "minimiseSVG",
702
- "module": "src/styles/constants.ts"
431
+ "name": "*",
432
+ "package": "./templates"
703
433
  }
704
434
  },
705
435
  {
706
436
  "kind": "js",
707
- "name": "closeSVG",
437
+ "name": "*",
708
438
  "declaration": {
709
- "name": "closeSVG",
710
- "module": "src/styles/constants.ts"
439
+ "name": "*",
440
+ "package": "./types"
711
441
  }
712
442
  },
713
443
  {
714
444
  "kind": "js",
715
- "name": "tabDropdownSVG",
445
+ "name": "*",
716
446
  "declaration": {
717
- "name": "tabDropdownSVG",
718
- "module": "src/styles/constants.ts"
447
+ "name": "*",
448
+ "package": "./error"
719
449
  }
720
450
  }
721
451
  ]
722
452
  },
723
453
  {
724
454
  "kind": "javascript-module",
725
- "path": "src/styles/dragging.styles.ts",
455
+ "path": "src/utils/logger.ts",
726
456
  "declarations": [
727
457
  {
728
458
  "kind": "variable",
729
- "name": "globalDraggingStyles",
730
- "default": "`\n .lm_dragProxy .lm_content {\n box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.9);\n }\n .lm_dropTargetIndicator {\n box-shadow: inset 0 0 30px #000000;\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 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 }\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`",
731
- "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"
459
+ "name": "logger"
732
460
  }
733
461
  ],
734
462
  "exports": [
735
463
  {
736
464
  "kind": "js",
737
- "name": "globalDraggingStyles",
465
+ "name": "logger",
738
466
  "declaration": {
739
- "name": "globalDraggingStyles",
740
- "module": "src/styles/dragging.styles.ts"
467
+ "name": "logger",
468
+ "module": "src/utils/logger.ts"
741
469
  }
742
470
  }
743
471
  ]
744
472
  },
745
473
  {
746
474
  "kind": "javascript-module",
747
- "path": "src/styles/index.ts",
475
+ "path": "src/utils/misc.ts",
476
+ "declarations": [],
477
+ "exports": []
478
+ },
479
+ {
480
+ "kind": "javascript-module",
481
+ "path": "src/utils/templates.ts",
482
+ "declarations": [],
483
+ "exports": []
484
+ },
485
+ {
486
+ "kind": "javascript-module",
487
+ "path": "src/utils/types.ts",
488
+ "declarations": [],
489
+ "exports": []
490
+ },
491
+ {
492
+ "kind": "javascript-module",
493
+ "path": "src/main/index.ts",
748
494
  "declarations": [],
749
495
  "exports": [
750
496
  {
751
497
  "kind": "js",
752
- "name": "*",
498
+ "name": "FoundationLayoutItem",
753
499
  "declaration": {
754
- "name": "*",
755
- "package": "./constants"
500
+ "name": "FoundationLayoutItem",
501
+ "module": "./layout-item"
756
502
  }
757
503
  },
758
504
  {
759
505
  "kind": "js",
760
- "name": "*",
506
+ "name": "FoundationLayoutRegion",
761
507
  "declaration": {
762
- "name": "*",
763
- "package": "./dragging.styles"
508
+ "name": "FoundationLayoutRegion",
509
+ "module": "./layout-region"
510
+ }
511
+ },
512
+ {
513
+ "kind": "js",
514
+ "name": "FoundationLayout",
515
+ "declaration": {
516
+ "name": "FoundationLayout",
517
+ "module": "./layout-main"
518
+ }
519
+ },
520
+ {
521
+ "kind": "js",
522
+ "name": "layoutStyles",
523
+ "declaration": {
524
+ "name": "layoutStyles",
525
+ "module": "./layout-main"
526
+ }
527
+ },
528
+ {
529
+ "kind": "js",
530
+ "name": "layoutTemplate",
531
+ "declaration": {
532
+ "name": "layoutTemplate",
533
+ "module": "./layout-main"
764
534
  }
765
535
  },
766
536
  {
@@ -768,246 +538,476 @@
768
538
  "name": "*",
769
539
  "declaration": {
770
540
  "name": "*",
771
- "package": "./layout.styles"
541
+ "package": "./layout-components"
772
542
  }
773
543
  }
774
544
  ]
775
545
  },
776
546
  {
777
547
  "kind": "javascript-module",
778
- "path": "src/styles/layout.styles.ts",
548
+ "path": "src/main/layout-components.ts",
779
549
  "declarations": [
780
550
  {
781
551
  "kind": "variable",
782
- "name": "layoutStyles",
783
- "default": "css`\n ${containerStyles}\n ${loadingSpinnerStyles}\n\n .lm_goldenlayout {\n padding: 1px;\n background: ${neutralLayer1};\n border-radius: calc(${controlCornerRadius} * 1.5px);\n }\n\n .lm_stack.lm_item {\n background-color: ${neutralLayer4};\n border-radius: calc(${controlCornerRadius} * 1.5px);\n }\n .lm_maximised .lm_header {\n background-color: ${neutralLayer4};\n border-radius: calc(${controlCornerRadius} * 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: ${neutralLayer3};\n border-radius: calc(${controlCornerRadius} * 1.5px);\n border: 1px solid;\n border-color: #2e3339;\n box-sizing: border-box;\n }\n\n .lm-header {\n z-index: 1;\n }\n .lm_header .lm_tabs {\n padding: 0 16px;\n }\n\n .lm_stack > .lm_items {\n z-index: 2;\n box-shadow: 0px -1px 15px rgba(0, 0, 0, 0.35);\n }\n\n .lm_header .lm_tab.lm_active.lm_focused {\n background-color: ${neutralLayer3};\n }\n .lm_header .lm_tab.lm_active {\n background-color: ${neutralLayer3};\n border: 1px solid;\n border-color: #2e3339;\n border-bottom: 0;\n color: ${accentFillRest};\n }\n\n .lm_header .lm_tab {\n align-items: center;\n background-color: ${neutralLayer4};\n border: 1px solid;\n border-bottom-color: #2e3339;\n border-bottom: 0px solid;\n border-color: rgba(0, 0, 0, 0.35);\n border-radius: calc(${controlCornerRadius} * 1.5px) calc(${controlCornerRadius} * 1.5px) 0 0;\n box-shadow: 1px -1px 2px rgba(0, 0, 0, 0.35);\n color: rgba(255, 255, 255, 0.3);\n display: flex;\n font-family: inherit;\n font-size: 13px;\n font-weight: 700;\n height: 30px;\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: rgba(255, 255, 255, 0.1);\n color: #f1f1f1;\n }\n\n .lm_header .lm_controls {\n top: 4px;\n display: flex;\n }\n .lm_header .lm_controls > * {\n width: 30px;\n height: 30px;\n background-repeat: no-repeat;\n background-position: center;\n background-size: 16px;\n background-color: rgba(255, 255, 255, 0.03);\n border-radius: calc(${controlCornerRadius} * 1.5px);\n margin-right: 4px;\n top: 3px;\n opacity: 1;\n }\n .lm_header .lm_controls > *:hover {\n background-color: rgba(255, 255, 255, 0.1);\n cursor: pointer;\n }\n\n .lm_controls .lm_maximise {\n background-image: url('${maximisSVG}');\n }\n .lm_maximised .lm_controls .lm_maximise {\n background-image: url('${minimiseSVG}');\n }\n .lm_controls .lm_close {\n background-image: url('${closeSVG}');\n }\n .lm_header .lm_tab .lm_close_tab {\n background-image: url('${closeSVG}');\n background-size: 10px;\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: ${accentFillRest};\n opacity: 0.7;\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('${tabDropdownSVG}');\n }\n .lm_header .lm_tabdropdown_list {\n top: 38px;\n right: 108px;\n background-color: ${neutralLayer3};\n border: 1px solid;\n border-color: #2e3339;\n border-radius: calc(${controlCornerRadius} * 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: #c9c9c9;\n height: 36px;\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: ${accentFillRest};\n border-radius: calc(${controlCornerRadius} * 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;\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;\n }\n .lm_header {\n overflow: visible;\n position: relative;\n z-index: 1;\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 }\n .lm_header .lm_tab .lm_title:only-child {\n padding-left: 10px;\n }\n .lm_header .lm_tab .lm_close_tab {\n width: 14px;\n height: 14px;\n position: absolute;\n top: 11px;\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 {\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 }\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`",
784
- "description": "`ElementStyles` which defines the css for FoundationLayout.",
552
+ "name": "foundationLayoutComponents",
553
+ "type": {
554
+ "text": "object"
555
+ },
556
+ "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}",
557
+ "description": "Registration object to register the layout with your design system.",
785
558
  "privacy": "public"
786
559
  }
787
560
  ],
788
561
  "exports": [
789
562
  {
790
563
  "kind": "js",
791
- "name": "layoutStyles",
564
+ "name": "foundationLayoutComponents",
792
565
  "declaration": {
793
- "name": "layoutStyles",
794
- "module": "src/styles/layout.styles.ts"
566
+ "name": "foundationLayoutComponents",
567
+ "module": "src/main/layout-components.ts"
795
568
  }
796
569
  }
797
570
  ]
798
571
  },
799
572
  {
800
573
  "kind": "javascript-module",
801
- "path": "src/utils/constants.ts",
574
+ "path": "src/main/layout-item.ts",
802
575
  "declarations": [
803
576
  {
804
- "kind": "variable",
805
- "name": "DEFAULT_RELOAD_BUFFER",
806
- "type": {
807
- "text": "number"
808
- },
809
- "default": "500",
810
- "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.",
811
- "privacy": "public"
812
- }
813
- ],
814
- "exports": [
577
+ "kind": "class",
578
+ "description": "",
579
+ "name": "FoundationLayoutItem",
580
+ "members": [
581
+ {
582
+ "kind": "field",
583
+ "name": "title",
584
+ "type": {
585
+ "text": "string"
586
+ },
587
+ "description": "Sets the title of the item which is displayed on the tab.",
588
+ "privacy": "public"
589
+ },
590
+ {
591
+ "kind": "field",
592
+ "name": "closable",
593
+ "type": {
594
+ "text": "boolean"
595
+ },
596
+ "default": "false",
597
+ "description": "Boolean attribute controls whether the window can be closed in the GUI.\nDefaults to `false`.",
598
+ "privacy": "public"
599
+ },
600
+ {
601
+ "kind": "field",
602
+ "name": "size",
603
+ "type": {
604
+ "text": "string"
605
+ },
606
+ "description": "optional string describing the size of the new item (see the written documentation for more info)",
607
+ "privacy": "public"
608
+ },
609
+ {
610
+ "kind": "field",
611
+ "name": "registration",
612
+ "type": {
613
+ "text": "string"
614
+ },
615
+ "description": "Sets the registration name for the item, which can be used later to add the item via the JavaScript API using FoundationLayout.addItem.",
616
+ "privacy": "public"
617
+ }
618
+ ],
619
+ "attributes": [
620
+ {
621
+ "name": "title",
622
+ "type": {
623
+ "text": "string"
624
+ },
625
+ "description": "Sets the title of the item which is displayed on the tab.",
626
+ "fieldName": "title"
627
+ },
628
+ {
629
+ "type": {
630
+ "text": "boolean"
631
+ },
632
+ "default": "false",
633
+ "description": "Boolean attribute controls whether the window can be closed in the GUI.\nDefaults to `false`.",
634
+ "fieldName": "closable"
635
+ },
636
+ {
637
+ "name": "size",
638
+ "type": {
639
+ "text": "string"
640
+ },
641
+ "description": "optional string describing the size of the new item (see the written documentation for more info)",
642
+ "fieldName": "size"
643
+ },
644
+ {
645
+ "name": "registration",
646
+ "type": {
647
+ "text": "string"
648
+ },
649
+ "description": "Sets the registration name for the item, which can be used later to add the item via the JavaScript API using FoundationLayout.addItem.",
650
+ "fieldName": "registration"
651
+ }
652
+ ],
653
+ "superclass": {
654
+ "name": "FoundationElement",
655
+ "package": "@microsoft/fast-foundation"
656
+ },
657
+ "tagName": "%%prefix%%-layout-item",
658
+ "customElement": true
659
+ }
660
+ ],
661
+ "exports": [
815
662
  {
816
663
  "kind": "js",
817
- "name": "DEFAULT_RELOAD_BUFFER",
664
+ "name": "FoundationLayoutItem",
818
665
  "declaration": {
819
- "name": "DEFAULT_RELOAD_BUFFER",
820
- "module": "src/utils/constants.ts"
666
+ "name": "FoundationLayoutItem",
667
+ "module": "src/main/layout-item.ts"
821
668
  }
822
669
  }
823
670
  ]
824
671
  },
825
672
  {
826
673
  "kind": "javascript-module",
827
- "path": "src/utils/error.ts",
674
+ "path": "src/main/layout-main.ts",
828
675
  "declarations": [
829
676
  {
830
677
  "kind": "class",
831
678
  "description": "",
832
- "name": "LayoutUsageError",
833
- "superclass": {
834
- "name": "Error",
835
- "module": "src/utils/error.ts"
836
- }
837
- },
838
- {
839
- "kind": "class",
840
- "description": "",
841
- "name": "LayoutRegistrationError",
679
+ "name": "FoundationLayout",
680
+ "members": [
681
+ {
682
+ "kind": "field",
683
+ "name": "layout",
684
+ "type": {
685
+ "text": "GoldenLayout"
686
+ },
687
+ "privacy": "private"
688
+ },
689
+ {
690
+ "kind": "field",
691
+ "name": "layoutConfig",
692
+ "type": {
693
+ "text": "LayoutConfig"
694
+ },
695
+ "privacy": "private",
696
+ "default": "{ root: undefined }"
697
+ },
698
+ {
699
+ "kind": "field",
700
+ "name": "reloadBuffer",
701
+ "type": {
702
+ "text": "number"
703
+ },
704
+ "default": "DEFAULT_RELOAD_BUFFER",
705
+ "description": "Number describing how long to wait in ms before reloading the config when adding items\ndeclaratively by the html API. Default 500 (ms).",
706
+ "privacy": "public"
707
+ },
708
+ {
709
+ "kind": "field",
710
+ "name": "reloadPending",
711
+ "type": {
712
+ "text": "boolean"
713
+ },
714
+ "privacy": "private",
715
+ "default": "false"
716
+ },
717
+ {
718
+ "kind": "field",
719
+ "name": "registeredComponents",
720
+ "type": {
721
+ "text": "number"
722
+ },
723
+ "privacy": "private",
724
+ "default": "0"
725
+ },
726
+ {
727
+ "kind": "field",
728
+ "name": "autoSaveKey",
729
+ "type": {
730
+ "text": "string | undefined"
731
+ },
732
+ "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`.",
733
+ "privacy": "public"
734
+ },
735
+ {
736
+ "kind": "field",
737
+ "name": "missingItemPlaceholder",
738
+ "description": "Function which is used to generate the placeholder text when a layout is loaded\nwith a missing item.",
739
+ "privacy": "public"
740
+ },
741
+ {
742
+ "kind": "field",
743
+ "name": "hasFirstLoaded",
744
+ "type": {
745
+ "text": "boolean"
746
+ },
747
+ "default": "false",
748
+ "description": "Boolean signifies whether the layout has loaded for the first time or not.",
749
+ "privacy": "public"
750
+ },
751
+ {
752
+ "kind": "field",
753
+ "name": "dragging",
754
+ "type": {
755
+ "text": "boolean"
756
+ },
757
+ "default": "false",
758
+ "privacy": "public"
759
+ },
760
+ {
761
+ "kind": "method",
762
+ "name": "layoutRequiredRegistrations",
763
+ "static": true,
764
+ "return": {
765
+ "type": {
766
+ "text": ""
767
+ }
768
+ },
769
+ "parameters": [
770
+ {
771
+ "name": "layout",
772
+ "type": {
773
+ "text": "SerialisedLayout"
774
+ },
775
+ "description": "any version of {@link SerialisedLayout}object describing the layout\n * "
776
+ }
777
+ ],
778
+ "description": "JS API, public",
779
+ "privacy": "public"
780
+ },
781
+ {
782
+ "kind": "method",
783
+ "name": "registeredItems",
784
+ "return": {
785
+ "type": {
786
+ "text": ""
787
+ }
788
+ },
789
+ "privacy": "public"
790
+ },
791
+ {
792
+ "kind": "method",
793
+ "name": "getLayout",
794
+ "return": {
795
+ "type": {
796
+ "text": ""
797
+ }
798
+ },
799
+ "privacy": "public"
800
+ },
801
+ {
802
+ "kind": "method",
803
+ "name": "tryLoadLayoutFromLocalStorage",
804
+ "return": {
805
+ "type": {
806
+ "text": ""
807
+ }
808
+ },
809
+ "description": "Try to load a layout from local storage, or return false. Only required if manually calling FoundationLayout.registerItem",
810
+ "privacy": "public"
811
+ },
812
+ {
813
+ "kind": "method",
814
+ "name": "loadLayout",
815
+ "parameters": [
816
+ {
817
+ "name": "layout",
818
+ "type": {
819
+ "text": "SerialisedLayout"
820
+ },
821
+ "description": "any version of {@link SerialisedLayout}object describing the layout\n * "
822
+ },
823
+ {
824
+ "name": "handleMissingItem",
825
+ "default": "'error'",
826
+ "type": {
827
+ "text": "'placeholder' | 'error'"
828
+ },
829
+ "description": "what to do if the layout contains items that are not currently registered with the layout system. Defaults to 'error' which will throw an error. If set to 'placeholder' then any missing items will be replaced with a placeholder element. You can control the text of the placeholder element with {@link FoundationLayout.missingItemPlaceholder}.\n * "
830
+ }
831
+ ],
832
+ "privacy": "public"
833
+ },
834
+ {
835
+ "kind": "method",
836
+ "name": "addItem",
837
+ "parameters": [
838
+ {
839
+ "name": "config",
840
+ "type": {
841
+ "text": "RegisteredElementConfig | RegisteredElementConfig[]"
842
+ },
843
+ "description": "{@link RegisteredElementConfig}configuration items for the new items(s). Pass an array of {@link RegisteredElementConfig}to add multiple items at once.\n * "
844
+ },
845
+ {
846
+ "name": "placement",
847
+ "default": "defaultAddItemPlacement",
848
+ "type": {
849
+ "text": "Placement"
850
+ },
851
+ "description": "where and how to add the new items to the layout. For more info and defaults see {@link Placement}.\n * "
852
+ }
853
+ ],
854
+ "privacy": "public"
855
+ },
856
+ {
857
+ "kind": "method",
858
+ "name": "registerItem",
859
+ "return": {
860
+ "type": {
861
+ "text": ""
862
+ }
863
+ },
864
+ "parameters": [
865
+ {
866
+ "name": "registration",
867
+ "type": {
868
+ "text": "string"
869
+ },
870
+ "description": "string of the registration ID"
871
+ },
872
+ {
873
+ "name": "elements",
874
+ "type": {
875
+ "text": "Element[]"
876
+ },
877
+ "description": "Elements[] containing the reference to the elements to register for later usage"
878
+ }
879
+ ],
880
+ "privacy": "public"
881
+ }
882
+ ],
883
+ "attributes": [
884
+ {
885
+ "name": "reload-buffer",
886
+ "type": {
887
+ "text": "number"
888
+ },
889
+ "default": "DEFAULT_RELOAD_BUFFER",
890
+ "description": "Number describing how long to wait in ms before reloading the config when adding items\ndeclaratively by the html API. Default 500 (ms).",
891
+ "resolveInitializer": {
892
+ "module": "/src/utils/"
893
+ },
894
+ "fieldName": "reloadBuffer"
895
+ },
896
+ {
897
+ "name": "auto-save-key",
898
+ "type": {
899
+ "text": "string | undefined"
900
+ },
901
+ "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`.",
902
+ "fieldName": "autoSaveKey"
903
+ }
904
+ ],
842
905
  "superclass": {
843
- "name": "Error",
844
- "module": "src/utils/error.ts"
845
- }
846
- }
847
- ],
848
- "exports": [
849
- {
850
- "kind": "js",
851
- "name": "LayoutUsageError",
852
- "declaration": {
853
- "name": "LayoutUsageError",
854
- "module": "src/utils/error.ts"
855
- }
856
- },
857
- {
858
- "kind": "js",
859
- "name": "LayoutRegistrationError",
860
- "declaration": {
861
- "name": "LayoutRegistrationError",
862
- "module": "src/utils/error.ts"
863
- }
864
- }
865
- ]
866
- },
867
- {
868
- "kind": "javascript-module",
869
- "path": "src/utils/events.ts",
870
- "declarations": [
871
- {
872
- "kind": "variable",
873
- "name": "LayoutEmitEvents",
874
- "type": {
875
- "text": "{\n firstLoaded: 'first-loaded',\n itemAdded: 'item-added',\n itemRemoved: 'item-removed',\n itemResized: 'item-resized',\n}"
906
+ "name": "FoundationElement",
907
+ "package": "@microsoft/fast-foundation"
876
908
  },
877
- "default": "{\n firstLoaded: 'first-loaded',\n itemAdded: 'item-added',\n itemRemoved: 'item-removed',\n itemResized: 'item-resized',\n}",
878
- "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",
879
- "privacy": "public"
909
+ "tagName": "%%prefix%%-layout",
910
+ "customElement": true
880
911
  },
881
912
  {
882
913
  "kind": "variable",
883
- "name": "LayoutReceiveEvents",
884
- "type": {
885
- "text": "{\n changeTitle: 'change-title',\n}"
886
- },
887
- "default": "{\n changeTitle: 'change-title',\n}",
888
- "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.",
914
+ "name": "layoutTemplate",
915
+ "default": "html<FoundationLayout>`\n <template>\n ${when((x) => !x.hasFirstLoaded && x.usingDeclerativeAPI, loadingTemplate)}\n <div class=\"layout-container\" ${ref('layoutElement')}></div>\n </template>\n`",
916
+ "description": "`ViewTemplate` which defines the html for FoundationLayout.",
889
917
  "privacy": "public"
890
918
  }
891
919
  ],
892
920
  "exports": [
893
921
  {
894
922
  "kind": "js",
895
- "name": "LayoutEmitEvents",
896
- "declaration": {
897
- "name": "LayoutEmitEvents",
898
- "module": "src/utils/events.ts"
899
- }
900
- },
901
- {
902
- "kind": "js",
903
- "name": "LayoutReceiveEvents",
904
- "declaration": {
905
- "name": "LayoutReceiveEvents",
906
- "module": "src/utils/events.ts"
907
- }
908
- }
909
- ]
910
- },
911
- {
912
- "kind": "javascript-module",
913
- "path": "src/utils/index.ts",
914
- "declarations": [],
915
- "exports": [
916
- {
917
- "kind": "js",
918
- "name": "*",
919
- "declaration": {
920
- "name": "*",
921
- "package": "./constants"
922
- }
923
- },
924
- {
925
- "kind": "js",
926
- "name": "*",
927
- "declaration": {
928
- "name": "*",
929
- "package": "./error"
930
- }
931
- },
932
- {
933
- "kind": "js",
934
- "name": "*",
935
- "declaration": {
936
- "name": "*",
937
- "package": "./events"
938
- }
939
- },
940
- {
941
- "kind": "js",
942
- "name": "*",
943
- "declaration": {
944
- "name": "*",
945
- "package": "./misc"
946
- }
947
- },
948
- {
949
- "kind": "js",
950
- "name": "*",
923
+ "name": "layoutStyles",
951
924
  "declaration": {
952
- "name": "*",
953
- "package": "./templates"
925
+ "name": "layoutStyles",
926
+ "module": "../styles"
954
927
  }
955
928
  },
956
929
  {
957
930
  "kind": "js",
958
- "name": "*",
931
+ "name": "FoundationLayout",
959
932
  "declaration": {
960
- "name": "*",
961
- "package": "./types"
933
+ "name": "FoundationLayout",
934
+ "module": "src/main/layout-main.ts"
962
935
  }
963
936
  },
964
937
  {
965
938
  "kind": "js",
966
- "name": "*",
939
+ "name": "layoutTemplate",
967
940
  "declaration": {
968
- "name": "*",
969
- "package": "./error"
941
+ "name": "layoutTemplate",
942
+ "module": "src/main/layout-main.ts"
970
943
  }
971
944
  }
972
945
  ]
973
946
  },
974
947
  {
975
948
  "kind": "javascript-module",
976
- "path": "src/utils/logger.ts",
949
+ "path": "src/main/layout-region.ts",
977
950
  "declarations": [
978
951
  {
979
- "kind": "variable",
980
- "name": "logger"
952
+ "kind": "class",
953
+ "description": "",
954
+ "name": "FoundationLayoutRegion",
955
+ "members": [
956
+ {
957
+ "kind": "field",
958
+ "name": "size",
959
+ "type": {
960
+ "text": "string"
961
+ },
962
+ "description": "optional string describing the size of the new item (see the written documentation for more info)",
963
+ "privacy": "public"
964
+ },
965
+ {
966
+ "kind": "field",
967
+ "name": "type",
968
+ "type": {
969
+ "text": "LayoutRegionType"
970
+ },
971
+ "description": "Defines the LayoutRegionType| type of the region.\nDefaults to `horizontal`.",
972
+ "privacy": "public"
973
+ }
974
+ ],
975
+ "attributes": [
976
+ {
977
+ "name": "size",
978
+ "type": {
979
+ "text": "string"
980
+ },
981
+ "description": "optional string describing the size of the new item (see the written documentation for more info)",
982
+ "fieldName": "size"
983
+ },
984
+ {
985
+ "name": "type",
986
+ "type": {
987
+ "text": "LayoutRegionType"
988
+ },
989
+ "description": "Defines the LayoutRegionType| type of the region.\nDefaults to `horizontal`.",
990
+ "fieldName": "type"
991
+ }
992
+ ],
993
+ "superclass": {
994
+ "name": "FoundationElement",
995
+ "package": "@microsoft/fast-foundation"
996
+ },
997
+ "tagName": "%%prefix%%-layout-region",
998
+ "customElement": true
981
999
  }
982
1000
  ],
983
1001
  "exports": [
984
1002
  {
985
1003
  "kind": "js",
986
- "name": "logger",
1004
+ "name": "FoundationLayoutRegion",
987
1005
  "declaration": {
988
- "name": "logger",
989
- "module": "src/utils/logger.ts"
1006
+ "name": "FoundationLayoutRegion",
1007
+ "module": "src/main/layout-region.ts"
990
1008
  }
991
1009
  }
992
1010
  ]
993
- },
994
- {
995
- "kind": "javascript-module",
996
- "path": "src/utils/misc.ts",
997
- "declarations": [],
998
- "exports": []
999
- },
1000
- {
1001
- "kind": "javascript-module",
1002
- "path": "src/utils/templates.ts",
1003
- "declarations": [],
1004
- "exports": []
1005
- },
1006
- {
1007
- "kind": "javascript-module",
1008
- "path": "src/utils/types.ts",
1009
- "declarations": [],
1010
- "exports": []
1011
1011
  }
1012
1012
  ]
1013
1013
  }