adminforth 2.71.1-next.1 → 2.71.1-next.3

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.
@@ -23,7 +23,7 @@
23
23
  "javascript-time-ago": "^2.5.11",
24
24
  "lodash.debounce": "^4.0.8",
25
25
  "pinia": "^2.1.7",
26
- "sanitize-html": "^2.13.0",
26
+ "sanitize-html": "^2.17.4",
27
27
  "unhead": "^1.9.12",
28
28
  "vue": "^3.5.12",
29
29
  "vue-diff": "^1.2.4",
@@ -48,7 +48,7 @@
48
48
  "flag-icons": "^7.2.3",
49
49
  "flowbite": "^3.1.2",
50
50
  "i18n-iso-countries": "^7.12.0",
51
- "npm-run-all2": "^6.1.2",
51
+ "npm-run-all2": "^9.0.1",
52
52
  "portfinder": "^1.0.32",
53
53
  "postcss": "^8.4.38",
54
54
  "sass": "^1.77.2",
@@ -1698,39 +1698,6 @@
1698
1698
  "htmlparser2": "^10.1"
1699
1699
  }
1700
1700
  },
1701
- "node_modules/@types/sanitize-html/node_modules/entities": {
1702
- "version": "7.0.1",
1703
- "resolved": "https://registry.npmjs.org/entities/-/entities-7.0.1.tgz",
1704
- "integrity": "sha512-TWrgLOFUQTH994YUyl1yT4uyavY5nNB5muff+RtWaqNVCAK408b5ZnnbNAUEWLTCpum9w6arT70i1XdQ4UeOPA==",
1705
- "dev": true,
1706
- "license": "BSD-2-Clause",
1707
- "engines": {
1708
- "node": ">=0.12"
1709
- },
1710
- "funding": {
1711
- "url": "https://github.com/fb55/entities?sponsor=1"
1712
- }
1713
- },
1714
- "node_modules/@types/sanitize-html/node_modules/htmlparser2": {
1715
- "version": "10.1.0",
1716
- "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-10.1.0.tgz",
1717
- "integrity": "sha512-VTZkM9GWRAtEpveh7MSF6SjjrpNVNNVJfFup7xTY3UpFtm67foy9HDVXneLtFVt4pMz5kZtgNcvCniNFb1hlEQ==",
1718
- "dev": true,
1719
- "funding": [
1720
- "https://github.com/fb55/htmlparser2?sponsor=1",
1721
- {
1722
- "type": "github",
1723
- "url": "https://github.com/sponsors/fb55"
1724
- }
1725
- ],
1726
- "license": "MIT",
1727
- "dependencies": {
1728
- "domelementtype": "^2.3.0",
1729
- "domhandler": "^5.0.3",
1730
- "domutils": "^3.2.2",
1731
- "entities": "^7.0.1"
1732
- }
1733
- },
1734
1701
  "node_modules/@types/trusted-types": {
1735
1702
  "version": "2.0.7",
1736
1703
  "resolved": "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.7.tgz",
@@ -3679,9 +3646,9 @@
3679
3646
  "license": "MIT"
3680
3647
  },
