@texturehq/edges 1.20.3 → 1.22.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/dist/styles.css CHANGED
@@ -63,6 +63,22 @@
63
63
  --color-brand-dark: #363ccb;
64
64
  --color-brand-background: #f6f7ff;
65
65
  --color-neutral-black: #000000;
66
+ --motion-duration-instant: 0ms;
67
+ --motion-duration-fast: 150ms;
68
+ --motion-duration-normal: 250ms;
69
+ --motion-duration-slow: 350ms;
70
+ --motion-duration-slower: 500ms;
71
+ --motion-easing-standard: cubic-bezier(0.4, 0, 0.2, 1);
72
+ --motion-easing-emphasized: cubic-bezier(0, 0, 0.2, 1);
73
+ --motion-easing-accelerate: cubic-bezier(0.4, 0, 1, 1);
74
+ --motion-easing-deaccelerate: cubic-bezier(0, 0, 0.2, 1);
75
+ --motion-distance-xs: 4px;
76
+ --motion-distance-sm: 8px;
77
+ --motion-distance-md: 16px;
78
+ --motion-opacity-hover: 0.9;
79
+ --motion-opacity-disabled: 0.5;
80
+ --motion-scale-hover: 1.02;
81
+ --motion-scale-press: 0.97;
66
82
  --spacing-0: 0px;
67
83
  --spacing-1: 0.25rem;
68
84
  --spacing-2: 0.5rem;
@@ -347,11 +363,27 @@
347
363
  --color-yellow-900: oklch(0.398 0.092 60.236);
348
364
  --color-yellow-950: oklch(0.265 0.06 56.259);
349
365
  --color-brand-primary: #444ae1;
350
- --color-brand-light: #f7f7ff;
366
+ --color-brand-light: #2a2d52;
351
367
  --color-brand-dark: #363ccb;
352
- --color-brand-background: #f6f7ff;
368
+ --color-brand-background: #2e3258;
353
369
  --color-neutral-white: #ffffff;
354
370
  --color-neutral-black: #000000;
371
+ --motion-duration-instant: 0ms;
372
+ --motion-duration-fast: 150ms;
373
+ --motion-duration-normal: 250ms;
374
+ --motion-duration-slow: 350ms;
375
+ --motion-duration-slower: 500ms;
376
+ --motion-easing-standard: cubic-bezier(0.4, 0, 0.2, 1);
377
+ --motion-easing-emphasized: cubic-bezier(0, 0, 0.2, 1);
378
+ --motion-easing-accelerate: cubic-bezier(0.4, 0, 1, 1);
379
+ --motion-easing-deaccelerate: cubic-bezier(0, 0, 0.2, 1);
380
+ --motion-distance-xs: 4px;
381
+ --motion-distance-sm: 8px;
382
+ --motion-distance-md: 16px;
383
+ --motion-opacity-hover: 0.9;
384
+ --motion-opacity-disabled: 0.5;
385
+ --motion-scale-hover: 1.02;
386
+ --motion-scale-press: 0.97;
355
387
  --spacing-0: 0px;
356
388
  --spacing-1: 0.25rem;
357
389
  --spacing-2: 0.5rem;
@@ -1734,6 +1766,9 @@
1734
1766
  .h-64 {
1735
1767
  height: var(--spacing-64);
1736
1768
  }
1769
+ .h-80 {
1770
+ height: var(--spacing-80);
1771
+ }
1737
1772
  .h-96 {
1738
1773
  height: var(--spacing-96);
1739
1774
  }
@@ -2011,9 +2046,18 @@
2011
2046
  .max-w-\[200px\] {
2012
2047
  max-width: 200px;
2013
2048
  }
2049
+ .max-w-\[220px\] {
2050
+ max-width: 220px;
2051
+ }
2052
+ .max-w-\[240px\] {
2053
+ max-width: 240px;
2054
+ }
2014
2055
  .max-w-\[250px\] {
2015
2056
  max-width: 250px;
2016
2057
  }
