@new-black/lyra 1.2.0-next.6 → 1.2.0

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 (207) hide show
  1. package/dist/lyra103.cjs +1 -1
  2. package/dist/lyra103.js +1 -1
  3. package/dist/lyra104.cjs +1 -1
  4. package/dist/lyra104.cjs.map +1 -1
  5. package/dist/lyra104.js +14 -14
  6. package/dist/lyra104.js.map +1 -1
  7. package/dist/lyra105.cjs +1 -1
  8. package/dist/lyra105.cjs.map +1 -1
  9. package/dist/lyra105.js +13 -10
  10. package/dist/lyra105.js.map +1 -1
  11. package/dist/lyra106.cjs +1 -1
  12. package/dist/lyra106.cjs.map +1 -1
  13. package/dist/lyra106.js +14 -14
  14. package/dist/lyra106.js.map +1 -1
  15. package/dist/lyra107.cjs +1 -1
  16. package/dist/lyra107.cjs.map +1 -1
  17. package/dist/lyra107.js +12 -31
  18. package/dist/lyra107.js.map +1 -1
  19. package/dist/lyra108.cjs +1 -1
  20. package/dist/lyra108.cjs.map +1 -1
  21. package/dist/lyra108.js +22 -81
  22. package/dist/lyra108.js.map +1 -1
  23. package/dist/lyra109.cjs +1 -1
  24. package/dist/lyra109.cjs.map +1 -1
  25. package/dist/lyra109.js +90 -44
  26. package/dist/lyra109.js.map +1 -1
  27. package/dist/lyra110.cjs +1 -1
  28. package/dist/lyra110.cjs.map +1 -1
  29. package/dist/lyra110.js +43 -51
  30. package/dist/lyra110.js.map +1 -1
  31. package/dist/lyra111.cjs +1 -1
  32. package/dist/lyra111.cjs.map +1 -1
  33. package/dist/lyra111.js +49 -50
  34. package/dist/lyra111.js.map +1 -1
  35. package/dist/lyra112.cjs +1 -1
  36. package/dist/lyra112.cjs.map +1 -1
  37. package/dist/lyra112.js +53 -7
  38. package/dist/lyra112.js.map +1 -1
  39. package/dist/lyra113.cjs +1 -1
  40. package/dist/lyra113.cjs.map +1 -1
  41. package/dist/lyra113.js +6 -61
  42. package/dist/lyra113.js.map +1 -1
  43. package/dist/lyra114.cjs +1 -1
  44. package/dist/lyra114.cjs.map +1 -1
  45. package/dist/lyra114.js +61 -36
  46. package/dist/lyra114.js.map +1 -1
  47. package/dist/lyra115.cjs +1 -5
  48. package/dist/lyra115.cjs.map +1 -1
  49. package/dist/lyra115.js +35 -2556
  50. package/dist/lyra115.js.map +1 -1
  51. package/dist/lyra116.cjs +5 -1
  52. package/dist/lyra116.cjs.map +1 -1
  53. package/dist/lyra116.js +2557 -50
  54. package/dist/lyra116.js.map +1 -1
  55. package/dist/lyra117.cjs +1 -1
  56. package/dist/lyra117.cjs.map +1 -1
  57. package/dist/lyra117.js +47 -568
  58. package/dist/lyra117.js.map +1 -1
  59. package/dist/lyra118.cjs +1 -1
  60. package/dist/lyra118.cjs.map +1 -1
  61. package/dist/lyra118.js +569 -12
  62. package/dist/lyra118.js.map +1 -1
  63. package/dist/lyra119.cjs +1 -1
  64. package/dist/lyra119.js +1 -1
  65. package/dist/lyra120.cjs +1 -1
  66. package/dist/lyra120.js +1 -1
  67. package/dist/lyra121.cjs +1 -1
  68. package/dist/lyra121.js +1 -1
  69. package/dist/lyra122.cjs +1 -1
  70. package/dist/lyra122.js +1 -1
  71. package/dist/lyra159.cjs +1 -1
  72. package/dist/lyra159.js +1 -1
  73. package/dist/lyra160.cjs +1 -1
  74. package/dist/lyra160.js +1 -1
  75. package/dist/lyra162.cjs +1 -1
  76. package/dist/lyra162.js +1 -1
  77. package/dist/lyra163.cjs +1 -1
  78. package/dist/lyra163.js +1 -1
  79. package/dist/lyra165.cjs +1 -1
  80. package/dist/lyra165.js +1 -1
  81. package/dist/lyra201.cjs +1 -1
  82. package/dist/lyra201.js +1 -1
  83. package/dist/lyra202.cjs +1 -1
  84. package/dist/lyra202.js +1 -1
  85. package/dist/lyra203.cjs +1 -1
  86. package/dist/lyra203.js +1 -1
  87. package/dist/lyra204.cjs +1 -1
  88. package/dist/lyra204.js +1 -1
  89. package/dist/lyra243.cjs +1 -1
  90. package/dist/lyra243.js +1 -1
  91. package/dist/lyra244.cjs +1 -1
  92. package/dist/lyra244.js +1 -1
  93. package/dist/lyra245.cjs +1 -1
  94. package/dist/lyra245.js +1 -1
  95. package/dist/lyra246.cjs +1 -1
  96. package/dist/lyra246.js +1 -1
  97. package/dist/lyra247.cjs +1 -1
  98. package/dist/lyra247.js +1 -1
  99. package/dist/lyra249.cjs +1 -1
  100. package/dist/lyra249.js +1 -1
  101. package/dist/lyra26.cjs +1 -1
  102. package/dist/lyra26.js +1 -1
  103. package/dist/lyra284.cjs +1 -1
  104. package/dist/lyra284.js +1 -1
  105. package/dist/lyra29.cjs +1 -1
  106. package/dist/lyra29.js +1 -1
  107. package/dist/lyra319.cjs +1 -1
  108. package/dist/lyra319.js +1 -1
  109. package/dist/lyra33.cjs +1 -1
  110. package/dist/lyra33.js +1 -1
  111. package/dist/lyra34.cjs +1 -1
  112. package/dist/lyra34.js +3 -3
  113. package/dist/lyra354.cjs +1 -1
  114. package/dist/lyra354.js +1 -1
  115. package/dist/lyra356.cjs +1 -1
  116. package/dist/lyra356.js +1 -1
  117. package/dist/lyra357.cjs +1 -1
  118. package/dist/lyra357.js +1 -1
  119. package/dist/lyra358.cjs +1 -1
  120. package/dist/lyra358.js +1 -1
  121. package/dist/lyra36.cjs +1 -1
  122. package/dist/lyra36.js +6 -6
  123. package/dist/lyra37.cjs +1 -1
  124. package/dist/lyra37.js +7 -7
  125. package/dist/lyra393.cjs +1 -1
  126. package/dist/lyra393.js +1 -1
  127. package/dist/lyra395.cjs +1 -1
  128. package/dist/lyra395.js +1 -1
  129. package/dist/lyra43.cjs +1 -1
  130. package/dist/lyra43.js +5 -5
  131. package/dist/lyra431.cjs +1 -1
  132. package/dist/lyra431.js +1 -1
  133. package/dist/lyra432.cjs +1 -1
  134. package/dist/lyra432.js +1 -1
  135. package/dist/lyra44.cjs +1 -1
  136. package/dist/lyra44.js +1 -1
  137. package/dist/lyra45.cjs +1 -1
  138. package/dist/lyra45.js +2 -2
  139. package/dist/lyra467.cjs +1 -1
  140. package/dist/lyra467.js +1 -1
  141. package/dist/lyra469.cjs +1 -1
  142. package/dist/lyra469.js +1 -1
  143. package/dist/lyra470.cjs +1 -1
  144. package/dist/lyra470.js +2 -2
  145. package/dist/lyra471.cjs +1 -1
  146. package/dist/lyra471.js +3 -3
  147. package/dist/lyra474.cjs +1 -1
  148. package/dist/lyra474.js +2 -2
  149. package/dist/lyra48.cjs +1 -1
  150. package/dist/lyra48.js +1 -1
  151. package/dist/lyra50.cjs +1 -1
  152. package/dist/lyra50.js +1 -1
  153. package/dist/lyra51.cjs +1 -1
  154. package/dist/lyra51.js +3 -3
  155. package/dist/lyra52.cjs +1 -1
  156. package/dist/lyra52.js +2 -2
  157. package/dist/lyra534.cjs +1 -1
  158. package/dist/lyra534.js +2 -2
  159. package/dist/lyra537.cjs +1 -1
  160. package/dist/lyra537.cjs.map +1 -1
  161. package/dist/lyra537.js +25 -15
  162. package/dist/lyra537.js.map +1 -1
  163. package/dist/lyra538.cjs +1 -1
  164. package/dist/lyra538.cjs.map +1 -1
  165. package/dist/lyra538.js +33 -3
  166. package/dist/lyra538.js.map +1 -1
  167. package/dist/lyra539.cjs +1 -1
  168. package/dist/lyra539.cjs.map +1 -1
  169. package/dist/lyra539.js +16 -14
  170. package/dist/lyra539.js.map +1 -1
  171. package/dist/lyra540.cjs +1 -1
  172. package/dist/lyra540.cjs.map +1 -1
  173. package/dist/lyra540.js +3 -33
  174. package/dist/lyra540.js.map +1 -1
  175. package/dist/lyra541.cjs +1 -1
  176. package/dist/lyra541.cjs.map +1 -1
  177. package/dist/lyra541.js +14 -7
  178. package/dist/lyra541.js.map +1 -1
  179. package/dist/lyra542.cjs +1 -1
  180. package/dist/lyra542.cjs.map +1 -1
  181. package/dist/lyra542.js +7 -26
  182. package/dist/lyra542.js.map +1 -1
  183. package/dist/lyra545.cjs +1 -1
  184. package/dist/lyra545.js +1 -1
  185. package/dist/lyra56.cjs +1 -1
  186. package/dist/lyra56.js +1 -1
  187. package/dist/lyra60.cjs +1 -1
  188. package/dist/lyra60.js +5 -5
  189. package/dist/lyra61.cjs +1 -1
  190. package/dist/lyra61.js +3 -3
  191. package/dist/lyra62.cjs +1 -1
  192. package/dist/lyra62.js +7 -7
  193. package/dist/lyra63.cjs +1 -1
  194. package/dist/lyra63.js +5 -5
  195. package/dist/lyra69.cjs +1 -1
  196. package/dist/lyra69.js +3 -3
  197. package/dist/lyra692.cjs +1 -1
  198. package/dist/lyra692.js +1 -1
  199. package/dist/lyra76.cjs +1 -1
  200. package/dist/lyra76.js +3 -3
  201. package/dist/lyra797.cjs +1 -1
  202. package/dist/lyra797.js +1 -1
  203. package/dist/lyra91.cjs +1 -1
  204. package/dist/lyra91.js +1 -1
  205. package/dist/lyra92.cjs +1 -1
  206. package/dist/lyra92.js +1 -1
  207. package/package.json +1 -1
