zaravand-ui 6.0.0 → 7.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/Accordion/Accordion.cjs +1 -1
- package/dist/components/Accordion/Accordion.interface.d.cts +8 -0
- package/dist/components/Accordion/Accordion.interface.d.ts +8 -0
- package/dist/components/Accordion/Accordion.js +226 -148
- package/dist/components/Accordion/Accordion.variant.cjs +1 -1
- package/dist/components/Accordion/Accordion.variant.js +2 -2
- package/dist/components/Avatar/Avatar.cjs +1 -1
- package/dist/components/Avatar/Avatar.js +32 -32
- package/dist/components/Button/Button.cjs +1 -1
- package/dist/components/Button/Button.interface.d.cts +0 -1
- package/dist/components/Button/Button.interface.d.ts +0 -1
- package/dist/components/Button/Button.js +41 -42
- package/dist/components/Button/Button.variant.cjs +1 -1
- package/dist/components/Button/Button.variant.d.cts +0 -1
- package/dist/components/Button/Button.variant.d.ts +0 -1
- package/dist/components/Button/Button.variant.js +2 -4
- package/dist/components/Checkbox/Checkbox.cjs +1 -1
- package/dist/components/Checkbox/Checkbox.interface.d.cts +11 -0
- package/dist/components/Checkbox/Checkbox.interface.d.ts +11 -0
- package/dist/components/Checkbox/Checkbox.js +66 -43
- package/dist/components/Checkbox/Checkbox.variant.cjs +1 -1
- package/dist/components/Checkbox/Checkbox.variant.d.cts +9 -4
- package/dist/components/Checkbox/Checkbox.variant.d.ts +9 -4
- package/dist/components/Checkbox/Checkbox.variant.js +20 -16
- package/dist/components/DatePicker/DatePicker.cjs +1 -1
- package/dist/components/DatePicker/DatePicker.interface.d.cts +0 -1
- package/dist/components/DatePicker/DatePicker.interface.d.ts +0 -1
- package/dist/components/DatePicker/DatePicker.js +511 -407
- package/dist/components/DatePicker/DatePicker.utils.cjs +1 -1
- package/dist/components/DatePicker/DatePicker.utils.js +101 -82
- package/dist/components/DatePicker/DatePicker.variant.cjs +1 -1
- package/dist/components/DatePicker/DatePicker.variant.d.cts +1 -3
- package/dist/components/DatePicker/DatePicker.variant.d.ts +1 -3
- package/dist/components/DatePicker/DatePicker.variant.js +14 -16
- package/dist/components/DatePicker/DatePickerMonthSlider.cjs +1 -0
- package/dist/components/DatePicker/DatePickerMonthSlider.d.cts +25 -0
- package/dist/components/DatePicker/DatePickerMonthSlider.d.ts +25 -0
- package/dist/components/DatePicker/DatePickerMonthSlider.js +98 -0
- package/dist/components/DatePicker/DatePickerWheel.cjs +1 -0
- package/dist/components/DatePicker/DatePickerWheel.d.cts +30 -0
- package/dist/components/DatePicker/DatePickerWheel.d.ts +30 -0
- package/dist/components/DatePicker/DatePickerWheel.js +156 -0
- package/dist/components/Dialog/Dialog.cjs +1 -1
- package/dist/components/Dialog/Dialog.interface.d.cts +5 -0
- package/dist/components/Dialog/Dialog.interface.d.ts +5 -0
- package/dist/components/Dialog/Dialog.js +57 -49
- package/dist/components/Dialog/Dialog.variant.cjs +1 -1
- package/dist/components/Dialog/Dialog.variant.js +1 -1
- package/dist/components/Dialog/DialogDragHandle.cjs +1 -0
- package/dist/components/Dialog/DialogDragHandle.d.cts +11 -0
- package/dist/components/Dialog/DialogDragHandle.d.ts +11 -0
- package/dist/components/Dialog/DialogDragHandle.js +55 -0
- package/dist/components/Input/Input.cjs +1 -1
- package/dist/components/Input/Input.js +38 -37
- package/dist/components/Input/Input.variant.cjs +1 -1
- package/dist/components/Input/Input.variant.d.cts +1 -3
- package/dist/components/Input/Input.variant.d.ts +1 -3
- package/dist/components/Input/Input.variant.js +9 -8
- package/dist/components/Pagination/Pagination.cjs +1 -1
- package/dist/components/Pagination/Pagination.js +90 -73
- package/dist/components/Pagination/Pagination.variant.cjs +1 -1
- package/dist/components/Pagination/Pagination.variant.d.cts +3 -1
- package/dist/components/Pagination/Pagination.variant.d.ts +3 -1
- package/dist/components/Pagination/Pagination.variant.js +12 -6
- package/dist/components/RadioGroup/RadioGroup.cjs +1 -1
- package/dist/components/RadioGroup/RadioGroup.js +44 -41
- package/dist/components/RadioGroup/RadioGroup.variant.cjs +1 -1
- package/dist/components/RadioGroup/RadioGroup.variant.d.cts +3 -2
- package/dist/components/RadioGroup/RadioGroup.variant.d.ts +3 -2
- package/dist/components/RadioGroup/RadioGroup.variant.js +11 -21
- package/dist/components/Select/Select.cjs +1 -1
- package/dist/components/Select/Select.d.cts +1 -3
- package/dist/components/Select/Select.d.ts +1 -3
- package/dist/components/Select/Select.interface.d.cts +0 -1
- package/dist/components/Select/Select.interface.d.ts +0 -1
- package/dist/components/Select/Select.js +620 -401
- package/dist/components/Select/Select.variant.cjs +1 -1
- package/dist/components/Select/Select.variant.d.cts +5 -5
- package/dist/components/Select/Select.variant.d.ts +5 -5
- package/dist/components/Select/Select.variant.js +10 -12
- package/dist/components/Sheet/Sheet.variant.cjs +1 -1
- package/dist/components/Sheet/Sheet.variant.js +6 -6
- package/dist/components/Switch/Switch.cjs +1 -1
- package/dist/components/Switch/Switch.interface.d.cts +12 -3
- package/dist/components/Switch/Switch.interface.d.ts +12 -3
- package/dist/components/Switch/Switch.js +57 -37
- package/dist/components/Switch/Switch.variant.cjs +1 -1
- package/dist/components/Switch/Switch.variant.d.cts +9 -5
- package/dist/components/Switch/Switch.variant.d.ts +9 -5
- package/dist/components/Switch/Switch.variant.js +22 -15
- package/dist/components/Table/Table.cjs +1 -1
- package/dist/components/Table/Table.interface.d.cts +9 -0
- package/dist/components/Table/Table.interface.d.ts +9 -0
- package/dist/components/Table/Table.js +462 -271
- package/dist/components/Table/TableSkeletonRows.cjs +1 -1
- package/dist/components/Table/TableSkeletonRows.js +26 -21
- package/dist/components/Table/TableSortToggle.cjs +1 -1
- package/dist/components/Table/TableSortToggle.d.cts +1 -1
- package/dist/components/Table/TableSortToggle.d.ts +1 -1
- package/dist/components/Table/TableSortToggle.js +23 -22
- package/dist/components/Table/hooks/useTableCardLabels.cjs +1 -0
- package/dist/components/Table/hooks/useTableCardLabels.d.cts +9 -0
- package/dist/components/Table/hooks/useTableCardLabels.d.ts +9 -0
- package/dist/components/Table/hooks/useTableCardLabels.js +34 -0
- package/dist/components/Table/hooks/useTableSort.cjs +1 -1
- package/dist/components/Table/hooks/useTableSort.d.cts +2 -0
- package/dist/components/Table/hooks/useTableSort.d.ts +2 -0
- package/dist/components/Table/hooks/useTableSort.js +8 -1
- package/dist/components/Tabs/Tabs.cjs +1 -1
- package/dist/components/Tabs/Tabs.js +90 -63
- package/dist/components/Tabs/Tabs.variant.cjs +1 -1
- package/dist/components/Tabs/Tabs.variant.d.cts +2 -2
- package/dist/components/Tabs/Tabs.variant.d.ts +2 -2
- package/dist/components/Tabs/Tabs.variant.js +52 -29
- package/dist/components/Textarea/Textarea.cjs +1 -1
- package/dist/components/Textarea/Textarea.js +19 -18
- package/dist/components/Textarea/Textarea.variant.cjs +1 -1
- package/dist/components/Textarea/Textarea.variant.js +5 -5
- package/dist/components/TimePicker/TimePicker.cjs +1 -1
- package/dist/components/TimePicker/TimePicker.interface.d.cts +0 -1
- package/dist/components/TimePicker/TimePicker.interface.d.ts +0 -1
- package/dist/components/TimePicker/TimePicker.js +121 -83
- package/dist/components/TimePicker/TimePicker.variant.cjs +1 -1
- package/dist/components/TimePicker/TimePicker.variant.d.cts +1 -3
- package/dist/components/TimePicker/TimePicker.variant.d.ts +1 -3
- package/dist/components/TimePicker/TimePicker.variant.js +9 -11
- package/dist/components/TimePicker/TimePickerPanel.cjs +1 -1
- package/dist/components/TimePicker/TimePickerPanel.js +3 -4
- package/dist/components/TimePicker/TimePickerWheel.cjs +1 -0
- package/dist/components/TimePicker/TimePickerWheel.d.cts +27 -0
- package/dist/components/TimePicker/TimePickerWheel.d.ts +27 -0
- package/dist/components/TimePicker/TimePickerWheel.js +205 -0
- package/dist/components/Toast/Toast.cjs +1 -1
- package/dist/components/Toast/Toast.d.cts +1 -1
- package/dist/components/Toast/Toast.d.ts +1 -1
- package/dist/components/Toast/Toast.js +56 -34
- package/dist/components/Toast/Toast.variant.cjs +1 -1
- package/dist/components/Toast/Toast.variant.d.cts +1 -1
- package/dist/components/Toast/Toast.variant.d.ts +1 -1
- package/dist/components/Toast/Toast.variant.js +1 -1
- package/dist/components/Toast/ToastHost.cjs +1 -1
- package/dist/components/Toast/ToastHost.js +42 -41
- package/dist/components/Toast/function/toastHaptics.cjs +1 -0
- package/dist/components/Toast/function/toastHaptics.d.cts +11 -0
- package/dist/components/Toast/function/toastHaptics.d.ts +11 -0
- package/dist/components/Toast/function/toastHaptics.js +6 -0
- package/dist/components/Uploader/Uploader.cjs +2 -2
- package/dist/components/Uploader/Uploader.js +328 -158
- package/dist/components/Uploader/Uploader.variant.cjs +1 -1
- package/dist/components/Uploader/Uploader.variant.d.cts +1 -3
- package/dist/components/Uploader/Uploader.variant.d.ts +1 -3
- package/dist/components/Uploader/Uploader.variant.js +2 -5
- package/dist/components/shared/ActionSheet.cjs +1 -0
- package/dist/components/shared/ActionSheet.d.cts +26 -0
- package/dist/components/shared/ActionSheet.d.ts +26 -0
- package/dist/components/shared/ActionSheet.js +51 -0
- package/dist/components/shared/FieldClearButton.cjs +1 -1
- package/dist/components/shared/FieldClearButton.d.cts +2 -1
- package/dist/components/shared/FieldClearButton.d.ts +2 -1
- package/dist/components/shared/FieldClearButton.js +11 -10
- package/dist/components/shared/FieldLabel.cjs +1 -1
- package/dist/components/shared/FieldLabel.js +6 -6
- package/dist/components/shared/IconActionButton.cjs +1 -1
- package/dist/components/shared/IconActionButton.d.cts +6 -1
- package/dist/components/shared/IconActionButton.d.ts +6 -1
- package/dist/components/shared/IconActionButton.js +9 -11
- package/dist/components/shared/WheelColumn.cjs +1 -0
- package/dist/components/shared/WheelColumn.d.cts +29 -0
- package/dist/components/shared/WheelColumn.d.ts +29 -0
- package/dist/components/shared/WheelColumn.js +116 -0
- package/dist/components/shared/haptics.cjs +1 -0
- package/dist/components/shared/haptics.d.cts +6 -0
- package/dist/components/shared/haptics.d.ts +6 -0
- package/dist/components/shared/haptics.js +8 -0
- package/dist/components/shared/responsiveScale.cjs +1 -1
- package/dist/components/shared/responsiveScale.d.cts +7 -1
- package/dist/components/shared/responsiveScale.d.ts +7 -1
- package/dist/components/shared/responsiveScale.js +2 -6
- package/dist/components/shared/useStickyToolbar.cjs +1 -0
- package/dist/components/shared/useStickyToolbar.d.cts +17 -0
- package/dist/components/shared/useStickyToolbar.d.ts +17 -0
- package/dist/components/shared/useStickyToolbar.js +39 -0
- package/dist/components/shared/useWheelSize.cjs +1 -0
- package/dist/components/shared/useWheelSize.d.cts +10 -0
- package/dist/components/shared/useWheelSize.d.ts +10 -0
- package/dist/components/shared/useWheelSize.js +14 -0
- package/dist/components/shared/viewport.cjs +1 -0
- package/dist/components/shared/viewport.d.cts +17 -0
- package/dist/components/shared/viewport.d.ts +17 -0
- package/dist/components/shared/viewport.js +32 -0
- package/dist/config/messages.cjs +1 -1
- package/dist/config/messages.d.cts +14 -0
- package/dist/config/messages.d.ts +14 -0
- package/dist/config/messages.js +26 -8
- package/dist/index.cjs +1 -1
- package/dist/index.css +1 -1
- package/dist/index.js +16 -16
- package/package.json +98 -97
|
@@ -1 +1 @@
|
|
|
1
|
-
require(`../../_virtual/_rolldown/runtime.cjs`);const e=require(`../../config/messages.cjs`),t=require(`../../services/convertToEnglishDigits/convertToEnglishDigits.cjs`),n=require(`../../services/localizeDigits/localizeDigits.cjs`);let r=require(`react-day-picker`),i=require(`react-day-picker/locale`),a=require(`react-day-picker/persian`);var o=new r.DateLib({locale:i.enUS,numerals:`latn`}),
|
|
1
|
+
require(`../../_virtual/_rolldown/runtime.cjs`);const e=require(`../../config/messages.cjs`),t=require(`../../services/convertToEnglishDigits/convertToEnglishDigits.cjs`),n=require(`../../services/localizeDigits/localizeDigits.cjs`);let r=require(`react-day-picker`),i=require(`react-day-picker/locale`),a=require(`react-day-picker/persian`);var o=r.DateLib.prototype;if(!o.__zuiDigitMapCached){let e=o.getDigitMap,t=new Map;o.getDigitMap=function(){let n=this.options.numerals??`latn`,r=t.get(n);return r||(r=e.call(this),t.set(n,r)),r},o.__zuiDigitMapCached=!0}var s=new r.DateLib({locale:i.enUS,numerals:`latn`}),c=(0,a.getDateLib)({numerals:`arabext`}),l=(0,a.getDateLib)({numerals:`latn`});function u(e,t){return e===`miladi`?s:t===`persian`?c:l}function d(e,t,r){return t===`shamsi`?n.localizeDigits(e,r):e}function f(e,t){let n=Array.isArray(e)?e[0]:e,r=n?.includes(`-u-`)?n.split(`-u-`)[0]:n;try{return new Intl.DateTimeFormat(e,t)}catch{try{return new Intl.DateTimeFormat(r??`en-US`,t)}catch{return new Intl.DateTimeFormat(`en-US`,t)}}}var p=[`shamsi`,`miladi`],m={shamsi:{dateLib:c,dateFormatter:f(`fa-IR-u-ca-persian`,{year:`numeric`,month:`long`,day:`2-digit`}),monthFormatter:f(`fa-IR-u-ca-persian`,{month:`long`}),yearFormatter:f(`fa-IR-u-ca-persian`,{year:`numeric`})},miladi:{dateLib:s,dateFormatter:f(`en-US-u-ca-gregory`,{year:`numeric`,month:`long`,day:`2-digit`}),monthFormatter:f(`en-US-u-ca-gregory`,{month:`long`}),yearFormatter:f(`en-US-u-ca-gregory`,{year:`numeric`})}},h={shamsi:f(`en-US-u-ca-persian-nu-latn`,{year:`numeric`,month:`2-digit`,day:`2-digit`}),miladi:f(`en-US-u-ca-gregory-nu-latn`,{year:`numeric`,month:`2-digit`,day:`2-digit`})};function g(e){return!!e&&typeof e==`object`&&!(e instanceof Date)}function _(e,t,n){return e?n?.from??n?.to:t}function v(e,t,n,r){let i=r.startOfMonth(e);return t&&r.isBefore(i,t)?t:n&&r.isAfter(i,n)?n:i}function y(e){let t=p.indexOf(e);return p[t===-1?0:(t+1)%p.length]}var b=new Map;function x(e,t){if(e===`miladi`||t===`fa-IR`)return m[e];let n=b.get(t);if(n)return n;let r=`${t}-u-ca-persian`,i={dateLib:c,dateFormatter:f(r,{year:`numeric`,month:`long`,day:`2-digit`}),monthFormatter:f(r,{month:`long`}),yearFormatter:f(r,{year:`numeric`})};return b.set(t,i),i}function S(e,t,n=`persian`,r=`fa-IR`){return d(x(t,r).dateFormatter.format(e),t,n)}function C(e,t,n,r=`persian`,i=`fa-IR`){if(!e?.from)return null;let a=S(e.from,t,r,i);return e.to?`${a} ${n} ${S(e.to,t,r,i)}`:`${a} ${n} ...`}function w(e,t){let n=h[t].formatToParts(e),r=Number(n.find(e=>e.type===`year`)?.value),i=Number(n.find(e=>e.type===`month`)?.value),a=Number(n.find(e=>e.type===`day`)?.value);if(Number.isFinite(r)&&Number.isFinite(i)&&Number.isFinite(a))return{year:r,month:i,day:a};if(t===`miladi`)return{year:e.getFullYear(),month:e.getMonth()+1,day:e.getDate()};let o=h.shamsi.format(e).match(/\d+/g)??[];return{year:Number(o[2]??0),month:Number(o[0]??0),day:Number(o[1]??0)}}function T(e,t,n,r){if(!Number.isInteger(e)||!Number.isInteger(t)||!Number.isInteger(n)||t<1||t>12||n<1||n>31)return;let i=r??(e<1700?`shamsi`:`miladi`),a=m[i].dateLib.newDate(e,t-1,n),o=w(a,i);if(!(o.year!==e||o.month!==t||o.day!==n))return a}function E(e){return e==null?``:e instanceof Date?Number.isNaN(e.getTime())?``:`t:${e.getTime()}`:typeof e==`string`?e.trim().length>0?`s:${e.trim()}`:``:typeof e==`object`?`o:${e.year}/${e.month}/${e.day}`:``}function D(e,n){if(e===``)return;let r=e.slice(2);if(e.startsWith(`t:`))return new Date(Number(r));let i=t.convertToEnglishDigits({value:r}),a=i.match(/^(-?\d+)[/-](-?\d+)[/-](-?\d+)$/);if(a)return T(Number(a[1]),Number(a[2]),Number(a[3]),n);if(e.startsWith(`s:`)){let e=new Date(i);return Number.isNaN(e.getTime())?void 0:e}}function O(e,t){if(e===void 0)return null;if(!t)return E(e);let n=e??{};return JSON.stringify([E(n.from),E(n.to)])}function k(e,t,n){if(!t)return D(e,n);let[r,i]=JSON.parse(e),a=D(r,n),o=D(i,n);return a||o?{from:a,to:o}:void 0}function A(e,n){return t.convertToEnglishDigits({value:e}).replace(/\D/g,``).slice(0,n)}function j(e,t){return e.padEnd(t,`-`)}function M(e,t){let r=e.slice(0,4),i=e.slice(4,6),a=e.slice(6,8);return n.localizeDigits(`${j(r,4)}/${j(i,2)}/${j(a,2)}`,t)}function N(e){return`${String(e.year).padStart(4,`0`)}${String(e.month).padStart(2,`0`)}${String(e.day).padStart(2,`0`)}`}function P(e,t){let n=Number(t);return e.length===4&&n>1||e.length===6&&n>3?e+`0`+t:e+t}var F=12,I=31;function L(e){let t=e.slice(4,6),n=e.slice(6);return!(t.length===2&&(Number(t)<1||Number(t)>F)||n.length===2&&(Number(n)<1||Number(n)>I))}function R(e){let t=e;for(;t.length>0&&!L(t);)t=t.slice(0,-1);return t}function z(e){return e.length!==7&&e.length!==5?e:e.slice(0,-1)+`0`+e.slice(-1)}function B(e,t,n){let r=[];return e&&r.push({before:e}),t&&r.push({after:t}),n!==void 0&&r.push(...Array.isArray(n)?n:[n]),r}function V(e,t,n,i){if(e.length!==8)return null;let a=Number(e.slice(0,4)),o=Number(e.slice(4,6)),s=Number(e.slice(6,8));if(o<1||o>12||s<1||s>31)return null;let c=t.newDate(a,o-1,s),l=w(c,n);return l.day!==s||l.month!==o||l.year!==a||i.length>0&&(0,r.dateMatchModifiers)(c,i,t)?null:c}function H(e,t,n){return!e&&!t?!0:!e||!t?!1:n.isSameDay(e,t)}function U(e,n,r,i,a,o){if(e.metaKey||e.ctrlKey||e.altKey||e.key===`Tab`)return;if(e.key===`Enter`){e.preventDefault(),a(n);return}if(e.key===`Backspace`||e.key===`Delete`){e.preventDefault();let t=e.currentTarget;r(t.selectionStart!==null&&t.selectionEnd!==null&&t.selectionEnd>t.selectionStart?``:n.slice(0,-1)),i(!1);return}if(e.key===`/`){e.preventDefault();let t=z(n);t!==n&&(r(t),i(!1));return}let s=t.convertToEnglishDigits({value:e.key});if(/^\d$/.test(s)){if(e.preventDefault(),n.length>=8)return;let t=P(n,s);if(!L(t))return;r(t),i(!1),t.length===8&&(a(t),o?.());return}e.preventDefault()}function W(e,t,n,r,i){let a=A(e.target.value,8),o=a.length===8?a:R(a);t(o),n(!1),o.length===8&&(r(o),i?.())}function G(e,t,n){let r=w(e,t);if(n===`string`){let e=String(r.month).padStart(2,`0`),t=String(r.day).padStart(2,`0`);return`${r.year}/${e}/${t}`}return r}function K(e,t,n){if(e)return{from:e.from?G(e.from,t,n):void 0,to:e.to?G(e.to,t,n):void 0}}function q(e,t,n,r){if(t===`range`)return g(e)?K(e,n,r):void 0;if(e instanceof Date)return G(e,n,r)}function J(e){return S(e,`shamsi`)}function Y(t){return C(t,`shamsi`,e.faMessages.datePicker.rangeTo)}exports.buildManualInputDigitsFromParts=N,exports.buildManualInputMaskedValue=M,exports.clampDisplayMonthInBounds=v,exports.formatCalendarDate=S,exports.formatCalendarDateRangeLabel=C,exports.formatDatePickerOnChangeValue=q,exports.formatPersianDate=J,exports.formatPersianDateRangeLabel=Y,exports.isDateRangeValue=g,exports.isSameOptionalDay=H,exports.localizeCalendarText=d,exports.parseDatePickerValueKey=k,exports.parseManualInputDigits=V,exports.processManualDigitsChange=W,exports.processManualDigitsKeyDown=U,exports.resolveCalendarConfig=x,exports.resolveCalendarDateLib=u,exports.resolveDisabledMatchers=B,exports.resolveFormattedDateParts=w,exports.resolveNextCalendarSystem=y,exports.resolvePrimarySelectedDate=_,exports.toDatePickerValueKey=O;
|
|
@@ -5,17 +5,25 @@ import { DateLib as r, dateMatchModifiers as i } from "react-day-picker";
|
|
|
5
5
|
import { enUS as a } from "react-day-picker/locale";
|
|
6
6
|
import { getDateLib as o } from "react-day-picker/persian";
|
|
7
7
|
//#region src/components/DatePicker/DatePicker.utils.ts
|
|
8
|
-
var s =
|
|
8
|
+
var s = r.prototype;
|
|
9
|
+
if (!s.__zuiDigitMapCached) {
|
|
10
|
+
let e = s.getDigitMap, t = /* @__PURE__ */ new Map();
|
|
11
|
+
s.getDigitMap = function() {
|
|
12
|
+
let n = this.options.numerals ?? "latn", r = t.get(n);
|
|
13
|
+
return r || (r = e.call(this), t.set(n, r)), r;
|
|
14
|
+
}, s.__zuiDigitMapCached = !0;
|
|
15
|
+
}
|
|
16
|
+
var c = new r({
|
|
9
17
|
locale: a,
|
|
10
18
|
numerals: "latn"
|
|
11
|
-
}),
|
|
12
|
-
function
|
|
13
|
-
return e === "miladi" ?
|
|
19
|
+
}), l = o({ numerals: "arabext" }), u = o({ numerals: "latn" });
|
|
20
|
+
function d(e, t) {
|
|
21
|
+
return e === "miladi" ? c : t === "persian" ? l : u;
|
|
14
22
|
}
|
|
15
|
-
function
|
|
23
|
+
function f(e, t, r) {
|
|
16
24
|
return t === "shamsi" ? n(e, r) : e;
|
|
17
25
|
}
|
|
18
|
-
function
|
|
26
|
+
function p(e, t) {
|
|
19
27
|
let n = Array.isArray(e) ? e[0] : e, r = n?.includes("-u-") ? n.split("-u-")[0] : n;
|
|
20
28
|
try {
|
|
21
29
|
return new Intl.DateTimeFormat(e, t);
|
|
@@ -27,80 +35,80 @@ function f(e, t) {
|
|
|
27
35
|
}
|
|
28
36
|
}
|
|
29
37
|
}
|
|
30
|
-
var
|
|
38
|
+
var m = ["shamsi", "miladi"], h = {
|
|
31
39
|
shamsi: {
|
|
32
|
-
dateLib:
|
|
33
|
-
dateFormatter:
|
|
40
|
+
dateLib: l,
|
|
41
|
+
dateFormatter: p("fa-IR-u-ca-persian", {
|
|
34
42
|
year: "numeric",
|
|
35
43
|
month: "long",
|
|
36
44
|
day: "2-digit"
|
|
37
45
|
}),
|
|
38
|
-
monthFormatter:
|
|
39
|
-
yearFormatter:
|
|
46
|
+
monthFormatter: p("fa-IR-u-ca-persian", { month: "long" }),
|
|
47
|
+
yearFormatter: p("fa-IR-u-ca-persian", { year: "numeric" })
|
|
40
48
|
},
|
|
41
49
|
miladi: {
|
|
42
|
-
dateLib:
|
|
43
|
-
dateFormatter:
|
|
50
|
+
dateLib: c,
|
|
51
|
+
dateFormatter: p("en-US-u-ca-gregory", {
|
|
44
52
|
year: "numeric",
|
|
45
53
|
month: "long",
|
|
46
54
|
day: "2-digit"
|
|
47
55
|
}),
|
|
48
|
-
monthFormatter:
|
|
49
|
-
yearFormatter:
|
|
56
|
+
monthFormatter: p("en-US-u-ca-gregory", { month: "long" }),
|
|
57
|
+
yearFormatter: p("en-US-u-ca-gregory", { year: "numeric" })
|
|
50
58
|
}
|
|
51
|
-
},
|
|
52
|
-
shamsi:
|
|
59
|
+
}, g = {
|
|
60
|
+
shamsi: p("en-US-u-ca-persian-nu-latn", {
|
|
53
61
|
year: "numeric",
|
|
54
62
|
month: "2-digit",
|
|
55
63
|
day: "2-digit"
|
|
56
64
|
}),
|
|
57
|
-
miladi:
|
|
65
|
+
miladi: p("en-US-u-ca-gregory-nu-latn", {
|
|
58
66
|
year: "numeric",
|
|
59
67
|
month: "2-digit",
|
|
60
68
|
day: "2-digit"
|
|
61
69
|
})
|
|
62
70
|
};
|
|
63
|
-
function
|
|
71
|
+
function _(e) {
|
|
64
72
|
return !!e && typeof e == "object" && !(e instanceof Date);
|
|
65
73
|
}
|
|
66
|
-
function
|
|
74
|
+
function v(e, t, n) {
|
|
67
75
|
return e ? n?.from ?? n?.to : t;
|
|
68
76
|
}
|
|
69
|
-
function
|
|
77
|
+
function y(e, t, n, r) {
|
|
70
78
|
let i = r.startOfMonth(e);
|
|
71
79
|
return t && r.isBefore(i, t) ? t : n && r.isAfter(i, n) ? n : i;
|
|
72
80
|
}
|
|
73
|
-
function
|
|
74
|
-
let t =
|
|
75
|
-
return
|
|
81
|
+
function b(e) {
|
|
82
|
+
let t = m.indexOf(e);
|
|
83
|
+
return m[t === -1 ? 0 : (t + 1) % m.length];
|
|
76
84
|
}
|
|
77
|
-
var
|
|
78
|
-
function
|
|
79
|
-
if (e === "miladi" || t === "fa-IR") return
|
|
80
|
-
let n =
|
|
85
|
+
var x = /* @__PURE__ */ new Map();
|
|
86
|
+
function S(e, t) {
|
|
87
|
+
if (e === "miladi" || t === "fa-IR") return h[e];
|
|
88
|
+
let n = x.get(t);
|
|
81
89
|
if (n) return n;
|
|
82
90
|
let r = `${t}-u-ca-persian`, i = {
|
|
83
|
-
dateLib:
|
|
84
|
-
dateFormatter:
|
|
91
|
+
dateLib: l,
|
|
92
|
+
dateFormatter: p(r, {
|
|
85
93
|
year: "numeric",
|
|
86
94
|
month: "long",
|
|
87
95
|
day: "2-digit"
|
|
88
96
|
}),
|
|
89
|
-
monthFormatter:
|
|
90
|
-
yearFormatter:
|
|
97
|
+
monthFormatter: p(r, { month: "long" }),
|
|
98
|
+
yearFormatter: p(r, { year: "numeric" })
|
|
91
99
|
};
|
|
92
|
-
return
|
|
100
|
+
return x.set(t, i), i;
|
|
93
101
|
}
|
|
94
|
-
function
|
|
95
|
-
return
|
|
102
|
+
function C(e, t, n = "persian", r = "fa-IR") {
|
|
103
|
+
return f(S(t, r).dateFormatter.format(e), t, n);
|
|
96
104
|
}
|
|
97
|
-
function
|
|
105
|
+
function w(e, t, n, r = "persian", i = "fa-IR") {
|
|
98
106
|
if (!e?.from) return null;
|
|
99
|
-
let a =
|
|
100
|
-
return e.to ? `${a} ${n} ${
|
|
107
|
+
let a = C(e.from, t, r, i);
|
|
108
|
+
return e.to ? `${a} ${n} ${C(e.to, t, r, i)}` : `${a} ${n} ...`;
|
|
101
109
|
}
|
|
102
|
-
function
|
|
103
|
-
let n =
|
|
110
|
+
function T(e, t) {
|
|
111
|
+
let n = g[t].formatToParts(e), r = Number(n.find((e) => e.type === "year")?.value), i = Number(n.find((e) => e.type === "month")?.value), a = Number(n.find((e) => e.type === "day")?.value);
|
|
104
112
|
if (Number.isFinite(r) && Number.isFinite(i) && Number.isFinite(a)) return {
|
|
105
113
|
year: r,
|
|
106
114
|
month: i,
|
|
@@ -111,81 +119,91 @@ function w(e, t) {
|
|
|
111
119
|
month: e.getMonth() + 1,
|
|
112
120
|
day: e.getDate()
|
|
113
121
|
};
|
|
114
|
-
let o =
|
|
122
|
+
let o = g.shamsi.format(e).match(/\d+/g) ?? [];
|
|
115
123
|
return {
|
|
116
124
|
year: Number(o[2] ?? 0),
|
|
117
125
|
month: Number(o[0] ?? 0),
|
|
118
126
|
day: Number(o[1] ?? 0)
|
|
119
127
|
};
|
|
120
128
|
}
|
|
121
|
-
function
|
|
129
|
+
function E(e, t, n, r) {
|
|
122
130
|
if (!Number.isInteger(e) || !Number.isInteger(t) || !Number.isInteger(n) || t < 1 || t > 12 || n < 1 || n > 31) return;
|
|
123
|
-
let i = r ?? (e < 1700 ? "shamsi" : "miladi"), a =
|
|
131
|
+
let i = r ?? (e < 1700 ? "shamsi" : "miladi"), a = h[i].dateLib.newDate(e, t - 1, n), o = T(a, i);
|
|
124
132
|
if (!(o.year !== e || o.month !== t || o.day !== n)) return a;
|
|
125
133
|
}
|
|
126
|
-
function
|
|
134
|
+
function D(e) {
|
|
127
135
|
return e == null ? "" : e instanceof Date ? Number.isNaN(e.getTime()) ? "" : `t:${e.getTime()}` : typeof e == "string" ? e.trim().length > 0 ? `s:${e.trim()}` : "" : typeof e == "object" ? `o:${e.year}/${e.month}/${e.day}` : "";
|
|
128
136
|
}
|
|
129
|
-
function
|
|
137
|
+
function O(e, n) {
|
|
130
138
|
if (e === "") return;
|
|
131
139
|
let r = e.slice(2);
|
|
132
140
|
if (e.startsWith("t:")) return new Date(Number(r));
|
|
133
141
|
let i = t({ value: r }), a = i.match(/^(-?\d+)[/-](-?\d+)[/-](-?\d+)$/);
|
|
134
|
-
if (a) return
|
|
142
|
+
if (a) return E(Number(a[1]), Number(a[2]), Number(a[3]), n);
|
|
135
143
|
if (e.startsWith("s:")) {
|
|
136
144
|
let e = new Date(i);
|
|
137
145
|
return Number.isNaN(e.getTime()) ? void 0 : e;
|
|
138
146
|
}
|
|
139
147
|
}
|
|
140
|
-
function
|
|
148
|
+
function k(e, t) {
|
|
141
149
|
if (e === void 0) return null;
|
|
142
|
-
if (!t) return
|
|
150
|
+
if (!t) return D(e);
|
|
143
151
|
let n = e ?? {};
|
|
144
|
-
return JSON.stringify([
|
|
152
|
+
return JSON.stringify([D(n.from), D(n.to)]);
|
|
145
153
|
}
|
|
146
|
-
function
|
|
147
|
-
if (!t) return
|
|
148
|
-
let [r, i] = JSON.parse(e), a =
|
|
154
|
+
function A(e, t, n) {
|
|
155
|
+
if (!t) return O(e, n);
|
|
156
|
+
let [r, i] = JSON.parse(e), a = O(r, n), o = O(i, n);
|
|
149
157
|
return a || o ? {
|
|
150
158
|
from: a,
|
|
151
159
|
to: o
|
|
152
160
|
} : void 0;
|
|
153
161
|
}
|
|
154
|
-
function
|
|
162
|
+
function j(e, n) {
|
|
155
163
|
return t({ value: e }).replace(/\D/g, "").slice(0, n);
|
|
156
164
|
}
|
|
157
|
-
function
|
|
165
|
+
function M(e, t) {
|
|
158
166
|
return e.padEnd(t, "-");
|
|
159
167
|
}
|
|
160
|
-
function
|
|
168
|
+
function N(e, t) {
|
|
161
169
|
let r = e.slice(0, 4), i = e.slice(4, 6), a = e.slice(6, 8);
|
|
162
|
-
return n(`${
|
|
170
|
+
return n(`${M(r, 4)}/${M(i, 2)}/${M(a, 2)}`, t);
|
|
163
171
|
}
|
|
164
|
-
function
|
|
172
|
+
function P(e) {
|
|
165
173
|
return `${String(e.year).padStart(4, "0")}${String(e.month).padStart(2, "0")}${String(e.day).padStart(2, "0")}`;
|
|
166
174
|
}
|
|
167
|
-
function
|
|
175
|
+
function F(e, t) {
|
|
168
176
|
let n = Number(t);
|
|
169
177
|
return e.length === 4 && n > 1 || e.length === 6 && n > 3 ? e + "0" + t : e + t;
|
|
170
178
|
}
|
|
171
|
-
|
|
179
|
+
var I = 12, L = 31;
|
|
180
|
+
function R(e) {
|
|
181
|
+
let t = e.slice(4, 6), n = e.slice(6);
|
|
182
|
+
return !(t.length === 2 && (Number(t) < 1 || Number(t) > I) || n.length === 2 && (Number(n) < 1 || Number(n) > L));
|
|
183
|
+
}
|
|
184
|
+
function z(e) {
|
|
185
|
+
let t = e;
|
|
186
|
+
for (; t.length > 0 && !R(t);) t = t.slice(0, -1);
|
|
187
|
+
return t;
|
|
188
|
+
}
|
|
189
|
+
function B(e) {
|
|
172
190
|
return e.length !== 7 && e.length !== 5 ? e : e.slice(0, -1) + "0" + e.slice(-1);
|
|
173
191
|
}
|
|
174
|
-
function
|
|
192
|
+
function V(e, t, n) {
|
|
175
193
|
let r = [];
|
|
176
194
|
return e && r.push({ before: e }), t && r.push({ after: t }), n !== void 0 && r.push(...Array.isArray(n) ? n : [n]), r;
|
|
177
195
|
}
|
|
178
|
-
function
|
|
196
|
+
function H(e, t, n, r) {
|
|
179
197
|
if (e.length !== 8) return null;
|
|
180
198
|
let a = Number(e.slice(0, 4)), o = Number(e.slice(4, 6)), s = Number(e.slice(6, 8));
|
|
181
199
|
if (o < 1 || o > 12 || s < 1 || s > 31) return null;
|
|
182
|
-
let c = t.newDate(a, o - 1, s), l =
|
|
200
|
+
let c = t.newDate(a, o - 1, s), l = T(c, n);
|
|
183
201
|
return l.day !== s || l.month !== o || l.year !== a || r.length > 0 && i(c, r, t) ? null : c;
|
|
184
202
|
}
|
|
185
|
-
function
|
|
203
|
+
function U(e, t, n) {
|
|
186
204
|
return !e && !t ? !0 : !e || !t ? !1 : n.isSameDay(e, t);
|
|
187
205
|
}
|
|
188
|
-
function
|
|
206
|
+
function W(e, n, r, i, a, o) {
|
|
189
207
|
if (e.metaKey || e.ctrlKey || e.altKey || e.key === "Tab") return;
|
|
190
208
|
if (e.key === "Enter") {
|
|
191
209
|
e.preventDefault(), a(n);
|
|
@@ -199,46 +217,47 @@ function z(e, n, r, i, a, o) {
|
|
|
199
217
|
}
|
|
200
218
|
if (e.key === "/") {
|
|
201
219
|
e.preventDefault();
|
|
202
|
-
let t =
|
|
220
|
+
let t = B(n);
|
|
203
221
|
t !== n && (r(t), i(!1));
|
|
204
222
|
return;
|
|
205
223
|
}
|
|
206
224
|
let s = t({ value: e.key });
|
|
207
225
|
if (/^\d$/.test(s)) {
|
|
208
226
|
if (e.preventDefault(), n.length >= 8) return;
|
|
209
|
-
let t =
|
|
227
|
+
let t = F(n, s);
|
|
228
|
+
if (!R(t)) return;
|
|
210
229
|
r(t), i(!1), t.length === 8 && (a(t), o?.());
|
|
211
230
|
return;
|
|
212
231
|
}
|
|
213
232
|
e.preventDefault();
|
|
214
233
|
}
|
|
215
|
-
function
|
|
216
|
-
let a =
|
|
217
|
-
t(
|
|
234
|
+
function G(e, t, n, r, i) {
|
|
235
|
+
let a = j(e.target.value, 8), o = a.length === 8 ? a : z(a);
|
|
236
|
+
t(o), n(!1), o.length === 8 && (r(o), i?.());
|
|
218
237
|
}
|
|
219
|
-
function
|
|
220
|
-
let r =
|
|
238
|
+
function K(e, t, n) {
|
|
239
|
+
let r = T(e, t);
|
|
221
240
|
if (n === "string") {
|
|
222
241
|
let e = String(r.month).padStart(2, "0"), t = String(r.day).padStart(2, "0");
|
|
223
242
|
return `${r.year}/${e}/${t}`;
|
|
224
243
|
}
|
|
225
244
|
return r;
|
|
226
245
|
}
|
|
227
|
-
function
|
|
246
|
+
function q(e, t, n) {
|
|
228
247
|
if (e) return {
|
|
229
|
-
from: e.from ?
|
|
230
|
-
to: e.to ?
|
|
248
|
+
from: e.from ? K(e.from, t, n) : void 0,
|
|
249
|
+
to: e.to ? K(e.to, t, n) : void 0
|
|
231
250
|
};
|
|
232
251
|
}
|
|
233
|
-
function
|
|
234
|
-
if (t === "range") return
|
|
235
|
-
if (e instanceof Date) return
|
|
252
|
+
function J(e, t, n, r) {
|
|
253
|
+
if (t === "range") return _(e) ? q(e, n, r) : void 0;
|
|
254
|
+
if (e instanceof Date) return K(e, n, r);
|
|
236
255
|
}
|
|
237
|
-
function
|
|
238
|
-
return
|
|
256
|
+
function Y(e) {
|
|
257
|
+
return C(e, "shamsi");
|
|
239
258
|
}
|
|
240
|
-
function
|
|
241
|
-
return
|
|
259
|
+
function X(t) {
|
|
260
|
+
return w(t, "shamsi", e.datePicker.rangeTo);
|
|
242
261
|
}
|
|
243
262
|
//#endregion
|
|
244
|
-
export {
|
|
263
|
+
export { P as buildManualInputDigitsFromParts, N as buildManualInputMaskedValue, y as clampDisplayMonthInBounds, C as formatCalendarDate, w as formatCalendarDateRangeLabel, J as formatDatePickerOnChangeValue, Y as formatPersianDate, X as formatPersianDateRangeLabel, _ as isDateRangeValue, U as isSameOptionalDay, f as localizeCalendarText, A as parseDatePickerValueKey, H as parseManualInputDigits, G as processManualDigitsChange, W as processManualDigitsKeyDown, S as resolveCalendarConfig, d as resolveCalendarDateLib, V as resolveDisabledMatchers, T as resolveFormattedDateParts, b as resolveNextCalendarSystem, v as resolvePrimarySelectedDate, k as toDatePickerValueKey };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
require(`../../_virtual/_rolldown/runtime.cjs`);const e=require(`../shared/responsiveScale.cjs`),t=require(`../shared/fieldStyles.cjs`);let n=require(`class-variance-authority`);var r=(0,n.cva)([`zui:flex zui:w-full zui:cursor-pointer zui:items-center zui:justify-between zui:gap-2 zui-radius-xs zui:border zui:border-[var(--zui-color-border)] zui:bg-transparent ${e.CONTROL_PADDING_X} zui:text-start zui:text-base zui:text-[var(--zui-color-text)] zui:outline-none zui:data-[has-value=true]:border-[var(--zui-theme-action-primary)] zui:disabled:pointer-events-none zui:disabled:cursor-not-allowed zui:disabled:bg-[var(--zui-color-muted-surface)] zui:disabled:opacity-50 zui:md:text-sm`,t.fieldInteractionClassName,t.fieldDefaultBorderWhenEmptyClassName,t.fieldExpandedInteractionClassName].join(` `)
|
|
1
|
+
require(`../../_virtual/_rolldown/runtime.cjs`);const e=require(`../shared/responsiveScale.cjs`),t=require(`../shared/fieldStyles.cjs`);let n=require(`class-variance-authority`);var r=(0,n.cva)([`zui:flex zui:w-full zui:cursor-pointer zui:items-center zui:justify-between zui:gap-2 zui-radius-xs zui:border zui:border-[var(--zui-color-border)] zui:bg-transparent ${e.CONTROL_PADDING_X} zui:text-start zui:text-base zui:text-[var(--zui-color-text)] zui:outline-none zui:data-[has-value=true]:border-[var(--zui-theme-action-primary)] zui:disabled:pointer-events-none zui:disabled:cursor-not-allowed zui:disabled:bg-[var(--zui-color-muted-surface)] zui:disabled:opacity-50 zui:md:text-sm`,t.fieldInteractionClassName,t.fieldDefaultBorderWhenEmptyClassName,t.fieldExpandedInteractionClassName,e.CONTROL_HEIGHT_DEFAULT].join(` `)),i=(0,n.cva)(`zui:z-(--zui-z-popover) zui:w-fit zui:min-w-0 zui:max-w-[calc(100vw-calc(var(--zui-scale,10px)*2.4))] zui:overflow-hidden zui-radius-xs zui:border zui:border-[var(--zui-theme-action-primary)] zui:bg-[var(--zui-color-surface)] zui:p-0 zui:text-[var(--zui-color-text)] zui:shadow-[0_4px_12px_-6px_var(--zui-effect-shadow-ink-35)] zui:outline-none zui:data-[state=closed]:animate-out zui:data-[state=closed]:fade-out-0 zui:data-[state=closed]:zoom-out-95 zui:data-[state=open]:animate-in zui:data-[state=open]:fade-in-0 zui:data-[state=open]:zoom-in-95`),a=(0,n.cva)(`zui:inline-flex ${e.DATEPICKER_NAV_SIZE} ${e.DATEPICKER_TOUCH_NAV} zui:items-center zui:justify-center zui-radius-xs zui:border zui:border-[var(--zui-theme-border-default)] zui:bg-transparent zui:text-[var(--zui-color-text)] zui:outline-none zui:transition-[color,background-color,border-color,box-shadow,transform] zui:duration-200 zui:hover:cursor-pointer zui:hover:scale-110 zui:hover:border-[var(--zui-theme-border-strong)] zui:hover:bg-transparent zui:focus-visible:border-[var(--zui-theme-action-primary)] zui:focus-visible:shadow-[0_0_0_1px_var(--zui-theme-action-primary)] zui:disabled:pointer-events-none zui:disabled:opacity-45`),o=(0,n.cva)(`zui:flex zui:w-full zui:items-center zui:justify-between zui:gap-2 zui:px-1 zui:pb-1 zui:pt-2`),s=(0,n.cva)(`zui:inline-flex zui:items-center zui:gap-3`),c=(0,n.cva)(`zui:inline-flex ${e.DATEPICKER_CONTROL_HEIGHT} ${e.DATEPICKER_TOUCH_HEIGHT} ${e.DATEPICKER_TOUCH_TEXT} zui:mobile:px-3 zui:items-center zui:justify-center zui:gap-2 zui-radius-xs zui:px-1 zui:text-base zui:font-semibold zui:outline-none zui:transition-[color,background-color,box-shadow] zui:duration-200 zui:focus-visible:shadow-[0_0_0_1px_var(--zui-theme-action-primary)]`,{variants:{active:{true:`zui:bg-transparent zui:text-[var(--zui-color-text)]`,false:`zui:bg-transparent zui:text-[var(--zui-color-text)] zui:hover:cursor-pointer zui:hover:text-[var(--zui-color-text)]`}},defaultVariants:{active:!1}}),l=(0,n.cva)(`zui:inline-flex ${e.DATEPICKER_CONTROL_HEIGHT} ${e.DATEPICKER_TOUCH_HEIGHT} ${e.DATEPICKER_TOUCH_TEXT} zui:mobile:px-3 zui:items-center zui:justify-center zui:gap-1.5 zui-radius-xs zui:px-2 zui:text-xs zui:font-semibold zui:text-[var(--zui-color-text)] zui:outline-none zui:transition-[color,background-color,box-shadow] zui:duration-200 zui:hover:cursor-pointer zui:hover:text-[var(--zui-color-text)] zui:focus-visible:shadow-[0_0_0_1px_var(--zui-theme-action-primary)]`),u=(0,n.cva)(`zui:mb-2 zui:text-center zui:text-xs zui:text-[var(--zui-color-text)]`),d=(0,n.cva)(`zui:grid zui:grid-cols-3 zui:gap-2 zui:desktop:grid-cols-4`),f=(0,n.cva)(`zui:grid zui:max-h-64 zui:grid-cols-3 zui:gap-2 zui:overflow-y-auto zui:ps-1 zui:desktop:grid-cols-4`),p=(0,n.cva)(`zui:inline-flex ${e.DATEPICKER_CONTROL_HEIGHT} ${e.DATEPICKER_TOUCH_HEIGHT} ${e.DATEPICKER_TOUCH_TEXT} zui:mobile:px-3 zui:items-center zui:justify-center zui-radius-xs zui:border zui:border-[var(--zui-theme-border-default)] zui:bg-[var(--zui-color-surface)] zui:px-2 zui:text-sm zui:font-medium zui:text-[var(--zui-color-text)] zui:outline-none zui:transition-[color,border-color,box-shadow] zui:duration-200 zui:hover:cursor-pointer zui:hover:border-[var(--zui-theme-border-strong)] zui:focus-visible:border-[var(--zui-theme-action-primary-hover)] zui:focus-visible:shadow-[0_0_0_1px_var(--zui-theme-action-primary)]`,{variants:{active:{true:`zui:border-[var(--zui-theme-action-primary)] zui:bg-[var(--zui-theme-action-primary)] zui:text-[var(--zui-color-surface)]`,false:``}},defaultVariants:{active:!1}}),m=(0,n.cva)(`zui:flex-1 zui:text-center zui:text-sm ${e.DATEPICKER_TOUCH_TEXT} zui:font-semibold zui:text-[var(--zui-color-text)]`),h=(0,n.cva)(`zui:inline-flex ${e.DATEPICKER_DAY_SIZE} ${e.DATEPICKER_TOUCH_DAY} zui:items-center zui:justify-center zui-radius-xs zui:text-base zui:font-medium zui:text-[var(--zui-color-text)] zui:outline-none zui:transition-[color,background-color,box-shadow] zui:duration-200 zui:hover:cursor-pointer zui:hover:bg-[var(--zui-color-muted-surface)] zui:focus-visible:bg-[var(--zui-color-muted-surface)] zui:focus-visible:shadow-[0_0_0_1px_var(--zui-theme-action-primary)] zui:aria-disabled:pointer-events-none zui:aria-disabled:opacity-45`);exports.datePickerCalendarSwitchButtonVariants=l,exports.datePickerDayButtonVariants=h,exports.datePickerHeaderVariants=o,exports.datePickerNavigationButtonVariants=a,exports.datePickerPanelGridVariants=d,exports.datePickerPanelHintVariants=u,exports.datePickerPanelItemButtonVariants=p,exports.datePickerPopoverContentVariants=i,exports.datePickerSwitchButtonVariants=c,exports.datePickerSwitchGroupVariants=s,exports.datePickerTriggerVariants=r,exports.datePickerWeekdayVariants=m,exports.datePickerYearListVariants=f;
|
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
declare const datePickerTriggerVariants: (props?: (
|
|
2
|
-
size?: "sm" | "default" | "lg" | null | undefined;
|
|
3
|
-
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
1
|
+
declare const datePickerTriggerVariants: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
4
2
|
declare const datePickerPopoverContentVariants: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
5
3
|
declare const datePickerNavigationButtonVariants: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
6
4
|
declare const datePickerHeaderVariants: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
declare const datePickerTriggerVariants: (props?: (
|
|
2
|
-
size?: "sm" | "default" | "lg" | null | undefined;
|
|
3
|
-
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
1
|
+
declare const datePickerTriggerVariants: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
4
2
|
declare const datePickerPopoverContentVariants: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
5
3
|
declare const datePickerNavigationButtonVariants: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
6
4
|
declare const datePickerHeaderVariants: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
@@ -1,27 +1,25 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { fieldDefaultBorderWhenEmptyClassName as
|
|
3
|
-
import { cva as
|
|
1
|
+
import { CONTROL_HEIGHT_DEFAULT as e, CONTROL_PADDING_X as t, DATEPICKER_CONTROL_HEIGHT as n, DATEPICKER_DAY_SIZE as r, DATEPICKER_NAV_SIZE as i, DATEPICKER_TOUCH_DAY as a, DATEPICKER_TOUCH_HEIGHT as o, DATEPICKER_TOUCH_NAV as s, DATEPICKER_TOUCH_TEXT as c } from "../shared/responsiveScale.js";
|
|
2
|
+
import { fieldDefaultBorderWhenEmptyClassName as l, fieldExpandedInteractionClassName as u, fieldInteractionClassName as d } from "../shared/fieldStyles.js";
|
|
3
|
+
import { cva as f } from "class-variance-authority";
|
|
4
4
|
//#region src/components/DatePicker/DatePicker.variant.ts
|
|
5
|
-
var
|
|
6
|
-
`zui:flex zui:w-full zui:cursor-pointer zui:items-center zui:justify-between zui:gap-2 zui-radius-xs zui:border zui:border-[var(--zui-color-border)] zui:bg-transparent ${
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
defaultVariants: { size: "default" }
|
|
13
|
-
}), u = c("zui:z-(--zui-z-popover) zui:w-fit zui:min-w-0 zui:max-w-[calc(100vw-calc(var(--zui-scale,10px)*2.4))] zui:overflow-hidden zui-radius-xs zui:border zui:border-[var(--zui-theme-action-primary)] zui:bg-[var(--zui-color-surface)] zui:p-0 zui:text-[var(--zui-color-text)] zui:shadow-[0_4px_12px_-6px_var(--zui-effect-shadow-ink-35)] zui:outline-none zui:data-[state=closed]:animate-out zui:data-[state=closed]:fade-out-0 zui:data-[state=closed]:zoom-out-95 zui:data-[state=open]:animate-in zui:data-[state=open]:fade-in-0 zui:data-[state=open]:zoom-in-95"), d = c(`zui:inline-flex ${r} zui:items-center zui:justify-center zui-radius-xs zui:border zui:border-[var(--zui-theme-border-default)] zui:bg-transparent zui:text-[var(--zui-color-text)] zui:outline-none zui:transition-[color,background-color,border-color,box-shadow,transform] zui:duration-200 zui:hover:cursor-pointer zui:hover:scale-110 zui:hover:border-[var(--zui-theme-border-strong)] zui:hover:bg-transparent zui:focus-visible:border-[var(--zui-theme-action-primary)] zui:focus-visible:shadow-[0_0_0_1px_var(--zui-theme-action-primary)] zui:disabled:pointer-events-none zui:disabled:opacity-45`), f = c("zui:flex zui:w-full zui:items-center zui:justify-between zui:gap-2 zui:px-1 zui:pb-1 zui:pt-2"), p = c("zui:inline-flex zui:items-center zui:gap-3"), m = c(`zui:inline-flex ${t} zui:items-center zui:justify-center zui:gap-2 zui-radius-xs zui:px-1 zui:text-base zui:font-semibold zui:outline-none zui:transition-[color,background-color,box-shadow] zui:duration-200 zui:focus-visible:shadow-[0_0_0_1px_var(--zui-theme-action-primary)]`, {
|
|
5
|
+
var p = f([
|
|
6
|
+
`zui:flex zui:w-full zui:cursor-pointer zui:items-center zui:justify-between zui:gap-2 zui-radius-xs zui:border zui:border-[var(--zui-color-border)] zui:bg-transparent ${t} zui:text-start zui:text-base zui:text-[var(--zui-color-text)] zui:outline-none zui:data-[has-value=true]:border-[var(--zui-theme-action-primary)] zui:disabled:pointer-events-none zui:disabled:cursor-not-allowed zui:disabled:bg-[var(--zui-color-muted-surface)] zui:disabled:opacity-50 zui:md:text-sm`,
|
|
7
|
+
d,
|
|
8
|
+
l,
|
|
9
|
+
u,
|
|
10
|
+
e
|
|
11
|
+
].join(" ")), m = f("zui:z-(--zui-z-popover) zui:w-fit zui:min-w-0 zui:max-w-[calc(100vw-calc(var(--zui-scale,10px)*2.4))] zui:overflow-hidden zui-radius-xs zui:border zui:border-[var(--zui-theme-action-primary)] zui:bg-[var(--zui-color-surface)] zui:p-0 zui:text-[var(--zui-color-text)] zui:shadow-[0_4px_12px_-6px_var(--zui-effect-shadow-ink-35)] zui:outline-none zui:data-[state=closed]:animate-out zui:data-[state=closed]:fade-out-0 zui:data-[state=closed]:zoom-out-95 zui:data-[state=open]:animate-in zui:data-[state=open]:fade-in-0 zui:data-[state=open]:zoom-in-95"), h = f(`zui:inline-flex ${i} ${s} zui:items-center zui:justify-center zui-radius-xs zui:border zui:border-[var(--zui-theme-border-default)] zui:bg-transparent zui:text-[var(--zui-color-text)] zui:outline-none zui:transition-[color,background-color,border-color,box-shadow,transform] zui:duration-200 zui:hover:cursor-pointer zui:hover:scale-110 zui:hover:border-[var(--zui-theme-border-strong)] zui:hover:bg-transparent zui:focus-visible:border-[var(--zui-theme-action-primary)] zui:focus-visible:shadow-[0_0_0_1px_var(--zui-theme-action-primary)] zui:disabled:pointer-events-none zui:disabled:opacity-45`), g = f("zui:flex zui:w-full zui:items-center zui:justify-between zui:gap-2 zui:px-1 zui:pb-1 zui:pt-2"), _ = f("zui:inline-flex zui:items-center zui:gap-3"), v = f(`zui:inline-flex ${n} ${o} ${c} zui:mobile:px-3 zui:items-center zui:justify-center zui:gap-2 zui-radius-xs zui:px-1 zui:text-base zui:font-semibold zui:outline-none zui:transition-[color,background-color,box-shadow] zui:duration-200 zui:focus-visible:shadow-[0_0_0_1px_var(--zui-theme-action-primary)]`, {
|
|
14
12
|
variants: { active: {
|
|
15
13
|
true: "zui:bg-transparent zui:text-[var(--zui-color-text)]",
|
|
16
14
|
false: "zui:bg-transparent zui:text-[var(--zui-color-text)] zui:hover:cursor-pointer zui:hover:text-[var(--zui-color-text)]"
|
|
17
15
|
} },
|
|
18
16
|
defaultVariants: { active: !1 }
|
|
19
|
-
}),
|
|
17
|
+
}), y = f(`zui:inline-flex ${n} ${o} ${c} zui:mobile:px-3 zui:items-center zui:justify-center zui:gap-1.5 zui-radius-xs zui:px-2 zui:text-xs zui:font-semibold zui:text-[var(--zui-color-text)] zui:outline-none zui:transition-[color,background-color,box-shadow] zui:duration-200 zui:hover:cursor-pointer zui:hover:text-[var(--zui-color-text)] zui:focus-visible:shadow-[0_0_0_1px_var(--zui-theme-action-primary)]`), b = f("zui:mb-2 zui:text-center zui:text-xs zui:text-[var(--zui-color-text)]"), x = f("zui:grid zui:grid-cols-3 zui:gap-2 zui:desktop:grid-cols-4"), S = f("zui:grid zui:max-h-64 zui:grid-cols-3 zui:gap-2 zui:overflow-y-auto zui:ps-1 zui:desktop:grid-cols-4"), C = f(`zui:inline-flex ${n} ${o} ${c} zui:mobile:px-3 zui:items-center zui:justify-center zui-radius-xs zui:border zui:border-[var(--zui-theme-border-default)] zui:bg-[var(--zui-color-surface)] zui:px-2 zui:text-sm zui:font-medium zui:text-[var(--zui-color-text)] zui:outline-none zui:transition-[color,border-color,box-shadow] zui:duration-200 zui:hover:cursor-pointer zui:hover:border-[var(--zui-theme-border-strong)] zui:focus-visible:border-[var(--zui-theme-action-primary-hover)] zui:focus-visible:shadow-[0_0_0_1px_var(--zui-theme-action-primary)]`, {
|
|
20
18
|
variants: { active: {
|
|
21
|
-
true: "zui:border-[var(--zui-theme-action-primary)] zui:bg-[var(--zui-theme-action-primary)] zui:text-[var(--zui-color-
|
|
19
|
+
true: "zui:border-[var(--zui-theme-action-primary)] zui:bg-[var(--zui-theme-action-primary)] zui:text-[var(--zui-color-surface)]",
|
|
22
20
|
false: ""
|
|
23
21
|
} },
|
|
24
22
|
defaultVariants: { active: !1 }
|
|
25
|
-
}),
|
|
23
|
+
}), w = f(`zui:flex-1 zui:text-center zui:text-sm ${c} zui:font-semibold zui:text-[var(--zui-color-text)]`), T = f(`zui:inline-flex ${r} ${a} zui:items-center zui:justify-center zui-radius-xs zui:text-base zui:font-medium zui:text-[var(--zui-color-text)] zui:outline-none zui:transition-[color,background-color,box-shadow] zui:duration-200 zui:hover:cursor-pointer zui:hover:bg-[var(--zui-color-muted-surface)] zui:focus-visible:bg-[var(--zui-color-muted-surface)] zui:focus-visible:shadow-[0_0_0_1px_var(--zui-theme-action-primary)] zui:aria-disabled:pointer-events-none zui:aria-disabled:opacity-45`);
|
|
26
24
|
//#endregion
|
|
27
|
-
export {
|
|
25
|
+
export { y as datePickerCalendarSwitchButtonVariants, T as datePickerDayButtonVariants, g as datePickerHeaderVariants, h as datePickerNavigationButtonVariants, x as datePickerPanelGridVariants, b as datePickerPanelHintVariants, C as datePickerPanelItemButtonVariants, m as datePickerPopoverContentVariants, v as datePickerSwitchButtonVariants, _ as datePickerSwitchGroupVariants, p as datePickerTriggerVariants, w as datePickerWeekdayVariants, S as datePickerYearListVariants };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use client";const e=require(`../../_virtual/_rolldown/runtime.cjs`),t=require(`../shared/useIsomorphicLayoutEffect.cjs`);let n=require(`react`);n=e.__toESM(n,1);let r=require(`react/jsx-runtime`);var i=.22,a=.4,o=24,s=8,c=.25,l=300,u=`cubic-bezier(0.22, 0.9, 0.28, 1)`,d=`cubic-bezier(0.34, 1.4, 0.5, 1)`,f=`translateX(-33.3333%)`,p=`translateX(0%)`,m=`translateX(-66.6667%)`,h=n.forwardRef(function({month:e,dateLib:h,dir:g,canGoPrevious:_,canGoNext:v,onMonthChange:y,renderMonth:b},x){let S=n.useRef(null),C=n.useRef(null),w=n.useRef(null),T=n.useRef(!1),E=n.useRef(!1),D=n.useRef(void 0),O=n.useMemo(()=>h.addMonths(e,-1),[h,e]),k=n.useMemo(()=>h.addMonths(e,1),[h,e]),A=g===`rtl`,j=A?k:O,M=A?O:k,N=A?v:_,P=A?_:v,F=n.useCallback(()=>{let e=C.current;e&&(e.style.transition=`none`,e.style.transform=f),T.current=!1},[]);t.useIsomorphicLayoutEffect(()=>{F()},[e,F]),n.useEffect(()=>()=>window.clearTimeout(D.current),[]);let I=n.useCallback((e,t=u)=>{let n=C.current;n&&(T.current=!0,n.style.transition=`transform ${l}ms ${t}`,n.style.transform=e===`left`?p:e===`right`?m:f,window.clearTimeout(D.current),D.current=window.setTimeout(()=>{if(e===`rest`){F();return}y(e===`left`?j:M),window.requestAnimationFrame(()=>{T.current&&F()})},l+20))},[j,y,F,M]);n.useImperativeHandle(x,()=>({slide:e=>{if(T.current)return;let t=e===`next`===A?`left`:`right`;t===`left`&&!N||t===`right`&&!P||I(t)}}),[N,P,A,I]);let L=e=>{T.current||e.pointerType===`mouse`&&e.button!==0||(E.current=!1,w.current={pointerId:e.pointerId,startX:e.clientX,startY:e.clientY,startTime:e.timeStamp,locked:null,dx:0})},R=e=>{let t=w.current,n=C.current,r=S.current;if(!t||t.pointerId!==e.pointerId||!n||!r)return;let i=e.clientX-t.startX,a=e.clientY-t.startY;if(t.locked===null){if(Math.abs(i)<s&&Math.abs(a)<s)return;t.locked=Math.abs(i)>Math.abs(a)?`horizontal`:`vertical`,t.locked===`horizontal`&&r.setPointerCapture(e.pointerId)}if(t.locked!==`horizontal`)return;let o=i>0?!N:!P,l=r.clientWidth;t.dx=o?Math.sign(i)*Math.min(Math.abs(i)*.35,l*c):Math.max(-l,Math.min(l,i)),E.current=!0,n.style.transition=`none`,n.style.transform=`translateX(calc(-33.3333% + ${t.dx}px))`},z=(e,t)=>{let n=w.current;if(!n||n.pointerId!==e.pointerId||(w.current=null,n.locked!==`horizontal`))return;let r=S.current?.clientWidth??1,s=Math.abs(n.dx),c=Math.max(1,e.timeStamp-n.startTime),l=s>o&&s/c>a,u=n.dx>0;!t&&(u?N:P)&&(s>r*i||l)?I(u?`left`:`right`):I(`rest`,d)},B=e=>{E.current&&(E.current=!1,e.preventDefault(),e.stopPropagation())},V=(e,t,n)=>(0,r.jsx)(`div`,{"data-slot":`date-picker-month-panel`,dir:g,"aria-hidden":e===`center`?void 0:!0,className:`zui:min-w-0 zui:shrink-0 zui:grow-0 zui:basis-1/3`,children:n?b(t):null},e);return(0,r.jsx)(`div`,{ref:S,"data-slot":`date-picker-month-slider`,className:`zui:w-full zui:touch-pan-y zui:overflow-hidden`,style:{direction:`ltr`},onPointerDown:L,onPointerMove:R,onPointerUp:e=>z(e,!1),onPointerCancel:e=>z(e,!0),onClickCapture:B,children:(0,r.jsxs)(`div`,{ref:C,className:`zui:flex zui:w-[300%] zui:will-change-transform`,style:{transform:f},children:[V(`left`,j,N),V(`center`,e,!0),V(`right`,M,P)]})})});exports.default=h;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { DateLib } from "react-day-picker";
|
|
3
|
+
type DatePickerMonthSliderHandle = {
|
|
4
|
+
/** Slides to the next / previous month, like the arrow buttons. */
|
|
5
|
+
slide: (direction: "next" | "previous") => void;
|
|
6
|
+
};
|
|
7
|
+
type DatePickerMonthSliderProps = {
|
|
8
|
+
/** The month in the middle. */
|
|
9
|
+
month: Date;
|
|
10
|
+
dateLib: DateLib;
|
|
11
|
+
dir: "rtl" | "ltr";
|
|
12
|
+
canGoPrevious: boolean;
|
|
13
|
+
canGoNext: boolean;
|
|
14
|
+
onMonthChange: (month: Date) => void;
|
|
15
|
+
renderMonth: (month: Date) => React.ReactNode;
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* A month carousel like a phone calendar's: the previous and next month sit beside the current
|
|
19
|
+
* one, the page follows the finger, and letting go slides it into place (or back). The arrow
|
|
20
|
+
* buttons drive the same slide through the ref. Months are laid out physically, so in RTL the
|
|
21
|
+
* next month is on the left (dragging right brings it in) and in LTR on the right.
|
|
22
|
+
*/
|
|
23
|
+
declare const DatePickerMonthSlider: React.ForwardRefExoticComponent<DatePickerMonthSliderProps & React.RefAttributes<DatePickerMonthSliderHandle>>;
|
|
24
|
+
export type { DatePickerMonthSliderHandle };
|
|
25
|
+
export default DatePickerMonthSlider;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { DateLib } from "react-day-picker";
|
|
3
|
+
type DatePickerMonthSliderHandle = {
|
|
4
|
+
/** Slides to the next / previous month, like the arrow buttons. */
|
|
5
|
+
slide: (direction: "next" | "previous") => void;
|
|
6
|
+
};
|
|
7
|
+
type DatePickerMonthSliderProps = {
|
|
8
|
+
/** The month in the middle. */
|
|
9
|
+
month: Date;
|
|
10
|
+
dateLib: DateLib;
|
|
11
|
+
dir: "rtl" | "ltr";
|
|
12
|
+
canGoPrevious: boolean;
|
|
13
|
+
canGoNext: boolean;
|
|
14
|
+
onMonthChange: (month: Date) => void;
|
|
15
|
+
renderMonth: (month: Date) => React.ReactNode;
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* A month carousel like a phone calendar's: the previous and next month sit beside the current
|
|
19
|
+
* one, the page follows the finger, and letting go slides it into place (or back). The arrow
|
|
20
|
+
* buttons drive the same slide through the ref. Months are laid out physically, so in RTL the
|
|
21
|
+
* next month is on the left (dragging right brings it in) and in LTR on the right.
|
|
22
|
+
*/
|
|
23
|
+
declare const DatePickerMonthSlider: React.ForwardRefExoticComponent<DatePickerMonthSliderProps & React.RefAttributes<DatePickerMonthSliderHandle>>;
|
|
24
|
+
export type { DatePickerMonthSliderHandle };
|
|
25
|
+
export default DatePickerMonthSlider;
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { useIsomorphicLayoutEffect as e } from "../shared/useIsomorphicLayoutEffect.js";
|
|
3
|
+
import * as t from "react";
|
|
4
|
+
import { jsx as n, jsxs as r } from "react/jsx-runtime";
|
|
5
|
+
//#region src/components/DatePicker/DatePickerMonthSlider.tsx
|
|
6
|
+
var i = .22, a = .4, o = 24, s = 8, c = .25, l = 300, u = "cubic-bezier(0.22, 0.9, 0.28, 1)", d = "cubic-bezier(0.34, 1.4, 0.5, 1)", f = "translateX(-33.3333%)", p = "translateX(0%)", m = "translateX(-66.6667%)", h = t.forwardRef(function({ month: h, dateLib: g, dir: _, canGoPrevious: v, canGoNext: y, onMonthChange: b, renderMonth: x }, S) {
|
|
7
|
+
let C = t.useRef(null), w = t.useRef(null), T = t.useRef(null), E = t.useRef(!1), D = t.useRef(!1), O = t.useRef(void 0), k = t.useMemo(() => g.addMonths(h, -1), [g, h]), A = t.useMemo(() => g.addMonths(h, 1), [g, h]), j = _ === "rtl", M = j ? A : k, N = j ? k : A, P = j ? y : v, F = j ? v : y, I = t.useCallback(() => {
|
|
8
|
+
let e = w.current;
|
|
9
|
+
e && (e.style.transition = "none", e.style.transform = f), E.current = !1;
|
|
10
|
+
}, []);
|
|
11
|
+
e(() => {
|
|
12
|
+
I();
|
|
13
|
+
}, [h, I]), t.useEffect(() => () => window.clearTimeout(O.current), []);
|
|
14
|
+
let L = t.useCallback((e, t = u) => {
|
|
15
|
+
let n = w.current;
|
|
16
|
+
n && (E.current = !0, n.style.transition = `transform ${l}ms ${t}`, n.style.transform = e === "left" ? p : e === "right" ? m : f, window.clearTimeout(O.current), O.current = window.setTimeout(() => {
|
|
17
|
+
if (e === "rest") {
|
|
18
|
+
I();
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
b(e === "left" ? M : N), window.requestAnimationFrame(() => {
|
|
22
|
+
E.current && I();
|
|
23
|
+
});
|
|
24
|
+
}, l + 20));
|
|
25
|
+
}, [
|
|
26
|
+
M,
|
|
27
|
+
b,
|
|
28
|
+
I,
|
|
29
|
+
N
|
|
30
|
+
]);
|
|
31
|
+
t.useImperativeHandle(S, () => ({ slide: (e) => {
|
|
32
|
+
if (E.current) return;
|
|
33
|
+
let t = e === "next" === j ? "left" : "right";
|
|
34
|
+
t === "left" && !P || t === "right" && !F || L(t);
|
|
35
|
+
} }), [
|
|
36
|
+
P,
|
|
37
|
+
F,
|
|
38
|
+
j,
|
|
39
|
+
L
|
|
40
|
+
]);
|
|
41
|
+
let R = (e) => {
|
|
42
|
+
E.current || e.pointerType === "mouse" && e.button !== 0 || (D.current = !1, T.current = {
|
|
43
|
+
pointerId: e.pointerId,
|
|
44
|
+
startX: e.clientX,
|
|
45
|
+
startY: e.clientY,
|
|
46
|
+
startTime: e.timeStamp,
|
|
47
|
+
locked: null,
|
|
48
|
+
dx: 0
|
|
49
|
+
});
|
|
50
|
+
}, z = (e) => {
|
|
51
|
+
let t = T.current, n = w.current, r = C.current;
|
|
52
|
+
if (!t || t.pointerId !== e.pointerId || !n || !r) return;
|
|
53
|
+
let i = e.clientX - t.startX, a = e.clientY - t.startY;
|
|
54
|
+
if (t.locked === null) {
|
|
55
|
+
if (Math.abs(i) < s && Math.abs(a) < s) return;
|
|
56
|
+
t.locked = Math.abs(i) > Math.abs(a) ? "horizontal" : "vertical", t.locked === "horizontal" && r.setPointerCapture(e.pointerId);
|
|
57
|
+
}
|
|
58
|
+
if (t.locked !== "horizontal") return;
|
|
59
|
+
let o = i > 0 ? !P : !F, l = r.clientWidth;
|
|
60
|
+
t.dx = o ? Math.sign(i) * Math.min(Math.abs(i) * .35, l * c) : Math.max(-l, Math.min(l, i)), D.current = !0, n.style.transition = "none", n.style.transform = `translateX(calc(-33.3333% + ${t.dx}px))`;
|
|
61
|
+
}, B = (e, t) => {
|
|
62
|
+
let n = T.current;
|
|
63
|
+
if (!n || n.pointerId !== e.pointerId || (T.current = null, n.locked !== "horizontal")) return;
|
|
64
|
+
let r = C.current?.clientWidth ?? 1, s = Math.abs(n.dx), c = Math.max(1, e.timeStamp - n.startTime), l = s > o && s / c > a, u = n.dx > 0;
|
|
65
|
+
!t && (u ? P : F) && (s > r * i || l) ? L(u ? "left" : "right") : L("rest", d);
|
|
66
|
+
}, V = (e) => {
|
|
67
|
+
D.current && (D.current = !1, e.preventDefault(), e.stopPropagation());
|
|
68
|
+
}, H = (e, t, r) => /* @__PURE__ */ n("div", {
|
|
69
|
+
"data-slot": "date-picker-month-panel",
|
|
70
|
+
dir: _,
|
|
71
|
+
"aria-hidden": e === "center" ? void 0 : !0,
|
|
72
|
+
className: "zui:min-w-0 zui:shrink-0 zui:grow-0 zui:basis-1/3",
|
|
73
|
+
children: r ? x(t) : null
|
|
74
|
+
}, e);
|
|
75
|
+
return /* @__PURE__ */ n("div", {
|
|
76
|
+
ref: C,
|
|
77
|
+
"data-slot": "date-picker-month-slider",
|
|
78
|
+
className: "zui:w-full zui:touch-pan-y zui:overflow-hidden",
|
|
79
|
+
style: { direction: "ltr" },
|
|
80
|
+
onPointerDown: R,
|
|
81
|
+
onPointerMove: z,
|
|
82
|
+
onPointerUp: (e) => B(e, !1),
|
|
83
|
+
onPointerCancel: (e) => B(e, !0),
|
|
84
|
+
onClickCapture: V,
|
|
85
|
+
children: /* @__PURE__ */ r("div", {
|
|
86
|
+
ref: w,
|
|
87
|
+
className: "zui:flex zui:w-[300%] zui:will-change-transform",
|
|
88
|
+
style: { transform: f },
|
|
89
|
+
children: [
|
|
90
|
+
H("left", M, P),
|
|
91
|
+
H("center", h, !0),
|
|
92
|
+
H("right", N, F)
|
|
93
|
+
]
|
|
94
|
+
})
|
|
95
|
+
});
|
|
96
|
+
});
|
|
97
|
+
//#endregion
|
|
98
|
+
export { h as default };
|