@psnext/design-system 1.0.0 → 1.1.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 (115) hide show
  1. package/README.md +30 -124
  2. package/dist/Stack.cjs +64 -0
  3. package/dist/Stack.cjs.map +1 -0
  4. package/dist/Stack.js +54 -0
  5. package/dist/Stack.js.map +1 -0
  6. package/dist/ThemeProvider.cjs +1886 -0
  7. package/dist/ThemeProvider.cjs.map +1 -0
  8. package/dist/ThemeProvider.d.cts +85 -0
  9. package/dist/ThemeProvider.d.cts.map +1 -0
  10. package/dist/ThemeProvider.d.ts +85 -0
  11. package/dist/ThemeProvider.d.ts.map +1 -0
  12. package/dist/ThemeProvider.js +1508 -0
  13. package/dist/ThemeProvider.js.map +1 -0
  14. package/dist/contexts/index.cjs +0 -60
  15. package/dist/contexts/index.d.cts +1 -23
  16. package/dist/contexts/index.d.ts +1 -23
  17. package/dist/contexts/index.js +1 -58
  18. package/dist/index.cjs +147 -72
  19. package/dist/index.d.cts +1009 -432
  20. package/dist/index.d.cts.map +1 -1
  21. package/dist/index.d.ts +1014 -437
  22. package/dist/index.d.ts.map +1 -1
  23. package/dist/index.js +6 -7
  24. package/dist/index2.d.cts +4 -16
  25. package/dist/index2.d.ts +4 -16
  26. package/dist/layouts/index.cjs +100 -12
  27. package/dist/layouts/index.cjs.map +1 -0
  28. package/dist/layouts/index.d.cts +70 -127
  29. package/dist/layouts/index.d.cts.map +1 -1
  30. package/dist/layouts/index.d.ts +70 -127
  31. package/dist/layouts/index.d.ts.map +1 -1
  32. package/dist/layouts/index.js +92 -2
  33. package/dist/layouts/index.js.map +1 -0
  34. package/dist/patterns/index.cjs +1004 -7254
  35. package/dist/patterns/index.cjs.map +1 -1
  36. package/dist/patterns/index.d.cts +381 -389
  37. package/dist/patterns/index.d.cts.map +1 -1
  38. package/dist/patterns/index.d.ts +378 -386
  39. package/dist/patterns/index.d.ts.map +1 -1
  40. package/dist/patterns/index.js +970 -7225
  41. package/dist/patterns/index.js.map +1 -1
  42. package/dist/primitives/index.cjs +135 -55
  43. package/dist/primitives/index.d.cts +3 -2
  44. package/dist/primitives/index.d.ts +3 -2
  45. package/dist/primitives/index.js +3 -5
  46. package/dist/primitives.cjs +3961 -1274
  47. package/dist/primitives.cjs.map +1 -1
  48. package/dist/primitives.js +3551 -1001
  49. package/dist/primitives.js.map +1 -1
  50. package/dist/styles/base.css +43 -0
  51. package/dist/styles/glass.css +75 -0
  52. package/dist/styles/index.css +43 -23
  53. package/dist/styles/semantic.css +107 -0
  54. package/dist/styles/theme.css +42 -24
  55. package/dist/styles/tokens/alpha.css +39 -0
  56. package/dist/styles/tokens/border-radius.css +17 -0
  57. package/dist/styles/tokens/chart-colors-dark.css +18 -0
  58. package/dist/styles/tokens/chart-colors-light.css +18 -0
  59. package/dist/styles/tokens/colors.css +251 -0
  60. package/dist/styles/tokens/mode-dark.css +101 -0
  61. package/dist/styles/tokens/mode-light.css +101 -0
  62. package/dist/styles/tokens/shadows.css +14 -0
  63. package/dist/styles/tokens/spacing.css +44 -0
  64. package/dist/styles/tokens/theme-bodhi.css +35 -0
  65. package/dist/styles/tokens/theme-slingshot.css +35 -0
  66. package/dist/styles/tokens/theme-sustain.css +35 -0
  67. package/dist/styles/tokens/typography.css +83 -0
  68. package/dist/utils.cjs +67 -0
  69. package/dist/utils.cjs.map +1 -0
  70. package/dist/utils.js +27 -0
  71. package/dist/utils.js.map +1 -0
  72. package/package.json +15 -41
  73. package/dist/AiChatPanel.cjs +0 -1603
  74. package/dist/AiChatPanel.cjs.map +0 -1
  75. package/dist/AiChatPanel.js +0 -1526
  76. package/dist/AiChatPanel.js.map +0 -1
  77. package/dist/BodhiLogo.cjs +0 -240
  78. package/dist/BodhiLogo.cjs.map +0 -1
  79. package/dist/BodhiLogo.js +0 -194
  80. package/dist/BodhiLogo.js.map +0 -1
  81. package/dist/Skeleton.cjs +0 -19
  82. package/dist/Skeleton.cjs.map +0 -1
  83. package/dist/Skeleton.js +0 -14
  84. package/dist/Skeleton.js.map +0 -1
  85. package/dist/SustainLogo.cjs +0 -415
  86. package/dist/SustainLogo.cjs.map +0 -1
  87. package/dist/SustainLogo.js +0 -378
  88. package/dist/SustainLogo.js.map +0 -1
  89. package/dist/contexts/index.cjs.map +0 -1
  90. package/dist/contexts/index.d.cts.map +0 -1
  91. package/dist/contexts/index.d.ts.map +0 -1
  92. package/dist/contexts/index.js.map +0 -1
  93. package/dist/index2.d.cts.map +0 -1
  94. package/dist/index2.d.ts.map +0 -1
  95. package/dist/layouts.cjs +0 -3245
  96. package/dist/layouts.cjs.map +0 -1
  97. package/dist/layouts.js +0 -3180
  98. package/dist/layouts.js.map +0 -1
  99. package/dist/styles/base/colors.css +0 -300
  100. package/dist/styles/base/component-tokens.css +0 -240
  101. package/dist/styles/base/elevation.css +0 -7
  102. package/dist/styles/base/fonts.css +0 -14
  103. package/dist/styles/base/global.css +0 -305
  104. package/dist/styles/base/radius.css +0 -22
  105. package/dist/styles/base/semantic-aliases.css +0 -53
  106. package/dist/styles/base/spacing.css +0 -33
  107. package/dist/styles/base/typography.css +0 -48
  108. package/dist/styles/generated/bodhi-vars.css +0 -34
  109. package/dist/styles/generated/dark.css +0 -87
  110. package/dist/styles/generated/light.css +0 -87
  111. package/dist/styles/generated/slingshot-vars.css +0 -34
  112. package/dist/styles/generated/sustain-vars.css +0 -34
  113. package/dist/styles/themes/bodhi.css +0 -166
  114. package/dist/styles/themes/slingshot.css +0 -144
  115. package/dist/styles/themes/sustain.css +0 -130
