@sendoutcards/quantum-design-ui 2.0.0-canary.1 → 2.0.0-canary.2
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/README.md +42 -21
- package/dist/index.js +1 -1
- package/package.json +6 -3
package/README.md
CHANGED
|
@@ -10,14 +10,14 @@ We use [semantic-release](https://semantic-release.gitbook.io/) to automate vers
|
|
|
10
10
|
|
|
11
11
|
| Branch | Purpose | npm Tag | Example Version |
|
|
12
12
|
| -------- | ----------------------- | -------- | ---------------- |
|
|
13
|
-
| `
|
|
13
|
+
| `master` | Stable releases | `latest` | `2.0.0`, `2.1.0` |
|
|
14
14
|
| `canary` | Prerelease/alpha builds | `canary` | `2.1.0-canary.1` |
|
|
15
15
|
|
|
16
16
|
## How It Works
|
|
17
17
|
|
|
18
18
|
### Automatic Releases
|
|
19
19
|
|
|
20
|
-
When code is merged to `
|
|
20
|
+
When code is merged to `master` or `canary`, the CI pipeline:
|
|
21
21
|
|
|
22
22
|
1. Checks out the code
|
|
23
23
|
2. Installs dependencies
|
|
@@ -100,14 +100,14 @@ npm install @sendoutcards/quantum-design-ui@canary
|
|
|
100
100
|
|
|
101
101
|
### Stable Release
|
|
102
102
|
|
|
103
|
-
1. Open a PR from `canary` to `
|
|
103
|
+
1. Open a PR from `canary` to `master`
|
|
104
104
|
2. On merge, a stable release is automatically published
|
|
105
105
|
|
|
106
106
|
### Hotfix
|
|
107
107
|
|
|
108
|
-
1. Create a branch from `
|
|
108
|
+
1. Create a branch from `master`
|
|
109
109
|
2. Make the fix with conventional commit messages
|
|
110
|
-
3. Open a PR directly to `
|
|
110
|
+
3. Open a PR directly to `master`
|
|
111
111
|
4. On merge, a patch release is automatically published
|
|
112
112
|
|
|
113
113
|
## Manual Version Override
|
|
@@ -123,31 +123,50 @@ If you need to force a specific version (rare):
|
|
|
123
123
|
|
|
124
124
|
## Setup Requirements
|
|
125
125
|
|
|
126
|
-
###
|
|
126
|
+
### npm Authentication (Trusted Publishing)
|
|
127
127
|
|
|
128
|
-
|
|
128
|
+
This repository uses **npm Trusted Publishing** via OpenID Connect (OIDC) for secure, token-free publishing. This eliminates the need for long-lived npm tokens that require manual rotation.
|
|
129
129
|
|
|
130
|
-
|
|
131
|
-
| -------------- | ----------------------------------------- |
|
|
132
|
-
| `NPM_TOKEN` | npm access token with publish permissions |
|
|
133
|
-
| `GITHUB_TOKEN` | Automatically provided by GitHub Actions |
|
|
130
|
+
For more information, see the [npm Trusted Publishing documentation](https://docs.npmjs.com/trusted-publishers).
|
|
134
131
|
|
|
135
|
-
|
|
132
|
+
#### How It Works
|
|
133
|
+
|
|
134
|
+
1. The GitHub Actions workflow requests an OIDC token from GitHub
|
|
135
|
+
2. npm verifies the token came from our authorized repository and workflow
|
|
136
|
+
3. npm allows the publish without any stored secrets
|
|
137
|
+
|
|
138
|
+
#### GitHub Secrets
|
|
139
|
+
|
|
140
|
+
| Secret | Description |
|
|
141
|
+
| -------------- | ---------------------------------------- |
|
|
142
|
+
| `GITHUB_TOKEN` | Automatically provided by GitHub Actions |
|
|
143
|
+
|
|
144
|
+
**Note:** No `NPM_TOKEN` is required. Authentication is handled automatically via OIDC.
|
|
145
|
+
|
|
146
|
+
#### Trusted Publisher Configuration (npmjs.com)
|
|
147
|
+
|
|
148
|
+
The trusted publisher is configured on npmjs.com with these settings:
|
|
149
|
+
|
|
150
|
+
| Field | Value |
|
|
151
|
+
| ----------------- | ----------------------- |
|
|
152
|
+
| Organization | `SendOutCards` |
|
|
153
|
+
| Repository | `quantum-design-system` |
|
|
154
|
+
| Workflow filename | `release.yml` |
|
|
155
|
+
| Environment | (none) |
|
|
156
|
+
|
|
157
|
+
To modify the trusted publisher configuration:
|
|
136
158
|
|
|
137
159
|
1. Go to [npmjs.com](https://www.npmjs.com/) and log in
|
|
138
|
-
2.
|
|
139
|
-
3.
|
|
140
|
-
4.
|
|
141
|
-
5. Copy the token
|
|
142
|
-
6. Add it to GitHub: Repository Settings > Secrets and variables > Actions > New repository secret
|
|
143
|
-
7. Name: `NPM_TOKEN`, Value: (paste token)
|
|
160
|
+
2. Navigate to the package settings for `@sendoutcards/quantum-design-ui`
|
|
161
|
+
3. Find the "Trusted Publisher" section
|
|
162
|
+
4. Update the GitHub Actions configuration as needed
|
|
144
163
|
|
|
145
164
|
## Troubleshooting
|
|
146
165
|
|
|
147
166
|
### Release didn't trigger
|
|
148
167
|
|
|
149
168
|
- Ensure commits follow conventional commit format
|
|
150
|
-
- Check that the branch is `
|
|
169
|
+
- Check that the branch is `master` or `canary`
|
|
151
170
|
- Verify the CI workflow completed successfully
|
|
152
171
|
|
|
153
172
|
### Version wasn't bumped
|
|
@@ -157,9 +176,11 @@ The following secrets must be configured in the repository:
|
|
|
157
176
|
|
|
158
177
|
### npm publish failed
|
|
159
178
|
|
|
160
|
-
- Verify
|
|
161
|
-
-
|
|
179
|
+
- Verify the trusted publisher is configured correctly on npmjs.com
|
|
180
|
+
- Ensure the workflow filename matches exactly (`release.yml`)
|
|
181
|
+
- Check that `id-token: write` permission is set in the workflow
|
|
162
182
|
- Ensure the package name is available on npm
|
|
183
|
+
- See [npm Trusted Publishing troubleshooting](https://docs.npmjs.com/trusted-publishers#troubleshooting)
|
|
163
184
|
|
|
164
185
|
## Configuration Files
|
|
165
186
|
|
package/dist/index.js
CHANGED
|
@@ -12,7 +12,7 @@ import { EyeDropper as Gt } from "react-eyedrop";
|
|
|
12
12
|
import { useDropzone as Pt } from "react-dropzone";
|
|
13
13
|
import Ot from "react-infinite-scroll-component";
|
|
14
14
|
import Ut from "react-parallax-tilt";
|
|
15
|
-
const D = (o) => {
|
|
15
|
+
import './index.css';const D = (o) => {
|
|
16
16
|
const t = E(o).hsl(), a = Math.round(t.array()[0]), r = Math.round(t.array()[1]), i = Math.round(t.array()[2]), n = E.hsl([a, r, i]).toString(), c = Qt(a, r, Xt(i));
|
|
17
17
|
return Yt(c, n);
|
|
18
18
|
}, Qt = (o, t, a) => a.map((i) => E.hsl([o, t, i]).toString()), Xt = (o) => {
|
package/package.json
CHANGED
|
@@ -1,17 +1,19 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sendoutcards/quantum-design-ui",
|
|
3
|
-
"version": "2.0.0-canary.
|
|
3
|
+
"version": "2.0.0-canary.2",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "UI component library for Quantum Design System",
|
|
6
6
|
"module": "dist/index.js",
|
|
7
7
|
"main": "dist/index.js",
|
|
8
8
|
"types": "dist/index.d.ts",
|
|
9
|
+
"style": "dist/index.css",
|
|
9
10
|
"exports": {
|
|
10
11
|
".": {
|
|
11
12
|
"types": "./dist/index.d.ts",
|
|
12
13
|
"import": "./dist/index.js",
|
|
13
14
|
"require": "./dist/index.js"
|
|
14
|
-
}
|
|
15
|
+
},
|
|
16
|
+
"./style.css": "./dist/index.css"
|
|
15
17
|
},
|
|
16
18
|
"author": "nickqweaver",
|
|
17
19
|
"license": "MIT",
|
|
@@ -94,7 +96,8 @@
|
|
|
94
96
|
"ts-jest": "^29.1.2",
|
|
95
97
|
"typescript": "^5.7.3",
|
|
96
98
|
"vite": "^6.0.7",
|
|
97
|
-
"vite-plugin-dts": "^4.5.4"
|
|
99
|
+
"vite-plugin-dts": "^4.5.4",
|
|
100
|
+
"vite-plugin-lib-inject-css": "^2.1.0"
|
|
98
101
|
},
|
|
99
102
|
"overrides": {
|
|
100
103
|
"webpack": "5.98.0"
|