@gunkin/uiify 0.0.20-alpha → 0.0.22-alpha

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 (237) hide show
  1. package/agents/components.md +13 -0
  2. package/agents/index.md +31 -1
  3. package/agents/reference/components/alert.md +44 -0
  4. package/agents/reference/components/aspect-ratio.md +26 -0
  5. package/agents/reference/components/avatar.md +32 -0
  6. package/agents/reference/components/badge.md +31 -0
  7. package/agents/reference/components/card.md +24 -0
  8. package/agents/reference/components/checkbox.md +2 -0
  9. package/agents/reference/components/date-picker.md +23 -0
  10. package/agents/reference/components/description-list.md +38 -0
  11. package/agents/reference/components/empty.md +45 -0
  12. package/agents/reference/components/fieldset.md +31 -0
  13. package/agents/reference/components/form-error-summary.md +33 -0
  14. package/agents/reference/components/input-group.md +33 -0
  15. package/agents/reference/components/item.md +52 -0
  16. package/agents/reference/components/progress.md +16 -0
  17. package/dist/components/alert/Alert.d.ts +15 -0
  18. package/dist/components/alert/Alert.d.ts.map +1 -0
  19. package/dist/components/alert/Alert.js +61 -0
  20. package/dist/components/alert/Alert.js.map +1 -0
  21. package/dist/components/alert/index.d.ts +3 -0
  22. package/dist/components/alert/index.d.ts.map +1 -0
  23. package/dist/components/alert/index.js +7 -0
  24. package/dist/components/alert/index.js.map +1 -0
  25. package/dist/components/alert/types.d.ts +20 -0
  26. package/dist/components/alert/types.d.ts.map +1 -0
  27. package/dist/components/alert/types.js +1 -0
  28. package/dist/components/alert/types.js.map +1 -0
  29. package/dist/components/alert.d.ts +1 -0
  30. package/dist/components/alert.js +1 -0
  31. package/dist/components/aspect-ratio/AspectRatio.d.ts +7 -0
  32. package/dist/components/aspect-ratio/AspectRatio.d.ts.map +1 -0
  33. package/dist/components/aspect-ratio/AspectRatio.js +26 -0
  34. package/dist/components/aspect-ratio/AspectRatio.js.map +1 -0
  35. package/dist/components/aspect-ratio/index.d.ts +3 -0
  36. package/dist/components/aspect-ratio/index.d.ts.map +1 -0
  37. package/dist/components/aspect-ratio/index.js +5 -0
  38. package/dist/components/aspect-ratio/index.js.map +1 -0
  39. package/dist/components/aspect-ratio/types.d.ts +9 -0
  40. package/dist/components/aspect-ratio/types.d.ts.map +1 -0
  41. package/dist/components/aspect-ratio/types.js +1 -0
  42. package/dist/components/aspect-ratio/types.js.map +1 -0
  43. package/dist/components/aspect-ratio.d.ts +1 -0
  44. package/dist/components/aspect-ratio.js +1 -0
  45. package/dist/components/avatar/Avatar.d.ts +7 -0
  46. package/dist/components/avatar/Avatar.d.ts.map +1 -0
  47. package/dist/components/avatar/Avatar.js +24 -0
  48. package/dist/components/avatar/Avatar.js.map +1 -0
  49. package/dist/components/avatar/index.d.ts +3 -0
  50. package/dist/components/avatar/index.d.ts.map +1 -0
  51. package/dist/components/avatar/index.js +5 -0
  52. package/dist/components/avatar/index.js.map +1 -0
  53. package/dist/components/avatar/types.d.ts +12 -0
  54. package/dist/components/avatar/types.d.ts.map +1 -0
  55. package/dist/components/avatar/types.js +1 -0
  56. package/dist/components/avatar/types.js.map +1 -0
  57. package/dist/components/avatar.d.ts +1 -0
  58. package/dist/components/avatar.js +1 -0
  59. package/dist/components/badge/Badge.d.ts +7 -0
  60. package/dist/components/badge/Badge.d.ts.map +1 -0
  61. package/dist/components/badge/Badge.js +21 -0
  62. package/dist/components/badge/Badge.js.map +1 -0
  63. package/dist/components/badge/index.d.ts +3 -0
  64. package/dist/components/badge/index.d.ts.map +1 -0
  65. package/dist/components/badge/index.js +5 -0
  66. package/dist/components/badge/index.js.map +1 -0
  67. package/dist/components/badge/types.d.ts +11 -0
  68. package/dist/components/badge/types.d.ts.map +1 -0
  69. package/dist/components/badge/types.js +1 -0
  70. package/dist/components/badge/types.js.map +1 -0
  71. package/dist/components/badge.d.ts +1 -0
  72. package/dist/components/badge.js +1 -0
  73. package/dist/components/behavior.css +12 -0
  74. package/dist/components/behavior.css.map +1 -1
  75. package/dist/components/card/Card.d.ts +7 -0
  76. package/dist/components/card/Card.d.ts.map +1 -0
  77. package/dist/components/card/Card.js +16 -0
  78. package/dist/components/card/Card.js.map +1 -0
  79. package/dist/components/card/index.d.ts +3 -0
  80. package/dist/components/card/index.d.ts.map +1 -0
  81. package/dist/components/card/index.js +5 -0
  82. package/dist/components/card/index.js.map +1 -0
  83. package/dist/components/card/types.d.ts +7 -0
  84. package/dist/components/card/types.d.ts.map +1 -0
  85. package/dist/components/card/types.js +1 -0
  86. package/dist/components/card/types.js.map +1 -0
  87. package/dist/components/card.d.ts +1 -0
  88. package/dist/components/card.js +1 -0
  89. package/dist/components/checkbox/types.d.ts +2 -0
  90. package/dist/components/checkbox/types.d.ts.map +1 -1
  91. package/dist/components/date-picker/DatePicker.d.ts +7 -0
  92. package/dist/components/date-picker/DatePicker.d.ts.map +1 -0
  93. package/dist/components/date-picker/DatePicker.js +19 -0
  94. package/dist/components/date-picker/DatePicker.js.map +1 -0
  95. package/dist/components/date-picker/index.d.ts +3 -0
  96. package/dist/components/date-picker/index.d.ts.map +1 -0
  97. package/dist/components/date-picker/index.js +5 -0
  98. package/dist/components/date-picker/index.js.map +1 -0
  99. package/dist/components/date-picker/types.d.ts +5 -0
  100. package/dist/components/date-picker/types.d.ts.map +1 -0
  101. package/dist/components/date-picker/types.js +1 -0
  102. package/dist/components/date-picker/types.js.map +1 -0
  103. package/dist/components/date-picker.d.ts +1 -0
  104. package/dist/components/date-picker.js +1 -0
  105. package/dist/components/description-list/DescriptionList.d.ts +15 -0
  106. package/dist/components/description-list/DescriptionList.d.ts.map +1 -0
  107. package/dist/components/description-list/DescriptionList.js +48 -0
  108. package/dist/components/description-list/DescriptionList.js.map +1 -0
  109. package/dist/components/description-list/index.d.ts +3 -0
  110. package/dist/components/description-list/index.d.ts.map +1 -0
  111. package/dist/components/description-list/index.js +7 -0
  112. package/dist/components/description-list/index.js.map +1 -0
  113. package/dist/components/description-list/types.d.ts +15 -0
  114. package/dist/components/description-list/types.d.ts.map +1 -0
  115. package/dist/components/description-list/types.js +1 -0
  116. package/dist/components/description-list/types.js.map +1 -0
  117. package/dist/components/description-list.d.ts +1 -0
  118. package/dist/components/description-list.js +1 -0
  119. package/dist/components/empty/Empty.d.ts +19 -0
  120. package/dist/components/empty/Empty.d.ts.map +1 -0
  121. package/dist/components/empty/Empty.js +56 -0
  122. package/dist/components/empty/Empty.js.map +1 -0
  123. package/dist/components/empty/index.d.ts +3 -0
  124. package/dist/components/empty/index.d.ts.map +1 -0
  125. package/dist/components/empty/index.js +8 -0
  126. package/dist/components/empty/index.js.map +1 -0
  127. package/dist/components/empty/types.d.ts +19 -0
  128. package/dist/components/empty/types.d.ts.map +1 -0
  129. package/dist/components/empty/types.js +1 -0
  130. package/dist/components/empty/types.js.map +1 -0
  131. package/dist/components/empty.d.ts +1 -0
  132. package/dist/components/empty.js +1 -0
  133. package/dist/components/fieldset/Fieldset.d.ts +11 -0
  134. package/dist/components/fieldset/Fieldset.d.ts.map +1 -0
  135. package/dist/components/fieldset/Fieldset.js +38 -0
  136. package/dist/components/fieldset/Fieldset.js.map +1 -0
  137. package/dist/components/fieldset/index.d.ts +3 -0
  138. package/dist/components/fieldset/index.d.ts.map +1 -0
  139. package/dist/components/fieldset/index.js +6 -0
  140. package/dist/components/fieldset/index.js.map +1 -0
  141. package/dist/components/fieldset/types.d.ts +11 -0
  142. package/dist/components/fieldset/types.d.ts.map +1 -0
  143. package/dist/components/fieldset/types.js +1 -0
  144. package/dist/components/fieldset/types.js.map +1 -0
  145. package/dist/components/fieldset.d.ts +1 -0
  146. package/dist/components/fieldset.js +1 -0
  147. package/dist/components/form-error-summary/FormErrorSummary.d.ts +7 -0
  148. package/dist/components/form-error-summary/FormErrorSummary.d.ts.map +1 -0
  149. package/dist/components/form-error-summary/FormErrorSummary.js +25 -0
  150. package/dist/components/form-error-summary/FormErrorSummary.js.map +1 -0
  151. package/dist/components/form-error-summary/index.d.ts +3 -0
  152. package/dist/components/form-error-summary/index.d.ts.map +1 -0
  153. package/dist/components/form-error-summary/index.js +5 -0
  154. package/dist/components/form-error-summary/index.js.map +1 -0
  155. package/dist/components/form-error-summary/types.d.ts +12 -0
  156. package/dist/components/form-error-summary/types.d.ts.map +1 -0
  157. package/dist/components/form-error-summary/types.js +1 -0
  158. package/dist/components/form-error-summary/types.js.map +1 -0
  159. package/dist/components/form-error-summary.d.ts +1 -0
  160. package/dist/components/form-error-summary.js +1 -0
  161. package/dist/components/index.d.ts +13 -0
  162. package/dist/components/index.d.ts.map +1 -1
  163. package/dist/components/index.js +13 -0
  164. package/dist/components/index.js.map +1 -1
  165. package/dist/components/input-group/InputGroup.d.ts +5 -0
  166. package/dist/components/input-group/InputGroup.d.ts.map +1 -0
  167. package/dist/components/input-group/InputGroup.js +37 -0
  168. package/dist/components/input-group/InputGroup.js.map +1 -0
  169. package/dist/components/input-group/index.d.ts +3 -0
  170. package/dist/components/input-group/index.d.ts.map +1 -0
  171. package/dist/components/input-group/index.js +6 -0
  172. package/dist/components/input-group/index.js.map +1 -0
  173. package/dist/components/input-group/types.d.ts +12 -0
  174. package/dist/components/input-group/types.d.ts.map +1 -0
  175. package/dist/components/input-group/types.js +1 -0
  176. package/dist/components/input-group/types.js.map +1 -0
  177. package/dist/components/input-group.d.ts +1 -0
  178. package/dist/components/input-group.js +1 -0
  179. package/dist/components/internal/native-check-control/NativeCheckControl.d.ts.map +1 -1
  180. package/dist/components/internal/native-check-control/NativeCheckControl.js +4 -0
  181. package/dist/components/internal/native-check-control/NativeCheckControl.js.map +1 -1
  182. package/dist/components/internal/native-check-control/types.d.ts +2 -0
  183. package/dist/components/internal/native-check-control/types.d.ts.map +1 -1
  184. package/dist/components/item/Item.d.ts +23 -0
  185. package/dist/components/item/Item.d.ts.map +1 -0
  186. package/dist/components/item/Item.js +64 -0
  187. package/dist/components/item/Item.js.map +1 -0
  188. package/dist/components/item/index.d.ts +3 -0
  189. package/dist/components/item/index.d.ts.map +1 -0
  190. package/dist/components/item/index.js +9 -0
  191. package/dist/components/item/index.js.map +1 -0
  192. package/dist/components/item/types.d.ts +23 -0
  193. package/dist/components/item/types.d.ts.map +1 -0
  194. package/dist/components/item/types.js +1 -0
  195. package/dist/components/item/types.js.map +1 -0
  196. package/dist/components/item.d.ts +1 -0
  197. package/dist/components/item.js +1 -0
  198. package/dist/components/progress/Progress.d.ts +7 -0
  199. package/dist/components/progress/Progress.d.ts.map +1 -0
  200. package/dist/components/progress/Progress.js +9 -0
  201. package/dist/components/progress/Progress.js.map +1 -0
  202. package/dist/components/progress/index.d.ts +3 -0
  203. package/dist/components/progress/index.d.ts.map +1 -0
  204. package/dist/components/progress/index.js +5 -0
  205. package/dist/components/progress/index.js.map +1 -0
  206. package/dist/components/progress/types.d.ts +3 -0
  207. package/dist/components/progress/types.d.ts.map +1 -0
  208. package/dist/components/progress/types.js +1 -0
  209. package/dist/components/progress/types.js.map +1 -0
  210. package/dist/components/progress.d.ts +1 -0
  211. package/dist/components/progress.js +1 -0
  212. package/dist/styles/index.css +1 -1
  213. package/package.json +1 -1
  214. package/skills/uiify/SKILL.md +42 -36
  215. package/skills/uiify/references/elements/alert-modal.md +5 -5
  216. package/skills/uiify/references/elements/aspect-ratio.md +59 -0
  217. package/skills/uiify/references/elements/avatar.md +10 -19
  218. package/skills/uiify/references/elements/badge.md +11 -19
  219. package/skills/uiify/references/elements/card.md +10 -21
  220. package/skills/uiify/references/elements/checkbox.md +1 -1
  221. package/skills/uiify/references/elements/date-picker.md +11 -15
  222. package/skills/uiify/references/elements/description-list.md +38 -0
  223. package/skills/uiify/references/elements/empty-state.md +12 -23
  224. package/skills/uiify/references/elements/field.md +2 -2
  225. package/skills/uiify/references/elements/fieldset.md +39 -0
  226. package/skills/uiify/references/elements/form-error-summary.md +39 -0
  227. package/skills/uiify/references/elements/inline-alert.md +11 -19
  228. package/skills/uiify/references/elements/input-group.md +39 -0
  229. package/skills/uiify/references/elements/item.md +39 -0
  230. package/skills/uiify/references/elements/modal.md +1 -1
  231. package/skills/uiify/references/elements/progress-bar.md +11 -20
  232. package/skills/uiify/references/elements/select.md +1 -1
  233. package/skills/uiify/references/examples/alert-confirmation.md +21 -9
  234. package/skills/uiify/references/examples/field-validation.md +2 -2
  235. package/skills/uiify/references/examples/select-basic.md +1 -1
  236. package/skills/uiify/references/examples/table-controls.md +3 -2
  237. package/skills/uiify/references/guides/verification.md +9 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/alert/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACpD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAEjE,MAAM,MAAM,YAAY,GAAG,WAAW,GAAG,SAAS,GAAG,SAAS,GAAG,aAAa,CAAC;AAE/E,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC;IAC9B,uEAAuE;IACvE,QAAQ,CAAC,OAAO,CAAC,EAAE,YAAY,CAAC;IAChC,kEAAkE;IAClE,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;CAClC;AAED,MAAM,MAAM,UAAU,CAAC,GAAG,SAAS,WAAW,GAAG,KAAK,IAAI,eAAe,CACvE,GAAG,EACH,aAAa,EACb,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EACrB,WAAW,CACZ,CAAC;AAEF,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC;CAC/B;AAED,MAAM,MAAM,eAAe,CAAC,GAAG,SAAS,WAAW,GAAG,KAAK,IAAI,eAAe,CAC5E,GAAG,EACH,kBAAkB,EAClB,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EACrB,WAAW,CACZ,CAAC;AAEF,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC;CAC/B;AAED,MAAM,MAAM,qBAAqB,CAAC,GAAG,SAAS,WAAW,GAAG,KAAK,IAAI,eAAe,CAClF,GAAG,EACH,wBAAwB,EACxB,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EACrB,WAAW,CACZ,CAAC"}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1 @@