package/dist/utils.cjs ADDED
@@ -0,0 +1,67 @@
1
+ //#region \0rolldown/runtime.js
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __copyProps = (to, from, except, desc) => {
9
+ if (from && typeof from === "object" || typeof from === "function") for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
10
+ key = keys[i];
11
+ if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
12
+ get: ((k) => from[k]).bind(null, key),
13
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
14
+ });
15
+ }
16
+ return to;
17
+ };
18
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
19
+ value: mod,
20
+ enumerable: true
21
+ }) : target, mod));
22
+ //#endregion
23
+ let clsx = require("clsx");
24
+ let tailwind_merge = require("tailwind-merge");
25
+ let react = require("react");
26
+ react = __toESM(react, 1);
27
+ //#region src/utils/cn.ts
28
+ function cn(...inputs) {
29
+ return (0, tailwind_merge.twMerge)((0, clsx.clsx)(inputs));
30
+ }
31
+ //#endregion
32
+ //#region src/utils/use-mobile.ts
33
+ const MOBILE_BREAKPOINT = 768;
34
+ function useIsMobile() {
35
+ const [isMobile, setIsMobile] = react.useState(void 0);
36
+ react.useEffect(() => {
37
+ const mql = window.matchMedia(`(max-width: ${MOBILE_BREAKPOINT - 1}px)`);
38
+ const onChange = () => {
39
+ setIsMobile(window.innerWidth < MOBILE_BREAKPOINT);
40
+ };
41
+ mql.addEventListener("change", onChange);
42
+ setIsMobile(window.innerWidth < MOBILE_BREAKPOINT);
43
+ return () => mql.removeEventListener("change", onChange);
44
+ }, []);
45
+ return !!isMobile;
46
+ }
47
+ //#endregion
48
+ Object.defineProperty(exports, "__toESM", {
49
+ enumerable: true,
50
+ get: function() {
51
+ return __toESM;
52
+ }
53
+ });
54
+ Object.defineProperty(exports, "cn", {
55
+ enumerable: true,
56
+ get: function() {
57
+ return cn;
58
+ }
59
+ });
60
+ Object.defineProperty(exports, "useIsMobile", {
61
+ enumerable: true,
62
+ get: function() {
63
+ return useIsMobile;
64
+ }
65
+ });
66
+
67
+ //# sourceMappingURL=utils.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.cjs","names":["React"],"sources":["../src/utils/cn.ts","../src/utils/use-mobile.ts"],"sourcesContent":["import { type ClassValue, clsx } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n","import * as React from \"react\";\n\nconst MOBILE_BREAKPOINT = 768;\n\nexport function useIsMobile() {\n const [isMobile, setIsMobile] = React.useState<boolean | undefined>(undefined);\n\n React.useEffect(() => {\n const mql = window.matchMedia(`(max-width: ${MOBILE_BREAKPOINT - 1}px)`);\n const onChange = () => {\n setIsMobile(window.innerWidth < MOBILE_BREAKPOINT);\n };\n mql.addEventListener(\"change\", onChange);\n setIsMobile(window.innerWidth < MOBILE_BREAKPOINT);\n return () => mql.removeEventListener(\"change\", onChange);\n }, []);\n\n return !!isMobile;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,SAAgB,GAAG,GAAG,QAAsB;CAC1C,QAAA,GAAA,eAAA,UAAA,GAAA,KAAA,MAAoB,MAAM,CAAC;AAC7B;;;ACHA,MAAM,oBAAoB;AAE1B,SAAgB,cAAc;CAC5B,MAAM,CAAC,UAAU,eAAeA,MAAM,SAA8B,KAAA,CAAS;CAE7E,MAAM,gBAAgB;EACpB,MAAM,MAAM,OAAO,WAAW,eAAe,oBAAoB,EAAE,IAAI;EACvE,MAAM,iBAAiB;GACrB,YAAY,OAAO,aAAa,iBAAiB;EACnD;EACA,IAAI,iBAAiB,UAAU,QAAQ;EACvC,YAAY,OAAO,aAAa,iBAAiB;EACjD,aAAa,IAAI,oBAAoB,UAAU,QAAQ;CACzD,GAAG,CAAC,CAAC;CAEL,OAAO,CAAC,CAAC;AACX"}
package/dist/utils.js ADDED
@@ -0,0 +1,27 @@
1
+ import { clsx } from "clsx";
2
+ import { twMerge } from "tailwind-merge";
3
+ import * as React from "react";
4
+ //#region src/utils/cn.ts
5
+ function cn(...inputs) {
6
+ return twMerge(clsx(inputs));
7
+ }
8
+ //#endregion
9
+ //#region src/utils/use-mobile.ts
10
+ const MOBILE_BREAKPOINT = 768;
11
+ function useIsMobile() {
12
+ const [isMobile, setIsMobile] = React.useState(void 0);
13
+ React.useEffect(() => {
14
+ const mql = window.matchMedia(`(max-width: ${MOBILE_BREAKPOINT - 1}px)`);
15
+ const onChange = () => {
16
+ setIsMobile(window.innerWidth < MOBILE_BREAKPOINT);
17
+ };
18
+ mql.addEventListener("change", onChange);
19
+ setIsMobile(window.innerWidth < MOBILE_BREAKPOINT);
20
+ return () => mql.removeEventListener("change", onChange);
21
+ }, []);
22
+ return !!isMobile;
23
+ }
24
+ //#endregion
25
+ export { cn as n, useIsMobile as t };
26
+
27
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","names":[],"sources":["../src/utils/cn.ts","../src/utils/use-mobile.ts"],"sourcesContent":["import { type ClassValue, clsx } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n","import * as React from \"react\";\n\nconst MOBILE_BREAKPOINT = 768;\n\nexport function useIsMobile() {\n const [isMobile, setIsMobile] = React.useState<boolean | undefined>(undefined);\n\n React.useEffect(() => {\n const mql = window.matchMedia(`(max-width: ${MOBILE_BREAKPOINT - 1}px)`);\n const onChange = () => {\n setIsMobile(window.innerWidth < MOBILE_BREAKPOINT);\n };\n mql.addEventListener(\"change\", onChange);\n setIsMobile(window.innerWidth < MOBILE_BREAKPOINT);\n return () => mql.removeEventListener(\"change\", onChange);\n }, []);\n\n return !!isMobile;\n}\n"],"mappings":";;;;AAGA,SAAgB,GAAG,GAAG,QAAsB;CAC1C,OAAO,QAAQ,KAAK,MAAM,CAAC;AAC7B;;;ACHA,MAAM,oBAAoB;AAE1B,SAAgB,cAAc;CAC5B,MAAM,CAAC,UAAU,eAAe,MAAM,SAA8B,KAAA,CAAS;CAE7E,MAAM,gBAAgB;EACpB,MAAM,MAAM,OAAO,WAAW,eAAe,oBAAoB,EAAE,IAAI;EACvE,MAAM,iBAAiB;GACrB,YAAY,OAAO,aAAa,iBAAiB;EACnD;EACA,IAAI,iBAAiB,UAAU,QAAQ;EACvC,YAAY,OAAO,aAAa,iBAAiB;EACjD,aAAa,IAAI,oBAAoB,UAAU,QAAQ;CACzD,GAAG,CAAC,CAAC;CAEL,OAAO,CAAC,CAAC;AACX"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@psnext/design-system",
3
- "version": "1.0.0",
4
- "description": "PS Next design system — primitives, patterns, and layouts.",
3
+ "version": "1.1.0",
4
+ "description": "Sapient AI Products design system — primitives, patterns, and layouts.",
5
5
  "license": "UNLICENSED",
