demio-ui 5.4.3 → 5.4.4

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 CHANGED
@@ -19,7 +19,6 @@ As a small team, we need to build and maintain our UI library quickly and with a
19
19
 
20
20
  - add CSS variables to variables.css from [Figma](<https://www.figma.com/file/cIDRvlVWwtmu3wCrFZ27IY/Demio-Design-Kit-(New)?node-id=5162%3A8032&mode=dev>)
21
21
  - create a new components ( one MR for one component implementation)
22
-
23
22
  - `<Icon />` - SVG icon component
24
23
  - all SVG styles (including color and size) should be managed by CSS
25
24
 
@@ -36,6 +35,49 @@ To get started with the `Demio React UI Components Library`, follow these steps:
36
35
  2. Install dependencies: `npm install`
37
36
  3. Run Storybook: `npm run storybook` and open [http://localhost:6006](http://localhost:6006) in your browser if it doesn't open automatically.
38
37
 
38
+ ## Updating npm dependencies
39
+
40
+ This library uses [`.npmrc`](.npmrc) supply-chain settings:
41
+
42
+ - `allow-git=none` — registry-only dependencies
43
+ - `min-release-age=14` — block package versions newer than 14 days when resolving installs (**npm 11+**)
44
+
45
+ GitLab CI runs `npm ci` on **Node 24 LTS** and upgrades to **npm 11** before install (base images may still ship npm 10, which ignores `.npmrc` supply-chain settings). Commit `package-lock.json` with every dependency change.
46
+
47
+ ### Clean install
48
+
49
+ ```bash
50
+ npm ci
51
+ npm run prepare
52
+ ```
53
+
54
+ The `prepare` script runs the library build required for local consumers and hooks.
55
+
56
+ ### Update one package
57
+
58
+ 1. Pick a version at least 14 days old on npm (unless hotfixing).
59
+ 2. `npm install <package>@<version>`
60
+ 3. `npm run lint:lockfile && npm run test && npm run lint-all`
61
+ 4. Commit `package.json` and `package-lock.json`.
62
+
63
+ ### Update within ranges
64
+
65
+ ```bash
66
+ npm update <package>
67
+ ```
68
+
69
+ ### Security hotfix (before cooldown)
70
+
71
+ ```bash
72
+ npm install <package>@<version> --min-release-age=0
73
+ ```
74
+
75
+ Document the reason in the merge request.
76
+
77
+ ### Publishing note
78
+
79
+ Run the full quality gate (`npm run lint-all`, tests, build) before release; do not publish with an uncommitted lockfile.
80
+
39
81
  ## Tools
40
82
 
41
83
  - [TypeScript](https://www.typescriptlang.org/) - strongly typed programming language that builds on JavaScript
@@ -212,7 +254,6 @@ npm run analyze-all
212
254
  ### 🎯 **Why Two Different Measurements?**
213
255
 
214
256
  1. **Visualizer (500KB CJS / 420KB ESM)**:
215
-
216
257
  - Shows only JavaScript code size
217
258
  - Helps optimize code and dependencies
218
259
  - Focuses on runtime performance
@@ -227,18 +268,15 @@ Both measurements are correct and serve different optimization purposes!
227
268
  ### 🚀 **Optimization Recommendations**
228
269
 
229
270
  1. **JavaScript Bundle**:
230
-
231
271
  - ✅ Already well-optimized
232
272
  - Consider tree-shaking for unused components
233
273
  - Monitor for large dependency additions
234
274
 
235
275
  2. **CSS Bundle**:
236
-
237
276
  - ✅ Good size for comprehensive styling
238
277
  - Monitor for duplicate styles
239
278
 
240
279
  3. **Assets (SVG files)**:
241
-
242
280
  - Optimize SVG files using SVGO
243
281
  - Monitor total assets size
244
282