@wildo-ai/saas-technical-doc 1.1.1 → 1.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (123) hide show
  1. package/dist/esm/companion/application-documentation/application-administration-documentation.d.ts +52 -0
  2. package/dist/esm/companion/application-documentation/application-administration-documentation.d.ts.map +1 -0
  3. package/dist/esm/companion/application-documentation/application-administration-documentation.js +58 -0
  4. package/dist/esm/companion/application-documentation/application-administration-documentation.js.map +1 -0
  5. package/dist/esm/companion/application-documentation/application-authentication-documentation.d.ts +76 -0
  6. package/dist/esm/companion/application-documentation/application-authentication-documentation.d.ts.map +1 -0
  7. package/dist/esm/companion/application-documentation/application-authentication-documentation.js +116 -0
  8. package/dist/esm/companion/application-documentation/application-authentication-documentation.js.map +1 -0
  9. package/dist/esm/companion/application-documentation/application-connection-documentation.d.ts +111 -0
  10. package/dist/esm/companion/application-documentation/application-connection-documentation.d.ts.map +1 -0
  11. package/dist/esm/companion/application-documentation/application-connection-documentation.js +165 -0
  12. package/dist/esm/companion/application-documentation/application-connection-documentation.js.map +1 -0
  13. package/dist/esm/companion/application-documentation/application-domain-documentation.d.ts +133 -0
  14. package/dist/esm/companion/application-documentation/application-domain-documentation.d.ts.map +1 -0
  15. package/dist/esm/companion/application-documentation/application-domain-documentation.js +243 -0
  16. package/dist/esm/companion/application-documentation/application-domain-documentation.js.map +1 -0
  17. package/dist/esm/companion/application-documentation/application-integration-documentation.d.ts +48 -0
  18. package/dist/esm/companion/application-documentation/application-integration-documentation.d.ts.map +1 -0
  19. package/dist/esm/companion/application-documentation/application-integration-documentation.js +86 -0
  20. package/dist/esm/companion/application-documentation/application-integration-documentation.js.map +1 -0
  21. package/dist/esm/companion/application-documentation/application-organization-role-documentation.d.ts +30 -0
  22. package/dist/esm/companion/application-documentation/application-organization-role-documentation.d.ts.map +1 -1
  23. package/dist/esm/companion/application-documentation/application-organization-role-documentation.js +38 -0
  24. package/dist/esm/companion/application-documentation/application-organization-role-documentation.js.map +1 -1
  25. package/dist/esm/companion/application-documentation/technical-documentation-engine-content-bundle.d.ts +82 -4
  26. package/dist/esm/companion/application-documentation/technical-documentation-engine-content-bundle.d.ts.map +1 -1
  27. package/dist/esm/companion/application-documentation/technical-documentation-engine-content-bundle.js +412 -219
  28. package/dist/esm/companion/application-documentation/technical-documentation-engine-content-bundle.js.map +1 -1
  29. package/dist/esm/companion/application-documentation/technical-documentation-private-derivation.d.ts +10 -0
  30. package/dist/esm/companion/application-documentation/technical-documentation-private-derivation.d.ts.map +1 -1
  31. package/dist/esm/companion/application-documentation/technical-documentation-private-derivation.js +9 -1
  32. package/dist/esm/companion/application-documentation/technical-documentation-private-derivation.js.map +1 -1
  33. package/dist/esm/companion/application-documentation/technical-documentation-publication-policy.js +1 -1
  34. package/dist/esm/companion/application-documentation/technical-documentation-publication-policy.js.map +1 -1
  35. package/dist/esm/companion/index.d.ts +6 -1
  36. package/dist/esm/companion/index.d.ts.map +1 -1
  37. package/dist/esm/companion/index.js +6 -1
  38. package/dist/esm/companion/index.js.map +1 -1
  39. package/dist/esm/companion/manual-controller-route-projection.d.ts +112 -0
  40. package/dist/esm/companion/manual-controller-route-projection.d.ts.map +1 -0
  41. package/dist/esm/companion/manual-controller-route-projection.js +249 -0
  42. package/dist/esm/companion/manual-controller-route-projection.js.map +1 -0
  43. package/dist/esm/companion/openapi-generator.d.ts +16 -0
  44. package/dist/esm/companion/openapi-generator.d.ts.map +1 -1
  45. package/dist/esm/companion/openapi-generator.js +497 -32
  46. package/dist/esm/companion/openapi-generator.js.map +1 -1
  47. package/dist/esm/companion/operation-projection.schemas.d.ts +44 -0
  48. package/dist/esm/companion/operation-projection.schemas.d.ts.map +1 -1
  49. package/dist/esm/companion/operation-projection.schemas.js +37 -0
  50. package/dist/esm/companion/operation-projection.schemas.js.map +1 -1
  51. package/dist/esm/companion/rendering/technical-documentation-docusaurus-renderer.d.ts +7 -1
  52. package/dist/esm/companion/rendering/technical-documentation-docusaurus-renderer.d.ts.map +1 -1
  53. package/dist/esm/companion/rendering/technical-documentation-docusaurus-renderer.js +44 -20
  54. package/dist/esm/companion/rendering/technical-documentation-docusaurus-renderer.js.map +1 -1
  55. package/dist/esm/companion/rendering/technical-documentation-managed-tree-validator.d.ts.map +1 -1
  56. package/dist/esm/companion/rendering/technical-documentation-managed-tree-validator.js +8 -1
  57. package/dist/esm/companion/rendering/technical-documentation-managed-tree-validator.js.map +1 -1
  58. package/dist/esm/companion/rendering/technical-documentation-markdown-links.d.ts +28 -0
  59. package/dist/esm/companion/rendering/technical-documentation-markdown-links.d.ts.map +1 -0
  60. package/dist/esm/companion/rendering/technical-documentation-markdown-links.js +52 -0
  61. package/dist/esm/companion/rendering/technical-documentation-markdown-links.js.map +1 -0
  62. package/dist/esm/companion/rendering/technical-documentation-markdown-renderer.d.ts +0 -9
  63. package/dist/esm/companion/rendering/technical-documentation-markdown-renderer.d.ts.map +0 -1
  64. package/dist/esm/companion/rendering/technical-documentation-markdown-renderer.js +0 -106
  65. package/dist/esm/companion/rendering/technical-documentation-markdown-renderer.js.map +0 -1
  66. package/dist/esm/companion/rendering/technical-documentation-render-model.d.ts +1 -0
  67. package/dist/esm/companion/rendering/technical-documentation-render-model.d.ts.map +1 -1
  68. package/dist/esm/companion/rendering/technical-documentation-render-model.js +112 -88
  69. package/dist/esm/companion/rendering/technical-documentation-render-model.js.map +1 -1
  70. package/dist/esm/companion/rendering/technical-documentation-search-index-renderer.d.ts +10 -0
  71. package/dist/esm/companion/rendering/technical-documentation-search-index-renderer.d.ts.map +1 -1
  72. package/dist/esm/companion/rendering/technical-documentation-search-index-renderer.js +10 -15
  73. package/dist/esm/companion/rendering/technical-documentation-search-index-renderer.js.map +1 -1
  74. package/dist/esm/companion/technical-documentation-capture-execution-port.d.ts +27 -1
  75. package/dist/esm/companion/technical-documentation-capture-execution-port.d.ts.map +1 -1
  76. package/dist/esm/companion/technical-documentation-capture-execution-port.js.map +1 -1
  77. package/dist/esm/companion/technical-documentation-diagram-definitions.d.ts +33 -0
  78. package/dist/esm/companion/technical-documentation-diagram-definitions.d.ts.map +1 -0
  79. package/dist/esm/companion/technical-documentation-diagram-definitions.js +54 -0
  80. package/dist/esm/companion/technical-documentation-diagram-definitions.js.map +1 -0
  81. package/dist/esm/companion/technical-documentation-diagram-materializer.d.ts +10 -18
  82. package/dist/esm/companion/technical-documentation-diagram-materializer.d.ts.map +1 -1
  83. package/dist/esm/companion/technical-documentation-diagram-materializer.js +9 -39
  84. package/dist/esm/companion/technical-documentation-diagram-materializer.js.map +1 -1
  85. package/dist/esm/config/wildo-tech-doc-config.schemas.d.ts +8 -4
  86. package/dist/esm/config/wildo-tech-doc-config.schemas.d.ts.map +1 -1
  87. package/dist/esm/config/wildo-tech-doc-config.schemas.js +8 -4
  88. package/dist/esm/config/wildo-tech-doc-config.schemas.js.map +1 -1
  89. package/dist/esm/content/application-consumer-documentation-content.techdoc.d.ts +105 -122
  90. package/dist/esm/content/application-consumer-documentation-content.techdoc.d.ts.map +1 -1
  91. package/dist/esm/content/application-consumer-documentation-content.techdoc.js +934 -2161
  92. package/dist/esm/content/application-consumer-documentation-content.techdoc.js.map +1 -1
  93. package/dist/esm/runtime/DocsAuthContext.d.ts +16 -1
  94. package/dist/esm/runtime/DocsAuthContext.d.ts.map +1 -1
  95. package/dist/esm/runtime/DocsAuthContext.js +18 -2
  96. package/dist/esm/runtime/DocsAuthContext.js.map +1 -1
  97. package/dist/esm/runtime/decode-jwt-claims.d.ts +7 -4
  98. package/dist/esm/runtime/decode-jwt-claims.d.ts.map +1 -1
  99. package/dist/esm/runtime/decode-jwt-claims.js +7 -4
  100. package/dist/esm/runtime/decode-jwt-claims.js.map +1 -1
  101. package/dist/esm/runtime/docs-auth-session.schemas.d.ts +16 -5
  102. package/dist/esm/runtime/docs-auth-session.schemas.d.ts.map +1 -1
  103. package/dist/esm/runtime/docs-auth-session.schemas.js +16 -5
  104. package/dist/esm/runtime/docs-auth-session.schemas.js.map +1 -1
  105. package/dist/esm/runtime/frontend-provider-registry.techdoc.d.ts +35 -13
  106. package/dist/esm/runtime/frontend-provider-registry.techdoc.d.ts.map +1 -1
  107. package/dist/esm/runtime/frontend-provider-registry.techdoc.js +28 -19
  108. package/dist/esm/runtime/frontend-provider-registry.techdoc.js.map +1 -1
  109. package/dist/esm/runtime/index.d.ts +1 -0
  110. package/dist/esm/runtime/index.d.ts.map +1 -1
  111. package/dist/esm/runtime/index.js +1 -0
  112. package/dist/esm/runtime/index.js.map +1 -1
  113. package/dist/esm/runtime/use-docs-auth-session.d.ts +9 -7
  114. package/dist/esm/runtime/use-docs-auth-session.d.ts.map +1 -1
  115. package/dist/esm/runtime/use-docs-auth-session.js +9 -7
  116. package/dist/esm/runtime/use-docs-auth-session.js.map +1 -1
  117. package/dist/esm/runtime/use-docs-provider-sdks.d.ts +21 -0
  118. package/dist/esm/runtime/use-docs-provider-sdks.d.ts.map +1 -0
  119. package/dist/esm/runtime/use-docs-provider-sdks.js +49 -0
  120. package/dist/esm/runtime/use-docs-provider-sdks.js.map +1 -0
  121. package/dist/tsconfig.build.tsbuildinfo +1 -1
  122. package/package.json +6 -5
  123. package/dist/esm/.builder.pid +0 -9
