@onereach/ui-components 2.72.0 → 2.72.1-beta.2249.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. package/dist/bundled/v2/OrSidebar-efd4b98a.js +464 -0
  2. package/dist/bundled/v2/components/index.js +1 -1
  3. package/dist/bundled/v2/components/or-sidebar-v3/OrSidebar.stories3.d.ts +36 -1
  4. package/dist/bundled/v2/components/or-sidebar-v3/OrSidebar.vue.d.ts +49 -4
  5. package/dist/bundled/v2/components/or-sidebar-v3/OrSidebarCollapseButton.stories3.d.ts +12 -0
  6. package/dist/bundled/v2/components/or-sidebar-v3/OrSidebarCollapseButton.vue.d.ts +53 -0
  7. package/dist/bundled/v2/components/or-sidebar-v3/index.js +12 -1
  8. package/dist/bundled/v2/components/or-sidebar-v3/styles.d.ts +9 -1
  9. package/dist/bundled/v2/index.js +2 -2
  10. package/dist/bundled/v3/OrSidebar.vue_vue_type_script_lang-66f8f0fd.js +356 -0
  11. package/dist/bundled/v3/components/index.js +1 -1
  12. package/dist/bundled/v3/components/or-sidebar-v3/OrSidebar.stories3.d.ts +36 -1
  13. package/dist/bundled/v3/components/or-sidebar-v3/OrSidebar.vue.d.ts +49 -4
  14. package/dist/bundled/v3/components/or-sidebar-v3/OrSidebarCollapseButton.stories3.d.ts +12 -0
  15. package/dist/bundled/v3/components/or-sidebar-v3/OrSidebarCollapseButton.vue.d.ts +53 -0
  16. package/dist/bundled/v3/components/or-sidebar-v3/index.js +14 -1
  17. package/dist/bundled/v3/components/or-sidebar-v3/styles.d.ts +9 -1
  18. package/dist/bundled/v3/index.js +25 -9
  19. package/dist/esm/v2/OrSidebar-b7202f16.js +461 -0
  20. package/dist/esm/v2/components/index.js +1 -1
  21. package/dist/esm/v2/components/or-sidebar-v3/OrSidebar.stories3.d.ts +36 -1
  22. package/dist/esm/v2/components/or-sidebar-v3/OrSidebar.vue.d.ts +49 -4
  23. package/dist/esm/v2/components/or-sidebar-v3/OrSidebarCollapseButton.stories3.d.ts +12 -0
  24. package/dist/esm/v2/components/or-sidebar-v3/OrSidebarCollapseButton.vue.d.ts +53 -0
  25. package/dist/esm/v2/components/or-sidebar-v3/index.js +12 -1
  26. package/dist/esm/v2/components/or-sidebar-v3/styles.d.ts +9 -1
  27. package/dist/esm/v2/index.js +1 -1
  28. package/dist/esm/v3/OrSidebar-3567338f.js +396 -0
  29. package/dist/esm/v3/components/index.js +1 -1
  30. package/dist/esm/v3/components/or-sidebar-v3/OrSidebar.stories3.d.ts +36 -1
  31. package/dist/esm/v3/components/or-sidebar-v3/OrSidebar.vue.d.ts +49 -4
  32. package/dist/esm/v3/components/or-sidebar-v3/OrSidebarCollapseButton.stories3.d.ts +12 -0
  33. package/dist/esm/v3/components/or-sidebar-v3/OrSidebarCollapseButton.vue.d.ts +53 -0
  34. package/dist/esm/v3/components/or-sidebar-v3/index.js +11 -1
  35. package/dist/esm/v3/components/or-sidebar-v3/styles.d.ts +9 -1
  36. package/dist/esm/v3/index.js +1 -1
  37. package/package.json +2 -3
  38. package/src/components/or-sidebar-v3/OrSidebar.docs.mdx +6 -0
  39. package/src/components/or-sidebar-v3/OrSidebar.stories3.ts +253 -12
  40. package/src/components/or-sidebar-v3/OrSidebar.vue +130 -23
  41. package/src/components/or-sidebar-v3/OrSidebarCollapseButton.stories3.ts +48 -0
  42. package/src/components/or-sidebar-v3/OrSidebarCollapseButton.vue +74 -0
  43. package/src/components/or-sidebar-v3/styles.ts +164 -9
  44. package/dist/bundled/v2/OrSidebar-c95ef614.js +0 -230
  45. package/dist/bundled/v3/OrSidebar.vue_vue_type_script_lang-ce0b152c.js +0 -181
  46. package/dist/esm/v2/OrSidebar-fabc7bc9.js +0 -228
  47. package/dist/esm/v3/OrSidebar-a62972f5.js +0 -206