package/dist/lyra109.js CHANGED
@@ -1,46 +1,92 @@
1
- import { j as e } from "./lyra93.js";
2
- import l from "./lyra95.js";
3
- import { iconsSchema as d, SvgIcon as s } from "./lyra67.js";
4
- import { Text as p } from "./lyra74.js";
5
- import "./lyra75.js";
6
- import { sharedListItemStyles as N } from "./lyra108.js";
7
- const v = l.object({
8
- label: l.string(),
9
- description: l.string().optional(),
10
- iconStart: d.optional(),
11
- iconEnd: d.optional(),
12
- image: l.string().url().optional(),
13
- customElement: l.any().optional()
14
- }).transform((i) => (i.customElement ? (delete i.image, delete i.iconStart) : i.image && delete i.iconStart, i)), W = ({
15
- hasSelection: i,
16
- item: h,
17
- selectRenderElements: x,
18
- state: t
19
- }) => {
20
- const { customElement: m, description: n, iconEnd: r, iconStart: o, image: c, label: a } = v.parse(x(h)), {
21
- item: S,
22
- itemCheckmark: j,
23
- itemCheckmarkWrapper: u,
24
- itemDescription: g,
25
- itemEndIcon: f,
26
- itemImage: k,
27
- itemLabel: y,
28
- itemStartIcon: I
29
- } = N({
30
- hasSelection: i
31
- });
32
- return /* @__PURE__ */ e.jsxs("div", { className: S(t), children: [
33
- i ? /* @__PURE__ */ e.jsx("div", { className: u(), children: t.selected ? /* @__PURE__ */ e.jsx(s, { name: "checkmark", className: j(t) }) : /* @__PURE__ */ e.jsx("div", { className: "h-4 w-4" }) }) : null,
34
- m || null,
35
- c ? /* @__PURE__ */ e.jsx("img", { src: c, alt: a, className: k(t) }) : null,
36
- o ? /* @__PURE__ */ e.jsx("div", { className: I(t), children: /* @__PURE__ */ e.jsx(s, { name: o }) }) : null,
37
- /* @__PURE__ */ e.jsxs("div", { className: "flex w-full grow flex-col gap-1 overflow-hidden truncate", children: [
38
- /* @__PURE__ */ e.jsx(p, { slot: "label", className: y(t), children: a }),
39
- n ? /* @__PURE__ */ e.jsx(p, { slot: "description", className: g(t), children: n }) : null
40
- ] }),
41
- r ? /* @__PURE__ */ e.jsx("div", { className: f(t), children: /* @__PURE__ */ e.jsx(s, { name: r }) }) : null
42
- ] });
43
- };
1
+ import { tv as e } from "./lyra103.js";
2
+ const r = e({
3
+ base: ["flex", "flex-col", "w-full", "outline-none", "overflow-auto"]
4
+ }), i = e({
5
+ base: [
6
+ "block",
7
+ "w-full",
8
+ "justify-start",
9
+ "rounded-sm",
10
+ "bg-transparent",
11
+ "p-1",
12
+ "ps-1.5",
13
+ "text-start",
14
+ "text-base",
15
+ "font-normal",
16
+ "text-primary",
17
+ "outline-none",
18
+ "duration-0",
19
+ "active:text-inverted",
20
+ "hover:bg-action-hover",
21
+ "hover:text-inverted",
22
+ "focus:bg-action-focus",
23
+ "focus:text-inverted",
24
+ "focus-visible:[box-shadow:none]"
25
+ ],
26
+ variants: {
27
+ isDisabled: {
28
+ true: ["text-tertiary", "cursor-not-allowed"]
29
+ }
30
+ }
31
+ }), o = e({
32
+ slots: {
33
+ item: ["flex", "items-start", "p-1", "rounded-sm", "outline-none"],
34
+ itemCheckmark: [],
35
+ itemCheckmarkWrapper: [],
36
+ itemImage: [
37
+ "w-9",
38
+ "min-w-9",
39
+ "h-9",
40
+ "rounded-xs",
41
+ "border",
42
+ "solid",
43
+ "border-default",
44
+ "me-1.5",
45
+ "overflow-hidden",
46
+ "box-border",
47
+ "object-contain",
48
+ "bg-[#ffffff]",
49
+ "block"
50
+ ],
51
+ itemLabel: ["text-primary", "text-base", "truncate", "overflow-hidden", "select-none"],
52
+ itemDescription: ["text-sm", "text-secondary", "truncate", "overflow-hidden", "select-none"],
53
+ itemEndIcon: ["text-tertiary", "w-4", "h-4"],
54
+ itemStartIcon: ["w-4", "h-4", "me-1"]
55
+ },
56
+ variants: {
57
+ hasSelection: {
58
+ true: {
59
+ itemCheckmarkWrapper: ["w-5", "min-w-5"],
60
+ itemCheckmark: ["text-primary", "min-w-4", "me-1"]
61
+ },
62
+ false: {
63
+ item: ["ps-1.5"]
64
+ }
65
+ },
66
+ disabled: {
67
+ true: {
68
+ item: ["cursor-not-allowed"],
69
+ itemCheckmark: ["text-tertiary"],
70
+ itemImage: ["opacity-50"],
71
+ itemLabel: ["text-tertiary"],
72
+ itemDescription: ["text-tertiary"]
73
+ }
74
+ },
75
+ active: {
76
+ true: {
77
+ item: ["bg-action-focus"],
78
+ itemImage: ["border-focus"],
79
+ itemCheckmark: ["text-inverted"],
80
+ itemLabel: ["text-inverted"],
81
+ itemDescription: ["text-inverted"],
82
+ itemStartIcon: ["text-inverted"],
83
+ itemEndIcon: ["text-inverted"]
84
+ }
85
+ }
86
+ }
87
+ });
44
88
  export {
45
- W as SharedListItem
89
+ i as loadMoreButtonStyles,
90
+ o as sharedListItemStyles,
91
+ r as sharedListStyles
46
92
  };
