@api-client/ui 0.0.9 → 0.0.11

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 (56) hide show
  1. package/.eslintrc +8 -1
  2. package/demo/index.html +3 -0
  3. package/demo/layout/index.html +91 -0
  4. package/demo/layout/index.ts +182 -0
  5. package/dist/elements/layout/SplitItem.d.ts +1 -9
  6. package/dist/elements/layout/SplitItem.d.ts.map +1 -1
  7. package/dist/elements/layout/SplitItem.js +27 -20
  8. package/dist/elements/layout/SplitItem.js.map +1 -1
  9. package/dist/elements/layout/SplitLayout.d.ts +16 -14
  10. package/dist/elements/layout/SplitLayout.d.ts.map +1 -1
  11. package/dist/elements/layout/SplitLayout.js +47 -42
  12. package/dist/elements/layout/SplitLayout.js.map +1 -1
  13. package/dist/elements/layout/SplitPanel.d.ts +7 -2
  14. package/dist/elements/layout/SplitPanel.d.ts.map +1 -1
  15. package/dist/elements/layout/SplitPanel.js +130 -52
  16. package/dist/elements/layout/SplitPanel.js.map +1 -1
  17. package/dist/elements/layout/SplitView.d.ts.map +1 -1
  18. package/dist/elements/layout/SplitView.js +18 -14
  19. package/dist/elements/layout/SplitView.js.map +1 -1
  20. package/dist/elements/layout/type.d.ts +3 -3
  21. package/dist/elements/layout/type.d.ts.map +1 -1
  22. package/dist/elements/layout/type.js.map +1 -1
  23. package/dist/elements/schema-design/DataModelVisualizationElement.d.ts.map +1 -1
  24. package/dist/elements/schema-design/DataModelVisualizationElement.js +18 -1
  25. package/dist/elements/schema-design/DataModelVisualizationElement.js.map +1 -1
  26. package/dist/pages/http-project/HttpClientCommands.d.ts.map +1 -1
  27. package/dist/pages/http-project/HttpClientCommands.js +28 -12
  28. package/dist/pages/http-project/HttpClientCommands.js.map +1 -1
  29. package/package.json +2 -1
  30. package/src/elements/layout/SplitItem.ts +29 -21
  31. package/src/elements/layout/SplitLayout.ts +53 -43
  32. package/src/elements/layout/SplitPanel.ts +140 -57
  33. package/src/elements/layout/SplitView.ts +18 -15
  34. package/src/elements/layout/type.ts +3 -4
  35. package/src/elements/schema-design/DataModelVisualizationElement.ts +18 -1
  36. package/src/pages/http-project/HttpClientCommands.ts +28 -12
  37. package/test/elements/layout/SplitItem.test.ts +76 -75
  38. package/test/elements/layout/SplitLayoutManager.test.ts +70 -69
  39. package/test/elements/layout/SplitPanel.test.ts +10 -7
  40. package/tsconfig.eslint.json +8 -0
  41. package/web-test-runner.config.mjs +4 -1
  42. package/dist/define/layout/layout-panel.d.ts +0 -7
  43. package/dist/define/layout/layout-panel.d.ts.map +0 -1
  44. package/dist/define/layout/layout-panel.js +0 -3
  45. package/dist/define/layout/layout-panel.js.map +0 -1
  46. package/dist/elements/layout/LayoutManager.d.ts +0 -327
  47. package/dist/elements/layout/LayoutManager.d.ts.map +0 -1
  48. package/dist/elements/layout/LayoutManager.js +0 -747
  49. package/dist/elements/layout/LayoutManager.js.map +0 -1
  50. package/dist/elements/layout/LayoutPanelElement.d.ts +0 -62
  51. package/dist/elements/layout/LayoutPanelElement.d.ts.map +0 -1
  52. package/dist/elements/layout/LayoutPanelElement.js +0 -628
  53. package/dist/elements/layout/LayoutPanelElement.js.map +0 -1
  54. package/src/define/layout/layout-panel.ts +0 -9
  55. package/src/elements/layout/LayoutManager.ts +0 -930
  56. package/src/elements/layout/LayoutPanelElement.ts +0 -651
