pentatrion-design 1.1.2 → 1.1.4

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.
Files changed (148) hide show
  1. package/.github/workflows/deploy-storybook.yml +2 -0
  2. package/.github/workflows/release.yml +51 -0
  3. package/dist/Button-BH3EFgdP.mjs +204 -0
  4. package/dist/Button-BH3EFgdP.mjs.map +1 -0
  5. package/dist/{Button-jLcascU9.d.mts → Button-I8WN-D9m.d.mts} +6 -6
  6. package/dist/{Button-jLcascU9.d.mts.map → Button-I8WN-D9m.d.mts.map} +1 -1
  7. package/dist/Dialog-CriZOfkd.mjs +102 -0
  8. package/dist/Dialog-CriZOfkd.mjs.map +1 -0
  9. package/dist/Input-DzDXg_MR.mjs +174 -0
  10. package/dist/Input-DzDXg_MR.mjs.map +1 -0
  11. package/dist/Scroll-r_7u__g1.mjs +179 -0
  12. package/dist/Scroll-r_7u__g1.mjs.map +1 -0
  13. package/dist/Snack-3FOmPHKW.mjs +111 -0
  14. package/dist/Snack-3FOmPHKW.mjs.map +1 -0
  15. package/dist/{TooltipTrigger-DYEGAnbT.mjs → TooltipTrigger-BG2Go5oG.mjs} +27 -7
  16. package/dist/TooltipTrigger-BG2Go5oG.mjs.map +1 -0
  17. package/dist/badge-BxttxOuR.mjs +96 -0
  18. package/dist/badge-BxttxOuR.mjs.map +1 -0
  19. package/dist/button-UyAi1KTz.mjs +151 -0
  20. package/dist/button-UyAi1KTz.mjs.map +1 -0
  21. package/dist/components/accordion/index.d.mts +4 -4
  22. package/dist/components/accordion/index.mjs +158 -45
  23. package/dist/components/accordion/index.mjs.map +1 -1
  24. package/dist/components/autocomplete/index.d.mts +6 -6
  25. package/dist/components/autocomplete/index.mjs +71 -25
  26. package/dist/components/autocomplete/index.mjs.map +1 -1
  27. package/dist/components/badge/index.mjs +3 -3
  28. package/dist/components/button/index.d.mts +2 -2
  29. package/dist/components/button/index.mjs +5 -5
  30. package/dist/components/card/index.mjs.map +1 -1
  31. package/dist/components/code/index.d.mts +2 -2
  32. package/dist/components/code/index.d.mts.map +1 -1
  33. package/dist/components/code/index.mjs +21 -5
  34. package/dist/components/code/index.mjs.map +1 -1
  35. package/dist/components/context-menu/index.d.mts +3 -3
  36. package/dist/components/context-menu/index.mjs +69 -15
  37. package/dist/components/context-menu/index.mjs.map +1 -1
  38. package/dist/components/dialog/index.d.mts +2 -2
  39. package/dist/components/dialog/index.d.mts.map +1 -1
  40. package/dist/components/dialog/index.mjs +1 -1
  41. package/dist/components/dropdown-menu/index.d.mts +5 -5
  42. package/dist/components/dropdown-menu/index.mjs +202 -77
  43. package/dist/components/dropdown-menu/index.mjs.map +1 -1
  44. package/dist/components/dropdown-menu-nested/index.d.mts +5 -5
  45. package/dist/components/dropdown-menu-nested/index.mjs +96 -36
  46. package/dist/components/dropdown-menu-nested/index.mjs.map +1 -1
  47. package/dist/components/flash/index.d.mts +2 -2
  48. package/dist/components/flash/index.d.mts.map +1 -1
  49. package/dist/components/flash/index.mjs +30 -8
  50. package/dist/components/flash/index.mjs.map +1 -1
  51. package/dist/components/form/index.d.mts +4 -4
  52. package/dist/components/form/index.mjs +300 -108
  53. package/dist/components/form/index.mjs.map +1 -1
  54. package/dist/components/highlight/index.d.mts +2 -2
  55. package/dist/components/highlight/index.d.mts.map +1 -1
  56. package/dist/components/highlight/index.mjs +26 -14
  57. package/dist/components/highlight/index.mjs.map +1 -1
  58. package/dist/components/href/index.mjs.map +1 -1
  59. package/dist/components/input/index.d.mts +17 -17
  60. package/dist/components/input/index.mjs +1376 -329
  61. package/dist/components/input/index.mjs.map +1 -1
  62. package/dist/components/loader/index.d.mts +2 -2
  63. package/dist/components/loader/index.mjs +1 -1
  64. package/dist/components/media-preview/index.d.mts +3 -3
  65. package/dist/components/media-preview/index.mjs +168 -24
  66. package/dist/components/media-preview/index.mjs.map +1 -1
  67. package/dist/components/modal/index.d.mts +10 -10
  68. package/dist/components/modal/index.mjs +349 -95
  69. package/dist/components/modal/index.mjs.map +1 -1
  70. package/dist/components/notification/index.d.mts +4 -4
  71. package/dist/components/notification/index.mjs +25 -15
  72. package/dist/components/notification/index.mjs.map +1 -1
  73. package/dist/components/popover/index.d.mts +9 -9
  74. package/dist/components/popover/index.mjs +170 -39
  75. package/dist/components/popover/index.mjs.map +1 -1
  76. package/dist/components/portal/index.mjs.map +1 -1
  77. package/dist/components/resizable/index.d.mts +4 -4
  78. package/dist/components/resizable/index.d.mts.map +1 -1
  79. package/dist/components/resizable/index.mjs +99 -33
  80. package/dist/components/resizable/index.mjs.map +1 -1
  81. package/dist/components/resize-area/index.d.mts +2 -2
  82. package/dist/components/resize-area/index.mjs.map +1 -1
  83. package/dist/components/scroll/index.d.mts +2 -2
  84. package/dist/components/scroll/index.mjs +1 -1
  85. package/dist/components/select/index.d.mts +1 -1
  86. package/dist/components/select/index.mjs +9 -9
  87. package/dist/components/separator/index.mjs.map +1 -1
  88. package/dist/components/slot/index.mjs +1 -1
  89. package/dist/components/snack/index.d.mts +2 -2
  90. package/dist/components/snack/index.d.mts.map +1 -1
  91. package/dist/components/snack/index.mjs +7 -7
  92. package/dist/components/steps/index.d.mts +3 -3
  93. package/dist/components/steps/index.mjs +175 -29
  94. package/dist/components/steps/index.mjs.map +1 -1
  95. package/dist/components/table/index.d.mts +8 -8
  96. package/dist/components/table/index.mjs +225 -41
  97. package/dist/components/table/index.mjs.map +1 -1
  98. package/dist/components/tabs/index.d.mts +2 -2
  99. package/dist/components/tabs/index.d.mts.map +1 -1
  100. package/dist/components/tabs/index.mjs +102 -16
  101. package/dist/components/tabs/index.mjs.map +1 -1
  102. package/dist/components/textarea/index.mjs +95 -12
  103. package/dist/components/textarea/index.mjs.map +1 -1
  104. package/dist/components/toast/index.d.mts +2 -2
  105. package/dist/components/toast/index.mjs +40 -18
  106. package/dist/components/toast/index.mjs.map +1 -1
  107. package/dist/components/tooltip/index.d.mts +7 -7
  108. package/dist/components/tooltip/index.mjs +57 -10
  109. package/dist/components/tooltip/index.mjs.map +1 -1
  110. package/dist/hooks/index.mjs +1 -1
  111. package/dist/hooks-DhLPp5ev.mjs +498 -0
  112. package/dist/hooks-DhLPp5ev.mjs.map +1 -0
  113. package/dist/{index-nYRuqVhj.d.mts → index-BOxDA6in.d.mts} +7 -7
  114. package/dist/{index-nYRuqVhj.d.mts.map → index-BOxDA6in.d.mts.map} +1 -1
  115. package/dist/{index-BjFHH6YC.d.mts → index-CA2KqK1H.d.mts} +7 -7
  116. package/dist/{index-BjFHH6YC.d.mts.map → index-CA2KqK1H.d.mts.map} +1 -1
  117. package/dist/lib-BYj5usAj.mjs.map +1 -1
  118. package/dist/loader-YlJGMiNg.mjs +147 -0
  119. package/dist/loader-YlJGMiNg.mjs.map +1 -0
  120. package/dist/{select-Cj4-Qawh.mjs → select-DzzJJ1eF.mjs} +92 -39
  121. package/dist/select-DzzJJ1eF.mjs.map +1 -0
  122. package/dist/{slot-CcgC3dMT.mjs → slot-BRtSsS2H.mjs} +71 -22
  123. package/dist/slot-BRtSsS2H.mjs.map +1 -0
  124. package/dist/util-Dsk1XpGU.mjs.map +1 -1
  125. package/package.json +6 -1
  126. package/src/tailwind/theme.css +46 -0
  127. package/tsdown.config.ts +12 -0
  128. package/dist/Button-Pt94K1aQ.mjs +0 -93
  129. package/dist/Button-Pt94K1aQ.mjs.map +0 -1
  130. package/dist/Dialog-Dd6B65pk.mjs +0 -49
  131. package/dist/Dialog-Dd6B65pk.mjs.map +0 -1
  132. package/dist/Input-BhfAzRbK.mjs +0 -50
  133. package/dist/Input-BhfAzRbK.mjs.map +0 -1
  134. package/dist/Scroll-COJIjL5E.mjs +0 -74
  135. package/dist/Scroll-COJIjL5E.mjs.map +0 -1
  136. package/dist/Snack-Cn-e_L-F.mjs +0 -47
  137. package/dist/Snack-Cn-e_L-F.mjs.map +0 -1
  138. package/dist/TooltipTrigger-DYEGAnbT.mjs.map +0 -1
  139. package/dist/badge-SWMvOR2A.mjs +0 -37
  140. package/dist/badge-SWMvOR2A.mjs.map +0 -1
  141. package/dist/button-D9dSyBrn.mjs +0 -50
  142. package/dist/button-D9dSyBrn.mjs.map +0 -1
  143. package/dist/hooks-CBNvxDkV.mjs +0 -284
  144. package/dist/hooks-CBNvxDkV.mjs.map +0 -1
  145. package/dist/loader-BSQqGDHk.mjs +0 -67
  146. package/dist/loader-BSQqGDHk.mjs.map +0 -1
  147. package/dist/select-Cj4-Qawh.mjs.map +0 -1
  148. package/dist/slot-CcgC3dMT.mjs.map +0 -1
