@networkpro/web 1.5.1 → 1.5.6

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.
Files changed (97) hide show
  1. package/CODE_OF_CONDUCT.md +1 -0
  2. package/LICENSE.md +2 -39
  3. package/README.md +259 -35
  4. package/cspell.json +56 -0
  5. package/eslint.config.mjs +2 -1
  6. package/package.json +45 -52
  7. package/playwright.config.js +1 -0
  8. package/postcss.config.mjs +1 -0
  9. package/scripts/auditScripts.js +1 -0
  10. package/scripts/bundleCss.js +1 -0
  11. package/scripts/checkEnv.js +1 -0
  12. package/scripts/checkNode.js +39 -18
  13. package/scripts/checkVersions.js +1 -0
  14. package/scripts/flattenHeaders.js +1 -0
  15. package/scripts/validateHeaders.js +1 -0
  16. package/src/app.d.ts +8 -0
  17. package/src/app.html +1 -10
  18. package/src/global.d.ts +1 -0
  19. package/src/hooks.client.ts +1 -0
  20. package/src/lib/components/Badges.svelte +1 -0
  21. package/src/lib/components/ContainerSection.svelte +1 -0
  22. package/src/lib/components/FullWidthSection.svelte +15 -1
  23. package/src/lib/components/LegalNav.svelte +1 -0
  24. package/src/lib/components/Logo.svelte +1 -0
  25. package/src/lib/components/MetaTags.svelte +1 -0
  26. package/src/lib/components/PWAInstallButton.svelte +1 -0
  27. package/src/lib/components/RedirectPage.svelte +20 -12
  28. package/src/lib/components/SocialMedia.svelte +1 -0
  29. package/src/lib/components/foss/FossFeatures.svelte +1 -0
  30. package/src/lib/components/foss/FossItemContent.svelte +1 -0
  31. package/src/lib/components/layout/Footer.svelte +3 -0
  32. package/src/lib/components/layout/HeaderDefault.svelte +1 -0
  33. package/src/lib/components/layout/HeaderHome.svelte +1 -0
  34. package/src/lib/images.js +4 -1
  35. package/src/lib/img/logo-web.png +0 -0
  36. package/src/lib/img/logo-web.webp +0 -0
  37. package/src/lib/index.js +1 -0
  38. package/src/lib/meta.js +1 -0
  39. package/src/lib/pages/AboutContent.svelte +1 -0
  40. package/src/lib/pages/FossContent.svelte +1 -0
  41. package/src/lib/pages/HomeContent.svelte +1 -0
  42. package/src/lib/pages/LicenseContent.svelte +33 -3
  43. package/src/lib/pages/PrivacyContent.svelte +33 -12
  44. package/src/lib/pages/TermsConditionsContent.svelte +3 -0
  45. package/src/lib/pages/TermsUseContent.svelte +3 -0
  46. package/src/lib/registerServiceWorker.js +26 -14
  47. package/src/lib/styles/css/default.css +1 -0
  48. package/src/lib/styles/css/global.css +1 -0
  49. package/src/lib/styles/css/normalize.css +1 -0
  50. package/src/lib/styles/css/offline.css +1 -0
  51. package/src/lib/styles/css/style.css +1 -0
  52. package/src/lib/styles/fa-global.css +1 -0
  53. package/src/lib/styles/global.min.css +1 -0
  54. package/src/lib/styles/index.js +2 -1
  55. package/src/lib/types/metadata.js +1 -0
  56. package/src/lib/unregisterServiceWorker.js +1 -0
  57. package/src/lib/utils/utm.js +1 -0
  58. package/src/routes/+error.svelte +1 -0
  59. package/src/routes/+layout.js +1 -8
  60. package/src/routes/+layout.svelte +7 -0
  61. package/src/routes/+page.server.js +1 -0
  62. package/src/routes/+page.svelte +1 -0
  63. package/src/routes/about/+page.server.js +1 -0
  64. package/src/routes/about/+page.svelte +1 -0
  65. package/src/routes/consultation/+page.svelte +1 -0
  66. package/src/routes/contact/+page.svelte +1 -0
  67. package/src/routes/foss-spotlight/+page.server.js +1 -0
  68. package/src/routes/foss-spotlight/+page.svelte +1 -0
  69. package/src/routes/license/+page.server.js +1 -0
  70. package/src/routes/license/+page.svelte +1 -0
  71. package/src/routes/privacy-policy/+page.server.js +1 -0
  72. package/src/routes/privacy-policy/+page.svelte +1 -0
  73. package/src/routes/privacy-rights/+page.svelte +1 -0
  74. package/src/routes/terms-conditions/+page.server.js +1 -0
  75. package/src/routes/terms-conditions/+page.svelte +1 -0
  76. package/src/routes/terms-of-use/+page.server.js +1 -0
  77. package/src/routes/terms-of-use/+page.svelte +1 -0
  78. package/src/service-worker.d.ts +8 -0
  79. package/src/service-worker.js +51 -32
  80. package/static/docs/Home.md +63 -0
  81. package/static/docs/extensions.md +58 -0
  82. package/static/sitemap.xml +7 -7
  83. package/stylelint.config.js +2 -1
  84. package/svelte.config.js +1 -0
  85. package/tests/e2e/app.spec.js +1 -0
  86. package/tests/e2e/mobile.spec.js +1 -0
  87. package/tests/unit/auditScripts.test.js +1 -0
  88. package/tests/unit/checkEnv.test.js +1 -0
  89. package/tests/unit/checkVersions.test.js +1 -0
  90. package/tests/unit/demo.test.js +1 -0
  91. package/tests/unit/routes/page.svelte.test.js +1 -0
  92. package/tests/unit/unregisterServiceWorker.test.js +1 -0
  93. package/tests/unit/utm.test.js +1 -0
  94. package/{tsconfig.custom.json → tsconfig.custom.jsonc} +2 -1
  95. package/vite.config.js +1 -0
  96. package/vitest.config.client.js +1 -0
  97. package/vitest.config.server.js +1 -0