@@ -0,0 +1,356 @@
1
+ import { useDraggable, useElementBounding } from '@vueuse/core';
2
+ import _ from 'lodash';
3
+ import { defineComponent, ref, computed, resolveComponent, openBlock, createElementBlock, normalizeClass, createVNode, useSlots, watch } from 'vue';
4
+ import './OrIconButton-e0566ecf.js';
5
+ import { s as script$2 } from './OrIconButton.vue_vue_type_script_lang-7d1c3fe1.js';
6
+
7
+ var OrSidebarPlacement;
8
+ (function (OrSidebarPlacement) {
9
+ OrSidebarPlacement["left"] = "left";
10
+ OrSidebarPlacement["right"] = "right";
11
+ })(OrSidebarPlacement || (OrSidebarPlacement = {}));
12
+
13
+ const SidebarRoot = [
14
+ // Position
15
+ 'relative',
16
+ // Layout
17
+ 'flex', 'flex-row', 'shrink-0',
18
+ // Box
19
+ 'min-w-0', 'h-auto', 'p-0',
20
+ // Theme
21
+ 'bg-background', 'dark:bg-background-dark'];
22
+ const SidebarBar = [
23
+ // Position
24
+ 'relative',
25
+ // Layout
26
+ 'flex', 'flex-col', 'shrink-0', 'grow',
27
+ // Box
28
+ 'min-h-0', 'p-0',
29
+ // Theme
30
+ 'text-on-background', 'dark:text-on-background-dark',
31
+ // Transition
32
+ 'transition-[width]'];
33
+ const SidebarToolbar = [
34
+ // Position
35
+ 'relative',
36
+ // Layout
37
+ 'flex', 'flex-col', 'shrink-0', 'grow', 'overflow-auto', 'items-center',
38
+ // Sizing
39
+ 'gap-md',
40
+ // Box
41
+ 'min-h-0', 'min-w-xl', 'p-[6px]', 'py-md+',
42
+ // Theme
43
+ 'text-outline', 'dark:text-outline-dark'];
44
+ const CollapsibleSidebarToolbar = ['pt-[56px]'];
45
+ const SidebarSides = {
46
+ [OrSidebarPlacement.left]: [
47
+ // Borders
48
+ 'border-r-[1px]', 'border-r-solid', 'border-r-outline-variant dark:border-r-outline-variant-dark'],
49
+ [OrSidebarPlacement.right]: [
50
+ // Borders
51
+ 'border-l-[1px]', 'border-l-solid', 'border-l-outline-variant dark:border-l-outline-variant-dark']
52
+ };
53
+ const SidebarToolbarSides = {
54
+ [OrSidebarPlacement.left]: [
55
+ // Borders
56
+ 'border-r-[1px]', 'border-r-solid', 'border-r-outline-variant dark:border-r-outline-variant-dark'],
57
+ [OrSidebarPlacement.right]: [
58
+ // Borders
59
+ 'border-l-[1px]', 'border-l-solid', 'border-l-outline-variant dark:border-l-outline-variant-dark']
60
+ };
61
+ const SidebarResize = [
62
+ // Position
63
+ 'absolute', 'inset-y-none', 'z-[1]',
64
+ // Box
65
+ 'w-sm+', 'h-[100%]',
66
+ // Cursor
67
+ 'cursor-ew-resize'];
68
+ const SidebarResizeSides = {
69
+ [OrSidebarPlacement.left]: [
70
+ // Position
71
+ '-right-[1px]',
72
+ // Borders
73
+ 'hover:border-r-2', 'hover:border-r-primary-hover hover:dark:border-r-primary-hover-dark',
74
+ // Transition
75
+ 'transition-[border-right]'],
76
+ [OrSidebarPlacement.right]: [
77
+ // Position
78
+ '-left-[1px]',
79
+ // Borders
80
+ 'hover:border-l-2', 'hover:border-l-primary-hover hover:dark:border-l-primary-hover-dark',
81
+ // Transition
82
+ 'transition-[border-left]']
83
+ };
84
+ const SidebarCollapseButton = [
85
+ // Position
86
+ 'absolute', 'top-md', 'inset-y-none', 'z-[1]'];
87
+ const SidebarCollapseButtonSides = {
88
+ [OrSidebarPlacement.left]: [
89
+ // Position
90
+ '-right-[12px]'],
91
+ [OrSidebarPlacement.right]: [
92
+ // Position
93
+ '-left-[12px]']
94
+ };
95
+ const SidebarResizingSides = {
96
+ [OrSidebarPlacement.left]: [
97
+ // Borders
98
+ 'border-r-2', 'border-r-primary-hover dark:border-r-primary-hover-dark'],
99
+ [OrSidebarPlacement.right]: [
100
+ // Borders
101
+ 'border-l-2', 'border-l-primary-hover dark:border-l-primary-hover-dark']
102
+ };
103
+ const SidebarMain = [
104
+ // Layout
105
+ 'flex', 'flex-col', 'grow', 'overflow-x-hidden',
106
+ // Box
107
+ 'min-h-0'];
108
+ const SidebarHeader = [
109
+ // Layout
110
+ 'shrink-0', 'overflow-hidden',
111
+ // Sizing
112
+ 'p-md',
113
+ // Typography
114
+ 'typography-headline-2', 'whitespace-nowrap', 'text-ellipsis'];
115
+ const SidebarContent = [
116
+ // Layout
117
+ 'grow', 'overflow-auto',
118
+ // Sizing
119
+ 'p-md'];
120
+ const SidebarFooter = [
121
+ // Layout
122
+ 'shrink-0', 'overflow-x-hidden',
123
+ // Sizing
124
+ 'p-md',
125
+ // Borders
126
+ 'border-t-[1px]', 'border-t-solid', 'border-t-outline-variant dark:border-t-outline-variant-dark'];
127
+ const CollapseButtonContainer = [
128
+ // Box
129
+ 'w-[24px]', 'h-[24px]', 'rounded-full',
130
+ // Theme
131
+ 'text-primary dark:text-primary-dark', 'bg-background dark:bg-background-dark'];
132
+ const CollapseButton = [
133
+ // Box
134
+ 'w-[24px]', 'h-[24px]',
135
+ // Typography
136
+ '!text-[16px]',
137
+ // Borders
138
+ '!border-[1px]', '!border-solid',
139
+ // Theme
140
+ '!text-primary dark:!text-primary-dark', '!bg-background dark:!bg-background-dark', '!border-outline-variant dark:!border-outline-variant-dark', '!outline-none',
141
+ // Theme (hover)
142
+ 'hover:!text-primary hover:dark:!text-primary-dark', 'hover:!bg-primary-opacity-0-08 dark:hover:!bg-primary-opacity-0-08-dark', 'hover:!border-outline dark:hover:!border-outline-dark',
143
+ // Theme (active)
144
+ 'active:!text-primary active:dark:!text-primary-dark', 'active:!bg-primary-opacity-0-12 dark:active:!bg-primary-opacity-0-12-dark', 'active:!border-primary dark:active:!border-primary-dark',
145
+ // Theme (focus)
146
+ 'focus:!text-primary focus:dark:!text-primary-dark', 'focus:!bg-primary-opacity-0-12 dark:focus:!bg-primary-opacity-0-12-dark', 'focus:!border-outline dark:focus:!border-outline-dark',
147
+ // Theme (disabled)
148
+ 'disabled:!text-on-disabled disabled:dark:!text-on-disabled-dark', 'disabled:!bg-background disabled:dark:!bg-background-dark', 'disabled:!border-outline-variant disabled:dark:!border-outline-variant-dark'];
149
+
150
+ var script$1 = defineComponent({
151
+ name: 'OrSidebarCollapseButton',
152
+ components: {
153
+ OrIconButton: script$2
154
+ },
155
+ props: {
156
+ /**
157
+ * Must be `true` if sidebar is collapsed.
158
+ */
159
+ modelValue: {
160
+ type: Boolean,
161
+ default: false
162
+ },
163
+ side: {
164
+ type: String,
165
+ default: OrSidebarPlacement.right,
166
+ validator: value => _.includes(_.values(OrSidebarPlacement), value)
167
+ }
168
+ },
169
+ emits: ['update:modelValue'],
170
+ expose: ['root'],
171
+ setup(props) {
172
+ // Refs
173
+ const root = ref();
174
+ const rootStyles = computed(() => ['or-sidebar-collapse-button', ...CollapseButtonContainer]);
175
+ const buttonStyles = computed(() => [...CollapseButton]);
176
+ const icon = computed(() => props.side === OrSidebarPlacement.left !== props.modelValue ? 'keyboard_arrow_left' : 'keyboard_arrow_right');
177
+ return {
178
+ root,
179
+ rootStyles,
180
+ buttonStyles,
181
+ icon
182
+ };
183
+ }
184
+ });
185
+
186
+ function render(_ctx, _cache, $props, $setup, $data, $options) {
187
+ const _component_or_icon_button = resolveComponent("or-icon-button");
188
+ return openBlock(), createElementBlock("div", {
189
+ ref: "root",
190
+ class: normalizeClass(_ctx.rootStyles)
191
+ }, [createVNode(_component_or_icon_button, {
192
+ class: normalizeClass(_ctx.buttonStyles),
193
+ icon: {
194
+ icon: _ctx.icon,
195
+ size: 'inherit'
196
+ },
197
+ color: "inherit",
198
+ onClick: _cache[0] || (_cache[0] = $event => _ctx.$emit('update:modelValue', !_ctx.modelValue))
199
+ }, null, 8 /* PROPS */, ["class", "icon"])], 2 /* CLASS */);
200
+ }
201
+
202
+ script$1.render = render;
203
+ script$1.__file = "src/components/or-sidebar-v3/OrSidebarCollapseButton.vue";
204
+
205
+ var script = defineComponent({
206
+ name: 'OrSidebar',
207
+ components: {
208
+ OrSidebarCollapseButton: script$1
209
+ },
210
+ props: {
211
+ width: {
212
+ type: Number,
213
+ default: 320,
214
+ validator: value => _.isNumber(value) && value >= 0
215
+ },
216
+ minimumWidth: {
217
+ type: Number,
218
+ default: 256,
219
+ validator: value => _.isNumber(value) && value >= 0
220
+ },
221
+ maximumWidth: {
222
+ type: Number,
223
+ default: 384,
224
+ validator: value => _.isNumber(value) && value >= 0
225
+ },
226
+ /**
227
+ * User may put the component on the right or the left side of a container.
228
+ * This property mirrors the resizing behavior (drag direction) and styling (horizontal border) of the sidebar.
229
+ *
230
+ * Note: the property doesn't reposition the component in the parent container.
231
+ * @values left, right
232
+ */
233
+ side: {
234
+ type: String,
235
+ default: OrSidebarPlacement.right,
236
+ validator: value => _.includes(_.values(OrSidebarPlacement), value)
237
+ },
238
+ draggable: {
239
+ type: Boolean,
240
+ default: true
241
+ },
242
+ collapsible: {
243
+ type: Boolean,
244
+ default: false
245
+ }
246
+ },
247
+ emits: ['change:width', 'open', 'close'],
248
+ expose: ['root', 'open', 'close'],
249
+ setup(props, {
250
+ emit
251
+ }) {
252
+ // Refs
253
+ const root = ref();
254
+ const resizeBar = ref(null);
255
+ const parentContainer = computed(() => {
256
+ var _a;
257
+ return (_a = root.value) === null || _a === void 0 ? void 0 : _a.parentElement;
258
+ });
259
+ // Slots
260
+ const {
261
+ toolbar: toolbarSlot
262
+ } = useSlots();
263
+ // State
264
+ const startPositionX = ref(0);
265
+ const isResizing = ref(false);
266
+ const isCollapsed = ref(false);
267
+ const maximumWidth = ref(props.maximumWidth || 384);
268
+ const localWidth = ref(props.width >= props.minimumWidth ? props.width : props.minimumWidth);
269
+ const isShowingToolbar = computed(() => !!toolbarSlot);
270
+ // Styles
271
+ const sidebarStyle = computed(() => ({
272
+ width: (isCollapsed.value ? 16 : localWidth.value) + 'px'
273
+ }));
274
+ const rootStyles = computed(() => ['or-sidebar', ...SidebarRoot]);
275
+ const sidebarStyles = computed(() => [...SidebarBar, ...SidebarSides[props.side]]);
276
+ const toolbarStyles = computed(() => [...SidebarToolbar, ...(props.collapsible ? CollapsibleSidebarToolbar : []), ...SidebarToolbarSides[props.side]]);
277
+ const resizeStyles = computed(() => [...SidebarResize, ...SidebarResizeSides[props.side], ...(isResizing.value ? SidebarResizingSides[props.side] : [])]);
278
+ const collapsibleButtonStyles = computed(() => [...SidebarCollapseButton, ...SidebarCollapseButtonSides[props.side]]);
279
+ const mainStyles = computed(() => [...SidebarMain]);
280
+ const headerStyles = computed(() => [...SidebarHeader]);
281
+ const contentStyles = computed(() => [...SidebarContent]);
282
+ const footerStyles = computed(() => [...SidebarFooter]);
283
+ // Effects
284
+ useDraggable(resizeBar, {
285
+ preventDefault: true,
286
+ onStart: (position, event) => {
287
+ document.body.style.cursor = 'ew-resize';
288
+ document.body.style.userSelect = 'none';
289
+ startPositionX.value = event.x;
290
+ isResizing.value = true;
291
+ },
292
+ onMove: position => {
293
+ const delta = (position.x - startPositionX.value) * (props.side === OrSidebarPlacement.left ? -1 : 1);
294
+ const newWidth = localWidth.value - delta;
295
+ localWidth.value = newWidth > maximumWidth.value ? maximumWidth.value : newWidth < props.minimumWidth ? props.minimumWidth : newWidth;
296
+ startPositionX.value = position.x;
297
+ },
298
+ onEnd: () => {
299
+ document.body.style.cursor = '';
300
+ document.body.style.userSelect = '';
301
+ isResizing.value = false;
302
+ }
303
+ });
304
+ // Methods
305
+ function open() {
306
+ isCollapsed.value = false;
307
+ }
308
+ function close() {
309
+ isCollapsed.value = true;
310
+ }
311
+ const {
312
+ width: containerWidth
313
+ } = useElementBounding(parentContainer);
314
+ watch(() => props.width, newValue => {
315
+ if (newValue !== localWidth.value) {
316
+ localWidth.value = newValue > maximumWidth.value ? maximumWidth.value : newValue < props.minimumWidth ? props.minimumWidth : newValue;
317
+ }
318
+ });
319
+ watch(() => props.minimumWidth, newMinimum => {
320
+ if (newMinimum > localWidth.value) localWidth.value = newMinimum;
321
+ });
322
+ watch(() => props.maximumWidth, newMaximum => {
323
+ if (newMaximum < maximumWidth.value) maximumWidth.value = newMaximum;
324
+ });
325
+ watch(containerWidth, newMaximum => {
326
+ if (newMaximum < maximumWidth.value) maximumWidth.value = newMaximum;
327
+ });
328
+ watch(maximumWidth, newMaximum => {
329
+ if (newMaximum < localWidth.value) localWidth.value = newMaximum;
330
+ });
331
+ watch(localWidth, val => emit('change:width', val));
332
+ watch(isCollapsed, val => emit(val ? 'close' : 'open'));
333
+ return {
334
+ root,
335
+ resizeBar,
336
+ isResizing,
337
+ isCollapsed,
338
+ localWidth,
339
+ isShowingToolbar,
340
+ sidebarStyle,
341
+ rootStyles,
342
+ sidebarStyles,
343
+ toolbarStyles,
344
+ resizeStyles,
345
+ collapsibleButtonStyles,
346
+ mainStyles,
347
+ headerStyles,
348
+ contentStyles,
349
+ footerStyles,
350
+ open,
351
+ close
352
+ };
353
+ }
354
+ });
355
+
356
+ export { OrSidebarPlacement as O, script as s };
@@ -71,7 +71,7 @@ export { s as OrSegmentedControlV3, S as SegmentedControlSize } from '../OrSegme
71
71
  export { s as OrSelect } from '../OrSelect.vue_vue_type_script_lang-26c0a70a.js';