@@ -1,327 +0,0 @@
1
- import { TemplateResult } from 'lit';
2
- import LayoutPanelElement from './LayoutPanelElement.js';
3
- import '../../define/layout/layout-panel.js';
4
- import { IconType } from '../../ui/icons/Icons.js';
5
- export type Direction = 'horizontal' | 'vertical';
6
- export type DropRegion = 'center' | 'east' | 'west' | 'north' | 'south';
7
- declare enum PanelState {
8
- Idle = 0,
9
- Busy = 1
10
- }
11
- export interface ILayoutItem {
12
- /**
13
- * The kind of opened item
14
- */
15
- kind: string;
16
- /**
17
- * The key of the opened item
18
- */
19
- key: string;
20
- /**
21
- * Optional parent information that helps locating this object.
22
- */
23
- parent?: string;
24
- /**
25
- * The label to render in the tab.
26
- */
27
- label: string;
28
- /**
29
- * Whether the tab is pinned (cannot be closed or moved).
30
- */
31
- pinned?: boolean;
32
- /**
33
- * The tab index.
34
- */
35
- index?: number;
36
- /**
37
- * The icon defined in the internal library to render with the tab.
38
- */
39
- icon?: IconType;
40
- /**
41
- * A tab that is always present in the layout. The user can't close this tab.
42
- */
43
- persistent?: boolean;
44
- /**
45
- * A property to be used by the screen to indicate the property is being loaded
46
- * (from a data store, file, etc).
47
- */
48
- loading?: boolean;
49
- /**
50
- * Indicates the item has been changed and is out of sync with the data store.
51
- */
52
- isDirty?: boolean;
53
- }
54
- export interface ILayoutOptions {
55
- /**
56
- * The list of DataTransfer types to test against when handling drag and drop.
57
- * When set it checks whether all types are set on the dragged item.
58
- * If not set all items are allowed.
59
- */
60
- dragTypes?: string[];
61
- /**
62
- * The local store key to use with `autoStore`,
63
- */
64
- storeKey?: string;
65
- /**
66
- * Uses application's internal events system to store the layout data
67
- * in the local store, when anything change.
68
- * This must be set with the `storeKey` property.
69
- *
70
- * When this is set it also restores the state during initialization.
71
- */
72
- autoStore?: boolean;
73
- /**
74
- * When set it adds the `overflow` hidden on the container that holds the tab contents.
75
- */
76
- constrain?: boolean;
77
- }
78
- export interface IPanelSplitOptions {
79
- layout?: Direction;
80
- itemsTarget?: 0 | 1;
81
- }
82
- export type ItemRenderCallback = (item: ILayoutItem, visible: boolean) => TemplateResult;
83
- export interface ILayoutPanelState {
84
- id: number;
85
- layout: Direction;
86
- panels?: ILayoutPanelState[];
87
- items?: ILayoutItem[];
88
- selected?: string;
89
- }
90
- export interface ILayoutState {
91
- panels: ILayoutPanelState[];
92
- }
93
- export interface ILayoutItemAddOptions {
94
- /**
95
- * The region to add the item.
96
- * When other than `center` it splits the panel.
97
- */
98
- region?: DropRegion;
99
- /**
100
- * The index at which to put the item.
101
- * By default it is added as a last item.
102
- */
103
- index?: number;
104
- }
105
- export declare class LayoutPanel {
106
- id: number;
107
- parent?: LayoutPanel;
108
- manager: LayoutManager;
109
- layout: Direction;
110
- panels: LayoutPanel[];
111
- items: ILayoutItem[];
112
- /**
113
- * The current state of the panel.
114
- */
115
- state: PanelState;
116
- /**
117
- * The item being rendered in the panel.
118
- */
119
- selected?: string;
120
- /**
121
- * The computed size value for each item.
122
- * The value of `undefined` means "auto".
123
- */
124
- sizes: string[];
125
- get hasPanels(): boolean;
126
- get hasItems(): boolean;
127
- static fromSchema(state: ILayoutPanelState, manager: LayoutManager, parent?: LayoutPanel): LayoutPanel;
128
- constructor(manager: LayoutManager, parent?: LayoutPanel);
129
- /**
130
- * @returns Returns a **copy** of the items array sorted by index.
131
- */
132
- sortedItems(): ILayoutItem[];
133
- /**
134
- * @returns True when the panel accepts drop events.
135
- */
136
- canDrop(): boolean;
137
- nextIndex(): number;
138
- /**
139
- * Adds an item to the layout.
140
- *
141
- * @param item The item to add
142
- * @param opts Layout adding item options
143
- * @returns Whether a new item was added to the layout. false when the item is already in the layout panel.
144
- */
145
- addItem(item: ILayoutItem, opts?: ILayoutItemAddOptions): boolean;
146
- /**
147
- * Splits this panel into 2 panels.
148
- * This to be used when the panel has no other panels. Only items are allowed.
149
- * It produces 2 new panels and moves the items to the first one leaving the other one available.
150
- */
151
- split(opts?: IPanelSplitOptions): LayoutPanel[];
152
- unsplit(): void;
153
- /**
154
- * Decreases items index by 1 to all items with index at least equal to `fromIndex`.
155
- * @param fromIndex The minimal index to affect.
156
- */
157
- decreaseIndex(fromIndex: number): void;
158
- /**
159
- * Increases items index by 1 to all items with index at least equal to `fromIndex`.
160
- * @param fromIndex The minimal index to affect.
161
- */
162
- increaseIndex(fromIndex: number): void;
163
- /**
164
- * Removes an item from the layout
165
- * @param key The key of the item.
166
- * @returns The removed item, if any.
167
- */
168
- removeItem(key: string): ILayoutItem | undefined;
169
- /**
170
- * @param key The key of the item to perform a relative operation from.
171
- * @param dir The direction to which close other items. Default to both directions leaving only the `key` item
172
- */
173
- relativeClose(key: string, dir?: 'left' | 'right' | 'both'): void;
174
- removePanel(id: number): void;
175
- /**
176
- * Moves an item to a new index.
177
- *
178
- * @param key The item key
179
- * @param toIndex The new index. When not set it moves the item to the end.
180
- */
181
- moveItem(key: string, toIndex?: number): void;
182
- rename(key: string, label: string): void;
183
- toJSON(): ILayoutPanelState;
184
- panelTemplate(panel: LayoutPanel, itemCallback: ItemRenderCallback): TemplateResult | undefined;
185
- itemTemplate(item: ILayoutItem, visible: boolean, itemCallback: ItemRenderCallback): TemplateResult;
186
- render(itemCallback: ItemRenderCallback): TemplateResult | undefined;
187
- }
188
- /**
189
- * Layout manager for API Client apps.
190
- *
191
- * Supports:
192
- * - layout splitting depending on the selected region (east, west, north, south)
193
- * - drag and drop of items into the layout
194
- * - auto storing and restoring layout state from the application local storage.
195
- * - adding items to the last focused panel
196
- *
197
- * Limitations
198
- * - the rendered content has to be focusable (tabindex must be set) in order to detect active panel
199
- */
200
- export declare class LayoutManager extends EventTarget {
201
- opts: ILayoutOptions;
202
- panels: LayoutPanel[];
203
- protected isDirty: boolean;
204
- protected storing: boolean;
205
- private _activePanel?;
206
- /**
207
- * An active panel
208
- */
209
- get activePanel(): LayoutPanel | undefined;
210
- constructor(opts?: ILayoutOptions);
211
- /**
212
- * @param itemCallback The callback called when rendering an item in layout view.
213
- * @returns The template for the page layout.
214
- */
215
- render(itemCallback: ItemRenderCallback): TemplateResult[];
216
- /**
217
- * Initializes the manager.
218
- *
219
- * @param restore Previously stored layout state, if any.
220
- */
221
- initialize(restore?: ILayoutState): Promise<void>;
222
- protected restore(restore: ILayoutState): void;
223
- /**
224
- * Informs the screen that something has changed
225
- */
226
- changed(): void;
227
- /**
228
- * Dispatches the `nameitem` event.
229
- * The detail object has the item to be added to the items.
230
- * The event handler can manipulate properties of the item, except for the index which will be set by the manager.
231
- *
232
- * @param item The item to notify.
233
- */
234
- nameItem(item: ILayoutItem): void;
235
- /**
236
- * Serializes the layout state to a JSON safe object.
237
- * This is automatically called when passing this object to `JSON.stringify()`.
238
- */
239
- toJSON(): ILayoutState;
240
- protected autoStore(): void;
241
- protected storeLayout(key: string): Promise<void>;
242
- protected restoreLayout(key: string): Promise<void>;
243
- protected _focusInHandler(e: Event): void;
244
- protected findLayout(e: Event, last?: boolean): LayoutPanelElement | undefined;
245
- /**
246
- * Finds a panel by id.
247
- *
248
- * @param id The id of the panel.
249
- * @param parent THe parent panel to start searching from
250
- * @returns The panel if found
251
- */
252
- findPanel(id: number, parent?: LayoutPanel): LayoutPanel | undefined;
253
- /**
254
- * Finds a first panel that can accept items.
255
- * This will be a panel that has no other panels.
256
- */
257
- findFirstItemsPanel(parent?: LayoutPanel): LayoutPanel | undefined;
258
- /**
259
- * Finds a panel for the item.
260
- * @param key the key of the item to find.
261
- */
262
- findItemPanel(key: string, parent?: LayoutPanel): LayoutPanel | undefined;
263
- /**
264
- * Finds a layout item.
265
- * @param key the key of the item to find.
266
- */
267
- findItem(key: string, parent?: LayoutPanel): ILayoutItem | undefined;
268
- parentItemIterator(key: string, parent?: LayoutPanel): Generator<ILayoutItem>;
269
- /**
270
- * Adds an item to the active panel.
271
- *
272
- * @param item The item to add.
273
- */
274
- addItem(item: ILayoutItem): void;
275
- /**
276
- * Removes an item from layout.
277
- * @param key The key of the item to remove.
278
- */
279
- removeItem(key: string): void;
280
- /**
281
- * @param key The key of the item to perform a relative operation from.
282
- * @param dir The direction to which close other items. Default to both directions leaving only the `key` item
283
- */
284
- relativeClose(key: string, dir?: 'left' | 'right' | 'both'): void;
285
- /**
286
- * Requests an update on a layout.
287
- *
288
- * @param id The id of the panel. When not set it uses the active panel
289
- */
290
- forceUpdateLayout(id?: number): void;
291
- /**
292
- * Moves a tab between panels or inside a panel
293
- *
294
- * @param fromPanel The id of the source panel of the item
295
- * @param toPanel The id of the target panel of the item
296
- * @param key The key of the item
297
- * @param toIndex The index to which add the item. Default as the last.
298
- */
299
- moveTab(fromPanel: number, toPanel: number, key: string, toIndex?: number): void;
300
- /**
301
- * Finds the item's panel and renames the item.
302
- *
303
- * @param key The item's key
304
- * @param label The new label
305
- */
306
- rename(key: string, label: string): void;
307
- /**
308
- * Requests to dispatch the `nameitem` event so the application can update the name of the tab.
309
- *
310
- * @param key The key of the item.
311
- */
312
- requestNameUpdate(key: string): void;
313
- /**
314
- * Requests to dispatch the `nameitem` event so the application can update the name of a tab
315
- * that has a parent.
316
- *
317
- * @param parent The key of the parent.
318
- */
319
- parentNameUpdate(parent: string): void;
320
- /**
321
- * Finds all items in all panels that have specified parent.
322
- * @param key The key of the parent to search for.
323
- */
324
- removeByParent(key: string): void;
325
- }
326
- export {};
327
- //# sourceMappingURL=LayoutManager.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LayoutManager.d.ts","sourceRoot":"","sources":["../../../src/elements/layout/LayoutManager.ts"],"names":[],"mappings":"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"}