2058
+ .max-w-\[260px\] {
2059
+ max-width: 260px;
2060
+ }
2017
2061
  .max-w-\[280px\] {
2018
2062
  max-width: 280px;
2019
2063
  }
@@ -2026,6 +2070,9 @@
2026
2070
  .max-w-\[400px\] {
2027
2071
  max-width: 400px;
2028
2072
  }
2073
+ .max-w-\[600px\] {
2074
+ max-width: 600px;
2075
+ }
2029
2076
  .max-w-fit {
2030
2077
  max-width: -moz-fit-content;
2031
2078
  max-width: fit-content;
@@ -3026,6 +3073,12 @@
3026
3073
  background-color: color-mix(in oklab, var(--color-background-muted) 30%, transparent);
3027
3074
  }
3028
3075
  }
3076
+ .bg-background-muted\/60 {
3077
+ background-color: color-mix(in srgb, #f3f4f6 60%, transparent);
3078
+ @supports (color: color-mix(in lab, red, red)) {
3079
+ background-color: color-mix(in oklab, var(--color-background-muted) 60%, transparent);
3080
+ }
3081
+ }
3029
3082
  .bg-background-selected {
3030
3083
  background-color: var(--color-background-selected);
3031
3084
  }
@@ -3086,6 +3139,12 @@
3086
3139
  background-color: color-mix(in oklab, var(--color-brand-primary) 10%, transparent);
3087
3140
  }
3088
3141
  }
3142
+ .bg-brand-primary\/20 {
3143
+ background-color: color-mix(in srgb, #444ae1 20%, transparent);
3144
+ @supports (color: color-mix(in lab, red, red)) {
3145
+ background-color: color-mix(in oklab, var(--color-brand-primary) 20%, transparent);
3146
+ }
3147
+ }
3089
3148
  .bg-current {
3090
3149
  background-color: currentcolor;
3091
3150
  }
@@ -3242,6 +3301,9 @@
3242
3301
  .bg-state-unknown {
3243
3302
  background-color: var(--color-state-unknown);
3244
3303
  }
3304
+ .bg-text-caption {
3305
+ background-color: var(--color-text-caption);
3306
+ }
3245
3307
  .bg-text-heading {
3246
3308
  background-color: var(--color-text-heading);
3247
3309
  }
@@ -4139,6 +4201,14 @@
4139
4201
  --tw-shadow: 0 25px 50px -12px var(--tw-shadow-color, rgb(0 0 0 / 0.25));
4140
4202
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
4141
4203
  }
4204
+ .shadow-\[0_-4px_6px_-1px_rgba\(0\,0\,0\,0\.1\)\] {
4205
+ --tw-shadow: 0 -4px 6px -1px var(--tw-shadow-color, rgba(0,0,0,0.1));
4206
+ box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
4207
+ }
4208
+ .shadow-\[0_4px_6px_-1px_rgba\(0\,0\,0\,0\.1\)\] {
4209
+ --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgba(0,0,0,0.1));
4210
+ box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
4211
+ }
4142
4212
  .shadow-\[inset_0_0_0_1px_var\(--color-border-focus\)\] {
4143
4213
  --tw-shadow: inset 0 0 0 1px var(--tw-shadow-color, var(--color-border-focus));
4144
4214
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
@@ -4448,6 +4518,26 @@
4448
4518
  }
4449
4519
  }
4450
4520
  }
