@a-type/ui 0.1.16 → 0.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 (49) hide show
  1. package/dist/cjs/components/avatar/Avatar.d.ts +9 -0
  2. package/dist/cjs/components/avatar/Avatar.js +34 -0
  3. package/dist/cjs/components/avatar/Avatar.js.map +1 -0
  4. package/dist/cjs/components/avatar/AvatarList.d.ts +17 -0
  5. package/dist/cjs/components/avatar/AvatarList.js +45 -0
  6. package/dist/cjs/components/avatar/AvatarList.js.map +1 -0
  7. package/dist/cjs/components/avatar/index.d.ts +2 -0
  8. package/dist/cjs/components/avatar/index.js +19 -0
  9. package/dist/cjs/components/avatar/index.js.map +1 -0
  10. package/dist/cjs/components/avatar.d.ts +1 -0
  11. package/dist/cjs/components/avatar.js +18 -0
  12. package/dist/cjs/components/avatar.js.map +1 -0
  13. package/dist/cjs/components/button/Button.d.ts +1 -0
  14. package/dist/cjs/components/button/Button.js +4 -2
  15. package/dist/cjs/components/button/Button.js.map +1 -1
  16. package/dist/cjs/components/card/Card.stories.d.ts +18 -0
  17. package/dist/cjs/components/card/Card.stories.js +20 -0
  18. package/dist/cjs/components/card/Card.stories.js.map +1 -0
  19. package/dist/cjs/components/checkbox/Checkbox.d.ts +1 -1
  20. package/dist/cjs/components/dialog/Dialog.d.ts +1 -1
  21. package/dist/cjs/components/relativeTime/RelativeTime.js +12 -4
  22. package/dist/cjs/components/relativeTime/RelativeTime.js.map +1 -1
  23. package/dist/cjs/components/tabs/tabs.js +2 -2
  24. package/dist/cjs/components/tabs/tabs.js.map +1 -1
  25. package/dist/esm/components/avatar/Avatar.d.ts +9 -0
  26. package/dist/esm/components/avatar/Avatar.js +27 -0
  27. package/dist/esm/components/avatar/Avatar.js.map +1 -0
  28. package/dist/esm/components/avatar/AvatarList.d.ts +17 -0
  29. package/dist/esm/components/avatar/AvatarList.js +36 -0
  30. package/dist/esm/components/avatar/AvatarList.js.map +1 -0
  31. package/dist/esm/components/avatar/index.d.ts +2 -0
  32. package/dist/esm/components/avatar/index.js +3 -0
  33. package/dist/esm/components/avatar/index.js.map +1 -0
  34. package/dist/esm/components/avatar.d.ts +1 -0
  35. package/dist/esm/components/avatar.js +2 -0
  36. package/dist/esm/components/avatar.js.map +1 -0
  37. package/dist/esm/components/button/Button.d.ts +1 -0
  38. package/dist/esm/components/button/Button.js +4 -2
  39. package/dist/esm/components/button/Button.js.map +1 -1
  40. package/dist/esm/components/card/Card.stories.d.ts +18 -0
  41. package/dist/esm/components/card/Card.stories.js +17 -0
  42. package/dist/esm/components/card/Card.stories.js.map +1 -0
  43. package/dist/esm/components/checkbox/Checkbox.d.ts +1 -1
  44. package/dist/esm/components/dialog/Dialog.d.ts +1 -1
  45. package/dist/esm/components/relativeTime/RelativeTime.js +12 -4
  46. package/dist/esm/components/relativeTime/RelativeTime.js.map +1 -1
  47. package/dist/esm/components/tabs/tabs.js +2 -2
  48. package/dist/esm/components/tabs/tabs.js.map +1 -1
  49. package/package.json +15 -3
