@flowselections/admin-installatietechniek 1.0.2 → 1.0.4
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/dist-lib/components/AdminForInstallatieTechniek.d.ts +4 -0
- package/dist-lib/components/AdminForInstallatieTechniek.d.ts.map +1 -1
- package/dist-lib/components/AdminForInstallatieTechniek.js +211 -106
- package/dist-lib/hooks/useModulePermission.d.ts +4 -3
- package/dist-lib/hooks/useModulePermission.d.ts.map +1 -1
- package/dist-lib/hooks/useModulePermission.js +10 -6
- package/dist-lib/index.d.ts +1 -1
- package/dist-lib/index.d.ts.map +1 -1
- package/dist-lib/integrations/supabase/auth-middleware.d.ts +410 -0
- package/dist-lib/integrations/supabase/auth-middleware.d.ts.map +1 -1
- package/dist-lib/integrations/supabase/client.d.ts +410 -0
- package/dist-lib/integrations/supabase/client.d.ts.map +1 -1
- package/dist-lib/integrations/supabase/client.server.d.ts +410 -0
- package/dist-lib/integrations/supabase/client.server.d.ts.map +1 -1
- package/dist-lib/integrations/supabase/types.d.ts +414 -0
- package/dist-lib/integrations/supabase/types.d.ts.map +1 -1
- package/dist-lib/lib/admin.functions.d.ts +90380 -956
- package/dist-lib/lib/admin.functions.d.ts.map +1 -1
- package/dist-lib/lib/admin.functions.js +340 -131
- package/dist-lib/lib/moduleDiscovery.d.ts +7 -2
- package/dist-lib/lib/moduleDiscovery.d.ts.map +1 -1
- package/dist-lib/lib/moduleDiscovery.js +25 -10
- package/package.json +87 -87
|
@@ -1,10 +1,15 @@
|
|
|
1
|
+
export interface DiscoveredFeature {
|
|
2
|
+
id: string;
|
|
3
|
+
name: string;
|
|
4
|
+
}
|
|
1
5
|
export interface DiscoveredModule {
|
|
2
6
|
id: string;
|
|
3
7
|
name: string;
|
|
8
|
+
features?: DiscoveredFeature[];
|
|
4
9
|
}
|
|
5
10
|
/**
|
|
6
|
-
* Leidt de modulelijst af uit de routeboom
|
|
7
|
-
*
|
|
11
|
+
* Leidt de modulelijst (inclusief onderdelen/subpagina's) af uit de routeboom
|
|
12
|
+
* van de draaiende shell. Geen hardcoded modules of onderdelen.
|
|
8
13
|
*/
|
|
9
14
|
export declare function useDiscoveredModules(): DiscoveredModule[];
|
|
10
15
|
//# sourceMappingURL=moduleDiscovery.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"moduleDiscovery.d.ts","sourceRoot":"","sources":["../../src/lib/moduleDiscovery.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"moduleDiscovery.d.ts","sourceRoot":"","sources":["../../src/lib/moduleDiscovery.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,iBAAiB,EAAE,CAAC;CAChC;AAiBD;;;GAGG;AACH,wBAAgB,oBAAoB,IAAI,gBAAgB,EAAE,CAqDzD"}
|
|
@@ -15,17 +15,17 @@ function prettify(segment) {
|
|
|
15
15
|
return cleaned.charAt(0).toUpperCase() + cleaned.slice(1);
|
|
16
16
|
}
|
|
17
17
|
/**
|
|
18
|
-
* Leidt de modulelijst af uit de routeboom
|
|
19
|
-
*
|
|
18
|
+
* Leidt de modulelijst (inclusief onderdelen/subpagina's) af uit de routeboom
|
|
19
|
+
* van de draaiende shell. Geen hardcoded modules of onderdelen.
|
|
20
20
|
*/
|
|
21
21
|
export function useDiscoveredModules() {
|
|
22
22
|
const router = useRouter();
|
|
23
23
|
const routesById = (router?.routesById ?? {});
|
|
24
24
|
const ids = Object.keys(routesById).sort().join("|");
|
|
25
25
|
return useMemo(() => {
|
|
26
|
-
const
|
|
26
|
+
const names = new Map();
|
|
27
|
+
const features = new Map();
|
|
27
28
|
for (const routeId of Object.keys(routesById)) {
|
|
28
|
-
// Alleen routes binnen de beveiligde shell-omgeving.
|
|
29
29
|
if (!routeId.startsWith("/_authenticated/"))
|
|
30
30
|
continue;
|
|
31
31
|
const path = routeId.slice("/_authenticated/".length);
|
|
@@ -39,15 +39,30 @@ export function useDiscoveredModules() {
|
|
|
39
39
|
continue;
|
|
40
40
|
const route = routesById[routeId];
|
|
41
41
|
const title = route?.options?.staticData?.title;
|
|
42
|
-
const
|
|
43
|
-
const
|
|
44
|
-
|
|
42
|
+
const rest = segments.slice(1).filter((s) => s !== "index");
|
|
43
|
+
const isTopLevel = rest.length === 0;
|
|
44
|
+
const existing = names.get(first);
|
|
45
45
|
if (!existing || (isTopLevel && typeof title === "string" && title.trim())) {
|
|
46
|
-
|
|
46
|
+
names.set(first, (isTopLevel && title?.trim()) || existing || prettify(first));
|
|
47
|
+
}
|
|
48
|
+
if (!isTopLevel) {
|
|
49
|
+
// Dynamische segmenten ($id) zijn detailpagina's, geen los onderdeel.
|
|
50
|
+
if (rest.some((s) => s.startsWith("$")))
|
|
51
|
+
continue;
|
|
52
|
+
const featureId = rest.join("/");
|
|
53
|
+
const map = features.get(first) ?? new Map();
|
|
54
|
+
map.set(featureId, title?.trim() || rest.map(prettify).join(" › "));
|
|
55
|
+
features.set(first, map);
|
|
47
56
|
}
|
|
48
57
|
}
|
|
49
|
-
return Array.from(
|
|
50
|
-
.map(([id, name]) => ({
|
|
58
|
+
return Array.from(names.entries())
|
|
59
|
+
.map(([id, name]) => ({
|
|
60
|
+
id,
|
|
61
|
+
name,
|
|
62
|
+
features: Array.from(features.get(id)?.entries() ?? [])
|
|
63
|
+
.map(([fid, fname]) => ({ id: fid, name: fname }))
|
|
64
|
+
.sort((a, b) => a.name.localeCompare(b.name, "nl")),
|
|
65
|
+
}))
|
|
51
66
|
.sort((a, b) => a.name.localeCompare(b.name, "nl"));
|
|
52
67
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
53
68
|
}, [ids]);
|
package/package.json
CHANGED
|
@@ -1,87 +1,87 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@flowselections/admin-installatietechniek",
|
|
3
|
-
"version": "1.0.
|
|
4
|
-
"flowselections": {
|
|
5
|
-
"moduleId": "admin-installatietechniek",
|
|
6
|
-
"pages": [
|
|
7
|
-
{
|
|
8
|
-
"export": "AdminForInstallatieTechniek",
|
|
9
|
-
"route": "admin-installatietechniek",
|
|
10
|
-
"title": "Rollen & machtigingen"
|
|
11
|
-
}
|
|
12
|
-
]
|
|
13
|
-
},
|
|
14
|
-
"private": false,
|
|
15
|
-
"sideEffects": false,
|
|
16
|
-
"type": "module",
|
|
17
|
-
"main": "./dist-lib/index.js",
|
|
18
|
-
"types": "./dist-lib/index.d.ts",
|
|
19
|
-
"exports": {
|
|
20
|
-
".": {
|
|
21
|
-
"types": "./dist-lib/index.d.ts",
|
|
22
|
-
"default": "./dist-lib/index.js"
|
|
23
|
-
},
|
|
24
|
-
"./styles": "./dist-lib/styles.css"
|
|
25
|
-
},
|
|
26
|
-
"files": [
|
|
27
|
-
"dist-lib",
|
|
28
|
-
"public"
|
|
29
|
-
],
|
|
30
|
-
"publishConfig": {
|
|
31
|
-
"access": "public"
|
|
32
|
-
},
|
|
33
|
-
"scripts": {
|
|
34
|
-
"dev": "vite dev",
|
|
35
|
-
"build": "vite build",
|
|
36
|
-
"build:lib": "tsc -p tsconfig.build.json && tsc-alias -p tsconfig.build.json && node -e \"require('fs').writeFileSync('dist-lib/styles.css', '@source \\\"./\\\";\\n')\"",
|
|
37
|
-
"build:lib:watch": "tsc -p tsconfig.build.json --watch",
|
|
38
|
-
"build:dev": "vite build --mode development",
|
|
39
|
-
"preview": "vite preview",
|
|
40
|
-
"lint": "eslint ."
|
|
41
|
-
},
|
|
42
|
-
"peerDependencies": {
|
|
43
|
-
"@flowselections/core": "*",
|
|
44
|
-
"@tanstack/react-query": "^5.0.0",
|
|
45
|
-
"@tanstack/react-router": "^1.0.0",
|
|
46
|
-
"@tanstack/react-start": "^1.0.0",
|
|
47
|
-
"lucide-react": "^0.400.0",
|
|
48
|
-
"react": "^18 || ^19",
|
|
49
|
-
"react-dom": "^18 || ^19",
|
|
50
|
-
"sonner": "^2.0.0"
|
|
51
|
-
},
|
|
52
|
-
"dependencies": {
|
|
53
|
-
"@supabase/supabase-js": "^2.110.7"
|
|
54
|
-
},
|
|
55
|
-
"devDependencies": {
|
|
56
|
-
"@cloudflare/vite-plugin": "^1.25.5",
|
|
57
|
-
"@eslint/js": "^9.32.0",
|
|
58
|
-
"@flowselections/core": "1.0.16",
|
|
59
|
-
"@lovable.dev/vite-tanstack-config": "2.13.1",
|
|
60
|
-
"@rsbuild/core": "^1.0.0",
|
|
61
|
-
"@tailwindcss/vite": "^4.2.1",
|
|
62
|
-
"@tanstack/react-query": "^5.83.0",
|
|
63
|
-
"@tanstack/react-router": "^1.168.0",
|
|
64
|
-
"@tanstack/react-start": "^1.167.14",
|
|
65
|
-
"@tanstack/router-plugin": "^1.167.10",
|
|
66
|
-
"@types/node": "^22.16.5",
|
|
67
|
-
"@types/react": "^19.2.0",
|
|
68
|
-
"@types/react-dom": "^19.2.0",
|
|
69
|
-
"@vitejs/plugin-react": "^5.0.4",
|
|
70
|
-
"eslint": "^9.32.0",
|
|
71
|
-
"eslint-plugin-react-hooks": "^5.2.0",
|
|
72
|
-
"eslint-plugin-react-refresh": "^0.4.20",
|
|
73
|
-
"globals": "^15.15.0",
|
|
74
|
-
"lucide-react": "^0.575.0",
|
|
75
|
-
"react": "^19.2.0",
|
|
76
|
-
"react-dom": "^19.2.0",
|
|
77
|
-
"sonner": "^2.0.7",
|
|
78
|
-
"tailwindcss": "^4.2.1",
|
|
79
|
-
"tw-animate-css": "^1.3.4",
|
|
80
|
-
"typescript": "^5.8.3",
|
|
81
|
-
"tsc-alias": "^1.8.10",
|
|
82
|
-
"typescript-eslint": "^8.56.1",
|
|
83
|
-
"vite": "^7.3.1",
|
|
84
|
-
"vite-tsconfig-paths": "^6.0.2",
|
|
85
|
-
"nitro": "3.0.260603-beta"
|
|
86
|
-
}
|
|
87
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "@flowselections/admin-installatietechniek",
|
|
3
|
+
"version": "1.0.4",
|
|
4
|
+
"flowselections": {
|
|
5
|
+
"moduleId": "admin-installatietechniek",
|
|
6
|
+
"pages": [
|
|
7
|
+
{
|
|
8
|
+
"export": "AdminForInstallatieTechniek",
|
|
9
|
+
"route": "admin-installatietechniek",
|
|
10
|
+
"title": "Rollen & machtigingen"
|
|
11
|
+
}
|
|
12
|
+
]
|
|
13
|
+
},
|
|
14
|
+
"private": false,
|
|
15
|
+
"sideEffects": false,
|
|
16
|
+
"type": "module",
|
|
17
|
+
"main": "./dist-lib/index.js",
|
|
18
|
+
"types": "./dist-lib/index.d.ts",
|
|
19
|
+
"exports": {
|
|
20
|
+
".": {
|
|
21
|
+
"types": "./dist-lib/index.d.ts",
|
|
22
|
+
"default": "./dist-lib/index.js"
|
|
23
|
+
},
|
|
24
|
+
"./styles": "./dist-lib/styles.css"
|
|
25
|
+
},
|
|
26
|
+
"files": [
|
|
27
|
+
"dist-lib",
|
|
28
|
+
"public"
|
|
29
|
+
],
|
|
30
|
+
"publishConfig": {
|
|
31
|
+
"access": "public"
|
|
32
|
+
},
|
|
33
|
+
"scripts": {
|
|
34
|
+
"dev": "vite dev",
|
|
35
|
+
"build": "vite build",
|
|
36
|
+
"build:lib": "tsc -p tsconfig.build.json && tsc-alias -p tsconfig.build.json && node -e \"require('fs').writeFileSync('dist-lib/styles.css', '@source \\\"./\\\";\\n')\"",
|
|
37
|
+
"build:lib:watch": "tsc -p tsconfig.build.json --watch",
|
|
38
|
+
"build:dev": "vite build --mode development",
|
|
39
|
+
"preview": "vite preview",
|
|
40
|
+
"lint": "eslint ."
|
|
41
|
+
},
|
|
42
|
+
"peerDependencies": {
|
|
43
|
+
"@flowselections/core": "*",
|
|
44
|
+
"@tanstack/react-query": "^5.0.0",
|
|
45
|
+
"@tanstack/react-router": "^1.0.0",
|
|
46
|
+
"@tanstack/react-start": "^1.0.0",
|
|
47
|
+
"lucide-react": "^0.400.0",
|
|
48
|
+
"react": "^18 || ^19",
|
|
49
|
+
"react-dom": "^18 || ^19",
|
|
50
|
+
"sonner": "^2.0.0"
|
|
51
|
+
},
|
|
52
|
+
"dependencies": {
|
|
53
|
+
"@supabase/supabase-js": "^2.110.7"
|
|
54
|
+
},
|
|
55
|
+
"devDependencies": {
|
|
56
|
+
"@cloudflare/vite-plugin": "^1.25.5",
|
|
57
|
+
"@eslint/js": "^9.32.0",
|
|
58
|
+
"@flowselections/core": "1.0.16",
|
|
59
|
+
"@lovable.dev/vite-tanstack-config": "2.13.1",
|
|
60
|
+
"@rsbuild/core": "^1.0.0",
|
|
61
|
+
"@tailwindcss/vite": "^4.2.1",
|
|
62
|
+
"@tanstack/react-query": "^5.83.0",
|
|
63
|
+
"@tanstack/react-router": "^1.168.0",
|
|
64
|
+
"@tanstack/react-start": "^1.167.14",
|
|
65
|
+
"@tanstack/router-plugin": "^1.167.10",
|
|
66
|
+
"@types/node": "^22.16.5",
|
|
67
|
+
"@types/react": "^19.2.0",
|
|
68
|
+
"@types/react-dom": "^19.2.0",
|
|
69
|
+
"@vitejs/plugin-react": "^5.0.4",
|
|
70
|
+
"eslint": "^9.32.0",
|
|
71
|
+
"eslint-plugin-react-hooks": "^5.2.0",
|
|
72
|
+
"eslint-plugin-react-refresh": "^0.4.20",
|
|
73
|
+
"globals": "^15.15.0",
|
|
74
|
+
"lucide-react": "^0.575.0",
|
|
75
|
+
"react": "^19.2.0",
|
|
76
|
+
"react-dom": "^19.2.0",
|
|
77
|
+
"sonner": "^2.0.7",
|
|
78
|
+
"tailwindcss": "^4.2.1",
|
|
79
|
+
"tw-animate-css": "^1.3.4",
|
|
80
|
+
"typescript": "^5.8.3",
|
|
81
|
+
"tsc-alias": "^1.8.10",
|
|
82
|
+
"typescript-eslint": "^8.56.1",
|
|
83
|
+
"vite": "^7.3.1",
|
|
84
|
+
"vite-tsconfig-paths": "^6.0.2",
|
|
85
|
+
"nitro": "3.0.260603-beta"
|
|
86
|
+
}
|
|
87
|
+
}
|