@incognia/cosmik 0.26.1 → 0.27.1-beta.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 (165) hide show
  1. package/dist/Table/index.d.ts +15 -0
  2. package/dist/Table/index.d.ts.map +1 -0
  3. package/dist/cosmik.css +1 -1
  4. package/dist/index.cjs.js +1 -1
  5. package/dist/index.cjs10.js +1 -1
  6. package/dist/index.cjs10.js.map +1 -1
  7. package/dist/index.cjs11.js +1 -1
  8. package/dist/index.cjs12.js +1 -1
  9. package/dist/index.cjs13.js +1 -1
  10. package/dist/index.cjs14.js +1 -1
  11. package/dist/index.cjs15.js +1 -1
  12. package/dist/index.cjs16.js +1 -1
  13. package/dist/index.cjs17.js +1 -1
  14. package/dist/index.cjs18.js +1 -1
  15. package/dist/index.cjs19.js +1 -1
  16. package/dist/index.cjs20.js +1 -1
  17. package/dist/index.cjs21.js +1 -1
  18. package/dist/index.cjs22.js +1 -1
  19. package/dist/index.cjs23.js +1 -1
  20. package/dist/index.cjs23.js.map +1 -1
  21. package/dist/index.cjs24.js +1 -1
  22. package/dist/index.cjs24.js.map +1 -1
  23. package/dist/index.cjs25.js +1 -1
  24. package/dist/index.cjs25.js.map +1 -1
  25. package/dist/index.cjs26.js +1 -1
  26. package/dist/index.cjs26.js.map +1 -1
  27. package/dist/index.cjs27.js +1 -1
  28. package/dist/index.cjs27.js.map +1 -1
  29. package/dist/index.cjs28.js +1 -1
  30. package/dist/index.cjs28.js.map +1 -1
  31. package/dist/index.cjs29.js +1 -1
  32. package/dist/index.cjs29.js.map +1 -1
  33. package/dist/index.cjs30.js +1 -1
  34. package/dist/index.cjs30.js.map +1 -1
  35. package/dist/index.cjs31.js +1 -1
  36. package/dist/index.cjs31.js.map +1 -1
  37. package/dist/index.cjs32.js +1 -1
  38. package/dist/index.cjs32.js.map +1 -1
  39. package/dist/index.cjs33.js +1 -1
  40. package/dist/index.cjs33.js.map +1 -1
  41. package/dist/index.cjs34.js +1 -1
  42. package/dist/index.cjs34.js.map +1 -1
  43. package/dist/index.cjs35.js +1 -1
  44. package/dist/index.cjs35.js.map +1 -1
  45. package/dist/index.cjs36.js +1 -1
  46. package/dist/index.cjs36.js.map +1 -1
  47. package/dist/index.cjs37.js +1 -1
  48. package/dist/index.cjs37.js.map +1 -1
  49. package/dist/index.cjs38.js +9 -1
  50. package/dist/index.cjs38.js.map +1 -1
  51. package/dist/index.cjs39.js +19 -1
  52. package/dist/index.cjs39.js.map +1 -1
  53. package/dist/index.cjs4.js +1 -1
  54. package/dist/index.cjs40.js +1 -9
  55. package/dist/index.cjs40.js.map +1 -1
  56. package/dist/index.cjs41.js +1 -19
  57. package/dist/index.cjs41.js.map +1 -1
  58. package/dist/index.cjs42.js +1 -1
  59. package/dist/index.cjs42.js.map +1 -1
  60. package/dist/index.cjs43.js +1 -1
  61. package/dist/index.cjs43.js.map +1 -1
  62. package/dist/index.cjs44.js +1 -1
  63. package/dist/index.cjs44.js.map +1 -1
  64. package/dist/index.cjs45.js +1 -1
  65. package/dist/index.cjs45.js.map +1 -1
  66. package/dist/index.cjs46.js +1 -1
  67. package/dist/index.cjs46.js.map +1 -1
  68. package/dist/index.cjs47.js +1 -1
  69. package/dist/index.cjs47.js.map +1 -1
  70. package/dist/index.cjs48.js +1 -1
  71. package/dist/index.cjs48.js.map +1 -1
  72. package/dist/index.cjs49.js +1 -1
  73. package/dist/index.cjs49.js.map +1 -1
  74. package/dist/index.cjs5.js +1 -1
  75. package/dist/index.cjs50.js +1 -1
  76. package/dist/index.cjs50.js.map +1 -1
  77. package/dist/index.cjs51.js +2 -0
  78. package/dist/index.cjs51.js.map +1 -0
  79. package/dist/index.cjs6.js +1 -1
  80. package/dist/index.cjs7.js +1 -1
  81. package/dist/index.cjs8.js +1 -1
  82. package/dist/index.cjs9.js +1 -1
  83. package/dist/index.d.ts +3 -2
  84. package/dist/index.d.ts.map +1 -1
  85. package/dist/index.es.js +73 -64
  86. package/dist/index.es.js.map +1 -1
  87. package/dist/index.es10.js +6 -5
  88. package/dist/index.es10.js.map +1 -1
  89. package/dist/index.es11.js +2 -2
  90. package/dist/index.es12.js +2 -2
  91. package/dist/index.es13.js +2 -2
  92. package/dist/index.es14.js +2 -2
  93. package/dist/index.es15.js +2 -2
  94. package/dist/index.es16.js +3 -3
  95. package/dist/index.es17.js +2 -2
  96. package/dist/index.es18.js +2 -2
  97. package/dist/index.es19.js +2 -2
  98. package/dist/index.es20.js +2 -2
  99. package/dist/index.es21.js +2 -2
  100. package/dist/index.es22.js +2 -2
  101. package/dist/index.es23.js +99 -31
  102. package/dist/index.es23.js.map +1 -1
  103. package/dist/index.es24.js +42 -23
  104. package/dist/index.es24.js.map +1 -1
  105. package/dist/index.es25.js +22 -108
  106. package/dist/index.es25.js.map +1 -1
  107. package/dist/index.es26.js +109 -41
  108. package/dist/index.es26.js.map +1 -1
  109. package/dist/index.es27.js +40 -94
  110. package/dist/index.es27.js.map +1 -1
  111. package/dist/index.es28.js +93 -38
  112. package/dist/index.es28.js.map +1 -1
  113. package/dist/index.es29.js +36 -35
  114. package/dist/index.es29.js.map +1 -1
  115. package/dist/index.es30.js +36 -29
  116. package/dist/index.es30.js.map +1 -1
  117. package/dist/index.es31.js +25 -66
  118. package/dist/index.es31.js.map +1 -1
  119. package/dist/index.es32.js +68 -258
  120. package/dist/index.es32.js.map +1 -1
  121. package/dist/index.es33.js +263 -6
  122. package/dist/index.es33.js.map +1 -1
  123. package/dist/index.es34.js +6 -6
  124. package/dist/index.es34.js.map +1 -1
  125. package/dist/index.es35.js +5 -13
  126. package/dist/index.es35.js.map +1 -1
  127. package/dist/index.es36.js +13 -3
  128. package/dist/index.es36.js.map +1 -1
  129. package/dist/index.es37.js +2 -105
  130. package/dist/index.es37.js.map +1 -1
  131. package/dist/index.es38.js +29 -33
  132. package/dist/index.es38.js.map +1 -1
  133. package/dist/index.es39.js +599 -2
  134. package/dist/index.es39.js.map +1 -1
  135. package/dist/index.es4.js +1 -1
  136. package/dist/index.es40.js +3 -29
  137. package/dist/index.es40.js.map +1 -1
  138. package/dist/index.es41.js +104 -598
  139. package/dist/index.es41.js.map +1 -1
  140. package/dist/index.es42.js +34 -2
  141. package/dist/index.es42.js.map +1 -1
  142. package/dist/index.es43.js +2 -151
  143. package/dist/index.es43.js.map +1 -1
  144. package/dist/index.es44.js +2 -16
  145. package/dist/index.es44.js.map +1 -1
  146. package/dist/index.es45.js +2 -342
  147. package/dist/index.es45.js.map +1 -1
  148. package/dist/index.es46.js +150 -44
  149. package/dist/index.es46.js.map +1 -1
  150. package/dist/index.es47.js +16 -2
  151. package/dist/index.es47.js.map +1 -1
  152. package/dist/index.es48.js +342 -2
  153. package/dist/index.es48.js.map +1 -1
  154. package/dist/index.es49.js +45 -2
  155. package/dist/index.es49.js.map +1 -1
  156. package/dist/index.es5.js +2 -2
  157. package/dist/index.es50.js +2 -4
  158. package/dist/index.es50.js.map +1 -1
  159. package/dist/index.es51.js +7 -0
  160. package/dist/index.es51.js.map +1 -0
  161. package/dist/index.es6.js +2 -2
  162. package/dist/index.es7.js +2 -2
  163. package/dist/index.es8.js +2 -2
  164. package/dist/index.es9.js +2 -2
  165. package/package.json +1 -1