@@ -0,0 +1,9 @@
1
+ import { CSSProperties } from 'react';
2
+ export interface AvatarProps {
3
+ className?: string;
4
+ popIn?: boolean;
5
+ style?: CSSProperties;
6
+ imageSrc?: string;
7
+ name?: string;
8
+ }
9
+ export declare function Avatar({ className, popIn, imageSrc, name, ...rest }: AvatarProps): JSX.Element;
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ var __rest = (this && this.__rest) || function (s, e) {
3
+ var t = {};
4
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
5
+ t[p] = s[p];
6
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
7
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
8
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
9
+ t[p[i]] = s[p[i]];
10
+ }
11
+ return t;
12
+ };
13
+ var __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.Avatar = void 0;
18
+ const jsx_runtime_1 = require("react/jsx-runtime");
19
+ const classnames_1 = __importDefault(require("classnames"));
20
+ const icon_js_1 = require("../icon.js");
21
+ function Avatar(_a) {
22
+ var { className, popIn = true, imageSrc, name } = _a, rest = __rest(_a, ["className", "popIn", "imageSrc", "name"]);
23
+ const empty = !name && !imageSrc;
24
+ return ((0, jsx_runtime_1.jsxs)("div", Object.assign({ "data-pop": popIn, className: (0, classnames_1.default)('layer-components:(flex items-center justify-center rounded-full border-default p-2px overflow-hidden w-24px h-24px select-none relative bg-white flex-shrink-0)', popIn &&
25
+ 'layer-variants:(animate-pop-in-from-half animate-ease-springy animate-duration-200)', empty && 'layer-components(border-dashed bg-gray2)', className) }, rest, { children: [!empty && (0, jsx_runtime_1.jsx)(AvatarContent, { name: name, imageSrc: imageSrc }), empty && (0, jsx_runtime_1.jsx)(icon_js_1.Icon, { name: "profile" })] })));
26
+ }
27
+ exports.Avatar = Avatar;
28
+ function AvatarContent({ name, imageSrc, }) {
29
+ if (imageSrc) {
30
+ return ((0, jsx_runtime_1.jsx)("img", { className: "w-full h-full object-cover rounded-full", referrerPolicy: "no-referrer", crossOrigin: "anonymous", src: imageSrc, alt: `${name !== null && name !== void 0 ? name : 'user'}'s profile picture` }));
31
+ }
32
+ return ((0, jsx_runtime_1.jsx)("div", Object.assign({ className: "color-black items-center justify-center flex text-sm font-bold rounded-full" }, { children: (name === null || name === void 0 ? void 0 : name.charAt(0)) || '?' })));
33
+ }
34
+ //# sourceMappingURL=Avatar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Avatar.js","sourceRoot":"","sources":["../../../../src/components/avatar/Avatar.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,4DAAoC;AAEpC,wCAAkC;AAUlC,SAAgB,MAAM,CAAC,EAMT;QANS,EACtB,SAAS,EACT,KAAK,GAAG,IAAI,EACZ,QAAQ,EACR,IAAI,OAES,EADV,IAAI,cALe,0CAMtB,CADO;IAEP,MAAM,KAAK,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC;IACjC,OAAO,CACN,2DACW,KAAK,EACf,SAAS,EAAE,IAAA,oBAAU,EACpB,iKAAiK,EACjK,KAAK;YACJ,qFAAqF,EACtF,KAAK,IAAI,0CAA0C,EACnD,SAAS,CACT,IACG,IAAI,eAEP,CAAC,KAAK,IAAI,uBAAC,aAAa,IAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,GAAI,EAC3D,KAAK,IAAI,uBAAC,cAAI,IAAC,IAAI,EAAC,SAAS,GAAG,KAC5B,CACN,CAAC;AACH,CAAC;AAxBD,wBAwBC;AAED,SAAS,aAAa,CAAC,EACtB,IAAI,EACJ,QAAQ,GAIR;IACA,IAAI,QAAQ,EAAE;QACb,OAAO,CACN,gCACC,SAAS,EAAC,yCAAyC,EACnD,cAAc,EAAC,aAAa,EAC5B,WAAW,EAAC,WAAW,EACvB,GAAG,EAAE,QAAQ,EACb,GAAG,EAAE,GAAG,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,MAAM,oBAAoB,GACzC,CACF,CAAC;KACF;IACD,OAAO,CACN,8CAAK,SAAS,EAAC,6EAA6E,gBAC1F,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,CAAC,CAAC,CAAC,KAAI,GAAG,IAClB,CACN,CAAC;AACH,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { ReactNode } from 'react';
2
+ import { AvatarProps } from './Avatar.js';
3
+ export declare function AvatarList({ children, count, size, }: {
4
+ children: ReactNode;
5
+ count: number;
6
+ size?: number;
7
+ }): JSX.Element;
8
+ export declare function AvatarListItemRoot({ index, children, className, }: {
9
+ index: number;
10
+ children: ReactNode;
11
+ className?: string;
12
+ }): JSX.Element;
13
+ export declare function AvatarListItem({ index, className, ...rest }: {
14
+ index: number;
15
+ popIn?: boolean;
16
+ className?: string;
17
+ } & AvatarProps): JSX.Element;
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+ var __rest = (this && this.__rest) || function (s, e) {
3
+ var t = {};
4
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
5
+ t[p] = s[p];
6
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
7
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
8
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
9
+ t[p[i]] = s[p[i]];
10
+ }
11
+ return t;
12
+ };
13
+ var __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.AvatarListItem = exports.AvatarListItemRoot = exports.AvatarList = void 0;
18
+ const jsx_runtime_1 = require("react/jsx-runtime");
19
+ const react_1 = require("react");
20
+ const classnames_1 = __importDefault(require("classnames"));
21
+ const Avatar_js_1 = require("./Avatar.js");
22
+ const AvatarListContext = (0, react_1.createContext)({
23
+ size: 24,
24
+ });
25
+ function AvatarList({ children, count, size = 24, }) {
26
+ const width = count > 0 ? size + (count - 1) * ((size * 2) / 3) : 0;
27
+ return ((0, jsx_runtime_1.jsx)(AvatarListContext.Provider, Object.assign({ value: { size } }, { children: (0, jsx_runtime_1.jsx)("div", Object.assign({ className: "relative flex-basis-auto", style: { width, minWidth: width, height: size } }, { children: children })) })));
28
+ }
29
+ exports.AvatarList = AvatarList;
30
+ function AvatarListItemRoot({ index, children, className, }) {
31
+ const { size } = (0, react_1.useContext)(AvatarListContext);
32
+ return ((0, jsx_runtime_1.jsx)("div", Object.assign({ className: (0, classnames_1.default)('absolute', className), style: {
33
+ left: index === 0 ? 0 : index * ((size * 2) / 3),
34
+ zIndex: index,
35
+ top: 0,
36
+ } }, { children: children })));
37
+ }
38
+ exports.AvatarListItemRoot = AvatarListItemRoot;
39
+ function AvatarListItem(_a) {
40
+ var { index, className } = _a, rest = __rest(_a, ["index", "className"]);
41
+ const { size } = (0, react_1.useContext)(AvatarListContext);
42
+ return ((0, jsx_runtime_1.jsx)(AvatarListItemRoot, Object.assign({ index: index, className: className }, { children: (0, jsx_runtime_1.jsx)(Avatar_js_1.Avatar, Object.assign({ style: { width: size, height: size } }, rest)) })));
43
+ }
44
+ exports.AvatarListItem = AvatarListItem;
45
+ //# sourceMappingURL=AvatarList.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AvatarList.js","sourceRoot":"","sources":["../../../../src/components/avatar/AvatarList.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,iCAA6D;AAC7D,4DAAoC;AACpC,2CAAkD;AAElD,MAAM,iBAAiB,GAAG,IAAA,qBAAa,EAAmB;IACzD,IAAI,EAAE,EAAE;CACR,CAAC,CAAC;AAEH,SAAgB,UAAU,CAAC,EAC1B,QAAQ,EACR,KAAK,EACL,IAAI,GAAG,EAAE,GAKT;IACA,MAAM,KAAK,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAEpE,OAAO,CACN,uBAAC,iBAAiB,CAAC,QAAQ,kBAAC,KAAK,EAAE,EAAE,IAAI,EAAE,gBAC1C,8CACC,SAAS,EAAC,0BAA0B,EACpC,KAAK,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,gBAE9C,QAAQ,IACJ,IACsB,CAC7B,CAAC;AACH,CAAC;AArBD,gCAqBC;AAED,SAAgB,kBAAkB,CAAC,EAClC,KAAK,EACL,QAAQ,EACR,SAAS,GAKT;IACA,MAAM,EAAE,IAAI,EAAE,GAAG,IAAA,kBAAU,EAAC,iBAAiB,CAAC,CAAC;IAC/C,OAAO,CACN,8CACC,SAAS,EAAE,IAAA,oBAAU,EAAC,UAAU,EAAE,SAAS,CAAC,EAC5C,KAAK,EAAE;YACN,IAAI,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;YAChD,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,CAAC;SACN,gBAEA,QAAQ,IACJ,CACN,CAAC;AACH,CAAC;AAtBD,gDAsBC;AAED,SAAgB,cAAc,CAAC,EAQhB;QARgB,EAC9B,KAAK,EACL,SAAS,OAMK,EALX,IAAI,cAHuB,sBAI9B,CADO;IAMP,MAAM,EAAE,IAAI,EAAE,GAAG,IAAA,kBAAU,EAAC,iBAAiB,CAAC,CAAC;IAC/C,OAAO,CACN,uBAAC,kBAAkB,kBAAC,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,gBACrD,uBAAC,kBAAM,kBAAC,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAM,IAAI,EAAI,IACtC,CACrB,CAAC;AACH,CAAC;AAfD,wCAeC"}
@@ -0,0 +1,2 @@
1
+ export * from './Avatar.js';
2
+ export * from './AvatarList.js';
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./Avatar.js"), exports);
18
+ __exportStar(require("./AvatarList.js"), exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/avatar/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B;AAC5B,kDAAgC"}
@@ -0,0 +1 @@
1
+ export * from './avatar/index.js';
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./avatar/index.js"), exports);
18
+ //# sourceMappingURL=avatar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"avatar.js","sourceRoot":"","sources":["../../../src/components/avatar.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAkC"}
@@ -6,5 +6,6 @@ export interface ButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> {
6
6
  align?: 'start' | 'stretch' | 'end';
7
7
  visuallyDisabled?: boolean;
8
8
  loading?: boolean;
9
+ asChild?: boolean;
9
10
  }
10
11
  export declare const Button: import("react").ForwardRefExoticComponent<ButtonProps & import("react").RefAttributes<HTMLButtonElement>>;
@@ -20,8 +20,10 @@ const classnames_1 = __importDefault(require("classnames"));
20
20
  const react_1 = require("react");
21
21
  const spinner_js_1 = require("../spinner.js");
22
22
  const classes_js_1 = require("./classes.js");
23
+ const react_slot_1 = require("@radix-ui/react-slot");
23
24
  exports.Button = (0, react_1.forwardRef)(function Button(_a, ref) {
24
- var { className, color, size, toggled, align, visuallyDisabled, loading, children, disabled } = _a, props = __rest(_a, ["className", "color", "size", "toggled", "align", "visuallyDisabled", "loading", "children", "disabled"]);
25
- return ((0, jsx_runtime_1.jsxs)("button", Object.assign({ ref: ref }, props, { disabled: disabled || loading, "data-disabled": visuallyDisabled, tabIndex: visuallyDisabled ? -1 : undefined, className: (0, classnames_1.default)((0, classes_js_1.getButtonClassName)({ color, size, toggled, align }), className) }, { children: [loading && (0, jsx_runtime_1.jsx)(spinner_js_1.Spinner, { size: 16, className: "inline-block w-1em h-1em" }), children] })));
25
+ var { className, color, size, toggled, align, visuallyDisabled, loading, children, disabled, asChild } = _a, props = __rest(_a, ["className", "color", "size", "toggled", "align", "visuallyDisabled", "loading", "children", "disabled", "asChild"]);
26
+ const Comp = asChild ? react_slot_1.Slot : 'button';
27
+ return ((0, jsx_runtime_1.jsxs)(Comp, Object.assign({ ref: ref }, props, { disabled: disabled || loading, "data-disabled": visuallyDisabled, tabIndex: visuallyDisabled ? -1 : undefined, className: (0, classnames_1.default)((0, classes_js_1.getButtonClassName)({ color, size, toggled, align }), className) }, { children: [loading && (0, jsx_runtime_1.jsx)(spinner_js_1.Spinner, { size: 16, className: "inline-block w-1em h-1em" }), children] })));
26
28
  });
27
29
  //# sourceMappingURL=Button.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Button.js","sourceRoot":"","sources":["../../../../src/components/button/Button.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,4DAAoC;AACpC,iCAAyD;AACzD,8CAAwC;AACxC,6CAAkD;AAiBrC,QAAA,MAAM,GAAG,IAAA,kBAAU,EAC/B,SAAS,MAAM,CACd,EAWC,EACD,GAAG;QAZH,EACC,SAAS,EACT,KAAK,EACL,IAAI,EACJ,OAAO,EACP,KAAK,EACL,gBAAgB,EAChB,OAAO,EACP,QAAQ,EACR,QAAQ,OAER,EADG,KAAK,cAVT,yGAWC,CADQ;IAIT,OAAO,CACN,kDACC,GAAG,EAAE,GAAG,IACJ,KAAK,IACT,QAAQ,EAAE,QAAQ,IAAI,OAAO,mBACd,gBAAgB,EAC/B,QAAQ,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,EAC3C,SAAS,EAAE,IAAA,oBAAU,EACpB,IAAA,+BAAkB,EAAC,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,EACnD,SAAS,CACT,iBAEA,OAAO,IAAI,uBAAC,oBAAO,IAAC,IAAI,EAAE,EAAE,EAAE,SAAS,EAAC,0BAA0B,GAAG,EACrE,QAAQ,KACD,CACT,CAAC;AACH,CAAC,CACD,CAAC"}
1
+ {"version":3,"file":"Button.js","sourceRoot":"","sources":["../../../../src/components/button/Button.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,4DAAoC;AACpC,iCAAyD;AACzD,8CAAwC;AACxC,6CAAkD;AAClD,qDAA4C;AAkB/B,QAAA,MAAM,GAAG,IAAA,kBAAU,EAC/B,SAAS,MAAM,CACd,EAYC,EACD,GAAG;QAbH,EACC,SAAS,EACT,KAAK,EACL,IAAI,EACJ,OAAO,EACP,KAAK,EACL,gBAAgB,EAChB,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,OAAO,OAEP,EADG,KAAK,cAXT,oHAYC,CADQ;IAIT,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,iBAAI,CAAC,CAAC,CAAC,QAAQ,CAAC;IAEvC,OAAO,CACN,wBAAC,IAAI,kBACJ,GAAG,EAAE,GAAG,IACJ,KAAK,IACT,QAAQ,EAAE,QAAQ,IAAI,OAAO,mBACd,gBAAgB,EAC/B,QAAQ,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,EAC3C,SAAS,EAAE,IAAA,oBAAU,EACpB,IAAA,+BAAkB,EAAC,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,EACnD,SAAS,CACT,iBAEA,OAAO,IAAI,uBAAC,oBAAO,IAAC,IAAI,EAAE,EAAE,EAAE,SAAS,EAAC,0BAA0B,GAAG,EACrE,QAAQ,KACH,CACP,CAAC;AACH,CAAC,CACD,CAAC"}
@@ -0,0 +1,18 @@
1
+ /// <reference types="react" resolution-mode="require"/>
2
+ import type { StoryObj } from '@storybook/react';
3
+ import { CardRoot } from './Card.js';
4
+ declare const meta: {
5
+ title: string;
6
+ component: import("react").FunctionComponent<Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "key" | keyof import("react").HTMLAttributes<HTMLDivElement>> & {
7
+ ref?: ((instance: HTMLDivElement | null) => void) | import("react").RefObject<HTMLDivElement> | null | undefined;
8
+ }>;
9
+ argTypes: {};
10
+ parameters: {
11
+ controls: {
12
+ expanded: boolean;
13
+ };
14
+ };
15
+ };
16
+ export default meta;
17
+ type Story = StoryObj<typeof CardRoot>;
18
+ export declare const Default: Story;
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Default = void 0;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const Card_js_1 = require("./Card.js");
6
+ const button_js_1 = require("../button.js");
7
+ const icon_js_1 = require("../icon.js");
8
+ const meta = {
9
+ title: 'Card',
10
+ component: Card_js_1.CardRoot,
11
+ argTypes: {},
12
+ parameters: {
13
+ controls: { expanded: true },
14
+ },
15
+ };
16
+ exports.default = meta;
17
+ exports.Default = {
18
+ render: () => ((0, jsx_runtime_1.jsxs)(Card_js_1.CardRoot, { children: [(0, jsx_runtime_1.jsx)(Card_js_1.CardMain, { children: (0, jsx_runtime_1.jsx)(Card_js_1.CardTitle, { children: "Card Title" }) }), (0, jsx_runtime_1.jsx)(Card_js_1.CardFooter, { children: (0, jsx_runtime_1.jsxs)(Card_js_1.CardActions, { children: [(0, jsx_runtime_1.jsx)(button_js_1.Button, Object.assign({ size: "small" }, { children: "Button" })), (0, jsx_runtime_1.jsx)(button_js_1.Button, Object.assign({ size: "icon", color: "ghost" }, { children: (0, jsx_runtime_1.jsx)(icon_js_1.Icon, { name: "placeholder" }) }))] }) })] })),
19
+ };
20
+ //# sourceMappingURL=Card.stories.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Card.stories.js","sourceRoot":"","sources":["../../../../src/components/card/Card.stories.tsx"],"names":[],"mappings":";;;;AACA,uCAMmB;AACnB,4CAAsC;AACtC,wCAAkC;AAElC,MAAM,IAAI,GAAG;IACZ,KAAK,EAAE,MAAM;IACb,SAAS,EAAE,kBAAQ;IACnB,QAAQ,EAAE,EAAE;IACZ,UAAU,EAAE;QACX,QAAQ,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;KAC5B;CAC+B,CAAC;AAElC,kBAAe,IAAI,CAAC;AAIP,QAAA,OAAO,GAAU;IAC7B,MAAM,EAAE,GAAG,EAAE,CAAC,CACb,wBAAC,kBAAQ,eACR,uBAAC,kBAAQ,cACR,uBAAC,mBAAS,6BAAuB,GACvB,EACX,uBAAC,oBAAU,cACV,wBAAC,qBAAW,eACX,uBAAC,kBAAM,kBAAC,IAAI,EAAC,OAAO,4BAAgB,EACpC,uBAAC,kBAAM,kBAAC,IAAI,EAAC,MAAM,EAAC,KAAK,EAAC,OAAO,gBAChC,uBAAC,cAAI,IAAC,IAAI,EAAC,aAAa,GAAG,IACnB,IACI,GACF,IACH,CACX;CACD,CAAC"}
@@ -1,4 +1,4 @@
1
1
  /// <reference types="react" resolution-mode="require"/>
2
2
  import * as CheckboxPrimitive from '@radix-ui/react-checkbox';
3
3
  export declare function CheckboxIndicator({ children, className, ...props }: CheckboxPrimitive.CheckboxIndicatorProps): JSX.Element;
4
- export declare const Checkbox: import("react").ForwardRefExoticComponent<Pick<CheckboxPrimitive.CheckboxProps & import("react").RefAttributes<HTMLButtonElement>, "value" | "form" | "slot" | "style" | "title" | "className" | "autoFocus" | "checked" | "disabled" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "key" | "children" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "hidden" | "id" | "lang" | "placeholder" | "spellCheck" | "tabIndex" | "translate" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "color" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "name" | "type" | "asChild" | "required" | "onCheckedChange"> & import("react").RefAttributes<HTMLButtonElement>>;
4
+ export declare const Checkbox: import("react").ForwardRefExoticComponent<Pick<CheckboxPrimitive.CheckboxProps & import("react").RefAttributes<HTMLButtonElement>, "value" | "form" | "slot" | "style" | "title" | "className" | "autoFocus" | "checked" | "disabled" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "key" | "children" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "hidden" | "id" | "lang" | "placeholder" | "spellCheck" | "tabIndex" | "translate" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "color" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "asChild" | "name" | "type" | "required" | "onCheckedChange"> & import("react").RefAttributes<HTMLButtonElement>>;
@@ -22,4 +22,4 @@ export declare const DialogActions: import("react").FunctionComponent<Pick<impor
22
22
  export declare const DialogSelectTrigger: import("react").ForwardRefExoticComponent<DialogPrimitive.DialogTriggerProps & import("react").RefAttributes<HTMLButtonElement>>;
23
23
  export declare const DialogSelectList: import("react").FunctionComponent<RadioGroupPrimitive.RadioGroupProps & import("react").RefAttributes<HTMLDivElement>>;
24
24
  export declare const DialogSelectItemRoot: import("react").FunctionComponent<RadioGroupPrimitive.RadioGroupItemProps & import("react").RefAttributes<HTMLButtonElement>>;
25
- export declare const DialogSelectItem: import("react").ForwardRefExoticComponent<Pick<RadioGroupPrimitive.RadioGroupItemProps & import("react").RefAttributes<HTMLButtonElement>, "value" | "form" | "slot" | "style" | "title" | "className" | "autoFocus" | "checked" | "disabled" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "key" | "children" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "hidden" | "id" | "lang" | "placeholder" | "spellCheck" | "tabIndex" | "translate" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "color" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "type" | "asChild" | "required"> & import("react").RefAttributes<HTMLButtonElement>>;
25
+ export declare const DialogSelectItem: import("react").ForwardRefExoticComponent<Pick<RadioGroupPrimitive.RadioGroupItemProps & import("react").RefAttributes<HTMLButtonElement>, "value" | "form" | "slot" | "style" | "title" | "className" | "autoFocus" | "checked" | "disabled" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "key" | "children" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "hidden" | "id" | "lang" | "placeholder" | "spellCheck" | "tabIndex" | "translate" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "color" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "asChild" | "type" | "required"> & import("react").RefAttributes<HTMLButtonElement>>;
@@ -6,16 +6,24 @@ const jsx_runtime_1 = require("react/jsx-runtime");
6
6
  const react_1 = require("react");
7
7
  const date_fns_1 = require("date-fns");
8
8
  const utils_1 = require("@a-type/utils");
9
+ function formatDistanceToNow(date) {
10
+ const now = Date.now();
11
+ if (Math.abs(date.getTime() - now) < 1000) {
12
+ return 'just now';
13
+ }
14
+ return ((0, date_fns_1.formatDistanceToNowStrict)(date) +
15
+ (date.getTime() < now ? ' ago' : ' from now'));
16
+ }
9
17
  function RelativeTime({ value, abbreviate }) {
10
18
  const asDate = (0, react_1.useMemo)(() => new Date(value), [value]);
11
19
  const [time, setTime] = (0, react_1.useState)(() => abbreviate
12
- ? (0, utils_1.shortenTimeUnits)((0, date_fns_1.formatDistanceToNowStrict)(asDate))
13
- : (0, date_fns_1.formatDistanceToNowStrict)(asDate));
20
+ ? (0, utils_1.shortenTimeUnits)(formatDistanceToNow(asDate))
21
+ : formatDistanceToNow(asDate));
14
22
  (0, react_1.useEffect)(() => {
15
23
  const interval = setInterval(() => {
16
24
  setTime(abbreviate
17
- ? (0, utils_1.shortenTimeUnits)((0, date_fns_1.formatDistanceToNowStrict)(asDate))
18
- : (0, date_fns_1.formatDistanceToNowStrict)(asDate));
25
+ ? (0, utils_1.shortenTimeUnits)(formatDistanceToNow(asDate))
26
+ : formatDistanceToNow(asDate));
19
27
  }, 60 * 1000);
20
28
  return () => clearInterval(interval);
21
29
  }, [asDate, abbreviate]);
@@ -1 +1 @@
1
- {"version":3,"file":"RelativeTime.js","sourceRoot":"","sources":["../../../../src/components/relativeTime/RelativeTime.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;;;AAEb,iCAAqD;AACrD,uCAAqD;AACrD,yCAAiD;AAOjD,SAAgB,YAAY,CAAC,EAAE,KAAK,EAAE,UAAU,EAAqB;IACnE,MAAM,MAAM,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IACvD,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,IAAA,gBAAQ,EAAC,GAAG,EAAE,CACpC,UAAU;QACR,CAAC,CAAC,IAAA,wBAAgB,EAAC,IAAA,oCAAyB,EAAC,MAAM,CAAC,CAAC;QACrD,CAAC,CAAC,IAAA,oCAAyB,EAAC,MAAM,CAAC,CACtC,CAAC;IAEF,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE;YAChC,OAAO,CACL,UAAU;gBACR,CAAC,CAAC,IAAA,wBAAgB,EAAC,IAAA,oCAAyB,EAAC,MAAM,CAAC,CAAC;gBACrD,CAAC,CAAC,IAAA,oCAAyB,EAAC,MAAM,CAAC,CACtC,CAAC;QACJ,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,CAAC;QACd,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IACvC,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;IAEzB,OAAO,2DAAG,IAAI,GAAI,CAAC;AACrB,CAAC;AApBD,oCAoBC"}
1
+ {"version":3,"file":"RelativeTime.js","sourceRoot":"","sources":["../../../../src/components/relativeTime/RelativeTime.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;;;AAEb,iCAAqD;AACrD,uCAAqD;AACrD,yCAAiD;AAOjD,SAAS,mBAAmB,CAAC,IAAU;IACtC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,GAAG,CAAC,GAAG,IAAI,EAAE;QAC1C,OAAO,UAAU,CAAC;KAClB;IACD,OAAO,CACN,IAAA,oCAAyB,EAAC,IAAI,CAAC;QAC/B,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAC7C,CAAC;AACH,CAAC;AAED,SAAgB,YAAY,CAAC,EAAE,KAAK,EAAE,UAAU,EAAqB;IACpE,MAAM,MAAM,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IACvD,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,IAAA,gBAAQ,EAAC,GAAG,EAAE,CACrC,UAAU;QACT,CAAC,CAAC,IAAA,wBAAgB,EAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;QAC/C,CAAC,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAC9B,CAAC;IAEF,IAAA,iBAAS,EAAC,GAAG,EAAE;QACd,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE;YACjC,OAAO,CACN,UAAU;gBACT,CAAC,CAAC,IAAA,wBAAgB,EAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;gBAC/C,CAAC,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAC9B,CAAC;QACH,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,CAAC;QACd,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IACtC,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;IAEzB,OAAO,2DAAG,IAAI,GAAI,CAAC;AACpB,CAAC;AApBD,oCAoBC"}
@@ -27,7 +27,7 @@ exports.TabsContent = exports.TabsTrigger = exports.TabsList = exports.TabsRoot
27
27
  const Tabs = __importStar(require("@radix-ui/react-tabs"));
28
28
  const withClassName_js_1 = require("../../hooks/withClassName.js");
29
29
  exports.TabsRoot = (0, withClassName_js_1.withClassName)(Tabs.Root, '');
30
- exports.TabsList = (0, withClassName_js_1.withClassName)(Tabs.List, 'flex flex-row gap-2 py-3 px-2 justify-center');
31
- exports.TabsTrigger = (0, withClassName_js_1.withClassName)(Tabs.Trigger, 'flex flex-row items-center justify-center gap-2 color-black py-1 px-4 rounded-lg bg-wash text-md font-bold min-w-100px border border-solid border-gray2 hover:bg-gray2 focus-visible:(shadow-focus outline-off) [&[data-state=active]]:(bg-primary-light border-primary-light)');
30
+ exports.TabsList = (0, withClassName_js_1.withClassName)(Tabs.List, 'flex flex-row py-2 px-2 justify-center');
31
+ exports.TabsTrigger = (0, withClassName_js_1.withClassName)(Tabs.Trigger, 'flex flex-row items-center justify-center gap-2 color-black py-1 px-4 bg-wash text-md font-bold min-w-100px border border-solid border-gray-4', 'hover:bg-gray-3 focus-visible:(shadow-focus outline-off) [&[data-state=active]]:(bg-primary-wash border-primary hover:bg-primary-wash relative z-1)', 'first:rounded-l-full last:rounded-r-full');
32
32
  exports.TabsContent = (0, withClassName_js_1.withClassName)(Tabs.Content, '');
33
33
  //# sourceMappingURL=tabs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tabs.js","sourceRoot":"","sources":["../../../../src/components/tabs/tabs.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2DAA6C;AAC7C,mEAA6D;AAEhD,QAAA,QAAQ,GAAG,IAAA,gCAAa,EAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;AAExC,QAAA,QAAQ,GAAG,IAAA,gCAAa,EACpC,IAAI,CAAC,IAAI,EACT,8CAA8C,CAC9C,CAAC;AAEW,QAAA,WAAW,GAAG,IAAA,gCAAa,EACvC,IAAI,CAAC,OAAO,EACZ,gRAAgR,CAChR,CAAC;AAEW,QAAA,WAAW,GAAG,IAAA,gCAAa,EAAC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC"}
1
+ {"version":3,"file":"tabs.js","sourceRoot":"","sources":["../../../../src/components/tabs/tabs.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2DAA6C;AAC7C,mEAA6D;AAEhD,QAAA,QAAQ,GAAG,IAAA,gCAAa,EAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;AAExC,QAAA,QAAQ,GAAG,IAAA,gCAAa,EACpC,IAAI,CAAC,IAAI,EACT,wCAAwC,CACxC,CAAC;AAEW,QAAA,WAAW,GAAG,IAAA,gCAAa,EACvC,IAAI,CAAC,OAAO,EACZ,+IAA+I,EAC/I,qJAAqJ,EACrJ,0CAA0C,CAC1C,CAAC;AAEW,QAAA,WAAW,GAAG,IAAA,gCAAa,EAAC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { CSSProperties } from 'react';
2
+ export interface AvatarProps {
3
+ className?: string;
4
+ popIn?: boolean;
5
+ style?: CSSProperties;
6
+ imageSrc?: string;
7
+ name?: string;
8
+ }
9
+ export declare function Avatar({ className, popIn, imageSrc, name, ...rest }: AvatarProps): JSX.Element;
@@ -0,0 +1,27 @@
1
+ var __rest = (this && this.__rest) || function (s, e) {
2
+ var t = {};
3
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
4
+ t[p] = s[p];
5
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
6
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
8
+ t[p[i]] = s[p[i]];
9
+ }
10
+ return t;
11
+ };
12
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
13
+ import classNames from 'classnames';
14
+ import { Icon } from '../icon.js';
15
+ export function Avatar(_a) {
16
+ var { className, popIn = true, imageSrc, name } = _a, rest = __rest(_a, ["className", "popIn", "imageSrc", "name"]);
17
+ const empty = !name && !imageSrc;
18
+ return (_jsxs("div", Object.assign({ "data-pop": popIn, className: classNames('layer-components:(flex items-center justify-center rounded-full border-default p-2px overflow-hidden w-24px h-24px select-none relative bg-white flex-shrink-0)', popIn &&
19
+ 'layer-variants:(animate-pop-in-from-half animate-ease-springy animate-duration-200)', empty && 'layer-components(border-dashed bg-gray2)', className) }, rest, { children: [!empty && _jsx(AvatarContent, { name: name, imageSrc: imageSrc }), empty && _jsx(Icon, { name: "profile" })] })));
20
+ }
21
+ function AvatarContent({ name, imageSrc, }) {
22
+ if (imageSrc) {
23
+ return (_jsx("img", { className: "w-full h-full object-cover rounded-full", referrerPolicy: "no-referrer", crossOrigin: "anonymous", src: imageSrc, alt: `${name !== null && name !== void 0 ? name : 'user'}'s profile picture` }));
24
+ }
25
+ return (_jsx("div", Object.assign({ className: "color-black items-center justify-center flex text-sm font-bold rounded-full" }, { children: (name === null || name === void 0 ? void 0 : name.charAt(0)) || '?' })));
26
+ }
27
+ //# sourceMappingURL=Avatar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Avatar.js","sourceRoot":"","sources":["../../../../src/components/avatar/Avatar.tsx"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AAEpC,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAUlC,MAAM,UAAU,MAAM,CAAC,EAMT;QANS,EACtB,SAAS,EACT,KAAK,GAAG,IAAI,EACZ,QAAQ,EACR,IAAI,OAES,EADV,IAAI,cALe,0CAMtB,CADO;IAEP,MAAM,KAAK,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC;IACjC,OAAO,CACN,yCACW,KAAK,EACf,SAAS,EAAE,UAAU,CACpB,iKAAiK,EACjK,KAAK;YACJ,qFAAqF,EACtF,KAAK,IAAI,0CAA0C,EACnD,SAAS,CACT,IACG,IAAI,eAEP,CAAC,KAAK,IAAI,KAAC,aAAa,IAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,GAAI,EAC3D,KAAK,IAAI,KAAC,IAAI,IAAC,IAAI,EAAC,SAAS,GAAG,KAC5B,CACN,CAAC;AACH,CAAC;AAED,SAAS,aAAa,CAAC,EACtB,IAAI,EACJ,QAAQ,GAIR;IACA,IAAI,QAAQ,EAAE;QACb,OAAO,CACN,cACC,SAAS,EAAC,yCAAyC,EACnD,cAAc,EAAC,aAAa,EAC5B,WAAW,EAAC,WAAW,EACvB,GAAG,EAAE,QAAQ,EACb,GAAG,EAAE,GAAG,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,MAAM,oBAAoB,GACzC,CACF,CAAC;KACF;IACD,OAAO,CACN,4BAAK,SAAS,EAAC,6EAA6E,gBAC1F,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,CAAC,CAAC,CAAC,KAAI,GAAG,IAClB,CACN,CAAC;AACH,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { ReactNode } from 'react';
2
+ import { AvatarProps } from './Avatar.js';
3
+ export declare function AvatarList({ children, count, size, }: {
4
+ children: ReactNode;
5
+ count: number;
6
+ size?: number;
7
+ }): JSX.Element;
8
+ export declare function AvatarListItemRoot({ index, children, className, }: {
9
+ index: number;
10
+ children: ReactNode;
11
+ className?: string;
12
+ }): JSX.Element;
13
+ export declare function AvatarListItem({ index, className, ...rest }: {
14
+ index: number;
15
+ popIn?: boolean;
16
+ className?: string;
17
+ } & AvatarProps): JSX.Element;
@@ -0,0 +1,36 @@
1
+ var __rest = (this && this.__rest) || function (s, e) {
2
+ var t = {};
3
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
4
+ t[p] = s[p];
5
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
6
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
8
+ t[p[i]] = s[p[i]];
9
+ }
10
+ return t;
11
+ };
12
+ import { jsx as _jsx } from "react/jsx-runtime";
13
+ import { createContext, useContext } from 'react';
14
+ import classNames from 'classnames';
15
+ import { Avatar } from './Avatar.js';
16
+ const AvatarListContext = createContext({
17
+ size: 24,
18
+ });
19
+ export function AvatarList({ children, count, size = 24, }) {
20
+ const width = count > 0 ? size + (count - 1) * ((size * 2) / 3) : 0;
21
+ return (_jsx(AvatarListContext.Provider, Object.assign({ value: { size } }, { children: _jsx("div", Object.assign({ className: "relative flex-basis-auto", style: { width, minWidth: width, height: size } }, { children: children })) })));
22
+ }
23
+ export function AvatarListItemRoot({ index, children, className, }) {
24
+ const { size } = useContext(AvatarListContext);
25
+ return (_jsx("div", Object.assign({ className: classNames('absolute', className), style: {
26
+ left: index === 0 ? 0 : index * ((size * 2) / 3),
27
+ zIndex: index,
28
+ top: 0,
29
+ } }, { children: children })));
30
+ }
31
+ export function AvatarListItem(_a) {
32
+ var { index, className } = _a, rest = __rest(_a, ["index", "className"]);
33
+ const { size } = useContext(AvatarListContext);
34
+ return (_jsx(AvatarListItemRoot, Object.assign({ index: index, className: className }, { children: _jsx(Avatar, Object.assign({ style: { width: size, height: size } }, rest)) })));
35
+ }
36
+ //# sourceMappingURL=AvatarList.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AvatarList.js","sourceRoot":"","sources":["../../../../src/components/avatar/AvatarList.tsx"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAa,aAAa,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAC7D,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,MAAM,EAAe,MAAM,aAAa,CAAC;AAElD,MAAM,iBAAiB,GAAG,aAAa,CAAmB;IACzD,IAAI,EAAE,EAAE;CACR,CAAC,CAAC;AAEH,MAAM,UAAU,UAAU,CAAC,EAC1B,QAAQ,EACR,KAAK,EACL,IAAI,GAAG,EAAE,GAKT;IACA,MAAM,KAAK,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAEpE,OAAO,CACN,KAAC,iBAAiB,CAAC,QAAQ,kBAAC,KAAK,EAAE,EAAE,IAAI,EAAE,gBAC1C,4BACC,SAAS,EAAC,0BAA0B,EACpC,KAAK,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,gBAE9C,QAAQ,IACJ,IACsB,CAC7B,CAAC;AACH,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,EAClC,KAAK,EACL,QAAQ,EACR,SAAS,GAKT;IACA,MAAM,EAAE,IAAI,EAAE,GAAG,UAAU,CAAC,iBAAiB,CAAC,CAAC;IAC/C,OAAO,CACN,4BACC,SAAS,EAAE,UAAU,CAAC,UAAU,EAAE,SAAS,CAAC,EAC5C,KAAK,EAAE;YACN,IAAI,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;YAChD,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,CAAC;SACN,gBAEA,QAAQ,IACJ,CACN,CAAC;AACH,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,EAQhB;QARgB,EAC9B,KAAK,EACL,SAAS,OAMK,EALX,IAAI,cAHuB,sBAI9B,CADO;IAMP,MAAM,EAAE,IAAI,EAAE,GAAG,UAAU,CAAC,iBAAiB,CAAC,CAAC;IAC/C,OAAO,CACN,KAAC,kBAAkB,kBAAC,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,gBACrD,KAAC,MAAM,kBAAC,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAM,IAAI,EAAI,IACtC,CACrB,CAAC;AACH,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './Avatar.js';
2
+ export * from './AvatarList.js';
@@ -0,0 +1,3 @@
1
+ export * from './Avatar.js';
2
+ export * from './AvatarList.js';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/avatar/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1 @@
1
+ export * from './avatar/index.js';
@@ -0,0 +1,2 @@
1
+ export * from './avatar/index.js';
2
+ //# sourceMappingURL=avatar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"avatar.js","sourceRoot":"","sources":["../../../src/components/avatar.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC"}
@@ -6,5 +6,6 @@ export interface ButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> {
6
6
  align?: 'start' | 'stretch' | 'end';
7
7
  visuallyDisabled?: boolean;
8
8
  loading?: boolean;
9
+ asChild?: boolean;
9
10
  }
10
11
  export declare const Button: import("react").ForwardRefExoticComponent<ButtonProps & import("react").RefAttributes<HTMLButtonElement>>;
@@ -14,8 +14,10 @@ import classNames from 'classnames';
14
14
  import { forwardRef } from 'react';
15
15
  import { Spinner } from '../spinner.js';
16
16
  import { getButtonClassName } from './classes.js';
17
+ import { Slot } from '@radix-ui/react-slot';
17
18
  export const Button = forwardRef(function Button(_a, ref) {
18
- var { className, color, size, toggled, align, visuallyDisabled, loading, children, disabled } = _a, props = __rest(_a, ["className", "color", "size", "toggled", "align", "visuallyDisabled", "loading", "children", "disabled"]);
19
- return (_jsxs("button", Object.assign({ ref: ref }, props, { disabled: disabled || loading, "data-disabled": visuallyDisabled, tabIndex: visuallyDisabled ? -1 : undefined, className: classNames(getButtonClassName({ color, size, toggled, align }), className) }, { children: [loading && _jsx(Spinner, { size: 16, className: "inline-block w-1em h-1em" }), children] })));
19
+ var { className, color, size, toggled, align, visuallyDisabled, loading, children, disabled, asChild } = _a, props = __rest(_a, ["className", "color", "size", "toggled", "align", "visuallyDisabled", "loading", "children", "disabled", "asChild"]);
20
+ const Comp = asChild ? Slot : 'button';
21
+ return (_jsxs(Comp, Object.assign({ ref: ref }, props, { disabled: disabled || loading, "data-disabled": visuallyDisabled, tabIndex: visuallyDisabled ? -1 : undefined, className: classNames(getButtonClassName({ color, size, toggled, align }), className) }, { children: [loading && _jsx(Spinner, { size: 16, className: "inline-block w-1em h-1em" }), children] })));
20
22
  });
21
23
  //# sourceMappingURL=Button.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Button.js","sourceRoot":"","sources":["../../../../src/components/button/Button.tsx"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,UAAU,EAAwB,MAAM,OAAO,CAAC;AACzD,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAiBlD,MAAM,CAAC,MAAM,MAAM,GAAG,UAAU,CAC/B,SAAS,MAAM,CACd,EAWC,EACD,GAAG;QAZH,EACC,SAAS,EACT,KAAK,EACL,IAAI,EACJ,OAAO,EACP,KAAK,EACL,gBAAgB,EAChB,OAAO,EACP,QAAQ,EACR,QAAQ,OAER,EADG,KAAK,cAVT,yGAWC,CADQ;IAIT,OAAO,CACN,gCACC,GAAG,EAAE,GAAG,IACJ,KAAK,IACT,QAAQ,EAAE,QAAQ,IAAI,OAAO,mBACd,gBAAgB,EAC/B,QAAQ,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,EAC3C,SAAS,EAAE,UAAU,CACpB,kBAAkB,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,EACnD,SAAS,CACT,iBAEA,OAAO,IAAI,KAAC,OAAO,IAAC,IAAI,EAAE,EAAE,EAAE,SAAS,EAAC,0BAA0B,GAAG,EACrE,QAAQ,KACD,CACT,CAAC;AACH,CAAC,CACD,CAAC"}
1
+ {"version":3,"file":"Button.js","sourceRoot":"","sources":["../../../../src/components/button/Button.tsx"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,UAAU,EAAwB,MAAM,OAAO,CAAC;AACzD,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAkB5C,MAAM,CAAC,MAAM,MAAM,GAAG,UAAU,CAC/B,SAAS,MAAM,CACd,EAYC,EACD,GAAG;QAbH,EACC,SAAS,EACT,KAAK,EACL,IAAI,EACJ,OAAO,EACP,KAAK,EACL,gBAAgB,EAChB,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,OAAO,OAEP,EADG,KAAK,cAXT,oHAYC,CADQ;IAIT,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC;IAEvC,OAAO,CACN,MAAC,IAAI,kBACJ,GAAG,EAAE,GAAG,IACJ,KAAK,IACT,QAAQ,EAAE,QAAQ,IAAI,OAAO,mBACd,gBAAgB,EAC/B,QAAQ,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,EAC3C,SAAS,EAAE,UAAU,CACpB,kBAAkB,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,EACnD,SAAS,CACT,iBAEA,OAAO,IAAI,KAAC,OAAO,IAAC,IAAI,EAAE,EAAE,EAAE,SAAS,EAAC,0BAA0B,GAAG,EACrE,QAAQ,KACH,CACP,CAAC;AACH,CAAC,CACD,CAAC"}
@@ -0,0 +1,18 @@
1
+ /// <reference types="react" resolution-mode="require"/>
2
+ import type { StoryObj } from '@storybook/react';
3
+ import { CardRoot } from './Card.js';
4
+ declare const meta: {
5
+ title: string;
6
+ component: import("react").FunctionComponent<Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "key" | keyof import("react").HTMLAttributes<HTMLDivElement>> & {
7
+ ref?: ((instance: HTMLDivElement | null) => void) | import("react").RefObject<HTMLDivElement> | null | undefined;
8
+ }>;
9
+ argTypes: {};
10
+ parameters: {
11
+ controls: {
12
+ expanded: boolean;
13
+ };
14
+ };
15
+ };
16
+ export default meta;
17
+ type Story = StoryObj<typeof CardRoot>;
18
+ export declare const Default: Story;
@@ -0,0 +1,17 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { CardActions, CardFooter, CardMain, CardRoot, CardTitle, } from './Card.js';
3
+ import { Button } from '../button.js';
4
+ import { Icon } from '../icon.js';
5
+ const meta = {
6
+ title: 'Card',
7
+ component: CardRoot,
8
+ argTypes: {},
9
+ parameters: {
10
+ controls: { expanded: true },
11
+ },
12
+ };
13
+ export default meta;
14
+ export const Default = {
15
+ render: () => (_jsxs(CardRoot, { children: [_jsx(CardMain, { children: _jsx(CardTitle, { children: "Card Title" }) }), _jsx(CardFooter, { children: _jsxs(CardActions, { children: [_jsx(Button, Object.assign({ size: "small" }, { children: "Button" })), _jsx(Button, Object.assign({ size: "icon", color: "ghost" }, { children: _jsx(Icon, { name: "placeholder" }) }))] }) })] })),
16
+ };
17
+ //# sourceMappingURL=Card.stories.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Card.stories.js","sourceRoot":"","sources":["../../../../src/components/card/Card.stories.tsx"],"names":[],"mappings":";AACA,OAAO,EACN,WAAW,EACX,UAAU,EACV,QAAQ,EACR,QAAQ,EACR,SAAS,GACT,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAElC,MAAM,IAAI,GAAG;IACZ,KAAK,EAAE,MAAM;IACb,SAAS,EAAE,QAAQ;IACnB,QAAQ,EAAE,EAAE;IACZ,UAAU,EAAE;QACX,QAAQ,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;KAC5B;CAC+B,CAAC;AAElC,eAAe,IAAI,CAAC;AAIpB,MAAM,CAAC,MAAM,OAAO,GAAU;IAC7B,MAAM,EAAE,GAAG,EAAE,CAAC,CACb,MAAC,QAAQ,eACR,KAAC,QAAQ,cACR,KAAC,SAAS,6BAAuB,GACvB,EACX,KAAC,UAAU,cACV,MAAC,WAAW,eACX,KAAC,MAAM,kBAAC,IAAI,EAAC,OAAO,4BAAgB,EACpC,KAAC,MAAM,kBAAC,IAAI,EAAC,MAAM,EAAC,KAAK,EAAC,OAAO,gBAChC,KAAC,IAAI,IAAC,IAAI,EAAC,aAAa,GAAG,IACnB,IACI,GACF,IACH,CACX;CACD,CAAC"}
@@ -1,4 +1,4 @@
1
1
  /// <reference types="react" resolution-mode="require"/>
2
2
  import * as CheckboxPrimitive from '@radix-ui/react-checkbox';
3
3
  export declare function CheckboxIndicator({ children, className, ...props }: CheckboxPrimitive.CheckboxIndicatorProps): JSX.Element;
4
- export declare const Checkbox: import("react").ForwardRefExoticComponent<Pick<CheckboxPrimitive.CheckboxProps & import("react").RefAttributes<HTMLButtonElement>, "value" | "form" | "slot" | "style" | "title" | "className" | "autoFocus" | "checked" | "disabled" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "key" | "children" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "hidden" | "id" | "lang" | "placeholder" | "spellCheck" | "tabIndex" | "translate" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "color" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "name" | "type" | "asChild" | "required" | "onCheckedChange"> & import("react").RefAttributes<HTMLButtonElement>>;
4
+ export declare const Checkbox: import("react").ForwardRefExoticComponent<Pick<CheckboxPrimitive.CheckboxProps & import("react").RefAttributes<HTMLButtonElement>, "value" | "form" | "slot" | "style" | "title" | "className" | "autoFocus" | "checked" | "disabled" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "key" | "children" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "hidden" | "id" | "lang" | "placeholder" | "spellCheck" | "tabIndex" | "translate" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "color" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "asChild" | "name" | "type" | "required" | "onCheckedChange"> & import("react").RefAttributes<HTMLButtonElement>>;
@@ -22,4 +22,4 @@ export declare const DialogActions: import("react").FunctionComponent<Pick<impor
22
22
  export declare const DialogSelectTrigger: import("react").ForwardRefExoticComponent<DialogPrimitive.DialogTriggerProps & import("react").RefAttributes<HTMLButtonElement>>;
23
23
  export declare const DialogSelectList: import("react").FunctionComponent<RadioGroupPrimitive.RadioGroupProps & import("react").RefAttributes<HTMLDivElement>>;
24
24
  export declare const DialogSelectItemRoot: import("react").FunctionComponent<RadioGroupPrimitive.RadioGroupItemProps & import("react").RefAttributes<HTMLButtonElement>>;
25
- export declare const DialogSelectItem: import("react").ForwardRefExoticComponent<Pick<RadioGroupPrimitive.RadioGroupItemProps & import("react").RefAttributes<HTMLButtonElement>, "value" | "form" | "slot" | "style" | "title" | "className" | "autoFocus" | "checked" | "disabled" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "key" | "children" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "hidden" | "id" | "lang" | "placeholder" | "spellCheck" | "tabIndex" | "translate" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "color" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "type" | "asChild" | "required"> & import("react").RefAttributes<HTMLButtonElement>>;
25
+ export declare const DialogSelectItem: import("react").ForwardRefExoticComponent<Pick<RadioGroupPrimitive.RadioGroupItemProps & import("react").RefAttributes<HTMLButtonElement>, "value" | "form" | "slot" | "style" | "title" | "className" | "autoFocus" | "checked" | "disabled" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "key" | "children" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "hidden" | "id" | "lang" | "placeholder" | "spellCheck" | "tabIndex" | "translate" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "color" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "asChild" | "type" | "required"> & import("react").RefAttributes<HTMLButtonElement>>;
@@ -3,16 +3,24 @@ import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
3
3
  import { useEffect, useState, useMemo } from 'react';
4
4
  import { formatDistanceToNowStrict } from 'date-fns';
5
5
  import { shortenTimeUnits } from '@a-type/utils';
6
+ function formatDistanceToNow(date) {
7
+ const now = Date.now();
8
+ if (Math.abs(date.getTime() - now) < 1000) {
9
+ return 'just now';
10
+ }
11
+ return (formatDistanceToNowStrict(date) +
12
+ (date.getTime() < now ? ' ago' : ' from now'));
13
+ }
6
14
  export function RelativeTime({ value, abbreviate }) {
7
15
  const asDate = useMemo(() => new Date(value), [value]);
8
16
  const [time, setTime] = useState(() => abbreviate
9
- ? shortenTimeUnits(formatDistanceToNowStrict(asDate))
10
- : formatDistanceToNowStrict(asDate));
17
+ ? shortenTimeUnits(formatDistanceToNow(asDate))
18
+ : formatDistanceToNow(asDate));
11
19
  useEffect(() => {
12
20
  const interval = setInterval(() => {
13
21
  setTime(abbreviate
14
- ? shortenTimeUnits(formatDistanceToNowStrict(asDate))
15
- : formatDistanceToNowStrict(asDate));
22
+ ? shortenTimeUnits(formatDistanceToNow(asDate))
23
+ : formatDistanceToNow(asDate));
16
24
  }, 60 * 1000);
17
25
  return () => clearInterval(interval);
18
26
  }, [asDate, abbreviate]);
@@ -1 +1 @@
1
- {"version":3,"file":"RelativeTime.js","sourceRoot":"","sources":["../../../../src/components/relativeTime/RelativeTime.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AACrD,OAAO,EAAE,yBAAyB,EAAE,MAAM,UAAU,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAOjD,MAAM,UAAU,YAAY,CAAC,EAAE,KAAK,EAAE,UAAU,EAAqB;IACnE,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IACvD,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,CACpC,UAAU;QACR,CAAC,CAAC,gBAAgB,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAC;QACrD,CAAC,CAAC,yBAAyB,CAAC,MAAM,CAAC,CACtC,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE;YAChC,OAAO,CACL,UAAU;gBACR,CAAC,CAAC,gBAAgB,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAC;gBACrD,CAAC,CAAC,yBAAyB,CAAC,MAAM,CAAC,CACtC,CAAC;QACJ,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,CAAC;QACd,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IACvC,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;IAEzB,OAAO,4BAAG,IAAI,GAAI,CAAC;AACrB,CAAC"}
1
+ {"version":3,"file":"RelativeTime.js","sourceRoot":"","sources":["../../../../src/components/relativeTime/RelativeTime.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AACrD,OAAO,EAAE,yBAAyB,EAAE,MAAM,UAAU,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAOjD,SAAS,mBAAmB,CAAC,IAAU;IACtC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,GAAG,CAAC,GAAG,IAAI,EAAE;QAC1C,OAAO,UAAU,CAAC;KAClB;IACD,OAAO,CACN,yBAAyB,CAAC,IAAI,CAAC;QAC/B,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAC7C,CAAC;AACH,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,EAAE,KAAK,EAAE,UAAU,EAAqB;IACpE,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IACvD,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,CACrC,UAAU;QACT,CAAC,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;QAC/C,CAAC,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAC9B,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACd,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE;YACjC,OAAO,CACN,UAAU;gBACT,CAAC,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;gBAC/C,CAAC,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAC9B,CAAC;QACH,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,CAAC;QACd,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IACtC,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;IAEzB,OAAO,4BAAG,IAAI,GAAI,CAAC;AACpB,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import * as Tabs from '@radix-ui/react-tabs';
2
2
  import { withClassName } from '../../hooks/withClassName.js';
3
3
  export const TabsRoot = withClassName(Tabs.Root, '');
4
- export const TabsList = withClassName(Tabs.List, 'flex flex-row gap-2 py-3 px-2 justify-center');
5
- export const TabsTrigger = withClassName(Tabs.Trigger, 'flex flex-row items-center justify-center gap-2 color-black py-1 px-4 rounded-lg bg-wash text-md font-bold min-w-100px border border-solid border-gray2 hover:bg-gray2 focus-visible:(shadow-focus outline-off) [&[data-state=active]]:(bg-primary-light border-primary-light)');
4
+ export const TabsList = withClassName(Tabs.List, 'flex flex-row py-2 px-2 justify-center');
5
+ export const TabsTrigger = withClassName(Tabs.Trigger, 'flex flex-row items-center justify-center gap-2 color-black py-1 px-4 bg-wash text-md font-bold min-w-100px border border-solid border-gray-4', 'hover:bg-gray-3 focus-visible:(shadow-focus outline-off) [&[data-state=active]]:(bg-primary-wash border-primary hover:bg-primary-wash relative z-1)', 'first:rounded-l-full last:rounded-r-full');
6
6
  export const TabsContent = withClassName(Tabs.Content, '');
7
7
  //# sourceMappingURL=tabs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tabs.js","sourceRoot":"","sources":["../../../../src/components/tabs/tabs.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,sBAAsB,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAE7D,MAAM,CAAC,MAAM,QAAQ,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;AAErD,MAAM,CAAC,MAAM,QAAQ,GAAG,aAAa,CACpC,IAAI,CAAC,IAAI,EACT,8CAA8C,CAC9C,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,aAAa,CACvC,IAAI,CAAC,OAAO,EACZ,gRAAgR,CAChR,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,aAAa,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC"}
1
+ {"version":3,"file":"tabs.js","sourceRoot":"","sources":["../../../../src/components/tabs/tabs.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,sBAAsB,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAE7D,MAAM,CAAC,MAAM,QAAQ,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;AAErD,MAAM,CAAC,MAAM,QAAQ,GAAG,aAAa,CACpC,IAAI,CAAC,IAAI,EACT,wCAAwC,CACxC,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,aAAa,CACvC,IAAI,CAAC,OAAO,EACZ,+IAA+I,EAC/I,qJAAqJ,EACrJ,0CAA0C,CAC1C,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,aAAa,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@a-type/ui",
3
- "version": "0.1.16",
3
+ "version": "0.2.0",
4
4
  "type": "module",
5
5
  "files": [
6
6
  "/dist"
@@ -47,6 +47,7 @@
47
47
  "@radix-ui/react-toast": "^1.0.0",
48
48
  "@radix-ui/react-toggle-group": "^1.0.3",
49
49
  "@radix-ui/react-tooltip": "^1.0.0",
50
+ "@react-spring/web": "^9.7.3",
50
51
  "@tiptap/core": "^2.0.3",
51
52
  "@tiptap/extension-document": "^2.0.3",
52
53
  "@tiptap/extension-paragraph": "^2.0.3",
@@ -66,16 +67,25 @@
66
67
  },
67
68
  "devDependencies": {
68
69
  "@changesets/cli": "^2.25.0",
70
+ "@storybook/addon-essentials": "7.6.3",
71
+ "@storybook/addon-interactions": "7.6.3",
72
+ "@storybook/addon-links": "7.6.3",
73
+ "@storybook/addon-onboarding": "1.0.9",
74
+ "@storybook/blocks": "7.6.3",
75
+ "@storybook/react": "7.6.3",
76
+ "@storybook/react-vite": "7.6.3",
77
+ "@storybook/test": "7.6.3",
69
78
  "@types/pluralize": "^0.0.29",
70
79
  "@types/react": "^18.0.14",
71
80
  "@types/react-dom": "^18.0.5",
72
81
  "@unocss/core": "^0.54.0",
73
82
  "@unocss/transformer-variant-group": "^0.54.0",
74
83
  "axios": "^1.5.0",
75
- "dotenv": "^16.3.1",
76
84
  "change-case": "^4.1.2",
85
+ "dotenv": "^16.3.1",
77
86
  "fs-extra": "^11.1.1",
78
87
  "prettier": "^3.0.3",
88
+ "storybook": "7.6.3",
79
89
  "typescript": "^5.0.2",
80
90
  "unocss": "^0.54.0"
81
91
  },
@@ -84,6 +94,8 @@
84
94
  "ci:version": "pnpm changeset version",
85
95
  "ci:publish": "pnpm changeset publish --access=public",
86
96
  "prepublish": "pnpm run build",
87
- "icons": "node ./scripts/generateIcons.js"
97
+ "icons": "node ./scripts/generateIcons.js",
98
+ "storybook": "storybook dev -p 6006",
99
+ "build-storybook": "storybook build"
88
100
  }
89
101
  }