72
72
  export { s as OrSelectV3 } from '../OrSelect.vue_vue_type_script_lang-7fd5e2f0.js';
73
73
  export { s as OrSidebar, O as OrSidebarSide } from '../OrSidebar.vue_vue_type_script_lang-7c55ac0a.js';
74
- export { O as OrSidebarPlacement, s as OrSidebarV3 } from '../OrSidebar.vue_vue_type_script_lang-ce0b152c.js';
74
+ export { O as OrSidebarPlacement, s as OrSidebarV3 } from '../OrSidebar.vue_vue_type_script_lang-66f8f0fd.js';
75
75
  export { s as OrSkeletonCircle, a as OrSkeletonRect, b as OrSkeletonText, O as OrSkeletonTextSizes } from '../OrSkeletonText.vue_vue_type_script_lang-f3f989c3.js';
76
76
  export { s as OrSkeletonCircleV3, a as OrSkeletonRectV3, b as OrSkeletonTextV3 } from '../OrSkeletonText.vue_vue_type_script_lang-efcfbe21.js';
77
77
  export { s as OrSlider } from '../OrSlider.vue_vue_type_script_lang-d47ff040.js';
@@ -10,7 +10,17 @@ export declare const Default: StoryFn<import("vue").ComponentOptions<import("vue
10
10
  } | string[], {} & {}, {
11
11
  [x: number]: string;
12
12
  } | {}, true>)>;