@@ -1 +1 @@
1
- {"version":3,"file":"lyra109.js","sources":["../src/components/lists/shared-list-item.tsx"],"sourcesContent":["import { ReactNode } from \"react\";\n\nimport { z } from \"zod\";\n\nimport { iconsSchema, SvgIcon } from \"../svg-icon\";\nimport { Text } from \"../text\";\n\nimport { sharedListItemStyles } from \"./shared-list.styles\";\n\n// Define the schema for the shared list item\nconst sharedListItemSchema = z\n .object({\n label: z.string(),\n description: z.string().optional(),\n iconStart: iconsSchema.optional(),\n iconEnd: iconsSchema.optional(),\n image: z.string().url().optional(),\n customElement: z.any().optional(),\n })\n .transform((data) => {\n // customElement, image and iconStart are mutually exclusive, so we remove the other two if one is present.\n // Priority is customElement > image > iconStart\n if (data.customElement) {\n delete data.image;\n delete data.iconStart;\n } else if (data.image) {\n delete data.iconStart;\n }\n return data;\n });\n\n// Infer the type of the shared list item arguments. We make sure customElement will be typed as ReactNode.\nexport type SharedListItemArgs = z.infer<typeof sharedListItemSchema> & {\n customElement?: ReactNode;\n};\n\ntype SharedListItemRenderPropArg = {\n active: boolean;\n selected: boolean;\n disabled: boolean;\n};\n\nexport type SelectItemRenderPropFn<T> = (arg: T) => SharedListItemArgs;\n\nexport type SharedListItemProps<T extends object> = {\n item: T;\n selectRenderElements: SelectItemRenderPropFn<T>;\n state: SharedListItemRenderPropArg;\n hasSelection?: boolean;\n};\n\n/**\n * Renders a single item in a list\n *\n * @template T - The type of the item.\n * @param {SharedListItemProps<T>} props - The props for the SharedListItem component.\n * @returns {JSX.Element} - The rendered SharedListItem component.\n */\nexport const SharedListItem = <T extends object>({\n hasSelection,\n item,\n selectRenderElements,\n state,\n}: SharedListItemProps<T>) => {\n const { customElement, description, iconEnd, iconStart, image, label } =\n sharedListItemSchema.parse(selectRenderElements(item));\n\n const {\n item: itemStyles,\n itemCheckmark: itemCheckmarkStyles,\n itemCheckmarkWrapper: itemCheckmarkWrapperStyles,\n itemDescription: itemDescriptionStyles,\n itemEndIcon: itemEndIconStyles,\n itemImage: itemImageStyles,\n itemLabel: itemLabelStyles,\n itemStartIcon: itemStartIconStyles,\n } = sharedListItemStyles({\n hasSelection,\n });\n\n return (\n <div className={itemStyles(state)}>\n {hasSelection ? (\n <div className={itemCheckmarkWrapperStyles()}>\n {state.selected ? (\n <SvgIcon name=\"checkmark\" className={itemCheckmarkStyles(state)} />\n ) : (\n <div className=\"h-4 w-4\" />\n )}\n </div>\n ) : null}\n {customElement ? (customElement as ReactNode) : null}\n {image ? <img src={image} alt={label} className={itemImageStyles(state)} /> : null}\n {iconStart ? (\n <div className={itemStartIconStyles(state)}>\n <SvgIcon name={iconStart} />\n </div>\n ) : null}\n <div className=\"flex w-full grow flex-col gap-1 overflow-hidden truncate\">\n <Text slot=\"label\" className={itemLabelStyles(state)}>\n {label}\n </Text>\n {description ? (\n <Text slot=\"description\" className={itemDescriptionStyles(state)}>\n {description}\n </Text>\n ) : null}\n </div>\n {iconEnd ? (\n <div className={itemEndIconStyles(state)}>\n <SvgIcon name={iconEnd} />\n </div>\n ) : null}\n </div>\n );\n};\n"],"names":["sharedListItemSchema","z","iconsSchema","data","SharedListItem","hasSelection","item","selectRenderElements","state","customElement","description","iconEnd","iconStart","image","label","itemStyles","itemCheckmarkStyles","itemCheckmarkWrapperStyles","itemDescriptionStyles","itemEndIconStyles","itemImageStyles","itemLabelStyles","itemStartIconStyles","sharedListItemStyles","jsxs","jsx","SvgIcon","Text"],"mappings":";;;;;;AAUA,MAAMA,IAAuBC,EAC1B,OAAO;AAAA,EACN,OAAOA,EAAE,OAAO;AAAA,EAChB,aAAaA,EAAE,OAAO,EAAE,SAAS;AAAA,EACjC,WAAWC,EAAY,SAAS;AAAA,EAChC,SAASA,EAAY,SAAS;AAAA,EAC9B,OAAOD,EAAE,OAAS,EAAA,IAAA,EAAM,SAAS;AAAA,EACjC,eAAeA,EAAE,IAAI,EAAE,SAAS;AAClC,CAAC,EACA,UAAU,CAACE,OAGNA,EAAK,iBACP,OAAOA,EAAK,OACZ,OAAOA,EAAK,aACHA,EAAK,SACd,OAAOA,EAAK,WAEPA,EACR,GA6BUC,IAAiB,CAAmB;AAAA,EAC/C,cAAAC;AAAA,EACA,MAAAC;AAAA,EACA,sBAAAC;AAAA,EACA,OAAAC;AACF,MAA8B;AAC5B,QAAM,EAAE,eAAAC,GAAe,aAAAC,GAAa,SAAAC,GAAS,WAAAC,GAAW,OAAAC,GAAO,OAAAC,EAAM,IACnEd,EAAqB,MAAMO,EAAqBD,CAAI,CAAC,GAEjD;AAAA,IACJ,MAAMS;AAAA,IACN,eAAeC;AAAA,IACf,sBAAsBC;AAAA,IACtB,iBAAiBC;AAAA,IACjB,aAAaC;AAAA,IACb,WAAWC;AAAA,IACX,WAAWC;AAAA,IACX,eAAeC;AAAA,MACbC,EAAqB;AAAA,IACvB,cAAAlB;AAAA,EAAA,CACD;AAED,SACGmB,gBAAAA,EAAAA,KAAA,OAAA,EAAI,WAAWT,EAAWP,CAAK,GAC7B,UAAA;AAAA,IACCH,IAAAoB,gBAAAA,EAAA,IAAC,SAAI,WAAWR,EAAA,GACb,UAAMT,EAAA,iCACJkB,GAAQ,EAAA,MAAK,aAAY,WAAWV,EAAoBR,CAAK,EAAG,CAAA,0BAEhE,OAAI,EAAA,WAAU,WAAU,EAAA,CAE7B,IACE;AAAA,IACHC,KAA+C;AAAA,IAC/CI,IAASY,gBAAAA,EAAAA,IAAA,OAAA,EAAI,KAAKZ,GAAO,KAAKC,GAAO,WAAWM,EAAgBZ,CAAK,EAAA,CAAG,IAAK;AAAA,IAC7EI,IACCa,gBAAAA,EAAA,IAAC,OAAI,EAAA,WAAWH,EAAoBd,CAAK,GACvC,UAAAiB,gBAAAA,EAAA,IAACC,GAAQ,EAAA,MAAMd,EAAW,CAAA,EAC5B,CAAA,IACE;AAAA,IACJY,gBAAAA,EAAAA,KAAC,OAAI,EAAA,WAAU,4DACb,UAAA;AAAA,MAAAC,gBAAAA,EAAAA,IAACE,KAAK,MAAK,SAAQ,WAAWN,EAAgBb,CAAK,GAChD,UACHM,GAAA;AAAA,MACCJ,IACEe,gBAAAA,EAAA,IAAAE,GAAA,EAAK,MAAK,eAAc,WAAWT,EAAsBV,CAAK,GAC5D,UAAAE,EACH,CAAA,IACE;AAAA,IAAA,GACN;AAAA,IACCC,IACCc,gBAAAA,EAAA,IAAC,OAAI,EAAA,WAAWN,EAAkBX,CAAK,GACrC,UAAAiB,gBAAAA,EAAA,IAACC,GAAQ,EAAA,MAAMf,EAAS,CAAA,EAC1B,CAAA,IACE;AAAA,EAAA,GACN;AAEJ;"}
1
+ {"version":3,"file":"lyra109.js","sources":["../src/components/lists/shared-list.styles.tsx"],"sourcesContent":["import { tv } from \"tailwind-variants\";\n\nexport const sharedListStyles = tv({\n base: [\"flex\", \"flex-col\", \"w-full\", \"outline-none\", \"overflow-auto\"],\n});\n\nexport const loadMoreButtonStyles = tv({\n base: [\n \"block\",\n \"w-full\",\n \"justify-start\",\n \"rounded-sm\",\n \"bg-transparent\",\n \"p-1\",\n \"ps-1.5\",\n \"text-start\",\n \"text-base\",\n \"font-normal\",\n \"text-primary\",\n \"outline-none\",\n \"duration-0\",\n \"active:text-inverted\",\n \"hover:bg-action-hover\",\n \"hover:text-inverted\",\n \"focus:bg-action-focus\",\n \"focus:text-inverted\",\n \"focus-visible:[box-shadow:none]\",\n ],\n variants: {\n isDisabled: {\n true: [\"text-tertiary\", \"cursor-not-allowed\"],\n },\n },\n});\n\nexport const sharedListItemStyles = tv({\n slots: {\n item: [\"flex\", \"items-start\", \"p-1\", \"rounded-sm\", \"outline-none\"],\n itemCheckmark: [],\n itemCheckmarkWrapper: [],\n itemImage: [\n \"w-9\",\n \"min-w-9\",\n \"h-9\",\n \"rounded-xs\",\n \"border\",\n \"solid\",\n \"border-default\",\n \"me-1.5\",\n \"overflow-hidden\",\n \"box-border\",\n \"object-contain\",\n \"bg-[#ffffff]\",\n \"block\",\n ],\n itemLabel: [\"text-primary\", \"text-base\", \"truncate\", \"overflow-hidden\", \"select-none\"],\n itemDescription: [\"text-sm\", \"text-secondary\", \"truncate\", \"overflow-hidden\", \"select-none\"],\n itemEndIcon: [\"text-tertiary\", \"w-4\", \"h-4\"],\n itemStartIcon: [\"w-4\", \"h-4\", \"me-1\"],\n },\n variants: {\n hasSelection: {\n true: {\n itemCheckmarkWrapper: [\"w-5\", \"min-w-5\"],\n itemCheckmark: [\"text-primary\", \"min-w-4\", \"me-1\"],\n },\n false: {\n item: [\"ps-1.5\"],\n },\n },\n disabled: {\n true: {\n item: [\"cursor-not-allowed\"],\n itemCheckmark: [\"text-tertiary\"],\n itemImage: [\"opacity-50\"],\n itemLabel: [\"text-tertiary\"],\n itemDescription: [\"text-tertiary\"],\n },\n },\n active: {\n true: {\n item: [\"bg-action-focus\"],\n itemImage: [\"border-focus\"],\n itemCheckmark: [\"text-inverted\"],\n itemLabel: [\"text-inverted\"],\n itemDescription: [\"text-inverted\"],\n itemStartIcon: [\"text-inverted\"],\n itemEndIcon: [\"text-inverted\"],\n },\n },\n },\n});\n"],"names":["sharedListStyles","tv","loadMoreButtonStyles","sharedListItemStyles"],"mappings":";AAEO,MAAMA,IAAmBC,EAAG;AAAA,EACjC,MAAM,CAAC,QAAQ,YAAY,UAAU,gBAAgB,eAAe;AACtE,CAAC,GAEYC,IAAuBD,EAAG;AAAA,EACrC,MAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EACA,UAAU;AAAA,IACR,YAAY;AAAA,MACV,MAAM,CAAC,iBAAiB,oBAAoB;AAAA,IAAA;AAAA,EAC9C;AAEJ,CAAC,GAEYE,IAAuBF,EAAG;AAAA,EACrC,OAAO;AAAA,IACL,MAAM,CAAC,QAAQ,eAAe,OAAO,cAAc,cAAc;AAAA,IACjE,eAAe,CAAC;AAAA,IAChB,sBAAsB,CAAC;AAAA,IACvB,WAAW;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,IACA,WAAW,CAAC,gBAAgB,aAAa,YAAY,mBAAmB,aAAa;AAAA,IACrF,iBAAiB,CAAC,WAAW,kBAAkB,YAAY,mBAAmB,aAAa;AAAA,IAC3F,aAAa,CAAC,iBAAiB,OAAO,KAAK;AAAA,IAC3C,eAAe,CAAC,OAAO,OAAO,MAAM;AAAA,EACtC;AAAA,EACA,UAAU;AAAA,IACR,cAAc;AAAA,MACZ,MAAM;AAAA,QACJ,sBAAsB,CAAC,OAAO,SAAS;AAAA,QACvC,eAAe,CAAC,gBAAgB,WAAW,MAAM;AAAA,MACnD;AAAA,MACA,OAAO;AAAA,QACL,MAAM,CAAC,QAAQ;AAAA,MAAA;AAAA,IAEnB;AAAA,IACA,UAAU;AAAA,MACR,MAAM;AAAA,QACJ,MAAM,CAAC,oBAAoB;AAAA,QAC3B,eAAe,CAAC,eAAe;AAAA,QAC/B,WAAW,CAAC,YAAY;AAAA,QACxB,WAAW,CAAC,eAAe;AAAA,QAC3B,iBAAiB,CAAC,eAAe;AAAA,MAAA;AAAA,IAErC;AAAA,IACA,QAAQ;AAAA,MACN,MAAM;AAAA,QACJ,MAAM,CAAC,iBAAiB;AAAA,QACxB,WAAW,CAAC,cAAc;AAAA,QAC1B,eAAe,CAAC,eAAe;AAAA,QAC/B,WAAW,CAAC,eAAe;AAAA,QAC3B,iBAAiB,CAAC,eAAe;AAAA,QACjC,eAAe,CAAC,eAAe;AAAA,QAC/B,aAAa,CAAC,eAAe;AAAA,MAAA;AAAA,IAC/B;AAAA,EACF;AAEJ,CAAC;"}
package/dist/lyra110.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./lyra93.cjs"),l=require("react"),n=require("./lyra92.cjs"),m=require("./lyra96.cjs"),R=require("./lyra541.cjs"),f=require("./lyra67.cjs"),d=require("./lyra111.cjs"),g=l.createContext(null);function v({children:a,items:t,label:i,renderEmptyState:o,...s},r){return[s,r]=n.useContextProps(s,r,n.TagGroupContext),e.jsxRuntimeExports.jsx(g.Provider,{value:{onRemove:s.onRemove},children:e.jsxRuntimeExports.jsx(n.TagGroup,{...s,"aria-label":i,className:d.tagGroupStyles({className:s.className}),ref:r,children:e.jsxRuntimeExports.jsx(n.TagList,{items:t,renderEmptyState:o,className:"flex flex-wrap gap-1",children:a})})})}const p=m.fixedForwardRef(v);p.displayName="InputTagGroup";function y({children:a,...t},i){const{onRemove:o}=l.useContext(g),s=typeof a=="string"?a:void 0,{removeButton:r,tag:T}=d.tagStyles();return e.jsxRuntimeExports.jsx(n.Tag,{ref:i,textValue:s,...t,className:n.composeRenderProps(t.className,(x,u)=>T({...u,isDisabled:u.isDisabled,className:x})),children:({allowsRemoving:x,isDisabled:u})=>e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[a,x&&!u&&!t.isDisabled&&e.jsxRuntimeExports.jsx(R.SpanButton,{className:r(),onPress:()=>{const c=new Set;t.id!==void 0&&c.add(t.id),o==null||o(c)},children:e.jsxRuntimeExports.jsx(f.SvgIcon,{name:"clear"})})]})})}const j=m.fixedForwardRef(y);j.displayName="InputTag";exports.InputTag=j;exports.InputTagGroup=p;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./lyra93.cjs"),i=require("./lyra95.cjs"),n=require("./lyra67.cjs"),x=require("./lyra74.cjs");require("./lyra75.cjs");const I=require("./lyra109.cjs"),R=i.default.object({label:i.default.string(),description:i.default.string().optional(),iconStart:n.iconsSchema.optional(),iconEnd:n.iconsSchema.optional(),image:i.default.string().url().optional(),customElement:i.default.any().optional()}).transform(t=>(t.customElement?(delete t.image,delete t.iconStart):t.image&&delete t.iconStart,t)),v=({hasSelection:t,item:u,selectRenderElements:d,state:s})=>{const{customElement:l,description:r,iconEnd:m,iconStart:o,image:c,label:a}=R.parse(d(u)),{item:p,itemCheckmark:j,itemCheckmarkWrapper:S,itemDescription:h,itemEndIcon:E,itemImage:g,itemLabel:f,itemStartIcon:y}=I.sharedListItemStyles({hasSelection:t});return e.jsxRuntimeExports.jsxs("div",{className:p(s),children:[t?e.jsxRuntimeExports.jsx("div",{className:S(),children:s.selected?e.jsxRuntimeExports.jsx(n.SvgIcon,{name:"checkmark",className:j(s)}):e.jsxRuntimeExports.jsx("div",{className:"h-4 w-4"})}):null,l||null,c?e.jsxRuntimeExports.jsx("img",{src:c,alt:a,className:g(s)}):null,o?e.jsxRuntimeExports.jsx("div",{className:y(s),children:e.jsxRuntimeExports.jsx(n.SvgIcon,{name:o})}):null,e.jsxRuntimeExports.jsxs("div",{className:"flex w-full grow flex-col gap-1 overflow-hidden truncate",children:[e.jsxRuntimeExports.jsx(x.Text,{slot:"label",className:f(s),children:a}),r?e.jsxRuntimeExports.jsx(x.Text,{slot:"description",className:h(s),children:r}):null]}),m?e.jsxRuntimeExports.jsx("div",{className:E(s),children:e.jsxRuntimeExports.jsx(n.SvgIcon,{name:m})}):null]})};exports.SharedListItem=v;
@@ -1 +1 @@
1
- {"version":3,"file":"lyra110.cjs","sources":["../src/components/inputs/input-tag-group/input-tag-group.tsx"],"sourcesContent":["import { createContext, ElementRef, ForwardedRef, useContext } from \"react\";\nimport {\n composeRenderProps,\n Key,\n Tag as AriaTag,\n TagGroup as AriaTagGroup,\n TagGroupContext,\n TagGroupProps as AriaTagGroupProps,\n TagList,\n TagListProps,\n TagProps as AriaTagProps,\n useContextProps,\n} from \"react-aria-components\";\n\nimport { fixedForwardRef } from \"../../../utils/helpers.ts\";\nimport { SpanButton } from \"../../button/span-button.tsx\";\nimport { SvgIcon } from \"../../svg-icon/index.tsx\";\n\nimport { tagGroupStyles, tagStyles } from \"./input-tag-group.styles.ts\";\n\nexport interface InputTagGroupProps<T>\n extends Omit<AriaTagGroupProps, \"children\">,\n Pick<TagListProps<T>, \"items\" | \"children\" | \"renderEmptyState\"> {\n label: string;\n}\n\nconst SharedTagGroupContext = createContext<Pick<InputTagGroupProps<any>, \"onRemove\">>(null as any);\n\nfunction _InputTagGroup<T extends object>(\n { children, items, label, renderEmptyState, ...props }: InputTagGroupProps<T>,\n ref: ForwardedRef<ElementRef<typeof AriaTagGroup>>,\n) {\n [props, ref] = useContextProps(props, ref, TagGroupContext);\n return (\n <SharedTagGroupContext.Provider value={{ onRemove: props.onRemove }}>\n <AriaTagGroup\n {...props}\n aria-label={label}\n className={tagGroupStyles({ className: props.className })}\n ref={ref}\n >\n <TagList items={items} renderEmptyState={renderEmptyState} className=\"flex flex-wrap gap-1\">\n {children}\n </TagList>\n </AriaTagGroup>\n </SharedTagGroupContext.Provider>\n );\n}\n\nexport const InputTagGroup = fixedForwardRef(_InputTagGroup);\n// @ts-ignore\nInputTagGroup.displayName = \"InputTagGroup\";\n\nexport type InputTagProps = AriaTagProps & { isDisabled?: boolean };\n\nfunction _InputTag(\n { children, ...props }: InputTagProps,\n ref: ForwardedRef<ElementRef<typeof AriaTag>>,\n) {\n const { onRemove } = useContext(SharedTagGroupContext);\n const textValue = typeof children === \"string\" ? children : undefined;\n const { removeButton, tag } = tagStyles();\n\n return (\n <AriaTag\n ref={ref}\n textValue={textValue}\n {...props}\n className={composeRenderProps(props.className, (className, renderProps) => {\n return tag({ ...renderProps, isDisabled: renderProps.isDisabled, className });\n })}\n >\n {({ allowsRemoving, isDisabled }) => (\n <>\n {children}\n {allowsRemoving && !isDisabled && !props.isDisabled && (\n <SpanButton\n className={removeButton()}\n onPress={() => {\n const keysToRemove = new Set<Key>();\n if (props.id !== undefined) keysToRemove.add(props.id);\n onRemove?.(keysToRemove);\n }}\n >\n <SvgIcon name=\"clear\" />\n </SpanButton>\n )}\n </>\n )}\n </AriaTag>\n );\n}\n\nexport const InputTag = fixedForwardRef(_InputTag);\n// @ts-ignore\nInputTag.displayName = \"InputTag\";\n"],"names":["SharedTagGroupContext","createContext","_InputTagGroup","children","items","label","renderEmptyState","props","ref","useContextProps","TagGroupContext","jsx","AriaTagGroup","tagGroupStyles","TagList","InputTagGroup","fixedForwardRef","_InputTag","onRemove","useContext","textValue","removeButton","tag","tagStyles","AriaTag","composeRenderProps","className","renderProps","allowsRemoving","isDisabled","jsxs","Fragment","SpanButton","keysToRemove","SvgIcon","InputTag"],"mappings":"uQA0BMA,EAAwBC,gBAAyD,IAAW,EAElG,SAASC,EACP,CAAE,SAAAC,EAAU,MAAAC,EAAO,MAAAC,EAAO,iBAAAC,EAAkB,GAAGC,CAAM,EACrDC,EACA,CACA,OAACD,EAAOC,CAAG,EAAIC,EAAgB,gBAAAF,EAAOC,EAAKE,iBAAe,EAExDC,wBAACX,EAAsB,SAAtB,CAA+B,MAAO,CAAE,SAAUO,EAAM,UACvD,SAAAI,EAAA,kBAAA,IAACC,EAAA,SAAA,CACE,GAAGL,EACJ,aAAYF,EACZ,UAAWQ,EAAAA,eAAe,CAAE,UAAWN,EAAM,UAAW,EACxD,IAAAC,EAEA,iCAACM,EAAAA,QAAQ,CAAA,MAAAV,EAAc,iBAAAE,EAAoC,UAAU,uBAClE,SAAAH,CACH,CAAA,CAAA,CAAA,EAEJ,CAEJ,CAEa,MAAAY,EAAgBC,kBAAgBd,CAAc,EAE3Da,EAAc,YAAc,gBAI5B,SAASE,EACP,CAAE,SAAAd,EAAU,GAAGI,CAAA,EACfC,EACA,CACA,KAAM,CAAE,SAAAU,CAAA,EAAaC,EAAA,WAAWnB,CAAqB,EAC/CoB,EAAY,OAAOjB,GAAa,SAAWA,EAAW,OACtD,CAAE,aAAAkB,EAAc,IAAAC,CAAI,EAAIC,YAAU,EAGtC,OAAAZ,EAAA,kBAAA,IAACa,EAAA,IAAA,CACC,IAAAhB,EACA,UAAAY,EACC,GAAGb,EACJ,UAAWkB,EAAmB,mBAAAlB,EAAM,UAAW,CAACmB,EAAWC,IAClDL,EAAI,CAAE,GAAGK,EAAa,WAAYA,EAAY,WAAY,UAAAD,EAAW,CAC7E,EAEA,SAAC,CAAA,CAAE,eAAAE,EAAgB,WAAAC,KAEfC,yBAAAC,EAAAA,kBAAAA,SAAA,CAAA,SAAA,CAAA5B,EACAyB,GAAkB,CAACC,GAAc,CAACtB,EAAM,YACvCI,EAAA,kBAAA,IAACqB,EAAA,WAAA,CACC,UAAWX,EAAa,EACxB,QAAS,IAAM,CACP,MAAAY,MAAmB,IACrB1B,EAAM,KAAO,QAAwB0B,EAAA,IAAI1B,EAAM,EAAE,EACrDW,GAAA,MAAAA,EAAWe,EACb,EAEA,SAAAtB,EAAAA,kBAAAA,IAACuB,EAAAA,QAAQ,CAAA,KAAK,OAAQ,CAAA,CAAA,CAAA,CACxB,CAEJ,CAAA,CAAA,CAEJ,CAEJ,CAEa,MAAAC,EAAWnB,kBAAgBC,CAAS,EAEjDkB,EAAS,YAAc"}
1
+ {"version":3,"file":"lyra110.cjs","sources":["../src/components/lists/shared-list-item.tsx"],"sourcesContent":["import { ReactNode } from \"react\";\n\nimport { z } from \"zod\";\n\nimport { iconsSchema, SvgIcon } from \"../svg-icon\";\nimport { Text } from \"../text\";\n\nimport { sharedListItemStyles } from \"./shared-list.styles\";\n\n// Define the schema for the shared list item\nconst sharedListItemSchema = z\n .object({\n label: z.string(),\n description: z.string().optional(),\n iconStart: iconsSchema.optional(),\n iconEnd: iconsSchema.optional(),\n image: z.string().url().optional(),\n customElement: z.any().optional(),\n })\n .transform((data) => {\n // customElement, image and iconStart are mutually exclusive, so we remove the other two if one is present.\n // Priority is customElement > image > iconStart\n if (data.customElement) {\n delete data.image;\n delete data.iconStart;\n } else if (data.image) {\n delete data.iconStart;\n }\n return data;\n });\n\n// Infer the type of the shared list item arguments. We make sure customElement will be typed as ReactNode.\nexport type SharedListItemArgs = z.infer<typeof sharedListItemSchema> & {\n customElement?: ReactNode;\n};\n\ntype SharedListItemRenderPropArg = {\n active: boolean;\n selected: boolean;\n disabled: boolean;\n};\n\nexport type SelectItemRenderPropFn<T> = (arg: T) => SharedListItemArgs;\n\nexport type SharedListItemProps<T extends object> = {\n item: T;\n selectRenderElements: SelectItemRenderPropFn<T>;\n state: SharedListItemRenderPropArg;\n hasSelection?: boolean;\n};\n\n/**\n * Renders a single item in a list\n *\n * @template T - The type of the item.\n * @param {SharedListItemProps<T>} props - The props for the SharedListItem component.\n * @returns {JSX.Element} - The rendered SharedListItem component.\n */\nexport const SharedListItem = <T extends object>({\n hasSelection,\n item,\n selectRenderElements,\n state,\n}: SharedListItemProps<T>) => {\n const { customElement, description, iconEnd, iconStart, image, label } =\n sharedListItemSchema.parse(selectRenderElements(item));\n\n const {\n item: itemStyles,\n itemCheckmark: itemCheckmarkStyles,\n itemCheckmarkWrapper: itemCheckmarkWrapperStyles,\n itemDescription: itemDescriptionStyles,\n itemEndIcon: itemEndIconStyles,\n itemImage: itemImageStyles,\n itemLabel: itemLabelStyles,\n itemStartIcon: itemStartIconStyles,\n } = sharedListItemStyles({\n hasSelection,\n });\n\n return (\n <div className={itemStyles(state)}>\n {hasSelection ? (\n <div className={itemCheckmarkWrapperStyles()}>\n {state.selected ? (\n <SvgIcon name=\"checkmark\" className={itemCheckmarkStyles(state)} />\n ) : (\n <div className=\"h-4 w-4\" />\n )}\n </div>\n ) : null}\n {customElement ? (customElement as ReactNode) : null}\n {image ? <img src={image} alt={label} className={itemImageStyles(state)} /> : null}\n {iconStart ? (\n <div className={itemStartIconStyles(state)}>\n <SvgIcon name={iconStart} />\n </div>\n ) : null}\n <div className=\"flex w-full grow flex-col gap-1 overflow-hidden truncate\">\n <Text slot=\"label\" className={itemLabelStyles(state)}>\n {label}\n </Text>\n {description ? (\n <Text slot=\"description\" className={itemDescriptionStyles(state)}>\n {description}\n </Text>\n ) : null}\n </div>\n {iconEnd ? (\n <div className={itemEndIconStyles(state)}>\n <SvgIcon name={iconEnd} />\n </div>\n ) : null}\n </div>\n );\n};\n"],"names":["sharedListItemSchema","z","iconsSchema","data","SharedListItem","hasSelection","item","selectRenderElements","state","customElement","description","iconEnd","iconStart","image","label","itemStyles","itemCheckmarkStyles","itemCheckmarkWrapperStyles","itemDescriptionStyles","itemEndIconStyles","itemImageStyles","itemLabelStyles","itemStartIconStyles","sharedListItemStyles","jsxs","jsx","SvgIcon","Text"],"mappings":"uPAUMA,EAAuBC,UAC1B,OAAO,CACN,MAAOA,UAAE,OAAO,EAChB,YAAaA,EAAA,QAAE,OAAO,EAAE,SAAS,EACjC,UAAWC,cAAY,SAAS,EAChC,QAASA,cAAY,SAAS,EAC9B,MAAOD,EAAAA,QAAE,OAAS,EAAA,IAAA,EAAM,SAAS,EACjC,cAAeA,EAAAA,QAAE,IAAI,EAAE,SAAS,CAClC,CAAC,EACA,UAAWE,IAGNA,EAAK,eACP,OAAOA,EAAK,MACZ,OAAOA,EAAK,WACHA,EAAK,OACd,OAAOA,EAAK,UAEPA,EACR,EA6BUC,EAAiB,CAAmB,CAC/C,aAAAC,EACA,KAAAC,EACA,qBAAAC,EACA,MAAAC,CACF,IAA8B,CAC5B,KAAM,CAAE,cAAAC,EAAe,YAAAC,EAAa,QAAAC,EAAS,UAAAC,EAAW,MAAAC,EAAO,MAAAC,CAAM,EACnEd,EAAqB,MAAMO,EAAqBD,CAAI,CAAC,EAEjD,CACJ,KAAMS,EACN,cAAeC,EACf,qBAAsBC,EACtB,gBAAiBC,EACjB,YAAaC,EACb,UAAWC,EACX,UAAWC,EACX,cAAeC,GACbC,uBAAqB,CACvB,aAAAlB,CAAA,CACD,EAED,OACGmB,EAAAA,kBAAAA,KAAA,MAAA,CAAI,UAAWT,EAAWP,CAAK,EAC7B,SAAA,CACCH,EAAAoB,EAAA,kBAAA,IAAC,OAAI,UAAWR,EAAA,EACb,SAAMT,EAAA,iCACJkB,EAAQ,QAAA,CAAA,KAAK,YAAY,UAAWV,EAAoBR,CAAK,CAAG,CAAA,0BAEhE,MAAI,CAAA,UAAU,UAAU,CAAA,CAE7B,EACE,KACHC,GAA+C,KAC/CI,EAASY,EAAAA,kBAAAA,IAAA,MAAA,CAAI,IAAKZ,EAAO,IAAKC,EAAO,UAAWM,EAAgBZ,CAAK,CAAA,CAAG,EAAK,KAC7EI,EACCa,EAAA,kBAAA,IAAC,MAAI,CAAA,UAAWH,EAAoBd,CAAK,EACvC,SAAAiB,EAAA,kBAAA,IAACC,EAAQ,QAAA,CAAA,KAAMd,CAAW,CAAA,CAC5B,CAAA,EACE,KACJY,EAAAA,kBAAAA,KAAC,MAAI,CAAA,UAAU,2DACb,SAAA,CAAAC,EAAAA,kBAAAA,IAACE,QAAK,KAAK,QAAQ,UAAWN,EAAgBb,CAAK,EAChD,SACHM,EAAA,EACCJ,EACEe,EAAA,kBAAA,IAAAE,OAAA,CAAK,KAAK,cAAc,UAAWT,EAAsBV,CAAK,EAC5D,SAAAE,CACH,CAAA,EACE,IAAA,EACN,EACCC,EACCc,EAAA,kBAAA,IAAC,MAAI,CAAA,UAAWN,EAAkBX,CAAK,EACrC,SAAAiB,EAAA,kBAAA,IAACC,EAAQ,QAAA,CAAA,KAAMf,CAAS,CAAA,CAC1B,CAAA,EACE,IAAA,EACN,CAEJ"}
package/dist/lyra110.js CHANGED
@@ -1,54 +1,46 @@
1
1
  import { j as e } from "./lyra93.js";