3681
3648
  "node_modules/htmlparser2": {
3682
- "version": "8.0.2",
3683
- "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.2.tgz",
3684
- "integrity": "sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==",
3649
+ "version": "10.1.0",
3650
+ "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-10.1.0.tgz",
3651
+ "integrity": "sha512-VTZkM9GWRAtEpveh7MSF6SjjrpNVNNVJfFup7xTY3UpFtm67foy9HDVXneLtFVt4pMz5kZtgNcvCniNFb1hlEQ==",
3685
3652
  "funding": [
3686
3653
  "https://github.com/fb55/htmlparser2?sponsor=1",
3687
3654
  {
@@ -3693,8 +3660,20 @@
3693
3660
  "dependencies": {
3694
3661
  "domelementtype": "^2.3.0",
3695
3662
  "domhandler": "^5.0.3",
3696
- "domutils": "^3.0.1",
3697
- "entities": "^4.4.0"
3663
+ "domutils": "^3.2.2",
3664
+ "entities": "^7.0.1"
3665
+ }
3666
+ },
3667
+ "node_modules/htmlparser2/node_modules/entities": {
3668
+ "version": "7.0.1",
3669
+ "resolved": "https://registry.npmjs.org/entities/-/entities-7.0.1.tgz",
3670
+ "integrity": "sha512-TWrgLOFUQTH994YUyl1yT4uyavY5nNB5muff+RtWaqNVCAK408b5ZnnbNAUEWLTCpum9w6arT70i1XdQ4UeOPA==",
3671
+ "license": "BSD-2-Clause",
3672
+ "engines": {
3673
+ "node": ">=0.12"
3674
+ },
3675
+ "funding": {
3676
+ "url": "https://github.com/fb55/entities?sponsor=1"
3698
3677
  }
3699
3678
  },
3700
3679
  "node_modules/i18n-iso-countries": {
@@ -3916,13 +3895,13 @@
3916
3895
  "license": "MIT"
3917
3896
  },
3918
3897
  "node_modules/json-parse-even-better-errors": {
3919
- "version": "3.0.2",
3920
- "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.2.tgz",
3921
- "integrity": "sha512-fi0NG4bPjCHunUJffmLd0gxssIgkNmArMvis4iNah6Owg1MCJjWhEcDLmsK6iGkJq3tHwbDkTlce70/tmXN4cQ==",
3898
+ "version": "6.0.0",
3899
+ "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-6.0.0.tgz",
3900
+ "integrity": "sha512-2/8adwnK1/+Fdjyts4r6wSpfANWw8zdNhU9U/Llk59c6O+DjSisPWPykwoL8gZmocP9Dy64S7oie2g+Mia123A==",
3922
3901
  "dev": true,
3923
3902
  "license": "MIT",
3924
3903
  "engines": {
3925
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
3904
+ "node": "^22.22.2 || ^24.15.0 || >=26.0.0"
3926
3905
  }
3927
3906
  },
3928
3907
  "node_modules/json-schema-traverse": {
@@ -3949,6 +3928,15 @@
3949
3928
  "json-buffer": "3.0.1"
3950
3929
  }
3951
3930
  },
3931
+ "node_modules/launder": {
3932
+ "version": "1.7.1",
3933
+ "resolved": "https://registry.npmjs.org/launder/-/launder-1.7.1.tgz",
3934
+ "integrity": "sha512-mU6WRz5EusL9ZZuiZ5SO4Y6C0P9PAUR9iwdb6bzj4KDihm28DiHFw+/yk9DBH4f+Pv1wuzQ4e2jV3oQ7mkIqvw==",
3935
+ "license": "MIT",
3936
+ "dependencies": {
3937
+ "dayjs": "^1.11.7"
3938
+ }
3939
+ },
3952
3940
  "node_modules/levn": {
3953
3941
  "version": "0.4.1",
3954
3942
  "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz",
@@ -4176,30 +4164,30 @@
4176
4164
  }
4177
4165
  },
4178
4166
  "node_modules/npm-normalize-package-bin": {
4179
- "version": "3.0.1",
4180
- "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.1.tgz",
4181
- "integrity": "sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ==",
4167
+ "version": "6.0.0",
4168
+ "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-6.0.0.tgz",
4169
+ "integrity": "sha512-tdt4aFn9QamlhdN3HV2D2ccpBwO5/fyjjbXUxYA6uBjyekMZcZvDq0aSj9t5Jo+tih6AYFnt/cuIRn9013e0Uw==",
4182
4170
  "dev": true,
4183
4171
  "license": "ISC",
4184
4172
  "engines": {
4185
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
4173
+ "node": "^22.22.2 || ^24.15.0 || >=26.0.0"
4186
4174
  }
4187
4175
  },
4188
4176
  "node_modules/npm-run-all2": {
4189
- "version": "6.2.6",
4190
- "resolved": "https://registry.npmjs.org/npm-run-all2/-/npm-run-all2-6.2.6.tgz",
4191
- "integrity": "sha512-tkyb4pc0Zb0oOswCb5tORPk9MvVL6gcDq1cMItQHmsbVk1skk7YF6cH+UU2GxeNLHMuk6wFEOSmEmJ2cnAK1jg==",
4177
+ "version": "9.0.1",
4178
+ "resolved": "https://registry.npmjs.org/npm-run-all2/-/npm-run-all2-9.0.1.tgz",
4179
+ "integrity": "sha512-ZtK8WXZBUA9x0XD6nxYdFLe86FxpkCTq2LiQxzX0LeXQY/vyAigQZXjjj/xfTwgV4Yqe/vYNIq2W09lrHKTcuQ==",
4192
4180
  "dev": true,
4193
4181
  "license": "MIT",
4194
4182
  "dependencies": {
4195
4183
  "ansi-styles": "^6.2.1",
4196
- "cross-spawn": "^7.0.3",
4184
+ "cross-spawn": "^7.0.6",
4197
4185
  "memorystream": "^0.3.1",
4198
- "minimatch": "^9.0.0",
4186
+ "picomatch": "^4.0.2",
4199
4187
  "pidtree": "^0.6.0",
4200
- "read-package-json-fast": "^3.0.2",
4188
+ "read-package-json-fast": "^6.0.0",
4201
4189
  "shell-quote": "^1.7.3",
4202
- "which": "^3.0.1"
4190
+ "which": "^7.0.0"
4203
4191
  },
4204
4192
  "bin": {
4205
4193
  "npm-run-all": "bin/npm-run-all/index.js",
@@ -4208,8 +4196,8 @@
4208
4196
  "run-s": "bin/run-s/index.js"
4209
4197
  },
4210
4198
  "engines": {
4211
- "node": "^14.18.0 || ^16.13.0 || >=18.0.0",
4212
- "npm": ">= 8"
4199
+ "node": "^22.22.2 || ^24.15.0 || >=26.0.0",
4200
+ "npm": ">= 10"
4213
4201
  }
4214
4202
  },