@@ -1,6 +1,8 @@
1
1
  name: Deploy storybook
2
2
 
3
3
  on:
4
+ workflow_dispatch:
5
+
4
6
  push:
5
7
  branches: [gh-pages]
6
8
 
@@ -0,0 +1,51 @@
1
+ name: Release
2
+
3
+ on:
4
+ workflow_dispatch:
5
+
6
+ push:
7
+ tags:
8
+ - "v*.*.*"
9
+
10
+ jobs:
11
+ build:
12
+ runs-on: ubuntu-latest
13
+ permissions:
14
+ contents: read
15
+ id-token: write
16
+
17
+ steps:
18
+ - uses: actions/checkout@v4
19
+
20
+ - uses: pnpm/action-setup@v4
21
+ # pnpm version is specified in the package.json packageManager section
22
+ - uses: actions/setup-node@v4
23
+ with:
24
+ node-version: 22
25
+ cache: pnpm
26
+ registry-url: https://registry.npmjs.org
27
+
28
+ - name: "Install JS dependencies"
29
+ run: "pnpm i --frozen-lockfile"
30
+
31
+ - name: Build library
32
+ run: pnpm run build
33
+
34
+ # - name: Release
35
+ # uses: softprops/action-gh-release@v2
36
+ # if: github.ref_type == 'tag'
37
+ # with:
38
+ # token: ${{ secrets.DESIGN_RELEASE_GITHUB_TOKEN }}
39
+
40
+ - name: Creating .npmrc
41
+ run: |
42
+ cat << EOF > "./.npmrc"
43
+ //registry.npmjs.org/:_authToken=$NPM_TOKEN
44
+ EOF
45
+ env:
46
+ NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
47
+
48
+ - name: Publish package
49
+ run: npm i -g npm@^11.5.2 && npm publish --provenance --access public
50
+ env:
51
+ NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
@@ -0,0 +1,204 @@
1
+ import { h as useRipple } from "./hooks-DhLPp5ev.mjs";
2
+ import { t as Loader } from "./loader-YlJGMiNg.mjs";
3
+ import { t as Slot } from "./slot-BRtSsS2H.mjs";
4
+ import { c } from "react/compiler-runtime";
5
+ import { useImperativeHandle, useRef } from "react";
6
+ import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
7
+ import clsx from "clsx";
8
+ import { cva } from "class-variance-authority";
9
+
10
+ //#region src/components/button/Button.tsx
11
+ function loaderColor(color) {
12
+ switch (color) {
13
+ case "yellow-alpha": return "yellow";
14
+ case "gray-alpha": return "gray";
15
+ default: return color;
16
+ }
17
+ }
18
+ const buttonVariants = cva("relative box-border inline-flex items-center leading-5 no-underline focus-visible-has:outline-2", {
19
+ variants: {
20
+ clickable: {
21
+ true: "cursor-pointer active:translate-y-px focus-visible-has:z-10",
22
+ false: "pointer-events-none"
23
+ },
24
+ size: {
25
+ small: "[--h-button:1.5rem] h-(--h-button) truncate",
26
+ medium: "[--h-button:2rem] h-(--h-button) truncate",
27
+ large: "[--h-button:3rem] h-(--h-button) truncate",
28
+ input: "[--h-button:calc(var(--h-input)-2px)] h-(--h-button) truncate",
29
+ custom: "truncate",
30
+ scalable: ""
31
+ },
32
+ icon: {
33
+ true: "rounded-[calc(var(--h-button)/2)] min-w-(--h-button) [&_i,&_img,&_svg]:w-(--h-button) justify-center [&_:last-child:not(i,img,svg,strong)]:pr-4",
34
+ false: "rounded-2xl px-4",
35
+ custom: ""
36
+ },
37
+ width: {
38
+ fit: "w-full max-w-fit",
39
+ full: "w-full justify-center",
40
+ custom: ""
41
+ },
42
+ variant: {
43
+ contained: "shadow-sm hover:shadow-md active:shadow-md-active outline-offset-0 text-custom-text bg-custom-3 hover:bg-custom-4 current:bg-custom-4 focus-visible-has:outline-custom-5",
44
+ light: "shadow-sm hover:shadow-md has-checked:shadow-md focus:shadow-md active:shadow-md-active outline-offset-0 bg-custom-1 text-gray-text hover:text-custom-text hover:bg-custom-3 current:bg-custom-3 focus-visible-has:outline-custom-4",
45
+ outlined: "bg-custom-0 hover:shadow-xs active:shadow-xs-active text-gray-7 outline-offset-0 border-1 hover:bg-custom-1 border-custom-border focus-visible-has:outline-custom-5 current:bg-custom-3 focus-visible-has:border-transparent",
46
+ text: "bg-transparent hover:shadow-xs active:shadow-xs-active outline-offset-0 hover:bg-custom-1 dark:hover:bg-custom-1/50 text-gray-7 hover:text-gray-8 current:bg-custom-3 focus-visible-has:outline-custom-5",
47
+ ghost: "outline-offset-0 current:bg-custom-1 focus-visible-has:outline-custom-5"
48
+ }
49
+ },
50
+ defaultVariants: {
51
+ size: "medium",
52
+ icon: false,
53
+ variant: "contained",
54
+ clickable: true,
55
+ width: "fit"
56
+ }
57
+ });
58
+ function Button(t0) {
59
+ const $ = c(42);
60
+ let children;
61
+ let className;
62
+ let props;
63
+ let ref;
64
+ let t1;
65
+ let t10;
66
+ let t11;
67
+ let t2;
68
+ let t3;
69
+ let t4;
70
+ let t5;
71
+ let t6;
72
+ let t7;
73
+ let t8;
74
+ let t9;
75
+ if ($[0] !== t0) {
76
+ ({withRipple: t1, variant: t2, loading: t3, color: t4, size: t5, focusable: t6, className, disabled: t7, children, selected: t8, icon: t9, asChild: t10, width: t11, ref, ...props} = t0);
77
+ $[0] = t0;
78
+ $[1] = children;
79
+ $[2] = className;
80
+ $[3] = props;
81
+ $[4] = ref;
82
+ $[5] = t1;
83
+ $[6] = t10;
84
+ $[7] = t11;
85
+ $[8] = t2;
86
+ $[9] = t3;
87
+ $[10] = t4;
88
+ $[11] = t5;
89
+ $[12] = t6;
90
+ $[13] = t7;
91
+ $[14] = t8;
92
+ $[15] = t9;
93
+ } else {
94
+ children = $[1];
95
+ className = $[2];
96
+ props = $[3];
97
+ ref = $[4];
98
+ t1 = $[5];
99
+ t10 = $[6];
100
+ t11 = $[7];
101
+ t2 = $[8];
102
+ t3 = $[9];
103
+ t4 = $[10];
104
+ t5 = $[11];
105
+ t6 = $[12];
106
+ t7 = $[13];
107
+ t8 = $[14];
108
+ t9 = $[15];
109
+ }
110
+ const withRipple = t1 === void 0 ? true : t1;
111
+ const variant = t2 === void 0 ? "contained" : t2;
112
+ const loading = t3 === void 0 ? false : t3;
113
+ const color = t4 === void 0 ? "yellow" : t4;
114
+ const size = t5 === void 0 ? "medium" : t5;
115
+ const focusable = t6 === void 0 ? true : t6;
116
+ const disabled = t7 === void 0 ? false : t7;
117
+ const selected = t8 === void 0 ? false : t8;
118
+ const icon = t9 === void 0 ? false : t9;
119
+ const asChild = t10 === void 0 ? false : t10;
120
+ const width = t11 === void 0 ? "fit" : t11;
121
+ const inputRef = useRef(null);
122
+ let t12;
123
+ if ($[16] === Symbol.for("react.memo_cache_sentinel")) {
124
+ t12 = () => inputRef.current;
125
+ $[16] = t12;
126
+ } else t12 = $[16];
127
+ useImperativeHandle(ref, t12);
128
+ const rippleEnabled = !loading && !disabled && withRipple;
129
+ useRipple(inputRef, [
130
+ "text",
131
+ "outlined",
132
+ "ghost"
133
+ ].includes(variant) ? true : false, rippleEnabled);
134
+ const Comp = asChild ? Slot : "button";
135
+ const t13 = focusable ? 0 : -1;
136
+ let t14;
137
+ if ($[17] !== className || $[18] !== icon || $[19] !== loading || $[20] !== size || $[21] !== variant || $[22] !== width) {
138
+ t14 = clsx(buttonVariants({
139
+ variant,
140
+ size,
141
+ width,
142
+ icon: width === "custom" && !icon ? "custom" : icon
143
+ }), className, loading && !icon && "text-transparent");
144
+ $[17] = className;
145
+ $[18] = icon;
146
+ $[19] = loading;
147
+ $[20] = size;
148
+ $[21] = variant;
149
+ $[22] = width;
150
+ $[23] = t14;
151
+ } else t14 = $[23];
152
+ let t15;
153
+ if ($[24] !== disabled) {
154
+ t15 = disabled ? { disabled } : {};
155
+ $[24] = disabled;
156
+ $[25] = t15;
157
+ } else t15 = $[25];
158
+ let t16;
159
+ if ($[26] !== asChild || $[27] !== children || $[28] !== color || $[29] !== loading) {
160
+ t16 = asChild ? children : /* @__PURE__ */ jsxs(Fragment$1, { children: [children, loading && /* @__PURE__ */ jsx(Loader, {
161
+ color: loaderColor(color),
162
+ className: clsx("top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2"),
163
+ position: "absolute"
164
+ })] });
165
+ $[26] = asChild;
166
+ $[27] = children;
167
+ $[28] = color;
168
+ $[29] = loading;
169
+ $[30] = t16;
170
+ } else t16 = $[30];
171
+ let t17;
172
+ if ($[31] !== Comp || $[32] !== color || $[33] !== loading || $[34] !== props || $[35] !== selected || $[36] !== t13 || $[37] !== t14 || $[38] !== t15 || $[39] !== t16 || $[40] !== variant) {
173
+ t17 = /* @__PURE__ */ jsx(Comp, {
174
+ tabIndex: t13,
175
+ role: "button",
176
+ ref: inputRef,
177
+ className: t14,
178
+ "data-color": color,
179
+ "data-variant": variant,
180
+ "aria-checked": selected,
181
+ suppressHydrationWarning: true,
182
+ "aria-busy": loading,
183
+ ...t15,
184
+ ...props,
185
+ children: t16
186
+ });
187
+ $[31] = Comp;
188
+ $[32] = color;
189
+ $[33] = loading;
190
+ $[34] = props;
191
+ $[35] = selected;
192
+ $[36] = t13;
193
+ $[37] = t14;
194
+ $[38] = t15;
195
+ $[39] = t16;
196
+ $[40] = variant;
197
+ $[41] = t17;
198
+ } else t17 = $[41];
199
+ return t17;
200
+ }
201
+
202
+ //#endregion
203
+ export { buttonVariants as n, Button as t };
204
+ //# sourceMappingURL=Button-BH3EFgdP.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Button-BH3EFgdP.mjs","names":["ComponentProps","RefObject","useImperativeHandle","useRef","clsx","Loader","useRipple","Slot","cva","ThemeColor","loaderColor","color","ButtonProps","Omit","withRipple","variant","size","width","loading","disabled","focusable","selected","icon","asChild","ref","HTMLButtonElement","buttonVariants","variants","clickable","true","false","small","medium","large","input","custom","scalable","fit","full","contained","light","outlined","text","ghost","defaultVariants","Button","t0","$","_c","children","className","props","t1","t10","t11","t2","t3","t4","t5","t6","t7","t8","t9","undefined","inputRef","t12","Symbol","for","current","rippleEnabled","includes","Comp","t13","t14","t15","t16","t17"],"sources":["../src/components/button/Button.tsx"],"sourcesContent":["import { ComponentProps, RefObject, useImperativeHandle, useRef } from \"react\";\nimport clsx from \"clsx\";\nimport { Loader } from \"../loader\";\nimport { useRipple } from \"../../hooks\";\nimport { Slot } from \"../slot\";\nimport { cva } from \"class-variance-authority\";\nimport { ThemeColor } from \"../../types\";\n\nfunction loaderColor(color: ThemeColor): ThemeColor {\n switch (color) {\n case \"yellow-alpha\":\n return \"yellow\";\n case \"gray-alpha\":\n return \"gray\";\n default:\n return color;\n }\n}\n\nexport interface ButtonProps extends Omit<ComponentProps<\"button\">, \"color\"> {\n withRipple?: boolean;\n\n variant?: \"contained\" | \"light\" | \"outlined\" | \"text\" | \"ghost\";\n\n size?: \"small\" | \"medium\" | \"large\" | \"custom\" | \"input\" | \"scalable\";\n\n color?: ThemeColor;\n\n width?: \"fit\" | \"full\" | \"custom\";\n\n loading?: boolean;\n\n disabled?: boolean;\n\n focusable?: boolean;\n /**\n * For a selected item inside a group.\n */\n selected?: boolean;\n\n icon?: boolean;\n\n asChild?: boolean;\n\n ref?: RefObject<HTMLButtonElement>;\n}\n\nexport const buttonVariants = cva(\n \"relative box-border inline-flex items-center leading-5 no-underline focus-visible-has:outline-2\",\n {\n variants: {\n clickable: {\n true: \"cursor-pointer active:translate-y-px focus-visible-has:z-10\",\n false: \"pointer-events-none\",\n },\n size: {\n small: \"[--h-button:1.5rem] h-(--h-button) truncate\",\n medium: \"[--h-button:2rem] h-(--h-button) truncate\",\n large: \"[--h-button:3rem] h-(--h-button) truncate\",\n input: \"[--h-button:calc(var(--h-input)-2px)] h-(--h-button) truncate\",\n custom: \"truncate\",\n scalable: \"\",\n },\n icon: {\n true: \"rounded-[calc(var(--h-button)/2)] min-w-(--h-button) [&_i,&_img,&_svg]:w-(--h-button) justify-center [&_:last-child:not(i,img,svg,strong)]:pr-4\",\n false: \"rounded-2xl px-4\",\n custom: \"\",\n },\n width: {\n fit: \"w-full max-w-fit\",\n full: \"w-full justify-center\",\n custom: \"\",\n },\n variant: {\n /**\n * src/tailwind/plugin.ts\n * addVariant(\"current\", [\n * `&[aria-checked=\"true\"]`,\n * `&[aria-current=\"page\"]`,\n * `&:has(:checked)`\n * ])\n */\n contained:\n \"shadow-sm hover:shadow-md active:shadow-md-active outline-offset-0 text-custom-text bg-custom-3 hover:bg-custom-4 current:bg-custom-4 focus-visible-has:outline-custom-5\",\n light:\n \"shadow-sm hover:shadow-md has-checked:shadow-md focus:shadow-md active:shadow-md-active outline-offset-0 bg-custom-1 text-gray-text hover:text-custom-text hover:bg-custom-3 current:bg-custom-3 focus-visible-has:outline-custom-4\",\n outlined:\n \"bg-custom-0 hover:shadow-xs active:shadow-xs-active text-gray-7 outline-offset-0 border-1 hover:bg-custom-1 border-custom-border focus-visible-has:outline-custom-5 current:bg-custom-3 focus-visible-has:border-transparent\",\n text: \"bg-transparent hover:shadow-xs active:shadow-xs-active outline-offset-0 hover:bg-custom-1 dark:hover:bg-custom-1/50 text-gray-7 hover:text-gray-8 current:bg-custom-3 focus-visible-has:outline-custom-5\",\n ghost: \"outline-offset-0 current:bg-custom-1 focus-visible-has:outline-custom-5\",\n },\n },\n defaultVariants: {\n size: \"medium\",\n icon: false,\n variant: \"contained\",\n clickable: true,\n width: \"fit\",\n },\n },\n);\n\nexport function Button({\n withRipple = true,\n variant = \"contained\",\n loading = false,\n color = \"yellow\",\n size = \"medium\",\n focusable = true,\n className,\n disabled = false,\n children,\n selected = false,\n icon = false,\n asChild = false,\n width = \"fit\",\n ref,\n ...props\n}: ButtonProps) {\n const inputRef = useRef<HTMLButtonElement>(null!);\n\n useImperativeHandle<HTMLButtonElement | null, HTMLButtonElement | null>(\n ref,\n () => inputRef.current,\n );\n\n const rippleEnabled = !loading && !disabled && withRipple;\n\n useRipple(\n inputRef,\n [\"text\", \"outlined\", \"ghost\"].includes(variant) ? true : false,\n rippleEnabled,\n );\n\n const Comp = asChild ? Slot : \"button\";\n\n return (\n <Comp\n tabIndex={focusable ? 0 : -1}\n role=\"button\"\n ref={inputRef}\n className={clsx(\n buttonVariants({\n variant,\n size,\n width,\n icon: width === \"custom\" && !icon ? \"custom\" : icon,\n }),\n className,\n loading && !icon && \"text-transparent\",\n )}\n data-color={color}\n data-variant={variant}\n aria-checked={selected}\n suppressHydrationWarning\n aria-busy={loading}\n {...(disabled ? { disabled } : {})}\n {...props}\n >\n {asChild ? (\n children\n ) : (\n <>\n {/* {!notClickable && withRipple && ripples} */}\n {children}\n {loading && (\n <Loader\n color={loaderColor(color)}\n className={clsx(\"top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2\")}\n position=\"absolute\"\n />\n )}\n </>\n )}\n </Comp>\n );\n}\n"],"mappings":";;;;;;;;;;AAQA,SAASU,YAAYC,OAA+B;AAClD,SAAQA,OAAR;EACE,KAAK,eACH,QAAO;EACT,KAAK,aACH,QAAO;EACT,QACE,QAAOA;;;AAgCb,MAAae,iBAAiBlB,IAC5B,mGACA;CACEmB,UAAU;EACRC,WAAW;GACTC,MAAM;GACNC,OAAO;GACR;EACDd,MAAM;GACJe,OAAO;GACPC,QAAQ;GACRC,OAAO;GACPC,OAAO;GACPC,QAAQ;GACRC,UAAU;GACX;EACDd,MAAM;GACJO,MAAM;GACNC,OAAO;GACPK,QAAQ;GACT;EACDlB,OAAO;GACLoB,KAAK;GACLC,MAAM;GACNH,QAAQ;GACT;EACDpB,SAAS;GASPwB,WACE;GACFC,OACE;GACFC,UACE;GACFC,MAAM;GACNC,OAAO;GACT;EACD;CACDC,iBAAiB;EACf5B,MAAM;EACNM,MAAM;EACNP,SAAS;EACTa,WAAW;EACXX,OAAO;EACT;CAEJ,CAAC;AAED,SAAO4B,OAAAC,IAAA;CAAA,MAAAC,IAAAC,EAAA,GAAA;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAA3B;CAAA,IAAA4B;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAC;AAAA,KAAAf,EAAA,OAAAD,IAAA;AAAgB,GAAA,CAAAhC,YAAAsC,IAAArC,SAAAwC,IAAArC,SAAAsC,IAAA7C,OAAA8C,IAAAzC,MAAA0C,IAAAtC,WAAAuC,IAAAT,WAAA/B,UAAAyC,IAAAX,UAAA5B,UAAAwC,IAAAvC,MAAAwC,IAAAvC,SAAA8B,KAAApC,OAAAqC,KAAA9B,QAAA2B,SAAAL;AAgBTC,IAAA,KAAAD;AAAAC,IAAA,KAAAE;AAAAF,IAAA,KAAAG;AAAAH,IAAA,KAAAI;AAAAJ,IAAA,KAAAvB;AAAAuB,IAAA,KAAAK;AAAAL,IAAA,KAAAM;AAAAN,IAAA,KAAAO;AAAAP,IAAA,KAAAQ;AAAAR,IAAA,KAAAS;AAAAT,IAAA,MAAAU;AAAAV,IAAA,MAAAW;AAAAX,IAAA,MAAAY;AAAAZ,IAAA,MAAAa;AAAAb,IAAA,MAAAc;AAAAd,IAAA,MAAAe;QAAA;AAAAb,aAAAF,EAAA;AAAAG,cAAAH,EAAA;AAAAI,UAAAJ,EAAA;AAAAvB,QAAAuB,EAAA;AAAAK,OAAAL,EAAA;AAAAM,QAAAN,EAAA;AAAAO,QAAAP,EAAA;AAAAQ,OAAAR,EAAA;AAAAS,OAAAT,EAAA;AAAAU,OAAAV,EAAA;AAAAW,OAAAX,EAAA;AAAAY,OAAAZ,EAAA;AAAAa,OAAAb,EAAA;AAAAc,OAAAd,EAAA;AAAAe,OAAAf,EAAA;;CAfZ,MAAAjC,aAAAsC,OAAAW,SAAA,OAAAX;CACA,MAAArC,UAAAwC,OAAAQ,SAAA,cAAAR;CACA,MAAArC,UAAAsC,OAAAO,SAAA,QAAAP;CACA,MAAA7C,QAAA8C,OAAAM,SAAA,WAAAN;CACA,MAAAzC,OAAA0C,OAAAK,SAAA,WAAAL;CACA,MAAAtC,YAAAuC,OAAAI,SAAA,OAAAJ;CAEA,MAAAxC,WAAAyC,OAAAG,SAAA,QAAAH;CAEA,MAAAvC,WAAAwC,OAAAE,SAAA,QAAAF;CACA,MAAAvC,OAAAwC,OAAAC,SAAA,QAAAD;CACA,MAAAvC,UAAA8B,QAAAU,SAAA,QAAAV;CACA,MAAApC,QAAAqC,QAAAS,SAAA,QAAAT;CAIA,MAAAU,WAAiB7D,OAA0B,KAAM;CAAC,IAAA8D;AAAA,KAAAlB,EAAA,QAAAmB,OAAAC,IAAA,4BAAA,EAAA;AAIhDF,cAAMD,SAAQI;AAAQrB,IAAA,MAAAkB;OAAAA,OAAAlB,EAAA;AAFxB7C,qBACEsB,KACAyC,IACD;CAED,MAAAI,gBAAsB,CAACnD,WAAD,CAAaC,YAAbL;AAEtBR,WACE0D,UACA;EAAC;EAAQ;EAAY;EAAQ,CAAAM,SAAUvD,QAAuB,GAA9D,OAAA,OACAsD,cACD;CAED,MAAAE,OAAahD,UAAAhB,OAAA;CAIC,MAAAiE,MAAApD,YAAA,IAAA;CAAkB,IAAAqD;AAAA,KAAA1B,EAAA,QAAAG,aAAAH,EAAA,QAAAzB,QAAAyB,EAAA,QAAA7B,WAAA6B,EAAA,QAAA/B,QAAA+B,EAAA,QAAAhC,WAAAgC,EAAA,QAAA9B,OAAA;AAGjBwD,QAAArE,KACTsB,eAAe;GAAAX;GAAAC;GAAAC;GAAAK,MAIPL,UAAU,YAAV,CAAuBK,OAAvB,WAAAA;GACP,CAAC,EACF4B,WACAhC,WAAA,CAAYI,QAAZ,mBACD;AAAAyB,IAAA,MAAAG;AAAAH,IAAA,MAAAzB;AAAAyB,IAAA,MAAA7B;AAAA6B,IAAA,MAAA/B;AAAA+B,IAAA,MAAAhC;AAAAgC,IAAA,MAAA9B;AAAA8B,IAAA,MAAA0B;OAAAA,OAAA1B,EAAA;CAAA,IAAA2B;AAAA,KAAA3B,EAAA,QAAA5B,UAAA;AAMIuD,QAAAvD,WAAA,EAAAA,UAA4B,GAA5B,EAA4B;AAAA4B,IAAA,MAAA5B;AAAA4B,IAAA,MAAA2B;OAAAA,OAAA3B,EAAA;CAAA,IAAA4B;AAAA,KAAA5B,EAAA,QAAAxB,WAAAwB,EAAA,QAAAE,YAAAF,EAAA,QAAApC,SAAAoC,EAAA,QAAA7B,SAAA;AAGhCyD,QAAApD,UAAA0B,WAAA,8CAKIA,UACA/B,WACC,oBAAC;GACQ,OAAAR,YAAYC,MAAK;GACb,WAAAP,KAAK,qDAAoD;GAC3D,UAAA;IAEb,IAEH;AAAA2C,IAAA,MAAAxB;AAAAwB,IAAA,MAAAE;AAAAF,IAAA,MAAApC;AAAAoC,IAAA,MAAA7B;AAAA6B,IAAA,MAAA4B;OAAAA,OAAA5B,EAAA;CAAA,IAAA6B;AAAA,KAAA7B,EAAA,QAAAwB,QAAAxB,EAAA,QAAApC,SAAAoC,EAAA,QAAA7B,WAAA6B,EAAA,QAAAI,SAAAJ,EAAA,QAAA1B,YAAA0B,EAAA,QAAAyB,OAAAzB,EAAA,QAAA0B,OAAA1B,EAAA,QAAA2B,OAAA3B,EAAA,QAAA4B,OAAA5B,EAAA,QAAAhC,SAAA;AApCH6D,QAAA,oBAAC;GACW,UAAAJ;GACL,MAAA;GACAR,KAAAA;GACM,WAAAS;GAUC9D,cAAAA;GACEI,gBAAAA;GACAM,gBAAAA;GACd,0BAAA;GACWH,aAAAA;GAAO,GACbwD;GAA4B,GAC7BvB;aAEHwB;IAeI;AAAA5B,IAAA,MAAAwB;AAAAxB,IAAA,MAAApC;AAAAoC,IAAA,MAAA7B;AAAA6B,IAAA,MAAAI;AAAAJ,IAAA,MAAA1B;AAAA0B,IAAA,MAAAyB;AAAAzB,IAAA,MAAA0B;AAAA1B,IAAA,MAAA2B;AAAA3B,IAAA,MAAA4B;AAAA5B,IAAA,MAAAhC;AAAAgC,IAAA,MAAA6B;OAAAA,OAAA7B,EAAA;AAAA,QArCP6B"}
@@ -1,7 +1,7 @@
1
1
  import { i as ThemeColor } from "./types-NxD0D2V5.mjs";
