@betterportal/config-manager 10.1.61 → 10.1.63
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/lib/.bsb/clients/service-betterportal-config-manager.d.ts +1 -1
- package/lib/.bsb/clients/service-betterportal-config-manager.js +1 -1
- package/lib/bp-contracts/org.betterportal.config-manager.json +4137 -2714
- package/lib/plugins/service-betterportal-config-manager/.bp-generated/registry.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/.bp-generated/registry.js +32 -89
- package/lib/plugins/service-betterportal-config-manager/.bp-generated/registry.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/adminApi.d.ts +100 -14
- package/lib/plugins/service-betterportal-config-manager/adminApi.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/adminApi.js +111 -86
- package/lib/plugins/service-betterportal-config-manager/adminApi.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bootstrapEndpoint.js +12 -12
- package/lib/plugins/service-betterportal-config-manager/bootstrapEndpoint.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/auth/GET.d.ts +3 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/auth/GET.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/auth/GET.js +3 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/auth/GET.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/auth/_renderer.bootstrap5/GET.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/auth/_renderer.bootstrap5/GET.js +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/auth/_renderer.bootstrap5/GET.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/auth/index.d.ts +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/auth/index.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/auth/index.js +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/auth/index.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/auth/route.impl.d.ts +18 -12
- package/lib/plugins/service-betterportal-config-manager/bp-routes/auth/route.impl.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/auth/route.impl.js +21 -18
- package/lib/plugins/service-betterportal-config-manager/bp-routes/auth/route.impl.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/config/GET.d.ts +3 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/config/GET.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/config/GET.js +3 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/config/GET.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/config/index.d.ts +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/config/index.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/config/index.js +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/config/index.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/config/route.impl.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/config/route.impl.js +5 -5
- package/lib/plugins/service-betterportal-config-manager/bp-routes/config/route.impl.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/fragments/GET.d.ts +2 -0
- package/lib/plugins/service-betterportal-config-manager/bp-routes/fragments/GET.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/fragments/GET.js +2 -0
- package/lib/plugins/service-betterportal-config-manager/bp-routes/fragments/GET.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/fragments/index.d.ts +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/fragments/index.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/fragments/index.js +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/fragments/index.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/fragments/route.impl.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/fragments/route.impl.js +2 -2
- package/lib/plugins/service-betterportal-config-manager/bp-routes/fragments/route.impl.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/menu/GET.d.ts +2 -0
- package/lib/plugins/service-betterportal-config-manager/bp-routes/menu/GET.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/menu/GET.js +2 -0
- package/lib/plugins/service-betterportal-config-manager/bp-routes/menu/GET.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/menu/index.d.ts +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/menu/index.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/menu/index.js +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/menu/index.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/menu/route.impl.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/menu/route.impl.js +4 -4
- package/lib/plugins/service-betterportal-config-manager/bp-routes/menu/route.impl.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/preview/GET.d.ts +2 -0
- package/lib/plugins/service-betterportal-config-manager/bp-routes/preview/GET.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/preview/GET.js +2 -0
- package/lib/plugins/service-betterportal-config-manager/bp-routes/preview/GET.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/preview/index.d.ts +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/preview/index.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/preview/index.js +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/preview/index.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/preview/route.impl.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/preview/route.impl.js +4 -4
- package/lib/plugins/service-betterportal-config-manager/bp-routes/preview/route.impl.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/routes/GET.d.ts +2 -0
- package/lib/plugins/service-betterportal-config-manager/bp-routes/routes/GET.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/routes/GET.js +2 -0
- package/lib/plugins/service-betterportal-config-manager/bp-routes/routes/GET.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/routes/_renderer.bootstrap5/GET.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/routes/_renderer.bootstrap5/GET.js +45 -33
- package/lib/plugins/service-betterportal-config-manager/bp-routes/routes/_renderer.bootstrap5/GET.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/routes/index.d.ts +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/routes/index.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/routes/index.js +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/routes/index.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/routes/route.impl.d.ts +10 -4
- package/lib/plugins/service-betterportal-config-manager/bp-routes/routes/route.impl.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/routes/route.impl.js +11 -8
- package/lib/plugins/service-betterportal-config-manager/bp-routes/routes/route.impl.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/services/GET.d.ts +2 -0
- package/lib/plugins/service-betterportal-config-manager/bp-routes/services/GET.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/services/GET.js +2 -0
- package/lib/plugins/service-betterportal-config-manager/bp-routes/services/GET.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/services/index.d.ts +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/services/index.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/services/index.js +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/services/index.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/services/route.impl.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/services/route.impl.js +7 -7
- package/lib/plugins/service-betterportal-config-manager/bp-routes/services/route.impl.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/settings/GET.d.ts +2 -0
- package/lib/plugins/service-betterportal-config-manager/bp-routes/settings/GET.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/settings/GET.js +2 -0
- package/lib/plugins/service-betterportal-config-manager/bp-routes/settings/GET.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/settings/index.d.ts +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/settings/index.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/settings/index.js +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/settings/index.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/settings/route.impl.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/settings/route.impl.js +9 -9
- package/lib/plugins/service-betterportal-config-manager/bp-routes/settings/route.impl.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/DELETE.d.ts +6 -0
- package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/DELETE.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/DELETE.js +8 -0
- package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/DELETE.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/GET.d.ts +6 -0
- package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/GET.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/GET.js +8 -0
- package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/GET.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/POST.d.ts +6 -0
- package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/POST.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/POST.js +8 -0
- package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/POST.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/PUT.d.ts +6 -0
- package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/PUT.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/PUT.js +8 -0
- package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/PUT.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/index.d.ts +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/index.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/index.js +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/index.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/route.impl.d.ts +5 -6
- package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/route.impl.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/route.impl.js +29 -38
- package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/route.impl.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/cpBootstrap.d.ts +2 -1
- package/lib/plugins/service-betterportal-config-manager/cpBootstrap.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/cpBootstrap.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/index.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/index.js +30 -22
- package/lib/plugins/service-betterportal-config-manager/index.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/menuEditor.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/menuEditor.js +3 -2
- package/lib/plugins/service-betterportal-config-manager/menuEditor.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/setupTokens.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/setupTokens.js +9 -2
- package/lib/plugins/service-betterportal-config-manager/setupTokens.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/storage/core.d.ts +17 -0
- package/lib/plugins/service-betterportal-config-manager/storage/core.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/storage/core.js +96 -0
- package/lib/plugins/service-betterportal-config-manager/storage/core.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/storage/file.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/storage/file.js +2 -2
- package/lib/plugins/service-betterportal-config-manager/storage/file.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/storage/index.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/storage/index.js +2 -2
- package/lib/plugins/service-betterportal-config-manager/storage/index.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/storage/postgres.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/storage/postgres.js +2 -2
- package/lib/plugins/service-betterportal-config-manager/storage/postgres.js.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/syncApi.d.ts +22 -14
- package/lib/plugins/service-betterportal-config-manager/syncApi.d.ts.map +1 -1
- package/lib/plugins/service-betterportal-config-manager/syncApi.js +167 -90
- package/lib/plugins/service-betterportal-config-manager/syncApi.js.map +1 -1
- package/lib/schemas/service-betterportal-config-manager.json +1 -1
- package/lib/schemas/service-betterportal-config-manager.plugin.json +1 -1
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-config-manager/bp-routes/fragments/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-config-manager/bp-routes/fragments/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC"}
|
package/lib/plugins/service-betterportal-config-manager/bp-routes/fragments/route.impl.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"route.impl.d.ts","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-config-manager/bp-routes/fragments/route.impl.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAEL,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,KAAK,UAAU,EAChB,MAAM,yBAAyB,CAAC;AAQjC,eAAO,MAAM,cAAc;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"route.impl.d.ts","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-config-manager/bp-routes/fragments/route.impl.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAEL,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,KAAK,UAAU,EAChB,MAAM,yBAAyB,CAAC;AAQjC,eAAO,MAAM,cAAc;;;;;;;;;;EAMzB,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAExD,eAAO,MAAM,KAAK,cAAc,CAAC;AACjC,eAAO,MAAM,WAAW,4CAA4C,CAAC;AAErE,eAAO,MAAM,IAAI,EAAE,kBAKlB,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,UAA4D,CAAC;AAEtF,eAAO,MAAM,aAAa,EAAE,YAAY,CAAC,YAAY,CAAC,EAErD,CAAC;AAEF,eAAO,MAAM,SAAS;;;;;;;;;;oCAMrB,CAAC"}
|
|
@@ -4,14 +4,14 @@ const AppSummarySchema = av.object({
|
|
|
4
4
|
id: av.string().minLength(1),
|
|
5
5
|
title: av.string().minLength(1),
|
|
6
6
|
tenantId: av.string().minLength(1)
|
|
7
|
-
}
|
|
7
|
+
});
|
|
8
8
|
export const ResponseSchema = av.object({
|
|
9
9
|
title: av.string().minLength(1),
|
|
10
10
|
apps: av.array(AppSummarySchema),
|
|
11
11
|
selectedAppId: av.optional(av.string()),
|
|
12
12
|
adminApiBase: av.string().minLength(1),
|
|
13
13
|
serviceBaseUrl: av.string().minLength(1)
|
|
14
|
-
}
|
|
14
|
+
});
|
|
15
15
|
export const title = "Fragments";
|
|
16
16
|
export const description = "Manage topbar/footer fragments per app.";
|
|
17
17
|
export const auth = {
|
package/lib/plugins/service-betterportal-config-manager/bp-routes/fragments/route.impl.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"route.impl.js","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-config-manager/bp-routes/fragments/route.impl.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAE9B,OAAO,EACL,aAAa,EAId,MAAM,yBAAyB,CAAC;AAEjC,MAAM,gBAAgB,GAAG,EAAE,CAAC,MAAM,CAAC;IACjC,EAAE,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAC5B,KAAK,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAC/B,QAAQ,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;CACnC,
|
|
1
|
+
{"version":3,"file":"route.impl.js","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-config-manager/bp-routes/fragments/route.impl.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAE9B,OAAO,EACL,aAAa,EAId,MAAM,yBAAyB,CAAC;AAEjC,MAAM,gBAAgB,GAAG,EAAE,CAAC,MAAM,CAAC;IACjC,EAAE,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAC5B,KAAK,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAC/B,QAAQ,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;CACnC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,cAAc,GAAG,EAAE,CAAC,MAAM,CAAC;IACtC,KAAK,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAC/B,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,gBAAgB,CAAC;IAChC,aAAa,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC;IACvC,YAAY,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IACtC,cAAc,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;CACzC,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,KAAK,GAAG,WAAW,CAAC;AACjC,MAAM,CAAC,MAAM,WAAW,GAAG,yCAAyC,CAAC;AAErE,MAAM,CAAC,MAAM,IAAI,GAAuB;IACtC,QAAQ,EAAE,IAAI;IACd,WAAW,EAAE;QACX,EAAE,SAAS,EAAE,iCAAiC,EAAE,MAAM,EAAE,iBAAiB,EAAE,WAAW,EAAE,CAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,CAAC,EAAE;KAC9H;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAe,EAAE,UAAU,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC;AAEtF,MAAM,CAAC,MAAM,aAAa,GAAiC;IACzD,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,EAAE,YAAY,EAAE,uBAAuB,EAAE,cAAc,EAAE,EAAE,EAAE,EAAE;CAC3I,CAAC;AAEF,MAAM,CAAC,MAAM,SAAS,GAAG,aAAa,CACpC,EAAE,QAAQ,EAAE,cAAc,EAAE,EAC5B,CAAC,GAAG,EAAE,EAAE;IACN,IAAI,GAAG,CAAC,aAAa;QAAE,OAAO,GAAG,CAAC,aAA6B,CAAC;IAChE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,EAAE,YAAY,EAAE,uBAAuB,EAAE,cAAc,EAAE,EAAE,EAAE,CAAC;AACrG,CAAC,CACF,CAAC"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
export declare const operationId = "admin.menu.view";
|
|
2
|
+
export { title, description, auth, cacheHints, demoScenarios } from "./route.impl.js";
|
|
1
3
|
export { ResponseSchema } from "./route.impl.js";
|
|
2
4
|
export { handleGet as default } from "./route.impl.js";
|
|
3
5
|
//# sourceMappingURL=GET.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GET.d.ts","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-config-manager/bp-routes/menu/GET.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,SAAS,IAAI,OAAO,EAAE,MAAM,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"GET.d.ts","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-config-manager/bp-routes/menu/GET.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW,oBAAoB,CAAC;AAC7C,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACtF,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,SAAS,IAAI,OAAO,EAAE,MAAM,iBAAiB,CAAC"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
export const operationId = "admin.menu.view";
|
|
2
|
+
export { title, description, auth, cacheHints, demoScenarios } from "./route.impl.js";
|
|
1
3
|
export { ResponseSchema } from "./route.impl.js";
|
|
2
4
|
export { handleGet as default } from "./route.impl.js";
|
|
3
5
|
//# sourceMappingURL=GET.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GET.js","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-config-manager/bp-routes/menu/GET.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,SAAS,IAAI,OAAO,EAAE,MAAM,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"GET.js","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-config-manager/bp-routes/menu/GET.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,WAAW,GAAG,iBAAiB,CAAC;AAC7C,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACtF,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,SAAS,IAAI,OAAO,EAAE,MAAM,iBAAiB,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { title, description
|
|
1
|
+
export { title, description } from "./route.impl.js";
|
|
2
2
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-config-manager/bp-routes/menu/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-config-manager/bp-routes/menu/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { title, description
|
|
1
|
+
export { title, description } from "./route.impl.js";
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-config-manager/bp-routes/menu/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-config-manager/bp-routes/menu/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"route.impl.d.ts","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-config-manager/bp-routes/menu/route.impl.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAEL,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,KAAK,UAAU,EAChB,MAAM,yBAAyB,CAAC;AAwBjC,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"route.impl.d.ts","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-config-manager/bp-routes/menu/route.impl.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAEL,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,KAAK,UAAU,EAChB,MAAM,yBAAyB,CAAC;AAwBjC,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;EAQzB,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAExD,eAAO,MAAM,KAAK,kBAAkB,CAAC;AACrC,eAAO,MAAM,WAAW,gCAAgC,CAAC;AAEzD,eAAO,MAAM,IAAI,EAAE,kBAKlB,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,UAA4D,CAAC;AAEtF,eAAO,MAAM,aAAa,EAAE,YAAY,CAAC,YAAY,CAAC,EAErD,CAAC;AAEF,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;oCAMrB,CAAC"}
|
|
@@ -4,7 +4,7 @@ const RouteOptionSchema = av.object({
|
|
|
4
4
|
id: av.string().minLength(1),
|
|
5
5
|
path: av.string().minLength(1),
|
|
6
6
|
title: av.string()
|
|
7
|
-
}
|
|
7
|
+
});
|
|
8
8
|
const MenuItemSchema = av.object({
|
|
9
9
|
id: av.string().minLength(1),
|
|
10
10
|
type: av.string().minLength(1),
|
|
@@ -13,12 +13,12 @@ const MenuItemSchema = av.object({
|
|
|
13
13
|
href: av.optional(av.string()),
|
|
14
14
|
enabled: av.bool(),
|
|
15
15
|
defaultExpanded: av.optional(av.bool())
|
|
16
|
-
}
|
|
16
|
+
});
|
|
17
17
|
const AppSummarySchema = av.object({
|
|
18
18
|
id: av.string().minLength(1),
|
|
19
19
|
title: av.string().minLength(1),
|
|
20
20
|
tenantId: av.string().minLength(1)
|
|
21
|
-
}
|
|
21
|
+
});
|
|
22
22
|
export const ResponseSchema = av.object({
|
|
23
23
|
title: av.string().minLength(1),
|
|
24
24
|
apps: av.array(AppSummarySchema),
|
|
@@ -27,7 +27,7 @@ export const ResponseSchema = av.object({
|
|
|
27
27
|
routes: av.array(RouteOptionSchema).default([]),
|
|
28
28
|
adminApiBase: av.string().minLength(1),
|
|
29
29
|
serviceBaseUrl: av.string().minLength(1)
|
|
30
|
-
}
|
|
30
|
+
});
|
|
31
31
|
export const title = "Menu Designer";
|
|
32
32
|
export const description = "Design app navigation menu.";
|
|
33
33
|
export const auth = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"route.impl.js","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-config-manager/bp-routes/menu/route.impl.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAE9B,OAAO,EACL,aAAa,EAId,MAAM,yBAAyB,CAAC;AAEjC,MAAM,iBAAiB,GAAG,EAAE,CAAC,MAAM,CAAC;IAClC,EAAE,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAC5B,IAAI,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAC9B,KAAK,EAAE,EAAE,CAAC,MAAM,EAAE;CACnB,
|
|
1
|
+
{"version":3,"file":"route.impl.js","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-config-manager/bp-routes/menu/route.impl.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAE9B,OAAO,EACL,aAAa,EAId,MAAM,yBAAyB,CAAC;AAEjC,MAAM,iBAAiB,GAAG,EAAE,CAAC,MAAM,CAAC;IAClC,EAAE,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAC5B,IAAI,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAC9B,KAAK,EAAE,EAAE,CAAC,MAAM,EAAE;CACnB,CAAC,CAAC;AAEH,MAAM,cAAc,GAAG,EAAE,CAAC,MAAM,CAAC;IAC/B,EAAE,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAC5B,IAAI,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAC9B,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC;IAC/B,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC;IACjC,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC;IAC9B,OAAO,EAAE,EAAE,CAAC,IAAI,EAAE;IAClB,eAAe,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;CACxC,CAAC,CAAC;AAEH,MAAM,gBAAgB,GAAG,EAAE,CAAC,MAAM,CAAC;IACjC,EAAE,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAC5B,KAAK,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAC/B,QAAQ,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;CACnC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,cAAc,GAAG,EAAE,CAAC,MAAM,CAAC;IACtC,KAAK,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAC/B,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,gBAAgB,CAAC;IAChC,aAAa,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC;IACvC,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IAC1C,MAAM,EAAE,EAAE,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IAC/C,YAAY,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IACtC,cAAc,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;CACzC,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,KAAK,GAAG,eAAe,CAAC;AACrC,MAAM,CAAC,MAAM,WAAW,GAAG,6BAA6B,CAAC;AAEzD,MAAM,CAAC,MAAM,IAAI,GAAuB;IACtC,QAAQ,EAAE,IAAI;IACd,WAAW,EAAE;QACX,EAAE,SAAS,EAAE,iCAAiC,EAAE,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,QAAQ,CAAC,EAAE;KACzH;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAe,EAAE,UAAU,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC;AAEtF,MAAM,CAAC,MAAM,aAAa,GAAiC;IACzD,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,YAAY,EAAE,uBAAuB,EAAE,cAAc,EAAE,EAAE,EAAE,EAAE;CACrK,CAAC;AAEF,MAAM,CAAC,MAAM,SAAS,GAAG,aAAa,CACpC,EAAE,QAAQ,EAAE,cAAc,EAAE,EAC5B,CAAC,GAAG,EAAE,EAAE;IACN,IAAI,GAAG,CAAC,aAAa;QAAE,OAAO,GAAG,CAAC,aAA6B,CAAC;IAChE,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,YAAY,EAAE,uBAAuB,EAAE,cAAc,EAAE,EAAE,EAAE,CAAC;AAC/H,CAAC,CACF,CAAC"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
export declare const operationId = "admin.preview.view";
|
|
2
|
+
export { title, description, auth, cacheHints, demoScenarios } from "./route.impl.js";
|
|
1
3
|
export { ResponseSchema } from "./route.impl.js";
|
|
2
4
|
export { handleGet as default } from "./route.impl.js";
|
|
3
5
|
//# sourceMappingURL=GET.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GET.d.ts","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-config-manager/bp-routes/preview/GET.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,SAAS,IAAI,OAAO,EAAE,MAAM,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"GET.d.ts","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-config-manager/bp-routes/preview/GET.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW,uBAAuB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACtF,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,SAAS,IAAI,OAAO,EAAE,MAAM,iBAAiB,CAAC"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
export const operationId = "admin.preview.view";
|
|
2
|
+
export { title, description, auth, cacheHints, demoScenarios } from "./route.impl.js";
|
|
1
3
|
export { ResponseSchema } from "./route.impl.js";
|
|
2
4
|
export { handleGet as default } from "./route.impl.js";
|
|
3
5
|
//# sourceMappingURL=GET.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GET.js","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-config-manager/bp-routes/preview/GET.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,SAAS,IAAI,OAAO,EAAE,MAAM,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"GET.js","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-config-manager/bp-routes/preview/GET.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,WAAW,GAAG,oBAAoB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACtF,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,SAAS,IAAI,OAAO,EAAE,MAAM,iBAAiB,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { title, description
|
|
1
|
+
export { title, description } from "./route.impl.js";
|
|
2
2
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-config-manager/bp-routes/preview/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-config-manager/bp-routes/preview/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { title, description
|
|
1
|
+
export { title, description } from "./route.impl.js";
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-config-manager/bp-routes/preview/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-config-manager/bp-routes/preview/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC"}
|
package/lib/plugins/service-betterportal-config-manager/bp-routes/preview/route.impl.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"route.impl.d.ts","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-config-manager/bp-routes/preview/route.impl.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAEL,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,KAAK,UAAU,EAChB,MAAM,yBAAyB,CAAC;AAmBjC,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"route.impl.d.ts","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-config-manager/bp-routes/preview/route.impl.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAEL,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,KAAK,UAAU,EAChB,MAAM,yBAAyB,CAAC;AAmBjC,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;EAGzB,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAExD,eAAO,MAAM,KAAK,sBAAsB,CAAC;AACzC,eAAO,MAAM,WAAW,iEAAiE,CAAC;AAE1F,eAAO,MAAM,IAAI,EAAE,kBAKlB,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,UAA4D,CAAC;AAEtF,eAAO,MAAM,aAAa,EAAE,YAAY,CAAC,YAAY,CAAC,EAErD,CAAC;AAEF,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;oCAMrB,CAAC"}
|
|
@@ -13,13 +13,13 @@ const ServiceViewSchema = av.object({
|
|
|
13
13
|
demoScenarios: av.array(av.object({
|
|
14
14
|
id: av.string().minLength(1),
|
|
15
15
|
title: av.string()
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
}
|
|
16
|
+
}))
|
|
17
|
+
}))
|
|
18
|
+
});
|
|
19
19
|
export const ResponseSchema = av.object({
|
|
20
20
|
title: av.string().minLength(1),
|
|
21
21
|
services: av.array(ServiceViewSchema)
|
|
22
|
-
}
|
|
22
|
+
});
|
|
23
23
|
export const title = "Component Preview";
|
|
24
24
|
export const description = "Browse and preview service views, components, and fragments.";
|
|
25
25
|
export const auth = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"route.impl.js","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-config-manager/bp-routes/preview/route.impl.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAE9B,OAAO,EACL,aAAa,EAId,MAAM,yBAAyB,CAAC;AAEjC,MAAM,iBAAiB,GAAG,EAAE,CAAC,MAAM,CAAC;IAClC,SAAS,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IACnC,eAAe,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC;IAC1C,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC;QACxB,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;QAChC,KAAK,EAAE,EAAE,CAAC,MAAM,EAAE;QAClB,IAAI,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;QAC9B,SAAS,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC;QAChC,UAAU,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC;QACjC,YAAY,EAAE,EAAE,CAAC,IAAI,EAAE;QACvB,aAAa,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC;YAChC,EAAE,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;YAC5B,KAAK,EAAE,EAAE,CAAC,MAAM,EAAE;SACnB,
|
|
1
|
+
{"version":3,"file":"route.impl.js","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-config-manager/bp-routes/preview/route.impl.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAE9B,OAAO,EACL,aAAa,EAId,MAAM,yBAAyB,CAAC;AAEjC,MAAM,iBAAiB,GAAG,EAAE,CAAC,MAAM,CAAC;IAClC,SAAS,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IACnC,eAAe,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC;IAC1C,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC;QACxB,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;QAChC,KAAK,EAAE,EAAE,CAAC,MAAM,EAAE;QAClB,IAAI,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;QAC9B,SAAS,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC;QAChC,UAAU,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC;QACjC,YAAY,EAAE,EAAE,CAAC,IAAI,EAAE;QACvB,aAAa,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC;YAChC,EAAE,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;YAC5B,KAAK,EAAE,EAAE,CAAC,MAAM,EAAE;SACnB,CAAC,CAAC;KACJ,CAAC,CAAC;CACJ,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,cAAc,GAAG,EAAE,CAAC,MAAM,CAAC;IACtC,KAAK,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAC/B,QAAQ,EAAE,EAAE,CAAC,KAAK,CAAC,iBAAiB,CAAC;CACtC,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,KAAK,GAAG,mBAAmB,CAAC;AACzC,MAAM,CAAC,MAAM,WAAW,GAAG,8DAA8D,CAAC;AAE1F,MAAM,CAAC,MAAM,IAAI,GAAuB;IACtC,QAAQ,EAAE,IAAI;IACd,WAAW,EAAE;QACX,EAAE,SAAS,EAAE,iCAAiC,EAAE,MAAM,EAAE,eAAe,EAAE,WAAW,EAAE,CAAC,MAAM,CAAC,EAAE;KACjG;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAe,EAAE,UAAU,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC;AAEtF,MAAM,CAAC,MAAM,aAAa,GAAiC;IACzD,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,mBAAmB,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE;CAC5F,CAAC;AAEF,MAAM,CAAC,MAAM,SAAS,GAAG,aAAa,CACpC,EAAE,QAAQ,EAAE,cAAc,EAAE,EAC5B,CAAC,GAAG,EAAE,EAAE;IACN,IAAI,GAAG,CAAC,aAAa;QAAE,OAAO,GAAG,CAAC,aAA6B,CAAC;IAChE,OAAO,EAAE,KAAK,EAAE,mBAAmB,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;AACtD,CAAC,CACF,CAAC"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
export declare const operationId = "admin.routes.view";
|
|
2
|
+
export { title, description, auth, cacheHints, demoScenarios } from "./route.impl.js";
|
|
1
3
|
export { ResponseSchema } from "./route.impl.js";
|
|
2
4
|
export { handleGet as default } from "./route.impl.js";
|
|
3
5
|
//# sourceMappingURL=GET.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GET.d.ts","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-config-manager/bp-routes/routes/GET.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,SAAS,IAAI,OAAO,EAAE,MAAM,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"GET.d.ts","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-config-manager/bp-routes/routes/GET.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW,sBAAsB,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACtF,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,SAAS,IAAI,OAAO,EAAE,MAAM,iBAAiB,CAAC"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
export const operationId = "admin.routes.view";
|
|
2
|
+
export { title, description, auth, cacheHints, demoScenarios } from "./route.impl.js";
|
|
1
3
|
export { ResponseSchema } from "./route.impl.js";
|
|
2
4
|
export { handleGet as default } from "./route.impl.js";
|
|
3
5
|
//# sourceMappingURL=GET.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GET.js","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-config-manager/bp-routes/routes/GET.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,SAAS,IAAI,OAAO,EAAE,MAAM,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"GET.js","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-config-manager/bp-routes/routes/GET.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,WAAW,GAAG,mBAAmB,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACtF,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,SAAS,IAAI,OAAO,EAAE,MAAM,iBAAiB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GET.d.ts","sourceRoot":"","sources":["../../../../../../src/plugins/service-betterportal-config-manager/bp-routes/routes/_renderer.bootstrap5/GET.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"GET.d.ts","sourceRoot":"","sources":["../../../../../../src/plugins/service-betterportal-config-manager/bp-routes/routes/_renderer.bootstrap5/GET.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AA6erD,KAAK,WAAW,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC;AAElD,MAAM,MAAM,SAAS,GAAG;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,WAAW,EAAE,CAAC;CACvB,CAAC;AAUF,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,SAAS,EAAE,CAcpE;AA6LD,wBAAgB,MAAM,CAAC,IAAI,EAAE,YAAY,GAAG,cAAc,CAkHzD"}
|
package/lib/plugins/service-betterportal-config-manager/bp-routes/routes/_renderer.bootstrap5/GET.js
CHANGED
|
@@ -37,18 +37,20 @@ function manifestLoaderScript(services, routes) {
|
|
|
37
37
|
|
|
38
38
|
const manifestViews = (manifest) => {
|
|
39
39
|
if (!Array.isArray(manifest?.views)) return [];
|
|
40
|
-
return manifest.views
|
|
41
|
-
.map((
|
|
40
|
+
return manifest.views.flatMap((view) =>
|
|
41
|
+
(Array.isArray(view.operations) ? view.operations : []).map((operation) => ({
|
|
42
42
|
viewId: String(view.viewId || ""),
|
|
43
|
-
|
|
43
|
+
operationId: String(operation.operationId || ""),
|
|
44
|
+
title: String(operation.title || operation.operationId || ""),
|
|
45
|
+
description: String(operation.description || ""),
|
|
44
46
|
path: String(view.path || ""),
|
|
45
47
|
pathVariants: Array.isArray(view.pathVariants) ? view.pathVariants.map(String) : [],
|
|
46
48
|
paramsSchema: view.paramsSchema && typeof view.paramsSchema === "object" ? view.paramsSchema : undefined,
|
|
47
|
-
|
|
48
|
-
renderable: viewRenderable(
|
|
49
|
-
dependencies: Array.isArray(
|
|
49
|
+
method: String(operation.method || ""),
|
|
50
|
+
renderable: viewRenderable(operation),
|
|
51
|
+
dependencies: Array.isArray(operation.dependencies) ? operation.dependencies.map(String) : []
|
|
50
52
|
}))
|
|
51
|
-
|
|
53
|
+
).filter((operation) => operation.viewId && operation.operationId);
|
|
52
54
|
};
|
|
53
55
|
|
|
54
56
|
const syncForm = (form) => {
|
|
@@ -58,27 +60,29 @@ function manifestLoaderScript(services, routes) {
|
|
|
58
60
|
if (!service || !view) return;
|
|
59
61
|
|
|
60
62
|
const selectedService = service.value;
|
|
61
|
-
const
|
|
63
|
+
const selectedOperation = view.dataset.selectedOperation || view.value || "";
|
|
62
64
|
const placeholder = view.querySelector("option[value='']")?.textContent || "Select view...";
|
|
63
65
|
view.replaceChildren(new Option(placeholder, ""));
|
|
64
66
|
|
|
65
67
|
for (const svc of byServiceId.values()) {
|
|
66
68
|
for (const routeView of svc.views) {
|
|
67
|
-
if (routeView.renderable === false && !(svc.id === selectedService && routeView.
|
|
68
|
-
const option = new Option(routeView.title || routeView.
|
|
69
|
+
if (routeView.renderable === false && !(svc.id === selectedService && routeView.operationId === selectedOperation)) continue;
|
|
70
|
+
const option = new Option((routeView.title || routeView.operationId) + " · " + routeView.method + " · " + routeView.operationId, routeView.operationId);
|
|
69
71
|
option.dataset.serviceId = svc.id;
|
|
72
|
+
option.dataset.viewId = routeView.viewId;
|
|
70
73
|
option.dataset.renderable = routeView.renderable === false ? "false" : "true";
|
|
71
|
-
option.disabled = routeView.renderable === false && !(svc.id === selectedService && routeView.
|
|
72
|
-
option.selected = svc.id === selectedService && routeView.
|
|
74
|
+
option.disabled = routeView.renderable === false && !(svc.id === selectedService && routeView.operationId === selectedOperation);
|
|
75
|
+
option.selected = svc.id === selectedService && routeView.operationId === selectedOperation;
|
|
73
76
|
view.appendChild(option);
|
|
74
77
|
}
|
|
75
78
|
}
|
|
76
79
|
|
|
77
80
|
const selectedExists = Array.from(view.options).some((option) =>
|
|
78
|
-
option.value ===
|
|
81
|
+
option.value === selectedOperation && option.dataset.serviceId === selectedService
|
|
79
82
|
);
|
|
80
|
-
if (selectedService &&
|
|
83
|
+
if (selectedService && selectedOperation && !selectedExists) {
|
|
81
84
|
const selectedServiceMeta = byServiceId.get(selectedService);
|
|
85
|
+
const selectedView = selectedOperation;
|
|
82
86
|
const reason = !selectedServiceMeta
|
|
83
87
|
? "service unavailable"
|
|
84
88
|
: selectedServiceMeta.manifestLoaded === false
|
|
@@ -88,6 +92,7 @@ function manifestLoaderScript(services, routes) {
|
|
|
88
92
|
option.dataset.serviceId = selectedService;
|
|
89
93
|
option.dataset.renderable = "true";
|
|
90
94
|
option.dataset.unavailable = "true";
|
|
95
|
+
option.dataset.viewId = form.querySelector("[data-bp-route-view-id]")?.value || "";
|
|
91
96
|
view.appendChild(option);
|
|
92
97
|
}
|
|
93
98
|
|
|
@@ -104,10 +109,12 @@ function manifestLoaderScript(services, routes) {
|
|
|
104
109
|
if (visible && option.selected) hasSelectedView = true;
|
|
105
110
|
});
|
|
106
111
|
if (hasSelectedView) {
|
|
107
|
-
view.dataset.
|
|
112
|
+
view.dataset.selectedOperation = view.value;
|
|
108
113
|
} else {
|
|
109
114
|
view.value = "";
|
|
110
115
|
}
|
|
116
|
+
const viewId = form.querySelector("[data-bp-route-view-id]");
|
|
117
|
+
if (viewId) viewId.value = view.selectedOptions?.[0]?.dataset?.viewId || viewId.value || "";
|
|
111
118
|
syncRouteUiFields(form);
|
|
112
119
|
};
|
|
113
120
|
|
|
@@ -128,17 +135,17 @@ function manifestLoaderScript(services, routes) {
|
|
|
128
135
|
|
|
129
136
|
const selectedViewMeta = (form) => {
|
|
130
137
|
const serviceId = form.querySelector("[data-bp-route-service]")?.value || "";
|
|
131
|
-
const
|
|
132
|
-
return byServiceId.get(serviceId)?.views.find((candidate) => candidate.
|
|
138
|
+
const operationId = form.querySelector("[data-bp-route-view]")?.value || "";
|
|
139
|
+
return byServiceId.get(serviceId)?.views.find((candidate) => candidate.operationId === operationId);
|
|
133
140
|
};
|
|
134
141
|
|
|
135
142
|
const syncCreateConflict = (form, servicePath) => {
|
|
136
143
|
if (form.dataset.bpRouteMode !== "create") return false;
|
|
137
144
|
const serviceId = form.querySelector("[data-bp-route-service]")?.value || "";
|
|
138
|
-
const
|
|
139
|
-
const conflict = !!serviceId && !!
|
|
145
|
+
const operationId = form.querySelector("[data-bp-route-view]")?.value || "";
|
|
146
|
+
const conflict = !!serviceId && !!operationId && !!servicePath && mountedRoutes.some((route) =>
|
|
140
147
|
route.serviceId === serviceId
|
|
141
|
-
&& route.
|
|
148
|
+
&& Array.isArray(route.operations) && route.operations.includes(operationId)
|
|
142
149
|
&& (route.servicePathVariant || route.targetPath || "") === servicePath
|
|
143
150
|
);
|
|
144
151
|
const submit = form.closest("form")?.querySelector("[data-bp-add-route-submit]");
|
|
@@ -256,8 +263,9 @@ function manifestLoaderScript(services, routes) {
|
|
|
256
263
|
});
|
|
257
264
|
document.querySelectorAll("[data-bp-route-view-label]").forEach((node) => {
|
|
258
265
|
const service = byServiceId.get(node.dataset.bpRouteServiceId || "");
|
|
259
|
-
const routeView = service?.views.find((view) => view.
|
|
260
|
-
|
|
266
|
+
const routeView = service?.views.find((view) => view.operationId === node.dataset.bpRouteOperationLabel)
|
|
267
|
+
|| service?.views.find((view) => view.viewId === node.dataset.bpRouteViewLabel);
|
|
268
|
+
if (routeView) node.textContent = routeView.title || routeView.operationId;
|
|
261
269
|
});
|
|
262
270
|
};
|
|
263
271
|
|
|
@@ -265,7 +273,7 @@ function manifestLoaderScript(services, routes) {
|
|
|
265
273
|
if (!isCurrent()) return;
|
|
266
274
|
if (!event.target?.matches?.("[data-bp-route-service]")) return;
|
|
267
275
|
const view = event.target.closest("[data-bp-route-form]")?.querySelector("[data-bp-route-view]");
|
|
268
|
-
if (view) view.dataset.
|
|
276
|
+
if (view) view.dataset.selectedOperation = "";
|
|
269
277
|
const servicePath = event.target.closest("[data-bp-route-form]")?.querySelector("[data-bp-service-path]");
|
|
270
278
|
if (servicePath) {
|
|
271
279
|
servicePath.dataset.selectedPath = "";
|
|
@@ -277,7 +285,9 @@ function manifestLoaderScript(services, routes) {
|
|
|
277
285
|
document.addEventListener("change", (event) => {
|
|
278
286
|
if (!isCurrent()) return;
|
|
279
287
|
if (!event.target?.matches?.("[data-bp-route-view]")) return;
|
|
280
|
-
event.target.dataset.
|
|
288
|
+
event.target.dataset.selectedOperation = event.target.value;
|
|
289
|
+
const viewId = event.target.closest("[data-bp-route-form]")?.querySelector("[data-bp-route-view-id]");
|
|
290
|
+
if (viewId) viewId.value = event.target.selectedOptions?.[0]?.dataset?.viewId || "";
|
|
281
291
|
const servicePath = event.target.closest("[data-bp-route-form]")?.querySelector("[data-bp-service-path]");
|
|
282
292
|
if (servicePath) {
|
|
283
293
|
servicePath.dataset.selectedPath = "";
|
|
@@ -353,16 +363,17 @@ function manifestLoaderScript(services, routes) {
|
|
|
353
363
|
function routeFormFields(prefix, services, route) {
|
|
354
364
|
const selectedService = route?.serviceId ?? "";
|
|
355
365
|
const selectedView = route?.viewId ?? "";
|
|
366
|
+
const selectedOperation = route?.operations?.[0] ?? "";
|
|
356
367
|
const viewOptions = services.flatMap((svc) => svc.views.map((view) => ({
|
|
357
368
|
serviceId: svc.id,
|
|
358
369
|
serviceTitle: svc.title,
|
|
359
370
|
...view
|
|
360
371
|
})));
|
|
361
372
|
const selectedServiceMeta = services.find((service) => service.id === selectedService);
|
|
362
|
-
const selectedMeta = viewOptions.find((view) => view.serviceId === selectedService && view.
|
|
373
|
+
const selectedMeta = viewOptions.find((view) => view.serviceId === selectedService && view.operationId === selectedOperation);
|
|
363
374
|
const selectedViewMissing = Boolean(route && selectedView && !selectedMeta);
|
|
364
375
|
const isRenderable = selectedMeta?.renderable ?? route?.renderable ?? true;
|
|
365
|
-
return (_jsxs(_Fragment, { children: [_jsxs("div", { class: "mb-3", children: [_jsx("label", { class: "form-label", children: "Service" }), _jsxs("select", { class: "form-select", name: "serviceId", id: `${prefix}-service`, "data-bp-route-service": "", required: true, children: [_jsx("option", { value: "", children: "Select service..." }), services.map((svc) => (_jsx("option", { value: svc.id, selected: svc.id === selectedService, children: serviceLabel(services, svc.id) }))), route && selectedService && !selectedServiceMeta ? (_jsxs("option", { value: selectedService, selected: true, children: [selectedService, " \u2014 service unavailable"] })) : ""] })] }), _jsxs("div", { class: "mb-3", children: [_jsx("label", { class: "form-label", children: "
|
|
376
|
+
return (_jsxs(_Fragment, { children: [_jsxs("div", { class: "mb-3", children: [_jsx("label", { class: "form-label", children: "Service" }), _jsxs("select", { class: "form-select", name: "serviceId", id: `${prefix}-service`, "data-bp-route-service": "", required: true, children: [_jsx("option", { value: "", children: "Select service..." }), services.map((svc) => (_jsx("option", { value: svc.id, selected: svc.id === selectedService, children: serviceLabel(services, svc.id) }))), route && selectedService && !selectedServiceMeta ? (_jsxs("option", { value: selectedService, selected: true, children: [selectedService, " \u2014 service unavailable"] })) : ""] })] }), _jsxs("div", { class: "mb-3", children: [_jsx("label", { class: "form-label", children: "Operation" }), _jsx("input", { type: "hidden", name: "viewId", value: selectedView, "data-bp-route-view-id": "" }), _jsxs("select", { class: "form-select", name: "operationId", id: `${prefix}-view`, "data-bp-route-view": "", "data-selected-operation": selectedOperation, required: true, children: [_jsx("option", { value: "", children: "Select operation..." }), selectedViewMissing ? (_jsxs("option", { value: selectedOperation, "data-service-id": selectedService, "data-view-id": selectedView, "data-renderable": isRenderable ? "true" : "false", "data-unavailable": "true", selected: true, children: [selectedView, " \u2014 ", !selectedServiceMeta ? "service unavailable" : selectedServiceMeta.manifestLoaded ? "unavailable in current manifest" : "service manifest not loaded"] })) : "", viewOptions.filter((view) => view.renderable !== false || (view.serviceId === selectedService && view.operationId === selectedOperation)).map((view) => (_jsxs("option", { value: view.operationId, "data-service-id": view.serviceId, "data-view-id": view.viewId, "data-renderable": view.renderable === false ? "false" : "true", disabled: view.renderable === false && !(view.serviceId === selectedService && view.operationId === selectedOperation), selected: view.serviceId === selectedService && view.operationId === selectedOperation, children: [view.title, " \u00B7 ", view.method, " \u00B7 ", view.operationId] })))] }), _jsx("div", { class: "form-text", children: "Select the method-specific operation to mount. Its view id is derived automatically." })] }), _jsxs("div", { class: "mb-3", children: [_jsx("label", { class: "form-label", children: "Mount path" }), _jsx("input", { type: "text", class: "form-control font-monospace", name: "path", value: route?.path ?? "", placeholder: "/dashboard", required: isRenderable, disabled: !isRenderable, pattern: "/.*", "data-bp-ui-route-field": "" }), _jsx("div", { class: "form-text", children: "URL path users will see in this app. Service-side path is resolved from the view id at sync time." })] }), _jsxs("div", { class: "mb-3", children: [_jsx("label", { class: "form-label", children: "Service path" }), _jsx("select", { class: "form-select font-monospace", name: "servicePathVariant", "data-bp-service-path": "", "data-selected-path": route?.servicePathVariant ?? route?.targetPath ?? selectedMeta?.path ?? "" }), _jsx("div", { class: "form-text", children: "For optional service routes, choose the concrete path this app route targets." }), _jsx("div", { class: "form-text text-warning d-none", "data-bp-service-path-warning": "", children: "Stored service path is no longer published by this view." })] }), _jsx("div", { class: "mb-3 d-none", "data-bp-route-params": "", "data-fixed-params": JSON.stringify(route?.fixedParams ?? {}), children: _jsx("label", { class: "form-label", children: "Route parameters" }) }), _jsxs("div", { class: "mb-3", children: [_jsx("label", { class: "form-label", children: "Display Title" }), _jsx("input", { type: "text", class: "form-control", name: "title", value: route?.title ?? "", placeholder: "Dashboard", required: isRenderable, disabled: !isRenderable, pattern: ".*\\S.*", "data-bp-ui-route-field": "" })] }), _jsxs("div", { class: "mb-3", children: [_jsx("label", { class: "form-label", children: "Query string (optional)" }), _jsx("input", { type: "text", class: "form-control font-monospace", name: "query", value: route?.query ?? "", placeholder: "filter=active", disabled: !isRenderable, "data-bp-ui-route-field": "" }), _jsx("div", { class: "form-text", children: "Appended to the service request. Use this to customize the same view, not to change paths." })] })] }));
|
|
366
377
|
}
|
|
367
378
|
function serviceLabel(services, serviceId) {
|
|
368
379
|
const service = services.find((svc) => svc.id === serviceId);
|
|
@@ -371,10 +382,11 @@ function serviceLabel(services, serviceId) {
|
|
|
371
382
|
const identity = service.serviceId || service.id;
|
|
372
383
|
return identity !== service.title ? `${service.title} · ${identity}` : service.title;
|
|
373
384
|
}
|
|
374
|
-
function viewLabel(services, serviceId, viewId) {
|
|
385
|
+
function viewLabel(services, serviceId, viewId, operationId) {
|
|
375
386
|
const service = services.find((svc) => svc.id === serviceId);
|
|
376
|
-
const view = service?.views.find((candidate) => candidate.
|
|
377
|
-
|
|
387
|
+
const view = service?.views.find((candidate) => candidate.operationId === operationId)
|
|
388
|
+
?? service?.views.find((candidate) => candidate.viewId === viewId);
|
|
389
|
+
return view ? `${view.title} · ${view.method} · ${view.operationId}` : operationId || viewId;
|
|
378
390
|
}
|
|
379
391
|
function routeWarning(services, route) {
|
|
380
392
|
const service = services.find((candidate) => candidate.id === route.serviceId);
|
|
@@ -382,8 +394,8 @@ function routeWarning(services, route) {
|
|
|
382
394
|
return "Service unavailable";
|
|
383
395
|
if (!service.manifestLoaded)
|
|
384
396
|
return "Service manifest not loaded";
|
|
385
|
-
if (!service.views.some((candidate) => candidate.viewId === route.viewId))
|
|
386
|
-
return "Manifest
|
|
397
|
+
if (!service.views.some((candidate) => candidate.viewId === route.viewId && (route.operations ?? []).includes(candidate.operationId)))
|
|
398
|
+
return "Manifest operation unavailable";
|
|
387
399
|
return undefined;
|
|
388
400
|
}
|
|
389
401
|
function methodsLabel(methods) {
|
|
@@ -431,7 +443,7 @@ function renderPageRoutes(data, apiBase) {
|
|
|
431
443
|
return (_jsx("div", { class: "table-responsive", children: _jsxs("table", { class: "table table-sm table-hover align-middle", children: [_jsx("thead", { children: _jsxs("tr", { children: [_jsx("th", { children: "Mount path" }), _jsx("th", { children: "Title" }), _jsx("th", { children: "Service" }), _jsx("th", { children: "View" }), _jsx("th", { children: "Query" }), _jsx("th", { children: "On" }), _jsx("th", {})] }) }), _jsx("tbody", { children: groups.map((group) => (_jsxs(_Fragment, { children: [group.synthetic ? (_jsx("tr", { class: "table-light", "data-bp-path-group": group.pathPrefix, children: _jsxs("th", { colspan: 7, class: "font-monospace small py-2", children: ["Path group: ", group.pathPrefix] }) })) : "", group.routes.map((route) => {
|
|
432
444
|
const warning = routeWarning(data.availableServices, route);
|
|
433
445
|
const conflictCount = conflictCounts.get(appRoutePatternKey(route.path)) ?? 0;
|
|
434
|
-
return (_jsxs("tr", { class: route.enabled ? "" : "text-secondary", "data-bp-route-id": route.id, children: [_jsxs("td", { class: "font-monospace small fw-semibold", children: [pathWithinGroup(group, route.path), conflictCount > 1 ? _jsxs("span", { class: "badge text-bg-danger ms-2", children: ["Conflict: ", conflictCount, " route records use this mount path"] }) : ""] }), _jsx("td", { children: route.title ?? "" }), _jsx("td", { class: "small", "data-bp-route-service-label": route.serviceId, children: serviceLabel(data.availableServices, route.serviceId) }), _jsxs("td", { class: "small", children: [_jsx("span", { "data-bp-route-service-id": route.serviceId, "data-bp-route-view-label": route.viewId, children: viewLabel(data.availableServices, route.serviceId, route.viewId) }), _jsxs("div", { class: "d-flex flex-wrap gap-1 mt-1", children: [!route.enabled ? _jsx("span", { class: "badge text-bg-secondary", children: "Disabled" }) : "", warning ? _jsx("span", { class: "badge text-bg-warning", children: warning }) : ""] })] }), _jsx("td", { class: "small font-monospace", children: route.query ?? "" }), _jsx("td", { children: _jsx("button", { class: `btn btn-sm ${route.enabled ? "btn-success" : "btn-outline-secondary"}`, "hx-put": `${apiBase}/apps/${data.selectedAppId}/routes/${route.id}`, "hx-vals": JSON.stringify({ enabled: !route.enabled }), "hx-target": "#bp-main", "hx-swap": "innerHTML", children: route.enabled ? "on" : "off" }) }), _jsx("td", { children: _jsxs("div", { class: "btn-group btn-group-sm", children: [_jsx("button", { class: "btn btn-outline-primary", "data-bs-toggle": "offcanvas", "data-bs-target": `#bp-edit-route-panel-${route.id}`, children: "Edit" }), _jsx("button", { class: "btn btn-outline-danger", "hx-delete": `${apiBase}/apps/${data.selectedAppId}/routes/${route.id}`, "hx-confirm": "Delete route?", "hx-target": "#bp-routes-alerts", "hx-swap": "innerHTML", children: "x" })] }) })] }));
|
|
446
|
+
return (_jsxs("tr", { class: route.enabled ? "" : "text-secondary", "data-bp-route-id": route.id, children: [_jsxs("td", { class: "font-monospace small fw-semibold", children: [pathWithinGroup(group, route.path), conflictCount > 1 ? _jsxs("span", { class: "badge text-bg-danger ms-2", children: ["Conflict: ", conflictCount, " route records use this mount path"] }) : ""] }), _jsx("td", { children: route.title ?? "" }), _jsx("td", { class: "small", "data-bp-route-service-label": route.serviceId, children: serviceLabel(data.availableServices, route.serviceId) }), _jsxs("td", { class: "small", children: [_jsx("span", { "data-bp-route-service-id": route.serviceId, "data-bp-route-view-label": route.viewId, "data-bp-route-operation-label": route.operations?.[0], children: viewLabel(data.availableServices, route.serviceId, route.viewId, route.operations?.[0]) }), _jsxs("div", { class: "d-flex flex-wrap gap-1 mt-1", children: [!route.enabled ? _jsx("span", { class: "badge text-bg-secondary", children: "Disabled" }) : "", warning ? _jsx("span", { class: "badge text-bg-warning", children: warning }) : ""] })] }), _jsx("td", { class: "small font-monospace", children: route.query ?? "" }), _jsx("td", { children: _jsx("button", { class: `btn btn-sm ${route.enabled ? "btn-success" : "btn-outline-secondary"}`, "hx-put": `${apiBase}/apps/${data.selectedAppId}/routes/${route.id}`, "hx-vals": JSON.stringify({ enabled: !route.enabled }), "hx-target": "#bp-main", "hx-swap": "innerHTML", children: route.enabled ? "on" : "off" }) }), _jsx("td", { children: _jsxs("div", { class: "btn-group btn-group-sm", children: [_jsx("button", { class: "btn btn-outline-primary", "data-bs-toggle": "offcanvas", "data-bs-target": `#bp-edit-route-panel-${route.id}`, children: "Edit" }), _jsx("button", { class: "btn btn-outline-danger", "hx-delete": `${apiBase}/apps/${data.selectedAppId}/routes/${route.id}`, "hx-confirm": "Delete route?", "hx-target": "#bp-routes-alerts", "hx-swap": "innerHTML", children: "x" })] }) })] }));
|
|
435
447
|
})] }))) })] }) }));
|
|
436
448
|
}
|
|
437
449
|
function renderApiRoutes(data, apiBase) {
|
|
@@ -450,7 +462,7 @@ function renderApiRoutes(data, apiBase) {
|
|
|
450
462
|
const panelId = `bp-api-routes-${domId(serviceId)}`;
|
|
451
463
|
const open = serviceId === openServiceId;
|
|
452
464
|
return (_jsxs("div", { class: "accordion-item", children: [_jsx("h3", { class: "accordion-header", children: _jsxs("button", { class: `accordion-button ${open ? "" : "collapsed"}`, type: "button", "data-bs-toggle": "collapse", "data-bs-target": `#${panelId}`, "aria-expanded": open ? "true" : "false", "aria-controls": panelId, children: [_jsx("span", { "data-bp-route-service-label": serviceId, children: serviceLabel(data.availableServices, serviceId) }), _jsx("span", { class: "font-monospace small text-secondary ms-2", children: serviceId }), _jsx("span", { class: "badge text-bg-secondary ms-2", children: routes.length })] }) }), _jsx("div", { id: panelId, class: `accordion-collapse collapse ${open ? "show" : ""}`, "data-bs-parent": "#bp-api-routes-accordion", children: _jsx("div", { class: "accordion-body p-0", children: _jsxs("table", { class: "table table-sm mb-0 align-middle", children: [_jsx("thead", { children: _jsxs("tr", { children: [_jsx("th", { children: "App allowlist path" }), _jsx("th", { children: "Service path" }), _jsx("th", { children: "View" }), _jsx("th", { children: "Methods" }), _jsx("th", { children: "On" })] }) }), _jsx("tbody", { children: routes.map((route) => {
|
|
453
|
-
return (_jsxs("tr", { class: route.enabled ? "" : "text-secondary", "data-bp-route-id": route.id, children: [_jsx("td", { class: "font-monospace small", children: route.path }), _jsx("td", { class: "font-monospace small", children: route.targetPath ?? "" }), _jsx("td", { class: "small", children: _jsx("span", { "data-bp-route-service-id": route.serviceId, "data-bp-route-view-label": route.viewId, children: viewLabel(data.availableServices, route.serviceId, route.viewId) }) }), _jsx("td", { class: "small font-monospace", children: methodsLabel(route.methods) }), _jsx("td", { children: _jsx("button", { class: `btn btn-sm ${route.enabled ? "btn-success" : "btn-outline-secondary"}`, "hx-put": `${apiBase}/apps/${data.selectedAppId}/routes/${route.id}`, "hx-vals": JSON.stringify({ enabled: !route.enabled }), "hx-target": "#bp-main", "hx-swap": "innerHTML", children: route.enabled ? "on" : "off" }) })] }));
|
|
465
|
+
return (_jsxs("tr", { class: route.enabled ? "" : "text-secondary", "data-bp-route-id": route.id, children: [_jsx("td", { class: "font-monospace small", children: route.path }), _jsx("td", { class: "font-monospace small", children: route.targetPath ?? "" }), _jsx("td", { class: "small", children: _jsx("span", { "data-bp-route-service-id": route.serviceId, "data-bp-route-view-label": route.viewId, "data-bp-route-operation-label": route.operations?.[0], children: viewLabel(data.availableServices, route.serviceId, route.viewId, route.operations?.[0]) }) }), _jsx("td", { class: "small font-monospace", children: methodsLabel(route.methods) }), _jsx("td", { children: _jsx("button", { class: `btn btn-sm ${route.enabled ? "btn-success" : "btn-outline-secondary"}`, "hx-put": `${apiBase}/apps/${data.selectedAppId}/routes/${route.id}`, "hx-vals": JSON.stringify({ enabled: !route.enabled }), "hx-target": "#bp-main", "hx-swap": "innerHTML", children: route.enabled ? "on" : "off" }) })] }));
|
|
454
466
|
}) })] }) }) })] }));
|
|
455
467
|
}) }));
|
|
456
468
|
}
|