6
6
  "private": false,
7
7
  "type": "module",
@@ -34,13 +34,7 @@
34
34
  "import": "./dist/contexts/index.js",
35
35
  "require": "./dist/contexts/index.cjs"
36
36
  },
37
- "./styles": "./dist/styles/index.css",
38
- "./styles/theme": "./dist/styles/theme.css",
39
- "./styles/themes/slingshot": "./dist/styles/themes/slingshot.css",
40
- "./styles/themes/bodhi": "./dist/styles/themes/bodhi.css",
41
- "./styles/themes/sustain": "./dist/styles/themes/sustain.css",
42
- "./styles/generated/light": "./dist/styles/generated/light.css",
43
- "./styles/generated/dark": "./dist/styles/generated/dark.css"
37
+ "./styles": "./dist/styles/index.css"
44
38
  },
45
39
  "files": [
46
40
  "dist",
@@ -51,32 +45,9 @@
51
45
  "registry": "https://registry.npmjs.org/"
52
46
  },
53
47
  "dependencies": {
54
- "@radix-ui/react-accordion": "^1.2.3",
55
- "@radix-ui/react-alert-dialog": "^1.1.6",
56
- "@radix-ui/react-aspect-ratio": "^1.1.2",
57
- "@radix-ui/react-avatar": "^1.1.3",
58
- "@radix-ui/react-checkbox": "^1.1.4",
59
- "@radix-ui/react-collapsible": "^1.1.3",
60
- "@radix-ui/react-context-menu": "^2.2.6",
61
- "@radix-ui/react-dialog": "^1.1.6",
62
- "@radix-ui/react-dropdown-menu": "^2.1.6",
63
- "@radix-ui/react-hover-card": "^1.1.6",
64
- "@radix-ui/react-label": "^2.1.2",
65
- "@radix-ui/react-menubar": "^1.1.6",
66
- "@radix-ui/react-navigation-menu": "^1.2.5",
67
- "@radix-ui/react-popover": "^1.1.6",
68
- "@radix-ui/react-progress": "^1.1.2",
69
- "@radix-ui/react-radio-group": "^1.2.3",
70
- "@radix-ui/react-scroll-area": "^1.2.3",
71
- "@radix-ui/react-select": "^2.1.6",
72
- "@radix-ui/react-separator": "^1.1.2",
73
- "@radix-ui/react-slider": "^1.2.3",
74
- "@radix-ui/react-slot": "^1.1.2",
75
- "@radix-ui/react-switch": "^1.1.3",
76
- "@radix-ui/react-tabs": "^1.1.3",
77
- "@radix-ui/react-toggle": "^1.1.2",
78
- "@radix-ui/react-toggle-group": "^1.1.2",
79
- "@radix-ui/react-tooltip": "^1.1.8",
48
+ "@hookform/resolvers": "^5.4.0",
49
+ "@tanstack/react-query": "^5.101.0",
50
+ "@tanstack/react-table": "^8.21.3",
80
51
  "class-variance-authority": "^0.7.1",
81
52
  "clsx": "^2.1.1",
82
53
  "cmdk": "^1.1.1",
@@ -86,13 +57,15 @@
86
57
  "lucide-react": "^0.487.0",
87
58
  "motion": "^12.23.24",
88
59
  "next-themes": "^0.4.6",
89
- "react-day-picker": "^8.10.1",
60
+ "radix-ui": "^1.6.0",
61
+ "react-day-picker": "^10.0.1",
90
62
  "react-hook-form": "^7.55.0",
91
- "react-resizable-panels": "^2.1.7",
92
- "recharts": "^2.15.4",
63
+ "react-resizable-panels": "^4.11.2",
64
+ "recharts": "^3.8.0",
93
65
  "sonner": "^2.0.3",
94
66
  "tailwind-merge": "^3.2.0",
95
- "vaul": "^1.1.2"
67
+ "vaul": "^1.1.2",
68
+ "zod": "^4.4.3"
96
69
  },
97
70
  "peerDependencies": {
98
71
  "react": "^18.3.0 || ^19.0.0",
@@ -110,6 +83,7 @@
110
83
  "axe-core": "^4.12.0",
111
84
  "jsdom": "^26.1.0",
112
85
  "style-dictionary": "^4.3.0",
86
+ "tailwindcss": "^4.1.12",
113
87
  "tsdown": "^0.12.0",
114
88
  "typescript": "^5.8.0",
115
89
  "vitest": "^3.2.0",
@@ -117,8 +91,8 @@
117
91
  "@ps/tsconfig": "0.0.0"
118
92
  },
119
93
  "scripts": {
120
- "build": "tsdown && pnpm tokens:build && pnpm styles:copy",
121
- "tokens:build": "node --experimental-strip-types style-dictionary.config.ts",
94
+ "build": "tsdown && pnpm styles:copy",
95
+ "tokens:css": "node style-dictionary.config.mjs",
122
96
  "styles:copy": "node scripts/copy-styles.mjs",
123
97
  "typecheck": "tsc --noEmit",
124
98
  "lint": "biome check ./src",