2
2
  import { ComponentProps, RefObject } from "react";
3
- import * as react_jsx_runtime68 from "react/jsx-runtime";
4
- import * as class_variance_authority_types0 from "class-variance-authority/types";
3
+ import * as react_jsx_runtime69 from "react/jsx-runtime";
4
+ import * as class_variance_authority_types1 from "class-variance-authority/types";
5
5
 
6
6
  //#region src/components/button/Button.d.ts
7
7
  interface ButtonProps extends Omit<ComponentProps<"button">, "color"> {
@@ -23,11 +23,11 @@ interface ButtonProps extends Omit<ComponentProps<"button">, "color"> {
23
23
  }
24
24
  declare const buttonVariants: (props?: ({
25
25
  clickable?: boolean | null | undefined;
26
- size?: "input" | "small" | "large" | "custom" | "medium" | "scalable" | null | undefined;
26
+ size?: "input" | "small" | "custom" | "large" | "medium" | "scalable" | null | undefined;
27
27
  icon?: boolean | "custom" | null | undefined;
28
28
  width?: "fit" | "full" | "custom" | null | undefined;
29
29
  variant?: "text" | "contained" | "light" | "outlined" | "ghost" | null | undefined;
30
- } & class_variance_authority_types0.ClassProp) | undefined) => string;
30
+ } & class_variance_authority_types1.ClassProp) | undefined) => string;
31
31
  declare function Button({
32
32
  withRipple,
33
33
  variant,
@@ -44,7 +44,7 @@ declare function Button({
44
44
  width,
45
45
  ref,
46
46
  ...props
47
- }: ButtonProps): react_jsx_runtime68.JSX.Element;
47
+ }: ButtonProps): react_jsx_runtime69.JSX.Element;
48
48
  //#endregion
