@operato/layout 1.0.0-beta.9 → 1.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,395 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ### [1.0.6](https://github.com/hatiolab/operato/compare/v1.0.5...v1.0.6) (2022-07-31)
7
+
8
+ **Note:** Version bump only for package @operato/layout
9
+
10
+
11
+
12
+
13
+
14
+ ### [1.0.5](https://github.com/hatiolab/operato/compare/v1.0.4...v1.0.5) (2022-07-31)
15
+
16
+ **Note:** Version bump only for package @operato/layout
17
+
18
+
19
+
20
+
21
+
22
+ ### [1.0.4](https://github.com/hatiolab/operato/compare/v1.0.3...v1.0.4) (2022-07-31)
23
+
24
+ **Note:** Version bump only for package @operato/layout
25
+
26
+
27
+
28
+
29
+
30
+ ### [1.0.3](https://github.com/hatiolab/operato/compare/v1.0.2...v1.0.3) (2022-07-31)
31
+
32
+
33
+ ### :bug: Bug Fix
34
+
35
+ * exports types ([ff5dc11](https://github.com/hatiolab/operato/commit/ff5dc119acbbf5a93459115f3929ba4a6720f9bb))
36
+
37
+
38
+
39
+ ### [1.0.1](https://github.com/hatiolab/operato/compare/v1.0.0...v1.0.1) (2022-07-25)
40
+
41
+ **Note:** Version bump only for package @operato/layout
42
+
43
+
44
+
45
+
46
+
47
+ ## [1.0.0](https://github.com/hatiolab/operato/compare/v1.0.0-beta.51...v1.0.0) (2022-07-24)
48
+
49
+ **Note:** Version bump only for package @operato/layout
50
+
51
+
52
+
53
+
54
+
55
+ ## [1.0.0-beta.51](https://github.com/hatiolab/operato/compare/v1.0.0-beta.50...v1.0.0-beta.51) (2022-07-22)
56
+
57
+ **Note:** Version bump only for package @operato/layout
58
+
59
+
60
+
61
+
62
+
63
+ ## [1.0.0-beta.50](https://github.com/hatiolab/operato/compare/v1.0.0-beta.49...v1.0.0-beta.50) (2022-07-18)
64
+
65
+ **Note:** Version bump only for package @operato/layout
66
+
67
+
68
+
69
+
70
+
71
+ ## [1.0.0-beta.49](https://github.com/hatiolab/operato/compare/v1.0.0-beta.48...v1.0.0-beta.49) (2022-07-17)
72
+
73
+ **Note:** Version bump only for package @operato/layout
74
+
75
+
76
+
77
+
78
+
79
+ ## [1.0.0-beta.48](https://github.com/hatiolab/operato/compare/v1.0.0-beta.47...v1.0.0-beta.48) (2022-07-17)
80
+
81
+ **Note:** Version bump only for package @operato/layout
82
+
83
+
84
+
85
+
86
+
87
+ ## [1.0.0-beta.47](https://github.com/hatiolab/operato/compare/v1.0.0-beta.46...v1.0.0-beta.47) (2022-07-15)
88
+
89
+ **Note:** Version bump only for package @operato/layout
90
+
91
+
92
+
93
+
94
+
95
+ ## [1.0.0-beta.46](https://github.com/hatiolab/operato/compare/v1.0.0-beta.45...v1.0.0-beta.46) (2022-07-11)
96
+
97
+ **Note:** Version bump only for package @operato/layout
98
+
99
+
100
+
101
+
102
+
103
+ ## [1.0.0-beta.45](https://github.com/hatiolab/operato/compare/v1.0.0-beta.44...v1.0.0-beta.45) (2022-07-09)
104
+
105
+
106
+ ### :bug: Bug Fix
107
+
108
+ * upgrade dependencies ([4986392](https://github.com/hatiolab/operato/commit/4986392e64524b5602cc9a144def239e85524bee))
109
+
110
+
111
+
112
+ ## [1.0.0-beta.44](https://github.com/hatiolab/operato/compare/v1.0.0-beta.43...v1.0.0-beta.44) (2022-07-07)
113
+
114
+ **Note:** Version bump only for package @operato/layout
115
+
116
+
117
+
118
+
119
+
120
+ ## [1.0.0-beta.43](https://github.com/hatiolab/operato/compare/v1.0.0-beta.42...v1.0.0-beta.43) (2022-07-03)
121
+
122
+ **Note:** Version bump only for package @operato/layout
123
+
124
+
125
+
126
+
127
+
128
+ ## [1.0.0-beta.42](https://github.com/hatiolab/operato/compare/v1.0.0-beta.41...v1.0.0-beta.42) (2022-07-03)
129
+
130
+ **Note:** Version bump only for package @operato/layout
131
+
132
+
133
+
134
+
135
+
136
+ ## [1.0.0-beta.41](https://github.com/hatiolab/operato/compare/v1.0.0-beta.40...v1.0.0-beta.41) (2022-06-30)
137
+
138
+ **Note:** Version bump only for package @operato/layout
139
+
140
+
141
+
142
+
143
+
144
+ ## [1.0.0-beta.40](https://github.com/hatiolab/operato/compare/v1.0.0-beta.39...v1.0.0-beta.40) (2022-06-29)
145
+
146
+
147
+ ### :bug: Bug Fix
148
+
149
+ * [#43](https://github.com/hatiolab/operato/issues/43)-datasample ([14ab019](https://github.com/hatiolab/operato/commit/14ab0199311f340c784018b9fc78b70e57b09567))
150
+
151
+
152
+
153
+ ## [1.0.0-beta.39](https://github.com/hatiolab/operato/compare/v1.0.0-beta.38...v1.0.0-beta.39) (2022-06-22)
154
+
155
+ **Note:** Version bump only for package @operato/layout
156
+
157
+
158
+
159
+
160
+
161
+ ## [1.0.0-beta.38](https://github.com/hatiolab/operato/compare/v1.0.0-beta.37...v1.0.0-beta.38) (2022-06-20)
162
+
163
+ **Note:** Version bump only for package @operato/layout
164
+
165
+
166
+
167
+
168
+
169
+ ## [1.0.0-beta.37](https://github.com/hatiolab/operato/compare/v1.0.0-beta.36...v1.0.0-beta.37) (2022-06-20)
170
+
171
+ **Note:** Version bump only for package @operato/layout
172
+
173
+
174
+
175
+
176
+
177
+ ## [1.0.0-beta.36](https://github.com/hatiolab/operato/compare/v1.0.0-beta.35...v1.0.0-beta.36) (2022-06-16)
178
+
179
+ **Note:** Version bump only for package @operato/layout
180
+
181
+
182
+
183
+
184
+
185
+ ## [1.0.0-beta.35](https://github.com/hatiolab/operato/compare/v1.0.0-beta.34...v1.0.0-beta.35) (2022-06-16)
186
+
187
+ **Note:** Version bump only for package @operato/layout
188
+
189
+
190
+
191
+
192
+
193
+ ## [1.0.0-beta.34](https://github.com/hatiolab/operato/compare/v1.0.0-beta.33...v1.0.0-beta.34) (2022-06-16)
194
+
195
+ **Note:** Version bump only for package @operato/layout
196
+
197
+
198
+
199
+
200
+
201
+ ## [1.0.0-beta.33](https://github.com/hatiolab/operato/compare/v1.0.0-beta.32...v1.0.0-beta.33) (2022-06-16)
202
+
203
+ **Note:** Version bump only for package @operato/layout
204
+
205
+
206
+
207
+
208
+
209
+ ## [1.0.0-beta.32](https://github.com/hatiolab/operato/compare/v1.0.0-beta.31...v1.0.0-beta.32) (2022-06-15)
210
+
211
+ **Note:** Version bump only for package @operato/layout
212
+
213
+
214
+
215
+
216
+
217
+ ## [1.0.0-beta.31](https://github.com/hatiolab/operato/compare/v1.0.0-beta.30...v1.0.0-beta.31) (2022-06-15)
218
+
219
+ **Note:** Version bump only for package @operato/layout
220
+
221
+
222
+
223
+
224
+
225
+ ## [1.0.0-beta.30](https://github.com/hatiolab/operato/compare/v1.0.0-beta.29...v1.0.0-beta.30) (2022-06-13)
226
+
227
+ **Note:** Version bump only for package @operato/layout
228
+
229
+
230
+
231
+
232
+
233
+ ## [1.0.0-beta.29](https://github.com/hatiolab/operato/compare/v1.0.0-beta.28...v1.0.0-beta.29) (2022-06-10)
234
+
235
+ **Note:** Version bump only for package @operato/layout
236
+
237
+
238
+
239
+
240
+
241
+ ## [1.0.0-beta.28](https://github.com/hatiolab/operato/compare/v1.0.0-beta.27...v1.0.0-beta.28) (2022-06-10)
242
+
243
+ **Note:** Version bump only for package @operato/layout
244
+
245
+
246
+
247
+
248
+
249
+ ## [1.0.0-beta.27](https://github.com/hatiolab/operato/compare/v1.0.0-beta.26...v1.0.0-beta.27) (2022-06-09)
250
+
251
+ **Note:** Version bump only for package @operato/layout
252
+
253
+
254
+
255
+
256
+
257
+ ## [1.0.0-beta.26](https://github.com/hatiolab/operato/compare/v1.0.0-beta.25...v1.0.0-beta.26) (2022-06-04)
258
+
259
+ **Note:** Version bump only for package @operato/layout
260
+
261
+
262
+
263
+
264
+
265
+ ## [1.0.0-beta.25](https://github.com/hatiolab/operato/compare/v1.0.0-beta.24...v1.0.0-beta.25) (2022-06-02)
266
+
267
+ **Note:** Version bump only for package @operato/layout
268
+
269
+
270
+
271
+
272
+
273
+ ## [1.0.0-beta.24](https://github.com/hatiolab/operato/compare/v1.0.0-beta.23...v1.0.0-beta.24) (2022-06-02)
274
+
275
+ **Note:** Version bump only for package @operato/layout
276
+
277
+
278
+
279
+
280
+
281
+ ## [1.0.0-beta.23](https://github.com/hatiolab/operato/compare/v1.0.0-beta.22...v1.0.0-beta.23) (2022-06-02)
282
+
283
+ **Note:** Version bump only for package @operato/layout
284
+
285
+
286
+
287
+
288
+
289
+ ## [1.0.0-beta.22](https://github.com/hatiolab/operato/compare/v1.0.0-beta.21...v1.0.0-beta.22) (2022-05-31)
290
+
291
+ **Note:** Version bump only for package @operato/layout
292
+
293
+
294
+
295
+
296
+
297
+ ## [1.0.0-beta.21](https://github.com/hatiolab/operato/compare/v1.0.0-beta.20...v1.0.0-beta.21) (2022-05-31)
298
+
299
+ **Note:** Version bump only for package @operato/layout
300
+
301
+
302
+
303
+
304
+
305
+ ## [1.0.0-beta.20](https://github.com/hatiolab/operato/compare/v1.0.0-beta.19...v1.0.0-beta.20) (2022-05-30)
306
+
307
+ **Note:** Version bump only for package @operato/layout
308
+
309
+
310
+
311
+
312
+
313
+ ## [1.0.0-beta.19](https://github.com/hatiolab/operato/compare/v1.0.0-beta.18...v1.0.0-beta.19) (2022-05-29)
314
+
315
+ **Note:** Version bump only for package @operato/layout
316
+
317
+
318
+
319
+
320
+
321
+ ## [1.0.0-beta.18](https://github.com/hatiolab/operato/compare/v1.0.0-beta.17...v1.0.0-beta.18) (2022-05-27)
322
+
323
+ **Note:** Version bump only for package @operato/layout
324
+
325
+
326
+
327
+
328
+
329
+ ## [1.0.0-beta.17](https://github.com/hatiolab/operato/compare/v1.0.0-beta.16...v1.0.0-beta.17) (2022-05-25)
330
+
331
+ **Note:** Version bump only for package @operato/layout
332
+
333
+
334
+
335
+
336
+
337
+ ## [1.0.0-beta.16](https://github.com/hatiolab/operato/compare/v1.0.0-beta.15...v1.0.0-beta.16) (2022-05-23)
338
+
339
+ **Note:** Version bump only for package @operato/layout
340
+
341
+
342
+
343
+
344
+
345
+ ## [1.0.0-beta.15](https://github.com/hatiolab/operato/compare/v1.0.0-beta.14...v1.0.0-beta.15) (2022-05-20)
346
+
347
+ **Note:** Version bump only for package @operato/layout
348
+
349
+
350
+
351
+
352
+
353
+ ## [1.0.0-beta.14](https://github.com/hatiolab/operato/compare/v1.0.0-beta.13...v1.0.0-beta.14) (2022-05-19)
354
+
355
+ **Note:** Version bump only for package @operato/layout
356
+
357
+
358
+
359
+
360
+
361
+ ## [1.0.0-beta.13](https://github.com/hatiolab/operato/compare/v1.0.0-beta.12...v1.0.0-beta.13) (2022-05-19)
362
+
363
+
364
+ ### :bug: Bug Fix
365
+
366
+ * incorrect package.json scripts for storybooks ([8c8c405](https://github.com/hatiolab/operato/commit/8c8c405443247108b9c411b8161c008d9b6a2261))
367
+
368
+
369
+
370
+ ## [1.0.0-beta.12](https://github.com/hatiolab/operato/compare/v1.0.0-beta.11...v1.0.0-beta.12) (2022-05-13)
371
+
372
+
373
+ ### :rocket: New Features
374
+
375
+ * storybook started ([90c08c9](https://github.com/hatiolab/operato/commit/90c08c9a15e5fe554baaa1becca07793e8434799))
376
+
377
+
378
+
379
+ ## [1.0.0-beta.11](https://github.com/hatiolab/operato/compare/v1.0.0-beta.10...v1.0.0-beta.11) (2022-05-01)
380
+
381
+ **Note:** Version bump only for package @operato/layout
382
+
383
+
384
+
385
+
386
+
387
+ ## [1.0.0-beta.10](https://github.com/hatiolab/operato/compare/v1.0.0-beta.9...v1.0.0-beta.10) (2022-04-28)
388
+
389
+ **Note:** Version bump only for package @operato/layout
390
+
391
+
392
+
393
+
394
+
6
395
  ## [1.0.0-beta.9](https://github.com/hatiolab/operato/compare/v1.0.0-beta.8...v1.0.0-beta.9) (2022-04-28)
7
396
 
8
397
  **Note:** Version bump only for package @operato/layout
@@ -1,4 +1,5 @@
1
1
  import { TemplateResult } from 'lit';
2
+ import { PopupHandle, PopupOptions } from '@operato/popup';
2
3
  export declare type Viewpart = {
3
4
  hovering?: 'center' | 'edge' | 'next';
4
5
  show?: boolean;
@@ -50,45 +51,10 @@ export declare const TOOL_POSITION: {
50
51
  readonly REAR_END: "REAR_END";
51
52
  };
52
53
  export declare const UPDATE_VIEWPORT_WIDTH = "UPDATE_VIEWPORT_WIDTH";
53
- export declare const updateLayout: (wide?: boolean | undefined) => void;
54
- export declare const openOverlay: (name: string, options?: any, silent?: boolean | undefined) => void;
54
+ export declare const updateLayout: (wide?: boolean) => void;
55
+ export declare const openOverlay: (name: string, options?: any, silent?: boolean) => void;
55
56
  export declare const closeOverlay: (name: string) => void;
56
57
  export declare const toggleOverlay: (name: string, options: any) => void;
57
- /**
58
- * Options for popup
59
- *
60
- * @typedef {Object} PopupOptions
61
- * @property {String} [title] - popup title
62
- * @property {'center' | 'next' | 'edge'} [hovering] - hovering position (default: 'center'). 'edge' : edge of the HEADERBAR, 'next' : next of the clicked position.
63
- * @property {'large' | 'medium' | small'} [size] - popup size
64
- * @property {Boolean} [closable] - set whether the close 'X' button is shown on top-right most position (default true)
65
- * @property {Boolean} [escapable] - set whether the close popup with 'ESC' key (default true)
66
- * @property {Boolean} [backdrop] - set whether to do background masking around the pop-up. If true, it becomes modal (default true)
67
- */
68
- export declare type PopupOptions = {
69
- title?: string;
70
- hovering?: 'center' | 'next' | 'edge';
71
- size?: 'large' | 'medium' | 'small';
72
- closable?: boolean;
73
- escapable?: boolean;
74
- backdrop?: boolean;
75
- help?: string;
76
- };
77
- /**
78
- * Popup handle object that will be returned openPopup
79
- *
80
- * @typedef {Object} PopupHandle
81
- * @property {String} [name] - popup instance name
82
- * @property {Function} [close] - call this function to close the popup.
83
- * @property {Boolean} [closed] - state telling whether the popup is closed or not.
84
- * @property {Function} [onclosed] - set callback function on close. It will be called when the popup about to close.
85
- */
86
- export declare type PopupHandle = {
87
- name: string;
88
- close: () => void;
89
- closed: boolean;
90
- onclosed?: () => void;
91
- };
92
58
  /**
93
59
  * open popup in operato application environment
94
60
  *
@@ -96,5 +62,4 @@ export declare type PopupHandle = {
96
62
  * @param {PopupOptions} options
97
63
  * @returns popup handle object. This object is used to close the popup.
98
64
  */
99
- export declare const layoutOpenPopup: (template: TemplateResult, options?: PopupOptions) => PopupHandle;
100
- export declare const openPopup: (template: TemplateResult, options: PopupOptions) => PopupHandle;
65
+ export declare const openPopup: (template: TemplateResult, options?: PopupOptions) => PopupHandle;
@@ -1,4 +1,4 @@
1
- import { OxPopup } from '@operato/popup';
1
+ import { setOpenPopupImplementation } from '@operato/popup';
2
2
  import { store } from '@operato/shell';
3
3
  export const appendViewpart = ({ name, viewpart, position }) => {
4
4
  store.dispatch({
@@ -122,7 +122,7 @@ var popupSequence = 0;
122
122
  * @param {PopupOptions} options
123
123
  * @returns popup handle object. This object is used to close the popup.
124
124
  */
125
- export const layoutOpenPopup = (template, options = {}) => {
125
+ export const openPopup = (template, options = {}) => {
126
126
  var name = `$popup-${popupSequence++}`;
127
127
  appendViewpart({
128
128
  name,
@@ -157,31 +157,5 @@ export const layoutOpenPopup = (template, options = {}) => {
157
157
  });
158
158
  return popup;
159
159
  };
160
- /**
161
- * open popup out of operato application environment
162
- *
163
- * @param {*} template html template to be rendered inside the popup
164
- * @param {PopupOptions} options
165
- * @returns popup handle object. This object is used to close the popup.
166
- */
167
- const liteOpenPopup = (template, options = {}) => {
168
- history.pushState({}, '', location.href);
169
- const popup = OxPopup.open({
170
- template,
171
- width: '90%',
172
- height: '90%'
173
- });
174
- popup.style.setProperty('--overlay-center-normal-width', '100%');
175
- popup.style.setProperty('--overlay-center-normal-height', '100%');
176
- requestAnimationFrame(() => {
177
- dispatchEvent(new Event('resize'));
178
- });
179
- return {
180
- close: () => {
181
- popup.close();
182
- history.back();
183
- }
184
- };
185
- };
186
- export const openPopup = 'operato' in window ? liteOpenPopup : layoutOpenPopup;
160
+ setOpenPopupImplementation(openPopup);
187
161
  //# sourceMappingURL=layout.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"layout.js","sourceRoot":"","sources":["../../../src/actions/layout.ts"],"names":[],"mappings":"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","sourcesContent":["import { OxPopup } from '@operato/popup'\nimport { TemplateResult } from 'lit'\nimport { store } from '@operato/shell'\n\nexport type Viewpart = {\n hovering?: 'center' | 'edge' | 'next'\n show?: boolean\n size?: string\n title?: string\n help?: string\n level?: VIEWPART_LEVEL\n closable?: boolean\n backdrop?: boolean\n temporary?: boolean /* auto remove */\n resizable?: boolean\n template?: TemplateResult\n position?: VIEWPART_POSITION\n templateProperties?: any\n}\n\nexport type AppendViewpartAction = {\n name: string\n viewpart: Viewpart\n position: VIEWPART_POSITION\n}\n\nexport const appendViewpart = ({ name, viewpart, position }: AppendViewpartAction) => {\n store.dispatch({\n type: APPEND_VIEWPART,\n name,\n viewpart: {\n ...viewpart,\n show: viewpart.hovering && viewpart.show ? false : viewpart.show\n },\n position\n })\n\n if (viewpart.hovering && viewpart.show) {\n openOverlay(name)\n }\n}\n\nexport const removeViewpart = (name: string) => {\n store.dispatch({\n type: REMOVE_VIEWPART,\n name\n })\n}\n\nexport const updateViewpart = (name: string, override: any) => {\n store.dispatch({\n type: UPDATE_VIEWPART,\n name,\n override\n })\n}\n\nexport const APPEND_VIEWPART = 'APPEND_VIEWPART'\nexport const REMOVE_VIEWPART = 'REMOVE_VIEWPART'\nexport const UPDATE_VIEWPART = 'UPDATE_VIEWPART'\n\nexport enum VIEWPART_POSITION {\n HEADERBAR = 'headerbar',\n NAVBAR = 'navbar',\n ASIDEBAR = 'asidebar',\n FOOTERBAR = 'footerbar'\n}\n\n/**\n * 각 뷰파트 스택의 순서를 정하는 속성이다.\n * 뷰파트의 level 속성에 정의되도록 한다.\n * 맨 위/아래/좌측/우측에 보여져야하는 뷰파트는 TOPMOST 속성을 갖도록 하고,\n * 쌓인 순서대로 보여지는 뷰파트는 NORMAL 속성을 갖도록 한다.\n * default 속성은 NORMAL이다.\n */\nexport enum VIEWPART_LEVEL {\n TOPMOST = 'TOPMOST',\n NORMAL = 'NORMAL'\n}\n\nexport const TOOL_POSITION = {\n FRONT_END: 'FRONT_END',\n FRONT: 'FRONT',\n CENTER: 'CENTER',\n REAR: 'REAR',\n REAR_END: 'REAR_END'\n} as const\n\nexport const UPDATE_VIEWPORT_WIDTH = 'UPDATE_VIEWPORT_WIDTH'\n\nexport const updateLayout = (wide?: boolean) => {\n store.dispatch({\n type: UPDATE_VIEWPORT_WIDTH,\n width: wide ? 'WIDE' : 'NARROW'\n })\n}\n\n/* overlay navigation */\nvar overlaySequence = 0\n\nexport const openOverlay = (name: string, options?: any, silent?: boolean) => {\n var beforeState = history.state\n var beforeOverlay = beforeState ? beforeState.overlay : undefined\n var beforeSequence = !beforeOverlay || beforeOverlay.sequence === undefined ? overlaySequence : beforeOverlay.sequence\n var afterSequence = (overlaySequence = beforeSequence + 1)\n\n /* store의 layout의 내용을 변경한다. */\n if (!silent && options) {\n store.dispatch({\n type: UPDATE_VIEWPART,\n name,\n override: options\n })\n }\n\n /*\n * 현재 history.state를 확인하고, overlay의 이름이 같은\n * history에 추가하고 open 동작을 실행한다.\n */\n var afterState = Object.assign({}, beforeState || {}, {\n overlay: { name, sequence: afterSequence, escapable: options?.escapable !== false }\n })\n\n history.pushState(afterState, '', location.href)\n\n window.dispatchEvent(\n new CustomEvent('popstate', {\n detail: { state: afterState }\n })\n )\n}\n\nexport const closeOverlay = (name: string) => {\n /*\n * 실제로 overlay를 close하는 작업은 window.onpopstate 핸들러에서 한다.\n */\n history.back()\n}\n\nexport const toggleOverlay = (name: string, options: any) => {\n var { name: beforeOverlayName } = (history.state && history.state.overlay) || {}\n\n if (beforeOverlayName == name) {\n closeOverlay(name)\n } else {\n openOverlay(name, options)\n }\n}\n\n/*\n * popup handling\n *\n * popup은 overlay의 특별한 형태이다.\n * popup은 open될 때, viewpart를 append 하며, close 될 때 viewpart를 remove 한다.\n * - name: '$popup-${popupSequence}'\n * - position: VIEWPART_POSITION_HEADERBAR\n * - hovering: 'center' | 'next' | 'edge'\n */\nvar popupSequence = 0\n\n/**\n * Options for popup\n *\n * @typedef {Object} PopupOptions\n * @property {String} [title] - popup title\n * @property {'center' | 'next' | 'edge'} [hovering] - hovering position (default: 'center'). 'edge' : edge of the HEADERBAR, 'next' : next of the clicked position.\n * @property {'large' | 'medium' | small'} [size] - popup size\n * @property {Boolean} [closable] - set whether the close 'X' button is shown on top-right most position (default true)\n * @property {Boolean} [escapable] - set whether the close popup with 'ESC' key (default true)\n * @property {Boolean} [backdrop] - set whether to do background masking around the pop-up. If true, it becomes modal (default true)\n */\nexport type PopupOptions = {\n title?: string\n hovering?: 'center' | 'next' | 'edge'\n size?: 'large' | 'medium' | 'small'\n closable?: boolean\n escapable?: boolean\n backdrop?: boolean\n help?: string\n}\n\n/**\n * Popup handle object that will be returned openPopup\n *\n * @typedef {Object} PopupHandle\n * @property {String} [name] - popup instance name\n * @property {Function} [close] - call this function to close the popup.\n * @property {Boolean} [closed] - state telling whether the popup is closed or not.\n * @property {Function} [onclosed] - set callback function on close. It will be called when the popup about to close.\n */\nexport type PopupHandle = {\n name: string\n close: () => void\n closed: boolean\n onclosed?: () => void\n}\n\n/**\n * open popup in operato application environment\n *\n * @param {*} template html template to be rendered inside the popup\n * @param {PopupOptions} options\n * @returns popup handle object. This object is used to close the popup.\n */\nexport const layoutOpenPopup = (template: TemplateResult, options: PopupOptions = {}): PopupHandle => {\n var name = `$popup-${popupSequence++}`\n\n appendViewpart({\n name,\n viewpart: {\n hovering: 'center',\n closable: true,\n ...options,\n backdrop: true,\n show: false,\n temporary: true /* auto remove */,\n template\n },\n position: VIEWPART_POSITION.HEADERBAR\n })\n\n openOverlay(name, options, true)\n\n var popup = {\n name,\n close: () => {\n /* 현재 overlay state를 확인해서, 자신인 경우에 history.back() 한다. */\n var state = history.state\n var overlay = (state || {}).overlay\n\n overlay && overlay.name == name && history.back()\n },\n closed: false\n } as PopupHandle\n\n document.addEventListener('overlay-closed', function listener(e) {\n if (name == (e as CustomEvent).detail) {\n popup.closed = true\n popup.onclosed && popup.onclosed()\n document.removeEventListener('overlay-closed', listener)\n }\n })\n\n return popup\n}\n\n/**\n * open popup out of operato application environment\n *\n * @param {*} template html template to be rendered inside the popup\n * @param {PopupOptions} options\n * @returns popup handle object. This object is used to close the popup.\n */\nconst liteOpenPopup = (template: TemplateResult, options: PopupOptions = {}): PopupHandle => {\n history.pushState({}, '', location.href)\n\n const popup = OxPopup.open({\n template,\n width: '90%',\n height: '90%'\n })\n\n popup.style.setProperty('--overlay-center-normal-width', '100%')\n popup.style.setProperty('--overlay-center-normal-height', '100%')\n\n requestAnimationFrame(() => {\n dispatchEvent(new Event('resize'))\n })\n\n return {\n close: () => {\n popup.close()\n history.back()\n }\n } as PopupHandle\n}\n\nexport const openPopup: (template: TemplateResult, options: PopupOptions) => PopupHandle =\n 'operato' in window ? liteOpenPopup : layoutOpenPopup\n"]}
1
+ {"version":3,"file":"layout.js","sourceRoot":"","sources":["../../../src/actions/layout.ts"],"names":[],"mappings":"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","sourcesContent":["import { TemplateResult } from 'lit'\n\nimport { PopupHandle, PopupOptions, setOpenPopupImplementation } from '@operato/popup'\nimport { store } from '@operato/shell'\n\nexport type Viewpart = {\n hovering?: 'center' | 'edge' | 'next'\n show?: boolean\n size?: string\n title?: string\n help?: string\n level?: VIEWPART_LEVEL\n closable?: boolean\n backdrop?: boolean\n temporary?: boolean /* auto remove */\n resizable?: boolean\n template?: TemplateResult\n position?: VIEWPART_POSITION\n templateProperties?: any\n}\n\nexport type AppendViewpartAction = {\n name: string\n viewpart: Viewpart\n position: VIEWPART_POSITION\n}\n\nexport const appendViewpart = ({ name, viewpart, position }: AppendViewpartAction) => {\n store.dispatch({\n type: APPEND_VIEWPART,\n name,\n viewpart: {\n ...viewpart,\n show: viewpart.hovering && viewpart.show ? false : viewpart.show\n },\n position\n })\n\n if (viewpart.hovering && viewpart.show) {\n openOverlay(name)\n }\n}\n\nexport const removeViewpart = (name: string) => {\n store.dispatch({\n type: REMOVE_VIEWPART,\n name\n })\n}\n\nexport const updateViewpart = (name: string, override: any) => {\n store.dispatch({\n type: UPDATE_VIEWPART,\n name,\n override\n })\n}\n\nexport const APPEND_VIEWPART = 'APPEND_VIEWPART'\nexport const REMOVE_VIEWPART = 'REMOVE_VIEWPART'\nexport const UPDATE_VIEWPART = 'UPDATE_VIEWPART'\n\nexport enum VIEWPART_POSITION {\n HEADERBAR = 'headerbar',\n NAVBAR = 'navbar',\n ASIDEBAR = 'asidebar',\n FOOTERBAR = 'footerbar'\n}\n\n/**\n * 각 뷰파트 스택의 순서를 정하는 속성이다.\n * 뷰파트의 level 속성에 정의되도록 한다.\n * 맨 위/아래/좌측/우측에 보여져야하는 뷰파트는 TOPMOST 속성을 갖도록 하고,\n * 쌓인 순서대로 보여지는 뷰파트는 NORMAL 속성을 갖도록 한다.\n * default 속성은 NORMAL이다.\n */\nexport enum VIEWPART_LEVEL {\n TOPMOST = 'TOPMOST',\n NORMAL = 'NORMAL'\n}\n\nexport const TOOL_POSITION = {\n FRONT_END: 'FRONT_END',\n FRONT: 'FRONT',\n CENTER: 'CENTER',\n REAR: 'REAR',\n REAR_END: 'REAR_END'\n} as const\n\nexport const UPDATE_VIEWPORT_WIDTH = 'UPDATE_VIEWPORT_WIDTH'\n\nexport const updateLayout = (wide?: boolean) => {\n store.dispatch({\n type: UPDATE_VIEWPORT_WIDTH,\n width: wide ? 'WIDE' : 'NARROW'\n })\n}\n\n/* overlay navigation */\nvar overlaySequence = 0\n\nexport const openOverlay = (name: string, options?: any, silent?: boolean) => {\n var beforeState = history.state\n var beforeOverlay = beforeState ? beforeState.overlay : undefined\n var beforeSequence = !beforeOverlay || beforeOverlay.sequence === undefined ? overlaySequence : beforeOverlay.sequence\n var afterSequence = (overlaySequence = beforeSequence + 1)\n\n /* store의 layout의 내용을 변경한다. */\n if (!silent && options) {\n store.dispatch({\n type: UPDATE_VIEWPART,\n name,\n override: options\n })\n }\n\n /*\n * 현재 history.state를 확인하고, overlay의 이름이 같은\n * history에 추가하고 open 동작을 실행한다.\n */\n var afterState = Object.assign({}, beforeState || {}, {\n overlay: { name, sequence: afterSequence, escapable: options?.escapable !== false }\n })\n\n history.pushState(afterState, '', location.href)\n\n window.dispatchEvent(\n new CustomEvent('popstate', {\n detail: { state: afterState }\n })\n )\n}\n\nexport const closeOverlay = (name: string) => {\n /*\n * 실제로 overlay를 close하는 작업은 window.onpopstate 핸들러에서 한다.\n */\n history.back()\n}\n\nexport const toggleOverlay = (name: string, options: any) => {\n var { name: beforeOverlayName } = (history.state && history.state.overlay) || {}\n\n if (beforeOverlayName == name) {\n closeOverlay(name)\n } else {\n openOverlay(name, options)\n }\n}\n\n/*\n * popup handling\n *\n * popup은 overlay의 특별한 형태이다.\n * popup은 open될 때, viewpart를 append 하며, close 될 때 viewpart를 remove 한다.\n * - name: '$popup-${popupSequence}'\n * - position: VIEWPART_POSITION_HEADERBAR\n * - hovering: 'center' | 'next' | 'edge'\n */\nvar popupSequence = 0\n\n/**\n * open popup in operato application environment\n *\n * @param {*} template html template to be rendered inside the popup\n * @param {PopupOptions} options\n * @returns popup handle object. This object is used to close the popup.\n */\nexport const openPopup = (template: TemplateResult, options: PopupOptions = {}): PopupHandle => {\n var name = `$popup-${popupSequence++}`\n\n appendViewpart({\n name,\n viewpart: {\n hovering: 'center',\n closable: true,\n ...options,\n backdrop: true,\n show: false,\n temporary: true /* auto remove */,\n template\n },\n position: VIEWPART_POSITION.HEADERBAR\n })\n\n openOverlay(name, options, true)\n\n var popup = {\n name,\n close: () => {\n /* 현재 overlay state를 확인해서, 자신인 경우에 history.back() 한다. */\n var state = history.state\n var overlay = (state || {}).overlay\n\n overlay && overlay.name == name && history.back()\n },\n closed: false\n } as PopupHandle\n\n document.addEventListener('overlay-closed', function listener(e) {\n if (name == (e as CustomEvent).detail) {\n popup.closed = true\n popup.onclosed && popup.onclosed()\n document.removeEventListener('overlay-closed', listener)\n }\n })\n\n return popup\n}\n\nsetOpenPopupImplementation(openPopup)\n"]}
@@ -1,4 +1,5 @@
1
1
  import './initializer';
2
+ export { PopupHandle, PopupOptions } from '@operato/popup';
2
3
  export * from './layouts/ox-snack-bar.js';
3
4
  export * from './layouts/ox-header-bar.js';
4
5
  export * from './layouts/ox-nav-bar.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAA;AAEtB,cAAc,2BAA2B,CAAA;AACzC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,yBAAyB,CAAA;AACvC,cAAc,2BAA2B,CAAA;AACzC,cAAc,4BAA4B,CAAA;AAE1C,cAAc,kBAAkB,CAAA;AAChC,cAAc,oBAAoB,CAAA","sourcesContent":["import './initializer'\n\nexport * from './layouts/ox-snack-bar.js'\nexport * from './layouts/ox-header-bar.js'\nexport * from './layouts/ox-nav-bar.js'\nexport * from './layouts/ox-aside-bar.js'\nexport * from './layouts/ox-footer-bar.js'\n\nexport * from './actions/layout'\nexport * from './actions/snackbar'\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAA;AAItB,cAAc,2BAA2B,CAAA;AACzC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,yBAAyB,CAAA;AACvC,cAAc,2BAA2B,CAAA;AACzC,cAAc,4BAA4B,CAAA;AAE1C,cAAc,kBAAkB,CAAA;AAChC,cAAc,oBAAoB,CAAA","sourcesContent":["import './initializer'\n\nexport { PopupHandle, PopupOptions } from '@operato/popup'\n\nexport * from './layouts/ox-snack-bar.js'\nexport * from './layouts/ox-header-bar.js'\nexport * from './layouts/ox-nav-bar.js'\nexport * from './layouts/ox-aside-bar.js'\nexport * from './layouts/ox-footer-bar.js'\n\nexport * from './actions/layout'\nexport * from './actions/snackbar'\n"]}
@@ -1,2 +1,2 @@
1
- import '../components/ox-floating-overlay.js';
1
+ import '@operato/popup/ox-floating-overlay.js';
2
2
  import '../components/ox-resize-splitter.js';
@@ -1,5 +1,5 @@
1
1
  import { __decorate } from "tslib";
2
- import '../components/ox-floating-overlay.js';
2
+ import '@operato/popup/ox-floating-overlay.js';
3
3
  import '../components/ox-resize-splitter.js';
4
4
  import { css, html, LitElement } from 'lit';
5
5
  import { customElement, property, state } from 'lit/decorators.js';
@@ -43,6 +43,7 @@ let AsideBar = class AsideBar extends connect(store)(LitElement) {
43
43
  .help=${asidebar.help}
44
44
  .closable=${asidebar.closable}
45
45
  .templateProperties=${asidebar.templateProperties}
46
+ .historical=${true}
46
47
  >${asidebar.template}</ox-floating-overlay
47
48
  >
48
49
  `
@@ -1 +1 @@
1
- {"version":3,"file":"ox-aside-bar.js","sourceRoot":"","sources":["../../../src/layouts/ox-aside-bar.ts"],"names":[],"mappings":"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","sourcesContent":["import '../components/ox-floating-overlay.js'\nimport '../components/ox-resize-splitter.js'\n\nimport { css, html, LitElement } from 'lit'\nimport { customElement, property, state } from 'lit/decorators.js'\nimport { connect } from 'pwa-helpers/connect-mixin.js'\n\nimport { ScrollbarStyles } from '@operato/styles'\n\nimport { Viewpart, VIEWPART_LEVEL } from '../actions/layout.js'\nimport store from '../initializer.js'\n\n@customElement('ox-aside-bar')\nclass AsideBar extends connect(store)(LitElement) {\n static styles = [\n ScrollbarStyles,\n css`\n :host {\n display: flex;\n flex-flow: row-reverse nowrap;\n align-items: stretch;\n\n position: relative;\n }\n\n *[asidebar] {\n display: block;\n overflow-y: auto;\n }\n `\n ]\n\n @property({ type: Boolean, attribute: 'fullbleed' }) fullbleed: boolean = false\n\n @state() viewparts: { [name: string]: Viewpart } = {}\n\n private _startWidth: number = 0\n\n render() {\n var viewparts = this.viewparts\n var asidebars = Object.keys(viewparts)\n .map(name => {\n return {\n name,\n ...viewparts[name]\n }\n })\n .filter(viewpart => viewpart.position == 'asidebar' && (!this.fullbleed || viewpart.hovering))\n\n asidebars = [\n ...asidebars.filter(viewpart => viewpart.level == VIEWPART_LEVEL.TOPMOST),\n ...asidebars.filter(viewpart => viewpart.level !== VIEWPART_LEVEL.TOPMOST)\n ]\n\n return html`\n ${asidebars.map(asidebar =>\n !asidebar.show\n ? html``\n : asidebar.hovering\n ? html`\n <ox-floating-overlay\n .backdrop=${asidebar.backdrop}\n direction=\"left\"\n .hovering=${asidebar.hovering}\n .name=${asidebar.name}\n .size=${asidebar.size}\n .title=${asidebar.title}\n .help=${asidebar.help}\n .closable=${asidebar.closable}\n .templateProperties=${asidebar.templateProperties}\n >${asidebar.template}</ox-floating-overlay\n >\n `\n : html`\n <div asidebar>${asidebar.template}</div>\n ${asidebar.resizable\n ? html`\n <ox-resize-splitter\n @splitter-dragstart=${(e: CustomEvent) => this.resizeStart(e)}\n @splitter-drag=${(e: CustomEvent) => this.resizeDrag(e)}\n vertical\n ></ox-resize-splitter>\n `\n : html``}\n `\n )}\n `\n }\n\n resizeStart(e: CustomEvent) {\n this._startWidth = ((e.target as HTMLElement)?.previousElementSibling as HTMLElement)?.offsetWidth\n }\n\n resizeDrag(e: CustomEvent) {\n var delta = e.detail\n\n var x = ((e.target as HTMLElement)?.previousElementSibling as HTMLElement)?.querySelectorAll('*')\n Array.from(x).forEach(ele => {\n ;(ele as HTMLElement).style.width = `${this._startWidth - delta.x}px`\n })\n }\n\n stateChanged(state: any) {\n this.viewparts = state.layout.viewparts || {}\n }\n}\n"]}
1
+ {"version":3,"file":"ox-aside-bar.js","sourceRoot":"","sources":["../../../src/layouts/ox-aside-bar.ts"],"names":[],"mappings":"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","sourcesContent":["import '@operato/popup/ox-floating-overlay.js'\nimport '../components/ox-resize-splitter.js'\n\nimport { css, html, LitElement } from 'lit'\nimport { customElement, property, state } from 'lit/decorators.js'\nimport { connect } from 'pwa-helpers/connect-mixin.js'\n\nimport { ScrollbarStyles } from '@operato/styles'\n\nimport { Viewpart, VIEWPART_LEVEL } from '../actions/layout.js'\nimport store from '../initializer.js'\n\n@customElement('ox-aside-bar')\nclass AsideBar extends connect(store)(LitElement) {\n static styles = [\n ScrollbarStyles,\n css`\n :host {\n display: flex;\n flex-flow: row-reverse nowrap;\n align-items: stretch;\n\n position: relative;\n }\n\n *[asidebar] {\n display: block;\n overflow-y: auto;\n }\n `\n ]\n\n @property({ type: Boolean, attribute: 'fullbleed' }) fullbleed: boolean = false\n\n @state() viewparts: { [name: string]: Viewpart } = {}\n\n private _startWidth: number = 0\n\n render() {\n var viewparts = this.viewparts\n var asidebars = Object.keys(viewparts)\n .map(name => {\n return {\n name,\n ...viewparts[name]\n }\n })\n .filter(viewpart => viewpart.position == 'asidebar' && (!this.fullbleed || viewpart.hovering))\n\n asidebars = [\n ...asidebars.filter(viewpart => viewpart.level == VIEWPART_LEVEL.TOPMOST),\n ...asidebars.filter(viewpart => viewpart.level !== VIEWPART_LEVEL.TOPMOST)\n ]\n\n return html`\n ${asidebars.map(asidebar =>\n !asidebar.show\n ? html``\n : asidebar.hovering\n ? html`\n <ox-floating-overlay\n .backdrop=${asidebar.backdrop}\n direction=\"left\"\n .hovering=${asidebar.hovering}\n .name=${asidebar.name}\n .size=${asidebar.size}\n .title=${asidebar.title}\n .help=${asidebar.help}\n .closable=${asidebar.closable}\n .templateProperties=${asidebar.templateProperties}\n .historical=${true}\n >${asidebar.template}</ox-floating-overlay\n >\n `\n : html`\n <div asidebar>${asidebar.template}</div>\n ${asidebar.resizable\n ? html`\n <ox-resize-splitter\n @splitter-dragstart=${(e: CustomEvent) => this.resizeStart(e)}\n @splitter-drag=${(e: CustomEvent) => this.resizeDrag(e)}\n vertical\n ></ox-resize-splitter>\n `\n : html``}\n `\n )}\n `\n }\n\n resizeStart(e: CustomEvent) {\n this._startWidth = ((e.target as HTMLElement)?.previousElementSibling as HTMLElement)?.offsetWidth\n }\n\n resizeDrag(e: CustomEvent) {\n var delta = e.detail\n\n var x = ((e.target as HTMLElement)?.previousElementSibling as HTMLElement)?.querySelectorAll('*')\n Array.from(x).forEach(ele => {\n ;(ele as HTMLElement).style.width = `${this._startWidth - delta.x}px`\n })\n }\n\n stateChanged(state: any) {\n this.viewparts = state.layout.viewparts || {}\n }\n}\n"]}
@@ -1,2 +1,2 @@
1
- import '../components/ox-floating-overlay.js';
1
+ import '@operato/popup/ox-floating-overlay.js';
2
2
  import '../components/ox-resize-splitter.js';
@@ -1,5 +1,5 @@
1
1
  import { __decorate } from "tslib";
2
- import '../components/ox-floating-overlay.js';
2
+ import '@operato/popup/ox-floating-overlay.js';
3
3
  import '../components/ox-resize-splitter.js';
4
4
  import { css, html, LitElement } from 'lit';
5
5
  import { customElement, property, state } from 'lit/decorators.js';
@@ -42,6 +42,7 @@ let FooterBar = class FooterBar extends connect(store)(LitElement) {
42
42
  .size=${footerbar.size}
43
43
  .closable=${footerbar.closable}
44
44
  .templateProperties=${footerbar.templateProperties}
45
+ .historical=${true}
45
46
  >${footerbar.template}</ox-floating-overlay
46
47
  >
47
48
  `