@luxfi/ui 7.4.14 → 8.0.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 (244) hide show
  1. package/LICENSE.md +21 -0
  2. package/dist/accordion.d.ts +10 -12
  3. package/dist/accordion.d.ts.map +1 -0
  4. package/dist/alert.cjs +7 -11
  5. package/dist/alert.d.ts +4 -5
  6. package/dist/alert.d.ts.map +1 -0
  7. package/dist/alert.js +1 -5
  8. package/dist/auth.d.ts +11 -13
  9. package/dist/auth.d.ts.map +1 -0
  10. package/dist/avatar.d.ts +5 -6
  11. package/dist/avatar.d.ts.map +1 -0
  12. package/dist/badge.cjs +7 -11
  13. package/dist/badge.d.ts +7 -8
  14. package/dist/badge.d.ts.map +1 -0
  15. package/dist/badge.js +1 -5
  16. package/dist/bank.d.ts +38 -43
  17. package/dist/bank.d.ts.map +1 -0
  18. package/dist/button.cjs +7 -23
  19. package/dist/button.d.ts +8 -13
  20. package/dist/button.d.ts.map +1 -0
  21. package/dist/button.js +2 -17
  22. package/dist/checkbox.d.ts +6 -7
  23. package/dist/checkbox.d.ts.map +1 -0
  24. package/dist/chrome.cjs +4 -8
  25. package/dist/chrome.d.ts +15 -19
  26. package/dist/chrome.d.ts.map +1 -0
  27. package/dist/chrome.js +1 -5
  28. package/dist/close-button.d.ts +3 -5
  29. package/dist/close-button.d.ts.map +1 -0
  30. package/dist/collapsible.cjs +19 -23
  31. package/dist/collapsible.d.ts +11 -13
  32. package/dist/collapsible.d.ts.map +1 -0
  33. package/dist/collapsible.js +1 -5
  34. package/dist/color-mode.d.ts +7 -9
  35. package/dist/color-mode.d.ts.map +1 -0
  36. package/dist/dialog.cjs +7 -11
  37. package/dist/dialog.d.ts +50 -54
  38. package/dist/dialog.d.ts.map +1 -0
  39. package/dist/dialog.js +1 -5
  40. package/dist/drawer.d.ts +33 -38
  41. package/dist/drawer.d.ts.map +1 -0
  42. package/dist/empty-state.d.ts +4 -6
  43. package/dist/empty-state.d.ts.map +1 -0
  44. package/dist/engine.d.ts +35 -0
  45. package/dist/engine.d.ts.map +1 -0
  46. package/dist/expiration-selector.d.ts +4 -6
  47. package/dist/expiration-selector.d.ts.map +1 -0
  48. package/dist/field.d.ts +5 -7
  49. package/dist/field.d.ts.map +1 -0
  50. package/dist/greeks-display.d.ts +3 -5
  51. package/dist/greeks-display.d.ts.map +1 -0
  52. package/dist/gui.d.ts +1 -1
  53. package/dist/gui.d.ts.map +1 -0
  54. package/dist/heading.cjs +12 -3
  55. package/dist/heading.d.ts +4 -6
  56. package/dist/heading.d.ts.map +1 -0
  57. package/dist/heading.js +12 -3
  58. package/dist/iam.d.ts +10 -12
  59. package/dist/iam.d.ts.map +1 -0
  60. package/dist/icon-button.cjs +7 -11
  61. package/dist/icon-button.d.ts +4 -5
  62. package/dist/icon-button.d.ts.map +1 -0
  63. package/dist/icon-button.js +1 -5
  64. package/dist/icons.d.ts +1 -0
  65. package/dist/icons.d.ts.map +1 -0
  66. package/dist/identity.d.ts +9 -11
  67. package/dist/identity.d.ts.map +1 -0
  68. package/dist/image.cjs +8 -12
  69. package/dist/image.d.ts +10 -11
  70. package/dist/image.d.ts.map +1 -0
  71. package/dist/image.js +1 -5
  72. package/dist/index.cjs +89 -91
  73. package/dist/index.d.ts +86 -60
  74. package/dist/index.d.ts.map +1 -0
  75. package/dist/index.js +30 -33
  76. package/dist/ink.d.ts +14 -0
  77. package/dist/ink.d.ts.map +1 -0
  78. package/dist/input-group.d.ts +4 -6
  79. package/dist/input-group.d.ts.map +1 -0
  80. package/dist/input.cjs +5 -5
  81. package/dist/input.d.ts +8 -9
  82. package/dist/input.d.ts.map +1 -0
  83. package/dist/input.js +5 -5
  84. package/dist/link.cjs +19 -23
  85. package/dist/link.d.ts +9 -11
  86. package/dist/link.d.ts.map +1 -0
  87. package/dist/link.js +1 -5
  88. package/dist/lux.config.cjs +2 -0
  89. package/dist/lux.config.d.ts +785 -240
  90. package/dist/lux.config.d.ts.map +1 -0
  91. package/dist/lux.config.js +2 -0
  92. package/dist/menu.d.ts +30 -31
  93. package/dist/menu.d.ts.map +1 -0
  94. package/dist/next.d.ts +5 -7
  95. package/dist/next.d.ts.map +1 -0
  96. package/dist/option-chain.d.ts +6 -8
  97. package/dist/option-chain.d.ts.map +1 -0
  98. package/dist/option-position.d.ts +4 -6
  99. package/dist/option-position.d.ts.map +1 -0
  100. package/dist/pin-input.cjs +1 -1
  101. package/dist/pin-input.d.ts +3 -5
  102. package/dist/pin-input.d.ts.map +1 -0
  103. package/dist/pin-input.js +1 -1
  104. package/dist/pnl-diagram.d.ts +5 -6
  105. package/dist/pnl-diagram.d.ts.map +1 -0
  106. package/dist/popover.cjs +9 -13
  107. package/dist/popover.d.ts +24 -25
  108. package/dist/popover.d.ts.map +1 -0
  109. package/dist/popover.js +1 -5
  110. package/dist/progress-circle.cjs +2 -6
  111. package/dist/progress-circle.d.ts +8 -9
  112. package/dist/progress-circle.d.ts.map +1 -0
  113. package/dist/progress-circle.js +1 -5
  114. package/dist/progress.d.ts +3 -4
  115. package/dist/progress.d.ts.map +1 -0
  116. package/dist/provider.cjs +2 -0
  117. package/dist/provider.d.ts +8 -10
  118. package/dist/provider.d.ts.map +1 -0
  119. package/dist/provider.js +2 -0
  120. package/dist/radio.d.ts +6 -7
  121. package/dist/radio.d.ts.map +1 -0
  122. package/dist/rating.d.ts +3 -5
  123. package/dist/rating.d.ts.map +1 -0
  124. package/dist/select.cjs +16 -20
  125. package/dist/select.d.ts +38 -41
  126. package/dist/select.d.ts.map +1 -0
  127. package/dist/select.js +1 -5
  128. package/dist/separator.d.ts +5 -6
  129. package/dist/separator.d.ts.map +1 -0
  130. package/dist/skeleton.cjs +7 -11
  131. package/dist/skeleton.d.ts +9 -12
  132. package/dist/skeleton.d.ts.map +1 -0
  133. package/dist/skeleton.js +1 -5
  134. package/dist/slider.cjs +1 -1
  135. package/dist/slider.d.ts +3 -5
  136. package/dist/slider.d.ts.map +1 -0
  137. package/dist/slider.js +1 -1
  138. package/dist/strategy-builder.d.ts +6 -8
  139. package/dist/strategy-builder.d.ts.map +1 -0
  140. package/dist/switch.cjs +1 -1
  141. package/dist/switch.d.ts +3 -5
  142. package/dist/switch.d.ts.map +1 -0
  143. package/dist/switch.js +1 -1
  144. package/dist/table.cjs +30 -34
  145. package/dist/table.d.ts +23 -25
  146. package/dist/table.d.ts.map +1 -0
  147. package/dist/table.js +1 -5
  148. package/dist/tabs.d.ts +12 -13
  149. package/dist/tabs.d.ts.map +1 -0
  150. package/dist/tag.cjs +7 -11
  151. package/dist/tag.d.ts +4 -5
  152. package/dist/tag.d.ts.map +1 -0
  153. package/dist/tag.js +1 -5
  154. package/dist/textarea.cjs +10 -10
  155. package/dist/textarea.d.ts +5 -6
  156. package/dist/textarea.d.ts.map +1 -0
  157. package/dist/textarea.js +10 -10
  158. package/dist/toaster.d.ts +4 -5
  159. package/dist/toaster.d.ts.map +1 -0
  160. package/dist/tooltip.d.ts +3 -5
  161. package/dist/tooltip.d.ts.map +1 -0
  162. package/dist/use-narrow.d.ts +6 -7
  163. package/dist/use-narrow.d.ts.map +1 -0
  164. package/dist/utils/cn.d.ts +2 -0
  165. package/dist/utils/cn.d.ts.map +1 -0
  166. package/dist/utils.cjs +6 -7
  167. package/dist/utils.d.ts +13 -5
  168. package/dist/utils.d.ts.map +1 -0
  169. package/dist/utils.js +1 -9
  170. package/dist/vite.d.ts +3 -3
  171. package/dist/vite.d.ts.map +1 -0
  172. package/dist/white-label.d.ts +12 -12
  173. package/dist/white-label.d.ts.map +1 -0
  174. package/package.json +32 -26
  175. package/src/button.tsx +0 -18
  176. package/src/heading.tsx +12 -3
  177. package/src/index.ts +0 -1
  178. package/src/input.tsx +6 -6
  179. package/src/lux.config.ts +19 -0
  180. package/src/pin-input.tsx +1 -1
  181. package/src/slider.tsx +1 -1
  182. package/src/switch.tsx +1 -1
  183. package/src/textarea.tsx +6 -6
  184. package/src/utils/cn.ts +3 -7
  185. package/src/utils.ts +12 -6
  186. package/tokens.css +11 -0
  187. package/dist/accordion.d.cts +0 -41
  188. package/dist/alert.d.cts +0 -30
  189. package/dist/auth.d.cts +0 -80
  190. package/dist/avatar.d.cts +0 -25
  191. package/dist/badge.d.cts +0 -19
  192. package/dist/bank.d.cts +0 -83
  193. package/dist/button.d.cts +0 -55
  194. package/dist/checkbox.d.cts +0 -32
  195. package/dist/chrome.d.cts +0 -93
  196. package/dist/close-button.d.cts +0 -9
  197. package/dist/collapsible.d.cts +0 -24
  198. package/dist/color-mode.d.cts +0 -25
  199. package/dist/dialog.d.cts +0 -118
  200. package/dist/drawer.d.cts +0 -69
  201. package/dist/empty-state.d.cts +0 -13
  202. package/dist/expiration-selector.d.cts +0 -16
  203. package/dist/field.d.cts +0 -23
  204. package/dist/greeks-display.d.cts +0 -14
  205. package/dist/gui.d.cts +0 -2
  206. package/dist/heading.d.cts +0 -8
  207. package/dist/iam.d.cts +0 -65
  208. package/dist/icon-button.d.cts +0 -37
  209. package/dist/icons.d.cts +0 -1
  210. package/dist/identity.d.cts +0 -64
  211. package/dist/image.d.cts +0 -57
  212. package/dist/index.d.cts +0 -60
  213. package/dist/input-group.d.cts +0 -17
  214. package/dist/input.d.cts +0 -37
  215. package/dist/link.d.cts +0 -37
  216. package/dist/lux.config.d.cts +0 -433
  217. package/dist/menu.d.cts +0 -68
  218. package/dist/next.d.cts +0 -32
  219. package/dist/option-chain.d.cts +0 -37
  220. package/dist/option-position.d.cts +0 -29
  221. package/dist/pin-input.d.cts +0 -25
  222. package/dist/pnl-diagram.d.cts +0 -11
  223. package/dist/popover.d.cts +0 -73
  224. package/dist/progress-circle.d.cts +0 -47
  225. package/dist/progress.d.cts +0 -28
  226. package/dist/provider.d.cts +0 -25
  227. package/dist/radio.d.cts +0 -53
  228. package/dist/rating.d.cts +0 -14
  229. package/dist/select.d.cts +0 -161
  230. package/dist/separator.d.cts +0 -13
  231. package/dist/skeleton.d.cts +0 -76
  232. package/dist/slider.d.cts +0 -24
  233. package/dist/strategy-builder.d.cts +0 -26
  234. package/dist/switch.d.cts +0 -27
  235. package/dist/table.d.cts +0 -107
  236. package/dist/tabs.d.cts +0 -34
  237. package/dist/tag.d.cts +0 -21
  238. package/dist/textarea.d.cts +0 -13
  239. package/dist/toaster.d.cts +0 -28
  240. package/dist/tooltip.d.cts +0 -38
  241. package/dist/use-narrow.d.cts +0 -12
  242. package/dist/utils.d.cts +0 -5
  243. package/dist/vite.d.cts +0 -29
  244. package/dist/white-label.d.cts +0 -59
