@purpur/library 9.7.0 → 9.7.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.
package/CHANGELOG.json CHANGED
@@ -1,6 +1,18 @@
1
1
  {
2
2
  "name": "@purpur/library",
3
3
  "entries": [
4
+ {
5
+ "version": "9.7.1",
6
+ "tag": "@purpur/library_v9.7.1",
7
+ "date": "Thu, 04 Jun 2026 10:01:36 GMT",
8
+ "comments": {
9
+ "none": [
10
+ {
11
+ "comment": "Correct the styling export path and improve the typings internally"
12
+ }
13
+ ]
14
+ }
15
+ },
4
16
  {
5
17
  "version": "9.7.0",
6
18
  "tag": "@purpur/library_v9.7.0",
package/CHANGELOG.md CHANGED
@@ -1,6 +1,13 @@
1
1
  # Change Log - @purpur/library
2
2
 
3
- This log was last generated on Wed, 03 Jun 2026 13:28:41 GMT and should not be manually modified.
3
+ This log was last generated on Thu, 04 Jun 2026 10:01:36 GMT and should not be manually modified.
4
+
5
+ ## 9.7.1
6
+ Thu, 04 Jun 2026 10:01:36 GMT
7
+
8
+ ### Updates
9
+
10
+ - Correct the styling export path and improve the typings internally
4
11
 
5
12
  ## 9.7.0
6
13
  Wed, 03 Jun 2026 13:28:41 GMT
@@ -68,7 +68,7 @@ export declare const Button: React.ForwardRefExoticComponent<(Omit<Omit<{
68
68
  fullWidth?: boolean;
69
69
  negative?: boolean;
70
70
  size?: import('../../../libraries/action/src/action').Size;
71
- variant: "text" | "tertiary-purple" | import('../../../libraries/action/src/action').Variant;
71
+ variant: "text" | import('../../../libraries/action/src/action').Variant | "tertiary-purple";
72
72
  } & {
73
73
  iconOnly: boolean;
74
74
  "aria-label": string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@purpur/library",
3
- "version": "9.7.0",
3
+ "version": "9.7.1",
4
4
  "license": "AGPL-3.0-only",
5
5
  "sideEffects": [
6
6
  "*.css",
@@ -22,8 +22,8 @@
22
22
  "types": "./dist/libraries/library/src/tokens.d.ts",
23
23
  "default": "./dist/tokens.es.js"
24
24
  },
25
- "./tokens/*/variables": "./tokens/*/variables.scss",
26
- "./tokens/*/variables.scss": "./tokens/*/variables.scss",
25
+ "./tokens/*/variables": "./dist/tokens/*/variables.scss",
26
+ "./tokens/*/variables.scss": "./dist/tokens/*/variables.scss",
27
27
  "./theme": {
28
28
  "require": "./dist/theme.cjs.js",
29
29
  "types": "./dist/libraries/library/src/theme.d.ts",
@@ -106,25 +106,25 @@
106
106
  "vite-plugin-static-copy": "3.1.6",
107
107
  "vite": "7.3.2",
108
108
  "shx": "0.4.0",
109
- "@purpur/action": "8.21.0",
110
109
  "@purpur/accordion": "8.21.0",
110
+ "@purpur/action": "8.21.0",
111
111
  "@purpur/alert-badge": "8.21.0",
112
112
  "@purpur/badge": "8.21.0",
113
113
  "@purpur/autocomplete": "8.21.0",
114
114
  "@purpur/breadcrumbs": "8.21.0",
115
115
  "@purpur/button": "8.21.0",
116
- "@purpur/checkbox": "8.21.0",
117
116
  "@purpur/calendar": "8.21.0",
118
117
  "@purpur/card": "8.21.0",
118
+ "@purpur/checkbox": "8.21.0",
119
119
  "@purpur/chip-group": "8.21.0",
120
- "@purpur/color-dot": "8.21.0",
121
120
  "@purpur/common-types": "8.21.0",
121
+ "@purpur/color-dot": "8.21.0",
122
122
  "@purpur/component-rig": "1.0.0",
123
123
  "@purpur/container": "8.21.0",
124
124
  "@purpur/content-block": "8.21.0",
125
+ "@purpur/countdown": "8.21.0",
125
126
  "@purpur/counter-badge": "8.21.0",
126
127
  "@purpur/cta-link": "8.21.0",
127
- "@purpur/countdown": "8.21.0",
128
128
  "@purpur/date-field": "8.21.0",
129
129
  "@purpur/date-picker": "8.21.0",
130
130
  "@purpur/dismissable-chip-group": "8.21.0",
@@ -133,51 +133,51 @@
133
133
  "@purpur/field-helper-text": "8.21.0",
134
134
  "@purpur/footer": "8.21.0",
135
135
  "@purpur/grid": "8.21.0",
136
- "@purpur/hero-banner": "8.21.0",
137
136
  "@purpur/heading": "8.21.0",
137
+ "@purpur/hero-banner": "8.21.0",
138
+ "@purpur/icon": "8.21.0",
138
139
  "@purpur/label": "8.21.0",
139
- "@purpur/illustrative-icon": "8.21.0",
140
140
  "@purpur/link": "8.21.0",
141
- "@purpur/icon": "8.21.0",
141
+ "@purpur/listbox": "8.21.0",
142
+ "@purpur/illustrative-icon": "8.21.0",
142
143
  "@purpur/logo": "8.21.0",
143
144
  "@purpur/modal": "8.21.0",
144
- "@purpur/listbox": "8.21.0",
145
- "@purpur/notification": "8.21.0",
146
145
  "@purpur/notification-banner": "8.21.0",
146
+ "@purpur/notification": "8.21.0",
147
147
  "@purpur/paragraph": "8.21.0",
148
148
  "@purpur/pagination": "8.21.0",
149
- "@purpur/password-field": "8.21.0",
150
- "@purpur/promotion-card": "8.21.0",
151
149
  "@purpur/popover": "8.21.0",
152
150
  "@purpur/product-card": "8.21.0",
153
- "@purpur/quantity-selector": "8.21.0",
151
+ "@purpur/password-field": "8.21.0",
152
+ "@purpur/promotion-card": "8.21.0",
154
153
  "@purpur/radio-button-group": "8.21.0",
154
+ "@purpur/quantity-selector": "8.21.0",
155
155
  "@purpur/radio-card-group": "8.21.0",
156
- "@purpur/rich-text": "8.21.0",
156
+ "@purpur/search-field": "8.21.0",
157
157
  "@purpur/select": "8.21.0",
158
+ "@purpur/rich-text": "8.21.0",
158
159
  "@purpur/skeleton": "8.21.0",
159
- "@purpur/search-field": "8.21.0",
160
- "@purpur/spacer": "8.21.0",
161
160
  "@purpur/slider": "8.21.0",
162
- "@purpur/spinner": "8.21.0",
163
- "@purpur/text-area": "8.21.0",
161
+ "@purpur/spacer": "8.21.0",
164
162
  "@purpur/stepper": "8.21.0",
165
- "@purpur/tabs": "8.21.0",
163
+ "@purpur/spinner": "8.21.0",
166
164
  "@purpur/table": "8.21.0",
165
+ "@purpur/tabs": "8.21.0",
166
+ "@purpur/text-area": "8.21.0",
167
167
  "@purpur/text-field": "8.21.0",
168
+ "@purpur/text-spacing": "8.21.0",
168
169
  "@purpur/theme": "8.21.0",
169
170
  "@purpur/toggle": "8.21.0",
170
- "@purpur/text-spacing": "8.21.0",
171
171
  "@purpur/tokens": "8.21.0",
172
172
  "@purpur/visually-hidden": "8.21.0",
173
173
  "@purpur/tooltip": "8.21.0",
174
174
  "@purpur/chat-field": "9.4.2",
175
- "@purpur/carousel": "8.21.0",
176
- "@purpur/date-range-field": "8.21.0",
177
175
  "@purpur/dropdown": "0.1.0",
178
176
  "@purpur/comparison-table": "8.21.0",
177
+ "@purpur/carousel": "8.21.0",
179
178
  "@purpur/avatar": "1.0.0",
180
179
  "@purpur/loading": "1.0.0",
180
+ "@purpur/date-range-field": "8.21.0",
181
181
  "@purpur/message": "1.0.0"
182
182
  },
183
183
  "peerDependencies": {
@@ -199,7 +199,7 @@
199
199
  "build:watch": "vite build --watch",
200
200
  "build:dev": "vite",
201
201
  "sbdev": "rush sbdev",
202
- "ci:build": "rushx generate && rushx build && shx cp -r dist/tokens tokens",
202
+ "ci:build": "rushx generate && rushx build",
203
203
  "lint": "lint-staged --no-stash 2>&1",
204
204
  "lint:fix": "eslint . --fix",
205
205
  "typecheck": "tsc -p ./tsconfig.check.json",
@@ -76,6 +76,8 @@ const getFileContent = (lines: string[]) => {
76
76
  .join("\n");
77
77
  };
78
78
 
79
+ const getJsonContent = (value: unknown) => `${JSON.stringify(value, null, 2)}\n`;
80
+
79
81
  // Generate per-component entry files (no more style imports — styles come from source via aliases)
80
82
  const getIndexFileLines = async () => {
81
83
  const projectFileLines = await Promise.all(
@@ -144,10 +146,30 @@ const internalLibs = [
144
146
  name: "@purpur/common-types",
145
147
  folder: "libraries/common-types",
146
148
  source: "src/common-types.ts",
149
+ types: "src/common-types.ts",
150
+ include: "../../libraries/common-types/src",
151
+ },
152
+ {
153
+ name: "@purpur/theme",
154
+ folder: "libraries/theme",
155
+ source: "src/theme.ts",
156
+ types: "src/theme.ts",
157
+ include: "../../libraries/theme/src",
158
+ },
159
+ {
160
+ name: "@purpur/action",
161
+ folder: "libraries/action",
162
+ source: "src/action.tsx",
163
+ types: "src/action.tsx",
164
+ include: "../../libraries/action/src",
165
+ },
166
+ {
167
+ name: "@purpur/tokens",
168
+ folder: "libraries/tokens",
169
+ source: "dist/index.js",
170
+ types: "dist/index.d.ts",
171
+ include: "../../libraries/tokens/dist",
147
172
  },
148
- { name: "@purpur/theme", folder: "libraries/theme", source: "src/theme.ts" },
149
- { name: "@purpur/action", folder: "libraries/action", source: "src/action.tsx" },
150
- { name: "@purpur/tokens", folder: "libraries/tokens", source: "dist/index.js" },
151
173
  ];
152
174
 
153
175
  for (const lib of internalLibs) {
@@ -176,6 +198,43 @@ fs.writeFileSync(
176
198
  ])
177
199
  );
178
200
 
201
+ fs.writeFileSync(
202
+ join(process.cwd(), "tsconfig.types.json"),
203
+ getJsonContent({
204
+ extends: "@purpur/component-rig/tsconfig.types.json",
205
+ compilerOptions: {
206
+ baseUrl: ".",
207
+ noImplicitAny: true,
208
+ outDir: "types",
209
+ rootDir: "../..",
210
+ paths: Object.fromEntries(
211
+ internalLibs.map((lib) => [
212
+ lib.name,
213
+ [join("../../", lib.folder, lib.types).replace(/\\/g, "/")],
214
+ ])
215
+ ),
216
+ types: ["node"],
217
+ skipLibCheck: true,
218
+ },
219
+ include: ["src", "@types", "../../components/*/src", ...internalLibs.map((lib) => lib.include)],
220
+ exclude: [
221
+ "**/*.test.*",
222
+ "**/*.stories.*",
223
+ "**/*.spec.*",
224
+ "../../components/*/src/**/*.test.*",
225
+ "../../components/*/src/**/*.stories.*",
226
+ "../../components/*/src/**/*.spec.*",
227
+ "../../libraries/*/src/**/*.test.*",
228
+ "../../libraries/*/src/**/*.stories.*",
229
+ "../../libraries/*/src/**/*.spec.*",
230
+ "node_modules",
231
+ "dist",
232
+ "src/aliases.ts",
233
+ "src/entries.js",
234
+ ],
235
+ })
236
+ );
237
+
179
238
  // Generate main barrel entry (library.ts)
180
239
  fs.writeFileSync(
181
240
  join(process.cwd(), "src", "library.ts"),