@itguy614/clean-ui 0.9.0 → 1.0.1
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/_virtual/_plugin-vue_export-helper.js +9 -0
- package/dist/clean-ui.css +1 -1
- package/dist/components/CuiAccordion.vue.js +7 -0
- package/dist/components/CuiAccordion.vue2.js +55 -0
- package/dist/components/CuiAccordionItem.vue.js +7 -0
- package/dist/components/CuiAccordionItem.vue2.js +91 -0
- package/dist/components/CuiAlert.vue.d.ts.map +1 -1
- package/dist/components/CuiAlert.vue.js +7 -0
- package/dist/components/CuiAlert.vue2.js +113 -0
- package/dist/components/CuiAvatar.vue.js +99 -0
- package/dist/components/CuiAvatar.vue3.js +5 -0
- package/dist/components/CuiAvatarGroup.vue.js +22 -0
- package/dist/components/CuiAvatarGroup.vue3.js +5 -0
- package/dist/components/CuiBackdrop.vue.js +7 -0
- package/dist/components/CuiBackdrop.vue2.js +49 -0
- package/dist/components/CuiBadge.vue.d.ts.map +1 -1
- package/dist/components/CuiBadge.vue.js +7 -0
- package/dist/components/CuiBadge.vue2.js +82 -0
- package/dist/components/CuiBanner.vue.js +81 -0
- package/dist/components/CuiBanner.vue2.js +4 -0
- package/dist/components/CuiBreadcrumb.vue.js +7 -0
- package/dist/components/CuiBreadcrumb.vue2.js +29 -0
- package/dist/components/CuiBreadcrumbItem.vue.js +7 -0
- package/dist/components/CuiBreadcrumbItem.vue2.js +46 -0
- package/dist/components/CuiButton.vue.d.ts.map +1 -1
- package/dist/components/CuiButton.vue.js +7 -0
- package/dist/components/CuiButton.vue2.js +136 -0
- package/dist/components/CuiButtonGroup.vue.js +7 -0
- package/dist/components/CuiButtonGroup.vue2.js +21 -0
- package/dist/components/CuiCard.vue.js +35 -0
- package/dist/components/CuiCard.vue2.js +4 -0
- package/dist/components/CuiCardBody.vue.js +20 -0
- package/dist/components/CuiCardBody.vue2.js +4 -0
- package/dist/components/CuiCardFooter.vue.js +32 -0
- package/dist/components/CuiCardFooter.vue2.js +4 -0
- package/dist/components/CuiCardHeader.vue.js +51 -0
- package/dist/components/CuiCardHeader.vue2.js +4 -0
- package/dist/components/CuiCardMedia.vue.js +7 -0
- package/dist/components/CuiCardMedia.vue2.js +38 -0
- package/dist/components/CuiCheckbox.vue.js +7 -0
- package/dist/components/CuiCheckbox.vue2.js +105 -0
- package/dist/components/CuiCheckboxGroup.vue.js +7 -0
- package/dist/components/CuiCheckboxGroup.vue2.js +59 -0
- package/dist/components/CuiCodeBlock.vue.js +129 -0
- package/dist/components/CuiCodeBlock.vue2.js +4 -0
- package/dist/components/CuiColorPicker.vue.js +348 -0
- package/dist/components/CuiColorPicker.vue2.js +4 -0
- package/dist/components/CuiCombobox.vue.js +332 -0
- package/dist/components/CuiCombobox.vue2.js +4 -0
- package/dist/components/CuiConfigProvider.vue.js +18 -0
- package/dist/components/CuiConfigProvider.vue2.js +4 -0
- package/dist/components/CuiConfirmDialog.vue.js +208 -0
- package/dist/components/CuiConfirmDialog.vue2.js +4 -0
- package/dist/components/CuiContainer.vue.js +35 -0
- package/dist/components/CuiContainer.vue2.js +4 -0
- package/dist/components/CuiContextMenu.vue.js +7 -0
- package/dist/components/CuiContextMenu.vue2.js +136 -0
- package/dist/components/CuiCopyButton.vue.js +63 -0
- package/dist/components/CuiCopyButton.vue2.js +4 -0
- package/dist/components/CuiDataGrid.vue.d.ts +53 -79
- package/dist/components/CuiDataGrid.vue.d.ts.map +1 -1
- package/dist/components/CuiDataGrid.vue.js +178 -0
- package/dist/components/CuiDataGrid.vue3.js +5 -0
- package/dist/components/CuiDataGridActiveFilters.vue.js +47 -0
- package/dist/components/CuiDataGridActiveFilters.vue3.js +5 -0
- package/dist/components/CuiDataGridBulkBar.vue.d.ts.map +1 -1
- package/dist/components/CuiDataGridBulkBar.vue.js +70 -0
- package/dist/components/CuiDataGridBulkBar.vue3.js +5 -0
- package/dist/components/CuiDataGridCardView.vue.js +31 -0
- package/dist/components/CuiDataGridCardView.vue2.js +4 -0
- package/dist/components/CuiDataGridColumnManager.vue.js +86 -0
- package/dist/components/CuiDataGridColumnManager.vue2.js +4 -0
- package/dist/components/CuiDataGridFilterPanel.vue.js +181 -0
- package/dist/components/CuiDataGridFilterPanel.vue3.js +5 -0
- package/dist/components/CuiDataGridPagination.vue.js +28 -0
- package/dist/components/CuiDataGridPagination.vue2.js +4 -0
- package/dist/components/CuiDataGridSearch.vue.js +69 -0
- package/dist/components/CuiDataGridSearch.vue2.js +4 -0
- package/dist/components/CuiDataGridTable.vue.js +336 -0
- package/dist/components/CuiDataGridTable.vue2.js +4 -0
- package/dist/components/CuiDataGridToolbar.vue.js +73 -0
- package/dist/components/CuiDataGridToolbar.vue3.js +5 -0
- package/dist/components/CuiDataGridViewManager.vue.js +209 -0
- package/dist/components/CuiDataGridViewManager.vue2.js +4 -0
- package/dist/components/CuiDataGridViewToggle.vue.js +43 -0
- package/dist/components/CuiDataGridViewToggle.vue3.js +5 -0
- package/dist/components/CuiDatePicker.vue.js +382 -0
- package/dist/components/CuiDatePicker.vue2.js +4 -0
- package/dist/components/CuiDateRangePicker.vue.js +376 -0
- package/dist/components/CuiDateRangePicker.vue2.js +4 -0
- package/dist/components/CuiDivider.vue.js +124 -0
- package/dist/components/CuiDivider.vue2.js +4 -0
- package/dist/components/CuiDropdown.vue.js +7 -0
- package/dist/components/CuiDropdown.vue2.js +110 -0
- package/dist/components/CuiDropdownCheckItem.vue.js +7 -0
- package/dist/components/CuiDropdownCheckItem.vue2.js +45 -0
- package/dist/components/CuiDropdownDivider.vue.js +14 -0
- package/dist/components/CuiDropdownHeader.vue.js +16 -0
- package/dist/components/CuiDropdownItem.vue.js +7 -0
- package/dist/components/CuiDropdownItem.vue2.js +55 -0
- package/dist/components/CuiDropdownMenu.vue.js +7 -0
- package/dist/components/CuiDropdownMenu.vue2.js +79 -0
- package/dist/components/CuiDropdownRadioGroup.vue.js +23 -0
- package/dist/components/CuiDropdownRadioGroup.vue2.js +4 -0
- package/dist/components/CuiDropdownRadioItem.vue.js +7 -0
- package/dist/components/CuiDropdownRadioItem.vue2.js +43 -0
- package/dist/components/CuiDropdownSub.vue.js +7 -0
- package/dist/components/CuiDropdownSub.vue2.js +91 -0
- package/dist/components/CuiDropdownTrigger.vue.js +7 -0
- package/dist/components/CuiDropdownTrigger.vue2.js +25 -0
- package/dist/components/CuiEmptyState.vue.js +7 -0
- package/dist/components/CuiEmptyState.vue2.js +70 -0
- package/dist/components/CuiFieldset.vue.js +7 -0
- package/dist/components/CuiFieldset.vue2.js +79 -0
- package/dist/components/CuiFileUpload.vue.js +254 -0
- package/dist/components/CuiFileUpload.vue2.js +4 -0
- package/dist/components/CuiFlex.vue.js +7 -0
- package/dist/components/CuiFlex.vue2.js +72 -0
- package/dist/components/CuiFlexItem.vue.js +35 -0
- package/dist/components/CuiFlexItem.vue2.js +4 -0
- package/dist/components/CuiForm.vue.js +116 -0
- package/dist/components/CuiForm.vue2.js +4 -0
- package/dist/components/CuiFormField.vue.js +7 -0
- package/dist/components/CuiFormField.vue2.js +73 -0
- package/dist/components/CuiGrid.vue.js +7 -0
- package/dist/components/CuiGrid.vue2.js +51 -0
- package/dist/components/CuiGridItem.vue.js +30 -0
- package/dist/components/CuiGridItem.vue2.js +4 -0
- package/dist/components/CuiIcon.vue.js +7 -0
- package/dist/components/CuiIcon.vue2.js +72 -0
- package/dist/components/CuiInput.vue.d.ts +6 -6
- package/dist/components/CuiInput.vue.d.ts.map +1 -1
- package/dist/components/CuiInput.vue.js +7 -0
- package/dist/components/CuiInput.vue2.js +150 -0
- package/dist/components/CuiInputStepper.vue.js +189 -0
- package/dist/components/CuiInputStepper.vue2.js +4 -0
- package/dist/components/CuiKbd.vue.js +44 -0
- package/dist/components/CuiKbd.vue2.js +4 -0
- package/dist/components/CuiMaskedInput.vue.d.ts +8 -8
- package/dist/components/CuiMaskedInput.vue.js +256 -0
- package/dist/components/CuiMaskedInput.vue2.js +4 -0
- package/dist/components/CuiModal.vue.js +7 -0
- package/dist/components/CuiModal.vue2.js +98 -0
- package/dist/components/CuiModalBody.vue.js +50 -0
- package/dist/components/CuiModalBody.vue2.js +4 -0
- package/dist/components/CuiModalFooter.vue.js +36 -0
- package/dist/components/CuiModalFooter.vue2.js +4 -0
- package/dist/components/CuiModalHeader.vue.js +85 -0
- package/dist/components/CuiModalHeader.vue2.js +4 -0
- package/dist/components/CuiPagination.vue.js +7 -0
- package/dist/components/CuiPagination.vue2.js +136 -0
- package/dist/components/CuiPopover.vue.js +227 -0
- package/dist/components/CuiPopover.vue2.js +4 -0
- package/dist/components/CuiProgress.vue.js +7 -0
- package/dist/components/CuiProgress.vue2.js +132 -0
- package/dist/components/CuiRadio.vue.d.ts.map +1 -1
- package/dist/components/CuiRadio.vue.js +7 -0
- package/dist/components/CuiRadio.vue2.js +139 -0
- package/dist/components/CuiRadioGroup.vue.js +7 -0
- package/dist/components/CuiRadioGroup.vue2.js +78 -0
- package/dist/components/CuiRating.vue.js +129 -0
- package/dist/components/CuiRating.vue2.js +4 -0
- package/dist/components/CuiResizablePanels.vue.js +147 -0
- package/dist/components/CuiResizablePanels.vue2.js +4 -0
- package/dist/components/CuiSelect.vue.d.ts.map +1 -1
- package/dist/components/CuiSelect.vue.js +7 -0
- package/dist/components/CuiSelect.vue2.js +359 -0
- package/dist/components/CuiSkeleton.vue.js +7 -0
- package/dist/components/CuiSkeleton.vue2.js +80 -0
- package/dist/components/CuiSlideover.vue.js +109 -0
- package/dist/components/CuiSlideover.vue2.js +4 -0
- package/dist/components/CuiSlider.vue.js +156 -0
- package/dist/components/CuiSlider.vue2.js +4 -0
- package/dist/components/CuiSpacer.vue.js +32 -0
- package/dist/components/CuiSpacer.vue2.js +4 -0
- package/dist/components/CuiSpinner.vue.js +99 -0
- package/dist/components/CuiSpinner.vue3.js +5 -0
- package/dist/components/CuiStack.vue.js +30 -0
- package/dist/components/CuiStack.vue2.js +4 -0
- package/dist/components/CuiStepper.vue.js +153 -0
- package/dist/components/CuiStepper.vue2.js +4 -0
- package/dist/components/CuiTab.vue.js +7 -0
- package/dist/components/CuiTab.vue2.js +73 -0
- package/dist/components/CuiTable.vue.d.ts.map +1 -1
- package/dist/components/CuiTable.vue.js +90 -0
- package/dist/components/CuiTable.vue3.js +5 -0
- package/dist/components/CuiTableBody.vue.js +18 -0
- package/dist/components/CuiTableBody.vue2.js +4 -0
- package/dist/components/CuiTableCell.vue.js +36 -0
- package/dist/components/CuiTableCell.vue2.js +4 -0
- package/dist/components/CuiTableFoot.vue.js +18 -0
- package/dist/components/CuiTableFoot.vue2.js +4 -0
- package/dist/components/CuiTableHead.vue.js +18 -0
- package/dist/components/CuiTableHead.vue2.js +4 -0
- package/dist/components/CuiTableRow.vue.js +23 -0
- package/dist/components/CuiTableRow.vue2.js +4 -0
- package/dist/components/CuiTabs.vue.js +7 -0
- package/dist/components/CuiTabs.vue2.js +124 -0
- package/dist/components/CuiTagInput.vue.js +296 -0
- package/dist/components/CuiTagInput.vue2.js +4 -0
- package/dist/components/CuiTextarea.vue.js +7 -0
- package/dist/components/CuiTextarea.vue2.js +112 -0
- package/dist/components/CuiTimePicker.vue.js +193 -0
- package/dist/components/CuiTimePicker.vue2.js +4 -0
- package/dist/components/CuiTimeline.vue.js +25 -0
- package/dist/components/CuiTimeline.vue2.js +4 -0
- package/dist/components/CuiTimelineItem.vue.js +113 -0
- package/dist/components/CuiTimelineItem.vue2.js +4 -0
- package/dist/components/CuiToast.vue.js +7 -0
- package/dist/components/CuiToast.vue2.js +129 -0
- package/dist/components/CuiToastProvider.vue.js +7 -0
- package/dist/components/CuiToastProvider.vue2.js +87 -0
- package/dist/components/CuiToggle.vue.d.ts.map +1 -1
- package/dist/components/CuiToggle.vue.js +7 -0
- package/dist/components/CuiToggle.vue2.js +116 -0
- package/dist/components/CuiToggleGroup.vue.js +7 -0
- package/dist/components/CuiToggleGroup.vue2.js +59 -0
- package/dist/components/CuiTooltip.vue.js +7 -0
- package/dist/components/CuiTooltip.vue2.js +128 -0
- package/dist/components/CuiTransferList.vue.js +442 -0
- package/dist/components/CuiTransferList.vue2.js +4 -0
- package/dist/components/CuiTreeNode.vue.js +180 -0
- package/dist/components/CuiTreeNode.vue2.js +4 -0
- package/dist/components/CuiTreeView.vue.js +73 -0
- package/dist/components/CuiTreeView.vue2.js +4 -0
- package/dist/components/accordion-context.js +4 -0
- package/dist/components/breadcrumb-context.js +4 -0
- package/dist/components/config-context.js +4 -0
- package/dist/components/data-grid-context.js +4 -0
- package/dist/components/dropdown-context.js +30 -0
- package/dist/components/form-context.js +4 -0
- package/dist/components/multi-select-group-context.js +5 -0
- package/dist/components/radio-context.js +4 -0
- package/dist/components/table-context.js +5 -0
- package/dist/components/tabs-context.js +4 -0
- package/dist/components/toast-context.js +45 -0
- package/dist/composables/useBreakpoint.js +34 -0
- package/dist/composables/useClickOutside.js +14 -0
- package/dist/composables/useCopyToClipboard.js +25 -0
- package/dist/composables/useDataGrid.js +269 -0
- package/dist/composables/useDataGridInertia.js +35 -0
- package/dist/composables/useDataGridViews.js +67 -0
- package/dist/composables/useDensity.js +42 -0
- package/dist/composables/useLayoutContext.js +21 -0
- package/dist/composables/useMessages.js +10 -0
- package/dist/composables/useOverlay.d.ts.map +1 -1
- package/dist/composables/useOverlay.js +59 -0
- package/dist/composables/usePopover.js +53 -0
- package/dist/composables/useScrollShadows.js +56 -0
- package/dist/composables/useTheme.js +57 -0
- package/dist/composables/useToast.js +23 -0
- package/dist/composables/useVirtualScroll.js +69 -0
- package/dist/index.js +290 -0
- package/dist/messages.js +57 -0
- package/dist/ssr-theme-init.js +13 -0
- package/dist/utils/color.js +195 -0
- package/dist/utils/colorIconMap.js +11 -0
- package/dist/utils/date.js +114 -0
- package/dist/utils/devWarn.d.ts +15 -0
- package/dist/utils/devWarn.d.ts.map +1 -0
- package/dist/utils/devWarn.js +20 -0
- package/dist/utils/liveRegion.js +12 -0
- package/dist/utils/resolvers.js +28 -0
- package/dist/utils/responsive.js +68 -0
- package/dist/utils/sizing.js +39 -0
- package/package.json +8 -7
- package/dist/clean-ui.js +0 -11937
- package/dist/clean-ui.umd.cjs +0 -11
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { ref as l, watch as u } from "vue";
|
|
2
|
+
const c = [
|
|
3
|
+
{ id: "compact", label: "Compact", description: "Tighter spacing — more on screen" },
|
|
4
|
+
{ id: "default", label: "Default", description: "Balanced default spacing" },
|
|
5
|
+
{ id: "comfortable", label: "Comfortable", description: "Roomier spacing" }
|
|
6
|
+
], a = "cui-density", s = "cui-density-", i = "default", d = new Set(c.map((t) => t.id)), n = l(f());
|
|
7
|
+
function f() {
|
|
8
|
+
if (typeof window > "u") return i;
|
|
9
|
+
const t = localStorage.getItem(a);
|
|
10
|
+
return t && d.has(t) ? t : i;
|
|
11
|
+
}
|
|
12
|
+
function r(t) {
|
|
13
|
+
if (typeof document > "u") return;
|
|
14
|
+
const e = document.documentElement;
|
|
15
|
+
for (const o of Array.from(e.classList))
|
|
16
|
+
o.startsWith(s) && e.classList.remove(o);
|
|
17
|
+
t !== "default" && e.classList.add(`${s}${t}`), localStorage.setItem(a, t);
|
|
18
|
+
}
|
|
19
|
+
r(n.value);
|
|
20
|
+
u(n, r);
|
|
21
|
+
function p() {
|
|
22
|
+
function t(o) {
|
|
23
|
+
n.value = o;
|
|
24
|
+
}
|
|
25
|
+
function e() {
|
|
26
|
+
return n.value;
|
|
27
|
+
}
|
|
28
|
+
return {
|
|
29
|
+
/** Current density id (reactive) */
|
|
30
|
+
density: n,
|
|
31
|
+
/** Available density presets */
|
|
32
|
+
presets: c,
|
|
33
|
+
/** Set the active density */
|
|
34
|
+
setDensity: t,
|
|
35
|
+
/** Get the current density id */
|
|
36
|
+
getDensity: e
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
export {
|
|
40
|
+
c as DENSITY_PRESETS,
|
|
41
|
+
p as useDensity
|
|
42
|
+
};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { inject as u, ref as x, provide as c } from "vue";
|
|
2
|
+
const l = Symbol("grid-context"), i = Symbol("flex-context");
|
|
3
|
+
function r(t) {
|
|
4
|
+
const n = t === "grid" ? l : i, e = u(n, null), o = x({
|
|
5
|
+
type: t,
|
|
6
|
+
isNested: e !== null,
|
|
7
|
+
depth: e ? e.value.depth + 1 : 0,
|
|
8
|
+
debug: (e == null ? void 0 : e.value.debug) ?? !1
|
|
9
|
+
});
|
|
10
|
+
return c(n, o), { context: o, parentContext: e };
|
|
11
|
+
}
|
|
12
|
+
function s() {
|
|
13
|
+
return r("grid");
|
|
14
|
+
}
|
|
15
|
+
function f() {
|
|
16
|
+
return r("flex");
|
|
17
|
+
}
|
|
18
|
+
export {
|
|
19
|
+
f as useFlexContext,
|
|
20
|
+
s as useGridContext
|
|
21
|
+
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { inject as e, computed as o } from "vue";
|
|
2
|
+
import { CuiConfigKey as t } from "../components/config-context.js";
|
|
3
|
+
import { defaultMessages as r } from "../messages.js";
|
|
4
|
+
const s = o(() => r);
|
|
5
|
+
function n() {
|
|
6
|
+
return e(t, s);
|
|
7
|
+
}
|
|
8
|
+
export {
|
|
9
|
+
n as useMessages
|
|
10
|
+
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useOverlay.d.ts","sourceRoot":"","sources":["../../src/composables/useOverlay.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgD,KAAK,GAAG,EAAE,KAAK,UAAU,EAAE,MAAM,KAAK,CAAC;AAK9F,MAAM,WAAW,iBAAiB;IAChC,2CAA2C;IAC3C,IAAI,EAAE,MAAM,OAAO,CAAC;IACpB,qDAAqD;IACrD,SAAS,EAAE,GAAG,CAAC,WAAW,GAAG,SAAS,CAAC,GAAG,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,QAAQ,CAAC,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC,CAAC;IACpH,qDAAqD;IACrD,UAAU,EAAE,MAAM,OAAO,CAAC;IAC1B,8CAA8C;IAC9C,WAAW,EAAE,MAAM,OAAO,CAAC;IAC3B,oCAAoC;IACpC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iCAAiC;IACjC,YAAY,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,2BAA2B;IAC3B,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,wBAAgB,UAAU,CAAC,OAAO,EAAE,iBAAiB;;;;;;;
|
|
1
|
+
{"version":3,"file":"useOverlay.d.ts","sourceRoot":"","sources":["../../src/composables/useOverlay.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgD,KAAK,GAAG,EAAE,KAAK,UAAU,EAAE,MAAM,KAAK,CAAC;AAK9F,MAAM,WAAW,iBAAiB;IAChC,2CAA2C;IAC3C,IAAI,EAAE,MAAM,OAAO,CAAC;IACpB,qDAAqD;IACrD,SAAS,EAAE,GAAG,CAAC,WAAW,GAAG,SAAS,CAAC,GAAG,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,QAAQ,CAAC,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC,CAAC;IACpH,qDAAqD;IACrD,UAAU,EAAE,MAAM,OAAO,CAAC;IAC1B,8CAA8C;IAC9C,WAAW,EAAE,MAAM,OAAO,CAAC;IAC3B,oCAAoC;IACpC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iCAAiC;IACjC,YAAY,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,2BAA2B;IAC3B,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,wBAAgB,UAAU,CAAC,OAAO,EAAE,iBAAiB;;;;;;;mBAuE7B,aAAa;EAyDpC"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { ref as d, watch as x, onMounted as A, onUnmounted as E, nextTick as q } from "vue";
|
|
2
|
+
const t = /* @__PURE__ */ new Set();
|
|
3
|
+
function C(y) {
|
|
4
|
+
const {
|
|
5
|
+
open: v,
|
|
6
|
+
dialogRef: l,
|
|
7
|
+
persistent: p,
|
|
8
|
+
allowNested: b,
|
|
9
|
+
animationDuration: g = 200,
|
|
10
|
+
onUpdateOpen: w,
|
|
11
|
+
onClose: O
|
|
12
|
+
} = y, i = Symbol("overlay"), s = d(!1), a = d(!1), m = d(null);
|
|
13
|
+
function u() {
|
|
14
|
+
!b() && t.size > 0 && t.clear(), t.add(i), m.value = document.activeElement, s.value = !0, document.body.style.overflow = "hidden", q(() => {
|
|
15
|
+
requestAnimationFrame(() => {
|
|
16
|
+
var e;
|
|
17
|
+
a.value = !0, (e = l.value) == null || e.focus();
|
|
18
|
+
});
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
function c() {
|
|
22
|
+
a.value = !1, t.delete(i), setTimeout(() => {
|
|
23
|
+
var e;
|
|
24
|
+
s.value = !1, w(!1), O(), t.size === 0 && (document.body.style.overflow = ""), (e = m.value) == null || e.focus();
|
|
25
|
+
}, g);
|
|
26
|
+
}
|
|
27
|
+
function f() {
|
|
28
|
+
p() || c();
|
|
29
|
+
}
|
|
30
|
+
function h() {
|
|
31
|
+
f();
|
|
32
|
+
}
|
|
33
|
+
function k(e) {
|
|
34
|
+
if (e.key === "Escape" && (e.stopPropagation(), f()), e.key === "Tab" && l.value) {
|
|
35
|
+
const r = l.value.querySelectorAll(
|
|
36
|
+
'button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])'
|
|
37
|
+
), o = r[0], n = r[r.length - 1];
|
|
38
|
+
e.shiftKey ? document.activeElement === o && (e.preventDefault(), n == null || n.focus()) : document.activeElement === n && (e.preventDefault(), o == null || o.focus());
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
return x(v, (e) => {
|
|
42
|
+
e ? u() : c();
|
|
43
|
+
}), A(() => {
|
|
44
|
+
v() && u();
|
|
45
|
+
}), E(() => {
|
|
46
|
+
t.delete(i), t.size === 0 && (document.body.style.overflow = "");
|
|
47
|
+
}), {
|
|
48
|
+
isVisible: s,
|
|
49
|
+
isAnimating: a,
|
|
50
|
+
openOverlay: u,
|
|
51
|
+
closeOverlay: c,
|
|
52
|
+
requestClose: f,
|
|
53
|
+
onBackdropClick: h,
|
|
54
|
+
onKeydown: k
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
export {
|
|
58
|
+
C as useOverlay
|
|
59
|
+
};
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { ref as a, computed as o, toValue as c } from "vue";
|
|
2
|
+
import { offset as S, flip as D, shift as P, arrow as R, useFloating as $, autoUpdate as k } from "@floating-ui/vue";
|
|
3
|
+
function F(e = {}) {
|
|
4
|
+
const l = a(null), s = a(null), r = a(null), f = e.placement ?? "top", p = e.offsetDistance ?? 8, d = o(() => {
|
|
5
|
+
const t = c(f);
|
|
6
|
+
if (t !== "auto")
|
|
7
|
+
return t;
|
|
8
|
+
}), m = o(() => {
|
|
9
|
+
const t = [
|
|
10
|
+
S(c(p)),
|
|
11
|
+
D({ fallbackAxisSideDirection: "start" }),
|
|
12
|
+
P({ padding: 8 })
|
|
13
|
+
];
|
|
14
|
+
return e.arrow && r.value && t.push(R({ element: r.value, padding: 4 })), t;
|
|
15
|
+
}), { floatingStyles: w, placement: n, middlewareData: i, isPositioned: g, update: v } = $(
|
|
16
|
+
l,
|
|
17
|
+
s,
|
|
18
|
+
{
|
|
19
|
+
placement: d,
|
|
20
|
+
middleware: m,
|
|
21
|
+
strategy: e.strategy ?? "absolute",
|
|
22
|
+
whileElementsMounted: k
|
|
23
|
+
}
|
|
24
|
+
), x = o(() => {
|
|
25
|
+
if (!e.arrow || !i.value.arrow) return {};
|
|
26
|
+
const { x: t, y: u } = i.value.arrow, h = n.value.split("-")[0], y = {
|
|
27
|
+
top: "bottom",
|
|
28
|
+
bottom: "top",
|
|
29
|
+
left: "right",
|
|
30
|
+
right: "left"
|
|
31
|
+
};
|
|
32
|
+
return {
|
|
33
|
+
position: "absolute",
|
|
34
|
+
left: t != null ? `${t}px` : "",
|
|
35
|
+
top: u != null ? `${u}px` : "",
|
|
36
|
+
[y[h]]: "-4px"
|
|
37
|
+
};
|
|
38
|
+
}), b = o(() => n.value.split("-")[0]);
|
|
39
|
+
return {
|
|
40
|
+
referenceRef: l,
|
|
41
|
+
floatingRef: s,
|
|
42
|
+
arrowRef: r,
|
|
43
|
+
floatingStyles: w,
|
|
44
|
+
arrowStyle: x,
|
|
45
|
+
placement: n,
|
|
46
|
+
currentSide: b,
|
|
47
|
+
isPositioned: g,
|
|
48
|
+
update: v
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
export {
|
|
52
|
+
F as usePopover
|
|
53
|
+
};
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { ref as o } from "vue";
|
|
2
|
+
function p() {
|
|
3
|
+
const r = o(!1), l = o(!1), s = o(!1), a = o(!1);
|
|
4
|
+
function n(t) {
|
|
5
|
+
r.value = t.scrollTop > 4, l.value = t.scrollHeight - t.scrollTop - t.clientHeight > 4, s.value = t.scrollLeft > 4, a.value = t.scrollWidth - t.scrollLeft - t.clientWidth > 4;
|
|
6
|
+
}
|
|
7
|
+
function c(t) {
|
|
8
|
+
n(t.target);
|
|
9
|
+
}
|
|
10
|
+
function i(t) {
|
|
11
|
+
t && requestAnimationFrame(() => n(t));
|
|
12
|
+
}
|
|
13
|
+
return {
|
|
14
|
+
canScrollUp: r,
|
|
15
|
+
canScrollDown: l,
|
|
16
|
+
canScrollLeft: s,
|
|
17
|
+
canScrollRight: a,
|
|
18
|
+
onScroll: c,
|
|
19
|
+
onMount: i,
|
|
20
|
+
update: n
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
const e = "var(--cui-surface-base, white)", u = {
|
|
24
|
+
position: "absolute",
|
|
25
|
+
top: "0",
|
|
26
|
+
left: "0",
|
|
27
|
+
right: "0",
|
|
28
|
+
height: "36px",
|
|
29
|
+
pointerEvents: "none",
|
|
30
|
+
zIndex: "5",
|
|
31
|
+
background: `linear-gradient(to bottom, ${e}, transparent)`
|
|
32
|
+
}, f = {
|
|
33
|
+
position: "absolute",
|
|
34
|
+
bottom: "0",
|
|
35
|
+
left: "0",
|
|
36
|
+
right: "0",
|
|
37
|
+
height: "36px",
|
|
38
|
+
pointerEvents: "none",
|
|
39
|
+
zIndex: "5",
|
|
40
|
+
background: `linear-gradient(to top, ${e}, transparent)`
|
|
41
|
+
}, g = {
|
|
42
|
+
position: "absolute",
|
|
43
|
+
right: "0",
|
|
44
|
+
top: "0",
|
|
45
|
+
bottom: "0",
|
|
46
|
+
width: "36px",
|
|
47
|
+
pointerEvents: "none",
|
|
48
|
+
zIndex: "20",
|
|
49
|
+
background: `linear-gradient(to left, ${e}, transparent)`
|
|
50
|
+
};
|
|
51
|
+
export {
|
|
52
|
+
f as scrollShadowBottomStyle,
|
|
53
|
+
g as scrollShadowRightStyle,
|
|
54
|
+
u as scrollShadowTopStyle,
|
|
55
|
+
p as useScrollShadows
|
|
56
|
+
};
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { ref as c, watch as s } from "vue";
|
|
2
|
+
const u = [
|
|
3
|
+
{ id: "mono", label: "Mono", description: "Monochrome — default theme" },
|
|
4
|
+
{ id: "default", label: "Navy", description: "Navy blue" },
|
|
5
|
+
{ id: "forest", label: "Forest", description: "Natural green" },
|
|
6
|
+
{ id: "amber", label: "Amber", description: "Warm orange with warm grays" },
|
|
7
|
+
{ id: "azure", label: "Azure", description: "Vibrant blue" },
|
|
8
|
+
{ id: "teal", label: "Teal", description: "Cool teal" },
|
|
9
|
+
{ id: "violet", label: "Violet", description: "Rich purple" },
|
|
10
|
+
{ id: "ruby", label: "Ruby", description: "Bold red" }
|
|
11
|
+
], n = "cui-theme", i = "cui-theme-", a = typeof window < "u";
|
|
12
|
+
function d() {
|
|
13
|
+
if (!a) return "mono";
|
|
14
|
+
try {
|
|
15
|
+
return localStorage.getItem(n) ?? "mono";
|
|
16
|
+
} catch {
|
|
17
|
+
return "mono";
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
const o = c(d());
|
|
21
|
+
function l(e) {
|
|
22
|
+
if (typeof document > "u") return;
|
|
23
|
+
const t = document.documentElement;
|
|
24
|
+
for (const r of Array.from(t.classList))
|
|
25
|
+
r.startsWith(i) && t.classList.remove(r);
|
|
26
|
+
e !== "default" && t.classList.add(`${i}${e}`);
|
|
27
|
+
}
|
|
28
|
+
l(o.value);
|
|
29
|
+
s(o, (e) => {
|
|
30
|
+
if (l(e), a)
|
|
31
|
+
try {
|
|
32
|
+
localStorage.setItem(n, e);
|
|
33
|
+
} catch {
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
function f() {
|
|
37
|
+
function e(r) {
|
|
38
|
+
o.value = r;
|
|
39
|
+
}
|
|
40
|
+
function t() {
|
|
41
|
+
return o.value;
|
|
42
|
+
}
|
|
43
|
+
return {
|
|
44
|
+
/** Current theme ID (reactive) */
|
|
45
|
+
theme: o,
|
|
46
|
+
/** List of available theme presets */
|
|
47
|
+
presets: u,
|
|
48
|
+
/** Set the active theme by ID */
|
|
49
|
+
setTheme: e,
|
|
50
|
+
/** Get the current theme ID */
|
|
51
|
+
getTheme: t
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
export {
|
|
55
|
+
u as THEME_PRESETS,
|
|
56
|
+
f as useTheme
|
|
57
|
+
};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { inject as c } from "vue";
|
|
2
|
+
import { ToastContextKey as u } from "../components/toast-context.js";
|
|
3
|
+
function f() {
|
|
4
|
+
const i = c(u);
|
|
5
|
+
if (!i)
|
|
6
|
+
throw new Error(
|
|
7
|
+
"[CuiToast] useToast() must be used within a <CuiToastProvider>. Wrap your app with <CuiToastProvider> to enable toasts."
|
|
8
|
+
);
|
|
9
|
+
const r = i;
|
|
10
|
+
function s(o) {
|
|
11
|
+
return r.add(o);
|
|
12
|
+
}
|
|
13
|
+
function n(o) {
|
|
14
|
+
r.dismiss(o);
|
|
15
|
+
}
|
|
16
|
+
function e() {
|
|
17
|
+
r.dismissAll();
|
|
18
|
+
}
|
|
19
|
+
return s.success = (o, t) => s({ ...t, title: o, color: "success" }), s.error = (o, t) => s({ ...t, title: o, color: "error" }), s.warning = (o, t) => s({ ...t, title: o, color: "warning" }), s.info = (o, t) => s({ ...t, title: o, color: "info" }), { toast: s, dismiss: n, dismissAll: e };
|
|
20
|
+
}
|
|
21
|
+
export {
|
|
22
|
+
f as useToast
|
|
23
|
+
};
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { ref as c, computed as u, watch as w, onBeforeUnmount as x } from "vue";
|
|
2
|
+
const A = 41, V = 5;
|
|
3
|
+
function F(r, H) {
|
|
4
|
+
const { containerRef: i, rowHeight: v, overscan: f = V } = H, a = c(0), h = c(0), n = c(v ?? A);
|
|
5
|
+
let d = !!v;
|
|
6
|
+
const s = u(() => {
|
|
7
|
+
const e = n.value;
|
|
8
|
+
return e <= 0 ? 0 : Math.max(0, Math.floor(a.value / e) - f);
|
|
9
|
+
}), m = u(() => {
|
|
10
|
+
const e = n.value;
|
|
11
|
+
if (e <= 0) return r.value.length - 1;
|
|
12
|
+
const t = Math.ceil(h.value / e);
|
|
13
|
+
return Math.min(
|
|
14
|
+
r.value.length - 1,
|
|
15
|
+
Math.floor(a.value / e) + t + f
|
|
16
|
+
);
|
|
17
|
+
}), b = u(
|
|
18
|
+
() => r.value.slice(s.value, m.value + 1)
|
|
19
|
+
), E = u(
|
|
20
|
+
() => s.value * n.value
|
|
21
|
+
), L = u(() => {
|
|
22
|
+
const e = r.value.length - 1 - m.value;
|
|
23
|
+
return Math.max(0, e * n.value);
|
|
24
|
+
});
|
|
25
|
+
let o = null;
|
|
26
|
+
function g() {
|
|
27
|
+
o === null && (o = requestAnimationFrame(() => {
|
|
28
|
+
o = null;
|
|
29
|
+
const e = i.value;
|
|
30
|
+
e && (a.value = e.scrollTop);
|
|
31
|
+
}));
|
|
32
|
+
}
|
|
33
|
+
function p() {
|
|
34
|
+
const e = i.value;
|
|
35
|
+
e && (h.value = e.clientHeight);
|
|
36
|
+
}
|
|
37
|
+
let l = null;
|
|
38
|
+
function M(e) {
|
|
39
|
+
e.addEventListener("scroll", g, { passive: !0 }), p(), l = new ResizeObserver(p), l.observe(e);
|
|
40
|
+
}
|
|
41
|
+
function R(e) {
|
|
42
|
+
e.removeEventListener("scroll", g), l == null || l.disconnect(), l = null;
|
|
43
|
+
}
|
|
44
|
+
w(
|
|
45
|
+
i,
|
|
46
|
+
(e, t) => {
|
|
47
|
+
t && R(t), e && M(e);
|
|
48
|
+
},
|
|
49
|
+
{ immediate: !0 }
|
|
50
|
+
), x(() => {
|
|
51
|
+
o !== null && cancelAnimationFrame(o), i.value && R(i.value);
|
|
52
|
+
});
|
|
53
|
+
function T(e) {
|
|
54
|
+
if (!e || d) return;
|
|
55
|
+
const t = e.getBoundingClientRect().height;
|
|
56
|
+
t > 0 && (n.value = t, d = !0);
|
|
57
|
+
}
|
|
58
|
+
return {
|
|
59
|
+
visibleRows: b,
|
|
60
|
+
firstVisibleIndex: s,
|
|
61
|
+
paddingTop: E,
|
|
62
|
+
paddingBottom: L,
|
|
63
|
+
measureRow: T,
|
|
64
|
+
resolvedRowHeight: n
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
export {
|
|
68
|
+
F as useVirtualScroll
|
|
69
|
+
};
|