@networkpro/web 1.25.23 → 1.26.0

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 (175) hide show
  1. package/.editorconfig +1 -1
  2. package/.env.template +2 -2
  3. package/.gitattributes +1 -1
  4. package/.github/ISSUE_TEMPLATE/bug_report.yml +1 -1
  5. package/.github/ISSUE_TEMPLATE/config.yml +1 -1
  6. package/.github/ISSUE_TEMPLATE/feature_request.yml +1 -1
  7. package/.github/ISSUE_TEMPLATE/legal_review.yml +1 -1
  8. package/.github/workflows/auto-assign.yml +1 -1
  9. package/.github/workflows/backup-branch.yml +1 -1
  10. package/.github/workflows/build-and-publish.yml +1 -1
  11. package/.github/workflows/check-codeql.yml +1 -1
  12. package/.github/workflows/check-security-txt-expiry.yml +6 -0
  13. package/.github/workflows/dependency-review.yml +1 -1
  14. package/.github/workflows/lighthouse.yml +1 -1
  15. package/.github/workflows/meta-check.yml +1 -1
  16. package/.github/workflows/playwright.yml +1 -1
  17. package/.github/workflows/prevent-audit-merge.yml +1 -1
  18. package/.github/workflows/probely-scan.yml +1 -1
  19. package/.github/workflows/publish-test.yml +1 -1
  20. package/.github/workflows/secret-scan.yml +1 -1
  21. package/.github/workflows/templates/check-codeql.template.yml +1 -1
  22. package/.github/workflows/templates/publish.template.yml +1 -1
  23. package/.lighthouserc.cjs +1 -1
  24. package/.markdownlint.mjs +1 -1
  25. package/.md-smart-quotes.js +1 -1
  26. package/.ncurc.cjs +2 -2
  27. package/.prettierignore +1 -1
  28. package/.stylelintignore +1 -1
  29. package/.vscode/extensions.jsonc +1 -1
  30. package/CHANGELOG.md +48 -6
  31. package/CHANGELOG.template.md +1 -1
  32. package/LICENSE.md +3 -3
  33. package/README.md +30 -3
  34. package/bootstrap.local.sh +1 -1
  35. package/eslint.config.mjs +1 -1
  36. package/jsconfig.template.jsonc +1 -1
  37. package/package.json +12 -12
  38. package/playwright.config.js +1 -1
  39. package/postcss.config.mjs +1 -1
  40. package/scripts/auditScripts.js +1 -1
  41. package/scripts/bundleCss.js +21 -12
  42. package/scripts/checkEnv.js +1 -1
  43. package/scripts/checkNode.js +1 -1
  44. package/scripts/checkVersions.js +1 -1
  45. package/scripts/generateTest.js +1 -1
  46. package/scripts/openReport.js +1 -1
  47. package/src/app.d.ts +1 -1
  48. package/src/app.html +2 -2
  49. package/src/global.d.ts +1 -1
  50. package/src/hooks.client.ts +1 -1
  51. package/src/hooks.server.js +1 -1
  52. package/src/lib/README.md +3 -3
  53. package/src/lib/components/Badges.svelte +1 -1
  54. package/src/lib/components/CodeBlock.svelte +1 -1
  55. package/src/lib/components/ContainerSection.svelte +1 -1
  56. package/src/lib/components/FullWidthSection.svelte +1 -1
  57. package/src/lib/components/LegalNav.svelte +1 -1
  58. package/src/lib/components/Logo.svelte +1 -1
  59. package/src/lib/components/MetaTags.svelte +1 -1
  60. package/src/lib/components/PWAInstallButton.svelte +1 -1
  61. package/src/lib/components/RedirectPage.svelte +1 -1
  62. package/src/lib/components/ServiceSummaryTable.svelte +1 -1
  63. package/src/lib/components/SocialMedia.svelte +1 -1
  64. package/src/lib/components/foss/FossFeatures.svelte +1 -1
  65. package/src/lib/components/foss/FossItemContent.svelte +1 -1
  66. package/src/lib/components/foss/ObtainiumBlock.svelte +1 -1
  67. package/src/lib/components/foss/index.js +1 -1
  68. package/src/lib/components/index.js +1 -1
  69. package/src/lib/components/layout/Footer.svelte +1 -1
  70. package/src/lib/components/layout/HeaderDefault.svelte +8 -18
  71. package/src/lib/components/layout/HeaderHome.svelte +8 -16
  72. package/src/lib/components/layout/index.js +1 -1
  73. package/src/lib/data/fossData.js +1 -1
  74. package/src/lib/data/pgpKeys.js +1 -1
  75. package/src/lib/images.js +1 -1
  76. package/src/lib/index.js +3 -3
  77. package/src/lib/meta.js +1 -1
  78. package/src/lib/pages/AboutContent.svelte +1 -1
  79. package/src/lib/pages/FossContent.svelte +1 -1
  80. package/src/lib/pages/HomeContent.svelte +3 -3
  81. package/src/lib/pages/LicenseContent.svelte +1 -1
  82. package/src/lib/pages/PGPContent.svelte +1 -1
  83. package/src/lib/pages/PrivacyContent.svelte +1 -1
  84. package/src/lib/pages/PrivacyDashboard.svelte +1 -1
  85. package/src/lib/pages/ServicesContent.svelte +1 -1
  86. package/src/lib/pages/TermsConditionsContent.svelte +1 -1
  87. package/src/lib/pages/TermsUseContent.svelte +1 -1
  88. package/src/lib/pages/index.js +1 -1
  89. package/src/lib/registerServiceWorker.js +1 -1
  90. package/src/lib/security/probely.js +1 -1
  91. package/src/lib/stores/posthog.js +2 -1
  92. package/src/lib/stores/trackingPreferences.js +1 -1
  93. package/src/lib/styles/css/default.css +11 -2
  94. package/src/lib/styles/css/global.css +1 -3
  95. package/src/lib/styles/css/normalize.css +1 -1
  96. package/src/lib/styles/css/offline.css +1 -1
  97. package/src/lib/styles/css/style.css +3 -1
  98. package/src/lib/styles/fa-global.css +2 -3
  99. package/src/lib/styles/global.min.css +2 -2
  100. package/src/lib/styles/index.js +1 -1
  101. package/src/lib/types/README.md +2 -2
  102. package/src/lib/types/appConstants.js +1 -1
  103. package/src/lib/types/fossTypes.js +1 -1
  104. package/src/lib/types/metadata.js +1 -1
  105. package/src/lib/unregisterServiceWorker.js +1 -3
  106. package/src/lib/utils/env.js +1 -1
  107. package/src/lib/utils/getUTMParams.js +1 -1
  108. package/src/lib/utils/initAnalytics.js +1 -1
  109. package/src/lib/utils/purify.js +1 -1
  110. package/src/lib/utils/redirect.js +1 -1
  111. package/src/lib/utils/utm.js +1 -1
  112. package/src/routes/+error.svelte +1 -1
  113. package/src/routes/+layout.js +1 -1
  114. package/src/routes/+layout.svelte +1 -1
  115. package/src/routes/+page.server.js +1 -1
  116. package/src/routes/+page.svelte +1 -1
  117. package/src/routes/...404/+page.svelte +1 -1
  118. package/src/routes/about/+page.server.js +1 -1
  119. package/src/routes/about/+page.svelte +1 -1
  120. package/src/routes/api/mock-csp/+server.js +1 -1
  121. package/src/routes/consultation/+page.svelte +1 -1
  122. package/src/routes/contact/+page.svelte +1 -1
  123. package/src/routes/foss/+page.server.js +1 -1
  124. package/src/routes/foss/+page.svelte +1 -1
  125. package/src/routes/legal/+page.server.js +1 -1
  126. package/src/routes/legal/+page.svelte +1 -1
  127. package/src/routes/links/+page.svelte +1 -1
  128. package/src/routes/pgp/+page.server.js +1 -1
  129. package/src/routes/pgp/+page.svelte +1 -1
  130. package/src/routes/pgp/[key]/+server.js +1 -1
  131. package/src/routes/posts/+page.svelte +1 -1
  132. package/src/routes/privacy/+page.server.js +1 -1
  133. package/src/routes/privacy/+page.svelte +1 -1
  134. package/src/routes/privacy-dashboard/+page.server.js +1 -1
  135. package/src/routes/privacy-dashboard/+page.svelte +1 -1
  136. package/src/routes/privacy-rights/+page.svelte +1 -1
  137. package/src/routes/relay-[slug]/[...catchall]/+server.js +1 -1
  138. package/src/routes/services/+page.server.js +1 -1
  139. package/src/routes/services/+page.svelte +1 -1
  140. package/src/routes/status/+page.server.js +1 -1
  141. package/src/routes/terms-conditions/+page.server.js +1 -1
  142. package/src/routes/terms-conditions/+page.svelte +1 -1
  143. package/src/routes/terms-of-use/+page.server.js +1 -1
  144. package/src/routes/terms-of-use/+page.svelte +1 -1
  145. package/src/service-worker.d.ts +1 -1
  146. package/src/service-worker.js +1 -1
  147. package/static/bin/license/CC-BY-4.0.html +1 -1
  148. package/static/bin/license/COPYING.html +1 -1
  149. package/static/disableSw.js +1 -1
  150. package/static/offline.html +1 -1
  151. package/static/offline.min.css +1 -1
  152. package/static/robots.txt +1 -1
  153. package/static/sitemap.xml +2 -2
  154. package/stylelint.config.js +1 -1
  155. package/svelte.config.js +1 -1
  156. package/tests/e2e/app.spec.js +1 -1
  157. package/tests/e2e/mobile.spec.js +1 -1
  158. package/tests/e2e/shared/helpers.js +1 -1
  159. package/tests/meta/meta.test.js +1 -1
  160. package/tests/unit/client/lib/PWAInstallButton.test.js +1 -1
  161. package/tests/unit/client/lib/unregisterServiceWorker.test.js +1 -1
  162. package/tests/unit/client/lib/utils/redirect.test.js +1 -1
  163. package/tests/unit/client/lib/utils/utm.test.js +1 -1
  164. package/tests/unit/client/routes/page.svelte.test.js +1 -1
  165. package/tests/unit/server/checkEnv.test.js +1 -1
  166. package/tests/unit/server/checkVersions.test.js +1 -1
  167. package/tests/unit/server/internal/auditCoverage.test.js +1 -1
  168. package/tests/unit/server/internal/ssrBoundary.test.js +1 -1
  169. package/tests/unit/server/lib/security/probely.test.js +1 -1
  170. package/tests/unit/server/lib/utils/purify.test.js +1 -1
  171. package/tests/unit/server/meta.test.js +1 -1
  172. package/vite.config.js +1 -1
  173. package/vitest-setup-client.js +1 -0
  174. package/vitest.config.client.js +9 -8
  175. package/vitest.config.server.js +3 -2
