@santi020k/lumen 1.6.0 → 1.7.0-rc.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.
@@ -34,7 +34,7 @@ export declare const lumenRegistry: {
34
34
  }, {
35
35
  readonly name: "data-visualization";
36
36
  readonly type: "recipe";
37
- readonly components: readonly ["Chart", "Sparkline", "BarChart", "LineChart", "PieChart", "Stat", "Meter"];
37
+ readonly components: readonly ["Chart", "Sparkline", "BarChart", "LineChart", "PieChart", "ScatterChart", "Heatmap", "RangeChart", "ComboChart", "Stat", "Meter"];
38
38
  }, {
39
39
  readonly name: "analytics-dashboard";
40
40
  readonly type: "recipe";
@@ -629,10 +629,10 @@ export declare const lumenRegistry: {
629
629
  }, {
630
630
  readonly name: "PhoneInput";
631
631
  readonly type: "component";
632
- readonly description: "Pairs a country dial-code select with a telephone number input.";
632
+ readonly description: "Combines localized country metadata, calling codes, formatting, validation, and E.164 output.";
633
633
  readonly category: "Forms";
634
634
  readonly files: readonly ["packages/astro/components/PhoneInput.astro", "packages/astro/styles/lumen.css"];
635
- readonly dependencies: readonly ["Input", "NativeSelect", "styles"];
635
+ readonly dependencies: readonly ["Input", "NativeSelect", "styles", "runtime"];
636
636
  }, {
637
637
  readonly name: "PieChart";
638
638
  readonly type: "component";
@@ -1137,6 +1137,34 @@ export declare const lumenRegistry: {
1137
1137
  readonly description: "Arranges content in fixed or responsive tokenized columns.";
1138
1138
  readonly files: readonly ["packages/astro/components/Grid.astro", "packages/astro/styles/lumen.css"];
1139
1139
  readonly dependencies: readonly ["styles"];
1140
+ }, {
1141
+ readonly name: "ScatterChart";
1142
+ readonly type: "component";
1143
+ readonly category: "Data display";
1144
+ readonly description: "Shows numeric scatter and bubble relationships with accessible fallback data.";
1145
+ readonly files: readonly ["packages/astro/components/ScatterChart.astro", "packages/astro/components/Chart.astro", "packages/astro/styles/lumen.css", "packages/react/src/components.tsx"];
1146
+ readonly dependencies: readonly ["Chart", "styles"];
1147
+ }, {
1148
+ readonly name: "Heatmap";
1149
+ readonly type: "component";
1150
+ readonly category: "Data display";
1151
+ readonly description: "Encodes a labeled matrix with the canonical sequential visualization scale.";
1152
+ readonly files: readonly ["packages/astro/components/Heatmap.astro", "packages/astro/components/Chart.astro", "packages/astro/styles/lumen.css", "packages/react/src/components.tsx"];
1153
+ readonly dependencies: readonly ["Chart", "styles"];
1154
+ }, {
1155
+ readonly name: "RangeChart";
1156
+ readonly type: "component";
1157
+ readonly category: "Data display";
1158
+ readonly description: "Shows ordered low-to-high intervals as a tokenized range band.";
1159
+ readonly files: readonly ["packages/astro/components/RangeChart.astro", "packages/astro/components/Chart.astro", "packages/astro/styles/lumen.css", "packages/react/src/components.tsx"];
1160
+ readonly dependencies: readonly ["Chart", "styles"];
1161
+ }, {
1162
+ readonly name: "ComboChart";
1163
+ readonly type: "component";
1164
+ readonly category: "Data display";
1165
+ readonly description: "Mixes bars, lines, and areas on one meaningful shared value domain.";
1166
+ readonly files: readonly ["packages/astro/components/ComboChart.astro", "packages/astro/components/Chart.astro", "packages/astro/styles/lumen.css", "packages/react/src/components.tsx"];
1167
+ readonly dependencies: readonly ["Chart", "styles"];
1140
1168
  }, {
1141
1169
  readonly name: "VisuallyHidden";
1142
1170
  readonly type: "component";
@@ -1 +1 @@
1
- {"version":3,"file":"registry-data.d.ts","sourceRoot":"","sources":["../src/registry-data.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+yEQ,CAAA"}
1
+ {"version":3,"file":"registry-data.d.ts","sourceRoot":"","sources":["../src/registry-data.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAo3EQ,CAAA"}
@@ -96,6 +96,10 @@ export const lumenRegistry = {
96
96
  'BarChart',
97
97
  'LineChart',
98
98
  'PieChart',
99
+ 'ScatterChart',
100
+ 'Heatmap',
101
+ 'RangeChart',
102
+ 'ComboChart',
99
103
  'Stat',
100
104
  'Meter'
101
105
  ]
@@ -1361,7 +1365,7 @@ export const lumenRegistry = {
1361
1365
  {
1362
1366
  name: 'PhoneInput',
1363
1367
  type: 'component',
1364
- description: 'Pairs a country dial-code select with a telephone number input.',
1368
+ description: 'Combines localized country metadata, calling codes, formatting, validation, and E.164 output.',
1365
1369
  category: 'Forms',
1366
1370
  files: [
1367
1371
  'packages/astro/components/PhoneInput.astro',
@@ -1370,7 +1374,8 @@ export const lumenRegistry = {
1370
1374
  dependencies: [
1371
1375
  'Input',
1372
1376
  'NativeSelect',
1373
- 'styles'
1377
+ 'styles',
1378
+ 'runtime'
1374
1379
  ]
1375
1380
  },
1376
1381
  {
@@ -2335,6 +2340,70 @@ export const lumenRegistry = {
2335
2340
  'styles'
2336
2341
  ]
2337
2342
  },
2343
+ {
2344
+ name: 'ScatterChart',
2345
+ type: 'component',
2346
+ category: 'Data display',
2347
+ description: 'Shows numeric scatter and bubble relationships with accessible fallback data.',
2348
+ files: [
2349
+ 'packages/astro/components/ScatterChart.astro',
2350
+ 'packages/astro/components/Chart.astro',
2351
+ 'packages/astro/styles/lumen.css',
2352
+ 'packages/react/src/components.tsx'
2353
+ ],
2354
+ dependencies: [
2355
+ 'Chart',
2356
+ 'styles'
2357
+ ]
2358
+ },
2359
+ {
2360
+ name: 'Heatmap',
2361
+ type: 'component',
2362
+ category: 'Data display',
2363
+ description: 'Encodes a labeled matrix with the canonical sequential visualization scale.',
2364
+ files: [
2365
+ 'packages/astro/components/Heatmap.astro',
2366
+ 'packages/astro/components/Chart.astro',
2367
+ 'packages/astro/styles/lumen.css',
2368
+ 'packages/react/src/components.tsx'
2369
+ ],
2370
+ dependencies: [
2371
+ 'Chart',
2372
+ 'styles'
2373
+ ]
2374
+ },
2375
+ {
2376
+ name: 'RangeChart',
2377
+ type: 'component',
2378
+ category: 'Data display',
2379
+ description: 'Shows ordered low-to-high intervals as a tokenized range band.',
2380
+ files: [
2381
+ 'packages/astro/components/RangeChart.astro',
2382
+ 'packages/astro/components/Chart.astro',
2383
+ 'packages/astro/styles/lumen.css',
2384
+ 'packages/react/src/components.tsx'
2385
+ ],
2386
+ dependencies: [
2387
+ 'Chart',
2388
+ 'styles'
2389
+ ]
2390
+ },
2391
+ {
2392
+ name: 'ComboChart',
2393
+ type: 'component',
2394
+ category: 'Data display',
2395
+ description: 'Mixes bars, lines, and areas on one meaningful shared value domain.',
2396
+ files: [
2397
+ 'packages/astro/components/ComboChart.astro',
2398
+ 'packages/astro/components/Chart.astro',
2399
+ 'packages/astro/styles/lumen.css',
2400
+ 'packages/react/src/components.tsx'
2401
+ ],
2402
+ dependencies: [
2403
+ 'Chart',
2404
+ 'styles'
2405
+ ]
2406
+ },
2338
2407
  {
2339
2408
  name: 'VisuallyHidden',
2340
2409
  type: 'component',
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@santi020k/lumen",
3
- "version": "1.6.0",
3
+ "version": "1.7.0-rc.0",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -41,7 +41,7 @@
41
41
  },
42
42
  "dependencies": {
43
43
  "semver": "^7.8.0",
44
- "@santi020k/lumen-core": "^1.4.0"
44
+ "@santi020k/lumen-core": "^1.7.0-rc.0"
45
45
  },
46
46
  "devDependencies": {
47
47
  "@types/node": "^26.2.0",
@@ -14,62 +14,63 @@
14
14
  "peerDependencies": {
15
15
  "astro": ">=5"
16
16
  },
17
- "version": "1.6.0"
17
+ "version": "1.7.0-rc.0"
18
18
  },
19
19
  "@santi020k/lumen-core": {
20
20
  "peerDependencies": {},
21
- "version": "1.4.0"
21
+ "version": "1.7.0-rc.0"
22
22
  },
23
23
  "@santi020k/lumen-elements": {
24
24
  "peerDependencies": {},
25
- "version": "1.6.0"
25
+ "version": "1.7.0-rc.0"
26
26
  },
27
27
  "@santi020k/lumen-icons-brand": {
28
28
  "peerDependencies": {},
29
- "version": "1.0.2"
29
+ "version": "1.0.3-rc.0"
30
30
  },
31
31
  "@santi020k/lumen": {
32
32
  "peerDependencies": {},
33
- "version": "1.6.0"
33
+ "version": "1.7.0-rc.0"
34
34
  },
35
35
  "@santi020k/lumen-mcp": {
36
36
  "peerDependencies": {},
37
- "version": "1.6.0"
37
+ "version": "1.7.0-rc.0"
38
38
  },
39
39
  "@santi020k/lumen-react": {
40
40
  "peerDependencies": {
41
41
  "react": ">=19"
42
42
  },
43
- "version": "1.6.0"
43
+ "version": "1.7.0-rc.0"
44
44
  },
45
45
  "@santi020k/lumen-react-hook-form": {
46
46
  "peerDependencies": {
47
- "@santi020k/lumen-react": "^1.0.0",
47
+ "@santi020k/lumen-react": "^1.7.0-rc.0",
48
48
  "react": ">=19",
49
49
  "react-hook-form": ">=7.76.0 <8"
50
50
  },
51
- "version": "1.0.1"
51
+ "version": "1.0.2-rc.0"
52
52
  },
53
53
  "@santi020k/lumen-react-native": {
54
54
  "peerDependencies": {
55
+ "@react-native-community/datetimepicker": ">=9.1 <10",
55
56
  "react": ">=19.2",
56
57
  "react-native": ">=0.86.2",
57
58
  "react-native-svg": ">=12 <16"
58
59
  },
59
- "version": "0.5.0"
60
+ "version": "1.0.0-rc.0"
60
61
  },
61
62
  "@santi020k/lumen-tokens": {
62
63
  "peerDependencies": {},
63
- "version": "0.1.0"
64
+ "version": "0.2.0-rc.0"
64
65
  }
65
66
  }
66
67
  },
67
68
  "swift": {
68
69
  "package": "https://github.com/santi020k/lumen.git",
69
70
  "revision": null,
70
- "tag": "v1.6.0"
71
+ "tag": "v1.7.0-rc.0"
71
72
  },
72
- "version": "1.6.0"
73
+ "version": "1.7.0-rc.0"
73
74
  },
74
75
  "migration": {
75
76
  "codemod": null,
package/styles.css CHANGED
@@ -33,6 +33,8 @@
33
33
  --chart-diverging-negative: 0 84% 60%;
34
34
  --chart-diverging-positive: 221 83% 53%;
35
35
  --chart-grid: var(--line);
36
+ --chart-reference: var(--ink-soft);
37
+ --chart-selection: var(--brand);
36
38
  --chart-sequential-high: 221 83% 40%;
37
39
  --chart-sequential-low: 218 100% 97%;
38
40
  --chart-sequential-mid: 221 83% 67%;
@@ -44,6 +46,8 @@
44
46
  --chart-series-6: 190 82% 42%;
45
47
  --chart-series-7: 52 92% 45%;
46
48
  --chart-series-8: 215 16% 47%;
49
+ --chart-tooltip-background: var(--ink);
50
+ --chart-tooltip-foreground: var(--surface);
47
51
  --ui-on-danger: var(--on-danger);
48
52
  --ui-radius: 0.625rem;
49
53
  --ui-radius-sm: 0.375rem;
@@ -100,6 +104,8 @@
100
104
  --chart-diverging-negative: 0 84% 65%;
101
105
  --chart-diverging-positive: 199 91% 56%;
102
106
  --chart-grid: var(--line);
107
+ --chart-reference: var(--ink-soft);
108
+ --chart-selection: var(--brand);
103
109
  --chart-sequential-high: 199 91% 66%;
104
110
  --chart-sequential-low: 199 84% 16%;
105
111
  --chart-sequential-mid: 199 72% 42%;
@@ -111,6 +117,8 @@
111
117
  --chart-series-6: 188 86% 54%;
112
118
  --chart-series-7: 52 94% 58%;
113
119
  --chart-series-8: 215 18% 68%;
120
+ --chart-tooltip-background: var(--ink);
121
+ --chart-tooltip-foreground: var(--canvas);
114
122
  --ui-on-danger: var(--canvas);
115
123
  --ui-shadow-sm: 0 1px 2px hsl(0 0% 0% / 0.18);
116
124
  --ui-shadow-md: 0 12px 32px hsl(0 0% 0% / 0.24);
@@ -966,6 +974,14 @@
966
974
  object-fit: cover;
967
975
  }
968
976
 
977
+ .ui-image--fit-contain { object-fit: contain; }
978
+ .ui-image--fit-cover { object-fit: cover; }
979
+ .ui-image--radius-none { border-radius: 0; }
980
+ .ui-image--radius-sm { border-radius: var(--ui-radius-sm); }
981
+ .ui-image--radius-md { border-radius: var(--ui-radius-md); }
982
+ .ui-image--radius-lg { border-radius: var(--ui-radius-lg); }
983
+ .ui-image--radius-full { border-radius: 9999px; }
984
+
969
985
  :where([data-theme="dark"], [data-theme$="-dark"], .dark) .ui-image--invert-dark {
970
986
  filter: invert(1) hue-rotate(180deg);
971
987
  }
@@ -1779,6 +1795,10 @@
1779
1795
  border-radius: 0;
1780
1796
  box-shadow: none;
1781
1797
  }
1798
+ .ui-phone-input[data-invalid="true"],
1799
+ .ui-phone-input:has(.ui-phone-input__number[aria-invalid="true"]) {
1800
+ border-color: hsl(var(--danger));
1801
+ }
1782
1802
 
1783
1803
  .ui-checkbox {
1784
1804
  width: 1rem;
@@ -4036,6 +4056,29 @@
4036
4056
  fill: var(--ui-chart-color);
4037
4057
  }
4038
4058
 
4059
+ .ui-scatter-chart__marks circle {
4060
+ fill: color-mix(in srgb, var(--ui-chart-color) 72%, transparent);
4061
+ stroke: var(--ui-chart-color);
4062
+ stroke-width: var(--chart-stroke-selected, 3px);
4063
+ }
4064
+
4065
+ .ui-heatmap__cells rect {
4066
+ fill: hsl(var(--chart-sequential-high));
4067
+ stroke: hsl(var(--canvas));
4068
+ stroke-width: 1px;
4069
+ }
4070
+
4071
+ .ui-range-chart__area {
4072
+ fill: color-mix(in srgb, var(--ui-chart-color) 18%, transparent);
4073
+ stroke: var(--ui-chart-color);
4074
+ stroke-width: var(--chart-stroke-series, 2px);
4075
+ }
4076
+
4077
+ .ui-range-chart__interval {
4078
+ stroke: var(--ui-chart-color);
4079
+ stroke-width: var(--chart-stroke-reference, 2px);
4080
+ }
4081
+
4039
4082
  .ui-pie-chart__plot {
4040
4083
  position: relative;
4041
4084
  display: grid;