2
- import { createContext as u, useContext as x } from "react";
3
- import { useContextProps as p, TagGroupContext as g, TagGroup as $, TagList as b, Tag as T, composeRenderProps as j } from "./lyra92.js";
4
- import { fixedForwardRef as f } from "./lyra96.js";
5
- import { SpanButton as N } from "./lyra541.js";
6
- import { SvgIcon as v } from "./lyra67.js";
7
- import { tagGroupStyles as G, tagStyles as I } from "./lyra111.js";
8
- const c = u(null);
9
- function y({ children: o, items: a, label: i, renderEmptyState: s, ...t }, r) {
10
- return [t, r] = p(t, r, g), /* @__PURE__ */ e.jsx(c.Provider, { value: { onRemove: t.onRemove }, children: /* @__PURE__ */ e.jsx(
11
- $,
12
- {
13
- ...t,
14
- "aria-label": i,
15
- className: G({ className: t.className }),
16
- ref: r,
17
- children: /* @__PURE__ */ e.jsx(b, { items: a, renderEmptyState: s, className: "flex flex-wrap gap-1", children: o })
18
- }
19
- ) });
20
- }
21
- const S = f(y);
22
- S.displayName = "InputTagGroup";
23
- function C({ children: o, ...a }, i) {
24
- const { onRemove: s } = x(c), t = typeof o == "string" ? o : void 0, { removeButton: r, tag: l } = I();
25
- return /* @__PURE__ */ e.jsx(
26
- T,
27
- {
28
- ref: i,
29
- textValue: t,
30
- ...a,
31
- className: j(a.className, (d, n) => l({ ...n, isDisabled: n.isDisabled, className: d })),
32
- children: ({ allowsRemoving: d, isDisabled: n }) => /* @__PURE__ */ e.jsxs(e.Fragment, { children: [
33
- o,
34
- d && !n && !a.isDisabled && /* @__PURE__ */ e.jsx(
35
- N,
36
- {
37
- className: r(),
38
- onPress: () => {
39
- const m = /* @__PURE__ */ new Set();
40
- a.id !== void 0 && m.add(a.id), s == null || s(m);
41
- },
42
- children: /* @__PURE__ */ e.jsx(v, { name: "clear" })
43
- }
44
- )
45
- ] })
46
- }
47
- );
48
- }
49
- const R = f(C);
50
- R.displayName = "InputTag";
2
+ import l from "./lyra95.js";
3
+ import { iconsSchema as d, SvgIcon as s } from "./lyra67.js";
4
+ import { Text as p } from "./lyra74.js";
5
+ import "./lyra75.js";
6
+ import { sharedListItemStyles as N } from "./lyra109.js";
7
+ const v = l.object({
8
+ label: l.string(),
9
+ description: l.string().optional(),
10
+ iconStart: d.optional(),
11
+ iconEnd: d.optional(),
12
+ image: l.string().url().optional(),
13
+ customElement: l.any().optional()
14
+ }).transform((i) => (i.customElement ? (delete i.image, delete i.iconStart) : i.image && delete i.iconStart, i)), W = ({
15
+ hasSelection: i,
16
+ item: h,
17
+ selectRenderElements: x,
18
+ state: t
19
+ }) => {
20
+ const { customElement: m, description: n, iconEnd: r, iconStart: o, image: c, label: a } = v.parse(x(h)), {
21
+ item: S,
22
+ itemCheckmark: j,
23
+ itemCheckmarkWrapper: u,
24
+ itemDescription: g,
25
+ itemEndIcon: f,
26
+ itemImage: k,
27
+ itemLabel: y,
28
+ itemStartIcon: I
29
+ } = N({
30
+ hasSelection: i
31
+ });
32
+ return /* @__PURE__ */ e.jsxs("div", { className: S(t), children: [
33
+ i ? /* @__PURE__ */ e.jsx("div", { className: u(), children: t.selected ? /* @__PURE__ */ e.jsx(s, { name: "checkmark", className: j(t) }) : /* @__PURE__ */ e.jsx("div", { className: "h-4 w-4" }) }) : null,
34
+ m || null,
35
+ c ? /* @__PURE__ */ e.jsx("img", { src: c, alt: a, className: k(t) }) : null,
36
+ o ? /* @__PURE__ */ e.jsx("div", { className: I(t), children: /* @__PURE__ */ e.jsx(s, { name: o }) }) : null,
37
+ /* @__PURE__ */ e.jsxs("div", { className: "flex w-full grow flex-col gap-1 overflow-hidden truncate", children: [
38
+ /* @__PURE__ */ e.jsx(p, { slot: "label", className: y(t), children: a }),
39
+ n ? /* @__PURE__ */ e.jsx(p, { slot: "description", className: g(t), children: n }) : null
40
+ ] }),
41
+ r ? /* @__PURE__ */ e.jsx("div", { className: f(t), children: /* @__PURE__ */ e.jsx(s, { name: r }) }) : null
42
+ ] });
43
+ };
51
44
  export {
52
- R as InputTag,
53
- S as InputTagGroup
45
+ W as SharedListItem
54
46
  };