4215
4203
  "node_modules/npm-run-all2/node_modules/ansi-styles": {
@@ -4225,20 +4213,30 @@
4225
4213
  "url": "https://github.com/chalk/ansi-styles?sponsor=1"
4226
4214
  }
4227
4215
  },
4216
+ "node_modules/npm-run-all2/node_modules/isexe": {
4217
+ "version": "4.0.0",
4218
+ "resolved": "https://registry.npmjs.org/isexe/-/isexe-4.0.0.tgz",
4219
+ "integrity": "sha512-FFUtZMpoZ8RqHS3XeXEmHWLA4thH+ZxCv2lOiPIn1Xc7CxrqhWzNSDzD+/chS/zbYezmiwWLdQC09JdQKmthOw==",
4220
+ "dev": true,
4221
+ "license": "BlueOak-1.0.0",
4222
+ "engines": {
4223
+ "node": ">=20"
4224
+ }
4225
+ },
4228
4226
  "node_modules/npm-run-all2/node_modules/which": {
4229
- "version": "3.0.1",
4230
- "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz",
4231
- "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==",
4227
+ "version": "7.0.0",
4228
+ "resolved": "https://registry.npmjs.org/which/-/which-7.0.0.tgz",
4229
+ "integrity": "sha512-RancgH2dmbLdHl6LRhEqvklWMgl/Hdnun0Y90KhBOLkMefg8Qa7/Zel8Sm+8HEcP6DEjzsWzpkuBQEZok58isA==",
4232
4230
  "dev": true,
4233
4231
  "license": "ISC",
4234
4232
  "dependencies": {
4235
- "isexe": "^2.0.0"
4233
+ "isexe": "^4.0.0"
4236
4234
  },
4237
4235
  "bin": {
4238
4236
  "node-which": "bin/which.js"
4239
4237
  },
4240
4238
  "engines": {
4241
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
4239
+ "node": "^22.22.2 || ^24.15.0 || >=26.0.0"
4242
4240
  }
4243
4241
  },
4244
4242
  "node_modules/nth-check": {
@@ -4730,17 +4728,17 @@
4730
4728
  }
4731
4729
  },
4732
4730
  "node_modules/read-package-json-fast": {
4733
- "version": "3.0.2",
4734
- "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-3.0.2.tgz",
4735
- "integrity": "sha512-0J+Msgym3vrLOUB3hzQCuZHII0xkNGCtz/HJH9xZshwv9DbDwkw1KaE3gx/e2J5rpEY5rtOy6cyhKOPrkP7FZw==",
4731
+ "version": "6.0.0",
4732
+ "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-6.0.0.tgz",
4733
+ "integrity": "sha512-PNaGjoCnw9DBA2Kl8D+8po957z778q/HOPuY2u3Bkw/JO3eC8MDx7jn/PgMtSgpcBbs+6UOjDbwReGpXmRvs0g==",
4736
4734
  "dev": true,
4737
4735
  "license": "ISC",
4738
4736
  "dependencies": {
4739
- "json-parse-even-better-errors": "^3.0.0",
4740
- "npm-normalize-package-bin": "^3.0.0"
4737
+ "json-parse-even-better-errors": "^6.0.0",
4738
+ "npm-normalize-package-bin": "^6.0.0"
4741
4739
  },
4742
4740
  "engines": {
4743
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
4741
+ "node": "^22.22.2 || ^24.15.0 || >=26.0.0"
4744
4742
  }
4745
4743
  },
4746
4744
  "node_modules/readdirp": {
@@ -4901,15 +4899,16 @@
4901
4899
  }
4902
4900
  },
4903
4901
  "node_modules/sanitize-html": {
4904
- "version": "2.17.1",
4905
- "resolved": "https://registry.npmjs.org/sanitize-html/-/sanitize-html-2.17.1.tgz",
4906
- "integrity": "sha512-ehFCW+q1a4CSOWRAdX97BX/6/PDEkCqw7/0JXZAGQV57FQB3YOkTa/rrzHPeJ+Aghy4vZAFfWMYyfxIiB7F/gw==",
4902
+ "version": "2.17.4",
4903
+ "resolved": "https://registry.npmjs.org/sanitize-html/-/sanitize-html-2.17.4.tgz",
4904
+ "integrity": "sha512-2HW7v2ol/uAM7sX4hbD8Z59OGWmAPrvjL8E71UWlBcj6m+kcF6ilQBLny+cIgY214QJeJT5tQuxKKqX0SQqjGQ==",
4907
4905
  "license": "MIT",
4908
4906
  "dependencies": {
4909
4907
  "deepmerge": "^4.2.2",
4910
4908
  "escape-string-regexp": "^4.0.0",
4911
- "htmlparser2": "^8.0.0",
4909
+ "htmlparser2": "^10.1.0",
4912
4910
  "is-plain-object": "^5.0.0",
4911
+ "launder": "^1.7.1",
4913
4912
  "parse-srcset": "^1.0.2",
4914
4913
  "postcss": "^8.3.11"
4915
4914
  }
@@ -12,6 +12,11 @@
12
12
  "lint": "eslint . --ext .vue,.js,.jsx,.cjs,.mjs,.ts,.tsx,.cts,.mts --fix --ignore-path .gitignore",
13
13
  "i18n:extract": "echo {} > i18n-empty.json && vue-i18n-extract report --vueFiles \"./src/**/*.{js,vue,ts}\" --output ./i18n-messages.json --languageFiles \"i18n-empty.json\" --add"
14
14
  },
