@xjur-ui/react 2.2.0 → 2.2.2
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/CHANGELOG.md +16 -0
- package/dist/{chunk-DT44JTXB.js → chunk-4M3WR2KJ.js} +2 -2
- package/dist/{chunk-DT44JTXB.js.map → chunk-4M3WR2KJ.js.map} +1 -1
- package/dist/{chunk-7HG6Y3VV.js → chunk-BYXTOSM6.js} +2 -2
- package/dist/{chunk-7HG6Y3VV.js.map → chunk-BYXTOSM6.js.map} +1 -1
- package/dist/chunk-DTNZXDCY.js +2 -0
- package/dist/chunk-DTNZXDCY.js.map +1 -0
- package/dist/{chunk-4PTFZTVU.js → chunk-HLWHETF5.js} +2 -2
- package/dist/{chunk-4PTFZTVU.js.map → chunk-HLWHETF5.js.map} +1 -1
- package/dist/{chunk-G6NSC3FL.js → chunk-MTIWFWRN.js} +2 -2
- package/dist/{chunk-G6NSC3FL.js.map → chunk-MTIWFWRN.js.map} +1 -1
- package/dist/{chunk-ASZAHSU5.js → chunk-SLMHDBWO.js} +2 -2
- package/dist/{chunk-ASZAHSU5.js.map → chunk-SLMHDBWO.js.map} +1 -1
- package/dist/{chunk-3H75F4Y2.js → chunk-TQWBQ452.js} +2 -2
- package/dist/chunk-TQWBQ452.js.map +1 -0
- package/dist/{chunk-MQ7YTZBI.js → chunk-TTKENFBF.js} +2 -2
- package/dist/{chunk-MQ7YTZBI.js.map → chunk-TTKENFBF.js.map} +1 -1
- package/dist/components/accordion.d.ts +54 -0
- package/dist/components/accordion.js +2 -0
- package/dist/components/accordion.js.map +1 -0
- package/dist/components/badge.d.ts +1 -1
- package/dist/components/controls/date-picker.d.ts +1 -1
- package/dist/components/controls/date-picker.js +1 -1
- package/dist/components/controls/date-picker.js.map +1 -1
- package/dist/components/controls/input.js +1 -1
- package/dist/components/controls/rating.d.ts +137 -0
- package/dist/components/controls/rating.js +2 -0
- package/dist/components/controls/rating.js.map +1 -0
- package/dist/components/controls/rich-editor.js +1 -1
- package/dist/components/controls/select.d.ts +1 -3
- package/dist/components/controls/select.js +1 -1
- package/dist/components/controls/slider.d.ts +172 -0
- package/dist/components/controls/slider.js +2 -0
- package/dist/components/controls/slider.js.map +1 -0
- package/dist/components/custom/pessoa/index.js +1 -1
- package/dist/components/drag-and-drop/index.js +1 -1
- package/dist/components/full-calendar/calendar-cell.js +1 -1
- package/dist/components/full-calendar/calendar-day-view.js +1 -1
- package/dist/components/full-calendar/calendar-month-view.js +1 -1
- package/dist/components/full-calendar/calendar-toggle-view.js +1 -1
- package/dist/components/full-calendar/calendar-view-renderer.js +1 -1
- package/dist/components/full-calendar/calendar-week-view.js +1 -1
- package/dist/components/full-calendar/index.js +1 -1
- package/dist/components/horizontal-scroll.js +1 -1
- package/dist/components/horizontal-scroll.js.map +1 -1
- package/dist/components/selection-bar.d.ts +1 -1
- package/dist/components/status.d.ts +1 -1
- package/dist/components/steps/index.js +1 -1
- package/dist/components/table/index.js +1 -1
- package/dist/components/toast.d.ts +27 -0
- package/dist/components/toast.js +2 -0
- package/dist/components/toast.js.map +1 -0
- package/dist/components/typography.d.ts +1 -1
- package/dist/components/upload.js +1 -1
- package/dist/components/upload.js.map +1 -1
- package/dist/index.css +1 -1
- package/dist/index.css.map +1 -1
- package/package.json +19 -13
- package/dist/chunk-2JU3PFV2.js +0 -2
- package/dist/chunk-2JU3PFV2.js.map +0 -1
- package/dist/chunk-3H75F4Y2.js.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,21 @@
|
|
|
1
1
|
# @xjur-ui/react
|
|
2
2
|
|
|
3
|
+
## 2.2.2
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 92538cf: fix: improve filter components layout and remove deprecated SelectLabel/InputLabel exports
|
|
8
|
+
- Updated filter variant components (Input, Select, DatePicker) to use inline-flex with w-auto for better layout
|
|
9
|
+
- Removed SelectLabel and InputLabel exports as they're now integrated with floating labels
|
|
10
|
+
- Updated Storybook documentation to reflect component API changes
|
|
11
|
+
- Improved horizontal scroll component spacing for filter usage
|
|
12
|
+
|
|
13
|
+
## 2.2.1
|
|
14
|
+
|
|
15
|
+
### Patch Changes
|
|
16
|
+
|
|
17
|
+
- f9c52ad: Criação dos componentes de toast, slider, accordion e rating
|
|
18
|
+
|
|
3
19
|
## 2.2.0
|
|
4
20
|
|
|
5
21
|
### Minor Changes
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {a}from'./chunk-ZVVPUP7V.js';import {a as a$1}from'./chunk-MZSV4LNY.js';import {a as a$3}from'./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import {a}from'./chunk-ZVVPUP7V.js';import {a as a$1}from'./chunk-MZSV4LNY.js';import {a as a$3}from'./chunk-TTKENFBF.js';import {p,q,l}from'./chunk-EXC2XOL6.js';import {b}from'./chunk-SXGSWVMZ.js';import {a as a$2}from'./chunk-EIG6CBTQ.js';import {useMemo,useCallback}from'react';import {cx}from'@xjur-ui/util';import {jsx,jsxs}from'react/jsx-runtime';function I(){let{selectedDate:t,events:o}=b(),d=useMemo(()=>p(t),[t]),g=useCallback((e,a)=>q(o,e,a),[o]),C=useCallback((e,a$1)=>({...e,date:a(e.date,a$1)}),[]);return jsx("div",{className:"bg-layer-2-hover rounded-small-1x border-border-layer-2 scrollbar-hide h-full w-full border",children:jsxs("div",{className:"flex flex-1 flex-col",children:[jsx("div",{className:cx("bg-layer-2-hover sticky top-0 grid [grid-template-columns:64px_repeat(7,1fr)]","[&>*]:border-border-layer-2","[&>*]:border-l"),"data-slot":"week-header",children:d.map((e,a)=>jsx(a$1,{date:e.date,style:{gridColumnStart:a+2}},e.date.getDay()))}),jsx("div",{className:"overflow-hidden",children:l.map(({hour:e,label:a})=>jsxs("div",{className:"flex items-start",children:[jsx("div",{className:"px-small flex h-full w-[64px] items-start justify-end",children:jsx(a$2,{size:"sm-1x",variant:"label",weight:"medium",children:a})}),jsx("div",{className:cx("grid flex-1 grid-cols-7","[&>*]:border-border-layer-2","[&>*]:border-t","[&>*]:border-l"),children:d.map(l=>jsx(a$3,{cell:C(l,e),events:g(l.date,e)},l.date.toISOString()))})]},e))})]})})}export{I as a};//# sourceMappingURL=chunk-4M3WR2KJ.js.map
|
|
2
|
+
//# sourceMappingURL=chunk-4M3WR2KJ.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/full-calendar/calendar-week-view.tsx"],"names":["CalendarWeekView","selectedDate","events","useFullCalendar","monthWeekDaysCells","useMemo","getWeekDaysInMonth","getEventsForDayAndHourCallback","useCallback","date","hour","getEventsForDayAndHour","cellsWithHour","cell","setHours","jsx","jsxs","cx","index","CalendarWeekDay","WEEK_HOURS","label","Typography","CalendarCell"],"mappings":"iWAcO,SAASA,CAAAA,EAAmB,CACjC,GAAM,CAAE,aAAAC,CAAAA,CAAc,MAAA,CAAAC,CAAO,CAAA,CAAIC,CAAAA,GAE3BC,CAAAA,CAAqBC,OAAAA,CACzB,IAAMC,CAAAA,CAAmBL,CAAY,EACrC,CAACA,CAAY,CACf,CAAA,CAEMM,CAAAA,CAAiCC,YACrC,CAACC,CAAAA,CAAYC,IACJC,CAAAA,CAAuBT,CAAAA,CAAQO,EAAMC,CAAI,CAAA,CAElD,CAACR,CAAM,CACT,EAEMU,CAAAA,CAAgBJ,WAAAA,CAAY,CAACK,CAAAA,CAAqBH,GAAAA,IAC/C,CACL,GAAGG,CAAAA,CACH,KAAMC,CAAAA,CAASD,CAAAA,CAAK,KAAMH,GAAI,CAChC,GACC,EAAE,EAEL,OACEK,GAAAA,CAAC,OAAI,SAAA,CAAU,6FAAA,CACb,SAAAC,IAAAA,CAAC,KAAA,CAAA,CAAI,UAAU,sBAAA,CACb,QAAA,CAAA,CAAAD,IAAC,KAAA,CAAA,CACC,SAAA,CAAWE,GACT,+EAAA,CACA,6BAAA,CACA,gBACF,CAAA,CACA,WAAA,CAAU,cAET,QAAA,CAAAb,CAAAA,CAAmB,GAAA,CAAI,CAACS,CAAAA,CAAMK,CAAAA,GAC7BH,IAACI,GAAAA,CAAA,CACC,KAAMN,CAAAA,CAAK,IAAA,CAEX,MAAO,CAAE,eAAA,CAAiBK,EAAQ,CAAE,CAAA,CAAA,CAD/BL,EAAK,IAAA,CAAK,MAAA,EAEjB,CACD,CAAA,CACH,EAEAE,GAAAA,CAAC,KAAA,CAAA,CAAI,UAAU,iBAAA,CACZ,QAAA,CAAAK,EAAW,GAAA,CAAI,CAAC,CAAE,IAAA,CAAAV,CAAAA,CAAM,MAAAW,CAAM,CAAA,GAC7BL,KAAC,KAAA,CAAA,CAAI,SAAA,CAAU,mBACb,QAAA,CAAA,CAAAD,GAAAA,CAAC,OAAI,SAAA,CAAU,uDAAA,CACb,SAAAA,GAAAA,CAACO,GAAAA,CAAA,CAAW,IAAA,CAAK,OAAA,CAAQ,QAAQ,OAAA,CAAQ,MAAA,CAAO,SAC7C,QAAA,CAAAD,CAAAA,CACH,EACF,CAAA,CAEAN,GAAAA,CAAC,OACC,SAAA,CAAWE,EAAAA,CACT,0BACA,6BAAA,CACA,gBAAA,CACA,gBACF,CAAA,CAEC,QAAA,CAAAb,EAAmB,GAAA,CAAIS,CAAAA,EACtBE,IAACQ,GAAAA,CAAA,CACC,KAAMX,CAAAA,CAAcC,CAAAA,CAAMH,CAAI,CAAA,CAC9B,MAAA,CAAQH,EAA+BM,CAAAA,CAAK,IAAA,CAAMH,CAAI,CAAA,CAAA,CACjDG,CAAAA,CAAK,KAAK,WAAA,EACjB,CACD,CAAA,CACH,CAAA,CAAA,CAAA,CAtBqCH,CAuBvC,CACD,CAAA,CACH,CAAA,CAAA,CACF,CAAA,CACF,CAEJ","file":"chunk-
|
|
1
|
+
{"version":3,"sources":["../src/components/full-calendar/calendar-week-view.tsx"],"names":["CalendarWeekView","selectedDate","events","useFullCalendar","monthWeekDaysCells","useMemo","getWeekDaysInMonth","getEventsForDayAndHourCallback","useCallback","date","hour","getEventsForDayAndHour","cellsWithHour","cell","setHours","jsx","jsxs","cx","index","CalendarWeekDay","WEEK_HOURS","label","Typography","CalendarCell"],"mappings":"iWAcO,SAASA,CAAAA,EAAmB,CACjC,GAAM,CAAE,aAAAC,CAAAA,CAAc,MAAA,CAAAC,CAAO,CAAA,CAAIC,CAAAA,GAE3BC,CAAAA,CAAqBC,OAAAA,CACzB,IAAMC,CAAAA,CAAmBL,CAAY,EACrC,CAACA,CAAY,CACf,CAAA,CAEMM,CAAAA,CAAiCC,YACrC,CAACC,CAAAA,CAAYC,IACJC,CAAAA,CAAuBT,CAAAA,CAAQO,EAAMC,CAAI,CAAA,CAElD,CAACR,CAAM,CACT,EAEMU,CAAAA,CAAgBJ,WAAAA,CAAY,CAACK,CAAAA,CAAqBH,GAAAA,IAC/C,CACL,GAAGG,CAAAA,CACH,KAAMC,CAAAA,CAASD,CAAAA,CAAK,KAAMH,GAAI,CAChC,GACC,EAAE,EAEL,OACEK,GAAAA,CAAC,OAAI,SAAA,CAAU,6FAAA,CACb,SAAAC,IAAAA,CAAC,KAAA,CAAA,CAAI,UAAU,sBAAA,CACb,QAAA,CAAA,CAAAD,IAAC,KAAA,CAAA,CACC,SAAA,CAAWE,GACT,+EAAA,CACA,6BAAA,CACA,gBACF,CAAA,CACA,WAAA,CAAU,cAET,QAAA,CAAAb,CAAAA,CAAmB,GAAA,CAAI,CAACS,CAAAA,CAAMK,CAAAA,GAC7BH,IAACI,GAAAA,CAAA,CACC,KAAMN,CAAAA,CAAK,IAAA,CAEX,MAAO,CAAE,eAAA,CAAiBK,EAAQ,CAAE,CAAA,CAAA,CAD/BL,EAAK,IAAA,CAAK,MAAA,EAEjB,CACD,CAAA,CACH,EAEAE,GAAAA,CAAC,KAAA,CAAA,CAAI,UAAU,iBAAA,CACZ,QAAA,CAAAK,EAAW,GAAA,CAAI,CAAC,CAAE,IAAA,CAAAV,CAAAA,CAAM,MAAAW,CAAM,CAAA,GAC7BL,KAAC,KAAA,CAAA,CAAI,SAAA,CAAU,mBACb,QAAA,CAAA,CAAAD,GAAAA,CAAC,OAAI,SAAA,CAAU,uDAAA,CACb,SAAAA,GAAAA,CAACO,GAAAA,CAAA,CAAW,IAAA,CAAK,OAAA,CAAQ,QAAQ,OAAA,CAAQ,MAAA,CAAO,SAC7C,QAAA,CAAAD,CAAAA,CACH,EACF,CAAA,CAEAN,GAAAA,CAAC,OACC,SAAA,CAAWE,EAAAA,CACT,0BACA,6BAAA,CACA,gBAAA,CACA,gBACF,CAAA,CAEC,QAAA,CAAAb,EAAmB,GAAA,CAAIS,CAAAA,EACtBE,IAACQ,GAAAA,CAAA,CACC,KAAMX,CAAAA,CAAcC,CAAAA,CAAMH,CAAI,CAAA,CAC9B,MAAA,CAAQH,EAA+BM,CAAAA,CAAK,IAAA,CAAMH,CAAI,CAAA,CAAA,CACjDG,CAAAA,CAAK,KAAK,WAAA,EACjB,CACD,CAAA,CACH,CAAA,CAAA,CAAA,CAtBqCH,CAuBvC,CACD,CAAA,CACH,CAAA,CAAA,CACF,CAAA,CACF,CAEJ","file":"chunk-4M3WR2KJ.js","sourcesContent":["import { useCallback, useMemo } from 'react'\nimport { cx } from '@xjur-ui/util'\nimport { setHours } from 'date-fns'\nimport { Typography } from '../typography'\nimport {\n WEEK_HOURS,\n getWeekDaysInMonth,\n getEventsForDayAndHour\n} from './helpers/calendar'\nimport { useFullCalendar } from './calendar-root'\nimport { CalendarWeekDay } from './calendar-week-day'\nimport { CalendarCell } from './calendar-cell'\nimport type { ICalendarCell } from './types/calendar-cell'\n\nexport function CalendarWeekView() {\n const { selectedDate, events } = useFullCalendar()\n\n const monthWeekDaysCells = useMemo(\n () => getWeekDaysInMonth(selectedDate),\n [selectedDate]\n )\n\n const getEventsForDayAndHourCallback = useCallback(\n (date: Date, hour: number) => {\n return getEventsForDayAndHour(events, date, hour)\n },\n [events]\n )\n\n const cellsWithHour = useCallback((cell: ICalendarCell, hour: number) => {\n return {\n ...cell,\n date: setHours(cell.date, hour)\n }\n }, [])\n\n return (\n <div className=\"bg-layer-2-hover rounded-small-1x border-border-layer-2 scrollbar-hide h-full w-full border\">\n <div className=\"flex flex-1 flex-col\">\n <div\n className={cx(\n 'bg-layer-2-hover sticky top-0 grid [grid-template-columns:64px_repeat(7,1fr)]',\n '[&>*]:border-border-layer-2',\n '[&>*]:border-l'\n )}\n data-slot=\"week-header\"\n >\n {monthWeekDaysCells.map((cell, index) => (\n <CalendarWeekDay\n date={cell.date}\n key={cell.date.getDay()}\n style={{ gridColumnStart: index + 2 }}\n />\n ))}\n </div>\n\n <div className=\"overflow-hidden\">\n {WEEK_HOURS.map(({ hour, label }) => (\n <div className=\"flex items-start\" key={hour}>\n <div className=\"px-small flex h-full w-[64px] items-start justify-end\">\n <Typography size=\"sm-1x\" variant=\"label\" weight=\"medium\">\n {label}\n </Typography>\n </div>\n\n <div\n className={cx(\n 'grid flex-1 grid-cols-7',\n '[&>*]:border-border-layer-2',\n '[&>*]:border-t',\n '[&>*]:border-l'\n )}\n >\n {monthWeekDaysCells.map(cell => (\n <CalendarCell\n cell={cellsWithHour(cell, hour)}\n events={getEventsForDayAndHourCallback(cell.date, hour)}\n key={cell.date.toISOString()}\n />\n ))}\n </div>\n </div>\n ))}\n </div>\n </div>\n </div>\n )\n}\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {a as a$1}from'./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import {a as a$1}from'./chunk-TTKENFBF.js';import {m,n,k}from'./chunk-EXC2XOL6.js';import {b}from'./chunk-SXGSWVMZ.js';import {a}from'./chunk-EIG6CBTQ.js';import {useMemo,useCallback}from'react';import {cx}from'@xjur-ui/util';import {jsxs,jsx}from'react/jsx-runtime';function w(){let{selectedDate:a$2,events:o}=b(),p=useMemo(()=>m(a$2),[a$2]),y=useCallback(r=>n(o,r.date),[o]);return jsxs("div",{className:"rounded-small-1x scrollbar-hide border-border-layer-2 h-full w-full border",children:[jsx("div",{className:"bg-layer-2-hover h-large-4x rounded-t-small-1x sticky top-0 grid grid-cols-7","data-slot":"month-header",children:k.map(r=>jsx("div",{className:cx("p-small b border-border-layer-2 flex items-center justify-center border-r last:border-r-0"),"data-slot":"month-header-weekday",children:jsx(a,{size:"sm",variant:"label",weight:"medium",children:r})},r))}),jsx("div",{className:"grid h-full grid-cols-7 overflow-hidden","data-slot":"month-day-cells",children:p.map((r,l)=>{let b=(l+1)%7===0,h=(l+1)%7===1;return jsx("div",{className:cx("border-border-layer-2 border-t border-r",b&&"pr-small-2x border-r-0",h&&"pl-small-2x"),children:jsx(a$1,{cell:r,events:y(r)})},`${r.date.toISOString()}-${l}`)})})]})}export{w as a};//# sourceMappingURL=chunk-BYXTOSM6.js.map
|
|
2
|
+
//# sourceMappingURL=chunk-BYXTOSM6.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/full-calendar/calendar-month-view.tsx"],"names":["CalendarMonthView","selectedDate","events","useFullCalendar","monthDaysCells","useMemo","getDaysInMonth","getEventsForDayCell","useCallback","cell","getEventsForDay","jsxs","jsx","WEEKDAYS","weekday","cx","Typography","index","isLastColumn","isFirstColumn","CalendarCell"],"mappings":"2QAQO,SAASA,CAAAA,EAAoB,CAClC,GAAM,CAAE,YAAA,CAAAC,GAAAA,CAAc,MAAA,CAAAC,CAAO,CAAA,CAAIC,CAAAA,EAAgB,CAE3CC,CAAAA,CAAiBC,QACrB,IAAMC,CAAAA,CAAeL,GAAY,CAAA,CACjC,CAACA,GAAY,CACf,CAAA,CAEMM,CAAAA,CAAsBC,WAAAA,CACzBC,CAAAA,EACQC,CAAAA,CAAgBR,CAAAA,CAAQO,EAAK,IAAI,CAAA,CAE1C,CAACP,CAAM,CACT,CAAA,CAEA,OACES,IAAAA,CAAC,KAAA,CAAA,CAAI,UAAU,4EAAA,CACb,QAAA,CAAA,CAAAC,GAAAA,CAAC,KAAA,CAAA,CACC,SAAA,CAAU,8EAAA,CACV,WAAA,CAAU,cAAA,CAET,SAAAC,CAAAA,CAAS,GAAA,CAAIC,CAAAA,EACZF,GAAAA,CAAC,OACC,SAAA,CAAWG,EAAAA,CACT,2FACF,CAAA,CACA,YAAU,sBAAA,CAGV,QAAA,CAAAH,GAAAA,CAACI,CAAAA,CAAA,CAAW,IAAA,CAAK,IAAA,CAAK,OAAA,CAAQ,QAAQ,MAAA,CAAO,QAAA,CAC1C,QAAA,CAAAF,CAAAA,CACH,GAJKA,CAKP,CACD,CAAA,CACH,CAAA,CAEAF,IAAC,KAAA,CAAA,CACC,SAAA,CAAU,yCAAA,CACV,WAAA,CAAU,iBAAA,CAET,QAAA,CAAAR,CAAAA,CAAe,GAAA,CAAI,CAACK,CAAAA,CAAMQ,CAAAA,GAAU,CACnC,IAAMC,GAAgBD,CAAAA,CAAQ,CAAA,EAAK,CAAA,GAAM,CAAA,CACnCE,GAAiBF,CAAAA,CAAQ,CAAA,EAAK,CAAA,GAAM,CAAA,CAE1C,OACEL,GAAAA,CAAC,KAAA,CAAA,CACC,SAAA,CAAWG,GACT,yCAAA,CACAG,CAAAA,EAAgB,wBAAA,CAChBC,CAAAA,EAAiB,aACnB,CAAA,CAGA,QAAA,CAAAP,GAAAA,CAACQ,GAAAA,CAAA,CAAa,IAAA,CAAMX,CAAAA,CAAM,MAAA,CAAQF,CAAAA,CAAoBE,CAAI,CAAA,CAAG,CAAA,CAAA,CAFxD,CAAA,EAAGA,EAAK,IAAA,CAAK,WAAA,EAAa,CAAA,CAAA,EAAIQ,CAAK,CAAA,CAG1C,CAEJ,CAAC,CAAA,CACH,GACF,CAEJ","file":"chunk-
|
|
1
|
+
{"version":3,"sources":["../src/components/full-calendar/calendar-month-view.tsx"],"names":["CalendarMonthView","selectedDate","events","useFullCalendar","monthDaysCells","useMemo","getDaysInMonth","getEventsForDayCell","useCallback","cell","getEventsForDay","jsxs","jsx","WEEKDAYS","weekday","cx","Typography","index","isLastColumn","isFirstColumn","CalendarCell"],"mappings":"2QAQO,SAASA,CAAAA,EAAoB,CAClC,GAAM,CAAE,YAAA,CAAAC,GAAAA,CAAc,MAAA,CAAAC,CAAO,CAAA,CAAIC,CAAAA,EAAgB,CAE3CC,CAAAA,CAAiBC,QACrB,IAAMC,CAAAA,CAAeL,GAAY,CAAA,CACjC,CAACA,GAAY,CACf,CAAA,CAEMM,CAAAA,CAAsBC,WAAAA,CACzBC,CAAAA,EACQC,CAAAA,CAAgBR,CAAAA,CAAQO,EAAK,IAAI,CAAA,CAE1C,CAACP,CAAM,CACT,CAAA,CAEA,OACES,IAAAA,CAAC,KAAA,CAAA,CAAI,UAAU,4EAAA,CACb,QAAA,CAAA,CAAAC,GAAAA,CAAC,KAAA,CAAA,CACC,SAAA,CAAU,8EAAA,CACV,WAAA,CAAU,cAAA,CAET,SAAAC,CAAAA,CAAS,GAAA,CAAIC,CAAAA,EACZF,GAAAA,CAAC,OACC,SAAA,CAAWG,EAAAA,CACT,2FACF,CAAA,CACA,YAAU,sBAAA,CAGV,QAAA,CAAAH,GAAAA,CAACI,CAAAA,CAAA,CAAW,IAAA,CAAK,IAAA,CAAK,OAAA,CAAQ,QAAQ,MAAA,CAAO,QAAA,CAC1C,QAAA,CAAAF,CAAAA,CACH,GAJKA,CAKP,CACD,CAAA,CACH,CAAA,CAEAF,IAAC,KAAA,CAAA,CACC,SAAA,CAAU,yCAAA,CACV,WAAA,CAAU,iBAAA,CAET,QAAA,CAAAR,CAAAA,CAAe,GAAA,CAAI,CAACK,CAAAA,CAAMQ,CAAAA,GAAU,CACnC,IAAMC,GAAgBD,CAAAA,CAAQ,CAAA,EAAK,CAAA,GAAM,CAAA,CACnCE,GAAiBF,CAAAA,CAAQ,CAAA,EAAK,CAAA,GAAM,CAAA,CAE1C,OACEL,GAAAA,CAAC,KAAA,CAAA,CACC,SAAA,CAAWG,GACT,yCAAA,CACAG,CAAAA,EAAgB,wBAAA,CAChBC,CAAAA,EAAiB,aACnB,CAAA,CAGA,QAAA,CAAAP,GAAAA,CAACQ,GAAAA,CAAA,CAAa,IAAA,CAAMX,CAAAA,CAAM,MAAA,CAAQF,CAAAA,CAAoBE,CAAI,CAAA,CAAG,CAAA,CAAA,CAFxD,CAAA,EAAGA,EAAK,IAAA,CAAK,WAAA,EAAa,CAAA,CAAA,EAAIQ,CAAK,CAAA,CAG1C,CAEJ,CAAC,CAAA,CACH,GACF,CAEJ","file":"chunk-BYXTOSM6.js","sourcesContent":["import { useCallback, useMemo } from 'react'\nimport { cx } from '@xjur-ui/util'\nimport { Typography } from '../typography'\nimport { getDaysInMonth, getEventsForDay, WEEKDAYS } from './helpers/calendar'\nimport { useFullCalendar } from './calendar-root'\nimport { CalendarCell } from './calendar-cell'\nimport type { ICalendarCell } from './types/calendar-cell'\n\nexport function CalendarMonthView() {\n const { selectedDate, events } = useFullCalendar()\n\n const monthDaysCells = useMemo(\n () => getDaysInMonth(selectedDate),\n [selectedDate]\n )\n\n const getEventsForDayCell = useCallback(\n (cell: ICalendarCell) => {\n return getEventsForDay(events, cell.date)\n },\n [events]\n )\n\n return (\n <div className=\"rounded-small-1x scrollbar-hide border-border-layer-2 h-full w-full border\">\n <div\n className=\"bg-layer-2-hover h-large-4x rounded-t-small-1x sticky top-0 grid grid-cols-7\"\n data-slot=\"month-header\"\n >\n {WEEKDAYS.map(weekday => (\n <div\n className={cx(\n 'p-small b border-border-layer-2 flex items-center justify-center border-r last:border-r-0'\n )}\n data-slot=\"month-header-weekday\"\n key={weekday}\n >\n <Typography size=\"sm\" variant=\"label\" weight=\"medium\">\n {weekday}\n </Typography>\n </div>\n ))}\n </div>\n\n <div\n className=\"grid h-full grid-cols-7 overflow-hidden\"\n data-slot=\"month-day-cells\"\n >\n {monthDaysCells.map((cell, index) => {\n const isLastColumn = (index + 1) % 7 === 0\n const isFirstColumn = (index + 1) % 7 === 1\n\n return (\n <div\n className={cx(\n 'border-border-layer-2 border-t border-r',\n isLastColumn && 'pr-small-2x border-r-0',\n isFirstColumn && 'pl-small-2x'\n )}\n key={`${cell.date.toISOString()}-${index}`}\n >\n <CalendarCell cell={cell} events={getEventsForDayCell(cell)} />\n </div>\n )\n })}\n </div>\n </div>\n )\n}\n"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import {a as a$1}from'./chunk-JGPHBUVM.js';import {a,b}from'./chunk-2JQVYVAT.js';import {a as a$3,d,e,b as b$2,c}from'./chunk-YOLTIAFT.js';import {b as b$1}from'./chunk-DVDHTP4C.js';import {a as a$2}from'./chunk-EIG6CBTQ.js';import {tv,twMerge,twJoin}from'@xjur-ui/util';import {useMemo}from'react';import*as s from'@radix-ui/react-popover';import {jsx,jsxs}from'react/jsx-runtime';var w=tv({slots:{wrapper:"group flex flex-col gap-small-2x",trigger:["h-large-4x w-auto inline-flex cursor-pointer relative","items-center gap-small rounded-small-1x","py-small_1x-alt px-small","bg-layer-2-idle border border-border-layer-2","group-has-[div[data-slot=input-action-slot]]:rounded-r-none","transition-all duration-200"],content:["group z-1000 max-h-[var(--radix-popover-content-available-height)] max-w-[var(--radix-popover-content-available-width)] min-w-[var(--radix-popover-trigger-width)]"],icon:"size-large text-icon-neutral-3 flex items-center justify-center",slotText:"size-large flex items-center justify-center !text-size-label-md text-neutral-placeholder",caption:"!text-size-body-sm font-normal"},variants:{state:{normal:{trigger:"hover:border-border-layer-3 data-[state=open]:border-primary-idle data-[state=open]:hover:border-primary-idle"},error:{trigger:"border-danger-idle hover:border-danger-idle data-[state=open]:border-danger-idle data-[state=open]:hover:border-danger-idle",caption:"text-danger-label-idle"},disabled:{trigger:"pointer-events-none border-transparent bg-layer-2-idle"}}}}),{wrapper:S,trigger:N,icon:L,caption:O,slotText:F,content:I}=w();function J({className:t,state:e="normal",defaultOpen:o,variant:n="normal",modal:i,open:a$1,onOpenChange:p,...c}){return jsx(s.Root,{defaultOpen:o,modal:i,open:a$1,onOpenChange:p,children:jsx(a.Provider,{value:{state:e,variant:n},children:jsx("div",{className:S({className:t,state:e}),...c})})})}function _({className:t,...e}){let{state:o,variant:n}=b(),i=tv({base:["group bg-layer-2-idle"],variants:{state:{normal:["border-border-layer-2 hover:border-border-layer-3 has-[input:not(:placeholder-shown)]:border-primary-idle"],error:["border-danger-idle hover:border-danger-idle"],disabled:["border border-border-layer-2 opacity-60"]}}}),a=twMerge(N({state:o,className:t}),n==="filter"&&i({state:o,className:t}));return jsx(s.Trigger,{className:a,disabled:o==="disabled",...e})}function q({className:t,name:e,...o}){let{state:n}=b();return jsx("div",{className:L({className:t,state:n}),"data-slot":"control-slot",...o,children:jsx(b$1,{name:e})})}function B({className:t,displayValue:e="",value:o,placeholder:n,...i}){let{variant:a}=b(),p=useMemo(()=>a==="filter"?e:e||n,[e,n,a]);return jsxs("div",{className:"grid w-full items-center",children:[n&&a==="filter"&&jsx(a$1,{children:n}),n&&a==="filter"&&jsx(a$2,{className:"invisible col-start-1 row-start-1 self-center",children:n}),jsx(a$2,{className:"text-neutral-dark group-has-[div[data-slot=date-picker-left-slot]]:pl-large-1x z-10 col-start-1 row-start-1 self-center text-left",children:p}),jsx("input",{...i,"aria-readonly":true,className:twJoin("pointer-events-none",t),hidden:true,placeholder:" ",readOnly:true,value:o??""})]})}function D({className:t,value:e,placeholder:o,children:n,...i}){let{variant:a}=b(),p=useMemo(()=>a==="filter"?false:Array.isArray(e)&&e.length===0&&o,[e,o,a]),c=useMemo(()=>Array.isArray(e)&&e.length>0,[e]);return jsxs("div",{className:twMerge(t,"gap-small-1x scrollbar-hide flex w-full overflow-x-hidden","group-disabled:!pl-0"),children:[o&&a==="filter"&&jsx(a$1,{children:o}),o&&a==="filter"&&!c&&jsx(a$2,{className:"invisible",children:o}),p&&jsx(a$2,{className:"text-neutral-dark group-has-[div[data-slot=date-picker-left-slot]]:pl-large-1x",children:o}),n,jsx("input",{...i,"aria-readonly":true,className:twMerge(t,"pointer-events-none"),hidden:true,placeholder:c?"":" ",readOnly:true,value:Array.isArray(e)?e.join(","):e})]})}function E({className:t,sideOffset:e=5,side:o="bottom",align:n="start",children:i,...a}){let{state:p}=b();return jsx(s.Portal,{children:jsx(s.Content,{align:n,className:I({className:t,state:p}),side:o,sideOffset:e,...a,children:jsx(a$3,{children:i})})})}function G({className:t,...e}){let{state:o}=b();return jsx("p",{className:O({className:t,state:o}),...e})}function K({className:t,...e}){let{state:o}=b();return jsx("span",{className:F({className:t,state:o}),...e})}function Q(t){return jsx(d,{...t})}function U({className:t,...e$1}){return jsx(e,{className:twMerge(t,"cursor-pointer"),...e$1})}function W(t){return jsx(a$2,{...t})}function X(t){return jsx(b$2,{...t})}function Y(t){return jsx(c,{...t})}export{w as a,J as b,_ as c,q as d,B as e,D as f,E as g,G as h,K as i,Q as j,U as k,W as l,X as m,Y as n};//# sourceMappingURL=chunk-DTNZXDCY.js.map
|
|
2
|
+
//# sourceMappingURL=chunk-DTNZXDCY.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/controls/select.tsx"],"names":["select","tv","wrapper","trigger","icon","caption","slotText","content","SelectRoot","className","state","defaultOpen","variant","modal","open","handleOpenChange","props","jsx","FieldContext","SelectTrigger","useFieldContext","filterTrigger","mergedClassName","twMerge","SelectIcon","name","Icon","SelectValue","displayValue","value","placeholder","valueOrPlaceholder","useMemo","jsxs","FloatingLabel","Typography","twJoin","SelectMultiValue","children","shouldShowPlaceholder","hasSelectedItems","SelectContent","sideOffset","side","align","ListRoot","SelectCaption","SelectSlot","SelectOptions","ListContent","SelectOption","ListItem","SelectOptionText","SelectHeader","ListHeader","SelectHeaderTitle","ListHeaderTitle"],"mappings":"8XAmBO,IAAMA,CAAAA,CAASC,GAAG,CACvB,KAAA,CAAO,CACL,OAAA,CAAS,kCAAA,CACT,QAAS,CACP,uDAAA,CACA,yCAAA,CACA,0BAAA,CACA,+CACA,6DAAA,CACA,6BACF,EACA,OAAA,CAAS,CACP,oKACF,CAAA,CACA,IAAA,CAAM,iEAAA,CACN,QAAA,CACE,2FACF,OAAA,CAAS,gCACX,EACA,QAAA,CAAU,CACR,MAAO,CACL,MAAA,CAAQ,CACN,OAAA,CACE,+GACJ,CAAA,CACA,KAAA,CAAO,CACL,OAAA,CACE,6HAAA,CACF,QAAS,wBACX,CAAA,CACA,QAAA,CAAU,CACR,QAAS,wDACX,CACF,CACF,CACF,CAAC,EAEK,CAAE,OAAA,CAAAC,CAAAA,CAAS,OAAA,CAAAC,EAAS,IAAA,CAAAC,CAAAA,CAAM,QAAAC,CAAAA,CAAS,QAAA,CAAAC,EAAU,OAAA,CAAAC,CAAQ,CAAA,CAAIP,CAAAA,GAExD,SAASQ,CAAAA,CAAW,CACzB,SAAA,CAAAC,EACA,KAAA,CAAAC,CAAAA,CAAQ,QAAA,CACR,WAAA,CAAAC,EACA,OAAA,CAAAC,CAAAA,CAAU,SACV,KAAA,CAAAC,CAAAA,CACA,KAAAC,GAAAA,CACA,YAAA,CAAcC,CAAAA,CACd,GAAGC,CACL,CAAA,CAE4C,CAC1C,OACEC,GAAAA,CAAc,CAAA,CAAA,IAAA,CAAb,CACC,WAAA,CAAaN,CAAAA,CACb,KAAA,CAAOE,CAAAA,CACP,KAAMC,GAAAA,CACN,YAAA,CAAcC,EAEd,QAAA,CAAAE,GAAAA,CAACC,EAAa,QAAA,CAAb,CAAsB,KAAA,CAAO,CAAE,MAAAR,CAAAA,CAAO,OAAA,CAAAE,CAAQ,CAAA,CAC7C,QAAA,CAAAK,IAAC,KAAA,CAAA,CAAI,SAAA,CAAWf,CAAAA,CAAQ,CAAE,UAAAO,CAAAA,CAAW,KAAA,CAAAC,CAAM,CAAC,CAAA,CAAI,GAAGM,CAAAA,CAAO,CAAA,CAC5D,CAAA,CACF,CAEJ,CAEO,SAASG,CAAAA,CAAc,CAC5B,SAAA,CAAAV,CAAAA,CACA,GAAGO,CACL,CAAA,CAAgD,CAC9C,GAAM,CAAE,KAAA,CAAAN,CAAAA,CAAO,QAAAE,CAAQ,CAAA,CAAIQ,GAAgB,CAErCC,CAAAA,CAAgBpB,EAAAA,CAAG,CACvB,KAAM,CAAC,uBAAuB,CAAA,CAC9B,QAAA,CAAU,CACR,KAAA,CAAO,CACL,MAAA,CAAQ,CACN,2GACF,CAAA,CACA,KAAA,CAAO,CAAC,6CAA6C,CAAA,CACrD,SAAU,CAAC,yCAAyC,CACtD,CACF,CACF,CAAC,CAAA,CAEKqB,EAAkBC,OAAAA,CACtBpB,CAAAA,CAAQ,CAAE,KAAA,CAAAO,CAAAA,CAAO,SAAA,CAAAD,CAAU,CAAC,CAAA,CAC5BG,CAAAA,GAAY,UAAYS,CAAAA,CAAc,CAAE,MAAAX,CAAAA,CAAO,SAAA,CAAAD,CAAU,CAAC,CAC5D,CAAA,CAEA,OACEQ,IAAc,CAAA,CAAA,OAAA,CAAb,CACC,UAAWK,CAAAA,CACX,QAAA,CAAUZ,CAAAA,GAAU,UAAA,CACnB,GAAGM,CAAAA,CACN,CAEJ,CAEO,SAASQ,CAAAA,CAAW,CACzB,SAAA,CAAAf,CAAAA,CACA,IAAA,CAAAgB,CAAAA,CACA,GAAGT,CACL,CAAA,CAEG,CACD,GAAM,CAAE,MAAAN,CAAM,CAAA,CAAIU,CAAAA,EAAgB,CAElC,OACEH,GAAAA,CAAC,KAAA,CAAA,CACC,UAAWb,CAAAA,CAAK,CAAE,UAAAK,CAAAA,CAAW,KAAA,CAAAC,CAAM,CAAC,EACpC,WAAA,CAAU,cAAA,CACT,GAAGM,CAAAA,CAEJ,SAAAC,GAAAA,CAACS,GAAAA,CAAA,CAAK,IAAA,CAAMD,EAAM,CAAA,CACpB,CAEJ,CAEO,SAASE,CAAAA,CAAY,CAC1B,SAAA,CAAAlB,CAAAA,CACA,YAAA,CAAAmB,CAAAA,CAAe,GACf,KAAA,CAAAC,CAAAA,CACA,YAAAC,CAAAA,CACA,GAAGd,CACL,CAAA,CAAwD,CACtD,GAAM,CAAE,QAAAJ,CAAQ,CAAA,CAAIQ,GAAgB,CAE9BW,CAAAA,CAAqBC,QAAQ,IAC7BpB,CAAAA,GAAY,QAAA,CAAiBgB,CAAAA,CAC1BA,GAAgBE,CAAAA,CACtB,CAACF,EAAcE,CAAAA,CAAalB,CAAO,CAAC,CAAA,CAEvC,OACEqB,IAAAA,CAAC,KAAA,CAAA,CAAI,UAAU,0BAAA,CACZ,QAAA,CAAA,CAAAH,GAAelB,CAAAA,GAAY,QAAA,EAC1BK,IAACiB,GAAAA,CAAA,CAAe,QAAA,CAAAJ,CAAAA,CAAY,EAG7BA,CAAAA,EAAelB,CAAAA,GAAY,UAC1BK,GAAAA,CAACkB,GAAAA,CAAA,CAAW,SAAA,CAAU,+CAAA,CACnB,QAAA,CAAAL,CAAAA,CACH,EAGFb,GAAAA,CAACkB,GAAAA,CAAA,CAAW,SAAA,CAAU,mIAAA,CACnB,SAAAJ,CAAAA,CACH,CAAA,CAEAd,GAAAA,CAAC,OAAA,CAAA,CACE,GAAGD,CAAAA,CACJ,eAAA,CAAe,IAAA,CACf,SAAA,CAAWoB,OAAO,qBAAA,CAAuB3B,CAAS,CAAA,CAClD,MAAA,CAAQ,KACR,WAAA,CAAa,GAAA,CACb,SAAU,IAAA,CACV,KAAA,CAAOoB,GAAS,EAAA,CAClB,CAAA,CAAA,CACF,CAEJ,CAEO,SAASQ,CAAAA,CAAiB,CAC/B,UAAA5B,CAAAA,CACA,KAAA,CAAAoB,EACA,WAAA,CAAAC,CAAAA,CACA,QAAA,CAAAQ,CAAAA,CACA,GAAGtB,CACL,CAAA,CAA4B,CAC1B,GAAM,CAAE,QAAAJ,CAAQ,CAAA,CAAIQ,CAAAA,EAAgB,CAE9BmB,EAAwBP,OAAAA,CAAQ,IAChCpB,IAAY,QAAA,CAAiB,KAAA,CAC1B,MAAM,OAAA,CAAQiB,CAAK,CAAA,EAAKA,CAAAA,CAAM,SAAW,CAAA,EAAKC,CAAAA,CACpD,CAACD,CAAAA,CAAOC,CAAAA,CAAalB,CAAO,CAAC,CAAA,CAE1B4B,CAAAA,CAAmBR,OAAAA,CAAQ,IACxB,KAAA,CAAM,OAAA,CAAQH,CAAK,CAAA,EAAKA,CAAAA,CAAM,OAAS,CAAA,CAC7C,CAACA,CAAK,CAAC,EAEV,OACEI,IAAAA,CAAC,OACC,SAAA,CAAWV,OAAAA,CACTd,EACA,2DAAA,CACA,sBACF,CAAA,CAEC,QAAA,CAAA,CAAAqB,GAAelB,CAAAA,GAAY,QAAA,EAC1BK,GAAAA,CAACiB,GAAAA,CAAA,CAAe,QAAA,CAAAJ,CAAAA,CAAY,CAAA,CAG7BA,CAAAA,EAAelB,IAAY,QAAA,EAAY,CAAC4B,GACvCvB,GAAAA,CAACkB,GAAAA,CAAA,CAAW,SAAA,CAAU,WAAA,CAAa,QAAA,CAAAL,CAAAA,CAAY,EAGhDS,CAAAA,EACCtB,GAAAA,CAACkB,IAAA,CAAW,SAAA,CAAU,iFACnB,QAAA,CAAAL,CAAAA,CACH,CAAA,CAGDQ,CAAAA,CAEDrB,IAAC,OAAA,CAAA,CACE,GAAGD,EACJ,eAAA,CAAe,IAAA,CACf,UAAWO,OAAAA,CAAQd,CAAAA,CAAW,qBAAqB,CAAA,CACnD,OAAQ,IAAA,CACR,WAAA,CAAa+B,EAAmB,EAAA,CAAK,GAAA,CACrC,SAAU,IAAA,CACV,KAAA,CAAO,KAAA,CAAM,OAAA,CAAQX,CAAK,CAAA,CAAIA,CAAAA,CAAM,KAAK,GAAG,CAAA,CAAIA,EAClD,CAAA,CAAA,CACF,CAEJ,CAEO,SAASY,EAAc,CAC5B,SAAA,CAAAhC,EACA,UAAA,CAAAiC,CAAAA,CAAa,EACb,IAAA,CAAAC,CAAAA,CAAO,QAAA,CACP,KAAA,CAAAC,EAAQ,OAAA,CACR,QAAA,CAAAN,EACA,GAAGtB,CACL,EAAgD,CAC9C,GAAM,CAAE,KAAA,CAAAN,CAAM,CAAA,CAAIU,CAAAA,EAAgB,CAElC,OACEH,IAAc,CAAA,CAAA,MAAA,CAAb,CACC,QAAA,CAAAA,GAAAA,CAAc,UAAb,CACC,KAAA,CAAO2B,EACP,SAAA,CAAWrC,CAAAA,CAAQ,CAAE,SAAA,CAAAE,CAAAA,CAAW,KAAA,CAAAC,CAAM,CAAC,CAAA,CACvC,IAAA,CAAMiC,EACN,UAAA,CAAYD,CAAAA,CACX,GAAG1B,CAAAA,CAEJ,QAAA,CAAAC,GAAAA,CAAC4B,GAAAA,CAAA,CAAU,QAAA,CAAAP,CAAAA,CAAS,EACtB,CAAA,CACF,CAEJ,CAEO,SAASQ,CAAAA,CAAc,CAAE,SAAA,CAAArC,EAAW,GAAGO,CAAM,EAAwB,CAC1E,GAAM,CAAE,KAAA,CAAAN,CAAM,CAAA,CAAIU,CAAAA,GAClB,OAAOH,GAAAA,CAAC,KAAE,SAAA,CAAWZ,CAAAA,CAAQ,CAAE,SAAA,CAAAI,CAAAA,CAAW,KAAA,CAAAC,CAAM,CAAC,CAAA,CAAI,GAAGM,EAAO,CACjE,CAEO,SAAS+B,CAAAA,CAAW,CAAE,SAAA,CAAAtC,CAAAA,CAAW,GAAGO,CAAM,CAAA,CAA2B,CAC1E,GAAM,CAAE,MAAAN,CAAM,CAAA,CAAIU,CAAAA,EAAgB,CAClC,OAAOH,GAAAA,CAAC,MAAA,CAAA,CAAK,UAAWX,CAAAA,CAAS,CAAE,UAAAG,CAAAA,CAAW,KAAA,CAAAC,CAAM,CAAC,EAAI,GAAGM,CAAAA,CAAO,CACrE,CAEO,SAASgC,EAAchC,CAAAA,CAA2C,CACvE,OAAOC,GAAAA,CAACgC,EAAA,CAAa,GAAGjC,EAAO,CACjC,CAEO,SAASkC,CAAAA,CAAa,CAC3B,SAAA,CAAAzC,CAAAA,CACA,GAAGO,GACL,CAAA,CAAoC,CAClC,OACEC,GAAAA,CAACkC,EAAA,CAAS,SAAA,CAAW5B,OAAAA,CAAQd,CAAAA,CAAW,gBAAgB,CAAA,CAAI,GAAGO,IAAO,CAE1E,CAEO,SAASoC,CAAAA,CAAiBpC,CAAAA,CAA0C,CACzE,OAAOC,IAACkB,GAAAA,CAAA,CAAY,GAAGnB,CAAAA,CAAO,CAChC,CAEO,SAASqC,CAAAA,CAAarC,CAAAA,CAA0C,CACrE,OAAOC,GAAAA,CAACqC,GAAAA,CAAA,CAAY,GAAGtC,CAAAA,CAAO,CAChC,CAEO,SAASuC,CAAAA,CACdvC,CAAAA,CACA,CACA,OAAOC,GAAAA,CAACuC,EAAA,CAAiB,GAAGxC,EAAO,CACrC","file":"chunk-DTNZXDCY.js","sourcesContent":["import { tv, twJoin, twMerge } from '@xjur-ui/util'\nimport { useMemo, type ComponentProps } from 'react'\nimport * as RadixPopover from '@radix-ui/react-popover'\nimport { Icon, type IconType } from '../icon'\nimport { Typography } from '../typography'\nimport {\n ListHeaderTitle,\n ListHeader,\n ListContent,\n ListItem,\n ListRoot\n} from '../list'\nimport {\n FieldContext,\n useFieldContext,\n type FieldContextValue\n} from './context/field.context'\nimport { FloatingLabel } from './floating-label'\n\nexport const select = tv({\n slots: {\n wrapper: 'group flex flex-col gap-small-2x',\n trigger: [\n 'h-large-4x w-auto inline-flex cursor-pointer relative',\n 'items-center gap-small rounded-small-1x',\n 'py-small_1x-alt px-small',\n 'bg-layer-2-idle border border-border-layer-2',\n 'group-has-[div[data-slot=input-action-slot]]:rounded-r-none',\n 'transition-all duration-200'\n ],\n content: [\n 'group z-1000 max-h-[var(--radix-popover-content-available-height)] max-w-[var(--radix-popover-content-available-width)] min-w-[var(--radix-popover-trigger-width)]'\n ],\n icon: 'size-large text-icon-neutral-3 flex items-center justify-center',\n slotText:\n 'size-large flex items-center justify-center !text-size-label-md text-neutral-placeholder',\n caption: '!text-size-body-sm font-normal'\n },\n variants: {\n state: {\n normal: {\n trigger:\n 'hover:border-border-layer-3 data-[state=open]:border-primary-idle data-[state=open]:hover:border-primary-idle'\n },\n error: {\n trigger:\n 'border-danger-idle hover:border-danger-idle data-[state=open]:border-danger-idle data-[state=open]:hover:border-danger-idle',\n caption: 'text-danger-label-idle'\n },\n disabled: {\n trigger: 'pointer-events-none border-transparent bg-layer-2-idle'\n }\n }\n }\n})\n\nconst { wrapper, trigger, icon, caption, slotText, content } = select()\n\nexport function SelectRoot({\n className,\n state = 'normal',\n defaultOpen,\n variant = 'normal',\n modal,\n open,\n onOpenChange: handleOpenChange,\n ...props\n}: ComponentProps<'div'> &\n FieldContextValue &\n ComponentProps<typeof RadixPopover.Root>) {\n return (\n <RadixPopover.Root\n defaultOpen={defaultOpen}\n modal={modal}\n open={open}\n onOpenChange={handleOpenChange}\n >\n <FieldContext.Provider value={{ state, variant }}>\n <div className={wrapper({ className, state })} {...props} />\n </FieldContext.Provider>\n </RadixPopover.Root>\n )\n}\n\nexport function SelectTrigger({\n className,\n ...props\n}: ComponentProps<typeof RadixPopover.Trigger>) {\n const { state, variant } = useFieldContext()\n\n const filterTrigger = tv({\n base: ['group bg-layer-2-idle'],\n variants: {\n state: {\n normal: [\n 'border-border-layer-2 hover:border-border-layer-3 has-[input:not(:placeholder-shown)]:border-primary-idle'\n ],\n error: ['border-danger-idle hover:border-danger-idle'],\n disabled: ['border border-border-layer-2 opacity-60']\n }\n }\n })\n\n const mergedClassName = twMerge(\n trigger({ state, className }),\n variant === 'filter' && filterTrigger({ state, className })\n )\n\n return (\n <RadixPopover.Trigger\n className={mergedClassName}\n disabled={state === 'disabled'}\n {...props}\n />\n )\n}\n\nexport function SelectIcon({\n className,\n name,\n ...props\n}: ComponentProps<'div'> & {\n name: IconType\n}) {\n const { state } = useFieldContext()\n\n return (\n <div\n className={icon({ className, state })}\n data-slot=\"control-slot\"\n {...props}\n >\n <Icon name={name} />\n </div>\n )\n}\n\nexport function SelectValue({\n className,\n displayValue = '',\n value,\n placeholder,\n ...props\n}: ComponentProps<'input'> & { displayValue?: string }) {\n const { variant } = useFieldContext()\n\n const valueOrPlaceholder = useMemo(() => {\n if (variant === 'filter') return displayValue\n return displayValue || placeholder\n }, [displayValue, placeholder, variant])\n\n return (\n <div className=\"grid w-full items-center\">\n {placeholder && variant === 'filter' && (\n <FloatingLabel>{placeholder}</FloatingLabel>\n )}\n\n {placeholder && variant === 'filter' && (\n <Typography className=\"invisible col-start-1 row-start-1 self-center\">\n {placeholder}\n </Typography>\n )}\n\n <Typography className=\"text-neutral-dark group-has-[div[data-slot=date-picker-left-slot]]:pl-large-1x z-10 col-start-1 row-start-1 self-center text-left\">\n {valueOrPlaceholder}\n </Typography>\n\n <input\n {...props}\n aria-readonly={true}\n className={twJoin('pointer-events-none', className)}\n hidden={true}\n placeholder={' '}\n readOnly={true}\n value={value ?? ''}\n />\n </div>\n )\n}\n\nexport function SelectMultiValue({\n className,\n value,\n placeholder,\n children,\n ...props\n}: ComponentProps<'input'>) {\n const { variant } = useFieldContext()\n\n const shouldShowPlaceholder = useMemo(() => {\n if (variant === 'filter') return false\n return Array.isArray(value) && value.length === 0 && placeholder\n }, [value, placeholder, variant])\n\n const hasSelectedItems = useMemo(() => {\n return Array.isArray(value) && value.length > 0\n }, [value])\n\n return (\n <div\n className={twMerge(\n className,\n 'gap-small-1x scrollbar-hide flex w-full overflow-x-hidden',\n 'group-disabled:!pl-0'\n )}\n >\n {placeholder && variant === 'filter' && (\n <FloatingLabel>{placeholder}</FloatingLabel>\n )}\n\n {placeholder && variant === 'filter' && !hasSelectedItems && (\n <Typography className=\"invisible\">{placeholder}</Typography>\n )}\n\n {shouldShowPlaceholder && (\n <Typography className=\"text-neutral-dark group-has-[div[data-slot=date-picker-left-slot]]:pl-large-1x\">\n {placeholder}\n </Typography>\n )}\n\n {children}\n\n <input\n {...props}\n aria-readonly={true}\n className={twMerge(className, 'pointer-events-none')}\n hidden={true}\n placeholder={hasSelectedItems ? '' : ' '}\n readOnly={true}\n value={Array.isArray(value) ? value.join(',') : value}\n />\n </div>\n )\n}\n\nexport function SelectContent({\n className,\n sideOffset = 5,\n side = 'bottom',\n align = 'start',\n children,\n ...props\n}: ComponentProps<typeof RadixPopover.Content>) {\n const { state } = useFieldContext()\n\n return (\n <RadixPopover.Portal>\n <RadixPopover.Content\n align={align}\n className={content({ className, state })}\n side={side}\n sideOffset={sideOffset}\n {...props}\n >\n <ListRoot>{children}</ListRoot>\n </RadixPopover.Content>\n </RadixPopover.Portal>\n )\n}\n\nexport function SelectCaption({ className, ...props }: ComponentProps<'p'>) {\n const { state } = useFieldContext()\n return <p className={caption({ className, state })} {...props} />\n}\n\nexport function SelectSlot({ className, ...props }: ComponentProps<'span'>) {\n const { state } = useFieldContext()\n return <span className={slotText({ className, state })} {...props} />\n}\n\nexport function SelectOptions(props: ComponentProps<typeof ListContent>) {\n return <ListContent {...props} />\n}\n\nexport function SelectOption({\n className,\n ...props\n}: ComponentProps<typeof ListItem>) {\n return (\n <ListItem className={twMerge(className, 'cursor-pointer')} {...props} />\n )\n}\n\nexport function SelectOptionText(props: ComponentProps<typeof Typography>) {\n return <Typography {...props} />\n}\n\nexport function SelectHeader(props: ComponentProps<typeof ListHeader>) {\n return <ListHeader {...props} />\n}\n\nexport function SelectHeaderTitle(\n props: ComponentProps<typeof ListHeaderTitle>\n) {\n return <ListHeaderTitle {...props} />\n}\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {a as a$2}from'./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import {a as a$2}from'./chunk-4M3WR2KJ.js';import {a as a$1}from'./chunk-SLMHDBWO.js';import {a}from'./chunk-BYXTOSM6.js';import {b}from'./chunk-SXGSWVMZ.js';import {jsx}from'react/jsx-runtime';function u(){let{calendarView:t}=b();switch(t){case "month":return jsx(a,{});case "week":return jsx(a$2,{});case "day":return jsx(a$1,{});default:return jsx(a,{})}}export{u as a};//# sourceMappingURL=chunk-HLWHETF5.js.map
|
|
2
|
+
//# sourceMappingURL=chunk-HLWHETF5.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/full-calendar/calendar-view-renderer.tsx"],"names":["CalendarViewRenderer","calendarView","useFullCalendar","jsx","CalendarMonthView","CalendarWeekView","CalendarDayView"],"mappings":"kMAKO,SAASA,GAAuB,CACrC,GAAM,CAAE,YAAA,CAAAC,CAAa,EAAIC,CAAAA,EAAgB,CAEzC,OAAQD,CAAAA,EACN,KAAK,OAAA,CACH,OAAOE,IAACC,CAAAA,CAAA,EAAkB,CAAA,CAC5B,KAAK,OACH,OAAOD,GAAAA,CAACE,IAAA,EAAiB,CAAA,CAC3B,KAAK,KAAA,CACH,OAAOF,IAACG,GAAAA,CAAA,EAAgB,EAC1B,QACE,OAAOH,IAACC,CAAAA,CAAA,EAAkB,CAC9B,CACF","file":"chunk-
|
|
1
|
+
{"version":3,"sources":["../src/components/full-calendar/calendar-view-renderer.tsx"],"names":["CalendarViewRenderer","calendarView","useFullCalendar","jsx","CalendarMonthView","CalendarWeekView","CalendarDayView"],"mappings":"kMAKO,SAASA,GAAuB,CACrC,GAAM,CAAE,YAAA,CAAAC,CAAa,EAAIC,CAAAA,EAAgB,CAEzC,OAAQD,CAAAA,EACN,KAAK,OAAA,CACH,OAAOE,IAACC,CAAAA,CAAA,EAAkB,CAAA,CAC5B,KAAK,OACH,OAAOD,GAAAA,CAACE,IAAA,EAAiB,CAAA,CAC3B,KAAK,KAAA,CACH,OAAOF,IAACG,GAAAA,CAAA,EAAgB,EAC1B,QACE,OAAOH,IAACC,CAAAA,CAAA,EAAkB,CAC9B,CACF","file":"chunk-HLWHETF5.js","sourcesContent":["import { useFullCalendar } from './calendar-root'\nimport { CalendarMonthView } from './calendar-month-view'\nimport { CalendarWeekView } from './calendar-week-view'\nimport { CalendarDayView } from './calendar-day-view'\n\nexport function CalendarViewRenderer() {\n const { calendarView } = useFullCalendar()\n\n switch (calendarView) {\n case 'month':\n return <CalendarMonthView />\n case 'week':\n return <CalendarWeekView />\n case 'day':\n return <CalendarDayView />\n default:\n return <CalendarMonthView />\n }\n}\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {b}from'./chunk-SXGSWVMZ.js';import {b as b$1,c,
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import {b}from'./chunk-SXGSWVMZ.js';import {b as b$1,c,e,d,g,j,k,l}from'./chunk-DTNZXDCY.js';import {useMemo}from'react';import {jsx,jsxs}from'react/jsx-runtime';var s=[{name:"M\xEAs",value:"month"},{name:"Semana",value:"week"},{name:"Dia",value:"day"}];function V(){let{calendarView:l$1,handleChangeView:S}=b(),v=useMemo(()=>s.find(e=>e.value===l$1)?.name,[l$1]);return jsx("div",{className:"w-[94px]",children:jsxs(b$1,{children:[jsxs(c,{children:[jsx(e,{displayValue:v,name:"calendar-toggle-view",value:l$1}),jsx(d,{className:"text-icon-neutral-3",name:"keyboard_arrow_down"})]}),jsx(g,{children:jsx(j,{children:s.map(e=>jsx(k,{isActive:l$1===e.value,value:e.value,onClick:()=>S(e.value),children:jsx(l,{children:e.name})},e.value))})})]})})}export{V as a};//# sourceMappingURL=chunk-MTIWFWRN.js.map
|
|
2
|
+
//# sourceMappingURL=chunk-MTIWFWRN.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/full-calendar/calendar-toggle-view.tsx"],"names":["views","CalendarToggleView","calendarView","handleChangeView","useFullCalendar","displayValue","useMemo","view","jsx","jsxs","SelectRoot","SelectTrigger","SelectValue","SelectIcon","SelectContent","SelectOptions","SelectOption","SelectOptionText"],"mappings":"kKAcA,IAAMA,CAAAA,CAAsD,CAC1D,CAAE,IAAA,CAAM,QAAA,CAAO,KAAA,CAAO,OAAQ,CAAA,CAC9B,CAAE,IAAA,CAAM,QAAA,CAAU,KAAA,CAAO,MAAO,CAAA,CAChC,CAAE,IAAA,CAAM,KAAA,CAAO,KAAA,CAAO,KAAM,CAC9B,CAAA,CAEO,SAASC,CAAAA,EAAqB,CACnC,GAAM,CAAE,YAAA,CAAAC,GAAAA,CAAc,gBAAA,CAAAC,CAAiB,CAAA,CAAIC,CAAAA,EAAgB,CAErDC,CAAAA,CAAeC,OAAAA,CACnB,IAAMN,EAAM,IAAA,CAAKO,CAAAA,EAAQA,CAAAA,CAAK,KAAA,GAAUL,GAAY,CAAA,EAAG,IAAA,CACvD,CAACA,GAAY,CACf,CAAA,CAEA,OACEM,GAAAA,CAAC,KAAA,CAAA,CAAI,SAAA,CAAU,UAAA,CACb,SAAAC,IAAAA,CAACC,GAAAA,CAAA,CACC,QAAA,CAAA,CAAAD,IAAAA,CAACE,CAAAA,CAAA,CACC,QAAA,CAAA,CAAAH,GAAAA,CAACI,CAAAA,CAAA,CACC,YAAA,CAAcP,CAAAA,CACd,IAAA,CAAK,sBAAA,CACL,KAAA,CAAOH,IACT,CAAA,CACAM,GAAAA,CAACK,CAAAA,CAAA,CACC,SAAA,CAAU,qBAAA,CACV,IAAA,CAAK,qBAAA,CACP,CAAA,CAAA,CACF,CAAA,CAEAL,GAAAA,CAACM,CAAAA,CAAA,CACC,QAAA,CAAAN,GAAAA,CAACO,CAAAA,CAAA,CACE,QAAA,CAAAf,CAAAA,CAAM,GAAA,CAAIO,CAAAA,EACTC,GAAAA,CAACQ,CAAAA,CAAA,CACC,QAAA,CAAUd,GAAAA,GAAiBK,CAAAA,CAAK,KAAA,CAEhC,KAAA,CAAOA,CAAAA,CAAK,KAAA,CACZ,OAAA,CAAS,IAAMJ,EAAiBI,CAAAA,CAAK,KAAK,CAAA,CAE1C,QAAA,CAAAC,GAAAA,CAACS,CAAAA,CAAA,CAAkB,QAAA,CAAAV,EAAK,IAAA,CAAK,CAAA,CAAA,CAJxBA,CAAAA,CAAK,KAKZ,CACD,CAAA,CACH,CAAA,CACF,CAAA,CAAA,CACF,EACF,CAEJ","file":"chunk-
|
|
1
|
+
{"version":3,"sources":["../src/components/full-calendar/calendar-toggle-view.tsx"],"names":["views","CalendarToggleView","calendarView","handleChangeView","useFullCalendar","displayValue","useMemo","view","jsx","jsxs","SelectRoot","SelectTrigger","SelectValue","SelectIcon","SelectContent","SelectOptions","SelectOption","SelectOptionText"],"mappings":"kKAcA,IAAMA,CAAAA,CAAsD,CAC1D,CAAE,IAAA,CAAM,QAAA,CAAO,KAAA,CAAO,OAAQ,CAAA,CAC9B,CAAE,IAAA,CAAM,QAAA,CAAU,KAAA,CAAO,MAAO,CAAA,CAChC,CAAE,IAAA,CAAM,KAAA,CAAO,KAAA,CAAO,KAAM,CAC9B,CAAA,CAEO,SAASC,CAAAA,EAAqB,CACnC,GAAM,CAAE,YAAA,CAAAC,GAAAA,CAAc,gBAAA,CAAAC,CAAiB,CAAA,CAAIC,CAAAA,EAAgB,CAErDC,CAAAA,CAAeC,OAAAA,CACnB,IAAMN,EAAM,IAAA,CAAKO,CAAAA,EAAQA,CAAAA,CAAK,KAAA,GAAUL,GAAY,CAAA,EAAG,IAAA,CACvD,CAACA,GAAY,CACf,CAAA,CAEA,OACEM,GAAAA,CAAC,KAAA,CAAA,CAAI,SAAA,CAAU,UAAA,CACb,SAAAC,IAAAA,CAACC,GAAAA,CAAA,CACC,QAAA,CAAA,CAAAD,IAAAA,CAACE,CAAAA,CAAA,CACC,QAAA,CAAA,CAAAH,GAAAA,CAACI,CAAAA,CAAA,CACC,YAAA,CAAcP,CAAAA,CACd,IAAA,CAAK,sBAAA,CACL,KAAA,CAAOH,IACT,CAAA,CACAM,GAAAA,CAACK,CAAAA,CAAA,CACC,SAAA,CAAU,qBAAA,CACV,IAAA,CAAK,qBAAA,CACP,CAAA,CAAA,CACF,CAAA,CAEAL,GAAAA,CAACM,CAAAA,CAAA,CACC,QAAA,CAAAN,GAAAA,CAACO,CAAAA,CAAA,CACE,QAAA,CAAAf,CAAAA,CAAM,GAAA,CAAIO,CAAAA,EACTC,GAAAA,CAACQ,CAAAA,CAAA,CACC,QAAA,CAAUd,GAAAA,GAAiBK,CAAAA,CAAK,KAAA,CAEhC,KAAA,CAAOA,CAAAA,CAAK,KAAA,CACZ,OAAA,CAAS,IAAMJ,EAAiBI,CAAAA,CAAK,KAAK,CAAA,CAE1C,QAAA,CAAAC,GAAAA,CAACS,CAAAA,CAAA,CAAkB,QAAA,CAAAV,EAAK,IAAA,CAAK,CAAA,CAAA,CAJxBA,CAAAA,CAAK,KAKZ,CACD,CAAA,CACH,CAAA,CACF,CAAA,CAAA,CACF,EACF,CAEJ","file":"chunk-MTIWFWRN.js","sourcesContent":["import { useMemo } from 'react'\nimport {\n SelectContent,\n SelectOption,\n SelectRoot,\n SelectTrigger,\n SelectValue,\n SelectOptions,\n SelectOptionText,\n SelectIcon\n} from '../controls/select'\nimport type { CalendarView } from './types/calendar-view'\nimport { useFullCalendar } from './calendar-root'\n\nconst views: Array<{ name: string; value: CalendarView }> = [\n { name: 'Mês', value: 'month' },\n { name: 'Semana', value: 'week' },\n { name: 'Dia', value: 'day' }\n]\n\nexport function CalendarToggleView() {\n const { calendarView, handleChangeView } = useFullCalendar()\n\n const displayValue = useMemo(\n () => views.find(view => view.value === calendarView)?.name,\n [calendarView]\n )\n\n return (\n <div className=\"w-[94px]\">\n <SelectRoot>\n <SelectTrigger>\n <SelectValue\n displayValue={displayValue}\n name=\"calendar-toggle-view\"\n value={calendarView}\n />\n <SelectIcon\n className=\"text-icon-neutral-3\"\n name=\"keyboard_arrow_down\"\n />\n </SelectTrigger>\n\n <SelectContent>\n <SelectOptions>\n {views.map(view => (\n <SelectOption\n isActive={calendarView === view.value}\n key={view.value}\n value={view.value}\n onClick={() => handleChangeView(view.value)}\n >\n <SelectOptionText>{view.name}</SelectOptionText>\n </SelectOption>\n ))}\n </SelectOptions>\n </SelectContent>\n </SelectRoot>\n </div>\n )\n}\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {a}from'./chunk-ZVVPUP7V.js';import {a as a$1}from'./chunk-MZSV4LNY.js';import {a as a$3}from'./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import {a}from'./chunk-ZVVPUP7V.js';import {a as a$1}from'./chunk-MZSV4LNY.js';import {a as a$3}from'./chunk-TTKENFBF.js';import {q,l}from'./chunk-EXC2XOL6.js';import {b}from'./chunk-SXGSWVMZ.js';import {a as a$2}from'./chunk-EIG6CBTQ.js';import {useCallback}from'react';import {cx}from'@xjur-ui/util';import {jsx,jsxs}from'react/jsx-runtime';function D(){let{selectedDate:a$4,events:d}=b(),p=useCallback((e,l)=>q(d,e,l),[d]),y=useCallback((e,l)=>({...e,date:a(e.date,l)}),[]);return jsx("div",{className:"bg-layer-2-hover rounded-small-1x border-border-layer-2 scrollbar-hide h-full w-full border",children:jsxs("div",{className:"flex flex-1 flex-col",children:[jsxs("div",{className:"bg-layer-2-hover sticky top-0 z-10 flex w-full","data-slot":"week-header",children:[jsx("div",{className:"w-[64px]"}),jsx(a$1,{className:"border-border-layer-2 items-start border-l",date:a$4})]}),jsx("div",{className:"overflow-hidden",children:l.map(({hour:e,label:l})=>jsxs("div",{className:"flex items-start",children:[jsx("div",{className:"px-small flex h-full w-[64px] items-start justify-end",children:jsx(a$2,{size:"sm-1x",variant:"label",weight:"medium",children:l})}),jsx("div",{className:cx("flex flex-1","[&>*]:border-border-layer-2","[&>*]:border-t","[&>*]:border-l"),children:jsx(a$3,{cell:y({date:a$4,type:"day"},e),events:p(a$4,e)})})]},e))})]})})}export{D as a};//# sourceMappingURL=chunk-SLMHDBWO.js.map
|
|
2
|
+
//# sourceMappingURL=chunk-SLMHDBWO.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/full-calendar/calendar-day-view.tsx"],"names":["CalendarDayView","selectedDate","events","useFullCalendar","getEventsForDayAndHourCallback","useCallback","date","hour","getEventsForDayAndHour","cellsWithHour","cell","setHours","jsx","jsxs","CalendarWeekDay","WEEK_HOURS","label","Typography","cx","CalendarCell"],"mappings":"uVAUO,SAASA,CAAAA,EAAkB,CAChC,GAAM,CAAE,YAAA,CAAAC,GAAAA,CAAc,OAAAC,CAAO,CAAA,CAAIC,CAAAA,EAAgB,CAE3CC,EAAiCC,WAAAA,CACrC,CAACC,CAAAA,CAAYC,CAAAA,GACJC,EAAuBN,CAAAA,CAAQI,CAAAA,CAAMC,CAAI,CAAA,CAElD,CAACL,CAAM,CACT,CAAA,CAEMO,CAAAA,CAAgBJ,WAAAA,CAAY,CAACK,CAAAA,CAAqBH,CAAAA,IAC/C,CACL,GAAGG,EACH,IAAA,CAAMC,CAAAA,CAASD,CAAAA,CAAK,IAAA,CAAMH,CAAI,CAChC,CAAA,CAAA,CACC,EAAE,EAEL,OACEK,GAAAA,CAAC,KAAA,CAAA,CAAI,SAAA,CAAU,8FACb,QAAA,CAAAC,IAAAA,CAAC,KAAA,CAAA,CAAI,SAAA,CAAU,uBACb,QAAA,CAAA,CAAAA,IAAAA,CAAC,KAAA,CAAA,CACC,SAAA,CAAU,iDACV,WAAA,CAAU,aAAA,CAEV,UAAAD,GAAAA,CAAC,KAAA,CAAA,CAAI,UAAU,UAAA,CAAW,CAAA,CAC1BA,GAAAA,CAACE,GAAAA,CAAA,CACC,SAAA,CAAU,4CAAA,CACV,IAAA,CAAMb,GAAAA,CACR,GACF,CAAA,CAEAW,GAAAA,CAAC,KAAA,CAAA,CAAI,SAAA,CAAU,kBACZ,QAAA,CAAAG,CAAAA,CAAW,GAAA,CAAI,CAAC,CAAE,IAAA,CAAAR,CAAAA,CAAM,KAAA,CAAAS,CAAM,IAC7BH,IAAAA,CAAC,KAAA,CAAA,CAAI,SAAA,CAAU,kBAAA,CACb,UAAAD,GAAAA,CAAC,KAAA,CAAA,CAAI,SAAA,CAAU,uDAAA,CACb,SAAAA,GAAAA,CAACK,GAAAA,CAAA,CAAW,IAAA,CAAK,OAAA,CAAQ,QAAQ,OAAA,CAAQ,MAAA,CAAO,QAAA,CAC7C,QAAA,CAAAD,EACH,CAAA,CACF,CAAA,CAEAJ,GAAAA,CAAC,KAAA,CAAA,CACC,UAAWM,EAAAA,CACT,aAAA,CACA,6BAAA,CACA,gBAAA,CACA,gBACF,CAAA,CAEA,QAAA,CAAAN,IAACO,GAAAA,CAAA,CACC,KAAMV,CAAAA,CACJ,CACE,IAAA,CAAMR,GAAAA,CACN,KAAM,KACR,CAAA,CACAM,CACF,CAAA,CACA,OAAQH,CAAAA,CAA+BH,GAAAA,CAAcM,CAAI,CAAA,CAC3D,EACF,CAAA,CAAA,CAAA,CAzBqCA,CA0BvC,CACD,CAAA,CACH,CAAA,CAAA,CACF,EACF,CAEJ","file":"chunk-
|
|
1
|
+
{"version":3,"sources":["../src/components/full-calendar/calendar-day-view.tsx"],"names":["CalendarDayView","selectedDate","events","useFullCalendar","getEventsForDayAndHourCallback","useCallback","date","hour","getEventsForDayAndHour","cellsWithHour","cell","setHours","jsx","jsxs","CalendarWeekDay","WEEK_HOURS","label","Typography","cx","CalendarCell"],"mappings":"uVAUO,SAASA,CAAAA,EAAkB,CAChC,GAAM,CAAE,YAAA,CAAAC,GAAAA,CAAc,OAAAC,CAAO,CAAA,CAAIC,CAAAA,EAAgB,CAE3CC,EAAiCC,WAAAA,CACrC,CAACC,CAAAA,CAAYC,CAAAA,GACJC,EAAuBN,CAAAA,CAAQI,CAAAA,CAAMC,CAAI,CAAA,CAElD,CAACL,CAAM,CACT,CAAA,CAEMO,CAAAA,CAAgBJ,WAAAA,CAAY,CAACK,CAAAA,CAAqBH,CAAAA,IAC/C,CACL,GAAGG,EACH,IAAA,CAAMC,CAAAA,CAASD,CAAAA,CAAK,IAAA,CAAMH,CAAI,CAChC,CAAA,CAAA,CACC,EAAE,EAEL,OACEK,GAAAA,CAAC,KAAA,CAAA,CAAI,SAAA,CAAU,8FACb,QAAA,CAAAC,IAAAA,CAAC,KAAA,CAAA,CAAI,SAAA,CAAU,uBACb,QAAA,CAAA,CAAAA,IAAAA,CAAC,KAAA,CAAA,CACC,SAAA,CAAU,iDACV,WAAA,CAAU,aAAA,CAEV,UAAAD,GAAAA,CAAC,KAAA,CAAA,CAAI,UAAU,UAAA,CAAW,CAAA,CAC1BA,GAAAA,CAACE,GAAAA,CAAA,CACC,SAAA,CAAU,4CAAA,CACV,IAAA,CAAMb,GAAAA,CACR,GACF,CAAA,CAEAW,GAAAA,CAAC,KAAA,CAAA,CAAI,SAAA,CAAU,kBACZ,QAAA,CAAAG,CAAAA,CAAW,GAAA,CAAI,CAAC,CAAE,IAAA,CAAAR,CAAAA,CAAM,KAAA,CAAAS,CAAM,IAC7BH,IAAAA,CAAC,KAAA,CAAA,CAAI,SAAA,CAAU,kBAAA,CACb,UAAAD,GAAAA,CAAC,KAAA,CAAA,CAAI,SAAA,CAAU,uDAAA,CACb,SAAAA,GAAAA,CAACK,GAAAA,CAAA,CAAW,IAAA,CAAK,OAAA,CAAQ,QAAQ,OAAA,CAAQ,MAAA,CAAO,QAAA,CAC7C,QAAA,CAAAD,EACH,CAAA,CACF,CAAA,CAEAJ,GAAAA,CAAC,KAAA,CAAA,CACC,UAAWM,EAAAA,CACT,aAAA,CACA,6BAAA,CACA,gBAAA,CACA,gBACF,CAAA,CAEA,QAAA,CAAAN,IAACO,GAAAA,CAAA,CACC,KAAMV,CAAAA,CACJ,CACE,IAAA,CAAMR,GAAAA,CACN,KAAM,KACR,CAAA,CACAM,CACF,CAAA,CACA,OAAQH,CAAAA,CAA+BH,GAAAA,CAAcM,CAAI,CAAA,CAC3D,EACF,CAAA,CAAA,CAAA,CAzBqCA,CA0BvC,CACD,CAAA,CACH,CAAA,CAAA,CACF,EACF,CAEJ","file":"chunk-SLMHDBWO.js","sourcesContent":["import { useCallback } from 'react'\nimport { cx } from '@xjur-ui/util'\nimport { setHours } from 'date-fns'\nimport { Typography } from '../typography'\nimport { WEEK_HOURS, getEventsForDayAndHour } from './helpers/calendar'\nimport { useFullCalendar } from './calendar-root'\nimport { CalendarWeekDay } from './calendar-week-day'\nimport { CalendarCell } from './calendar-cell'\nimport type { ICalendarCell } from './types/calendar-cell'\n\nexport function CalendarDayView() {\n const { selectedDate, events } = useFullCalendar()\n\n const getEventsForDayAndHourCallback = useCallback(\n (date: Date, hour: number) => {\n return getEventsForDayAndHour(events, date, hour)\n },\n [events]\n )\n\n const cellsWithHour = useCallback((cell: ICalendarCell, hour: number) => {\n return {\n ...cell,\n date: setHours(cell.date, hour)\n }\n }, [])\n\n return (\n <div className=\"bg-layer-2-hover rounded-small-1x border-border-layer-2 scrollbar-hide h-full w-full border\">\n <div className=\"flex flex-1 flex-col\">\n <div\n className=\"bg-layer-2-hover sticky top-0 z-10 flex w-full\"\n data-slot=\"week-header\"\n >\n <div className=\"w-[64px]\" />\n <CalendarWeekDay\n className=\"border-border-layer-2 items-start border-l\"\n date={selectedDate}\n />\n </div>\n\n <div className=\"overflow-hidden\">\n {WEEK_HOURS.map(({ hour, label }) => (\n <div className=\"flex items-start\" key={hour}>\n <div className=\"px-small flex h-full w-[64px] items-start justify-end\">\n <Typography size=\"sm-1x\" variant=\"label\" weight=\"medium\">\n {label}\n </Typography>\n </div>\n\n <div\n className={cx(\n 'flex flex-1',\n '[&>*]:border-border-layer-2',\n '[&>*]:border-t',\n '[&>*]:border-l'\n )}\n >\n <CalendarCell\n cell={cellsWithHour(\n {\n date: selectedDate,\n type: 'day'\n },\n hour\n )}\n events={getEventsForDayAndHourCallback(selectedDate, hour)}\n />\n </div>\n </div>\n ))}\n </div>\n </div>\n </div>\n )\n}\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {a as a$2}from'./chunk-PBR7SFWY.js';import {a as a$1}from'./chunk-JGPHBUVM.js';import {a,b}from'./chunk-2JQVYVAT.js';import {a as a$3}from'./chunk-CBFC4QME.js';import {b as b$1}from'./chunk-DVDHTP4C.js';import {tv,twMerge}from'@xjur-ui/util';import {InputMask}from'@react-input/mask';import {InputNumberFormat}from'@react-input/number-format';import {jsx,jsxs}from'react/jsx-runtime';var y=tv({slots:{wrapper:"group flex
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import {a as a$2}from'./chunk-PBR7SFWY.js';import {a as a$1}from'./chunk-JGPHBUVM.js';import {a,b}from'./chunk-2JQVYVAT.js';import {a as a$3}from'./chunk-CBFC4QME.js';import {b as b$1}from'./chunk-DVDHTP4C.js';import {tv,twMerge}from'@xjur-ui/util';import {InputMask}from'@react-input/mask';import {InputNumberFormat}from'@react-input/number-format';import {jsx,jsxs}from'react/jsx-runtime';var y=tv({slots:{wrapper:"group flex flex-col gap-small-2x",trigger:["h-large-4x relative","inline-flex w-auto items-center gap-small rounded-small-1x","py-small_1x-alt px-small","bg-layer-2-hover border border-transparent","group-has-[div[data-slot=input-action-slot]]:rounded-r-none","transition-all duration-200"],content:"flex w-full",value:"text-size-body-md font-normal placeholder:text-neutral-placeholder flex-1 outline-none",icon:"size-large text-icon-neutral-3 flex items-center justify-center",slotText:"size-large flex items-center justify-center !text-size-label-md text-neutral-placeholder",caption:"!text-size-body-sm font-normal",action:"h-large-4x overflow-hidden"},variants:{state:{normal:{trigger:"hover:border-border-layer-1 focus-within:border-primary-idle focus-within:hover:border-primary-idle"},error:{trigger:"border-danger-idle hover:border-danger-idle focus-within:border-danger-idle focus-within:hover:border-danger-idle",caption:"text-danger-label-idle"},disabled:{trigger:"pointer-events-none border-transparent bg-layer-2-idle"}}}}),{wrapper:h,trigger:I,content:C,value:p,icon:N,caption:w,action:P,slotText:k}=y();function R({className:e,state:t="normal",customMask:r,variant:n="normal",mask:a$1,...l}){return jsx(a.Provider,{value:{state:t,customMask:r,mask:a$1,variant:n},children:jsx("div",{className:h({className:e,state:t}),...l})})}function S({className:e,...t}){let{state:r}=b();return jsx("div",{className:C({className:e,state:r}),...t})}function V(e){return jsx(a$1,{...e})}function B({className:e,...t}){let{state:r,variant:n}=b(),a=tv({base:["group bg-layer-2-idle relative"],variants:{state:{normal:["border-border-layer-2 hover:border-border-layer-3 has-[input:not(:placeholder-shown)]:border-primary-idle"],error:["border-danger-idle hover:border-danger-idle"],disabled:["border border-border-layer-2 opacity-60"]}}}),l=twMerge(I({state:r,className:e}),n==="filter"&&a({state:r,className:e}));return jsx("div",{"aria-disabled":r==="disabled",className:l,...t})}function q({className:e,placeholder:t,...r}){let{customMask:n,state:a,mask:l,variant:d}=b();return jsx(InputMask,{...r,...l?{...a$2(l)}:n&&{...n},className:p({className:e,state:a}),disabled:a==="disabled",placeholder:d==="filter"?" ":t,readOnly:a==="disabled"})}function E({className:e,placeholder:t,...r}){let{state:n,variant:a}=b();return jsx("input",{...r,className:p({className:e,state:n}),disabled:n==="disabled",placeholder:a==="filter"?" ":t,readOnly:n==="disabled"})}function G({className:e,locales:t="pt-BR",placeholder:r,groupDisplay:n=false,...a}){let{state:l,variant:d}=b();return jsx(InputNumberFormat,{...a,className:p({className:e,state:l}),disabled:l==="disabled",groupDisplay:n,locales:t,placeholder:d==="filter"?" ":r,readOnly:l==="disabled"})}function H({className:e,name:t,...r}){let{state:n}=b();return jsx("div",{className:N({className:e,state:n}),"data-slot":"control-slot",...r,children:jsx(b$1,{name:t})})}function J({className:e,...t}){let{state:r}=b();return jsx("span",{className:k({className:e,state:r}),...t})}function K({className:e,...t}){let{state:r}=b();return jsx("p",{className:w({className:e,state:r}),...t})}function F({className:e,...t}){let{state:r}=b();return jsx("div",{className:P({className:e,state:r}),"data-slot":"input-action-slot",...t})}function Q({handleIncrement:e,handleDecrement:t}){return jsxs(F,{className:"w-large-4x border-border-layer-2 rounded-r-small-1x bg-layer-2-hover flex flex-col items-center justify-center border",children:[jsx("button",{className:"flex h-1/2 items-center justify-center",type:"button",onClick:e,children:jsx(b$1,{className:"text-icon-neutral-3",name:"keyboard_arrow_up"})}),jsx(a$3,{}),jsx("button",{className:"flex h-1/2 items-center justify-center",type:"button",onClick:t,children:jsx(b$1,{className:"text-icon-neutral-3",name:"keyboard_arrow_down"})})]})}export{y as a,R as b,S as c,V as d,B as e,q as f,E as g,G as h,H as i,J as j,K as k,F as l,Q as m};//# sourceMappingURL=chunk-TQWBQ452.js.map
|
|
2
|
+
//# sourceMappingURL=chunk-TQWBQ452.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/controls/input.tsx"],"names":["input","tv","wrapper","trigger","content","value","icon","caption","action","slotText","InputRoot","className","state","customMask","variant","mask","props","jsx","FieldContext","InputContent","useFieldContext","InputLabel","FloatingLabel","InputTrigger","filterTrigger","mergedClassName","twMerge","InputMask","placeholder","InputMaskComponent","inputMask","InputText","InputNumber","locales","groupDisplay","InputNumberFormat","InputIcon","name","Icon","InputSlot","InputCaption","InputAction","InputNumericStepper","handleIncrement","handleDecrement","jsxs","Divider"],"mappings":"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","file":"chunk-TQWBQ452.js","sourcesContent":["import { tv, twMerge } from '@xjur-ui/util'\nimport type { ComponentProps } from 'react'\nimport { InputMask as InputMaskComponent } from '@react-input/mask'\nimport {\n InputNumberFormat,\n type InputNumberFormatProps\n} from '@react-input/number-format'\nimport { Icon, type IconType } from '../icon'\nimport { inputMask } from '../../resources/input-mask'\nimport { Divider } from '../divider'\nimport {\n type FieldContextValue,\n FieldContext,\n useFieldContext\n} from './context/field.context'\nimport { FloatingLabel } from './floating-label'\n\nexport const input = tv({\n slots: {\n wrapper: 'group flex flex-col gap-small-2x',\n trigger: [\n 'h-large-4x relative',\n 'inline-flex w-auto items-center gap-small rounded-small-1x',\n 'py-small_1x-alt px-small',\n 'bg-layer-2-hover border border-transparent',\n 'group-has-[div[data-slot=input-action-slot]]:rounded-r-none',\n 'transition-all duration-200'\n ],\n content: 'flex w-full',\n value:\n 'text-size-body-md font-normal placeholder:text-neutral-placeholder flex-1 outline-none',\n icon: 'size-large text-icon-neutral-3 flex items-center justify-center',\n slotText:\n 'size-large flex items-center justify-center !text-size-label-md text-neutral-placeholder',\n caption: '!text-size-body-sm font-normal',\n action: 'h-large-4x overflow-hidden'\n },\n variants: {\n state: {\n normal: {\n trigger:\n 'hover:border-border-layer-1 focus-within:border-primary-idle focus-within:hover:border-primary-idle'\n },\n error: {\n trigger:\n 'border-danger-idle hover:border-danger-idle focus-within:border-danger-idle focus-within:hover:border-danger-idle',\n caption: 'text-danger-label-idle'\n },\n disabled: {\n trigger: 'pointer-events-none border-transparent bg-layer-2-idle'\n }\n }\n }\n})\n\nconst { wrapper, trigger, content, value, icon, caption, action, slotText } =\n input()\n\nexport function InputRoot({\n className,\n state = 'normal',\n customMask,\n variant = 'normal',\n mask,\n ...props\n}: ComponentProps<'div'> & FieldContextValue) {\n return (\n <FieldContext.Provider value={{ state, customMask, mask, variant }}>\n <div className={wrapper({ className, state })} {...props} />\n </FieldContext.Provider>\n )\n}\n\nexport function InputContent({ className, ...props }: ComponentProps<'div'>) {\n const { state } = useFieldContext()\n return <div className={content({ className, state })} {...props} />\n}\n\nexport function InputLabel(props: ComponentProps<typeof FloatingLabel>) {\n return <FloatingLabel {...props} />\n}\n\nexport function InputTrigger({ className, ...props }: ComponentProps<'div'>) {\n const { state, variant } = useFieldContext()\n\n const filterTrigger = tv({\n base: ['group bg-layer-2-idle relative'],\n variants: {\n state: {\n normal: [\n 'border-border-layer-2 hover:border-border-layer-3 has-[input:not(:placeholder-shown)]:border-primary-idle'\n ],\n error: ['border-danger-idle hover:border-danger-idle'],\n disabled: ['border border-border-layer-2 opacity-60']\n }\n }\n })\n\n const mergedClassName = twMerge(\n trigger({ state, className }),\n variant === 'filter' && filterTrigger({ state, className })\n )\n\n return (\n <div\n aria-disabled={state === 'disabled'}\n className={mergedClassName}\n {...props}\n />\n )\n}\n\nexport function InputMask({\n className,\n placeholder,\n ...props\n}: ComponentProps<'input'>) {\n const { customMask, state, mask, variant } = useFieldContext()\n\n return (\n <InputMaskComponent\n {...props}\n {...(mask ? { ...inputMask(mask) } : customMask && { ...customMask })}\n className={value({ className, state })}\n disabled={state === 'disabled'}\n placeholder={variant === 'filter' ? ' ' : placeholder}\n readOnly={state === 'disabled'}\n />\n )\n}\n\nexport function InputText({\n className,\n placeholder,\n ...props\n}: ComponentProps<'input'>) {\n const { state, variant } = useFieldContext()\n\n return (\n <input\n {...props}\n className={value({ className, state })}\n disabled={state === 'disabled'}\n placeholder={variant === 'filter' ? ' ' : placeholder}\n readOnly={state === 'disabled'}\n />\n )\n}\n\nexport function InputNumber({\n className,\n locales = 'pt-BR',\n placeholder,\n groupDisplay = false,\n ...props\n}: InputNumberFormatProps) {\n const { state, variant } = useFieldContext()\n\n return (\n <InputNumberFormat\n {...props}\n className={value({ className, state })}\n disabled={state === 'disabled'}\n groupDisplay={groupDisplay}\n locales={locales}\n placeholder={variant === 'filter' ? ' ' : placeholder}\n readOnly={state === 'disabled'}\n />\n )\n}\n\nexport function InputIcon({\n className,\n name,\n ...props\n}: ComponentProps<'div'> & {\n name: IconType\n}) {\n const { state } = useFieldContext()\n\n return (\n <div\n className={icon({ className, state })}\n data-slot=\"control-slot\"\n {...props}\n >\n <Icon name={name} />\n </div>\n )\n}\n\nexport function InputSlot({ className, ...props }: ComponentProps<'span'>) {\n const { state } = useFieldContext()\n return <span className={slotText({ className, state })} {...props} />\n}\n\nexport function InputCaption({ className, ...props }: ComponentProps<'p'>) {\n const { state } = useFieldContext()\n return <p className={caption({ className, state })} {...props} />\n}\n\nexport function InputAction({ className, ...props }: ComponentProps<'div'>) {\n const { state } = useFieldContext()\n return (\n <div\n className={action({ className, state })}\n data-slot=\"input-action-slot\"\n {...props}\n />\n )\n}\n\nexport function InputNumericStepper({\n handleIncrement,\n handleDecrement\n}: {\n handleIncrement: () => void\n handleDecrement: () => void\n}) {\n return (\n <InputAction className=\"w-large-4x border-border-layer-2 rounded-r-small-1x bg-layer-2-hover flex flex-col items-center justify-center border\">\n <button\n className=\"flex h-1/2 items-center justify-center\"\n type=\"button\"\n onClick={handleIncrement}\n >\n <Icon className=\"text-icon-neutral-3\" name=\"keyboard_arrow_up\" />\n </button>\n\n <Divider />\n\n <button\n className=\"flex h-1/2 items-center justify-center\"\n type=\"button\"\n onClick={handleDecrement}\n >\n <Icon className=\"text-icon-neutral-3\" name=\"keyboard_arrow_down\" />\n </button>\n </InputAction>\n )\n}\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {a as a$1}from'./chunk-OKSGVAQQ.js';import {o,f}from'./chunk-EXC2XOL6.js';import {b as b$1}from'./chunk-SXGSWVMZ.js';import {b as b$2}from'./chunk-M6ZI7M3R.js';import {b as b$3}from'./chunk-DVDHTP4C.js';import {a}from'./chunk-EIG6CBTQ.js';import {useMemo,Fragment}from'react';import {useDroppable}from'@dnd-kit/core';import {tv,cx}from'@xjur-ui/util';import {jsxs,jsx}from'react/jsx-runtime';function b(r){return +f(r)<Date.now()}var j=tv({base:"group/calendar-cell p-small flex flex-col gap-small-1x w-full bg-layer-2-idle ",variants:{type:{month:"h-[212px]",week:"min-h-[64px] max-h-[212px]",day:"min-h-[64px] max-h-[212px]"}}});function Q({cell:r,events:t}){let{date:e,type:n}=r,{renderEvent:D,activeEventId:m,onAddEvent:c,disableEventCreationInPast:p}=b$1(),f=useMemo(()=>t.slice(0,2),[t]),E=t.length>=3,{isOver:N,setNodeRef:I}=useDroppable({id:`calendar-cell-${n}-${e.toISOString()}`,data:{date:e,type:n}}),w=useMemo(()=>{let l=t.find(o=>o.id===m);if(!l)return false;let u=o=>o.toLocaleDateString("pt-BR",{year:"numeric",month:"2-digit",day:"2-digit"}),T=u(e),k=u(l.eventDate);return T===k},[m,e,t]),P=j({type:n}),S=useMemo(()=>p&&b(e)&&!o(e),[p,e]);return jsxs("div",{className:P,"data-slot":"calendar-cell",ref:I,children:[n==="month"&&jsx("div",{className:"flex items-center justify-center",children:jsx("div",{className:cx("size-large-2x rounded-circle bg-layer-2-idle flex items-center justify-center",o(e)&&"bg-primary-idle text-neutral-label"),children:jsx(a,{size:"sm",variant:"label",weight:"medium",children:r.date.getDate()})})}),jsxs("div",{className:"gap-small-1x flex flex-col",children:[f.map(l=>jsx(Fragment,{children:D(l)},l.id)),N&&f.length<2&&!w&&jsx("div",{className:"border-border-layer-4 rounded-small-2x h-[68px] w-full border border-dashed"})]}),jsxs("div",{className:"mt-auto flex items-center justify-between",children:[E&&jsx(a$1,{events:t.slice(2)}),c&&!S&&jsx("div",{className:"invisible ml-auto transition-opacity duration-100 ease-in-out group-hover/calendar-cell:visible",children:jsx(b$2,{size:"icon_sm",variant:"outlined",onClick:()=>c(e),children:jsx(b$3,{className:"text-icon-neutral-3",name:"add"})})})]})]})}export{Q as a};//# sourceMappingURL=chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import {a as a$1}from'./chunk-OKSGVAQQ.js';import {o,f}from'./chunk-EXC2XOL6.js';import {b as b$1}from'./chunk-SXGSWVMZ.js';import {b as b$2}from'./chunk-M6ZI7M3R.js';import {b as b$3}from'./chunk-DVDHTP4C.js';import {a}from'./chunk-EIG6CBTQ.js';import {useMemo,Fragment}from'react';import {useDroppable}from'@dnd-kit/core';import {tv,cx}from'@xjur-ui/util';import {jsxs,jsx}from'react/jsx-runtime';function b(r){return +f(r)<Date.now()}var j=tv({base:"group/calendar-cell p-small flex flex-col gap-small-1x w-full bg-layer-2-idle ",variants:{type:{month:"h-[212px]",week:"min-h-[64px] max-h-[212px]",day:"min-h-[64px] max-h-[212px]"}}});function Q({cell:r,events:t}){let{date:e,type:n}=r,{renderEvent:D,activeEventId:m,onAddEvent:c,disableEventCreationInPast:p}=b$1(),f=useMemo(()=>t.slice(0,2),[t]),E=t.length>=3,{isOver:N,setNodeRef:I}=useDroppable({id:`calendar-cell-${n}-${e.toISOString()}`,data:{date:e,type:n}}),w=useMemo(()=>{let l=t.find(o=>o.id===m);if(!l)return false;let u=o=>o.toLocaleDateString("pt-BR",{year:"numeric",month:"2-digit",day:"2-digit"}),T=u(e),k=u(l.eventDate);return T===k},[m,e,t]),P=j({type:n}),S=useMemo(()=>p&&b(e)&&!o(e),[p,e]);return jsxs("div",{className:P,"data-slot":"calendar-cell",ref:I,children:[n==="month"&&jsx("div",{className:"flex items-center justify-center",children:jsx("div",{className:cx("size-large-2x rounded-circle bg-layer-2-idle flex items-center justify-center",o(e)&&"bg-primary-idle text-neutral-label"),children:jsx(a,{size:"sm",variant:"label",weight:"medium",children:r.date.getDate()})})}),jsxs("div",{className:"gap-small-1x flex flex-col",children:[f.map(l=>jsx(Fragment,{children:D(l)},l.id)),N&&f.length<2&&!w&&jsx("div",{className:"border-border-layer-4 rounded-small-2x h-[68px] w-full border border-dashed"})]}),jsxs("div",{className:"mt-auto flex items-center justify-between",children:[E&&jsx(a$1,{events:t.slice(2)}),c&&!S&&jsx("div",{className:"invisible ml-auto transition-opacity duration-100 ease-in-out group-hover/calendar-cell:visible",children:jsx(b$2,{size:"icon_sm",variant:"outlined",onClick:()=>c(e),children:jsx(b$3,{className:"text-icon-neutral-3",name:"add"})})})]})]})}export{Q as a};//# sourceMappingURL=chunk-TTKENFBF.js.map
|
|
2
|
+
//# sourceMappingURL=chunk-TTKENFBF.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../node_modules/date-fns/isPast.js","../src/components/full-calendar/calendar-cell.tsx"],"names":["isPast","date","toDate","calendarCellVariants","tv","CalendarCell","cell","events","type","renderEvent","activeEventId","onAddEvent","disableEventCreationInPast","useFullCalendar","eventsToShow","useMemo","hasMore","isOver","setNodeRef","useDroppable","isDraggingInCell","cellEvent","event","formatDate","cellDate","cellEventDate","calendarCellClassNames","disableEventCreation","isToday","jsxs","jsx","cx","Typography","Fragment","CalendarMoreEventsDropdown","Button","Icon"],"mappings":"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","file":"chunk-
|
|
1
|
+
{"version":3,"sources":["../../../node_modules/date-fns/isPast.js","../src/components/full-calendar/calendar-cell.tsx"],"names":["isPast","date","toDate","calendarCellVariants","tv","CalendarCell","cell","events","type","renderEvent","activeEventId","onAddEvent","disableEventCreationInPast","useFullCalendar","eventsToShow","useMemo","hasMore","isOver","setNodeRef","useDroppable","isDraggingInCell","cellEvent","event","formatDate","cellDate","cellEventDate","calendarCellClassNames","disableEventCreation","isToday","jsxs","jsx","cx","Typography","Fragment","CalendarMoreEventsDropdown","Button","Icon"],"mappings":"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","file":"chunk-TTKENFBF.js","sourcesContent":["import { toDate } from \"./toDate.js\";\n\n/**\n * @name isPast\n * @category Common Helpers\n * @summary Is the given date in the past?\n * @pure false\n *\n * @description\n * Is the given date in the past?\n *\n * @param date - The date to check\n *\n * @returns The date is in the past\n *\n * @example\n * // If today is 6 October 2014, is 2 July 2014 in the past?\n * const result = isPast(new Date(2014, 6, 2))\n * //=> true\n */\nexport function isPast(date) {\n return +toDate(date) < Date.now();\n}\n\n// Fallback for modularized imports:\nexport default isPast;\n","import { Fragment, useMemo } from 'react'\nimport { useDroppable } from '@dnd-kit/core'\nimport { cx, tv } from '@xjur-ui/util'\nimport { isPast } from 'date-fns'\nimport { Typography } from '../typography'\nimport { Button } from '../controls/button'\nimport { Icon } from '../icon'\nimport { isToday } from './helpers/calendar'\nimport { useFullCalendar } from './calendar-root'\nimport type { ICalendarCell } from './types/calendar-cell'\nimport type { ICalendarEvent } from './types/calendar-event'\nimport { CalendarMoreEventsDropdown } from './calendar-more-events-dropdown'\n\ninterface CalendarCellProps {\n events: ICalendarEvent[]\n cell: ICalendarCell\n}\n\nconst calendarCellVariants = tv({\n base: 'group/calendar-cell p-small flex flex-col gap-small-1x w-full bg-layer-2-idle ',\n variants: {\n type: {\n month: 'h-[212px]',\n week: 'min-h-[64px] max-h-[212px]',\n day: 'min-h-[64px] max-h-[212px]'\n }\n }\n})\n\nexport function CalendarCell({ cell, events }: CalendarCellProps) {\n const { date, type } = cell\n\n const { renderEvent, activeEventId, onAddEvent, disableEventCreationInPast } =\n useFullCalendar()\n const eventsToShow = useMemo(() => events.slice(0, 2), [events])\n const hasMore = events.length >= 3\n\n const { isOver, setNodeRef } = useDroppable({\n id: `calendar-cell-${type}-${date.toISOString()}`,\n data: {\n date,\n type\n }\n })\n\n const isDraggingInCell = useMemo(() => {\n const cellEvent = events.find(event => event.id === activeEventId)\n\n if (!cellEvent) return false\n\n const formatDate = (date: Date) => {\n return date.toLocaleDateString('pt-BR', {\n year: 'numeric',\n month: '2-digit',\n day: '2-digit'\n })\n }\n\n const cellDate = formatDate(date)\n const cellEventDate = formatDate(cellEvent.eventDate)\n\n return cellDate === cellEventDate\n }, [activeEventId, date, events])\n\n const calendarCellClassNames = calendarCellVariants({ type })\n\n const disableEventCreation = useMemo(\n () => disableEventCreationInPast && isPast(date) && !isToday(date),\n [disableEventCreationInPast, date]\n )\n\n return (\n <div\n className={calendarCellClassNames}\n data-slot=\"calendar-cell\"\n ref={setNodeRef}\n >\n {type === 'month' && (\n <div className=\"flex items-center justify-center\">\n <div\n className={cx(\n 'size-large-2x rounded-circle bg-layer-2-idle flex items-center justify-center',\n isToday(date) && 'bg-primary-idle text-neutral-label'\n )}\n >\n <Typography size=\"sm\" variant=\"label\" weight=\"medium\">\n {cell.date.getDate()}\n </Typography>\n </div>\n </div>\n )}\n\n <div className=\"gap-small-1x flex flex-col\">\n {eventsToShow.map(event => (\n <Fragment key={event.id}>{renderEvent(event)}</Fragment>\n ))}\n\n {isOver && eventsToShow.length < 2 && !isDraggingInCell && (\n <div className=\"border-border-layer-4 rounded-small-2x h-[68px] w-full border border-dashed\" />\n )}\n </div>\n\n <div className=\"mt-auto flex items-center justify-between\">\n {hasMore && <CalendarMoreEventsDropdown events={events.slice(2)} />}\n\n {onAddEvent && !disableEventCreation && (\n <div className=\"invisible ml-auto transition-opacity duration-100 ease-in-out group-hover/calendar-cell:visible\">\n <Button\n size=\"icon_sm\"\n variant=\"outlined\"\n onClick={() => onAddEvent(date)}\n >\n <Icon className=\"text-icon-neutral-3\" name=\"add\" />\n </Button>\n </div>\n )}\n </div>\n </div>\n )\n}\n"]}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
|
|
4
|
+
interface AccordionRootProps {
|
|
5
|
+
variant?: 'default' | 'tabheader';
|
|
6
|
+
className?: string;
|
|
7
|
+
type?: 'single' | 'multiple';
|
|
8
|
+
collapsible?: boolean;
|
|
9
|
+
defaultValue?: string | string[];
|
|
10
|
+
value?: string | string[];
|
|
11
|
+
onValueChange?: (value: string | string[]) => void;
|
|
12
|
+
children?: React.ReactNode;
|
|
13
|
+
}
|
|
14
|
+
declare function AccordionRoot({ variant, className, type, ...props }: AccordionRootProps): react_jsx_runtime.JSX.Element;
|
|
15
|
+
interface AccordionItemProps {
|
|
16
|
+
variant?: 'default' | 'tabheader';
|
|
17
|
+
className?: string;
|
|
18
|
+
value: string;
|
|
19
|
+
children?: React.ReactNode;
|
|
20
|
+
}
|
|
21
|
+
declare function AccordionItem({ variant, className, ...props }: AccordionItemProps): react_jsx_runtime.JSX.Element;
|
|
22
|
+
interface AccordionTriggerProps {
|
|
23
|
+
variant?: 'default' | 'tabheader';
|
|
24
|
+
showIcon?: boolean;
|
|
25
|
+
iconPosition?: 'left' | 'right';
|
|
26
|
+
iconName?: 'keyboard_arrow_down' | 'chevron_right' | 'add' | 'remove';
|
|
27
|
+
className?: string;
|
|
28
|
+
children?: React.ReactNode;
|
|
29
|
+
}
|
|
30
|
+
declare function AccordionTrigger({ variant, showIcon, iconPosition, iconName, className, children, ...props }: AccordionTriggerProps): react_jsx_runtime.JSX.Element;
|
|
31
|
+
interface AccordionContentProps {
|
|
32
|
+
variant?: 'default' | 'tabheader';
|
|
33
|
+
className?: string;
|
|
34
|
+
children?: React.ReactNode;
|
|
35
|
+
}
|
|
36
|
+
declare function AccordionContent({ variant, className, children, ...props }: AccordionContentProps): react_jsx_runtime.JSX.Element;
|
|
37
|
+
interface AccordionTabHeaderProps {
|
|
38
|
+
items: Array<{
|
|
39
|
+
value: string;
|
|
40
|
+
title: string;
|
|
41
|
+
content: React.ReactNode;
|
|
42
|
+
iconVariant?: 'chevron' | 'triangle' | 'plus';
|
|
43
|
+
iconColor?: 'gray' | 'orange';
|
|
44
|
+
iconDirection?: 'right' | 'down';
|
|
45
|
+
}>;
|
|
46
|
+
variant?: 'default' | 'tabheader';
|
|
47
|
+
type?: 'single' | 'multiple';
|
|
48
|
+
defaultValue?: string | string[];
|
|
49
|
+
value?: string | string[];
|
|
50
|
+
onValueChange?: (value: string | string[]) => void;
|
|
51
|
+
}
|
|
52
|
+
declare function AccordionTabHeader({ items, variant, type, defaultValue, value, onValueChange: handleValueChange, ...props }: AccordionTabHeaderProps): react_jsx_runtime.JSX.Element;
|
|
53
|
+
|
|
54
|
+
export { AccordionContent, type AccordionContentProps, AccordionItem, type AccordionItemProps, AccordionRoot, type AccordionRootProps, AccordionTabHeader, type AccordionTabHeaderProps, AccordionTrigger, type AccordionTriggerProps };
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import {b}from'../chunk-DVDHTP4C.js';import'react';import*as c from'@radix-ui/react-accordion';import {cx}from'@xjur-ui/util';import {jsx,jsxs}from'react/jsx-runtime';var p=(r="default")=>{let e={root:"w-full",item:"border-b border-neutral-border last:border-b-0",trigger:"flex flex-1 items-center justify-between py-medium px-0 font-medium transition-all hover:no-underline [&[data-state=open]>svg]:rotate-180",content:"overflow-hidden text-sm transition-all data-[state=closed]:animate-collapsible-up data-[state=open]:animate-collapsible-down",contentInner:"pb-medium pt-0"};return r==="tabheader"?{...e,trigger:e.trigger+" bg-layer-2-idle text-neutral-dark rounded-small-1x px-medium py-small hover:bg-layer-2-hover data-[state=open]:bg-layer-2-active"}:{...e,trigger:e.trigger+" text-neutral-dark hover:text-primary-active"}};function A({variant:r="default",className:e,type:a="single",...n}){let i=p(r);if(a==="multiple"){let{value:t,defaultValue:g,onValueChange:f,...b}=n;return jsx(c.Root,{className:cx(i.root,e),defaultValue:g,type:"multiple",value:t,...b,onValueChange:f})}let{value:s,defaultValue:d,onValueChange:u,...l}=n;return jsx(c.Root,{className:cx(i.root,e),defaultValue:d,type:"single",value:s,...l,onValueChange:u})}function y({variant:r="default",className:e,...a}){let n=p(r);return jsx(c.Item,{className:cx(n.item,e),...a})}function x({variant:r="default",showIcon:e=true,iconPosition:a="right",iconName:n="keyboard_arrow_down",className:i,children:s,...d}){let u=p(r),l=e?jsx(b,{className:"h-4 w-4 shrink-0 transition-transform duration-200",name:n}):null;return jsxs(c.Trigger,{className:cx(u.trigger,i),...d,children:[a==="left"&&l,jsx("span",{className:"flex-1 text-left",children:s}),a==="right"&&l]})}function w({variant:r="default",className:e,children:a,...n}){let i=p(r);return jsx(c.Content,{className:cx(i.content,e),...n,children:jsx("div",{className:i.contentInner,children:a})})}function V({items:r,variant:e="tabheader",type:a="single",defaultValue:n,value:i,onValueChange:s,...d}){let u=(t,g)=>{switch(t){case "chevron":return g==="right"?"chevron_right":"keyboard_arrow_down";case "triangle":return g==="right"?"chevron_right":"keyboard_arrow_down";case "plus":return g==="right"?"add":"remove";default:return "keyboard_arrow_down"}},l=t=>{switch(t){case "gray":return "text-neutral-medium";case "orange":return "text-orange-500";default:return "text-neutral-dark"}};return jsx(A,{defaultValue:n,type:a,value:i,variant:e,...d,onValueChange:s,children:r.map(t=>jsxs(y,{value:t.value,variant:e,children:[jsx(x,{className:l(t.iconColor||"gray"),iconName:u(t.iconVariant||"chevron",t.iconDirection||"down"),variant:e,children:t.title}),jsx(w,{variant:e,children:t.content})]},t.value))})}export{w as AccordionContent,y as AccordionItem,A as AccordionRoot,V as AccordionTabHeader,x as AccordionTrigger};//# sourceMappingURL=accordion.js.map
|
|
2
|
+
//# sourceMappingURL=accordion.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/components/accordion.tsx"],"names":["getAccordionStyles","variant","baseStyles","AccordionRoot","className","type","props","styles","value","defaultValue","handleValueChange","restProps","jsx","cx","AccordionItem","AccordionTrigger","showIcon","iconPosition","iconName","children","iconElement","Icon","jsxs","AccordionContent","AccordionTabHeader","items","getIconName","iconVariant","iconDirection","getIconColor","iconColor","item"],"mappings":"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","file":"accordion.js","sourcesContent":["import * as React from 'react'\nimport * as AccordionPrimitive from '@radix-ui/react-accordion'\nimport { cx } from '@xjur-ui/util'\nimport { Icon } from './icon'\n\nconst getAccordionStyles = (variant: 'default' | 'tabheader' = 'default') => {\n const baseStyles = {\n root: 'w-full',\n item: 'border-b border-neutral-border last:border-b-0',\n trigger:\n 'flex flex-1 items-center justify-between py-medium px-0 font-medium transition-all hover:no-underline [&[data-state=open]>svg]:rotate-180',\n content:\n 'overflow-hidden text-sm transition-all data-[state=closed]:animate-collapsible-up data-[state=open]:animate-collapsible-down',\n contentInner: 'pb-medium pt-0'\n }\n\n if (variant === 'tabheader') {\n return {\n ...baseStyles,\n trigger:\n baseStyles.trigger +\n ' bg-layer-2-idle text-neutral-dark rounded-small-1x px-medium py-small hover:bg-layer-2-hover data-[state=open]:bg-layer-2-active'\n }\n }\n\n return {\n ...baseStyles,\n trigger: baseStyles.trigger + ' text-neutral-dark hover:text-primary-active'\n }\n}\n\nexport interface AccordionRootProps {\n variant?: 'default' | 'tabheader'\n className?: string\n type?: 'single' | 'multiple'\n collapsible?: boolean\n defaultValue?: string | string[]\n value?: string | string[]\n onValueChange?: (value: string | string[]) => void\n children?: React.ReactNode\n}\n\nexport function AccordionRoot({\n variant = 'default',\n className,\n type = 'single',\n ...props\n}: AccordionRootProps) {\n const styles = getAccordionStyles(variant)\n\n if (type === 'multiple') {\n const {\n value,\n defaultValue,\n onValueChange: handleValueChange,\n ...restProps\n } = props\n return (\n <AccordionPrimitive.Root\n className={cx(styles.root, className)}\n defaultValue={defaultValue as string[]}\n type=\"multiple\"\n value={value as string[]}\n {...restProps}\n onValueChange={handleValueChange}\n />\n )\n }\n\n const {\n value,\n defaultValue,\n onValueChange: handleValueChange,\n ...restProps\n } = props\n return (\n <AccordionPrimitive.Root\n className={cx(styles.root, className)}\n defaultValue={defaultValue as string}\n type=\"single\"\n value={value as string}\n {...restProps}\n onValueChange={handleValueChange}\n />\n )\n}\n\nexport interface AccordionItemProps {\n variant?: 'default' | 'tabheader'\n className?: string\n value: string\n children?: React.ReactNode\n}\n\nexport function AccordionItem({\n variant = 'default',\n className,\n ...props\n}: AccordionItemProps) {\n const styles = getAccordionStyles(variant)\n return (\n <AccordionPrimitive.Item\n className={cx(styles.item, className)}\n {...props}\n />\n )\n}\n\nexport interface AccordionTriggerProps {\n variant?: 'default' | 'tabheader'\n showIcon?: boolean\n iconPosition?: 'left' | 'right'\n iconName?: 'keyboard_arrow_down' | 'chevron_right' | 'add' | 'remove'\n className?: string\n children?: React.ReactNode\n}\n\nexport function AccordionTrigger({\n variant = 'default',\n showIcon = true,\n iconPosition = 'right',\n iconName = 'keyboard_arrow_down',\n className,\n children,\n ...props\n}: AccordionTriggerProps) {\n const styles = getAccordionStyles(variant)\n\n const iconElement = showIcon ? (\n <Icon\n className=\"h-4 w-4 shrink-0 transition-transform duration-200\"\n name={iconName}\n />\n ) : null\n\n return (\n <AccordionPrimitive.Trigger\n className={cx(styles.trigger, className)}\n {...props}\n >\n {iconPosition === 'left' && iconElement}\n <span className=\"flex-1 text-left\">{children}</span>\n {iconPosition === 'right' && iconElement}\n </AccordionPrimitive.Trigger>\n )\n}\n\nexport interface AccordionContentProps {\n variant?: 'default' | 'tabheader'\n className?: string\n children?: React.ReactNode\n}\n\nexport function AccordionContent({\n variant = 'default',\n className,\n children,\n ...props\n}: AccordionContentProps) {\n const styles = getAccordionStyles(variant)\n return (\n <AccordionPrimitive.Content\n className={cx(styles.content, className)}\n {...props}\n >\n <div className={styles.contentInner}>{children}</div>\n </AccordionPrimitive.Content>\n )\n}\n\nexport interface AccordionTabHeaderProps {\n items: Array<{\n value: string\n title: string\n content: React.ReactNode\n iconVariant?: 'chevron' | 'triangle' | 'plus'\n iconColor?: 'gray' | 'orange'\n iconDirection?: 'right' | 'down'\n }>\n variant?: 'default' | 'tabheader'\n type?: 'single' | 'multiple'\n defaultValue?: string | string[]\n value?: string | string[]\n onValueChange?: (value: string | string[]) => void\n}\n\nexport function AccordionTabHeader({\n items,\n variant = 'tabheader',\n type = 'single',\n defaultValue,\n value,\n onValueChange: handleValueChange,\n ...props\n}: AccordionTabHeaderProps) {\n const getIconName = (iconVariant: string, iconDirection: string) => {\n switch (iconVariant) {\n case 'chevron':\n return iconDirection === 'right'\n ? 'chevron_right'\n : 'keyboard_arrow_down'\n case 'triangle':\n return iconDirection === 'right'\n ? 'chevron_right'\n : 'keyboard_arrow_down'\n case 'plus':\n return iconDirection === 'right' ? 'add' : 'remove'\n default:\n return 'keyboard_arrow_down'\n }\n }\n\n const getIconColor = (iconColor: string) => {\n switch (iconColor) {\n case 'gray':\n return 'text-neutral-medium'\n case 'orange':\n return 'text-orange-500'\n default:\n return 'text-neutral-dark'\n }\n }\n\n return (\n <AccordionRoot\n defaultValue={defaultValue}\n type={type}\n value={value}\n variant={variant}\n {...props}\n onValueChange={handleValueChange}\n >\n {items.map(item => (\n <AccordionItem key={item.value} value={item.value} variant={variant}>\n <AccordionTrigger\n className={getIconColor(item.iconColor || 'gray')}\n iconName={getIconName(\n item.iconVariant || 'chevron',\n item.iconDirection || 'down'\n )}\n variant={variant}\n >\n {item.title}\n </AccordionTrigger>\n <AccordionContent variant={variant}>{item.content}</AccordionContent>\n </AccordionItem>\n ))}\n </AccordionRoot>\n )\n}\n"]}
|
|
@@ -3,7 +3,7 @@ import * as class_variance_authority_types from 'class-variance-authority/types'
|
|
|
3
3
|
import { ClassVariantProps } from '@xjur-ui/util';
|
|
4
4
|
|
|
5
5
|
declare const badgeVariants: (props?: ({
|
|
6
|
-
variant?: "
|
|
6
|
+
variant?: "warning" | "primary" | "secondary" | "neutral" | "success" | "danger" | null | undefined;
|
|
7
7
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
8
8
|
declare function Badge({ variant, children, className }: ClassVariantProps<typeof badgeVariants> & {
|
|
9
9
|
children: string;
|
|
@@ -76,7 +76,7 @@ declare function DatePickerIcon({ className, name, ...props }: ComponentProps<'d
|
|
|
76
76
|
name: IconType;
|
|
77
77
|
}): react_jsx_runtime.JSX.Element;
|
|
78
78
|
declare function DatePickerSlot({ className, ...props }: ComponentProps<'span'>): react_jsx_runtime.JSX.Element;
|
|
79
|
-
declare function DatePickerValue({ className, displayValue, value, ...props }: ComponentProps<'input'> & {
|
|
79
|
+
declare function DatePickerValue({ className, displayValue, placeholder, value, ...props }: ComponentProps<'input'> & {
|
|
80
80
|
displayValue?: string;
|
|
81
81
|
}): react_jsx_runtime.JSX.Element;
|
|
82
82
|
declare function DatePickerContent({ className, sideOffset, side, align, ...props }: ComponentProps<typeof RadixPopover.Content>): react_jsx_runtime.JSX.Element;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {a as a$1}from'../../chunk-JGPHBUVM.js';import {a,b}from'../../chunk-2JQVYVAT.js';import {b as b$1}from'../../chunk-DVDHTP4C.js';import {a as a$2}from'../../chunk-EIG6CBTQ.js';import {tv,twMerge,twJoin}from'@xjur-ui/util';import {useMemo}from'react';import*as i from'@radix-ui/react-popover';import {jsx,jsxs
|
|
1
|
+
import {a as a$1}from'../../chunk-JGPHBUVM.js';import {a,b}from'../../chunk-2JQVYVAT.js';import {b as b$1}from'../../chunk-DVDHTP4C.js';import {a as a$2}from'../../chunk-EIG6CBTQ.js';import {tv,twMerge,twJoin}from'@xjur-ui/util';import {useMemo}from'react';import*as i from'@radix-ui/react-popover';import {jsx,jsxs}from'react/jsx-runtime';var P=tv({slots:{wrapper:"group flex flex-col gap-small-2x",trigger:["h-large-4x cursor-pointer relative","inline-flex w-auto items-center gap-small rounded-small-1x","py-small_1x-alt px-small","bg-layer-2-hover border border-transparent","group-has-[div[data-slot=input-action-slot]]:rounded-r-none","transition-all duration-200"],content:["group z-10 max-h-[var(--radix-popover-content-available-height)] max-w-[var(--radix-popover-content-available-width)] min-w-[var(--radix-popover-trigger-width)]"],icon:"size-large text-icon-neutral-3 flex items-center justify-center",slotText:"size-large flex items-center justify-center !text-size-label-md text-neutral-placeholder",caption:"!text-size-body-sm font-normal"},variants:{state:{normal:{trigger:"hover:border-border-layer-1 data-[state=open]:border-primary-idle data-[state=open]:hover:border-primary-idle"},error:{trigger:"border-danger-idle hover:border-danger-idle data-[state=open]:border-danger-idle data-[state=open]:hover:border-danger-idle",caption:"text-danger-label-idle"},disabled:{trigger:"pointer-events-none border-transparent bg-layer-2-idle"}}}}),{wrapper:y,trigger:h,icon:C,caption:R,slotText:w,content:k}=P();function L({className:r,state:t="normal",defaultOpen:e,variant:n="normal",modal:l,open:a$1,onOpenChange:p,...u}){return jsx(i.Root,{defaultOpen:e,modal:l,open:a$1,onOpenChange:p,children:jsx(a.Provider,{value:{state:t,variant:n},children:jsx("div",{className:y({className:r,state:t}),...u})})})}function M({className:r,...t}){let{state:e,variant:n}=b(),l=tv({base:["group bg-layer-2-idle relative"],variants:{state:{normal:["border-border-layer-2 hover:border-border-layer-3 has-[input:not(:placeholder-shown)]:border-primary-idle"],error:["border-danger-idle hover:border-danger-idle"],disabled:["border border-border-layer-2 opacity-60"]}}}),a=twMerge(h({state:e,className:r}),n==="filter"&&l({state:e,className:r}));return jsx(i.Trigger,{className:a,disabled:e==="disabled",...t})}function V(r){return jsx(a$1,{...r})}function j({className:r,name:t,...e}){let{state:n}=b();return jsx("div",{className:C({className:r,state:n}),"data-slot":"control-slot",...e,children:jsx(b$1,{name:t})})}function J({className:r,...t}){let{state:e}=b();return jsx("span",{className:w({className:r,state:e}),...t})}function S({className:r,displayValue:t="",placeholder:e,value:n,...l}){let{variant:a}=b(),p=useMemo(()=>a==="filter"?t:t||e,[t,e,a]);return jsxs("div",{className:"grid w-full items-center",children:[e&&a==="filter"&&jsx(a$1,{children:e}),e&&a==="filter"&&jsx(a$2,{className:"invisible col-start-1 row-start-1 self-center",children:e}),jsx(a$2,{className:"text-neutral-dark group-has-[div[data-slot=date-picker-left-slot]]:pl-large-1x z-10 col-start-1 row-start-1 self-center text-left",children:p}),jsx("input",{...l,"aria-readonly":true,className:twJoin("pointer-events-none",r),hidden:true,placeholder:" ",readOnly:true,value:n??""})]})}function _({className:r,sideOffset:t=5,side:e="bottom",align:n="start",...l}){let{state:a}=b();return jsx(i.Portal,{children:jsx(i.Content,{align:n,className:k({className:r,state:a}),side:e,sideOffset:t,...l})})}function q({className:r,...t}){let{state:e}=b();return jsx("p",{className:R({className:r,state:e}),...t})}export{q as DatePickerCaption,_ as DatePickerContent,j as DatePickerIcon,V as DatePickerLabel,L as DatePickerRoot,J as DatePickerSlot,M as DatePickerTrigger,S as DatePickerValue,P as datePicker};//# sourceMappingURL=date-picker.js.map
|
|
2
2
|
//# sourceMappingURL=date-picker.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/controls/date-picker.tsx"],"names":["datePicker","tv","wrapper","trigger","icon","caption","slotText","content","DatePickerRoot","className","state","defaultOpen","variant","modal","open","handleOpenChange","props","jsx","FieldContext","DatePickerTrigger","useFieldContext","filterTrigger","mergedClassName","twMerge","DatePickerLabel","FloatingLabel","DatePickerIcon","name","Icon","DatePickerSlot","DatePickerValue","displayValue","value","valueOrPlaceholder","useMemo","jsxs","Fragment","Typography","twJoin","DatePickerContent","sideOffset","side","align","DatePickerCaption"],"mappings":"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","file":"date-picker.js","sourcesContent":["import { tv, twJoin, twMerge } from '@xjur-ui/util'\nimport { useMemo, type ComponentProps } from 'react'\nimport * as RadixPopover from '@radix-ui/react-popover'\nimport { Icon, type IconType } from '../icon'\nimport { Typography } from '../typography'\nimport {\n FieldContext,\n useFieldContext,\n type FieldContextValue\n} from './context/field.context'\nimport { FloatingLabel } from './floating-label'\n\nexport const datePicker = tv({\n slots: {\n wrapper: 'group flex w-full flex-col gap-small-2x',\n trigger: [\n 'h-large-4x w-full cursor-pointer relative',\n 'flex items-center gap-small rounded-small-1x',\n 'py-small_1x-alt px-small',\n 'bg-layer-2-hover border border-transparent',\n 'group-has-[div[data-slot=input-action-slot]]:rounded-r-none',\n 'transition-all duration-200'\n ],\n content: [\n 'group z-10 max-h-[var(--radix-popover-content-available-height)] max-w-[var(--radix-popover-content-available-width)] min-w-[var(--radix-popover-trigger-width)]'\n ],\n icon: 'size-large text-icon-neutral-3 flex items-center justify-center',\n slotText:\n 'size-large flex items-center justify-center !text-size-label-md text-neutral-placeholder',\n caption: '!text-size-body-sm font-normal'\n },\n variants: {\n state: {\n normal: {\n trigger:\n 'hover:border-border-layer-1 data-[state=open]:border-primary-idle data-[state=open]:hover:border-primary-idle'\n },\n error: {\n trigger:\n 'border-danger-idle hover:border-danger-idle data-[state=open]:border-danger-idle data-[state=open]:hover:border-danger-idle',\n caption: 'text-danger-label-idle'\n },\n disabled: {\n trigger: 'pointer-events-none border-transparent bg-layer-2-idle'\n }\n }\n }\n})\n\nconst { wrapper, trigger, icon, caption, slotText, content } = datePicker()\n\nexport function DatePickerRoot({\n className,\n state = 'normal',\n defaultOpen,\n variant = 'normal',\n modal,\n open,\n onOpenChange: handleOpenChange,\n ...props\n}: ComponentProps<'div'> &\n FieldContextValue &\n ComponentProps<typeof RadixPopover.Root>) {\n return (\n <RadixPopover.Root\n defaultOpen={defaultOpen}\n modal={modal}\n open={open}\n onOpenChange={handleOpenChange}\n >\n <FieldContext.Provider value={{ state, variant }}>\n <div className={wrapper({ className, state })} {...props} />\n </FieldContext.Provider>\n </RadixPopover.Root>\n )\n}\n\nexport function DatePickerTrigger({\n className,\n ...props\n}: ComponentProps<typeof RadixPopover.Trigger>) {\n const { state, variant } = useFieldContext()\n\n const filterTrigger = tv({\n base: ['group bg-layer-2-idle relative'],\n variants: {\n state: {\n normal: [\n 'border-border-layer-2 hover:border-border-layer-3 has-[input:not(:placeholder-shown)]:border-primary-idle'\n ],\n error: ['border-danger-idle hover:border-danger-idle'],\n disabled: ['border border-border-layer-2 opacity-60']\n }\n }\n })\n\n const mergedClassName = twMerge(\n trigger({ state, className }),\n variant === 'filter' && filterTrigger({ state, className })\n )\n\n return (\n <RadixPopover.Trigger\n className={mergedClassName}\n disabled={state === 'disabled'}\n {...props}\n />\n )\n}\n\nexport function DatePickerLabel(props: ComponentProps<typeof FloatingLabel>) {\n return <FloatingLabel {...props} />\n}\n\nexport function DatePickerIcon({\n className,\n name,\n ...props\n}: ComponentProps<'div'> & {\n name: IconType\n}) {\n const { state } = useFieldContext()\n\n return (\n <div className={icon({ className, state })} {...props}>\n <Icon name={name} />\n </div>\n )\n}\n\nexport function DatePickerSlot({\n className,\n ...props\n}: ComponentProps<'span'>) {\n const { state } = useFieldContext()\n return <span className={slotText({ className, state })} {...props} />\n}\n\nexport function DatePickerValue({\n className,\n displayValue = '',\n value,\n ...props\n}: ComponentProps<'input'> & { displayValue?: string }) {\n const { variant } = useFieldContext()\n\n const valueOrPlaceholder = useMemo(() => {\n if (variant === 'filter') return displayValue\n return displayValue || props.placeholder\n }, [displayValue, props.placeholder, variant])\n\n return (\n <>\n <Typography className=\"text-neutral-dark group-has-[div[data-slot=date-picker-left-slot]]:pl-large-1x\">\n {valueOrPlaceholder}\n </Typography>\n\n <input\n {...props}\n aria-readonly={true}\n className={twJoin('pointer-events-none', className)}\n hidden={true}\n placeholder={' '}\n readOnly={true}\n value={value ?? ''}\n />\n </>\n )\n}\n\nexport function DatePickerContent({\n className,\n sideOffset = 5,\n side = 'bottom',\n align = 'start',\n ...props\n}: ComponentProps<typeof RadixPopover.Content>) {\n const { state } = useFieldContext()\n\n return (\n <RadixPopover.Portal>\n <RadixPopover.Content\n align={align}\n className={content({ className, state })}\n side={side}\n sideOffset={sideOffset}\n {...props}\n />\n </RadixPopover.Portal>\n )\n}\n\nexport function DatePickerCaption({\n className,\n ...props\n}: ComponentProps<'p'>) {\n const { state } = useFieldContext()\n return <p className={caption({ className, state })} {...props} />\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/controls/date-picker.tsx"],"names":["datePicker","tv","wrapper","trigger","icon","caption","slotText","content","DatePickerRoot","className","state","defaultOpen","variant","modal","open","handleOpenChange","props","jsx","FieldContext","DatePickerTrigger","useFieldContext","filterTrigger","mergedClassName","twMerge","DatePickerLabel","FloatingLabel","DatePickerIcon","name","Icon","DatePickerSlot","DatePickerValue","displayValue","placeholder","value","valueOrPlaceholder","useMemo","jsxs","Typography","twJoin","DatePickerContent","sideOffset","side","align","DatePickerCaption"],"mappings":"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","file":"date-picker.js","sourcesContent":["import { tv, twJoin, twMerge } from '@xjur-ui/util'\nimport { useMemo, type ComponentProps } from 'react'\nimport * as RadixPopover from '@radix-ui/react-popover'\nimport { Icon, type IconType } from '../icon'\nimport { Typography } from '../typography'\nimport {\n FieldContext,\n useFieldContext,\n type FieldContextValue\n} from './context/field.context'\nimport { FloatingLabel } from './floating-label'\n\nexport const datePicker = tv({\n slots: {\n wrapper: 'group flex flex-col gap-small-2x',\n trigger: [\n 'h-large-4x cursor-pointer relative',\n 'inline-flex w-auto items-center gap-small rounded-small-1x',\n 'py-small_1x-alt px-small',\n 'bg-layer-2-hover border border-transparent',\n 'group-has-[div[data-slot=input-action-slot]]:rounded-r-none',\n 'transition-all duration-200'\n ],\n content: [\n 'group z-10 max-h-[var(--radix-popover-content-available-height)] max-w-[var(--radix-popover-content-available-width)] min-w-[var(--radix-popover-trigger-width)]'\n ],\n icon: 'size-large text-icon-neutral-3 flex items-center justify-center',\n slotText:\n 'size-large flex items-center justify-center !text-size-label-md text-neutral-placeholder',\n caption: '!text-size-body-sm font-normal'\n },\n variants: {\n state: {\n normal: {\n trigger:\n 'hover:border-border-layer-1 data-[state=open]:border-primary-idle data-[state=open]:hover:border-primary-idle'\n },\n error: {\n trigger:\n 'border-danger-idle hover:border-danger-idle data-[state=open]:border-danger-idle data-[state=open]:hover:border-danger-idle',\n caption: 'text-danger-label-idle'\n },\n disabled: {\n trigger: 'pointer-events-none border-transparent bg-layer-2-idle'\n }\n }\n }\n})\n\nconst { wrapper, trigger, icon, caption, slotText, content } = datePicker()\n\nexport function DatePickerRoot({\n className,\n state = 'normal',\n defaultOpen,\n variant = 'normal',\n modal,\n open,\n onOpenChange: handleOpenChange,\n ...props\n}: ComponentProps<'div'> &\n FieldContextValue &\n ComponentProps<typeof RadixPopover.Root>) {\n return (\n <RadixPopover.Root\n defaultOpen={defaultOpen}\n modal={modal}\n open={open}\n onOpenChange={handleOpenChange}\n >\n <FieldContext.Provider value={{ state, variant }}>\n <div className={wrapper({ className, state })} {...props} />\n </FieldContext.Provider>\n </RadixPopover.Root>\n )\n}\n\nexport function DatePickerTrigger({\n className,\n ...props\n}: ComponentProps<typeof RadixPopover.Trigger>) {\n const { state, variant } = useFieldContext()\n\n const filterTrigger = tv({\n base: ['group bg-layer-2-idle relative'],\n variants: {\n state: {\n normal: [\n 'border-border-layer-2 hover:border-border-layer-3 has-[input:not(:placeholder-shown)]:border-primary-idle'\n ],\n error: ['border-danger-idle hover:border-danger-idle'],\n disabled: ['border border-border-layer-2 opacity-60']\n }\n }\n })\n\n const mergedClassName = twMerge(\n trigger({ state, className }),\n variant === 'filter' && filterTrigger({ state, className })\n )\n\n return (\n <RadixPopover.Trigger\n className={mergedClassName}\n disabled={state === 'disabled'}\n {...props}\n />\n )\n}\n\nexport function DatePickerLabel(props: ComponentProps<typeof FloatingLabel>) {\n return <FloatingLabel {...props} />\n}\n\nexport function DatePickerIcon({\n className,\n name,\n ...props\n}: ComponentProps<'div'> & {\n name: IconType\n}) {\n const { state } = useFieldContext()\n\n return (\n <div\n className={icon({ className, state })}\n data-slot=\"control-slot\"\n {...props}\n >\n <Icon name={name} />\n </div>\n )\n}\n\nexport function DatePickerSlot({\n className,\n ...props\n}: ComponentProps<'span'>) {\n const { state } = useFieldContext()\n return <span className={slotText({ className, state })} {...props} />\n}\n\nexport function DatePickerValue({\n className,\n displayValue = '',\n placeholder,\n value,\n ...props\n}: ComponentProps<'input'> & { displayValue?: string }) {\n const { variant } = useFieldContext()\n\n const valueOrPlaceholder = useMemo(() => {\n if (variant === 'filter') return displayValue\n return displayValue || placeholder\n }, [displayValue, placeholder, variant])\n\n return (\n <div className=\"grid w-full items-center\">\n {placeholder && variant === 'filter' && (\n <FloatingLabel>{placeholder}</FloatingLabel>\n )}\n\n {placeholder && variant === 'filter' && (\n <Typography className=\"invisible col-start-1 row-start-1 self-center\">\n {placeholder}\n </Typography>\n )}\n\n <Typography className=\"text-neutral-dark group-has-[div[data-slot=date-picker-left-slot]]:pl-large-1x z-10 col-start-1 row-start-1 self-center text-left\">\n {valueOrPlaceholder}\n </Typography>\n\n <input\n {...props}\n aria-readonly={true}\n className={twJoin('pointer-events-none', className)}\n hidden={true}\n placeholder={' '}\n readOnly={true}\n value={value ?? ''}\n />\n </div>\n )\n}\n\nexport function DatePickerContent({\n className,\n sideOffset = 5,\n side = 'bottom',\n align = 'start',\n ...props\n}: ComponentProps<typeof RadixPopover.Content>) {\n const { state } = useFieldContext()\n\n return (\n <RadixPopover.Portal>\n <RadixPopover.Content\n align={align}\n className={content({ className, state })}\n side={side}\n sideOffset={sideOffset}\n {...props}\n />\n </RadixPopover.Portal>\n )\n}\n\nexport function DatePickerCaption({\n className,\n ...props\n}: ComponentProps<'p'>) {\n const { state } = useFieldContext()\n return <p className={caption({ className, state })} {...props} />\n}\n"]}
|