@@ -1,6 +1,7 @@
1
1
  /* ==========================================================================
2
2
  src/service-worker.js
3
3
 
4
+ Copyright © 2025 Network Pro Strategies (Network Pro™)
4
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
5
6
  This file is part of Network Pro.
6
7
  ========================================================================== */
@@ -18,28 +19,28 @@ const CACHE = `cache-${version}`;
18
19
  /** @type {string[]} */
19
20
  const excludedAssets = [];
20
21
 
22
+ const IGNORE_PATHS = new Set([
23
+ "/img/banner-1280x640.png",
24
+ "/img/banner-og-1200x630.png",
25
+ "/img/logo-transparent.png",
26
+ "/img/logo.png",
27
+ "/img/svelte.png",
28
+ "/webfonts/fa-brands-400.ttf",
29
+ "/webfonts/fa-solid-900.ttf",
30
+ "/robots.txt",
31
+ "/screenshots/desktop-foss.png",
32
+ "/sitemap.xml",
33
+ "/CNAME",
34
+ ]);
35
+
21
36
  /** @type {string[]} */
22
- const ASSETS = Array.from(
23
- new Set(
37
+ const ASSETS = [
38
+ ...new Set(
24
39
  [...build, ...files, "/offline.html"].filter((path) => {
25
40
  try {
26
41
  const url = new URL(path, location.origin);
27
42
  const hostname = url.hostname;
28
43
 
29
- const IGNORE_PATHS = new Set([
30
- "/img/banner-1280x640.png",
31
- "/img/banner-og-1200x630.png",
32
- "/img/logo-transparent.png",
33
- "/img/logo.png",
34
- "/img/svelte.png",
35
- "/webfonts/fa-brands-400.ttf",
36
- "/webfonts/fa-solid-900.ttf",
37
- "/robots.txt",
38
- "/screenshots/desktop-foss.png",
39
- "/sitemap.xml",
40
- "/CNAME",
41
- ]);
42
-
43
44
  const shouldExclude =
44
45
  path.startsWith("http") ||
45
46
  disallowedHosts.some(
@@ -56,23 +57,24 @@ const ASSETS = Array.from(
56
57
  }
57
58
  }),
58
59
  ),
59
- );
60
+ ];
60
61
 
61
62
  const uniqueExcludedAssets = [...new Set(excludedAssets)].sort();
62
63
 
63
64
  console.log("[SW] Assets to precache:", ASSETS);
64
65
  console.log("[SW] Excluded assets:", uniqueExcludedAssets);
65
66
 
66
- /**
67
- * @param {ExtendableEvent} event
68
- */
67
+ // 🔹 Install event
69
68
  sw.addEventListener("install", (event) => {
69
+ console.log("[SW] Install event");
70
70
  event.waitUntil(
71
71
  (async () => {
72
72
  const cache = await caches.open(CACHE);
73
73
  try {
74
74
  await cache.addAll(ASSETS);
75
+ console.log("[SW] Precaching complete");
75
76
  sw.skipWaiting();
77
+ console.log("[SW] skipWaiting() called");
76
78
  } catch (err) {
77
79
  console.warn("[SW] Failed to precache some assets:", err);
78
80
  }
@@ -80,23 +82,26 @@ sw.addEventListener("install", (event) => {
80
82
  );
81
83
  });
82
84
 
83
- /**
84
- * @param {ExtendableEvent} event
85
- */
85
+ // 🔹 Activate event
86
86
  sw.addEventListener("activate", (event) => {
87
- /** @type {ExtendableEvent} */ (event).waitUntil(
87
+ console.log("[SW] Activate event");
88
+ event.waitUntil(
88
89
  (async () => {
89
90
  const tasks = [];
90
91
 
91
92
  if (sw.registration.navigationPreload) {
92
93
  tasks.push(sw.registration.navigationPreload.enable());
94
+ console.log("[SW] Navigation preload enabled");
93
95
  }
94
96
 
95
97
  tasks.push(
96
98
  caches.keys().then((keys) =>
97
99
  Promise.all(
98
100
  keys.map((key) => {
99
- if (key !== CACHE) return caches.delete(key);
101
+ if (key !== CACHE) {
102
+ console.log("[SW] Deleting old cache:", key);
103
+ return caches.delete(key);
104
+ }
100
105
  }),
101
106
  ),
102
107
  ),
@@ -104,29 +109,43 @@ sw.addEventListener("activate", (event) => {
104
109
 
105
110
  await Promise.all(tasks);
106
111
  await sw.clients.claim();
112
+ console.log("[SW] clients.claim() called");
113
+ console.log("[SW] Scope:", sw.registration.scope);
107
114
  })(),
108
115
  );
109
116
  });
110
117
 
111
- /**
112
- * @param {FetchEvent} event
113
- */
118
+ // 🔹 Fetch event
114
119
  sw.addEventListener("fetch", (event) => {
115
- /** @type {FetchEvent} */ (event).respondWith(
120
+ console.log("[SW] Fetch intercepted:", event.request.url);
121
+ event.respondWith(
116
122
  (async () => {
117
123
  if (new URL(event.request.url).origin === location.origin) {
118
124
  const cached = await caches.match(event.request);
119
- if (cached) return cached;
125
+ if (cached) {
126
+ console.log("[SW] Serving from cache:", event.request.url);
127
+ return cached;
128
+ }
120
129
  }
121
130
 
122
131
  try {
123
132
  if (event.request.mode === "navigate") {
124
133
  const preloadResponse = await event.preloadResponse;
125
- if (preloadResponse) return preloadResponse;
134
+ if (preloadResponse) {
135
+ console.log("[SW] Using preload response for:", event.request.url);
136
+ return preloadResponse;
137
+ }
126
138
  }
127
139
 
140
+ console.log("[SW] Fetching from network:", event.request.url);
128
141
  return await fetch(event.request);
129
- } catch {
142
+ } catch (err) {
143
+ console.warn(
144
+ "[SW] Fetch failed; offline fallback used:",
145
+ event.request.url,
146
+ err,
147
+ );
148
+
130
149
  if (event.request.mode === "navigate") {
131
150
  const offline = await caches.match("/offline.html");
132
151
  if (offline) return offline;
@@ -0,0 +1,63 @@
1
+ # 🧠 Network Pro — Developer Wiki
2
+
3
+ > Internal documentation and contributor onboarding resources for the [Network Pro™ Web Presence](https://github.com/netwk-pro/netwk-pro.github.io) project.
4
+ > **Note:** Most of the below links are currently non-functional and serve solely as placeholders. Once pages are added, the placeholder links will be removed.
5
+
6
+ ---
7
+
8
+ ## 📌 Overview
9
+
10
+ This wiki provides documentation, conventions, and internal tooling references to support development, testing, and deployment workflows across the Network Pro stack.
11
+
12
+ ---
13
+
14
+ ## 📁 Sections
15
+
16
+ ### 🛠 Setup & Tooling
17
+
18
+ - [Environment Requirements](Environment-Requirements.md)
19
+ Node, npm, version managers, OS-specific notes.
20
+ - [Editor Configuration](Editor-Configuration.md)
21
+ Workspace settings, recommended VS Code/VSCodium extensions.
22
+ - [CLI Scripts Reference](CLI-Scripts.md)
23
+ `npm run` scripts explained with tips for usage.
24
+
25
+ ### 🚧 Development
26
+
27
+ - [Local Development](Local-Development.md)
28
+ Running the project, debugging, hot reload, ENV_MODE behavior.
29
+ - [Testing & Audits](Testing-&-Audits.md)
30
+ Vitest, Playwright, Lighthouse, CI reports.
31
+ - [Styling & Components](Styling-&-Components.md)
32
+ Design system, reusable components, naming conventions.
33
+
34
+ ### 🚀 CI/CD
35
+
36
+ - [GitHub Actions Workflows](CI-CD-Workflows.md)
37
+ How our deploy/audit pipelines are structured.
38
+ - [Versioning & Releases](Versioning-&-Releases.md)
39
+ Publishing, changelog generation, NPM tagging conventions.
40
+
41
+ ### 📚 Documentation Maintenance
42
+
43
+ - [Contributing to the Wiki](Contributing-to-the-Wiki.md)
44
+ Format, tone, and content guidelines for internal docs.
45
+ - [MkDocs Subsite Overview](MkDocs-Subsite.md)
46
+ How the public documentation repo is built and deployed.
47
+
48
+ ---
49
+
50
+ ## 📎 Related Repositories
51
+
52
+ - [Main Site (Web)](https://github.com/netwk-pro/netwk-pro.github.io)
53
+ - [Documentation Site](https://github.com/netwk-pro/docs)
54
+ - [Blog Subsite](https://github.com/netwk-pro/blog)
55
+ - [GitHub Wiki](https://github.com/netwk-pro/netwk-pro.github.io/wiki)
56
+
57
+ ---
58
+
59
+ ## 🤝 Contributing
60
+
61
+ If you're new to the project, start with [Environment Requirements](Environment-Requirements.md) and [Local Development](Local-Development.md). See [Contributing to the Wiki](Contributing-to-the-Wiki.md) for how to add or edit content.
62
+
63
+ ---
@@ -0,0 +1,58 @@
1
+ # 🧩 Recommended VS Code Extensions
2
+
3
+ To streamline development and align with project conventions, we recommend the following [VSCodium](https://vscodium.com/) and [Visual Studio Code](https://code.visualstudio.com/) (VS Code) extensions. These tools enhance productivity, enforce code quality, and ensure consistency across the codebase.
4
+
5
+ > Note: While these extensions are optional, they are thoughtfully curated to complement our development workflow.
6
+
7
+ <!-- cspell:disable -->
8
+
9
+ | Extension Name | Identifier | Description |
10
+ | ------------------------- | --------------------------------------- | --------------------------------------------------------------------------- |
11
+ | Prettier - Code formatter | `esbenp.prettier-vscode` | Formats code consistently across various languages. |
12
+ | ESLint | `dbaeumer.vscode-eslint` | Integrates ESLint into VS Code for JavaScript and TypeScript linting. |
13
+ | Stylelint | `stylelint.vscode-stylelint` | Lints CSS/SCSS and enforces consistent styling conventions. |
14
+ | Markdownlint | `DavidAnson.vscode-markdownlint` | Provides linting and style checking for Markdown files. |
15
+ | EditorConfig for VS Code | `EditorConfig.EditorConfig` | Maintains consistent coding styles between different editors and IDEs. |
16
+ | Svelte for VS Code | `svelte.svelte-vscode` | Offers syntax highlighting, code completion, and error checking for Svelte. |
17
+ | Code Spell Checker | `streetsidesoftware.code-spell-checker` | Inline spell checking (comments, Markdown, etc.) |
18
+
19
+ ## 🛠 Installation
20
+
21
+ To install these extensions, you can use the following command in your terminal:
22
+
23
+ ```bash
24
+ code --install-extension esbenp.prettier-vscode
25
+ code --install-extension dbaeumer.vscode-eslint
26
+ code --install-extension stylelint.vscode-stylelint
27
+ code --install-extension DavidAnson.vscode-markdownlint
28
+ code --install-extension EditorConfig.EditorConfig
29
+ code --install-extension svelte.svelte-vscode
30
+ code --install-extension volta.volta
31
+ code --install-extension eamodio.gitlens
32
+ code --install-extension github.vscode-pull-request-github
33
+ ```
34
+
35
+ <!-- cspell:enable -->
36
+
37
+ Alternatively, you can search for each extension by name in [Open VSX Registry](https://open-vsx.org/) and/or the [VS Code Extensions Marketplace](https://marketplace.visualstudio.com/vscode) and install them individually.
38
+
39
+ ## 📁 Workspace Recommendations
40
+
41
+ Our repository includes a `.vscode/extensions.json` file that specifies these recommended extensions. When you open the project in VS Code, you'll be prompted to install any missing recommended extensions. This ensures a consistent development environment across all contributors.
42
+
43
+ ## 🔧 Configuration
44
+
45
+ The `.vscode/settings.json` file in the repository contains workspace-specific settings that align with our coding standards and practices. These settings include formatter configurations, linting rules, and other preferences to maintain code quality and consistency.
46
+
47
+ ---
48
+
49
+ <div style="font-size: 12px; text-align: center;">
50
+
51
+ Copyright &copy; 2025
52
+ **[Network Pro Strategies](https://netwk.pro) (Network Pro&trade;)**
53
+
54
+ Network Pro&trade;, the shield logo, and the "Locking Down Networks&trade;" slogan are [trademarks](https://netwk.pro/license#trademark) of Network Pro Strategies.
55
+
56
+ Licensed under **[CC BY 4.0](https://netwk.pro/license#cc-by)** and the **[GNU GPL](https://netwk.pro/license#gnu-gpl)**, as published by the [Free Software Foundation](https://www.fsf.org), either version 3 of the License, or (at your option) any later version.
57
+
58
+ </div>
@@ -7,7 +7,7 @@
7
7
 
8
8
  <loc>https://netwk.pro</loc>
9
9
 
10
- <lastmod>2025-05-18</lastmod>
10
+ <lastmod>2025-05-24</lastmod>
11
11
 
12
12
  <changefreq>weekly</changefreq>
13
13
 
@@ -31,7 +31,7 @@
31
31
 
32
32
  <loc>https://netwk.pro/contact</loc>
33
33
 
34
- <lastmod>2025-05-18</lastmod>
34
+ <lastmod>2025-05-24</lastmod>
35
35
 
36
36
  <changefreq>monthly</changefreq>
37
37
 
@@ -43,7 +43,7 @@
43
43
 
44
44
  <loc>https://netwk.pro/privacy-rights</loc>
45
45
 
46
- <lastmod>2025-05-18</lastmod>
46
+ <lastmod>2025-05-24</lastmod>
47
47
 
48
48
  <changefreq>monthly</changefreq>
49
49
 
@@ -55,7 +55,7 @@
55
55
 
56
56
  <loc>https://netwk.pro/privacy-policy</loc>
57
57
 
58
- <lastmod>2025-05-18</lastmod>
58
+ <lastmod>2025-05-23</lastmod>
59
59
 
60
60
  <changefreq>monthly</changefreq>
61
61
 
@@ -67,7 +67,7 @@
67
67
 
68
68
  <loc>https://netwk.pro/license</loc>
69
69
 
70
- <lastmod>2025-05-18</lastmod>
70
+ <lastmod>2025-05-24</lastmod>
71
71
 
72
72
  <changefreq>monthly</changefreq>
73
73
 
@@ -79,7 +79,7 @@
79
79
 
80
80
  <loc>https://netwk.pro/terms-of-use</loc>
81
81
 
82
- <lastmod>2025-05-18</lastmod>
82
+ <lastmod>2025-05-21</lastmod>
83
83
 
84
84
  <changefreq>monthly</changefreq>
85
85
 
@@ -91,7 +91,7 @@
91
91
 
92
92
  <loc>https://netwk.pro/terms-conditions</loc>
93
93
 
94
- <lastmod>2025-05-18</lastmod>
94
+ <lastmod>2025-05-08</lastmod>
95
95
 
96
96
  <changefreq>monthly</changefreq>
97
97
 
@@ -1,8 +1,9 @@
1
1
  /* =========================================================================
2
2
  stylelint.config.js
3
3
 
4
+ Copyright © 2025 Network Pro Strategies (Network Pro™)
4
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
5
- This file is part of Network Pro.
6
+ This file is part of Network Pro
6
7
  ========================================================================= */
7
8
 
8
9
  /** @type {import('stylelint').Config} */
package/svelte.config.js CHANGED
@@ -1,6 +1,7 @@
1
1
  /* =========================================================================
2
2
  svelte.config.js
3
3
 
4
+ Copyright © 2025 Network Pro Strategies (Network Pro™)
4
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
5
6
  This file is part of Network Pro.
6
7
  ========================================================================= */
@@ -1,6 +1,7 @@
1
1
  /* ==========================================================================
2
2
  tests/e2e/app.spec.js
3
3
 
4
+ Copyright © 2025 Network Pro Strategies (Network Pro™)
4
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
5
6
  This file is part of Network Pro.
6
7
  ========================================================================== */
@@ -1,6 +1,7 @@
1
1
  /* ==========================================================================
2
2
  tests/e2e/mobile.spec.js
3
3
 
4
+ Copyright © 2025 Network Pro Strategies (Network Pro™)
4
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
5
6
  This file is part of Network Pro.
6
7
  ========================================================================== */
@@ -1,6 +1,7 @@
1
1
  /* ==========================================================================
2
2
  tests/unit/auditScripts.test.js
3
3
 
4
+ Copyright © 2025 Network Pro Strategies (Network Pro™)
4
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
5
6
  This file is part of Network Pro.
6
7
  ========================================================================== */
@@ -1,6 +1,7 @@
1
1
  /* ==========================================================================
2
2
  tests/unit/checkEnv.test.js
3
3
 
4
+ Copyright © 2025 Network Pro Strategies (Network Pro™)
4
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
5
6
  This file is part of Network Pro.
6
7
  ========================================================================== */
@@ -1,6 +1,7 @@
1
1
  /* ==========================================================================
2
2
  tests/unit/checkVersions.test.js
3
3
 
4
+ Copyright © 2025 Network Pro Strategies (Network Pro™)
4
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
5
6
  This file is part of Network Pro.
6
7
  ========================================================================== */
@@ -1,6 +1,7 @@
1
1
  /* ==========================================================================
2
2
  tests/unit/demo.spec.js
3
3
 
4
+ Copyright © 2025 Network Pro Strategies (Network Pro™)
4
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
5
6
  This file is part of Network Pro.
6
7
  ========================================================================== */
@@ -1,6 +1,7 @@
1
1
  /* ==========================================================================
2
2
  tests/unit/routes/page.svelte.test.js
3
3
 
4
+ Copyright © 2025 Network Pro Strategies (Network Pro™)
4
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
5
6
  This file is part of Network Pro.
6
7
  ========================================================================== */
@@ -1,6 +1,7 @@
1
1
  /* ==========================================================================
2
2
  tests/unit/unregisterServiceWorker.test.js
3
3
 
4
+ Copyright © 2025 Network Pro Strategies (Network Pro™)
4
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
5
6
  This file is part of Network Pro.
6
7
  ========================================================================== */
@@ -1,6 +1,7 @@
1
1
  /* ==========================================================================
2
2
  tests/unit/utm.test.js
3
3
 
4
+ Copyright © 2025 Network Pro Strategies (Network Pro™)
4
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
5
6
  This file is part of Network Pro.
6
7
  ========================================================================== */
@@ -1,10 +1,11 @@
1
1
  /* ==========================================================================
2
- tsconfig.custom.json
2
+ tsconfig.custom.jsonc
3
3
 
4
4
  NOTE: This file is for reference only and is not actively used in the build.
5
5
  The project uses the SvelteKit-generated .svelte-kit/tsconfig.json extended by
6
6
  jsconfig.json for actual TypeScript configuration.
7
7
 
8
+ Copyright © 2025 Network Pro Strategies (Network Pro™)
8
9
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
9
10
  This file is part of Network Pro.
10
11
  ========================================================================== */
package/vite.config.js CHANGED
@@ -1,6 +1,7 @@
1
1
  /* =========================================================================
2
2
  vite.config.js
3
3
 
4
+ Copyright © 2025 Network Pro Strategies (Network Pro™)
4
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
5
6
  This file is part of Network Pro.
6
7
  ========================================================================= */
@@ -1,6 +1,7 @@
1
1
  /* =========================================================================
2
2
  vitest.config.client.js
3
3
 
4
+ Copyright © 2025 Network Pro Strategies (Network Pro™)
4
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
5
6
  This file is part of Network Pro.
6
7
  ========================================================================= */
@@ -1,6 +1,7 @@
1
1
  /* =========================================================================
2
2
  vitest.config.server.js
3
3
 
4
+ Copyright © 2025 Network Pro Strategies (Network Pro™)
4
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
5
6
  This file is part of Network Pro.
6
7
  ========================================================================= */