vlite3 0.9.7 → 0.9.9

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 (51) hide show
  1. package/components/Accordion/Accordion.vue.d.ts +1 -1
  2. package/components/Accordion/AccordionItem.vue.d.ts +1 -1
  3. package/components/Accordion/AccordionTrigger.vue.d.ts +1 -1
  4. package/components/Alert.vue.d.ts +1 -1
  5. package/components/Avatar.vue.d.ts +2 -2
  6. package/components/Avatar.vue.js +1 -1
  7. package/components/AvatarUploader/AvatarUploader.vue.d.ts +1 -1
  8. package/components/BackButton.vue.d.ts +1 -1
  9. package/components/Badge.vue.d.ts +1 -1
  10. package/components/Barcode/Barcode.vue.d.ts +1 -1
  11. package/components/Breadcrumb/Breadcrumb.vue.d.ts +1 -1
  12. package/components/Button.vue.d.ts +2 -2
  13. package/components/CheckBox.vue.d.ts +1 -1
  14. package/components/Chip/Chip.vue.d.ts +1 -1
  15. package/components/ColorPicker/ColorIro.vue3.js +2 -2
  16. package/components/ColorPicker/ColorPicker.vue.js +2 -2
  17. package/components/DataTable/DataTable.vue.js +55 -54
  18. package/components/DataTable/DataTableHeader.vue.js +5 -3
  19. package/components/DataTable/DataTableRow.vue.js +23 -24
  20. package/components/DatePicker.vue.js +105 -73
  21. package/components/DateRangePicker.vue.d.ts +2 -2
  22. package/components/DateRangePicker.vue.js +83 -80
  23. package/components/Form/FormField.vue.d.ts +1 -1
  24. package/components/Form/FormField.vue.js +35 -27
  25. package/components/Form/FormFields.vue.js +2 -2
  26. package/components/Form/FormFields.vue2.js +33 -31
  27. package/components/Form/types.d.ts +1 -1
  28. package/components/Input.vue.d.ts +3 -3
  29. package/components/Kanban/KanbanBoard.vue2.js +29 -27
  30. package/components/List/List.vue.d.ts +1 -1
  31. package/components/List/List.vue.js +1 -1
  32. package/components/Navbar/Navbar.vue.d.ts +2 -2
  33. package/components/Navbar/NavbarItem.vue.d.ts +1 -1
  34. package/components/Navbar/NavbarTabs.vue.d.ts +1 -1
  35. package/components/NumberInput.vue.d.ts +1 -1
  36. package/components/OTPInput/OTPInput.vue.d.ts +1 -1
  37. package/components/PermissionMatrix/PermissionEditor.vue.d.ts +2 -2
  38. package/components/PermissionMatrix/PermissionMatrix.vue.d.ts +2 -2
  39. package/components/ProgressBar/ProgressBar.vue.d.ts +1 -1
  40. package/components/Screen/Screen.vue.d.ts +1 -1
  41. package/components/Screen/ScreenFilter.vue.js +1 -1
  42. package/components/SidePanel.vue.d.ts +1 -1
  43. package/components/Spinner/Spinner.vue.d.ts +2 -2
  44. package/components/Stats/Stats.vue.d.ts +1 -1
  45. package/components/StatusChip/StatusChip.vue.d.ts +1 -1
  46. package/index.js +255 -254
  47. package/package.json +2 -2
  48. package/style.css +1 -1
  49. package/utils/functions.d.ts +23 -10
  50. package/utils/functions.js +110 -70
  51. /package/components/ColorPicker/{ColorIro.vue.js → ColorIro.vue2.js} +0 -0
package/style.css CHANGED
@@ -973,5 +973,5 @@ textarea::-webkit-scrollbar-thumb:hover {
973
973
  }
974
974
 
975
975
  /* --- Vite Generated CSS --- */