15
+ "pnpm": {
16
+ "overrides": {
17
+ "shell-quote": "^1.8.4"
18
+ }
19
+ },
15
20
  "dependencies": {
16
21
  "@iconify-prerendered/vue-flag": "^0.28.1748584105",
17
22
  "@iconify-prerendered/vue-flowbite": "^0.28.1754899090",
@@ -53,7 +58,7 @@
53
58
  "flag-icons": "^7.2.3",
54
59
  "flowbite": "^3.1.2",
55
60
  "i18n-iso-countries": "^7.12.0",
56
- "npm-run-all2": "^6.1.2",
61
+ "npm-run-all2": "^9.0.1",
57
62
  "portfinder": "^1.0.32",
58
63
  "postcss": "^8.4.38",
59
64
  "sass": "^1.77.2",
@@ -4,6 +4,9 @@ settings:
4
4
  autoInstallPeers: true
5
5
  excludeLinksFromLockfile: false
6
6
 
7
+ overrides:
8
+ shell-quote: ^1.8.4
9
+
7
10
  importers:
8
11
 
9
12
  .:
@@ -124,8 +127,8 @@ importers:
124
127
  specifier: ^7.12.0
125
128
  version: 7.14.0
126
129
  npm-run-all2:
127
- specifier: ^6.1.2
128
- version: 6.2.6
130
+ specifier: ^9.0.1
131
+ version: 9.0.1
129
132
  portfinder:
130
133
  specifier: ^1.0.32
131
134
  version: 1.0.38
@@ -429,36 +432,42 @@ packages:
429
432
  engines: {node: '>= 10.0.0'}
430
433
  cpu: [arm]
431
434
  os: [linux]
435
+ libc: [glibc]
432
436
 
433
437
  '@parcel/watcher-linux-arm-musl@2.5.6':
434
438
  resolution: {integrity: sha512-Ve3gUCG57nuUUSyjBq/MAM0CzArtuIOxsBdQ+ftz6ho8n7s1i9E1Nmk/xmP323r2YL0SONs1EuwqBp2u1k5fxg==}
435
439
  engines: {node: '>= 10.0.0'}
436
440
  cpu: [arm]
437
441
  os: [linux]
442
+ libc: [musl]
438
443
 
439
444
  '@parcel/watcher-linux-arm64-glibc@2.5.6':
440
445
  resolution: {integrity: sha512-f2g/DT3NhGPdBmMWYoxixqYr3v/UXcmLOYy16Bx0TM20Tchduwr4EaCbmxh1321TABqPGDpS8D/ggOTaljijOA==}
441
446
  engines: {node: '>= 10.0.0'}
442
447
  cpu: [arm64]
443
448
  os: [linux]
449
+ libc: [glibc]
444
450
 
445
451
  '@parcel/watcher-linux-arm64-musl@2.5.6':
446
452
  resolution: {integrity: sha512-qb6naMDGlbCwdhLj6hgoVKJl2odL34z2sqkC7Z6kzir8b5W65WYDpLB6R06KabvZdgoHI/zxke4b3zR0wAbDTA==}
447
453
  engines: {node: '>= 10.0.0'}
448
454
  cpu: [arm64]
449
455
  os: [linux]
456
+ libc: [musl]
450
457
 
451
458
  '@parcel/watcher-linux-x64-glibc@2.5.6':
452
459
  resolution: {integrity: sha512-kbT5wvNQlx7NaGjzPFu8nVIW1rWqV780O7ZtkjuWaPUgpv2NMFpjYERVi0UYj1msZNyCzGlaCWEtzc+exjMGbQ==}
453
460
  engines: {node: '>= 10.0.0'}
454
461
  cpu: [x64]
455
462
  os: [linux]
463
+ libc: [glibc]
456
464
 
457
465
  '@parcel/watcher-linux-x64-musl@2.5.6':
458
466
  resolution: {integrity: sha512-1JRFeC+h7RdXwldHzTsmdtYR/Ku8SylLgTU/reMuqdVD7CtLwf0VR1FqeprZ0eHQkO0vqsbvFLXUmYm/uNKJBg==}
459
467
  engines: {node: '>= 10.0.0'}
460
468
  cpu: [x64]
461
469
  os: [linux]
470
+ libc: [musl]
462
471
 
463
472
  '@parcel/watcher-win32-arm64@2.5.6':
464
473
  resolution: {integrity: sha512-3ukyebjc6eGlw9yRt678DxVF7rjXatWiHvTXqphZLvo7aC5NdEgFufVwjFfY51ijYEWpXbqF5jtrK275z52D4Q==}
@@ -537,66 +546,79 @@ packages:
537
546
  resolution: {integrity: sha512-2QxQrM+KQ7DAW4o22j+XZ6RKdxjLD7BOWTP0Bv0tmjdyhXSsr2Ul1oJDQqh9Zf5qOwTuTc7Ek83mOFaKnodPjg==}
538
547
  cpu: [arm]
539
548
  os: [linux]
549
+ libc: [glibc]
540
550
 
541
551
  '@rollup/rollup-linux-arm-musleabihf@4.60.2':
542
552
  resolution: {integrity: sha512-TbziEu2DVsTEOPif2mKWkMeDMLoYjx95oESa9fkQQK7r/Orta0gnkcDpzwufEcAO2BLBsD7mZkXGFqEdMRRwfw==}
543
553
  cpu: [arm]
544
554
  os: [linux]
555
+ libc: [musl]
545
556
 
546
557
  '@rollup/rollup-linux-arm64-gnu@4.60.2':
547
558
  resolution: {integrity: sha512-bO/rVDiDUuM2YfuCUwZ1t1cP+/yqjqz+Xf2VtkdppefuOFS2OSeAfgafaHNkFn0t02hEyXngZkxtGqXcXwO8Rg==}
548
559
  cpu: [arm64]
549
560
  os: [linux]
561
+ libc: [glibc]
550
562
 
551
563
  '@rollup/rollup-linux-arm64-musl@4.60.2':
552
564
  resolution: {integrity: sha512-hr26p7e93Rl0Za+JwW7EAnwAvKkehh12BU1Llm9Ykiibg4uIr2rbpxG9WCf56GuvidlTG9KiiQT/TXT1yAWxTA==}
553
565
  cpu: [arm64]
554
566
  os: [linux]
567
+ libc: [musl]
555
568
 
556
569
  '@rollup/rollup-linux-loong64-gnu@4.60.2':
557
570
  resolution: {integrity: sha512-pOjB/uSIyDt+ow3k/RcLvUAOGpysT2phDn7TTUB3n75SlIgZzM6NKAqlErPhoFU+npgY3/n+2HYIQVbF70P9/A==}
558
571
  cpu: [loong64]
559
572
  os: [linux]
573
+ libc: [glibc]
560
574
 
561
575
  '@rollup/rollup-linux-loong64-musl@4.60.2':
562
576
  resolution: {integrity: sha512-2/w+q8jszv9Ww1c+6uJT3OwqhdmGP2/4T17cu8WuwyUuuaCDDJ2ojdyYwZzCxx0GcsZBhzi3HmH+J5pZNXnd+Q==}
563
577
  cpu: [loong64]
564
578
  os: [linux]
579
+ libc: [musl]
565
580
 
566
581
  '@rollup/rollup-linux-ppc64-gnu@4.60.2':
567
582
  resolution: {integrity: sha512-11+aL5vKheYgczxtPVVRhdptAM2H7fcDR5Gw4/bTcteuZBlH4oP9f5s9zYO9aGZvoGeBpqXI/9TZZihZ609wKw==}
568
583
  cpu: [ppc64]
569
584
  os: [linux]
585
+ libc: [glibc]
570
586
 
571
587
  '@rollup/rollup-linux-ppc64-musl@4.60.2':
572
588
  resolution: {integrity: sha512-i16fokAGK46IVZuV8LIIwMdtqhin9hfYkCh8pf8iC3QU3LpwL+1FSFGej+O7l3E/AoknL6Dclh2oTdnRMpTzFQ==}
573
589
  cpu: [ppc64]
574
590
  os: [linux]
591
+ libc: [musl]
575
592
 
576
593
  '@rollup/rollup-linux-riscv64-gnu@4.60.2':
577
594
  resolution: {integrity: sha512-49FkKS6RGQoriDSK/6E2GkAsAuU5kETFCh7pG4yD/ylj9rKhTmO3elsnmBvRD4PgJPds5W2PkhC82aVwmUcJ7A==}
578
595
  cpu: [riscv64]
579
596
  os: [linux]
597
+ libc: [glibc]
580
598
 
581
599
  '@rollup/rollup-linux-riscv64-musl@4.60.2':
582
600
  resolution: {integrity: sha512-mjYNkHPfGpUR00DuM1ZZIgs64Hpf4bWcz9Z41+4Q+pgDx73UwWdAYyf6EG/lRFldmdHHzgrYyge5akFUW0D3mQ==}
583
601
  cpu: [riscv64]
584
602
  os: [linux]
603
+ libc: [musl]
585
604
 
586
605
  '@rollup/rollup-linux-s390x-gnu@4.60.2':
587
606
  resolution: {integrity: sha512-ALyvJz965BQk8E9Al/JDKKDLH2kfKFLTGMlgkAbbYtZuJt9LU8DW3ZoDMCtQpXAltZxwBHevXz5u+gf0yA0YoA==}
588
607
  cpu: [s390x]
589
608
  os: [linux]
609
+ libc: [glibc]
590
610
 
591
611
  '@rollup/rollup-linux-x64-gnu@4.60.2':
592
612
  resolution: {integrity: sha512-UQjrkIdWrKI626Du8lCQ6MJp/6V1LAo2bOK9OTu4mSn8GGXIkPXk/Vsp4bLHCd9Z9Iz2OTEaokUE90VweJgIYQ==}
593
613
  cpu: [x64]
594
614
  os: [linux]
615
+ libc: [glibc]
595
616
 
596
617
  '@rollup/rollup-linux-x64-musl@4.60.2':
597
618
  resolution: {integrity: sha512-bTsRGj6VlSdn/XD4CGyzMnzaBs9bsRxy79eTqTCBsA8TMIEky7qg48aPkvJvFe1HyzQ5oMZdg7AnVlWQSKLTnw==}
598
619
  cpu: [x64]
599
620
  os: [linux]
621
+ libc: [musl]
600
622
 
601
623
  '@rollup/rollup-openbsd-x64@4.60.2':
602
624
  resolution: {integrity: sha512-6d4Z3534xitaA1FcMWP7mQPq5zGwBmGbhphh2DwaA1aNIXUu3KTOfwrWpbwI4/Gr0uANo7NTtaykFyO2hPuFLg==}
@@ -1364,6 +1386,10 @@ packages:
1364
1386
  isexe@2.0.0:
1365
1387
  resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
1366
1388
 
1389
+ isexe@4.0.0:
1390
+ resolution: {integrity: sha512-FFUtZMpoZ8RqHS3XeXEmHWLA4thH+ZxCv2lOiPIn1Xc7CxrqhWzNSDzD+/chS/zbYezmiwWLdQC09JdQKmthOw==}
1391
+ engines: {node: '>=20'}
1392
+
1367
1393
  javascript-time-ago@2.6.4:
1368
1394
  resolution: {integrity: sha512-7K/Z37LuwVaxxjutUDd1pXpznufPcox0b1UYu00ksAMMlV6IsxIvduwL3kgfPxuBVF8jVj7nhrKMPDslMq94aQ==}
1369
1395
 
@@ -1378,9 +1404,9 @@ packages:
1378
1404
  json-buffer@3.0.1:
1379
1405
  resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==}