1
+ export * from "./alert/index.js";
@@ -0,0 +1 @@
1
+ export * from "./alert/index.js";
@@ -0,0 +1,7 @@
1
+ import type { ElementType, ReactElement } from "react";
2
+ import type { AspectRatioProps } from "./types.js";
3
+ export declare function AspectRatio<TAs extends ElementType = "div">(props: AspectRatioProps<TAs>): ReactElement | null;
4
+ export declare namespace AspectRatio {
5
+ var displayName: string;
6
+ }
7
+ //# sourceMappingURL=AspectRatio.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AspectRatio.d.ts","sourceRoot":"","sources":["../../../src/components/aspect-ratio/AspectRatio.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAiB,WAAW,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAEtE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD,wBAAgB,WAAW,CAAC,GAAG,SAAS,WAAW,GAAG,KAAK,EACzD,KAAK,EAAE,gBAAgB,CAAC,GAAG,CAAC,GAC3B,YAAY,GAAG,IAAI,CAqBrB;yBAvBe,WAAW"}
@@ -0,0 +1,26 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { useRenderElement } from "@gunkin/uiify/core/render";
3
+ function AspectRatio(props) {
4
+ const { as, render, ratio, children, ...consumerProps } = props;
5
+ const style = consumerProps.style;
6
+ return useRenderElement({
7
+ as,
8
+ defaultTag: "div",
9
+ props: {
10
+ ...consumerProps,
11
+ "data-uiify-aspect-ratio": "",
12
+ style: {
13
+ ...style,
14
+ ...ratio !== void 0 ? { "--uiify-aspect-ratio": Number.isFinite(ratio) && ratio > 0 ? ratio : 1 } : {}
15
+ },
16
+ children: /* @__PURE__ */ jsx("div", { "data-part": "content", children })
17
+ },
18
+ render,
19
+ state: {}
20
+ });
21
+ }
22
+ AspectRatio.displayName = "AspectRatio";
23
+ export {
24
+ AspectRatio
25
+ };
26
+ //# sourceMappingURL=AspectRatio.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/aspect-ratio/AspectRatio.tsx"],"sourcesContent":["// API research: Radix UI Aspect Ratio; independently authored from UIify design notes.\nimport type { CSSProperties, ElementType, ReactElement } from \"react\";\nimport { useRenderElement } from \"@gunkin/uiify/core/render\";\nimport type { AspectRatioProps } from \"./types.js\";\n\nexport function AspectRatio<TAs extends ElementType = \"div\">(\n props: AspectRatioProps<TAs>,\n): ReactElement | null {\n const { as, render, ratio, children, ...consumerProps } = props as AspectRatioProps<\"div\">;\n const style = (consumerProps as { style?: CSSProperties }).style;\n\n return useRenderElement({\n as,\n defaultTag: \"div\",\n props: {\n ...consumerProps,\n \"data-uiify-aspect-ratio\": \"\",\n style: {\n ...style,\n ...(ratio !== undefined\n ? { \"--uiify-aspect-ratio\": Number.isFinite(ratio) && ratio > 0 ? ratio : 1 }\n : {}),\n } as CSSProperties,\n children: <div data-part=\"content\">{children}</div>,\n },\n render,\n state: {},\n });\n}\nAspectRatio.displayName = \"AspectRatio\";\n"],"mappings":"AAuBgB;AArBhB,SAAS,wBAAwB;AAG1B,SAAS,YACd,OACqB;AACrB,QAAM,EAAE,IAAI,QAAQ,OAAO,UAAU,GAAG,cAAc,IAAI;AAC1D,QAAM,QAAS,cAA4C;AAE3D,SAAO,iBAAiB;AAAA,IACtB;AAAA,IACA,YAAY;AAAA,IACZ,OAAO;AAAA,MACL,GAAG;AAAA,MACH,2BAA2B;AAAA,MAC3B,OAAO;AAAA,QACL,GAAG;AAAA,QACH,GAAI,UAAU,SACV,EAAE,wBAAwB,OAAO,SAAS,KAAK,KAAK,QAAQ,IAAI,QAAQ,EAAE,IAC1E,CAAC;AAAA,MACP;AAAA,MACA,UAAU,oBAAC,SAAI,aAAU,WAAW,UAAS;AAAA,IAC/C;AAAA,IACA;AAAA,IACA,OAAO,CAAC;AAAA,EACV,CAAC;AACH;AACA,YAAY,cAAc;","names":[]}
@@ -0,0 +1,3 @@
1
+ export { AspectRatio } from "./AspectRatio.js";
2
+ export type { AspectRatioOwnProps, AspectRatioProps } from "./types.js";
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/aspect-ratio/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,YAAY,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { AspectRatio } from "./AspectRatio.js";
2
+ export {
3
+ AspectRatio
4
+ };
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/aspect-ratio/index.ts"],"sourcesContent":["export { AspectRatio } from \"./AspectRatio.js\";\nexport type { AspectRatioOwnProps, AspectRatioProps } from \"./types.js\";\n"],"mappings":"AAAA,SAAS,mBAAmB;","names":[]}
@@ -0,0 +1,9 @@
1
+ import type { ElementType, ReactNode } from "react";
2
+ import type { RenderableProps } from "@gunkin/uiify/core/render";
3
+ export interface AspectRatioOwnProps {
4
+ /** Positive finite width / height ratio. Omit to use the CSS default (square). */
5
+ readonly ratio?: number;
6
+ readonly children?: ReactNode;
7
+ }
8
+ export type AspectRatioProps<TAs extends ElementType = "div"> = RenderableProps<TAs, AspectRatioOwnProps, Record<string, never>, HTMLElement>;
9
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/aspect-ratio/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACpD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAEjE,MAAM,WAAW,mBAAmB;IAClC,kFAAkF;IAClF,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC;CAC/B;AAED,MAAM,MAAM,gBAAgB,CAAC,GAAG,SAAS,WAAW,GAAG,KAAK,IAAI,eAAe,CAC7E,GAAG,EACH,mBAAmB,EACnB,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EACrB,WAAW,CACZ,CAAC"}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1 @@
1
+ export * from "./aspect-ratio/index.js";
@@ -0,0 +1 @@
1
+ export * from "./aspect-ratio/index.js";
@@ -0,0 +1,7 @@
1
+ import type { ElementType, ReactElement } from "react";
2
+ import type { AvatarProps } from "./types.js";
3
+ export declare function Avatar<TAs extends ElementType = "span">(props: AvatarProps<TAs>): ReactElement | null;
4
+ export declare namespace Avatar {
5
+ var displayName: string;
6
+ }
7
+ //# sourceMappingURL=Avatar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Avatar.d.ts","sourceRoot":"","sources":["../../../src/components/avatar/Avatar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAEvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,wBAAgB,MAAM,CAAC,GAAG,SAAS,WAAW,GAAG,MAAM,EACrD,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC,GACtB,YAAY,GAAG,IAAI,CAwBrB;yBA1Be,MAAM"}
@@ -0,0 +1,24 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { useRenderElement } from "@gunkin/uiify/core/render";
3
+ function Avatar(props) {
4
+ const { as, render, name, fallback, src, size, ...consumerProps } = props;
5
+ return useRenderElement({
6
+ as,
7
+ defaultTag: "span",
8
+ props: {
9
+ ...consumerProps,
10
+ role: consumerProps.role ?? "img",
11
+ "aria-label": consumerProps["aria-label"] ?? name,
12
+ "data-uiify-avatar": "",
13
+ ...size !== void 0 ? { "data-size": size } : {},
14
+ children: src !== void 0 ? /* @__PURE__ */ jsx("img", { "data-part": "image", src, alt: "" }) : /* @__PURE__ */ jsx("span", { "data-part": "fallback", "aria-hidden": "true", children: fallback })
15
+ },
16
+ render,
17
+ state: {}
18
+ });
19
+ }
20
+ Avatar.displayName = "Avatar";
21
+ export {
22
+ Avatar
23
+ };
24
+ //# sourceMappingURL=Avatar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/avatar/Avatar.tsx"],"sourcesContent":["import type { ElementType, ReactElement } from \"react\";\nimport { useRenderElement } from \"@gunkin/uiify/core/render\";\nimport type { AvatarProps } from \"./types.js\";\n\nexport function Avatar<TAs extends ElementType = \"span\">(\n props: AvatarProps<TAs>,\n): ReactElement | null {\n const { as, render, name, fallback, src, size, ...consumerProps } = props as AvatarProps<\"span\">;\n\n return useRenderElement({\n as,\n defaultTag: \"span\",\n props: {\n ...consumerProps,\n role: (consumerProps as { role?: string }).role ?? \"img\",\n \"aria-label\": (consumerProps as { \"aria-label\"?: string })[\"aria-label\"] ?? name,\n \"data-uiify-avatar\": \"\",\n ...(size !== undefined ? { \"data-size\": size } : {}),\n children:\n src !== undefined ? (\n <img data-part=\"image\" src={src} alt=\"\" />\n ) : (\n <span data-part=\"fallback\" aria-hidden=\"true\">\n {fallback}\n </span>\n ),\n },\n render,\n state: {},\n });\n}\n\nAvatar.displayName = \"Avatar\";\n"],"mappings":"AAoBU;AAnBV,SAAS,wBAAwB;AAG1B,SAAS,OACd,OACqB;AACrB,QAAM,EAAE,IAAI,QAAQ,MAAM,UAAU,KAAK,MAAM,GAAG,cAAc,IAAI;AAEpE,SAAO,iBAAiB;AAAA,IACtB;AAAA,IACA,YAAY;AAAA,IACZ,OAAO;AAAA,MACL,GAAG;AAAA,MACH,MAAO,cAAoC,QAAQ;AAAA,MACnD,cAAe,cAA4C,YAAY,KAAK;AAAA,MAC5E,qBAAqB;AAAA,MACrB,GAAI,SAAS,SAAY,EAAE,aAAa,KAAK,IAAI,CAAC;AAAA,MAClD,UACE,QAAQ,SACN,oBAAC,SAAI,aAAU,SAAQ,KAAU,KAAI,IAAG,IAExC,oBAAC,UAAK,aAAU,YAAW,eAAY,QACpC,oBACH;AAAA,IAEN;AAAA,IACA;AAAA,IACA,OAAO,CAAC;AAAA,EACV,CAAC;AACH;AAEA,OAAO,cAAc;","names":[]}
@@ -0,0 +1,3 @@
1
+ export { Avatar } from "./Avatar.js";
2
+ export type { AvatarOwnProps, AvatarProps, AvatarSize } from "./types.js";
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/avatar/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,YAAY,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { Avatar } from "./Avatar.js";
2
+ export {
3
+ Avatar
4
+ };
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/avatar/index.ts"],"sourcesContent":["export { Avatar } from \"./Avatar.js\";\nexport type { AvatarOwnProps, AvatarProps, AvatarSize } from \"./types.js\";\n"],"mappings":"AAAA,SAAS,cAAc;","names":[]}
@@ -0,0 +1,12 @@
1
+ import type { ElementType } from "react";
2
+ import type { RenderableProps } from "@gunkin/uiify/core/render";
3
+ export type AvatarSize = "sm" | "md" | "lg";
4
+ export interface AvatarOwnProps {
5
+ readonly name: string;
6
+ readonly fallback: string;
7
+ readonly src?: string;
8
+ readonly size?: AvatarSize;
9
+ readonly children?: never;
10
+ }
11
+ export type AvatarProps<TAs extends ElementType = "span"> = RenderableProps<TAs, AvatarOwnProps, Record<string, never>, HTMLElement>;
12
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/avatar/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACzC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAEjE,MAAM,MAAM,UAAU,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAE5C,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,CAAC;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC;CAC3B;AAED,MAAM,MAAM,WAAW,CAAC,GAAG,SAAS,WAAW,GAAG,MAAM,IAAI,eAAe,CACzE,GAAG,EACH,cAAc,EACd,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EACrB,WAAW,CACZ,CAAC"}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1 @@
1
+ export * from "./avatar/index.js";
@@ -0,0 +1 @@
1
+ export * from "./avatar/index.js";
@@ -0,0 +1,7 @@
1
+ import type { ElementType, ReactElement } from "react";
2
+ import type { BadgeProps } from "./types.js";
3
+ export declare function Badge<TAs extends ElementType = "span">(props: BadgeProps<TAs>): ReactElement | null;
4
+ export declare namespace Badge {
5
+ var displayName: string;
6
+ }
7
+ //# sourceMappingURL=Badge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Badge.d.ts","sourceRoot":"","sources":["../../../src/components/badge/Badge.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAEvD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,wBAAgB,KAAK,CAAC,GAAG,SAAS,WAAW,GAAG,MAAM,EACpD,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,GACrB,YAAY,GAAG,IAAI,CAcrB;yBAhBe,KAAK"}
@@ -0,0 +1,21 @@
1
+ import { useRenderElement } from "@gunkin/uiify/core/render";
2
+ function Badge(props) {
3
+ const { as, render, size, variant, ...consumerProps } = props;
4
+ return useRenderElement({
5
+ as,
6
+ defaultTag: "span",
7
+ props: {
8
+ ...consumerProps,
9
+ "data-uiify-badge": "",
10
+ ...size !== void 0 ? { "data-size": size } : {},
11
+ ...variant !== void 0 ? { "data-variant": variant } : {}
12
+ },
13
+ render,
14
+ state: {}
15
+ });
16
+ }
17
+ Badge.displayName = "Badge";
18
+ export {
19
+ Badge
20
+ };
21
+ //# sourceMappingURL=Badge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/badge/Badge.tsx"],"sourcesContent":["import type { ElementType, ReactElement } from \"react\";\nimport { useRenderElement } from \"@gunkin/uiify/core/render\";\nimport type { BadgeProps } from \"./types.js\";\n\nexport function Badge<TAs extends ElementType = \"span\">(\n props: BadgeProps<TAs>,\n): ReactElement | null {\n const { as, render, size, variant, ...consumerProps } = props as BadgeProps<\"span\">;\n return useRenderElement({\n as,\n defaultTag: \"span\",\n props: {\n ...consumerProps,\n \"data-uiify-badge\": \"\",\n ...(size !== undefined ? { \"data-size\": size } : {}),\n ...(variant !== undefined ? { \"data-variant\": variant } : {}),\n },\n render,\n state: {},\n });\n}\n\nBadge.displayName = \"Badge\";\n"],"mappings":"AACA,SAAS,wBAAwB;AAG1B,SAAS,MACd,OACqB;AACrB,QAAM,EAAE,IAAI,QAAQ,MAAM,SAAS,GAAG,cAAc,IAAI;AACxD,SAAO,iBAAiB;AAAA,IACtB;AAAA,IACA,YAAY;AAAA,IACZ,OAAO;AAAA,MACL,GAAG;AAAA,MACH,oBAAoB;AAAA,MACpB,GAAI,SAAS,SAAY,EAAE,aAAa,KAAK,IAAI,CAAC;AAAA,MAClD,GAAI,YAAY,SAAY,EAAE,gBAAgB,QAAQ,IAAI,CAAC;AAAA,IAC7D;AAAA,IACA;AAAA,IACA,OAAO,CAAC;AAAA,EACV,CAAC;AACH;AAEA,MAAM,cAAc;","names":[]}
@@ -0,0 +1,3 @@
1
+ export { Badge } from "./Badge.js";
2
+ export type { BadgeOwnProps, BadgeProps, BadgeSize, BadgeVariant } from "./types.js";
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/badge/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { Badge } from "./Badge.js";
2
+ export {
3
+ Badge
4
+ };
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/badge/index.ts"],"sourcesContent":["export { Badge } from \"./Badge.js\";\nexport type { BadgeOwnProps, BadgeProps, BadgeSize, BadgeVariant } from \"./types.js\";\n"],"mappings":"AAAA,SAAS,aAAa;","names":[]}
@@ -0,0 +1,11 @@
1
+ import type { ElementType, ReactNode } from "react";
2
+ import type { RenderableProps } from "@gunkin/uiify/core/render";
3
+ export type BadgeVariant = "secondary" | "success" | "warning" | "destructive";
4
+ export type BadgeSize = "sm" | "md" | "lg";
5
+ export interface BadgeOwnProps {
6
+ readonly children?: ReactNode;
7
+ readonly size?: BadgeSize;
8
+ readonly variant?: BadgeVariant;
9
+ }
10
+ export type BadgeProps<TAs extends ElementType = "span"> = RenderableProps<TAs, BadgeOwnProps, Record<string, never>, HTMLElement>;
11
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/badge/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACpD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAEjE,MAAM,MAAM,YAAY,GAAG,WAAW,GAAG,SAAS,GAAG,SAAS,GAAG,aAAa,CAAC;AAC/E,MAAM,MAAM,SAAS,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAE3C,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC;IAC9B,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC;IAC1B,QAAQ,CAAC,OAAO,CAAC,EAAE,YAAY,CAAC;CACjC;AAED,MAAM,MAAM,UAAU,CAAC,GAAG,SAAS,WAAW,GAAG,MAAM,IAAI,eAAe,CACxE,GAAG,EACH,aAAa,EACb,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EACrB,WAAW,CACZ,CAAC"}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1 @@
1
+ export * from "./badge/index.js";
@@ -0,0 +1 @@
1
+ export * from "./badge/index.js";
@@ -1,5 +1,17 @@
1
1
  @layer ui.reset, ui.behavior, ui.tokens, ui.theme, app;
