@stackshift-ui/calendar 1.0.0-beta.4 → 1.0.0-beta.7
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/package.json +7 -7
- package/src/calendar.tsx +8 -8
- package/dist/calendar.d.ts +0 -14
- package/dist/calendar.js +0 -2
- package/dist/calendar.mjs +0 -2
- package/dist/chunk-3EYN2AKU.mjs +0 -1
- package/dist/chunk-QUOK23A4.mjs +0 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.js +0 -2
- package/dist/index.mjs +0 -2
- package/dist/setupTests.d.ts +0 -2
- package/dist/setupTests.js +0 -51
- package/dist/setupTests.mjs +0 -51
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@stackshift-ui/calendar",
|
|
3
3
|
"description": "A date field component that allows users to enter and edit date.",
|
|
4
|
-
"version": "1.0.0-beta.
|
|
4
|
+
"version": "1.0.0-beta.7",
|
|
5
5
|
"private": false,
|
|
6
6
|
"sideEffects": false,
|
|
7
7
|
"main": "./dist/index.js",
|
|
@@ -31,20 +31,20 @@
|
|
|
31
31
|
"typescript": "^5.6.2",
|
|
32
32
|
"vite-tsconfig-paths": "^5.0.1",
|
|
33
33
|
"vitest": "^2.1.1",
|
|
34
|
-
"@stackshift-ui/
|
|
35
|
-
"@stackshift-ui/
|
|
34
|
+
"@stackshift-ui/typescript-config": "6.0.10",
|
|
35
|
+
"@stackshift-ui/eslint-config": "6.0.10"
|
|
36
36
|
},
|
|
37
37
|
"dependencies": {
|
|
38
38
|
"classnames": "^2.5.1",
|
|
39
39
|
"date-fns": "^4.1.0",
|
|
40
40
|
"lucide-react": "^0.468.0",
|
|
41
41
|
"react-day-picker": "^9.7.0",
|
|
42
|
-
"@stackshift-ui/
|
|
43
|
-
"@stackshift-ui/system": "
|
|
44
|
-
"@stackshift-ui/
|
|
42
|
+
"@stackshift-ui/scripts": "7.0.0-beta.3",
|
|
43
|
+
"@stackshift-ui/system": "7.0.0-beta.4",
|
|
44
|
+
"@stackshift-ui/button": "7.0.0-beta.6"
|
|
45
45
|
},
|
|
46
46
|
"peerDependencies": {
|
|
47
|
-
"@stackshift-ui/system": ">=
|
|
47
|
+
"@stackshift-ui/system": ">=7.0.0-beta.4",
|
|
48
48
|
"@types/react": "16.8 - 19",
|
|
49
49
|
"next": "10 - 14",
|
|
50
50
|
"react": "16.8 - 19",
|
package/src/calendar.tsx
CHANGED
|
@@ -30,7 +30,7 @@ function Calendar({
|
|
|
30
30
|
as={DayPicker}
|
|
31
31
|
showOutsideDays={showOutsideDays}
|
|
32
32
|
className={cn(
|
|
33
|
-
"bg-background group/calendar p-3 [--cell-size
|
|
33
|
+
"bg-background group/calendar p-3 [--cell-size:theme(spacing.8)] [[data-slot=card-content]_&]:bg-transparent [[data-slot=popover-content]_&]:bg-transparent",
|
|
34
34
|
String.raw`rtl:**:[.rdp-button\_next>svg]:rotate-180`,
|
|
35
35
|
String.raw`rtl:**:[.rdp-button\_previous>svg]:rotate-180`,
|
|
36
36
|
className,
|
|
@@ -50,20 +50,20 @@ function Calendar({
|
|
|
50
50
|
),
|
|
51
51
|
button_previous: cn(
|
|
52
52
|
buttonVariants({ variant: buttonVariant }),
|
|
53
|
-
"size-
|
|
53
|
+
"size-[--cell-size] aria-disabled:opacity-50 p-0 select-none",
|
|
54
54
|
defaultClassNames.button_previous,
|
|
55
55
|
),
|
|
56
56
|
button_next: cn(
|
|
57
57
|
buttonVariants({ variant: buttonVariant }),
|
|
58
|
-
"size-
|
|
58
|
+
"size-[--cell-size] aria-disabled:opacity-50 p-0 select-none",
|
|
59
59
|
defaultClassNames.button_next,
|
|
60
60
|
),
|
|
61
61
|
month_caption: cn(
|
|
62
|
-
"flex items-center justify-center h-
|
|
62
|
+
"flex items-center justify-center h-[--cell-size] w-full px-[--cell-size]",
|
|
63
63
|
defaultClassNames.month_caption,
|
|
64
64
|
),
|
|
65
65
|
dropdowns: cn(
|
|
66
|
-
"w-full flex items-center text-sm font-medium justify-center h-
|
|
66
|
+
"w-full flex items-center text-sm font-medium justify-center h-[--cell-size] gap-1.5",
|
|
67
67
|
defaultClassNames.dropdowns,
|
|
68
68
|
),
|
|
69
69
|
dropdown_root: cn(
|
|
@@ -85,7 +85,7 @@ function Calendar({
|
|
|
85
85
|
defaultClassNames.weekday,
|
|
86
86
|
),
|
|
87
87
|
week: cn("flex w-full mt-2", defaultClassNames.week),
|
|
88
|
-
week_number_header: cn("select-none w-
|
|
88
|
+
week_number_header: cn("select-none w-[--cell-size]", defaultClassNames.week_number_header),
|
|
89
89
|
week_number: cn(
|
|
90
90
|
"text-[0.8rem] select-none text-muted-foreground",
|
|
91
91
|
defaultClassNames.week_number,
|
|
@@ -142,7 +142,7 @@ function Calendar({
|
|
|
142
142
|
WeekNumber: ({ children, ...props }: { children: React.ReactNode }) => {
|
|
143
143
|
return (
|
|
144
144
|
<td {...props}>
|
|
145
|
-
<div className="flex size-
|
|
145
|
+
<div className="flex size-[--cell-size] items-center justify-center text-center">
|
|
146
146
|
{children}
|
|
147
147
|
</div>
|
|
148
148
|
</td>
|
|
@@ -187,7 +187,7 @@ function CalendarDayButton({
|
|
|
187
187
|
data-range-end={modifiers.range_end}
|
|
188
188
|
data-range-middle={modifiers.range_middle}
|
|
189
189
|
className={cn(
|
|
190
|
-
"data-[selected-single=true]:bg-primary data-[selected-single=true]:text-primary-foreground data-[range-middle=true]:bg-accent data-[range-middle=true]:text-accent-foreground data-[range-start=true]:bg-primary data-[range-start=true]:text-primary-foreground data-[range-end=true]:bg-primary data-[range-end=true]:text-primary-foreground group-data-[focused=true]/day:border-ring group-data-[focused=true]/day:ring-ring/50 dark:hover:text-accent-foreground flex aspect-square size-auto w-full min-w-
|
|
190
|
+
"data-[selected-single=true]:bg-primary data-[selected-single=true]:text-primary-foreground data-[range-middle=true]:bg-accent data-[range-middle=true]:text-accent-foreground data-[range-start=true]:bg-primary data-[range-start=true]:text-primary-foreground data-[range-end=true]:bg-primary data-[range-end=true]:text-primary-foreground group-data-[focused=true]/day:border-ring group-data-[focused=true]/day:ring-ring/50 dark:hover:text-accent-foreground flex aspect-square size-auto w-full min-w-[--cell-size] flex-col gap-1 leading-none font-normal group-data-[focused=true]/day:relative group-data-[focused=true]/day:z-10 group-data-[focused=true]/day:ring-[3px] data-[range-end=true]:rounded-md data-[range-end=true]:rounded-r-md data-[range-middle=true]:rounded-none data-[range-start=true]:rounded-md data-[range-start=true]:rounded-l-md [&>span]:text-xs [&>span]:opacity-70",
|
|
191
191
|
defaultClassNames.day,
|
|
192
192
|
className,
|
|
193
193
|
)}
|
package/dist/calendar.d.ts
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import * as React from "react";
|
|
2
|
-
import { DayButton, DayPicker } from "react-day-picker";
|
|
3
|
-
import { Button } from "@stackshift-ui/button";
|
|
4
|
-
declare function Calendar({ className, classNames, showOutsideDays, captionLayout, buttonVariant, formatters, components, ...props }: React.ComponentProps<typeof DayPicker> & {
|
|
5
|
-
buttonVariant?: React.ComponentProps<typeof Button>["variant"];
|
|
6
|
-
}): import("react/jsx-runtime").JSX.Element;
|
|
7
|
-
declare namespace Calendar {
|
|
8
|
-
var displayName: string;
|
|
9
|
-
}
|
|
10
|
-
declare function CalendarDayButton({ className, day, modifiers, ...props }: React.ComponentProps<typeof DayButton>): import("react/jsx-runtime").JSX.Element;
|
|
11
|
-
declare namespace CalendarDayButton {
|
|
12
|
-
var displayName: string;
|
|
13
|
-
}
|
|
14
|
-
export { Calendar, CalendarDayButton };
|
package/dist/calendar.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
"use strict";var N=Object.create;var y=Object.defineProperty;var k=Object.getOwnPropertyDescriptor;var D=Object.getOwnPropertyNames;var R=Object.getPrototypeOf,B=Object.prototype.hasOwnProperty;var S=(n,r)=>{for(var a in r)y(n,a,{get:r[a],enumerable:!0})},w=(n,r,a,l)=>{if(r&&typeof r=="object"||typeof r=="function")for(let o of D(r))!B.call(n,o)&&o!==a&&y(n,o,{get:()=>r[o],enumerable:!(l=k(r,o))||l.enumerable});return n};var L=(n,r,a)=>(a=n!=null?N(R(n)):{},w(r||!n||!n.__esModule?y(a,"default",{value:n,enumerable:!0}):a,n)),P=n=>w(y({},"__esModule",{value:!0}),n);var I={};S(I,{Calendar:()=>z,CalendarDayButton:()=>h});module.exports=P(I);var c=require("lucide-react"),x=L(require("react")),m=require("react-day-picker"),g=require("@stackshift-ui/button"),e=require("@stackshift-ui/system"),s=require("react/jsx-runtime"),_="Calendar",v="CalendarDayButton";function z({className:n,classNames:r,showOutsideDays:a=!0,captionLayout:l="label",buttonVariant:o="ghost",formatters:b,components:f,...p}){let{[_]:C=e.DefaultComponent}=(0,e.useStackShiftUIComponents)(),t=(0,m.getDefaultClassNames)();return(0,s.jsx)(C,{as:m.DayPicker,showOutsideDays:a,className:(0,e.cn)("bg-background group/calendar p-3 [--cell-size:--spacing(8)] [[data-slot=card-content]_&]:bg-transparent [[data-slot=popover-content]_&]:bg-transparent",String.raw`rtl:**:[.rdp-button\_next>svg]:rotate-180`,String.raw`rtl:**:[.rdp-button\_previous>svg]:rotate-180`,n),captionLayout:l,formatters:{formatMonthDropdown:d=>d.toLocaleString("default",{month:"short"}),...b},classNames:{root:(0,e.cn)("w-fit",t.root),months:(0,e.cn)("flex gap-4 flex-col md:flex-row relative",t.months),month:(0,e.cn)("flex flex-col w-full gap-4",t.month),nav:(0,e.cn)("flex items-center gap-1 w-full absolute top-0 inset-x-0 justify-between",t.nav),button_previous:(0,e.cn)((0,g.buttonVariants)({variant:o}),"size-(--cell-size) aria-disabled:opacity-50 p-0 select-none",t.button_previous),button_next:(0,e.cn)((0,g.buttonVariants)({variant:o}),"size-(--cell-size) aria-disabled:opacity-50 p-0 select-none",t.button_next),month_caption:(0,e.cn)("flex items-center justify-center h-(--cell-size) w-full px-(--cell-size)",t.month_caption),dropdowns:(0,e.cn)("w-full flex items-center text-sm font-medium justify-center h-(--cell-size) gap-1.5",t.dropdowns),dropdown_root:(0,e.cn)("relative has-focus:border-ring border border-input shadow-xs has-focus:ring-ring/50 has-focus:ring-[3px] rounded-md",t.dropdown_root),dropdown:(0,e.cn)("absolute inset-0 opacity-0",t.dropdown),caption_label:(0,e.cn)("select-none font-medium",l==="label"?"text-sm":"rounded-md pl-2 pr-1 flex items-center gap-1 text-sm h-8 [&>svg]:text-muted-foreground [&>svg]:size-3.5",t.caption_label),table:"w-full border-collapse",weekdays:(0,e.cn)("flex",t.weekdays),weekday:(0,e.cn)("text-muted-foreground rounded-md flex-1 font-normal text-[0.8rem] select-none",t.weekday),week:(0,e.cn)("flex w-full mt-2",t.week),week_number_header:(0,e.cn)("select-none w-(--cell-size)",t.week_number_header),week_number:(0,e.cn)("text-[0.8rem] select-none text-muted-foreground",t.week_number),day:(0,e.cn)("relative w-full h-full p-0 text-center [&:first-child[data-selected=true]_button]:rounded-l-md [&:last-child[data-selected=true]_button]:rounded-r-md group/day aspect-square select-none",t.day),range_start:(0,e.cn)("rounded-l-md bg-accent",t.range_start),range_middle:(0,e.cn)("rounded-none",t.range_middle),range_end:(0,e.cn)("rounded-r-md bg-accent",t.range_end),today:(0,e.cn)("bg-accent text-accent-foreground rounded-md data-[selected=true]:rounded-none",t.today),outside:(0,e.cn)("text-muted-foreground aria-selected:text-muted-foreground",t.outside),disabled:(0,e.cn)("text-muted-foreground opacity-50",t.disabled),hidden:(0,e.cn)("invisible",t.hidden),...r},components:{Root:({className:d,rootRef:u,...i})=>(0,s.jsx)("div",{"data-slot":"calendar",ref:u,className:(0,e.cn)(d),...i}),Chevron:({className:d,orientation:u,...i})=>u==="left"?(0,s.jsx)(c.ChevronLeftIcon,{className:(0,e.cn)("size-4",d),...i}):u==="right"?(0,s.jsx)(c.ChevronRightIcon,{className:(0,e.cn)("size-4",d),...i}):(0,s.jsx)(c.ChevronDownIcon,{className:(0,e.cn)("size-4",d),...i}),DayButton:h,WeekNumber:({children:d,...u})=>(0,s.jsx)("td",{...u,children:(0,s.jsx)("div",{className:"flex size-(--cell-size) items-center justify-center text-center",children:d})}),...f},...p})}z.displayName=_;function h({className:n,day:r,modifiers:a,...l}){let{[v]:o=e.DefaultComponent}=(0,e.useStackShiftUIComponents)(),b=(0,m.getDefaultClassNames)(),f=x.useRef(null);return x.useEffect(()=>{var p;a.focused&&((p=f.current)==null||p.focus())},[a.focused]),(0,s.jsx)(o,{as:g.Button,ref:f,variant:"ghost",size:"icon","data-day":r.date.toLocaleDateString(),"data-selected-single":a.selected&&!a.range_start&&!a.range_end&&!a.range_middle,"data-range-start":a.range_start,"data-range-end":a.range_end,"data-range-middle":a.range_middle,className:(0,e.cn)("data-[selected-single=true]:bg-primary data-[selected-single=true]:text-primary-foreground data-[range-middle=true]:bg-accent data-[range-middle=true]:text-accent-foreground data-[range-start=true]:bg-primary data-[range-start=true]:text-primary-foreground data-[range-end=true]:bg-primary data-[range-end=true]:text-primary-foreground group-data-[focused=true]/day:border-ring group-data-[focused=true]/day:ring-ring/50 dark:hover:text-accent-foreground flex aspect-square size-auto w-full min-w-(--cell-size) flex-col gap-1 leading-none font-normal group-data-[focused=true]/day:relative group-data-[focused=true]/day:z-10 group-data-[focused=true]/day:ring-[3px] data-[range-end=true]:rounded-md data-[range-end=true]:rounded-r-md data-[range-middle=true]:rounded-none data-[range-start=true]:rounded-md data-[range-start=true]:rounded-l-md [&>span]:text-xs [&>span]:opacity-70",b.day,n),...l})}h.displayName=v;0&&(module.exports={Calendar,CalendarDayButton});
|
package/dist/calendar.mjs
DELETED
package/dist/chunk-3EYN2AKU.mjs
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var g=Object.create;var f=Object.defineProperty;var h=Object.getOwnPropertyDescriptor;var i=Object.getOwnPropertyNames;var j=Object.getPrototypeOf,k=Object.prototype.hasOwnProperty;var m=(a=>typeof require!="undefined"?require:typeof Proxy!="undefined"?new Proxy(a,{get:(b,c)=>(typeof require!="undefined"?require:b)[c]}):a)(function(a){if(typeof require!="undefined")return require.apply(this,arguments);throw Error('Dynamic require of "'+a+'" is not supported')});var n=(a,b)=>()=>(b||a((b={exports:{}}).exports,b),b.exports);var l=(a,b,c,e)=>{if(b&&typeof b=="object"||typeof b=="function")for(let d of i(b))!k.call(a,d)&&d!==c&&f(a,d,{get:()=>b[d],enumerable:!(e=h(b,d))||e.enumerable});return a};var o=(a,b,c)=>(c=a!=null?g(j(a)):{},l(b||!a||!a.__esModule?f(c,"default",{value:a,enumerable:!0}):c,a));export{m as a,n as b,o as c};
|
package/dist/chunk-QUOK23A4.mjs
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{ChevronDownIcon as z,ChevronLeftIcon as C,ChevronRightIcon as N}from"lucide-react";import*as i from"react";import{DayPicker as k,getDefaultClassNames as y}from"react-day-picker";import{Button as D,buttonVariants as p}from"@stackshift-ui/button";import{cn as e,DefaultComponent as x,useStackShiftUIComponents as b}from"@stackshift-ui/system";import{jsx as r}from"react/jsx-runtime";var h="Calendar",w="CalendarDayButton";function R({className:g,classNames:m,showOutsideDays:a=!0,captionLayout:s="label",buttonVariant:l="ghost",formatters:f,components:u,...c}){let{[h]:v=x}=b(),t=y();return r(v,{as:k,showOutsideDays:a,className:e("bg-background group/calendar p-3 [--cell-size:--spacing(8)] [[data-slot=card-content]_&]:bg-transparent [[data-slot=popover-content]_&]:bg-transparent",String.raw`rtl:**:[.rdp-button\_next>svg]:rotate-180`,String.raw`rtl:**:[.rdp-button\_previous>svg]:rotate-180`,g),captionLayout:s,formatters:{formatMonthDropdown:n=>n.toLocaleString("default",{month:"short"}),...f},classNames:{root:e("w-fit",t.root),months:e("flex gap-4 flex-col md:flex-row relative",t.months),month:e("flex flex-col w-full gap-4",t.month),nav:e("flex items-center gap-1 w-full absolute top-0 inset-x-0 justify-between",t.nav),button_previous:e(p({variant:l}),"size-(--cell-size) aria-disabled:opacity-50 p-0 select-none",t.button_previous),button_next:e(p({variant:l}),"size-(--cell-size) aria-disabled:opacity-50 p-0 select-none",t.button_next),month_caption:e("flex items-center justify-center h-(--cell-size) w-full px-(--cell-size)",t.month_caption),dropdowns:e("w-full flex items-center text-sm font-medium justify-center h-(--cell-size) gap-1.5",t.dropdowns),dropdown_root:e("relative has-focus:border-ring border border-input shadow-xs has-focus:ring-ring/50 has-focus:ring-[3px] rounded-md",t.dropdown_root),dropdown:e("absolute inset-0 opacity-0",t.dropdown),caption_label:e("select-none font-medium",s==="label"?"text-sm":"rounded-md pl-2 pr-1 flex items-center gap-1 text-sm h-8 [&>svg]:text-muted-foreground [&>svg]:size-3.5",t.caption_label),table:"w-full border-collapse",weekdays:e("flex",t.weekdays),weekday:e("text-muted-foreground rounded-md flex-1 font-normal text-[0.8rem] select-none",t.weekday),week:e("flex w-full mt-2",t.week),week_number_header:e("select-none w-(--cell-size)",t.week_number_header),week_number:e("text-[0.8rem] select-none text-muted-foreground",t.week_number),day:e("relative w-full h-full p-0 text-center [&:first-child[data-selected=true]_button]:rounded-l-md [&:last-child[data-selected=true]_button]:rounded-r-md group/day aspect-square select-none",t.day),range_start:e("rounded-l-md bg-accent",t.range_start),range_middle:e("rounded-none",t.range_middle),range_end:e("rounded-r-md bg-accent",t.range_end),today:e("bg-accent text-accent-foreground rounded-md data-[selected=true]:rounded-none",t.today),outside:e("text-muted-foreground aria-selected:text-muted-foreground",t.outside),disabled:e("text-muted-foreground opacity-50",t.disabled),hidden:e("invisible",t.hidden),...m},components:{Root:({className:n,rootRef:o,...d})=>r("div",{"data-slot":"calendar",ref:o,className:e(n),...d}),Chevron:({className:n,orientation:o,...d})=>o==="left"?r(C,{className:e("size-4",n),...d}):o==="right"?r(N,{className:e("size-4",n),...d}):r(z,{className:e("size-4",n),...d}),DayButton:_,WeekNumber:({children:n,...o})=>r("td",{...o,children:r("div",{className:"flex size-(--cell-size) items-center justify-center text-center",children:n})}),...u},...c})}R.displayName=h;function _({className:g,day:m,modifiers:a,...s}){let{[w]:l=x}=b(),f=y(),u=i.useRef(null);return i.useEffect(()=>{var c;a.focused&&((c=u.current)==null||c.focus())},[a.focused]),r(l,{as:D,ref:u,variant:"ghost",size:"icon","data-day":m.date.toLocaleDateString(),"data-selected-single":a.selected&&!a.range_start&&!a.range_end&&!a.range_middle,"data-range-start":a.range_start,"data-range-end":a.range_end,"data-range-middle":a.range_middle,className:e("data-[selected-single=true]:bg-primary data-[selected-single=true]:text-primary-foreground data-[range-middle=true]:bg-accent data-[range-middle=true]:text-accent-foreground data-[range-start=true]:bg-primary data-[range-start=true]:text-primary-foreground data-[range-end=true]:bg-primary data-[range-end=true]:text-primary-foreground group-data-[focused=true]/day:border-ring group-data-[focused=true]/day:ring-ring/50 dark:hover:text-accent-foreground flex aspect-square size-auto w-full min-w-(--cell-size) flex-col gap-1 leading-none font-normal group-data-[focused=true]/day:relative group-data-[focused=true]/day:z-10 group-data-[focused=true]/day:ring-[3px] data-[range-end=true]:rounded-md data-[range-end=true]:rounded-r-md data-[range-middle=true]:rounded-none data-[range-start=true]:rounded-md data-[range-start=true]:rounded-l-md [&>span]:text-xs [&>span]:opacity-70",f.day,g),...s})}_.displayName=w;export{R as a,_ as b};
|
package/dist/index.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "./calendar";
|
package/dist/index.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
"use strict";var N=Object.create;var y=Object.defineProperty;var k=Object.getOwnPropertyDescriptor;var D=Object.getOwnPropertyNames;var R=Object.getPrototypeOf,B=Object.prototype.hasOwnProperty;var S=(r,n)=>{for(var a in n)y(r,a,{get:n[a],enumerable:!0})},w=(r,n,a,l)=>{if(n&&typeof n=="object"||typeof n=="function")for(let o of D(n))!B.call(r,o)&&o!==a&&y(r,o,{get:()=>n[o],enumerable:!(l=k(n,o))||l.enumerable});return r};var L=(r,n,a)=>(a=r!=null?N(R(r)):{},w(n||!r||!r.__esModule?y(a,"default",{value:r,enumerable:!0}):a,r)),P=r=>w(y({},"__esModule",{value:!0}),r);var I={};S(I,{Calendar:()=>z,CalendarDayButton:()=>h});module.exports=P(I);var c=require("lucide-react"),x=L(require("react")),g=require("react-day-picker"),m=require("@stackshift-ui/button"),e=require("@stackshift-ui/system"),s=require("react/jsx-runtime"),_="Calendar",v="CalendarDayButton";function z({className:r,classNames:n,showOutsideDays:a=!0,captionLayout:l="label",buttonVariant:o="ghost",formatters:b,components:f,...p}){let{[_]:C=e.DefaultComponent}=(0,e.useStackShiftUIComponents)(),t=(0,g.getDefaultClassNames)();return(0,s.jsx)(C,{as:g.DayPicker,showOutsideDays:a,className:(0,e.cn)("bg-background group/calendar p-3 [--cell-size:--spacing(8)] [[data-slot=card-content]_&]:bg-transparent [[data-slot=popover-content]_&]:bg-transparent",String.raw`rtl:**:[.rdp-button\_next>svg]:rotate-180`,String.raw`rtl:**:[.rdp-button\_previous>svg]:rotate-180`,r),captionLayout:l,formatters:{formatMonthDropdown:d=>d.toLocaleString("default",{month:"short"}),...b},classNames:{root:(0,e.cn)("w-fit",t.root),months:(0,e.cn)("flex gap-4 flex-col md:flex-row relative",t.months),month:(0,e.cn)("flex flex-col w-full gap-4",t.month),nav:(0,e.cn)("flex items-center gap-1 w-full absolute top-0 inset-x-0 justify-between",t.nav),button_previous:(0,e.cn)((0,m.buttonVariants)({variant:o}),"size-(--cell-size) aria-disabled:opacity-50 p-0 select-none",t.button_previous),button_next:(0,e.cn)((0,m.buttonVariants)({variant:o}),"size-(--cell-size) aria-disabled:opacity-50 p-0 select-none",t.button_next),month_caption:(0,e.cn)("flex items-center justify-center h-(--cell-size) w-full px-(--cell-size)",t.month_caption),dropdowns:(0,e.cn)("w-full flex items-center text-sm font-medium justify-center h-(--cell-size) gap-1.5",t.dropdowns),dropdown_root:(0,e.cn)("relative has-focus:border-ring border border-input shadow-xs has-focus:ring-ring/50 has-focus:ring-[3px] rounded-md",t.dropdown_root),dropdown:(0,e.cn)("absolute inset-0 opacity-0",t.dropdown),caption_label:(0,e.cn)("select-none font-medium",l==="label"?"text-sm":"rounded-md pl-2 pr-1 flex items-center gap-1 text-sm h-8 [&>svg]:text-muted-foreground [&>svg]:size-3.5",t.caption_label),table:"w-full border-collapse",weekdays:(0,e.cn)("flex",t.weekdays),weekday:(0,e.cn)("text-muted-foreground rounded-md flex-1 font-normal text-[0.8rem] select-none",t.weekday),week:(0,e.cn)("flex w-full mt-2",t.week),week_number_header:(0,e.cn)("select-none w-(--cell-size)",t.week_number_header),week_number:(0,e.cn)("text-[0.8rem] select-none text-muted-foreground",t.week_number),day:(0,e.cn)("relative w-full h-full p-0 text-center [&:first-child[data-selected=true]_button]:rounded-l-md [&:last-child[data-selected=true]_button]:rounded-r-md group/day aspect-square select-none",t.day),range_start:(0,e.cn)("rounded-l-md bg-accent",t.range_start),range_middle:(0,e.cn)("rounded-none",t.range_middle),range_end:(0,e.cn)("rounded-r-md bg-accent",t.range_end),today:(0,e.cn)("bg-accent text-accent-foreground rounded-md data-[selected=true]:rounded-none",t.today),outside:(0,e.cn)("text-muted-foreground aria-selected:text-muted-foreground",t.outside),disabled:(0,e.cn)("text-muted-foreground opacity-50",t.disabled),hidden:(0,e.cn)("invisible",t.hidden),...n},components:{Root:({className:d,rootRef:u,...i})=>(0,s.jsx)("div",{"data-slot":"calendar",ref:u,className:(0,e.cn)(d),...i}),Chevron:({className:d,orientation:u,...i})=>u==="left"?(0,s.jsx)(c.ChevronLeftIcon,{className:(0,e.cn)("size-4",d),...i}):u==="right"?(0,s.jsx)(c.ChevronRightIcon,{className:(0,e.cn)("size-4",d),...i}):(0,s.jsx)(c.ChevronDownIcon,{className:(0,e.cn)("size-4",d),...i}),DayButton:h,WeekNumber:({children:d,...u})=>(0,s.jsx)("td",{...u,children:(0,s.jsx)("div",{className:"flex size-(--cell-size) items-center justify-center text-center",children:d})}),...f},...p})}z.displayName=_;function h({className:r,day:n,modifiers:a,...l}){let{[v]:o=e.DefaultComponent}=(0,e.useStackShiftUIComponents)(),b=(0,g.getDefaultClassNames)(),f=x.useRef(null);return x.useEffect(()=>{var p;a.focused&&((p=f.current)==null||p.focus())},[a.focused]),(0,s.jsx)(o,{as:m.Button,ref:f,variant:"ghost",size:"icon","data-day":n.date.toLocaleDateString(),"data-selected-single":a.selected&&!a.range_start&&!a.range_end&&!a.range_middle,"data-range-start":a.range_start,"data-range-end":a.range_end,"data-range-middle":a.range_middle,className:(0,e.cn)("data-[selected-single=true]:bg-primary data-[selected-single=true]:text-primary-foreground data-[range-middle=true]:bg-accent data-[range-middle=true]:text-accent-foreground data-[range-start=true]:bg-primary data-[range-start=true]:text-primary-foreground data-[range-end=true]:bg-primary data-[range-end=true]:text-primary-foreground group-data-[focused=true]/day:border-ring group-data-[focused=true]/day:ring-ring/50 dark:hover:text-accent-foreground flex aspect-square size-auto w-full min-w-(--cell-size) flex-col gap-1 leading-none font-normal group-data-[focused=true]/day:relative group-data-[focused=true]/day:z-10 group-data-[focused=true]/day:ring-[3px] data-[range-end=true]:rounded-md data-[range-end=true]:rounded-r-md data-[range-middle=true]:rounded-none data-[range-start=true]:rounded-md data-[range-start=true]:rounded-l-md [&>span]:text-xs [&>span]:opacity-70",b.day,r),...l})}h.displayName=v;0&&(module.exports={Calendar,CalendarDayButton});
|
package/dist/index.mjs
DELETED
package/dist/setupTests.d.ts
DELETED