@antasphere/chassis-server 1.3.0 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/dist/api/create-api.d.ts.map +1 -1
  2. package/dist/api/create-api.js +17 -0
  3. package/dist/api/create-api.js.map +1 -1
  4. package/dist/apps/index.d.ts +11 -0
  5. package/dist/apps/index.d.ts.map +1 -0
  6. package/dist/apps/index.js +11 -0
  7. package/dist/apps/index.js.map +1 -0
  8. package/dist/apps/routes.d.ts +14 -0
  9. package/dist/apps/routes.d.ts.map +1 -0
  10. package/dist/apps/routes.js +23 -0
  11. package/dist/apps/routes.js.map +1 -0
  12. package/dist/apps/select.d.ts +64 -0
  13. package/dist/apps/select.d.ts.map +1 -0
  14. package/dist/apps/select.js +168 -0
  15. package/dist/apps/select.js.map +1 -0
  16. package/dist/apps/service.d.ts +74 -0
  17. package/dist/apps/service.d.ts.map +1 -0
  18. package/dist/apps/service.js +165 -0
  19. package/dist/apps/service.js.map +1 -0
  20. package/dist/boot.d.ts.map +1 -1
  21. package/dist/boot.js +5 -0
  22. package/dist/boot.js.map +1 -1
  23. package/dist/env.d.ts +2 -0
  24. package/dist/env.d.ts.map +1 -1
  25. package/dist/env.js +2 -0
  26. package/dist/env.js.map +1 -1
  27. package/dist/identity/hub-grant.d.ts +70 -0
  28. package/dist/identity/hub-grant.d.ts.map +1 -1
  29. package/dist/identity/hub-grant.js +119 -14
  30. package/dist/identity/hub-grant.js.map +1 -1
  31. package/dist/identity/index.d.ts +1 -1
  32. package/dist/identity/index.d.ts.map +1 -1
  33. package/dist/identity/index.js +1 -1
  34. package/dist/identity/index.js.map +1 -1
  35. package/dist/testing/fake-hub.d.ts +20 -0
  36. package/dist/testing/fake-hub.d.ts.map +1 -1
  37. package/dist/testing/fake-hub.js +73 -1
  38. package/dist/testing/fake-hub.js.map +1 -1
  39. package/package.json +7 -3
  40. package/src/api/create-api.ts +21 -0
  41. package/src/apps/index.ts +17 -0
  42. package/src/apps/routes.ts +30 -0
  43. package/src/apps/select.ts +175 -0
  44. package/src/apps/service.ts +198 -0
  45. package/src/boot.ts +5 -0
  46. package/src/env.ts +2 -0
  47. package/src/identity/hub-grant.ts +187 -15
  48. package/src/identity/index.ts +6 -1
  49. package/src/testing/fake-hub.ts +83 -1
  50. package/test/integration/apps-route.test.ts +235 -0
  51. package/test/integration/hub-grant.test.ts +97 -0
  52. package/test/unit/apps.test.ts +544 -0
  53. package/test/unit/fake-hub-me-apps.test.ts +71 -0
  54. package/test/unit/hub-grant-refusal.test.ts +29 -0
  55. package/test/unit/hub-grant-sweep.test.ts +151 -0