@@ -1,7 +1,7 @@
1
1
  <!-- ==========================================================================
2
2
  src/lib/pages/TermsUseContent.svelte
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== -->
@@ -1,7 +1,7 @@
1
1
  /* ==========================================================================
2
2
  src/lib/pages/index.js
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== */
@@ -1,7 +1,7 @@
1
1
  /* ==========================================================================
2
2
  src/lib/registerServiceWorker.js
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== */
@@ -1,7 +1,7 @@
1
1
  /* ==========================================================================
2
2
  src/lib/security/probely.js
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== */
@@ -1,8 +1,9 @@
1
1
  /* ==========================================================================
2
2
  src/lib/stores/posthog.js
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
+ This file is part of Network Pro.
6
7
  ========================================================================== */
7
8
 
8
9
  /**
@@ -1,7 +1,7 @@
1
1
  /* ==========================================================================
2
2
  src/lib/stores/trackingPreferences.js
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== */
@@ -1,11 +1,13 @@
1
1
  /* ==========================================================================
2
2
  src/lib/styles/default.css
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== */
8
8
 
9
+ /* NOTE: This file is bundled into global.min.css — changes require rebuild */
10
+
9
11
  /* ==========================================================================
10
12
  Document Spacing
11
13
  ========================================================================== */
@@ -517,7 +519,7 @@ footer .container {
517
519
  color: #cba557;
518
520
  }