1380
1406
 
1381
- json-parse-even-better-errors@3.0.2:
1382
- resolution: {integrity: sha512-fi0NG4bPjCHunUJffmLd0gxssIgkNmArMvis4iNah6Owg1MCJjWhEcDLmsK6iGkJq3tHwbDkTlce70/tmXN4cQ==}
1383
- engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
1407
+ json-parse-even-better-errors@6.0.0:
1408
+ resolution: {integrity: sha512-2/8adwnK1/+Fdjyts4r6wSpfANWw8zdNhU9U/Llk59c6O+DjSisPWPykwoL8gZmocP9Dy64S7oie2g+Mia123A==}
1409
+ engines: {node: ^22.22.2 || ^24.15.0 || >=26.0.0}
1384
1410
 
1385
1411
  json-schema-traverse@0.4.1:
1386
1412
  resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==}
@@ -1478,13 +1504,13 @@ packages:
1478
1504
  resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==}
1479
1505
  engines: {node: '>=0.10.0'}
1480
1506
 
1481
- npm-normalize-package-bin@3.0.1:
1482
- resolution: {integrity: sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ==}
1483
- engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
1507
+ npm-normalize-package-bin@6.0.0:
1508
+ resolution: {integrity: sha512-tdt4aFn9QamlhdN3HV2D2ccpBwO5/fyjjbXUxYA6uBjyekMZcZvDq0aSj9t5Jo+tih6AYFnt/cuIRn9013e0Uw==}
1509
+ engines: {node: ^22.22.2 || ^24.15.0 || >=26.0.0}
1484
1510
 