@@ -1,98 +1,44 @@
1
- import * as c from "react";
2
- const d = 1, p = 5e3;
3
- let u = 0;
4
- function A() {
5
- return u = (u + 1) % Number.MAX_SAFE_INTEGER, u.toString();
6
- }
7
- const a = /* @__PURE__ */ new Map(), S = (t) => {
8
- if (a.has(t))
9
- return;
10
- const s = setTimeout(() => {
11
- a.delete(t), n({
12
- type: "REMOVE_TOAST",
13
- toastId: t
14
- });
15
- }, p);
16
- a.set(t, s);
17
- }, f = (t, s) => {
18
- switch (s.type) {
19
- case "ADD_TOAST":
20
- return {
21
- ...t,
22
- toasts: [s.toast, ...t.toasts].slice(0, d)
23
- };
24
- case "UPDATE_TOAST":
25
- return {
26
- ...t,
27
- toasts: t.toasts.map(
28
- (e) => e.id === s.toast.id ? { ...e, ...s.toast } : e
29
- )
30
- };
31
- case "DISMISS_TOAST": {
32
- const { toastId: e } = s;
33
- return e ? S(e) : t.toasts.forEach((o) => {
34
- S(o.id);
35
- }), {
36
- ...t,
37
- toasts: t.toasts.map(
38
- (o) => o.id === e || e === void 0 ? {
39
- ...o,
40
- open: !1
41
- } : o
42
- )
43
- };
44
- }
45
- case "REMOVE_TOAST":
46
- return s.toastId === void 0 ? {
47
- ...t,
48
- toasts: []
49
- } : {
50
- ...t,
51
- toasts: t.toasts.filter((e) => e.id !== s.toastId)
52
- };
53
- }
54
- }, r = [];
55
- let T = { toasts: [] };
56
- function n(t) {
57
- T = f(T, t), r.forEach((s) => {
58
- s(T);
59
- });
60
- }
61
- function O({ ...t }) {
62
- const s = A(), e = (i) => n({
63
- type: "UPDATE_TOAST",
64
- toast: { ...i, id: s }
65
- }), o = () => n({ type: "DISMISS_TOAST", toastId: s });
66
- return n({
67
- type: "ADD_TOAST",
68
- toast: {
69
- ...t,
70
- id: s,
71
- open: !0,
72
- onOpenChange: (i) => {
73
- i || o();
74
- }
75
- }
76
- }), {
77
- id: s,
78
- dismiss: o,
79
- update: e
80
- };
81
- }
82
- function E() {
83
- const [t, s] = c.useState(T);
84
- return c.useEffect(() => (r.push(s), () => {
85
- const e = r.indexOf(s);
86
- e > -1 && r.splice(e, 1);
87
- }), [t]), {
88
- ...t,
89
- toast: O,
90
- dismiss: (e) => n({ type: "DISMISS_TOAST", toastId: e })
91
- };
1
+ import { j as s } from "./index.es34.js";
2
+ import { ToastProvider as x, Toast as T, ToastIcon as m, ToastTitle as l, ToastDescription as j, ToastClose as d, ToastViewport as f } from "./index.es26.js";
3
+ import { useToast as h } from "./index.es28.js";
4
+ const p = 5e3;
5
+ function D() {
6
+ const { toasts: e } = h();
7
+ return /* @__PURE__ */ s.jsxs(x, { children: [
8
+ e.map(function({
9
+ variant: o,
10
+ id: i,
11
+ title: r,
12
+ description: t,
13
+ action: n,
14
+ hideIcon: a,
15
+ ...c
16
+ }) {
17
+ return /* @__PURE__ */ s.jsxs(
18
+ T,
19
+ {
20
+ variant: o,
21
+ duration: p,
22
+ ...c,
23
+ children: [
24
+ /* @__PURE__ */ s.jsxs("div", { className: "flex items-center", children: [
25
+ !a && /* @__PURE__ */ s.jsx(m, { variant: o, className: "mr-12 flex-shrink-0" }),
26
+ /* @__PURE__ */ s.jsxs("div", { className: "grid", children: [
27
+ r && /* @__PURE__ */ s.jsx(l, { children: r }),
28
+ t && /* @__PURE__ */ s.jsx(j, { children: t })
29
+ ] })
30
+ ] }),
31
+ n,
32
+ /* @__PURE__ */ s.jsx(d, {})
33
+ ]
34
+ },
35
+ i
36
+ );
37
+ }),
38
+ /* @__PURE__ */ s.jsx(f, {})
39
+ ] });
92
40
  }
93
41
  export {
94
- f as reducer,
95
- O as toast,
96
- E as useToast
42
+ D as Toaster
97
43
  };
98
44
  //# sourceMappingURL=index.es27.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es27.js","sources":["../src/Toast/hooks.tsx"],"sourcesContent":["'use client'\n\n// Inspired by react-hot-toast library\nimport * as React from 'react'\nimport type { ToastActionElement, ToastProps } from './Toast'\n\nconst TOAST_LIMIT = 1\nconst TOAST_REMOVE_DELAY = 5000\n\ntype ToasterToast = ToastProps & {\n id: string\n title?: React.ReactNode\n description?: React.ReactNode\n action?: ToastActionElement\n hideIcon?: boolean\n}\n\nconst actionTypes = {\n ADD_TOAST: 'ADD_TOAST',\n UPDATE_TOAST: 'UPDATE_TOAST',\n DISMISS_TOAST: 'DISMISS_TOAST',\n REMOVE_TOAST: 'REMOVE_TOAST'\n} as const\n\nlet count = 0\n\nfunction genId() {\n count = (count + 1) % Number.MAX_SAFE_INTEGER\n return count.toString()\n}\n\ntype ActionType = typeof actionTypes\n\ntype Action =\n | {\n type: ActionType['ADD_TOAST']\n toast: ToasterToast\n }\n | {\n type: ActionType['UPDATE_TOAST']\n toast: Partial<ToasterToast>\n }\n | {\n type: ActionType['DISMISS_TOAST']\n toastId?: ToasterToast['id']\n }\n | {\n type: ActionType['REMOVE_TOAST']\n toastId?: ToasterToast['id']\n }\n\ninterface State {\n toasts: ToasterToast[]\n}\n\nconst toastTimeouts = new Map<string, ReturnType<typeof setTimeout>>()\n\nconst addToRemoveQueue = (toastId: string) => {\n if (toastTimeouts.has(toastId)) {\n return\n }\n\n const timeout = setTimeout(() => {\n toastTimeouts.delete(toastId)\n dispatch({\n type: 'REMOVE_TOAST',\n toastId: toastId\n })\n }, TOAST_REMOVE_DELAY)\n\n toastTimeouts.set(toastId, timeout)\n}\n\nexport const reducer = (state: State, action: Action): State => {\n switch (action.type) {\n case 'ADD_TOAST':\n return {\n ...state,\n toasts: [action.toast, ...state.toasts].slice(0, TOAST_LIMIT)\n }\n\n case 'UPDATE_TOAST':\n return {\n ...state,\n toasts: state.toasts.map(t =>\n t.id === action.toast.id ? { ...t, ...action.toast } : t\n )\n }\n\n case 'DISMISS_TOAST': {\n const { toastId } = action\n\n // ! Side effects ! - This could be extracted into a dismissToast() action,\n // but I'll keep it here for simplicity\n if (toastId) {\n addToRemoveQueue(toastId)\n } else {\n state.toasts.forEach(toast => {\n addToRemoveQueue(toast.id)\n })\n }\n\n return {\n ...state,\n toasts: state.toasts.map(t =>\n t.id === toastId || toastId === undefined\n ? {\n ...t,\n open: false\n }\n : t\n )\n }\n }\n case 'REMOVE_TOAST':\n if (action.toastId === undefined) {\n return {\n ...state,\n toasts: []\n }\n }\n return {\n ...state,\n toasts: state.toasts.filter(t => t.id !== action.toastId)\n }\n }\n}\n\nconst listeners: Array<(state: State) => void> = []\n\nlet memoryState: State = { toasts: [] }\n\nfunction dispatch(action: Action) {\n memoryState = reducer(memoryState, action)\n listeners.forEach(listener => {\n listener(memoryState)\n })\n}\n\ntype Toast = Omit<ToasterToast, 'id'>\n\nfunction toast({ ...props }: Toast) {\n const id = genId()\n\n const update = (props: ToasterToast) =>\n dispatch({\n type: 'UPDATE_TOAST',\n toast: { ...props, id }\n })\n const dismiss = () => dispatch({ type: 'DISMISS_TOAST', toastId: id })\n\n dispatch({\n type: 'ADD_TOAST',\n toast: {\n ...props,\n id,\n open: true,\n onOpenChange: (open: boolean) => {\n if (!open) dismiss()\n }\n }\n })\n\n return {\n id: id,\n dismiss,\n update\n }\n}\n\nfunction useToast() {\n const [state, setState] = React.useState<State>(memoryState)\n\n React.useEffect(() => {\n listeners.push(setState)\n return () => {\n const index = listeners.indexOf(setState)\n if (index > -1) {\n listeners.splice(index, 1)\n }\n }\n }, [state])\n\n return {\n ...state,\n toast,\n dismiss: (toastId?: string) => dispatch({ type: 'DISMISS_TOAST', toastId })\n }\n}\n\nexport { useToast, toast }\n"],"names":["TOAST_LIMIT","TOAST_REMOVE_DELAY","count","genId","toastTimeouts","addToRemoveQueue","toastId","timeout","dispatch","reducer","state","action","t","toast","listeners","memoryState","listener","props","id","update","dismiss","open","useToast","setState","React","index"],"mappings":"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"}
1
+ {"version":3,"file":"index.es27.js","sources":["../src/Toast/Toaster.tsx"],"sourcesContent":["'use client'\n\nimport {\n Toast,\n ToastClose,\n ToastDescription,\n ToastIcon,\n ToastProvider,\n ToastTitle,\n ToastViewport\n} from './Toast'\nimport { useToast } from './hooks'\n\nconst DEFAULT_TOAST_DURATION = 5000\n\nexport function Toaster() {\n const { toasts } = useToast()\n\n return (\n <ToastProvider>\n {toasts.map(function ({\n variant,\n id,\n title,\n description,\n action,\n hideIcon,\n ...props\n }) {\n return (\n <Toast\n key={id}\n variant={variant}\n duration={DEFAULT_TOAST_DURATION}\n {...props}\n >\n <div className=\"flex items-center\">\n {!hideIcon && (\n <ToastIcon variant={variant} className=\"mr-12 flex-shrink-0\" />\n )}\n <div className=\"grid\">\n {title && <ToastTitle>{title}</ToastTitle>}\n {description && (\n <ToastDescription>{description}</ToastDescription>\n )}\n </div>\n </div>\n {action}\n <ToastClose />\n </Toast>\n )\n })}\n <ToastViewport />\n </ToastProvider>\n )\n}\n"],"names":["DEFAULT_TOAST_DURATION","Toaster","toasts","useToast","ToastProvider","variant","id","title","description","action","hideIcon","props","jsxs","Toast","jsx","ToastIcon","ToastTitle","ToastDescription","ToastClose","ToastViewport"],"mappings":";;;AAaA,MAAMA,IAAyB;AAExB,SAASC,IAAU;AAClB,QAAA,EAAE,QAAAC,MAAWC;AAEnB,gCACGC,GACE,EAAA,UAAA;AAAA,IAAAF,EAAO,IAAI,SAAU;AAAA,MACpB,SAAAG;AAAA,MACA,IAAAC;AAAA,MACA,OAAAC;AAAA,MACA,aAAAC;AAAA,MACA,QAAAC;AAAA,MACA,UAAAC;AAAA,MACA,GAAGC;AAAA,IAAA,GACF;AAEC,aAAAC,gBAAAA,EAAA;AAAA,QAACC;AAAA,QAAA;AAAA,UAEC,SAAAR;AAAA,UACA,UAAUL;AAAA,UACT,GAAGW;AAAA,UAEJ,UAAA;AAAA,YAACC,gBAAAA,EAAAA,KAAA,OAAA,EAAI,WAAU,qBACZ,UAAA;AAAA,cAAA,CAACF,KACAI,gBAAAA,EAAAA,IAACC,GAAU,EAAA,SAAAV,GAAkB,WAAU,uBAAsB;AAAA,cAE/DO,gBAAAA,EAAAA,KAAC,OAAI,EAAA,WAAU,QACZ,UAAA;AAAA,gBAASL,KAAAO,gBAAAA,EAAAA,IAACE,KAAY,UAAMT,EAAA,CAAA;AAAA,gBAC5BC,KACEM,gBAAAA,EAAAA,IAAAG,GAAA,EAAkB,UAAYT,EAAA,CAAA;AAAA,cAAA,GAEnC;AAAA,YAAA,GACF;AAAA,YACCC;AAAA,kCACAS,GAAW,EAAA;AAAA,UAAA;AAAA,QAAA;AAAA,QAjBPZ;AAAA,MAAA;AAAA,IAkBP,CAEH;AAAA,0BACAa,GAAc,EAAA;AAAA,EACjB,EAAA,CAAA;AAEJ;"}
@@ -1,43 +1,98 @@
1
- import { j as n } from "./index.es33.js";
2
- import * as t from "@radix-ui/react-toggle";
3
- import { cva as s } from "class-variance-authority";
4
- import * as b from "react";
5
- import { cn as d } from "./index.es34.js";
6
- const i = s(
7
- "inline-flex items-center justify-center rounded-full font-small transition-colors disabled:pointer-events-none disabled:opacity-40",
8
- {
9
- variants: {
10
- variant: {
11
- default: "bg-transparent text-gray-700 hover:bg-gray-900-8 hover:text-purple-900 data-[state=on]:bg-purple-100 data-[state=on]:text-purple-900",
12
- "badge-green": "bg-gray-100 text-gray-900/48 hover:bg-gray-200 data-[state=on]:bg-green-50 data-[state=on]:text-green-800",
13
- "badge-yellow": "bg-gray-100 text-gray-900/48 hover:bg-gray-200 data-[state=on]:bg-yellow-50 data-[state=on]:text-yellow-700",
14
- "badge-magenta": "bg-gray-100 text-gray-900/48 hover:bg-gray-200 data-[state=on]:bg-magenta-50 data-[state=on]:text-magenta-700",
15
- "badge-gray": "bg-gray-100 text-gray-900/48 hover:bg-gray-200 data-[state=on]:bg-gray-200 data-[state=on]:text-gray-900",
16
- "badge-purple": "bg-gray-100 text-gray-900/48 hover:bg-gray-200 data-[state=on]:bg-purple-100 data-[state=on]:text-purple-900",
17
- "badge-robinblue": "bg-gray-100 text-gray-900/48 hover:bg-gray-200 data-[state=on]:bg-robinblue-100 data-[state=on]:text-robinblue-900"
18
- },
19
- size: {
20
- icon: "w-32 h-32",
21
- sm: "px-8 h-[26px] text-sm",
22
- md: "px-12 h-32 text-base"
23
- }
24
- },
25
- defaultVariants: {
26
- variant: "default",
27
- size: "icon"
1
+ import * as c from "react";
2
+ const d = 1, p = 5e3;
3
+ let u = 0;
4
+ function A() {
5
+ return u = (u + 1) % Number.MAX_SAFE_INTEGER, u.toString();
6
+ }
7
+ const a = /* @__PURE__ */ new Map(), S = (t) => {
8
+ if (a.has(t))
9
+ return;
10
+ const s = setTimeout(() => {
11
+ a.delete(t), n({
12
+ type: "REMOVE_TOAST",
13
+ toastId: t
14
+ });
15
+ }, p);
16
+ a.set(t, s);
17
+ }, f = (t, s) => {
18
+ switch (s.type) {
19
+ case "ADD_TOAST":
20
+ return {
21
+ ...t,
22
+ toasts: [s.toast, ...t.toasts].slice(0, d)
23
+ };
24
+ case "UPDATE_TOAST":
25
+ return {
26
+ ...t,
27
+ toasts: t.toasts.map(
28
+ (e) => e.id === s.toast.id ? { ...e, ...s.toast } : e
29
+ )
30
+ };
31
+ case "DISMISS_TOAST": {
32
+ const { toastId: e } = s;
33
+ return e ? S(e) : t.toasts.forEach((o) => {
34
+ S(o.id);
35
+ }), {
36
+ ...t,
37
+ toasts: t.toasts.map(
38
+ (o) => o.id === e || e === void 0 ? {
39
+ ...o,
40
+ open: !1
41
+ } : o
42
+ )
43
+ };
28
44
  }
45
+ case "REMOVE_TOAST":
46
+ return s.toastId === void 0 ? {
47
+ ...t,
48
+ toasts: []
49
+ } : {
50
+ ...t,
51
+ toasts: t.toasts.filter((e) => e.id !== s.toastId)
52
+ };
29
53
  }
30
- ), l = b.forwardRef(({ className: a, variant: e, size: r, ...g }, o) => /* @__PURE__ */ n.jsx(
31
- t.Root,
32
- {
33
- ref: o,
34
- className: d(i({ variant: e, size: r, className: a })),
35
- ...g
36
- }
37
- ));
38
- l.displayName = t.Root.displayName;
54
+ }, r = [];
55
+ let T = { toasts: [] };
56
+ function n(t) {
57
+ T = f(T, t), r.forEach((s) => {
58
+ s(T);
59
+ });
60
+ }
61
+ function O({ ...t }) {
62
+ const s = A(), e = (i) => n({
63
+ type: "UPDATE_TOAST",
64
+ toast: { ...i, id: s }
65
+ }), o = () => n({ type: "DISMISS_TOAST", toastId: s });
66
+ return n({
67
+ type: "ADD_TOAST",
68
+ toast: {
69
+ ...t,
70
+ id: s,
71
+ open: !0,
72
+ onOpenChange: (i) => {
73
+ i || o();
74
+ }
75
+ }
76
+ }), {
77
+ id: s,
78
+ dismiss: o,
79
+ update: e
80
+ };
81
+ }
82
+ function E() {
83
+ const [t, s] = c.useState(T);
84
+ return c.useEffect(() => (r.push(s), () => {
85
+ const e = r.indexOf(s);
86
+ e > -1 && r.splice(e, 1);
87
+ }), [t]), {
88
+ ...t,
89
+ toast: O,
90
+ dismiss: (e) => n({ type: "DISMISS_TOAST", toastId: e })
91
+ };
92
+ }
39
93
  export {
40
- l as Toggle,
41
- i as toggleVariants
94
+ f as reducer,
95
+ O as toast,
96
+ E as useToast
42
97
  };
43
98
  //# sourceMappingURL=index.es28.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es28.js","sources":["../src/Toggle/index.tsx"],"sourcesContent":["'use client'\n\nimport * as TogglePrimitive from '@radix-ui/react-toggle'\nimport { cva, type VariantProps } from 'class-variance-authority'\nimport * as React from 'react'\nimport { cn } from '../lib/utils'\n\nconst toggleVariants = cva(\n 'inline-flex items-center justify-center rounded-full font-small transition-colors disabled:pointer-events-none disabled:opacity-40',\n {\n variants: {\n variant: {\n default:\n 'bg-transparent text-gray-700 hover:bg-gray-900-8 hover:text-purple-900 data-[state=on]:bg-purple-100 data-[state=on]:text-purple-900',\n 'badge-green':\n 'bg-gray-100 text-gray-900/48 hover:bg-gray-200 data-[state=on]:bg-green-50 data-[state=on]:text-green-800',\n 'badge-yellow':\n 'bg-gray-100 text-gray-900/48 hover:bg-gray-200 data-[state=on]:bg-yellow-50 data-[state=on]:text-yellow-700',\n 'badge-magenta':\n 'bg-gray-100 text-gray-900/48 hover:bg-gray-200 data-[state=on]:bg-magenta-50 data-[state=on]:text-magenta-700',\n 'badge-gray':\n 'bg-gray-100 text-gray-900/48 hover:bg-gray-200 data-[state=on]:bg-gray-200 data-[state=on]:text-gray-900',\n 'badge-purple':\n 'bg-gray-100 text-gray-900/48 hover:bg-gray-200 data-[state=on]:bg-purple-100 data-[state=on]:text-purple-900',\n 'badge-robinblue':\n 'bg-gray-100 text-gray-900/48 hover:bg-gray-200 data-[state=on]:bg-robinblue-100 data-[state=on]:text-robinblue-900'\n },\n size: {\n icon: 'w-32 h-32',\n sm: 'px-8 h-[26px] text-sm',\n md: 'px-12 h-32 text-base'\n }\n },\n defaultVariants: {\n variant: 'default',\n size: 'icon'\n }\n }\n)\n\nconst Toggle = React.forwardRef<\n React.ElementRef<typeof TogglePrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof TogglePrimitive.Root> &\n VariantProps<typeof toggleVariants>\n>(({ className, variant, size, ...props }, ref) => (\n <TogglePrimitive.Root\n ref={ref}\n className={cn(toggleVariants({ variant, size, className }))}\n {...props}\n />\n))\n\nToggle.displayName = TogglePrimitive.Root.displayName\n\nexport { Toggle, toggleVariants }\n"],"names":["toggleVariants","cva","Toggle","React","className","variant","size","props","ref","jsx","TogglePrimitive","cn"],"mappings":";;;;;AAOA,MAAMA,IAAiBC;AAAA,EACrB;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,SAAS;AAAA,QACP,SACE;AAAA,QACF,eACE;AAAA,QACF,gBACE;AAAA,QACF,iBACE;AAAA,QACF,cACE;AAAA,QACF,gBACE;AAAA,QACF,mBACE;AAAA,MACJ;AAAA,MACA,MAAM;AAAA,QACJ,MAAM;AAAA,QACN,IAAI;AAAA,QACJ,IAAI;AAAA,MACN;AAAA,IACF;AAAA,IACA,iBAAiB;AAAA,MACf,SAAS;AAAA,MACT,MAAM;AAAA,IACR;AAAA,EACF;AACF,GAEMC,IAASC,EAAM,WAInB,CAAC,EAAE,WAAAC,GAAW,SAAAC,GAAS,MAAAC,GAAM,GAAGC,KAASC,MACzCC,gBAAAA,EAAA;AAAA,EAACC,EAAgB;AAAA,EAAhB;AAAA,IACC,KAAAF;AAAA,IACA,WAAWG,EAAGX,EAAe,EAAE,SAAAK,GAAS,MAAAC,GAAM,WAAAF,EAAA,CAAW,CAAC;AAAA,IACzD,GAAGG;AAAA,EAAA;AACN,CACD;AAEDL,EAAO,cAAcQ,EAAgB,KAAK;"}
1
+ {"version":3,"file":"index.es28.js","sources":["../src/Toast/hooks.tsx"],"sourcesContent":["'use client'\n\n// Inspired by react-hot-toast library\nimport * as React from 'react'\nimport type { ToastActionElement, ToastProps } from './Toast'\n\nconst TOAST_LIMIT = 1\nconst TOAST_REMOVE_DELAY = 5000\n\ntype ToasterToast = ToastProps & {\n id: string\n title?: React.ReactNode\n description?: React.ReactNode\n action?: ToastActionElement\n hideIcon?: boolean\n}\n\nconst actionTypes = {\n ADD_TOAST: 'ADD_TOAST',\n UPDATE_TOAST: 'UPDATE_TOAST',\n DISMISS_TOAST: 'DISMISS_TOAST',\n REMOVE_TOAST: 'REMOVE_TOAST'\n} as const\n\nlet count = 0\n\nfunction genId() {\n count = (count + 1) % Number.MAX_SAFE_INTEGER\n return count.toString()\n}\n\ntype ActionType = typeof actionTypes\n\ntype Action =\n | {\n type: ActionType['ADD_TOAST']\n toast: ToasterToast\n }\n | {\n type: ActionType['UPDATE_TOAST']\n toast: Partial<ToasterToast>\n }\n | {\n type: ActionType['DISMISS_TOAST']\n toastId?: ToasterToast['id']\n }\n | {\n type: ActionType['REMOVE_TOAST']\n toastId?: ToasterToast['id']\n }\n\ninterface State {\n toasts: ToasterToast[]\n}\n\nconst toastTimeouts = new Map<string, ReturnType<typeof setTimeout>>()\n\nconst addToRemoveQueue = (toastId: string) => {\n if (toastTimeouts.has(toastId)) {\n return\n }\n\n const timeout = setTimeout(() => {\n toastTimeouts.delete(toastId)\n dispatch({\n type: 'REMOVE_TOAST',\n toastId: toastId\n })\n }, TOAST_REMOVE_DELAY)\n\n toastTimeouts.set(toastId, timeout)\n}\n\nexport const reducer = (state: State, action: Action): State => {\n switch (action.type) {\n case 'ADD_TOAST':\n return {\n ...state,\n toasts: [action.toast, ...state.toasts].slice(0, TOAST_LIMIT)\n }\n\n case 'UPDATE_TOAST':\n return {\n ...state,\n toasts: state.toasts.map(t =>\n t.id === action.toast.id ? { ...t, ...action.toast } : t\n )\n }\n\n case 'DISMISS_TOAST': {\n const { toastId } = action\n\n // ! Side effects ! - This could be extracted into a dismissToast() action,\n // but I'll keep it here for simplicity\n if (toastId) {\n addToRemoveQueue(toastId)\n } else {\n state.toasts.forEach(toast => {\n addToRemoveQueue(toast.id)\n })\n }\n\n return {\n ...state,\n toasts: state.toasts.map(t =>\n t.id === toastId || toastId === undefined\n ? {\n ...t,\n open: false\n }\n : t\n )\n }\n }\n case 'REMOVE_TOAST':\n if (action.toastId === undefined) {\n return {\n ...state,\n toasts: []\n }\n }\n return {\n ...state,\n toasts: state.toasts.filter(t => t.id !== action.toastId)\n }\n }\n}\n\nconst listeners: Array<(state: State) => void> = []\n\nlet memoryState: State = { toasts: [] }\n\nfunction dispatch(action: Action) {\n memoryState = reducer(memoryState, action)\n listeners.forEach(listener => {\n listener(memoryState)\n })\n}\n\ntype Toast = Omit<ToasterToast, 'id'>\n\nfunction toast({ ...props }: Toast) {\n const id = genId()\n\n const update = (props: ToasterToast) =>\n dispatch({\n type: 'UPDATE_TOAST',\n toast: { ...props, id }\n })\n const dismiss = () => dispatch({ type: 'DISMISS_TOAST', toastId: id })\n\n dispatch({\n type: 'ADD_TOAST',\n toast: {\n ...props,\n id,\n open: true,\n onOpenChange: (open: boolean) => {\n if (!open) dismiss()\n }\n }\n })\n\n return {\n id: id,\n dismiss,\n update\n }\n}\n\nfunction useToast() {\n const [state, setState] = React.useState<State>(memoryState)\n\n React.useEffect(() => {\n listeners.push(setState)\n return () => {\n const index = listeners.indexOf(setState)\n if (index > -1) {\n listeners.splice(index, 1)\n }\n }\n }, [state])\n\n return {\n ...state,\n toast,\n dismiss: (toastId?: string) => dispatch({ type: 'DISMISS_TOAST', toastId })\n }\n}\n\nexport { useToast, toast }\n"],"names":["TOAST_LIMIT","TOAST_REMOVE_DELAY","count","genId","toastTimeouts","addToRemoveQueue","toastId","timeout","dispatch","reducer","state","action","t","toast","listeners","memoryState","listener","props","id","update","dismiss","open","useToast","setState","React","index"],"mappings":"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"}
@@ -1,42 +1,43 @@
1
- import { j as n } from "./index.es33.js";
2
- import * as t from "@radix-ui/react-toggle-group";
3
- import * as e from "react";
4
- import { toggleVariants as f } from "./index.es28.js";
5
- import { cn as l } from "./index.es34.js";
6
- const c = e.createContext({
7
- variant: "default",
8
- size: "icon"
9
- }), g = e.forwardRef(({ className: o, variant: r, size: a, children: s, ...i }, m) => /* @__PURE__ */ n.jsx(
1
+ import { j as n } from "./index.es34.js";
2
+ import * as t from "@radix-ui/react-toggle";
3
+ import { cva as s } from "class-variance-authority";
4
+ import * as b from "react";
5
+ import { cn as d } from "./index.es35.js";
6
+ const i = s(
7
+ "inline-flex items-center justify-center rounded-full font-small transition-colors disabled:pointer-events-none disabled:opacity-40",
8
+ {
9
+ variants: {
10
+ variant: {
11
+ default: "bg-transparent text-gray-700 hover:bg-gray-900-8 hover:text-purple-900 data-[state=on]:bg-purple-100 data-[state=on]:text-purple-900",
12
+ "badge-green": "bg-gray-100 text-gray-900/48 hover:bg-gray-200 data-[state=on]:bg-green-50 data-[state=on]:text-green-800",
13
+ "badge-yellow": "bg-gray-100 text-gray-900/48 hover:bg-gray-200 data-[state=on]:bg-yellow-50 data-[state=on]:text-yellow-700",
14
+ "badge-magenta": "bg-gray-100 text-gray-900/48 hover:bg-gray-200 data-[state=on]:bg-magenta-50 data-[state=on]:text-magenta-700",
15
+ "badge-gray": "bg-gray-100 text-gray-900/48 hover:bg-gray-200 data-[state=on]:bg-gray-200 data-[state=on]:text-gray-900",
16
+ "badge-purple": "bg-gray-100 text-gray-900/48 hover:bg-gray-200 data-[state=on]:bg-purple-100 data-[state=on]:text-purple-900",
17
+ "badge-robinblue": "bg-gray-100 text-gray-900/48 hover:bg-gray-200 data-[state=on]:bg-robinblue-100 data-[state=on]:text-robinblue-900"
18
+ },
19
+ size: {
20
+ icon: "w-32 h-32",
21
+ sm: "px-8 h-[26px] text-sm",
22
+ md: "px-12 h-32 text-base"
23
+ }
24
+ },
25
+ defaultVariants: {
26
+ variant: "default",
27
+ size: "icon"
28
+ }
29
+ }
30
+ ), l = b.forwardRef(({ className: a, variant: e, size: r, ...g }, o) => /* @__PURE__ */ n.jsx(
10
31
  t.Root,
11
32
  {
12
- ref: m,
13
- className: l("flex items-center justify-center gap-8", o),
14
- ...i,
15
- children: /* @__PURE__ */ n.jsx(c.Provider, { value: { variant: r, size: a }, children: s })
33
+ ref: o,
34
+ className: d(i({ variant: e, size: r, className: a })),
35
+ ...g
16
36
  }
17
37
  ));
18
- g.displayName = t.Root.displayName;
19
- const x = e.forwardRef(({ className: o, children: r, variant: a, size: s, ...i }, m) => {
20
- const p = e.useContext(c);
21
- return /* @__PURE__ */ n.jsx(
22
- t.Item,
23
- {
24
- ref: m,
25
- className: l(
26
- f({
27
- variant: p.variant || a,
28
- size: p.size || s
29
- }),
30
- o
31
- ),
32
- ...i,
33
- children: r
34
- }
35
- );
36
- });
37
- x.displayName = t.Item.displayName;
38
+ l.displayName = t.Root.displayName;
38
39
  export {
39
- g as ToggleGroup,
40
- x as ToggleGroupItem
40
+ l as Toggle,
41
+ i as toggleVariants
41
42
  };
42
43
  //# sourceMappingURL=index.es29.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es29.js","sources":["../src/ToggleGroup/index.tsx"],"sourcesContent":["'use client'\n\nimport * as ToggleGroupPrimitive from '@radix-ui/react-toggle-group'\nimport { VariantProps } from 'class-variance-authority'\nimport * as React from 'react'\nimport { toggleVariants } from '../Toggle'\nimport { cn } from '../lib/utils'\n\nconst ToggleGroupContext = React.createContext<\n VariantProps<typeof toggleVariants>\n>({\n variant: 'default',\n size: 'icon'\n})\n\nconst ToggleGroup = React.forwardRef<\n React.ElementRef<typeof ToggleGroupPrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof ToggleGroupPrimitive.Root> &\n VariantProps<typeof toggleVariants>\n>(({ className, variant, size, children, ...props }, ref) => (\n <ToggleGroupPrimitive.Root\n ref={ref}\n className={cn('flex items-center justify-center gap-8', className)}\n {...props}\n >\n <ToggleGroupContext.Provider value={{ variant, size }}>\n {children}\n </ToggleGroupContext.Provider>\n </ToggleGroupPrimitive.Root>\n))\n\nToggleGroup.displayName = ToggleGroupPrimitive.Root.displayName\n\nconst ToggleGroupItem = React.forwardRef<\n React.ElementRef<typeof ToggleGroupPrimitive.Item>,\n React.ComponentPropsWithoutRef<typeof ToggleGroupPrimitive.Item> &\n VariantProps<typeof toggleVariants>\n>(({ className, children, variant, size, ...props }, ref) => {\n const context = React.useContext(ToggleGroupContext)\n\n return (\n <ToggleGroupPrimitive.Item\n ref={ref}\n className={cn(\n toggleVariants({\n variant: context.variant || variant,\n size: context.size || size\n }),\n className\n )}\n {...props}\n >\n {children}\n </ToggleGroupPrimitive.Item>\n )\n})\n\nToggleGroupItem.displayName = ToggleGroupPrimitive.Item.displayName\n\nexport { ToggleGroup, ToggleGroupItem }\n"],"names":["ToggleGroupContext","React","ToggleGroup","className","variant","size","children","props","ref","jsx","ToggleGroupPrimitive","cn","ToggleGroupItem","context","toggleVariants"],"mappings":";;;;;AAQA,MAAMA,IAAqBC,EAAM,cAE/B;AAAA,EACA,SAAS;AAAA,EACT,MAAM;AACR,CAAC,GAEKC,IAAcD,EAAM,WAIxB,CAAC,EAAE,WAAAE,GAAW,SAAAC,GAAS,MAAAC,GAAM,UAAAC,GAAU,GAAGC,EAAM,GAAGC,MACnDC,gBAAAA,EAAA;AAAA,EAACC,EAAqB;AAAA,EAArB;AAAA,IACC,KAAAF;AAAA,IACA,WAAWG,EAAG,0CAA0CR,CAAS;AAAA,IAChE,GAAGI;AAAA,IAEJ,UAAAE,gBAAAA,EAAAA,IAACT,EAAmB,UAAnB,EAA4B,OAAO,EAAE,SAAAI,GAAS,MAAAC,KAC5C,UAAAC,GACH;AAAA,EAAA;AACF,CACD;AAEDJ,EAAY,cAAcQ,EAAqB,KAAK;AAEpD,MAAME,IAAkBX,EAAM,WAI5B,CAAC,EAAE,WAAAE,GAAW,UAAAG,GAAU,SAAAF,GAAS,MAAAC,GAAM,GAAGE,EAAM,GAAGC,MAAQ;AACrD,QAAAK,IAAUZ,EAAM,WAAWD,CAAkB;AAGjD,SAAAS,gBAAAA,EAAA;AAAA,IAACC,EAAqB;AAAA,IAArB;AAAA,MACC,KAAAF;AAAA,MACA,WAAWG;AAAA,QACTG,EAAe;AAAA,UACb,SAASD,EAAQ,WAAWT;AAAA,UAC5B,MAAMS,EAAQ,QAAQR;AAAA,QAAA,CACvB;AAAA,QACDF;AAAA,MACF;AAAA,MACC,GAAGI;AAAA,MAEH,UAAAD;AAAA,IAAA;AAAA,EAAA;AAGP,CAAC;AAEDM,EAAgB,cAAcF,EAAqB,KAAK;"}
1
+ {"version":3,"file":"index.es29.js","sources":["../src/Toggle/index.tsx"],"sourcesContent":["'use client'\n\nimport * as TogglePrimitive from '@radix-ui/react-toggle'\nimport { cva, type VariantProps } from 'class-variance-authority'\nimport * as React from 'react'\nimport { cn } from '../lib/utils'\n\nconst toggleVariants = cva(\n 'inline-flex items-center justify-center rounded-full font-small transition-colors disabled:pointer-events-none disabled:opacity-40',\n {\n variants: {\n variant: {\n default:\n 'bg-transparent text-gray-700 hover:bg-gray-900-8 hover:text-purple-900 data-[state=on]:bg-purple-100 data-[state=on]:text-purple-900',\n 'badge-green':\n 'bg-gray-100 text-gray-900/48 hover:bg-gray-200 data-[state=on]:bg-green-50 data-[state=on]:text-green-800',\n 'badge-yellow':\n 'bg-gray-100 text-gray-900/48 hover:bg-gray-200 data-[state=on]:bg-yellow-50 data-[state=on]:text-yellow-700',\n 'badge-magenta':\n 'bg-gray-100 text-gray-900/48 hover:bg-gray-200 data-[state=on]:bg-magenta-50 data-[state=on]:text-magenta-700',\n 'badge-gray':\n 'bg-gray-100 text-gray-900/48 hover:bg-gray-200 data-[state=on]:bg-gray-200 data-[state=on]:text-gray-900',\n 'badge-purple':\n 'bg-gray-100 text-gray-900/48 hover:bg-gray-200 data-[state=on]:bg-purple-100 data-[state=on]:text-purple-900',\n 'badge-robinblue':\n 'bg-gray-100 text-gray-900/48 hover:bg-gray-200 data-[state=on]:bg-robinblue-100 data-[state=on]:text-robinblue-900'\n },\n size: {\n icon: 'w-32 h-32',\n sm: 'px-8 h-[26px] text-sm',\n md: 'px-12 h-32 text-base'\n }\n },\n defaultVariants: {\n variant: 'default',\n size: 'icon'\n }\n }\n)\n\nconst Toggle = React.forwardRef<\n React.ElementRef<typeof TogglePrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof TogglePrimitive.Root> &\n VariantProps<typeof toggleVariants>\n>(({ className, variant, size, ...props }, ref) => (\n <TogglePrimitive.Root\n ref={ref}\n className={cn(toggleVariants({ variant, size, className }))}\n {...props}\n />\n))\n\nToggle.displayName = TogglePrimitive.Root.displayName\n\nexport { Toggle, toggleVariants }\n"],"names":["toggleVariants","cva","Toggle","React","className","variant","size","props","ref","jsx","TogglePrimitive","cn"],"mappings":";;;;;AAOA,MAAMA,IAAiBC;AAAA,EACrB;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,SAAS;AAAA,QACP,SACE;AAAA,QACF,eACE;AAAA,QACF,gBACE;AAAA,QACF,iBACE;AAAA,QACF,cACE;AAAA,QACF,gBACE;AAAA,QACF,mBACE;AAAA,MACJ;AAAA,MACA,MAAM;AAAA,QACJ,MAAM;AAAA,QACN,IAAI;AAAA,QACJ,IAAI;AAAA,MACN;AAAA,IACF;AAAA,IACA,iBAAiB;AAAA,MACf,SAAS;AAAA,MACT,MAAM;AAAA,IACR;AAAA,EACF;AACF,GAEMC,IAASC,EAAM,WAInB,CAAC,EAAE,WAAAC,GAAW,SAAAC,GAAS,MAAAC,GAAM,GAAGC,KAASC,MACzCC,gBAAAA,EAAA;AAAA,EAACC,EAAgB;AAAA,EAAhB;AAAA,IACC,KAAAF;AAAA,IACA,WAAWG,EAAGX,EAAe,EAAE,SAAAK,GAAS,MAAAC,GAAM,WAAAF,EAAA,CAAW,CAAC;AAAA,IACzD,GAAGG;AAAA,EAAA;AACN,CACD;AAEDL,EAAO,cAAcQ,EAAgB,KAAK;"}
@@ -1,35 +1,42 @@
1
- import { j as d } from "./index.es33.js";
2
- import * as t from "@radix-ui/react-tooltip";
3
- import { cva as s } from "class-variance-authority";
4
- import * as n from "react";
5
- import { cn as m } from "./index.es34.js";
6
- const l = s(
7
- "z-50 overflow-hidden rounded px-12 py-8 text-sm shadow-200 animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
1
+ import { j as n } from "./index.es34.js";
2
+ import * as t from "@radix-ui/react-toggle-group";
3
+ import * as e from "react";
4
+ import { toggleVariants as f } from "./index.es29.js";
5
+ import { cn as l } from "./index.es35.js";
6
+ const c = e.createContext({
7
+ variant: "default",
8
+ size: "icon"
9
+ }), g = e.forwardRef(({ className: o, variant: r, size: a, children: s, ...i }, m) => /* @__PURE__ */ n.jsx(
10
+ t.Root,
8
11
  {
9
- variants: {
10
- variant: {
11
- default: "bg-gray-800 text-white text-sm",
12
- inverted: "bg-white text-gray-800 border border-gray-900-8"
13
- }
14
- },
15
- defaultVariants: {
16
- variant: "default"
17
- }
18
- }
19
- ), v = t.Provider, x = t.Root, u = t.Trigger, f = n.forwardRef(({ variant: o, className: a, sideOffset: e = 4, ...i }, r) => /* @__PURE__ */ d.jsx(
20
- t.Content,
21
- {
22
- ref: r,
23
- sideOffset: e,
24
- className: m(l({ variant: o, className: a })),
25
- ...i
12
+ ref: m,
13
+ className: l("flex items-center justify-center gap-8", o),
14
+ ...i,
15
+ children: /* @__PURE__ */ n.jsx(c.Provider, { value: { variant: r, size: a }, children: s })
26
16
  }
27
17
  ));
28
- f.displayName = t.Content.displayName;
18
+ g.displayName = t.Root.displayName;
19
+ const x = e.forwardRef(({ className: o, children: r, variant: a, size: s, ...i }, m) => {
20
+ const p = e.useContext(c);
21
+ return /* @__PURE__ */ n.jsx(
22
+ t.Item,
23
+ {
24
+ ref: m,
25
+ className: l(
26
+ f({
27
+ variant: p.variant || a,
28
+ size: p.size || s
29
+ }),
30
+ o
31
+ ),
32
+ ...i,
33
+ children: r
34
+ }
35
+ );
36
+ });
37
+ x.displayName = t.Item.displayName;
29
38
  export {
30
- x as Tooltip,
31
- f as TooltipContent,
32
- v as TooltipProvider,
33
- u as TooltipTrigger
39
+ g as ToggleGroup,
40
+ x as ToggleGroupItem
34
41
  };
35
42
  //# sourceMappingURL=index.es30.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es30.js","sources":["../src/Tooltip/index.tsx"],"sourcesContent":["'use client'\n\nimport * as TooltipPrimitive from '@radix-ui/react-tooltip'\nimport { VariantProps, cva } from 'class-variance-authority'\nimport * as React from 'react'\nimport { cn } from '../lib/utils'\n\nconst tooltipContentVariants = cva(\n 'z-50 overflow-hidden rounded px-12 py-8 text-sm shadow-200 animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2',\n {\n variants: {\n variant: {\n default: 'bg-gray-800 text-white text-sm',\n inverted: 'bg-white text-gray-800 border border-gray-900-8'\n }\n },\n defaultVariants: {\n variant: 'default'\n }\n }\n)\n\nconst TooltipProvider = TooltipPrimitive.Provider\n\nconst Tooltip = TooltipPrimitive.Root\n\nconst TooltipTrigger = TooltipPrimitive.Trigger\n\ninterface TooltipContentProps\n extends React.ComponentPropsWithoutRef<typeof TooltipPrimitive.Content>,\n VariantProps<typeof tooltipContentVariants> {\n asChild?: boolean\n}\n\nconst TooltipContent = React.forwardRef<\n React.ElementRef<typeof TooltipPrimitive.Content>,\n TooltipContentProps\n>(({ variant, className, sideOffset = 4, ...props }, ref) => (\n <TooltipPrimitive.Content\n ref={ref}\n sideOffset={sideOffset}\n className={cn(tooltipContentVariants({ variant, className }))}\n {...props}\n />\n))\nTooltipContent.displayName = TooltipPrimitive.Content.displayName\n\nexport { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger }\n"],"names":["tooltipContentVariants","cva","TooltipProvider","TooltipPrimitive","Tooltip","TooltipTrigger","TooltipContent","React","variant","className","sideOffset","props","ref","jsx","cn"],"mappings":";;;;;AAOA,MAAMA,IAAyBC;AAAA,EAC7B;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,SAAS;AAAA,QACP,SAAS;AAAA,QACT,UAAU;AAAA,MACZ;AAAA,IACF;AAAA,IACA,iBAAiB;AAAA,MACf,SAAS;AAAA,IACX;AAAA,EACF;AACF,GAEMC,IAAkBC,EAAiB,UAEnCC,IAAUD,EAAiB,MAE3BE,IAAiBF,EAAiB,SAQlCG,IAAiBC,EAAM,WAG3B,CAAC,EAAE,SAAAC,GAAS,WAAAC,GAAW,YAAAC,IAAa,GAAG,GAAGC,EAAM,GAAGC,MACnDC,gBAAAA,EAAA;AAAA,EAACV,EAAiB;AAAA,EAAjB;AAAA,IACC,KAAAS;AAAA,IACA,YAAAF;AAAA,IACA,WAAWI,EAAGd,EAAuB,EAAE,SAAAQ,GAAS,WAAAC,EAAW,CAAA,CAAC;AAAA,IAC3D,GAAGE;AAAA,EAAA;AACN,CACD;AACDL,EAAe,cAAcH,EAAiB,QAAQ;"}
1
+ {"version":3,"file":"index.es30.js","sources":["../src/ToggleGroup/index.tsx"],"sourcesContent":["'use client'\n\nimport * as ToggleGroupPrimitive from '@radix-ui/react-toggle-group'\nimport { VariantProps } from 'class-variance-authority'\nimport * as React from 'react'\nimport { toggleVariants } from '../Toggle'\nimport { cn } from '../lib/utils'\n\nconst ToggleGroupContext = React.createContext<\n VariantProps<typeof toggleVariants>\n>({\n variant: 'default',\n size: 'icon'\n})\n\nconst ToggleGroup = React.forwardRef<\n React.ElementRef<typeof ToggleGroupPrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof ToggleGroupPrimitive.Root> &\n VariantProps<typeof toggleVariants>\n>(({ className, variant, size, children, ...props }, ref) => (\n <ToggleGroupPrimitive.Root\n ref={ref}\n className={cn('flex items-center justify-center gap-8', className)}\n {...props}\n >\n <ToggleGroupContext.Provider value={{ variant, size }}>\n {children}\n </ToggleGroupContext.Provider>\n </ToggleGroupPrimitive.Root>\n))\n\nToggleGroup.displayName = ToggleGroupPrimitive.Root.displayName\n\nconst ToggleGroupItem = React.forwardRef<\n React.ElementRef<typeof ToggleGroupPrimitive.Item>,\n React.ComponentPropsWithoutRef<typeof ToggleGroupPrimitive.Item> &\n VariantProps<typeof toggleVariants>\n>(({ className, children, variant, size, ...props }, ref) => {\n const context = React.useContext(ToggleGroupContext)\n\n return (\n <ToggleGroupPrimitive.Item\n ref={ref}\n className={cn(\n toggleVariants({\n variant: context.variant || variant,\n size: context.size || size\n }),\n className\n )}\n {...props}\n >\n {children}\n </ToggleGroupPrimitive.Item>\n )\n})\n\nToggleGroupItem.displayName = ToggleGroupPrimitive.Item.displayName\n\nexport { ToggleGroup, ToggleGroupItem }\n"],"names":["ToggleGroupContext","React","ToggleGroup","className","variant","size","children","props","ref","jsx","ToggleGroupPrimitive","cn","ToggleGroupItem","context","toggleVariants"],"mappings":";;;;;AAQA,MAAMA,IAAqBC,EAAM,cAE/B;AAAA,EACA,SAAS;AAAA,EACT,MAAM;AACR,CAAC,GAEKC,IAAcD,EAAM,WAIxB,CAAC,EAAE,WAAAE,GAAW,SAAAC,GAAS,MAAAC,GAAM,UAAAC,GAAU,GAAGC,EAAM,GAAGC,MACnDC,gBAAAA,EAAA;AAAA,EAACC,EAAqB;AAAA,EAArB;AAAA,IACC,KAAAF;AAAA,IACA,WAAWG,EAAG,0CAA0CR,CAAS;AAAA,IAChE,GAAGI;AAAA,IAEJ,UAAAE,gBAAAA,EAAAA,IAACT,EAAmB,UAAnB,EAA4B,OAAO,EAAE,SAAAI,GAAS,MAAAC,KAC5C,UAAAC,GACH;AAAA,EAAA;AACF,CACD;AAEDJ,EAAY,cAAcQ,EAAqB,KAAK;AAEpD,MAAME,IAAkBX,EAAM,WAI5B,CAAC,EAAE,WAAAE,GAAW,UAAAG,GAAU,SAAAF,GAAS,MAAAC,GAAM,GAAGE,EAAM,GAAGC,MAAQ;AACrD,QAAAK,IAAUZ,EAAM,WAAWD,CAAkB;AAGjD,SAAAS,gBAAAA,EAAA;AAAA,IAACC,EAAqB;AAAA,IAArB;AAAA,MACC,KAAAF;AAAA,MACA,WAAWG;AAAA,QACTG,EAAe;AAAA,UACb,SAASD,EAAQ,WAAWT;AAAA,UAC5B,MAAMS,EAAQ,QAAQR;AAAA,QAAA,CACvB;AAAA,QACDF;AAAA,MACF;AAAA,MACC,GAAGI;AAAA,MAEH,UAAAD;AAAA,IAAA;AAAA,EAAA;AAGP,CAAC;AAEDM,EAAgB,cAAcF,EAAqB,KAAK;"}