@forgedevstack/bear 1.0.4 → 1.0.6
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/AppBar/AppBar.cjs +1 -1
- package/dist/components/AppBar/AppBar.js +8 -8
- package/dist/components/Button/Button.constants.cjs +1 -1
- package/dist/components/Button/Button.constants.js +1 -1
- package/dist/components/Button/Button.d.ts +5 -3
- package/dist/components/Calendar/Calendar.cjs +1 -1
- package/dist/components/Calendar/Calendar.const.cjs +1 -1
- package/dist/components/Calendar/Calendar.const.d.ts +1 -0
- package/dist/components/Calendar/Calendar.const.js +6 -5
- package/dist/components/Calendar/Calendar.helpers.cjs +1 -1
- package/dist/components/Calendar/Calendar.helpers.js +4 -4
- package/dist/components/Calendar/Calendar.js +128 -128
- package/dist/components/Cascader/Cascader.cjs +1 -0
- package/dist/components/Cascader/Cascader.const.cjs +1 -0
- package/dist/components/Cascader/Cascader.const.d.ts +33 -0
- package/dist/components/Cascader/Cascader.const.js +21 -0
- package/dist/components/Cascader/Cascader.d.ts +17 -0
- package/dist/components/Cascader/Cascader.js +227 -0
- package/dist/components/Cascader/Cascader.types.d.ts +94 -0
- package/dist/components/Cascader/index.d.ts +2 -0
- package/dist/components/CommandPalette/CommandPalette.cjs +1 -0
- package/dist/components/CommandPalette/CommandPalette.const.cjs +1 -0
- package/dist/components/CommandPalette/CommandPalette.const.d.ts +25 -0
- package/dist/components/CommandPalette/CommandPalette.const.js +13 -0
- package/dist/components/CommandPalette/CommandPalette.d.ts +18 -0
- package/dist/components/CommandPalette/CommandPalette.js +190 -0
- package/dist/components/CommandPalette/CommandPalette.types.d.ts +90 -0
- package/dist/components/CommandPalette/CommandPalette.utils.cjs +1 -0
- package/dist/components/CommandPalette/CommandPalette.utils.d.ts +17 -0
- package/dist/components/CommandPalette/CommandPalette.utils.js +63 -0
- package/dist/components/CommandPalette/index.d.ts +2 -0
- package/dist/components/CreditInput/CreditInput.cjs +1 -0
- package/dist/components/CreditInput/CreditInput.const.cjs +1 -0
- package/dist/components/CreditInput/CreditInput.const.d.ts +37 -0
- package/dist/components/CreditInput/CreditInput.const.js +66 -0
- package/dist/components/CreditInput/CreditInput.d.ts +15 -0
- package/dist/components/CreditInput/CreditInput.js +214 -0
- package/dist/components/CreditInput/CreditInput.types.d.ts +93 -0
- package/dist/components/CreditInput/CreditInput.utils.cjs +1 -0
- package/dist/components/CreditInput/CreditInput.utils.d.ts +48 -0
- package/dist/components/CreditInput/CreditInput.utils.js +79 -0
- package/dist/components/CreditInput/index.d.ts +2 -0
- package/dist/components/DatePicker/DatePicker.cjs +1 -1
- package/dist/components/DatePicker/DatePicker.js +108 -84
- package/dist/components/DatePicker/DatePicker.types.d.ts +2 -1
- package/dist/components/Drawer/Drawer.cjs +1 -1
- package/dist/components/Drawer/Drawer.js +75 -44
- package/dist/components/Form/Form.cjs +1 -0
- package/dist/components/Form/Form.const.cjs +1 -0
- package/dist/components/Form/Form.const.d.ts +33 -0
- package/dist/components/Form/Form.const.js +27 -0
- package/dist/components/Form/Form.context.cjs +1 -0
- package/dist/components/Form/Form.context.d.ts +13 -0
- package/dist/components/Form/Form.context.js +12 -0
- package/dist/components/Form/Form.d.ts +18 -0
- package/dist/components/Form/Form.js +230 -0
- package/dist/components/Form/Form.types.d.ts +166 -0
- package/dist/components/Form/Form.utils.cjs +1 -0
- package/dist/components/Form/Form.utils.d.ts +17 -0
- package/dist/components/Form/Form.utils.js +31 -0
- package/dist/components/Form/index.d.ts +3 -0
- package/dist/components/Input/Input.cjs +1 -1
- package/dist/components/Input/Input.js +36 -36
- package/dist/components/NotificationCenter/NotificationCenter.cjs +1 -0
- package/dist/components/NotificationCenter/NotificationCenter.const.cjs +1 -0
- package/dist/components/NotificationCenter/NotificationCenter.const.d.ts +25 -0
- package/dist/components/NotificationCenter/NotificationCenter.const.js +28 -0
- package/dist/components/NotificationCenter/NotificationCenter.d.ts +15 -0
- package/dist/components/NotificationCenter/NotificationCenter.js +223 -0
- package/dist/components/NotificationCenter/NotificationCenter.types.d.ts +117 -0
- package/dist/components/NotificationCenter/NotificationCenter.utils.cjs +1 -0
- package/dist/components/NotificationCenter/NotificationCenter.utils.d.ts +11 -0
- package/dist/components/NotificationCenter/NotificationCenter.utils.js +19 -0
- package/dist/components/NotificationCenter/index.d.ts +2 -0
- package/dist/components/PhoneInput/PhoneInput.cjs +1 -0
- package/dist/components/PhoneInput/PhoneInput.const.cjs +1 -0
- package/dist/components/PhoneInput/PhoneInput.const.d.ts +33 -0
- package/dist/components/PhoneInput/PhoneInput.const.js +82 -0
- package/dist/components/PhoneInput/PhoneInput.d.ts +16 -0
- package/dist/components/PhoneInput/PhoneInput.js +194 -0
- package/dist/components/PhoneInput/PhoneInput.types.d.ts +108 -0
- package/dist/components/PhoneInput/PhoneInput.utils.cjs +1 -0
- package/dist/components/PhoneInput/PhoneInput.utils.d.ts +25 -0
- package/dist/components/PhoneInput/PhoneInput.utils.js +39 -0
- package/dist/components/PhoneInput/index.d.ts +2 -0
- package/dist/components/Select/Select.cjs +1 -1
- package/dist/components/Select/Select.js +37 -37
- package/dist/components/Sidebar/Sidebar.cjs +1 -1
- package/dist/components/Sidebar/Sidebar.const.cjs +1 -1
- package/dist/components/Sidebar/Sidebar.const.d.ts +6 -2
- package/dist/components/Sidebar/Sidebar.const.js +24 -17
- package/dist/components/Sidebar/Sidebar.js +36 -31
- package/dist/components/Sidebar/Sidebar.types.d.ts +9 -0
- package/dist/components/Sidebar/components/SidebarItem/SidebarItem.cjs +1 -1
- package/dist/components/Sidebar/components/SidebarItem/SidebarItem.js +30 -29
- package/dist/components/SignPad/SignPad.cjs +1 -1
- package/dist/components/SignPad/SignPad.js +56 -56
- package/dist/components/TimePicker/TimePicker.cjs +1 -1
- package/dist/components/TimePicker/TimePicker.constants.cjs +1 -1
- package/dist/components/TimePicker/TimePicker.constants.d.ts +22 -1
- package/dist/components/TimePicker/TimePicker.constants.js +36 -19
- package/dist/components/TimePicker/TimePicker.js +97 -131
- package/dist/components/TimePicker/TimePicker.types.d.ts +47 -6
- package/dist/components/TimePicker/components/TimePickerColumnsDropdown/TimePickerColumnsDropdown.cjs +1 -0
- package/dist/components/TimePicker/components/TimePickerColumnsDropdown/TimePickerColumnsDropdown.d.ts +3 -0
- package/dist/components/TimePicker/components/TimePickerColumnsDropdown/TimePickerColumnsDropdown.js +81 -0
- package/dist/components/TimePicker/components/TimePickerColumnsDropdown/index.d.ts +1 -0
- package/dist/components/TimePicker/components/TimePickerDialDropdown/TimePickerDialDropdown.cjs +1 -0
- package/dist/components/TimePicker/components/TimePickerDialDropdown/TimePickerDialDropdown.d.ts +3 -0
- package/dist/components/TimePicker/components/TimePickerDialDropdown/TimePickerDialDropdown.js +84 -0
- package/dist/components/TimePicker/components/TimePickerDialDropdown/index.d.ts +1 -0
- package/dist/components/TimePicker/helpers/ClockFaceSvg.cjs +1 -0
- package/dist/components/TimePicker/helpers/ClockFaceSvg.d.ts +18 -0
- package/dist/components/TimePicker/helpers/ClockFaceSvg.js +67 -0
- package/dist/components/TimePicker/helpers/index.d.ts +2 -0
- package/dist/components/TimePicker/index.d.ts +1 -1
- package/dist/components/index.cjs +1 -1
- package/dist/components/index.d.ts +13 -3
- package/dist/components/index.js +139 -126
- package/dist/context/BearProvider.cjs +1 -1
- package/dist/context/BearProvider.js +25 -25
- package/dist/index.cjs +1 -1
- package/dist/index.js +247 -234
- package/dist/styles.css +1 -1
- package/package.json +1 -1
- package/dist/components/DateTimePicker/DateTimePicker.cjs +0 -1
- package/dist/components/DateTimePicker/DateTimePicker.d.ts +0 -3
- package/dist/components/DateTimePicker/DateTimePicker.js +0 -178
- package/dist/components/DateTimePicker/DateTimePicker.types.d.ts +0 -26
- package/dist/components/DateTimePicker/DateTimePicker.utils.cjs +0 -1
- package/dist/components/DateTimePicker/DateTimePicker.utils.d.ts +0 -2
- package/dist/components/DateTimePicker/DateTimePicker.utils.js +0 -16
- package/dist/components/DateTimePicker/index.d.ts +0 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),p=require("../../utils/cn.cjs"),u=({children:a,position:t="sticky",variant:r="default",color:b="default",className:s,leftContent:i,rightContent:c,centerContent:l,elevation:n=!0})=>{const d={fixed:"bear-fixed bear-top-0 bear-left-0 bear-right-0 bear-z-50",sticky:"bear-sticky bear-top-0 bear-z-50",static:"bear-static",relative:"bear-relative"},o={default:"bear-bg-zinc-900 bear-text-white",transparent:"bear-bg-transparent",blur:"bear-bg-zinc-900/80 bear-backdrop-blur-md"},x={default:"",primary:"bear-bg-bear-600 bear-text-white",dark:"bear-bg-black bear-text-white"};return e.jsx("header",{className:p.cn("bear-w-full bear-h-16 bear-px-4 bear-flex bear-items-center",d[t],r!=="transparent"&&o[r],x[b],
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),p=require("../../utils/cn.cjs"),u=({children:a,position:t="sticky",variant:r="default",color:b="default",className:s,leftContent:i,rightContent:c,centerContent:l,elevation:n=!0})=>{const d={fixed:"bear-fixed bear-top-0 bear-left-0 bear-right-0 bear-z-50",sticky:"bear-sticky bear-top-0 bear-z-50",static:"bear-static",relative:"bear-relative"},o={default:"bear-bg-white bear-text-gray-900 dark:bear-bg-zinc-900 dark:bear-text-white",transparent:"bear-bg-transparent",blur:"bear-bg-white/80 dark:bear-bg-zinc-900/80 bear-backdrop-blur-md"},x={default:"",primary:"bear-bg-bear-600 bear-text-white",dark:"bear-bg-black bear-text-white"},g=n?"bear-shadow-lg bear-border-b bear-border-gray-200 dark:bear-border-zinc-800":"";return e.jsx("header",{className:p.cn("bear-w-full bear-h-16 bear-px-4 bear-flex bear-items-center",d[t],r!=="transparent"&&o[r],x[b],g,s),children:a??e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"bear-flex bear-items-center bear-gap-4",children:i}),e.jsx("div",{className:"bear-flex-1 bear-flex bear-items-center bear-justify-center",children:l}),e.jsx("div",{className:"bear-flex bear-items-center bear-gap-4",children:c})]})})};exports.AppBar=u;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { jsx as e, jsxs as
|
|
2
|
-
import { cn as
|
|
1
|
+
import { jsx as e, jsxs as m, Fragment as x } from "react/jsx-runtime";
|
|
2
|
+
import { cn as g } from "../../utils/cn.js";
|
|
3
3
|
const u = ({
|
|
4
4
|
children: a,
|
|
5
5
|
position: t = "sticky",
|
|
@@ -17,26 +17,26 @@ const u = ({
|
|
|
17
17
|
static: "bear-static",
|
|
18
18
|
relative: "bear-relative"
|
|
19
19
|
}, o = {
|
|
20
|
-
default: "bear-bg-zinc-900 bear-text-white",
|
|
20
|
+
default: "bear-bg-white bear-text-gray-900 dark:bear-bg-zinc-900 dark:bear-text-white",
|
|
21
21
|
transparent: "bear-bg-transparent",
|
|
22
|
-
blur: "bear-bg-zinc-900/80 bear-backdrop-blur-md"
|
|
22
|
+
blur: "bear-bg-white/80 dark:bear-bg-zinc-900/80 bear-backdrop-blur-md"
|
|
23
23
|
}, f = {
|
|
24
24
|
default: "",
|
|
25
25
|
primary: "bear-bg-bear-600 bear-text-white",
|
|
26
26
|
dark: "bear-bg-black bear-text-white"
|
|
27
|
-
};
|
|
27
|
+
}, p = n ? "bear-shadow-lg bear-border-b bear-border-gray-200 dark:bear-border-zinc-800" : "";
|
|
28
28
|
return /* @__PURE__ */ e(
|
|
29
29
|
"header",
|
|
30
30
|
{
|
|
31
|
-
className:
|
|
31
|
+
className: g(
|
|
32
32
|
"bear-w-full bear-h-16 bear-px-4 bear-flex bear-items-center",
|
|
33
33
|
d[t],
|
|
34
34
|
r !== "transparent" && o[r],
|
|
35
35
|
f[b],
|
|
36
|
-
|
|
36
|
+
p,
|
|
37
37
|
s
|
|
38
38
|
),
|
|
39
|
-
children: a ?? /* @__PURE__ */
|
|
39
|
+
children: a ?? /* @__PURE__ */ m(x, { children: [
|
|
40
40
|
/* @__PURE__ */ e("div", { className: "bear-flex bear-items-center bear-gap-4", children: i }),
|
|
41
41
|
/* @__PURE__ */ e("div", { className: "bear-flex-1 bear-flex bear-items-center bear-justify-center", children: c }),
|
|
42
42
|
/* @__PURE__ */ e("div", { className: "bear-flex bear-items-center bear-gap-4", children: l })
|
|
@@ -47,7 +47,7 @@
|
|
|
47
47
|
focus:bear-ring-2 focus:bear-ring-bear-500/50
|
|
48
48
|
active:bear-bg-bear-100
|
|
49
49
|
disabled:bear-text-bear-300 disabled:bear-border-bear-300 disabled:bear-cursor-not-allowed
|
|
50
|
-
dark:hover:bear-bg-bear-950 dark:active:bear-bg-bear-900
|
|
50
|
+
dark:bear-text-bear-400 dark:bear-border-bear-400 dark:hover:bear-bg-bear-950 dark:active:bear-bg-bear-900 dark:disabled:bear-border-bear-700 dark:disabled:bear-text-bear-700
|
|
51
51
|
`,error:`
|
|
52
52
|
bear-bg-red-500 bear-text-white
|
|
53
53
|
hover:bear-bg-red-600
|
|
@@ -61,7 +61,7 @@ const e = {
|
|
|
61
61
|
focus:bear-ring-2 focus:bear-ring-bear-500/50
|
|
62
62
|
active:bear-bg-bear-100
|
|
63
63
|
disabled:bear-text-bear-300 disabled:bear-border-bear-300 disabled:bear-cursor-not-allowed
|
|
64
|
-
dark:hover:bear-bg-bear-950 dark:active:bear-bg-bear-900
|
|
64
|
+
dark:bear-text-bear-400 dark:bear-border-bear-400 dark:hover:bear-bg-bear-950 dark:active:bear-bg-bear-900 dark:disabled:bear-border-bear-700 dark:disabled:bear-text-bear-700
|
|
65
65
|
`,
|
|
66
66
|
error: `
|
|
67
67
|
bear-bg-red-500 bear-text-white
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { ButtonProps } from './Button.types';
|
|
2
2
|
/**
|
|
3
|
-
* Button component with multiple variants, sizes, and states
|
|
3
|
+
* Button component with multiple variants, sizes, and states.
|
|
4
|
+
* Light and dark mode supported; outline variant has theme-aware borders.
|
|
5
|
+
* Override borders from outside via className (e.g. className="border-2 border-blue-500 dark:border-blue-400").
|
|
4
6
|
*
|
|
5
7
|
* @example
|
|
6
8
|
* ```tsx
|
|
@@ -12,8 +14,8 @@ import { ButtonProps } from './Button.types';
|
|
|
12
14
|
* Loading...
|
|
13
15
|
* </Button>
|
|
14
16
|
*
|
|
15
|
-
* <Button
|
|
16
|
-
*
|
|
17
|
+
* <Button variant="outline" className="border-2 border-pink-500">
|
|
18
|
+
* Custom border
|
|
17
19
|
* </Button>
|
|
18
20
|
* ```
|
|
19
21
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),i=require("react"),D=require("../../utils/cn.cjs"),he=require("../../hooks/useBearStyles.cjs"),v=require("../Icon/index.cjs"),s=require("./Calendar.const.cjs"),l=require("./Calendar.utils.cjs"),xe=require("./Calendar.helpers.cjs"),ke=G=>{const{viewDate:w,value:E=null,onSelect:C,onViewChange:n,minDate:N,maxDate:_,disabledDates:M=[],highlightedDates:R=[],weekdayLabels:S=s.DEFAULT_WEEKDAYS,firstDayOfWeek:k=s.NUMBER.ZERO,showWeekNumbers:ye=!1,slots:r={},clearable:K=!0,onClear:u,showTodayButton:Z=!0,onToday:h,bis:X,style:J,inline:O=!1,className:Q}=G,b=w.getFullYear(),P=he.useBearStyles(X,J),d=w.getMonth(),$=i.useMemo(()=>new Date,[]),g=i.useCallback(()=>{n==null||n(new Date(b-s.NUMBER.ONE,d,s.NUMBER.ONE))},[b,d,n]),L=i.useCallback(()=>{n==null||n(new Date(b,d-s.NUMBER.ONE,s.NUMBER.ONE))},[b,d,n]),W=i.useCallback(()=>{n==null||n(new Date(b,d+s.NUMBER.ONE,s.NUMBER.ONE))},[b,d,n]),z=i.useCallback(()=>{n==null||n(new Date(b+s.NUMBER.ONE,d,s.NUMBER.ONE))},[b,d,n]),p=L,B=W,V={onPrevYear:g,onPrevMonth:L,onNextMonth:W,onNextYear:z},ee=i.useCallback(t=>N&&t<N||_&&t>_?!0:M.some(a=>l.isSameDay(a,t)),[N,_,M]),re=i.useCallback(t=>R.some(a=>l.isSameDay(a,t)),[R]),ae=i.useMemo(()=>l.buildCalendarGrid(b,d,k),[b,d,k]),T=i.useMemo(()=>l.reorderWeekdays(S,k),[S,k]),U=s.MONTHS[d],f=E!=null,te=O?"Bear-Calendar Bear-Calendar--inline bear-block bear-w-full bear-bg-white dark:bear-bg-zinc-900 bear-rounded-xl bear-shadow-none bear-border bear-border-zinc-200 dark:bear-border-zinc-700 bear-p-4 bear-text-zinc-900 dark:bear-text-zinc-100":"Bear-Calendar Bear-Calendar--dropdown bear-mt-2 bear-bg-white dark:bear-bg-zinc-900 bear-rounded-xl bear-shadow-xl bear-border bear-border-zinc-200 dark:bear-border-zinc-700 bear-p-4 bear-w-80 bear-text-zinc-900 dark:bear-text-zinc-100",Y=O?void 0:{zIndex:s.CALENDAR_DROPDOWN_Z_INDEX},ne=()=>{if(r.header)return r.header({month:U,year:b,onPrev:p,onNext:B,nav:V});const t=r.navPrevYear,a=r.navPrev,o=r.navNext,c=r.navNextYear,y=r.headerLabel||xe.DefaultHeaderLabel;return e.jsxs("div",{className:"Bear-Calendar__header bear-flex bear-items-center bear-justify-between bear-gap-1 bear-mb-4",children:[e.jsxs("div",{className:"Bear-Calendar__nav-left bear-flex bear-items-center bear-gap-0.5",children:[t?t({onClick:g}):e.jsx("button",{type:"button",onClick:g,className:"Bear-Calendar__nav-btn bear-p-1.5 bear-rounded bear-text-zinc-500 dark:bear-text-zinc-400 hover:bear-bg-zinc-100 dark:hover:bear-bg-zinc-800 bear-transition-colors","aria-label":"Previous year",children:e.jsx(v.ChevronsLeftIcon,{size:16})}),a?a({onClick:p}):e.jsx("button",{type:"button",onClick:p,className:"Bear-Calendar__nav-btn bear-p-1.5 bear-rounded bear-text-zinc-500 dark:bear-text-zinc-400 hover:bear-bg-zinc-100 dark:hover:bear-bg-zinc-800 bear-transition-colors","aria-label":"Previous month",children:e.jsx(v.ChevronLeftIcon,{size:16})})]}),y({month:U,year:b}),e.jsxs("div",{className:"Bear-Calendar__nav-right bear-flex bear-items-center bear-gap-0.5",children:[o?o({onClick:B}):e.jsx("button",{type:"button",onClick:B,className:"Bear-Calendar__nav-btn bear-p-1.5 bear-rounded bear-text-zinc-500 dark:bear-text-zinc-400 hover:bear-bg-zinc-100 dark:hover:bear-bg-zinc-800 bear-transition-colors","aria-label":"Next month",children:e.jsx(v.ChevronRightIcon,{size:16})}),c?c({onClick:z}):e.jsx("button",{type:"button",onClick:z,className:"Bear-Calendar__nav-btn bear-p-1.5 bear-rounded bear-text-zinc-500 dark:bear-text-zinc-400 hover:bear-bg-zinc-100 dark:hover:bear-bg-zinc-800 bear-transition-colors","aria-label":"Next year",children:e.jsx(v.ChevronsRightIcon,{size:16})})]})]})},oe=()=>{if(r.weekdays)return r.weekdays({days:T});const t=r.weekday;return e.jsx("div",{className:"Bear-Calendar__weekdays bear-grid bear-grid-cols-7 bear-gap-1 bear-mb-2",children:T.map(a=>t?e.jsx("div",{children:t({label:a})},a):e.jsx("div",{className:D.cn("Bear-Calendar__weekday bear-text-center bear-text-xs bear-font-medium bear-uppercase bear-text-zinc-500 dark:bear-text-zinc-400",s.WEEKEND_LABELS.includes(a)&&"bear-text-red-500"),children:a},a))})},se=(t,a)=>{const{date:o,isCurrentMonth:c}=t,y=o.getDate(),ce=o.getDay(),le=l.isWeekendDay(ce),x=l.isSameDay(E,o),j=l.isSameDay($,o),m=ee(o),H=re(o),F=()=>{m||C==null||C(o)},ue={date:o,day:y,isCurrentMonth:c,isSelected:x,isToday:j,isDisabled:m,isHighlighted:H,onClick:F};return r.day?e.jsx("span",{children:r.day(ue)},a):e.jsx("button",{type:"button",onClick:F,disabled:m,className:D.cn("Bear-Calendar__day bear-w-8 bear-h-8 bear-rounded-full bear-text-sm bear-font-medium bear-transition-colors bear-flex bear-items-center bear-justify-center",x&&"Bear-Calendar__day--selected bear-bg-pink-500 bear-text-white hover:bear-bg-pink-600",!x&&j&&"Bear-Calendar__day--today bear-ring-2 bear-ring-pink-500/50 bear-bg-transparent",!x&&!j&&(c?le?"Bear-Calendar__day--weekend bear-text-red-500 dark:bear-text-red-400 hover:bear-bg-zinc-100 dark:hover:bear-bg-zinc-800":"bear-text-zinc-700 dark:bear-text-zinc-300 hover:bear-bg-zinc-100 dark:hover:bear-bg-zinc-800":"Bear-Calendar__day--other bear-text-zinc-500 dark:bear-text-zinc-600 hover:bear-bg-zinc-50 dark:hover:bear-bg-zinc-800/50"),H&&!x&&"Bear-Calendar__day--highlighted bear-bg-pink-500/15",m&&"Bear-Calendar__day--disabled bear-opacity-40 bear-cursor-not-allowed"),children:y},a)},be=()=>{const t=ae.map((a,o)=>se(a,o));return r.daysGrid?r.daysGrid({children:t,className:"Bear-Calendar__grid bear-grid bear-grid-cols-7 bear-gap-1"}):e.jsx("div",{className:"Bear-Calendar__grid bear-grid bear-grid-cols-7 bear-gap-1",children:t})},de=()=>{const t=K&&f&&u,a=Z&&h;if(!t&&!a)return null;if(r.footer){const o=r.clearButton,c=r.todayButton;return r.footer({children:e.jsxs("div",{className:"Bear-Calendar__footer bear-flex bear-justify-between bear-gap-2 bear-mt-4 bear-pt-3 bear-border-t bear-border-zinc-200 dark:bear-border-zinc-700",children:[t&&o?o({onClick:u,hasSelection:f}):t?e.jsx("button",{type:"button",onClick:u,className:"Bear-Calendar__clear-btn bear-text-sm bear-text-zinc-500 dark:bear-text-zinc-400 hover:bear-text-zinc-700 dark:hover:bear-text-zinc-200 bear-transition-colors",children:"Clear"}):e.jsx("span",{}),a&&c?c({onClick:h}):a?e.jsx("button",{type:"button",onClick:h,className:"Bear-Calendar__today-btn bear-text-sm bear-text-pink-600 dark:bear-text-pink-400 hover:bear-text-pink-700 dark:hover:bear-text-pink-300 bear-font-medium",children:"Today"}):null]})})}return r.clearButton&&r.todayButton?e.jsxs("div",{className:"Bear-Calendar__footer bear-flex bear-justify-between bear-gap-2 bear-mt-4 bear-pt-3 bear-border-t bear-border-zinc-200 dark:bear-border-zinc-700",children:[t&&r.clearButton({onClick:u,hasSelection:f}),a&&r.todayButton({onClick:h})]}):e.jsxs("div",{className:"Bear-Calendar__footer bear-flex bear-justify-between bear-gap-2 bear-mt-4 bear-pt-3 bear-border-t bear-border-zinc-200 dark:bear-border-zinc-700",children:[t?e.jsx("button",{type:"button",onClick:u,className:"Bear-Calendar__clear-btn bear-text-sm bear-text-zinc-500 dark:bear-text-zinc-400 hover:bear-text-zinc-700 dark:hover:bear-text-zinc-200 bear-transition-colors",children:"Clear"}):e.jsx("span",{}),a?e.jsx("button",{type:"button",onClick:h,className:"Bear-Calendar__today-btn bear-text-sm bear-text-pink-400 hover:bear-text-pink-300 bear-font-medium bear-transition-colors",children:"Today"}):null]})},q=e.jsxs(e.Fragment,{children:[ne(),oe(),be(),de()]}),I=D.cn(te,Q),A=Object.keys(P).length?P:void 0,ie=Y?{...A,...Y}:A;return r.root?r.root({children:q,className:I}):e.jsx("div",{className:I,style:ie,children:q})};exports.Calendar=ke;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const E={ZERO:0,ONE:1,SIX:6,SEVEN:7,ELEVEN:11,TOTAL_CELLS:42},
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const E={ZERO:0,ONE:1,SIX:6,SEVEN:7,ELEVEN:11,TOTAL_CELLS:42},N=["SUN","MON","TUE","WED","THU","FRI","SAT"],e=["January","February","March","April","May","June","July","August","September","October","November","December"],S=["SUN","SAT","Sun","Sat"],D=9999;exports.CALENDAR_DROPDOWN_Z_INDEX=D;exports.DEFAULT_WEEKDAYS=N;exports.MONTHS=e;exports.NUMBER=E;exports.WEEKEND_LABELS=S;
|
|
@@ -5,7 +5,7 @@ const E = {
|
|
|
5
5
|
SEVEN: 7,
|
|
6
6
|
ELEVEN: 11,
|
|
7
7
|
TOTAL_CELLS: 42
|
|
8
|
-
},
|
|
8
|
+
}, N = ["SUN", "MON", "TUE", "WED", "THU", "FRI", "SAT"], S = [
|
|
9
9
|
"January",
|
|
10
10
|
"February",
|
|
11
11
|
"March",
|
|
@@ -18,10 +18,11 @@ const E = {
|
|
|
18
18
|
"October",
|
|
19
19
|
"November",
|
|
20
20
|
"December"
|
|
21
|
-
],
|
|
21
|
+
], e = ["SUN", "SAT", "Sun", "Sat"], r = 9999;
|
|
22
22
|
export {
|
|
23
|
-
|
|
24
|
-
|
|
23
|
+
r as CALENDAR_DROPDOWN_Z_INDEX,
|
|
24
|
+
N as DEFAULT_WEEKDAYS,
|
|
25
|
+
S as MONTHS,
|
|
25
26
|
E as NUMBER,
|
|
26
|
-
|
|
27
|
+
e as WEEKEND_LABELS
|
|
27
28
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react/jsx-runtime"),r=({month:e,year:a})=>t.jsxs("span",{className:"Bear-Calendar__header-label bear-font-semibold bear-text-sm bear-select-none bear-text-zinc-900 dark:bear-text-zinc-100",children:[e," ",a]});exports.DefaultHeaderLabel=r;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
const
|
|
1
|
+
import { jsxs as r } from "react/jsx-runtime";
|
|
2
|
+
const l = ({ month: e, year: a }) => /* @__PURE__ */ r("span", { className: "Bear-Calendar__header-label bear-font-semibold bear-text-sm bear-select-none bear-text-zinc-900 dark:bear-text-zinc-100", children: [
|
|
3
3
|
e,
|
|
4
4
|
" ",
|
|
5
|
-
|
|
5
|
+
a
|
|
6
6
|
] });
|
|
7
7
|
export {
|
|
8
|
-
|
|
8
|
+
l as DefaultHeaderLabel
|
|
9
9
|
};
|
|
@@ -1,186 +1,186 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import { useMemo as
|
|
3
|
-
import { cn as
|
|
4
|
-
import { useBearStyles as
|
|
5
|
-
import { ChevronsLeftIcon as
|
|
6
|
-
import { DEFAULT_WEEKDAYS as
|
|
7
|
-
import { isSameDay as
|
|
8
|
-
import { DefaultHeaderLabel as
|
|
9
|
-
const
|
|
1
|
+
import { jsxs as s, Fragment as me, jsx as t } from "react/jsx-runtime";
|
|
2
|
+
import { useMemo as D, useCallback as l } from "react";
|
|
3
|
+
import { cn as E } from "../../utils/cn.js";
|
|
4
|
+
import { useBearStyles as ke } from "../../hooks/useBearStyles.js";
|
|
5
|
+
import { ChevronsLeftIcon as ye, ChevronLeftIcon as xe, ChevronRightIcon as ve, ChevronsRightIcon as pe } from "../Icon/index.js";
|
|
6
|
+
import { DEFAULT_WEEKDAYS as ze, NUMBER as i, CALENDAR_DROPDOWN_Z_INDEX as Ce, MONTHS as _e, WEEKEND_LABELS as ge } from "./Calendar.const.js";
|
|
7
|
+
import { isSameDay as v, buildCalendarGrid as Ne, reorderWeekdays as fe, isWeekendDay as Be } from "./Calendar.utils.js";
|
|
8
|
+
import { DefaultHeaderLabel as we } from "./Calendar.helpers.js";
|
|
9
|
+
const je = (Z) => {
|
|
10
10
|
const {
|
|
11
|
-
viewDate:
|
|
12
|
-
value:
|
|
11
|
+
viewDate: O,
|
|
12
|
+
value: P = null,
|
|
13
13
|
onSelect: p,
|
|
14
|
-
onViewChange:
|
|
14
|
+
onViewChange: n,
|
|
15
15
|
minDate: z,
|
|
16
|
-
maxDate:
|
|
17
|
-
disabledDates:
|
|
18
|
-
highlightedDates:
|
|
19
|
-
weekdayLabels:
|
|
20
|
-
firstDayOfWeek: k =
|
|
16
|
+
maxDate: C,
|
|
17
|
+
disabledDates: L = [],
|
|
18
|
+
highlightedDates: W = [],
|
|
19
|
+
weekdayLabels: S = ze,
|
|
20
|
+
firstDayOfWeek: k = i.ZERO,
|
|
21
21
|
showWeekNumbers: De = !1,
|
|
22
22
|
slots: e = {},
|
|
23
|
-
clearable:
|
|
24
|
-
onClear:
|
|
25
|
-
showTodayButton:
|
|
26
|
-
onToday:
|
|
27
|
-
bis:
|
|
28
|
-
style:
|
|
29
|
-
inline:
|
|
30
|
-
className:
|
|
31
|
-
} =
|
|
32
|
-
|
|
33
|
-
}, [
|
|
34
|
-
|
|
35
|
-
}, [
|
|
36
|
-
|
|
37
|
-
}, [
|
|
38
|
-
|
|
39
|
-
}, [
|
|
40
|
-
onPrevYear:
|
|
41
|
-
onPrevMonth:
|
|
42
|
-
onNextMonth:
|
|
43
|
-
onNextYear:
|
|
44
|
-
},
|
|
45
|
-
(
|
|
46
|
-
[z,
|
|
47
|
-
),
|
|
48
|
-
(
|
|
49
|
-
[
|
|
50
|
-
), te =
|
|
51
|
-
() =>
|
|
52
|
-
[
|
|
53
|
-
),
|
|
54
|
-
() =>
|
|
55
|
-
[
|
|
56
|
-
),
|
|
23
|
+
clearable: X = !0,
|
|
24
|
+
onClear: h,
|
|
25
|
+
showTodayButton: q = !0,
|
|
26
|
+
onToday: u,
|
|
27
|
+
bis: J,
|
|
28
|
+
style: Q,
|
|
29
|
+
inline: Y = !1,
|
|
30
|
+
className: $
|
|
31
|
+
} = Z, b = O.getFullYear(), M = ke(J, Q), d = O.getMonth(), V = D(() => /* @__PURE__ */ new Date(), []), _ = l(() => {
|
|
32
|
+
n == null || n(new Date(b - i.ONE, d, i.ONE));
|
|
33
|
+
}, [b, d, n]), T = l(() => {
|
|
34
|
+
n == null || n(new Date(b, d - i.ONE, i.ONE));
|
|
35
|
+
}, [b, d, n]), j = l(() => {
|
|
36
|
+
n == null || n(new Date(b, d + i.ONE, i.ONE));
|
|
37
|
+
}, [b, d, n]), g = l(() => {
|
|
38
|
+
n == null || n(new Date(b + i.ONE, d, i.ONE));
|
|
39
|
+
}, [b, d, n]), N = T, f = j, ee = {
|
|
40
|
+
onPrevYear: _,
|
|
41
|
+
onPrevMonth: T,
|
|
42
|
+
onNextMonth: j,
|
|
43
|
+
onNextYear: g
|
|
44
|
+
}, re = l(
|
|
45
|
+
(a) => z && a < z || C && a > C ? !0 : L.some((r) => v(r, a)),
|
|
46
|
+
[z, C, L]
|
|
47
|
+
), ae = l(
|
|
48
|
+
(a) => W.some((r) => v(r, a)),
|
|
49
|
+
[W]
|
|
50
|
+
), te = D(
|
|
51
|
+
() => Ne(b, d, k),
|
|
52
|
+
[b, d, k]
|
|
53
|
+
), I = D(
|
|
54
|
+
() => fe(S, k),
|
|
55
|
+
[S, k]
|
|
56
|
+
), R = _e[d], B = P != null, ne = Y ? "Bear-Calendar Bear-Calendar--inline bear-block bear-w-full bear-bg-white dark:bear-bg-zinc-900 bear-rounded-xl bear-shadow-none bear-border bear-border-zinc-200 dark:bear-border-zinc-700 bear-p-4 bear-text-zinc-900 dark:bear-text-zinc-100" : "Bear-Calendar Bear-Calendar--dropdown bear-mt-2 bear-bg-white dark:bear-bg-zinc-900 bear-rounded-xl bear-shadow-xl bear-border bear-border-zinc-200 dark:bear-border-zinc-700 bear-p-4 bear-w-80 bear-text-zinc-900 dark:bear-text-zinc-100", A = Y ? void 0 : { zIndex: Ce }, oe = () => {
|
|
57
57
|
if (e.header)
|
|
58
|
-
return e.header({ month:
|
|
59
|
-
const
|
|
60
|
-
return /* @__PURE__ */
|
|
61
|
-
/* @__PURE__ */
|
|
62
|
-
|
|
58
|
+
return e.header({ month: R, year: b, onPrev: N, onNext: f, nav: ee });
|
|
59
|
+
const a = e.navPrevYear, r = e.navPrev, o = e.navNext, c = e.navNextYear, y = e.headerLabel || we;
|
|
60
|
+
return /* @__PURE__ */ s("div", { className: "Bear-Calendar__header bear-flex bear-items-center bear-justify-between bear-gap-1 bear-mb-4", children: [
|
|
61
|
+
/* @__PURE__ */ s("div", { className: "Bear-Calendar__nav-left bear-flex bear-items-center bear-gap-0.5", children: [
|
|
62
|
+
a ? a({ onClick: _ }) : /* @__PURE__ */ t(
|
|
63
63
|
"button",
|
|
64
64
|
{
|
|
65
65
|
type: "button",
|
|
66
|
-
onClick:
|
|
67
|
-
className: "p-1.5 rounded text-zinc-500 dark:text-zinc-400 hover:bg-zinc-100 dark:hover:bg-zinc-800 transition-colors",
|
|
66
|
+
onClick: _,
|
|
67
|
+
className: "Bear-Calendar__nav-btn bear-p-1.5 bear-rounded bear-text-zinc-500 dark:bear-text-zinc-400 hover:bear-bg-zinc-100 dark:hover:bear-bg-zinc-800 bear-transition-colors",
|
|
68
68
|
"aria-label": "Previous year",
|
|
69
|
-
children: /* @__PURE__ */
|
|
69
|
+
children: /* @__PURE__ */ t(ye, { size: 16 })
|
|
70
70
|
}
|
|
71
71
|
),
|
|
72
|
-
|
|
72
|
+
r ? r({ onClick: N }) : /* @__PURE__ */ t(
|
|
73
73
|
"button",
|
|
74
74
|
{
|
|
75
75
|
type: "button",
|
|
76
|
-
onClick:
|
|
77
|
-
className: "p-1.5 rounded text-zinc-500 dark:text-zinc-400 hover:bg-zinc-100 dark:hover:bg-zinc-800 transition-colors",
|
|
76
|
+
onClick: N,
|
|
77
|
+
className: "Bear-Calendar__nav-btn bear-p-1.5 bear-rounded bear-text-zinc-500 dark:bear-text-zinc-400 hover:bear-bg-zinc-100 dark:hover:bear-bg-zinc-800 bear-transition-colors",
|
|
78
78
|
"aria-label": "Previous month",
|
|
79
|
-
children: /* @__PURE__ */
|
|
79
|
+
children: /* @__PURE__ */ t(xe, { size: 16 })
|
|
80
80
|
}
|
|
81
81
|
)
|
|
82
82
|
] }),
|
|
83
|
-
|
|
84
|
-
/* @__PURE__ */
|
|
85
|
-
|
|
83
|
+
y({ month: R, year: b }),
|
|
84
|
+
/* @__PURE__ */ s("div", { className: "Bear-Calendar__nav-right bear-flex bear-items-center bear-gap-0.5", children: [
|
|
85
|
+
o ? o({ onClick: f }) : /* @__PURE__ */ t(
|
|
86
86
|
"button",
|
|
87
87
|
{
|
|
88
88
|
type: "button",
|
|
89
|
-
onClick:
|
|
90
|
-
className: "p-1.5 rounded text-zinc-500 dark:text-zinc-400 hover:bg-zinc-100 dark:hover:bg-zinc-800 transition-colors",
|
|
89
|
+
onClick: f,
|
|
90
|
+
className: "Bear-Calendar__nav-btn bear-p-1.5 bear-rounded bear-text-zinc-500 dark:bear-text-zinc-400 hover:bear-bg-zinc-100 dark:hover:bear-bg-zinc-800 bear-transition-colors",
|
|
91
91
|
"aria-label": "Next month",
|
|
92
|
-
children: /* @__PURE__ */
|
|
92
|
+
children: /* @__PURE__ */ t(ve, { size: 16 })
|
|
93
93
|
}
|
|
94
94
|
),
|
|
95
|
-
|
|
95
|
+
c ? c({ onClick: g }) : /* @__PURE__ */ t(
|
|
96
96
|
"button",
|
|
97
97
|
{
|
|
98
98
|
type: "button",
|
|
99
|
-
onClick:
|
|
100
|
-
className: "p-1.5 rounded text-zinc-500 dark:text-zinc-400 hover:bg-zinc-100 dark:hover:bg-zinc-800 transition-colors",
|
|
99
|
+
onClick: g,
|
|
100
|
+
className: "Bear-Calendar__nav-btn bear-p-1.5 bear-rounded bear-text-zinc-500 dark:bear-text-zinc-400 hover:bear-bg-zinc-100 dark:hover:bear-bg-zinc-800 bear-transition-colors",
|
|
101
101
|
"aria-label": "Next year",
|
|
102
|
-
children: /* @__PURE__ */
|
|
102
|
+
children: /* @__PURE__ */ t(pe, { size: 16 })
|
|
103
103
|
}
|
|
104
104
|
)
|
|
105
105
|
] })
|
|
106
106
|
] });
|
|
107
|
-
},
|
|
108
|
-
if (e.weekdays) return e.weekdays({ days:
|
|
109
|
-
const
|
|
110
|
-
return /* @__PURE__ */
|
|
111
|
-
(
|
|
107
|
+
}, be = () => {
|
|
108
|
+
if (e.weekdays) return e.weekdays({ days: I });
|
|
109
|
+
const a = e.weekday;
|
|
110
|
+
return /* @__PURE__ */ t("div", { className: "Bear-Calendar__weekdays bear-grid bear-grid-cols-7 bear-gap-1 bear-mb-2", children: I.map(
|
|
111
|
+
(r) => a ? /* @__PURE__ */ t("div", { children: a({ label: r }) }, r) : /* @__PURE__ */ t(
|
|
112
112
|
"div",
|
|
113
113
|
{
|
|
114
|
-
className:
|
|
115
|
-
"text-center text-xs font-medium uppercase",
|
|
116
|
-
|
|
114
|
+
className: E(
|
|
115
|
+
"Bear-Calendar__weekday bear-text-center bear-text-xs bear-font-medium bear-uppercase bear-text-zinc-500 dark:bear-text-zinc-400",
|
|
116
|
+
ge.includes(r) && "bear-text-red-500"
|
|
117
117
|
),
|
|
118
|
-
children:
|
|
118
|
+
children: r
|
|
119
119
|
},
|
|
120
|
-
|
|
120
|
+
r
|
|
121
121
|
)
|
|
122
122
|
) });
|
|
123
|
-
},
|
|
124
|
-
const { date:
|
|
125
|
-
|
|
126
|
-
},
|
|
127
|
-
date:
|
|
128
|
-
day:
|
|
129
|
-
isCurrentMonth:
|
|
130
|
-
isSelected:
|
|
131
|
-
isToday:
|
|
132
|
-
isDisabled:
|
|
133
|
-
isHighlighted:
|
|
134
|
-
onClick:
|
|
123
|
+
}, de = (a, r) => {
|
|
124
|
+
const { date: o, isCurrentMonth: c } = a, y = o.getDate(), le = o.getDay(), he = Be(le), m = v(P, o), w = v(V, o), x = re(o), K = ae(o), U = () => {
|
|
125
|
+
x || p == null || p(o);
|
|
126
|
+
}, ue = {
|
|
127
|
+
date: o,
|
|
128
|
+
day: y,
|
|
129
|
+
isCurrentMonth: c,
|
|
130
|
+
isSelected: m,
|
|
131
|
+
isToday: w,
|
|
132
|
+
isDisabled: x,
|
|
133
|
+
isHighlighted: K,
|
|
134
|
+
onClick: U
|
|
135
135
|
};
|
|
136
|
-
return e.day ? /* @__PURE__ */
|
|
136
|
+
return e.day ? /* @__PURE__ */ t("span", { children: e.day(ue) }, r) : /* @__PURE__ */ t(
|
|
137
137
|
"button",
|
|
138
138
|
{
|
|
139
139
|
type: "button",
|
|
140
|
-
onClick:
|
|
141
|
-
disabled:
|
|
142
|
-
className:
|
|
143
|
-
"w-8 h-8 rounded-full text-sm font-medium transition-colors flex items-center justify-center",
|
|
144
|
-
|
|
145
|
-
!
|
|
146
|
-
!
|
|
147
|
-
|
|
148
|
-
|
|
140
|
+
onClick: U,
|
|
141
|
+
disabled: x,
|
|
142
|
+
className: E(
|
|
143
|
+
"Bear-Calendar__day bear-w-8 bear-h-8 bear-rounded-full bear-text-sm bear-font-medium bear-transition-colors bear-flex bear-items-center bear-justify-center",
|
|
144
|
+
m && "Bear-Calendar__day--selected bear-bg-pink-500 bear-text-white hover:bear-bg-pink-600",
|
|
145
|
+
!m && w && "Bear-Calendar__day--today bear-ring-2 bear-ring-pink-500/50 bear-bg-transparent",
|
|
146
|
+
!m && !w && (c ? he ? "Bear-Calendar__day--weekend bear-text-red-500 dark:bear-text-red-400 hover:bear-bg-zinc-100 dark:hover:bear-bg-zinc-800" : "bear-text-zinc-700 dark:bear-text-zinc-300 hover:bear-bg-zinc-100 dark:hover:bear-bg-zinc-800" : "Bear-Calendar__day--other bear-text-zinc-500 dark:bear-text-zinc-600 hover:bear-bg-zinc-50 dark:hover:bear-bg-zinc-800/50"),
|
|
147
|
+
K && !m && "Bear-Calendar__day--highlighted bear-bg-pink-500/15",
|
|
148
|
+
x && "Bear-Calendar__day--disabled bear-opacity-40 bear-cursor-not-allowed"
|
|
149
149
|
),
|
|
150
|
-
children:
|
|
150
|
+
children: y
|
|
151
151
|
},
|
|
152
|
-
|
|
152
|
+
r
|
|
153
153
|
);
|
|
154
154
|
}, ie = () => {
|
|
155
|
-
const
|
|
156
|
-
return e.daysGrid ? e.daysGrid({ children:
|
|
157
|
-
},
|
|
158
|
-
const
|
|
159
|
-
if (!
|
|
155
|
+
const a = te.map((r, o) => de(r, o));
|
|
156
|
+
return e.daysGrid ? e.daysGrid({ children: a, className: "Bear-Calendar__grid bear-grid bear-grid-cols-7 bear-gap-1" }) : /* @__PURE__ */ t("div", { className: "Bear-Calendar__grid bear-grid bear-grid-cols-7 bear-gap-1", children: a });
|
|
157
|
+
}, ce = () => {
|
|
158
|
+
const a = X && B && h, r = q && u;
|
|
159
|
+
if (!a && !r) return null;
|
|
160
160
|
if (e.footer) {
|
|
161
|
-
const
|
|
161
|
+
const o = e.clearButton, c = e.todayButton;
|
|
162
162
|
return e.footer({
|
|
163
|
-
children: /* @__PURE__ */
|
|
164
|
-
|
|
165
|
-
|
|
163
|
+
children: /* @__PURE__ */ s("div", { className: "Bear-Calendar__footer bear-flex bear-justify-between bear-gap-2 bear-mt-4 bear-pt-3 bear-border-t bear-border-zinc-200 dark:bear-border-zinc-700", children: [
|
|
164
|
+
a && o ? o({ onClick: h, hasSelection: B }) : a ? /* @__PURE__ */ t("button", { type: "button", onClick: h, className: "Bear-Calendar__clear-btn bear-text-sm bear-text-zinc-500 dark:bear-text-zinc-400 hover:bear-text-zinc-700 dark:hover:bear-text-zinc-200 bear-transition-colors", children: "Clear" }) : /* @__PURE__ */ t("span", {}),
|
|
165
|
+
r && c ? c({ onClick: u }) : r ? /* @__PURE__ */ t("button", { type: "button", onClick: u, className: "Bear-Calendar__today-btn bear-text-sm bear-text-pink-600 dark:bear-text-pink-400 hover:bear-text-pink-700 dark:hover:bear-text-pink-300 bear-font-medium", children: "Today" }) : null
|
|
166
166
|
] })
|
|
167
167
|
});
|
|
168
168
|
}
|
|
169
|
-
return e.clearButton && e.todayButton ? /* @__PURE__ */
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
] }) : /* @__PURE__ */
|
|
173
|
-
|
|
174
|
-
|
|
169
|
+
return e.clearButton && e.todayButton ? /* @__PURE__ */ s("div", { className: "Bear-Calendar__footer bear-flex bear-justify-between bear-gap-2 bear-mt-4 bear-pt-3 bear-border-t bear-border-zinc-200 dark:bear-border-zinc-700", children: [
|
|
170
|
+
a && e.clearButton({ onClick: h, hasSelection: B }),
|
|
171
|
+
r && e.todayButton({ onClick: u })
|
|
172
|
+
] }) : /* @__PURE__ */ s("div", { className: "Bear-Calendar__footer bear-flex bear-justify-between bear-gap-2 bear-mt-4 bear-pt-3 bear-border-t bear-border-zinc-200 dark:bear-border-zinc-700", children: [
|
|
173
|
+
a ? /* @__PURE__ */ t("button", { type: "button", onClick: h, className: "Bear-Calendar__clear-btn bear-text-sm bear-text-zinc-500 dark:bear-text-zinc-400 hover:bear-text-zinc-700 dark:hover:bear-text-zinc-200 bear-transition-colors", children: "Clear" }) : /* @__PURE__ */ t("span", {}),
|
|
174
|
+
r ? /* @__PURE__ */ t("button", { type: "button", onClick: u, className: "Bear-Calendar__today-btn bear-text-sm bear-text-pink-400 hover:bear-text-pink-300 bear-font-medium bear-transition-colors", children: "Today" }) : null
|
|
175
175
|
] });
|
|
176
|
-
},
|
|
177
|
-
re(),
|
|
176
|
+
}, H = /* @__PURE__ */ s(me, { children: [
|
|
178
177
|
oe(),
|
|
178
|
+
be(),
|
|
179
179
|
ie(),
|
|
180
|
-
|
|
181
|
-
] }),
|
|
182
|
-
return e.root ? e.root({ children:
|
|
180
|
+
ce()
|
|
181
|
+
] }), F = E(ne, $), G = Object.keys(M).length ? M : void 0, se = A ? { ...G, ...A } : G;
|
|
182
|
+
return e.root ? e.root({ children: H, className: F }) : /* @__PURE__ */ t("div", { className: F, style: se, children: H });
|
|
183
183
|
};
|
|
184
184
|
export {
|
|
185
|
-
|
|
185
|
+
je as Calendar
|
|
186
186
|
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react/jsx-runtime"),c=require("react"),G=require("react-dom"),w=require("../../utils/cn.cjs"),k=require("./Cascader.const.cjs"),J=({options:u,selectedPath:d,expandedPath:i,onSelect:y,onExpand:m,expandTrigger:C,level:b})=>{const h=t=>{var l;y(t,b),(l=t.children)!=null&&l.length&&m(t,b)},v=t=>{var l;C==="hover"&&((l=t.children)!=null&&l.length)&&m(t,b)};return a.jsx("div",{className:"Bear-Cascader__panel bear-min-w-[180px] bear-max-h-[280px] bear-overflow-y-auto bear-border-r bear-border-zinc-200 dark:bear-border-zinc-700 last:bear-border-r-0",children:u.map(t=>{const l=d[b]===t.value,g=i[b]===t.value,B=t.children&&t.children.length>0;return a.jsxs("button",{type:"button",disabled:t.disabled,onClick:()=>h(t),onMouseEnter:()=>v(t),className:w.cn("Bear-Cascader__option bear-w-full bear-flex bear-items-center bear-justify-between bear-px-3 bear-py-2 bear-text-sm bear-text-left bear-transition-colors",l&&"Bear-Cascader__option--selected bear-bg-pink-500/20 bear-text-pink-600 dark:bear-text-pink-400",g&&!l&&"Bear-Cascader__option--expanded bear-bg-gray-100 dark:bear-bg-zinc-700",!l&&!g&&"bear-text-gray-700 dark:bear-text-zinc-300 hover:bear-bg-gray-100 dark:hover:bear-bg-zinc-700",t.disabled&&"Bear-Cascader__option--disabled bear-opacity-50 bear-cursor-not-allowed"),children:[a.jsxs("span",{className:"bear-flex bear-items-center bear-gap-2",children:[t.icon&&a.jsx("span",{className:"Bear-Cascader__option-icon",children:t.icon}),a.jsx("span",{className:"Bear-Cascader__option-label",children:t.label})]}),B&&a.jsx("svg",{className:"Bear-Cascader__arrow bear-w-4 bear-h-4 bear-text-gray-500 dark:bear-text-zinc-500",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:a.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M9 5l7 7-7 7"})})]},t.value)})})},K=({options:u,value:d=[],onChange:i,placeholder:y,label:m,helperText:C,error:b,disabled:h=!1,loading:v=!1,clearable:t=!0,size:l="md",variant:g="default",expandTrigger:B="click",showFullPath:R=!0,pathSeparator:L=k.CASCADER_PATH_SEPARATOR,changeOnSelect:O=!1,className:q,testId:W,translations:P,icon:X})=>{const[p,E]=c.useState(!1),[_,N]=c.useState([]),[D,Z]=c.useState({top:0,left:0}),M=c.useRef(null),S=c.useRef(null),A=c.useMemo(()=>({...k.CASCADER_DEFAULT_TRANSLATIONS,...P}),[P]);c.useEffect(()=>{if(p&&S.current){const e=S.current.getBoundingClientRect(),s=window.scrollY||document.documentElement.scrollTop,r=window.scrollX||document.documentElement.scrollLeft;Z({top:e.bottom+s+8,left:e.left+r})}},[p]),c.useEffect(()=>{const e=s=>{var n,o;const r=s.target;(n=M.current)!=null&&n.contains(r)||(o=r.closest)!=null&&o.call(r,"[data-bear-cascader-dropdown]")||E(!1)};return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[]),c.useEffect(()=>{d.length>0&&N(d.slice(0,-1))},[d]);const H=c.useCallback((e,s)=>{for(const r of e){if(r.value===s)return r;if(r.children){const n=H(r.children,s);if(n)return n}}},[]),T=c.useMemo(()=>{var s;if(d.length===0)return"";const e=d.map((r,n)=>{let o=u;for(let f=0;f<n;f++){const x=o.find(z=>z.value===d[f]);x!=null&&x.children&&(o=x.children)}return o.find(f=>f.value===r)}).filter(Boolean);return R?e.map(r=>r.label).join(L):((s=e[e.length-1])==null?void 0:s.label)||""},[d,u,R,L]),I=c.useMemo(()=>{const e=[u];let s=u;for(const r of _){const n=s.find(o=>o.value===r);if(n!=null&&n.children)e.push(n.children),s=n.children;else break}return e},[u,_]),U=c.useCallback((e,s)=>{var n,o;const r=[..._.slice(0,s),e.value];if(!((n=e.children)!=null&&n.length)||O){const f=[];let x=u;for(const z of r){const j=x.find(F=>F.value===z);j&&(f.push(j),j.children&&(x=j.children))}i==null||i(r,f),(o=e.children)!=null&&o.length||E(!1)}},[_,u,i,O]),V=c.useCallback((e,s)=>{N(r=>[...r.slice(0,s),e.value])},[]),Y=c.useCallback(e=>{e.stopPropagation(),i==null||i([],[]),N([])},[i]);return a.jsxs("div",{ref:M,className:w.cn("Bear-Cascader bear-relative",q),"data-testid":W,children:[m&&a.jsx("label",{className:"Bear-Cascader__label bear-block bear-text-sm bear-font-medium bear-text-zinc-700 dark:bear-text-zinc-300 bear-mb-1.5",children:m}),a.jsxs("button",{ref:S,type:"button",onClick:()=>!h&&E(!p),disabled:h,className:w.cn("Bear-Cascader__trigger bear-w-full bear-flex bear-items-center bear-justify-between bear-rounded-lg bear-border bear-text-left bear-transition-colors",k.CASCADER_SIZE_CLASSES[l],k.CASCADER_VARIANT_CLASSES[g],b?"bear-border-red-500":"focus:bear-border-pink-500",h&&"bear-opacity-50 bear-cursor-not-allowed",T?"bear-text-gray-900 dark:bear-text-white":"bear-text-gray-500 dark:bear-text-zinc-500"),children:[a.jsx("span",{className:"Bear-Cascader__value bear-truncate bear-flex-1",children:v?A.loading:T||y||A.placeholder}),a.jsxs("span",{className:"Bear-Cascader__icons bear-flex bear-items-center bear-gap-1",children:[t&&d.length>0&&!h&&a.jsx("span",{onClick:Y,className:"Bear-Cascader__clear bear-p-0.5 bear-rounded hover:bear-bg-gray-200 dark:hover:bear-bg-zinc-700 bear-cursor-pointer",children:a.jsx("svg",{className:"bear-w-4 bear-h-4 bear-text-gray-500 dark:bear-text-zinc-400",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:a.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"})})}),X??a.jsx("svg",{className:w.cn("Bear-Cascader__chevron bear-w-4 bear-h-4 bear-text-gray-500 dark:bear-text-zinc-400 bear-transition-transform",p&&"bear-rotate-180"),fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:a.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M19 9l-7 7-7-7"})})]})]}),b&&a.jsx("p",{className:"Bear-Cascader__error bear-mt-1 bear-text-xs bear-text-red-400",children:b}),C&&!b&&a.jsx("p",{className:"Bear-Cascader__helper bear-mt-1 bear-text-xs bear-text-zinc-500 dark:bear-text-zinc-400",children:C}),p&&typeof document<"u"&&G.createPortal(a.jsxs("div",{"data-bear-cascader-dropdown":!0,className:"Bear-Cascader__dropdown bear-fixed bear-bg-white dark:bear-bg-zinc-800 bear-border bear-border-zinc-200 dark:bear-border-zinc-700 bear-rounded-lg bear-shadow-xl bear-flex bear-overflow-hidden",style:{top:D.top,left:D.left,zIndex:k.CASCADER_DROPDOWN_Z_INDEX},children:[I.map((e,s)=>a.jsx(J,{options:e,selectedPath:d,expandedPath:_,onSelect:U,onExpand:V,expandTrigger:B,level:s},s)),I.every(e=>e.length===0)&&a.jsx("div",{className:"Bear-Cascader__empty bear-px-4 bear-py-3 bear-text-sm bear-text-gray-500 dark:bear-text-zinc-500",children:A.noOptions})]}),document.body)]})};exports.Cascader=K;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e={placeholder:"Select option",noOptions:"No options available",loading:"Loading...",clear:"Clear"},r={sm:"bear-py-1.5 bear-px-3 bear-text-sm",md:"bear-py-2 bear-px-4 bear-text-sm",lg:"bear-py-2.5 bear-px-5 bear-text-base"},A={default:"bear-bg-white dark:bear-bg-zinc-800 bear-border-zinc-300 dark:bear-border-zinc-600",filled:"bear-bg-zinc-100 dark:bear-bg-zinc-700 bear-border-transparent",outline:"bear-bg-transparent bear-border-zinc-300 dark:bear-border-zinc-500"},a=9999,b=" / ";exports.CASCADER_DEFAULT_TRANSLATIONS=e;exports.CASCADER_DROPDOWN_Z_INDEX=a;exports.CASCADER_PATH_SEPARATOR=b;exports.CASCADER_SIZE_CLASSES=r;exports.CASCADER_VARIANT_CLASSES=A;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { CascaderTranslations } from './Cascader.types';
|
|
2
|
+
/**
|
|
3
|
+
* Default translations for Cascader
|
|
4
|
+
*/
|
|
5
|
+
export declare const CASCADER_DEFAULT_TRANSLATIONS: CascaderTranslations;
|
|
6
|
+
/**
|
|
7
|
+
* Size classes for Cascader trigger
|
|
8
|
+
*/
|
|
9
|
+
export declare const CASCADER_SIZE_CLASSES: {
|
|
10
|
+
readonly sm: "bear-py-1.5 bear-px-3 bear-text-sm";
|
|
11
|
+
readonly md: "bear-py-2 bear-px-4 bear-text-sm";
|
|
12
|
+
readonly lg: "bear-py-2.5 bear-px-5 bear-text-base";
|
|
13
|
+
};
|
|
14
|
+
/**
|
|
15
|
+
* Variant classes for Cascader trigger (light/dark)
|
|
16
|
+
*/
|
|
17
|
+
export declare const CASCADER_VARIANT_CLASSES: {
|
|
18
|
+
readonly default: "bear-bg-white dark:bear-bg-zinc-800 bear-border-zinc-300 dark:bear-border-zinc-600";
|
|
19
|
+
readonly filled: "bear-bg-zinc-100 dark:bear-bg-zinc-700 bear-border-transparent";
|
|
20
|
+
readonly outline: "bear-bg-transparent bear-border-zinc-300 dark:bear-border-zinc-500";
|
|
21
|
+
};
|
|
22
|
+
/**
|
|
23
|
+
* Z-index for dropdown
|
|
24
|
+
*/
|
|
25
|
+
export declare const CASCADER_DROPDOWN_Z_INDEX = 9999;
|
|
26
|
+
/**
|
|
27
|
+
* Default path separator
|
|
28
|
+
*/
|
|
29
|
+
export declare const CASCADER_PATH_SEPARATOR = " / ";
|
|
30
|
+
/**
|
|
31
|
+
* Animation duration in ms
|
|
32
|
+
*/
|
|
33
|
+
export declare const CASCADER_ANIMATION_DURATION = 200;
|