@axium/server 0.22.13 → 0.23.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.
- package/build/client/_app/immutable/chunks/{XdRahthI.js → B1E1cVbi.js} +1 -1
- package/build/client/_app/immutable/chunks/B1E1cVbi.js.br +0 -0
- package/build/client/_app/immutable/chunks/B1E1cVbi.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{Dext3JFj.js → Ci6FLQWx.js} +1 -1
- package/build/client/_app/immutable/chunks/Ci6FLQWx.js.br +0 -0
- package/build/client/_app/immutable/chunks/Ci6FLQWx.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DJeR1n-B.js +51 -0
- package/build/client/_app/immutable/chunks/DJeR1n-B.js.br +0 -0
- package/build/client/_app/immutable/chunks/DJeR1n-B.js.gz +0 -0
- package/build/client/_app/immutable/entry/{app.C5LuJT06.js → app.DajZ-3z_.js} +2 -2
- package/build/client/_app/immutable/entry/app.DajZ-3z_.js.br +0 -0
- package/build/client/_app/immutable/entry/app.DajZ-3z_.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.CjB-0vPC.js +1 -0
- package/build/client/_app/immutable/entry/start.CjB-0vPC.js.br +2 -0
- package/build/client/_app/immutable/entry/start.CjB-0vPC.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{1.BAsobPu4.js → 1.Bvl_5X3J.js} +1 -1
- package/build/client/_app/immutable/nodes/1.Bvl_5X3J.js.br +0 -0
- package/build/client/_app/immutable/nodes/1.Bvl_5X3J.js.gz +0 -0
- package/build/client/_app/immutable/nodes/3.CVudd8x2.js +7 -0
- package/build/client/_app/immutable/nodes/3.CVudd8x2.js.br +0 -0
- package/build/client/_app/immutable/nodes/3.CVudd8x2.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{4.eINJOagY.js → 4.Dhj0R0r7.js} +1 -1
- package/build/client/_app/immutable/nodes/4.Dhj0R0r7.js.br +0 -0
- package/build/client/_app/immutable/nodes/4.Dhj0R0r7.js.gz +0 -0
- package/build/client/_app/immutable/nodes/5.CGoBaVII.js +1 -0
- package/build/client/_app/immutable/nodes/5.CGoBaVII.js.br +0 -0
- package/build/client/_app/immutable/nodes/5.CGoBaVII.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{6.BbgUOuKV.js → 6.BtB2uWXy.js} +1 -1
- package/build/client/_app/immutable/nodes/6.BtB2uWXy.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.BtB2uWXy.js.gz +0 -0
- package/build/client/_app/version.json +1 -1
- package/build/client/_app/version.json.br +0 -0
- package/build/client/_app/version.json.gz +0 -0
- package/build/server/chunks/{1-5bszWZCQ.js → 1-C1tGJX1L.js} +2 -2
- package/build/server/chunks/{1-5bszWZCQ.js.map → 1-C1tGJX1L.js.map} +1 -1
- package/build/server/chunks/{3-CGyRgNsB.js → 3-Ds69w-dU.js} +3 -3
- package/build/server/chunks/{3-CGyRgNsB.js.map → 3-Ds69w-dU.js.map} +1 -1
- package/build/server/chunks/{4-BuMxaapL.js → 4-BscEiwUk.js} +3 -3
- package/build/server/chunks/{4-BuMxaapL.js.map → 4-BscEiwUk.js.map} +1 -1
- package/build/server/chunks/{5-BhHQT7ic.js → 5-H0ePIJBE.js} +3 -3
- package/build/server/chunks/{5-BhHQT7ic.js.map → 5-H0ePIJBE.js.map} +1 -1
- package/build/server/chunks/{6-Do2XsDIk.js → 6-BrPpcagX.js} +3 -3
- package/build/server/chunks/{6-Do2XsDIk.js.map → 6-BrPpcagX.js.map} +1 -1
- package/build/server/chunks/{FormDialog-BemX_bll.js → FormDialog-CB-2YGWi.js} +29 -26
- package/build/server/chunks/{FormDialog-BemX_bll.js.map → FormDialog-CB-2YGWi.js.map} +1 -1
- package/build/server/chunks/{Logout-BhQS74v2.js → Logout-LKOt-AST.js} +2 -2
- package/build/server/chunks/{Logout-BhQS74v2.js.map → Logout-LKOt-AST.js.map} +1 -1
- package/build/server/chunks/_page.svelte-B1LK5J87.js +11 -0
- package/build/server/chunks/{_page.svelte-BdL0IPY2.js.map → _page.svelte-B1LK5J87.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-Q_wBpED1.js → _page.svelte-CMtkwvbP.js} +3 -3
- package/build/server/chunks/{_page.svelte-Q_wBpED1.js.map → _page.svelte-CMtkwvbP.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-Cw9An0SZ.js → _page.svelte-CbI2KxeA.js} +3 -3
- package/build/server/chunks/{_page.svelte-Cw9An0SZ.js.map → _page.svelte-CbI2KxeA.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-D6BUZio7.js → _page.svelte-dZWfu9yR.js} +7 -4
- package/build/server/chunks/_page.svelte-dZWfu9yR.js.map +1 -0
- package/build/server/chunks/{hooks.server-B7iBt6uC.js → hooks.server-BBmyHiWm.js} +169 -152
- package/build/server/chunks/hooks.server-BBmyHiWm.js.map +1 -0
- package/build/server/chunks/{index-wXTeP1jh.js → index-CvHf_GW2.js} +257 -275
- package/build/server/chunks/index-CvHf_GW2.js.map +1 -0
- package/build/server/index.js +3 -3
- package/build/server/index.js.map +1 -1
- package/build/server/manifest.js +6 -6
- package/build/server/manifest.js.map +1 -1
- package/dist/api/metadata.js +3 -4
- package/dist/api/passkeys.js +1 -1
- package/dist/api/register.js +3 -3
- package/dist/api/users.js +5 -4
- package/dist/apps.d.ts +1 -4
- package/dist/apps.js +0 -5
- package/dist/auth.d.ts +1 -3
- package/dist/auth.js +1 -1
- package/dist/config.d.ts +6 -6
- package/dist/plugins.d.ts +12 -0
- package/dist/plugins.js +8 -0
- package/dist/requests.js +4 -2
- package/package.json +2 -2
- package/web/template.html +0 -3
- package/build/client/_app/immutable/chunks/CiUsfGrc.js +0 -43
- package/build/client/_app/immutable/chunks/CiUsfGrc.js.br +0 -0
- package/build/client/_app/immutable/chunks/CiUsfGrc.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Dext3JFj.js.br +0 -0
- package/build/client/_app/immutable/chunks/Dext3JFj.js.gz +0 -0
- package/build/client/_app/immutable/chunks/XdRahthI.js.br +0 -0
- package/build/client/_app/immutable/chunks/XdRahthI.js.gz +0 -0
- package/build/client/_app/immutable/entry/app.C5LuJT06.js.br +0 -0
- package/build/client/_app/immutable/entry/app.C5LuJT06.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.BQJupvGE.js +0 -1
- package/build/client/_app/immutable/entry/start.BQJupvGE.js.br +0 -2
- package/build/client/_app/immutable/entry/start.BQJupvGE.js.gz +0 -0
- package/build/client/_app/immutable/nodes/1.BAsobPu4.js.br +0 -0
- package/build/client/_app/immutable/nodes/1.BAsobPu4.js.gz +0 -0
- package/build/client/_app/immutable/nodes/3.C18mc0nK.js +0 -7
- package/build/client/_app/immutable/nodes/3.C18mc0nK.js.br +0 -0
- package/build/client/_app/immutable/nodes/3.C18mc0nK.js.gz +0 -0
- package/build/client/_app/immutable/nodes/4.eINJOagY.js.br +0 -0
- package/build/client/_app/immutable/nodes/4.eINJOagY.js.gz +0 -0
- package/build/client/_app/immutable/nodes/5.DITFCLgK.js +0 -1
- package/build/client/_app/immutable/nodes/5.DITFCLgK.js.br +0 -0
- package/build/client/_app/immutable/nodes/5.DITFCLgK.js.gz +0 -0
- package/build/client/_app/immutable/nodes/6.BbgUOuKV.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.BbgUOuKV.js.gz +0 -0
- package/build/server/chunks/_page.svelte-BdL0IPY2.js +0 -11
- package/build/server/chunks/_page.svelte-D6BUZio7.js.map +0 -1
- package/build/server/chunks/hooks.server-B7iBt6uC.js.map +0 -1
- package/build/server/chunks/index-wXTeP1jh.js.map +0 -1
package/build/server/manifest.js
CHANGED
|
@@ -10,15 +10,15 @@ return {
|
|
|
10
10
|
assets: new Set(["icons/brands.svg","icons/light.svg","icons/regular.svg","icons/solid.svg","styles.css","theme.css"]),
|
|
11
11
|
mimeTypes: {".svg":"image/svg+xml",".css":"text/css"},
|
|
12
12
|
_: {
|
|
13
|
-
client: {start:"_app/immutable/entry/start.
|
|
13
|
+
client: {start:"_app/immutable/entry/start.CjB-0vPC.js",app:"_app/immutable/entry/app.DajZ-3z_.js",imports:["_app/immutable/entry/start.CjB-0vPC.js","_app/immutable/chunks/Ci6FLQWx.js","_app/immutable/chunks/D4Bce_hb.js","_app/immutable/chunks/D9TfJrfD.js","_app/immutable/chunks/Dy1O3iBu.js","_app/immutable/chunks/D3hk2v8y.js","_app/immutable/entry/app.DajZ-3z_.js","_app/immutable/chunks/D9TfJrfD.js","_app/immutable/chunks/Dy1O3iBu.js","_app/immutable/chunks/DsnmJJEf.js","_app/immutable/chunks/D4Bce_hb.js","_app/immutable/chunks/D3hk2v8y.js","_app/immutable/chunks/pba7IodQ.js"],stylesheets:[],fonts:[],uses_env_dynamic_public:false},
|
|
14
14
|
nodes: [
|
|
15
15
|
__memo(() => import('./chunks/0-DgHTujtC.js')),
|
|
16
|
-
__memo(() => import('./chunks/1-
|
|
16
|
+
__memo(() => import('./chunks/1-C1tGJX1L.js')),
|
|
17
17
|
__memo(() => import('./chunks/2-CXlrhpR6.js')),
|
|
18
|
-
__memo(() => import('./chunks/3-
|
|
19
|
-
__memo(() => import('./chunks/4-
|
|
20
|
-
__memo(() => import('./chunks/5-
|
|
21
|
-
__memo(() => import('./chunks/6-
|
|
18
|
+
__memo(() => import('./chunks/3-Ds69w-dU.js')),
|
|
19
|
+
__memo(() => import('./chunks/4-BscEiwUk.js')),
|
|
20
|
+
__memo(() => import('./chunks/5-H0ePIJBE.js')),
|
|
21
|
+
__memo(() => import('./chunks/6-BrPpcagX.js'))
|
|
22
22
|
],
|
|
23
23
|
remotes: {
|
|
24
24
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manifest.js","sources":["../../.svelte-kit/adapter-node/manifest.js"],"sourcesContent":["export const manifest = (() => {\nfunction __memo(fn) {\n\tlet value;\n\treturn () => value ??= (value = fn());\n}\n\nreturn {\n\tappDir: \"_app\",\n\tappPath: \"_app\",\n\tassets: new Set([\"icons/brands.svg\",\"icons/light.svg\",\"icons/regular.svg\",\"icons/solid.svg\",\"styles.css\",\"theme.css\"]),\n\tmimeTypes: {\".svg\":\"image/svg+xml\",\".css\":\"text/css\"},\n\t_: {\n\t\tclient: {start:\"_app/immutable/entry/start.
|
|
1
|
+
{"version":3,"file":"manifest.js","sources":["../../.svelte-kit/adapter-node/manifest.js"],"sourcesContent":["export const manifest = (() => {\nfunction __memo(fn) {\n\tlet value;\n\treturn () => value ??= (value = fn());\n}\n\nreturn {\n\tappDir: \"_app\",\n\tappPath: \"_app\",\n\tassets: new Set([\"icons/brands.svg\",\"icons/light.svg\",\"icons/regular.svg\",\"icons/solid.svg\",\"styles.css\",\"theme.css\"]),\n\tmimeTypes: {\".svg\":\"image/svg+xml\",\".css\":\"text/css\"},\n\t_: {\n\t\tclient: {start:\"_app/immutable/entry/start.CjB-0vPC.js\",app:\"_app/immutable/entry/app.DajZ-3z_.js\",imports:[\"_app/immutable/entry/start.CjB-0vPC.js\",\"_app/immutable/chunks/Ci6FLQWx.js\",\"_app/immutable/chunks/D4Bce_hb.js\",\"_app/immutable/chunks/D9TfJrfD.js\",\"_app/immutable/chunks/Dy1O3iBu.js\",\"_app/immutable/chunks/D3hk2v8y.js\",\"_app/immutable/entry/app.DajZ-3z_.js\",\"_app/immutable/chunks/D9TfJrfD.js\",\"_app/immutable/chunks/Dy1O3iBu.js\",\"_app/immutable/chunks/DsnmJJEf.js\",\"_app/immutable/chunks/D4Bce_hb.js\",\"_app/immutable/chunks/D3hk2v8y.js\",\"_app/immutable/chunks/pba7IodQ.js\"],stylesheets:[],fonts:[],uses_env_dynamic_public:false},\n\t\tnodes: [\n\t\t\t__memo(() => import('./nodes/0.js')),\n\t\t\t__memo(() => import('./nodes/1.js')),\n\t\t\t__memo(() => import('./nodes/2.js')),\n\t\t\t__memo(() => import('./nodes/3.js')),\n\t\t\t__memo(() => import('./nodes/4.js')),\n\t\t\t__memo(() => import('./nodes/5.js')),\n\t\t\t__memo(() => import('./nodes/6.js'))\n\t\t],\n\t\tremotes: {\n\t\t\t\n\t\t},\n\t\troutes: [\n\t\t\t{\n\t\t\t\tid: \"/_axium/default\",\n\t\t\t\tpattern: /^\\/_axium\\/default\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: { layouts: [0,], errors: [1,], leaf: 2 },\n\t\t\t\tendpoint: null\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/account\",\n\t\t\t\tpattern: /^\\/account\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: { layouts: [0,], errors: [1,], leaf: 3 },\n\t\t\t\tendpoint: null\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/login\",\n\t\t\t\tpattern: /^\\/login\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: { layouts: [0,], errors: [1,], leaf: 4 },\n\t\t\t\tendpoint: null\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/logout\",\n\t\t\t\tpattern: /^\\/logout\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: { layouts: [0,], errors: [1,], leaf: 5 },\n\t\t\t\tendpoint: null\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"/register\",\n\t\t\t\tpattern: /^\\/register\\/?$/,\n\t\t\t\tparams: [],\n\t\t\t\tpage: { layouts: [0,], errors: [1,], leaf: 6 },\n\t\t\t\tendpoint: null\n\t\t\t}\n\t\t],\n\t\tprerendered_routes: new Set([]),\n\t\tmatchers: async () => {\n\t\t\t\n\t\t\treturn { };\n\t\t},\n\t\tserver_assets: {}\n\t}\n}\n})();\n\nexport const prerendered = new Set([]);\n\nexport const base = \"\";"],"names":[],"mappings":"AAAY,MAAC,QAAQ,GAAG,CAAC,MAAM;AAC/B,SAAS,MAAM,CAAC,EAAE,EAAE;AACpB,CAAC,IAAI,KAAK;AACV,CAAC,OAAO,MAAM,KAAK,MAAM,KAAK,GAAG,EAAE,EAAE,CAAC;AACtC;;AAEA,OAAO;AACP,CAAC,MAAM,EAAE,MAAM;AACf,CAAC,OAAO,EAAE,MAAM;AAChB,CAAC,MAAM,EAAE,IAAI,GAAG,CAAC,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,iBAAiB,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;AACvH,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,UAAU,CAAC;AACtD,CAAC,CAAC,EAAE;AACJ,EAAE,MAAM,EAAE,CAAC,KAAK,CAAC,wCAAwC,CAAC,GAAG,CAAC,sCAAsC,CAAC,OAAO,CAAC,CAAC,wCAAwC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,sCAAsC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,uBAAuB,CAAC,KAAK,CAAC;AACjoB,EAAE,KAAK,EAAE;AACT,GAAG,MAAM,CAAC,MAAM,OAAO,wBAAc,CAAC,CAAC;AACvC,GAAG,MAAM,CAAC,MAAM,OAAO,wBAAc,CAAC,CAAC;AACvC,GAAG,MAAM,CAAC,MAAM,OAAO,wBAAc,CAAC,CAAC;AACvC,GAAG,MAAM,CAAC,MAAM,OAAO,wBAAc,CAAC,CAAC;AACvC,GAAG,MAAM,CAAC,MAAM,OAAO,wBAAc,CAAC,CAAC;AACvC,GAAG,MAAM,CAAC,MAAM,OAAO,wBAAc,CAAC,CAAC;AACvC,GAAG,MAAM,CAAC,MAAM,OAAO,wBAAc,CAAC;AACtC,GAAG;AACH,EAAE,OAAO,EAAE;AACX;AACA,GAAG;AACH,EAAE,MAAM,EAAE;AACV,GAAG;AACH,IAAI,EAAE,EAAE,iBAAiB;AACzB,IAAI,OAAO,EAAE,wBAAwB;AACrC,IAAI,MAAM,EAAE,EAAE;AACd,IAAI,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE;AAClD,IAAI,QAAQ,EAAE;AACd,IAAI;AACJ,GAAG;AACH,IAAI,EAAE,EAAE,UAAU;AAClB,IAAI,OAAO,EAAE,gBAAgB;AAC7B,IAAI,MAAM,EAAE,EAAE;AACd,IAAI,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE;AAClD,IAAI,QAAQ,EAAE;AACd,IAAI;AACJ,GAAG;AACH,IAAI,EAAE,EAAE,QAAQ;AAChB,IAAI,OAAO,EAAE,cAAc;AAC3B,IAAI,MAAM,EAAE,EAAE;AACd,IAAI,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE;AAClD,IAAI,QAAQ,EAAE;AACd,IAAI;AACJ,GAAG;AACH,IAAI,EAAE,EAAE,SAAS;AACjB,IAAI,OAAO,EAAE,eAAe;AAC5B,IAAI,MAAM,EAAE,EAAE;AACd,IAAI,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE;AAClD,IAAI,QAAQ,EAAE;AACd,IAAI;AACJ,GAAG;AACH,IAAI,EAAE,EAAE,WAAW;AACnB,IAAI,OAAO,EAAE,iBAAiB;AAC9B,IAAI,MAAM,EAAE,EAAE;AACd,IAAI,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE;AAClD,IAAI,QAAQ,EAAE;AACd;AACA,GAAG;AACH,EAAE,kBAAkB,EAAE,IAAI,GAAG,CAAC,EAAE,CAAC;AACjC,EAAE,QAAQ,EAAE,YAAY;AACxB;AACA,GAAG,OAAO,IAAI;AACd,EAAE,CAAC;AACH,EAAE,aAAa,EAAE;AACjB;AACA;AACA,CAAC;;AAEW,MAAC,WAAW,GAAG,IAAI,GAAG,CAAC,EAAE;;AAEzB,MAAC,IAAI,GAAG;;;;"}
|
package/dist/api/metadata.js
CHANGED
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import { requestMethods } from '@axium/core/requests';
|
|
2
2
|
import pkg from '../../package.json' with { type: 'json' };
|
|
3
|
+
import { apps } from '../apps.js';
|
|
4
|
+
import { getSessionAndUser } from '../auth.js';
|
|
3
5
|
import { config } from '../config.js';
|
|
4
6
|
import { plugins } from '../plugins.js';
|
|
5
7
|
import { error, getToken } from '../requests.js';
|
|
6
8
|
import { addRoute, routes } from '../routes.js';
|
|
7
|
-
import { getSessionAndUser } from '../auth.js';
|
|
8
|
-
import { apps } from '../apps.js';
|
|
9
|
-
import { pick } from 'utilium';
|
|
10
9
|
addRoute({
|
|
11
10
|
path: '/api/metadata',
|
|
12
11
|
async GET(event) {
|
|
@@ -45,7 +44,7 @@ addRoute({
|
|
|
45
44
|
for (const app of apps.values()) {
|
|
46
45
|
if (config.apps.disabled.includes(app.id))
|
|
47
46
|
continue;
|
|
48
|
-
result.push(
|
|
47
|
+
result.push(app);
|
|
49
48
|
}
|
|
50
49
|
return result;
|
|
51
50
|
},
|
package/dist/api/passkeys.js
CHANGED
package/dist/api/register.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { UserRegistration } from '@axium/core/user';
|
|
2
2
|
import { generateRegistrationOptions, verifyRegistrationResponse } from '@simplewebauthn/server';
|
|
3
3
|
import { randomUUID } from 'node:crypto';
|
|
4
4
|
import * as z from 'zod';
|
|
5
|
+
import { audit } from '../audit.js';
|
|
5
6
|
import { createPasskey, getUser } from '../auth.js';
|
|
6
7
|
import config from '../config.js';
|
|
7
8
|
import { database as db } from '../database.js';
|
|
8
9
|
import { createSessionData, error, parseBody, withError } from '../requests.js';
|
|
9
10
|
import { addRoute } from '../routes.js';
|
|
10
|
-
import { audit } from '../audit.js';
|
|
11
11
|
// Map of user ID => challenge
|
|
12
12
|
const registrations = new Map();
|
|
13
13
|
async function OPTIONS(event) {
|
|
@@ -37,7 +37,7 @@ async function OPTIONS(event) {
|
|
|
37
37
|
async function POST(event) {
|
|
38
38
|
if (!config.allow_new_users)
|
|
39
39
|
error(409, 'New user registration is disabled');
|
|
40
|
-
const { userId, email, name, response } = await parseBody(event,
|
|
40
|
+
const { userId, email, name, response } = await parseBody(event, UserRegistration);
|
|
41
41
|
const existing = await db.selectFrom('users').selectAll().where('email', '=', email.toLowerCase()).executeTakeFirst();
|
|
42
42
|
if (existing)
|
|
43
43
|
error(409, 'Email already in use');
|
package/dist/api/users.js
CHANGED
|
@@ -1,15 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
import {
|
|
1
|
+
/** Register a new passkey for a new or existing user. */
|
|
2
|
+
import { preferenceDefaults, preferenceSchemas } from '@axium/core';
|
|
3
|
+
import { PasskeyAuthenticationResponse, PasskeyRegistration } from '@axium/core/passkeys';
|
|
4
|
+
import { LogoutSessions, UserAuthOptions, UserChangeable } from '@axium/core/user';
|
|
3
5
|
import * as webauthn from '@simplewebauthn/server';
|
|
4
6
|
import { omit, pick } from 'utilium';
|
|
5
7
|
import * as z from 'zod';
|
|
8
|
+
import { audit } from '../audit.js';
|
|
6
9
|
import { checkAuthForUser, createPasskey, createVerification, getPasskey, getPasskeysByUserId, getSessions, getUser, useVerification, } from '../auth.js';
|
|
7
10
|
import { config } from '../config.js';
|
|
8
11
|
import { database as db } from '../database.js';
|
|
9
12
|
import { createSessionData, error, parseBody, stripUser, withError } from '../requests.js';
|
|
10
13
|
import { addRoute } from '../routes.js';
|
|
11
|
-
import { audit } from '../audit.js';
|
|
12
|
-
import { preferenceDefaults, preferenceSchemas } from '@axium/core';
|
|
13
14
|
const challenges = new Map();
|
|
14
15
|
const params = { id: z.uuid() };
|
|
15
16
|
/**
|
package/dist/apps.d.ts
CHANGED
|
@@ -1,8 +1,5 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
export interface App extends AppMetadata {
|
|
3
|
-
}
|
|
1
|
+
import type { App } from '@axium/core';
|
|
4
2
|
export declare const apps: Map<string, App>;
|
|
5
|
-
export declare function addApp(init: AppMetadata): void;
|
|
6
3
|
export declare const appDisabledContent: {
|
|
7
4
|
head: string;
|
|
8
5
|
body: string;
|
package/dist/apps.js
CHANGED
|
@@ -1,10 +1,5 @@
|
|
|
1
1
|
import { _unique } from './state.js';
|
|
2
2
|
export const apps = _unique('apps', new Map());
|
|
3
|
-
export function addApp(init) {
|
|
4
|
-
if (apps.has(init.id))
|
|
5
|
-
throw new ReferenceError(`App with ID "${init.id}" already exists.`);
|
|
6
|
-
apps.set(init.id, init);
|
|
7
|
-
}
|
|
8
3
|
export const appDisabledContent = {
|
|
9
4
|
head: '<title>App Disabled</title>',
|
|
10
5
|
body: '<h1>App Disabled</h1><p>This app is currently disabled.</p>',
|
package/dist/auth.d.ts
CHANGED
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
import type { Permission } from '@axium/core';
|
|
2
|
-
import type { Passkey, Session, Verification } from '@axium/core/api';
|
|
3
|
-
import type { User } from '@axium/core/user';
|
|
1
|
+
import type { Passkey, Permission, Session, User, Verification } from '@axium/core';
|
|
4
2
|
import type { Insertable } from 'kysely';
|
|
5
3
|
import * as acl from './acl.js';
|
|
6
4
|
import { type Schema } from './database.js';
|
package/dist/auth.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { randomBytes, randomUUID } from 'node:crypto';
|
|
2
2
|
import { omit } from 'utilium';
|
|
3
3
|
import * as acl from './acl.js';
|
|
4
|
+
import { audit } from './audit.js';
|
|
4
5
|
import { database as db, userFromId } from './database.js';
|
|
5
6
|
import { error, getToken, withError } from './requests.js';
|
|
6
|
-
import { audit } from './audit.js';
|
|
7
7
|
export async function getUser(id) {
|
|
8
8
|
return await db.selectFrom('users').selectAll().where('id', '=', id).executeTakeFirstOrThrow();
|
|
9
9
|
}
|
package/dist/config.d.ts
CHANGED
|
@@ -8,8 +8,8 @@ export declare const ConfigSchema: z.ZodObject<{
|
|
|
8
8
|
audit: z.ZodOptional<z.ZodObject<{
|
|
9
9
|
allow_raw: z.ZodOptional<z.ZodBoolean>;
|
|
10
10
|
retention: z.ZodOptional<z.ZodNumber>;
|
|
11
|
-
min_severity: z.ZodOptional<z.ZodLiteral<"error" | "debug" | "Error" | "
|
|
12
|
-
auto_suspend: z.ZodOptional<z.ZodLiteral<"error" | "debug" | "Error" | "
|
|
11
|
+
min_severity: z.ZodOptional<z.ZodLiteral<"error" | "debug" | "Error" | "notice" | "info" | "warning" | "Emergency" | "Alert" | "Critical" | "Warning" | "Notice" | "Info" | "Debug" | "emergency" | "alert" | "critical">>;
|
|
12
|
+
auto_suspend: z.ZodOptional<z.ZodLiteral<"error" | "debug" | "Error" | "notice" | "info" | "warning" | "Emergency" | "Alert" | "Critical" | "Warning" | "Notice" | "Info" | "Debug" | "emergency" | "alert" | "critical">>;
|
|
13
13
|
}, z.core.$loose>>;
|
|
14
14
|
auth: z.ZodOptional<z.ZodObject<{
|
|
15
15
|
origin: z.ZodOptional<z.ZodString>;
|
|
@@ -33,9 +33,9 @@ export declare const ConfigSchema: z.ZodObject<{
|
|
|
33
33
|
level: z.ZodOptional<z.ZodEnum<{
|
|
34
34
|
error: "error";
|
|
35
35
|
debug: "debug";
|
|
36
|
-
info: "info";
|
|
37
36
|
warn: "warn";
|
|
38
37
|
notice: "notice";
|
|
38
|
+
info: "info";
|
|
39
39
|
}>>;
|
|
40
40
|
console: z.ZodOptional<z.ZodBoolean>;
|
|
41
41
|
}, z.core.$loose>>;
|
|
@@ -79,8 +79,8 @@ export declare const FileSchema: z.ZodObject<{
|
|
|
79
79
|
audit: z.ZodOptional<z.ZodOptional<z.ZodObject<{
|
|
80
80
|
allow_raw: z.ZodOptional<z.ZodBoolean>;
|
|
81
81
|
retention: z.ZodOptional<z.ZodNumber>;
|
|
82
|
-
min_severity: z.ZodOptional<z.ZodLiteral<"error" | "debug" | "Error" | "
|
|
83
|
-
auto_suspend: z.ZodOptional<z.ZodLiteral<"error" | "debug" | "Error" | "
|
|
82
|
+
min_severity: z.ZodOptional<z.ZodLiteral<"error" | "debug" | "Error" | "notice" | "info" | "warning" | "Emergency" | "Alert" | "Critical" | "Warning" | "Notice" | "Info" | "Debug" | "emergency" | "alert" | "critical">>;
|
|
83
|
+
auto_suspend: z.ZodOptional<z.ZodLiteral<"error" | "debug" | "Error" | "notice" | "info" | "warning" | "Emergency" | "Alert" | "Critical" | "Warning" | "Notice" | "Info" | "Debug" | "emergency" | "alert" | "critical">>;
|
|
84
84
|
}, z.core.$loose>>>;
|
|
85
85
|
auth: z.ZodOptional<z.ZodOptional<z.ZodObject<{
|
|
86
86
|
origin: z.ZodOptional<z.ZodString>;
|
|
@@ -104,9 +104,9 @@ export declare const FileSchema: z.ZodObject<{
|
|
|
104
104
|
level: z.ZodOptional<z.ZodEnum<{
|
|
105
105
|
error: "error";
|
|
106
106
|
debug: "debug";
|
|
107
|
-
info: "info";
|
|
108
107
|
warn: "warn";
|
|
109
108
|
notice: "notice";
|
|
109
|
+
info: "info";
|
|
110
110
|
}>>;
|
|
111
111
|
console: z.ZodOptional<z.ZodBoolean>;
|
|
112
112
|
}, z.core.$loose>>>;
|
package/dist/plugins.d.ts
CHANGED
|
@@ -5,12 +5,24 @@ export declare const PluginMetadata: z.ZodObject<{
|
|
|
5
5
|
version: z.ZodString;
|
|
6
6
|
description: z.ZodOptional<z.ZodString>;
|
|
7
7
|
routes: z.ZodOptional<z.ZodString>;
|
|
8
|
+
apps: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
9
|
+
id: z.ZodString;
|
|
10
|
+
name: z.ZodOptional<z.ZodString>;
|
|
11
|
+
image: z.ZodOptional<z.ZodString>;
|
|
12
|
+
icon: z.ZodOptional<z.ZodString>;
|
|
13
|
+
}, z.core.$strip>>>;
|
|
8
14
|
}, z.core.$loose>;
|
|
9
15
|
export declare const Plugin: z.ZodObject<{
|
|
10
16
|
name: z.ZodString;
|
|
11
17
|
version: z.ZodString;
|
|
12
18
|
description: z.ZodOptional<z.ZodString>;
|
|
13
19
|
routes: z.ZodOptional<z.ZodString>;
|
|
20
|
+
apps: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
21
|
+
id: z.ZodString;
|
|
22
|
+
name: z.ZodOptional<z.ZodString>;
|
|
23
|
+
image: z.ZodOptional<z.ZodString>;
|
|
24
|
+
icon: z.ZodOptional<z.ZodString>;
|
|
25
|
+
}, z.core.$strip>>>;
|
|
14
26
|
statusText: z.ZodCustom<z.core.$InferInnerFunctionTypeAsync<z.core.$ZodTuple<[], null>, z.ZodString>, z.core.$InferInnerFunctionTypeAsync<z.core.$ZodTuple<[], null>, z.ZodString>>;
|
|
15
27
|
hooks: z.ZodOptional<z.ZodRecord<z.ZodLiteral<"remove" | "db_init" | "db_wipe" | "clean"> & z.core.$partial, z.ZodCustom<(...args: any[]) => any, (...args: any[]) => any>>>;
|
|
16
28
|
}, z.core.$loose>;
|
package/dist/plugins.js
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
|
+
import { App } from '@axium/core';
|
|
1
2
|
import { zAsyncFunction } from '@axium/core/schemas';
|
|
2
3
|
import * as fs from 'node:fs';
|
|
3
4
|
import { resolve } from 'node:path/posix';
|
|
4
5
|
import { styleText } from 'node:util';
|
|
5
6
|
import * as z from 'zod';
|
|
7
|
+
import { apps } from './apps.js';
|
|
6
8
|
import { output } from './io.js';
|
|
7
9
|
import { _unique } from './state.js';
|
|
8
10
|
export const PluginMetadata = z.looseObject({
|
|
@@ -10,6 +12,7 @@ export const PluginMetadata = z.looseObject({
|
|
|
10
12
|
version: z.string(),
|
|
11
13
|
description: z.string().optional(),
|
|
12
14
|
routes: z.string().optional(),
|
|
15
|
+
apps: z.array(App).optional(),
|
|
13
16
|
});
|
|
14
17
|
const hookNames = ['db_init', 'remove', 'db_wipe', 'clean'];
|
|
15
18
|
const fn = z.custom(data => typeof data === 'function');
|
|
@@ -45,6 +48,11 @@ export async function loadPlugin(specifier) {
|
|
|
45
48
|
if (plugin.name.startsWith('#') || plugin.name.includes(' ')) {
|
|
46
49
|
throw 'Invalid plugin name. Plugin names can not start with a hash or contain spaces.';
|
|
47
50
|
}
|
|
51
|
+
for (const app of plugin.apps ?? []) {
|
|
52
|
+
if (apps.has(app.id))
|
|
53
|
+
throw new ReferenceError(`App with ID "${app.id}" already exists.`);
|
|
54
|
+
apps.set(app.id, app);
|
|
55
|
+
}
|
|
48
56
|
plugins.add(plugin);
|
|
49
57
|
output.debug(`Loaded plugin: ${plugin.name} ${plugin.version}`);
|
|
50
58
|
}
|
package/dist/requests.js
CHANGED
|
@@ -94,8 +94,10 @@ export async function handleAPIRequest(event, route) {
|
|
|
94
94
|
const result = await route[method](event);
|
|
95
95
|
if (result instanceof Response)
|
|
96
96
|
return result;
|
|
97
|
-
result
|
|
98
|
-
|
|
97
|
+
if (typeof result == 'object' || typeof result == 'function') {
|
|
98
|
+
result._warnings ||= [];
|
|
99
|
+
result._warnings.push(..._warnings);
|
|
100
|
+
}
|
|
99
101
|
return json(result);
|
|
100
102
|
}
|
|
101
103
|
export function handleResponseError(e) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@axium/server",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.23.0",
|
|
4
4
|
"author": "James Prevett <axium@jamespre.dev> (https://jamespre.dev)",
|
|
5
5
|
"funding": {
|
|
6
6
|
"type": "individual",
|
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
},
|
|
46
46
|
"peerDependencies": {
|
|
47
47
|
"@axium/client": ">=0.4.0",
|
|
48
|
-
"@axium/core": ">=0.
|
|
48
|
+
"@axium/core": ">=0.7.0",
|
|
49
49
|
"kysely": "^0.28.0",
|
|
50
50
|
"utilium": "^2.3.8",
|
|
51
51
|
"zod": "^4.0.5"
|
package/web/template.html
CHANGED
|
@@ -7,9 +7,6 @@
|
|
|
7
7
|
<meta name="color-scheme" content="dark light" />
|
|
8
8
|
<link rel="stylesheet" href="%sveltekit.assets%/theme.css" />
|
|
9
9
|
<link rel="stylesheet" href="%sveltekit.assets%/styles.css" />
|
|
10
|
-
<link rel="preload" href="%sveltekit.assets%/icons/light.svg" as="image" type="image/svg+xml" />
|
|
11
|
-
<link rel="preload" href="%sveltekit.assets%/icons/regular.svg" as="image" type="image/svg+xml" />
|
|
12
|
-
<link rel="preload" href="%sveltekit.assets%/icons/solid.svg" as="image" type="image/svg+xml" />
|
|
13
10
|
%sveltekit.head%
|
|
14
11
|
</head>
|
|
15
12
|
|