@@ -1 +1 @@
1
- {"version":3,"file":"lyra110.js","sources":["../src/components/inputs/input-tag-group/input-tag-group.tsx"],"sourcesContent":["import { createContext, ElementRef, ForwardedRef, useContext } from \"react\";\nimport {\n composeRenderProps,\n Key,\n Tag as AriaTag,\n TagGroup as AriaTagGroup,\n TagGroupContext,\n TagGroupProps as AriaTagGroupProps,\n TagList,\n TagListProps,\n TagProps as AriaTagProps,\n useContextProps,\n} from \"react-aria-components\";\n\nimport { fixedForwardRef } from \"../../../utils/helpers.ts\";\nimport { SpanButton } from \"../../button/span-button.tsx\";\nimport { SvgIcon } from \"../../svg-icon/index.tsx\";\n\nimport { tagGroupStyles, tagStyles } from \"./input-tag-group.styles.ts\";\n\nexport interface InputTagGroupProps<T>\n extends Omit<AriaTagGroupProps, \"children\">,\n Pick<TagListProps<T>, \"items\" | \"children\" | \"renderEmptyState\"> {\n label: string;\n}\n\nconst SharedTagGroupContext = createContext<Pick<InputTagGroupProps<any>, \"onRemove\">>(null as any);\n\nfunction _InputTagGroup<T extends object>(\n { children, items, label, renderEmptyState, ...props }: InputTagGroupProps<T>,\n ref: ForwardedRef<ElementRef<typeof AriaTagGroup>>,\n) {\n [props, ref] = useContextProps(props, ref, TagGroupContext);\n return (\n <SharedTagGroupContext.Provider value={{ onRemove: props.onRemove }}>\n <AriaTagGroup\n {...props}\n aria-label={label}\n className={tagGroupStyles({ className: props.className })}\n ref={ref}\n >\n <TagList items={items} renderEmptyState={renderEmptyState} className=\"flex flex-wrap gap-1\">\n {children}\n </TagList>\n </AriaTagGroup>\n </SharedTagGroupContext.Provider>\n );\n}\n\nexport const InputTagGroup = fixedForwardRef(_InputTagGroup);\n// @ts-ignore\nInputTagGroup.displayName = \"InputTagGroup\";\n\nexport type InputTagProps = AriaTagProps & { isDisabled?: boolean };\n\nfunction _InputTag(\n { children, ...props }: InputTagProps,\n ref: ForwardedRef<ElementRef<typeof AriaTag>>,\n) {\n const { onRemove } = useContext(SharedTagGroupContext);\n const textValue = typeof children === \"string\" ? children : undefined;\n const { removeButton, tag } = tagStyles();\n\n return (\n <AriaTag\n ref={ref}\n textValue={textValue}\n {...props}\n className={composeRenderProps(props.className, (className, renderProps) => {\n return tag({ ...renderProps, isDisabled: renderProps.isDisabled, className });\n })}\n >\n {({ allowsRemoving, isDisabled }) => (\n <>\n {children}\n {allowsRemoving && !isDisabled && !props.isDisabled && (\n <SpanButton\n className={removeButton()}\n onPress={() => {\n const keysToRemove = new Set<Key>();\n if (props.id !== undefined) keysToRemove.add(props.id);\n onRemove?.(keysToRemove);\n }}\n >\n <SvgIcon name=\"clear\" />\n </SpanButton>\n )}\n </>\n )}\n </AriaTag>\n );\n}\n\nexport const InputTag = fixedForwardRef(_InputTag);\n// @ts-ignore\nInputTag.displayName = \"InputTag\";\n"],"names":["SharedTagGroupContext","createContext","_InputTagGroup","children","items","label","renderEmptyState","props","ref","useContextProps","TagGroupContext","jsx","AriaTagGroup","tagGroupStyles","TagList","InputTagGroup","fixedForwardRef","_InputTag","onRemove","useContext","textValue","removeButton","tag","tagStyles","AriaTag","composeRenderProps","className","renderProps","allowsRemoving","isDisabled","jsxs","Fragment","SpanButton","keysToRemove","SvgIcon","InputTag"],"mappings":";;;;;;;AA0BA,MAAMA,IAAwBC,EAAyD,IAAW;AAElG,SAASC,EACP,EAAE,UAAAC,GAAU,OAAAC,GAAO,OAAAC,GAAO,kBAAAC,GAAkB,GAAGC,EAAM,GACrDC,GACA;AACA,UAACD,GAAOC,CAAG,IAAIC,EAAgBF,GAAOC,GAAKE,CAAe,GAExDC,gBAAAA,MAACX,EAAsB,UAAtB,EAA+B,OAAO,EAAE,UAAUO,EAAM,YACvD,UAAAI,gBAAAA,EAAA;AAAA,IAACC;AAAAA,IAAA;AAAA,MACE,GAAGL;AAAA,MACJ,cAAYF;AAAA,MACZ,WAAWQ,EAAe,EAAE,WAAWN,EAAM,WAAW;AAAA,MACxD,KAAAC;AAAA,MAEA,gCAACM,GAAQ,EAAA,OAAAV,GAAc,kBAAAE,GAAoC,WAAU,wBAClE,UAAAH,EACH,CAAA;AAAA,IAAA;AAAA,EAAA,GAEJ;AAEJ;AAEa,MAAAY,IAAgBC,EAAgBd,CAAc;AAE3Da,EAAc,cAAc;AAI5B,SAASE,EACP,EAAE,UAAAd,GAAU,GAAGI,EAAA,GACfC,GACA;AACA,QAAM,EAAE,UAAAU,EAAA,IAAaC,EAAWnB,CAAqB,GAC/CoB,IAAY,OAAOjB,KAAa,WAAWA,IAAW,QACtD,EAAE,cAAAkB,GAAc,KAAAC,EAAI,IAAIC,EAAU;AAGtC,SAAAZ,gBAAAA,EAAA;AAAA,IAACa;AAAAA,IAAA;AAAA,MACC,KAAAhB;AAAA,MACA,WAAAY;AAAA,MACC,GAAGb;AAAA,MACJ,WAAWkB,EAAmBlB,EAAM,WAAW,CAACmB,GAAWC,MAClDL,EAAI,EAAE,GAAGK,GAAa,YAAYA,EAAY,YAAY,WAAAD,GAAW,CAC7E;AAAA,MAEA,UAAC,CAAA,EAAE,gBAAAE,GAAgB,YAAAC,QAEfC,gBAAAA,OAAAC,EAAAA,UAAA,EAAA,UAAA;AAAA,QAAA5B;AAAA,QACAyB,KAAkB,CAACC,KAAc,CAACtB,EAAM,cACvCI,gBAAAA,EAAA;AAAA,UAACqB;AAAA,UAAA;AAAA,YACC,WAAWX,EAAa;AAAA,YACxB,SAAS,MAAM;AACP,oBAAAY,wBAAmB,IAAS;AAClC,cAAI1B,EAAM,OAAO,UAAwB0B,EAAA,IAAI1B,EAAM,EAAE,GACrDW,KAAA,QAAAA,EAAWe;AAAA,YACb;AAAA,YAEA,UAAAtB,gBAAAA,EAAAA,IAACuB,GAAQ,EAAA,MAAK,QAAQ,CAAA;AAAA,UAAA;AAAA,QAAA;AAAA,MACxB,EAEJ,CAAA;AAAA,IAAA;AAAA,EAEJ;AAEJ;AAEa,MAAAC,IAAWnB,EAAgBC,CAAS;AAEjDkB,EAAS,cAAc;"}
1
+ {"version":3,"file":"lyra110.js","sources":["../src/components/lists/shared-list-item.tsx"],"sourcesContent":["import { ReactNode } from \"react\";\n\nimport { z } from \"zod\";\n\nimport { iconsSchema, SvgIcon } from \"../svg-icon\";\nimport { Text } from \"../text\";\n\nimport { sharedListItemStyles } from \"./shared-list.styles\";\n\n// Define the schema for the shared list item\nconst sharedListItemSchema = z\n .object({\n label: z.string(),\n description: z.string().optional(),\n iconStart: iconsSchema.optional(),\n iconEnd: iconsSchema.optional(),\n image: z.string().url().optional(),\n customElement: z.any().optional(),\n })\n .transform((data) => {\n // customElement, image and iconStart are mutually exclusive, so we remove the other two if one is present.\n // Priority is customElement > image > iconStart\n if (data.customElement) {\n delete data.image;\n delete data.iconStart;\n } else if (data.image) {\n delete data.iconStart;\n }\n return data;\n });\n\n// Infer the type of the shared list item arguments. We make sure customElement will be typed as ReactNode.\nexport type SharedListItemArgs = z.infer<typeof sharedListItemSchema> & {\n customElement?: ReactNode;\n};\n\ntype SharedListItemRenderPropArg = {\n active: boolean;\n selected: boolean;\n disabled: boolean;\n};\n\nexport type SelectItemRenderPropFn<T> = (arg: T) => SharedListItemArgs;\n\nexport type SharedListItemProps<T extends object> = {\n item: T;\n selectRenderElements: SelectItemRenderPropFn<T>;\n state: SharedListItemRenderPropArg;\n hasSelection?: boolean;\n};\n\n/**\n * Renders a single item in a list\n *\n * @template T - The type of the item.\n * @param {SharedListItemProps<T>} props - The props for the SharedListItem component.\n * @returns {JSX.Element} - The rendered SharedListItem component.\n */\nexport const SharedListItem = <T extends object>({\n hasSelection,\n item,\n selectRenderElements,\n state,\n}: SharedListItemProps<T>) => {\n const { customElement, description, iconEnd, iconStart, image, label } =\n sharedListItemSchema.parse(selectRenderElements(item));\n\n const {\n item: itemStyles,\n itemCheckmark: itemCheckmarkStyles,\n itemCheckmarkWrapper: itemCheckmarkWrapperStyles,\n itemDescription: itemDescriptionStyles,\n itemEndIcon: itemEndIconStyles,\n itemImage: itemImageStyles,\n itemLabel: itemLabelStyles,\n itemStartIcon: itemStartIconStyles,\n } = sharedListItemStyles({\n hasSelection,\n });\n\n return (\n <div className={itemStyles(state)}>\n {hasSelection ? (\n <div className={itemCheckmarkWrapperStyles()}>\n {state.selected ? (\n <SvgIcon name=\"checkmark\" className={itemCheckmarkStyles(state)} />\n ) : (\n <div className=\"h-4 w-4\" />\n )}\n </div>\n ) : null}\n {customElement ? (customElement as ReactNode) : null}\n {image ? <img src={image} alt={label} className={itemImageStyles(state)} /> : null}\n {iconStart ? (\n <div className={itemStartIconStyles(state)}>\n <SvgIcon name={iconStart} />\n </div>\n ) : null}\n <div className=\"flex w-full grow flex-col gap-1 overflow-hidden truncate\">\n <Text slot=\"label\" className={itemLabelStyles(state)}>\n {label}\n </Text>\n {description ? (\n <Text slot=\"description\" className={itemDescriptionStyles(state)}>\n {description}\n </Text>\n ) : null}\n </div>\n {iconEnd ? (\n <div className={itemEndIconStyles(state)}>\n <SvgIcon name={iconEnd} />\n </div>\n ) : null}\n </div>\n );\n};\n"],"names":["sharedListItemSchema","z","iconsSchema","data","SharedListItem","hasSelection","item","selectRenderElements","state","customElement","description","iconEnd","iconStart","image","label","itemStyles","itemCheckmarkStyles","itemCheckmarkWrapperStyles","itemDescriptionStyles","itemEndIconStyles","itemImageStyles","itemLabelStyles","itemStartIconStyles","sharedListItemStyles","jsxs","jsx","SvgIcon","Text"],"mappings":";;;;;;AAUA,MAAMA,IAAuBC,EAC1B,OAAO;AAAA,EACN,OAAOA,EAAE,OAAO;AAAA,EAChB,aAAaA,EAAE,OAAO,EAAE,SAAS;AAAA,EACjC,WAAWC,EAAY,SAAS;AAAA,EAChC,SAASA,EAAY,SAAS;AAAA,EAC9B,OAAOD,EAAE,OAAS,EAAA,IAAA,EAAM,SAAS;AAAA,EACjC,eAAeA,EAAE,IAAI,EAAE,SAAS;AAClC,CAAC,EACA,UAAU,CAACE,OAGNA,EAAK,iBACP,OAAOA,EAAK,OACZ,OAAOA,EAAK,aACHA,EAAK,SACd,OAAOA,EAAK,WAEPA,EACR,GA6BUC,IAAiB,CAAmB;AAAA,EAC/C,cAAAC;AAAA,EACA,MAAAC;AAAA,EACA,sBAAAC;AAAA,EACA,OAAAC;AACF,MAA8B;AAC5B,QAAM,EAAE,eAAAC,GAAe,aAAAC,GAAa,SAAAC,GAAS,WAAAC,GAAW,OAAAC,GAAO,OAAAC,EAAM,IACnEd,EAAqB,MAAMO,EAAqBD,CAAI,CAAC,GAEjD;AAAA,IACJ,MAAMS;AAAA,IACN,eAAeC;AAAA,IACf,sBAAsBC;AAAA,IACtB,iBAAiBC;AAAA,IACjB,aAAaC;AAAA,IACb,WAAWC;AAAA,IACX,WAAWC;AAAA,IACX,eAAeC;AAAA,MACbC,EAAqB;AAAA,IACvB,cAAAlB;AAAA,EAAA,CACD;AAED,SACGmB,gBAAAA,EAAAA,KAAA,OAAA,EAAI,WAAWT,EAAWP,CAAK,GAC7B,UAAA;AAAA,IACCH,IAAAoB,gBAAAA,EAAA,IAAC,SAAI,WAAWR,EAAA,GACb,UAAMT,EAAA,iCACJkB,GAAQ,EAAA,MAAK,aAAY,WAAWV,EAAoBR,CAAK,EAAG,CAAA,0BAEhE,OAAI,EAAA,WAAU,WAAU,EAAA,CAE7B,IACE;AAAA,IACHC,KAA+C;AAAA,IAC/CI,IAASY,gBAAAA,EAAAA,IAAA,OAAA,EAAI,KAAKZ,GAAO,KAAKC,GAAO,WAAWM,EAAgBZ,CAAK,EAAA,CAAG,IAAK;AAAA,IAC7EI,IACCa,gBAAAA,EAAA,IAAC,OAAI,EAAA,WAAWH,EAAoBd,CAAK,GACvC,UAAAiB,gBAAAA,EAAA,IAACC,GAAQ,EAAA,MAAMd,EAAW,CAAA,EAC5B,CAAA,IACE;AAAA,IACJY,gBAAAA,EAAAA,KAAC,OAAI,EAAA,WAAU,4DACb,UAAA;AAAA,MAAAC,gBAAAA,EAAAA,IAACE,KAAK,MAAK,SAAQ,WAAWN,EAAgBb,CAAK,GAChD,UACHM,GAAA;AAAA,MACCJ,IACEe,gBAAAA,EAAA,IAAAE,GAAA,EAAK,MAAK,eAAc,WAAWT,EAAsBV,CAAK,GAC5D,UAAAE,EACH,CAAA,IACE;AAAA,IAAA,GACN;AAAA,IACCC,IACCc,gBAAAA,EAAA,IAAC,OAAI,EAAA,WAAWN,EAAkBX,CAAK,GACrC,UAAAiB,gBAAAA,EAAA,IAACC,GAAQ,EAAA,MAAMf,EAAS,CAAA,EAC1B,CAAA,IACE;AAAA,EAAA,GACN;AAEJ;"}
package/dist/lyra111.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./lyra103.cjs"),t=e.tv({base:"flex flex-wrap gap-1"}),o=e.tv({slots:{tag:["transition","cursor-default","text-base","rounded-sm","py-1","pe-1","ps-1.5","flex","items-center","gap-1","ring-default","border","border-default","outline-none","solid","bg-transparent","[&:hover&:not(:active)]:bg-overlay-subtle","active:bg-overlay-medium","focus-visible:shadow-highlight","focus-visible:border-focus","select-none","break-all"],removeButton:["cursor-default","text-secondary","outline-none"]},variants:{allowsRemoving:{true:{}},isDisabled:{true:{tag:["bg-overlay-subtle","text-secondary","cursor-not-allowed","border-transparent"]}}},compoundVariants:[{allowsRemoving:!0,isDisabled:!1,className:{tag:"pe-1"}}]});exports.tagGroupStyles=t;exports.tagStyles=o;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./lyra93.cjs"),l=require("react"),n=require("./lyra92.cjs"),m=require("./lyra96.cjs"),R=require("./lyra542.cjs"),f=require("./lyra67.cjs"),d=require("./lyra112.cjs"),g=l.createContext(null);function v({children:a,items:t,label:i,renderEmptyState:o,...s},r){return[s,r]=n.useContextProps(s,r,n.TagGroupContext),e.jsxRuntimeExports.jsx(g.Provider,{value:{onRemove:s.onRemove},children:e.jsxRuntimeExports.jsx(n.TagGroup,{...s,"aria-label":i,className:d.tagGroupStyles({className:s.className}),ref:r,children:e.jsxRuntimeExports.jsx(n.TagList,{items:t,renderEmptyState:o,className:"flex flex-wrap gap-1",children:a})})})}const p=m.fixedForwardRef(v);p.displayName="InputTagGroup";function y({children:a,...t},i){const{onRemove:o}=l.useContext(g),s=typeof a=="string"?a:void 0,{removeButton:r,tag:T}=d.tagStyles();return e.jsxRuntimeExports.jsx(n.Tag,{ref:i,textValue:s,...t,className:n.composeRenderProps(t.className,(x,u)=>T({...u,isDisabled:u.isDisabled,className:x})),children:({allowsRemoving:x,isDisabled:u})=>e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[a,x&&!u&&!t.isDisabled&&e.jsxRuntimeExports.jsx(R.SpanButton,{className:r(),onPress:()=>{const c=new Set;t.id!==void 0&&c.add(t.id),o==null||o(c)},children:e.jsxRuntimeExports.jsx(f.SvgIcon,{name:"clear"})})]})})}const j=m.fixedForwardRef(y);j.displayName="InputTag";exports.InputTag=j;exports.InputTagGroup=p;
@@ -1 +1 @@
1
- {"version":3,"file":"lyra111.cjs","sources":["../src/components/inputs/input-tag-group/input-tag-group.styles.ts"],"sourcesContent":["import { tv } from \"tailwind-variants\";\n\nexport const tagGroupStyles = tv({\n base: \"flex flex-wrap gap-1\",\n});\n\nexport const tagStyles = tv({\n slots: {\n tag: [\n \"transition\",\n \"cursor-default\",\n \"text-base\",\n \"rounded-sm\",\n \"py-1\",\n \"pe-1\",\n \"ps-1.5\",\n \"flex\",\n \"items-center\",\n \"gap-1\",\n \"ring-default\",\n \"border\",\n \"border-default\",\n \"outline-none\",\n \"solid\",\n \"bg-transparent\",\n \"[&:hover&:not(:active)]:bg-overlay-subtle\",\n \"active:bg-overlay-medium\",\n \"focus-visible:shadow-highlight\",\n \"focus-visible:border-focus\",\n \"select-none\",\n \"break-all\",\n ],\n removeButton: [\"cursor-default\", \"text-secondary\", \"outline-none\"],\n },\n variants: {\n allowsRemoving: {\n true: {},\n },\n isDisabled: {\n true: {\n tag: [\"bg-overlay-subtle\", \"text-secondary\", \"cursor-not-allowed\", \"border-transparent\"],\n },\n },\n },\n compoundVariants: [\n {\n allowsRemoving: true,\n isDisabled: false,\n className: {\n tag: \"pe-1\",\n },\n },\n ],\n});\n"],"names":["tagGroupStyles","tv","tagStyles"],"mappings":"iHAEaA,EAAiBC,EAAAA,GAAG,CAC/B,KAAM,sBACR,CAAC,EAEYC,EAAYD,EAAAA,GAAG,CAC1B,MAAO,CACL,IAAK,CACH,aACA,iBACA,YACA,aACA,OACA,OACA,SACA,OACA,eACA,QACA,eACA,SACA,iBACA,eACA,QACA,iBACA,4CACA,2BACA,iCACA,6BACA,cACA,WACF,EACA,aAAc,CAAC,iBAAkB,iBAAkB,cAAc,CACnE,EACA,SAAU,CACR,eAAgB,CACd,KAAM,CAAA,CACR,EACA,WAAY,CACV,KAAM,CACJ,IAAK,CAAC,oBAAqB,iBAAkB,qBAAsB,oBAAoB,CAAA,CACzF,CAEJ,EACA,iBAAkB,CAChB,CACE,eAAgB,GAChB,WAAY,GACZ,UAAW,CACT,IAAK,MAAA,CACP,CACF,CAEJ,CAAC"}
1
+ {"version":3,"file":"lyra111.cjs","sources":["../src/components/inputs/input-tag-group/input-tag-group.tsx"],"sourcesContent":["import { createContext, ElementRef, ForwardedRef, useContext } from \"react\";\nimport {\n composeRenderProps,\n Key,\n Tag as AriaTag,\n TagGroup as AriaTagGroup,\n TagGroupContext,\n TagGroupProps as AriaTagGroupProps,\n TagList,\n TagListProps,\n TagProps as AriaTagProps,\n useContextProps,\n} from \"react-aria-components\";\n\nimport { fixedForwardRef } from \"../../../utils/helpers.ts\";\nimport { SpanButton } from \"../../button/span-button.tsx\";\nimport { SvgIcon } from \"../../svg-icon/index.tsx\";\n\nimport { tagGroupStyles, tagStyles } from \"./input-tag-group.styles.ts\";\n\nexport interface InputTagGroupProps<T>\n extends Omit<AriaTagGroupProps, \"children\">,\n Pick<TagListProps<T>, \"items\" | \"children\" | \"renderEmptyState\"> {\n label: string;\n}\n\nconst SharedTagGroupContext = createContext<Pick<InputTagGroupProps<any>, \"onRemove\">>(null as any);\n\nfunction _InputTagGroup<T extends object>(\n { children, items, label, renderEmptyState, ...props }: InputTagGroupProps<T>,\n ref: ForwardedRef<ElementRef<typeof AriaTagGroup>>,\n) {\n [props, ref] = useContextProps(props, ref, TagGroupContext);\n return (\n <SharedTagGroupContext.Provider value={{ onRemove: props.onRemove }}>\n <AriaTagGroup\n {...props}\n aria-label={label}\n className={tagGroupStyles({ className: props.className })}\n ref={ref}\n >\n <TagList items={items} renderEmptyState={renderEmptyState} className=\"flex flex-wrap gap-1\">\n {children}\n </TagList>\n </AriaTagGroup>\n </SharedTagGroupContext.Provider>\n );\n}\n\nexport const InputTagGroup = fixedForwardRef(_InputTagGroup);\n// @ts-ignore\nInputTagGroup.displayName = \"InputTagGroup\";\n\nexport type InputTagProps = AriaTagProps & { isDisabled?: boolean };\n\nfunction _InputTag(\n { children, ...props }: InputTagProps,\n ref: ForwardedRef<ElementRef<typeof AriaTag>>,\n) {\n const { onRemove } = useContext(SharedTagGroupContext);\n const textValue = typeof children === \"string\" ? children : undefined;\n const { removeButton, tag } = tagStyles();\n\n return (\n <AriaTag\n ref={ref}\n textValue={textValue}\n {...props}\n className={composeRenderProps(props.className, (className, renderProps) => {\n return tag({ ...renderProps, isDisabled: renderProps.isDisabled, className });\n })}\n >\n {({ allowsRemoving, isDisabled }) => (\n <>\n {children}\n {allowsRemoving && !isDisabled && !props.isDisabled && (\n <SpanButton\n className={removeButton()}\n onPress={() => {\n const keysToRemove = new Set<Key>();\n if (props.id !== undefined) keysToRemove.add(props.id);\n onRemove?.(keysToRemove);\n }}\n >\n <SvgIcon name=\"clear\" />\n </SpanButton>\n )}\n </>\n )}\n </AriaTag>\n );\n}\n\nexport const InputTag = fixedForwardRef(_InputTag);\n// @ts-ignore\nInputTag.displayName = \"InputTag\";\n"],"names":["SharedTagGroupContext","createContext","_InputTagGroup","children","items","label","renderEmptyState","props","ref","useContextProps","TagGroupContext","jsx","AriaTagGroup","tagGroupStyles","TagList","InputTagGroup","fixedForwardRef","_InputTag","onRemove","useContext","textValue","removeButton","tag","tagStyles","AriaTag","composeRenderProps","className","renderProps","allowsRemoving","isDisabled","jsxs","Fragment","SpanButton","keysToRemove","SvgIcon","InputTag"],"mappings":"uQA0BMA,EAAwBC,gBAAyD,IAAW,EAElG,SAASC,EACP,CAAE,SAAAC,EAAU,MAAAC,EAAO,MAAAC,EAAO,iBAAAC,EAAkB,GAAGC,CAAM,EACrDC,EACA,CACA,OAACD,EAAOC,CAAG,EAAIC,EAAgB,gBAAAF,EAAOC,EAAKE,iBAAe,EAExDC,wBAACX,EAAsB,SAAtB,CAA+B,MAAO,CAAE,SAAUO,EAAM,UACvD,SAAAI,EAAA,kBAAA,IAACC,EAAA,SAAA,CACE,GAAGL,EACJ,aAAYF,EACZ,UAAWQ,EAAAA,eAAe,CAAE,UAAWN,EAAM,UAAW,EACxD,IAAAC,EAEA,iCAACM,EAAAA,QAAQ,CAAA,MAAAV,EAAc,iBAAAE,EAAoC,UAAU,uBAClE,SAAAH,CACH,CAAA,CAAA,CAAA,EAEJ,CAEJ,CAEa,MAAAY,EAAgBC,kBAAgBd,CAAc,EAE3Da,EAAc,YAAc,gBAI5B,SAASE,EACP,CAAE,SAAAd,EAAU,GAAGI,CAAA,EACfC,EACA,CACA,KAAM,CAAE,SAAAU,CAAA,EAAaC,EAAA,WAAWnB,CAAqB,EAC/CoB,EAAY,OAAOjB,GAAa,SAAWA,EAAW,OACtD,CAAE,aAAAkB,EAAc,IAAAC,CAAI,EAAIC,YAAU,EAGtC,OAAAZ,EAAA,kBAAA,IAACa,EAAA,IAAA,CACC,IAAAhB,EACA,UAAAY,EACC,GAAGb,EACJ,UAAWkB,EAAmB,mBAAAlB,EAAM,UAAW,CAACmB,EAAWC,IAClDL,EAAI,CAAE,GAAGK,EAAa,WAAYA,EAAY,WAAY,UAAAD,EAAW,CAC7E,EAEA,SAAC,CAAA,CAAE,eAAAE,EAAgB,WAAAC,KAEfC,yBAAAC,EAAAA,kBAAAA,SAAA,CAAA,SAAA,CAAA5B,EACAyB,GAAkB,CAACC,GAAc,CAACtB,EAAM,YACvCI,EAAA,kBAAA,IAACqB,EAAA,WAAA,CACC,UAAWX,EAAa,EACxB,QAAS,IAAM,CACP,MAAAY,MAAmB,IACrB1B,EAAM,KAAO,QAAwB0B,EAAA,IAAI1B,EAAM,EAAE,EACrDW,GAAA,MAAAA,EAAWe,EACb,EAEA,SAAAtB,EAAAA,kBAAAA,IAACuB,EAAAA,QAAQ,CAAA,KAAK,OAAQ,CAAA,CAAA,CAAA,CACxB,CAEJ,CAAA,CAAA,CAEJ,CAEJ,CAEa,MAAAC,EAAWnB,kBAAgBC,CAAS,EAEjDkB,EAAS,YAAc"}
package/dist/lyra111.js CHANGED
@@ -1,55 +1,54 @@
1
- import { tv as e } from "./lyra103.js";
2
- const o = e({
3
- base: "flex flex-wrap gap-1"
4
- }), a = e({
5
- slots: {
6
- tag: [
7
- "transition",
8
- "cursor-default",
9
- "text-base",
10
- "rounded-sm",
11
- "py-1",
12
- "pe-1",
13
- "ps-1.5",
14
- "flex",
15
- "items-center",
16
- "gap-1",
17
- "ring-default",
18
- "border",
19
- "border-default",
20
- "outline-none",
21
- "solid",
22
- "bg-transparent",
23
- "[&:hover&:not(:active)]:bg-overlay-subtle",
24
- "active:bg-overlay-medium",
25
- "focus-visible:shadow-highlight",
26
- "focus-visible:border-focus",
27
- "select-none",
28
- "break-all"
29
- ],
30
- removeButton: ["cursor-default", "text-secondary", "outline-none"]
31
- },
32
- variants: {
33
- allowsRemoving: {
34
- true: {}
35
- },
36
- isDisabled: {
37
- true: {
38
- tag: ["bg-overlay-subtle", "text-secondary", "cursor-not-allowed", "border-transparent"]
39
- }
1
+ import { j as e } from "./lyra93.js";
2
+ import { createContext as u, useContext as x } from "react";
3
+ import { useContextProps as p, TagGroupContext as g, TagGroup as $, TagList as b, Tag as T, composeRenderProps as j } from "./lyra92.js";
4
+ import { fixedForwardRef as f } from "./lyra96.js";
5
+ import { SpanButton as N } from "./lyra542.js";
6
+ import { SvgIcon as v } from "./lyra67.js";
7
+ import { tagGroupStyles as G, tagStyles as I } from "./lyra112.js";
8
+ const c = u(null);
9
+ function y({ children: o, items: a, label: i, renderEmptyState: s, ...t }, r) {
10
+ return [t, r] = p(t, r, g), /* @__PURE__ */ e.jsx(c.Provider, { value: { onRemove: t.onRemove }, children: /* @__PURE__ */ e.jsx(
11
+ $,
12
+ {
13
+ ...t,
14
+ "aria-label": i,
15
+ className: G({ className: t.className }),
16
+ ref: r,
17
+ children: /* @__PURE__ */ e.jsx(b, { items: a, renderEmptyState: s, className: "flex flex-wrap gap-1", children: o })
40
18
  }
41
- },
42
- compoundVariants: [
19
+ ) });
20
+ }
21
+ const S = f(y);
22
+ S.displayName = "InputTagGroup";
23
+ function C({ children: o, ...a }, i) {
24
+ const { onRemove: s } = x(c), t = typeof o == "string" ? o : void 0, { removeButton: r, tag: l } = I();
25
+ return /* @__PURE__ */ e.jsx(
26
+ T,
43
27
  {
44
- allowsRemoving: !0,
45
- isDisabled: !1,
46
- className: {
47
- tag: "pe-1"
48
- }
28
+ ref: i,
29
+ textValue: t,
30
+ ...a,
31
+ className: j(a.className, (d, n) => l({ ...n, isDisabled: n.isDisabled, className: d })),
32
+ children: ({ allowsRemoving: d, isDisabled: n }) => /* @__PURE__ */ e.jsxs(e.Fragment, { children: [
33
+ o,
34
+ d && !n && !a.isDisabled && /* @__PURE__ */ e.jsx(
35
+ N,
36
+ {
37
+ className: r(),
38
+ onPress: () => {
39
+ const m = /* @__PURE__ */ new Set();
40
+ a.id !== void 0 && m.add(a.id), s == null || s(m);
41
+ },
42
+ children: /* @__PURE__ */ e.jsx(v, { name: "clear" })
43
+ }
44
+ )
45
+ ] })
49
46
  }
50
- ]
51
- });
47
+ );
48
+ }
49
+ const R = f(C);
50
+ R.displayName = "InputTag";
52
51
  export {
53
- o as tagGroupStyles,
54
- a as tagStyles
52
+ R as InputTag,
53
+ S as InputTagGroup
55
54
  };
@@ -1 +1 @@
1
- {"version":3,"file":"lyra111.js","sources":["../src/components/inputs/input-tag-group/input-tag-group.styles.ts"],"sourcesContent":["import { tv } from \"tailwind-variants\";\n\nexport const tagGroupStyles = tv({\n base: \"flex flex-wrap gap-1\",\n});\n\nexport const tagStyles = tv({\n slots: {\n tag: [\n \"transition\",\n \"cursor-default\",\n \"text-base\",\n \"rounded-sm\",\n \"py-1\",\n \"pe-1\",\n \"ps-1.5\",\n \"flex\",\n \"items-center\",\n \"gap-1\",\n \"ring-default\",\n \"border\",\n \"border-default\",\n \"outline-none\",\n \"solid\",\n \"bg-transparent\",\n \"[&:hover&:not(:active)]:bg-overlay-subtle\",\n \"active:bg-overlay-medium\",\n \"focus-visible:shadow-highlight\",\n \"focus-visible:border-focus\",\n \"select-none\",\n \"break-all\",\n ],\n removeButton: [\"cursor-default\", \"text-secondary\", \"outline-none\"],\n },\n variants: {\n allowsRemoving: {\n true: {},\n },\n isDisabled: {\n true: {\n tag: [\"bg-overlay-subtle\", \"text-secondary\", \"cursor-not-allowed\", \"border-transparent\"],\n },\n },\n },\n compoundVariants: [\n {\n allowsRemoving: true,\n isDisabled: false,\n className: {\n tag: \"pe-1\",\n },\n },\n ],\n});\n"],"names":["tagGroupStyles","tv","tagStyles"],"mappings":";AAEO,MAAMA,IAAiBC,EAAG;AAAA,EAC/B,MAAM;AACR,CAAC,GAEYC,IAAYD,EAAG;AAAA,EAC1B,OAAO;AAAA,IACL,KAAK;AAAA,MACH;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,IACA,cAAc,CAAC,kBAAkB,kBAAkB,cAAc;AAAA,EACnE;AAAA,EACA,UAAU;AAAA,IACR,gBAAgB;AAAA,MACd,MAAM,CAAA;AAAA,IACR;AAAA,IACA,YAAY;AAAA,MACV,MAAM;AAAA,QACJ,KAAK,CAAC,qBAAqB,kBAAkB,sBAAsB,oBAAoB;AAAA,MAAA;AAAA,IACzF;AAAA,EAEJ;AAAA,EACA,kBAAkB;AAAA,IAChB;AAAA,MACE,gBAAgB;AAAA,MAChB,YAAY;AAAA,MACZ,WAAW;AAAA,QACT,KAAK;AAAA,MAAA;AAAA,IACP;AAAA,EACF;AAEJ,CAAC;"}
1
+ {"version":3,"file":"lyra111.js","sources":["../src/components/inputs/input-tag-group/input-tag-group.tsx"],"sourcesContent":["import { createContext, ElementRef, ForwardedRef, useContext } from \"react\";\nimport {\n composeRenderProps,\n Key,\n Tag as AriaTag,\n TagGroup as AriaTagGroup,\n TagGroupContext,\n TagGroupProps as AriaTagGroupProps,\n TagList,\n TagListProps,\n TagProps as AriaTagProps,\n useContextProps,\n} from \"react-aria-components\";\n\nimport { fixedForwardRef } from \"../../../utils/helpers.ts\";\nimport { SpanButton } from \"../../button/span-button.tsx\";\nimport { SvgIcon } from \"../../svg-icon/index.tsx\";\n\nimport { tagGroupStyles, tagStyles } from \"./input-tag-group.styles.ts\";\n\nexport interface InputTagGroupProps<T>\n extends Omit<AriaTagGroupProps, \"children\">,\n Pick<TagListProps<T>, \"items\" | \"children\" | \"renderEmptyState\"> {\n label: string;\n}\n\nconst SharedTagGroupContext = createContext<Pick<InputTagGroupProps<any>, \"onRemove\">>(null as any);\n\nfunction _InputTagGroup<T extends object>(\n { children, items, label, renderEmptyState, ...props }: InputTagGroupProps<T>,\n ref: ForwardedRef<ElementRef<typeof AriaTagGroup>>,\n) {\n [props, ref] = useContextProps(props, ref, TagGroupContext);\n return (\n <SharedTagGroupContext.Provider value={{ onRemove: props.onRemove }}>\n <AriaTagGroup\n {...props}\n aria-label={label}\n className={tagGroupStyles({ className: props.className })}\n ref={ref}\n >\n <TagList items={items} renderEmptyState={renderEmptyState} className=\"flex flex-wrap gap-1\">\n {children}\n </TagList>\n </AriaTagGroup>\n </SharedTagGroupContext.Provider>\n );\n}\n\nexport const InputTagGroup = fixedForwardRef(_InputTagGroup);\n// @ts-ignore\nInputTagGroup.displayName = \"InputTagGroup\";\n\nexport type InputTagProps = AriaTagProps & { isDisabled?: boolean };\n\nfunction _InputTag(\n { children, ...props }: InputTagProps,\n ref: ForwardedRef<ElementRef<typeof AriaTag>>,\n) {\n const { onRemove } = useContext(SharedTagGroupContext);\n const textValue = typeof children === \"string\" ? children : undefined;\n const { removeButton, tag } = tagStyles();\n\n return (\n <AriaTag\n ref={ref}\n textValue={textValue}\n {...props}\n className={composeRenderProps(props.className, (className, renderProps) => {\n return tag({ ...renderProps, isDisabled: renderProps.isDisabled, className });\n })}\n >\n {({ allowsRemoving, isDisabled }) => (\n <>\n {children}\n {allowsRemoving && !isDisabled && !props.isDisabled && (\n <SpanButton\n className={removeButton()}\n onPress={() => {\n const keysToRemove = new Set<Key>();\n if (props.id !== undefined) keysToRemove.add(props.id);\n onRemove?.(keysToRemove);\n }}\n >\n <SvgIcon name=\"clear\" />\n </SpanButton>\n )}\n </>\n )}\n </AriaTag>\n );\n}\n\nexport const InputTag = fixedForwardRef(_InputTag);\n// @ts-ignore\nInputTag.displayName = \"InputTag\";\n"],"names":["SharedTagGroupContext","createContext","_InputTagGroup","children","items","label","renderEmptyState","props","ref","useContextProps","TagGroupContext","jsx","AriaTagGroup","tagGroupStyles","TagList","InputTagGroup","fixedForwardRef","_InputTag","onRemove","useContext","textValue","removeButton","tag","tagStyles","AriaTag","composeRenderProps","className","renderProps","allowsRemoving","isDisabled","jsxs","Fragment","SpanButton","keysToRemove","SvgIcon","InputTag"],"mappings":";;;;;;;AA0BA,MAAMA,IAAwBC,EAAyD,IAAW;AAElG,SAASC,EACP,EAAE,UAAAC,GAAU,OAAAC,GAAO,OAAAC,GAAO,kBAAAC,GAAkB,GAAGC,EAAM,GACrDC,GACA;AACA,UAACD,GAAOC,CAAG,IAAIC,EAAgBF,GAAOC,GAAKE,CAAe,GAExDC,gBAAAA,MAACX,EAAsB,UAAtB,EAA+B,OAAO,EAAE,UAAUO,EAAM,YACvD,UAAAI,gBAAAA,EAAA;AAAA,IAACC;AAAAA,IAAA;AAAA,MACE,GAAGL;AAAA,MACJ,cAAYF;AAAA,MACZ,WAAWQ,EAAe,EAAE,WAAWN,EAAM,WAAW;AAAA,MACxD,KAAAC;AAAA,MAEA,gCAACM,GAAQ,EAAA,OAAAV,GAAc,kBAAAE,GAAoC,WAAU,wBAClE,UAAAH,EACH,CAAA;AAAA,IAAA;AAAA,EAAA,GAEJ;AAEJ;AAEa,MAAAY,IAAgBC,EAAgBd,CAAc;AAE3Da,EAAc,cAAc;AAI5B,SAASE,EACP,EAAE,UAAAd,GAAU,GAAGI,EAAA,GACfC,GACA;AACA,QAAM,EAAE,UAAAU,EAAA,IAAaC,EAAWnB,CAAqB,GAC/CoB,IAAY,OAAOjB,KAAa,WAAWA,IAAW,QACtD,EAAE,cAAAkB,GAAc,KAAAC,EAAI,IAAIC,EAAU;AAGtC,SAAAZ,gBAAAA,EAAA;AAAA,IAACa;AAAAA,IAAA;AAAA,MACC,KAAAhB;AAAA,MACA,WAAAY;AAAA,MACC,GAAGb;AAAA,MACJ,WAAWkB,EAAmBlB,EAAM,WAAW,CAACmB,GAAWC,MAClDL,EAAI,EAAE,GAAGK,GAAa,YAAYA,EAAY,YAAY,WAAAD,GAAW,CAC7E;AAAA,MAEA,UAAC,CAAA,EAAE,gBAAAE,GAAgB,YAAAC,QAEfC,gBAAAA,OAAAC,EAAAA,UAAA,EAAA,UAAA;AAAA,QAAA5B;AAAA,QACAyB,KAAkB,CAACC,KAAc,CAACtB,EAAM,cACvCI,gBAAAA,EAAA;AAAA,UAACqB;AAAA,UAAA;AAAA,YACC,WAAWX,EAAa;AAAA,YACxB,SAAS,MAAM;AACP,oBAAAY,wBAAmB,IAAS;AAClC,cAAI1B,EAAM,OAAO,UAAwB0B,EAAA,IAAI1B,EAAM,EAAE,GACrDW,KAAA,QAAAA,EAAWe;AAAA,YACb;AAAA,YAEA,UAAAtB,gBAAAA,EAAAA,IAACuB,GAAQ,EAAA,MAAK,QAAQ,CAAA;AAAA,UAAA;AAAA,QAAA;AAAA,MACxB,EAEJ,CAAA;AAAA,IAAA;AAAA,EAEJ;AAEJ;AAEa,MAAAC,IAAWnB,EAAgBC,CAAS;AAEjDkB,EAAS,cAAc;"}
package/dist/lyra112.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./lyra115.cjs"),r=require("./lyra543.cjs");function o(){const{activatorEvent:e}=t.useDndContext();return r.isKeyboardEvent(e)}exports.useIsKeyboardSorting=o;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./lyra103.cjs"),t=e.tv({base:"flex flex-wrap gap-1"}),o=e.tv({slots:{tag:["transition","cursor-default","text-base","rounded-sm","py-1","pe-1","ps-1.5","flex","items-center","gap-1","ring-default","border","border-default","outline-none","solid","bg-transparent","[&:hover&:not(:active)]:bg-overlay-subtle","active:bg-overlay-medium","focus-visible:shadow-highlight","focus-visible:border-focus","select-none","break-all"],removeButton:["cursor-default","text-secondary","outline-none"]},variants:{allowsRemoving:{true:{}},isDisabled:{true:{tag:["bg-overlay-subtle","text-secondary","cursor-not-allowed","border-transparent"]}}},compoundVariants:[{allowsRemoving:!0,isDisabled:!1,className:{tag:"pe-1"}}]});exports.tagGroupStyles=t;exports.tagStyles=o;
@@ -1 +1 @@
1
- {"version":3,"file":"lyra112.cjs","sources":["../src/components/sortable/hooks/use-is-keyboard-sorting.ts"],"sourcesContent":["import { useDndContext } from \"@dnd-kit/core\";\nimport { isKeyboardEvent } from \"@dnd-kit/utilities\";\n\nexport function useIsKeyboardSorting() {\n const { activatorEvent } = useDndContext();\n\n return isKeyboardEvent(activatorEvent);\n}\n"],"names":["useIsKeyboardSorting","activatorEvent","useDndContext","isKeyboardEvent"],"mappings":"4IAGO,SAASA,GAAuB,CAC/B,KAAA,CAAE,eAAAC,CAAe,EAAIC,gBAAc,EAEzC,OAAOC,EAAAA,gBAAgBF,CAAc,CACvC"}
1
+ {"version":3,"file":"lyra112.cjs","sources":["../src/components/inputs/input-tag-group/input-tag-group.styles.ts"],"sourcesContent":["import { tv } from \"tailwind-variants\";\n\nexport const tagGroupStyles = tv({\n base: \"flex flex-wrap gap-1\",\n});\n\nexport const tagStyles = tv({\n slots: {\n tag: [\n \"transition\",\n \"cursor-default\",\n \"text-base\",\n \"rounded-sm\",\n \"py-1\",\n \"pe-1\",\n \"ps-1.5\",\n \"flex\",\n \"items-center\",\n \"gap-1\",\n \"ring-default\",\n \"border\",\n \"border-default\",\n \"outline-none\",\n \"solid\",\n \"bg-transparent\",\n \"[&:hover&:not(:active)]:bg-overlay-subtle\",\n \"active:bg-overlay-medium\",\n \"focus-visible:shadow-highlight\",\n \"focus-visible:border-focus\",\n \"select-none\",\n \"break-all\",\n ],\n removeButton: [\"cursor-default\", \"text-secondary\", \"outline-none\"],\n },\n variants: {\n allowsRemoving: {\n true: {},\n },\n isDisabled: {\n true: {\n tag: [\"bg-overlay-subtle\", \"text-secondary\", \"cursor-not-allowed\", \"border-transparent\"],\n },\n },\n },\n compoundVariants: [\n {\n allowsRemoving: true,\n isDisabled: false,\n className: {\n tag: \"pe-1\",\n },\n },\n ],\n});\n"],"names":["tagGroupStyles","tv","tagStyles"],"mappings":"iHAEaA,EAAiBC,EAAAA,GAAG,CAC/B,KAAM,sBACR,CAAC,EAEYC,EAAYD,EAAAA,GAAG,CAC1B,MAAO,CACL,IAAK,CACH,aACA,iBACA,YACA,aACA,OACA,OACA,SACA,OACA,eACA,QACA,eACA,SACA,iBACA,eACA,QACA,iBACA,4CACA,2BACA,iCACA,6BACA,cACA,WACF,EACA,aAAc,CAAC,iBAAkB,iBAAkB,cAAc,CACnE,EACA,SAAU,CACR,eAAgB,CACd,KAAM,CAAA,CACR,EACA,WAAY,CACV,KAAM,CACJ,IAAK,CAAC,oBAAqB,iBAAkB,qBAAsB,oBAAoB,CAAA,CACzF,CAEJ,EACA,iBAAkB,CAChB,CACE,eAAgB,GAChB,WAAY,GACZ,UAAW,CACT,IAAK,MAAA,CACP,CACF,CAEJ,CAAC"}