1485
- npm-run-all2@6.2.6:
1486
- resolution: {integrity: sha512-tkyb4pc0Zb0oOswCb5tORPk9MvVL6gcDq1cMItQHmsbVk1skk7YF6cH+UU2GxeNLHMuk6wFEOSmEmJ2cnAK1jg==}
1487
- engines: {node: ^14.18.0 || ^16.13.0 || >=18.0.0, npm: '>= 8'}
1511
+ npm-run-all2@9.0.1:
1512
+ resolution: {integrity: sha512-ZtK8WXZBUA9x0XD6nxYdFLe86FxpkCTq2LiQxzX0LeXQY/vyAigQZXjjj/xfTwgV4Yqe/vYNIq2W09lrHKTcuQ==}
1513
+ engines: {node: ^22.22.2 || ^24.15.0 || >=26.0.0, npm: '>= 10'}
1488
1514
  hasBin: true
1489
1515
 
1490
1516
  nth-check@2.1.1:
@@ -1647,9 +1673,9 @@ packages:
1647
1673
  read-cache@1.0.0:
1648
1674
  resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==}
1649
1675
 
1650
- read-package-json-fast@3.0.2:
1651
- resolution: {integrity: sha512-0J+Msgym3vrLOUB3hzQCuZHII0xkNGCtz/HJH9xZshwv9DbDwkw1KaE3gx/e2J5rpEY5rtOy6cyhKOPrkP7FZw==}
1652
- engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
1676
+ read-package-json-fast@6.0.0:
1677
+ resolution: {integrity: sha512-PNaGjoCnw9DBA2Kl8D+8po957z778q/HOPuY2u3Bkw/JO3eC8MDx7jn/PgMtSgpcBbs+6UOjDbwReGpXmRvs0g==}
1678
+ engines: {node: ^22.22.2 || ^24.15.0 || >=26.0.0}
1653
1679
 