@@ -1 +1 @@
1
- {"version":3,"file":"create-api.d.ts","sourceRoot":"","sources":["../../src/api/create-api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAUhD,OAAO,EAOL,KAAK,EAAE,EACR,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,EAAa,KAAK,OAAO,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAOjD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,KAAK,EAKV,cAAc,EACd,gBAAgB,EACjB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAmB,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACvE,OAAO,EAGL,KAAK,gBAAgB,EACrB,KAAK,0BAA0B,EAChC,MAAM,0BAA0B,CAAC;AAIlC,OAAO,EAIL,KAAK,aAAa,EACnB,MAAM,wBAAwB,CAAC;AAQhC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAuB,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC/E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAI7D,OAAO,EAKL,KAAK,kBAAkB,EACxB,MAAM,YAAY,CAAC;AAUpB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAO3D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AA0HzD,MAAM,WAAW,OAAO,CACtB,SAAS,SAAS,CAAC,CAAC,WAAW,EAC/B,OAAO,EACP,QAAQ,SAAS,MAAM,EACvB,OAAO,EACP,cAAc;IAEd,EAAE,EAAE,EAAE,CAAC;IACP,GAAG,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IACxB,IAAI,EAAE,IAAI,CAAC;IACX,QAAQ,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,aAAa,CAAC;IACvB,KAAK,EAAE,YAAY,CAAC;IACpB,KAAK,EAAE,WAAW,CAAC;IACnB,QAAQ,EAAE,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IACrC,OAAO,EAAE,aAAa,CAAC;IACvB,WAAW,EAAE,WAAW,CAAC;IACzB,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,iFAAiF;IACjF,UAAU,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,sGAAsG;IACtG,wBAAwB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9C,eAAe,EAAE,sBAAsB,CAAC;IACxC,iFAAiF;IACjF,IAAI,EAAE,cAAc,CAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,cAAc,CAAC,CAAC;IAC5E,+FAA+F;IAC/F,MAAM,EAAE,OAAO,CAAC;IAChB,+FAA+F;IAC/F,gBAAgB,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC;;;;;OAKG;IACH,MAAM,CAAC,EAAE,aAAa,GAAG,SAAS,CAAC;IACnC;;;OAGG;IACH,QAAQ,CAAC,EAAE,eAAe,GAAG,SAAS,CAAC;IACvC;;;;OAIG;IACH,SAAS,CAAC,EAAE,gBAAgB,GAAG,SAAS,CAAC;IACzC;;;;OAIG;IACH,aAAa,CAAC,EAAE,aAAa,GAAG,SAAS,CAAC;IAC1C;;;;OAIG;IACH,cAAc,CAAC,EAAE,kBAAkB,GAAG,SAAS,CAAC;IAChD;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,MAAM,KAAK,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,GAAG,SAAS,CAAC;IACtF;;;;;;;;OAQG;IACH,qBAAqB,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,SAAS,CAAC;IACxE;;;;OAIG;IACH,YAAY,EAAE,0BAA0B,CAAC;IACzC;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,gBAAgB,GAAG,SAAS,CAAC;IAChD,+EAA+E;IAC/E,QAAQ,EAAE,cAAc,CAAC;CAC1B;AAKD;;;;GAIG;AACH,wBAAgB,YAAY,CAC1B,SAAS,SAAS,CAAC,CAAC,WAAW,EAC/B,OAAO,EACP,QAAQ,SAAS,MAAM,EACvB,OAAO,EACP,cAAc,EACd,IAAI,EAAE,OAAO,CAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,cAAc,CAAC,GAAG,WAAW,CAolCnF"}
1
+ {"version":3,"file":"create-api.d.ts","sourceRoot":"","sources":["../../src/api/create-api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAUhD,OAAO,EAOL,KAAK,EAAE,EACR,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,EAAa,KAAK,OAAO,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAOjD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,KAAK,EAKV,cAAc,EACd,gBAAgB,EACjB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAmB,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACvE,OAAO,EAGL,KAAK,gBAAgB,EACrB,KAAK,0BAA0B,EAChC,MAAM,0BAA0B,CAAC;AAIlC,OAAO,EAIL,KAAK,aAAa,EACnB,MAAM,wBAAwB,CAAC;AAQhC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAuB,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC/E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAI7D,OAAO,EAKL,KAAK,kBAAkB,EACxB,MAAM,YAAY,CAAC;AAYpB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAO3D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AA0HzD,MAAM,WAAW,OAAO,CACtB,SAAS,SAAS,CAAC,CAAC,WAAW,EAC/B,OAAO,EACP,QAAQ,SAAS,MAAM,EACvB,OAAO,EACP,cAAc;IAEd,EAAE,EAAE,EAAE,CAAC;IACP,GAAG,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IACxB,IAAI,EAAE,IAAI,CAAC;IACX,QAAQ,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,aAAa,CAAC;IACvB,KAAK,EAAE,YAAY,CAAC;IACpB,KAAK,EAAE,WAAW,CAAC;IACnB,QAAQ,EAAE,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IACrC,OAAO,EAAE,aAAa,CAAC;IACvB,WAAW,EAAE,WAAW,CAAC;IACzB,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,iFAAiF;IACjF,UAAU,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,sGAAsG;IACtG,wBAAwB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9C,eAAe,EAAE,sBAAsB,CAAC;IACxC,iFAAiF;IACjF,IAAI,EAAE,cAAc,CAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,cAAc,CAAC,CAAC;IAC5E,+FAA+F;IAC/F,MAAM,EAAE,OAAO,CAAC;IAChB,+FAA+F;IAC/F,gBAAgB,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC;;;;;OAKG;IACH,MAAM,CAAC,EAAE,aAAa,GAAG,SAAS,CAAC;IACnC;;;OAGG;IACH,QAAQ,CAAC,EAAE,eAAe,GAAG,SAAS,CAAC;IACvC;;;;OAIG;IACH,SAAS,CAAC,EAAE,gBAAgB,GAAG,SAAS,CAAC;IACzC;;;;OAIG;IACH,aAAa,CAAC,EAAE,aAAa,GAAG,SAAS,CAAC;IAC1C;;;;OAIG;IACH,cAAc,CAAC,EAAE,kBAAkB,GAAG,SAAS,CAAC;IAChD;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,MAAM,KAAK,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,GAAG,SAAS,CAAC;IACtF;;;;;;;;OAQG;IACH,qBAAqB,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,SAAS,CAAC;IACxE;;;;OAIG;IACH,YAAY,EAAE,0BAA0B,CAAC;IACzC;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,gBAAgB,GAAG,SAAS,CAAC;IAChD,+EAA+E;IAC/E,QAAQ,EAAE,cAAc,CAAC;CAC1B;AAKD;;;;GAIG;AACH,wBAAgB,YAAY,CAC1B,SAAS,SAAS,CAAC,CAAC,WAAW,EAC/B,OAAO,EACP,QAAQ,SAAS,MAAM,EACvB,OAAO,EACP,cAAc,EACd,IAAI,EAAE,OAAO,CAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,cAAc,CAAC,GAAG,WAAW,CAumCnF"}
@@ -38,6 +38,8 @@ import { demoSessionJudge, demoSignInOn, registerDemoPassRoutes } from './index.
38
38
  import { registerProjectRoutes } from './index.js';
39
39
  import { registerTeamRoutes } from './index.js';
40
40
  import { registerWebhookRoutes } from './webhooks.js';
41
+ import { AppsService } from '../apps/service.js';
42
+ import { registerAppsRoutes } from '../apps/routes.js';
41
43
  import { bindMembershipRemoval } from '../members/removal.js';
42
44
  import { registerApiKeyRoutes } from './index.js';
43
45
  import { registerInvitationRoutes } from './index.js';
@@ -1113,6 +1115,21 @@ export function createApiApp(deps) {
1113
1115
  registerTeamRoutes(api, { db, hubManaged });
1114
1116
  // Webhooks (PRDCT-3482): the tool's on both editions, never hub-managed (Romain's rule of 27 September 2026).
1115
1117
  registerWebhookRoutes(api, { service: deps.webhooks });
1118
+ // The Apps page (PRDCT-3493): the other tools of the person's organization,
1119
+ // from the hub as the person on cloud (one GET /me/apps with the person's
1120
+ // own grant, the same store the reconciler uses) or from the operator's
1121
+ // APPS_FILE. Both editions. Session-only — unlisted in the machine scope
1122
+ // allowlist, re-checked in the handler. The chassis mounts it so every tool
1123
+ // lists its siblings from the hub's catalogue and ships no copy of their look.
1124
+ registerAppsRoutes(api, new AppsService({
1125
+ db,
1126
+ logger,
1127
+ edition: env.EDITION,
1128
+ hubIssuerUrl: env.HUB_ISSUER_URL,
1129
+ appsFile: env.APPS_FILE,
1130
+ selfSlug: tool.identity.slug,
1131
+ tokens: hub && deps.hubGrant ? deps.hubGrant : null
1132
+ }));
1116
1133
  if (demoSignIn) {
1117
1134
  registerDemoPassRoutes(api, {
1118
1135
  db,
@@ -1 +1 @@
1
- {"version":3,"file":"create-api.js","sourceRoot":"","sources":["../../src/api/create-api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create-api.js","sourceRoot":"","sources":["../../src/api/create-api.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * The Apps page (PRDCT-3493): the other tools of the person's organization,
3
+ * from the hub as the person (`GET /me/apps`) or from the operator's
4
+ * `APPS_FILE`, served on `GET /apps` by the chassis core, so every tool on
5
+ * the template lists its siblings with their registry descriptor and never
6
+ * ships a copy of the others' look.
7
+ */
8
+ export { AppsService, APPS_CACHE_TTL_MS, type AppsServiceOptions, type HubTokens } from './service.js';
9
+ export { registerAppsRoutes, APPS_TREE } from './routes.js';
10
+ export { HUB_APP_NAME, appsFromFile, readDescriptor, safeHttpUrl, selectHubApps, type FileApps } from './select.js';
11
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/apps/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,KAAK,kBAAkB,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AACvG,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC5D,OAAO,EACL,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,WAAW,EACX,aAAa,EACb,KAAK,QAAQ,EACd,MAAM,aAAa,CAAC"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * The Apps page (PRDCT-3493): the other tools of the person's organization,
3
+ * from the hub as the person (`GET /me/apps`) or from the operator's
4
+ * `APPS_FILE`, served on `GET /apps` by the chassis core, so every tool on
5
+ * the template lists its siblings with their registry descriptor and never
6
+ * ships a copy of the others' look.
7
+ */
8
+ export { AppsService, APPS_CACHE_TTL_MS } from './service.js';
9
+ export { registerAppsRoutes, APPS_TREE } from './routes.js';
10
+ export { HUB_APP_NAME, appsFromFile, readDescriptor, safeHttpUrl, selectHubApps } from './select.js';
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/apps/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAA2C,MAAM,cAAc,CAAC;AACvG,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC5D,OAAO,EACL,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,WAAW,EACX,aAAa,EAEd,MAAM,aAAa,CAAC"}
@@ -0,0 +1,14 @@
1
+ import type { OpenAPIHono } from '@hono/zod-openapi';
2
+ import type { AppsService } from './service.js';
3
+ /** The Apps page's one route. */
4
+ export declare const APPS_TREE = "/apps";
5
+ /**
6
+ * `GET /apps` (PRDCT-3493): the other tools of the person's organization
7
+ * (`./service.ts`). A browser session's alone: the scope allowlist names no
8
+ * rule for it, so an API key or an OAuth token is refused 403 before the
9
+ * handler (fail-closed), and the handler says the same to anything that is
10
+ * not a session. Every member reads it, a guest included: it lists only what
11
+ * the hub (or the operator) says the person may open.
12
+ */
13
+ export declare function registerAppsRoutes(api: OpenAPIHono, service: AppsService): void;
14
+ //# sourceMappingURL=routes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../src/apps/routes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD,iCAAiC;AACjC,eAAO,MAAM,SAAS,UAAU,CAAC;AAEjC;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,GAAG,IAAI,CAa/E"}
@@ -0,0 +1,23 @@
1
+ import { appsListRoute } from '@antasphere/chassis-contract/routes';
2
+ import { requireAuth } from '../middleware/auth-context.js';
3
+ /** The Apps page's one route. */
4
+ export const APPS_TREE = '/apps';
5
+ /**
6
+ * `GET /apps` (PRDCT-3493): the other tools of the person's organization
7
+ * (`./service.ts`). A browser session's alone: the scope allowlist names no
8
+ * rule for it, so an API key or an OAuth token is refused 403 before the
9
+ * handler (fail-closed), and the handler says the same to anything that is
10
+ * not a session. Every member reads it, a guest included: it lists only what
11
+ * the hub (or the operator) says the person may open.
12
+ */
13
+ export function registerAppsRoutes(api, service) {
14
+ api.use(APPS_TREE, requireAuth());
15
+ api.openapi(appsListRoute, async (c) => {
16
+ const principal = c.get('principal');
17
+ if (principal.via !== 'session') {
18
+ return c.json({ error: { code: 'session_required', message: 'The apps list is read in a browser session' } }, 403);
19
+ }
20
+ return c.json(await service.list(principal), 200);
21
+ });
22
+ }
23
+ //# sourceMappingURL=routes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"routes.js","sourceRoot":"","sources":["../../src/apps/routes.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAG5D,iCAAiC;AACjC,MAAM,CAAC,MAAM,SAAS,GAAG,OAAO,CAAC;AAEjC;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAAC,GAAgB,EAAE,OAAoB;IACvE,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,WAAW,EAAE,CAAC,CAAC;IAElC,GAAG,CAAC,OAAO,CAAC,aAAa,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QACrC,MAAM,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,WAAW,CAAE,CAAC;QACtC,IAAI,SAAS,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;YAChC,OAAO,CAAC,CAAC,IAAI,CACX,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,OAAO,EAAE,4CAA4C,EAAE,EAAE,EAC9F,GAAG,CACJ,CAAC;QACJ,CAAC;QACD,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,64 @@
1
+ import { type AppEntry, type AppsOrganization, type ToolDescriptor } from '@antasphere/chassis-contract';
2
+ /**
3
+ * The Apps page's selection rules (PRDCT-3493), pure so the unit tests hold
4
+ * them without a hub or a file (`test/unit/apps.test.ts`): which URL may be
5
+ * served, what an operator's file may list, and which of the hub's answer
6
+ * the person may open. `./service.ts` does the reading.
7
+ */
8
+ /** The name the hub's card carries. */
9
+ export declare const HUB_APP_NAME = "Antasphere Account";
10
+ /**
11
+ * An http(s) URL with no credentials in it, normalised; null for anything
12
+ * else (a `javascript:` or `data:` URL, a relative path, a blank, a non-string).
13
+ * Every URL the route serves passes here first.
14
+ */
15
+ export declare function safeHttpUrl(raw: unknown): string | null;
16
+ /**
17
+ * A descriptor read key by key against the hub's contract: a key the contract
18
+ * validates is kept, a key it does not (an icon name a newer hub added and
19
+ * this chassis has not shipped, a typo in a file, a key the contract does not
20
+ * know) is dropped alone, so the sentence and the accent survive an icon the
21
+ * dashboard cannot draw yet. Undefined when nothing valid remains, or when
22
+ * the value is not an object: the entry is kept without a descriptor rather
23
+ * than refused, since the page is a convenience and the name alone renders.
24
+ */
25
+ export declare function readDescriptor(raw: unknown): ToolDescriptor | undefined;
26
+ /**
27
+ * The hub organization the answer of `GET /me/apps` is for: its name and its
28
+ * status as the contract names them; null when the body carries none or
29
+ * another shape (an older hub), which the service treats as active.
30
+ */
31
+ export declare function readOrganization(body: unknown): AppsOrganization | null;
32
+ /** What an operator's file yields: the tools, the hub's card when an entry names it, the entries left out. */
33
+ export interface FileApps {
34
+ apps: AppEntry[];
35
+ hub: {
36
+ url: string;
37
+ name: string;
38
+ } | null;
39
+ /** The entries left out, each with why (the log says them). */
40
+ rejected: {
41
+ index: number;
42
+ reason: string;
43
+ }[];
44
+ }
45
+ /**
46
+ * The operator's list (`APPS_FILE`): `[{ slug, name, launchUrl, description?,
47
+ * icon?, drawing?, accent? }]`, the last four the descriptor's own keys, read
48
+ * by the hub's rule (an invalid one is dropped, the entry kept). An entry
49
+ * without a slug, a name or an http(s) `launchUrl` is left out, and so is a
50
+ * second entry of the same slug; an entry whose slug is `hub` or `account` is
51
+ * the account's card. `current` marks this tool's own slug.
52
+ */
53
+ export declare function appsFromFile(raw: unknown, selfSlug: string): FileApps;
54
+ /**
55
+ * The hub's `GET /me/apps` as the page reads it: the tools the organization
56
+ * lets the person open (`open` true), in the hub's order, each with its
57
+ * descriptor and the person's connection facts; a tool not open is LEFT OUT
58
+ * (the hub's own page greys it, a tool's fold hides it); an entry without a
59
+ * valid slug or an http(s) launch URL is dropped; a second entry of a slug is
60
+ * dropped. `current` marks this tool's own slug. Null when the body does not
61
+ * carry the list.
62
+ */
63
+ export declare function selectHubApps(body: unknown, selfSlug: string): AppEntry[] | null;
64
+ //# sourceMappingURL=select.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"select.d.ts","sourceRoot":"","sources":["../../src/apps/select.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,QAAQ,EACb,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACpB,MAAM,8BAA8B,CAAC;AAEtC;;;;;GAKG;AAEH,uCAAuC;AACvC,eAAO,MAAM,YAAY,uBAAuB,CAAC;AAQjD;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAWvD;AAKD;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,OAAO,GAAG,cAAc,GAAG,SAAS,CAavE;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,OAAO,GAAG,gBAAgB,GAAG,IAAI,CAOvE;AAED,8GAA8G;AAC9G,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,QAAQ,EAAE,CAAC;IACjB,GAAG,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAC1C,+DAA+D;IAC/D,QAAQ,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CAC/C;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,QAAQ,CAuCrE;AAED;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,QAAQ,EAAE,GAAG,IAAI,CAyBhF"}
@@ -0,0 +1,168 @@
1
+ import { APP_ORGANIZATION_STATUSES, toolDescriptorSchema } from '@antasphere/chassis-contract';
2
+ /**
3
+ * The Apps page's selection rules (PRDCT-3493), pure so the unit tests hold
4
+ * them without a hub or a file (`test/unit/apps.test.ts`): which URL may be
5
+ * served, what an operator's file may list, and which of the hub's answer
6
+ * the person may open. `./service.ts` does the reading.
7
+ */
8
+ /** The name the hub's card carries. */
9
+ export const HUB_APP_NAME = 'Antasphere Account';
10
+ /** The slugs a file entry names the account with: that entry is the hub's card, not a tool's. */
11
+ const HUB_SLUGS = new Set(['hub', 'account']);
12
+ /** A registry slug, as the hub spells one (lowercase letters, digits, dashes). */
13
+ const SLUG = /^[a-z0-9][a-z0-9-]{0,62}$/;
14
+ /**
15
+ * An http(s) URL with no credentials in it, normalised; null for anything
16
+ * else (a `javascript:` or `data:` URL, a relative path, a blank, a non-string).
17
+ * Every URL the route serves passes here first.
18
+ */
19
+ export function safeHttpUrl(raw) {
20
+ if (typeof raw !== 'string' || raw.length === 0 || raw.length > 2000)
21
+ return null;
22
+ let url;
23
+ try {
24
+ url = new URL(raw);
25
+ }
26
+ catch {
27
+ return null;
28
+ }
29
+ if (url.protocol !== 'https:' && url.protocol !== 'http:')
30
+ return null;
31
+ if (url.username !== '' || url.password !== '')
32
+ return null;
33
+ return url.href;
34
+ }
35
+ const text = (raw, max) => typeof raw === 'string' && raw.trim() !== '' && raw.length <= max ? raw.trim() : null;
36
+ /**
37
+ * A descriptor read key by key against the hub's contract: a key the contract
38
+ * validates is kept, a key it does not (an icon name a newer hub added and
39
+ * this chassis has not shipped, a typo in a file, a key the contract does not
40
+ * know) is dropped alone, so the sentence and the accent survive an icon the
41
+ * dashboard cannot draw yet. Undefined when nothing valid remains, or when
42
+ * the value is not an object: the entry is kept without a descriptor rather
43
+ * than refused, since the page is a convenience and the name alone renders.
44
+ */
45
+ export function readDescriptor(raw) {
46
+ if (raw === null || typeof raw !== 'object' || Array.isArray(raw))
47
+ return undefined;
48
+ const whole = toolDescriptorSchema.safeParse(raw);
49
+ const kept = whole.success ? whole.data : {};
50
+ if (!whole.success) {
51
+ const value = raw;
52
+ for (const [key, field] of Object.entries(toolDescriptorSchema.shape)) {
53
+ if (value[key] === undefined)
54
+ continue;
55
+ const one = field.safeParse(value[key]);
56
+ if (one.success && one.data !== undefined)
57
+ kept[key] = one.data;
58
+ }
59
+ }
60
+ return Object.keys(kept).length === 0 ? undefined : kept;
61
+ }
62
+ /**
63
+ * The hub organization the answer of `GET /me/apps` is for: its name and its
64
+ * status as the contract names them; null when the body carries none or
65
+ * another shape (an older hub), which the service treats as active.
66
+ */
67
+ export function readOrganization(body) {
68
+ const raw = body?.organization;
69
+ if (raw === null || typeof raw !== 'object')
70
+ return null;
71
+ const org = raw;
72
+ const status = APP_ORGANIZATION_STATUSES.find((s) => s === org.status);
73
+ if (!status)
74
+ return null;
75
+ return { name: text(org.name, 200) ?? '', status };
76
+ }
77
+ /**
78
+ * The operator's list (`APPS_FILE`): `[{ slug, name, launchUrl, description?,
79
+ * icon?, drawing?, accent? }]`, the last four the descriptor's own keys, read
80
+ * by the hub's rule (an invalid one is dropped, the entry kept). An entry
81
+ * without a slug, a name or an http(s) `launchUrl` is left out, and so is a
82
+ * second entry of the same slug; an entry whose slug is `hub` or `account` is
83
+ * the account's card. `current` marks this tool's own slug.
84
+ */
85
+ export function appsFromFile(raw, selfSlug) {
86
+ const out = { apps: [], hub: null, rejected: [] };
87
+ if (!Array.isArray(raw)) {
88
+ out.rejected.push({ index: -1, reason: 'the file is not a JSON array' });
89
+ return out;
90
+ }
91
+ const seen = new Set();
92
+ raw.forEach((item, index) => {
93
+ const entry = (item ?? {});
94
+ const slug = typeof entry.slug === 'string' && SLUG.test(entry.slug) ? entry.slug : null;
95
+ const name = text(entry.name, 120);
96
+ const launchUrl = safeHttpUrl(entry.launchUrl);
97
+ if (!slug)
98
+ return out.rejected.push({ index, reason: 'no valid slug' });
99
+ if (!name)
100
+ return out.rejected.push({ index, reason: 'no name' });
101
+ if (!launchUrl)
102
+ return out.rejected.push({ index, reason: 'launchUrl is not an http(s) URL' });
103
+ if (seen.has(slug))
104
+ return out.rejected.push({ index, reason: `slug ${slug} listed twice` });
105
+ seen.add(slug);
106
+ if (HUB_SLUGS.has(slug)) {
107
+ out.hub = { url: launchUrl, name };
108
+ return;
109
+ }
110
+ const descriptor = readDescriptor({
111
+ ...(entry.description !== undefined ? { description: entry.description } : {}),
112
+ ...(entry.icon !== undefined ? { icon: entry.icon } : {}),
113
+ ...(entry.drawing !== undefined ? { drawing: entry.drawing } : {}),
114
+ ...(entry.accent !== undefined ? { accent: entry.accent } : {})
115
+ });
116
+ out.apps.push({
117
+ slug,
118
+ name,
119
+ launchUrl,
120
+ ...(descriptor ? { descriptor } : {}),
121
+ connected: false,
122
+ firstUsedAt: null,
123
+ lastUsedAt: null,
124
+ current: slug === selfSlug
125
+ });
126
+ });
127
+ return out;
128
+ }
129
+ /**
130
+ * The hub's `GET /me/apps` as the page reads it: the tools the organization
131
+ * lets the person open (`open` true), in the hub's order, each with its
132
+ * descriptor and the person's connection facts; a tool not open is LEFT OUT
133
+ * (the hub's own page greys it, a tool's fold hides it); an entry without a
134
+ * valid slug or an http(s) launch URL is dropped; a second entry of a slug is
135
+ * dropped. `current` marks this tool's own slug. Null when the body does not
136
+ * carry the list.
137
+ */
138
+ export function selectHubApps(body, selfSlug) {
139
+ const raw = body?.tools;
140
+ if (!Array.isArray(raw))
141
+ return null;
142
+ const apps = [];
143
+ const seen = new Set();
144
+ for (const item of raw) {
145
+ const tool = (item ?? {});
146
+ if (typeof tool.slug !== 'string' || !SLUG.test(tool.slug) || seen.has(tool.slug))
147
+ continue;
148
+ if (tool.open !== true)
149
+ continue;
150
+ const launchUrl = safeHttpUrl(tool.launchUrl);
151
+ if (!launchUrl)
152
+ continue;
153
+ seen.add(tool.slug);
154
+ const descriptor = readDescriptor(tool.descriptor);
155
+ apps.push({
156
+ slug: tool.slug,
157
+ name: text(tool.name, 120) ?? tool.slug,
158
+ launchUrl,
159
+ ...(descriptor ? { descriptor } : {}),
160
+ connected: tool.connected === true,
161
+ firstUsedAt: typeof tool.connectedAt === 'string' ? tool.connectedAt : null,
162
+ lastUsedAt: typeof tool.lastUsedAt === 'string' ? tool.lastUsedAt : null,
163
+ current: tool.slug === selfSlug
164
+ });
165
+ }
166
+ return apps;
167
+ }
168
+ //# sourceMappingURL=select.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"select.js","sourceRoot":"","sources":["../../src/apps/select.ts"],"names":[],"mappings":"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"}