4521
+ .group-hover\:bg-brand-primary\/15 {
4522
+ &:is(:where(.group):hover *) {
4523
+ @media (hover: hover) {
4524
+ background-color: color-mix(in srgb, #444ae1 15%, transparent);
4525
+ @supports (color: color-mix(in lab, red, red)) {
4526
+ background-color: color-mix(in oklab, var(--color-brand-primary) 15%, transparent);
4527
+ }
4528
+ }
4529
+ }
4530
+ }
4531
+ .group-hover\:bg-brand-primary\/90 {
4532
+ &:is(:where(.group):hover *) {
4533
+ @media (hover: hover) {
4534
+ background-color: color-mix(in srgb, #444ae1 90%, transparent);
4535
+ @supports (color: color-mix(in lab, red, red)) {
4536
+ background-color: color-mix(in oklab, var(--color-brand-primary) 90%, transparent);
4537
+ }
4538
+ }
4539
+ }
4540
+ }
4451
4541
  .group-hover\:bg-gray-200 {
4452
4542
  &:is(:where(.group):hover *) {
4453
4543
  @media (hover: hover) {
@@ -4455,6 +4545,20 @@
4455
4545
  }
4456
4546
  }
4457
4547
  }
4548
+ .group-hover\:text-brand-primary {
4549
+ &:is(:where(.group):hover *) {
4550
+ @media (hover: hover) {
4551
+ color: var(--color-brand-primary);
4552
+ }
4553
+ }
4554
+ }
4555
+ .group-hover\:text-text-heading {
4556
+ &:is(:where(.group):hover *) {
4557
+ @media (hover: hover) {
4558
+ color: var(--color-text-heading);
4559
+ }
4560
+ }
4561
+ }
4458
4562
  .group-hover\:opacity-100 {
4459
4563
  &:is(:where(.group):hover *) {
4460
4564
  @media (hover: hover) {
@@ -4791,6 +4895,13 @@
4791
4895
  }
4792
4896
  }
4793
4897
  }
4898
+ .hover\:bg-background-selected {
4899
+ &:hover {
4900
+ @media (hover: hover) {
4901
+ background-color: var(--color-background-selected);
4902
+ }
4903
+ }
4904
+ }
4794
4905
  .hover\:bg-black\/10 {
4795
4906
  &:hover {
4796
4907
  @media (hover: hover) {
@@ -4822,6 +4933,16 @@
4822
4933
  }
4823
4934
  }
4824
4935
  }
4936
+ .hover\:bg-brand-primary\/90 {
4937
+ &:hover {
4938
+ @media (hover: hover) {
4939
+ background-color: color-mix(in srgb, #444ae1 90%, transparent);
4940
+ @supports (color: color-mix(in lab, red, red)) {
4941
+ background-color: color-mix(in oklab, var(--color-brand-primary) 90%, transparent);
4942
+ }
4943
+ }
4944
+ }
4945
+ }
4825
4946
  .hover\:bg-feedback-error-background {
4826
4947
  &:hover {
4827
4948
  @media (hover: hover) {
@@ -4839,6 +4960,16 @@
4839
4960
  }
4840
4961
  }
4841
4962
  }
4963
+ .hover\:bg-feedback-error-background\/80 {
4964
+ &:hover {
4965
+ @media (hover: hover) {
4966
+ background-color: color-mix(in srgb, #fee2e2 80%, transparent);
4967
+ @supports (color: color-mix(in lab, red, red)) {
4968
+ background-color: color-mix(in oklab, var(--color-feedback-error-background) 80%, transparent);
4969
+ }
4970
+ }
4971
+ }
4972
+ }
4842
4973
  .hover\:bg-gray-50 {
4843
4974
  &:hover {
4844
4975
  @media (hover: hover) {
@@ -5513,6 +5644,16 @@
5513
5644
  position: relative;
5514
5645
  }
5515
5646
  }
5647
+ .md\:order-1 {
5648
+ @media (width >= 48rem) {
5649
+ order: 1;
5650
+ }
5651
+ }
5652
+ .md\:order-2 {
5653
+ @media (width >= 48rem) {
5654
+ order: 2;
5655
+ }
5656
+ }
5516
5657
  .md\:col-auto {
5517
5658
  @media (width >= 48rem) {
5518
5659
  grid-column: auto;
@@ -5678,6 +5819,26 @@
5678
5819
  max-width: none;
5679
5820
  }
5680
5821
  }
5822
+ .md\:min-w-0 {
5823
+ @media (width >= 48rem) {
5824
+ min-width: var(--spacing-0);
5825
+ }
5826
+ }
5827
+ .md\:flex-\[1\] {
5828
+ @media (width >= 48rem) {
5829
+ flex: 1;
5830
+ }
5831
+ }
5832
+ .md\:flex-\[2\] {
5833
+ @media (width >= 48rem) {
5834
+ flex: 2;
5835
+ }
5836
+ }
5837
+ .md\:flex-shrink-0 {
5838
+ @media (width >= 48rem) {
5839
+ flex-shrink: 0;
5840
+ }
5841
+ }
5681
5842
  .md\:translate-x-0 {
5682
5843
  @media (width >= 48rem) {
5683
5844
  --tw-translate-x: var(--spacing-0);
@@ -5749,6 +5910,11 @@
5749
5910
  grid-template-columns: none;
5750
5911
  }
5751
5912
  }
5913
+ .md\:flex-col {
5914
+ @media (width >= 48rem) {
5915
+ flex-direction: column;
5916
+ }
5917
+ }
5752
5918
  .md\:flex-row {
5753
5919
  @media (width >= 48rem) {
5754
5920
  flex-direction: row;
@@ -5764,6 +5930,11 @@
5764
5930
  justify-content: space-between;
5765
5931
  }
5766
5932
  }
5933
+ .md\:justify-center {
5934
+ @media (width >= 48rem) {
5935
+ justify-content: center;
5936
+ }
5937
+ }
5767
5938
  .md\:space-y-12 {
5768
5939
  @media (width >= 48rem) {
5769
5940
  :where(& > :not(:last-child)) {
@@ -1,6 +1,6 @@
1
1
  {
2
- "version": "1.20.3",
3
- "generatedAt": "2025-11-16T03:36:11.855Z",
2
+ "version": "1.22.0",
3
+ "generatedAt": "2025-11-18T02:17:14.811Z",
4
4
  "categories": {
5
5
  "hooks": {
6
6
  "description": "React hooks for common functionality like breakpoints, debouncing, local storage, and media queries",
package/package.json CHANGED
@@ -1,176 +1,176 @@
1
1
  {
2
- "name": "@texturehq/edges",
3
- "version": "1.20.3",
4
- "author": "Nicholas Brown <nick@texturehq.com>",
5
- "description": "A shared component library for Texture",
6
- "type": "module",
7
- "main": "./dist/index.js",
8
- "module": "./dist/index.js",
9
- "types": "./dist/index.d.ts",
10
- "sideEffects": false,
11
- "files": [
12
- "dist/**",
13
- "templates/**",
14
- "scripts/**"
15
- ],
16
- "exports": {
17
- ".": {
18
- "types": "./dist/index.d.ts",
19
- "react-server": "./dist/server.js",
20
- "import": "./dist/index.js",
21
- "default": "./dist/index.js"
22
- },
23
- "./server": {
24
- "types": "./dist/server.d.ts",
25
- "import": "./dist/server.js",
26
- "default": "./dist/server.js"
27
- },
28
- "./rhf": {
29
- "types": "./dist/rhf/index.d.ts",
30
- "import": "./dist/rhf/index.js",
31
- "default": "./dist/rhf/index.js"
32
- },
33
- "./form": {
34
- "types": "./dist/form/index.d.ts",
35
- "import": "./dist/form/index.js",
36
- "default": "./dist/form/index.js"
37
- },
38
- "./styles.css": "./dist/styles.css",
39
- "./dist/styles.css": "./dist/styles.css",
40
- "./theme.css": "./dist/theme.css",
41
- "./dist/theme.css": "./dist/theme.css"
42
- },
43
- "scripts": {
44
- "dev": "yarn watch",
45
- "watch": "tsup --watch",
46
- "build": "yarn tokens:build && tsup && yarn build:post",
47
- "build:post": "postcss src/styles.css -o dist/styles.css && node scripts/copy-assets.js && node scripts/generate-edges-docs.js",
48
- "tokens:build": "node style-dictionary.config.mjs && node scripts/generate-viz-runtime.js",
49
- "tokens:build:tailwind": "node style-dictionary.config.mjs",
50
- "tokens:watch": "nodemon --watch tokens --ext json --exec 'yarn tokens:build'",
51
- "tokens:watch:tailwind": "nodemon --watch tokens --ext json --exec 'yarn tokens:build:tailwind'",
52
- "tokens:validate": "node scripts/validate-tokens.js",
53
- "build:yalc": "yarn build && npx yalc publish && npx yalc push",
54
- "dev:yalc": "yarn build && npx yalc publish && npx yalc push && echo 'Package updated! Run in target project: yarn install && yarn dev'",
55
- "dev:yalc:force": "yarn build && npx yalc publish && npx yalc push && echo 'Package updated! Run in target project: rm -rf .vite && yarn cache clean && yarn dev --force'",
56
- "clean": "rm -rf dist",
57
- "lint": "biome check src/",
58
- "lint:quiet": "biome check --reporter=github src/",
59
- "lint:fix": "biome check --write src/",
60
- "format": "biome format --write src/",
61
- "format:check": "biome format src/",
62
- "test": "vitest run",
63
- "test:watch": "vitest",
64
- "test:coverage": "vitest run --coverage",
65
- "test:ui": "vitest --ui",
66
- "storybook": "VITE_MAPBOX_ACCESS_TOKEN=pk.eyJ1IjoidmljdG9yLXRleHR1cmUiLCJhIjoiY2x1cXM5dnVqMDFvYTJrcWszbnZmdGo4cCJ9.uEu0gqmITLtBMKEVW0aFtA storybook dev -p 6010 --no-open",
67
- "build-storybook": "storybook build",
68
- "postinstall": "node scripts/setup-cursor-rules.js || echo \"! setup-cursor-rules: non-fatal error\""
69
- },
70
- "peerDependencies": {
71
- "@hookform/resolvers": "^3.x",
72
- "next": "*",
73
- "react": "^19.0.0",
74
- "react-dom": "^19.0.0",
75
- "react-hook-form": "^7.x",
76
- "zod": "^3.x"
77
- },
78
- "peerDependenciesMeta": {
79
- "@hookform/resolvers": {
80
- "optional": true
81
- },
82
- "react-hook-form": {
83
- "optional": true
84
- },
85
- "zod": {
86
- "optional": true
87
- }
88
- },
89
- "dependencies": {
90
- "@phosphor-icons/react": "^2.1.7",
91
- "@tanstack/react-virtual": "^3.13.12",
92
- "@tiptap/core": "^3.4.5",
93
- "@tiptap/extension-link": "^3.4.5",
94
- "@tiptap/pm": "^3.4.5",
95
- "@tiptap/react": "^3.4.5",
96
- "@tiptap/starter-kit": "^3.4.5",
97
- "@types/react-map-gl": "6.1.6",
98
- "@visx/axis": "^3.10.1",
99
- "@visx/brush": "^3.12.0",
100
- "@visx/curve": "^3.3.0",
101
- "@visx/drag": "^3.12.0",
102
- "@visx/event": "^3.3.0",
103
- "@visx/gradient": "^3.3.0",
104
- "@visx/pattern": "^3.12.0",
105
- "@visx/responsive": "^3.10.2",
106
- "@visx/scale": "^3.5.0",
107
- "@visx/shape": "^3.5.0",
108
- "@visx/tooltip": "^3.3.0",
109
- "@visx/zoom": "^3.12.0",
110
- "ace-builds": "^1.43.3",
111
- "chance": "^1.1.13",
112
- "d3-array": "^3.2.4",
113
- "date-fns": "^4.1.0",
114
- "file-saver": "^2.0.5",
115
- "filestack-react": "^6.0.0",
116
- "framer-motion": "^12.23.18",
117
- "fuse.js": "^7.0.0",
118
- "lucide-react": "^0.544.0",
119
- "luxon": "^3.4.4",
120
- "mapbox-gl": "3.7.0",
121
- "next-intl": "^4.0.2",
122
- "papaparse": "^5.5.3",
123
- "react-ace": "^14.0.1",
124
- "react-aria-components": "^1.7.1",
125
- "react-colorful": "^5.6.1",
126
- "react-map-gl": "7.1.7",
127
- "react-stately": "^3.35.0",
128
- "tailwind-merge": "^3.2.0"
129
- },
130
- "devDependencies": {
131
- "@biomejs/biome": "^2.2.4",
132
- "@hookform/resolvers": "^3.9.0",
133
- "@storybook/addon-essentials": "^8.6.14",
134
- "@storybook/addon-interactions": "^8.6.14",
135
- "@storybook/addon-styling-webpack": "^1.0.1",
136
- "@storybook/addon-themes": "^8.6.14",
137
- "@storybook/blocks": "^8.6.14",
138
- "@storybook/react": "^8.6.14",
139
- "@storybook/react-vite": "^8.6.14",
140
- "@storybook/test": "^8.6.14",
141
- "@tailwindcss/postcss": "^4.1.14",
142
- "@testing-library/dom": "^10.4.0",
143
- "@testing-library/jest-dom": "^6.4.2",
144
- "@testing-library/react": "^16.3.0",
145
- "@testing-library/user-event": "^14.5.2",
146
- "@types/chance": "^1.1.7",
147
- "@types/file-saver": "^2.0.7",
148
- "@types/luxon": "^3.7.1",
149
- "@types/node": "^20.11.30",
150
- "@types/papaparse": "^5.3.16",
151
- "@types/react": "^19.2.2",
152
- "@types/react-dom": "^19.2.1",
153
- "@vitejs/plugin-react": "^4.2.1",
154
- "@vitest/coverage-v8": "^3.1.1",
155
- "@vitest/ui": "^3.1.1",
156
- "acorn": "^8.15.0",
157
- "acorn-jsx": "^5.3.2",
158
- "autoprefixer": "^10.4.19",
159
- "jsdom": "^24.0.0",
160
- "postcss": "^8.5.6",
161
- "postcss-cli": "^11.0.0",
162
- "react": "19.2.0",
163
- "react-dom": "19.2.0",
164
- "react-hook-form": "^7.53.0",
165
- "storybook": "^8.6.14",
166
- "style-dictionary": "^5.0.4",
167
- "tailwindcss": "^4.1.14",
168
- "tsup": "^8.0.2",
169
- "typescript": "~5.9.2",
170
- "vite": "^5.1.6",
171
- "vite-plugin-svgr": "^4.3.0",
172
- "vitest": "^3.1.1",
173
- "yalc": "^1.0.0-pre.53",
174
- "zod": "^3.23.8"
175
- }
2
+ "name": "@texturehq/edges",
3
+ "version": "1.22.0",
4
+ "author": "Nicholas Brown <nick@texturehq.com>",
5
+ "description": "A shared component library for Texture",
6
+ "type": "module",
7
+ "main": "./dist/index.js",
8
+ "module": "./dist/index.js",
9
+ "types": "./dist/index.d.ts",
10
+ "sideEffects": false,
11
+ "files": [
12
+ "dist/**",
13
+ "templates/**",
14
+ "scripts/**"
15
+ ],
16
+ "exports": {
17
+ ".": {
18
+ "types": "./dist/index.d.ts",
19
+ "react-server": "./dist/server.js",
20
+ "import": "./dist/index.js",
21
+ "default": "./dist/index.js"
22
+ },
23
+ "./server": {
24
+ "types": "./dist/server.d.ts",
25
+ "import": "./dist/server.js",
26
+ "default": "./dist/server.js"
27
+ },
28
+ "./rhf": {
29
+ "types": "./dist/rhf/index.d.ts",
30
+ "import": "./dist/rhf/index.js",
31
+ "default": "./dist/rhf/index.js"
32
+ },
33
+ "./form": {
34
+ "types": "./dist/form/index.d.ts",
35
+ "import": "./dist/form/index.js",
36
+ "default": "./dist/form/index.js"
37
+ },
38
+ "./styles.css": "./dist/styles.css",
39
+ "./dist/styles.css": "./dist/styles.css",
40
+ "./theme.css": "./dist/theme.css",
41
+ "./dist/theme.css": "./dist/theme.css"
42
+ },
43
+ "scripts": {
44
+ "dev": "yarn watch",
45
+ "watch": "tsup --watch",
46
+ "build": "yarn tokens:build && tsup && yarn build:post",
47
+ "build:post": "postcss src/styles.css -o dist/styles.css && node scripts/copy-assets.js && node scripts/generate-edges-docs.js",
48
+ "tokens:build": "node style-dictionary.config.mjs && node scripts/generate-viz-runtime.js",
49
+ "tokens:build:tailwind": "node style-dictionary.config.mjs",
50
+ "tokens:watch": "nodemon --watch tokens --ext json --exec 'yarn tokens:build'",
51
+ "tokens:watch:tailwind": "nodemon --watch tokens --ext json --exec 'yarn tokens:build:tailwind'",
52
+ "tokens:validate": "node scripts/validate-tokens.js",
53
+ "build:yalc": "yarn build && npx yalc publish && npx yalc push",
54
+ "dev:yalc": "yarn build && npx yalc publish && npx yalc push && echo 'Package updated! Run in target project: yarn install && yarn dev'",
55
+ "dev:yalc:force": "yarn build && npx yalc publish && npx yalc push && echo 'Package updated! Run in target project: rm -rf .vite && yarn cache clean && yarn dev --force'",
56
+ "clean": "rm -rf dist",
57
+ "lint": "biome check src/",
58
+ "lint:quiet": "biome check --reporter=github src/",
59
+ "lint:fix": "biome check --write src/",
60
+ "format": "biome format --write src/",
61
+ "format:check": "biome format src/",
62
+ "test": "vitest run",
63
+ "test:watch": "vitest",
64
+ "test:coverage": "vitest run --coverage",
65
+ "test:ui": "vitest --ui",
66
+ "storybook": "VITE_MAPBOX_ACCESS_TOKEN=pk.eyJ1IjoidmljdG9yLXRleHR1cmUiLCJhIjoiY2x1cXM5dnVqMDFvYTJrcWszbnZmdGo4cCJ9.uEu0gqmITLtBMKEVW0aFtA storybook dev -p 6010 --no-open",
67
+ "build-storybook": "storybook build",
68
+ "postinstall": "node scripts/setup-cursor-rules.js || echo \"! setup-cursor-rules: non-fatal error\""
69
+ },
70
+ "peerDependencies": {
71
+ "@hookform/resolvers": "^3.x",
72
+ "next": "*",
73
+ "react": "^19.0.0",
74
+ "react-dom": "^19.0.0",
75
+ "react-hook-form": "^7.x",
76
+ "zod": "^3.x"
77
+ },
78
+ "peerDependenciesMeta": {
79
+ "@hookform/resolvers": {
80
+ "optional": true
81
+ },
82
+ "react-hook-form": {
83
+ "optional": true
84
+ },
85
+ "zod": {
86
+ "optional": true
87
+ }
88
+ },
89
+ "dependencies": {
90
+ "@phosphor-icons/react": "^2.1.7",
91
+ "@tanstack/react-virtual": "^3.13.12",
92
+ "@tiptap/core": "^3.4.5",
93
+ "@tiptap/extension-link": "^3.4.5",
94
+ "@tiptap/pm": "^3.4.5",
95
+ "@tiptap/react": "^3.4.5",
96
+ "@tiptap/starter-kit": "^3.4.5",
97
+ "@types/react-map-gl": "6.1.6",
98
+ "@visx/axis": "^3.10.1",
99
+ "@visx/brush": "^3.12.0",
100
+ "@visx/curve": "^3.3.0",
101
+ "@visx/drag": "^3.12.0",
102
+ "@visx/event": "^3.3.0",
103
+ "@visx/gradient": "^3.3.0",
104
+ "@visx/pattern": "^3.12.0",
105
+ "@visx/responsive": "^3.10.2",
106
+ "@visx/scale": "^3.5.0",
107
+ "@visx/shape": "^3.5.0",
108
+ "@visx/tooltip": "^3.3.0",
109
+ "@visx/zoom": "^3.12.0",
110
+ "ace-builds": "^1.43.3",
111
+ "chance": "^1.1.13",
112
+ "d3-array": "^3.2.4",
113
+ "date-fns": "^4.1.0",
114
+ "file-saver": "^2.0.5",
115
+ "filestack-react": "^6.0.0",
116
+ "framer-motion": "^12.23.24",
117
+ "fuse.js": "^7.0.0",
118
+ "lucide-react": "^0.544.0",
119
+ "luxon": "^3.4.4",
120
+ "mapbox-gl": "3.7.0",
121
+ "next-intl": "^4.0.2",
122
+ "papaparse": "^5.5.3",
123
+ "react-ace": "^14.0.1",
124
+ "react-aria-components": "^1.7.1",
125
+ "react-colorful": "^5.6.1",
126
+ "react-map-gl": "7.1.7",
127
+ "react-stately": "^3.35.0",
128
+ "tailwind-merge": "^3.2.0"
129
+ },
130
+ "devDependencies": {
131
+ "@biomejs/biome": "^2.2.4",
132
+ "@hookform/resolvers": "^3.9.0",
133
+ "@storybook/addon-essentials": "^8.6.14",
134
+ "@storybook/addon-interactions": "^8.6.14",
135
+ "@storybook/addon-styling-webpack": "^1.0.1",
136
+ "@storybook/addon-themes": "^8.6.14",
137
+ "@storybook/blocks": "^8.6.14",
138
+ "@storybook/react": "^8.6.14",
139
+ "@storybook/react-vite": "^8.6.14",
140
+ "@storybook/test": "^8.6.14",
141
+ "@tailwindcss/postcss": "^4.1.14",
142
+ "@testing-library/dom": "^10.4.0",
143
+ "@testing-library/jest-dom": "^6.4.2",
144
+ "@testing-library/react": "^16.3.0",
145
+ "@testing-library/user-event": "^14.5.2",
146
+ "@types/chance": "^1.1.7",
147
+ "@types/file-saver": "^2.0.7",
148
+ "@types/luxon": "^3.7.1",
149
+ "@types/node": "^20.11.30",
150
+ "@types/papaparse": "^5.3.16",
151
+ "@types/react": "^19.2.2",
152
+ "@types/react-dom": "^19.2.1",
153
+ "@vitejs/plugin-react": "^4.2.1",
154
+ "@vitest/coverage-v8": "^3.1.1",
155
+ "@vitest/ui": "^3.1.1",
156
+ "acorn": "^8.15.0",
157
+ "acorn-jsx": "^5.3.2",
158
+ "autoprefixer": "^10.4.19",
159
+ "jsdom": "^24.0.0",
160
+ "postcss": "^8.5.6",
161
+ "postcss-cli": "^11.0.0",
162
+ "react": "19.2.0",
163
+ "react-dom": "19.2.0",
164
+ "react-hook-form": "^7.53.0",
165
+ "storybook": "^8.6.14",
166
+ "style-dictionary": "^5.0.4",
167
+ "tailwindcss": "^4.1.14",
168
+ "tsup": "^8.0.2",
169
+ "typescript": "~5.9.2",
170
+ "vite": "^5.1.6",
171
+ "vite-plugin-svgr": "^4.3.0",
172
+ "vitest": "^3.1.1",
173
+ "yalc": "^1.0.0-pre.53",
174
+ "zod": "^3.23.8"
175
+ }
176
176
  }