@@ -3,8 +3,7 @@
3
3
 
4
4
  var gui = require('@hanzo/gui');
5
5
  var React = require('react');
6
- var clsx = require('clsx');
7
- var tailwindMerge = require('tailwind-merge');
6
+ var ui = require('@hanzo/ui');
8
7
  var jsxRuntime = require('react/jsx-runtime');
9
8
 
10
9
  function _interopNamespace(e) {
@@ -28,9 +27,6 @@ function _interopNamespace(e) {
28
27
  var React__namespace = /*#__PURE__*/_interopNamespace(React);
29
28
 
30
29
  // src/icon-button.tsx
31
- function cn(...inputs) {
32
- return tailwindMerge.twMerge(clsx.clsx(inputs));
33
- }
34
30
  var SHIM_PROPS = [
35
31
  "w",
36
32
  "h",
@@ -153,7 +149,7 @@ var Skeleton = React__namespace.forwardRef(
153
149
  const shimStyle = shimToStyle(props);
154
150
  const mergedStyle = Object.keys(shimStyle).length > 0 || styleProp ? { ...shimStyle, ...styleProp } : void 0;
155
151
  const hideBelowClass = props.hideBelow ? HIDE_BELOW_MAP[props.hideBelow] : void 0;
156
- const cls = hideBelowClass ? cn(className, hideBelowClass) : className;
152
+ const cls = hideBelowClass ? ui.cn(className, hideBelowClass) : className;
157
153
  const htmlRest = stripShims(allRest);
158
154
  if (!loading) {
159
155
  if (asChild && React__namespace.isValidElement(children)) return children;
@@ -165,7 +161,7 @@ var Skeleton = React__namespace.forwardRef(
165
161
  {
166
162
  ref,
167
163
  "data-loading": true,
168
- className: cn(SKELETON_CLASSES, "[&_*]:invisible", cls),
164
+ className: ui.cn(SKELETON_CLASSES, "[&_*]:invisible", cls),
169
165
  style: mergedStyle,
170
166
  ...htmlRest,
171
167
  children
@@ -177,7 +173,7 @@ var Skeleton = React__namespace.forwardRef(
177
173
  {
178
174
  ref,
179
175
  "data-loading": true,
180
- className: cn(SKELETON_CLASSES, children ? "[&_*]:invisible" : "min-h-5", cls),
176
+ className: ui.cn(SKELETON_CLASSES, children ? "[&_*]:invisible" : "min-h-5", cls),
181
177
  style: mergedStyle,
182
178
  ...htmlRest,
183
179
  children
@@ -194,7 +190,7 @@ React__namespace.forwardRef(
194
190
  {
195
191
  ref,
196
192
  loading,
197
- className: cn("rounded-full shrink-0", className),
193
+ className: ui.cn("rounded-full shrink-0", className),
198
194
  style: { width: dimension, height: dimension, ...rest.style },
199
195
  ...rest
200
196
  }
@@ -204,11 +200,11 @@ React__namespace.forwardRef(
204
200
  React__namespace.forwardRef(
205
201
  function SkeletonText2(props, ref) {
206
202
  const { noOfLines = 3, loading = true, className, ...rest } = props;
207
- return /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: cn("flex w-full flex-col gap-2", className), ...rest, children: Array.from({ length: noOfLines }).map((_, index) => /* @__PURE__ */ jsxRuntime.jsx(
203
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: ui.cn("flex w-full flex-col gap-2", className), ...rest, children: Array.from({ length: noOfLines }).map((_, index) => /* @__PURE__ */ jsxRuntime.jsx(
208
204
  Skeleton,
209
205
  {
210
206
  loading,
211
- className: cn("h-4", index === noOfLines - 1 && "max-w-[80%]")
207
+ className: ui.cn("h-4", index === noOfLines - 1 && "max-w-[80%]")
212
208
  },
213
209
  index
214
210
  )) });
@@ -1,5 +1,4 @@
1
1
  import * as React from 'react';
2
-
3
2
  type Style = Record<string, unknown>;
4
3
  /**
5
4
  * Resting look, and the looks that replace it while selected or expanded.
@@ -14,7 +13,7 @@ declare const VARIANT: Record<string, {
14
13
  }>;
15
14
  type Variant = keyof typeof VARIANT;
16
15
  type Size = '2xs' | '2xs_alt' | 'md';
17
- interface IconButtonProps extends Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, 'size'> {
16
+ export interface IconButtonProps extends Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, 'size'> {
18
17
  /** Visual variant */
19
18
  variant?: Variant;
20
19
  /** Icon-button size */
@@ -32,6 +31,6 @@ interface IconButtonProps extends Omit<React.ButtonHTMLAttributes<HTMLButtonElem
32
31
  /** Polymorphic element type (e.g. "div") */
33
32
  as?: React.ElementType;
34
33
  }
35
- declare const IconButton: React.ForwardRefExoticComponent<IconButtonProps & React.RefAttributes<HTMLButtonElement>>;
36
-
37
- export { IconButton, type IconButtonProps };
34
+ export declare const IconButton: React.ForwardRefExoticComponent<IconButtonProps & React.RefAttributes<HTMLButtonElement>>;
35
+ export {};
36
+ //# sourceMappingURL=icon-button.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"icon-button.d.ts","sourceRoot":"","sources":["../src/icon-button.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AA4C/B,KAAK,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAMrC;;;;;GAKG;AACH,QAAA,MAAM,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,EAAE,KAAK,CAAA;CAAE,CA6DhF,CAAC;AAKF,KAAK,OAAO,GAAG,MAAM,OAAO,OAAO,CAAC;AACpC,KAAK,IAAI,GAAG,KAAK,GAAG,SAAS,GAAG,IAAI,CAAC;AAErC,MAAM,WAAW,eAAgB,SAAQ,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAElG,qBAAqB;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,uBAAuB;IACvB,IAAI,CAAC,EAAE,IAAI,CAAC;IAEZ,+CAA+C;IAC/C,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,0DAA0D;IAC1D,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B,yDAAyD;IACzD,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,yDAAyD;IACzD,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,uCAAuC;IACvC,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB,4CAA4C;IAC5C,EAAE,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC;CACxB;AAED,eAAO,MAAM,UAAU,2FAwDtB,CAAC"}
@@ -1,14 +1,10 @@
1
1
  "use client";
2
2
  import { styled, View } from '@hanzo/gui';
3
3
  import * as React from 'react';
4
- import { clsx } from 'clsx';
5
- import { twMerge } from 'tailwind-merge';
4
+ import { cn } from '@hanzo/ui';
6
5
  import { jsx } from 'react/jsx-runtime';
7
6
 
8
7
  // src/icon-button.tsx
9
- function cn(...inputs) {
10
- return twMerge(clsx(inputs));
11
- }
12
8
  var SHIM_PROPS = [
13
9
  "w",
14
10
  "h",
package/dist/icons.d.ts CHANGED
@@ -1 +1,2 @@
1
1
  export * from 'lucide-react';
2
+ //# sourceMappingURL=icons.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"icons.d.ts","sourceRoot":"","sources":["../src/icons.ts"],"names":[],"mappings":"AAiBA,cAAc,cAAc,CAAC"}
@@ -1,8 +1,7 @@
1
1
  import * as React from 'react';
2
- import { IamAccount, IamOrg, IamProject } from './iam.js';
3
- import { WhiteLabel } from './white-label.js';
4
-
5
- type IdentityStatus = 'loading' | 'anonymous' | 'ready' | 'error';
2
+ import { type IamAccount, type IamOrg, type IamProject } from './iam';
3
+ import type { WhiteLabel } from './white-label';
4
+ export type IdentityStatus = 'loading' | 'anonymous' | 'ready' | 'error';
6
5
  /**
7
6
  * How the chrome gets a bearer and moves the user in and out of a session.
8
7
  *
@@ -14,7 +13,7 @@ type IdentityStatus = 'loading' | 'anonymous' | 'ready' | 'error';
14
13
  * The bearer itself needs no wiring: the default reads the SDK's own token
15
14
  * store, so there is exactly one token and one refresh timer per surface.
16
15
  */
17
- interface IdentityAuth {
16
+ export interface IdentityAuth {
18
17
  /** The IAM access token. Defaults to the `@hanzo/iam` SDK's token store. */
19
18
  readonly token?: () => string | null | Promise<string | null>;
20
19
  /** Start a sign-in. */
@@ -22,7 +21,7 @@ interface IdentityAuth {
22
21
  /** End the session. */
23
22
  readonly signOut?: () => void;
24
23
  }
25
- interface Identity {
24
+ export interface Identity {
26
25
  readonly status: IdentityStatus;
27
26
  /** The signed-in principal, or null. */
28
27
  readonly account: IamAccount | null;
@@ -44,14 +43,14 @@ interface Identity {
44
43
  readonly signOut: () => void;
45
44
  readonly reload: () => void;
46
45
  }
47
- interface IdentityProviderProps {
46
+ export interface IdentityProviderProps {
48
47
  readonly children: React.ReactNode;
49
48
  /** Bearer + sign-in/out. Defaults to the `@hanzo/iam` token store. */
50
49
  readonly auth?: IdentityAuth;
51
50
  /** Where sign-in goes when `auth.signIn` is not supplied. */
52
51
  readonly loginPath?: string;
53
52
  }
54
- declare const IdentityProvider: ({ children, auth, loginPath, }: IdentityProviderProps) => React.ReactElement;
53
+ export declare const IdentityProvider: ({ children, auth, loginPath, }: IdentityProviderProps) => React.ReactElement;
55
54
  /**
56
55
  * The current identity.
57
56
  *
@@ -59,6 +58,5 @@ declare const IdentityProvider: ({ children, auth, loginPath, }: IdentityProvide
59
58
  * throwing: chrome that renders before a surface has wired identity should
60
59
  * offer sign-in, not crash the page.
61
60
  */
62
- declare function useIdentity(): Identity;
63
-
64
- export { type Identity, type IdentityAuth, IdentityProvider, type IdentityProviderProps, type IdentityStatus, useIdentity };
61
+ export declare function useIdentity(): Identity;
62
+ //# sourceMappingURL=identity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"identity.d.ts","sourceRoot":"","sources":["../src/identity.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAIL,KAAK,UAAU,EACf,KAAK,MAAM,EACX,KAAK,UAAU,EAChB,MAAM,OAAO,CAAC;AAEf,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAiBhD,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,WAAW,GAAG,OAAO,GAAG,OAAO,CAAC;AAEzE;;;;;;;;;;GAUG;AACH,MAAM,WAAW,YAAY;IAC3B,4EAA4E;IAC5E,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC9D,uBAAuB;IACvB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IAC7B,uBAAuB;IACvB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CAC/B;AAED,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;IAChC,wCAAwC;IACxC,QAAQ,CAAC,OAAO,EAAE,UAAU,GAAG,IAAI,CAAC;IACpC,8CAA8C;IAC9C,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACrC,oEAAoE;IACpE,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,4CAA4C;IAC5C,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC;IAC7C,+DAA+D;IAC/D,QAAQ,CAAC,OAAO,EAAE,UAAU,GAAG,IAAI,CAAC;IACpC,oDAAoD;IACpD,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,yDAAyD;IACzD,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,QAAQ,CAAC,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C,QAAQ,CAAC,MAAM,EAAE,MAAM,IAAI,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,MAAM,IAAI,CAAC;CAC7B;AA6DD,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IACnC,sEAAsE;IACtE,QAAQ,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC;IAC7B,6DAA6D;IAC7D,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,eAAO,MAAM,gBAAgB,GAAI,gCAI9B,qBAAqB,KAAG,KAAK,CAAC,YAiJhC,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,WAAW,IAAI,QAAQ,CAqBtC"}
package/dist/image.cjs CHANGED
@@ -2,8 +2,7 @@
2
2
  'use strict';
3
3
 
4
4
  var React2 = require('react');
5
- var clsx = require('clsx');
6
- var tailwindMerge = require('tailwind-merge');
5
+ var ui = require('@hanzo/ui');
7
6
  var jsxRuntime = require('react/jsx-runtime');
8
7
 
9
8
  function _interopNamespace(e) {
@@ -27,9 +26,6 @@ function _interopNamespace(e) {
27
26
  var React2__namespace = /*#__PURE__*/_interopNamespace(React2);
28
27
 
29
28
  // src/image.tsx
30
- function cn(...inputs) {
31
- return tailwindMerge.twMerge(clsx.clsx(inputs));
32
- }
33
29
  var SHIM_PROPS = [
34
30
  "w",
35
31
  "h",
@@ -152,7 +148,7 @@ var Skeleton = React2__namespace.forwardRef(
152
148
  const shimStyle = shimToStyle(props);
153
149
  const mergedStyle = Object.keys(shimStyle).length > 0 || styleProp ? { ...shimStyle, ...styleProp } : void 0;
154
150
  const hideBelowClass = props.hideBelow ? HIDE_BELOW_MAP[props.hideBelow] : void 0;
155
- const cls = hideBelowClass ? cn(className, hideBelowClass) : className;
151
+ const cls = hideBelowClass ? ui.cn(className, hideBelowClass) : className;
156
152
  const htmlRest = stripShims(allRest);
157
153
  if (!loading) {
158
154
  if (asChild && React2__namespace.isValidElement(children)) return children;
@@ -164,7 +160,7 @@ var Skeleton = React2__namespace.forwardRef(
164
160
  {
165
161
  ref,
166
162
  "data-loading": true,
167
- className: cn(SKELETON_CLASSES, "[&_*]:invisible", cls),
163
+ className: ui.cn(SKELETON_CLASSES, "[&_*]:invisible", cls),
168
164
  style: mergedStyle,
169
165
  ...htmlRest,
170
166
  children
@@ -176,7 +172,7 @@ var Skeleton = React2__namespace.forwardRef(
176
172
  {
177
173
  ref,
178
174
  "data-loading": true,
179
- className: cn(SKELETON_CLASSES, children ? "[&_*]:invisible" : "min-h-5", cls),
175
+ className: ui.cn(SKELETON_CLASSES, children ? "[&_*]:invisible" : "min-h-5", cls),
180
176
  style: mergedStyle,
181
177
  ...htmlRest,
182
178
  children
@@ -193,7 +189,7 @@ React2__namespace.forwardRef(
193
189
  {
194
190
  ref,
195
191
  loading,
196
- className: cn("rounded-full shrink-0", className),
192
+ className: ui.cn("rounded-full shrink-0", className),
197
193
  style: { width: dimension, height: dimension, ...rest.style },
198
194
  ...rest
199
195
  }
@@ -203,11 +199,11 @@ React2__namespace.forwardRef(
203
199
  React2__namespace.forwardRef(
204
200
  function SkeletonText2(props, ref) {
205
201
  const { noOfLines = 3, loading = true, className, ...rest } = props;
206
- return /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: cn("flex w-full flex-col gap-2", className), ...rest, children: Array.from({ length: noOfLines }).map((_, index) => /* @__PURE__ */ jsxRuntime.jsx(
202
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: ui.cn("flex w-full flex-col gap-2", className), ...rest, children: Array.from({ length: noOfLines }).map((_, index) => /* @__PURE__ */ jsxRuntime.jsx(
207
203
  Skeleton,
208
204
  {
209
205
  loading,
210
- className: cn("h-4", index === noOfLines - 1 && "max-w-[80%]")
206
+ className: ui.cn("h-4", index === noOfLines - 1 && "max-w-[80%]")
211
207
  },
212
208
  index
213
209
  )) });
@@ -409,7 +405,7 @@ var Image = React2__namespace.default.forwardRef(
409
405
  alt: alt || "",
410
406
  onError: handleLoadError,
411
407
  onLoad: handleLoadSuccess,
412
- className: cn(className),
408
+ className: ui.cn(className),
413
409
  style: mergedStyle,
414
410
  ...extraProps
415
411
  }
package/dist/image.d.ts CHANGED
@@ -1,5 +1,4 @@
1
- import React__default from 'react';
2
-
1
+ import React from 'react';
3
2
  type CSSValue = string | number | undefined;
4
3
  type ResponsiveValue<T> = T | {
5
4
  base?: T;
@@ -40,18 +39,18 @@ interface StyleProps {
40
39
  overflow?: CSSValue;
41
40
  cursor?: CSSValue;
42
41
  }
43
- interface ImageProps extends StyleProps {
42
+ export interface ImageProps extends StyleProps {
44
43
  readonly className?: string;
45
44
  readonly src?: string;
46
45
  readonly alt?: string;
47
- readonly style?: React__default.CSSProperties;
48
- readonly fallback?: React__default.ReactNode;
49
- readonly onClick?: React__default.MouseEventHandler<HTMLImageElement>;
50
- readonly onLoad?: React__default.ReactEventHandler<HTMLImageElement>;
51
- readonly onError?: React__default.ReactEventHandler<HTMLImageElement>;
46
+ readonly style?: React.CSSProperties;
47
+ readonly fallback?: React.ReactNode;
48
+ readonly onClick?: React.MouseEventHandler<HTMLImageElement>;
49
+ readonly onLoad?: React.ReactEventHandler<HTMLImageElement>;
50
+ readonly onError?: React.ReactEventHandler<HTMLImageElement>;
52
51
  readonly skeletonWidth?: CSSValue;
53
52
  readonly skeletonHeight?: CSSValue;
54
53
  }
55
- declare const Image: React__default.ForwardRefExoticComponent<ImageProps & React__default.RefAttributes<HTMLImageElement>>;
56
-
57
- export { Image, type ImageProps };
54
+ export declare const Image: React.ForwardRefExoticComponent<ImageProps & React.RefAttributes<HTMLImageElement>>;
55
+ export {};
56
+ //# sourceMappingURL=image.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"image.d.ts","sourceRoot":"","sources":["../src/image.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAO1B,KAAK,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;AAC5C,KAAK,eAAe,CAAC,CAAC,IAAI,CAAC,GAAG;IAAE,IAAI,CAAC,EAAE,CAAC,CAAC;IAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAAC,KAAK,CAAC,EAAE,CAAC,CAAA;CAAE,CAAC;AAIlG,UAAU,UAAU;IAClB,OAAO,CAAC,EAAE,QAAQ,CAAC;IACnB,YAAY,CAAC,EAAE,QAAQ,CAAC;IACxB,KAAK,CAAC,EAAE,QAAQ,CAAC;IACjB,CAAC,CAAC,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC;IAC9B,MAAM,CAAC,EAAE,QAAQ,CAAC;IAClB,CAAC,CAAC,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC;IAC9B,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,EAAE,CAAC,EAAE,QAAQ,CAAC;IACd,EAAE,CAAC,EAAE,QAAQ,CAAC;IACd,EAAE,CAAC,EAAE,QAAQ,CAAC;IACd,EAAE,CAAC,EAAE,QAAQ,CAAC;IACd,EAAE,CAAC,EAAE,QAAQ,CAAC;IACd,EAAE,CAAC,EAAE,QAAQ,CAAC;IACd,WAAW,CAAC,EAAE,QAAQ,CAAC;IACvB,OAAO,CAAC,EAAE,QAAQ,CAAC;IACnB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,GAAG,CAAC,EAAE,QAAQ,CAAC;IACf,IAAI,CAAC,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC;IACjC,KAAK,CAAC,EAAE,QAAQ,CAAC;IACjB,MAAM,CAAC,EAAE,QAAQ,CAAC;IAClB,MAAM,CAAC,EAAE,QAAQ,CAAC;IAClB,SAAS,CAAC,EAAE,QAAQ,CAAC;IACrB,cAAc,CAAC,EAAE,QAAQ,CAAC;IAC1B,UAAU,CAAC,EAAE,QAAQ,CAAC;IACtB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,MAAM,CAAC,EAAE,QAAQ,CAAC;CACnB;AAED,MAAM,WAAW,UAAW,SAAQ,UAAU;IAC5C,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IACrC,QAAQ,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACpC,QAAQ,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;IAC7D,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;IAC5D,QAAQ,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;IAE7D,QAAQ,CAAC,aAAa,CAAC,EAAE,QAAQ,CAAC;IAClC,QAAQ,CAAC,cAAc,CAAC,EAAE,QAAQ,CAAC;CACpC;AA8JD,eAAO,MAAM,KAAK,qFAkEjB,CAAC"}
package/dist/image.js CHANGED
@@ -1,14 +1,10 @@
1
1
  "use client";
2
2
  import * as React2 from 'react';
3
3
  import React2__default from 'react';
4
- import { clsx } from 'clsx';
5
- import { twMerge } from 'tailwind-merge';
4
+ import { cn } from '@hanzo/ui';
6
5
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
7
6
 
8
7
  // src/image.tsx
9
- function cn(...inputs) {
10
- return twMerge(clsx(inputs));
11
- }
12
8
  var SHIM_PROPS = [
13
9
  "w",
14
10
  "h",