@networkpro/web 1.18.4 → 1.18.5

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.md CHANGED
@@ -22,11 +22,38 @@ This project attempts to follow [Keep a Changelog](https://keepachangelog.com/en
22
22
 
23
23
  ---
24
24
 
25
- ## [1.18.4] - 2025-10-04
25
+ ## [1.18.5] - 2025-10-05
26
+
27
+ ### Added
28
+
29
+ - Added Vercel CLI scripts to `package.json`, including `dev:vercel` and `build:vercel`.
30
+
31
+ ### Changed
32
+
33
+ - Bumped project version to `v1.18.5`.
34
+ - Updated generator metadata in `app.html` to reflect `SvelteKit 2.44.0`.
35
+ - Added `scripts/testRedirects.js` to `.gitignore`.
36
+ - Cleaned up header in `jsconfig.template.jsonc`.
37
+ - Updated **Repository Structure** section in `README.md`.
38
+ - Restructured `CHANGELOG.md` such that sections are presented in alphabetical order.
39
+ - Corrected JSDoc annotations in `static/disableSw.js`.
40
+ - Updated dependencies:
41
+ - `@sveltejs/kit` `2.43.8` → `2.44.0`
42
+ - `eslint-plugin-jsdoc` `^60.8.0` → `^60.8.1`
26
43
 
27
44
  ### Documentation
28
45
 
29
- - Updated **Repository Structure** to reflect current environment and files.
46
+ - Revised **Repository Structure** to accurately reflect the folders under `/tests`.
47
+
48
+ ### Removed
49
+
50
+ - Removed all references to Netlify and all Netlify-specific scripts from `package.json`.
51
+ - Removed `test:redirects` script from `package.json`.
52
+ - The `testRedirects.js` script has been removed from version control, as it is no longer needed to test Netlify redirects.
53
+
54
+ ---
55
+
56
+ ## [1.18.4] - 2025-10-04
30
57
 
31
58
  ### Changes
32
59
 
@@ -53,6 +80,10 @@ This project attempts to follow [Keep a Changelog](https://keepachangelog.com/en
53
80
  - `typescript` `^5.9.2` → `^5.9.3`
54
81
  - `vite` `^7.1.7` → `^7.1.9`
55
82
 
83
+ ### Documentation
84
+
85
+ - Updated **Repository Structure** to reflect current environment and files.
86
+
56
87
  ---
57
88
 
58
89
  ## [1.18.3] - 2025-09-27
@@ -164,31 +195,20 @@ This project attempts to follow [Keep a Changelog](https://keepachangelog.com/en
164
195
 
165
196
  ## [1.17.1] - 2025-09-17
166
197
 
198
+ ### Changed
199
+
200
+ - Bumped version to `v1.17.1`.
201
+
167
202
  ### Security
168
203
 
169
204
  - Patched transitive vulnerabilities by pinning dependencies via `overrides`:
170
205
  - Forced `tmp` to `>=0.2.4` (resolves CVE-2025-54798 reported via `@lhci/cli`).
171
206
  - Forced `cookie` to `^1.0.0` (used by `@sveltejs/kit` and `@lhci/cli`).
172
207
 
173
- ### Changed
174
-
175
- - Bumped version to `v1.17.1`.
176
-
177
208
  ---
178
209
 
179
210
  ## [1.17.0] - 2025-09-17
180
211
 
181
- ### Security
182
-
183
- - Updated dependencies to address known vulnerabilities (notably `@sveltejs/kit`, `vite`, and related plugins).
184
-
185
- ### Documentation
186
-
187
- - Clarified CSP reporting setup in `README.md`:
188
- - Explained relationship with external CSP reporting endpoint (`csp-endpoint` repo).
189
- - Documented use of both `report-uri` (legacy) and `report-to` (modern, recommended).
190
- - Added example headers including `Report-To` definition.
191
-
192
212
  ### Added
193
213
 
194
214
  - New `meta-check.yml` GitHub Actions workflow to validate `<title>` and `<meta>` descriptions using Vitest.
@@ -236,11 +256,22 @@ This project attempts to follow [Keep a Changelog](https://keepachangelog.com/en
236
256
  - `svelte-eslint-parser` `^1.3.0` → `^1.3.2`
237
257
  - `vite` `^7.0.6` → `^7.1.5`
238
258
 
259
+ ### Documentation
260
+
261
+ - Clarified CSP reporting setup in `README.md`:
262
+ - Explained relationship with external CSP reporting endpoint (`csp-endpoint` repo).
263
+ - Documented use of both `report-uri` (legacy) and `report-to` (modern, recommended).
264
+ - Added example headers including `Report-To` definition.
265
+
239
266
  ### Removed
240
267
 
241
268
  - Deleted `src/routes/example.svx`, which was unused and unneeded.
242
269
  - Removed `mdsvex` from package.json, as it is unlikely to be used.
243
270
 
271
+ ### Security
272
+
273
+ - Updated dependencies to address known vulnerabilities (notably `@sveltejs/kit`, `vite`, and related plugins).
274
+
244
275
  ### Notes
245
276
 
246
277
  - Pinned `jsdom` to `26.1.0` due to build incompatibility in `27.x` (`cssstyle` parsing error with Vite/Rollup).
@@ -502,6 +533,11 @@ This project attempts to follow [Keep a Changelog](https://keepachangelog.com/en
502
533
 
503
534
  ## [1.14.1] - 2025-06-16
504
535
 
536
+ ### Added
537
+
538
+ - Introduced `.github/workflows/publish-test.yml`, a standalone workflow to safely simulate `npm publish` without publishing.
539
+ - Added commands to display Node.js and npm versions for visibility and troubleshooting in all relevant jobs.
540
+
505
541
  ### Changed
506
542
 
507
543
  - Updated Node.js engine to `24` to match the specified engine constraints in `package.json`.
@@ -509,11 +545,6 @@ This project attempts to follow [Keep a Changelog](https://keepachangelog.com/en
509
545
  - Refactored `build-and-publish.yml` to use `git archive` for artifact preparation and aligned it with a tested publishing flow.
510
546
  - Removed `.npmrc` token-based authentication in favor of environment secrets to avoid credential conflicts.
511
547
 
512
- ### Added
513
-
514
- - Introduced `.github/workflows/publish-test.yml`, a standalone workflow to safely simulate `npm publish` without publishing.
515
- - Added commands to display Node.js and npm versions for visibility and troubleshooting in all relevant jobs.
516
-
517
548
  ---
518
549
 
519
550
  ## [1.14.0] - 2025-06-16
@@ -842,13 +873,7 @@ This project attempts to follow [Keep a Changelog](https://keepachangelog.com/en
842
873
  - Upgraded `posthog-js` from `v1.249.4` to `v1.249.5`.
843
874
  - Upgraded `vitest` from `v3.2.2` to `v3.2.3`.
844
875
 
845
- ### Fixed
846
-
847
- - Updated Lighthouse CI annotation step to explicitly select only valid Lighthouse report files (e.g., `*.report.json`, `lhr-*.json`) and ignore `assertion-results.json`, which caused `jq` parsing errors during CI runs.
848
- - Scoped Lighthouse assertions in `.lighthouserc.cjs` to `resource-summary` only, preventing unwanted failures from default performance audits.
849
- - Resolved malformed PR comment formatting in the Lighthouse GitHub Actions workflow by replacing Markdown tables with plain-text bullet lists.
850
-
851
- ### Docs
876
+ ### Documentation
852
877
 
853
878
  - Updated `README.md` with improved context and phrasing around the CHANGELOG reference.
854
879
  - Added `CHANGELOG.md` to the documented project structure with a descriptive label:
@@ -857,7 +882,13 @@ This project attempts to follow [Keep a Changelog](https://keepachangelog.com/en
857
882
  ├── CHANGELOG.md # Chronological record of notable project changes
858
883
  ```
859
884
 
860
- ### Misc
885
+ ### Fixed
886
+
887
+ - Updated Lighthouse CI annotation step to explicitly select only valid Lighthouse report files (e.g., `*.report.json`, `lhr-*.json`) and ignore `assertion-results.json`, which caused `jq` parsing errors during CI runs.
888
+ - Scoped Lighthouse assertions in `.lighthouserc.cjs` to `resource-summary` only, preventing unwanted failures from default performance audits.
889
+ - Resolved malformed PR comment formatting in the Lighthouse GitHub Actions workflow by replacing Markdown tables with plain-text bullet lists.
890
+
891
+ ### Notes
861
892
 
862
893
  - Confirmed that `Authenticate GitHub CLI` is not needed in `build-and-publish.yml`, as only the `check-codeql` job uses the GitHub CLI and is already authenticated.
863
894
  - Verified that `scripts/openReport.js` does not require unit testing, as it performs side-effect-only CLI actions. Linting and manual testing are sufficient.
@@ -977,7 +1008,8 @@ This project attempts to follow [Keep a Changelog](https://keepachangelog.com/en
977
1008
 
978
1009
  <!-- Link references -->
979
1010
 
980
- [Unreleased]: https://github.com/netwk-pro/netwk-pro.github.io/compare/v1.18.4...HEAD
1011
+ [Unreleased]: https://github.com/netwk-pro/netwk-pro.github.io/compare/v1.18.5...HEAD
1012
+ [1.18.5]: https://github.com/netwk-pro/netwk-pro.github.io/releases/tag/v1.18.5
981
1013
  [1.18.4]: https://github.com/netwk-pro/netwk-pro.github.io/releases/tag/v1.18.4
982
1014
  [1.18.3]: https://github.com/netwk-pro/netwk-pro.github.io/releases/tag/v1.18.3
983
1015
  [1.18.2]: https://github.com/netwk-pro/netwk-pro.github.io/releases/tag/v1.18.2
package/README.md CHANGED
@@ -90,6 +90,7 @@ This project follows the principles of [Keep a Changelog](https://keepachangelog
90
90
  │ └── sitemap.xml # SEO: full site map
91
91
  ├── tests/
92
92
  │ ├── e2e/ # Playwright end-to-end tests
93
+ │ ├── meta/ # Metadata end-to-end CI tests
93
94
  │ └── unit/ # Vitest unit tests
94
95
  │ ├── client/ # Client-side (jsdom) unit tests
95
96
  │ ├── server/ # Server-side (node) unit tests
@@ -1,9 +1,9 @@
1
1
  /* =========================================================================
2
2
  jsconfig.template.jsonc
3
3
 
4
- NOTE: This file is for reference only and is not actively used by SvelteKit or
5
- tooling. SvelteKit uses the jsconfig.json file without comments for actual
6
- configuration.
4
+ NOTE: This file is for reference only and is not actively used by SvelteKit
5
+ or tooling. SvelteKit uses the jsconfig.json file without comments for
6
+ actual configuration.
7
7
 
8
8
  Copyright © 2025 Network Pro Strategies (Network Pro™)
9
9
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@networkpro/web",
3
3
  "private": false,
4
- "version": "1.18.4",
4
+ "version": "1.18.5",
5
5
  "description": "Locking Down Networks, Unlocking Confidence™ | Security, Networking, Privacy — Network Pro Strategies",
6
6
  "keywords": [
7
7
  "advisory",
@@ -36,10 +36,10 @@
36
36
  "scripts": {
37
37
  "dev": "vite dev",
38
38
  "start": "npm run dev",
39
- "dev:netlify": "netlify dev",
39
+ "dev:vercel": "vercel dev",
40
40
  "build": "vite build",
41
+ "build:vercel": "vercel build",
41
42
  "preview": "vite preview",
42
- "build:netlify": "netlify build",
43
43
  "css:bundle": "node scripts/bundleCss.js",
44
44
  "prepare": "svelte-kit sync || echo ''",
45
45
  "check": "svelte-kit sync && svelte-check --tsconfig ./jsconfig.json",
@@ -60,7 +60,6 @@
60
60
  "test:watch": "vitest --config vitest.config.client.js --watch",
61
61
  "test:coverage": "npm run test:client -- --run --coverage && npm run test:server -- --run --coverage",
62
62
  "test:e2e": "npx playwright test --retries=1",
63
- "test:redirects": "node scripts/testRedirects.js",
64
63
  "coverage:client": "node scripts/openReport.js client",
65
64
  "coverage:server": "node scripts/openReport.js server",
66
65
  "coverage:open": "npm run coverage:client && npm run coverage:server",
@@ -68,7 +67,7 @@
68
67
  "lint:fix": "eslint . --ext .mjs,.js,.svelte --fix",
69
68
  "lint:jsdoc": "eslint . --ext .js,.mjs,.svelte --max-warnings=0",
70
69
  "lint:css": "stylelint \"**/*.{css,svelte}\" --ignore-path .stylelintignore",
71
- "lint:md": "npx markdownlint-cli2 \"**/*.{md,markdown}\" \"#node_modules/**\" \"#build/**\" \"#.netlify/**\" \"#playwright-report/**\" \"#test-results/**\"",
70
+ "lint:md": "npx markdownlint-cli2 \"**/*.{md,markdown}\" \"#node_modules/**\" \"#build/**\" \"#playwright-report/**\" \"#test-results/**\"",
72
71
  "lint:all": "npm run lint && npm run lint:md && npm run lint:css && npm run format",
73
72
  "format": "prettier --check .",
74
73
  "format:fix": "prettier --write .",
@@ -89,7 +88,7 @@
89
88
  "@lhci/cli": "^0.15.1",
90
89
  "@playwright/test": "^1.55.1",
91
90
  "@sveltejs/adapter-vercel": "^5.10.3",
92
- "@sveltejs/kit": "2.43.8",
91
+ "@sveltejs/kit": "2.44.0",
93
92
  "@sveltejs/vite-plugin-svelte": "^6.2.1",
94
93
  "@testing-library/jest-dom": "^6.9.1",
95
94
  "@testing-library/svelte": "^5.2.8",
@@ -98,7 +97,7 @@
98
97
  "browserslist": "^4.26.3",
99
98
  "eslint": "^9.37.0",
100
99
  "eslint-config-prettier": "^10.1.8",
101
- "eslint-plugin-jsdoc": "^60.8.0",
100
+ "eslint-plugin-jsdoc": "^60.8.1",
102
101
  "eslint-plugin-svelte": "^3.12.4",
103
102
  "globals": "^16.4.0",
104
103
  "jsdom": "26.1.0",
package/src/app.html CHANGED
@@ -63,7 +63,7 @@
63
63
  content="bx4ham0zkpvzztzu213bhpt76m9siq" />
64
64
  <!-- cspell:enable -->
65
65
 
66
- <meta name="generator" content="SvelteKit 2.43.5" />
66
+ <meta name="generator" content="SvelteKit 2.44.0" />
67
67
 
68
68
  <script src="/disableSw.js"></script>
69
69
 
@@ -9,9 +9,9 @@ This file is part of Network Pro.
9
9
  /**
10
10
  * @file disableSw.js
11
11
  * @description Allows for Service Worker to be disabled for debugging by appending ?nosw to the path.
12
- * @module src/lib/utils/
12
+ * @module static
13
13
  * @author SunDevil311
14
- * @updated 2025-05-29
14
+ * @updated 2025-10-05
15
15
  */
16
16
 
17
17
  if (location.search.includes('nosw')) {
@@ -1,84 +0,0 @@
1
- /* ==========================================================================
2
- scripts/testRedirects.js
3
-
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
5
- SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
- This file is part of Network Pro.
7
- ========================================================================== */
8
-
9
- /**
10
- * @file testRedirects.js
11
- * @description Tests Netlify redirects against actual endpoints to verify
12
- * trailing-slash behavior.
13
- *
14
- * @module scripts/
15
- * @author SunDevil311
16
- * @updated 2025-07-01
17
- */
18
-
19
- import https from 'https';
20
- import { URL } from 'url';
21
-
22
- /**
23
- * @typedef {object} RedirectTest
24
- * @property {string} from - The source URL to test.
25
- * @property {string} to - The expected destination URL.
26
- */
27
-
28
- /** @type {RedirectTest[]} */
29
- const urls = [
30
- { from: 'https://netwk.pro/privacy-policy', to: 'https://netwk.pro/privacy' },
31
- {
32
- from: 'https://netwk.pro/privacy-policy/',
33
- to: 'https://netwk.pro/privacy',
34
- },
35
- { from: 'https://netwk.pro/foss', to: 'https://netwk.pro/foss-spotlight' },
36
- { from: 'https://netwk.pro/foss/', to: 'https://netwk.pro/foss-spotlight' },
37
- {
38
- from: 'https://www.netwk.pro/foss',
39
- to: 'https://netwk.pro/foss-spotlight',
40
- },
41
- ];
42
-
43
- /**
44
- * Tests a single redirect by making a GET request and checking the status code and location header.
45
- * @param {RedirectTest} redirect - The redirect configuration to test.
46
- * @returns {Promise<boolean>} - Resolves to true if the redirect is correct, false otherwise.
47
- */
48
- function testRedirect({ from, to }) {
49
- return new Promise((resolve) => {
50
- const req = https.request(new URL(from), { method: 'GET' }, (res) => {
51
- const location = res.headers.location;
52
- const expectedPath = new URL(to).pathname;
53
-
54
- if (res.statusCode === 301 && location === expectedPath) {
55
- console.log(`✅ ${from} → ${location}`);
56
- resolve(true);
57
- } else {
58
- console.error(
59
- `❌ ${from} → Expected 301 to ${expectedPath}, got ${res.statusCode} to ${location}`,
60
- );
61
- resolve(false);
62
- }
63
- });
64
-
65
- req.on('error', (err) => {
66
- console.error(`❌ ${from} → Network error: ${err.message}`);
67
- resolve(false);
68
- });
69
-
70
- req.end();
71
- });
72
- }
73
-
74
- /**
75
- * Runs all redirect tests and exits the process with a status code reflecting success or failure.
76
- * @returns {Promise<void>}
77
- */
78
- const runTests = async () => {
79
- const results = await Promise.all(urls.map(testRedirect));
80
- const failed = results.filter((r) => !r).length;
81
- process.exit(failed > 0 ? 1 : 0);
82
- };
83
-
84
- runTests();