1654
1680
  readdirp@3.6.0:
1655
1681
  resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==}
@@ -1716,8 +1742,8 @@ packages:
1716
1742
  resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==}
1717
1743
  engines: {node: '>=8'}
1718
1744
 
1719
- shell-quote@1.8.3:
1720
- resolution: {integrity: sha512-ObmnIF4hXNg1BqhnHmgbDETF8dLPCggZWBjkQfhZpbszZnYur5DUljTcCHii5LC3J5E0yeO/1LIMyH+UvHQgyw==}
1745
+ shell-quote@1.8.4:
1746
+ resolution: {integrity: sha512-VsC6n6vz1ihYYyZZwX7YZSF5l5x36ca17OC+a69h94YqB7X6XLwf+5MOgynYir2SLFUbl8gIYvBo8K8RoNQ6bQ==}
1721
1747
  engines: {node: '>= 0.4'}
1722
1748
 
1723
1749
  slash@3.0.0:
@@ -1912,9 +1938,9 @@ packages:
1912
1938
  engines: {node: '>= 8'}
1913
1939
  hasBin: true
1914
1940
 
1915
- which@3.0.1:
1916
- resolution: {integrity: sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==}
1917
- engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
1941
+ which@7.0.0:
1942
+ resolution: {integrity: sha512-RancgH2dmbLdHl6LRhEqvklWMgl/Hdnun0Y90KhBOLkMefg8Qa7/Zel8Sm+8HEcP6DEjzsWzpkuBQEZok58isA==}
1943
+ engines: {node: ^22.22.2 || ^24.15.0 || >=26.0.0}
1918
1944
  hasBin: true
1919
1945
 
1920
1946
  word-wrap@1.2.5:
@@ -3096,6 +3122,8 @@ snapshots:
3096
3122
 
3097
3123
  isexe@2.0.0: {}
3098
3124
 
3125
+ isexe@4.0.0: {}
3126
+
3099
3127
  javascript-time-ago@2.6.4:
3100
3128
  dependencies:
3101
3129
  relative-time-format: 1.1.12
@@ -3108,7 +3136,7 @@ snapshots:
3108
3136
 
3109
3137
  json-buffer@3.0.1: {}
3110
3138
 
3111
- json-parse-even-better-errors@3.0.2: {}
3139
+ json-parse-even-better-errors@6.0.0: {}
3112
3140
 
3113
3141
  json-schema-traverse@0.4.1: {}
3114
3142
 
@@ -3191,18 +3219,18 @@ snapshots:
3191
3219
 
3192
3220
  normalize-path@3.0.0: {}
3193
3221
 
3194
- npm-normalize-package-bin@3.0.1: {}
3222
+ npm-normalize-package-bin@6.0.0: {}
3195
3223
 
3196
- npm-run-all2@6.2.6:
3224
+ npm-run-all2@9.0.1:
3197
3225
  dependencies:
3198
3226
  ansi-styles: 6.2.3
3199
3227
  cross-spawn: 7.0.6
3200
3228
  memorystream: 0.3.1
3201
- minimatch: 9.0.9
3229
+ picomatch: 4.0.4
3202
3230
  pidtree: 0.6.0
3203
- read-package-json-fast: 3.0.2
3204
- shell-quote: 1.8.3
3205
- which: 3.0.1
3231
+ read-package-json-fast: 6.0.0
3232
+ shell-quote: 1.8.4
3233
+ which: 7.0.0
3206
3234
 
