@ponti-studios/ui 1.8.0 → 2.0.1

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 (50) hide show
  1. package/README.md +54 -20
  2. package/dist/styles.css +3 -0
  3. package/package.json +28 -9
  4. package/scripts/create-project.mjs +86 -0
  5. package/src/components/forms/checkbox.stories.tsx +35 -0
  6. package/src/components/forms/checkbox.tsx +38 -0
  7. package/src/components/forms/index.ts +2 -0
  8. package/src/components/forms/label.stories.tsx +16 -0
  9. package/src/components/forms/label.tsx +25 -0
  10. package/src/components/forms/select.tsx +3 -1
  11. package/src/components/overlays/bottom-sheet.stories.tsx +52 -0
  12. package/src/components/overlays/bottom-sheet.tsx +179 -0
  13. package/src/components/overlays/command.tsx +1 -1
  14. package/src/components/overlays/dropdown-menu.tsx +6 -2
  15. package/src/components/overlays/index.ts +2 -0
  16. package/src/components/overlays/popover.tsx +12 -3
  17. package/src/components/overlays/tooltip.stories.tsx +29 -0
  18. package/src/components/overlays/tooltip.tsx +41 -0
  19. package/src/components/primitives/index.ts +2 -0
  20. package/src/components/primitives/segmented-control.stories.tsx +54 -0
  21. package/src/components/primitives/segmented-control.tsx +73 -0
  22. package/src/components/primitives/separator.stories.tsx +34 -0
  23. package/src/components/primitives/separator.tsx +27 -0
  24. package/src/index.ts +2 -0
  25. package/src/native/components.tsx +198 -0
  26. package/src/native/index.ts +2 -0
  27. package/src/native/theme.tsx +69 -0
  28. package/src/styles/build.ts +1 -0
  29. package/src/styles/index.css +94 -0
  30. package/src/styles/package.css +3 -0
  31. package/src/styles/tokens/generated/dark-class.css +39 -0
  32. package/src/styles/tokens/generated/dark.colors.generated.ts +31 -31
  33. package/src/styles/tokens/generated/dark.css +31 -31
  34. package/src/styles/tokens/generated/foundations.css +2 -2
  35. package/src/styles/tokens/generated/foundations.generated.ts +2 -0
  36. package/src/styles/tokens/generated/light.colors.generated.ts +30 -30
  37. package/src/styles/tokens/generated/light.css +30 -30
  38. package/src/styles/tokens/index.ts +6 -6
  39. package/src/styles/tokens/scripts/check-source.mjs +9 -6
  40. package/src/styles/tokens/source/dark.tokens.json +33 -32
  41. package/src/styles/tokens/source/foundations.tokens.json +2 -0
  42. package/src/styles/tokens/source/light.tokens.json +32 -31
  43. package/src/styles/tokens/style-dictionary.dark-class.json +16 -0
  44. package/templates/web-vite/index.html +13 -0
  45. package/templates/web-vite/package.json +27 -0
  46. package/templates/web-vite/src/App.tsx +31 -0
  47. package/templates/web-vite/src/main.tsx +12 -0
  48. package/templates/web-vite/src/styles.css +110 -0
  49. package/templates/web-vite/tsconfig.json +21 -0
  50. package/templates/web-vite/vite.config.ts +6 -0
@@ -0,0 +1,110 @@
1
+ :root {
2
+ font-family: var(--font-sans);
3
+ color: var(--text-primary);
4
+ background: var(--background);
5
+ font-synthesis: none;
6
+ text-rendering: optimizeLegibility;
7
+ -webkit-font-smoothing: antialiased;
8
+ -moz-osx-font-smoothing: grayscale;
9
+ }
10
+
11
+ body {
12
+ min-width: 320px;
13
+ min-height: 100vh;
14
+ margin: 0;
15
+ }
16
+
17
+ a {
18
+ color: inherit;
19
+ text-decoration: none;
20
+ }
21
+
22
+ .starter-page {
23
+ box-sizing: border-box;
24
+ display: flex;
25
+ width: min(100%, 1024px);
26
+ min-height: 100vh;
27
+ margin-inline: auto;
28
+ padding: 2rem 1.5rem;
29
+ flex-direction: column;
30
+ }
31
+
32
+ .starter-header,
33
+ .starter-footer {
34
+ display: flex;
35
+ align-items: center;
36
+ justify-content: space-between;
37
+ border-color: var(--border-default);
38
+ }
39
+
40
+ .starter-header {
41
+ padding-bottom: 1.25rem;
42
+ border-bottom: 1px solid var(--border-default);
43
+ }
44
+
45
+ .starter-home {
46
+ font-size: 0.875rem;
47
+ font-weight: 600;
48
+ letter-spacing: -0.025em;
49
+ }
50
+
51
+ .starter-caption,
52
+ .starter-eyebrow,
53
+ .starter-footer {
54
+ color: var(--text-secondary);
55
+ }
56
+
57
+ .starter-caption,
58
+ .starter-footer {
59
+ font-size: 0.75rem;
60
+ }
61
+
62
+ .starter-content {
63
+ display: flex;
64
+ flex: 1;
65
+ padding-block: 5rem;
66
+ flex-direction: column;
67
+ align-items: flex-start;
68
+ justify-content: center;
69
+ gap: 1.5rem;
70
+ }
71
+
72
+ .starter-eyebrow {
73
+ margin: 0;
74
+ font-size: 0.875rem;
75
+ font-weight: 500;
76
+ }
77
+
78
+ .starter-title {
79
+ max-width: 48rem;
80
+ margin: 0;
81
+ font-size: clamp(2.5rem, 8vw, 3.75rem);
82
+ font-weight: 600;
83
+ letter-spacing: -0.04em;
84
+ line-height: 1.05;
85
+ }
86
+
87
+ .starter-description {
88
+ max-width: 36rem;
89
+ margin: 0;
90
+ color: var(--text-secondary);
91
+ font-size: 1.125rem;
92
+ line-height: 1.75;
93
+ }
94
+
95
+ .starter-actions {
96
+ display: flex;
97
+ flex-wrap: wrap;
98
+ gap: 0.75rem;
99
+ }
100
+
101
+ .starter-footer {
102
+ padding-block: 1rem;
103
+ border-top: 1px solid var(--border-default);
104
+ }
105
+
106
+ @media (min-width: 640px) {
107
+ .starter-page {
108
+ padding-inline: 2.5rem;
109
+ }
110
+ }
@@ -0,0 +1,21 @@
1
+ {
2
+ "compilerOptions": {
3
+ "target": "ES2022",
4
+ "useDefineForClassFields": true,
5
+ "lib": ["ES2022", "DOM", "DOM.Iterable"],
6
+ "module": "ESNext",
7
+ "skipLibCheck": true,
8
+ "moduleResolution": "Bundler",
9
+ "allowImportingTsExtensions": true,
10
+ "verbatimModuleSyntax": true,
11
+ "moduleDetection": "force",
12
+ "noEmit": true,
13
+ "jsx": "react-jsx",
14
+ "strict": true,
15
+ "noUnusedLocals": true,
16
+ "noUnusedParameters": true,
17
+ "noFallthroughCasesInSwitch": true,
18
+ "types": ["vite/client"]
19
+ },
20
+ "include": ["src", "vite.config.ts"]
21
+ }
@@ -0,0 +1,6 @@
1
+ import react from "@vitejs/plugin-react";
2
+ import { defineConfig } from "vite";
3
+
4
+ export default defineConfig({
5
+ plugins: [react()],
6
+ });