2
2
  @layer ui.behavior {
3
+ [data-uiify-aspect-ratio] {
4
+ display: block;
5
+ position: relative;
6
+ min-inline-size: 0;
7
+ aspect-ratio: var(--uiify-aspect-ratio, 1);
8
+ }
9
+ [data-uiify-aspect-ratio] > [data-part=content] {
10
+ position: absolute;
11
+ inset-block: 0;
12
+ inset-inline: 0;
13
+ min-inline-size: 0;
14
+ }
3
15
  [data-uiify-file-upload] > [data-part=input] {
4
16
  position: absolute;
5
17
  inline-size: 1px;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/components/behavior.css"],"sourcesContent":["/* Behavioral rules for @gunkin/uiify/components — zero visual opinion.\n * Import is required: @import \"@gunkin/uiify/components/behavior.css\";\n * Cascade order: consumer app layer wins without specificity fights. */\n@layer ui.reset, ui.behavior, ui.tokens, ui.theme, app;\n\n@layer ui.behavior {\n [data-uiify-file-upload] > [data-part=\"input\"] {\n position: absolute;\n inline-size: 1px;\n block-size: 1px;\n clip-path: inset(50%);\n overflow: hidden;\n white-space: nowrap;\n }\n [data-uiify-header][data-placement=\"sticky\"] {\n position: sticky;\n inset-block-start: 0;\n }\n\n [data-uiify-header][data-placement=\"sticky\"][data-state=\"hidden\"]:not(\n :focus-within,\n :has(dialog[open], details[open], :popover-open)\n ) {\n translate: 0 -100%;\n }\n\n @media (prefers-reduced-motion: no-preference) {\n [data-uiify-header][data-placement=\"sticky\"][data-state] {\n transition: translate 200ms ease-out;\n }\n }\n\n [popover]:not(:popover-open) {\n display: none;\n }\n\n /* Native modal dialogs: wheel/touch scrolling inside the dialog must not chain to the page behind it. */\n dialog:modal {\n overscroll-behavior: contain;\n }\n\n /* Open modal dialogs lock the page scroll, iOS Safari included (checked on iOS 27: a swipe on\n the backdrop or the dialog leaves scrollY unchanged). The stable gutter keeps a classic\n scrollbar's width, so the page does not shift when the dialog opens. */\n :root:has(dialog:modal) {\n overflow: hidden;\n scrollbar-gutter: stable;\n }\n\n /* Closed dialogs stay hidden even when author CSS sets display. */\n dialog:not([open]) {\n display: none;\n }\n\n [data-anchor]:not([data-positioning]) {\n anchor-name: var(--uiify-anchor, attr(data-anchor type(<custom-ident>)));\n }\n\n [data-positioning=\"native\"] {\n position: fixed;\n inset: auto;\n margin: 0;\n position-try-fallbacks: flip-block, flip-inline;\n }\n\n [data-positioning=\"native\"][data-anchor] {\n position-anchor: var(--uiify-anchor, attr(data-anchor type(<custom-ident>)));\n }\n\n [data-positioning=\"native\"][data-side=\"top\"] {\n position-area: top;\n margin-block-end: var(--uiify-anchor-offset, 0);\n }\n\n [data-positioning=\"native\"][data-side=\"right\"] {\n position-area: right;\n\n /* Physical on purpose: the offset must match the physical data-side, not the writing direction. */\n /* stylelint-disable-next-line logical-css/require-logical-properties -- `side=\"right\"` stays physical. */\n margin-left: var(--uiify-anchor-offset, 0);\n }\n\n [data-positioning=\"native\"][data-side=\"bottom\"] {\n position-area: bottom;\n margin-block-start: var(--uiify-anchor-offset, 0);\n }\n\n [data-positioning=\"native\"][data-side=\"left\"] {\n position-area: left;\n\n /* Physical on purpose: the offset must match the physical data-side, not the writing direction. */\n /* stylelint-disable-next-line logical-css/require-logical-properties -- `side=\"left\"` stays physical. */\n margin-right: var(--uiify-anchor-offset, 0);\n }\n\n [data-positioning=\"native\"][data-side=\"top\"][data-align=\"start\"] {\n position-area: block-start span-inline-end;\n justify-self: start;\n }\n\n [data-positioning=\"native\"][data-side=\"top\"][data-align=\"end\"] {\n position-area: block-start span-inline-start;\n justify-self: end;\n }\n\n [data-positioning=\"native\"][data-side=\"bottom\"][data-align=\"start\"] {\n position-area: block-end span-inline-end;\n justify-self: start;\n }\n\n [data-positioning=\"native\"][data-side=\"bottom\"][data-align=\"end\"] {\n position-area: block-end span-inline-start;\n justify-self: end;\n }\n\n [data-positioning=\"native\"][data-side=\"right\"][data-align=\"start\"] {\n align-self: start;\n position-area: right span-bottom;\n }\n\n [data-positioning=\"native\"][data-side=\"right\"][data-align=\"end\"] {\n align-self: end;\n position-area: right span-top;\n }\n\n [data-positioning=\"native\"][data-side=\"left\"][data-align=\"start\"] {\n align-self: start;\n position-area: left span-bottom;\n }\n\n [data-positioning=\"native\"][data-side=\"left\"][data-align=\"end\"] {\n align-self: end;\n position-area: left span-top;\n }\n\n /*\n * Local open-state hooks. Top layer does not change DOM ancestry, so a scope\n * that directly contains its surface can read the native state. Consumers\n * style with the selector or with the variable; neither is a second source of truth.\n *\n * Compound roots and their public trigger parts share one component identity plus\n * `data-part`, so native state stays readable without a second scope convention.\n */\n [data-uiify-modal][data-part=\"root\"]:has(> [data-uiify-modal][data-part=\"content\"][open])\n > [data-uiify-modal][data-part=\"trigger\"],\n [data-uiify-alert-modal][data-part=\"root\"]:has(\n > [data-uiify-alert-modal][data-part=\"content\"][open]\n )\n > [data-uiify-alert-modal][data-part=\"trigger\"],\n [data-uiify-popup][data-part=\"root\"]:has(> [data-uiify-popup][data-part=\"content\"]:popover-open)\n > [data-uiify-popup][data-part=\"trigger\"] {\n --uiify-trigger-open: 1;\n }\n\n [data-uiify-accordion] > [data-part=\"item\"][data-disabled] > summary,\n [data-uiify-collapsible][data-disabled] > summary {\n cursor: not-allowed;\n pointer-events: none;\n }\n\n /* Customizable select: opts the control and its picker into the browser's\n base styles so the picker becomes a styleable, top-layer popover with\n implicit anchor positioning. Behavior only — no visual opinion. Engines\n without support ignore this and keep the classic OS picker, which stays\n fully functional. */\n [data-uiify-select],\n [data-uiify-select]::picker(select) {\n appearance: base-select;\n }\n\n [data-uiify-tabs] > [data-part=\"item\"] > [data-part=\"control\"] {\n position: absolute;\n inline-size: 1px;\n block-size: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n /* stylelint-disable-next-line property-no-deprecated -- kept for older browser support alongside clip-path */\n clip: rect(0, 0, 0, 0);\n clip-path: inset(50%);\n white-space: nowrap;\n border: 0;\n }\n\n [data-uiify-tabs] > [data-part=\"item\"] > [data-part=\"panel\"] {\n display: none;\n }\n\n [data-uiify-tabs] > [data-part=\"item\"] > [data-part=\"control\"]:checked ~ [data-part=\"panel\"] {\n display: block;\n }\n\n [data-uiify-tabs] [data-part=\"trigger\"][data-disabled] {\n cursor: not-allowed;\n pointer-events: none;\n }\n\n [data-uiify-spinner][data-state=\"delayed\"] {\n animation-name: uiify-spinner-show;\n animation-duration: 0s;\n animation-delay: attr(data-delay type(<time>), 0s);\n animation-fill-mode: forwards;\n visibility: hidden;\n }\n\n @keyframes uiify-spinner-show {\n to {\n visibility: visible;\n }\n }\n\n [data-uiify-breadcrumb] [data-part=\"ellipsis\"] > ol {\n list-style: none;\n margin: 0;\n padding: 0;\n }\n\n [data-uiify-carousel] > [data-part=\"viewport\"] {\n display: grid;\n min-inline-size: 0;\n min-block-size: 0;\n gap: var(--uiify-carousel-gap, 0);\n scroll-behavior: auto;\n }\n\n [data-uiify-carousel][data-axis=\"inline\"] > [data-part=\"viewport\"] {\n grid-auto-flow: column;\n grid-auto-columns: var(--uiify-carousel-slide-size, 100%);\n overflow-inline: auto;\n overflow-block: hidden;\n scroll-snap-type: inline mandatory;\n }\n\n [data-uiify-carousel][data-axis=\"block\"] > [data-part=\"viewport\"] {\n grid-auto-flow: row;\n grid-auto-rows: var(--uiify-carousel-slide-size, 100%);\n overflow-block: auto;\n overflow-inline: hidden;\n scroll-snap-type: block mandatory;\n }\n\n [data-uiify-carousel] > [data-part=\"viewport\"] > [data-part=\"slide\"] {\n min-inline-size: 0;\n min-block-size: 0;\n scroll-snap-align: start;\n scroll-snap-stop: always;\n }\n\n [data-uiify-carousel] > [data-part=\"viewport\"]:focus-visible,\n [data-uiify-carousel] > button[data-part=\"controls\"]:focus-visible,\n [data-uiify-carousel] > [data-part=\"dots\"] > a:focus-visible {\n outline: auto;\n }\n\n @media (prefers-reduced-motion: no-preference) {\n [data-uiify-carousel] > [data-part=\"viewport\"] {\n scroll-behavior: smooth;\n }\n }\n\n [data-uiify-carousel] > [data-part=\"viewport\"][data-dragging] {\n scroll-behavior: auto;\n scroll-snap-type: none;\n }\n\n [data-uiify-carousel][data-mode=\"fade\"][data-enhanced] > [data-part=\"viewport\"] {\n grid-auto-flow: row;\n grid-template-columns: 100%;\n grid-auto-columns: auto;\n overflow: hidden;\n scroll-snap-type: none;\n touch-action: pan-y pinch-zoom;\n }\n\n [data-uiify-carousel][data-mode=\"fade\"][data-enhanced]\n > [data-part=\"viewport\"]\n > [data-part=\"slide\"] {\n grid-area: 1 / 1;\n opacity: 0;\n pointer-events: none;\n }\n\n [data-uiify-carousel][data-mode=\"fade\"][data-enhanced]\n > [data-part=\"viewport\"]\n > [data-part=\"slide\"][data-state=\"active\"] {\n opacity: 1;\n pointer-events: auto;\n }\n\n @media (prefers-reduced-motion: no-preference) {\n [data-uiify-carousel][data-mode=\"fade\"][data-enhanced]\n > [data-part=\"viewport\"]\n > [data-part=\"slide\"] {\n transition: opacity var(--uiify-carousel-fade-duration, 300ms) ease;\n }\n }\n\n [data-uiify-virtual-scroll] {\n --uiify-virtual-scroll-row-height: 64px;\n\n overflow-block: auto;\n }\n\n [data-uiify-virtual-scroll] > [data-part=\"spacer\"] {\n position: relative;\n block-size: var(\n --uiify-virtual-scroll-total-size,\n calc(var(--uiify-virtual-scroll-count, 0) * var(--uiify-virtual-scroll-row-height))\n );\n }\n\n [data-uiify-virtual-scroll] [data-part=\"row\"] {\n --uiify-row-position: var(\n --uiify-row-offset,\n calc(\n (var(--uiify-range-start, 0) + var(--uiify-slot-index, 0)) *\n var(--uiify-virtual-scroll-row-height)\n )\n );\n\n position: absolute;\n inset-inline: 0;\n block-size: var(--uiify-row-height, var(--uiify-virtual-scroll-row-height));\n translate: 0 var(--uiify-row-position);\n }\n\n /* Horizontal: the row size runs along the inline axis. Rows sit at a logical\n inline offset so RTL needs no direction selector; child combinators keep a\n vertical list nested inside a horizontal row on the vertical rules. */\n [data-uiify-virtual-scroll][data-orientation=\"horizontal\"] {\n overflow: auto hidden;\n }\n\n [data-uiify-virtual-scroll][data-orientation=\"horizontal\"] > [data-part=\"spacer\"] {\n block-size: 100%;\n inline-size: var(\n --uiify-virtual-scroll-total-size,\n calc(var(--uiify-virtual-scroll-count, 0) * var(--uiify-virtual-scroll-row-height))\n );\n }\n\n [data-uiify-virtual-scroll][data-orientation=\"horizontal\"]\n > [data-part=\"spacer\"]\n > [data-part=\"row\"] {\n inset-block: 0;\n inset-inline: var(--uiify-row-position) auto;\n block-size: auto;\n inline-size: var(--uiify-row-height, var(--uiify-virtual-scroll-row-height));\n translate: none;\n }\n\n /*\n * Toast list changes commit as React view transitions typed \"uiify-toast\".\n * Only the toast cards are captured: the page root is not snapshotted and\n * stays clickable while they move.\n */\n :root:active-view-transition-type(uiify-toast) {\n view-transition-name: none;\n }\n\n :root:active-view-transition-type(uiify-toast)::view-transition {\n pointer-events: none;\n }\n\n @media (prefers-reduced-motion: reduce) {\n ::view-transition-group(.uiify-toast),\n ::view-transition-old(.uiify-toast),\n ::view-transition-new(.uiify-toast) {\n animation: none;\n }\n }\n}\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../src/components/behavior.css"],"sourcesContent":["/* Behavioral rules for @gunkin/uiify/components — zero visual opinion.\n * Import is required: @import \"@gunkin/uiify/components/behavior.css\";\n * Cascade order: consumer app layer wins without specificity fights. */\n@layer ui.reset, ui.behavior, ui.tokens, ui.theme, app;\n\n@layer ui.behavior {\n [data-uiify-aspect-ratio] {\n display: block;\n position: relative;\n min-inline-size: 0;\n aspect-ratio: var(--uiify-aspect-ratio, 1);\n }\n\n [data-uiify-aspect-ratio] > [data-part=\"content\"] {\n position: absolute;\n inset-block: 0;\n inset-inline: 0;\n min-inline-size: 0;\n }\n\n [data-uiify-file-upload] > [data-part=\"input\"] {\n position: absolute;\n inline-size: 1px;\n block-size: 1px;\n clip-path: inset(50%);\n overflow: hidden;\n white-space: nowrap;\n }\n [data-uiify-header][data-placement=\"sticky\"] {\n position: sticky;\n inset-block-start: 0;\n }\n\n [data-uiify-header][data-placement=\"sticky\"][data-state=\"hidden\"]:not(\n :focus-within,\n :has(dialog[open], details[open], :popover-open)\n ) {\n translate: 0 -100%;\n }\n\n @media (prefers-reduced-motion: no-preference) {\n [data-uiify-header][data-placement=\"sticky\"][data-state] {\n transition: translate 200ms ease-out;\n }\n }\n\n [popover]:not(:popover-open) {\n display: none;\n }\n\n /* Native modal dialogs: wheel/touch scrolling inside the dialog must not chain to the page behind it. */\n dialog:modal {\n overscroll-behavior: contain;\n }\n\n /* Open modal dialogs lock the page scroll, iOS Safari included (checked on iOS 27: a swipe on\n the backdrop or the dialog leaves scrollY unchanged). The stable gutter keeps a classic\n scrollbar's width, so the page does not shift when the dialog opens. */\n :root:has(dialog:modal) {\n overflow: hidden;\n scrollbar-gutter: stable;\n }\n\n /* Closed dialogs stay hidden even when author CSS sets display. */\n dialog:not([open]) {\n display: none;\n }\n\n [data-anchor]:not([data-positioning]) {\n anchor-name: var(--uiify-anchor, attr(data-anchor type(<custom-ident>)));\n }\n\n [data-positioning=\"native\"] {\n position: fixed;\n inset: auto;\n margin: 0;\n position-try-fallbacks: flip-block, flip-inline;\n }\n\n [data-positioning=\"native\"][data-anchor] {\n position-anchor: var(--uiify-anchor, attr(data-anchor type(<custom-ident>)));\n }\n\n [data-positioning=\"native\"][data-side=\"top\"] {\n position-area: top;\n margin-block-end: var(--uiify-anchor-offset, 0);\n }\n\n [data-positioning=\"native\"][data-side=\"right\"] {\n position-area: right;\n\n /* Physical on purpose: the offset must match the physical data-side, not the writing direction. */\n /* stylelint-disable-next-line logical-css/require-logical-properties -- `side=\"right\"` stays physical. */\n margin-left: var(--uiify-anchor-offset, 0);\n }\n\n [data-positioning=\"native\"][data-side=\"bottom\"] {\n position-area: bottom;\n margin-block-start: var(--uiify-anchor-offset, 0);\n }\n\n [data-positioning=\"native\"][data-side=\"left\"] {\n position-area: left;\n\n /* Physical on purpose: the offset must match the physical data-side, not the writing direction. */\n /* stylelint-disable-next-line logical-css/require-logical-properties -- `side=\"left\"` stays physical. */\n margin-right: var(--uiify-anchor-offset, 0);\n }\n\n [data-positioning=\"native\"][data-side=\"top\"][data-align=\"start\"] {\n position-area: block-start span-inline-end;\n justify-self: start;\n }\n\n [data-positioning=\"native\"][data-side=\"top\"][data-align=\"end\"] {\n position-area: block-start span-inline-start;\n justify-self: end;\n }\n\n [data-positioning=\"native\"][data-side=\"bottom\"][data-align=\"start\"] {\n position-area: block-end span-inline-end;\n justify-self: start;\n }\n\n [data-positioning=\"native\"][data-side=\"bottom\"][data-align=\"end\"] {\n position-area: block-end span-inline-start;\n justify-self: end;\n }\n\n [data-positioning=\"native\"][data-side=\"right\"][data-align=\"start\"] {\n align-self: start;\n position-area: right span-bottom;\n }\n\n [data-positioning=\"native\"][data-side=\"right\"][data-align=\"end\"] {\n align-self: end;\n position-area: right span-top;\n }\n\n [data-positioning=\"native\"][data-side=\"left\"][data-align=\"start\"] {\n align-self: start;\n position-area: left span-bottom;\n }\n\n [data-positioning=\"native\"][data-side=\"left\"][data-align=\"end\"] {\n align-self: end;\n position-area: left span-top;\n }\n\n /*\n * Local open-state hooks. Top layer does not change DOM ancestry, so a scope\n * that directly contains its surface can read the native state. Consumers\n * style with the selector or with the variable; neither is a second source of truth.\n *\n * Compound roots and their public trigger parts share one component identity plus\n * `data-part`, so native state stays readable without a second scope convention.\n */\n [data-uiify-modal][data-part=\"root\"]:has(> [data-uiify-modal][data-part=\"content\"][open])\n > [data-uiify-modal][data-part=\"trigger\"],\n [data-uiify-alert-modal][data-part=\"root\"]:has(\n > [data-uiify-alert-modal][data-part=\"content\"][open]\n )\n > [data-uiify-alert-modal][data-part=\"trigger\"],\n [data-uiify-popup][data-part=\"root\"]:has(> [data-uiify-popup][data-part=\"content\"]:popover-open)\n > [data-uiify-popup][data-part=\"trigger\"] {\n --uiify-trigger-open: 1;\n }\n\n [data-uiify-accordion] > [data-part=\"item\"][data-disabled] > summary,\n [data-uiify-collapsible][data-disabled] > summary {\n cursor: not-allowed;\n pointer-events: none;\n }\n\n /* Customizable select: opts the control and its picker into the browser's\n base styles so the picker becomes a styleable, top-layer popover with\n implicit anchor positioning. Behavior only — no visual opinion. Engines\n without support ignore this and keep the classic OS picker, which stays\n fully functional. */\n [data-uiify-select],\n [data-uiify-select]::picker(select) {\n appearance: base-select;\n }\n\n [data-uiify-tabs] > [data-part=\"item\"] > [data-part=\"control\"] {\n position: absolute;\n inline-size: 1px;\n block-size: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n /* stylelint-disable-next-line property-no-deprecated -- kept for older browser support alongside clip-path */\n clip: rect(0, 0, 0, 0);\n clip-path: inset(50%);\n white-space: nowrap;\n border: 0;\n }\n\n [data-uiify-tabs] > [data-part=\"item\"] > [data-part=\"panel\"] {\n display: none;\n }\n\n [data-uiify-tabs] > [data-part=\"item\"] > [data-part=\"control\"]:checked ~ [data-part=\"panel\"] {\n display: block;\n }\n\n [data-uiify-tabs] [data-part=\"trigger\"][data-disabled] {\n cursor: not-allowed;\n pointer-events: none;\n }\n\n [data-uiify-spinner][data-state=\"delayed\"] {\n animation-name: uiify-spinner-show;\n animation-duration: 0s;\n animation-delay: attr(data-delay type(<time>), 0s);\n animation-fill-mode: forwards;\n visibility: hidden;\n }\n\n @keyframes uiify-spinner-show {\n to {\n visibility: visible;\n }\n }\n\n [data-uiify-breadcrumb] [data-part=\"ellipsis\"] > ol {\n list-style: none;\n margin: 0;\n padding: 0;\n }\n\n [data-uiify-carousel] > [data-part=\"viewport\"] {\n display: grid;\n min-inline-size: 0;\n min-block-size: 0;\n gap: var(--uiify-carousel-gap, 0);\n scroll-behavior: auto;\n }\n\n [data-uiify-carousel][data-axis=\"inline\"] > [data-part=\"viewport\"] {\n grid-auto-flow: column;\n grid-auto-columns: var(--uiify-carousel-slide-size, 100%);\n overflow-inline: auto;\n overflow-block: hidden;\n scroll-snap-type: inline mandatory;\n }\n\n [data-uiify-carousel][data-axis=\"block\"] > [data-part=\"viewport\"] {\n grid-auto-flow: row;\n grid-auto-rows: var(--uiify-carousel-slide-size, 100%);\n overflow-block: auto;\n overflow-inline: hidden;\n scroll-snap-type: block mandatory;\n }\n\n [data-uiify-carousel] > [data-part=\"viewport\"] > [data-part=\"slide\"] {\n min-inline-size: 0;\n min-block-size: 0;\n scroll-snap-align: start;\n scroll-snap-stop: always;\n }\n\n [data-uiify-carousel] > [data-part=\"viewport\"]:focus-visible,\n [data-uiify-carousel] > button[data-part=\"controls\"]:focus-visible,\n [data-uiify-carousel] > [data-part=\"dots\"] > a:focus-visible {\n outline: auto;\n }\n\n @media (prefers-reduced-motion: no-preference) {\n [data-uiify-carousel] > [data-part=\"viewport\"] {\n scroll-behavior: smooth;\n }\n }\n\n [data-uiify-carousel] > [data-part=\"viewport\"][data-dragging] {\n scroll-behavior: auto;\n scroll-snap-type: none;\n }\n\n [data-uiify-carousel][data-mode=\"fade\"][data-enhanced] > [data-part=\"viewport\"] {\n grid-auto-flow: row;\n grid-template-columns: 100%;\n grid-auto-columns: auto;\n overflow: hidden;\n scroll-snap-type: none;\n touch-action: pan-y pinch-zoom;\n }\n\n [data-uiify-carousel][data-mode=\"fade\"][data-enhanced]\n > [data-part=\"viewport\"]\n > [data-part=\"slide\"] {\n grid-area: 1 / 1;\n opacity: 0;\n pointer-events: none;\n }\n\n [data-uiify-carousel][data-mode=\"fade\"][data-enhanced]\n > [data-part=\"viewport\"]\n > [data-part=\"slide\"][data-state=\"active\"] {\n opacity: 1;\n pointer-events: auto;\n }\n\n @media (prefers-reduced-motion: no-preference) {\n [data-uiify-carousel][data-mode=\"fade\"][data-enhanced]\n > [data-part=\"viewport\"]\n > [data-part=\"slide\"] {\n transition: opacity var(--uiify-carousel-fade-duration, 300ms) ease;\n }\n }\n\n [data-uiify-virtual-scroll] {\n --uiify-virtual-scroll-row-height: 64px;\n\n overflow-block: auto;\n }\n\n [data-uiify-virtual-scroll] > [data-part=\"spacer\"] {\n position: relative;\n block-size: var(\n --uiify-virtual-scroll-total-size,\n calc(var(--uiify-virtual-scroll-count, 0) * var(--uiify-virtual-scroll-row-height))\n );\n }\n\n [data-uiify-virtual-scroll] [data-part=\"row\"] {\n --uiify-row-position: var(\n --uiify-row-offset,\n calc(\n (var(--uiify-range-start, 0) + var(--uiify-slot-index, 0)) *\n var(--uiify-virtual-scroll-row-height)\n )\n );\n\n position: absolute;\n inset-inline: 0;\n block-size: var(--uiify-row-height, var(--uiify-virtual-scroll-row-height));\n translate: 0 var(--uiify-row-position);\n }\n\n /* Horizontal: the row size runs along the inline axis. Rows sit at a logical\n inline offset so RTL needs no direction selector; child combinators keep a\n vertical list nested inside a horizontal row on the vertical rules. */\n [data-uiify-virtual-scroll][data-orientation=\"horizontal\"] {\n overflow: auto hidden;\n }\n\n [data-uiify-virtual-scroll][data-orientation=\"horizontal\"] > [data-part=\"spacer\"] {\n block-size: 100%;\n inline-size: var(\n --uiify-virtual-scroll-total-size,\n calc(var(--uiify-virtual-scroll-count, 0) * var(--uiify-virtual-scroll-row-height))\n );\n }\n\n [data-uiify-virtual-scroll][data-orientation=\"horizontal\"]\n > [data-part=\"spacer\"]\n > [data-part=\"row\"] {\n inset-block: 0;\n inset-inline: var(--uiify-row-position) auto;\n block-size: auto;\n inline-size: var(--uiify-row-height, var(--uiify-virtual-scroll-row-height));\n translate: none;\n }\n\n /*\n * Toast list changes commit as React view transitions typed \"uiify-toast\".\n * Only the toast cards are captured: the page root is not snapshotted and\n * stays clickable while they move.\n */\n :root:active-view-transition-type(uiify-toast) {\n view-transition-name: none;\n }\n\n :root:active-view-transition-type(uiify-toast)::view-transition {\n pointer-events: none;\n }\n\n @media (prefers-reduced-motion: reduce) {\n ::view-transition-group(.uiify-toast),\n ::view-transition-old(.uiify-toast),\n ::view-transition-new(.uiify-toast) {\n animation: none;\n }\n }\n}\n"],"mappings":"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","names":[]}
@@ -0,0 +1,7 @@
1
+ import type { ElementType, ReactElement } from "react";
2
+ import type { CardProps } from "./types.js";
3
+ export declare function Card<TAs extends ElementType = "div">(props: CardProps<TAs>): ReactElement | null;
4
+ export declare namespace Card {
5
+ var displayName: string;
6
+ }
7
+ //# sourceMappingURL=Card.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Card.d.ts","sourceRoot":"","sources":["../../../src/components/card/Card.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAEvD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,wBAAgB,IAAI,CAAC,GAAG,SAAS,WAAW,GAAG,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,GAAG,CAAC,GAAG,YAAY,GAAG,IAAI,CAShG;yBATe,IAAI"}
@@ -0,0 +1,16 @@
1
+ import { useRenderElement } from "@gunkin/uiify/core/render";
2
+ function Card(props) {
3
+ const { as, render, ...consumerProps } = props;
4
+ return useRenderElement({
5
+ as,
6
+ defaultTag: "div",
7
+ props: { ...consumerProps, "data-uiify-card": "" },
8
+ render,
9
+ state: {}
10
+ });
11
+ }
12
+ Card.displayName = "Card";
13
+ export {
14
+ Card
15
+ };
16
+ //# sourceMappingURL=Card.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/card/Card.tsx"],"sourcesContent":["import type { ElementType, ReactElement } from \"react\";\nimport { useRenderElement } from \"@gunkin/uiify/core/render\";\nimport type { CardProps } from \"./types.js\";\n\nexport function Card<TAs extends ElementType = \"div\">(props: CardProps<TAs>): ReactElement | null {\n const { as, render, ...consumerProps } = props as CardProps<\"div\">;\n return useRenderElement({\n as,\n defaultTag: \"div\",\n props: { ...consumerProps, \"data-uiify-card\": \"\" },\n render,\n state: {},\n });\n}\n\nCard.displayName = \"Card\";\n"],"mappings":"AACA,SAAS,wBAAwB;AAG1B,SAAS,KAAsC,OAA4C;AAChG,QAAM,EAAE,IAAI,QAAQ,GAAG,cAAc,IAAI;AACzC,SAAO,iBAAiB;AAAA,IACtB;AAAA,IACA,YAAY;AAAA,IACZ,OAAO,EAAE,GAAG,eAAe,mBAAmB,GAAG;AAAA,IACjD;AAAA,IACA,OAAO,CAAC;AAAA,EACV,CAAC;AACH;AAEA,KAAK,cAAc;","names":[]}
@@ -0,0 +1,3 @@
1
+ export { Card } from "./Card.js";
2
+ export type { CardOwnProps, CardProps } from "./types.js";
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/card/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { Card } from "./Card.js";
2
+ export {
3
+ Card
4
+ };
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/card/index.ts"],"sourcesContent":["export { Card } from \"./Card.js\";\nexport type { CardOwnProps, CardProps } from \"./types.js\";\n"],"mappings":"AAAA,SAAS,YAAY;","names":[]}
@@ -0,0 +1,7 @@
1
+ import type { ElementType, ReactNode } from "react";
2
+ import type { RenderableProps } from "@gunkin/uiify/core/render";
3
+ export interface CardOwnProps {
4
+ readonly children?: ReactNode;
5
+ }
6
+ export type CardProps<TAs extends ElementType = "div"> = RenderableProps<TAs, CardOwnProps, Record<string, never>, HTMLElement>;
7
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/card/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACpD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAEjE,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC;CAC/B;AAED,MAAM,MAAM,SAAS,CAAC,GAAG,SAAS,WAAW,GAAG,KAAK,IAAI,eAAe,CACtE,GAAG,EACH,YAAY,EACZ,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EACrB,WAAW,CACZ,CAAC"}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1 @@
1
+ export * from "./card/index.js";
@@ -0,0 +1 @@
1
+ export * from "./card/index.js";
@@ -6,6 +6,8 @@ export interface CheckboxProps {
6
6
  readonly checked?: CheckedState;
7
7
  readonly defaultChecked?: boolean;
8
8
  readonly disabled?: boolean;
9
+ readonly name?: string;
10
+ readonly value?: string;
9
11
  readonly className?: string;
10
12
  readonly onCheckedChange?: (checked: boolean) => void;
11
13
  readonly "aria-label"?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/checkbox/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,eAAe,CAAC;AAErD,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC;IAC3B,QAAQ,CAAC,OAAO,CAAC,EAAE,YAAY,CAAC;IAChC,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAClC,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACtD,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;CAChC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/checkbox/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,eAAe,CAAC;AAErD,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC;IAC3B,QAAQ,CAAC,OAAO,CAAC,EAAE,YAAY,CAAC;IAChC,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAClC,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACtD,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;CAChC"}
@@ -0,0 +1,7 @@
1
+ import type { ReactElement } from "react";
2
+ import type { DatePickerProps } from "./types.js";
3
+ export declare function DatePicker({ invalid, ...props }: DatePickerProps): ReactElement;
4
+ export declare namespace DatePicker {
5
+ var displayName: string;
6
+ }
7
+ //# sourceMappingURL=DatePicker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DatePicker.d.ts","sourceRoot":"","sources":["../../../src/components/date-picker/DatePicker.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAC1C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAElD,wBAAgB,UAAU,CAAC,EAAE,OAAe,EAAE,GAAG,KAAK,EAAE,EAAE,eAAe,GAAG,YAAY,CAWvF;yBAXe,UAAU"}
@@ -0,0 +1,19 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ function DatePicker({ invalid = false, ...props }) {
3
+ return /* @__PURE__ */ jsx(
4
+ "input",
5
+ {
6
+ ...props,
7
+ type: "date",
8
+ "data-uiify-date-picker": "",
9
+ "data-disabled": props.disabled ? "" : void 0,
10
+ "data-invalid": invalid ? "" : void 0,
11
+ "aria-invalid": invalid ? true : props["aria-invalid"]
12
+ }
13
+ );
14
+ }
15
+ DatePicker.displayName = "DatePicker";
16
+ export {
17
+ DatePicker
18
+ };
19
+ //# sourceMappingURL=DatePicker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/date-picker/DatePicker.tsx"],"sourcesContent":["import type { ReactElement } from \"react\";\nimport type { DatePickerProps } from \"./types.js\";\n\nexport function DatePicker({ invalid = false, ...props }: DatePickerProps): ReactElement {\n return (\n <input\n {...props}\n type=\"date\"\n data-uiify-date-picker=\"\"\n data-disabled={props.disabled ? \"\" : undefined}\n data-invalid={invalid ? \"\" : undefined}\n aria-invalid={invalid ? true : props[\"aria-invalid\"]}\n />\n );\n}\n\nDatePicker.displayName = \"DatePicker\";\n"],"mappings":"AAKI;AAFG,SAAS,WAAW,EAAE,UAAU,OAAO,GAAG,MAAM,GAAkC;AACvF,SACE;AAAA,IAAC;AAAA;AAAA,MACE,GAAG;AAAA,MACJ,MAAK;AAAA,MACL,0BAAuB;AAAA,MACvB,iBAAe,MAAM,WAAW,KAAK;AAAA,MACrC,gBAAc,UAAU,KAAK;AAAA,MAC7B,gBAAc,UAAU,OAAO,MAAM,cAAc;AAAA;AAAA,EACrD;AAEJ;AAEA,WAAW,cAAc;","names":[]}
@@ -0,0 +1,3 @@
1
+ export { DatePicker } from "./DatePicker.js";
2
+ export type { DatePickerProps } from "./types.js";
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/date-picker/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,YAAY,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { DatePicker } from "./DatePicker.js";
2
+ export {
3
+ DatePicker
4
+ };
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/date-picker/index.ts"],"sourcesContent":["export { DatePicker } from \"./DatePicker.js\";\nexport type { DatePickerProps } from \"./types.js\";\n"],"mappings":"AAAA,SAAS,kBAAkB;","names":[]}
@@ -0,0 +1,5 @@
1
+ import type { ComponentPropsWithRef } from "react";
2
+ export interface DatePickerProps extends Omit<ComponentPropsWithRef<"input">, "type"> {
3
+ readonly invalid?: boolean;
4
+ }
5
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/date-picker/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,OAAO,CAAC;AAEnD,MAAM,WAAW,eAAgB,SAAQ,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IACnF,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;CAC5B"}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1 @@
1
+ export * from "./date-picker/index.js";
@@ -0,0 +1 @@
1
+ export * from "./date-picker/index.js";