13
- export declare const WithMinimumWidth: StoryFn<import("vue").ComponentOptions<import("vue").default, import("@vue/composition-api").ShallowUnwrapRef<unknown>, import("@vue/composition-api").MethodOptions, import("@vue/composition-api").ComputedOptions, import("@vue/composition-api").ComponentPropsOptions<import("@vue/composition-api").Data>, import("@vue/composition-api").ExtractPropTypes<import("@vue/composition-api").ComponentPropsOptions<import("@vue/composition-api").Data>>> & Omit<import("vue").VueConstructor<import("vue").default>, never> & (new (...args: any[]) => import("@vue/composition-api").ComponentRenderProxy<{} & {}, import("@vue/composition-api").ShallowUnwrapRef<unknown>, unknown, import("@vue/composition-api").ComputedOptions, import("@vue/composition-api").MethodOptions, unknown, unknown, {
13
+ export declare const WithCustomWidthConstraints: StoryFn<import("vue").ComponentOptions<import("vue").default, import("@vue/composition-api").ShallowUnwrapRef<unknown>, import("@vue/composition-api").MethodOptions, import("@vue/composition-api").ComputedOptions, import("@vue/composition-api").ComponentPropsOptions<import("@vue/composition-api").Data>, import("@vue/composition-api").ExtractPropTypes<import("@vue/composition-api").ComponentPropsOptions<import("@vue/composition-api").Data>>> & Omit<import("vue").VueConstructor<import("vue").default>, never> & (new (...args: any[]) => import("@vue/composition-api").ComponentRenderProxy<{} & {}, import("@vue/composition-api").ShallowUnwrapRef<unknown>, unknown, import("@vue/composition-api").ComputedOptions, import("@vue/composition-api").MethodOptions, unknown, unknown, {
14
+ [x: string]: ((...args: any[]) => any) | null;
15
+ } | string[], {} & {}, {
16
+ [x: number]: string;
17
+ } | {}, true>)>;
18
+ export declare const NotDraggable: StoryFn<import("vue").ComponentOptions<import("vue").default, import("@vue/composition-api").ShallowUnwrapRef<unknown>, import("@vue/composition-api").MethodOptions, import("@vue/composition-api").ComputedOptions, import("@vue/composition-api").ComponentPropsOptions<import("@vue/composition-api").Data>, import("@vue/composition-api").ExtractPropTypes<import("@vue/composition-api").ComponentPropsOptions<import("@vue/composition-api").Data>>> & Omit<import("vue").VueConstructor<import("vue").default>, never> & (new (...args: any[]) => import("@vue/composition-api").ComponentRenderProxy<{} & {}, import("@vue/composition-api").ShallowUnwrapRef<unknown>, unknown, import("@vue/composition-api").ComputedOptions, import("@vue/composition-api").MethodOptions, unknown, unknown, {
19
+ [x: string]: ((...args: any[]) => any) | null;
20
+ } | string[], {} & {}, {
21
+ [x: number]: string;
22
+ } | {}, true>)>;
23
+ export declare const Collapsible: StoryFn<import("vue").ComponentOptions<import("vue").default, import("@vue/composition-api").ShallowUnwrapRef<unknown>, import("@vue/composition-api").MethodOptions, import("@vue/composition-api").ComputedOptions, import("@vue/composition-api").ComponentPropsOptions<import("@vue/composition-api").Data>, import("@vue/composition-api").ExtractPropTypes<import("@vue/composition-api").ComponentPropsOptions<import("@vue/composition-api").Data>>> & Omit<import("vue").VueConstructor<import("vue").default>, never> & (new (...args: any[]) => import("@vue/composition-api").ComponentRenderProxy<{} & {}, import("@vue/composition-api").ShallowUnwrapRef<unknown>, unknown, import("@vue/composition-api").ComputedOptions, import("@vue/composition-api").MethodOptions, unknown, unknown, {
14
24
  [x: string]: ((...args: any[]) => any) | null;
15
25
  } | string[], {} & {}, {
16
26
  [x: number]: string;
@@ -30,8 +40,33 @@ export declare const WithFooter: StoryFn<import("vue").ComponentOptions<import("
30
40
  } | string[], {} & {}, {
31
41
  [x: number]: string;
32
42
  } | {}, true>)>;
43
+ export declare const WithToolbar: StoryFn<import("vue").ComponentOptions<import("vue").default, import("@vue/composition-api").ShallowUnwrapRef<unknown>, import("@vue/composition-api").MethodOptions, import("@vue/composition-api").ComputedOptions, import("@vue/composition-api").ComponentPropsOptions<import("@vue/composition-api").Data>, import("@vue/composition-api").ExtractPropTypes<import("@vue/composition-api").ComponentPropsOptions<import("@vue/composition-api").Data>>> & Omit<import("vue").VueConstructor<import("vue").default>, never> & (new (...args: any[]) => import("@vue/composition-api").ComponentRenderProxy<{} & {}, import("@vue/composition-api").ShallowUnwrapRef<unknown>, unknown, import("@vue/composition-api").ComputedOptions, import("@vue/composition-api").MethodOptions, unknown, unknown, {
44
+ [x: string]: ((...args: any[]) => any) | null;
45
+ } | string[], {} & {}, {
46
+ [x: number]: string;
47
+ } | {}, true>)>;
48
+ export declare const CollapsibleWithToolbar: StoryFn<import("vue").ComponentOptions<import("vue").default, import("@vue/composition-api").ShallowUnwrapRef<unknown>, import("@vue/composition-api").MethodOptions, import("@vue/composition-api").ComputedOptions, import("@vue/composition-api").ComponentPropsOptions<import("@vue/composition-api").Data>, import("@vue/composition-api").ExtractPropTypes<import("@vue/composition-api").ComponentPropsOptions<import("@vue/composition-api").Data>>> & Omit<import("vue").VueConstructor<import("vue").default>, never> & (new (...args: any[]) => import("@vue/composition-api").ComponentRenderProxy<{} & {}, import("@vue/composition-api").ShallowUnwrapRef<unknown>, unknown, import("@vue/composition-api").ComputedOptions, import("@vue/composition-api").MethodOptions, unknown, unknown, {
49
+ [x: string]: ((...args: any[]) => any) | null;
50
+ } | string[], {} & {}, {
51
+ [x: number]: string;
52
+ } | {}, true>)>;
53
+ export declare const WithTabs: StoryFn<import("vue").ComponentOptions<import("vue").default, import("@vue/composition-api").ShallowUnwrapRef<unknown>, import("@vue/composition-api").MethodOptions, import("@vue/composition-api").ComputedOptions, import("@vue/composition-api").ComponentPropsOptions<import("@vue/composition-api").Data>, import("@vue/composition-api").ExtractPropTypes<import("@vue/composition-api").ComponentPropsOptions<import("@vue/composition-api").Data>>> & Omit<import("vue").VueConstructor<import("vue").default>, never> & (new (...args: any[]) => import("@vue/composition-api").ComponentRenderProxy<{} & {}, import("@vue/composition-api").ShallowUnwrapRef<unknown>, unknown, import("@vue/composition-api").ComputedOptions, import("@vue/composition-api").MethodOptions, unknown, unknown, {
54
+ [x: string]: ((...args: any[]) => any) | null;
55
+ } | string[], {} & {}, {
56
+ [x: number]: string;
57
+ } | {}, true>)>;
33
58
  export declare const LeftSidebar: StoryFn<import("vue").ComponentOptions<import("vue").default, import("@vue/composition-api").ShallowUnwrapRef<unknown>, import("@vue/composition-api").MethodOptions, import("@vue/composition-api").ComputedOptions, import("@vue/composition-api").ComponentPropsOptions<import("@vue/composition-api").Data>, import("@vue/composition-api").ExtractPropTypes<import("@vue/composition-api").ComponentPropsOptions<import("@vue/composition-api").Data>>> & Omit<import("vue").VueConstructor<import("vue").default>, never> & (new (...args: any[]) => import("@vue/composition-api").ComponentRenderProxy<{} & {}, import("@vue/composition-api").ShallowUnwrapRef<unknown>, unknown, import("@vue/composition-api").ComputedOptions, import("@vue/composition-api").MethodOptions, unknown, unknown, {
34
59
  [x: string]: ((...args: any[]) => any) | null;
35
60
  } | string[], {} & {}, {
36
61
  [x: number]: string;
37
62
  } | {}, true>)>;
63
+ export declare const WithLeftToolbar: StoryFn<import("vue").ComponentOptions<import("vue").default, import("@vue/composition-api").ShallowUnwrapRef<unknown>, import("@vue/composition-api").MethodOptions, import("@vue/composition-api").ComputedOptions, import("@vue/composition-api").ComponentPropsOptions<import("@vue/composition-api").Data>, import("@vue/composition-api").ExtractPropTypes<import("@vue/composition-api").ComponentPropsOptions<import("@vue/composition-api").Data>>> & Omit<import("vue").VueConstructor<import("vue").default>, never> & (new (...args: any[]) => import("@vue/composition-api").ComponentRenderProxy<{} & {}, import("@vue/composition-api").ShallowUnwrapRef<unknown>, unknown, import("@vue/composition-api").ComputedOptions, import("@vue/composition-api").MethodOptions, unknown, unknown, {
64
+ [x: string]: ((...args: any[]) => any) | null;
65
+ } | string[], {} & {}, {
66
+ [x: number]: string;
67
+ } | {}, true>)>;
68
+ export declare const CollapsibleWithWithLeftToolbar: StoryFn<import("vue").ComponentOptions<import("vue").default, import("@vue/composition-api").ShallowUnwrapRef<unknown>, import("@vue/composition-api").MethodOptions, import("@vue/composition-api").ComputedOptions, import("@vue/composition-api").ComponentPropsOptions<import("@vue/composition-api").Data>, import("@vue/composition-api").ExtractPropTypes<import("@vue/composition-api").ComponentPropsOptions<import("@vue/composition-api").Data>>> & Omit<import("vue").VueConstructor<import("vue").default>, never> & (new (...args: any[]) => import("@vue/composition-api").ComponentRenderProxy<{} & {}, import("@vue/composition-api").ShallowUnwrapRef<unknown>, unknown, import("@vue/composition-api").ComputedOptions, import("@vue/composition-api").MethodOptions, unknown, unknown, {
69
+ [x: string]: ((...args: any[]) => any) | null;
70
+ } | string[], {} & {}, {
71
+ [x: number]: string;
72
+ } | {}, true>)>;
@@ -4,26 +4,36 @@ declare const _default: import("vue").ComponentOptions<import("vue").default, im
4
4
  root: import("@vue/composition-api").Ref<HTMLElement | undefined>;
5
5
  resizeBar: import("@vue/composition-api").Ref<HTMLElement | null>;
6
6
  isResizing: import("@vue/composition-api").Ref<boolean>;
7
+ isCollapsed: import("@vue/composition-api").Ref<boolean>;
7
8
  localWidth: import("@vue/composition-api").Ref<number>;
9
+ isShowingToolbar: import("@vue/composition-api").ComputedRef<boolean>;
8
10
  sidebarStyle: import("@vue/composition-api").ComputedRef<{
9
11
  width: string;
10
12
  }>;
11
13
  rootStyles: import("@vue/composition-api").ComputedRef<string[]>;
14
+ sidebarStyles: import("@vue/composition-api").ComputedRef<string[]>;
15
+ toolbarStyles: import("@vue/composition-api").ComputedRef<string[]>;
12
16
  resizeStyles: import("@vue/composition-api").ComputedRef<string[]>;
17
+ collapsibleButtonStyles: import("@vue/composition-api").ComputedRef<string[]>;
13
18
  mainStyles: import("@vue/composition-api").ComputedRef<string[]>;
14
19
  headerStyles: import("@vue/composition-api").ComputedRef<string[]>;
15
20
  contentStyles: import("@vue/composition-api").ComputedRef<string[]>;
16
21
  footerStyles: import("@vue/composition-api").ComputedRef<string[]>;
22
+ open: () => void;
23
+ close: () => void;
17
24
  }> & import("@vue/composition-api").Data, {}, {}, {
18
25
  width: {
19
26
  type: NumberConstructor;
20
- required: false;
21
27
  default: number;
22
28
  validator: (value?: any) => boolean;
23
29
  };
24
30
  minimumWidth: {
25
31
  type: NumberConstructor;
26
- required: false;
32
+ default: number;
33
+ validator: (value?: any) => boolean;
34
+ };
35
+ maximumWidth: {
36
+ type: NumberConstructor;
27
37
  default: number;
28
38
  validator: (value?: any) => boolean;
29
39
  };
@@ -39,16 +49,27 @@ declare const _default: import("vue").ComponentOptions<import("vue").default, im
39
49
  default: OrSidebarPlacement;
40
50
  validator: (value?: any) => boolean;
41
51
  };
52
+ draggable: {
53
+ type: BooleanConstructor;
54
+ default: boolean;
55
+ };
56
+ collapsible: {
57
+ type: BooleanConstructor;
58
+ default: boolean;
59
+ };
42
60
  }, import("@vue/composition-api").ExtractPropTypes<{
43
61
  width: {
44
62
  type: NumberConstructor;
45
- required: false;
46
63
  default: number;
47
64
  validator: (value?: any) => boolean;
48
65
  };
49
66
  minimumWidth: {
50
67
  type: NumberConstructor;
51
- required: false;
68
+ default: number;
69
+ validator: (value?: any) => boolean;
70
+ };
71
+ maximumWidth: {
72
+ type: NumberConstructor;
52
73
  default: number;
53
74
  validator: (value?: any) => boolean;
54
75
  };
@@ -64,35 +85,59 @@ declare const _default: import("vue").ComponentOptions<import("vue").default, im
64
85
  default: OrSidebarPlacement;
65
86
  validator: (value?: any) => boolean;
66
87
  };
88
+ draggable: {
89
+ type: BooleanConstructor;
90
+ default: boolean;
91
+ };
92
+ collapsible: {
93
+ type: BooleanConstructor;
94
+ default: boolean;
95
+ };
67
96
  }>> & Omit<import("vue").VueConstructor<import("vue").default>, never> & (new (...args: any[]) => import("@vue/composition-api").ComponentRenderProxy<{
68
97
  width: number;
69
98
  minimumWidth: number;
99
+ maximumWidth: number;
70
100
  side: OrSidebarPlacement;
101
+ draggable: boolean;
102
+ collapsible: boolean;
71
103
  } & {} & {
72
104
  [x: string & `on${string}`]: ((...args: any[]) => any) | undefined;
73
105
  }, import("@vue/composition-api").ShallowUnwrapRef<{
74
106
  root: import("@vue/composition-api").Ref<HTMLElement | undefined>;
75
107
  resizeBar: import("@vue/composition-api").Ref<HTMLElement | null>;
76
108
  isResizing: import("@vue/composition-api").Ref<boolean>;
109
+ isCollapsed: import("@vue/composition-api").Ref<boolean>;
77
110
  localWidth: import("@vue/composition-api").Ref<number>;
111
+ isShowingToolbar: import("@vue/composition-api").ComputedRef<boolean>;
78
112
  sidebarStyle: import("@vue/composition-api").ComputedRef<{
79
113
  width: string;
80
114
  }>;
81
115
  rootStyles: import("@vue/composition-api").ComputedRef<string[]>;
116
+ sidebarStyles: import("@vue/composition-api").ComputedRef<string[]>;
117
+ toolbarStyles: import("@vue/composition-api").ComputedRef<string[]>;
82
118
  resizeStyles: import("@vue/composition-api").ComputedRef<string[]>;
119
+ collapsibleButtonStyles: import("@vue/composition-api").ComputedRef<string[]>;
83
120
  mainStyles: import("@vue/composition-api").ComputedRef<string[]>;
84
121
  headerStyles: import("@vue/composition-api").ComputedRef<string[]>;
85
122
  contentStyles: import("@vue/composition-api").ComputedRef<string[]>;
86
123
  footerStyles: import("@vue/composition-api").ComputedRef<string[]>;
124
+ open: () => void;
125
+ close: () => void;
87
126
  }>, import("@vue/composition-api").Data, {}, {}, {}, {}, string[], {
88
127
  width: number;
89
128
  minimumWidth: number;
129
+ maximumWidth: number;
90
130
  side: OrSidebarPlacement;
131
+ draggable: boolean;
132
+ collapsible: boolean;
91
133
  } & {} & {
92
134
  [x: string & `on${string}`]: ((...args: any[]) => any) | undefined;
93
135
  }, {
94
136
  width: number;
95
137
  minimumWidth: number;
138
+ maximumWidth: number;
96
139
  side: OrSidebarPlacement;
140
+ draggable: boolean;
141
+ collapsible: boolean;
97
142
  }, true>);