49
49
  export { ButtonProps as n, buttonVariants as r, Button as t };
50
- //# sourceMappingURL=Button-jLcascU9.d.mts.map
50
+ //# sourceMappingURL=Button-I8WN-D9m.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Button-jLcascU9.d.mts","names":[],"sources":["../src/components/button/Button.tsx"],"sourcesContent":[],"mappings":";;;;;;UAmBiB,WAAA,SAAoB,KAAK;;;;EAAzB,KAAA,CAAA,EAOP,UAPmB;EAAa,KAAA,CAAA,EAAA,KAAA,GAAA,MAAA,GAAA,QAAA;EAOhC,OAAA,CAAA,EAAA,OAAA;EAkBQ,QAAA,CAAA,EAAA,OAAA;EAAV,SAAA,CAAA,EAAA,OAAA;EAzB6B;;AA4BrC;EAuDgB,QAAA,CAAM,EAAA,OAAA;EACpB,IAAA,CAAA,EAAA,OAAA;EACA,OAAA,CAAA,EAAA,OAAA;EACA,GAAA,CAAA,EA7DM,SA6DN,CA7DgB,iBA6DhB,CAAA;;AAEA,cA5DW,cA4DX,EAAA,CAAA,KAMA,CANA,EAAA,CAAA;EACA,SAAA,CAAA,EAAA,OAAA,GAAA,IAAA,GAAA,SAAA;EACA,IAAA,CAAA,EAAA,OAAA,GAAA,OAAA,GAAA,OAAA,GAAA,QAAA,GAAA,QAAA,GAAA,UAAA,GAAA,IAAA,GAAA,SAAA;EACA,IAAA,CAAA,EAAA,OAAA,GAAA,QAAA,GAAA,IAAA,GAAA,SAAA;EACA,KAAA,CAAA,EAAA,KAAA,GAAA,MAAA,GAAA,QAAA,GAAA,IAAA,GAAA,SAAA;EACA,OAAA,CAAA,EAAA,MAAA,GAAA,WAAA,GAAA,OAAA,GAAA,UAAA,GAAA,OAAA,GAAA,IAAA,GAAA,SAAA;CACA,GAbD,+BAAA,CAAA,SAaC,CAAA,GAAA,SAAA,EAAA,GAAA,MAAA;AACA,iBAZc,MAAA,CAYd;EAAA,UAAA;EAAA,OAAA;EAAA,OAAA;EAAA,KAAA;EAAA,IAAA;EAAA,SAAA;EAAA,SAAA;EAAA,QAAA;EAAA,QAAA;EAAA,QAAA;EAAA,IAAA;EAAA,OAAA;EAAA,KAAA;EAAA,GAAA;EAAA,GAAA;AAAA,CAAA,EAIC,WAJD,CAAA,EAIY,mBAAA,CAAA,GAAA,CAAA,OAJZ"}
1
+ {"version":3,"file":"Button-I8WN-D9m.d.mts","names":[],"sources":["../src/components/button/Button.tsx"],"sourcesContent":[],"mappings":";;;;;;UAmBiB,WAAA,SAAoB,KAAK;;;;EAAzB,KAAA,CAAA,EAOP,UAPmB;EAAa,KAAA,CAAA,EAAA,KAAA,GAAA,MAAA,GAAA,QAAA;EAOhC,OAAA,CAAA,EAAA,OAAA;EAkBQ,QAAA,CAAA,EAAA,OAAA;EAAV,SAAA,CAAA,EAAA,OAAA;EAzB6B;;AA4BrC;EAuDgB,QAAA,CAAM,EAAA,OAAA;EACpB,IAAA,CAAA,EAAA,OAAA;EACA,OAAA,CAAA,EAAA,OAAA;EACA,GAAA,CAAA,EA7DM,SA6DN,CA7DgB,iBA6DhB,CAAA;;AAEA,cA5DW,cA4DX,EAAA,CAAA,KAMA,CANA,EAAA,CAAA;EACA,SAAA,CAAA,EAAA,OAAA,GAAA,IAAA,GAAA,SAAA;EACA,IAAA,CAAA,EAAA,OAAA,GAAA,OAAA,GAAA,QAAA,GAAA,OAAA,GAAA,QAAA,GAAA,UAAA,GAAA,IAAA,GAAA,SAAA;EACA,IAAA,CAAA,EAAA,OAAA,GAAA,QAAA,GAAA,IAAA,GAAA,SAAA;EACA,KAAA,CAAA,EAAA,KAAA,GAAA,MAAA,GAAA,QAAA,GAAA,IAAA,GAAA,SAAA;EACA,OAAA,CAAA,EAAA,MAAA,GAAA,WAAA,GAAA,OAAA,GAAA,UAAA,GAAA,OAAA,GAAA,IAAA,GAAA,SAAA;CACA,GAbD,+BAAA,CAAA,SAaC,CAAA,GAAA,SAAA,EAAA,GAAA,MAAA;AACA,iBAZc,MAAA,CAYd;EAAA,UAAA;EAAA,OAAA;EAAA,OAAA;EAAA,KAAA;EAAA,IAAA;EAAA,SAAA;EAAA,SAAA;EAAA,QAAA;EAAA,QAAA;EAAA,QAAA;EAAA,IAAA;EAAA,OAAA;EAAA,KAAA;EAAA,GAAA;EAAA,GAAA;AAAA,CAAA,EAIC,WAJD,CAAA,EAIY,mBAAA,CAAA,GAAA,CAAA,OAJZ"}
@@ -0,0 +1,102 @@
1
+ import { c } from "react/compiler-runtime";
2
+ import { jsx } from "react/jsx-runtime";
3
+ import clsx from "clsx";
4
+ import { cva } from "class-variance-authority";
5
+
6
+ //#region src/components/dialog/Dialog.tsx
7
+ const dialogVariants = cva("relative", {
8
+ variants: {
9
+ color: {
10
+ yellow: "border-t-4 border-t-yellow-3 bg-gray-0",
11
+ gray: "border-t-4 border-t-gray-3 bg-gray-0",
12
+ red: "border-t-4 border-t-red-3 bg-red-1",
13
+ blue: "border-t-4 border-t-blue-3 bg-blue-1",
14
+ green: "border-t-4 border-t-green-3 bg-green-1",
15
+ orange: "border-t-4 border-t-orange-3 bg-orange-1",
16
+ default: "bg-gray-0"
17
+ },
18
+ shadow: {
19
+ true: "shadow-sm dark:shadow-dark",
20
+ false: "border border-gray-2"
21
+ },
22
+ rounded: {
23
+ true: "rounded-2xl",
24
+ false: ""
25
+ }
26
+ },
27
+ defaultVariants: {
28
+ color: "default",
29
+ shadow: true,
30
+ rounded: true
31
+ }
32
+ });
33
+ function Dialog(t0) {
34
+ const $ = c(21);
35
+ let children;
36
+ let className;
37
+ let color;
38
+ let placement;
39
+ let rest;
40
+ let rounded;
41
+ let shadow;
42
+ let t1;
43
+ if ($[0] !== t0) {
44
+ ({placement, color, rounded, shadow, children, className, role: t1, ...rest} = t0);
45
+ $[0] = t0;
46
+ $[1] = children;
47
+ $[2] = className;
48
+ $[3] = color;
49
+ $[4] = placement;
50
+ $[5] = rest;
51
+ $[6] = rounded;
52
+ $[7] = shadow;
53
+ $[8] = t1;
54
+ } else {
55
+ children = $[1];
56
+ className = $[2];
57
+ color = $[3];
58
+ placement = $[4];
59
+ rest = $[5];
60
+ rounded = $[6];
61
+ shadow = $[7];
62
+ t1 = $[8];
63
+ }
64
+ const role = t1 === void 0 ? "dialog" : t1;
65
+ let t2;
66
+ if ($[9] !== className || $[10] !== color || $[11] !== rounded || $[12] !== shadow) {
67
+ t2 = clsx(dialogVariants({
68
+ color,
69
+ rounded,
70
+ shadow
71
+ }), className);
72
+ $[9] = className;
73
+ $[10] = color;
74
+ $[11] = rounded;
75
+ $[12] = shadow;
76
+ $[13] = t2;
77
+ } else t2 = $[13];
78
+ const t3 = color ?? "gray";
79
+ let t4;
80
+ if ($[14] !== children || $[15] !== placement || $[16] !== rest || $[17] !== role || $[18] !== t2 || $[19] !== t3) {
81
+ t4 = /* @__PURE__ */ jsx("div", {
82
+ role,
83
+ className: t2,
84
+ "data-placement": placement,
85
+ "data-color": t3,
86
+ ...rest,
87
+ children
88
+ });
89
+ $[14] = children;
90
+ $[15] = placement;
91
+ $[16] = rest;
92
+ $[17] = role;
93
+ $[18] = t2;
94
+ $[19] = t3;
95
+ $[20] = t4;
96
+ } else t4 = $[20];
97
+ return t4;
98
+ }
99
+
100
+ //#endregion
101
+ export { dialogVariants as n, Dialog as t };
102
+ //# sourceMappingURL=Dialog-CriZOfkd.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Dialog-CriZOfkd.mjs","names":["Placement","clsx","ComponentProps","ReactNode","ThemeBaseColor","cva","Props","color","shadow","rounded","placement","children","dialogVariants","variants","yellow","gray","red","blue","green","orange","default","true","false","defaultVariants","Dialog","t0","$","_c","className","rest","t1","role","undefined","t2","t3","t4"],"sources":["../src/components/dialog/Dialog.tsx"],"sourcesContent":["import { Placement } from \"@floating-ui/react\";\nimport clsx from \"clsx\";\nimport { ComponentProps, ReactNode } from \"react\";\nimport type { ThemeBaseColor } from \"../../types\";\nimport { cva } from \"class-variance-authority\";\n\ninterface Props extends ComponentProps<\"div\"> {\n color?: ThemeBaseColor;\n shadow?: boolean;\n rounded?: boolean;\n placement?: Placement;\n children: ReactNode;\n}\n\nexport const dialogVariants = cva(\"relative\", {\n variants: {\n color: {\n yellow: \"border-t-4 border-t-yellow-3 bg-gray-0\",\n gray: \"border-t-4 border-t-gray-3 bg-gray-0\",\n red: \"border-t-4 border-t-red-3 bg-red-1\",\n blue: \"border-t-4 border-t-blue-3 bg-blue-1\",\n green: \"border-t-4 border-t-green-3 bg-green-1\",\n orange: \"border-t-4 border-t-orange-3 bg-orange-1\",\n default: \"bg-gray-0\",\n },\n shadow: {\n true: \"shadow-sm dark:shadow-dark\",\n false: \"border border-gray-2\",\n },\n rounded: {\n true: \"rounded-2xl\",\n false: \"\",\n },\n },\n defaultVariants: {\n color: \"default\",\n shadow: true,\n rounded: true,\n },\n});\n\nexport function Dialog({\n placement,\n color,\n rounded,\n shadow,\n children,\n className,\n role = \"dialog\",\n ...rest\n}: Props) {\n return (\n <div\n role={role}\n className={clsx(dialogVariants({ color, rounded, shadow }), className)}\n data-placement={placement}\n data-color={color ?? \"gray\"}\n {...rest}\n >\n {children}\n </div>\n );\n}\n"],"mappings":";;;;;;AAcA,MAAaY,iBAAiBP,IAAI,YAAY;CAC5CQ,UAAU;EACRN,OAAO;GACLO,QAAQ;GACRC,MAAM;GACNC,KAAK;GACLC,MAAM;GACNC,OAAO;GACPC,QAAQ;GACRC,SAAS;GACV;EACDZ,QAAQ;GACNa,MAAM;GACNC,OAAO;GACR;EACDb,SAAS;GACPY,MAAM;GACNC,OAAO;GACT;EACD;CACDC,iBAAiB;EACfhB,OAAO;EACPC,QAAQ;EACRC,SAAS;EACX;CACD,CAAC;AAEF,SAAOe,OAAAC,IAAA;CAAA,MAAAC,IAAAC,EAAA,GAAA;CAAA,IAAAhB;CAAA,IAAAiB;CAAA,IAAArB;CAAA,IAAAG;CAAA,IAAAmB;CAAA,IAAApB;CAAA,IAAAD;CAAA,IAAAsB;AAAA,KAAAJ,EAAA,OAAAD,IAAA;AAAgB,GAAA,CAAAf,WAAAH,OAAAE,SAAAD,QAAAG,UAAAiB,WAAAG,MAAAD,OAAAD,QAAAJ;AASfC,IAAA,KAAAD;AAAAC,IAAA,KAAAf;AAAAe,IAAA,KAAAE;AAAAF,IAAA,KAAAnB;AAAAmB,IAAA,KAAAhB;AAAAgB,IAAA,KAAAG;AAAAH,IAAA,KAAAjB;AAAAiB,IAAA,KAAAlB;AAAAkB,IAAA,KAAAI;QAAA;AAAAnB,aAAAe,EAAA;AAAAE,cAAAF,EAAA;AAAAnB,UAAAmB,EAAA;AAAAhB,cAAAgB,EAAA;AAAAG,SAAAH,EAAA;AAAAjB,YAAAiB,EAAA;AAAAlB,WAAAkB,EAAA;AAAAI,OAAAJ,EAAA;;CAFN,MAAAK,OAAAD,OAAAE,SAAA,WAAAF;CAAe,IAAAG;AAAA,KAAAP,EAAA,OAAAE,aAAAF,EAAA,QAAAnB,SAAAmB,EAAA,QAAAjB,WAAAiB,EAAA,QAAAlB,QAAA;AAMAyB,OAAAhC,KAAKW,eAAe;GAAAL;GAAAE;GAAAD;GAA0B,CAAC,EAAEoB,UAAU;AAAAF,IAAA,KAAAE;AAAAF,IAAA,MAAAnB;AAAAmB,IAAA,MAAAjB;AAAAiB,IAAA,MAAAlB;AAAAkB,IAAA,MAAAO;OAAAA,MAAAP,EAAA;CAE1D,MAAAQ,KAAA3B,SAAA;CAAe,IAAA4B;AAAA,KAAAT,EAAA,QAAAf,YAAAe,EAAA,QAAAhB,aAAAgB,EAAA,QAAAG,QAAAH,EAAA,QAAAK,QAAAL,EAAA,QAAAO,MAAAP,EAAA,QAAAQ,IAAA;AAJ7BC,OAAA,oBAAA;GACQJ;GACK,WAAAE;GACKvB,kBAAAA;GACJ,cAAAwB;GAAe,GACvBL;GAEHlB;IACG;AAAAe,IAAA,MAAAf;AAAAe,IAAA,MAAAhB;AAAAgB,IAAA,MAAAG;AAAAH,IAAA,MAAAK;AAAAL,IAAA,MAAAO;AAAAP,IAAA,MAAAQ;AAAAR,IAAA,MAAAS;OAAAA,MAAAT,EAAA;AAAA,QARNS"}
@@ -0,0 +1,174 @@
1
+ import { c } from "react/compiler-runtime";
2
+ import { jsx, jsxs } from "react/jsx-runtime";
3
+ import clsx from "clsx";
4
+
5
+ //#region src/components/input/Input.tsx
6
+ const sizeVariant = {
7
+ small: "[--h-input:24px] h-(--h-input)",
8
+ medium: "[--h-input:32px] h-(--h-input)",
9
+ large: "[--h-input:48px] h-(--h-input)",
10
+ custom: ""
11
+ };
12
+ const inputConfig = {
13
+ container: "p8n-input-text rounded-full flex box-border",
14
+ input: "h-full flex-1 appearance-none outline-hidden filter-none min-w-0 bg-transparent",
15
+ icon: "[--h-icon:calc(var(--h-input)-2px)] h-(--h-icon) w-(--h-icon) inline-flex-center"
16
+ };
17
+ function Input(t0) {
18
+ const $ = c(49);
19
+ let children;
20
+ let className;
21
+ let inputClassName;
22
+ let prefix;
23
+ let readOnly;
24
+ let ref;
25
+ let rest;
26
+ let suffix;
27
+ let t1;
28
+ let t2;
29
+ let t3;
30
+ let t4;
31
+ let t5;
32
+ let type;
33
+ if ($[0] !== t0) {
34
+ ({variant: t1, color: t2, disabled: t3, prefix, suffix, className, inputClassName, readOnly, size: t4, flexibleWidth: t5, type, children, ref, ...rest} = t0);
35
+ $[0] = t0;
36
+ $[1] = children;
37
+ $[2] = className;
38
+ $[3] = inputClassName;
39
+ $[4] = prefix;
40
+ $[5] = readOnly;
41
+ $[6] = ref;
42
+ $[7] = rest;
43
+ $[8] = suffix;
44
+ $[9] = t1;
45
+ $[10] = t2;
46
+ $[11] = t3;
47
+ $[12] = t4;
48
+ $[13] = t5;
49
+ $[14] = type;
50
+ } else {
51
+ children = $[1];
52
+ className = $[2];
53
+ inputClassName = $[3];
54
+ prefix = $[4];
55
+ readOnly = $[5];
56
+ ref = $[6];
57
+ rest = $[7];
58
+ suffix = $[8];
59
+ t1 = $[9];
60
+ t2 = $[10];
61
+ t3 = $[11];
62
+ t4 = $[12];
63
+ t5 = $[13];
64
+ type = $[14];
65
+ }
66
+ const variant = t1 === void 0 ? "normal" : t1;
67
+ const color = t2 === void 0 ? "yellow" : t2;
68
+ const disabled = t3 === void 0 ? false : t3;
69
+ const size = t4 === void 0 ? "medium" : t4;
70
+ const flexibleWidth = t5 === void 0 ? true : t5;
71
+ const t6 = sizeVariant[size];
72
+ let t7;
73
+ if ($[15] !== className || $[16] !== t6) {
74
+ t7 = clsx(inputConfig.container, t6, className);
75
+ $[15] = className;
76
+ $[16] = t6;
77
+ $[17] = t7;
78
+ } else t7 = $[17];
79
+ let t8;
80
+ if ($[18] !== prefix) {
81
+ t8 = prefix && /* @__PURE__ */ jsx("div", {
82
+ className: clsx(["flex-center relative", typeof prefix === "string" && "text-gray-6 mx-2 select-none"]),
83
+ children: prefix
84
+ });
85
+ $[18] = prefix;
86
+ $[19] = t8;
87
+ } else t8 = $[19];
88
+ const t9 = size !== "custom" && !prefix && "pl-4";
89
+ const t10 = size !== "custom" && type !== "date" && type !== "datetime-local" ? !suffix && "pr-4" : "pr-1";
90
+ const t11 = flexibleWidth && "w-0";
91
+ let t12;
92
+ if ($[20] !== inputClassName || $[21] !== t10 || $[22] !== t11 || $[23] !== t9) {
93
+ t12 = clsx(inputConfig.input, t9, t10, t11, inputClassName);
94
+ $[20] = inputClassName;
95
+ $[21] = t10;
96
+ $[22] = t11;
97
+ $[23] = t9;
98
+ $[24] = t12;
99
+ } else t12 = $[24];
100
+ let t13;
101
+ if ($[25] !== readOnly) {
102
+ t13 = (e) => {
103
+ if (readOnly) e.target?.select();
104
+ };
105
+ $[25] = readOnly;
106
+ $[26] = t13;
107
+ } else t13 = $[26];
108
+ let t14;
109
+ if ($[27] !== disabled) {
110
+ t14 = disabled ? { disabled } : {};
111
+ $[27] = disabled;
112
+ $[28] = t14;
113
+ } else t14 = $[28];
114
+ let t15;
115
+ if ($[29] !== readOnly || $[30] !== ref || $[31] !== rest || $[32] !== t12 || $[33] !== t13 || $[34] !== t14 || $[35] !== type) {
116
+ t15 = /* @__PURE__ */ jsx("input", {
117
+ type,
118
+ ref,
119
+ className: t12,
120
+ readOnly,
121
+ onClick: t13,
122
+ ...t14,
123
+ ...rest
124
+ });
125
+ $[29] = readOnly;
126
+ $[30] = ref;
127
+ $[31] = rest;
128
+ $[32] = t12;
129
+ $[33] = t13;
130
+ $[34] = t14;
131
+ $[35] = type;
132
+ $[36] = t15;
133
+ } else t15 = $[36];
134
+ let t16;
135
+ if ($[37] !== suffix) {
136
+ t16 = suffix && /* @__PURE__ */ jsx("div", {
137
+ className: clsx(["flex-center relative", typeof suffix === "string" && "text-gray-6 mx-2 select-none"]),
138
+ children: suffix
139
+ });
140
+ $[37] = suffix;
141
+ $[38] = t16;
142
+ } else t16 = $[38];
143
+ let t17;
144
+ if ($[39] !== children || $[40] !== color || $[41] !== disabled || $[42] !== readOnly || $[43] !== t15 || $[44] !== t16 || $[45] !== t7 || $[46] !== t8 || $[47] !== variant) {
145
+ t17 = /* @__PURE__ */ jsxs("div", {
146
+ "aria-disabled": disabled,
147
+ "aria-readonly": readOnly,
148
+ "data-color": color,
149
+ "data-variant": variant,
150
+ className: t7,
151
+ children: [
152
+ t8,
153
+ t15,
154
+ t16,
155
+ children
156
+ ]
157
+ });
158
+ $[39] = children;
159
+ $[40] = color;
160
+ $[41] = disabled;
161
+ $[42] = readOnly;
162
+ $[43] = t15;
163
+ $[44] = t16;
164
+ $[45] = t7;
165
+ $[46] = t8;
166
+ $[47] = variant;
167
+ $[48] = t17;
168
+ } else t17 = $[48];
169
+ return t17;
170
+ }
171
+
172
+ //#endregion
173
+ export { inputConfig as n, sizeVariant as r, Input as t };
174
+ //# sourceMappingURL=Input-DzDXg_MR.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Input-DzDXg_MR.mjs","names":["ComponentPropsWithRef","ReactNode","clsx","ThemeColor","InputProps","Omit","variant","disabled","prefix","suffix","color","size","flexibleWidth","children","inputClassName","sizeVariant","small","medium","large","custom","inputConfig","container","input","icon","Input","t0","$","_c","className","readOnly","ref","rest","t1","t2","t3","t4","t5","type","undefined","t6","t7","t8","t9","t10","t11","t12","t13","e","target","HTMLInputElement","select","t14","t15","t16","t17"],"sources":["../src/components/input/Input.tsx"],"sourcesContent":["import { ComponentPropsWithRef, ReactNode } from \"react\";\nimport clsx from \"clsx\";\nimport type { ThemeColor } from \"../../types\";\n\nexport interface InputProps extends Omit<ComponentPropsWithRef<\"input\">, \"prefix\" | \"size\"> {\n variant?: \"normal\" | \"ghost\";\n disabled?: boolean;\n prefix?: ReactNode;\n suffix?: ReactNode;\n color?: ThemeColor;\n size?: \"small\" | \"medium\" | \"large\" | \"custom\";\n flexibleWidth?: boolean;\n children?: ReactNode;\n inputClassName?: string;\n}\n\nexport const sizeVariant = {\n small: \"[--h-input:24px] h-(--h-input)\",\n medium: \"[--h-input:32px] h-(--h-input)\",\n large: \"[--h-input:48px] h-(--h-input)\",\n custom: \"\",\n};\n\nexport const inputConfig = {\n container: \"p8n-input-text rounded-full flex box-border\",\n input: \"h-full flex-1 appearance-none outline-hidden filter-none min-w-0 bg-transparent\",\n icon: \"[--h-icon:calc(var(--h-input)-2px)] h-(--h-icon) w-(--h-icon) inline-flex-center\",\n};\n\nexport function Input({\n variant = \"normal\",\n color = \"yellow\",\n disabled = false,\n prefix,\n suffix,\n className,\n inputClassName,\n readOnly,\n size = \"medium\",\n flexibleWidth = true,\n type,\n children,\n ref,\n ...rest\n}: InputProps) {\n return (\n <div\n aria-disabled={disabled}\n aria-readonly={readOnly}\n data-color={color}\n data-variant={variant}\n className={clsx(inputConfig.container, sizeVariant[size], className)}\n >\n {prefix && (\n <div\n className={clsx([\n \"flex-center relative\",\n typeof prefix === \"string\" && \"text-gray-6 mx-2 select-none\",\n ])}\n >\n {prefix}\n </div>\n )}\n <input\n type={type}\n ref={ref}\n className={clsx(\n inputConfig.input,\n size !== \"custom\" && !prefix && \"pl-4\",\n size !== \"custom\" && type !== \"date\" && type !== \"datetime-local\"\n ? !suffix && \"pr-4\"\n : \"pr-1\",\n flexibleWidth && \"w-0\",\n inputClassName,\n )}\n readOnly={readOnly}\n onClick={(e) => {\n if (readOnly) {\n (e.target as HTMLInputElement)?.select();\n }\n }}\n {...(disabled ? { disabled } : {})}\n {...rest}\n />\n {suffix && (\n <div\n className={clsx([\n \"flex-center relative\",\n typeof suffix === \"string\" && \"text-gray-6 mx-2 select-none\",\n ])}\n >\n {suffix}\n </div>\n )}\n {children}\n </div>\n );\n}\n"],"mappings":"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"}