@egose/shadcn-theme 0.0.8 → 0.0.10
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/{chunk-OG5L375J.js → chunk-5GI6UANN.js} +1 -1
- package/chunk-5GI6UANN.js.map +1 -0
- package/chunk-CN2Y7Q7T.js +71 -0
- package/chunk-CN2Y7Q7T.js.map +1 -0
- package/{chunk-NLD5ARTD.mjs → chunk-HPHG6IFO.mjs} +2 -3
- package/chunk-HPHG6IFO.mjs.map +1 -0
- package/chunk-M2OVLURH.mjs +38 -0
- package/chunk-M2OVLURH.mjs.map +1 -0
- package/{chunk-QZBTZODT.mjs → chunk-NEW6PZDO.mjs} +1 -1
- package/chunk-NEW6PZDO.mjs.map +1 -0
- package/chunk-QNHDDTYE.mjs +71 -0
- package/chunk-QNHDDTYE.mjs.map +1 -0
- package/{chunk-LNSIHNOT.js → chunk-Y2EVJJLM.js} +5 -4
- package/chunk-Y2EVJJLM.js.map +1 -0
- package/{chunk-3L3MLTAY.mjs → chunk-YFW7UI3E.mjs} +5 -4
- package/chunk-YFW7UI3E.mjs.map +1 -0
- package/chunk-Z33UILCV.js +38 -0
- package/chunk-Z33UILCV.js.map +1 -0
- package/{chunk-QYP5K5WS.js → chunk-Z6AUIAE7.js} +1 -2
- package/chunk-Z6AUIAE7.js.map +1 -0
- package/components/form/date-range-picker.d.mts +19 -0
- package/components/form/date-range-picker.d.ts +19 -0
- package/components/form/date-range-picker.js +91 -0
- package/components/form/date-range-picker.js.map +1 -0
- package/components/form/date-range-picker.mjs +91 -0
- package/components/form/date-range-picker.mjs.map +1 -0
- package/components/form/hook-text-input.js +2 -2
- package/components/form/hook-text-input.mjs +1 -1
- package/components/form/hook-textarea.js +2 -2
- package/components/form/hook-textarea.mjs +1 -1
- package/components/form/text-input.js +2 -2
- package/components/form/text-input.mjs +1 -1
- package/components/form/textarea.js +2 -2
- package/components/form/textarea.mjs +1 -1
- package/components/ui/alert-dialog.js +3 -3
- package/components/ui/alert-dialog.mjs +1 -1
- package/components/ui/button.d.mts +1 -1
- package/components/ui/button.d.ts +1 -1
- package/components/ui/button.js +2 -2
- package/components/ui/button.mjs +1 -1
- package/components/ui/calendar.d.mts +2 -1
- package/components/ui/calendar.d.ts +2 -1
- package/components/ui/calendar.js +7 -56
- package/components/ui/calendar.js.map +1 -1
- package/components/ui/calendar.mjs +6 -55
- package/components/ui/calendar.mjs.map +1 -1
- package/components/ui/carousel.js +3 -3
- package/components/ui/carousel.mjs +1 -1
- package/components/ui/pagination.js +2 -2
- package/components/ui/pagination.mjs +1 -1
- package/components/ui/popover.js +5 -27
- package/components/ui/popover.js.map +1 -1
- package/components/ui/popover.mjs +7 -29
- package/components/ui/popover.mjs.map +1 -1
- package/components/ui/sheet.d.mts +1 -1
- package/components/ui/sheet.d.ts +1 -1
- package/components/ui/sidebar.js +4 -4
- package/components/ui/sidebar.js.map +1 -1
- package/components/ui/sidebar.mjs +4 -4
- package/package.json +1 -1
- package/chunk-3L3MLTAY.mjs.map +0 -1
- package/chunk-LNSIHNOT.js.map +0 -1
- package/chunk-NLD5ARTD.mjs.map +0 -1
- package/chunk-OG5L375J.js.map +0 -1
- package/chunk-QYP5K5WS.js.map +0 -1
- package/chunk-QZBTZODT.mjs.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/ahnjun/projects/egose-shadcn/package/dist/chunk-5GI6UANN.js","../components/form/text-input.tsx"],"names":[],"mappings":"AAAA;AACE;AACF,sDAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B;AACE;AACA;AACA;AACF,sDAA4B;AAC5B;AACA;ACbA,4EAA2C;AAC3C,wGAAuB;AAOvB,IAAM,WAAA,EAAa,EAAA;AAcZ,SAAS,aAAA,CAAc,EAAA,EAUP;AAVO,EAAA,IAAA,GAAA,EAAA,EAAA,EAC5B;AAAA,IAAA,EAAA;AAAA,IACA,IAAA;AAAA,IACA,KAAA;AAAA,IACA,KAAA,EAAO,MAAA;AAAA,IACP,UAAA;AAAA,IACA,QAAA;AAAA,IACA,QAAA;AAAA,IACA,WAAA,EAAa,CAAC;AAAA,EAhChB,EAAA,EAwB8B,EAAA,EASzB,OAAA,EAAA,wCAAA,EATyB,EASzB;AAAA,IARH,IAAA;AAAA,IACA,MAAA;AAAA,IACA,OAAA;AAAA,IACA,MAAA;AAAA,IACA,YAAA;AAAA,IACA,UAAA;AAAA,IACA,UAAA;AAAA,IACA;AAAA,EAAA,CAAA,CAAA;AAGA,EAAA,GAAA,CAAI,CAAC,EAAA,EAAI,GAAA,EAAK,iCAAA,IAAe,CAAA;AAE7B,EAAA,uBACE,eAAA,CAAA,aAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,iCAAA,aAAG,EAAe,WAAA,GAAA,KAAA,EAAA,KAAA,EAAA,EAAA,UAAA,CAAY,OAAO,EAAA,CAAA,EAClD,MAAA,mBACC,eAAA,CAAA,aAAA,CAAC,sBAAA,EAAA,EAAM,OAAA,EAAS,EAAA,EAAI,SAAA,EAAW,WAAA,GAAA,KAAA,EAAA,KAAA,EAAA,EAAA,UAAA,CAAY,KAAA,EAAO,SAAA,CAAA,EAC/C,KACH,CAAA,kBAEF,eAAA,CAAA,aAAA;AAAA,IAAC,sBAAA;AAAA,IAAA,4CAAA,6CAAA,6CAAA;AAAA,MACC,IAAA;AAAA,MACA,EAAA;AAAA,MACA,IAAA;AAAA,MACA,QAAA;AAAA,MACA,YAAA,EAAa;AAAA,IAAA,CAAA,EACT,UAAA,CAAA,EACA,MAAA,CAAA,EAPL;AAAA,MAQC,SAAA,EAAW,iCAAA,UAAG,EAAY,WAAA,GAAA,KAAA,EAAA,KAAA,EAAA,EAAA,UAAA,CAAY,KAAK;AAAA,IAAA,CAAA;AAAA,EAC7C,CACF,CAAA;AAEJ;ADHA;AACA;AACE;AACF,sCAAC","file":"/home/ahnjun/projects/egose-shadcn/package/dist/chunk-5GI6UANN.js","sourcesContent":[null,"'use client';\n\nimport React, { InputHTMLAttributes } from 'react';\nimport _kebabCase from 'lodash-es/kebabCase';\nimport { cn } from '../../lib/utils';\nimport { Label } from '../ui/label';\nimport { Input } from '../ui/input';\n\ninterface InputProps extends InputHTMLAttributes<HTMLInputElement> {}\n\nconst inputClass = '';\n\nexport interface FormTextInputProps extends InputProps {\n id?: string;\n name: string;\n label?: string;\n inputProps?: InputProps;\n classNames?: {\n wrapper?: string;\n label?: string;\n input?: string;\n };\n}\n\nexport function FormTextInput({\n id,\n name,\n label,\n type = 'text',\n classNames,\n required,\n disabled,\n inputProps = {},\n ...others\n}: FormTextInputProps) {\n if (!id) id = _kebabCase(name);\n\n return (\n <div className={cn('_text-input', classNames?.wrapper)}>\n {label && (\n <Label htmlFor={id} className={classNames?.label} required={required}>\n {label}\n </Label>\n )}\n <Input\n type={type}\n id={id}\n name={name}\n disabled={disabled}\n autoComplete=\"off\"\n {...inputProps}\n {...others}\n className={cn(inputClass, classNames?.input)}\n />\n </div>\n );\n}\n"]}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } }
|
|
2
|
+
|
|
3
|
+
var _chunkY2EVJJLMjs = require('./chunk-Y2EVJJLM.js');
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
var _chunkB2G2EZ4Pjs = require('./chunk-B2G2EZ4P.js');
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
var _chunk2NMEKWO5js = require('./chunk-2NMEKWO5.js');
|
|
12
|
+
|
|
13
|
+
// components/ui/calendar.tsx
|
|
14
|
+
var _react = require('react'); var React = _interopRequireWildcard(_react);
|
|
15
|
+
var _lucidereact = require('lucide-react');
|
|
16
|
+
var _reactdaypicker = require('react-day-picker');
|
|
17
|
+
function Calendar(_a) {
|
|
18
|
+
var _b = _a, { className, classNames, showOutsideDays = true } = _b, props = _chunk2NMEKWO5js.__objRest.call(void 0, _b, ["className", "classNames", "showOutsideDays"]);
|
|
19
|
+
const navigationButtonClass = _chunkB2G2EZ4Pjs.cn.call(void 0,
|
|
20
|
+
_chunkY2EVJJLMjs.buttonVariants.call(void 0, { variant: "light" }),
|
|
21
|
+
"h-7 w-7 bg-transparent p-0 opacity-50 hover:opacity-100 z-10"
|
|
22
|
+
);
|
|
23
|
+
return /* @__PURE__ */ React.createElement(
|
|
24
|
+
_reactdaypicker.DayPicker,
|
|
25
|
+
_chunk2NMEKWO5js.__spreadValues.call(void 0, {
|
|
26
|
+
showOutsideDays,
|
|
27
|
+
className: _chunkB2G2EZ4Pjs.cn.call(void 0, "p-3 bg-white", className),
|
|
28
|
+
classNames: _chunk2NMEKWO5js.__spreadValues.call(void 0, {
|
|
29
|
+
month: "space-y-4",
|
|
30
|
+
months: "flex flex-col sm:flex-row space-y-4 sm:space-y-0 relative gap-2",
|
|
31
|
+
month_caption: "flex justify-center pt-1 relative items-center",
|
|
32
|
+
month_grid: "w-full border-collapse space-y-1",
|
|
33
|
+
caption_label: "text-sm font-medium",
|
|
34
|
+
nav: "flex items-center justify-between absolute inset-x-0",
|
|
35
|
+
button_previous: navigationButtonClass,
|
|
36
|
+
button_next: navigationButtonClass,
|
|
37
|
+
weeks: "w-full border-collapse",
|
|
38
|
+
weekdays: "flex",
|
|
39
|
+
weekday: "text-muted-foreground rounded-md w-9 font-normal text-[0.8rem]",
|
|
40
|
+
week: "flex w-full mt-2",
|
|
41
|
+
day: "h-9 w-9 p-0 font-normal aria-selected:opacity-100 rounded-none first:aria-selected:rounded-l-md last:aria-selected:rounded-r-md",
|
|
42
|
+
day_button: _chunkB2G2EZ4Pjs.cn.call(void 0,
|
|
43
|
+
_chunkY2EVJJLMjs.buttonVariants.call(void 0, { variant: "ghost" }),
|
|
44
|
+
"h-9 w-9 text-center text-sm p-0 relative focus-within:relative focus-within:z-20"
|
|
45
|
+
),
|
|
46
|
+
range_start: "day-range-start !bg-secondary rounded-l-md [&>button]:bg-primary [&>button]:text-primary-foreground [&>button]:hover:bg-primary [&>button]:hover:text-primary-foreground",
|
|
47
|
+
range_end: "day-range-end !bg-secondary rounded-r-md [&>button]:bg-primary [&>button]:text-primary-foreground [&>button]:hover:bg-primary [&>button]:hover:text-primary-foreground",
|
|
48
|
+
range_middle: "aria-selected:bg-secondary aria-selected:text-secondary-foreground",
|
|
49
|
+
selected: _chunkB2G2EZ4Pjs.cn.call(void 0,
|
|
50
|
+
props.mode === "range" ? "bg-primary hover:bg-primary hover:text-primary-foreground focus:bg-primary focus:text-primary-foreground" : "[&>button]:focus:bg-primary [&>button]:focus:text-primary-foreground"
|
|
51
|
+
),
|
|
52
|
+
today: "text-success italic",
|
|
53
|
+
outside: "day-outside text-muted-foreground opacity-50 !aria-selected:bg-secondary/50 !aria-selected:text-muted-foreground !aria-selected:opacity-30",
|
|
54
|
+
disabled: "text-muted-foreground opacity-50",
|
|
55
|
+
hidden: "invisible"
|
|
56
|
+
}, classNames),
|
|
57
|
+
components: {
|
|
58
|
+
Chevron: (_a2) => {
|
|
59
|
+
var props2 = _chunk2NMEKWO5js.__objRest.call(void 0, _a2, []);
|
|
60
|
+
return props2.orientation === "left" ? /* @__PURE__ */ React.createElement(_lucidereact.ChevronLeft, _chunk2NMEKWO5js.__spreadProps.call(void 0, _chunk2NMEKWO5js.__spreadValues.call(void 0, {}, props2), { className: "h-4 w-4" })) : /* @__PURE__ */ React.createElement(_lucidereact.ChevronRight, _chunk2NMEKWO5js.__spreadProps.call(void 0, _chunk2NMEKWO5js.__spreadValues.call(void 0, {}, props2), { className: "h-4 w-4" }));
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
}, props)
|
|
64
|
+
);
|
|
65
|
+
}
|
|
66
|
+
Calendar.displayName = "Calendar";
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
exports.Calendar = Calendar;
|
|
71
|
+
//# sourceMappingURL=chunk-CN2Y7Q7T.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/ahnjun/projects/egose-shadcn/package/dist/chunk-CN2Y7Q7T.js","../components/ui/calendar.tsx"],"names":["_a","props"],"mappings":"AAAA;AACE;AACF,sDAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B;AACE;AACA;AACA;AACF,sDAA4B;AAC5B;AACA;ACVA,2EAAuB;AAEvB,2CAA0C;AAC1C,kDAA0B;AAO1B,SAAS,QAAA,CAAS,EAAA,EAA4E;AAA5E,EAAA,IAAA,GAAA,EAAA,EAAA,EAAE,EAAA,SAAA,EAAW,UAAA,EAAY,gBAAA,EAAkB,KAZ7D,EAAA,EAYkB,EAAA,EAAoD,MAAA,EAAA,wCAAA,EAApD,EAAoD,CAAlD,WAAA,EAAW,YAAA,EAAY,iBAAA,CAAA,CAAA;AACzC,EAAA,MAAM,sBAAA,EAAwB,iCAAA;AAAA,IAC5B,6CAAA,EAAiB,OAAA,EAAS,QAAQ,CAAC,CAAA;AAAA,IACnC;AAAA,EACF,CAAA;AAEA,EAAA,uBACE,KAAA,CAAA,aAAA;AAAA,IAAC,yBAAA;AAAA,IAAA,6CAAA;AAAA,MACC,eAAA;AAAA,MACA,SAAA,EAAW,iCAAA,cAAG,EAAgB,SAAS,CAAA;AAAA,MACvC,UAAA,EAAY,6CAAA;AAAA,QACV,KAAA,EAAO,WAAA;AAAA,QACP,MAAA,EAAQ,iEAAA;AAAA,QACR,aAAA,EAAe,gDAAA;AAAA,QACf,UAAA,EAAY,kCAAA;AAAA,QACZ,aAAA,EAAe,qBAAA;AAAA,QACf,GAAA,EAAK,sDAAA;AAAA,QACL,eAAA,EAAiB,qBAAA;AAAA,QACjB,WAAA,EAAa,qBAAA;AAAA,QACb,KAAA,EAAO,wBAAA;AAAA,QACP,QAAA,EAAU,MAAA;AAAA,QACV,OAAA,EAAS,gEAAA;AAAA,QACT,IAAA,EAAM,kBAAA;AAAA,QACN,GAAA,EAAK,iIAAA;AAAA,QACL,UAAA,EAAY,iCAAA;AAAA,UACV,6CAAA,EAAiB,OAAA,EAAS,QAAQ,CAAC,CAAA;AAAA,UACnC;AAAA,QACF,CAAA;AAAA,QACA,WAAA,EACE,0KAAA;AAAA,QACF,SAAA,EACE,wKAAA;AAAA,QACF,YAAA,EAAc,oEAAA;AAAA,QACd,QAAA,EAAU,iCAAA;AAAA,UACR,KAAA,CAAM,KAAA,IAAS,QAAA,EACX,2GAAA,EACA;AAAA,QACN,CAAA;AAAA,QACA,KAAA,EAAO,qBAAA;AAAA,QACP,OAAA,EACE,4IAAA;AAAA,QACF,QAAA,EAAU,kCAAA;AAAA,QACV,MAAA,EAAQ;AAAA,MAAA,CAAA,EACL,UAAA,CAAA;AAAA,MAEL,UAAA,EAAY;AAAA,QACV,OAAA,EAAS,CAACA,GAAAA,EAAAA,GAAc;AAAd,UAAA,IAAKC,OAAAA,EAAA,wCAAA,GAALD,EAAK,CAAA,CAAA,CAAA;AACb,UAAA,OAAAC,MAAAA,CAAM,YAAA,IAAgB,OAAA,kBACpB,KAAA,CAAA,aAAA,CAAC,wBAAA,EAAA,4CAAA,6CAAA,CAAA,CAAA,EAAgBA,MAAAA,CAAAA,EAAhB,EAAuB,SAAA,EAAU,UAAA,CAAA,CAAU,EAAA,kBAE5C,KAAA,CAAA,aAAA,CAAC,yBAAA,EAAA,4CAAA,6CAAA,CAAA,CAAA,EAAiBA,MAAAA,CAAAA,EAAjB,EAAwB,SAAA,EAAU,UAAA,CAAA,CAAU,CAAA;AAAA,QAAA;AAAA,MAEnD;AAAA,IAAA,CAAA,EACI,KAAA;AAAA,EACN,CAAA;AAEJ;AACA,QAAA,CAAS,YAAA,EAAc,UAAA;ADHvB;AACA;AACE;AACF,4BAAC","file":"/home/ahnjun/projects/egose-shadcn/package/dist/chunk-CN2Y7Q7T.js","sourcesContent":[null,"'use client';\n\nimport * as React from 'react';\nimport type { ComponentProps } from 'react';\nimport { ChevronLeft, ChevronRight } from 'lucide-react';\nimport { DayPicker } from 'react-day-picker';\n\nimport { cn } from '../../lib/utils';\nimport { buttonVariants } from '../../components/ui/button';\n\nexport type CalendarProps = ComponentProps<typeof DayPicker>;\n\nfunction Calendar({ className, classNames, showOutsideDays = true, ...props }: CalendarProps) {\n const navigationButtonClass = cn(\n buttonVariants({ variant: 'light' }),\n 'h-7 w-7 bg-transparent p-0 opacity-50 hover:opacity-100 z-10',\n );\n\n return (\n <DayPicker\n showOutsideDays={showOutsideDays}\n className={cn('p-3 bg-white', className)}\n classNames={{\n month: 'space-y-4',\n months: 'flex flex-col sm:flex-row space-y-4 sm:space-y-0 relative gap-2',\n month_caption: 'flex justify-center pt-1 relative items-center',\n month_grid: 'w-full border-collapse space-y-1',\n caption_label: 'text-sm font-medium',\n nav: 'flex items-center justify-between absolute inset-x-0',\n button_previous: navigationButtonClass,\n button_next: navigationButtonClass,\n weeks: 'w-full border-collapse',\n weekdays: 'flex',\n weekday: 'text-muted-foreground rounded-md w-9 font-normal text-[0.8rem]',\n week: 'flex w-full mt-2',\n day: 'h-9 w-9 p-0 font-normal aria-selected:opacity-100 rounded-none first:aria-selected:rounded-l-md last:aria-selected:rounded-r-md',\n day_button: cn(\n buttonVariants({ variant: 'ghost' }),\n 'h-9 w-9 text-center text-sm p-0 relative focus-within:relative focus-within:z-20',\n ),\n range_start:\n 'day-range-start !bg-secondary rounded-l-md [&>button]:bg-primary [&>button]:text-primary-foreground [&>button]:hover:bg-primary [&>button]:hover:text-primary-foreground',\n range_end:\n 'day-range-end !bg-secondary rounded-r-md [&>button]:bg-primary [&>button]:text-primary-foreground [&>button]:hover:bg-primary [&>button]:hover:text-primary-foreground',\n range_middle: 'aria-selected:bg-secondary aria-selected:text-secondary-foreground',\n selected: cn(\n props.mode === 'range'\n ? 'bg-primary hover:bg-primary hover:text-primary-foreground focus:bg-primary focus:text-primary-foreground'\n : '[&>button]:focus:bg-primary [&>button]:focus:text-primary-foreground',\n ),\n today: 'text-success italic',\n outside:\n 'day-outside text-muted-foreground opacity-50 !aria-selected:bg-secondary/50 !aria-selected:text-muted-foreground !aria-selected:opacity-30',\n disabled: 'text-muted-foreground opacity-50',\n hidden: 'invisible',\n ...classNames,\n }}\n components={{\n Chevron: ({ ...props }) =>\n props.orientation === 'left' ? (\n <ChevronLeft {...props} className=\"h-4 w-4\" />\n ) : (\n <ChevronRight {...props} className=\"h-4 w-4\" />\n ),\n }}\n {...props}\n />\n );\n}\nCalendar.displayName = 'Calendar';\n\nexport { Calendar };\n"]}
|
|
@@ -14,10 +14,9 @@ import {
|
|
|
14
14
|
} from "./chunk-YOSPWY5K.mjs";
|
|
15
15
|
|
|
16
16
|
// components/form/textarea.tsx
|
|
17
|
-
import React from "react";
|
|
17
|
+
import React, { useRef } from "react";
|
|
18
18
|
import _isFunction from "lodash-es/isFunction";
|
|
19
19
|
import _kebabCase from "lodash-es/kebabCase";
|
|
20
|
-
import { useRef } from "react";
|
|
21
20
|
var inputClass = "";
|
|
22
21
|
function FormTextarea(_a) {
|
|
23
22
|
var _b = _a, {
|
|
@@ -69,4 +68,4 @@ function FormTextarea(_a) {
|
|
|
69
68
|
export {
|
|
70
69
|
FormTextarea
|
|
71
70
|
};
|
|
72
|
-
//# sourceMappingURL=chunk-
|
|
71
|
+
//# sourceMappingURL=chunk-HPHG6IFO.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../components/form/textarea.tsx"],"sourcesContent":["'use client';\n\nimport React, { TextareaHTMLAttributes, useRef } from 'react';\nimport _isFunction from 'lodash-es/isFunction';\nimport _kebabCase from 'lodash-es/kebabCase';\nimport { cn } from '../../lib/utils';\nimport { Label } from '../ui/label';\nimport { Textarea } from '../ui/textarea';\n\ninterface InputProps extends TextareaHTMLAttributes<HTMLTextAreaElement> {}\n\nconst inputClass = '';\n\nexport interface FormTextareaProps extends InputProps {\n id?: string;\n name: string;\n label?: string;\n inputProps?: InputProps & { ref?: any };\n classNames?: {\n wrapper?: string;\n label?: string;\n input?: string;\n };\n}\n\nexport function FormTextarea({\n id,\n name,\n label,\n rows = 5,\n classNames,\n required,\n disabled,\n inputProps = {},\n ...others\n}: FormTextareaProps) {\n if (!id) id = _kebabCase(name);\n const _ref = useRef<HTMLTextAreaElement>(null);\n\n return (\n <div className={cn('textarea', classNames?.wrapper)}>\n {label && (\n <Label htmlFor={id} className={classNames?.label} required={required}>\n {label}\n </Label>\n )}\n <Textarea\n id={id}\n name={name}\n rows={rows}\n disabled={disabled}\n autoComplete=\"off\"\n {...inputProps}\n {...others}\n // Required to bind three potential refs:\n // 1. From the inputProps ex) react-hook-form.\n // 2. From the this component instance itself.\n ref={(el) => {\n if (!el) return;\n\n [_ref, inputProps.ref].forEach((rf) => {\n if (!rf) return;\n\n if (_isFunction(rf)) {\n rf(el);\n } else {\n rf.current = el;\n }\n });\n }}\n className={cn(inputClass, classNames?.input)}\n />\n </div>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;AAEA,OAAO,SAAiC,cAAc;AACtD,OAAO,iBAAiB;AACxB,OAAO,gBAAgB;AAOvB,IAAM,aAAa;AAcZ,SAAS,aAAa,IAUP;AAVO,eAC3B;AAAA;AAAA,IACA;AAAA,IACA;AAAA,IACA,OAAO;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,IACA,aAAa,CAAC;AAAA,EAjChB,IAyB6B,IASxB,mBATwB,IASxB;AAAA,IARH;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAGA,MAAI,CAAC,GAAI,MAAK,WAAW,IAAI;AAC7B,QAAM,OAAO,OAA4B,IAAI;AAE7C,SACE,oCAAC,SAAI,WAAW,GAAG,YAAY,yCAAY,OAAO,KAC/C,SACC,oCAAC,SAAM,SAAS,IAAI,WAAW,yCAAY,OAAO,YAC/C,KACH,GAEF;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,cAAa;AAAA,OACT,aACA,SAPL;AAAA,MAWC,KAAK,CAAC,OAAO;AACX,YAAI,CAAC,GAAI;AAET,SAAC,MAAM,WAAW,GAAG,EAAE,QAAQ,CAAC,OAAO;AACrC,cAAI,CAAC,GAAI;AAET,cAAI,YAAY,EAAE,GAAG;AACnB,eAAG,EAAE;AAAA,UACP,OAAO;AACL,eAAG,UAAU;AAAA,UACf;AAAA,QACF,CAAC;AAAA,MACH;AAAA,MACA,WAAW,GAAG,YAAY,yCAAY,KAAK;AAAA;AAAA,EAC7C,CACF;AAEJ;","names":[]}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import {
|
|
2
|
+
cn
|
|
3
|
+
} from "./chunk-3ONILUYO.mjs";
|
|
4
|
+
import {
|
|
5
|
+
__objRest,
|
|
6
|
+
__spreadValues
|
|
7
|
+
} from "./chunk-YOSPWY5K.mjs";
|
|
8
|
+
|
|
9
|
+
// components/ui/popover.tsx
|
|
10
|
+
import * as React from "react";
|
|
11
|
+
import * as PopoverPrimitive from "@radix-ui/react-popover";
|
|
12
|
+
var Popover = PopoverPrimitive.Root;
|
|
13
|
+
var PopoverTrigger = PopoverPrimitive.Trigger;
|
|
14
|
+
var PopoverAnchor = PopoverPrimitive.Anchor;
|
|
15
|
+
var PopoverContent = React.forwardRef((_a, ref) => {
|
|
16
|
+
var _b = _a, { className, align = "center", sideOffset = 4 } = _b, props = __objRest(_b, ["className", "align", "sideOffset"]);
|
|
17
|
+
return /* @__PURE__ */ React.createElement(PopoverPrimitive.Portal, null, /* @__PURE__ */ React.createElement(
|
|
18
|
+
PopoverPrimitive.Content,
|
|
19
|
+
__spreadValues({
|
|
20
|
+
ref,
|
|
21
|
+
align,
|
|
22
|
+
sideOffset,
|
|
23
|
+
className: cn(
|
|
24
|
+
"z-50 w-72 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
|
|
25
|
+
className
|
|
26
|
+
)
|
|
27
|
+
}, props)
|
|
28
|
+
));
|
|
29
|
+
});
|
|
30
|
+
PopoverContent.displayName = PopoverPrimitive.Content.displayName;
|
|
31
|
+
|
|
32
|
+
export {
|
|
33
|
+
Popover,
|
|
34
|
+
PopoverTrigger,
|
|
35
|
+
PopoverAnchor,
|
|
36
|
+
PopoverContent
|
|
37
|
+
};
|
|
38
|
+
//# sourceMappingURL=chunk-M2OVLURH.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../components/ui/popover.tsx"],"sourcesContent":["import * as React from 'react';\nimport * as PopoverPrimitive from '@radix-ui/react-popover';\n\nimport { cn } from '../../lib/utils';\n\nconst Popover = PopoverPrimitive.Root;\n\nconst PopoverTrigger = PopoverPrimitive.Trigger;\n\nconst PopoverAnchor = PopoverPrimitive.Anchor;\n\nconst PopoverContent = React.forwardRef<\n React.ElementRef<typeof PopoverPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof PopoverPrimitive.Content>\n>(({ className, align = 'center', sideOffset = 4, ...props }, ref) => (\n <PopoverPrimitive.Portal>\n <PopoverPrimitive.Content\n ref={ref}\n align={align}\n sideOffset={sideOffset}\n className={cn(\n 'z-50 w-72 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2',\n className,\n )}\n {...props}\n />\n </PopoverPrimitive.Portal>\n));\nPopoverContent.displayName = PopoverPrimitive.Content.displayName;\n\nexport { Popover, PopoverTrigger, PopoverContent, PopoverAnchor };\n"],"mappings":";;;;;;;;;AAAA,YAAY,WAAW;AACvB,YAAY,sBAAsB;AAIlC,IAAM,UAA2B;AAEjC,IAAM,iBAAkC;AAExC,IAAM,gBAAiC;AAEvC,IAAM,iBAAuB,iBAG3B,CAAC,IAA2D,QAAK;AAAhE,eAAE,aAAW,QAAQ,UAAU,aAAa,EAd/C,IAcG,IAAkD,kBAAlD,IAAkD,CAAhD,aAAW,SAAkB;AAChC,6CAAkB,yBAAjB,MACC;AAAA,IAAkB;AAAA,IAAjB;AAAA,MACC;AAAA,MACA;AAAA,MACA;AAAA,MACA,WAAW;AAAA,QACT;AAAA,QACA;AAAA,MACF;AAAA,OACI;AAAA,EACN,CACF;AAAA,CACD;AACD,eAAe,cAA+B,yBAAQ;","names":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../components/form/text-input.tsx"],"sourcesContent":["'use client';\n\nimport React, { InputHTMLAttributes } from 'react';\nimport _kebabCase from 'lodash-es/kebabCase';\nimport { cn } from '../../lib/utils';\nimport { Label } from '../ui/label';\nimport { Input } from '../ui/input';\n\ninterface InputProps extends InputHTMLAttributes<HTMLInputElement> {}\n\nconst inputClass = '';\n\nexport interface FormTextInputProps extends InputProps {\n id?: string;\n name: string;\n label?: string;\n inputProps?: InputProps;\n classNames?: {\n wrapper?: string;\n label?: string;\n input?: string;\n };\n}\n\nexport function FormTextInput({\n id,\n name,\n label,\n type = 'text',\n classNames,\n required,\n disabled,\n inputProps = {},\n ...others\n}: FormTextInputProps) {\n if (!id) id = _kebabCase(name);\n\n return (\n <div className={cn('_text-input', classNames?.wrapper)}>\n {label && (\n <Label htmlFor={id} className={classNames?.label} required={required}>\n {label}\n </Label>\n )}\n <Input\n type={type}\n id={id}\n name={name}\n disabled={disabled}\n autoComplete=\"off\"\n {...inputProps}\n {...others}\n className={cn(inputClass, classNames?.input)}\n />\n </div>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;AAEA,OAAO,WAAoC;AAC3C,OAAO,gBAAgB;AAOvB,IAAM,aAAa;AAcZ,SAAS,cAAc,IAUP;AAVO,eAC5B;AAAA;AAAA,IACA;AAAA,IACA;AAAA,IACA,OAAO;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,IACA,aAAa,CAAC;AAAA,EAhChB,IAwB8B,IASzB,mBATyB,IASzB;AAAA,IARH;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAGA,MAAI,CAAC,GAAI,MAAK,WAAW,IAAI;AAE7B,SACE,oCAAC,SAAI,WAAW,GAAG,eAAe,yCAAY,OAAO,KAClD,SACC,oCAAC,SAAM,SAAS,IAAI,WAAW,yCAAY,OAAO,YAC/C,KACH,GAEF;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,cAAa;AAAA,OACT,aACA,SAPL;AAAA,MAQC,WAAW,GAAG,YAAY,yCAAY,KAAK;AAAA;AAAA,EAC7C,CACF;AAEJ;","names":[]}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import {
|
|
2
|
+
buttonVariants
|
|
3
|
+
} from "./chunk-YFW7UI3E.mjs";
|
|
4
|
+
import {
|
|
5
|
+
cn
|
|
6
|
+
} from "./chunk-3ONILUYO.mjs";
|
|
7
|
+
import {
|
|
8
|
+
__objRest,
|
|
9
|
+
__spreadProps,
|
|
10
|
+
__spreadValues
|
|
11
|
+
} from "./chunk-YOSPWY5K.mjs";
|
|
12
|
+
|
|
13
|
+
// components/ui/calendar.tsx
|
|
14
|
+
import * as React from "react";
|
|
15
|
+
import { ChevronLeft, ChevronRight } from "lucide-react";
|
|
16
|
+
import { DayPicker } from "react-day-picker";
|
|
17
|
+
function Calendar(_a) {
|
|
18
|
+
var _b = _a, { className, classNames, showOutsideDays = true } = _b, props = __objRest(_b, ["className", "classNames", "showOutsideDays"]);
|
|
19
|
+
const navigationButtonClass = cn(
|
|
20
|
+
buttonVariants({ variant: "light" }),
|
|
21
|
+
"h-7 w-7 bg-transparent p-0 opacity-50 hover:opacity-100 z-10"
|
|
22
|
+
);
|
|
23
|
+
return /* @__PURE__ */ React.createElement(
|
|
24
|
+
DayPicker,
|
|
25
|
+
__spreadValues({
|
|
26
|
+
showOutsideDays,
|
|
27
|
+
className: cn("p-3 bg-white", className),
|
|
28
|
+
classNames: __spreadValues({
|
|
29
|
+
month: "space-y-4",
|
|
30
|
+
months: "flex flex-col sm:flex-row space-y-4 sm:space-y-0 relative gap-2",
|
|
31
|
+
month_caption: "flex justify-center pt-1 relative items-center",
|
|
32
|
+
month_grid: "w-full border-collapse space-y-1",
|
|
33
|
+
caption_label: "text-sm font-medium",
|
|
34
|
+
nav: "flex items-center justify-between absolute inset-x-0",
|
|
35
|
+
button_previous: navigationButtonClass,
|
|
36
|
+
button_next: navigationButtonClass,
|
|
37
|
+
weeks: "w-full border-collapse",
|
|
38
|
+
weekdays: "flex",
|
|
39
|
+
weekday: "text-muted-foreground rounded-md w-9 font-normal text-[0.8rem]",
|
|
40
|
+
week: "flex w-full mt-2",
|
|
41
|
+
day: "h-9 w-9 p-0 font-normal aria-selected:opacity-100 rounded-none first:aria-selected:rounded-l-md last:aria-selected:rounded-r-md",
|
|
42
|
+
day_button: cn(
|
|
43
|
+
buttonVariants({ variant: "ghost" }),
|
|
44
|
+
"h-9 w-9 text-center text-sm p-0 relative focus-within:relative focus-within:z-20"
|
|
45
|
+
),
|
|
46
|
+
range_start: "day-range-start !bg-secondary rounded-l-md [&>button]:bg-primary [&>button]:text-primary-foreground [&>button]:hover:bg-primary [&>button]:hover:text-primary-foreground",
|
|
47
|
+
range_end: "day-range-end !bg-secondary rounded-r-md [&>button]:bg-primary [&>button]:text-primary-foreground [&>button]:hover:bg-primary [&>button]:hover:text-primary-foreground",
|
|
48
|
+
range_middle: "aria-selected:bg-secondary aria-selected:text-secondary-foreground",
|
|
49
|
+
selected: cn(
|
|
50
|
+
props.mode === "range" ? "bg-primary hover:bg-primary hover:text-primary-foreground focus:bg-primary focus:text-primary-foreground" : "[&>button]:focus:bg-primary [&>button]:focus:text-primary-foreground"
|
|
51
|
+
),
|
|
52
|
+
today: "text-success italic",
|
|
53
|
+
outside: "day-outside text-muted-foreground opacity-50 !aria-selected:bg-secondary/50 !aria-selected:text-muted-foreground !aria-selected:opacity-30",
|
|
54
|
+
disabled: "text-muted-foreground opacity-50",
|
|
55
|
+
hidden: "invisible"
|
|
56
|
+
}, classNames),
|
|
57
|
+
components: {
|
|
58
|
+
Chevron: (_a2) => {
|
|
59
|
+
var props2 = __objRest(_a2, []);
|
|
60
|
+
return props2.orientation === "left" ? /* @__PURE__ */ React.createElement(ChevronLeft, __spreadProps(__spreadValues({}, props2), { className: "h-4 w-4" })) : /* @__PURE__ */ React.createElement(ChevronRight, __spreadProps(__spreadValues({}, props2), { className: "h-4 w-4" }));
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
}, props)
|
|
64
|
+
);
|
|
65
|
+
}
|
|
66
|
+
Calendar.displayName = "Calendar";
|
|
67
|
+
|
|
68
|
+
export {
|
|
69
|
+
Calendar
|
|
70
|
+
};
|
|
71
|
+
//# sourceMappingURL=chunk-QNHDDTYE.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../components/ui/calendar.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport type { ComponentProps } from 'react';\nimport { ChevronLeft, ChevronRight } from 'lucide-react';\nimport { DayPicker } from 'react-day-picker';\n\nimport { cn } from '../../lib/utils';\nimport { buttonVariants } from '../../components/ui/button';\n\nexport type CalendarProps = ComponentProps<typeof DayPicker>;\n\nfunction Calendar({ className, classNames, showOutsideDays = true, ...props }: CalendarProps) {\n const navigationButtonClass = cn(\n buttonVariants({ variant: 'light' }),\n 'h-7 w-7 bg-transparent p-0 opacity-50 hover:opacity-100 z-10',\n );\n\n return (\n <DayPicker\n showOutsideDays={showOutsideDays}\n className={cn('p-3 bg-white', className)}\n classNames={{\n month: 'space-y-4',\n months: 'flex flex-col sm:flex-row space-y-4 sm:space-y-0 relative gap-2',\n month_caption: 'flex justify-center pt-1 relative items-center',\n month_grid: 'w-full border-collapse space-y-1',\n caption_label: 'text-sm font-medium',\n nav: 'flex items-center justify-between absolute inset-x-0',\n button_previous: navigationButtonClass,\n button_next: navigationButtonClass,\n weeks: 'w-full border-collapse',\n weekdays: 'flex',\n weekday: 'text-muted-foreground rounded-md w-9 font-normal text-[0.8rem]',\n week: 'flex w-full mt-2',\n day: 'h-9 w-9 p-0 font-normal aria-selected:opacity-100 rounded-none first:aria-selected:rounded-l-md last:aria-selected:rounded-r-md',\n day_button: cn(\n buttonVariants({ variant: 'ghost' }),\n 'h-9 w-9 text-center text-sm p-0 relative focus-within:relative focus-within:z-20',\n ),\n range_start:\n 'day-range-start !bg-secondary rounded-l-md [&>button]:bg-primary [&>button]:text-primary-foreground [&>button]:hover:bg-primary [&>button]:hover:text-primary-foreground',\n range_end:\n 'day-range-end !bg-secondary rounded-r-md [&>button]:bg-primary [&>button]:text-primary-foreground [&>button]:hover:bg-primary [&>button]:hover:text-primary-foreground',\n range_middle: 'aria-selected:bg-secondary aria-selected:text-secondary-foreground',\n selected: cn(\n props.mode === 'range'\n ? 'bg-primary hover:bg-primary hover:text-primary-foreground focus:bg-primary focus:text-primary-foreground'\n : '[&>button]:focus:bg-primary [&>button]:focus:text-primary-foreground',\n ),\n today: 'text-success italic',\n outside:\n 'day-outside text-muted-foreground opacity-50 !aria-selected:bg-secondary/50 !aria-selected:text-muted-foreground !aria-selected:opacity-30',\n disabled: 'text-muted-foreground opacity-50',\n hidden: 'invisible',\n ...classNames,\n }}\n components={{\n Chevron: ({ ...props }) =>\n props.orientation === 'left' ? (\n <ChevronLeft {...props} className=\"h-4 w-4\" />\n ) : (\n <ChevronRight {...props} className=\"h-4 w-4\" />\n ),\n }}\n {...props}\n />\n );\n}\nCalendar.displayName = 'Calendar';\n\nexport { Calendar };\n"],"mappings":";;;;;;;;;;;;;AAEA,YAAY,WAAW;AAEvB,SAAS,aAAa,oBAAoB;AAC1C,SAAS,iBAAiB;AAO1B,SAAS,SAAS,IAA4E;AAA5E,eAAE,aAAW,YAAY,kBAAkB,KAZ7D,IAYkB,IAAoD,kBAApD,IAAoD,CAAlD,aAAW,cAAY;AACzC,QAAM,wBAAwB;AAAA,IAC5B,eAAe,EAAE,SAAS,QAAQ,CAAC;AAAA,IACnC;AAAA,EACF;AAEA,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA,WAAW,GAAG,gBAAgB,SAAS;AAAA,MACvC,YAAY;AAAA,QACV,OAAO;AAAA,QACP,QAAQ;AAAA,QACR,eAAe;AAAA,QACf,YAAY;AAAA,QACZ,eAAe;AAAA,QACf,KAAK;AAAA,QACL,iBAAiB;AAAA,QACjB,aAAa;AAAA,QACb,OAAO;AAAA,QACP,UAAU;AAAA,QACV,SAAS;AAAA,QACT,MAAM;AAAA,QACN,KAAK;AAAA,QACL,YAAY;AAAA,UACV,eAAe,EAAE,SAAS,QAAQ,CAAC;AAAA,UACnC;AAAA,QACF;AAAA,QACA,aACE;AAAA,QACF,WACE;AAAA,QACF,cAAc;AAAA,QACd,UAAU;AAAA,UACR,MAAM,SAAS,UACX,6GACA;AAAA,QACN;AAAA,QACA,OAAO;AAAA,QACP,SACE;AAAA,QACF,UAAU;AAAA,QACV,QAAQ;AAAA,SACL;AAAA,MAEL,YAAY;AAAA,QACV,SAAS,CAACA,QAAc;AAAd,cAAKC,SAAA,UAALD,KAAK;AACb,iBAAAC,OAAM,gBAAgB,SACpB,oCAAC,8CAAgBA,SAAhB,EAAuB,WAAU,YAAU,IAE5C,oCAAC,+CAAiBA,SAAjB,EAAwB,WAAU,YAAU;AAAA;AAAA,MAEnD;AAAA,OACI;AAAA,EACN;AAEJ;AACA,SAAS,cAAc;","names":["_a","props"]}
|
|
@@ -51,7 +51,8 @@ var buttonVariants = _classvarianceauthority.cva.call(void 0,
|
|
|
51
51
|
accent: "border border-accent bg-accent text-accent-foreground shadow-sm hover:bg-accent/90",
|
|
52
52
|
destructive: "border border-destructive bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90",
|
|
53
53
|
muted: "border border-muted bg-muted text-muted-foreground shadow-sm hover:bg-muted/90",
|
|
54
|
-
link: "text-primary underline-offset-4 hover:underline"
|
|
54
|
+
link: "text-primary underline-offset-4 hover:underline",
|
|
55
|
+
ghost: "hover:bg-light hover:text-light-foreground"
|
|
55
56
|
},
|
|
56
57
|
size: {
|
|
57
58
|
default: "h-9 px-4 py-2",
|
|
@@ -98,7 +99,7 @@ function getOutlineClasses(variant) {
|
|
|
98
99
|
dark: "border-dark text-dark shadow-sm hover:bg-dark/10",
|
|
99
100
|
accent: "border-accent text-accent shadow-sm hover:bg-accent/10",
|
|
100
101
|
destructive: "border-destructive text-destructive shadow-sm hover:bg-destructive/10",
|
|
101
|
-
muted: "border-muted text-muted shadow-sm hover:bg-muted/10"
|
|
102
|
+
muted: "border-muted text-muted-foreground shadow-sm hover:bg-muted/10"
|
|
102
103
|
};
|
|
103
104
|
return colors[variant != null ? variant : "primary"];
|
|
104
105
|
}
|
|
@@ -147,7 +148,7 @@ function getOutlineSpinnerClasses(variant) {
|
|
|
147
148
|
dark: "text-dark",
|
|
148
149
|
accent: "text-accent",
|
|
149
150
|
destructive: "text-destructive",
|
|
150
|
-
muted: "text-muted",
|
|
151
|
+
muted: "text-muted-foreground",
|
|
151
152
|
link: "text-primary"
|
|
152
153
|
};
|
|
153
154
|
return colors[variant != null ? variant : "primary"];
|
|
@@ -207,4 +208,4 @@ Button.displayName = "Button";
|
|
|
207
208
|
|
|
208
209
|
|
|
209
210
|
exports.buttonVariants = buttonVariants; exports.Button = Button;
|
|
210
|
-
//# sourceMappingURL=chunk-
|
|
211
|
+
//# sourceMappingURL=chunk-Y2EVJJLM.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/ahnjun/projects/egose-shadcn/package/dist/chunk-Y2EVJJLM.js","../components/ui/button.tsx"],"names":["_a"],"mappings":"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","file":"/home/ahnjun/projects/egose-shadcn/package/dist/chunk-Y2EVJJLM.js","sourcesContent":[null,"import * as React from 'react';\nimport { Slot } from '@radix-ui/react-slot';\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { cn } from '../../lib/utils';\nimport { Spinner } from './spinner';\n\nconst buttonVariants = cva(\n [\n 'cursor-pointer',\n 'active:translate-y-[0.5px]',\n 'disabled:pointer-events-none',\n 'disabled:opacity-50',\n 'focus-visible:outline-none',\n 'focus-visible:ring-1',\n 'focus-visible:ring-ring',\n 'font-medium',\n 'gap-2',\n 'inline-flex',\n 'items-center',\n 'justify-center',\n 'rounded-sm',\n 'text-sm',\n 'transform',\n 'transition',\n 'transition-colors',\n 'whitespace-nowrap',\n '[&_svg]:pointer-events-none',\n '[&_svg]:shrink-0',\n '[&_svg]:size-4',\n ],\n {\n variants: {\n variant: {\n primary: 'border border-primary bg-primary text-primary-foreground shadow-sm hover:bg-primary/90',\n secondary: 'border border-secondary bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/90',\n success: 'border border-success bg-success text-success-foreground shadow-sm hover:bg-success/90',\n warning: 'border border-warning bg-warning text-warning-foreground shadow-sm hover:bg-warning/90',\n danger: 'border border-danger bg-danger text-danger-foreground shadow-sm hover:bg-danger/90',\n info: 'border border-info bg-info text-info-foreground shadow-sm hover:bg-info/90',\n light: 'border border-light bg-light text-light-foreground shadow-sm hover:bg-light/90',\n dark: 'border border-dark bg-dark text-dark-foreground shadow-sm hover:bg-dark/90',\n accent: 'border border-accent bg-accent text-accent-foreground shadow-sm hover:bg-accent/90',\n destructive:\n 'border border-destructive bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90',\n muted: 'border border-muted bg-muted text-muted-foreground shadow-sm hover:bg-muted/90',\n link: 'text-primary underline-offset-4 hover:underline',\n ghost: 'hover:bg-light hover:text-light-foreground',\n },\n size: {\n default: 'h-9 px-4 py-2',\n sm: 'h-8 rounded-sm px-3 text-xs',\n lg: 'h-10 rounded-sm px-8',\n icon: 'h-9 w-9',\n },\n outline: {\n false: null,\n true: '',\n },\n outlineFilled: {\n false: null,\n true: '',\n },\n loading: {\n false: null,\n true: '',\n },\n thin: {\n false: null,\n true: '',\n },\n },\n defaultVariants: {\n variant: 'primary',\n size: 'default',\n outline: false,\n outlineFilled: false,\n loading: false,\n thin: false,\n },\n },\n);\n\nexport interface ButtonProps\n extends React.ButtonHTMLAttributes<HTMLButtonElement>,\n VariantProps<typeof buttonVariants> {\n asChild?: boolean;\n}\n\nfunction getOutlineClasses(variant: any) {\n const colors: Record<string, string> = {\n primary: 'border-primary text-primary shadow-sm hover:bg-primary/10',\n secondary: 'border-secondary text-secondary shadow-sm hover:bg-secondary/10',\n success: 'border-success text-success shadow-sm hover:bg-success/10',\n warning: 'border-warning text-warning shadow-sm hover:bg-warning/10',\n danger: 'border-danger text-danger shadow-sm hover:bg-danger/10',\n info: 'border-info text-info shadow-sm hover:bg-info/10',\n light: 'border-light text-light-foreground shadow-sm hover:bg-light/10',\n dark: 'border-dark text-dark shadow-sm hover:bg-dark/10',\n accent: 'border-accent text-accent shadow-sm hover:bg-accent/10',\n destructive: 'border-destructive text-destructive shadow-sm hover:bg-destructive/10',\n muted: 'border-muted text-muted-foreground shadow-sm hover:bg-muted/10',\n };\n\n return colors[variant ?? 'primary'];\n}\n\nfunction getOutlineFilledClasses(variant: any) {\n const colors: Record<string, string> = {\n primary: 'hover:bg-primary hover:text-primary-foreground',\n secondary: 'hover:bg-secondary hover:text-secondary-foreground',\n success: 'hover:bg-success hover:text-success-foreground',\n warning: 'hover:bg-warning hover:text-warning-foreground',\n danger: 'hover:bg-danger hover:text-danger-foreground',\n info: 'hover:bg-info hover:text-info-foreground',\n light: 'hover:bg-light hover:text-light-foreground',\n dark: 'hover:bg-dark hover:text-dark-foreground',\n accent: 'hover:bg-accent hover:text-accent-foreground',\n destructive: 'hover:bg-destructive hover:text-destructive-foreground',\n muted: 'hover:bg-muted hover:text-muted-foreground',\n };\n\n return colors[variant ?? 'primary'];\n}\n\nfunction getSpinnerClasses(variant: any) {\n const colors: Record<string, string> = {\n primary: 'bg-primary text-primary-foreground hover:bg-primary',\n secondary: 'bg-secondary text-secondary-foreground hover:bg-secondary',\n success: 'bg-success text-success-foreground hover:bg-success',\n warning: 'bg-warning text-warning-foreground hover:bg-warning',\n danger: 'bg-danger text-danger-foreground hover:bg-danger',\n info: 'bg-info text-info-foreground hover:bg-info',\n light: 'bg-light text-light-foreground hover:bg-light',\n dark: 'bg-dark text-dark-foreground hover:bg-dark',\n accent: 'bg-accent text-accent-foreground hover:bg-accent',\n destructive: 'bg-destructive text-destructive-foreground hover:bg-destructive',\n muted: 'bg-muted text-muted-foreground hover:bg-muted',\n link: 'text-primary',\n };\n\n return colors[variant ?? 'primary'];\n}\n\nfunction getOutlineSpinnerClasses(variant: any) {\n const colors: Record<string, string> = {\n primary: 'text-primary',\n secondary: 'text-secondary',\n success: 'text-success',\n warning: 'text-warning',\n danger: 'text-danger',\n info: 'text-info',\n light: 'text-light',\n dark: 'text-dark',\n accent: 'text-accent',\n destructive: 'text-destructive',\n muted: 'text-muted-foreground',\n link: 'text-primary',\n };\n\n return colors[variant ?? 'primary'];\n}\n\nfunction getThinClasses(size: any) {\n const colors: Record<string, string> = {\n default: 'h-8 px-2 py-1',\n sm: 'h-7 px-2 py-1',\n lg: 'h-9 px-2 py-1',\n icon: 'h-8 w-8',\n };\n\n return colors[size ?? 'default'];\n}\n\nconst Button = React.forwardRef<HTMLButtonElement, ButtonProps>(\n ({ className, variant, size, outline, outlineFilled, loading, thin, asChild = false, ...props }, ref) => {\n const Comp = asChild ? Slot : 'button';\n\n let outlineClasses: string[] = [];\n if (outline || outlineFilled) {\n outlineClasses = ['bg-white border', getOutlineClasses(variant)];\n if (outlineFilled) outlineClasses.push(getOutlineFilledClasses(variant));\n }\n\n const thinClasses = thin ? getThinClasses(size) : '';\n\n if (loading) {\n const { children, ...loaderProps } = props;\n const spinnerClasses = outline || outlineFilled ? getOutlineSpinnerClasses(variant) : getSpinnerClasses(variant);\n const loadingClasses = 'pointer-events-none';\n\n return (\n <Comp\n type=\"button\"\n className={cn(\n buttonVariants({ variant, size, outline, className }),\n outlineClasses,\n thinClasses,\n spinnerClasses,\n loadingClasses,\n )}\n ref={ref}\n {...loaderProps}\n >\n <div className=\"relative inline-flex items-center\">\n <span className=\"invisible\">{children}</span>\n <span className=\"absolute inset-0 flex items-center justify-center\">\n <Spinner className={cn(spinnerClasses, loadingClasses)} />\n </span>\n </div>\n </Comp>\n );\n }\n\n return (\n <Comp\n type=\"button\"\n className={cn(buttonVariants({ variant, size, outline, className }), outlineClasses, thinClasses)}\n ref={ref}\n {...props}\n />\n );\n },\n);\nButton.displayName = 'Button';\n\nexport { Button, buttonVariants };\n"]}
|
|
@@ -51,7 +51,8 @@ var buttonVariants = cva(
|
|
|
51
51
|
accent: "border border-accent bg-accent text-accent-foreground shadow-sm hover:bg-accent/90",
|
|
52
52
|
destructive: "border border-destructive bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90",
|
|
53
53
|
muted: "border border-muted bg-muted text-muted-foreground shadow-sm hover:bg-muted/90",
|
|
54
|
-
link: "text-primary underline-offset-4 hover:underline"
|
|
54
|
+
link: "text-primary underline-offset-4 hover:underline",
|
|
55
|
+
ghost: "hover:bg-light hover:text-light-foreground"
|
|
55
56
|
},
|
|
56
57
|
size: {
|
|
57
58
|
default: "h-9 px-4 py-2",
|
|
@@ -98,7 +99,7 @@ function getOutlineClasses(variant) {
|
|
|
98
99
|
dark: "border-dark text-dark shadow-sm hover:bg-dark/10",
|
|
99
100
|
accent: "border-accent text-accent shadow-sm hover:bg-accent/10",
|
|
100
101
|
destructive: "border-destructive text-destructive shadow-sm hover:bg-destructive/10",
|
|
101
|
-
muted: "border-muted text-muted shadow-sm hover:bg-muted/10"
|
|
102
|
+
muted: "border-muted text-muted-foreground shadow-sm hover:bg-muted/10"
|
|
102
103
|
};
|
|
103
104
|
return colors[variant != null ? variant : "primary"];
|
|
104
105
|
}
|
|
@@ -147,7 +148,7 @@ function getOutlineSpinnerClasses(variant) {
|
|
|
147
148
|
dark: "text-dark",
|
|
148
149
|
accent: "text-accent",
|
|
149
150
|
destructive: "text-destructive",
|
|
150
|
-
muted: "text-muted",
|
|
151
|
+
muted: "text-muted-foreground",
|
|
151
152
|
link: "text-primary"
|
|
152
153
|
};
|
|
153
154
|
return colors[variant != null ? variant : "primary"];
|
|
@@ -207,4 +208,4 @@ export {
|
|
|
207
208
|
buttonVariants,
|
|
208
209
|
Button
|
|
209
210
|
};
|
|
210
|
-
//# sourceMappingURL=chunk-
|
|
211
|
+
//# sourceMappingURL=chunk-YFW7UI3E.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../components/ui/button.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Slot } from '@radix-ui/react-slot';\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { cn } from '../../lib/utils';\nimport { Spinner } from './spinner';\n\nconst buttonVariants = cva(\n [\n 'cursor-pointer',\n 'active:translate-y-[0.5px]',\n 'disabled:pointer-events-none',\n 'disabled:opacity-50',\n 'focus-visible:outline-none',\n 'focus-visible:ring-1',\n 'focus-visible:ring-ring',\n 'font-medium',\n 'gap-2',\n 'inline-flex',\n 'items-center',\n 'justify-center',\n 'rounded-sm',\n 'text-sm',\n 'transform',\n 'transition',\n 'transition-colors',\n 'whitespace-nowrap',\n '[&_svg]:pointer-events-none',\n '[&_svg]:shrink-0',\n '[&_svg]:size-4',\n ],\n {\n variants: {\n variant: {\n primary: 'border border-primary bg-primary text-primary-foreground shadow-sm hover:bg-primary/90',\n secondary: 'border border-secondary bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/90',\n success: 'border border-success bg-success text-success-foreground shadow-sm hover:bg-success/90',\n warning: 'border border-warning bg-warning text-warning-foreground shadow-sm hover:bg-warning/90',\n danger: 'border border-danger bg-danger text-danger-foreground shadow-sm hover:bg-danger/90',\n info: 'border border-info bg-info text-info-foreground shadow-sm hover:bg-info/90',\n light: 'border border-light bg-light text-light-foreground shadow-sm hover:bg-light/90',\n dark: 'border border-dark bg-dark text-dark-foreground shadow-sm hover:bg-dark/90',\n accent: 'border border-accent bg-accent text-accent-foreground shadow-sm hover:bg-accent/90',\n destructive:\n 'border border-destructive bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90',\n muted: 'border border-muted bg-muted text-muted-foreground shadow-sm hover:bg-muted/90',\n link: 'text-primary underline-offset-4 hover:underline',\n ghost: 'hover:bg-light hover:text-light-foreground',\n },\n size: {\n default: 'h-9 px-4 py-2',\n sm: 'h-8 rounded-sm px-3 text-xs',\n lg: 'h-10 rounded-sm px-8',\n icon: 'h-9 w-9',\n },\n outline: {\n false: null,\n true: '',\n },\n outlineFilled: {\n false: null,\n true: '',\n },\n loading: {\n false: null,\n true: '',\n },\n thin: {\n false: null,\n true: '',\n },\n },\n defaultVariants: {\n variant: 'primary',\n size: 'default',\n outline: false,\n outlineFilled: false,\n loading: false,\n thin: false,\n },\n },\n);\n\nexport interface ButtonProps\n extends React.ButtonHTMLAttributes<HTMLButtonElement>,\n VariantProps<typeof buttonVariants> {\n asChild?: boolean;\n}\n\nfunction getOutlineClasses(variant: any) {\n const colors: Record<string, string> = {\n primary: 'border-primary text-primary shadow-sm hover:bg-primary/10',\n secondary: 'border-secondary text-secondary shadow-sm hover:bg-secondary/10',\n success: 'border-success text-success shadow-sm hover:bg-success/10',\n warning: 'border-warning text-warning shadow-sm hover:bg-warning/10',\n danger: 'border-danger text-danger shadow-sm hover:bg-danger/10',\n info: 'border-info text-info shadow-sm hover:bg-info/10',\n light: 'border-light text-light-foreground shadow-sm hover:bg-light/10',\n dark: 'border-dark text-dark shadow-sm hover:bg-dark/10',\n accent: 'border-accent text-accent shadow-sm hover:bg-accent/10',\n destructive: 'border-destructive text-destructive shadow-sm hover:bg-destructive/10',\n muted: 'border-muted text-muted-foreground shadow-sm hover:bg-muted/10',\n };\n\n return colors[variant ?? 'primary'];\n}\n\nfunction getOutlineFilledClasses(variant: any) {\n const colors: Record<string, string> = {\n primary: 'hover:bg-primary hover:text-primary-foreground',\n secondary: 'hover:bg-secondary hover:text-secondary-foreground',\n success: 'hover:bg-success hover:text-success-foreground',\n warning: 'hover:bg-warning hover:text-warning-foreground',\n danger: 'hover:bg-danger hover:text-danger-foreground',\n info: 'hover:bg-info hover:text-info-foreground',\n light: 'hover:bg-light hover:text-light-foreground',\n dark: 'hover:bg-dark hover:text-dark-foreground',\n accent: 'hover:bg-accent hover:text-accent-foreground',\n destructive: 'hover:bg-destructive hover:text-destructive-foreground',\n muted: 'hover:bg-muted hover:text-muted-foreground',\n };\n\n return colors[variant ?? 'primary'];\n}\n\nfunction getSpinnerClasses(variant: any) {\n const colors: Record<string, string> = {\n primary: 'bg-primary text-primary-foreground hover:bg-primary',\n secondary: 'bg-secondary text-secondary-foreground hover:bg-secondary',\n success: 'bg-success text-success-foreground hover:bg-success',\n warning: 'bg-warning text-warning-foreground hover:bg-warning',\n danger: 'bg-danger text-danger-foreground hover:bg-danger',\n info: 'bg-info text-info-foreground hover:bg-info',\n light: 'bg-light text-light-foreground hover:bg-light',\n dark: 'bg-dark text-dark-foreground hover:bg-dark',\n accent: 'bg-accent text-accent-foreground hover:bg-accent',\n destructive: 'bg-destructive text-destructive-foreground hover:bg-destructive',\n muted: 'bg-muted text-muted-foreground hover:bg-muted',\n link: 'text-primary',\n };\n\n return colors[variant ?? 'primary'];\n}\n\nfunction getOutlineSpinnerClasses(variant: any) {\n const colors: Record<string, string> = {\n primary: 'text-primary',\n secondary: 'text-secondary',\n success: 'text-success',\n warning: 'text-warning',\n danger: 'text-danger',\n info: 'text-info',\n light: 'text-light',\n dark: 'text-dark',\n accent: 'text-accent',\n destructive: 'text-destructive',\n muted: 'text-muted-foreground',\n link: 'text-primary',\n };\n\n return colors[variant ?? 'primary'];\n}\n\nfunction getThinClasses(size: any) {\n const colors: Record<string, string> = {\n default: 'h-8 px-2 py-1',\n sm: 'h-7 px-2 py-1',\n lg: 'h-9 px-2 py-1',\n icon: 'h-8 w-8',\n };\n\n return colors[size ?? 'default'];\n}\n\nconst Button = React.forwardRef<HTMLButtonElement, ButtonProps>(\n ({ className, variant, size, outline, outlineFilled, loading, thin, asChild = false, ...props }, ref) => {\n const Comp = asChild ? Slot : 'button';\n\n let outlineClasses: string[] = [];\n if (outline || outlineFilled) {\n outlineClasses = ['bg-white border', getOutlineClasses(variant)];\n if (outlineFilled) outlineClasses.push(getOutlineFilledClasses(variant));\n }\n\n const thinClasses = thin ? getThinClasses(size) : '';\n\n if (loading) {\n const { children, ...loaderProps } = props;\n const spinnerClasses = outline || outlineFilled ? getOutlineSpinnerClasses(variant) : getSpinnerClasses(variant);\n const loadingClasses = 'pointer-events-none';\n\n return (\n <Comp\n type=\"button\"\n className={cn(\n buttonVariants({ variant, size, outline, className }),\n outlineClasses,\n thinClasses,\n spinnerClasses,\n loadingClasses,\n )}\n ref={ref}\n {...loaderProps}\n >\n <div className=\"relative inline-flex items-center\">\n <span className=\"invisible\">{children}</span>\n <span className=\"absolute inset-0 flex items-center justify-center\">\n <Spinner className={cn(spinnerClasses, loadingClasses)} />\n </span>\n </div>\n </Comp>\n );\n }\n\n return (\n <Comp\n type=\"button\"\n className={cn(buttonVariants({ variant, size, outline, className }), outlineClasses, thinClasses)}\n ref={ref}\n {...props}\n />\n );\n },\n);\nButton.displayName = 'Button';\n\nexport { Button, buttonVariants };\n"],"mappings":"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","names":["_a"]}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } }
|
|
2
|
+
|
|
3
|
+
var _chunkB2G2EZ4Pjs = require('./chunk-B2G2EZ4P.js');
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
var _chunk2NMEKWO5js = require('./chunk-2NMEKWO5.js');
|
|
8
|
+
|
|
9
|
+
// components/ui/popover.tsx
|
|
10
|
+
var _react = require('react'); var React = _interopRequireWildcard(_react);
|
|
11
|
+
var _reactpopover = require('@radix-ui/react-popover'); var PopoverPrimitive = _interopRequireWildcard(_reactpopover);
|
|
12
|
+
var Popover = PopoverPrimitive.Root;
|
|
13
|
+
var PopoverTrigger = PopoverPrimitive.Trigger;
|
|
14
|
+
var PopoverAnchor = PopoverPrimitive.Anchor;
|
|
15
|
+
var PopoverContent = React.forwardRef((_a, ref) => {
|
|
16
|
+
var _b = _a, { className, align = "center", sideOffset = 4 } = _b, props = _chunk2NMEKWO5js.__objRest.call(void 0, _b, ["className", "align", "sideOffset"]);
|
|
17
|
+
return /* @__PURE__ */ React.createElement(PopoverPrimitive.Portal, null, /* @__PURE__ */ React.createElement(
|
|
18
|
+
PopoverPrimitive.Content,
|
|
19
|
+
_chunk2NMEKWO5js.__spreadValues.call(void 0, {
|
|
20
|
+
ref,
|
|
21
|
+
align,
|
|
22
|
+
sideOffset,
|
|
23
|
+
className: _chunkB2G2EZ4Pjs.cn.call(void 0,
|
|
24
|
+
"z-50 w-72 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
|
|
25
|
+
className
|
|
26
|
+
)
|
|
27
|
+
}, props)
|
|
28
|
+
));
|
|
29
|
+
});
|
|
30
|
+
PopoverContent.displayName = PopoverPrimitive.Content.displayName;
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
exports.Popover = Popover; exports.PopoverTrigger = PopoverTrigger; exports.PopoverAnchor = PopoverAnchor; exports.PopoverContent = PopoverContent;
|
|
38
|
+
//# sourceMappingURL=chunk-Z33UILCV.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/ahnjun/projects/egose-shadcn/package/dist/chunk-Z33UILCV.js","../components/ui/popover.tsx"],"names":[],"mappings":"AAAA;AACE;AACF,sDAA4B;AAC5B;AACE;AACA;AACF,sDAA4B;AAC5B;AACA;ACRA,2EAAuB;AACvB,sHAAkC;AAIlC,IAAM,QAAA,EAA2B,gBAAA,CAAA,IAAA;AAEjC,IAAM,eAAA,EAAkC,gBAAA,CAAA,OAAA;AAExC,IAAM,cAAA,EAAiC,gBAAA,CAAA,MAAA;AAEvC,IAAM,eAAA,EAAuB,KAAA,CAAA,UAAA,CAG3B,CAAC,EAAA,EAA2D,GAAA,EAAA,GAAK;AAAhE,EAAA,IAAA,GAAA,EAAA,EAAA,EAAE,EAAA,SAAA,EAAW,MAAA,EAAQ,QAAA,EAAU,WAAA,EAAa,EAd/C,EAAA,EAcG,EAAA,EAAkD,MAAA,EAAA,wCAAA,EAAlD,EAAkD,CAAhD,WAAA,EAAW,OAAA,EAAkB,YAAA,CAAA,CAAA;AAChC,EAAA,uBAAA,KAAA,CAAA,aAAA,CAAkB,gBAAA,CAAA,MAAA,EAAjB,IAAA,kBACC,KAAA,CAAA,aAAA;AAAA,IAAkB,gBAAA,CAAA,OAAA;AAAA,IAAjB,6CAAA;AAAA,MACC,GAAA;AAAA,MACA,KAAA;AAAA,MACA,UAAA;AAAA,MACA,SAAA,EAAW,iCAAA;AAAA,QACT,4aAAA;AAAA,QACA;AAAA,MACF;AAAA,IAAA,CAAA,EACI,KAAA;AAAA,EACN,CACF,CAAA;AAAA,CACD,CAAA;AACD,cAAA,CAAe,YAAA,EAA+B,gBAAA,CAAA,OAAA,CAAQ,WAAA;ADEtD;AACA;AACE;AACA;AACA;AACA;AACF,mJAAC","file":"/home/ahnjun/projects/egose-shadcn/package/dist/chunk-Z33UILCV.js","sourcesContent":[null,"import * as React from 'react';\nimport * as PopoverPrimitive from '@radix-ui/react-popover';\n\nimport { cn } from '../../lib/utils';\n\nconst Popover = PopoverPrimitive.Root;\n\nconst PopoverTrigger = PopoverPrimitive.Trigger;\n\nconst PopoverAnchor = PopoverPrimitive.Anchor;\n\nconst PopoverContent = React.forwardRef<\n React.ElementRef<typeof PopoverPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof PopoverPrimitive.Content>\n>(({ className, align = 'center', sideOffset = 4, ...props }, ref) => (\n <PopoverPrimitive.Portal>\n <PopoverPrimitive.Content\n ref={ref}\n align={align}\n sideOffset={sideOffset}\n className={cn(\n 'z-50 w-72 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2',\n className,\n )}\n {...props}\n />\n </PopoverPrimitive.Portal>\n));\nPopoverContent.displayName = PopoverPrimitive.Content.displayName;\n\nexport { Popover, PopoverTrigger, PopoverContent, PopoverAnchor };\n"]}
|
|
@@ -17,7 +17,6 @@ var _chunk2NMEKWO5js = require('./chunk-2NMEKWO5.js');
|
|
|
17
17
|
var _react = require('react'); var _react2 = _interopRequireDefault(_react);
|
|
18
18
|
var _isFunction2 = require('lodash-es/isFunction'); var _isFunction3 = _interopRequireDefault(_isFunction2);
|
|
19
19
|
var _kebabCase2 = require('lodash-es/kebabCase'); var _kebabCase3 = _interopRequireDefault(_kebabCase2);
|
|
20
|
-
|
|
21
20
|
var inputClass = "";
|
|
22
21
|
function FormTextarea(_a) {
|
|
23
22
|
var _b = _a, {
|
|
@@ -69,4 +68,4 @@ function FormTextarea(_a) {
|
|
|
69
68
|
|
|
70
69
|
|
|
71
70
|
exports.FormTextarea = FormTextarea;
|
|
72
|
-
//# sourceMappingURL=chunk-
|
|
71
|
+
//# sourceMappingURL=chunk-Z6AUIAE7.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/ahnjun/projects/egose-shadcn/package/dist/chunk-Z6AUIAE7.js","../components/form/textarea.tsx"],"names":[],"mappings":"AAAA;AACE;AACF,sDAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B;AACE;AACA;AACA;AACF,sDAA4B;AAC5B;AACA;ACbA,4EAAsD;AACtD,4GAAwB;AACxB,wGAAuB;AAOvB,IAAM,WAAA,EAAa,EAAA;AAcZ,SAAS,YAAA,CAAa,EAAA,EAUP;AAVO,EAAA,IAAA,GAAA,EAAA,EAAA,EAC3B;AAAA,IAAA,EAAA;AAAA,IACA,IAAA;AAAA,IACA,KAAA;AAAA,IACA,KAAA,EAAO,CAAA;AAAA,IACP,UAAA;AAAA,IACA,QAAA;AAAA,IACA,QAAA;AAAA,IACA,WAAA,EAAa,CAAC;AAAA,EAjChB,EAAA,EAyB6B,EAAA,EASxB,OAAA,EAAA,wCAAA,EATwB,EASxB;AAAA,IARH,IAAA;AAAA,IACA,MAAA;AAAA,IACA,OAAA;AAAA,IACA,MAAA;AAAA,IACA,YAAA;AAAA,IACA,UAAA;AAAA,IACA,UAAA;AAAA,IACA;AAAA,EAAA,CAAA,CAAA;AAGA,EAAA,GAAA,CAAI,CAAC,EAAA,EAAI,GAAA,EAAK,iCAAA,IAAe,CAAA;AAC7B,EAAA,MAAM,KAAA,EAAO,2BAAA,IAAgC,CAAA;AAE7C,EAAA,uBACE,eAAA,CAAA,aAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,iCAAA,UAAG,EAAY,WAAA,GAAA,KAAA,EAAA,KAAA,EAAA,EAAA,UAAA,CAAY,OAAO,EAAA,CAAA,EAC/C,MAAA,mBACC,eAAA,CAAA,aAAA,CAAC,sBAAA,EAAA,EAAM,OAAA,EAAS,EAAA,EAAI,SAAA,EAAW,WAAA,GAAA,KAAA,EAAA,KAAA,EAAA,EAAA,UAAA,CAAY,KAAA,EAAO,SAAA,CAAA,EAC/C,KACH,CAAA,kBAEF,eAAA,CAAA,aAAA;AAAA,IAAC,yBAAA;AAAA,IAAA,4CAAA,6CAAA,6CAAA;AAAA,MACC,EAAA;AAAA,MACA,IAAA;AAAA,MACA,IAAA;AAAA,MACA,QAAA;AAAA,MACA,YAAA,EAAa;AAAA,IAAA,CAAA,EACT,UAAA,CAAA,EACA,MAAA,CAAA,EAPL;AAAA,MAWC,GAAA,EAAK,CAAC,EAAA,EAAA,GAAO;AACX,QAAA,GAAA,CAAI,CAAC,EAAA,EAAI,MAAA;AAET,QAAA,CAAC,IAAA,EAAM,UAAA,CAAW,GAAG,CAAA,CAAE,OAAA,CAAQ,CAAC,EAAA,EAAA,GAAO;AACrC,UAAA,GAAA,CAAI,CAAC,EAAA,EAAI,MAAA;AAET,UAAA,GAAA,CAAI,kCAAA,EAAc,CAAA,EAAG;AACnB,YAAA,EAAA,CAAG,EAAE,CAAA;AAAA,UACP,EAAA,KAAO;AACL,YAAA,EAAA,CAAG,QAAA,EAAU,EAAA;AAAA,UACf;AAAA,QACF,CAAC,CAAA;AAAA,MACH,CAAA;AAAA,MACA,SAAA,EAAW,iCAAA,UAAG,EAAY,WAAA,GAAA,KAAA,EAAA,KAAA,EAAA,EAAA,UAAA,CAAY,KAAK;AAAA,IAAA,CAAA;AAAA,EAC7C,CACF,CAAA;AAEJ;ADRA;AACA;AACE;AACF,oCAAC","file":"/home/ahnjun/projects/egose-shadcn/package/dist/chunk-Z6AUIAE7.js","sourcesContent":[null,"'use client';\n\nimport React, { TextareaHTMLAttributes, useRef } from 'react';\nimport _isFunction from 'lodash-es/isFunction';\nimport _kebabCase from 'lodash-es/kebabCase';\nimport { cn } from '../../lib/utils';\nimport { Label } from '../ui/label';\nimport { Textarea } from '../ui/textarea';\n\ninterface InputProps extends TextareaHTMLAttributes<HTMLTextAreaElement> {}\n\nconst inputClass = '';\n\nexport interface FormTextareaProps extends InputProps {\n id?: string;\n name: string;\n label?: string;\n inputProps?: InputProps & { ref?: any };\n classNames?: {\n wrapper?: string;\n label?: string;\n input?: string;\n };\n}\n\nexport function FormTextarea({\n id,\n name,\n label,\n rows = 5,\n classNames,\n required,\n disabled,\n inputProps = {},\n ...others\n}: FormTextareaProps) {\n if (!id) id = _kebabCase(name);\n const _ref = useRef<HTMLTextAreaElement>(null);\n\n return (\n <div className={cn('textarea', classNames?.wrapper)}>\n {label && (\n <Label htmlFor={id} className={classNames?.label} required={required}>\n {label}\n </Label>\n )}\n <Textarea\n id={id}\n name={name}\n rows={rows}\n disabled={disabled}\n autoComplete=\"off\"\n {...inputProps}\n {...others}\n // Required to bind three potential refs:\n // 1. From the inputProps ex) react-hook-form.\n // 2. From the this component instance itself.\n ref={(el) => {\n if (!el) return;\n\n [_ref, inputProps.ref].forEach((rf) => {\n if (!rf) return;\n\n if (_isFunction(rf)) {\n rf(el);\n } else {\n rf.current = el;\n }\n });\n }}\n className={cn(inputClass, classNames?.input)}\n />\n </div>\n );\n}\n"]}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import React__default from 'react';
|
|
2
|
+
import { DateRange } from 'react-day-picker';
|
|
3
|
+
|
|
4
|
+
declare function isEqualDate(dt1: Date | undefined, dt2: Date | undefined): boolean;
|
|
5
|
+
declare function isEqualDates(dts1: [Date | undefined, Date | undefined], dts2: [Date | undefined, Date | undefined]): boolean;
|
|
6
|
+
interface FormDateRangePickerProps {
|
|
7
|
+
id?: string;
|
|
8
|
+
name: string;
|
|
9
|
+
label?: string;
|
|
10
|
+
required?: boolean;
|
|
11
|
+
onChange: (value: DateRange | undefined) => void;
|
|
12
|
+
classNames?: {
|
|
13
|
+
wrapper?: string;
|
|
14
|
+
label?: string;
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
declare function FormDateRangePicker({ id, name, label, required, onChange, classNames, }: FormDateRangePickerProps): React__default.JSX.Element;
|
|
18
|
+
|
|
19
|
+
export { FormDateRangePicker, type FormDateRangePickerProps, isEqualDate, isEqualDates };
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import React__default from 'react';
|
|
2
|
+
import { DateRange } from 'react-day-picker';
|
|
3
|
+
|
|
4
|
+
declare function isEqualDate(dt1: Date | undefined, dt2: Date | undefined): boolean;
|
|
5
|
+
declare function isEqualDates(dts1: [Date | undefined, Date | undefined], dts2: [Date | undefined, Date | undefined]): boolean;
|
|
6
|
+
interface FormDateRangePickerProps {
|
|
7
|
+
id?: string;
|
|
8
|
+
name: string;
|
|
9
|
+
label?: string;
|
|
10
|
+
required?: boolean;
|
|
11
|
+
onChange: (value: DateRange | undefined) => void;
|
|
12
|
+
classNames?: {
|
|
13
|
+
wrapper?: string;
|
|
14
|
+
label?: string;
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
declare function FormDateRangePicker({ id, name, label, required, onChange, classNames, }: FormDateRangePickerProps): React__default.JSX.Element;
|
|
18
|
+
|
|
19
|
+
export { FormDateRangePicker, type FormDateRangePickerProps, isEqualDate, isEqualDates };
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }"use client";
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
var _chunkZ33UILCVjs = require('../../chunk-Z33UILCV.js');
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
var _chunkCN2Y7Q7Tjs = require('../../chunk-CN2Y7Q7T.js');
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
var _chunkY2EVJJLMjs = require('../../chunk-Y2EVJJLM.js');
|
|
13
|
+
require('../../chunk-MKSF24CS.js');
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
var _chunkAXZDZXCYjs = require('../../chunk-AXZDZXCY.js');
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
var _chunkB2G2EZ4Pjs = require('../../chunk-B2G2EZ4P.js');
|
|
20
|
+
require('../../chunk-2NMEKWO5.js');
|
|
21
|
+
|
|
22
|
+
// components/form/date-range-picker.tsx
|
|
23
|
+
var _react = require('react'); var _react2 = _interopRequireDefault(_react);
|
|
24
|
+
var _datefns = require('date-fns');
|
|
25
|
+
var _lucidereact = require('lucide-react');
|
|
26
|
+
var _kebabCase2 = require('lodash-es/kebabCase'); var _kebabCase3 = _interopRequireDefault(_kebabCase2);
|
|
27
|
+
var _isNil2 = require('lodash-es/isNil'); var _isNil3 = _interopRequireDefault(_isNil2);
|
|
28
|
+
function formatDate(date) {
|
|
29
|
+
return _datefns.format.call(void 0, date, "LLL dd, y");
|
|
30
|
+
}
|
|
31
|
+
function isEqualDate(dt1, dt2) {
|
|
32
|
+
const nildt1 = _isNil3.default.call(void 0, dt1);
|
|
33
|
+
const nildt2 = _isNil3.default.call(void 0, dt2);
|
|
34
|
+
if (nildt1) dt1 = void 0;
|
|
35
|
+
if (nildt2) dt2 = void 0;
|
|
36
|
+
if (nildt1 || nildt2) {
|
|
37
|
+
return nildt1 === nildt2;
|
|
38
|
+
}
|
|
39
|
+
return _datefns.isEqual.call(void 0, dt1, dt2);
|
|
40
|
+
}
|
|
41
|
+
function isEqualDates(dts1, dts2) {
|
|
42
|
+
const dts11 = dts1[0];
|
|
43
|
+
const dts12 = dts1[1];
|
|
44
|
+
const dts21 = dts2[0];
|
|
45
|
+
const dts22 = dts2[1];
|
|
46
|
+
return isEqualDate(dts11, dts21) && isEqualDate(dts12, dts22);
|
|
47
|
+
}
|
|
48
|
+
function FormDateRangePicker({
|
|
49
|
+
id,
|
|
50
|
+
name,
|
|
51
|
+
label,
|
|
52
|
+
required = false,
|
|
53
|
+
onChange,
|
|
54
|
+
classNames
|
|
55
|
+
}) {
|
|
56
|
+
const [value, setValue] = _react.useState.call(void 0, {
|
|
57
|
+
from: new Date(2022, 0, 20),
|
|
58
|
+
to: _datefns.addDays.call(void 0, new Date(2022, 0, 20), 20)
|
|
59
|
+
});
|
|
60
|
+
if (!id) id = _kebabCase3.default.call(void 0, name);
|
|
61
|
+
return /* @__PURE__ */ _react2.default.createElement("div", { className: _chunkB2G2EZ4Pjs.cn.call(void 0, "date-range-picker", classNames == null ? void 0 : classNames.wrapper) }, label && /* @__PURE__ */ _react2.default.createElement(_chunkAXZDZXCYjs.Label, { htmlFor: id, className: classNames == null ? void 0 : classNames.label, required }, label), /* @__PURE__ */ _react2.default.createElement("div", { className: _chunkB2G2EZ4Pjs.cn.call(void 0, "grid gap-2") }, /* @__PURE__ */ _react2.default.createElement(_chunkZ33UILCVjs.Popover, null, /* @__PURE__ */ _react2.default.createElement(_chunkZ33UILCVjs.PopoverTrigger, { asChild: true }, /* @__PURE__ */ _react2.default.createElement(
|
|
62
|
+
_chunkY2EVJJLMjs.Button,
|
|
63
|
+
{
|
|
64
|
+
variant: value ? "secondary" : "muted",
|
|
65
|
+
outline: true,
|
|
66
|
+
className: _chunkB2G2EZ4Pjs.cn.call(void 0, "w-[300px] justify-start text-left font-normal")
|
|
67
|
+
},
|
|
68
|
+
/* @__PURE__ */ _react2.default.createElement(_lucidereact.CalendarIcon, null),
|
|
69
|
+
(value == null ? void 0 : value.from) ? value.to ? /* @__PURE__ */ _react2.default.createElement(_react2.default.Fragment, null, formatDate(value.from), " - ", formatDate(value.to)) : formatDate(value.from) : /* @__PURE__ */ _react2.default.createElement("span", null, "Pick a date")
|
|
70
|
+
)), /* @__PURE__ */ _react2.default.createElement(_chunkZ33UILCVjs.PopoverContent, { className: "w-auto p-0", align: "start" }, /* @__PURE__ */ _react2.default.createElement(
|
|
71
|
+
_chunkCN2Y7Q7Tjs.Calendar,
|
|
72
|
+
{
|
|
73
|
+
mode: "range",
|
|
74
|
+
defaultMonth: value == null ? void 0 : value.from,
|
|
75
|
+
selected: value,
|
|
76
|
+
onSelect: (dateRange) => {
|
|
77
|
+
if (!isEqualDates([value == null ? void 0 : value.from, value == null ? void 0 : value.to], [dateRange == null ? void 0 : dateRange.from, dateRange == null ? void 0 : dateRange.to])) {
|
|
78
|
+
onChange(dateRange);
|
|
79
|
+
setValue(dateRange);
|
|
80
|
+
}
|
|
81
|
+
},
|
|
82
|
+
numberOfMonths: 2
|
|
83
|
+
}
|
|
84
|
+
)))));
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
exports.FormDateRangePicker = FormDateRangePicker; exports.isEqualDate = isEqualDate; exports.isEqualDates = isEqualDates;
|
|
91
|
+
//# sourceMappingURL=date-range-picker.js.map
|