3207
3235
  nth-check@2.1.1:
3208
3236
  dependencies:
@@ -3334,10 +3362,10 @@ snapshots:
3334
3362
  dependencies:
3335
3363
  pify: 2.3.0
3336
3364
 
3337
- read-package-json-fast@3.0.2:
3365
+ read-package-json-fast@6.0.0:
3338
3366
  dependencies:
3339
- json-parse-even-better-errors: 3.0.2
3340
- npm-normalize-package-bin: 3.0.1
3367
+ json-parse-even-better-errors: 6.0.0
3368
+ npm-normalize-package-bin: 6.0.0
3341
3369
 
3342
3370
  readdirp@3.6.0:
3343
3371
  dependencies:
@@ -3427,7 +3455,7 @@ snapshots:
3427
3455
 
3428
3456
  shebang-regex@3.0.0: {}
3429
3457
 
3430
- shell-quote@1.8.3: {}
3458
+ shell-quote@1.8.4: {}
3431
3459
 
3432
3460
  slash@3.0.0: {}
3433
3461
 
@@ -3624,9 +3652,9 @@ snapshots:
3624
3652
  dependencies:
3625
3653
  isexe: 2.0.0
3626
3654
 
3627
- which@3.0.1:
3655
+ which@7.0.0:
3628
3656
  dependencies:
3629
- isexe: 2.0.0
3657
+ isexe: 4.0.0
3630
3658
 
3631
3659
  word-wrap@1.2.5: {}
3632
3660
 
@@ -273,8 +273,10 @@ export interface IAdminForthDataSourceConnector {
273
273
  /**
274
274
  * Function to setup client connection to database.
275
275
  * @param url URL to database. Examples: clickhouse://demo:demo@localhost:8125/demo
276
+ * @param options Optional connection options. `recovery` mirrors the dataSource
277
+ * `connectionRecovery` flag (defaults to true when omitted).
276
278
  */
277
- setupClient(url: string): Promise<void>;
279
+ setupClient(url: string, options?: { recovery?: boolean }): Promise<void>;
278
280
 
279
281
  /**
280
282
  * Function to get all tables from database.
@@ -1245,6 +1247,19 @@ export type AdminForthDataSource = {
1245
1247
  * - SQLite: `sqlite://<path>`
1246
1248
  */
1247
1249
  url: string,
1250
+
1251
+ /**
1252
+ * Controls how the connector reacts to a dropped database connection.
1253
+ * Currently honored by the PostgreSQL connector.
1254
+ *
1255
+ * - `true` (default): self-heal mode. The connection pool recovers automatically — when an
1256
+ * idle connection dies (DB restart, failover, network blip, etc.) it is dropped and a fresh
1257
+ * one is opened on the next query, so the app keeps working without a manual restart.
1258
+ * - `false`: legacy mode. On a connection error the pool is destroyed and recreated after 1s.
1259
+ * If the outage outlasts that retry the app can be left with a permanently dead pool and
1260
+ * require a manual restart. Kept only for backward compatibility.
1261
+ */
1262
+ connectionRecovery?: boolean,
1248
1263
  }
1249
1264
 
1250
1265
  type AdminForthPageDeclaration = {
@@ -216,8 +216,12 @@ export interface IAdminForthDataSourceConnector {
216
216
  /**
217
217
  * Function to setup client connection to database.
218
218
  * @param url URL to database. Examples: clickhouse://demo:demo@localhost:8125/demo
219
+ * @param options Optional connection options. `recovery` mirrors the dataSource
220
+ * `connectionRecovery` flag (defaults to true when omitted).
219
221
  */
220
- setupClient(url: string): Promise<void>;
222
+ setupClient(url: string, options?: {
223
+ recovery?: boolean;
224
+ }): Promise<void>;
221
225
  /**
222
226
  * Function to get all tables from database.
223
227
  */
@@ -1162,6 +1166,18 @@ export type AdminForthDataSource = {
1162
1166
  * - SQLite: `sqlite://<path>`
1163
1167
  */
1164
1168
  url: string;
1169
+ /**
1170
+ * Controls how the connector reacts to a dropped database connection.
1171
+ * Currently honored by the PostgreSQL connector.
1172
+ *
1173
+ * - `true` (default): self-heal mode. The connection pool recovers automatically — when an
1174
+ * idle connection dies (DB restart, failover, network blip, etc.) it is dropped and a fresh
1175
+ * one is opened on the next query, so the app keeps working without a manual restart.
1176
+ * - `false`: legacy mode. On a connection error the pool is destroyed and recreated after 1s.
1177
+ * If the outage outlasts that retry the app can be left with a permanently dead pool and
1178
+ * require a manual restart. Kept only for backward compatibility.
1179
+ */
1180
+ connectionRecovery?: boolean;
1165
1181
  };
1166
1182
  type AdminForthPageDeclaration = {
1167
1183
  path: string;