@nd-storybook/storybook 0.3.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.
package/package.json ADDED
@@ -0,0 +1,83 @@
1
+ {
2
+ "name": "@nd-storybook/storybook",
3
+ "version": "0.3.0",
4
+ "type": "module",
5
+ "main": "dist/index.cjs.js",
6
+ "module": "dist/index.es.js",
7
+ "types": "dist/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "import": "./dist/index.es.js",
11
+ "require": "./dist/index.cjs.js"
12
+ },
13
+ "./tailwind.config.js": "./tailwind.config.js",
14
+ "./dist/tailwind.config.js": "./dist/tailwind.config.js",
15
+ "./tailwind.tokens.js": "./tailwind.tokens.js",
16
+ "./dist/tailwind.tokens.js": "./dist/tailwind.tokens.js",
17
+ "./tokens.utilities.js": "./tokens.utilities.js",
18
+ "./dist/tokens.utilities.js": "./dist/tokens.utilities.js",
19
+ "./css/*": "./dist/css/*",
20
+ "./css/tailwind.css": "./dist/css/tailwind.css"
21
+ },
22
+ "files": [
23
+ "dist",
24
+ "tailwind.config.js",
25
+ "tailwind.tokens.js",
26
+ "tokens.utilities.js"
27
+ ],
28
+ "scripts": {
29
+ "dev": "vite",
30
+ "build": "tsc && vite build && node scripts/build-types.js && mkdir -p dist/css && cp -r src/assets/css/* dist/css/ && node scripts/copy-tailwind-files.js && echo '✓ CSS files copied to dist/css/'",
31
+ "lint": "eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0",
32
+ "preview": "vite preview",
33
+ "storybook": "storybook dev -p 6006",
34
+ "build-storybook": "storybook build -o storybook-static",
35
+ "build-tailwind-tokens": "node scripts/build-tailwind-tokens.js"
36
+ },
37
+ "dependencies": {
38
+ "@headlessui/react": "^2.2.4",
39
+ "axios": "^1.9.0",
40
+ "core-js": "^3.30.1",
41
+ "dayjs": "^1.11.13",
42
+ "immer": "^10.1.1",
43
+ "mitt": "^3.0.1",
44
+ "react": "^19.1.0",
45
+ "react-dom": "^19.1.0",
46
+ "react-svg": "^16.3.0",
47
+ "react-use": "^17.6.0",
48
+ "tailwindcss": "^3.3.2",
49
+ "use-immer": "^0.11.0",
50
+ "uuid": "^11.1.0"
51
+ },
52
+ "devDependencies": {
53
+ "@babel/core": "^7.21.4",
54
+ "@storybook/addon-docs": "^9.1.3",
55
+ "@storybook/addon-links": "^9.0.4",
56
+ "@storybook/addon-postcss": "^2.0.0",
57
+ "@storybook/addon-viewport": "^9.0.8",
58
+ "@storybook/cli": "^9.0.4",
59
+ "@storybook/react-vite": "^9.0.4",
60
+ "@types/react": "^18.2.15",
61
+ "@types/react-dom": "^18.2.7",
62
+ "@typescript-eslint/eslint-plugin": "^8.28.0",
63
+ "@typescript-eslint/parser": "^8.28.0",
64
+ "@vitejs/plugin-react": "^4.3.4",
65
+ "autoprefixer": "^10.4.14",
66
+ "babel-loader": "^9.1.2",
67
+ "esbuild": "^0.25.9",
68
+ "eslint": "^8.45.0",
69
+ "eslint-plugin-react-hooks": "^5.2.0",
70
+ "eslint-plugin-react-refresh": "^0.4.19",
71
+ "eslint-plugin-storybook": "^9.0.4",
72
+ "postcss": "^8.4.23",
73
+ "postcss-import": "^16.1.0",
74
+ "postcss-loader": "^7.3.4",
75
+ "rollup-plugin-dts": "^6.2.1",
76
+ "snarkdown": "^2.0.0",
77
+ "storybook": "^9.0.4",
78
+ "token-transformer": "^0.0.33",
79
+ "typescript": "^5.8.3",
80
+ "vite": "^6.3.5",
81
+ "vite-plugin-svgr": "^4.3.0"
82
+ }
83
+ }
@@ -0,0 +1,86 @@
1
+ import {
2
+ primitiveColors,
3
+ semanticColors,
4
+ componentColors,
5
+ spacing,
6
+ primitiveFontFamilies,
7
+ primitiveFontSizes,
8
+ primitiveFontWeights,
9
+ primitiveLetterSpacings, primitiveBorderRadius, primitiveBorderWidths, semanticBorderRadius,
10
+ primitiveBoxShadows
11
+ } from './tailwind.tokens.js';
12
+
13
+ import tokenUtilities from './tokens.utilities.js';
14
+
15
+ // No longer needed as we're using CSS classes directly
16
+
17
+ /** @type {import('tailwindcss').Config} */
18
+ export default {
19
+ content: [
20
+ "./index.html",
21
+ "./src/**/*.{vue,js,ts,jsx,tsx,stories.js}",
22
+ "./storybook/**/*.{mdx,vue,js,ts,jsx,tsx,stories.js}",
23
+ ],
24
+ darkMode: 'class',
25
+ theme: {
26
+ extend: {
27
+ colors: {
28
+ ...primitiveColors,
29
+ ...semanticColors,
30
+ ...componentColors
31
+ },
32
+
33
+ spacing: {
34
+ ...spacing,
35
+ // 'xs': 'var(--spacing-inset-spacing-inset-xs)',
36
+ // 's': 'var(--spacing-inset-spacing-inset-s)',
37
+ // 'm': 'var(--spacing-inset-spacing-inset-m)',
38
+ // 'l': 'var(--spacing-inset-spacing-inset-l)',
39
+ // 'xl': 'var(--spacing-inset-spacing-inset-xl)',
40
+ },
41
+
42
+ fontFamily: {
43
+ ...primitiveFontFamilies
44
+ },
45
+ fontWeight: {
46
+ ...primitiveFontWeights
47
+ },
48
+ fontSize: {
49
+ ...primitiveFontSizes,
50
+ 'heading-xs': 'var(--font-size-heading-xs)',
51
+ 'heading-s': 'var(--font-size-heading-s)',
52
+ 'heading-m': 'var(--font-size-heading-m)',
53
+ 'heading-l': 'var(--font-size-heading-l)',
54
+ 'heading-xl': 'var(--font-size-heading-xl)',
55
+ 'body-xs': 'var(--font-size-body-xs)',
56
+ 'body-s': 'var(--font-size-body-s)',
57
+ 'body-m': 'var(--font-size-body-m)',
58
+ 'body-l': 'var(--font-size-body-l)',
59
+ 'body-xl': 'var(--font-size-body-xl)',
60
+ 'body-xxl': 'var(--font-size-body-xxl)',
61
+ 'body-drop-cap': 'var(--font-size-body-drop-cap)',
62
+ 'meta': 'var(--font-size-meta)'
63
+ },
64
+ letterSpacing: {
65
+ ...primitiveLetterSpacings,
66
+ '0': 'var(--typography-letter-spacing-0)',
67
+ 's': 'var(--typography-letter-spacing-s)',
68
+ 'm': 'var(--typography-letter-spacing-m)',
69
+ 'l': 'var(--typography-letter-spacing-l)'
70
+ },
71
+ borderWidth: {
72
+ ...primitiveBorderWidths
73
+ },
74
+ borderRadius: {
75
+ ...primitiveBorderRadius,
76
+ ...semanticBorderRadius,
77
+ },
78
+ boxShadow: {
79
+ ...primitiveBoxShadows
80
+ }
81
+ },
82
+ },
83
+ plugins: [
84
+ tokenUtilities
85
+ ],
86
+ }
@@ -0,0 +1,252 @@
1
+ // Generated from design tokens - DO NOT EDIT DIRECTLY
2
+ // Last generated: 2025-11-24T13:43:30.556Z
3
+
4
+ export const primitiveColors = {
5
+ "blue-400": "var(--color-blue-400)",
6
+ "blue-500": "var(--color-blue-500)",
7
+ "blue-900": "var(--color-blue-900)",
8
+ "blue-500-10": "var(--color-blue-500-10)",
9
+ "pink-200": "var(--color-pink-200)",
10
+ "pink-400": "var(--color-pink-400)",
11
+ "pink-600": "var(--color-pink-600)",
12
+ "pink-700": "var(--color-pink-700)",
13
+ "brown-500": "var(--color-brown-500)",
14
+ "brown-800": "var(--color-brown-800)",
15
+ "brown-900": "var(--color-brown-900)",
16
+ "neutral-100": "var(--color-neutral-100)",
17
+ "neutral-200": "var(--color-neutral-200)",
18
+ "neutral-300": "var(--color-neutral-300)",
19
+ "neutral-400": "var(--color-neutral-400)",
20
+ "neutral-500": "var(--color-neutral-500)",
21
+ "neutral-600": "var(--color-neutral-600)",
22
+ "neutral-700": "var(--color-neutral-700)",
23
+ "neutral-800": "var(--color-neutral-800)",
24
+ "neutral-900": "var(--color-neutral-900)",
25
+ "neutral-black": "var(--color-neutral-black)",
26
+ "neutral-black-10": "var(--color-neutral-black-10)",
27
+ "neutral-white": "var(--color-neutral-white)",
28
+ "neutral-white-30": "var(--color-neutral-white-30)"
29
+ };
30
+ export const semanticColors = {
31
+ "border-default": "var(--color-border-default)",
32
+ "border-brand": "var(--color-border-brand)",
33
+ "border-accent-gray": "var(--color-border-accent-gray)",
34
+ "border-accent-gray-subtle": "var(--color-border-accent-gray-subtle)",
35
+ "border-disabled": "var(--color-border-disabled)",
36
+ "border-warning": "var(--color-border-warning)",
37
+ "text-default": "var(--color-text-default)",
38
+ "text-subtle": "var(--color-text-subtle)",
39
+ "text-brand": "var(--color-text-brand)",
40
+ "text-brand-subtle": "var(--color-text-brand-subtle)",
41
+ "text-accent-brown": "var(--color-text-accent-brown)",
42
+ "text-accent-brown-subtle": "var(--color-text-accent-brown-subtle)",
43
+ "text-accent-pink": "var(--color-text-accent-pink)",
44
+ "text-disabled": "var(--color-text-disabled)",
45
+ "text-inverse": "var(--color-text-inverse)",
46
+ "text-warning": "var(--color-text-warning)",
47
+ "text-warning-inverse": "var(--color-text-warning-inverse)",
48
+ "background-default": "var(--color-background-default)",
49
+ "background-dark": "var(--color-background-dark)",
50
+ "background-dark-subtle": "var(--color-background-dark-subtle)",
51
+ "background-brand": "var(--color-background-brand)",
52
+ "background-brand-subtle": "var(--color-background-brand-subtle)",
53
+ "background-brand-subtlest": "var(--color-background-brand-subtlest)",
54
+ "background-accent-gray": "var(--color-background-accent-gray)",
55
+ "background-accent-gray-subtle": "var(--color-background-accent-gray-subtle)",
56
+ "background-accent-brown": "var(--color-background-accent-brown)",
57
+ "background-accent-pink": "var(--color-background-accent-pink)",
58
+ "background-accent-pink-subtle": "var(--color-background-accent-pink-subtle)",
59
+ "background-accent-pink-subtlest": "var(--color-background-accent-pink-subtlest)",
60
+ "background-disabled": "var(--color-background-disabled)",
61
+ "icons-default": "var(--color-icons-default)",
62
+ "icons-gray": "var(--color-icons-gray)",
63
+ "icons-brand": "var(--color-icons-brand)",
64
+ "icons-warning": "var(--color-icons-warning)",
65
+ "icons-inverse": "var(--color-icons-inverse)",
66
+ "shadow-default": "var(--color-shadow-default)"
67
+ };
68
+ export const componentColors = {
69
+ "form-background-input-field": "var(--color-form-background-input-field-default)",
70
+ "form-background-checkbox": "var(--color-form-background-checkbox-default)",
71
+ "form-border-input-field": "var(--color-form-border-input-field-default)",
72
+ "form-border-checkbox": "var(--color-form-border-checkbox-default)",
73
+ "button-background-primary": "var(--color-button-background-primary-default)",
74
+ "button-background-dark": "var(--color-button-background-dark-default)",
75
+ "button-background-secondary": "var(--color-button-background-secondary-default)",
76
+ "button-background-pill": "var(--color-button-background-pill-default)",
77
+ "button-border-secondary": "var(--color-button-border-secondary-default)",
78
+ "button-border-pill": "var(--color-button-border-pill-default)",
79
+ "button-icon-primary": "var(--color-button-icon-primary-default)",
80
+ "button-icon-secondary": "var(--color-button-icon-secondary-default)",
81
+ "button-icon-pill": "var(--color-button-icon-pill-default)",
82
+ "button-text-primary": "var(--color-button-text-primary-default)",
83
+ "button-text-dark": "var(--color-button-text-dark-default)",
84
+ "button-text-secondary": "var(--color-button-text-secondary-default)",
85
+ "button-text-ghost": "var(--color-button-text-ghost-default)",
86
+ "button-text-pill": "var(--color-button-text-pill-default)",
87
+ "link-text-default": "var(--color-link-text-default-default)",
88
+ "link-text-brown": "var(--color-link-text-brown-default)",
89
+ "form-background-input-field-hover": "var(--color-form-background-input-field-hover)",
90
+ "form-background-checkbox-hover": "var(--color-form-background-checkbox-hover)",
91
+ "form-border-input-field-hover": "var(--color-form-border-input-field-hover)",
92
+ "form-border-checkbox-hover": "var(--color-form-border-checkbox-hover)",
93
+ "button-background-primary-hover": "var(--color-button-background-primary-hover)",
94
+ "button-background-dark-hover": "var(--color-button-background-dark-hover)",
95
+ "button-background-secondary-hover": "var(--color-button-background-secondary-hover)",
96
+ "button-background-pill-hover": "var(--color-button-background-pill-hover)",
97
+ "button-border-secondary-hover": "var(--color-button-border-secondary-hover)",
98
+ "button-border-pill-hover": "var(--color-button-border-pill-hover)",
99
+ "button-icon-primary-hover": "var(--color-button-icon-primary-hover)",
100
+ "button-icon-secondary-hover": "var(--color-button-icon-secondary-hover)",
101
+ "button-icon-pill-hover": "var(--color-button-icon-pill-hover)",
102
+ "button-text-primary-hover": "var(--color-button-text-primary-hover)",
103
+ "button-text-dark-hover": "var(--color-button-text-dark-hover)",
104
+ "button-text-secondary-hover": "var(--color-button-text-secondary-hover)",
105
+ "button-text-ghost-hover": "var(--color-button-text-ghost-hover)",
106
+ "button-text-pill-hover": "var(--color-button-text-pill-hover)",
107
+ "link-text-default-hover": "var(--color-link-text-default-hover)",
108
+ "link-text-brown-hover": "var(--color-link-text-brown-hover)",
109
+ "form-background-input-field-active": "var(--color-form-background-input-field-active)",
110
+ "form-background-checkbox-active": "var(--color-form-background-checkbox-active)",
111
+ "form-border-input-field-active": "var(--color-form-border-input-field-active)",
112
+ "form-border-checkbox-active": "var(--color-form-border-checkbox-active)",
113
+ "button-background-primary-active": "var(--color-button-background-primary-active)",
114
+ "button-background-dark-active": "var(--color-button-background-dark-active)",
115
+ "button-background-secondary-active": "var(--color-button-background-secondary-active)",
116
+ "button-background-pill-active": "var(--color-button-background-pill-active)",
117
+ "button-border-secondary-active": "var(--color-button-border-secondary-active)",
118
+ "button-border-pill-active": "var(--color-button-border-pill-active)",
119
+ "button-icon-primary-active": "var(--color-button-icon-primary-active)",
120
+ "button-icon-secondary-active": "var(--color-button-icon-secondary-active)",
121
+ "button-icon-pill-active": "var(--color-button-icon-pill-active)",
122
+ "button-text-primary-active": "var(--color-button-text-primary-active)",
123
+ "button-text-dark-active": "var(--color-button-text-dark-active)",
124
+ "button-text-secondary-active": "var(--color-button-text-secondary-active)",
125
+ "button-text-ghost-active": "var(--color-button-text-ghost-active)",
126
+ "button-text-pill-active": "var(--color-button-text-pill-active)",
127
+ "link-text-default-active": "var(--color-link-text-default-active)",
128
+ "link-text-brown-active": "var(--color-link-text-brown-active)",
129
+ "form-background-input-field-disabled": "var(--color-form-background-input-field-disabled)",
130
+ "form-background-checkbox-disabled": "var(--color-form-background-checkbox-disabled)",
131
+ "form-border-input-field-disabled": "var(--color-form-border-input-field-disabled)",
132
+ "form-border-checkbox-disabled": "var(--color-form-border-checkbox-disabled)",
133
+ "button-background-primary-disabled": "var(--color-button-background-primary-disabled)",
134
+ "button-background-dark-disabled": "var(--color-button-background-dark-disabled)",
135
+ "button-background-secondary-disabled": "var(--color-button-background-secondary-disabled)",
136
+ "button-background-pill-disabled": "var(--color-button-background-pill-disabled)",
137
+ "button-border-secondary-disabled": "var(--color-button-border-secondary-disabled)",
138
+ "button-border-pill-disabled": "var(--color-button-border-pill-disabled)",
139
+ "button-icon-primary-disabled": "var(--color-button-icon-primary-disabled)",
140
+ "button-icon-secondary-disabled": "var(--color-button-icon-secondary-disabled)",
141
+ "button-icon-pill-disabled": "var(--color-button-icon-pill-disabled)",
142
+ "button-text-primary-disabled": "var(--color-button-text-primary-disabled)",
143
+ "button-text-dark-disabled": "var(--color-button-text-dark-disabled)",
144
+ "button-text-secondary-disabled": "var(--color-button-text-secondary-disabled)",
145
+ "button-text-ghost-disabled": "var(--color-button-text-ghost-disabled)",
146
+ "button-text-pill-disabled": "var(--color-button-text-pill-disabled)",
147
+ "link-text-default-disabled": "var(--color-link-text-default-disabled)",
148
+ "link-text-brown-disabled": "var(--color-link-text-brown-disabled)"
149
+ };
150
+ export const spacing = {
151
+ "0": "var(--spacing-0)",
152
+ "xxs": "var(--spacing-xxs)",
153
+ "xs": "var(--spacing-xs)",
154
+ "s": "var(--spacing-s)",
155
+ "m": "var(--spacing-m)",
156
+ "l": "var(--spacing-l)",
157
+ "xl": "var(--spacing-xl)",
158
+ "xxl": "var(--spacing-xxl)"
159
+ };
160
+ export const typographyStyles = {
161
+ "article-heading": "var(--article-heading)",
162
+ "article-heading-light": "var(--article-heading-light)",
163
+ "article-heading-alternate": "var(--article-heading-alternate)",
164
+ "article-heading-2": "var(--article-heading-2)",
165
+ "article-heading-2-light": "var(--article-heading-2-light)",
166
+ "article-heading-2-alternate": "var(--article-heading-2-alternate)",
167
+ "article-body": "var(--article-body)",
168
+ "article-type": "var(--article-type)",
169
+ "article-intro": "var(--article-intro)",
170
+ "article-city": "var(--article-city)",
171
+ "article-quote": "var(--article-quote)",
172
+ "article-question": "var(--article-question)",
173
+ "article-drop-cap": "var(--article-drop-cap)",
174
+ "article-drop-cap-alternate": "var(--article-drop-cap-alternate)",
175
+ "body-light": "var(--body-light)",
176
+ "body-regular": "var(--body-regular)",
177
+ "body-bold": "var(--body-bold)",
178
+ "body-uppercase": "var(--body-uppercase)",
179
+ "body-uppercase-bold": "var(--body-uppercase-bold)",
180
+ "body-uppercase-bold-small": "var(--body-uppercase-bold-small)",
181
+ "body-gulliver-semibold": "var(--body-gulliver-semibold)",
182
+ "heading-2": "var(--heading-2)",
183
+ "heading-3": "var(--heading-3)",
184
+ "heading-page": "var(--heading-page)",
185
+ "heading-subheading": "var(--heading-subheading)",
186
+ "heading-uppercase": "var(--heading-uppercase)",
187
+ "meta-light": "var(--meta-light)",
188
+ "meta-regular": "var(--meta-regular)",
189
+ "meta-bold": "var(--meta-bold)",
190
+ "meta-uppercase": "var(--meta-uppercase)",
191
+ "menu-menu-primary": "var(--menu-menu-primary)",
192
+ "menu-menu-secondary": "var(--menu-menu-secondary)",
193
+ "menu-menu-submenu": "var(--menu-menu-submenu)",
194
+ "menu-menu-tabbar": "var(--menu-menu-tabbar)",
195
+ "menu-menu-tabbar-active": "var(--menu-menu-tabbar-active)",
196
+ "menu-menu-tab-item": "var(--menu-menu-tab-item)",
197
+ "menu-menu-tab-item-active": "var(--menu-menu-tab-item-active)"
198
+ };
199
+ export const primitiveFontFamilies = {
200
+ "gulliver": "var(--font-family-gulliver)",
201
+ "fira-sans": "var(--font-family-fira-sans)",
202
+ "montserrat": "var(--font-family-montserrat)",
203
+ "abril-fatface": "var(--font-family-abril-fatface)"
204
+ };
205
+ export const primitiveFontSizes = {
206
+ "12": "var(--font-size-12)",
207
+ "14": "var(--font-size-14)",
208
+ "15": "var(--font-size-15)",
209
+ "16": "var(--font-size-16)",
210
+ "17": "var(--font-size-17)",
211
+ "18": "var(--font-size-18)",
212
+ "20": "var(--font-size-20)",
213
+ "22": "var(--font-size-22)",
214
+ "24": "var(--font-size-24)",
215
+ "26": "var(--font-size-26)",
216
+ "28": "var(--font-size-28)",
217
+ "30": "var(--font-size-30)",
218
+ "32": "var(--font-size-32)",
219
+ "36": "var(--font-size-36)",
220
+ "40": "var(--font-size-40)",
221
+ "48": "var(--font-size-48)",
222
+ "88": "var(--font-size-88)",
223
+ "96": "var(--font-size-96)"
224
+ };
225
+ export const primitiveFontWeights = {
226
+ "bold": "var(--font-weight-bold)",
227
+ "semibold": "var(--font-weight-semibold)",
228
+ "regular": "var(--font-weight-regular)",
229
+ "light": "var(--font-weight-light)"
230
+ };
231
+ export const primitiveLetterSpacings = {
232
+ "0": "var(--letter-spacing-0)",
233
+ "s": "var(--letter-spacing-s)",
234
+ "m": "var(--letter-spacing-m)",
235
+ "l": "var(--letter-spacing-l)"
236
+ };
237
+ export const primitiveBorderWidths = {
238
+ "0": "var(--border-width-0)",
239
+ "s": "var(--border-width-s)"
240
+ };
241
+ export const primitiveBorderRadius = {
242
+ "0": "var(--border-radius-0)",
243
+ "xl": "var(--border-radius-xl)"
244
+ };
245
+ export const semanticBorderRadius = {
246
+ "pill": "var(--border-radius-pill)"
247
+ };
248
+ export const primitiveBoxShadows = {
249
+ "s": "var(--box-shadow-s)",
250
+ "m": "var(--box-shadow-m)",
251
+ "l": "var(--box-shadow-l)"
252
+ };