519
521
 
520
- .goldseparator {
522
+ .gold-separator {
521
523
  margin: 0 0.5rem;
522
524
  color: #ffc627;
523
525
  }
@@ -529,6 +531,13 @@ footer .container {
529
531
  text-align: center;
530
532
  }
531
533
 
534
+ .center-nav .external-icon {
535
+ position: relative;
536
+ top: -0.3em; /* try -0.25em to -0.35em */
537
+ font-size: 0.85em; /* tweak: 0.7–0.85em usually ideal */
538
+ margin-left: 0.3em;
539
+ }
540
+
532
541
  /* code block for legal text */
533
542
  .block {
534
543
  width: 100%;
@@ -1,7 +1,5 @@
1
1
  /*! ==========================================================================
2
- src/lib/styles/css/global.css
3
-
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
2
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
3
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
4
  This file is part of Network Pro.
7
5
  ========================================================================== */
@@ -1,7 +1,7 @@
1
1
  /* ==========================================================================
2
2
  src/lib/styles/normalize.css
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== */
@@ -1,7 +1,7 @@
1
1
  /*! ==========================================================================
2
2
  src/lib/styles/css/offline.css
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  =========================================================================== */
@@ -1,11 +1,13 @@
1
1
  /* ==========================================================================
2
2
  src/lib/styles/style.css
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== */
8
8
 
9
+ /* NOTE: This file is bundled into global.min.css — changes require rebuild */
10
+
9
11
  /*! Modified from HTML5 Boilerplate v9.0.1 | MIT License | https://html5boilerplate.com/ */
10
12
 
11
13
  /* https://github.com/h5bp/main.css#readme */
@@ -1,7 +1,5 @@
1
1
  /*! ==========================================================================
2
- src/lib/styles/fa-global.css
3
-
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
2
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
3
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
4
  This file is part of Network Pro.
7
5
  ========================================================================== */
@@ -9,3 +7,4 @@ This file is part of Network Pro.
9
7
  @import "./css/fontawesome.min.css";
10
8
  @import "./css/brands.min.css";
11
9
  @import "./css/solid.min.css";
10
+
@@ -1,6 +1,6 @@
1
1
  /*! ==========================================================================
2
- Copyright © 2025 Network Pro Strategies (Network Pro™)
2
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
3
3
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
4
4
  This file is part of Network Pro.
5
5
  ========================================================================== */
6
- html{-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{margin:.67em 0;font-size:2em}hr{box-sizing:content-box}pre{font-family:monospace;font-size:1em}a{background-color:#0000}abbr[title]{border-bottom:none;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:100%;line-height:1.15}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted buttontext}fieldset{padding:.35em .75em .625em}legend{color:inherit;box-sizing:border-box;white-space:normal;max-width:100%;padding:0;display:table}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}details{display:block}summary{display:list-item}template{display:none}html{color:#222;scroll-behavior:smooth;font-size:1em;line-height:1.4}::-moz-selection{text-shadow:none;background:#191919}::selection{text-shadow:none;background:#191919}hr{border:0;border-top:1px solid #ccc;height:1px;margin:1em 0;padding:0;display:block;overflow:visible}audio,canvas,iframe,img,svg,video{vertical-align:middle}fieldset{border:0;margin:0;padding:0}textarea{resize:vertical}body{color:#fafafa;background-color:#191919;margin:10px;font-family:Arial,Helvetica,sans-serif}a{text-decoration:none}a:link{color:#ffc627}a:hover,a:active{color:#ffc627;text-decoration:underline}a:focus{color:#111;background-color:#ffc627}a:visited,a:visited:hover{color:#cba557}a:visited:focus,a:visited:focus-visible{color:#111!important}.hidden,[hidden]{display:none!important}.visually-hidden{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.visually-hidden.focusable:active,.visually-hidden.focusable:focus{clip:auto;width:auto;height:auto;white-space:inherit;margin:0;position:static;overflow:visible}.invisible{visibility:hidden}.clearfix:before,.clearfix:after{content:"";display:table}.clearfix:after{clear:both}@media print{*,:before,:after{color:#000!important;box-shadow:none!important;text-shadow:none!important;background:#fff!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href)")"}abbr[title]:after{content:" (" attr(title)")"}a[href^=\#]:after,a[href^=javascript\:]:after{content:""}pre{white-space:pre-wrap!important}pre,blockquote{break-inside:avoid;border:1px solid #999}tr,img{break-inside:avoid}p,h2,h3{orphans:3;widows:3}h2,h3{break-after:avoid}}.full-width-section{background-position:50%;background-size:cover;width:100%;max-width:1920px;margin:0 auto}.container{max-width:1200px;margin:0 auto;padding:0 12px}.readable{max-width:900px;margin:0 auto}header,footer{width:100%}header .container,footer .container{max-width:1200px;margin:0 auto;padding:20px 12px}.gh{border-collapse:collapse;border-spacing:0;margin:0 auto}.gh td,.gh th{border-collapse:collapse;word-break:normal;padding:10px 5px;overflow:hidden}.gh .gh-tcell{text-align:center;vertical-align:middle}@media screen and (width<=767px){.gh,.gh col{width:auto!important}.gh-wrap{-webkit-overflow-scrolling:touch;margin:auto 0;overflow-x:auto}}.soc{border-collapse:collapse;border-spacing:0;margin:0 auto}.soc td,.soc th{border-collapse:collapse;word-break:normal;padding:8px;overflow:hidden}.soc .soc-fa{text-align:center;vertical-align:middle}@media screen and (width<=767px){.soc,.soc col{width:auto!important}.soc-wrap{-webkit-overflow-scrolling:touch;margin:auto 0;overflow-x:auto}}.foss{border-collapse:collapse;border-spacing:0}.foss td,.foss th{border-collapse:collapse;word-break:normal;padding:10px 5px;overflow:hidden}.foss .foss-cell{text-align:center;vertical-align:middle}@media screen and (width<=767px){.foss,.foss col{width:auto!important}.foss-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}}.bnav{text-align:center;border-collapse:collapse;border-spacing:0;margin:0 auto}.bnav td,.bnav th{text-align:center;vertical-align:middle;word-break:normal;border-style:none;padding:10px;font-size:.875rem;font-weight:700;line-height:1.125rem;overflow:hidden}.bnav .bnav-cell{text-align:center;vertical-align:middle;align-content:center}@media screen and (width<=767px){.bnav,.bnav col{width:auto!important}.bnav-wrap{-webkit-overflow-scrolling:touch;margin:auto 0;overflow-x:auto}}.bnav2{border-collapse:collapse;border-spacing:0;margin:0 auto}.bnav2 td{word-break:normal;border-style:none;padding:10px;font-size:.875rem;font-weight:700;line-height:1.125rem;overflow:hidden}.bnav2 th{word-break:normal;border-style:none;padding:12px;font-size:.875rem;line-height:1.125rem;overflow:hidden}.bnav2 .bnav2-cell{text-align:center;vertical-align:middle;align-content:center}@media screen and (width<=767px){.bnav2,.bnav2 col{width:auto!important}.bnav2-wrap{-webkit-overflow-scrolling:touch;margin:auto 0;overflow-x:auto}}.pgp{border-collapse:collapse;border-spacing:0;margin:0 auto}.pgp td{word-break:normal;border-style:none;padding:10px;font-size:.875rem;line-height:1.125rem;overflow:hidden}.pgp th{word-break:normal;border:1px solid #000;padding:10px;font-size:.875rem;line-height:1.125rem;overflow:hidden}.pgp .pgp-col1{text-align:right;vertical-align:middle;padding-right:1rem}.pgp .pgp-col2{text-align:left;vertical-align:middle;padding-left:1rem}@media screen and (width<=767px){.pgp,.pgp col{width:auto!important}.pgp-wrap{-webkit-overflow-scrolling:touch;margin:2rem 0 auto;overflow-x:auto}}#service-summary{color:#e6e6e6;margin-top:2rem;margin-bottom:2.5rem}.service-table{color:#e6e6e6;border-collapse:collapse;background-color:#191919;width:100%;font-size:.95rem}.service-table th,.service-table td{text-align:left;vertical-align:top;border-bottom:1px solid #333;padding:.75rem 1rem}.service-table th{color:#ffc627;text-transform:uppercase;background-color:#222;font-size:.85rem;font-weight:600}.service-table a{color:#ffc627;font-weight:500;text-decoration:none}.service-table a:hover{text-decoration:underline}.service-table tr:hover{background-color:#222;transition:background-color .3s,box-shadow .3s;box-shadow:0 0 10px 2px #ffc62740}.service-table tr.selected{background-color:#222;border-left:4px solid #ffc627;transition:background-color .3s,border-left-color .3s}.service-table tr.selected:hover{background-color:#252525;box-shadow:0 0 12px 3px #ffc62759}@media (width<=768px){.service-table{font-size:.9rem}.service-table th,.service-table td{padding:.5rem}}.logo{width:var(--logo-width,250px);height:var(--logo-height,250px);margin-left:auto;margin-right:auto;display:block}.index-title1{text-align:center;font-style:italic;font-weight:700}.index-title2{letter-spacing:-.015em;text-align:center;font-variant:small-caps;font-size:1.25rem;line-height:1.625rem}.index1{letter-spacing:-.035em;text-align:center;font-style:italic;font-weight:700;line-height:2.125rem}.index2{letter-spacing:-.035em;text-align:center;font-variant:small-caps;font-size:1.5rem;line-height:1.75rem}.index3{letter-spacing:-.035em;text-align:center;font-size:1.5rem;line-height:1.75rem}.index4{letter-spacing:-.035em;text-align:center;font-size:1.5rem;line-height:1.75rem;text-decoration:underline}.subhead{letter-spacing:-.035em;font-variant:small-caps;font-size:1.5rem;line-height:1.75rem}.bold{font-weight:700}.emphasis{font-style:italic}.uline{text-decoration:underline}.bolditalic{font-style:italic;font-weight:700}.bquote{border-left:3px solid #9e9e9e;margin-left:30px;padding-left:10px;font-style:italic}.small-text{font-size:.75rem;line-height:1.125rem}.large-text-center{text-align:center;font-size:1.25rem;line-height:1.75rem}.prewrap{white-space:pre-wrap;display:block}.hr-styled{width:75%;margin:auto}.center-text{text-align:center}.copyright{text-align:center;font-size:.75rem;line-height:1.125rem}.gold{color:#ffc627}.visited{color:#cba557}.goldseparator{color:#ffc627;margin:0 .5rem}.center-nav{text-align:center;padding:5px;font-size:1rem;line-height:1.5rem}.block{overflow-wrap:break-word;resize:none;white-space:normal;word-break:normal;background:0 0;border:none;border-radius:0;outline:none;width:100%;font-family:monospace;font-size:.875rem;line-height:1.125rem}.full-width-section.centered{flex-direction:column;justify-content:center;min-height:80vh;display:flex}.fingerprint{white-space:pre-line;font-family:monospace;display:block}.pgp-image{width:150px;height:150px}.spacer{margin:2rem 0}.separator{margin:0 .5rem}.emoji{margin-right:8px}.headline{margin-bottom:4px;font-style:italic;font-weight:700;display:block}.label{font-family:inherit;font-weight:700}.description{font-family:inherit;font-style:normal;font-weight:400;display:inline}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.pgp-entry{flex-wrap:wrap;align-items:center;gap:2rem;margin-bottom:2rem;display:flex}.pgp-text{flex:2;min-width:250px}.pgp-qr{flex:1;min-width:150px}.obtainium-direct-label{margin:.25rem 0 .75rem;font-weight:700}.obtainium-manual-label{margin-top:.75rem;font-weight:700}.obtainium-img{width:185px;height:55px;margin-bottom:.25rem}.obtainium-margin{margin-left:4px}.obtainium-fa-down{color:#ffc627;margin-left:4px}.obtainium-icon{width:50px;height:50px}.proton-img{width:168px;height:24px}.redirect-text{text-align:center;margin-top:4rem}.redirect-content{text-align:center;margin-top:2rem;font-family:system-ui,sans-serif}.loading-spinner{border:4px solid #ddd;border-top-color:#ffc627;border-radius:50%;width:48px;height:48px;margin:2rem auto;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.cc-link{text-decoration:none}.cc-img{vertical-align:text-bottom;margin-left:3px;display:inline-block;height:18px!important}#toc ul{padding-left:1.5rem;list-style-type:disc}#toc a{color:var(--color-primary,#ffc627);text-decoration:none}#toc a:hover{text-decoration:underline}.badge{height:24px;display:inline-block}.badge--cc{width:160px}.badge--gpl{width:120px}.pwa-install-button{color:#000;cursor:pointer;background-color:#ffc627;border:none;border-radius:6px;margin-top:1rem;margin-left:auto;margin-right:auto;padding:.5rem 1rem;font-family:inherit;font-size:1rem;font-weight:700;transition:background-color .2s ease-in-out;display:block;box-shadow:0 2px 4px #0003}.pwa-install-button:hover{background-color:#e6b300}.pwa-install-button:focus{outline-offset:2px;outline:2px solid #000}.foss-features{margin:0;padding-left:0;list-style-type:none}.foss-features li{margin-bottom:.5em;font-weight:600}
6
+ html{-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{margin:.67em 0;font-size:2em}hr{box-sizing:content-box}pre{font-family:monospace;font-size:1em}a{background-color:#0000}abbr[title]{border-bottom:none;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:100%;line-height:1.15}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted buttontext}fieldset{padding:.35em .75em .625em}legend{color:inherit;box-sizing:border-box;white-space:normal;max-width:100%;padding:0;display:table}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}details{display:block}summary{display:list-item}template{display:none}html{color:#222;scroll-behavior:smooth;font-size:1em;line-height:1.4}::-moz-selection{text-shadow:none;background:#191919}::selection{text-shadow:none;background:#191919}hr{border:0;border-top:1px solid #ccc;height:1px;margin:1em 0;padding:0;display:block;overflow:visible}audio,canvas,iframe,img,svg,video{vertical-align:middle}fieldset{border:0;margin:0;padding:0}textarea{resize:vertical}body{color:#fafafa;background-color:#191919;margin:10px;font-family:Arial,Helvetica,sans-serif}a{text-decoration:none}a:link{color:#ffc627}a:hover,a:active{color:#ffc627;text-decoration:underline}a:focus{color:#111;background-color:#ffc627}a:visited,a:visited:hover{color:#cba557}a:visited:focus,a:visited:focus-visible{color:#111!important}.hidden,[hidden]{display:none!important}.visually-hidden{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.visually-hidden.focusable:active,.visually-hidden.focusable:focus{clip:auto;width:auto;height:auto;white-space:inherit;margin:0;position:static;overflow:visible}.invisible{visibility:hidden}.clearfix:before,.clearfix:after{content:"";display:table}.clearfix:after{clear:both}@media print{*,:before,:after{color:#000!important;box-shadow:none!important;text-shadow:none!important;background:#fff!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href)")"}abbr[title]:after{content:" (" attr(title)")"}a[href^=\#]:after,a[href^=javascript\:]:after{content:""}pre{white-space:pre-wrap!important}pre,blockquote{break-inside:avoid;border:1px solid #999}tr,img{break-inside:avoid}p,h2,h3{orphans:3;widows:3}h2,h3{break-after:avoid}}.full-width-section{background-position:50%;background-size:cover;width:100%;max-width:1920px;margin:0 auto}.container{max-width:1200px;margin:0 auto;padding:0 12px}.readable{max-width:900px;margin:0 auto}header,footer{width:100%}header .container,footer .container{max-width:1200px;margin:0 auto;padding:20px 12px}.gh{border-collapse:collapse;border-spacing:0;margin:0 auto}.gh td,.gh th{border-collapse:collapse;word-break:normal;padding:10px 5px;overflow:hidden}.gh .gh-tcell{text-align:center;vertical-align:middle}@media screen and (width<=767px){.gh,.gh col{width:auto!important}.gh-wrap{-webkit-overflow-scrolling:touch;margin:auto 0;overflow-x:auto}}.soc{border-collapse:collapse;border-spacing:0;margin:0 auto}.soc td,.soc th{border-collapse:collapse;word-break:normal;padding:8px;overflow:hidden}.soc .soc-fa{text-align:center;vertical-align:middle}@media screen and (width<=767px){.soc,.soc col{width:auto!important}.soc-wrap{-webkit-overflow-scrolling:touch;margin:auto 0;overflow-x:auto}}.foss{border-collapse:collapse;border-spacing:0}.foss td,.foss th{border-collapse:collapse;word-break:normal;padding:10px 5px;overflow:hidden}.foss .foss-cell{text-align:center;vertical-align:middle}@media screen and (width<=767px){.foss,.foss col{width:auto!important}.foss-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}}.bnav{text-align:center;border-collapse:collapse;border-spacing:0;margin:0 auto}.bnav td,.bnav th{text-align:center;vertical-align:middle;word-break:normal;border-style:none;padding:10px;font-size:.875rem;font-weight:700;line-height:1.125rem;overflow:hidden}.bnav .bnav-cell{text-align:center;vertical-align:middle;align-content:center}@media screen and (width<=767px){.bnav,.bnav col{width:auto!important}.bnav-wrap{-webkit-overflow-scrolling:touch;margin:auto 0;overflow-x:auto}}.bnav2{border-collapse:collapse;border-spacing:0;margin:0 auto}.bnav2 td{word-break:normal;border-style:none;padding:10px;font-size:.875rem;font-weight:700;line-height:1.125rem;overflow:hidden}.bnav2 th{word-break:normal;border-style:none;padding:12px;font-size:.875rem;line-height:1.125rem;overflow:hidden}.bnav2 .bnav2-cell{text-align:center;vertical-align:middle;align-content:center}@media screen and (width<=767px){.bnav2,.bnav2 col{width:auto!important}.bnav2-wrap{-webkit-overflow-scrolling:touch;margin:auto 0;overflow-x:auto}}.pgp{border-collapse:collapse;border-spacing:0;margin:0 auto}.pgp td{word-break:normal;border-style:none;padding:10px;font-size:.875rem;line-height:1.125rem;overflow:hidden}.pgp th{word-break:normal;border:1px solid #000;padding:10px;font-size:.875rem;line-height:1.125rem;overflow:hidden}.pgp .pgp-col1{text-align:right;vertical-align:middle;padding-right:1rem}.pgp .pgp-col2{text-align:left;vertical-align:middle;padding-left:1rem}@media screen and (width<=767px){.pgp,.pgp col{width:auto!important}.pgp-wrap{-webkit-overflow-scrolling:touch;margin:2rem 0 auto;overflow-x:auto}}#service-summary{color:#e6e6e6;margin-top:2rem;margin-bottom:2.5rem}.service-table{color:#e6e6e6;border-collapse:collapse;background-color:#191919;width:100%;font-size:.95rem}.service-table th,.service-table td{text-align:left;vertical-align:top;border-bottom:1px solid #333;padding:.75rem 1rem}.service-table th{color:#ffc627;text-transform:uppercase;background-color:#222;font-size:.85rem;font-weight:600}.service-table a{color:#ffc627;font-weight:500;text-decoration:none}.service-table a:hover{text-decoration:underline}.service-table tr:hover{background-color:#222;transition:background-color .3s,box-shadow .3s;box-shadow:0 0 10px 2px #ffc62740}.service-table tr.selected{background-color:#222;border-left:4px solid #ffc627;transition:background-color .3s,border-left-color .3s}.service-table tr.selected:hover{background-color:#252525;box-shadow:0 0 12px 3px #ffc62759}@media (width<=768px){.service-table{font-size:.9rem}.service-table th,.service-table td{padding:.5rem}}.logo{width:var(--logo-width,250px);height:var(--logo-height,250px);margin-left:auto;margin-right:auto;display:block}.index-title1{text-align:center;font-style:italic;font-weight:700}.index-title2{letter-spacing:-.015em;text-align:center;font-variant:small-caps;font-size:1.25rem;line-height:1.625rem}.index1{letter-spacing:-.035em;text-align:center;font-style:italic;font-weight:700;line-height:2.125rem}.index2{letter-spacing:-.035em;text-align:center;font-variant:small-caps;font-size:1.5rem;line-height:1.75rem}.index3{letter-spacing:-.035em;text-align:center;font-size:1.5rem;line-height:1.75rem}.index4{letter-spacing:-.035em;text-align:center;font-size:1.5rem;line-height:1.75rem;text-decoration:underline}.subhead{letter-spacing:-.035em;font-variant:small-caps;font-size:1.5rem;line-height:1.75rem}.bold{font-weight:700}.emphasis{font-style:italic}.uline{text-decoration:underline}.bolditalic{font-style:italic;font-weight:700}.bquote{border-left:3px solid #9e9e9e;margin-left:30px;padding-left:10px;font-style:italic}.small-text{font-size:.75rem;line-height:1.125rem}.large-text-center{text-align:center;font-size:1.25rem;line-height:1.75rem}.prewrap{white-space:pre-wrap;display:block}.hr-styled{width:75%;margin:auto}.center-text{text-align:center}.copyright{text-align:center;font-size:.75rem;line-height:1.125rem}.gold{color:#ffc627}.visited{color:#cba557}.gold-separator{color:#ffc627;margin:0 .5rem}.center-nav{text-align:center;padding:5px;font-size:1rem;line-height:1.5rem}.center-nav .external-icon{margin-left:.3em;font-size:.85em;position:relative;top:-.3em}.block{overflow-wrap:break-word;resize:none;white-space:normal;word-break:normal;background:0 0;border:none;border-radius:0;outline:none;width:100%;font-family:monospace;font-size:.875rem;line-height:1.125rem}.full-width-section.centered{flex-direction:column;justify-content:center;min-height:80vh;display:flex}.fingerprint{white-space:pre-line;font-family:monospace;display:block}.pgp-image{width:150px;height:150px}.spacer{margin:2rem 0}.separator{margin:0 .5rem}.emoji{margin-right:8px}.headline{margin-bottom:4px;font-style:italic;font-weight:700;display:block}.label{font-family:inherit;font-weight:700}.description{font-family:inherit;font-style:normal;font-weight:400;display:inline}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.pgp-entry{flex-wrap:wrap;align-items:center;gap:2rem;margin-bottom:2rem;display:flex}.pgp-text{flex:2;min-width:250px}.pgp-qr{flex:1;min-width:150px}.obtainium-direct-label{margin:.25rem 0 .75rem;font-weight:700}.obtainium-manual-label{margin-top:.75rem;font-weight:700}.obtainium-img{width:185px;height:55px;margin-bottom:.25rem}.obtainium-margin{margin-left:4px}.obtainium-fa-down{color:#ffc627;margin-left:4px}.obtainium-icon{width:50px;height:50px}.proton-img{width:168px;height:24px}.redirect-text{text-align:center;margin-top:4rem}.redirect-content{text-align:center;margin-top:2rem;font-family:system-ui,sans-serif}.loading-spinner{border:4px solid #ddd;border-top-color:#ffc627;border-radius:50%;width:48px;height:48px;margin:2rem auto;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.cc-link{text-decoration:none}.cc-img{vertical-align:text-bottom;margin-left:3px;display:inline-block;height:18px!important}#toc ul{padding-left:1.5rem;list-style-type:disc}#toc a{color:var(--color-primary,#ffc627);text-decoration:none}#toc a:hover{text-decoration:underline}.badge{height:24px;display:inline-block}.badge--cc{width:160px}.badge--gpl{width:120px}.pwa-install-button{color:#000;cursor:pointer;background-color:#ffc627;border:none;border-radius:6px;margin-top:1rem;margin-left:auto;margin-right:auto;padding:.5rem 1rem;font-family:inherit;font-size:1rem;font-weight:700;transition:background-color .2s ease-in-out;display:block;box-shadow:0 2px 4px #0003}.pwa-install-button:hover{background-color:#e6b300}.pwa-install-button:focus{outline-offset:2px;outline:2px solid #000}.foss-features{margin:0;padding-left:0;list-style-type:none}.foss-features li{margin-bottom:.5em;font-weight:600}
@@ -1,7 +1,7 @@
1
1
  /* ==========================================================================
2
2
  src/lib/styles/index.js
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== */
@@ -1,7 +1,7 @@
1
1
  <!-- =====================================================================
2
2
  src/lib/types/README.md
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ====================================================================== -->
@@ -40,7 +40,7 @@ TypeScript build requirement.
40
40
 
41
41
  <span style="font-size: 12px; text-align: center;">
42
42
 
43
- Copyright &copy; 2025
43
+ Copyright &copy; 2025, 2026
44
44
  **[Network Pro Strategies](https://netwk.pro) (Network Pro&trade;)**
45
45
 
46
46
  Network Pro&trade;, the shield logo, and the "Locking Down Networks...&trade;" slogan are [trademarks](https://netwk.pro/legal#trademark) of Network Pro Strategies.
@@ -1,7 +1,7 @@
1
1
  /* ==========================================================================
2
2
  src/lib/types/appConstants.js
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== */
@@ -1,7 +1,7 @@
1
1
  /* ==========================================================================
2
2
  src/lib/types/fossTypes.js
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== */
@@ -1,7 +1,7 @@
1
1
  /* ==========================================================================
2
2
  src/lib/types/metadata.js
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== */
@@ -1,15 +1,13 @@
1
1
  /* ==========================================================================
2
2
  src/lib/unregisterServiceWorker.js
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== */
8
8
 
9
9
  /**
10
10
  * Allows for manual toggling of the service worker
11
- * DEV USE ONLY
12
- * @internal
13
11
  */
14
12
  export function unregisterServiceWorker() {
15
13
  if ('serviceWorker' in navigator) {
@@ -1,7 +1,7 @@
1
1
  /* ==========================================================================
2
2
  src/lib/utils/env.js
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== */
@@ -1,7 +1,7 @@
1
1
  /* ==========================================================================
2
2
  src/lib/utils/getUTMParams.js
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== */
@@ -1,7 +1,7 @@
1
1
  /* ==========================================================================
2
2
  src/lib/utils/initAnalytics.js
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== */
@@ -1,7 +1,7 @@
1
1
  /* ==========================================================================
2
2
  src/lib/utils/purify.js
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== */
@@ -1,7 +1,7 @@
1
1
  /* ==========================================================================
2
2
  src/lib/utils/redirect.js
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== */
@@ -1,7 +1,7 @@
1
1
  /* ==========================================================================
2
2
  src/lib/utils/utm.js
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== */
@@ -1,7 +1,7 @@
1
1
  <!-- ==========================================================================
2
2
  src/routes/+error.svelte
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== -->
@@ -1,7 +1,7 @@
1
1
  /* ==========================================================================
2
2
  src/routes/+layout.js
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== */
@@ -1,7 +1,7 @@
1
1
  <!-- ==========================================================================
2
2
  src/routes/+layout.svelte
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== -->
@@ -1,7 +1,7 @@
1
1
  /* ==========================================================================
2
2
  src/routes/+page.server.js
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== */
@@ -1,7 +1,7 @@
1
1
  <!-- ==========================================================================
2
2
  src/routes/+page.svelte
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== -->
@@ -1,7 +1,7 @@
1
1
  <!-- ==========================================================================
2
2
  src/routes/...404/+page.svelte
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== -->
@@ -1,7 +1,7 @@
1
1
  /* ==========================================================================
2
2
  src/routes/about/+page.server.js
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== */
@@ -1,7 +1,7 @@
1
1
  <!-- ==========================================================================
2
2
  src/routes/about/+page.svelte
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== -->
@@ -1,7 +1,7 @@
1
1
  /* ==========================================================================
2
2
  src/routes/api/mock-csp/+server.js
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== */
@@ -1,7 +1,7 @@
1
1
  <!-- ==========================================================================
2
2
  src/routes/consultation/+page.svelte
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== -->
@@ -1,7 +1,7 @@
1
1
  <!-- ==========================================================================
2
2
  src/routes/contact/+page.svelte
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== -->
@@ -1,7 +1,7 @@
1
1
  /* ==========================================================================
2
2
  src/routes/foss/+page.server.js
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== */
@@ -1,7 +1,7 @@
1
1
  <!-- ==========================================================================
2
2
  src/routes/foss/+page.svelte
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== -->
@@ -1,7 +1,7 @@
1
1
  /* ==========================================================================
2
2
  src/routes/legal/+page.server.js
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== */
@@ -1,7 +1,7 @@
1
1
  <!-- ==========================================================================
2
2
  src/routes/legal/+page.svelte
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== -->
@@ -1,7 +1,7 @@
1
1
  <!-- ==========================================================================
2
2
  src/routes/links/+page.svelte
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== -->
@@ -1,7 +1,7 @@
1
1
  /* ==========================================================================
2
2
  src/routes/pgp/+page.server.js
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== */
@@ -1,7 +1,7 @@
1
1
  <!-- ==========================================================================
2
2
  src/routes/pgp/+page.svelte
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== -->
@@ -1,7 +1,7 @@
1
1
  /* ==========================================================================
2
2
  src/routes/pgp/[key]/+server.js
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== */
@@ -1,7 +1,7 @@
1
1
  <!-- ==========================================================================
2
2
  src/routes/posts/+page.svelte
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== -->
@@ -1,7 +1,7 @@
1
1
  /* ==========================================================================
2
2
  src/routes/privacy/+page.server.js
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== */
@@ -1,7 +1,7 @@
1
1
  <!-- ==========================================================================
2
2
  src/routes/privacy/+page.svelte
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== -->
@@ -1,7 +1,7 @@
1
1
  /* ==========================================================================
2
2
  src/routes/privacy/+page.server.js
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== */
@@ -1,7 +1,7 @@
1
1
  <!-- ==========================================================================
2
2
  src/routes/privacy-dashboard/+page.svelte
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== -->
@@ -1,7 +1,7 @@
1
1
  <!-- ==========================================================================
2
2
  src/routes/privacy-rights/+page.svelte
3
3
 
4
- Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ Copyright © 2025-2026 Network Pro Strategies (Network Pro™)
5
5
  SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
6
6
  This file is part of Network Pro.
7
7
  ========================================================================== -->