ropav 0.3.1 → 0.5.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.
- package/dist/components/autocomplete/autocomplete-root.js +3 -1
- package/dist/components/autocomplete/index.d.ts +3 -0
- package/dist/components/avatar/avatar-image.js +13 -2
- package/dist/components/avatar/avatar.types.d.ts +7 -1
- package/dist/components/breadcrumbs/breadcrumbs-item.js +1 -0
- package/dist/components/breadcrumbs/index.d.ts +1 -0
- package/dist/components/calendar/calendar-header.js +1 -1
- package/dist/components/calendar/index.d.ts +5 -3
- package/dist/components/calendar-year-picker/index.d.ts +4 -2
- package/dist/components/checkbox/checkbox-content.js +1 -1
- package/dist/components/color-field/index.d.ts +3 -2
- package/dist/components/color-input-group/color-input-group-root.js +2 -0
- package/dist/components/color-input-group/color-input-group.types.d.ts +2 -0
- package/dist/components/color-input-group/index.d.ts +2 -0
- package/dist/components/combo-box/combo-box-root.js +9 -2
- package/dist/components/combo-box/combo-box.types.d.ts +3 -0
- package/dist/components/combo-box/index.d.ts +3 -0
- package/dist/components/date-field/index.d.ts +1 -0
- package/dist/components/date-input-group/date-input-group-root.js +2 -0
- package/dist/components/date-input-group/date-input-group-segment.js +1 -1
- package/dist/components/date-input-group/date-input-group.types.d.ts +2 -0
- package/dist/{composables → components/date-input-group}/use-date-segment.d.ts +2 -2
- package/dist/{composables → components/date-input-group}/use-date-segment.js +9 -9
- package/dist/components/date-picker/index.d.ts +3 -2
- package/dist/components/date-picker/index.js +2 -2
- package/dist/components/date-range-picker/date-range-picker-root.js +1 -1
- package/dist/components/date-range-picker/index.d.ts +18 -16
- package/dist/components/date-range-picker/index.js +2 -2
- package/dist/{composables → components/date-range-picker}/use-date-range-picker.d.ts +7 -7
- package/dist/{composables → components/date-range-picker}/use-date-range-picker.js +10 -10
- package/dist/components/drawer/drawer-dialog.js +1 -1
- package/dist/{composables → components/drawer}/use-drawer-drag.d.ts +1 -1
- package/dist/{composables → components/drawer}/use-drawer-drag.js +1 -1
- package/dist/components/dropdown/dropdown-menu.js +3 -1
- package/dist/components/dropdown/dropdown-submenu-trigger.js +1 -1
- package/dist/components/dropdown/dropdown.types.d.ts +3 -3
- package/dist/components/dropdown/index.d.ts +4 -2
- package/dist/{composables → components/dropdown}/use-safely-mouse-to-submenu.js +1 -1
- package/dist/components/icons/icon-overlay-arrow.js +1 -1
- package/dist/components/index.d.ts +5 -0
- package/dist/components/input/index.d.ts +12 -4
- package/dist/components/input/input-root.d.ts +5 -2
- package/dist/components/input/input-root.js +46 -5
- package/dist/components/input/input.types.d.ts +11 -0
- package/dist/components/input-group/index.d.ts +2 -0
- package/dist/components/input-group/input-group-root.js +3 -0
- package/dist/components/input-group/input-group.types.d.ts +5 -0
- package/dist/components/input-otp/index.d.ts +6 -4
- package/dist/components/link/index.d.ts +2 -0
- package/dist/components/link/link-root.js +22 -5
- package/dist/components/link/link.types.d.ts +14 -3
- package/dist/{composables → components/list-box}/drag-collection.d.ts +2 -2
- package/dist/{composables → components/list-box}/drag-collection.js +1 -1
- package/dist/components/list-box/index.d.ts +4 -0
- package/dist/components/list-box/list-box-root.js +60 -35
- package/dist/components/list-box/list-box.types.d.ts +2 -0
- package/dist/components/menu/index.d.ts +4 -0
- package/dist/components/menu/menu-root.js +9 -2
- package/dist/components/menu/menu.types.d.ts +5 -0
- package/dist/components/number-field/index.d.ts +3 -0
- package/dist/components/number-field/number-field-root.js +2 -0
- package/dist/components/number-field/number-field.types.d.ts +2 -0
- package/dist/components/overlay/overlay-arrow.js +64 -11
- package/dist/components/pagination/index.d.ts +2 -0
- package/dist/components/pagination/pagination-root.js +8 -3
- package/dist/components/pagination/pagination.types.d.ts +8 -0
- package/dist/components/popover/popover-trigger.js +14 -7
- package/dist/components/radio/radio-content.js +1 -1
- package/dist/components/range-calendar/index.d.ts +18 -15
- package/dist/components/range-calendar/range-calendar-header.js +1 -1
- package/dist/components/router-provider/index.d.ts +5 -0
- package/dist/components/router-provider/index.js +3 -0
- package/dist/components/router-provider/router-provider.context.d.ts +40 -0
- package/dist/components/router-provider/router-provider.context.js +16 -0
- package/dist/components/router-provider/router-provider.d.ts +21 -0
- package/dist/components/router-provider/router-provider.js +22 -0
- package/dist/components/router-provider/router-provider.types.d.ts +23 -0
- package/dist/components/scroll-shadow/scroll-shadow-root.js +7 -1
- package/dist/components/scroll-shadow/use-scroll-shadow.js +25 -1
- package/dist/components/search-field/index.d.ts +2 -0
- package/dist/components/search-field/search-field-root.js +3 -1
- package/dist/components/search-field/search-field.types.d.ts +2 -0
- package/dist/{composables → components/search-field}/use-search-field.d.ts +2 -2
- package/dist/{composables → components/search-field}/use-search-field.js +3 -3
- package/dist/components/segmented-control/index.d.ts +134 -0
- package/dist/components/segmented-control/index.js +15 -0
- package/dist/components/segmented-control/segmented-control-indicator.d.ts +19 -0
- package/dist/components/segmented-control/segmented-control-indicator.js +36 -0
- package/dist/components/segmented-control/segmented-control-item.d.ts +21 -0
- package/dist/components/segmented-control/segmented-control-item.js +96 -0
- package/dist/components/segmented-control/segmented-control-root.d.ts +25 -0
- package/dist/components/segmented-control/segmented-control-root.js +112 -0
- package/dist/components/segmented-control/segmented-control-separator.d.ts +19 -0
- package/dist/components/segmented-control/segmented-control-separator.js +18 -0
- package/dist/components/segmented-control/segmented-control.context.d.ts +17 -0
- package/dist/components/segmented-control/segmented-control.context.js +12 -0
- package/dist/components/segmented-control/segmented-control.types.d.ts +67 -0
- package/dist/components/select/index.d.ts +3 -0
- package/dist/components/select/select-hidden-select.js +1 -1
- package/dist/components/select/select-root.js +2 -0
- package/dist/components/select/select.types.d.ts +2 -0
- package/dist/components/separator/separator-root.js +11 -5
- package/dist/components/separator/separator.context.d.ts +7 -0
- package/dist/components/sidebar/index.d.ts +544 -0
- package/dist/components/sidebar/index.js +47 -0
- package/dist/components/sidebar/sidebar-collapsible-trigger.d.ts +21 -0
- package/dist/components/sidebar/sidebar-collapsible-trigger.js +70 -0
- package/dist/components/sidebar/sidebar-collapsible.d.ts +24 -0
- package/dist/components/sidebar/sidebar-collapsible.js +78 -0
- package/dist/components/sidebar/sidebar-content.d.ts +21 -0
- package/dist/components/sidebar/sidebar-content.js +37 -0
- package/dist/components/sidebar/sidebar-footer.d.ts +21 -0
- package/dist/components/sidebar/sidebar-footer.js +24 -0
- package/dist/components/sidebar/sidebar-group-label.d.ts +21 -0
- package/dist/components/sidebar/sidebar-group-label.js +32 -0
- package/dist/components/sidebar/sidebar-group.d.ts +21 -0
- package/dist/components/sidebar/sidebar-group.js +48 -0
- package/dist/components/sidebar/sidebar-header.d.ts +21 -0
- package/dist/components/sidebar/sidebar-header.js +24 -0
- package/dist/components/sidebar/sidebar-inset.d.ts +21 -0
- package/dist/components/sidebar/sidebar-inset.js +24 -0
- package/dist/components/sidebar/sidebar-item-icon.d.ts +21 -0
- package/dist/components/sidebar/sidebar-item-icon.js +20 -0
- package/dist/components/sidebar/sidebar-item-indicator.d.ts +21 -0
- package/dist/components/sidebar/sidebar-item-indicator.js +48 -0
- package/dist/components/sidebar/sidebar-item-label.d.ts +21 -0
- package/dist/components/sidebar/sidebar-item-label.js +28 -0
- package/dist/components/sidebar/sidebar-item-tooltip.d.ts +21 -0
- package/dist/components/sidebar/sidebar-item-tooltip.js +38 -0
- package/dist/components/sidebar/sidebar-item-trailing.d.ts +21 -0
- package/dist/components/sidebar/sidebar-item-trailing.js +28 -0
- package/dist/components/sidebar/sidebar-item.d.ts +23 -0
- package/dist/components/sidebar/sidebar-item.js +160 -0
- package/dist/components/sidebar/sidebar-panel.d.ts +21 -0
- package/dist/components/sidebar/sidebar-panel.js +88 -0
- package/dist/components/sidebar/sidebar-rail.d.ts +21 -0
- package/dist/components/sidebar/sidebar-rail.js +210 -0
- package/dist/components/sidebar/sidebar-root.d.ts +31 -0
- package/dist/components/sidebar/sidebar-root.js +138 -0
- package/dist/components/sidebar/sidebar-separator.d.ts +19 -0
- package/dist/components/sidebar/sidebar-separator.js +16 -0
- package/dist/components/sidebar/sidebar-sub-menu.d.ts +23 -0
- package/dist/components/sidebar/sidebar-sub-menu.js +40 -0
- package/dist/components/sidebar/sidebar-trigger.d.ts +21 -0
- package/dist/components/sidebar/sidebar-trigger.js +69 -0
- package/dist/components/sidebar/sidebar.context.d.ts +75 -0
- package/dist/components/sidebar/sidebar.context.js +30 -0
- package/dist/components/sidebar/sidebar.state.d.ts +73 -0
- package/dist/components/sidebar/sidebar.state.js +76 -0
- package/dist/components/sidebar/sidebar.storage.d.ts +8 -0
- package/dist/components/sidebar/sidebar.storage.js +45 -0
- package/dist/components/sidebar/sidebar.types.d.ts +259 -0
- package/dist/components/splitter/index.d.ts +143 -0
- package/dist/components/splitter/index.js +13 -0
- package/dist/components/splitter/splitter-handle.d.ts +21 -0
- package/dist/components/splitter/splitter-handle.js +209 -0
- package/dist/components/splitter/splitter-panel.d.ts +21 -0
- package/dist/components/splitter/splitter-panel.js +70 -0
- package/dist/components/splitter/splitter-root.d.ts +31 -0
- package/dist/components/splitter/splitter-root.js +152 -0
- package/dist/components/splitter/splitter.context.d.ts +15 -0
- package/dist/components/splitter/splitter.context.js +5 -0
- package/dist/components/splitter/splitter.state.d.ts +87 -0
- package/dist/components/splitter/splitter.state.js +322 -0
- package/dist/components/splitter/splitter.storage.d.ts +15 -0
- package/dist/components/splitter/splitter.storage.js +56 -0
- package/dist/components/splitter/splitter.types.d.ts +98 -0
- package/dist/components/switch/switch-content.js +1 -1
- package/dist/components/table/index.d.ts +10 -9
- package/dist/components/table/table-body.js +13 -13
- package/dist/components/table/table-cell.js +49 -46
- package/dist/components/table/table-column-resizer.js +1 -1
- package/dist/components/table/table-column.js +1 -1
- package/dist/components/table/table-content.js +37 -18
- package/dist/{composables → components/table}/table-drag-collection.d.ts +1 -1
- package/dist/{composables → components/table}/table-drag-collection.js +1 -1
- package/dist/components/table/table-drop-indicator.js +3 -1
- package/dist/components/table/table-resizable-container.d.ts +4 -5
- package/dist/components/table/table-row.js +45 -14
- package/dist/components/table/table-virtualizer-item.d.ts +2 -7
- package/dist/components/table/table-virtualizer-item.js +20 -9
- package/dist/components/table/table.context.d.ts +11 -3
- package/dist/components/table/table.types.d.ts +1 -1
- package/dist/{composables → components/table}/use-grid-keyboard.d.ts +3 -3
- package/dist/{composables → components/table}/use-grid-keyboard.js +57 -55
- package/dist/{composables → components/table}/use-grid-selection-announcement.d.ts +2 -2
- package/dist/{composables → components/table}/use-grid-selection-announcement.js +2 -2
- package/dist/{composables → components/table}/use-table-collection.d.ts +2 -2
- package/dist/{composables → components/table}/use-table-collection.js +4 -4
- package/dist/{composables → components/table}/use-table-column-layout.d.ts +13 -20
- package/dist/components/table/use-table-column-layout.js +115 -0
- package/dist/components/tabs/tabs-panel.js +5 -1
- package/dist/components/tabs/tabs-tab.js +1 -1
- package/dist/components/textarea/index.d.ts +12 -4
- package/dist/components/textarea/textarea-root.d.ts +5 -2
- package/dist/components/textarea/textarea-root.js +40 -5
- package/dist/components/textarea/textarea.types.d.ts +11 -0
- package/dist/components/textfield/index.d.ts +2 -0
- package/dist/components/textfield/textfield-root.js +5 -1
- package/dist/components/textfield/textfield.context.d.ts +2 -0
- package/dist/components/textfield/textfield.types.d.ts +5 -0
- package/dist/components/time-field/index.d.ts +1 -0
- package/dist/components/toast/index.d.ts +1 -0
- package/dist/components/toast/toast-default-content.js +1 -1
- package/dist/components/toggle-button-group/toggle-button-group-root.js +3 -3
- package/dist/components/toolbar/index.d.ts +3 -2
- package/dist/components/toolbar/toolbar-root.js +3 -3
- package/dist/components/tooltip/index.js +1 -1
- package/dist/components/tooltip/tooltip-root.js +1 -1
- package/dist/components/tooltip/tooltip-trigger.js +13 -5
- package/dist/components/virtualizer/index.d.ts +3 -1
- package/dist/components/virtualizer/index.js +2 -1
- package/dist/components/virtualizer/use-virtualizer-item.d.ts +23 -0
- package/dist/components/virtualizer/use-virtualizer-item.js +45 -0
- package/dist/components/virtualizer/virtualizer-item.js +7 -41
- package/dist/components/virtualizer/virtualizer-scrollbar-track.d.ts +20 -0
- package/dist/components/virtualizer/virtualizer-scrollbar-track.js +141 -0
- package/dist/components/virtualizer/virtualizer-scrollbar.d.ts +18 -0
- package/dist/components/virtualizer/virtualizer-scrollbar.js +55 -0
- package/dist/components/virtualizer/virtualizer.context.d.ts +17 -1
- package/dist/composables/drag-manager.js +1 -13
- package/dist/composables/index.d.ts +3 -71
- package/dist/composables/use-collection.d.ts +22 -3
- package/dist/composables/use-collection.js +67 -14
- package/dist/composables/use-color-area.js +2 -2
- package/dist/composables/use-color-field.js +1 -1
- package/dist/composables/use-combo-box.js +1 -1
- package/dist/composables/use-date-field.js +1 -1
- package/dist/composables/use-drag-and-drop.js +1 -1
- package/dist/composables/use-drag.d.ts +6 -5
- package/dist/composables/use-draggable-item.d.ts +2 -2
- package/dist/composables/use-droppable-collection.js +2 -2
- package/dist/composables/use-droppable-item.js +1 -1
- package/dist/composables/use-form-reset.d.ts +6 -2
- package/dist/composables/use-form-reset.js +9 -5
- package/dist/composables/use-list-keyboard.js +64 -62
- package/dist/composables/use-menu.d.ts +10 -0
- package/dist/composables/use-menu.js +22 -0
- package/dist/composables/use-number-field.js +1 -1
- package/dist/composables/use-select.js +2 -3
- package/dist/composables/use-selection-manager.js +4 -4
- package/dist/composables/use-single-select-list-state.d.ts +37 -0
- package/dist/composables/use-single-select-list-state.js +110 -0
- package/dist/composables/use-slider-thumb.js +2 -2
- package/dist/composables/use-slider.js +1 -1
- package/dist/composables/use-tab-list-state.d.ts +20 -29
- package/dist/composables/use-tab-list-state.js +20 -99
- package/dist/composables/use-text-field.js +1 -1
- package/dist/composables/use-virtualizer-scroll.d.ts +52 -2
- package/dist/composables/use-virtualizer-scroll.js +79 -13
- package/dist/composables/use-virtualizer.d.ts +24 -4
- package/dist/composables/use-virtualizer.js +40 -6
- package/dist/index.js +58 -80
- package/dist/utils/document-order.d.ts +14 -0
- package/dist/utils/document-order.js +17 -0
- package/dist/utils/flex-sizing.d.ts +41 -0
- package/dist/utils/flex-sizing.js +140 -0
- package/dist/utils/index.d.ts +2 -0
- package/dist/utils/open-link.d.ts +31 -0
- package/dist/utils/open-link.js +32 -0
- package/dist/utils/story-truncation.d.ts +20 -0
- package/dist/utils/story-users.d.ts +11 -0
- package/dist/utils/virtualizer-collection.d.ts +14 -4
- package/dist/utils/virtualizer-collection.js +9 -14
- package/dist/utils/virtualizer-layout-info.js +3 -2
- package/dist/utils/virtualizer-list-layout.d.ts +75 -29
- package/dist/utils/virtualizer-list-layout.js +182 -99
- package/dist/utils/virtualizer-offsets.d.ts +111 -0
- package/dist/utils/virtualizer-offsets.js +159 -0
- package/dist/utils/virtualizer-overscan.d.ts +9 -15
- package/dist/utils/virtualizer-overscan.js +14 -33
- package/dist/utils/virtualizer-table-layout.d.ts +50 -21
- package/dist/utils/virtualizer-table-layout.js +130 -89
- package/dist/version.js +1 -1
- package/package.json +19 -3
- package/dist/composables/use-table-column-layout.js +0 -214
- /package/dist/{composables → components/dropdown}/use-safely-mouse-to-submenu.d.ts +0 -0
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { composeSlotClassName } from "../../utils/compose.js";
|
|
2
|
+
import { dataAttr } from "../../utils/assertion.js";
|
|
3
|
+
import { useInteractionStates } from "../../composables/use-interaction-states.js";
|
|
4
|
+
import { useSidebarCollapsibleContext, useSidebarContext } from "./sidebar.context.js";
|
|
5
|
+
import { computed, createSlot, defineVaporComponent, on, renderEffect, setAttr, setClass, setInsertionState, setProp, template, unref } from "vue";
|
|
6
|
+
//#region src/components/sidebar/sidebar-collapsible-trigger.vue?vue&type=script&setup=true&vapor=true&lang.ts
|
|
7
|
+
var t0 = template("<button data-slot=sidebar-collapsible-trigger type=button>", 1);
|
|
8
|
+
var sidebar_collapsible_trigger_vue_vue_type_script_setup_true_vapor_true_lang_default = /*@__PURE__*/ defineVaporComponent({
|
|
9
|
+
__name: "sidebar-collapsible-trigger",
|
|
10
|
+
props: {
|
|
11
|
+
class: {},
|
|
12
|
+
isDisabled: {
|
|
13
|
+
type: Boolean,
|
|
14
|
+
default: void 0
|
|
15
|
+
},
|
|
16
|
+
ariaLabel: {}
|
|
17
|
+
},
|
|
18
|
+
setup(__props) {
|
|
19
|
+
const props = __props;
|
|
20
|
+
const { slots, state } = useSidebarContext();
|
|
21
|
+
const collapsible = useSidebarCollapsibleContext();
|
|
22
|
+
const isDisabled = computed(() => Boolean(props.isDisabled) || collapsible.isDisabled.value);
|
|
23
|
+
const interaction = useInteractionStates({ isDisabled });
|
|
24
|
+
const tabindex = computed(() => isDisabled.value ? void 0 : 0);
|
|
25
|
+
const isControlling = computed(() => !state.isCollapsed.value);
|
|
26
|
+
const className = computed(() => composeSlotClassName(slots.value.item, props.class));
|
|
27
|
+
const n1 = t0();
|
|
28
|
+
renderEffect(() => {
|
|
29
|
+
const _collapsible = unref(collapsible);
|
|
30
|
+
const _isControlling = isControlling.value;
|
|
31
|
+
const _dataAttr = unref(dataAttr);
|
|
32
|
+
const _isDisabled = isDisabled.value;
|
|
33
|
+
const _interaction = unref(interaction);
|
|
34
|
+
const _collapsible_isExpanded = _collapsible.isExpanded;
|
|
35
|
+
setProp(n1, "id", _collapsible.triggerId.value);
|
|
36
|
+
setAttr(n1, "aria-controls", _isControlling ? _collapsible.subMenuId.value : void 0);
|
|
37
|
+
setAttr(n1, "aria-expanded", _isControlling ? _collapsible_isExpanded.value : void 0);
|
|
38
|
+
setAttr(n1, "aria-label", props.ariaLabel);
|
|
39
|
+
setClass(n1, className.value);
|
|
40
|
+
setAttr(n1, "data-collapsed", _dataAttr(unref(state).isCollapsed.value));
|
|
41
|
+
setAttr(n1, "data-disabled", _dataAttr(_isDisabled));
|
|
42
|
+
setAttr(n1, "data-expanded", _dataAttr(_collapsible_isExpanded.value));
|
|
43
|
+
setAttr(n1, "data-focus-visible", _dataAttr(_interaction.isFocusVisible.value));
|
|
44
|
+
setAttr(n1, "data-focused", _dataAttr(_interaction.isFocused.value));
|
|
45
|
+
setAttr(n1, "data-hovered", _dataAttr(_interaction.isHovered.value));
|
|
46
|
+
setAttr(n1, "data-pressed", _dataAttr(_interaction.isPressed.value));
|
|
47
|
+
setProp(n1, "disabled", _isDisabled || void 0);
|
|
48
|
+
setProp(n1, "tabindex", tabindex.value);
|
|
49
|
+
});
|
|
50
|
+
setInsertionState(n1);
|
|
51
|
+
createSlot("default", {
|
|
52
|
+
isCollapsed: () => unref(state).isCollapsed.value,
|
|
53
|
+
isDisabled: () => isDisabled.value,
|
|
54
|
+
isExpanded: () => unref(collapsible).isExpanded.value,
|
|
55
|
+
isFocusVisible: () => unref(interaction).isFocusVisible.value,
|
|
56
|
+
isFocused: () => unref(interaction).isFocused.value,
|
|
57
|
+
isHovered: () => unref(interaction).isHovered.value,
|
|
58
|
+
isPressed: () => unref(interaction).isPressed.value
|
|
59
|
+
});
|
|
60
|
+
on(n1, "blur", (e) => unref(interaction).onBlur(e));
|
|
61
|
+
on(n1, "click", (e) => unref(collapsible).toggle(e));
|
|
62
|
+
on(n1, "focus", (e) => unref(interaction).onFocus(e));
|
|
63
|
+
on(n1, "pointerdown", (e) => unref(interaction).onPointerdown(e));
|
|
64
|
+
on(n1, "pointerenter", (e) => unref(interaction).onPointerenter(e));
|
|
65
|
+
on(n1, "pointerleave", (e) => unref(interaction).onPointerleave(e));
|
|
66
|
+
return n1;
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
//#endregion
|
|
70
|
+
export { sidebar_collapsible_trigger_vue_vue_type_script_setup_true_vapor_true_lang_default as default };
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { SidebarCollapsibleProps, SidebarCollapsibleSlotProps } from "./sidebar.types.js";
|
|
2
|
+
declare const __VLS_export: (__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>['props'], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, 'attrs' | 'emit' | 'slots'>>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>['expose'], __VLS_setup?: Promise<{
|
|
3
|
+
props: import('vue').PublicProps & __VLS_PrettifyLocal<SidebarCollapsibleProps & {
|
|
4
|
+
onExpandedChange?: ((isExpanded: boolean) => any) | undefined;
|
|
5
|
+
"onUpdate:isExpanded"?: ((isExpanded: boolean) => any) | undefined;
|
|
6
|
+
}> & (typeof globalThis extends {
|
|
7
|
+
__VLS_PROPS_FALLBACK: infer P;
|
|
8
|
+
} ? P : {});
|
|
9
|
+
expose: (exposed: {}) => void;
|
|
10
|
+
attrs: any;
|
|
11
|
+
slots: {
|
|
12
|
+
default?: (props: SidebarCollapsibleSlotProps) => unknown;
|
|
13
|
+
};
|
|
14
|
+
emit: ((evt: "expandedChange", isExpanded: boolean) => void) & ((evt: "update:isExpanded", isExpanded: boolean) => void);
|
|
15
|
+
}>) => import('vue').VNode & {
|
|
16
|
+
__ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
|
|
17
|
+
};
|
|
18
|
+
declare const _default: typeof __VLS_export;
|
|
19
|
+
export default _default;
|
|
20
|
+
type __VLS_PrettifyLocal<T> = (T extends any ? {
|
|
21
|
+
[K in keyof T]: T[K];
|
|
22
|
+
} : {
|
|
23
|
+
[K in keyof T as K]: T[K];
|
|
24
|
+
}) & {};
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { composeSlotClassName } from "../../utils/compose.js";
|
|
2
|
+
import { dataAttr } from "../../utils/assertion.js";
|
|
3
|
+
import { useId as useId$1 } from "../../composables/use-id.js";
|
|
4
|
+
import { useControllableState } from "../../composables/use-controllable-state.js";
|
|
5
|
+
import { provideSidebarCollapsibleContext, useSidebarContext } from "./sidebar.context.js";
|
|
6
|
+
import { computed, createSlot, defineVaporComponent, renderEffect, setAttr, setClass, setInsertionState, template, unref } from "vue";
|
|
7
|
+
//#region src/components/sidebar/sidebar-collapsible.vue?vue&type=script&setup=true&vapor=true&lang.ts
|
|
8
|
+
var t0 = template("<div data-slot=sidebar-collapsible>", 1);
|
|
9
|
+
var sidebar_collapsible_vue_vue_type_script_setup_true_vapor_true_lang_default = /*@__PURE__*/ defineVaporComponent({
|
|
10
|
+
__name: "sidebar-collapsible",
|
|
11
|
+
props: {
|
|
12
|
+
class: {},
|
|
13
|
+
isExpanded: {
|
|
14
|
+
type: Boolean,
|
|
15
|
+
default: void 0
|
|
16
|
+
},
|
|
17
|
+
defaultExpanded: {
|
|
18
|
+
type: Boolean,
|
|
19
|
+
default: void 0
|
|
20
|
+
},
|
|
21
|
+
isDisabled: {
|
|
22
|
+
type: Boolean,
|
|
23
|
+
default: void 0
|
|
24
|
+
}
|
|
25
|
+
},
|
|
26
|
+
emits: ["expandedChange", "update:isExpanded"],
|
|
27
|
+
setup(__props, { emit: __emit }) {
|
|
28
|
+
const props = __props;
|
|
29
|
+
const emit = __emit;
|
|
30
|
+
const { slots, state } = useSidebarContext();
|
|
31
|
+
const id = useId$1();
|
|
32
|
+
const triggerId = computed(() => `${id.value}-trigger`);
|
|
33
|
+
const subMenuId = computed(() => `${id.value}-submenu`);
|
|
34
|
+
const isDisabled = computed(() => Boolean(props.isDisabled));
|
|
35
|
+
const { setState, state: expanded } = useControllableState({
|
|
36
|
+
defaultValue: props.defaultExpanded ?? false,
|
|
37
|
+
onValueChange: (isExpanded) => {
|
|
38
|
+
emit("update:isExpanded", isExpanded);
|
|
39
|
+
emit("expandedChange", isExpanded);
|
|
40
|
+
},
|
|
41
|
+
value: () => props.isExpanded
|
|
42
|
+
});
|
|
43
|
+
const isExpanded = computed(() => !state.isCollapsed.value && expanded.value);
|
|
44
|
+
const toggle = () => {
|
|
45
|
+
if (isDisabled.value) return;
|
|
46
|
+
if (state.isCollapsed.value) {
|
|
47
|
+
state.open();
|
|
48
|
+
setState(true);
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
setState(!expanded.value);
|
|
52
|
+
};
|
|
53
|
+
provideSidebarCollapsibleContext({
|
|
54
|
+
isDisabled,
|
|
55
|
+
isExpanded,
|
|
56
|
+
subMenuId,
|
|
57
|
+
toggle,
|
|
58
|
+
triggerId
|
|
59
|
+
});
|
|
60
|
+
const n1 = t0();
|
|
61
|
+
renderEffect(() => {
|
|
62
|
+
const _dataAttr = unref(dataAttr);
|
|
63
|
+
setClass(n1, unref(composeSlotClassName)(unref(slots).group, props.class));
|
|
64
|
+
setAttr(n1, "data-collapsed", _dataAttr(unref(state).isCollapsed.value));
|
|
65
|
+
setAttr(n1, "data-disabled", _dataAttr(isDisabled.value));
|
|
66
|
+
setAttr(n1, "data-expanded", _dataAttr(isExpanded.value));
|
|
67
|
+
});
|
|
68
|
+
setInsertionState(n1);
|
|
69
|
+
createSlot("default", {
|
|
70
|
+
isCollapsed: () => unref(state).isCollapsed.value,
|
|
71
|
+
isDisabled: () => isDisabled.value,
|
|
72
|
+
isExpanded: () => isExpanded.value
|
|
73
|
+
});
|
|
74
|
+
return n1;
|
|
75
|
+
}
|
|
76
|
+
});
|
|
77
|
+
//#endregion
|
|
78
|
+
export { sidebar_collapsible_vue_vue_type_script_setup_true_vapor_true_lang_default as default };
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { SidebarContentProps, SidebarPartSlotProps } from "./sidebar.types.js";
|
|
2
|
+
declare const __VLS_export: (__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>['props'], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, 'attrs' | 'emit' | 'slots'>>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>['expose'], __VLS_setup?: Promise<{
|
|
3
|
+
props: import('vue').PublicProps & __VLS_PrettifyLocal<SidebarContentProps> & (typeof globalThis extends {
|
|
4
|
+
__VLS_PROPS_FALLBACK: infer P;
|
|
5
|
+
} ? P : {});
|
|
6
|
+
expose: (exposed: {}) => void;
|
|
7
|
+
attrs: any;
|
|
8
|
+
slots: {
|
|
9
|
+
default?: (props: SidebarPartSlotProps) => unknown;
|
|
10
|
+
};
|
|
11
|
+
emit: {};
|
|
12
|
+
}>) => import('vue').VNode & {
|
|
13
|
+
__ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
|
|
14
|
+
};
|
|
15
|
+
declare const _default: typeof __VLS_export;
|
|
16
|
+
export default _default;
|
|
17
|
+
type __VLS_PrettifyLocal<T> = (T extends any ? {
|
|
18
|
+
[K in keyof T]: T[K];
|
|
19
|
+
} : {
|
|
20
|
+
[K in keyof T as K]: T[K];
|
|
21
|
+
}) & {};
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { composeSlotClassName } from "../../utils/compose.js";
|
|
2
|
+
import { provideSeparatorContext } from "../separator/separator.context.js";
|
|
3
|
+
import scroll_shadow_root_default from "../scroll-shadow/scroll-shadow-root.js";
|
|
4
|
+
import { useSidebarContext } from "./sidebar.context.js";
|
|
5
|
+
import { computed, createComponent, createSlot, defineVaporComponent, extend, unref } from "vue";
|
|
6
|
+
//#region src/components/sidebar/sidebar-content.vue?vue&type=script&setup=true&vapor=true&lang.ts
|
|
7
|
+
var sidebar_content_vue_vue_type_script_setup_true_vapor_true_lang_default = /*@__PURE__*/ defineVaporComponent({
|
|
8
|
+
__name: "sidebar-content",
|
|
9
|
+
props: {
|
|
10
|
+
class: {},
|
|
11
|
+
showScrollShadow: {
|
|
12
|
+
type: Boolean,
|
|
13
|
+
default: true
|
|
14
|
+
},
|
|
15
|
+
scrollShadowSize: {}
|
|
16
|
+
},
|
|
17
|
+
setup(__props) {
|
|
18
|
+
const props = __props;
|
|
19
|
+
const { slots, state } = useSidebarContext();
|
|
20
|
+
provideSeparatorContext({ elementType: "div" });
|
|
21
|
+
const className = computed(() => composeSlotClassName(slots.value.content, props.class));
|
|
22
|
+
return createComponent(scroll_shadow_root_default, {
|
|
23
|
+
class: () => className.value,
|
|
24
|
+
"data-slot": "sidebar-content",
|
|
25
|
+
"is-enabled": () => props.showScrollShadow,
|
|
26
|
+
size: () => props.scrollShadowSize
|
|
27
|
+
}, extend(() => {
|
|
28
|
+
return createSlot("default", {
|
|
29
|
+
isCollapsed: () => unref(state).isCollapsed.value,
|
|
30
|
+
isMobile: () => unref(state).isMobile.value,
|
|
31
|
+
isOpen: () => unref(state).isOpen.value
|
|
32
|
+
}, null, 36);
|
|
33
|
+
}, { _: 8 }), true);
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
//#endregion
|
|
37
|
+
export { sidebar_content_vue_vue_type_script_setup_true_vapor_true_lang_default as default };
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { SidebarFooterProps, SidebarPartSlotProps } from "./sidebar.types.js";
|
|
2
|
+
declare const __VLS_export: (__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>['props'], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, 'attrs' | 'emit' | 'slots'>>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>['expose'], __VLS_setup?: Promise<{
|
|
3
|
+
props: import('vue').PublicProps & __VLS_PrettifyLocal<SidebarFooterProps> & (typeof globalThis extends {
|
|
4
|
+
__VLS_PROPS_FALLBACK: infer P;
|
|
5
|
+
} ? P : {});
|
|
6
|
+
expose: (exposed: {}) => void;
|
|
7
|
+
attrs: any;
|
|
8
|
+
slots: {
|
|
9
|
+
default?: (props: SidebarPartSlotProps) => unknown;
|
|
10
|
+
};
|
|
11
|
+
emit: {};
|
|
12
|
+
}>) => import('vue').VNode & {
|
|
13
|
+
__ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
|
|
14
|
+
};
|
|
15
|
+
declare const _default: typeof __VLS_export;
|
|
16
|
+
export default _default;
|
|
17
|
+
type __VLS_PrettifyLocal<T> = (T extends any ? {
|
|
18
|
+
[K in keyof T]: T[K];
|
|
19
|
+
} : {
|
|
20
|
+
[K in keyof T as K]: T[K];
|
|
21
|
+
}) & {};
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { composeSlotClassName } from "../../utils/compose.js";
|
|
2
|
+
import { useSidebarContext } from "./sidebar.context.js";
|
|
3
|
+
import { createSlot, defineVaporComponent, renderEffect, setClass, setInsertionState, template, unref } from "vue";
|
|
4
|
+
//#region src/components/sidebar/sidebar-footer.vue?vue&type=script&setup=true&vapor=true&lang.ts
|
|
5
|
+
var t0 = template("<div data-slot=sidebar-footer>", 1);
|
|
6
|
+
var sidebar_footer_vue_vue_type_script_setup_true_vapor_true_lang_default = /*@__PURE__*/ defineVaporComponent({
|
|
7
|
+
__name: "sidebar-footer",
|
|
8
|
+
props: { class: {} },
|
|
9
|
+
setup(__props) {
|
|
10
|
+
const props = __props;
|
|
11
|
+
const { slots, state } = useSidebarContext();
|
|
12
|
+
const n1 = t0();
|
|
13
|
+
renderEffect(() => setClass(n1, unref(composeSlotClassName)(unref(slots).footer, props.class)));
|
|
14
|
+
setInsertionState(n1);
|
|
15
|
+
createSlot("default", {
|
|
16
|
+
isCollapsed: () => unref(state).isCollapsed.value,
|
|
17
|
+
isMobile: () => unref(state).isMobile.value,
|
|
18
|
+
isOpen: () => unref(state).isOpen.value
|
|
19
|
+
});
|
|
20
|
+
return n1;
|
|
21
|
+
}
|
|
22
|
+
});
|
|
23
|
+
//#endregion
|
|
24
|
+
export { sidebar_footer_vue_vue_type_script_setup_true_vapor_true_lang_default as default };
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { SidebarGroupLabelProps, SidebarPartSlotProps } from "./sidebar.types.js";
|
|
2
|
+
declare const __VLS_export: (__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>['props'], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, 'attrs' | 'emit' | 'slots'>>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>['expose'], __VLS_setup?: Promise<{
|
|
3
|
+
props: import('vue').PublicProps & __VLS_PrettifyLocal<SidebarGroupLabelProps> & (typeof globalThis extends {
|
|
4
|
+
__VLS_PROPS_FALLBACK: infer P;
|
|
5
|
+
} ? P : {});
|
|
6
|
+
expose: (exposed: {}) => void;
|
|
7
|
+
attrs: any;
|
|
8
|
+
slots: {
|
|
9
|
+
default?: (props: SidebarPartSlotProps) => unknown;
|
|
10
|
+
};
|
|
11
|
+
emit: {};
|
|
12
|
+
}>) => import('vue').VNode & {
|
|
13
|
+
__ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
|
|
14
|
+
};
|
|
15
|
+
declare const _default: typeof __VLS_export;
|
|
16
|
+
export default _default;
|
|
17
|
+
type __VLS_PrettifyLocal<T> = (T extends any ? {
|
|
18
|
+
[K in keyof T]: T[K];
|
|
19
|
+
} : {
|
|
20
|
+
[K in keyof T as K]: T[K];
|
|
21
|
+
}) & {};
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { composeSlotClassName } from "../../utils/compose.js";
|
|
2
|
+
import { dataAttr } from "../../utils/assertion.js";
|
|
3
|
+
import { useSidebarContext, useSidebarGroupContext } from "./sidebar.context.js";
|
|
4
|
+
import { createSlot, defineVaporComponent, onScopeDispose, renderEffect, setAttr, setClass, setInsertionState, setProp, template, unref } from "vue";
|
|
5
|
+
//#region src/components/sidebar/sidebar-group-label.vue?vue&type=script&setup=true&vapor=true&lang.ts
|
|
6
|
+
var t0 = template("<div data-slot=sidebar-group-label>", 1);
|
|
7
|
+
var sidebar_group_label_vue_vue_type_script_setup_true_vapor_true_lang_default = /*@__PURE__*/ defineVaporComponent({
|
|
8
|
+
__name: "sidebar-group-label",
|
|
9
|
+
props: { class: {} },
|
|
10
|
+
setup(__props) {
|
|
11
|
+
const props = __props;
|
|
12
|
+
const { slots, state } = useSidebarContext();
|
|
13
|
+
const group = useSidebarGroupContext();
|
|
14
|
+
const unregister = group?.registerLabel();
|
|
15
|
+
onScopeDispose(() => unregister?.(), true);
|
|
16
|
+
const n1 = t0();
|
|
17
|
+
renderEffect(() => {
|
|
18
|
+
setProp(n1, "id", unref(group)?.labelId.value);
|
|
19
|
+
setClass(n1, unref(composeSlotClassName)(unref(slots).groupLabel, props.class));
|
|
20
|
+
setAttr(n1, "data-collapsed", unref(dataAttr)(unref(state).isCollapsed.value));
|
|
21
|
+
});
|
|
22
|
+
setInsertionState(n1);
|
|
23
|
+
createSlot("default", {
|
|
24
|
+
isCollapsed: () => unref(state).isCollapsed.value,
|
|
25
|
+
isMobile: () => unref(state).isMobile.value,
|
|
26
|
+
isOpen: () => unref(state).isOpen.value
|
|
27
|
+
});
|
|
28
|
+
return n1;
|
|
29
|
+
}
|
|
30
|
+
});
|
|
31
|
+
//#endregion
|
|
32
|
+
export { sidebar_group_label_vue_vue_type_script_setup_true_vapor_true_lang_default as default };
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { SidebarGroupProps, SidebarPartSlotProps } from "./sidebar.types.js";
|
|
2
|
+
declare const __VLS_export: (__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>['props'], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, 'attrs' | 'emit' | 'slots'>>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>['expose'], __VLS_setup?: Promise<{
|
|
3
|
+
props: import('vue').PublicProps & __VLS_PrettifyLocal<SidebarGroupProps> & (typeof globalThis extends {
|
|
4
|
+
__VLS_PROPS_FALLBACK: infer P;
|
|
5
|
+
} ? P : {});
|
|
6
|
+
expose: (exposed: {}) => void;
|
|
7
|
+
attrs: any;
|
|
8
|
+
slots: {
|
|
9
|
+
default?: (props: SidebarPartSlotProps) => unknown;
|
|
10
|
+
};
|
|
11
|
+
emit: {};
|
|
12
|
+
}>) => import('vue').VNode & {
|
|
13
|
+
__ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
|
|
14
|
+
};
|
|
15
|
+
declare const _default: typeof __VLS_export;
|
|
16
|
+
export default _default;
|
|
17
|
+
type __VLS_PrettifyLocal<T> = (T extends any ? {
|
|
18
|
+
[K in keyof T]: T[K];
|
|
19
|
+
} : {
|
|
20
|
+
[K in keyof T as K]: T[K];
|
|
21
|
+
}) & {};
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { composeSlotClassName } from "../../utils/compose.js";
|
|
2
|
+
import { dataAttr } from "../../utils/assertion.js";
|
|
3
|
+
import { useId as useId$1 } from "../../composables/use-id.js";
|
|
4
|
+
import { provideSidebarGroupContext, useSidebarContext } from "./sidebar.context.js";
|
|
5
|
+
import { computed, createSlot, defineVaporComponent, renderEffect, setAttr, setClass, setInsertionState, shallowRef, template, unref } from "vue";
|
|
6
|
+
//#region src/components/sidebar/sidebar-group.vue?vue&type=script&setup=true&vapor=true&lang.ts
|
|
7
|
+
var t0 = template("<div data-slot=sidebar-group role=group>", 1);
|
|
8
|
+
var sidebar_group_vue_vue_type_script_setup_true_vapor_true_lang_default = /*@__PURE__*/ defineVaporComponent({
|
|
9
|
+
__name: "sidebar-group",
|
|
10
|
+
props: {
|
|
11
|
+
class: {},
|
|
12
|
+
ariaLabel: {}
|
|
13
|
+
},
|
|
14
|
+
setup(__props) {
|
|
15
|
+
const props = __props;
|
|
16
|
+
const { slots, state } = useSidebarContext();
|
|
17
|
+
const labelId = useId$1();
|
|
18
|
+
const labels = shallowRef(0);
|
|
19
|
+
provideSidebarGroupContext({
|
|
20
|
+
labelId,
|
|
21
|
+
registerLabel: () => {
|
|
22
|
+
labels.value += 1;
|
|
23
|
+
return () => {
|
|
24
|
+
labels.value -= 1;
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
});
|
|
28
|
+
const labelledBy = computed(() => labels.value > 0 ? labelId.value : void 0);
|
|
29
|
+
const n1 = t0();
|
|
30
|
+
renderEffect(() => {
|
|
31
|
+
const _labelledBy = labelledBy.value;
|
|
32
|
+
const _props = props;
|
|
33
|
+
setAttr(n1, "aria-label", _labelledBy ? void 0 : _props.ariaLabel);
|
|
34
|
+
setAttr(n1, "aria-labelledby", _labelledBy);
|
|
35
|
+
setClass(n1, unref(composeSlotClassName)(unref(slots).group, _props.class));
|
|
36
|
+
setAttr(n1, "data-collapsed", unref(dataAttr)(unref(state).isCollapsed.value));
|
|
37
|
+
});
|
|
38
|
+
setInsertionState(n1);
|
|
39
|
+
createSlot("default", {
|
|
40
|
+
isCollapsed: () => unref(state).isCollapsed.value,
|
|
41
|
+
isMobile: () => unref(state).isMobile.value,
|
|
42
|
+
isOpen: () => unref(state).isOpen.value
|
|
43
|
+
});
|
|
44
|
+
return n1;
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
//#endregion
|
|
48
|
+
export { sidebar_group_vue_vue_type_script_setup_true_vapor_true_lang_default as default };
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { SidebarHeaderProps, SidebarPartSlotProps } from "./sidebar.types.js";
|
|
2
|
+
declare const __VLS_export: (__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>['props'], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, 'attrs' | 'emit' | 'slots'>>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>['expose'], __VLS_setup?: Promise<{
|
|
3
|
+
props: import('vue').PublicProps & __VLS_PrettifyLocal<SidebarHeaderProps> & (typeof globalThis extends {
|
|
4
|
+
__VLS_PROPS_FALLBACK: infer P;
|
|
5
|
+
} ? P : {});
|
|
6
|
+
expose: (exposed: {}) => void;
|
|
7
|
+
attrs: any;
|
|
8
|
+
slots: {
|
|
9
|
+
default?: (props: SidebarPartSlotProps) => unknown;
|
|
10
|
+
};
|
|
11
|
+
emit: {};
|
|
12
|
+
}>) => import('vue').VNode & {
|
|
13
|
+
__ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
|
|
14
|
+
};
|
|
15
|
+
declare const _default: typeof __VLS_export;
|
|
16
|
+
export default _default;
|
|
17
|
+
type __VLS_PrettifyLocal<T> = (T extends any ? {
|
|
18
|
+
[K in keyof T]: T[K];
|
|
19
|
+
} : {
|
|
20
|
+
[K in keyof T as K]: T[K];
|
|
21
|
+
}) & {};
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { composeSlotClassName } from "../../utils/compose.js";
|
|
2
|
+
import { useSidebarContext } from "./sidebar.context.js";
|
|
3
|
+
import { createSlot, defineVaporComponent, renderEffect, setClass, setInsertionState, template, unref } from "vue";
|
|
4
|
+
//#region src/components/sidebar/sidebar-header.vue?vue&type=script&setup=true&vapor=true&lang.ts
|
|
5
|
+
var t0 = template("<div data-slot=sidebar-header>", 1);
|
|
6
|
+
var sidebar_header_vue_vue_type_script_setup_true_vapor_true_lang_default = /*@__PURE__*/ defineVaporComponent({
|
|
7
|
+
__name: "sidebar-header",
|
|
8
|
+
props: { class: {} },
|
|
9
|
+
setup(__props) {
|
|
10
|
+
const props = __props;
|
|
11
|
+
const { slots, state } = useSidebarContext();
|
|
12
|
+
const n1 = t0();
|
|
13
|
+
renderEffect(() => setClass(n1, unref(composeSlotClassName)(unref(slots).header, props.class)));
|
|
14
|
+
setInsertionState(n1);
|
|
15
|
+
createSlot("default", {
|
|
16
|
+
isCollapsed: () => unref(state).isCollapsed.value,
|
|
17
|
+
isMobile: () => unref(state).isMobile.value,
|
|
18
|
+
isOpen: () => unref(state).isOpen.value
|
|
19
|
+
});
|
|
20
|
+
return n1;
|
|
21
|
+
}
|
|
22
|
+
});
|
|
23
|
+
//#endregion
|
|
24
|
+
export { sidebar_header_vue_vue_type_script_setup_true_vapor_true_lang_default as default };
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { SidebarInsetProps, SidebarPartSlotProps } from "./sidebar.types.js";
|
|
2
|
+
declare const __VLS_export: (__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>['props'], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, 'attrs' | 'emit' | 'slots'>>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>['expose'], __VLS_setup?: Promise<{
|
|
3
|
+
props: import('vue').PublicProps & __VLS_PrettifyLocal<SidebarInsetProps> & (typeof globalThis extends {
|
|
4
|
+
__VLS_PROPS_FALLBACK: infer P;
|
|
5
|
+
} ? P : {});
|
|
6
|
+
expose: (exposed: {}) => void;
|
|
7
|
+
attrs: any;
|
|
8
|
+
slots: {
|
|
9
|
+
default?: (props: SidebarPartSlotProps) => unknown;
|
|
10
|
+
};
|
|
11
|
+
emit: {};
|
|
12
|
+
}>) => import('vue').VNode & {
|
|
13
|
+
__ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
|
|
14
|
+
};
|
|
15
|
+
declare const _default: typeof __VLS_export;
|
|
16
|
+
export default _default;
|
|
17
|
+
type __VLS_PrettifyLocal<T> = (T extends any ? {
|
|
18
|
+
[K in keyof T]: T[K];
|
|
19
|
+
} : {
|
|
20
|
+
[K in keyof T as K]: T[K];
|
|
21
|
+
}) & {};
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { composeSlotClassName } from "../../utils/compose.js";
|
|
2
|
+
import { useSidebarContext } from "./sidebar.context.js";
|
|
3
|
+
import { createSlot, defineVaporComponent, renderEffect, setClass, setInsertionState, template, unref } from "vue";
|
|
4
|
+
//#region src/components/sidebar/sidebar-inset.vue?vue&type=script&setup=true&vapor=true&lang.ts
|
|
5
|
+
var t0 = template("<div data-slot=sidebar-inset>", 1);
|
|
6
|
+
var sidebar_inset_vue_vue_type_script_setup_true_vapor_true_lang_default = /*@__PURE__*/ defineVaporComponent({
|
|
7
|
+
__name: "sidebar-inset",
|
|
8
|
+
props: { class: {} },
|
|
9
|
+
setup(__props) {
|
|
10
|
+
const props = __props;
|
|
11
|
+
const { slots, state } = useSidebarContext();
|
|
12
|
+
const n1 = t0();
|
|
13
|
+
renderEffect(() => setClass(n1, unref(composeSlotClassName)(unref(slots).inset, props.class)));
|
|
14
|
+
setInsertionState(n1);
|
|
15
|
+
createSlot("default", {
|
|
16
|
+
isCollapsed: () => unref(state).isCollapsed.value,
|
|
17
|
+
isMobile: () => unref(state).isMobile.value,
|
|
18
|
+
isOpen: () => unref(state).isOpen.value
|
|
19
|
+
});
|
|
20
|
+
return n1;
|
|
21
|
+
}
|
|
22
|
+
});
|
|
23
|
+
//#endregion
|
|
24
|
+
export { sidebar_inset_vue_vue_type_script_setup_true_vapor_true_lang_default as default };
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { SidebarItemIconProps } from "./sidebar.types.js";
|
|
2
|
+
declare const __VLS_export: (__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>['props'], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, 'attrs' | 'emit' | 'slots'>>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>['expose'], __VLS_setup?: Promise<{
|
|
3
|
+
props: import('vue').PublicProps & __VLS_PrettifyLocal<SidebarItemIconProps> & (typeof globalThis extends {
|
|
4
|
+
__VLS_PROPS_FALLBACK: infer P;
|
|
5
|
+
} ? P : {});
|
|
6
|
+
expose: (exposed: {}) => void;
|
|
7
|
+
attrs: any;
|
|
8
|
+
slots: {
|
|
9
|
+
default?: () => unknown;
|
|
10
|
+
};
|
|
11
|
+
emit: {};
|
|
12
|
+
}>) => import('vue').VNode & {
|
|
13
|
+
__ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
|
|
14
|
+
};
|
|
15
|
+
declare const _default: typeof __VLS_export;
|
|
16
|
+
export default _default;
|
|
17
|
+
type __VLS_PrettifyLocal<T> = (T extends any ? {
|
|
18
|
+
[K in keyof T]: T[K];
|
|
19
|
+
} : {
|
|
20
|
+
[K in keyof T as K]: T[K];
|
|
21
|
+
}) & {};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { composeSlotClassName } from "../../utils/compose.js";
|
|
2
|
+
import { useSidebarContext } from "./sidebar.context.js";
|
|
3
|
+
import { createSlot, defineVaporComponent, renderEffect, setClass, setInsertionState, template, unref } from "vue";
|
|
4
|
+
//#region src/components/sidebar/sidebar-item-icon.vue?vue&type=script&setup=true&vapor=true&lang.ts
|
|
5
|
+
var t0 = template("<span aria-hidden=true data-slot=sidebar-item-icon>", 1);
|
|
6
|
+
var sidebar_item_icon_vue_vue_type_script_setup_true_vapor_true_lang_default = /*@__PURE__*/ defineVaporComponent({
|
|
7
|
+
__name: "sidebar-item-icon",
|
|
8
|
+
props: { class: {} },
|
|
9
|
+
setup(__props) {
|
|
10
|
+
const props = __props;
|
|
11
|
+
const { slots } = useSidebarContext();
|
|
12
|
+
const n1 = t0();
|
|
13
|
+
renderEffect(() => setClass(n1, unref(composeSlotClassName)(unref(slots).itemIcon, props.class)));
|
|
14
|
+
setInsertionState(n1);
|
|
15
|
+
createSlot();
|
|
16
|
+
return n1;
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
//#endregion
|
|
20
|
+
export { sidebar_item_icon_vue_vue_type_script_setup_true_vapor_true_lang_default as default };
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { SidebarItemIndicatorProps } from "./sidebar.types.js";
|
|
2
|
+
declare const __VLS_export: (__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>['props'], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, 'attrs' | 'emit' | 'slots'>>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>['expose'], __VLS_setup?: Promise<{
|
|
3
|
+
props: import('vue').PublicProps & __VLS_PrettifyLocal<SidebarItemIndicatorProps> & (typeof globalThis extends {
|
|
4
|
+
__VLS_PROPS_FALLBACK: infer P;
|
|
5
|
+
} ? P : {});
|
|
6
|
+
expose: (exposed: {}) => void;
|
|
7
|
+
attrs: any;
|
|
8
|
+
slots: {
|
|
9
|
+
default?: () => unknown;
|
|
10
|
+
};
|
|
11
|
+
emit: {};
|
|
12
|
+
}>) => import('vue').VNode & {
|
|
13
|
+
__ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
|
|
14
|
+
};
|
|
15
|
+
declare const _default: typeof __VLS_export;
|
|
16
|
+
export default _default;
|
|
17
|
+
type __VLS_PrettifyLocal<T> = (T extends any ? {
|
|
18
|
+
[K in keyof T]: T[K];
|
|
19
|
+
} : {
|
|
20
|
+
[K in keyof T as K]: T[K];
|
|
21
|
+
}) & {};
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { composeSlotClassName } from "../../utils/compose.js";
|
|
2
|
+
import { dataAttr } from "../../utils/assertion.js";
|
|
3
|
+
import icon_chevron_down_default from "../icons/icon-chevron-down.js";
|
|
4
|
+
import { useSidebarCollapsibleContext, useSidebarContext } from "./sidebar.context.js";
|
|
5
|
+
import { computed, createComponent, createIf, createSlot, defineVaporComponent, renderEffect, setAttr, setClass, setInsertionState, template, unref, useSlots } from "vue";
|
|
6
|
+
//#region src/components/sidebar/sidebar-item-indicator.vue?vue&type=script&setup=true&vapor=true&lang.ts
|
|
7
|
+
var t0 = template("<span aria-hidden=true data-slot=sidebar-item-indicator>", 1);
|
|
8
|
+
var sidebar_item_indicator_vue_vue_type_script_setup_true_vapor_true_lang_default = /*@__PURE__*/ defineVaporComponent({
|
|
9
|
+
__name: "sidebar-item-indicator",
|
|
10
|
+
props: { class: {} },
|
|
11
|
+
setup(__props) {
|
|
12
|
+
const props = __props;
|
|
13
|
+
const iconSlots = useSlots();
|
|
14
|
+
const { slots, state } = useSidebarContext();
|
|
15
|
+
const collapsible = useSidebarCollapsibleContext();
|
|
16
|
+
/**
|
|
17
|
+
* With no icon of its own to render, the built-in chevron carries the class and the state directly,
|
|
18
|
+
* exactly as `disclosure-indicator.vue` does. That matters inside a button, where the stylesheet
|
|
19
|
+
* reaches icons through an `svg` selector: a wrapper element would not match it.
|
|
20
|
+
*
|
|
21
|
+
* A custom icon does need a wrapper. Reading a slot in Vapor renders it, so the icon cannot be
|
|
22
|
+
* inspected and handed the class the way React clones it into place.
|
|
23
|
+
*/
|
|
24
|
+
const hasCustomIcon = iconSlots.default !== void 0;
|
|
25
|
+
const className = computed(() => composeSlotClassName(slots.value.itemIndicator, props.class));
|
|
26
|
+
return createIf(() => hasCustomIcon, () => {
|
|
27
|
+
const n3 = t0();
|
|
28
|
+
renderEffect(() => {
|
|
29
|
+
const _dataAttr = unref(dataAttr);
|
|
30
|
+
setClass(n3, className.value);
|
|
31
|
+
setAttr(n3, "data-collapsed", _dataAttr(unref(state).isCollapsed.value));
|
|
32
|
+
setAttr(n3, "data-expanded", _dataAttr(unref(collapsible).isExpanded.value));
|
|
33
|
+
});
|
|
34
|
+
setInsertionState(n3);
|
|
35
|
+
createSlot();
|
|
36
|
+
return n3;
|
|
37
|
+
}, () => {
|
|
38
|
+
return createComponent(icon_chevron_down_default, {
|
|
39
|
+
class: () => className.value,
|
|
40
|
+
"data-collapsed": () => unref(dataAttr)(unref(state).isCollapsed.value),
|
|
41
|
+
"data-expanded": () => unref(dataAttr)(unref(collapsible).isExpanded.value),
|
|
42
|
+
"data-slot": "sidebar-item-indicator"
|
|
43
|
+
}, null, true);
|
|
44
|
+
}, 261);
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
//#endregion
|
|
48
|
+
export { sidebar_item_indicator_vue_vue_type_script_setup_true_vapor_true_lang_default as default };
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { SidebarItemLabelProps, SidebarPartSlotProps } from "./sidebar.types.js";
|
|
2
|
+
declare const __VLS_export: (__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>['props'], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, 'attrs' | 'emit' | 'slots'>>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>['expose'], __VLS_setup?: Promise<{
|
|
3
|
+
props: import('vue').PublicProps & __VLS_PrettifyLocal<SidebarItemLabelProps> & (typeof globalThis extends {
|
|
4
|
+
__VLS_PROPS_FALLBACK: infer P;
|
|
5
|
+
} ? P : {});
|
|
6
|
+
expose: (exposed: {}) => void;
|
|
7
|
+
attrs: any;
|
|
8
|
+
slots: {
|
|
9
|
+
default?: (props: SidebarPartSlotProps) => unknown;
|
|
10
|
+
};
|
|
11
|
+
emit: {};
|
|
12
|
+
}>) => import('vue').VNode & {
|
|
13
|
+
__ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
|
|
14
|
+
};
|
|
15
|
+
declare const _default: typeof __VLS_export;
|
|
16
|
+
export default _default;
|
|
17
|
+
type __VLS_PrettifyLocal<T> = (T extends any ? {
|
|
18
|
+
[K in keyof T]: T[K];
|
|
19
|
+
} : {
|
|
20
|
+
[K in keyof T as K]: T[K];
|
|
21
|
+
}) & {};
|