@boxcustodia/library 2.0.0-alpha.19 → 2.0.0-alpha.20
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/button/button.cjs.js +1 -1
- package/dist/components/button/button.es.js +19 -18
- package/dist/components/button/components/base-button.cjs.js +1 -1
- package/dist/components/button/components/base-button.es.js +20 -20
- package/dist/components/calendar/calendar.cjs.js +1 -1
- package/dist/components/calendar/calendar.es.js +1 -0
- package/dist/components/date-picker/date-input.cjs.js +1 -1
- package/dist/components/date-picker/date-input.es.js +92 -75
- package/dist/components/date-picker/date-picker.cjs.js +1 -1
- package/dist/components/date-picker/date-picker.es.js +104 -95
- package/dist/components/date-picker/date-picker.utils.cjs.js +1 -1
- package/dist/components/date-picker/date-picker.utils.es.js +51 -43
- package/dist/components/date-picker/use-hidden-field-value.cjs.js +1 -0
- package/dist/components/date-picker/use-hidden-field-value.es.js +11 -0
- package/dist/components/menu/menu.es.js +1 -9
- package/dist/components/otp/otp.cjs.js +2 -0
- package/dist/components/otp/otp.es.js +93 -0
- package/dist/components/password/password.cjs.js +1 -1
- package/dist/components/password/password.es.js +2 -2
- package/dist/components/select/select.cjs.js +1 -1
- package/dist/components/select/select.es.js +68 -60
- package/dist/hooks/internal/is-apple-device.cjs.js +1 -0
- package/dist/hooks/internal/is-apple-device.es.js +9 -0
- package/dist/hooks/internal/use-latest-ref.cjs.js +1 -0
- package/dist/hooks/internal/use-latest-ref.es.js +11 -0
- package/dist/hooks/use-array/use-array.cjs.js +1 -1
- package/dist/hooks/use-array/use-array.es.js +54 -42
- package/dist/hooks/use-async/use-async.cjs.js +1 -1
- package/dist/hooks/use-async/use-async.es.js +53 -20
- package/dist/hooks/use-boolean/use-boolean.cjs.js +1 -0
- package/dist/hooks/use-boolean/use-boolean.es.js +25 -0
- package/dist/hooks/use-click-outside/use-click-outside.cjs.js +1 -1
- package/dist/hooks/use-click-outside/use-click-outside.es.js +26 -12
- package/dist/hooks/use-debounce-callback/use-debounced-callback.cjs.js +1 -1
- package/dist/hooks/use-debounce-callback/use-debounced-callback.es.js +27 -10
- package/dist/hooks/use-debounce-value/use-debounced-value.cjs.js +1 -1
- package/dist/hooks/use-debounce-value/use-debounced-value.es.js +7 -9
- package/dist/hooks/use-disclosure/use-disclosure.cjs.js +1 -1
- package/dist/hooks/use-disclosure/use-disclosure.es.js +21 -11
- package/dist/hooks/use-document-title/use-document-title.cjs.js +1 -1
- package/dist/hooks/use-document-title/use-document-title.es.js +14 -12
- package/dist/hooks/use-event-listener/use-event-listener.cjs.js +1 -1
- package/dist/hooks/use-event-listener/use-event-listener.es.js +17 -9
- package/dist/hooks/use-hotkey/use-hotkey.cjs.js +1 -1
- package/dist/hooks/use-hotkey/use-hotkey.es.js +30 -14
- package/dist/hooks/use-hotkey/utils/is-input-field.cjs.js +1 -1
- package/dist/hooks/use-hotkey/utils/is-input-field.es.js +4 -2
- package/dist/hooks/use-hotkey/utils/match-and-run.cjs.js +1 -0
- package/dist/hooks/use-hotkey/utils/match-and-run.es.js +12 -0
- package/dist/hooks/use-hotkey/utils/match-key-modifiers.cjs.js +1 -1
- package/dist/hooks/use-hotkey/utils/match-key-modifiers.es.js +13 -12
- package/dist/hooks/use-hover/use-hover.cjs.js +1 -1
- package/dist/hooks/use-hover/use-hover.es.js +32 -17
- package/dist/hooks/use-is-visible/use-is-visible.cjs.js +1 -1
- package/dist/hooks/use-is-visible/use-is-visible.es.js +31 -27
- package/dist/hooks/use-local-storage/use-local-storage.cjs.js +1 -1
- package/dist/hooks/use-local-storage/use-local-storage.es.js +52 -20
- package/dist/hooks/use-media-query/use-media-query.cjs.js +1 -1
- package/dist/hooks/use-media-query/use-media-query.es.js +21 -11
- package/dist/hooks/use-mutation/use-mutation.cjs.js +1 -1
- package/dist/hooks/use-mutation/use-mutation.es.js +36 -22
- package/dist/hooks/use-object/use-object.cjs.js +1 -1
- package/dist/hooks/use-object/use-object.es.js +26 -22
- package/dist/hooks/use-prevent-page-close/use-prevent-page-close.cjs.js +1 -0
- package/dist/hooks/use-prevent-page-close/use-prevent-page-close.es.js +14 -0
- package/dist/hooks/use-step/use-step.cjs.js +1 -1
- package/dist/hooks/use-step/use-step.es.js +25 -24
- package/dist/index.cjs.js +1 -1
- package/dist/index.es.js +308 -300
- package/dist/src/components/date-picker/date-picker.utils.d.ts +17 -0
- package/dist/src/components/date-picker/use-hidden-field-value.d.ts +12 -0
- package/dist/src/components/index.d.ts +1 -0
- package/dist/src/hooks/index.d.ts +2 -2
- package/dist/src/hooks/internal/index.d.ts +2 -0
- package/dist/src/hooks/internal/is-apple-device.d.ts +12 -0
- package/dist/src/hooks/internal/use-latest-ref.d.ts +12 -0
- package/dist/src/hooks/use-array/use-array.d.ts +24 -11
- package/dist/src/hooks/use-async/use-async.d.ts +16 -13
- package/dist/src/hooks/use-boolean/index.d.ts +1 -0
- package/dist/src/hooks/use-boolean/use-boolean.d.ts +15 -0
- package/dist/src/hooks/use-boolean/use-boolean.test.d.ts +1 -0
- package/dist/src/hooks/use-click-outside/use-click-outside.d.ts +23 -1
- package/dist/src/hooks/use-debounce-callback/use-debounced-callback.d.ts +19 -1
- package/dist/src/hooks/use-debounce-value/use-debounced-value.d.ts +10 -1
- package/dist/src/hooks/use-disclosure/use-disclosure.d.ts +17 -8
- package/dist/src/hooks/use-document-title/use-document-title.d.ts +11 -0
- package/dist/src/hooks/use-event-listener/use-event-listener.d.ts +18 -1
- package/dist/src/hooks/use-hotkey/index.d.ts +2 -1
- package/dist/src/hooks/use-hotkey/use-hotkey.d.ts +62 -5
- package/dist/src/hooks/use-hotkey/utils/index.d.ts +4 -3
- package/dist/src/hooks/use-hotkey/utils/is-input-field.d.ts +12 -2
- package/dist/src/hooks/use-hotkey/utils/is-input-field.test.d.ts +1 -0
- package/dist/src/hooks/use-hotkey/utils/match-and-run.d.ts +36 -0
- package/dist/src/hooks/use-hotkey/utils/match-and-run.test.d.ts +1 -0
- package/dist/src/hooks/use-hotkey/utils/match-key-modifiers.d.ts +20 -6
- package/dist/src/hooks/use-hotkey/utils/match-key-modifiers.test.d.ts +1 -0
- package/dist/src/hooks/use-hover/use-hover.d.ts +8 -4
- package/dist/src/hooks/use-is-visible/use-is-visible.d.ts +28 -4
- package/dist/src/hooks/use-local-storage/use-local-storage.d.ts +13 -2
- package/dist/src/hooks/use-media-query/use-media-query.d.ts +10 -1
- package/dist/src/hooks/use-media-query/use-media-query.test.d.ts +1 -0
- package/dist/src/hooks/use-mutation/use-mutation.d.ts +18 -11
- package/dist/src/hooks/use-object/use-object.d.ts +15 -6
- package/dist/src/hooks/use-prevent-page-close/index.d.ts +1 -0
- package/dist/src/hooks/use-prevent-page-close/use-prevent-page-close.d.ts +10 -0
- package/dist/src/hooks/use-prevent-page-close/use-prevent-page-close.test.d.ts +1 -0
- package/dist/src/hooks/use-step/use-step.d.ts +18 -11
- package/dist/src/utils/form.d.ts +10 -0
- package/package.json +1 -1
- package/src/components/alert-dialog/alert-dialog.test.tsx +13 -9
- package/src/components/auto-complete/auto-complete.test.tsx +4 -14
- package/src/components/avatar/avatar.test.tsx +7 -12
- package/src/components/button/button.test.tsx +10 -15
- package/src/components/button/button.tsx +14 -9
- package/src/components/button/components/base-button.tsx +2 -4
- package/src/components/calendar/calendar.test.tsx +12 -19
- package/src/components/calendar/calendar.tsx +4 -0
- package/src/components/card/card.test.tsx +4 -6
- package/src/components/checkbox/checkbox.test.tsx +12 -8
- package/src/components/checkbox-group/checkbox-group.test.tsx +7 -8
- package/src/components/combobox/combobox.test.tsx +24 -21
- package/src/components/date-picker/date-input-form.test.tsx +77 -0
- package/src/components/date-picker/date-input.stories.tsx +30 -18
- package/src/components/date-picker/date-input.tsx +77 -44
- package/src/components/date-picker/date-picker.stories.tsx +31 -1
- package/src/components/date-picker/date-picker.test.tsx +3 -13
- package/src/components/date-picker/date-picker.tsx +35 -16
- package/src/components/date-picker/date-picker.utils.test.ts +32 -14
- package/src/components/date-picker/date-picker.utils.ts +33 -0
- package/src/components/date-picker/use-date-input-popover.test.ts +3 -1
- package/src/components/date-picker/use-hidden-field-value.ts +23 -0
- package/src/components/dialog/dialog.test.tsx +10 -8
- package/src/components/dropzone/dropzone.test.tsx +11 -13
- package/src/components/empty/empty.test.tsx +4 -3
- package/src/components/field/field.test.tsx +12 -13
- package/src/components/form/form.stories.tsx +16 -1
- package/src/components/index.ts +1 -0
- package/src/components/label/label.test.tsx +3 -3
- package/src/components/menu/menu.tsx +1 -5
- package/src/components/number-input/number-input.test.tsx +6 -2
- package/src/components/password/password.test.tsx +20 -6
- package/src/components/password/password.tsx +2 -2
- package/src/components/popover/popover.test.tsx +4 -4
- package/src/components/progress/progress.test.tsx +7 -8
- package/src/components/radio-group/radio-group.test.tsx +17 -11
- package/src/components/select/select.test.tsx +10 -10
- package/src/components/select/select.tsx +9 -1
- package/src/components/stepper/stepper.stories.tsx +11 -15
- package/src/components/stepper/stepper.test.tsx +6 -4
- package/src/components/switch/switch.test.tsx +3 -3
- package/src/components/table/table.test.tsx +9 -3
- package/src/components/tabs/tabs.test.tsx +6 -2
- package/src/components/tag/tag.test.tsx +1 -3
- package/src/components/textarea/textarea.test.tsx +4 -1
- package/src/components/timeline/timeline.test.tsx +10 -5
- package/src/components/toast/toast.test.tsx +11 -14
- package/src/components/tooltip/tooltip.test.tsx +1 -5
- package/src/components/tree/tree.test.tsx +3 -1
- package/src/hooks/index.ts +2 -2
- package/src/hooks/internal/index.ts +2 -0
- package/src/hooks/internal/is-apple-device.test.ts +41 -0
- package/src/hooks/internal/is-apple-device.ts +33 -0
- package/src/hooks/internal/use-isomorphic-layout-effect.ts +3 -1
- package/src/hooks/internal/use-latest-ref.ts +21 -0
- package/src/hooks/use-array/use-array.stories.tsx +435 -64
- package/src/hooks/use-array/use-array.test.tsx +398 -15
- package/src/hooks/use-array/use-array.ts +105 -66
- package/src/hooks/use-async/use-async.stories.tsx +255 -131
- package/src/hooks/use-async/use-async.test.ts +397 -0
- package/src/hooks/use-async/use-async.ts +117 -39
- package/src/hooks/use-boolean/index.ts +1 -0
- package/src/hooks/use-boolean/use-boolean.stories.tsx +377 -0
- package/src/hooks/use-boolean/use-boolean.test.tsx +177 -0
- package/src/hooks/use-boolean/use-boolean.ts +50 -0
- package/src/hooks/use-click-outside/use-click-outside.stories.tsx +188 -18
- package/src/hooks/use-click-outside/use-click-outside.test.tsx +89 -10
- package/src/hooks/use-click-outside/use-click-outside.ts +62 -16
- package/src/hooks/use-debounce-callback/use-debounced-callback.stories.tsx +141 -41
- package/src/hooks/use-debounce-callback/use-debounced-callback.test.ts +217 -9
- package/src/hooks/use-debounce-callback/use-debounced-callback.ts +71 -11
- package/src/hooks/use-debounce-value/use-debounced-value.stories.tsx +247 -47
- package/src/hooks/use-debounce-value/use-debounced-value.test.ts +105 -10
- package/src/hooks/use-debounce-value/use-debounced-value.ts +19 -10
- package/src/hooks/use-disclosure/use-disclosure.stories.tsx +305 -14
- package/src/hooks/use-disclosure/use-disclosure.test.ts +198 -50
- package/src/hooks/use-disclosure/use-disclosure.ts +49 -29
- package/src/hooks/use-document-title/use-document-title.stories.tsx +54 -0
- package/src/hooks/use-document-title/use-document-title.test.tsx +26 -0
- package/src/hooks/use-document-title/{use-document-title.tsx → use-document-title.ts} +17 -3
- package/src/hooks/use-event-listener/use-event-listener.stories.tsx +105 -9
- package/src/hooks/use-event-listener/use-event-listener.test.tsx +77 -10
- package/src/hooks/use-event-listener/use-event-listener.ts +71 -11
- package/src/hooks/use-focus-trap/use-focus-trap.test.ts +31 -6
- package/src/hooks/use-focus-trap/use-focus-trap.ts +3 -2
- package/src/hooks/use-hotkey/index.ts +9 -1
- package/src/hooks/use-hotkey/use-hotkey.stories.tsx +279 -74
- package/src/hooks/use-hotkey/use-hotkey.test.tsx +286 -34
- package/src/hooks/use-hotkey/use-hotkey.ts +141 -17
- package/src/hooks/use-hotkey/utils/index.ts +8 -3
- package/src/hooks/use-hotkey/utils/is-input-field.test.ts +78 -0
- package/src/hooks/use-hotkey/utils/is-input-field.ts +31 -10
- package/src/hooks/use-hotkey/utils/match-and-run.test.ts +203 -0
- package/src/hooks/use-hotkey/utils/match-and-run.ts +62 -0
- package/src/hooks/use-hotkey/utils/match-key-modifiers.test.ts +65 -0
- package/src/hooks/use-hotkey/utils/match-key-modifiers.ts +39 -12
- package/src/hooks/use-hover/use-hover.stories.tsx +258 -80
- package/src/hooks/use-hover/use-hover.test.tsx +266 -26
- package/src/hooks/use-hover/use-hover.tsx +93 -28
- package/src/hooks/use-is-visible/use-is-visible.stories.tsx +193 -46
- package/src/hooks/use-is-visible/use-is-visible.test.tsx +235 -7
- package/src/hooks/use-is-visible/use-is-visible.ts +114 -0
- package/src/hooks/use-local-storage/use-local-storage.stories.tsx +129 -29
- package/src/hooks/use-local-storage/use-local-storage.test.ts +106 -41
- package/src/hooks/use-local-storage/use-local-storage.ts +100 -31
- package/src/hooks/use-media-query/use-media-query.stories.tsx +86 -26
- package/src/hooks/use-media-query/use-media-query.test.ts +132 -0
- package/src/hooks/use-media-query/use-media-query.ts +39 -14
- package/src/hooks/use-memoized-fn/use-memoized-fn.ts +0 -1
- package/src/hooks/use-mutation/use-mutation.stories.tsx +260 -94
- package/src/hooks/use-mutation/use-mutation.test.ts +359 -0
- package/src/hooks/use-mutation/use-mutation.ts +97 -0
- package/src/hooks/use-object/use-object.stories.tsx +310 -79
- package/src/hooks/use-object/use-object.test.tsx +235 -56
- package/src/hooks/use-object/use-object.ts +59 -0
- package/src/hooks/use-pagination/use-pagination.tsx +0 -1
- package/src/hooks/use-prevent-page-close/index.ts +1 -0
- package/src/hooks/use-prevent-page-close/use-prevent-page-close.stories.tsx +39 -0
- package/src/hooks/use-prevent-page-close/use-prevent-page-close.test.ts +89 -0
- package/src/hooks/use-prevent-page-close/use-prevent-page-close.ts +27 -0
- package/src/hooks/use-range-pagination/use-range-pagination.test.tsx +1 -1
- package/src/hooks/use-range-pagination/use-range-pagination.tsx +1 -1
- package/src/hooks/use-selection/use-selection.ts +0 -1
- package/src/hooks/use-step/use-step.stories.tsx +178 -65
- package/src/hooks/use-step/use-step.test.ts +178 -53
- package/src/hooks/use-step/use-step.ts +57 -49
- package/src/utils/form.test.tsx +13 -8
- package/src/utils/form.tsx +10 -0
- package/src/utils/functions/getFormData.test.ts +1 -1
- package/dist/hooks/use-hotkey/utils/create-hotkey-listener.cjs.js +0 -1
- package/dist/hooks/use-hotkey/utils/create-hotkey-listener.es.js +0 -10
- package/dist/hooks/use-prevent-close-window/use-prevent-close-window.cjs.js +0 -1
- package/dist/hooks/use-prevent-close-window/use-prevent-close-window.es.js +0 -15
- package/dist/hooks/use-toggle/use-toggle.cjs.js +0 -1
- package/dist/hooks/use-toggle/use-toggle.es.js +0 -10
- package/dist/src/hooks/use-hotkey/utils/create-hotkey-listener.d.ts +0 -1
- package/dist/src/hooks/use-prevent-close-window/index.d.ts +0 -1
- package/dist/src/hooks/use-prevent-close-window/use-prevent-close-window.d.ts +0 -13
- package/dist/src/hooks/use-toggle/index.d.ts +0 -1
- package/dist/src/hooks/use-toggle/use-toggle.d.ts +0 -3
- package/src/hooks/use-async/use-async.test.tsx +0 -68
- package/src/hooks/use-hotkey/utils/create-hotkey-listener.ts +0 -25
- package/src/hooks/use-is-visible/use-is-visible.tsx +0 -49
- package/src/hooks/use-mutation/use-mutation.test.tsx +0 -83
- package/src/hooks/use-mutation/use-mutation.tsx +0 -59
- package/src/hooks/use-object/use-object.tsx +0 -46
- package/src/hooks/use-prevent-close-window/index.ts +0 -1
- package/src/hooks/use-prevent-close-window/use-prevent-close-window.stories.tsx +0 -32
- package/src/hooks/use-prevent-close-window/use-prevent-close-window.test.ts +0 -79
- package/src/hooks/use-prevent-close-window/use-prevent-close-window.ts +0 -33
- package/src/hooks/use-toggle/index.ts +0 -1
- package/src/hooks/use-toggle/use-toggle.stories.tsx +0 -25
- package/src/hooks/use-toggle/use-toggle.test.tsx +0 -64
- package/src/hooks/use-toggle/use-toggle.ts +0 -14
- /package/dist/src/{hooks/use-prevent-close-window/use-prevent-close-window.test.d.ts → components/date-picker/date-input-form.test.d.ts} +0 -0
- /package/dist/src/hooks/{use-toggle/use-toggle.test.d.ts → internal/is-apple-device.test.d.ts} +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
2
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react/jsx-runtime"),i=require("class-variance-authority"),d=require("./components/base-button.cjs.js"),s=require("../../lib/cn.cjs.js"),e=i.cva(["group/button relative inline-flex shrink-0 items-center justify-center gap-1 rounded-lg border border-transparent bg-clip-padding","text-sm font-medium whitespace-nowrap transition-all outline-none select-none","focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50","active:not-aria-[haspopup]:translate-y-px","disabled:pointer-events-none disabled:opacity-50","aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40","[&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4","[&[data-loading]]:text-transparent","[&[data-loading]>*:not([data-loader])]:invisible","[&[data-loading]]:pointer-events-none"],{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90 [--btn-loader-color:var(--color-primary-foreground)]",outline:"border-border hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:border-input dark:hover:bg-input/50 [--btn-loader-color:var(--color-foreground)]",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80 aria-expanded:bg-secondary aria-expanded:text-secondary-foreground [--btn-loader-color:var(--color-secondary-foreground)]",ghost:"hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:hover:bg-muted/50 [--btn-loader-color:var(--color-foreground)]",error:"bg-error text-error-foreground hover:bg-error/90 [--btn-loader-color:var(--color-error-foreground)]",success:"bg-success text-success-foreground hover:bg-success/90 [--btn-loader-color:var(--color-success-foreground)]",warning:"bg-warning text-warning-foreground hover:bg-warning/90 [--btn-loader-color:var(--color-warning-foreground)]",link:"text-primary underline-offset-4 hover:underline [--btn-loader-color:var(--color-primary)]"},size:{default:"h-8 px-2.5",xs:"h-6 rounded-[min(var(--radius-md),10px)] px-2 text-xs in-data-[slot=button-group]:rounded-lg [&_svg:not([class*='size-'])]:size-3",sm:"h-7 rounded-[min(var(--radius-md),12px)] px-2.5 text-[0.8rem] in-data-[slot=button-group]:rounded-lg [&_svg:not([class*='size-'])]:size-3.5",lg:"h-9 px-2.5",icon:"size-8","icon-xs":"size-6 rounded-[min(var(--radius-md),10px)] in-data-[slot=button-group]:rounded-lg [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-7 rounded-[min(var(--radius-md),12px)] in-data-[slot=button-group]:rounded-lg","icon-lg":"size-9"}},defaultVariants:{variant:"default",size:"default"}}),u=({variant:r,size:o,className:n,...a})=>t.jsx(d.BaseButton,{...a,className:s.cn(e({variant:r,size:o}),n),"data-variant":r||"default"});exports.Button=u;exports.buttonVariants=e;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsx as a } from "react/jsx-runtime";
|
|
3
|
-
import { cva as
|
|
4
|
-
import { BaseButton as
|
|
5
|
-
import { cn as
|
|
6
|
-
const s =
|
|
3
|
+
import { cva as t } from "class-variance-authority";
|
|
4
|
+
import { BaseButton as d } from "./components/base-button.es.js";
|
|
5
|
+
import { cn as i } from "../../lib/cn.es.js";
|
|
6
|
+
const s = t(
|
|
7
7
|
[
|
|
8
8
|
"group/button relative inline-flex shrink-0 items-center justify-center gap-1 rounded-lg border border-transparent bg-clip-padding",
|
|
9
9
|
"text-sm font-medium whitespace-nowrap transition-all outline-none select-none",
|
|
@@ -12,20 +12,21 @@ const s = o(
|
|
|
12
12
|
"disabled:pointer-events-none disabled:opacity-50",
|
|
13
13
|
"aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40",
|
|
14
14
|
"[&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
|
|
15
|
-
"[&[data-loading]
|
|
15
|
+
"[&[data-loading]]:text-transparent",
|
|
16
|
+
"[&[data-loading]>*:not([data-loader])]:invisible",
|
|
16
17
|
"[&[data-loading]]:pointer-events-none"
|
|
17
18
|
],
|
|
18
19
|
{
|
|
19
20
|
variants: {
|
|
20
21
|
variant: {
|
|
21
|
-
default: "bg-primary text-primary-foreground hover:bg-primary/90",
|
|
22
|
-
outline: "border-border hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:border-input dark:hover:bg-input/50",
|
|
23
|
-
secondary: "bg-secondary text-secondary-foreground hover:bg-secondary/80 aria-expanded:bg-secondary aria-expanded:text-secondary-foreground",
|
|
24
|
-
ghost: "hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:hover:bg-muted/50",
|
|
25
|
-
error: "bg-error text-error-foreground hover:bg-error/90",
|
|
26
|
-
success: "bg-success text-success-foreground hover:bg-success/90",
|
|
27
|
-
warning: "bg-warning text-warning-foreground hover:bg-warning/90",
|
|
28
|
-
link: "text-primary underline-offset-4 hover:underline"
|
|
22
|
+
default: "bg-primary text-primary-foreground hover:bg-primary/90 [--btn-loader-color:var(--color-primary-foreground)]",
|
|
23
|
+
outline: "border-border hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:border-input dark:hover:bg-input/50 [--btn-loader-color:var(--color-foreground)]",
|
|
24
|
+
secondary: "bg-secondary text-secondary-foreground hover:bg-secondary/80 aria-expanded:bg-secondary aria-expanded:text-secondary-foreground [--btn-loader-color:var(--color-secondary-foreground)]",
|
|
25
|
+
ghost: "hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:hover:bg-muted/50 [--btn-loader-color:var(--color-foreground)]",
|
|
26
|
+
error: "bg-error text-error-foreground hover:bg-error/90 [--btn-loader-color:var(--color-error-foreground)]",
|
|
27
|
+
success: "bg-success text-success-foreground hover:bg-success/90 [--btn-loader-color:var(--color-success-foreground)]",
|
|
28
|
+
warning: "bg-warning text-warning-foreground hover:bg-warning/90 [--btn-loader-color:var(--color-warning-foreground)]",
|
|
29
|
+
link: "text-primary underline-offset-4 hover:underline [--btn-loader-color:var(--color-primary)]"
|
|
29
30
|
},
|
|
30
31
|
size: {
|
|
31
32
|
default: "h-8 px-2.5",
|
|
@@ -43,12 +44,12 @@ const s = o(
|
|
|
43
44
|
size: "default"
|
|
44
45
|
}
|
|
45
46
|
}
|
|
46
|
-
), v = ({ variant:
|
|
47
|
-
|
|
47
|
+
), v = ({ variant: r, size: e, className: o, ...n }) => /* @__PURE__ */ a(
|
|
48
|
+
d,
|
|
48
49
|
{
|
|
49
|
-
...
|
|
50
|
-
className:
|
|
51
|
-
"data-variant":
|
|
50
|
+
...n,
|
|
51
|
+
className: i(s({ variant: r, size: e }), o),
|
|
52
|
+
"data-variant": r || "default"
|
|
52
53
|
}
|
|
53
54
|
);
|
|
54
55
|
export {
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
2
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react/jsx-runtime"),d=require("@base-ui/react/button"),b=require("@radix-ui/react-use-controllable-state"),f=require("lucide-react"),g=({onClick:e,loading:r,style:s,children:l,...i})=>{const[t=!1,a]=b.useControllableState({prop:r,defaultProp:!1}),u=async c=>{if(!e||t)return;const o=e(c);o instanceof Promise&&(a(!0),await o.finally(()=>a(!1)))};return n.jsxs(d.Button,{"data-slot":"button","data-loading":t||void 0,"aria-busy":t||void 0,...i,onClick:u,style:s,children:[l,t&&n.jsx(f.LoaderCircle,{"data-loader":!0,"data-testid":"btn-loader",className:"absolute inset-0 m-auto size-4 animate-spin text-[var(--btn-loader-color,currentColor)]"})]})};exports.BaseButton=g;
|
|
@@ -1,40 +1,40 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { jsxs as
|
|
2
|
+
import { jsxs as d, jsx as c } from "react/jsx-runtime";
|
|
3
3
|
import { Button as u } from "@base-ui/react/button";
|
|
4
|
-
import { useControllableState as
|
|
5
|
-
import { LoaderCircle as
|
|
6
|
-
const
|
|
4
|
+
import { useControllableState as f } from "@radix-ui/react-use-controllable-state";
|
|
5
|
+
import { LoaderCircle as m } from "lucide-react";
|
|
6
|
+
const h = ({
|
|
7
7
|
onClick: a,
|
|
8
|
-
loading:
|
|
9
|
-
style:
|
|
10
|
-
children:
|
|
11
|
-
...
|
|
8
|
+
loading: r,
|
|
9
|
+
style: l,
|
|
10
|
+
children: n,
|
|
11
|
+
...i
|
|
12
12
|
}) => {
|
|
13
|
-
const [t = !1, o] =
|
|
14
|
-
prop:
|
|
13
|
+
const [t = !1, o] = f({
|
|
14
|
+
prop: r,
|
|
15
15
|
defaultProp: !1
|
|
16
16
|
});
|
|
17
|
-
return /* @__PURE__ */
|
|
17
|
+
return /* @__PURE__ */ d(
|
|
18
18
|
u,
|
|
19
19
|
{
|
|
20
20
|
"data-slot": "button",
|
|
21
21
|
"data-loading": t || void 0,
|
|
22
22
|
"aria-busy": t || void 0,
|
|
23
|
-
...
|
|
24
|
-
onClick: async (
|
|
23
|
+
...i,
|
|
24
|
+
onClick: async (s) => {
|
|
25
25
|
if (!a || t) return;
|
|
26
|
-
const e = a(
|
|
26
|
+
const e = a(s);
|
|
27
27
|
e instanceof Promise && (o(!0), await e.finally(() => o(!1)));
|
|
28
28
|
},
|
|
29
|
-
style:
|
|
29
|
+
style: l,
|
|
30
30
|
children: [
|
|
31
|
-
|
|
32
|
-
t && /* @__PURE__ */
|
|
33
|
-
|
|
31
|
+
n,
|
|
32
|
+
t && /* @__PURE__ */ c(
|
|
33
|
+
m,
|
|
34
34
|
{
|
|
35
35
|
"data-loader": !0,
|
|
36
36
|
"data-testid": "btn-loader",
|
|
37
|
-
className: "absolute inset-0 m-auto size-4 animate-spin"
|
|
37
|
+
className: "absolute inset-0 m-auto size-4 animate-spin text-[var(--btn-loader-color,currentColor)]"
|
|
38
38
|
}
|
|
39
39
|
)
|
|
40
40
|
]
|
|
@@ -42,5 +42,5 @@ const k = ({
|
|
|
42
42
|
);
|
|
43
43
|
};
|
|
44
44
|
export {
|
|
45
|
-
|
|
45
|
+
h as BaseButton
|
|
46
46
|
};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react/jsx-runtime"),_=require("date-fns/locale"),g=require("lucide-react"),w=require("react-day-picker"),C=require("../select/select.cjs.js"),a=require("../../lib/cn.cjs.js"),p=new Date().getFullYear(),j=new Date(p-100,0),D=new Date(p+100,11);function N({options:l=[],value:d,onChange:o}){const i=l.map(e=>({label:e.label??"",value:e.value??0})),c=i.find(e=>e.value===Number(d))??null;return r.jsx(C.Select,{items:i,value:c,className:"py-1 h-7",getLabel:e=>e.label,getId:e=>String(e.value),onValueChange:e=>{!o||e===null||o({target:{value:String(e.value)}})}})}const m="relative flex size-(--cell-size) text-base sm:text-sm items-center justify-center rounded-lg text-foreground not-in-data-selected:hover:bg-accent disabled:pointer-events-none disabled:opacity-64 [&_svg:not([class*='opacity-'])]:opacity-80 [&_svg:not([class*='size-'])]:size-4.5 sm:[&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none [&_svg]:shrink-0";function k({className:l,classNames:d,showOutsideDays:o=!0,components:i,mode:c="single",captionLayout:e="dropdown",startMonth:b=j,endMonth:x=D,...v}){const u={button_next:m,button_previous:m,caption_label:"text-base sm:text-sm font-medium flex items-center gap-2 h-full",day:"size-(--cell-size) text-sm py-px",day_button:a.cn(m,"in-data-disabled:pointer-events-none in-[.range-middle]:rounded-none in-[.range-end:not(.range-start)]:rounded-s-none in-[.range-start:not(.range-end)]:rounded-e-none in-[.range-middle]:in-data-selected:bg-accent in-data-selected:bg-primary in-[.range-middle]:in-data-selected:text-foreground in-data-disabled:text-muted-foreground/72 in-data-outside:text-muted-foreground/72 in-data-selected:in-data-outside:text-primary-foreground in-data-selected:text-primary-foreground in-data-disabled:line-through outline-none in-[[data-selected]:not(.range-middle)]:transition-[color,background-color,border-radius,box-shadow] focus-visible:z-1 focus-visible:ring-[3px] focus-visible:ring-ring/50"),dropdown:"absolute bg-popover inset-0 opacity-0",dropdown_root:"relative has-focus:border-ring has-focus:ring-ring/50 has-focus:ring-[3px] border border-input shadow-xs/5 rounded-lg px-[calc(--spacing(3)-1px)] h-9 sm:h-8 [&_svg:not([class*='opacity-'])]:opacity-80 [&_svg:not([class*='size-'])]:size-4.5 sm:[&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none [&_svg]:-me-1",dropdowns:"w-full flex items-center text-base sm:text-sm justify-center h-(--cell-size) gap-1.5 *:[span]:font-medium",hidden:"invisible",month:"w-full",month_caption:"relative mx-(--cell-size) px-1 mb-1 flex h-(--cell-size) items-center justify-center z-2",months:"relative flex flex-col sm:flex-row gap-2",nav:"absolute top-0 flex w-full justify-between z-1",outside:"text-muted-foreground data-selected:bg-accent/50 data-selected:text-muted-foreground",range_end:"range-end",range_middle:"range-middle",range_start:"range-start",today:"*:after:pointer-events-none *:after:absolute *:after:bottom-1 *:after:start-1/2 *:after:z-1 *:after:size-[3px] *:after:-translate-x-1/2 *:after:rounded-full *:after:bg-primary [&[data-selected]:not(.range-middle)>*]:after:bg-background [&[data-disabled]>*]:after:bg-foreground/30 *:after:transition-colors",week_number:"size-(--cell-size) p-0 text-xs font-medium text-muted-foreground/72",weekday:"size-(--cell-size) p-0 text-xs font-medium text-muted-foreground/72"},h=Object.keys(u).reduce((t,n)=>{const s=d?.[n],f=u[n];return t[n]=s?a.cn(f,s):f,t},{...u}),z={...{Dropdown:N,Chevron:({className:t,orientation:n,...s})=>n==="left"?r.jsx(g.ChevronLeftIcon,{className:a.cn(t,"rtl:rotate-180"),...s,"aria-hidden":"true"}):n==="right"?r.jsx(g.ChevronRightIcon,{className:a.cn(t,"rtl:rotate-180"),...s,"aria-hidden":"true"}):r.jsx(g.ChevronsUpDownIcon,{className:t,...s,"aria-hidden":"true"})},...i},y={className:a.cn("w-fit [--cell-size:--spacing(10)] sm:[--cell-size:--spacing(9)]",l),classNames:h,components:z,"data-slot":"calendar",formatters:{formatMonthDropdown:t=>t.toLocaleString("es",{month:"short"})},locale:_.es,weekStartsOn:1,captionLayout:e,startMonth:b,endMonth:x,mode:c,showOutsideDays:o,...v};return r.jsx(w.DayPicker,{...y})}exports.Calendar=k;
|
|
2
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react/jsx-runtime"),_=require("date-fns/locale"),g=require("lucide-react"),w=require("react-day-picker"),C=require("../select/select.cjs.js"),a=require("../../lib/cn.cjs.js"),p=new Date().getFullYear(),j=new Date(p-100,0),D=new Date(p+100,11);function N({options:l=[],value:d,onChange:o}){const i=l.map(e=>({label:e.label??"",value:e.value??0})),c=i.find(e=>e.value===Number(d))??null;return r.jsx(C.Select,{items:i,value:c,"aria-invalid":!1,className:"py-1 h-7",getLabel:e=>e.label,getId:e=>String(e.value),onValueChange:e=>{!o||e===null||o({target:{value:String(e.value)}})}})}const m="relative flex size-(--cell-size) text-base sm:text-sm items-center justify-center rounded-lg text-foreground not-in-data-selected:hover:bg-accent disabled:pointer-events-none disabled:opacity-64 [&_svg:not([class*='opacity-'])]:opacity-80 [&_svg:not([class*='size-'])]:size-4.5 sm:[&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none [&_svg]:shrink-0";function k({className:l,classNames:d,showOutsideDays:o=!0,components:i,mode:c="single",captionLayout:e="dropdown",startMonth:b=j,endMonth:x=D,...v}){const u={button_next:m,button_previous:m,caption_label:"text-base sm:text-sm font-medium flex items-center gap-2 h-full",day:"size-(--cell-size) text-sm py-px",day_button:a.cn(m,"in-data-disabled:pointer-events-none in-[.range-middle]:rounded-none in-[.range-end:not(.range-start)]:rounded-s-none in-[.range-start:not(.range-end)]:rounded-e-none in-[.range-middle]:in-data-selected:bg-accent in-data-selected:bg-primary in-[.range-middle]:in-data-selected:text-foreground in-data-disabled:text-muted-foreground/72 in-data-outside:text-muted-foreground/72 in-data-selected:in-data-outside:text-primary-foreground in-data-selected:text-primary-foreground in-data-disabled:line-through outline-none in-[[data-selected]:not(.range-middle)]:transition-[color,background-color,border-radius,box-shadow] focus-visible:z-1 focus-visible:ring-[3px] focus-visible:ring-ring/50"),dropdown:"absolute bg-popover inset-0 opacity-0",dropdown_root:"relative has-focus:border-ring has-focus:ring-ring/50 has-focus:ring-[3px] border border-input shadow-xs/5 rounded-lg px-[calc(--spacing(3)-1px)] h-9 sm:h-8 [&_svg:not([class*='opacity-'])]:opacity-80 [&_svg:not([class*='size-'])]:size-4.5 sm:[&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none [&_svg]:-me-1",dropdowns:"w-full flex items-center text-base sm:text-sm justify-center h-(--cell-size) gap-1.5 *:[span]:font-medium",hidden:"invisible",month:"w-full",month_caption:"relative mx-(--cell-size) px-1 mb-1 flex h-(--cell-size) items-center justify-center z-2",months:"relative flex flex-col sm:flex-row gap-2",nav:"absolute top-0 flex w-full justify-between z-1",outside:"text-muted-foreground data-selected:bg-accent/50 data-selected:text-muted-foreground",range_end:"range-end",range_middle:"range-middle",range_start:"range-start",today:"*:after:pointer-events-none *:after:absolute *:after:bottom-1 *:after:start-1/2 *:after:z-1 *:after:size-[3px] *:after:-translate-x-1/2 *:after:rounded-full *:after:bg-primary [&[data-selected]:not(.range-middle)>*]:after:bg-background [&[data-disabled]>*]:after:bg-foreground/30 *:after:transition-colors",week_number:"size-(--cell-size) p-0 text-xs font-medium text-muted-foreground/72",weekday:"size-(--cell-size) p-0 text-xs font-medium text-muted-foreground/72"},h=Object.keys(u).reduce((t,n)=>{const s=d?.[n],f=u[n];return t[n]=s?a.cn(f,s):f,t},{...u}),z={...{Dropdown:N,Chevron:({className:t,orientation:n,...s})=>n==="left"?r.jsx(g.ChevronLeftIcon,{className:a.cn(t,"rtl:rotate-180"),...s,"aria-hidden":"true"}):n==="right"?r.jsx(g.ChevronRightIcon,{className:a.cn(t,"rtl:rotate-180"),...s,"aria-hidden":"true"}):r.jsx(g.ChevronsUpDownIcon,{className:t,...s,"aria-hidden":"true"})},...i},y={className:a.cn("w-fit [--cell-size:--spacing(10)] sm:[--cell-size:--spacing(9)]",l),classNames:h,components:z,"data-slot":"calendar",formatters:{formatMonthDropdown:t=>t.toLocaleString("es",{month:"short"})},locale:_.es,weekStartsOn:1,captionLayout:e,startMonth:b,endMonth:x,mode:c,showOutsideDays:o,...v};return r.jsx(w.DayPicker,{...y})}exports.Calendar=k;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react/jsx-runtime"),
|
|
2
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react/jsx-runtime"),B=require("@radix-ui/react-use-controllable-state"),l=require("date-fns"),M=require("lucide-react"),O=require("./use-date-input.cjs.js"),k=require("./use-date-input-popover.cjs.js"),H=require("./use-hidden-field-value.cjs.js"),i=require("../popover/popover.cjs.js"),f=require("../field/field.cjs.js"),E=require("../calendar/calendar.cjs.js"),U=require("../../lib/cn.cjs.js"),z=require("../input/input.cjs.js"),A=m=>{const{placeholder:u,value:v,onValueChange:g,defaultValue:y,autoComplete:b,className:x,disabledDate:n,renderFooter:D,disabled:o,onBlur:C,required:j,...q}=m,[a,d]=B.useControllableState({prop:v,onChange:e=>g?.(e??null),defaultProp:y??null}),I=a?l.format(a,"yyyy-MM-dd"):"",P=H.useHiddenFieldValue(I),{inputValue:w,handleChange:N,handleBlur:S,handleKeyDown:F,clear:K,setFromExternalDate:r}=O.useDateInput({date:a??null,onDateChange:e=>d(e),disabledDate:n}),{open:R,setOpen:c,handleInputKeyDown:T,inputRef:s}=k.useDateInputPopover({disabled:o}),V=e=>{F(e),T(e)},p=D?.({value:a??null,clear:()=>{r(null),K()},selectToday:()=>{const e=new Date;n?.(e)||r(e)},setValue:e=>{const h=e&&l.isDate(e)?e:null;d(h),r(h)}});return t.jsxs(i.PopoverRoot,{"data-slot":"date-input",open:R,onOpenChange:c,children:[t.jsxs("div",{className:U.cn(z.inputBaseClasses,"relative flex items-center gap-2 h-8","has-[:focus-visible]:border-ring","aria-invalid:border-error has-[:focus-visible]:aria-invalid:ring-error/20","has-aria-invalid:border-error has-[:focus-visible]:has-aria-invalid:border-error has-[:focus-visible]:has-aria-invalid:ring-error/20","has-[:disabled]:cursor-not-allowed has-[:disabled]:opacity-50",!a&&"text-muted-foreground",x,"field-error"),onClick:e=>{e.target===e.currentTarget&&s.current?.focus()},children:[t.jsx(f.FieldControl,{render:t.jsx("input",{ref:P,type:"text",className:"sr-only",tabIndex:-1,"aria-hidden":"true",required:j,disabled:o,onFocus:()=>s.current?.focus()})}),t.jsx("input",{type:"text",value:w,onChange:N,onBlur:e=>{S(),C?.(e)},onKeyDown:V,placeholder:u??"dd/mm/aaaa",autoComplete:b??"off",disabled:o,className:"flex-1 min-w-0 bg-transparent outline-none text-start truncate pt-px","aria-label":u,ref:s,...q}),t.jsxs(i.PopoverTrigger,{type:"button",disabled:o,"data-slot":"date-input-trigger",className:"flex shrink-0 items-center justify-center text-muted-foreground hover:text-foreground",children:[t.jsx(M.CalendarIcon,{"data-slot":"date-input-icon"}),t.jsx("span",{className:"sr-only",children:"Seleccionar fecha"})]})]}),t.jsx(i.PopoverPopup,{className:"w-auto p-0",align:"start","data-slot":"date-input-content",children:t.jsxs(f.FieldRoot,{className:"contents",children:[t.jsx(E.Calendar,{className:"border-none",mode:"single",selected:a??void 0,onSelect:e=>{if(!e||!l.isDate(e)){r(null);return}n?.(e)||(r(e),c(!1))},disabled:n}),p&&t.jsx("div",{className:"p-2","data-slot":"date-input-footer",children:p})]})})]})};exports.DateInput=A;
|
|
@@ -1,54 +1,56 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { jsxs as
|
|
2
|
+
import { jsxs as l, jsx as o } from "react/jsx-runtime";
|
|
3
3
|
import { useControllableState as j } from "@radix-ui/react-use-controllable-state";
|
|
4
|
-
import { isDate as m } from "date-fns";
|
|
5
|
-
import { CalendarIcon as
|
|
6
|
-
import { useDateInput as
|
|
7
|
-
import { useDateInputPopover as
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
|
|
4
|
+
import { format as k, isDate as m } from "date-fns";
|
|
5
|
+
import { CalendarIcon as M } from "lucide-react";
|
|
6
|
+
import { useDateInput as O } from "./use-date-input.es.js";
|
|
7
|
+
import { useDateInputPopover as q } from "./use-date-input-popover.es.js";
|
|
8
|
+
import { useHiddenFieldValue as E } from "./use-hidden-field-value.es.js";
|
|
9
|
+
import { PopoverRoot as H, PopoverTrigger as z, PopoverPopup as A } from "../popover/popover.es.js";
|
|
10
|
+
import { FieldControl as G, FieldRoot as J } from "../field/field.es.js";
|
|
11
|
+
import { Calendar as L } from "../calendar/calendar.es.js";
|
|
12
|
+
import { cn as Q } from "../../lib/cn.es.js";
|
|
13
|
+
import { inputBaseClasses as U } from "../input/input.es.js";
|
|
14
|
+
const ie = (f) => {
|
|
14
15
|
const {
|
|
15
|
-
placeholder:
|
|
16
|
+
placeholder: i,
|
|
16
17
|
value: h,
|
|
17
18
|
onValueChange: g,
|
|
18
19
|
defaultValue: v,
|
|
19
|
-
autoComplete:
|
|
20
|
+
autoComplete: y,
|
|
20
21
|
className: b,
|
|
21
22
|
disabledDate: a,
|
|
22
|
-
renderFooter:
|
|
23
|
-
disabled:
|
|
24
|
-
onBlur:
|
|
23
|
+
renderFooter: C,
|
|
24
|
+
disabled: n,
|
|
25
|
+
onBlur: D,
|
|
26
|
+
required: x,
|
|
25
27
|
...w
|
|
26
|
-
} = f, [r,
|
|
28
|
+
} = f, [r, d] = j({
|
|
27
29
|
prop: h,
|
|
28
30
|
onChange: (e) => g?.(e ?? null),
|
|
29
31
|
defaultProp: v ?? null
|
|
30
|
-
}), {
|
|
31
|
-
inputValue:
|
|
32
|
-
handleChange:
|
|
33
|
-
handleBlur:
|
|
34
|
-
handleKeyDown:
|
|
35
|
-
clear:
|
|
32
|
+
}), N = r ? k(r, "yyyy-MM-dd") : "", P = E(N), {
|
|
33
|
+
inputValue: I,
|
|
34
|
+
handleChange: F,
|
|
35
|
+
handleBlur: K,
|
|
36
|
+
handleKeyDown: S,
|
|
37
|
+
clear: B,
|
|
36
38
|
setFromExternalDate: t
|
|
37
|
-
} =
|
|
39
|
+
} = O({
|
|
38
40
|
date: r ?? null,
|
|
39
|
-
onDateChange: (e) =>
|
|
41
|
+
onDateChange: (e) => d(e),
|
|
40
42
|
disabledDate: a
|
|
41
43
|
}), {
|
|
42
|
-
open:
|
|
43
|
-
setOpen:
|
|
44
|
-
handleInputKeyDown:
|
|
45
|
-
inputRef:
|
|
46
|
-
} =
|
|
47
|
-
|
|
48
|
-
}, c =
|
|
44
|
+
open: T,
|
|
45
|
+
setOpen: u,
|
|
46
|
+
handleInputKeyDown: V,
|
|
47
|
+
inputRef: s
|
|
48
|
+
} = q({ disabled: n }), R = (e) => {
|
|
49
|
+
S(e), V(e);
|
|
50
|
+
}, c = C?.({
|
|
49
51
|
value: r ?? null,
|
|
50
52
|
clear: () => {
|
|
51
|
-
t(null),
|
|
53
|
+
t(null), B();
|
|
52
54
|
},
|
|
53
55
|
selectToday: () => {
|
|
54
56
|
const e = /* @__PURE__ */ new Date();
|
|
@@ -56,77 +58,92 @@ const oe = (f) => {
|
|
|
56
58
|
},
|
|
57
59
|
setValue: (e) => {
|
|
58
60
|
const p = e && m(e) ? e : null;
|
|
59
|
-
|
|
61
|
+
d(p), t(p);
|
|
60
62
|
}
|
|
61
63
|
});
|
|
62
|
-
return /* @__PURE__ */
|
|
63
|
-
/* @__PURE__ */
|
|
64
|
+
return /* @__PURE__ */ l(H, { "data-slot": "date-input", open: T, onOpenChange: u, children: [
|
|
65
|
+
/* @__PURE__ */ l(
|
|
64
66
|
"div",
|
|
65
67
|
{
|
|
66
|
-
className:
|
|
67
|
-
|
|
68
|
-
"flex items-center gap-2 h-8",
|
|
68
|
+
className: Q(
|
|
69
|
+
U,
|
|
70
|
+
"relative flex items-center gap-2 h-8",
|
|
69
71
|
"has-[:focus-visible]:border-ring",
|
|
70
72
|
"aria-invalid:border-error has-[:focus-visible]:aria-invalid:ring-error/20",
|
|
71
|
-
|
|
73
|
+
// Re-assert the error border on focus: `has-[:focus-visible]:border-ring`
|
|
74
|
+
// ties on specificity and would otherwise wash the red out while typing.
|
|
75
|
+
"has-aria-invalid:border-error has-[:focus-visible]:has-aria-invalid:border-error has-[:focus-visible]:has-aria-invalid:ring-error/20",
|
|
72
76
|
"has-[:disabled]:cursor-not-allowed has-[:disabled]:opacity-50",
|
|
73
77
|
!r && "text-muted-foreground",
|
|
74
78
|
b,
|
|
75
79
|
"field-error"
|
|
76
80
|
),
|
|
77
81
|
onClick: (e) => {
|
|
78
|
-
e.target === e.currentTarget &&
|
|
82
|
+
e.target === e.currentTarget && s.current?.focus();
|
|
79
83
|
},
|
|
80
84
|
children: [
|
|
81
|
-
/* @__PURE__ */ n(
|
|
82
|
-
R,
|
|
83
|
-
{
|
|
84
|
-
type: "button",
|
|
85
|
-
disabled: l,
|
|
86
|
-
"data-slot": "date-input-trigger",
|
|
87
|
-
className: "flex shrink-0 items-center justify-center text-muted-foreground hover:text-foreground",
|
|
88
|
-
children: [
|
|
89
|
-
/* @__PURE__ */ o(F, { "data-slot": "date-input-icon" }),
|
|
90
|
-
/* @__PURE__ */ o("span", { className: "sr-only", children: "Seleccionar fecha" })
|
|
91
|
-
]
|
|
92
|
-
}
|
|
93
|
-
),
|
|
94
85
|
/* @__PURE__ */ o(
|
|
95
|
-
|
|
86
|
+
G,
|
|
96
87
|
{
|
|
97
88
|
render: /* @__PURE__ */ o(
|
|
98
89
|
"input",
|
|
99
90
|
{
|
|
91
|
+
ref: P,
|
|
100
92
|
type: "text",
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
placeholder: s ?? "dd/mm/aaaa",
|
|
108
|
-
autoComplete: C ?? "off",
|
|
109
|
-
disabled: l,
|
|
110
|
-
className: "flex-1 min-w-0 bg-transparent outline-none text-start truncate pt-px",
|
|
111
|
-
"aria-label": s,
|
|
112
|
-
ref: u,
|
|
113
|
-
...w
|
|
93
|
+
className: "sr-only",
|
|
94
|
+
tabIndex: -1,
|
|
95
|
+
"aria-hidden": "true",
|
|
96
|
+
required: x,
|
|
97
|
+
disabled: n,
|
|
98
|
+
onFocus: () => s.current?.focus()
|
|
114
99
|
}
|
|
115
100
|
)
|
|
116
101
|
}
|
|
102
|
+
),
|
|
103
|
+
/* @__PURE__ */ o(
|
|
104
|
+
"input",
|
|
105
|
+
{
|
|
106
|
+
type: "text",
|
|
107
|
+
value: I,
|
|
108
|
+
onChange: F,
|
|
109
|
+
onBlur: (e) => {
|
|
110
|
+
K(), D?.(e);
|
|
111
|
+
},
|
|
112
|
+
onKeyDown: R,
|
|
113
|
+
placeholder: i ?? "dd/mm/aaaa",
|
|
114
|
+
autoComplete: y ?? "off",
|
|
115
|
+
disabled: n,
|
|
116
|
+
className: "flex-1 min-w-0 bg-transparent outline-none text-start truncate pt-px",
|
|
117
|
+
"aria-label": i,
|
|
118
|
+
ref: s,
|
|
119
|
+
...w
|
|
120
|
+
}
|
|
121
|
+
),
|
|
122
|
+
/* @__PURE__ */ l(
|
|
123
|
+
z,
|
|
124
|
+
{
|
|
125
|
+
type: "button",
|
|
126
|
+
disabled: n,
|
|
127
|
+
"data-slot": "date-input-trigger",
|
|
128
|
+
className: "flex shrink-0 items-center justify-center text-muted-foreground hover:text-foreground",
|
|
129
|
+
children: [
|
|
130
|
+
/* @__PURE__ */ o(M, { "data-slot": "date-input-icon" }),
|
|
131
|
+
/* @__PURE__ */ o("span", { className: "sr-only", children: "Seleccionar fecha" })
|
|
132
|
+
]
|
|
133
|
+
}
|
|
117
134
|
)
|
|
118
135
|
]
|
|
119
136
|
}
|
|
120
137
|
),
|
|
121
|
-
/* @__PURE__ */
|
|
122
|
-
|
|
138
|
+
/* @__PURE__ */ o(
|
|
139
|
+
A,
|
|
123
140
|
{
|
|
124
141
|
className: "w-auto p-0",
|
|
125
142
|
align: "start",
|
|
126
143
|
"data-slot": "date-input-content",
|
|
127
|
-
children: [
|
|
144
|
+
children: /* @__PURE__ */ l(J, { className: "contents", children: [
|
|
128
145
|
/* @__PURE__ */ o(
|
|
129
|
-
|
|
146
|
+
L,
|
|
130
147
|
{
|
|
131
148
|
className: "border-none",
|
|
132
149
|
mode: "single",
|
|
@@ -136,17 +153,17 @@ const oe = (f) => {
|
|
|
136
153
|
t(null);
|
|
137
154
|
return;
|
|
138
155
|
}
|
|
139
|
-
a?.(e) || (t(e),
|
|
156
|
+
a?.(e) || (t(e), u(!1));
|
|
140
157
|
},
|
|
141
158
|
disabled: a
|
|
142
159
|
}
|
|
143
160
|
),
|
|
144
161
|
c && /* @__PURE__ */ o("div", { className: "p-2", "data-slot": "date-input-footer", children: c })
|
|
145
|
-
]
|
|
162
|
+
] })
|
|
146
163
|
}
|
|
147
164
|
)
|
|
148
165
|
] });
|
|
149
166
|
};
|
|
150
167
|
export {
|
|
151
|
-
|
|
168
|
+
ie as DateInput
|
|
152
169
|
};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
2
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),C=require("@radix-ui/react-use-controllable-state"),q=require("lucide-react"),P=require("react"),b=require("./date-picker.utils.cjs.js"),y=require("./use-hidden-field-value.cjs.js"),V=require("../calendar/calendar.cjs.js"),h=require("../../lib/cn.cjs.js"),S=require("../popover/popover.cjs.js"),O=require("../input/input.cjs.js"),R=require("../field/field.cjs.js");function N(o){return o.mode==="range"?e.jsx(D,{...o}):o.mode==="multiple"?e.jsx(F,{...o}):e.jsx(T,{...o})}const k=({open:o,onOpenChange:u,displayText:f,hasValue:p,disabled:m,className:s,classNames:c,children:g,footer:l,slot:i,formValue:v,required:d})=>{const r=P.useRef(null),a=y.useHiddenFieldValue(v);return e.jsxs(S.PopoverRoot,{"data-slot":i,open:o,onOpenChange:u,children:[e.jsxs(S.PopoverTrigger,{render:e.jsx("button",{ref:r,disabled:m,className:h.cn(O.inputBaseClasses,"inline-flex items-center gap-2 h-8 cursor-pointer text-left","focus-visible:border-ring","aria-invalid:border-error focus-visible:aria-invalid:ring-error/20","in-[[data-slot=field][data-invalid]]:border-error focus-visible:in-[[data-slot=field][data-invalid]]:border-error focus-visible:in-[[data-slot=field][data-invalid]]:ring-error/20","disabled:cursor-not-allowed disabled:opacity-50",!p&&"text-muted-foreground",s)}),children:[e.jsx("span",{className:"flex-1 truncate",children:f}),e.jsx(q.CalendarIcon,{"data-slot":"date-picker-icon",className:"shrink-0 text-muted-foreground"})]}),e.jsx(R.FieldControl,{render:e.jsx("input",{ref:a,type:"text",tabIndex:-1,"aria-hidden":"true",className:"sr-only",required:d,onFocus:()=>r.current?.focus()})}),e.jsx(S.PopoverPopup,{className:h.cn("w-auto p-0",c?.popup),align:"start","data-slot":`${i}-content`,children:e.jsxs(R.FieldRoot,{className:"contents",children:[g,l&&e.jsx("div",{className:h.cn("p-2",c?.footer),"data-slot":`${i}-footer`,children:l})]})})]})},T=({value:o,defaultValue:u,onValueChange:f,placeholder:p="Seleccionar fecha",disabled:m,disabledDate:s,renderFooter:c,className:g,classNames:l,required:i})=>{const[v,d]=P.useState(!1),[r,a]=C.useControllableState({prop:o,onChange:t=>f?.(t??null),defaultProp:u??null}),n={mode:"single",value:r??null,clear:()=>a(null),selectToday:()=>{const t=new Date;s?.(t)||a(t)},setValue:t=>a(t)};return e.jsx(k,{slot:"date-picker",open:v,onOpenChange:d,displayText:b.formatSingleDate(r,p),hasValue:!!r,disabled:m,className:g,classNames:l,footer:c?.(n),formValue:b.formatISODate(r),required:i,children:e.jsx(V.Calendar,{className:h.cn("border-none",l?.calendar),mode:"single",selected:r??void 0,onSelect:t=>{s&&t&&s(t)||(a(t??null),d(!1))},disabled:s})})},j={start:null,end:null},D=({value:o,defaultValue:u,onValueChange:f,placeholder:p="Seleccionar rango",disabled:m,disabledDate:s,renderFooter:c,className:g,classNames:l,required:i})=>{const[v,d]=P.useState(!1),[r,a]=C.useControllableState({prop:o,onChange:x=>f?.(x??j),defaultProp:u??j}),n=r??j,t={mode:"range",value:n,clear:()=>a(j),setValue:x=>a(x)};return e.jsx(k,{slot:"date-picker",open:v,onOpenChange:d,displayText:b.formatRangeDate(n.start||n.end?n:void 0,p),hasValue:!!(n.start||n.end),disabled:m,className:g,classNames:l,footer:c?.(t),formValue:b.formatRangeDate(n.start||n.end?n:void 0,""),required:i,children:e.jsx(V.Calendar,{className:h.cn("border-none",l?.calendar),mode:"range",selected:{from:n.start??void 0,to:n.end??void 0},onSelect:x=>{a({start:x?.from??null,end:x?.to??null})},disabled:s})})},F=({value:o,defaultValue:u,onValueChange:f,placeholder:p="Seleccionar fechas",disabled:m,disabledDate:s,renderFooter:c,className:g,classNames:l,required:i})=>{const[v,d]=P.useState(!1),[r,a]=C.useControllableState({prop:o,onChange:t=>f?.(t??[]),defaultProp:u??[]}),n={mode:"multiple",value:r??[],clear:()=>a([]),setValue:t=>a(t)};return e.jsx(k,{slot:"date-picker",open:v,onOpenChange:d,displayText:b.formatMultipleDates(r,p),hasValue:(r?.length??0)>0,disabled:m,className:g,classNames:l,footer:c?.(n),formValue:b.formatMultipleDates(r,""),required:i,children:e.jsx(V.Calendar,{className:h.cn("border-none",l?.calendar),mode:"multiple",selected:r??[],onSelect:t=>{a(t??[])},disabled:s})})};exports.DatePicker=N;
|