98
143
  export default _default;
@@ -0,0 +1,12 @@
1
+ import { Meta, StoryFn } from '@storybook/vue3';
2
+ declare const _default: Meta<import("vue").ComponentOptions<import("vue").default, import("@vue/composition-api").ShallowUnwrapRef<unknown>, import("@vue/composition-api").MethodOptions, import("@vue/composition-api").ComputedOptions, import("@vue/composition-api").ComponentPropsOptions<import("@vue/composition-api").Data>, import("@vue/composition-api").ExtractPropTypes<import("@vue/composition-api").ComponentPropsOptions<import("@vue/composition-api").Data>>> & Omit<import("vue").VueConstructor<import("vue").default>, never> & (new (...args: any[]) => import("@vue/composition-api").ComponentRenderProxy<{} & {}, import("@vue/composition-api").ShallowUnwrapRef<unknown>, unknown, import("@vue/composition-api").ComputedOptions, import("@vue/composition-api").MethodOptions, unknown, unknown, {
3
+ [x: string]: ((...args: any[]) => any) | null;
4
+ } | string[], {} & {}, {
5
+ [x: number]: string;
6
+ } | {}, true>)>;
7
+ export default _default;
8
+ export declare const Default: StoryFn<import("vue").ComponentOptions<import("vue").default, import("@vue/composition-api").ShallowUnwrapRef<unknown>, import("@vue/composition-api").MethodOptions, import("@vue/composition-api").ComputedOptions, import("@vue/composition-api").ComponentPropsOptions<import("@vue/composition-api").Data>, import("@vue/composition-api").ExtractPropTypes<import("@vue/composition-api").ComponentPropsOptions<import("@vue/composition-api").Data>>> & Omit<import("vue").VueConstructor<import("vue").default>, never> & (new (...args: any[]) => import("@vue/composition-api").ComponentRenderProxy<{} & {}, import("@vue/composition-api").ShallowUnwrapRef<unknown>, unknown, import("@vue/composition-api").ComputedOptions, import("@vue/composition-api").MethodOptions, unknown, unknown, {
9
+ [x: string]: ((...args: any[]) => any) | null;
10
+ } | string[], {} & {}, {
11
+ [x: number]: string;
12
+ } | {}, true>)>;
@@ -0,0 +1,53 @@
1
+ import { PropType } from 'vue-demi';
2
+ import { OrSidebarPlacement } from './props';
3
+ declare const _default: import("vue").ComponentOptions<import("vue").default, import("@vue/composition-api").ShallowUnwrapRef<{
4
+ root: import("@vue/composition-api").Ref<HTMLDivElement | undefined>;
5
+ rootStyles: import("@vue/composition-api").ComputedRef<string[]>;
6
+ buttonStyles: import("@vue/composition-api").ComputedRef<string[]>;
7
+ icon: import("@vue/composition-api").ComputedRef<"keyboard_arrow_left" | "keyboard_arrow_right">;
8
+ }> & import("@vue/composition-api").Data, {}, {}, {
9
+ /**
10
+ * Must be `true` if sidebar is collapsed.
11
+ */
12
+ modelValue: {
13
+ type: BooleanConstructor;
14
+ default: boolean;
15
+ };
16
+ side: {
17
+ type: PropType<OrSidebarPlacement>;
18
+ default: OrSidebarPlacement;
19
+ validator: (value?: any) => boolean;
20
+ };
21
+ }, import("@vue/composition-api").ExtractPropTypes<{
22
+ /**
23
+ * Must be `true` if sidebar is collapsed.
24
+ */
25
+ modelValue: {
26
+ type: BooleanConstructor;
27
+ default: boolean;
28
+ };
29
+ side: {
30
+ type: PropType<OrSidebarPlacement>;
31
+ default: OrSidebarPlacement;
32
+ validator: (value?: any) => boolean;
33
+ };
34
+ }>> & Omit<import("vue").VueConstructor<import("vue").default>, never> & (new (...args: any[]) => import("@vue/composition-api").ComponentRenderProxy<{
35
+ modelValue: boolean;
36
+ side: OrSidebarPlacement;
37
+ } & {} & {
38
+ [x: string & `on${string}`]: ((...args: any[]) => any) | undefined;
39
+ }, import("@vue/composition-api").ShallowUnwrapRef<{
40
+ root: import("@vue/composition-api").Ref<HTMLDivElement | undefined>;
41
+ rootStyles: import("@vue/composition-api").ComputedRef<string[]>;
42
+ buttonStyles: import("@vue/composition-api").ComputedRef<string[]>;
43
+ icon: import("@vue/composition-api").ComputedRef<"keyboard_arrow_left" | "keyboard_arrow_right">;
44
+ }>, import("@vue/composition-api").Data, {}, {}, {}, {}, string[], {
45
+ modelValue: boolean;
46
+ side: OrSidebarPlacement;
47
+ } & {} & {
48
+ [x: string & `on${string}`]: ((...args: any[]) => any) | undefined;
49
+ }, {
50
+ modelValue: boolean;
51
+ side: OrSidebarPlacement;
52
+ }, true>);
53
+ export default _default;
@@ -1,4 +1,17 @@
1
- export { O as OrSidebarPlacement, s as OrSidebarV3 } from '../../OrSidebar.vue_vue_type_script_lang-ce0b152c.js';
1
+ export { O as OrSidebarPlacement, s as OrSidebarV3 } from '../../OrSidebar.vue_vue_type_script_lang-66f8f0fd.js';
2
2
  import '@vueuse/core';
3
3
  import 'lodash';
4
4
  import 'vue';
5
+ import '../../OrIconButton-e0566ecf.js';
6
+ import '../../OrIconButton.vue_vue_type_script_lang-7d1c3fe1.js';
7
+ import '../../OrIcon-1a5c9091.js';
8
+ import '../../OrIcon.vue_vue_type_script_lang-bdbaad94.js';
9
+ import '../../OrTooltip.vue_vue_type_script_lang-bf9935ef.js';
10
+ import '../../OrPopover-1a488f88.js';
11
+ import '../../OrPopover.vue_vue_type_script_lang-b1102c1a.js';
12
+ import '../../floating-ui.dom.esm-83eba816.js';
13
+ import '../../OrBottomSheet.vue_vue_type_script_lang-bdef5ca2.js';
14
+ import '../../OrOverlay.vue_vue_type_script_lang-7edd25f6.js';
15
+ import '../../OrTeleport.vue3.vue_vue_type_script_lang-4dc70cf1.js';
16
+ import '../../useElevation-c8d5d3ba.js';
17
+ import '../../useResponsive-9d397e2a.js';