@@ -1 +1 @@
1
- {"version":3,"file":"use-docs-auth-session.js","sourceRoot":"","sources":["../../../../src/runtime/use-docs-auth-session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACnC,OAAO,EAAE,eAAe,EAA6B,MAAM,mBAAmB,CAAC;AAE/E;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,UAAU,kBAAkB;IAChC,MAAM,GAAG,GAAG,UAAU,CAAC,eAAe,CAAC,CAAC;IACxC,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CACb,iEAAiE;YAC/D,2FAA2F,CAC9F,CAAC;IACJ,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC","sourcesContent":["import { useContext } from 'react';\nimport { DocsAuthContext, type DocsAuthContextValue } from './DocsAuthContext';\n\n/**\n * Read the current docs-site auth session.\n *\n * The three Docusaurus swizzles (Root, Navbar, DocItem — see\n * saas-technical-doc.md K-11) all consume the same hook:\n *\n * - Navbar : `session.status === 'authenticated' && session.claims.role === DocsRole.ORG_ADMIN`\n * decides whether the \"Organization API\" link is rendered.\n * - DocItem : on `/api/organization/*` routes, branches on the same\n * check; if anonymous, deep-links to the SaaS app because\n * handoff issuance requires a bearer.\n * - Root : the `<AuthExchangePage>` wired at `/auth/exchange` calls\n * `beginExchange(code)` on mount.\n *\n * Throws when used outside `<DocsAuthProvider>` so misconfigured swizzles\n * fail loud during the Docusaurus build (rather than silently rendering\n * \"anonymous\" for every reader). This mirrors the pattern in\n * `saas-frontend-lib`'s `useAuthSession()`.\n *\n * Lives in its own file so editing the context value type does not\n * invalidate the hook's React Fast Refresh boundary, mirroring the\n * `useAuthSession.ts` / `AuthSessionContext.tsx` split.\n */\nexport function useDocsAuthSession(): DocsAuthContextValue {\n const ctx = useContext(DocsAuthContext);\n if (!ctx) {\n throw new Error(\n '`useDocsAuthSession` must be used within `<DocsAuthProvider>`. ' +\n 'Mount it via the Root swizzle on your Docusaurus site (see saas-technical-doc.md Step 6).',\n );\n }\n return ctx;\n}\n"]}
1
+ {"version":3,"file":"use-docs-auth-session.js","sourceRoot":"","sources":["../../../../src/runtime/use-docs-auth-session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACnC,OAAO,EAAE,eAAe,EAA6B,MAAM,mBAAmB,CAAC;AAE/E;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,UAAU,kBAAkB;IAChC,MAAM,GAAG,GAAG,UAAU,CAAC,eAAe,CAAC,CAAC;IACxC,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CACb,iEAAiE;YAC/D,2FAA2F,CAC9F,CAAC;IACJ,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC","sourcesContent":["import { useContext } from 'react';\nimport { DocsAuthContext, type DocsAuthContextValue } from './DocsAuthContext';\n\n/**\n * Read the current docs-site auth session.\n *\n * ONE Docusaurus swizzle consumes this hook today:\n *\n * - Root : the `<AuthExchangePage>` wired at `/auth/exchange` calls\n * `beginExchange(code)` on mount.\n *\n * This list used to name three (Root, Navbar, DocItem). The Navbar swizzle\n * gating an \"Organization API\" link and the DocItem swizzle gating\n * `/api/organization/*` were never built, and there is no organization\n * OpenAPI section for them to gate — see `DocsRole` in\n * `docs-auth-session.schemas.ts` for the measurement. The hook's\n * role-carrying shape is unchanged and ready for such a surface; it simply\n * has no second or third consumer at present.\n *\n * Throws when used outside `<DocsAuthProvider>` so misconfigured swizzles\n * fail loud during the Docusaurus build (rather than silently rendering\n * \"anonymous\" for every reader). This mirrors the pattern in\n * `saas-frontend-lib`'s `useAuthSession()`.\n *\n * Lives in its own file so editing the context value type does not\n * invalidate the hook's React Fast Refresh boundary, mirroring the\n * `useAuthSession.ts` / `AuthSessionContext.tsx` split.\n */\nexport function useDocsAuthSession(): DocsAuthContextValue {\n const ctx = useContext(DocsAuthContext);\n if (!ctx) {\n throw new Error(\n '`useDocsAuthSession` must be used within `<DocsAuthProvider>`. ' +\n 'Mount it via the Root swizzle on your Docusaurus site (see saas-technical-doc.md Step 6).',\n );\n }\n return ctx;\n}\n"]}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Loads and starts the npm SDK of every live docs provider that declares one.
3
+ *
4
+ * The techdoc's half of the CODE channel (#332). Until this landed, the docs
5
+ * runtime hydrated a provider registry that nothing read — the registry was
6
+ * built, exposed through `useDocsFrontendProviderRegistry`, and no consumer did
7
+ * anything with it.
8
+ *
9
+ * Effect-only, and that is not a detail: Docusaurus server-renders every page
10
+ * at build time, so a vendor SDK started during the render would run inside the
11
+ * build process — or throw, reaching for a `window` that is not there. The
12
+ * runner refuses off-browser on its own; the effect keeps it from being asked
13
+ * in the first place.
14
+ *
15
+ * Teardown is real where the vendor offers one. An analytics or
16
+ * error-monitoring client that can be started and never stopped cannot honour a
17
+ * consent withdrawal.
18
+ */
19
+ import type { FrontendTechdocProviderRegistry } from './frontend-provider-registry.techdoc';
20
+ export declare function useDocsProviderSdks(registry: FrontendTechdocProviderRegistry | undefined): void;
21
+ //# sourceMappingURL=use-docs-provider-sdks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-docs-provider-sdks.d.ts","sourceRoot":"","sources":["../../../../src/runtime/use-docs-provider-sdks.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAQH,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,sCAAsC,CAAC;AAE5F,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,+BAA+B,GAAG,SAAS,GACpD,IAAI,CA2BN"}
@@ -0,0 +1,49 @@
1
+ /**
2
+ * Loads and starts the npm SDK of every live docs provider that declares one.
3
+ *
4
+ * The techdoc's half of the CODE channel (#332). Until this landed, the docs
5
+ * runtime hydrated a provider registry that nothing read — the registry was
6
+ * built, exposed through `useDocsFrontendProviderRegistry`, and no consumer did
7
+ * anything with it.
8
+ *
9
+ * Effect-only, and that is not a detail: Docusaurus server-renders every page
10
+ * at build time, so a vendor SDK started during the render would run inside the
11
+ * build process — or throw, reaching for a `window` that is not there. The
12
+ * runner refuses off-browser on its own; the effect keeps it from being asked
13
+ * in the first place.
14
+ *
15
+ * Teardown is real where the vendor offers one. An analytics or
16
+ * error-monitoring client that can be started and never stopped cannot honour a
17
+ * consent withdrawal.
18
+ */
19
+ import { useEffect } from 'react';
20
+ import { activateFrontendProviderSdks, } from '@wildo-ai/external-connectors-public/techdoc';
21
+ import { AppFrontendType } from '@wildo-ai/saas-models/public-runtime';
22
+ export function useDocsProviderSdks(registry) {
23
+ useEffect(() => {
24
+ if (registry === undefined)
25
+ return;
26
+ let unmounted = false;
27
+ let activated;
28
+ void activateFrontendProviderSdks({
29
+ surface: AppFrontendType.TECH_DOC,
30
+ modules: registry.modules.values(),
31
+ onDiagnostic: (diagnostic) => {
32
+ // eslint-disable-next-line no-console
33
+ console.warn(`[wildo-provider-sdk] ${diagnostic.kind}: ${diagnostic.message}`);
34
+ },
35
+ }).then((result) => {
36
+ activated = result;
37
+ // Activation is asynchronous and unmount is not: if the surface went away
38
+ // while a vendor bundle was still downloading, stop what we just started
39
+ // rather than leaving a client nobody can reach.
40
+ if (unmounted)
41
+ void result.deactivateAll();
42
+ });
43
+ return () => {
44
+ unmounted = true;
45
+ void activated?.deactivateAll();
46
+ };
47
+ }, [registry]);
48
+ }
49
+ //# sourceMappingURL=use-docs-provider-sdks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-docs-provider-sdks.js","sourceRoot":"","sources":["../../../../src/runtime/use-docs-provider-sdks.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClC,OAAO,EACL,4BAA4B,GAE7B,MAAM,8CAA8C,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAGvE,MAAM,UAAU,mBAAmB,CACjC,QAAqD;IAErD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,QAAQ,KAAK,SAAS;YAAE,OAAO;QAEnC,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,IAAI,SAAoD,CAAC;QAEzD,KAAK,4BAA4B,CAAC;YAChC,OAAO,EAAE,eAAe,CAAC,QAAQ;YACjC,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE;YAClC,YAAY,EAAE,CAAC,UAAU,EAAE,EAAE;gBAC3B,sCAAsC;gBACtC,OAAO,CAAC,IAAI,CAAC,wBAAwB,UAAU,CAAC,IAAI,KAAK,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC;YACjF,CAAC;SACF,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;YACjB,SAAS,GAAG,MAAM,CAAC;YACnB,0EAA0E;YAC1E,yEAAyE;YACzE,iDAAiD;YACjD,IAAI,SAAS;gBAAE,KAAK,MAAM,CAAC,aAAa,EAAE,CAAC;QAC7C,CAAC,CAAC,CAAC;QAEH,OAAO,GAAG,EAAE;YACV,SAAS,GAAG,IAAI,CAAC;YACjB,KAAK,SAAS,EAAE,aAAa,EAAE,CAAC;QAClC,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;AACjB,CAAC","sourcesContent":["/**\n * Loads and starts the npm SDK of every live docs provider that declares one.\n *\n * The techdoc's half of the CODE channel (#332). Until this landed, the docs\n * runtime hydrated a provider registry that nothing read — the registry was\n * built, exposed through `useDocsFrontendProviderRegistry`, and no consumer did\n * anything with it.\n *\n * Effect-only, and that is not a detail: Docusaurus server-renders every page\n * at build time, so a vendor SDK started during the render would run inside the\n * build process — or throw, reaching for a `window` that is not there. The\n * runner refuses off-browser on its own; the effect keeps it from being asked\n * in the first place.\n *\n * Teardown is real where the vendor offers one. An analytics or\n * error-monitoring client that can be started and never stopped cannot honour a\n * consent withdrawal.\n */\n\nimport { useEffect } from 'react';\nimport {\n activateFrontendProviderSdks,\n type ActivatedFrontendProviderSdks,\n} from '@wildo-ai/external-connectors-public/techdoc';\nimport { AppFrontendType } from '@wildo-ai/saas-models/public-runtime';\nimport type { FrontendTechdocProviderRegistry } from './frontend-provider-registry.techdoc';\n\nexport function useDocsProviderSdks(\n registry: FrontendTechdocProviderRegistry | undefined,\n): void {\n useEffect(() => {\n if (registry === undefined) return;\n\n let unmounted = false;\n let activated: ActivatedFrontendProviderSdks | undefined;\n\n void activateFrontendProviderSdks({\n surface: AppFrontendType.TECH_DOC,\n modules: registry.modules.values(),\n onDiagnostic: (diagnostic) => {\n // eslint-disable-next-line no-console\n console.warn(`[wildo-provider-sdk] ${diagnostic.kind}: ${diagnostic.message}`);\n },\n }).then((result) => {\n activated = result;\n // Activation is asynchronous and unmount is not: if the surface went away\n // while a vendor bundle was still downloading, stop what we just started\n // rather than leaving a client nobody can reach.\n if (unmounted) void result.deactivateAll();\n });\n\n return () => {\n unmounted = true;\n void activated?.deactivateAll();\n };\n }, [registry]);\n}\n"]}