@onereach/ui-components 2.70.2 → 2.70.3-beta.2210.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-bc713980.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 +13 -1
  8. package/dist/bundled/v2/components/or-sidebar-v3/styles.d.ts +8 -1
  9. package/dist/bundled/v2/index.js +2 -2
  10. package/dist/bundled/v3/OrSidebar.vue_vue_type_script_lang-1cf01183.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 +15 -1
  17. package/dist/bundled/v3/components/or-sidebar-v3/styles.d.ts +8 -1
  18. package/dist/bundled/v3/index.js +25 -9
  19. package/dist/esm/v2/OrSidebar-bfa1b1b8.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 +13 -1
  26. package/dist/esm/v2/components/or-sidebar-v3/styles.d.ts +8 -1
  27. package/dist/esm/v2/index.js +1 -1
  28. package/dist/esm/v3/OrSidebar-90cc25cd.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 +12 -1
  35. package/dist/esm/v3/components/or-sidebar-v3/styles.d.ts +8 -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 +219 -6
  40. package/src/components/or-sidebar-v3/OrSidebar.vue +121 -22
  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-cd62526d.js';
5
+ import { s as script$2 } from './OrIconButton.vue_vue_type_script_lang-aefcf30d.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]', 'pt-[56px]', 'pb-md+',
42
+ // Theme
43
+ 'text-outline', 'dark:text-outline-dark'];
44
+ const SidebarSides = {
45
+ [OrSidebarPlacement.left]: [
46
+ // Borders
47
+ 'border-r-[1px]', 'border-r-solid', 'border-r-outline-variant dark:border-r-outline-variant-dark'],
48
+ [OrSidebarPlacement.right]: [
49
+ // Borders
50
+ 'border-l-[1px]', 'border-l-solid', 'border-l-outline-variant dark:border-l-outline-variant-dark']
51
+ };
52
+ const SidebarToolbarSides = {
53
+ [OrSidebarPlacement.left]: [
54
+ // Borders
55
+ 'border-r-[1px]', 'border-r-solid', 'border-r-outline-variant dark:border-r-outline-variant-dark'],
56
+ [OrSidebarPlacement.right]: [
57
+ // Borders
58
+ 'border-l-[1px]', 'border-l-solid', 'border-l-outline-variant dark:border-l-outline-variant-dark']
59
+ };
60
+ const SidebarResize = [
61
+ // Position
62
+ 'absolute', 'inset-y-none', 'z-[1]',
63
+ // Box
64
+ 'w-sm+', 'h-[100%]',
65
+ // Cursor
66
+ 'cursor-ew-resize'];
67
+ const SidebarResizeSides = {
68
+ [OrSidebarPlacement.left]: [
69
+ // Position
70
+ '-right-[1px]',
71
+ // Borders
72
+ 'hover:border-r-2', 'hover:border-r-primary-hover hover:dark:border-r-primary-hover-dark',
73
+ // Transition
74
+ 'transition-[border-right]'],
75
+ [OrSidebarPlacement.right]: [
76
+ // Position
77
+ '-left-[1px]',
78
+ // Borders
79
+ 'hover:border-l-2', 'hover:border-l-primary-hover hover:dark:border-l-primary-hover-dark',
80
+ // Transition
81
+ 'transition-[border-left]']
82
+ };
83
+ const SidebarCollapseButton = [
84
+ // Position
85
+ 'absolute', 'top-md', 'inset-y-none', 'z-[1]',
86
+ // Cursor
87
+ 'cursor-ew-resize'];
88
+ const SidebarCollapseButtonSides = {
89
+ [OrSidebarPlacement.left]: [
90
+ // Position
91
+ '-right-[12px]'],
92
+ [OrSidebarPlacement.right]: [
93
+ // Position
94
+ '-left-[12px]']
95
+ };
96
+ const SidebarResizingSides = {
97
+ [OrSidebarPlacement.left]: [
98
+ // Borders
99
+ 'border-r-2', 'border-r-primary-hover dark:border-r-primary-hover-dark'],
100
+ [OrSidebarPlacement.right]: [
101
+ // Borders
102
+ 'border-l-2', 'border-l-primary-hover dark:border-l-primary-hover-dark']
103
+ };
104
+ const SidebarMain = [
105
+ // Layout
106
+ 'flex', 'flex-col', 'grow', 'overflow-x-hidden',
107
+ // Box
108
+ 'min-h-0'];
109
+ const SidebarHeader = [
110
+ // Layout
111
+ 'shrink-0', 'overflow-hidden',
112
+ // Sizing
113
+ 'p-md',
114
+ // Typography
115
+ 'typography-headline-2', 'whitespace-nowrap', 'text-ellipsis'];
116
+ const SidebarContent = [
117
+ // Layout
118
+ 'grow', 'overflow-auto',
119
+ // Sizing
120
+ 'p-md'];
121
+ const SidebarFooter = [
122
+ // Layout
123
+ 'shrink-0', 'overflow-x-hidden',
124
+ // Sizing
125
+ 'p-md',
126
+ // Borders
127
+ 'border-t-[1px]', 'border-t-solid', 'border-t-outline-variant dark:border-t-outline-variant-dark'];
128
+ const CollapseButtonContainer = [
129
+ // Box
130
+ 'w-[24px]', 'h-[24px]', 'rounded-full',
131
+ // Theme
132
+ 'text-primary dark:text-primary-dark', 'bg-background dark:bg-background-dark'];
133
+ const CollapseButton = [
134
+ // Box
135
+ 'w-[24px]', 'h-[24px]',
136
+ // Typography
137
+ '!text-[16px]',
138
+ // Borders
139
+ '!border-[1px]', '!border-solid',
140
+ // Theme
141
+ '!text-primary dark:!text-primary-dark', '!bg-background dark:!bg-background-dark', '!border-outline-variant dark:!border-outline-variant-dark', '!outline-none',
142
+ // Theme (hover)
143
+ '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',
144
+ // Theme (active)
145
+ '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',
146
+ // Theme (focus)
147
+ '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',
148
+ // Theme (disabled)
149
+ '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'];
150
+
151
+ var script$1 = defineComponent({
152
+ name: 'OrSidebarCollapseButton',
153
+ components: {
154
+ OrIconButton: script$2
155
+ },
156
+ props: {
157
+ /**
158
+ * Must be `true` if sidebar is collapsed.
159
+ */
160
+ modelValue: {
161
+ type: Boolean,
162
+ default: false
163
+ },
164
+ side: {
165
+ type: String,
166
+ default: OrSidebarPlacement.right,
167
+ validator: value => _.includes(_.values(OrSidebarPlacement), value)
168
+ }
169
+ },
170
+ emits: ['update:modelValue'],
171
+ expose: ['root'],
172
+ setup(props) {
173
+ // Refs
174
+ const root = ref();
175
+ const rootStyles = computed(() => ['or-sidebar-collapse-button', ...CollapseButtonContainer]);
176
+ const buttonStyles = computed(() => [...CollapseButton]);
177
+ const icon = computed(() => props.side === OrSidebarPlacement.left !== props.modelValue ? 'keyboard_arrow_left' : 'keyboard_arrow_right');
178
+ return {
179
+ root,
180
+ rootStyles,
181
+ buttonStyles,
182
+ icon
183
+ };
184
+ }
185
+ });
186
+
187
+ function render(_ctx, _cache, $props, $setup, $data, $options) {
188
+ const _component_or_icon_button = resolveComponent("or-icon-button");
189
+ return openBlock(), createElementBlock("div", {
190
+ ref: "root",
191
+ class: normalizeClass(_ctx.rootStyles)
192
+ }, [createVNode(_component_or_icon_button, {
193
+ class: normalizeClass(_ctx.buttonStyles),
194
+ icon: {
195
+ icon: _ctx.icon,
196
+ size: 'inherit'
197
+ },
198
+ color: "inherit",
199
+ onClick: _cache[0] || (_cache[0] = $event => _ctx.$emit('update:modelValue', !_ctx.modelValue))
200
+ }, null, 8 /* PROPS */, ["class", "icon"])], 2 /* CLASS */);
201
+ }
202
+
203
+ script$1.render = render;
204
+ script$1.__file = "src/components/or-sidebar-v3/OrSidebarCollapseButton.vue";
205
+
206
+ var script = defineComponent({
207
+ name: 'OrSidebar',
208
+ components: {
209
+ OrSidebarCollapseButton: script$1
210
+ },
211
+ props: {
212
+ width: {
213
+ type: Number,
214
+ default: 320,
215
+ validator: value => _.isNumber(value) && value >= 0
216
+ },
217
+ minimumWidth: {
218
+ type: Number,
219
+ default: 256,
220
+ validator: value => _.isNumber(value) && value >= 0
221
+ },
222
+ maximumWidth: {
223
+ type: Number,
224
+ default: 384,
225
+ validator: value => _.isNumber(value) && value >= 0
226
+ },
227
+ /**
228
+ * User may put the component on the right or the left side of a container.
229
+ * This property mirrors the resizing behavior (drag direction) and styling (horizontal border) of the sidebar.
230
+ *
231
+ * Note: the property doesn't reposition the component in the parent container.
232
+ * @values left, right
233
+ */
234
+ side: {
235
+ type: String,
236
+ default: OrSidebarPlacement.right,
237
+ validator: value => _.includes(_.values(OrSidebarPlacement), value)
238
+ },
239
+ draggable: {
240
+ type: Boolean,
241
+ default: true
242
+ },
243
+ collapsible: {
244
+ type: Boolean,
245
+ default: false
246
+ }
247
+ },
248
+ emits: ['change:width'],
249
+ expose: ['root', 'open', 'close'],
250
+ setup(props, {
251
+ emit
252
+ }) {
253
+ // Refs
254
+ const root = ref();
255
+ const resizeBar = ref(null);
256
+ const parentContainer = computed(() => {
257
+ var _a;
258
+ return (_a = root.value) === null || _a === void 0 ? void 0 : _a.parentElement;
259
+ });
260
+ // Slots
261
+ const {
262
+ toolbar: toolbarSlot
263
+ } = useSlots();
264
+ // State
265
+ const startPositionX = ref(0);
266
+ const isResizing = ref(false);
267
+ const isCollapsed = ref(false);
268
+ const maximumWidth = ref(props.maximumWidth || 384);
269
+ const localWidth = ref(props.width >= props.minimumWidth ? props.width : props.minimumWidth);
270
+ const isShowingToolbar = computed(() => !!toolbarSlot);
271
+ // Styles
272
+ const sidebarStyle = computed(() => ({
273
+ width: (isCollapsed.value ? 16 : localWidth.value) + 'px'
274
+ }));
275
+ const rootStyles = computed(() => ['or-sidebar', ...SidebarRoot]);
276
+ const sidebarStyles = computed(() => [...SidebarBar, ...SidebarSides[props.side]]);
277
+ const toolbarStyles = computed(() => [...SidebarToolbar, ...SidebarToolbarSides[props.side]]);
278
+ const resizeStyles = computed(() => [...SidebarResize, ...SidebarResizeSides[props.side], ...(isResizing.value ? SidebarResizingSides[props.side] : [])]);
279
+ const collapsibleButtonStyles = computed(() => [...SidebarCollapseButton, ...SidebarCollapseButtonSides[props.side]]);
280
+ const mainStyles = computed(() => [...SidebarMain]);
281
+ const headerStyles = computed(() => [...SidebarHeader]);
282
+ const contentStyles = computed(() => [...SidebarContent]);
283
+ const footerStyles = computed(() => [...SidebarFooter]);
284
+ // Effects
285
+ useDraggable(resizeBar, {
286
+ preventDefault: true,
287
+ onStart: (position, event) => {
288
+ document.body.style.cursor = 'ew-resize';
289
+ document.body.style.userSelect = 'none';
290
+ startPositionX.value = event.x;
291
+ isResizing.value = true;
292
+ },
293
+ onMove: position => {
294
+ const delta = (position.x - startPositionX.value) * (props.side === OrSidebarPlacement.left ? -1 : 1);
295
+ const newWidth = localWidth.value - delta;
296
+ localWidth.value = newWidth > maximumWidth.value ? maximumWidth.value : newWidth < props.minimumWidth ? props.minimumWidth : newWidth;
297
+ startPositionX.value = position.x;
298
+ },
299
+ onEnd: () => {
300
+ document.body.style.cursor = '';
301
+ document.body.style.userSelect = '';
302
+ isResizing.value = false;
303
+ }
304
+ });
305
+ // Methods
306
+ function open() {
307
+ isCollapsed.value = false;
308
+ }
309
+ function close() {
310
+ isCollapsed.value = true;
311
+ }
312
+ const {
313
+ width: containerWidth
314
+ } = useElementBounding(parentContainer);
315
+ watch(() => props.width, newValue => {
316
+ if (newValue !== localWidth.value) {
317
+ localWidth.value = newValue > maximumWidth.value ? maximumWidth.value : newValue < props.minimumWidth ? props.minimumWidth : newValue;
318
+ }
319
+ });
320
+ watch(() => props.minimumWidth, newMinimum => {
321
+ if (newMinimum > localWidth.value) localWidth.value = newMinimum;
322
+ });
323
+ watch(() => props.maximumWidth, newMaximum => {
324
+ if (newMaximum < maximumWidth.value) maximumWidth.value = newMaximum;
325
+ });
326
+ watch(containerWidth, newMaximum => {
327
+ if (newMaximum < maximumWidth.value) maximumWidth.value = newMaximum;
328
+ });
329
+ watch(maximumWidth, newMaximum => {
330
+ if (newMaximum < localWidth.value) localWidth.value = newMaximum;
331
+ });
332
+ watch(localWidth, val => emit('change:width', val));
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 };
@@ -70,7 +70,7 @@ export { s as OrSegmentedControlV3, S as SegmentedControlSize } from '../OrSegme
70
70
  export { s as OrSelect } from '../OrSelect.vue_vue_type_script_lang-26c0a70a.js';
71
71
  export { s as OrSelectV3 } from '../OrSelect.vue_vue_type_script_lang-83f15704.js';
72
72
  export { s as OrSidebar, O as OrSidebarSide } from '../OrSidebar.vue_vue_type_script_lang-7c55ac0a.js';
73
- export { O as OrSidebarPlacement, s as OrSidebarV3 } from '../OrSidebar.vue_vue_type_script_lang-ce0b152c.js';
73
+ export { O as OrSidebarPlacement, s as OrSidebarV3 } from '../OrSidebar.vue_vue_type_script_lang-1cf01183.js';
74
74
  export { s as OrSkeletonCircle, a as OrSkeletonRect, b as OrSkeletonText, O as OrSkeletonTextSizes } from '../OrSkeletonText.vue_vue_type_script_lang-f3f989c3.js';
75
75
  export { s as OrSkeletonCircleV3, a as OrSkeletonRectV3, b as OrSkeletonTextV3 } from '../OrSkeletonText.vue_vue_type_script_lang-577a1dc9.js';
76
76
  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,18 @@
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-1cf01183.js';
2
2
  import '@vueuse/core';
3
3
  import 'lodash';
4
4
  import 'vue';
5
+ import '../../OrIconButton-cd62526d.js';
6
+ import '../../OrIconButton.vue_vue_type_script_lang-aefcf30d.js';
7
+ import '../../OrIcon-d878b768.js';
8
+ import '../../OrIcon.vue_vue_type_script_lang-a119a715.js';
9
+ import '../../useClassAttribute-00888f78.js';
10
+ import '../../OrTooltip.vue_vue_type_script_lang-67cc86ed.js';
11
+ import '../../OrPopover-c462ce77.js';
12
+ import '../../OrPopover.vue_vue_type_script_lang-54c7b11c.js';
13
+ import '../../floating-ui.dom.esm-83eba816.js';
14
+ import '../../OrBottomSheet.vue_vue_type_script_lang-6fb49de9.js';
15
+ import '../../OrOverlay.vue_vue_type_script_lang-cb3aad0c.js';
16
+ import '../../OrTeleport.vue3.vue_vue_type_script_lang-4dc70cf1.js';
17
+ import '../../useElevation-c8d5d3ba.js';
18
+ import '../../useResponsive-9d397e2a.js';