976
- input[data-v-9a771336]::-webkit-outer-spin-button,input[data-v-9a771336]::-webkit-inner-spin-button{-webkit-appearance:none;appearance:none;margin:0}input[type=number][data-v-9a771336]{-moz-appearance:textfield;appearance:textfield}@keyframes onAutoFillStart{0%{opacity:1}to{opacity:1}}@keyframes onAutoFillCancel{0%{opacity:1}to{opacity:1}}input.autofill-detect:-webkit-autofill{animation-name:onAutoFillStart;animation-duration:1ms;animation-fill-mode:both}input.autofill-detect:not(:-webkit-autofill){animation-name:onAutoFillCancel;animation-duration:1ms;animation-fill-mode:both}.dropdown-menu[data-v-c4c5d9e4]{will-change:transform;contain:layout style}.v-modal-overlay[data-v-7c958115]{background-color:#00000052}.v-modal-backdrop[data-v-7c958115]{transform:translateZ(0);will-change:opacity}.modal-body[data-v-7c958115]{will-change:transform;contain:layout style}.blink-bg[data-v-7c958115]{animation:blink-animation-7c958115 1s infinite}@keyframes blink-animation-7c958115{0%{background-color:inherit}15%{background-color:var(--color-gray-250)}35%{background-color:inherit}75%{background-color:var(--color-gray-250)}to{background-color:inherit}}.IroBox{border-radius:8px!important}.custom-fields-table[data-v-3674ca13]{will-change:transform;contain:layout style}.custom-fields-table[data-v-3674ca13] .form-field-item{margin-bottom:0!important;height:100%}.custom-fields-table[data-v-3674ca13] input,.custom-fields-table[data-v-3674ca13] textarea{padding-left:1em;padding-right:.5em}.custom-fields-table[data-v-3674ca13] input,.custom-fields-table[data-v-3674ca13] textarea,.custom-fields-table[data-v-3674ca13] select,.custom-fields-table[data-v-3674ca13] .input-wrapper,.custom-fields-table[data-v-3674ca13] .tooltip-trigger button{border:none!important;background:transparent!important;box-shadow:none!important;border-radius:0!important;height:100%!important;min-height:40px}.custom-fields-table[data-v-3674ca13] .tooltip-trigger button{justify-content:space-between!important}.custom-fields-table[data-v-3674ca13] input:focus,.custom-fields-table[data-v-3674ca13] textarea:focus,.custom-fields-table[data-v-3674ca13] select:focus,.custom-fields-table[data-v-3674ca13] .input-wrapper:focus-within{background-color:hsla(var(--primary) / .03)!important;box-shadow:inset 0 0 0 2px hsla(var(--primary) / .1)!important}.custom-fields-table[data-v-3674ca13] .w-full{width:100%;height:100%}.list-enter-active[data-v-3674ca13]{transition:all .15s cubic-bezier(.16,1,.3,1)}.list-enter-from[data-v-3674ca13]{opacity:0;transform:translateY(-5px)}.form-field-item[data-v-e60dfb65]{display:flex;flex-direction:column}.form-field-item[data-v-e60dfb65]:has([role=switch]),.form-field-item[data-v-e60dfb65]:has([role=checkbox]){flex-direction:row;align-items:center;justify-content:flex-start}.form-container[data-v-06b1158f]{width:100%}[data-tabes][data-v-262d5698]:not(.inline-flex):not([class*=gap-6])>:where(button,a,[role=tab]){flex:1 1 0%;min-width:0}[data-tabes].inline-flex[data-v-262d5698]{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}[data-tabes].inline-flex[data-v-262d5698]::-webkit-scrollbar{display:none}@media(max-width:480px){[data-tabes][data-v-262d5698]:not([class*=flex-wrap]){overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}[data-tabes][data-v-262d5698]:not([class*=flex-wrap])::-webkit-scrollbar{display:none}}.custom-scrollbar[data-v-3a733454]::-webkit-scrollbar{width:0px}.custom-scrollbar[data-v-3a733454]::-webkit-scrollbar-track{background:transparent}.custom-scrollbar[data-v-3a733454]::-webkit-scrollbar-thumb{background-color:var(--color-border);border-radius:10px}.scrollable-container[data-v-3a733454]{will-change:transform;contain:layout style}.custom-scrollbar-x[data-v-1285df4f]::-webkit-scrollbar{height:8px}.custom-scrollbar-x[data-v-1285df4f]::-webkit-scrollbar-track{background:transparent}.custom-scrollbar-x[data-v-1285df4f]::-webkit-scrollbar-thumb{background-color:var(--color-border);border-radius:10px}.scrollable-container[data-v-1285df4f]{will-change:transform;contain:layout style}.v-sidepanel-overlay[data-v-ff2923de]{background-color:#0003}.sidepanel-body[data-v-ff2923de]{will-change:transform;contain:layout style}.navbar-tabs-no-scrollbar{scrollbar-width:none;-ms-overflow-style:none}.navbar-tabs-no-scrollbar::-webkit-scrollbar{display:none}.fade-x-enter-active,.fade-x-leave-active{transition:opacity .15s ease}.fade-x-enter-from,.fade-x-leave-to{opacity:0}.breadcrumb-item[data-v-ecb5df7c]{display:inline-flex;align-items:center;cursor:pointer}.breadcrumb-link[data-v-ecb5df7c]{display:inline-flex;align-items:center;gap:.35em;color:var(--color-muted-foreground);text-decoration:none;transition:color .15s ease,background-color .15s ease;border-radius:var(--radius-sm)}.breadcrumb-link[data-v-ecb5df7c]:not(.current):not(.disabled):hover{color:var(--color-foreground)}.breadcrumb-link.current[data-v-ecb5df7c]{color:var(--color-foreground);font-weight:600;cursor:default}.breadcrumb-link.disabled[data-v-ecb5df7c]{opacity:.45;cursor:not-allowed;pointer-events:none}.breadcrumb-icon[data-v-ecb5df7c]{flex-shrink:0}.breadcrumb-list[data-v-d1e90135]{display:flex;flex-wrap:wrap;align-items:center;list-style:none;margin:0;padding:0;gap:.38em}.breadcrumb--sm[data-v-d1e90135]{font-size:var(--text--fs-2)}.breadcrumb--md[data-v-d1e90135]{font-size:var(--text-fs-0.5, 1em)}.breadcrumb--lg[data-v-d1e90135]{font-size:var(--text-fs-2)}.breadcrumb-separator[data-v-d1e90135]{display:inline-flex;align-items:center;color:var(--color-gray-500);-webkit-user-select:none;user-select:none;font-size:.9em;line-height:1;padding:0 .1em}.breadcrumb-ellipsis[data-v-d1e90135]{display:inline-flex;align-items:center}.breadcrumb-ellipsis-btn[data-v-d1e90135]{display:inline-flex;align-items:center;justify-content:center;width:1.6em;height:1.6em;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:transparent;color:var(--color-muted-foreground);cursor:pointer;font-size:.9em;line-height:1;letter-spacing:.05em;transition:all .15s ease}.breadcrumb-ellipsis-btn[data-v-d1e90135]:hover{background:var(--color-accent);color:var(--color-foreground);border-color:var(--color-gray-350)}.breadcrumb--contained[data-v-d1e90135]{background:var(--color-secondary);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:.45em 1em}.breadcrumb--pills[data-v-d1e90135] .breadcrumb-link{padding:.2em .7em;border-radius:9999px;background:var(--color-secondary);border:1px solid var(--color-border)}.breadcrumb--pills[data-v-d1e90135] .breadcrumb-link:not(.current):not(.disabled):hover{background:var(--color-accent);border-color:var(--color-gray-350)}.breadcrumb--pills[data-v-d1e90135] .breadcrumb-link.current{background:var(--color-primary);color:var(--color-primary-foreground);border-color:var(--color-primary)}.breadcrumb--arrow .breadcrumb-list[data-v-d1e90135]{gap:0}.breadcrumb--arrow[data-v-d1e90135] .breadcrumb-link{padding:.35em .9em .35em 1.4em;background:var(--color-secondary);clip-path:polygon(0 0,calc(100% - .6em) 0,100% 50%,calc(100% - .6em) 100%,0 100%,.6em 50%);border:none;margin-left:-.3em}.breadcrumb--arrow[data-v-d1e90135] .breadcrumb-item:first-child .breadcrumb-link{padding-left:.9em;clip-path:polygon(0 0,calc(100% - .6em) 0,100% 50%,calc(100% - .6em) 100%,0 100%);border-radius:var(--radius-sm) 0 0 var(--radius-sm);margin-left:0}.breadcrumb--arrow[data-v-d1e90135] .breadcrumb-link:not(.current):not(.disabled):hover{background:var(--color-accent)}.breadcrumb--arrow[data-v-d1e90135] .breadcrumb-link.current{background:var(--color-primary);color:var(--color-primary-foreground)}.breadcrumb--arrow .breadcrumb-separator[data-v-d1e90135]{display:none}.import-table[data-v-cfd99cc9]{width:100%;font-size:.875rem;text-align:left;border-collapse:collapse}.import-thead[data-v-cfd99cc9]{font-size:.75rem;color:var(--color-muted-foreground, #6b7280);text-transform:uppercase;background-color:var(--color-muted, #f3f4f6);position:sticky;top:0;z-index:10}.import-th[data-v-cfd99cc9]{padding:.75rem 1rem;font-weight:500}.import-th-center[data-v-cfd99cc9]{text-align:center;width:4rem}.import-tbody .import-tr[data-v-cfd99cc9]{border-bottom:1px solid var(--color-border, #e5e7eb)}.import-tbody .import-tr[data-v-cfd99cc9]:last-child{border-bottom:none}.import-tr-active[data-v-cfd99cc9]{transition:background-color .2s ease-in-out}.import-tr-active[data-v-cfd99cc9]:hover{background-color:var(--color-muted, #f3f4f6);opacity:.85}.import-tr-ignored[data-v-cfd99cc9]{background-color:var(--color-muted, #f3f4f6);opacity:.6}.import-td-header[data-v-cfd99cc9]{padding:.75rem 1rem;font-weight:500;color:var(--color-foreground, #111827);white-space:nowrap}.import-td-dropdown[data-v-cfd99cc9]{padding:.5rem 1rem;min-width:200px}.import-td-preview[data-v-cfd99cc9]{padding:.75rem 1rem;color:var(--color-muted-foreground, #6b7280);min-width:200px;max-width:300px}.import-td-action[data-v-cfd99cc9]{padding:.75rem 1rem;text-align:center;vertical-align:middle}.heatmap-container[data-v-00476f00]{width:100%;height:100%;display:flex;flex-direction:column;min-height:0}.heatmap-wrapper[data-v-00476f00]{width:100%;height:100%;overflow:auto;flex:1;min-height:0;display:flex;align-items:center;justify-content:center;padding:16px;box-sizing:border-box;position:relative}.heatmap-grid[data-v-00476f00]{width:fit-content;height:fit-content;transition:all .2s ease-in-out}.heatmap-cell[data-v-00476f00]{aspect-ratio:1 / 1;border-radius:2px;transition:all .15s ease-in-out;border:1px solid transparent;box-sizing:border-box}.heatmap-cell-interactive[data-v-00476f00]{cursor:pointer}.heatmap-cell-interactive[data-v-00476f00]:hover{transform:scale(1.1);border-color:var(--border);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;z-index:10;position:relative}.heatmap-cell-empty[data-v-00476f00]{opacity:.6}.heatmap-cell-hovered[data-v-00476f00]{outline:2px solid var(--primary);outline-offset:1px}.heatmap-cell-label[data-v-00476f00]{font-size:8px;font-weight:500;color:var(--foreground);opacity:.8;display:flex;align-items:center;justify-content:center;height:100%;width:100%;pointer-events:none}.heatmap-legend[data-v-00476f00]{display:flex;align-items:center;gap:.5rem;margin-top:1rem;font-size:.75rem;color:var(--muted-foreground);flex-shrink:0}.heatmap-legend-label[data-v-00476f00]{font-weight:500}.heatmap-legend-colors[data-v-00476f00]{display:flex;gap:.125rem}.heatmap-legend-item[data-v-00476f00]{width:.75rem;height:.75rem;border-radius:.375rem;border:1px solid var(--border)}@media(max-width:640px){.heatmap-wrapper[data-v-00476f00]{padding:12px}.heatmap-cell[data-v-00476f00]{border-radius:2px}.heatmap-cell-label[data-v-00476f00]{font-size:7px}}@media(min-width:641px)and (max-width:1023px){.heatmap-wrapper[data-v-00476f00]{padding:14px}.heatmap-cell[data-v-00476f00]{border-radius:2px}}@media(min-width:1024px){.heatmap-wrapper[data-v-00476f00]{padding:16px}.heatmap-cell[data-v-00476f00]{border-radius:3px}}.masonry-item[data-v-c29d0159]{content-visibility:auto;contain-intrinsic-size:1px 200px}.carousel-wrapper[data-v-e8fba320]{width:100%;position:relative;will-change:transform;contain:layout style}.file-tree-container[data-v-91337be9],.sheet-container[data-v-a5e9ca6f]{will-change:transform;contain:layout style}.accordion-enter-active[data-v-0075dffb],.accordion-leave-active[data-v-0075dffb]{transition:height .3s ease-in-out;will-change:height}.content-wrapper[data-v-0075dffb]{contain:paint}.sidebar-manu-item .tooltip-trigger{width:100%!important}.sidebar-menu-tooltip{margin-left:4px!important}[dir=rtl] .sidebar-menu-tooltip{margin-right:4px!important}.bg-stripe[data-v-454a1505]{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-size:1rem 1rem}.animate-progress-stripe[data-v-454a1505]{animation:progress-stripe-454a1505 1s linear infinite}@keyframes progress-stripe-454a1505{0%{background-position:1rem 0}to{background-position:0 0}}.animate-progress-indeterminate[data-v-454a1505]{animation:progress-indeterminate-454a1505 1.5s infinite cubic-bezier(.65,.815,.735,.395)}@keyframes progress-indeterminate-454a1505{0%{transform:translate(-100%) scaleX(.2)}50%{transform:translate(0) scaleX(.5)}to{transform:translate(100%) scaleX(.2)}}.permission-matrix-wrapper[data-v-ba68e64a]{max-height:70vh;will-change:transform;contain:layout style}.permission-matrix-wrapper[data-v-ba68e64a]::-webkit-scrollbar{width:6px;height:6px}.permission-matrix-wrapper[data-v-ba68e64a]::-webkit-scrollbar-track{background:transparent}.permission-matrix-wrapper[data-v-ba68e64a]::-webkit-scrollbar-thumb{background:var(--color-gray-350);border-radius:3px}.permission-matrix-wrapper[data-v-ba68e64a]::-webkit-scrollbar-thumb:hover{background:var(--color-gray-400)}.permission-list-wrapper[data-v-a42b2fb0]{border:1px solid var(--color-border);border-radius:.5rem;overflow:hidden;background-color:var(--color-background);will-change:transform;contain:layout style}.custom-list-header[data-v-a42b2fb0]{background-color:var(--color-muted);border-bottom:1px solid var(--color-border);padding:var(--cell-py) var(--cell-px)}.custom-list-group-content .custom-list-item[data-v-a42b2fb0]{border-bottom:1px solid var(--color-border);padding:var(--cell-py) var(--cell-px);background-color:var(--color-background)}.custom-list-group-content .custom-list-item[data-v-a42b2fb0]:hover{background-color:var(--color-accent)}.custom-list-group-content .custom-list-item[data-v-a42b2fb0]:last-child{border-bottom:none}.custom-list-group-content+.custom-list-header[data-v-a42b2fb0],.custom-list-header+.custom-list-header[data-v-a42b2fb0]{border-top:1px solid var(--color-border)}.permission-list-wrapper>.custom-list-header[data-v-a42b2fb0]:last-child{border-bottom:none}.permission-matrix-wrapper[data-v-0b1ab970]{border:1px solid var(--color-border);background-color:var(--color-gray-100);border-radius:.5rem;overflow:auto;max-height:65vh;position:relative;will-change:transform;contain:layout style}.permission-matrix-wrapper[data-v-0b1ab970]::-webkit-scrollbar{width:6px;height:6px}.permission-matrix-wrapper[data-v-0b1ab970]::-webkit-scrollbar-track{background:transparent}.permission-matrix-wrapper[data-v-0b1ab970]::-webkit-scrollbar-thumb{background:var(--color-gray-350);border-radius:3px}.permission-matrix-wrapper[data-v-0b1ab970]::-webkit-scrollbar-thumb:hover{background:var(--color-gray-400)}.custom-table[data-v-0b1ab970]{width:100%;border-collapse:collapse}.custom-sticky-header th[data-v-0b1ab970]{position:sticky;top:0;z-index:20;box-shadow:0 1px 0 var(--color-border)}.custom-th[data-v-0b1ab970]{background-color:var(--color-gray-150);color:var(--color-foreground);background-clip:padding-box;border-bottom:none;border-left:1px solid var(--color-border);padding:var(--cell-py) var(--cell-px);text-align:left;font-weight:600;min-width:200px}thead:not(.custom-sticky-header) .custom-th[data-v-0b1ab970]{border-bottom:1px solid var(--color-border)}.custom-th.text-center[data-v-0b1ab970]{text-align:center;min-width:100px}.custom-th[data-v-0b1ab970]:first-child{border-left:none}.custom-td[data-v-0b1ab970]{border-bottom:1px solid var(--color-border);border-left:1px solid var(--color-border);padding:var(--cell-py) var(--cell-px)}.custom-td.text-center[data-v-0b1ab970]{text-align:center}.custom-td[data-v-0b1ab970]:first-child{border-left:none}.custom-group-row td[data-v-0b1ab970]{background-color:var(--color-gray-100);border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.custom-entity-row[data-v-0b1ab970]{background-color:var(--color-background);transition:background-color .1s ease}.custom-entity-row[data-v-0b1ab970]:hover{background-color:var(--color-gray-50)}.custom-entity-row:last-child td[data-v-0b1ab970]{border-bottom:none}.custom-active-cell[data-v-0b1ab970]{cursor:pointer}.custom-active-cell[data-v-0b1ab970]:hover{background-color:var(--color-accent)}.button-group[data-v-ba735fac] button{align-self:stretch;height:auto!important;min-height:unset!important;min-width:unset!important;width:auto!important}.button-group[data-v-ba735fac]:not(.vertical-group) button{aspect-ratio:unset}.attached-group[data-v-ba735fac] button{position:relative;--radius: .375rem}.attached-group[data-v-ba735fac] button:focus-visible,.attached-group[data-v-ba735fac] button:hover{z-index:10}.attached-group[data-v-ba735fac]:not(.vertical-group) button:not(:first-child){margin-left:-1px}.attached-group[data-v-ba735fac]:not(.vertical-group) button:first-child{border-top-left-radius:var(--radius);border-bottom-left-radius:var(--radius);border-top-right-radius:0;border-bottom-right-radius:0}.attached-group[data-v-ba735fac]:not(.vertical-group) button:not(:first-child):not(:last-child){border-radius:0}.attached-group[data-v-ba735fac]:not(.vertical-group) button:last-child{border-top-right-radius:var(--radius);border-bottom-right-radius:var(--radius);border-top-left-radius:0;border-bottom-left-radius:0}.vertical-group[data-v-ba735fac] button:not(:first-child){margin-top:-1px}.vertical-group[data-v-ba735fac] button:first-child{border-top-left-radius:var(--radius);border-top-right-radius:var(--radius);border-bottom-left-radius:0;border-bottom-right-radius:0}.vertical-group[data-v-ba735fac] button:not(:first-child):not(:last-child){border-radius:0}.vertical-group[data-v-ba735fac] button:last-child{border-bottom-left-radius:var(--radius);border-bottom-right-radius:var(--radius);border-top-left-radius:0;border-top-right-radius:0}.attached-group[data-v-ba735fac]:not(.vertical-group) button:not(:first-child):not(.border):before{content:"";position:absolute;left:0;top:0;bottom:0;width:1px;background-color:currentColor;opacity:.15;z-index:5;pointer-events:none;height:100%}.vertical-group[data-v-ba735fac] button:not(:first-child):not(.border):before{content:"";position:absolute;top:0;left:0;right:0;height:1px;width:100%;background-color:currentColor;opacity:.15;z-index:5;pointer-events:none}.toast-item[data-v-9c775c23]{will-change:transform,opacity;contain:layout style}.first-toast-enter-active[data-v-9c775c23]{animation:first-toast-in-9c775c23 .45s cubic-bezier(.23,1,.32,1) forwards}.first-toast-leave-active[data-v-9c775c23]{transition:all .25s ease-in}.first-toast-leave-to[data-v-9c775c23]{opacity:0;transform:scale(.98)}@keyframes first-toast-in-9c775c23{0%{opacity:var(--entrance-opacity, .6);transform:translateY(var(--entrance-offset, 25px)) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.stack-toast-enter-active[data-v-9c775c23],.stack-toast-leave-active[data-v-9c775c23]{transition:all .3s cubic-bezier(.16,1,.3,1)}.stack-toast-enter-from[data-v-9c775c23]{opacity:0;transform:scale(.95) translateY(10px)}.stack-toast-leave-to[data-v-9c775c23]{opacity:0;transform:scale(.95)}.stack-toast-move[data-v-9c775c23]{transition:transform .4s cubic-bezier(.16,1,.3,1)}.cp-item-transition[data-v-66b1ae06]{transition:background-color 80ms ease,color 80ms ease}.command-palette-content[data-v-1bae4c0f] ::-webkit-scrollbar{width:4px}.command-palette-content[data-v-1bae4c0f] ::-webkit-scrollbar-track{background:transparent}.command-palette-content[data-v-1bae4c0f] ::-webkit-scrollbar-thumb{background:var(--border);border-radius:9999px}.cp-scroll-container[data-v-1bae4c0f]{transform:translateZ(0);will-change:transform;touch-action:pan-y;backface-visibility:hidden}
976
+ input[data-v-9a771336]::-webkit-outer-spin-button,input[data-v-9a771336]::-webkit-inner-spin-button{-webkit-appearance:none;appearance:none;margin:0}input[type=number][data-v-9a771336]{-moz-appearance:textfield;appearance:textfield}@keyframes onAutoFillStart{0%{opacity:1}to{opacity:1}}@keyframes onAutoFillCancel{0%{opacity:1}to{opacity:1}}input.autofill-detect:-webkit-autofill{animation-name:onAutoFillStart;animation-duration:1ms;animation-fill-mode:both}input.autofill-detect:not(:-webkit-autofill){animation-name:onAutoFillCancel;animation-duration:1ms;animation-fill-mode:both}.dropdown-menu[data-v-c4c5d9e4]{will-change:transform;contain:layout style}.v-modal-overlay[data-v-7c958115]{background-color:#00000052}.v-modal-backdrop[data-v-7c958115]{transform:translateZ(0);will-change:opacity}.modal-body[data-v-7c958115]{will-change:transform;contain:layout style}.blink-bg[data-v-7c958115]{animation:blink-animation-7c958115 1s infinite}@keyframes blink-animation-7c958115{0%{background-color:inherit}15%{background-color:var(--color-gray-250)}35%{background-color:inherit}75%{background-color:var(--color-gray-250)}to{background-color:inherit}}.IroBox{border-radius:8px!important}.custom-fields-table[data-v-3674ca13]{will-change:transform;contain:layout style}.custom-fields-table[data-v-3674ca13] .form-field-item{margin-bottom:0!important;height:100%}.custom-fields-table[data-v-3674ca13] input,.custom-fields-table[data-v-3674ca13] textarea{padding-left:1em;padding-right:.5em}.custom-fields-table[data-v-3674ca13] input,.custom-fields-table[data-v-3674ca13] textarea,.custom-fields-table[data-v-3674ca13] select,.custom-fields-table[data-v-3674ca13] .input-wrapper,.custom-fields-table[data-v-3674ca13] .tooltip-trigger button{border:none!important;background:transparent!important;box-shadow:none!important;border-radius:0!important;height:100%!important;min-height:40px}.custom-fields-table[data-v-3674ca13] .tooltip-trigger button{justify-content:space-between!important}.custom-fields-table[data-v-3674ca13] input:focus,.custom-fields-table[data-v-3674ca13] textarea:focus,.custom-fields-table[data-v-3674ca13] select:focus,.custom-fields-table[data-v-3674ca13] .input-wrapper:focus-within{background-color:hsla(var(--primary) / .03)!important;box-shadow:inset 0 0 0 2px hsla(var(--primary) / .1)!important}.custom-fields-table[data-v-3674ca13] .w-full{width:100%;height:100%}.list-enter-active[data-v-3674ca13]{transition:all .15s cubic-bezier(.16,1,.3,1)}.list-enter-from[data-v-3674ca13]{opacity:0;transform:translateY(-5px)}.form-field-item[data-v-f2f7a787]{display:flex;flex-direction:column}.form-field-item[data-v-f2f7a787]:has([role=switch]),.form-field-item[data-v-f2f7a787]:has([role=checkbox]){flex-direction:row;align-items:center;justify-content:flex-start}.form-container[data-v-06b1158f]{width:100%}[data-tabes][data-v-262d5698]:not(.inline-flex):not([class*=gap-6])>:where(button,a,[role=tab]){flex:1 1 0%;min-width:0}[data-tabes].inline-flex[data-v-262d5698]{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}[data-tabes].inline-flex[data-v-262d5698]::-webkit-scrollbar{display:none}@media(max-width:480px){[data-tabes][data-v-262d5698]:not([class*=flex-wrap]){overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}[data-tabes][data-v-262d5698]:not([class*=flex-wrap])::-webkit-scrollbar{display:none}}.custom-scrollbar[data-v-3a733454]::-webkit-scrollbar{width:0px}.custom-scrollbar[data-v-3a733454]::-webkit-scrollbar-track{background:transparent}.custom-scrollbar[data-v-3a733454]::-webkit-scrollbar-thumb{background-color:var(--color-border);border-radius:10px}.scrollable-container[data-v-3a733454]{will-change:transform;contain:layout style}.custom-scrollbar-x[data-v-1285df4f]::-webkit-scrollbar{height:8px}.custom-scrollbar-x[data-v-1285df4f]::-webkit-scrollbar-track{background:transparent}.custom-scrollbar-x[data-v-1285df4f]::-webkit-scrollbar-thumb{background-color:var(--color-border);border-radius:10px}.scrollable-container[data-v-1285df4f]{will-change:transform;contain:layout style}.v-sidepanel-overlay[data-v-ff2923de]{background-color:#0003}.sidepanel-body[data-v-ff2923de]{will-change:transform;contain:layout style}.navbar-tabs-no-scrollbar{scrollbar-width:none;-ms-overflow-style:none}.navbar-tabs-no-scrollbar::-webkit-scrollbar{display:none}.fade-x-enter-active,.fade-x-leave-active{transition:opacity .15s ease}.fade-x-enter-from,.fade-x-leave-to{opacity:0}.breadcrumb-item[data-v-ecb5df7c]{display:inline-flex;align-items:center;cursor:pointer}.breadcrumb-link[data-v-ecb5df7c]{display:inline-flex;align-items:center;gap:.35em;color:var(--color-muted-foreground);text-decoration:none;transition:color .15s ease,background-color .15s ease;border-radius:var(--radius-sm)}.breadcrumb-link[data-v-ecb5df7c]:not(.current):not(.disabled):hover{color:var(--color-foreground)}.breadcrumb-link.current[data-v-ecb5df7c]{color:var(--color-foreground);font-weight:600;cursor:default}.breadcrumb-link.disabled[data-v-ecb5df7c]{opacity:.45;cursor:not-allowed;pointer-events:none}.breadcrumb-icon[data-v-ecb5df7c]{flex-shrink:0}.breadcrumb-list[data-v-d1e90135]{display:flex;flex-wrap:wrap;align-items:center;list-style:none;margin:0;padding:0;gap:.38em}.breadcrumb--sm[data-v-d1e90135]{font-size:var(--text--fs-2)}.breadcrumb--md[data-v-d1e90135]{font-size:var(--text-fs-0.5, 1em)}.breadcrumb--lg[data-v-d1e90135]{font-size:var(--text-fs-2)}.breadcrumb-separator[data-v-d1e90135]{display:inline-flex;align-items:center;color:var(--color-gray-500);-webkit-user-select:none;user-select:none;font-size:.9em;line-height:1;padding:0 .1em}.breadcrumb-ellipsis[data-v-d1e90135]{display:inline-flex;align-items:center}.breadcrumb-ellipsis-btn[data-v-d1e90135]{display:inline-flex;align-items:center;justify-content:center;width:1.6em;height:1.6em;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:transparent;color:var(--color-muted-foreground);cursor:pointer;font-size:.9em;line-height:1;letter-spacing:.05em;transition:all .15s ease}.breadcrumb-ellipsis-btn[data-v-d1e90135]:hover{background:var(--color-accent);color:var(--color-foreground);border-color:var(--color-gray-350)}.breadcrumb--contained[data-v-d1e90135]{background:var(--color-secondary);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:.45em 1em}.breadcrumb--pills[data-v-d1e90135] .breadcrumb-link{padding:.2em .7em;border-radius:9999px;background:var(--color-secondary);border:1px solid var(--color-border)}.breadcrumb--pills[data-v-d1e90135] .breadcrumb-link:not(.current):not(.disabled):hover{background:var(--color-accent);border-color:var(--color-gray-350)}.breadcrumb--pills[data-v-d1e90135] .breadcrumb-link.current{background:var(--color-primary);color:var(--color-primary-foreground);border-color:var(--color-primary)}.breadcrumb--arrow .breadcrumb-list[data-v-d1e90135]{gap:0}.breadcrumb--arrow[data-v-d1e90135] .breadcrumb-link{padding:.35em .9em .35em 1.4em;background:var(--color-secondary);clip-path:polygon(0 0,calc(100% - .6em) 0,100% 50%,calc(100% - .6em) 100%,0 100%,.6em 50%);border:none;margin-left:-.3em}.breadcrumb--arrow[data-v-d1e90135] .breadcrumb-item:first-child .breadcrumb-link{padding-left:.9em;clip-path:polygon(0 0,calc(100% - .6em) 0,100% 50%,calc(100% - .6em) 100%,0 100%);border-radius:var(--radius-sm) 0 0 var(--radius-sm);margin-left:0}.breadcrumb--arrow[data-v-d1e90135] .breadcrumb-link:not(.current):not(.disabled):hover{background:var(--color-accent)}.breadcrumb--arrow[data-v-d1e90135] .breadcrumb-link.current{background:var(--color-primary);color:var(--color-primary-foreground)}.breadcrumb--arrow .breadcrumb-separator[data-v-d1e90135]{display:none}.import-table[data-v-cfd99cc9]{width:100%;font-size:.875rem;text-align:left;border-collapse:collapse}.import-thead[data-v-cfd99cc9]{font-size:.75rem;color:var(--color-muted-foreground, #6b7280);text-transform:uppercase;background-color:var(--color-muted, #f3f4f6);position:sticky;top:0;z-index:10}.import-th[data-v-cfd99cc9]{padding:.75rem 1rem;font-weight:500}.import-th-center[data-v-cfd99cc9]{text-align:center;width:4rem}.import-tbody .import-tr[data-v-cfd99cc9]{border-bottom:1px solid var(--color-border, #e5e7eb)}.import-tbody .import-tr[data-v-cfd99cc9]:last-child{border-bottom:none}.import-tr-active[data-v-cfd99cc9]{transition:background-color .2s ease-in-out}.import-tr-active[data-v-cfd99cc9]:hover{background-color:var(--color-muted, #f3f4f6);opacity:.85}.import-tr-ignored[data-v-cfd99cc9]{background-color:var(--color-muted, #f3f4f6);opacity:.6}.import-td-header[data-v-cfd99cc9]{padding:.75rem 1rem;font-weight:500;color:var(--color-foreground, #111827);white-space:nowrap}.import-td-dropdown[data-v-cfd99cc9]{padding:.5rem 1rem;min-width:200px}.import-td-preview[data-v-cfd99cc9]{padding:.75rem 1rem;color:var(--color-muted-foreground, #6b7280);min-width:200px;max-width:300px}.import-td-action[data-v-cfd99cc9]{padding:.75rem 1rem;text-align:center;vertical-align:middle}.heatmap-container[data-v-00476f00]{width:100%;height:100%;display:flex;flex-direction:column;min-height:0}.heatmap-wrapper[data-v-00476f00]{width:100%;height:100%;overflow:auto;flex:1;min-height:0;display:flex;align-items:center;justify-content:center;padding:16px;box-sizing:border-box;position:relative}.heatmap-grid[data-v-00476f00]{width:fit-content;height:fit-content;transition:all .2s ease-in-out}.heatmap-cell[data-v-00476f00]{aspect-ratio:1 / 1;border-radius:2px;transition:all .15s ease-in-out;border:1px solid transparent;box-sizing:border-box}.heatmap-cell-interactive[data-v-00476f00]{cursor:pointer}.heatmap-cell-interactive[data-v-00476f00]:hover{transform:scale(1.1);border-color:var(--border);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;z-index:10;position:relative}.heatmap-cell-empty[data-v-00476f00]{opacity:.6}.heatmap-cell-hovered[data-v-00476f00]{outline:2px solid var(--primary);outline-offset:1px}.heatmap-cell-label[data-v-00476f00]{font-size:8px;font-weight:500;color:var(--foreground);opacity:.8;display:flex;align-items:center;justify-content:center;height:100%;width:100%;pointer-events:none}.heatmap-legend[data-v-00476f00]{display:flex;align-items:center;gap:.5rem;margin-top:1rem;font-size:.75rem;color:var(--muted-foreground);flex-shrink:0}.heatmap-legend-label[data-v-00476f00]{font-weight:500}.heatmap-legend-colors[data-v-00476f00]{display:flex;gap:.125rem}.heatmap-legend-item[data-v-00476f00]{width:.75rem;height:.75rem;border-radius:.375rem;border:1px solid var(--border)}@media(max-width:640px){.heatmap-wrapper[data-v-00476f00]{padding:12px}.heatmap-cell[data-v-00476f00]{border-radius:2px}.heatmap-cell-label[data-v-00476f00]{font-size:7px}}@media(min-width:641px)and (max-width:1023px){.heatmap-wrapper[data-v-00476f00]{padding:14px}.heatmap-cell[data-v-00476f00]{border-radius:2px}}@media(min-width:1024px){.heatmap-wrapper[data-v-00476f00]{padding:16px}.heatmap-cell[data-v-00476f00]{border-radius:3px}}.masonry-item[data-v-c29d0159]{content-visibility:auto;contain-intrinsic-size:1px 200px}.carousel-wrapper[data-v-e8fba320]{width:100%;position:relative;will-change:transform;contain:layout style}.file-tree-container[data-v-91337be9],.sheet-container[data-v-a5e9ca6f]{will-change:transform;contain:layout style}.accordion-enter-active[data-v-0075dffb],.accordion-leave-active[data-v-0075dffb]{transition:height .3s ease-in-out;will-change:height}.content-wrapper[data-v-0075dffb]{contain:paint}.sidebar-manu-item .tooltip-trigger{width:100%!important}.sidebar-menu-tooltip{margin-left:4px!important}[dir=rtl] .sidebar-menu-tooltip{margin-right:4px!important}.bg-stripe[data-v-454a1505]{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-size:1rem 1rem}.animate-progress-stripe[data-v-454a1505]{animation:progress-stripe-454a1505 1s linear infinite}@keyframes progress-stripe-454a1505{0%{background-position:1rem 0}to{background-position:0 0}}.animate-progress-indeterminate[data-v-454a1505]{animation:progress-indeterminate-454a1505 1.5s infinite cubic-bezier(.65,.815,.735,.395)}@keyframes progress-indeterminate-454a1505{0%{transform:translate(-100%) scaleX(.2)}50%{transform:translate(0) scaleX(.5)}to{transform:translate(100%) scaleX(.2)}}.permission-matrix-wrapper[data-v-ba68e64a]{max-height:70vh;will-change:transform;contain:layout style}.permission-matrix-wrapper[data-v-ba68e64a]::-webkit-scrollbar{width:6px;height:6px}.permission-matrix-wrapper[data-v-ba68e64a]::-webkit-scrollbar-track{background:transparent}.permission-matrix-wrapper[data-v-ba68e64a]::-webkit-scrollbar-thumb{background:var(--color-gray-350);border-radius:3px}.permission-matrix-wrapper[data-v-ba68e64a]::-webkit-scrollbar-thumb:hover{background:var(--color-gray-400)}.permission-list-wrapper[data-v-a42b2fb0]{border:1px solid var(--color-border);border-radius:.5rem;overflow:hidden;background-color:var(--color-background);will-change:transform;contain:layout style}.custom-list-header[data-v-a42b2fb0]{background-color:var(--color-muted);border-bottom:1px solid var(--color-border);padding:var(--cell-py) var(--cell-px)}.custom-list-group-content .custom-list-item[data-v-a42b2fb0]{border-bottom:1px solid var(--color-border);padding:var(--cell-py) var(--cell-px);background-color:var(--color-background)}.custom-list-group-content .custom-list-item[data-v-a42b2fb0]:hover{background-color:var(--color-accent)}.custom-list-group-content .custom-list-item[data-v-a42b2fb0]:last-child{border-bottom:none}.custom-list-group-content+.custom-list-header[data-v-a42b2fb0],.custom-list-header+.custom-list-header[data-v-a42b2fb0]{border-top:1px solid var(--color-border)}.permission-list-wrapper>.custom-list-header[data-v-a42b2fb0]:last-child{border-bottom:none}.permission-matrix-wrapper[data-v-0b1ab970]{border:1px solid var(--color-border);background-color:var(--color-gray-100);border-radius:.5rem;overflow:auto;max-height:65vh;position:relative;will-change:transform;contain:layout style}.permission-matrix-wrapper[data-v-0b1ab970]::-webkit-scrollbar{width:6px;height:6px}.permission-matrix-wrapper[data-v-0b1ab970]::-webkit-scrollbar-track{background:transparent}.permission-matrix-wrapper[data-v-0b1ab970]::-webkit-scrollbar-thumb{background:var(--color-gray-350);border-radius:3px}.permission-matrix-wrapper[data-v-0b1ab970]::-webkit-scrollbar-thumb:hover{background:var(--color-gray-400)}.custom-table[data-v-0b1ab970]{width:100%;border-collapse:collapse}.custom-sticky-header th[data-v-0b1ab970]{position:sticky;top:0;z-index:20;box-shadow:0 1px 0 var(--color-border)}.custom-th[data-v-0b1ab970]{background-color:var(--color-gray-150);color:var(--color-foreground);background-clip:padding-box;border-bottom:none;border-left:1px solid var(--color-border);padding:var(--cell-py) var(--cell-px);text-align:left;font-weight:600;min-width:200px}thead:not(.custom-sticky-header) .custom-th[data-v-0b1ab970]{border-bottom:1px solid var(--color-border)}.custom-th.text-center[data-v-0b1ab970]{text-align:center;min-width:100px}.custom-th[data-v-0b1ab970]:first-child{border-left:none}.custom-td[data-v-0b1ab970]{border-bottom:1px solid var(--color-border);border-left:1px solid var(--color-border);padding:var(--cell-py) var(--cell-px)}.custom-td.text-center[data-v-0b1ab970]{text-align:center}.custom-td[data-v-0b1ab970]:first-child{border-left:none}.custom-group-row td[data-v-0b1ab970]{background-color:var(--color-gray-100);border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.custom-entity-row[data-v-0b1ab970]{background-color:var(--color-background);transition:background-color .1s ease}.custom-entity-row[data-v-0b1ab970]:hover{background-color:var(--color-gray-50)}.custom-entity-row:last-child td[data-v-0b1ab970]{border-bottom:none}.custom-active-cell[data-v-0b1ab970]{cursor:pointer}.custom-active-cell[data-v-0b1ab970]:hover{background-color:var(--color-accent)}.button-group[data-v-ba735fac] button{align-self:stretch;height:auto!important;min-height:unset!important;min-width:unset!important;width:auto!important}.button-group[data-v-ba735fac]:not(.vertical-group) button{aspect-ratio:unset}.attached-group[data-v-ba735fac] button{position:relative;--radius: .375rem}.attached-group[data-v-ba735fac] button:focus-visible,.attached-group[data-v-ba735fac] button:hover{z-index:10}.attached-group[data-v-ba735fac]:not(.vertical-group) button:not(:first-child){margin-left:-1px}.attached-group[data-v-ba735fac]:not(.vertical-group) button:first-child{border-top-left-radius:var(--radius);border-bottom-left-radius:var(--radius);border-top-right-radius:0;border-bottom-right-radius:0}.attached-group[data-v-ba735fac]:not(.vertical-group) button:not(:first-child):not(:last-child){border-radius:0}.attached-group[data-v-ba735fac]:not(.vertical-group) button:last-child{border-top-right-radius:var(--radius);border-bottom-right-radius:var(--radius);border-top-left-radius:0;border-bottom-left-radius:0}.vertical-group[data-v-ba735fac] button:not(:first-child){margin-top:-1px}.vertical-group[data-v-ba735fac] button:first-child{border-top-left-radius:var(--radius);border-top-right-radius:var(--radius);border-bottom-left-radius:0;border-bottom-right-radius:0}.vertical-group[data-v-ba735fac] button:not(:first-child):not(:last-child){border-radius:0}.vertical-group[data-v-ba735fac] button:last-child{border-bottom-left-radius:var(--radius);border-bottom-right-radius:var(--radius);border-top-left-radius:0;border-top-right-radius:0}.attached-group[data-v-ba735fac]:not(.vertical-group) button:not(:first-child):not(.border):before{content:"";position:absolute;left:0;top:0;bottom:0;width:1px;background-color:currentColor;opacity:.15;z-index:5;pointer-events:none;height:100%}.vertical-group[data-v-ba735fac] button:not(:first-child):not(.border):before{content:"";position:absolute;top:0;left:0;right:0;height:1px;width:100%;background-color:currentColor;opacity:.15;z-index:5;pointer-events:none}.toast-item[data-v-9c775c23]{will-change:transform,opacity;contain:layout style}.first-toast-enter-active[data-v-9c775c23]{animation:first-toast-in-9c775c23 .45s cubic-bezier(.23,1,.32,1) forwards}.first-toast-leave-active[data-v-9c775c23]{transition:all .25s ease-in}.first-toast-leave-to[data-v-9c775c23]{opacity:0;transform:scale(.98)}@keyframes first-toast-in-9c775c23{0%{opacity:var(--entrance-opacity, .6);transform:translateY(var(--entrance-offset, 25px)) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.stack-toast-enter-active[data-v-9c775c23],.stack-toast-leave-active[data-v-9c775c23]{transition:all .3s cubic-bezier(.16,1,.3,1)}.stack-toast-enter-from[data-v-9c775c23]{opacity:0;transform:scale(.95) translateY(10px)}.stack-toast-leave-to[data-v-9c775c23]{opacity:0;transform:scale(.95)}.stack-toast-move[data-v-9c775c23]{transition:transform .4s cubic-bezier(.16,1,.3,1)}.cp-item-transition[data-v-66b1ae06]{transition:background-color 80ms ease,color 80ms ease}.command-palette-content[data-v-1bae4c0f] ::-webkit-scrollbar{width:4px}.command-palette-content[data-v-1bae4c0f] ::-webkit-scrollbar-track{background:transparent}.command-palette-content[data-v-1bae4c0f] ::-webkit-scrollbar-thumb{background:var(--border);border-radius:9999px}.cp-scroll-container[data-v-1bae4c0f]{transform:translateZ(0);will-change:transform;touch-action:pan-y;backface-visibility:hidden}
977
977
 
@@ -1,3 +1,4 @@
1
+ import { Dayjs } from 'dayjs';
1
2
  /**
2
3
  * Creates a debounced function that delays invoking the provided function
3
4
  * until after the specified delay has elapsed since the last time it was invoked.
@@ -27,13 +28,13 @@ export declare function throttle<T extends (...args: any[]) => any>(func: T, wai
27
28
  *
28
29
  * @example
29
30
  * slugify('Hello World!') // 'hello-world'
30
- * slugify('Crème Brûlée') // 'creme-brulee'
31
+ * slugify('Creme Brulee') // 'creme-brulee'
31
32
  * slugify(' --foo bar-- ') // 'foo-bar'
32
33
  */
33
34
  export declare const slugify: (input: string) => string;
34
35
  /**
35
36
  * Generates a random integer between `min` and `max` (inclusive).
36
- * Uses `Math.random()` not suitable for cryptographic purposes.
37
+ * Uses `Math.random()` -- not suitable for cryptographic purposes.
37
38
  *
38
39
  * @param min The lower bound (inclusive)
39
40
  * @param max The upper bound (inclusive)
@@ -51,12 +52,12 @@ export declare const randomNumber: (min: number, max: number) => number;
51
52
  * to avoid mid-word cuts.
52
53
  *
53
54
  * @param text The string to truncate
54
- * @param length Maximum character length (must be 0)
55
- * @param ellipsis The suffix appended when truncated (default: `''`)
55
+ * @param length Maximum character length (must be >= 0)
56
+ * @param ellipsis The suffix appended when truncated (default: '...')
56
57
  * @returns The truncated string, or the original if already within the limit
57
58
  *
58
59
  * @example
59
- * truncate('Hello, beautiful world!', 13) // 'Hello,…'
60
+ * truncate('Hello, beautiful world!', 13) // 'Hello,...'
60
61
  * truncate('Hello, beautiful world!', 13, '...') // 'Hello,...'
61
62
  * truncate('Short', 100) // 'Short'
62
63
  */
@@ -65,22 +66,28 @@ export declare const truncate: (text: string, length: number, ellipsis?: string)
65
66
  * Formats a numeric amount as a locale-aware currency string
66
67
  * using the `Intl.NumberFormat` API.
67
68
  *
69
+ * Reads the default currency from the global VLite config (`configState`)
70
+ * when no explicit `currency` argument is provided. Falls back to `'USD'`
71
+ * if no global config value is set.
72
+ *
68
73
  * @param amount The numeric value to format
69
74
  * @param locale A BCP 47 locale string (default: `'en-US'`)
70
- * @param currency An ISO 4217 currency code (default: `'USD'`)
75
+ * @param currency An ISO 4217 currency code. Defaults to the globally configured
76
+ * currency from `createVLite({ components: { price: { currency: '...' } } })`,
77
+ * or `'USD'` if not configured.
71
78
  * @returns The formatted currency string
72
79
  *
73
80
  * @example
74
- * formatCurrency(1234.5) // '$1,234.50'
75
- * formatCurrency(1234.5, 'de-DE', 'EUR') // '1.234,50 '
76
- * formatCurrency(0) // '$0.00'
81
+ * formatCurrency(1234.5) // uses global currency, e.g. 'Rs1,234.50' if PKR is set
82
+ * formatCurrency(1234.5, 'de-DE', 'EUR') // '1.234,50 E'
83
+ * formatCurrency(0) // '$0.00' (when no global config)
77
84
  */
78
85
  export declare const formatCurrency: (amount: number, locale?: string, currency?: string) => string;
79
86
  /**
80
87
  * Returns a Promise that resolves after the specified number of milliseconds.
81
88
  * Useful for artificial delays, polling intervals, or animation timing.
82
89
  *
83
- * @param ms Delay duration in milliseconds (must be 0)
90
+ * @param ms Delay duration in milliseconds (must be >= 0)
84
91
  * @returns A Promise that resolves to `void` after the delay
85
92
  *
86
93
  * @example
@@ -106,3 +113,9 @@ export declare const delay: (ms: number) => Promise<void>;
106
113
  * if (ok) showToast('Copied!')
107
114
  */
108
115
  export declare const copyToClipboard: (text: string) => Promise<boolean>;
116
+ export type DateRangeMode = 'week' | 'month' | '3-months' | '6-months' | 'year' | 'last-week' | 'last-month';
117
+ export interface DateRangeResult {
118
+ startDate: string;
119
+ endDate: string;
120
+ }
121
+ export declare const getDefaultDateRange: (mode?: DateRangeMode, maxDate?: Dayjs | string | Date, anchorDate?: Dayjs) => DateRangeResult;
@@ -1,95 +1,135 @@
1
- const f = (e, t) => {
2
- let r;
1
+ import { configState as f } from "../core/config.js";
2
+ import c from "dayjs";
3
+ const y = (t, r) => {
4
+ let e;
3
5
  return (...n) => {
4
- clearTimeout(r), r = setTimeout(() => {
5
- e(...n);
6
- }, t);
6
+ clearTimeout(e), e = setTimeout(() => {
7
+ t(...n);
8
+ }, r);
7
9
  };
8
10
  };
9
- function p() {
10
- const e = Math.floor(Date.now() / 1e3).toString(16).padStart(8, "0"), t = Array.from(crypto.getRandomValues(new Uint8Array(5))).map((n) => n.toString(16).padStart(2, "0")).join(""), r = Math.floor(Math.random() * 16777215).toString(16).padStart(6, "0");
11
- return e + t + r;
11
+ function b() {
12
+ const t = Math.floor(Date.now() / 1e3).toString(16).padStart(8, "0"), r = Array.from(crypto.getRandomValues(new Uint8Array(5))).map((n) => n.toString(16).padStart(2, "0")).join(""), e = Math.floor(Math.random() * 16777215).toString(16).padStart(6, "0");
13
+ return t + r + e;
12
14
  }
13
- const d = () => {
14
- const e = /Mac|MacIntel|MacPPC/.test(navigator.platform) && !/iPad|iPhone|iPod/.test(navigator.platform), t = /iPhone/.test(navigator.platform) || /iPhone/.test(navigator.userAgent), r = /^((?!chrome|android).)*safari/i.test(navigator.userAgent);
15
- return e || t || r;
16
- }, y = async (e = "", t = "file") => {
15
+ const h = () => {
16
+ const t = /Mac|MacIntel|MacPPC/.test(navigator.platform) && !/iPad|iPhone|iPod/.test(navigator.platform), r = /iPhone/.test(navigator.platform) || /iPhone/.test(navigator.userAgent), e = /^((?!chrome|android).)*safari/i.test(navigator.userAgent);
17
+ return t || r || e;
18
+ }, g = async (t = "", r = "file") => {
17
19
  try {
18
- const r = t || "file", n = e?.includes(".application/") ? `${r}.${e?.split("/").pop()}` : `${r}.${e?.split(".").pop()}`, i = await (await fetch(e)).blob(), a = window.URL.createObjectURL(i), c = document.createElement("a");
19
- c.href = a, c.setAttribute("download", n), document.body.appendChild(c), c.click(), document.body.removeChild(c), window.URL.revokeObjectURL(a);
20
- } catch (r) {
21
- console.error("Download error:", r);
20
+ const e = r || "file", n = t?.includes(".application/") ? `${e}.${t?.split("/").pop()}` : `${e}.${t?.split(".").pop()}`, a = await (await fetch(t)).blob(), s = window.URL.createObjectURL(a), i = document.createElement("a");
21
+ i.href = s, i.setAttribute("download", n), document.body.appendChild(i), i.click(), document.body.removeChild(i), window.URL.revokeObjectURL(s);
22
+ } catch (e) {
23
+ console.error("Download error:", e);
22
24
  }
23
- }, l = (e) => e == null || e === "" || typeof e == "number" && e === 0 || Array.isArray(e) && e.length === 0 ? !0 : typeof e == "object" && !Array.isArray(e) ? Object.keys(e).length === 0 || Object.values(e).every(l) : !1;
24
- function s(e, t) {
25
- return !e || typeof e != "object" ? e : Array.isArray(e) ? e.map((r) => s(r, t)) : Object.entries(e).reduce(
26
- (r, [n, o]) => (t.includes(n) || (r[n] = s(o, t)), r),
25
+ }, m = (t) => t == null || t === "" || typeof t == "number" && t === 0 || Array.isArray(t) && t.length === 0 ? !0 : typeof t == "object" && !Array.isArray(t) ? Object.keys(t).length === 0 || Object.values(t).every(m) : !1;
26
+ function u(t, r) {
27
+ return !t || typeof t != "object" ? t : Array.isArray(t) ? t.map((e) => u(e, r)) : Object.entries(t).reduce(
28
+ (e, [n, o]) => (r.includes(n) || (e[n] = u(o, r)), e),
27
29
  {}
28
30
  );
29
31
  }
30
- function u(e) {
31
- return e.reduce((t, r) => Array.isArray(r) ? t.concat(u(r)) : r && typeof r == "object" ? t.concat(
32
- Object?.values(r)?.flatMap?.((n) => typeof n == "object" ? u([n]) : [n])
33
- ) : t.concat(r), []);
32
+ function l(t) {
33
+ return t.reduce((r, e) => Array.isArray(e) ? r.concat(l(e)) : e && typeof e == "object" ? r.concat(
34
+ Object?.values(e)?.flatMap?.((n) => typeof n == "object" ? l([n]) : [n])
35
+ ) : r.concat(e), []);
34
36
  }
35
- const m = (e) => typeof e == "string" ? e?.replace(/(^\w|[.!?]\s+\w)/g, (t) => t.toUpperCase()) : e, b = (e) => !e || typeof e != "string" ? "" : e[0].toLowerCase() + e.slice(1);
36
- function g(e, t) {
37
- let r = null, n = null, o = null;
38
- const i = () => {
39
- n && o ? (e.apply(o, n), n = null, o = null, r = setTimeout(i, t)) : r = null;
37
+ const w = (t) => typeof t == "string" ? t?.replace(/(^\w|[.!?]\s+\w)/g, (r) => r.toUpperCase()) : t, O = (t) => !t || typeof t != "string" ? "" : t[0].toLowerCase() + t.slice(1);
38
+ function A(t, r) {
39
+ let e = null, n = null, o = null;
40
+ const a = () => {
41
+ n && o ? (t.apply(o, n), n = null, o = null, e = setTimeout(a, r)) : e = null;
40
42
  };
41
- return (...a) => {
42
- r ? (n = a, o = this) : (e.apply(this, a), r = setTimeout(i, t));
43
+ return (...s) => {
44
+ e ? (n = s, o = this) : (t.apply(this, s), e = setTimeout(a, r));
43
45
  };
44
46
  }
45
- const h = (e) => typeof e != "string" ? "" : e.normalize("NFD").replace(/[\u0300-\u036f]/g, "").toLowerCase().trim().replace(/[^a-z0-9\s-]/g, "").replace(/[\s-]+/g, "-").replace(/^-+|-+$/g, ""), w = (e, t) => {
46
- if (!Number.isFinite(e) || !Number.isFinite(t))
47
+ const M = (t) => typeof t != "string" ? "" : t.normalize("NFD").replace(/[\u0300-\u036f]/g, "").toLowerCase().trim().replace(/[^a-z0-9\s-]/g, "").replace(/[\s-]+/g, "-").replace(/^-+|-+$/g, ""), k = (t, r) => {
48
+ if (!Number.isFinite(t) || !Number.isFinite(r))
47
49
  throw new TypeError("Both min and max must be finite numbers");
48
- if (e > t)
49
- throw new RangeError(`min (${e}) must not be greater than max (${t})`);
50
- const r = Math.ceil(e), n = Math.floor(t);
51
- return Math.floor(Math.random() * (n - r + 1)) + r;
52
- }, A = (e, t, r = "") => {
53
- if (typeof e != "string") return "";
54
- if (!Number.isFinite(t) || t < 0 || e.length <= t) return e;
55
- const n = t - r.length;
56
- if (n <= 0) return r.slice(0, t);
57
- const o = e.slice(0, n), i = o.lastIndexOf(" ");
58
- return (i > 0 ? o.slice(0, i) : o) + r;
59
- }, j = (e, t = "en-US", r = "USD") => Number.isFinite(e) ? new Intl.NumberFormat(t, {
60
- style: "currency",
61
- currency: r
62
- }).format(e) : "", C = (e) => !Number.isFinite(e) || e < 0 ? Promise.reject(new RangeError("Delay must be a non-negative finite number")) : new Promise((t) => setTimeout(t, e)), M = async (e) => {
63
- if (typeof e != "string") return !1;
50
+ if (t > r)
51
+ throw new RangeError(`min (${t}) must not be greater than max (${r})`);
52
+ const e = Math.ceil(t), n = Math.floor(r);
53
+ return Math.floor(Math.random() * (n - e + 1)) + e;
54
+ }, j = (t, r, e = "...") => {
55
+ if (typeof t != "string") return "";
56
+ if (!Number.isFinite(r) || r < 0 || t.length <= r) return t;
57
+ const n = r - e.length;
58
+ if (n <= 0) return e.slice(0, r);
59
+ const o = t.slice(0, n), a = o.lastIndexOf(" ");
60
+ return (a > 0 ? o.slice(0, a) : o) + e;
61
+ }, C = (t, r = "en-US", e) => {
62
+ if (!Number.isFinite(t)) return "";
63
+ const n = e || f?.components?.price?.currency || "USD";
64
+ return new Intl.NumberFormat(r, {
65
+ style: "currency",
66
+ currency: n
67
+ }).format(t);
68
+ }, S = (t) => !Number.isFinite(t) || t < 0 ? Promise.reject(new RangeError("Delay must be a non-negative finite number")) : new Promise((r) => setTimeout(r, t)), N = async (t) => {
69
+ if (typeof t != "string") return !1;
64
70
  if (navigator?.clipboard?.writeText)
65
71
  try {
66
- return await navigator.clipboard.writeText(e), !0;
72
+ return await navigator.clipboard.writeText(t), !0;
67
73
  } catch {
68
74
  }
69
75
  try {
70
- const t = document.createElement("textarea");
71
- t.value = e, t.setAttribute("readonly", ""), t.style.position = "fixed", t.style.left = "-9999px", t.style.opacity = "0", document.body.appendChild(t), t.select();
72
- const r = document.execCommand("copy");
73
- return document.body.removeChild(t), r;
76
+ const r = document.createElement("textarea");
77
+ r.value = t, r.setAttribute("readonly", ""), r.style.position = "fixed", r.style.left = "-9999px", r.style.opacity = "0", document.body.appendChild(r), r.select();
78
+ const e = document.execCommand("copy");
79
+ return document.body.removeChild(r), e;
74
80
  } catch {
75
81
  return !1;
76
82
  }
83
+ }, P = (t = "month", r, e = c()) => {
84
+ let n = e, o, a = e;
85
+ switch (["week", "month", "3-months", "6-months", "year"].includes(t) && e.date() <= 7 && (a = e.subtract(1, "month")), t) {
86
+ case "last-week":
87
+ o = e.subtract(6, "day").startOf("day"), n = e.endOf("day");
88
+ break;
89
+ case "last-month":
90
+ o = e.subtract(29, "day").startOf("day"), n = e.endOf("day");
91
+ break;
92
+ case "year":
93
+ o = a.subtract(11, "month").startOf("month"), n = a.endOf("month");
94
+ break;
95
+ case "6-months":
96
+ o = a.subtract(5, "month").startOf("month"), n = a.endOf("month");
97
+ break;
98
+ case "3-months":
99
+ o = a.subtract(2, "month").startOf("month"), n = a.endOf("month");
100
+ break;
101
+ case "week":
102
+ o = a.startOf("week"), n = a.endOf("week");
103
+ break;
104
+ default:
105
+ o = a.startOf("month"), n = a.endOf("month");
106
+ break;
107
+ }
108
+ if (r) {
109
+ const s = c(r);
110
+ n.isAfter(s) && (n = s), o.isAfter(s) && (o = s.startOf("day"));
111
+ }
112
+ return {
113
+ startDate: o.format("YYYY-MM-DD"),
114
+ endDate: n.format("YYYY-MM-DD")
115
+ };
77
116
  };
78
117
  export {
79
- b as camelCase,
80
- m as capitalize,
81
- M as copyToClipboard,
82
- f as debounce,
83
- C as delay,
84
- y as downloadFile,
85
- u as flattenArray,
86
- j as formatCurrency,
87
- p as getUniqueId,
88
- d as isAppleDevice,
89
- l as isEmpty,
90
- w as randomNumber,
91
- s as removeExtraProperties,
92
- h as slugify,
93
- g as throttle,
94
- A as truncate
118
+ O as camelCase,
119
+ w as capitalize,
120
+ N as copyToClipboard,
121
+ y as debounce,
122
+ S as delay,
123
+ g as downloadFile,
124
+ l as flattenArray,
125
+ C as formatCurrency,
126
+ P as getDefaultDateRange,
127
+ b as getUniqueId,
128
+ h as isAppleDevice,
129
+ m as isEmpty,
130
+ k as randomNumber,
131
+ u as removeExtraProperties,
132
+ M as slugify,
133
+ A as throttle,
134
+ j as truncate
95
135
  };