@nocobase/app-plugin-foundation 0.1.0-beta.0 → 0.1.0-beta.2
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/CHANGELOG.md +20 -0
- package/README.md +17 -3
- package/dist/client/api.d.ts +2 -0
- package/dist/client/api.d.ts.map +1 -1
- package/dist/client/api.js +9 -3
- package/dist/client/api.js.map +1 -1
- package/dist/client/business-modules.d.ts.map +1 -1
- package/dist/client/business-modules.js +6 -0
- package/dist/client/business-modules.js.map +1 -1
- package/dist/client/components/collections-browser.d.ts +7 -0
- package/dist/client/components/collections-browser.d.ts.map +1 -0
- package/dist/client/components/collections-browser.js +63 -0
- package/dist/client/components/collections-browser.js.map +1 -0
- package/dist/client/components/foundation-page.d.ts +2 -1
- package/dist/client/components/foundation-page.d.ts.map +1 -1
- package/dist/client/components/foundation-page.js +17 -7
- package/dist/client/components/foundation-page.js.map +1 -1
- package/dist/client/components/module-matrix.d.ts.map +1 -1
- package/dist/client/components/module-matrix.js +10 -7
- package/dist/client/components/module-matrix.js.map +1 -1
- package/dist/client/components/ui/dialog.d.ts +18 -0
- package/dist/client/components/ui/dialog.d.ts.map +1 -0
- package/dist/client/components/ui/dialog.js +37 -0
- package/dist/client/components/ui/dialog.js.map +1 -0
- package/dist/client/components/ui/input.d.ts +4 -0
- package/dist/client/components/ui/input.d.ts.map +1 -0
- package/dist/client/components/ui/input.js +8 -0
- package/dist/client/components/ui/input.js.map +1 -0
- package/dist/client/components/ui/tooltip.d.ts +8 -0
- package/dist/client/components/ui/tooltip.d.ts.map +1 -0
- package/dist/client/components/ui/tooltip.js +17 -0
- package/dist/client/components/ui/tooltip.js.map +1 -0
- package/dist/client/locales/de-DE.d.ts.map +1 -1
- package/dist/client/locales/de-DE.js +21 -2
- package/dist/client/locales/de-DE.js.map +1 -1
- package/dist/client/locales/en-US.d.ts +19 -0
- package/dist/client/locales/en-US.d.ts.map +1 -1
- package/dist/client/locales/en-US.js +21 -2
- package/dist/client/locales/en-US.js.map +1 -1
- package/dist/client/locales/es-ES.d.ts.map +1 -1
- package/dist/client/locales/es-ES.js +21 -2
- package/dist/client/locales/es-ES.js.map +1 -1
- package/dist/client/locales/fr-FR.d.ts.map +1 -1
- package/dist/client/locales/fr-FR.js +21 -2
- package/dist/client/locales/fr-FR.js.map +1 -1
- package/dist/client/locales/id-ID.d.ts.map +1 -1
- package/dist/client/locales/id-ID.js +21 -2
- package/dist/client/locales/id-ID.js.map +1 -1
- package/dist/client/locales/ja-JP.d.ts.map +1 -1
- package/dist/client/locales/ja-JP.js +21 -2
- package/dist/client/locales/ja-JP.js.map +1 -1
- package/dist/client/locales/pt-BR.d.ts.map +1 -1
- package/dist/client/locales/pt-BR.js +21 -2
- package/dist/client/locales/pt-BR.js.map +1 -1
- package/dist/client/locales/vi-VN.d.ts.map +1 -1
- package/dist/client/locales/vi-VN.js +21 -2
- package/dist/client/locales/vi-VN.js.map +1 -1
- package/dist/client/locales/zh-CN.d.ts.map +1 -1
- package/dist/client/locales/zh-CN.js +21 -2
- package/dist/client/locales/zh-CN.js.map +1 -1
- package/dist/client/locales/zh-TW.d.ts.map +1 -1
- package/dist/client/locales/zh-TW.js +21 -2
- package/dist/client/locales/zh-TW.js.map +1 -1
- package/dist/server/api-evidence.d.ts +13 -0
- package/dist/server/api-evidence.d.ts.map +1 -0
- package/dist/server/api-evidence.js +194 -0
- package/dist/server/api-evidence.js.map +1 -0
- package/dist/server/capabilities/data.d.ts +3 -1
- package/dist/server/capabilities/data.d.ts.map +1 -1
- package/dist/server/capabilities/data.js +47 -12
- package/dist/server/capabilities/data.js.map +1 -1
- package/dist/server/capabilities/intelligence.d.ts.map +1 -1
- package/dist/server/capabilities/intelligence.js +26 -18
- package/dist/server/capabilities/intelligence.js.map +1 -1
- package/dist/server/capabilities/types.d.ts +4 -1
- package/dist/server/capabilities/types.d.ts.map +1 -1
- package/dist/server/capabilities/types.js.map +1 -1
- package/dist/server/inventory.d.ts +9 -3
- package/dist/server/inventory.d.ts.map +1 -1
- package/dist/server/inventory.js +40 -14
- package/dist/server/inventory.js.map +1 -1
- package/dist/server/module-manifest.d.ts.map +1 -1
- package/dist/server/module-manifest.js +1 -0
- package/dist/server/module-manifest.js.map +1 -1
- package/dist/server/module-sources.d.ts.map +1 -1
- package/dist/server/module-sources.js +94 -147
- package/dist/server/module-sources.js.map +1 -1
- package/dist/server/read-queue.d.ts +10 -0
- package/dist/server/read-queue.d.ts.map +1 -0
- package/dist/server/read-queue.js +50 -0
- package/dist/server/read-queue.js.map +1 -0
- package/dist/server/request-evidence.d.ts +14 -0
- package/dist/server/request-evidence.d.ts.map +1 -0
- package/dist/server/request-evidence.js +179 -0
- package/dist/server/request-evidence.js.map +1 -0
- package/dist/server/routes/index.d.ts.map +1 -1
- package/dist/server/routes/index.js +28 -5
- package/dist/server/routes/index.js.map +1 -1
- package/dist/server/routes/schemas.d.ts +7 -1
- package/dist/server/routes/schemas.d.ts.map +1 -1
- package/dist/server/routes/schemas.js +22 -0
- package/dist/server/routes/schemas.js.map +1 -1
- package/dist/server/services/foundation.d.ts +8 -1
- package/dist/server/services/foundation.d.ts.map +1 -1
- package/dist/server/services/foundation.js +98 -8
- package/dist/server/services/foundation.js.map +1 -1
- package/dist/server/source-evidence.d.ts +9 -0
- package/dist/server/source-evidence.d.ts.map +1 -1
- package/dist/server/source-evidence.js +145 -1
- package/dist/server/source-evidence.js.map +1 -1
- package/dist/server/static-values.d.ts +18 -0
- package/dist/server/static-values.d.ts.map +1 -0
- package/dist/server/static-values.js +257 -0
- package/dist/server/static-values.js.map +1 -0
- package/dist/server/tokens.d.ts +7 -1
- package/dist/server/tokens.d.ts.map +1 -1
- package/dist/server/tokens.js.map +1 -1
- package/dist/shared/foundation.d.ts +13 -0
- package/dist/shared/foundation.d.ts.map +1 -1
- package/dist/shared/foundation.js.map +1 -1
- package/package.json +9 -9
- package/skills/nocobase-app-plugin-foundation/SKILL.md +17 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,25 @@
|
|
|
1
1
|
# @nocobase/app-plugin-foundation
|
|
2
2
|
|
|
3
|
+
## 0.1.0-beta.2
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 4d61361: Recognize data-model dependencies in existing applications that resolve the API client through useService, return memoized request helpers, generate routes from literal tuples, or register backend routes through local helpers. Keep request paths paired with their own HTTP methods and preserve the associations in source-free deployment manifests without executing application code.
|
|
8
|
+
|
|
9
|
+
## 0.1.0-beta.1
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- 4c23514: Bound Foundation database reads and Collection previews, make exact business record counts explicit with retained timestamps, add protected searchable Collection pages, recognize composed APIs and explicit service dependencies in the module matrix, and label matrix icons with accessible tooltips.
|
|
14
|
+
|
|
15
|
+
Keep Collection evidence compact with bounded name tags and move the searchable catalog into a height-limited dialog with automatic, composition-aware search and fixed pagination controls.
|
|
16
|
+
|
|
17
|
+
Recognize enabled model services as AI capability use for native OnlineAgent and model gateway applications without requiring stored Agent records, preserve independent Runner evidence, and leave unreadable configuration unconfirmed.
|
|
18
|
+
|
|
19
|
+
- Updated dependencies [f8f64ad]
|
|
20
|
+
- @nocobase/app-server@3.0.0-beta.2
|
|
21
|
+
- @nocobase/app-plugin-authentication@2.0.0-beta.12
|
|
22
|
+
|
|
3
23
|
## 0.1.0-beta.0
|
|
4
24
|
|
|
5
25
|
### Minor Changes
|
package/README.md
CHANGED
|
@@ -25,16 +25,18 @@ Only an identity with unrestricted access, such as a holder of the root Permissi
|
|
|
25
25
|
|
|
26
26
|
## How it collects
|
|
27
27
|
|
|
28
|
-
Everything is collected by this plugin, read-only, when the page asks; no other plugin or agent reports to it. It reads the Collections of the default connection, the application's configuration, the services registered in its container, the migration history, and the `package.json` of each package the application resolves from its own root. A result is cached for 30 seconds; `?refresh=true` collects again. Each capability gets 10 seconds
|
|
28
|
+
Everything is collected by this plugin, read-only, when the page asks; no other plugin or agent reports to it. It reads the Collections of the default connection, the application's configuration, the services registered in its container, the migration history, and the `package.json` of each package the application resolves from its own root. A result is cached for 30 seconds; `?refresh=true` collects again. Each capability gets 10 seconds. Database reads share a service-wide limit of four, including reads left running by a timed-out collection. Expired collectors stop scheduling work; an in-flight driver query retains its slot until it settles because the database abstraction has no generic cancellation API.
|
|
29
29
|
|
|
30
30
|
The rules every capability follows:
|
|
31
31
|
|
|
32
32
|
- An installed package proves nothing: a capability is in use only when the application is wired to it, such as a lifecycle store, an enabled schedule, a connected mailbox or a configured channel.
|
|
33
33
|
- Zero uses is not "not used": a lifecycle no record has moved through yet is in use.
|
|
34
|
-
- Records are counted only in the application's own Collections. The Collections NocoBase packages keep are listed in `server/catalog.ts`; a package that adds one under a new name must be added there, or its records count as the application's. Views are not counted, so no row is counted twice.
|
|
34
|
+
- Business record totals are counted only on explicit request (`?countRecords=true` or the Count business records button). Ordinary loads and refreshes retain the last successful total with its independent collection time, and never silently replace a failed count with zero. Records are counted only in the application's own Collections. The Collections NocoBase packages keep are listed in `server/catalog.ts`; a package that adds one under a new name must be added there, or its records count as the application's. Views are not counted, so no row is counted twice.
|
|
35
35
|
- A capability whose evidence cannot be read has no status rather than a guessed one, and a count that could only be read in part is marked as a lower bound. No driver error reaches the response.
|
|
36
36
|
- Accepted notification deliveries are accepted by the provider, which is not the same as received.
|
|
37
37
|
|
|
38
|
+
AI and agents are in use when a model service is enabled or a Runner is registered. Native OnlineAgent sessions and model gateway calls use model services directly and do not require an `agAgents` record; persisted Agent definitions are optional evidence, not a prerequisite. Enabled services establish configuration before the first call, while old usage records alone do not prove current configuration. Unreadable configuration leaves the status unconfirmed unless another execution path is confirmed active; unknown subparts are omitted and their metrics remain unavailable. Collection and usage reads remain read-only and never call a model provider or expose credentials.
|
|
39
|
+
|
|
38
40
|
## What it does not do yet
|
|
39
41
|
|
|
40
42
|
- It does not claim exhaustive module associations: opaque service wiring, computed requests and unsupported source layouts remain unassociated.
|
|
@@ -70,7 +72,7 @@ Refresh collects current evidence again. Configuration collections are read in s
|
|
|
70
72
|
|
|
71
73
|
The plugin derives modules from the current Client navigation tree. A top-level menu page or group is a module; its child pages, drawers and tabs belong to that module. Titles use the owning application's or plugin's locale namespace. Guest routes and Foundation itself are excluded. Adding, removing or renaming registered routes updates the matrix without an application-specific module list. Matrix columns use the same dynamic capability list as the band, including registered Pro and other extensions.
|
|
72
74
|
|
|
73
|
-
Associations have explicit evidence: a registered page uses the interface, required authentication uses accounts, and explicit page authorization uses permissions. A plugin-owned page can establish its provider's single recognized category; a multi-category package alone cannot establish which capability the page uses. The Foundation server parses readable page declarations and follows referenced value symbols from the selected page export through local aliases, re-exports, functions and components. Literal API-client requests, including templates with dynamic path segments, are matched by HTTP method and path to explicit root-mounted Hono endpoints. Only those endpoint handlers and their referenced values contribute backend dependencies. Unused imports, unrelated exports in a barrel/shared file, uncalled class methods, other endpoints and unreferenced routers do not establish module use. Installation and global registration alone never fill the matrix. These checks identify static integration dependencies rather than proof of past execution;
|
|
75
|
+
Associations have explicit evidence: a registered page uses the interface, required authentication uses accounts, and explicit page authorization uses permissions. A plugin-owned page can establish its provider's single recognized category; a multi-category package alone cannot establish which capability the page uses. The Foundation server parses readable page declarations and follows referenced value symbols from the selected page export through local aliases, re-exports, functions and components. Literal API-client requests, including templates with dynamic path segments, are matched by HTTP method and path to explicit root-mounted Hono endpoints. Router mounts and base paths are composed across local modules. Literal request arguments can pass through selected local helpers, JSX props and destructured defaults; finite literal arrays can supply generated route names, conditional loaders and endpoint paths, and proven host API repository clients match explicitly registered Repository API exposures and enabled actions. Matched exposures also preserve their Collection names for the matrix explanation. Only those endpoint handlers and their referenced values contribute backend dependencies. Unused imports, unrelated exports in a barrel/shared file, uncalled class methods, other endpoints and unreferenced routers do not establish module use. Installation and global registration alone never fill the matrix. These checks identify static integration dependencies rather than proof of past execution; explicit package-local singleton/instance service bindings can connect a selected service method and its constructor dependencies to the endpoint. Ambiguous bindings and opaque service factories remain unassociated instead of borrowing a provider's complete import graph.
|
|
74
76
|
|
|
75
77
|
The parser reads files without evaluating application code or invoking page loaders. Package-local real paths, at most 400 source files per package and 512 KB per file bound the scan; filesystem paths, code and raw errors are absent from the response. This server-only parser uses TypeScript as a runtime dependency. Results share the overview cache and Refresh operation and the existing unrestricted administrator boundary. The matrix has no storage, migration or new kernel change.
|
|
76
78
|
|
|
@@ -78,6 +80,10 @@ Source discovery currently supports conventional `client/routes` entries, relati
|
|
|
78
80
|
|
|
79
81
|
The capability detail lists its automatically associated business modules beside the application evidence, so readers can connect a shared capability to their own business before inspecting package names. Static API dependency matching respects the request method (`GET` when omitted) as well as the path; computed methods stay unassociated, and type-only re-exports do not establish dependencies. A failed refresh retains the last successful result with a visible warning and unchanged collection time. If a refresh returns `401` or `403`, the page hides cached internals and shows the access boundary instead.
|
|
80
82
|
|
|
83
|
+
### Existing application analysis
|
|
84
|
+
|
|
85
|
+
Static module tracing recognizes `useService(apiClientToken)` as well as `useApiClient()`. Local hooks may return a React `useCallback` request function; arguments remain scoped to each invocation so one request's method cannot be paired with another request's path. Literal tuple destructuring, unshadowed `String()` conversions and local literal conversions with decidable branches are supported. Hono registration helpers retain their router and literal arguments. Opaque calls, side-effecting conversions and unknown inputs remain unassociated. These associations are generated during the application build, so an existing deployment must rebuild with the updated Foundation plugin before its matrix changes.
|
|
86
|
+
|
|
81
87
|
## Sidebar grouping
|
|
82
88
|
|
|
83
89
|
Use `foundation({ settingsGroup: true })` in a bare application to wrap the protected page in a localized System settings group. The default template enables this on initial creation. The group disappears when its page is denied; the navigation helper merges it into the application settings group when that group becomes available.
|
|
@@ -85,3 +91,11 @@ Use `foundation({ settingsGroup: true })` in a bare application to wrap the prot
|
|
|
85
91
|
The host can call `groupFoundationNavigation(items)` from `@nocobase/app-plugin-foundation/client` in its existing `client/lib/navigation-transform.ts` hook, after permission filtering. The helper places an already-visible Foundation entry last in the existing `settings` navigation group, avoiding a separate sidebar group gap. Pass the host’s group name as the second argument when different. It preserves route identity, `/foundation`, authorization and other navigation metadata, never creates a hidden entry and leaves Foundation standalone if no settings group exists. The App needs only the hook call; grouping logic stays in this plugin and does not change Core or the sidebar renderer.
|
|
86
92
|
|
|
87
93
|
Related package names and versions appear once inside the selected capability detail, combining the capability adapter's packages with providers classified into that capability and deduplicating by package name. Discovery counts and diagnostic evidence remain internal and are not rendered on the value page. Unclassified registered extensions remain selectable in the capability band and display their own package and version without treating registration as proof of use.
|
|
94
|
+
|
|
95
|
+
## Large applications
|
|
96
|
+
|
|
97
|
+
The data-modeling overview returns at most five Collection names plus the full catalog total. View all collections opens an on-demand list, with at most 50 names in each response and case-insensitive search over the complete owned catalog. `GET /api/foundation/collections?offset=0&search=orders` returns `{ data: [...], meta: { total } }` under the same unrestricted administrator boundary. Uncertain ownership or an unavailable catalog returns `503 FOUNDATION_COLLECTIONS_UNAVAILABLE`. There is no new table, migration or application-specific module map.
|
|
98
|
+
|
|
99
|
+
Known catalog totals remain visible when schema inspection or explicit row counting exceeds its deadline; unavailable fields are not reported as zero. Row counts are retained in the service process, invalidated when the catalog table names change, and require a new explicit count after a process restart. The overview still inspects the default connection catalog and supported schema definitions; it is not constant-time in the number of Collections. Matrix icon headers provide localized tooltips on hover and keyboard focus, including inactive capabilities.
|
|
100
|
+
|
|
101
|
+
Collection evidence uses at most five compact name tags and the total count on the overview. The full catalog opens in a temporary dialog with a bounded scrolling body and fixed pagination controls; opening it does not expand the capability card. Search is debounced by 250 ms and waits for IME composition to finish; Enter applies it immediately. Collection titles and logical names are listed without opening a schema inspector. Closing returns focus to its trigger. Loading, empty search, recoverable failure and denied-access states remain inside the dialog.
|
package/dist/client/api.d.ts
CHANGED
|
@@ -3,6 +3,7 @@ import { type FoundationOverview } from '../shared/foundation.js';
|
|
|
3
3
|
/** Reads the overview. Every call is a GET; the plugin writes nothing. */
|
|
4
4
|
export declare function fetchFoundationOverview(api: ApiClient, options?: {
|
|
5
5
|
readonly refresh?: boolean;
|
|
6
|
+
readonly countRecords?: boolean;
|
|
6
7
|
}): Promise<FoundationOverview>;
|
|
7
8
|
export declare const FOUNDATION_OVERVIEW_QUERY_KEY: readonly ["foundation", "overview"];
|
|
8
9
|
export type FoundationLoadError = 'forbidden' | 'failed';
|
|
@@ -12,6 +13,7 @@ export interface FoundationOverviewState {
|
|
|
12
13
|
readonly loading: boolean;
|
|
13
14
|
/** Collects again on the server, bypassing its cache. */
|
|
14
15
|
readonly refresh: () => void;
|
|
16
|
+
readonly countRecords: () => void;
|
|
15
17
|
}
|
|
16
18
|
export declare function useFoundationOverview(): FoundationOverviewState;
|
|
17
19
|
//# sourceMappingURL=api.d.ts.map
|
package/dist/client/api.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../client/api.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,SAAS,EACf,MAAM,sBAAsB,CAAC;AAI9B,OAAO,EAEL,KAAK,kBAAkB,EACxB,MAAM,yBAAyB,CAAC;AAEjC,0EAA0E;AAC1E,wBAAsB,uBAAuB,CAC3C,GAAG,EAAE,SAAS,EACd,OAAO,GAAE;IAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAO,
|
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../client/api.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,SAAS,EACf,MAAM,sBAAsB,CAAC;AAI9B,OAAO,EAEL,KAAK,kBAAkB,EACxB,MAAM,yBAAyB,CAAC;AAEjC,0EAA0E;AAC1E,wBAAsB,uBAAuB,CAC3C,GAAG,EAAE,SAAS,EACd,OAAO,GAAE;IAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAA;CAAO,GAC5E,OAAO,CAAC,kBAAkB,CAAC,CAS7B;AAED,eAAO,MAAM,6BAA6B,qCAGhC,CAAC;AAEX,MAAM,MAAM,mBAAmB,GAAG,WAAW,GAAG,QAAQ,CAAC;AAEzD,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,QAAQ,CAAC,EAAE,kBAAkB,CAAC;IACvC,QAAQ,CAAC,KAAK,CAAC,EAAE,mBAAmB,CAAC;IACrC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,yDAAyD;IACzD,QAAQ,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC;IAC7B,QAAQ,CAAC,YAAY,EAAE,MAAM,IAAI,CAAC;CACnC;AAED,wBAAgB,qBAAqB,IAAI,uBAAuB,CA4C/D"}
|
package/dist/client/api.js
CHANGED
|
@@ -6,7 +6,10 @@ import { FOUNDATION_NAMESPACE, } from '../shared/foundation.js';
|
|
|
6
6
|
export async function fetchFoundationOverview(api, options = {}) {
|
|
7
7
|
const { data } = await api.request({
|
|
8
8
|
path: `${FOUNDATION_NAMESPACE}/overview`,
|
|
9
|
-
query:
|
|
9
|
+
query: {
|
|
10
|
+
...(options.refresh ? { refresh: 'true' } : {}),
|
|
11
|
+
...(options.countRecords ? { countRecords: 'true' } : {}),
|
|
12
|
+
},
|
|
10
13
|
});
|
|
11
14
|
return data;
|
|
12
15
|
}
|
|
@@ -24,15 +27,17 @@ export function useFoundationOverview() {
|
|
|
24
27
|
retry: false,
|
|
25
28
|
refetchOnWindowFocus: false,
|
|
26
29
|
});
|
|
27
|
-
const
|
|
30
|
+
const collect = useCallback((countRecords = false) => {
|
|
28
31
|
void queryClient
|
|
29
32
|
.fetchQuery({
|
|
30
33
|
queryKey: FOUNDATION_OVERVIEW_QUERY_KEY,
|
|
31
|
-
queryFn: () => fetchFoundationOverview(api, { refresh: true }),
|
|
34
|
+
queryFn: () => fetchFoundationOverview(api, countRecords ? { countRecords: true } : { refresh: true }),
|
|
32
35
|
staleTime: 0,
|
|
33
36
|
})
|
|
34
37
|
.catch(() => undefined);
|
|
35
38
|
}, [api, queryClient]);
|
|
39
|
+
const refresh = useCallback(() => collect(), [collect]);
|
|
40
|
+
const countRecords = useCallback(() => collect(true), [collect]);
|
|
36
41
|
const error = query.error === null
|
|
37
42
|
? undefined
|
|
38
43
|
: query.error instanceof ApiClientError &&
|
|
@@ -46,6 +51,7 @@ export function useFoundationOverview() {
|
|
|
46
51
|
...(error === undefined ? {} : { error }),
|
|
47
52
|
loading: query.isFetching,
|
|
48
53
|
refresh,
|
|
54
|
+
countRecords,
|
|
49
55
|
};
|
|
50
56
|
}
|
|
51
57
|
//# sourceMappingURL=api.js.map
|
package/dist/client/api.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../client/api.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,YAAY,GAEb,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAEpC,OAAO,EACL,oBAAoB,GAErB,MAAM,yBAAyB,CAAC;AAEjC,0EAA0E;AAC1E,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,GAAc,EACd,
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../client/api.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"business-modules.d.ts","sourceRoot":"","sources":["../../client/business-modules.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,wBAAwB,EAC9B,MAAM,8BAA8B,CAAC;AAEtC,OAAO,KAAK,EACV,wBAAwB,EAExB,uBAAuB,EACvB,2BAA2B,EAC5B,MAAM,yBAAyB,CAAC;AAIjC,iHAAiH;AACjH,wBAAgB,eAAe,CAC7B,MAAM,EAAE,SAAS,wBAAwB,EAAE,EAC3C,SAAS,EAAE,2BAA2B,GAAG,SAAS,EAClD,OAAO,EAAE,uBAAuB,GAAG,SAAS,EAC5C,YAAY,EAAE,SAAS,MAAM,EAAE,GAC9B,SAAS,wBAAwB,EAAE,
|
|
1
|
+
{"version":3,"file":"business-modules.d.ts","sourceRoot":"","sources":["../../client/business-modules.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,wBAAwB,EAC9B,MAAM,8BAA8B,CAAC;AAEtC,OAAO,KAAK,EACV,wBAAwB,EAExB,uBAAuB,EACvB,2BAA2B,EAC5B,MAAM,yBAAyB,CAAC;AAIjC,iHAAiH;AACjH,wBAAgB,eAAe,CAC7B,MAAM,EAAE,SAAS,wBAAwB,EAAE,EAC3C,SAAS,EAAE,2BAA2B,GAAG,SAAS,EAClD,OAAO,EAAE,uBAAuB,GAAG,SAAS,EAC5C,YAAY,EAAE,SAAS,MAAM,EAAE,GAC9B,SAAS,wBAAwB,EAAE,CA2FrC"}
|
|
@@ -46,6 +46,7 @@ export function businessModules(routes, inventory, sources, capabilities) {
|
|
|
46
46
|
add(key, evidence, name);
|
|
47
47
|
};
|
|
48
48
|
let complete = true;
|
|
49
|
+
const collections = new Set();
|
|
49
50
|
for (const page of pages) {
|
|
50
51
|
add('interface', 'page');
|
|
51
52
|
if (page.auth === 'required')
|
|
@@ -61,6 +62,8 @@ export function businessModules(routes, inventory, sources, capabilities) {
|
|
|
61
62
|
provider(name, 'source');
|
|
62
63
|
for (const name of source?.apiProviders ?? [])
|
|
63
64
|
provider(name, 'apiSource');
|
|
65
|
+
for (const name of source?.collections ?? [])
|
|
66
|
+
collections.add(name);
|
|
64
67
|
}
|
|
65
68
|
modules.push({
|
|
66
69
|
id: node.id,
|
|
@@ -71,6 +74,9 @@ export function businessModules(routes, inventory, sources, capabilities) {
|
|
|
71
74
|
capability,
|
|
72
75
|
evidence: [...link.evidence],
|
|
73
76
|
providers: [...link.providers].sort(),
|
|
77
|
+
...(capability === 'dataModeling' && collections.size
|
|
78
|
+
? { collections: [...collections].sort() }
|
|
79
|
+
: {}),
|
|
74
80
|
})),
|
|
75
81
|
});
|
|
76
82
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"business-modules.js","sourceRoot":"","sources":["../../client/business-modules.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"business-modules.js","sourceRoot":"","sources":["../../client/business-modules.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { type ReactElement } from 'react';
|
|
2
|
+
import type { FoundationFact } from '../../shared/foundation.js';
|
|
3
|
+
/** Keep the overview compact; fetch the full catalog only in this temporary browser. */
|
|
4
|
+
export declare function CollectionsBrowser({ summary, }: {
|
|
5
|
+
readonly summary: FoundationFact;
|
|
6
|
+
}): ReactElement;
|
|
7
|
+
//# sourceMappingURL=collections-browser.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"collections-browser.d.ts","sourceRoot":"","sources":["../../../client/components/collections-browser.tsx"],"names":[],"mappings":"AAWA,OAAO,EAAuB,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAC/D,OAAO,KAAK,EAEV,cAAc,EACf,MAAM,4BAA4B,CAAC;AAepC,wFAAwF;AACxF,wBAAgB,kBAAkB,CAAC,EACjC,OAAO,GACR,EAAE;IACD,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;CAClC,GAAG,YAAY,CA6Pf"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { ApiClientError, useApiClient } from '@nocobase/app-client';
|
|
3
|
+
import { keepPreviousData, useQuery } from '@tanstack/react-query';
|
|
4
|
+
import { ChevronLeft, ChevronRight, LoaderCircle, Search, SearchX, Table2, X, } from 'lucide-react';
|
|
5
|
+
import { useEffect, useState } from 'react';
|
|
6
|
+
import { formatNumber } from './format.js';
|
|
7
|
+
import { useFoundationTranslation } from './foundation-translation.js';
|
|
8
|
+
import { Button } from './ui/button.js';
|
|
9
|
+
import { Dialog, DialogClose, DialogContent, DialogDescription, DialogHeader, DialogTitle, DialogTrigger, } from './ui/dialog.js';
|
|
10
|
+
import { Input } from './ui/input.js';
|
|
11
|
+
/** Keep the overview compact; fetch the full catalog only in this temporary browser. */
|
|
12
|
+
export function CollectionsBrowser({ summary, }) {
|
|
13
|
+
const { t, text, locale } = useFoundationTranslation();
|
|
14
|
+
const api = useApiClient();
|
|
15
|
+
const [open, setOpen] = useState(false);
|
|
16
|
+
const [search, setSearch] = useState('');
|
|
17
|
+
const [input, setInput] = useState('');
|
|
18
|
+
const [composing, setComposing] = useState(false);
|
|
19
|
+
const [offset, setOffset] = useState(0);
|
|
20
|
+
const total = typeof summary.params?.count === 'number' ? summary.params.count : 0;
|
|
21
|
+
const names = summary.params?.names;
|
|
22
|
+
const preview = typeof names === 'object' ? [...new Set(names.slice(0, 5).map(text))] : [];
|
|
23
|
+
useEffect(() => {
|
|
24
|
+
if (composing || input.trim() === search)
|
|
25
|
+
return;
|
|
26
|
+
const timer = setTimeout(() => {
|
|
27
|
+
setOffset(0);
|
|
28
|
+
setSearch(input.trim());
|
|
29
|
+
}, 250);
|
|
30
|
+
return () => clearTimeout(timer);
|
|
31
|
+
}, [input, composing, search]);
|
|
32
|
+
const query = useQuery({
|
|
33
|
+
queryKey: ['foundation', 'collections', search, offset],
|
|
34
|
+
enabled: open,
|
|
35
|
+
placeholderData: keepPreviousData,
|
|
36
|
+
retry: false,
|
|
37
|
+
queryFn: async () => {
|
|
38
|
+
const { data, meta } = await api.request({ path: 'foundation/collections', query: { search, offset } });
|
|
39
|
+
return { items: data, total: meta.total };
|
|
40
|
+
},
|
|
41
|
+
});
|
|
42
|
+
const searching = composing || input.trim() !== search || query.isFetching;
|
|
43
|
+
const denied = query.error instanceof ApiClientError &&
|
|
44
|
+
[401, 403].includes(query.error.status);
|
|
45
|
+
const number = (value) => formatNumber(value, locale);
|
|
46
|
+
return (_jsxs(Dialog, { open: open, onOpenChange: setOpen, children: [_jsxs("div", { className: 'flex min-w-0 flex-col gap-2.5 rounded-lg bg-muted/40 p-3', children: [_jsxs("div", { className: 'flex flex-wrap items-center justify-between gap-2', children: [_jsxs("p", { className: 'flex items-center gap-1.5 text-xs font-medium text-muted-foreground', children: [_jsx(Table2, { className: 'size-3.5', "aria-hidden": true }), t('detail.collectionCount', { count: number(total) })] }), _jsxs(DialogTrigger, { render: _jsx(Button, { size: 'xs', variant: 'ghost', className: 'text-muted-foreground' }), children: [t('detail.viewCollections'), _jsx(ChevronRight, { "aria-hidden": true })] })] }), _jsxs("ul", { "aria-label": t('detail.collectionPreview'), className: 'flex min-w-0 flex-wrap items-center gap-1.5', children: [preview.map((name) => (_jsx("li", { className: 'max-w-full truncate rounded-md border bg-background px-2 py-1 text-xs text-muted-foreground sm:max-w-48', children: name }, name))), total > preview.length ? (_jsxs("li", { className: 'px-1 text-xs tabular-nums text-muted-foreground', children: ["+", number(total - preview.length)] })) : null] })] }), _jsxs(DialogContent, { showCloseButton: false, className: 'flex max-h-[calc(100dvh-2rem)] flex-col gap-0 overflow-hidden p-0 sm:max-w-lg', children: [_jsxs(DialogHeader, { className: 'shrink-0 gap-1 px-5 pt-5 pr-12 pb-4', children: [_jsx(DialogTitle, { children: t('detail.collectionsTitle') }), _jsx(DialogDescription, { children: t('detail.collectionCount', { count: number(total) }) })] }), _jsx("form", { className: 'shrink-0 px-5 pb-4', onSubmit: (event) => {
|
|
47
|
+
event.preventDefault();
|
|
48
|
+
if (!composing) {
|
|
49
|
+
setOffset(0);
|
|
50
|
+
setSearch(input.trim());
|
|
51
|
+
}
|
|
52
|
+
}, children: _jsxs("div", { className: 'relative', children: [_jsx(Search, { className: 'pointer-events-none absolute top-1/2 left-2.5 size-4 -translate-y-1/2 text-muted-foreground', "aria-hidden": true }), _jsx(Input, { "aria-label": t('detail.searchCollections'), placeholder: t('detail.searchCollections'), className: 'pl-9', value: input, maxLength: 200, onChange: (event) => setInput(event.target.value), onCompositionStart: () => setComposing(true), onCompositionEnd: () => setComposing(false) })] }) }), _jsx("div", { className: 'h-80 min-h-0 flex-1 overflow-y-auto border-y', "aria-busy": searching, children: query.isPending ? (_jsxs("div", { role: 'status', className: 'flex h-full items-center justify-center gap-2 p-6 text-sm text-muted-foreground', children: [_jsx(LoaderCircle, { className: 'size-4 animate-spin', "aria-hidden": true }), t('page.loading')] })) : query.isError ? (_jsxs("div", { role: 'alert', className: 'flex h-full flex-col items-center justify-center gap-3 p-6 text-center text-sm', children: [_jsx("p", { children: t(denied ? 'page.forbidden' : 'page.loadFailed') }), !denied ? (_jsx(Button, { variant: 'outline', size: 'sm', onClick: () => void query.refetch(), children: t('page.retry') })) : null] })) : query.data.items.length === 0 ? (_jsxs("div", { role: 'status', className: 'flex h-full flex-col items-center justify-center gap-2 p-6 text-center', children: [_jsx(SearchX, { className: 'mb-1 size-6 text-muted-foreground', "aria-hidden": true }), _jsx("p", { className: 'text-sm font-medium', children: t('detail.noCollectionMatches') }), _jsx("p", { className: 'text-xs text-muted-foreground', children: t('detail.noCollectionMatchesHint') })] })) : (_jsx("ul", { "aria-label": t('detail.collectionsTitle'), className: `divide-y ${searching ? 'opacity-50' : ''}`, children: query.data.items.map((item) => (_jsxs("li", { className: 'flex min-w-0 items-center gap-3 px-5 py-2.5', children: [_jsx(Table2, { className: 'size-4 shrink-0 text-muted-foreground', "aria-hidden": true }), _jsxs("div", { className: 'min-w-0', children: [_jsx("p", { className: 'truncate text-sm', children: item.title || item.name }), item.title && item.title !== item.name ? (_jsx("p", { className: 'truncate font-mono text-xs text-muted-foreground', children: item.name })) : null] })] }, item.name))) })) }), _jsxs("div", { className: 'flex shrink-0 items-center justify-between gap-3 px-5 py-3', children: [_jsx("p", { role: 'status', className: 'min-w-0 text-xs tabular-nums text-muted-foreground', children: query.data && !query.isError
|
|
53
|
+
? t('detail.collectionRange', {
|
|
54
|
+
from: number(query.data.total ? offset + 1 : 0),
|
|
55
|
+
to: number(offset + query.data.items.length),
|
|
56
|
+
total: number(query.data.total),
|
|
57
|
+
})
|
|
58
|
+
: null }), _jsxs("div", { className: 'flex items-center gap-1', children: [searching ? (_jsx(LoaderCircle, { className: 'mr-2 size-3.5 animate-spin text-muted-foreground', "aria-label": t('detail.searchCollections') })) : null, _jsx(Button, { variant: 'ghost', size: 'icon-sm', "aria-label": t('detail.previousPage'), disabled: offset === 0 || searching || query.isError, onClick: () => setOffset(Math.max(0, offset - 50)), children: _jsx(ChevronLeft, { "aria-hidden": true }) }), _jsx(Button, { variant: 'ghost', size: 'icon-sm', "aria-label": t('detail.nextPage'), disabled: !query.data ||
|
|
59
|
+
offset + 50 >= query.data.total ||
|
|
60
|
+
searching ||
|
|
61
|
+
query.isError, onClick: () => setOffset(offset + 50), children: _jsx(ChevronRight, { "aria-hidden": true }) })] })] }), _jsx(DialogClose, { render: _jsx(Button, { variant: 'ghost', size: 'icon-sm', className: 'absolute top-3 right-3', "aria-label": t('detail.closeCollections') }), children: _jsx(X, { "aria-hidden": true }) })] })] }));
|
|
62
|
+
}
|
|
63
|
+
//# sourceMappingURL=collections-browser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"collections-browser.js","sourceRoot":"","sources":["../../../client/components/collections-browser.tsx"],"names":[],"mappings":"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"}
|
|
@@ -6,10 +6,11 @@ export interface FoundationOverviewViewProps {
|
|
|
6
6
|
readonly overview: FoundationOverview;
|
|
7
7
|
readonly refreshing?: boolean;
|
|
8
8
|
readonly onRefresh?: () => void;
|
|
9
|
+
readonly onCountRecords?: () => void;
|
|
9
10
|
readonly clientProviders?: readonly string[];
|
|
10
11
|
readonly registeredRoutes?: Parameters<typeof businessModules>[0];
|
|
11
12
|
}
|
|
12
13
|
/** The band, the key numbers and the selected capability's details, for a page that loads the overview itself. */
|
|
13
|
-
export declare function FoundationOverviewView({ overview: serverOverview, refreshing, onRefresh, clientProviders, registeredRoutes, }: FoundationOverviewViewProps): ReactElement;
|
|
14
|
+
export declare function FoundationOverviewView({ overview: serverOverview, refreshing, onRefresh, onCountRecords, clientProviders, registeredRoutes, }: FoundationOverviewViewProps): ReactElement;
|
|
14
15
|
export default FoundationPage;
|
|
15
16
|
//# sourceMappingURL=foundation-page.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"foundation-page.d.ts","sourceRoot":"","sources":["../../../client/components/foundation-page.tsx"],"names":[],"mappings":"AAGA,OAAO,EAKL,KAAK,YAAY,EAClB,MAAM,OAAO,CAAC;AAEf,OAAO,EAKL,KAAK,kBAAkB,EAGxB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"foundation-page.d.ts","sourceRoot":"","sources":["../../../client/components/foundation-page.tsx"],"names":[],"mappings":"AAGA,OAAO,EAKL,KAAK,YAAY,EAClB,MAAM,OAAO,CAAC;AAEf,OAAO,EAKL,KAAK,kBAAkB,EAGxB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAoDzD,wBAAgB,cAAc,IAAI,YAAY,CA4D7C;AAED,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC;IACtC,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IAChC,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IACrC,QAAQ,CAAC,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7C,QAAQ,CAAC,gBAAgB,CAAC,EAAE,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;CACnE;AAED,kHAAkH;AAClH,wBAAgB,sBAAsB,CAAC,EACrC,QAAQ,EAAE,cAAc,EACxB,UAAkB,EAClB,SAAS,EACT,cAAc,EACd,eAAoB,EACpB,gBAAqB,GACtB,EAAE,2BAA2B,GAAG,YAAY,CA2M5C;AAwgBD,eAAe,cAAc,CAAC"}
|
|
@@ -8,6 +8,7 @@ import { withAvailableCapabilities } from '../../shared/available-capabilities.j
|
|
|
8
8
|
import { businessModules } from '../business-modules.js';
|
|
9
9
|
import { Button } from './ui/button.js';
|
|
10
10
|
import { ModuleMatrix } from './module-matrix.js';
|
|
11
|
+
import { CollectionsBrowser } from './collections-browser.js';
|
|
11
12
|
import { useFoundationTranslation } from './foundation-translation.js';
|
|
12
13
|
import { useFoundationOverview } from '../api.js';
|
|
13
14
|
import { clientProviderNames, withClientProviders, } from '../provider-inventory.js';
|
|
@@ -49,11 +50,11 @@ function useLighting(activeCount, runKey) {
|
|
|
49
50
|
export function FoundationPage() {
|
|
50
51
|
const { t } = useFoundationTranslation();
|
|
51
52
|
const app = useClientApplication();
|
|
52
|
-
const { overview, error, loading, refresh } = useFoundationOverview();
|
|
53
|
-
return (_jsxs("div", { className: 'mx-auto flex w-full max-w-7xl flex-col gap-4 p-4 md:p-6', children: [_jsxs("header", { className: 'flex flex-col gap-1', children: [_jsx("h1", { className: 'font-heading text-2xl font-semibold', children: t('page.title') }), _jsx("p", { className: 'max-w-3xl text-sm text-muted-foreground', children: t('page.description') })] }), overview && error !== 'forbidden' ? (_jsxs(_Fragment, { children: [error === 'failed' ? (_jsx("p", { role: 'alert', className: 'rounded-lg border border-amber-500/30 bg-amber-500/5 px-4 py-3 text-sm text-foreground', children: t('page.refreshFailed') })) : null, _jsx(FoundationOverviewView, { overview: overview, clientProviders: clientProviderNames(app), registeredRoutes: app.runtime.routes, refreshing: loading, onRefresh: refresh })] })) : error ? (_jsxs("div", { role: 'alert', className: 'flex flex-col items-start gap-3 rounded-lg border bg-card p-6 text-sm', children: [_jsx("p", { children: t(error === 'forbidden' ? 'page.forbidden' : 'page.loadFailed') }), error === 'failed' ? (_jsx("button", { type: 'button', onClick: refresh, className: 'rounded-md border border-input px-3 py-1.5 hover:bg-hover', children: t('page.retry') })) : null] })) : (_jsx("p", { className: 'rounded-lg border bg-card p-6 text-sm text-muted-foreground', children: t('page.loading') }))] }));
|
|
53
|
+
const { overview, error, loading, refresh, countRecords } = useFoundationOverview();
|
|
54
|
+
return (_jsxs("div", { className: 'mx-auto flex w-full max-w-7xl flex-col gap-4 p-4 md:p-6', children: [_jsxs("header", { className: 'flex flex-col gap-1', children: [_jsx("h1", { className: 'font-heading text-2xl font-semibold', children: t('page.title') }), _jsx("p", { className: 'max-w-3xl text-sm text-muted-foreground', children: t('page.description') })] }), overview && error !== 'forbidden' ? (_jsxs(_Fragment, { children: [error === 'failed' ? (_jsx("p", { role: 'alert', className: 'rounded-lg border border-amber-500/30 bg-amber-500/5 px-4 py-3 text-sm text-foreground', children: t('page.refreshFailed') })) : null, _jsx(FoundationOverviewView, { overview: overview, clientProviders: clientProviderNames(app), registeredRoutes: app.runtime.routes, refreshing: loading, onRefresh: refresh, onCountRecords: countRecords })] })) : error ? (_jsxs("div", { role: 'alert', className: 'flex flex-col items-start gap-3 rounded-lg border bg-card p-6 text-sm', children: [_jsx("p", { children: t(error === 'forbidden' ? 'page.forbidden' : 'page.loadFailed') }), error === 'failed' ? (_jsx("button", { type: 'button', onClick: refresh, className: 'rounded-md border border-input px-3 py-1.5 hover:bg-hover', children: t('page.retry') })) : null] })) : (_jsx("p", { className: 'rounded-lg border bg-card p-6 text-sm text-muted-foreground', children: t('page.loading') }))] }));
|
|
54
55
|
}
|
|
55
56
|
/** The band, the key numbers and the selected capability's details, for a page that loads the overview itself. */
|
|
56
|
-
export function FoundationOverviewView({ overview: serverOverview, refreshing = false, onRefresh, clientProviders = [], registeredRoutes = [], }) {
|
|
57
|
+
export function FoundationOverviewView({ overview: serverOverview, refreshing = false, onRefresh, onCountRecords, clientProviders = [], registeredRoutes = [], }) {
|
|
57
58
|
const { t, locale, text } = useFoundationTranslation();
|
|
58
59
|
const overview = useMemo(() => {
|
|
59
60
|
const resolved = serverOverview.inventory
|
|
@@ -90,7 +91,7 @@ export function FoundationOverviewView({ overview: serverOverview, refreshing =
|
|
|
90
91
|
}) }), _jsx("p", { className: 'text-sm text-muted-foreground', children: t('page.scoreCaption') })] }), _jsx("div", { className: 'flex gap-2', children: onRefresh ? (_jsxs("button", { type: 'button', onClick: onRefresh, disabled: refreshing, className: 'inline-flex items-center gap-1.5 rounded-md border border-input bg-background px-2.5 py-1.5 text-sm hover:bg-hover disabled:opacity-60', children: [_jsx(RefreshCw, { className: cn('size-3.5', refreshing && 'motion-safe:animate-spin'), "aria-hidden": true }), t(refreshing ? 'page.refreshing' : 'page.refresh')] })) : null })] })] }), _jsx(CapabilityBand, { capabilities: overview.capabilities, active: active, lit: lit, selected: selected, onSelect: select, focusKeys: focusKeys }), modules.length ? (_jsxs("div", { "aria-label": t('matrix.modules'), className: 'flex flex-wrap items-center gap-2 border-t px-4 py-3 md:px-5', children: [_jsx("span", { className: 'mr-1 text-xs text-muted-foreground', children: t('matrix.modules') }), modules.map((module) => (_jsxs(Button, { variant: 'outline', size: 'xs', "aria-pressed": module.id === focusedModule, className: cn('h-7! rounded-full! border-border bg-card px-3 text-sm font-normal shadow-none', module.id === focusedModule &&
|
|
91
92
|
'border-primary/40 bg-primary/10 text-primary'), onMouseEnter: () => setFocusedModule(module.id), onMouseLeave: () => setFocusedModule(null), onFocus: () => setFocusedModule(module.id), onBlur: () => setFocusedModule(null), onClick: () => setFocusedModule(module.id), children: [text(module.title), ' ', _jsx("span", { className: 'tabular-nums text-muted-foreground', children: module.links.length })] }, module.id)))] })) : null, _jsxs("div", { className: 'flex flex-wrap items-center justify-between gap-x-6 gap-y-2 border-t px-4 py-3 text-xs text-muted-foreground md:px-5', children: [_jsxs("ul", { className: 'flex flex-wrap gap-x-4 gap-y-1', children: [_jsx(LegendItem, { status: 'active', label: t('status.legendActive', { count: counts.active }) }), _jsx(LegendItem, { status: 'needsSetup', label: t('status.legendNeedsSetup', { count: counts.needsSetup }) }), _jsx(LegendItem, { status: 'unused', label: t('status.legendUnused', { count: counts.unused }) }), counts.undetermined > 0 ? (_jsxs("li", { className: 'flex items-center gap-1.5 text-foreground', children: [_jsx(TriangleAlert, { className: 'size-3.5 text-destructive', "aria-hidden": true }), t('page.undetermined', { count: counts.undetermined })] })) : null] }), _jsx("span", { children: t('page.updatedAt', {
|
|
92
93
|
time: formatTime(overview.checkedAt, locale),
|
|
93
|
-
}) })] })] }), _jsx(Highlights, { overview: overview, onSelect: select }), selectedCapability ? (_jsx(CapabilityDetail, { capability: selectedCapability, inventory: overview.inventory, modules: modules.filter((module) => module.links.some((link) => link.capability === selectedCapability.key)) })) : null, _jsx(ModuleMatrix, { modules: modules, capabilities: overview.capabilities, onSelect: setSelected, onFocusModule: setFocusedModule })] }));
|
|
94
|
+
}) })] })] }), _jsx(Highlights, { overview: overview, onSelect: select }), selectedCapability ? (_jsx(CapabilityDetail, { capability: selectedCapability, inventory: overview.inventory, counting: refreshing, onCountRecords: onCountRecords, recordCountCheckedAt: overview.recordCountCheckedAt, modules: modules.filter((module) => module.links.some((link) => link.capability === selectedCapability.key)) })) : null, _jsx(ModuleMatrix, { modules: modules, capabilities: overview.capabilities, onSelect: setSelected, onFocusModule: setFocusedModule })] }));
|
|
94
95
|
}
|
|
95
96
|
function countStatuses(overview) {
|
|
96
97
|
const counts = { active: 0, needsSetup: 0, unused: 0, undetermined: 0 };
|
|
@@ -164,7 +165,7 @@ function StatusBadge({ status, pending = false, }) {
|
|
|
164
165
|
? 'border-border text-muted-foreground'
|
|
165
166
|
: 'border-destructive/40 text-destructive')), children: t(pending ? 'dynamic.pending' : `status.${status ?? 'undetermined'}`) }));
|
|
166
167
|
}
|
|
167
|
-
function CapabilityDetail({ capability, modules, inventory, }) {
|
|
168
|
+
function CapabilityDetail({ capability, modules, inventory, counting, onCountRecords, recordCountCheckedAt, }) {
|
|
168
169
|
const { t, word, text, locale } = useFoundationTranslation();
|
|
169
170
|
const Icon = CAPABILITY_ICONS[capability.key] ?? Plug;
|
|
170
171
|
const base = `capabilities.${capability.key}`;
|
|
@@ -182,6 +183,11 @@ function CapabilityDetail({ capability, modules, inventory, }) {
|
|
|
182
183
|
const packages = [...relatedPackages.values()];
|
|
183
184
|
const pending = capability.reason === 'unrecognizedExtension';
|
|
184
185
|
const inUse = capability.status === 'active';
|
|
186
|
+
const collectionSummary = capability.key === 'dataModeling'
|
|
187
|
+
? capability.facts.find((fact) => fact.code === 'applicationCollections' ||
|
|
188
|
+
fact.code === 'applicationCollectionsPreview')
|
|
189
|
+
: undefined;
|
|
190
|
+
const otherFacts = capability.facts.filter((fact) => fact !== collectionSummary);
|
|
185
191
|
const unreadable = capability.issues
|
|
186
192
|
.filter((issue) => issue.code === 'SOURCE_UNREADABLE' && issue.source)
|
|
187
193
|
.map((issue) => issue.source);
|
|
@@ -191,7 +197,7 @@ function CapabilityDetail({ capability, modules, inventory, }) {
|
|
|
191
197
|
sources: new Intl.ListFormat(locale, {
|
|
192
198
|
style: 'short',
|
|
193
199
|
}).format(unreadable),
|
|
194
|
-
}) })) : null] })] })) : null, _jsxs("div", { className: 'grid gap-5 lg:grid-cols-[minmax(0,3fr)_minmax(0,2fr)]', children: [_jsxs("div", { className: 'flex flex-col gap-4', children: [capability.facts.length > 0 || inUse || modules.length > 0 ? (_jsxs("div", { className: 'flex flex-col gap-2', children: [_jsx("h3", { className: 'text-sm text-muted-foreground', children: t('detail.inThisApp') }), modules.length > 0 ? (_jsx("ul", { "aria-label": t('detail.businessModules'), className: 'flex flex-wrap gap-1.5', children: modules.map((module) => (_jsx("li", { className: 'rounded-full border border-primary/15 bg-primary/5 px-2.5 py-1 text-xs text-primary', children: text(module.title) }, module.id))) })) : null,
|
|
200
|
+
}) })) : null] })] })) : null, _jsxs("div", { className: 'grid gap-5 lg:grid-cols-[minmax(0,3fr)_minmax(0,2fr)]', children: [_jsxs("div", { className: 'flex flex-col gap-4', children: [capability.facts.length > 0 || inUse || modules.length > 0 ? (_jsxs("div", { className: 'flex flex-col gap-2', children: [_jsx("h3", { className: 'text-sm text-muted-foreground', children: t('detail.inThisApp') }), modules.length > 0 ? (_jsx("ul", { "aria-label": t('detail.businessModules'), className: 'flex flex-wrap gap-1.5', children: modules.map((module) => (_jsx("li", { className: 'rounded-full border border-primary/15 bg-primary/5 px-2.5 py-1 text-xs text-primary', children: text(module.title) }, module.id))) })) : null, collectionSummary ? (_jsx(CollectionsBrowser, { summary: collectionSummary })) : null, otherFacts.length > 0 ? (_jsx("ul", { className: 'flex list-disc flex-col gap-1.5 pl-5 text-sm marker:text-primary', children: otherFacts.map((fact) => (_jsx("li", { children: word(`facts.${fact.code}`, formatFactParams(fact.params, locale, text)) }, fact.code))) })) : !collectionSummary ? (_jsx("p", { className: 'text-sm text-muted-foreground', children: t('detail.noFacts') })) : null] })) : null, !inUse && !pending && capability.reason ? (_jsxs("div", { className: 'flex flex-col gap-2', children: [_jsx("h3", { className: 'text-sm text-muted-foreground', children: t('detail.whyNot') }), _jsx("p", { className: 'text-sm', children: word(`reasons.${capability.reason}`) })] })) : null, capability.parts.length > 0 ? (_jsxs("div", { className: 'flex flex-col gap-2', children: [_jsx("h3", { className: 'text-sm text-muted-foreground', children: t('detail.parts') }), _jsx("ul", { className: 'flex flex-col gap-1.5 text-sm', children: capability.parts.map((part) => (_jsxs("li", { className: 'flex flex-wrap items-center gap-2', children: [_jsx("span", { children: word(`parts.${part.key}`) }), _jsx(StatusBadge, { status: part.status }), part.reason && part.status !== 'active' ? (_jsx("span", { className: 'text-muted-foreground', children: word(`reasons.${part.reason}`) })) : null] }, part.key))) })] })) : null, !pending ? (_jsxs("div", { className: 'rounded-lg border border-dashed p-3', children: [_jsx("h3", { className: 'text-sm text-muted-foreground', children: t(inUse ? 'detail.withoutFoundation' : 'detail.onceInUse') }), _jsx("p", { className: 'mt-1 text-sm', children: t(inUse ? `${base}.without` : `${base}.onceInUse`) })] })) : null] }), _jsxs("div", { className: 'flex flex-col gap-4', children: [capability.metrics.length > 0 ? (_jsxs("div", { className: 'flex flex-col gap-2', children: [_jsx("h3", { className: 'text-sm text-muted-foreground', children: t('detail.liveData') }), _jsx("ul", { className: 'grid grid-cols-2 gap-2', children: capability.metrics.map((metric) => {
|
|
195
201
|
const value = formatMetricValue(metric, locale);
|
|
196
202
|
return (_jsxs("li", { className: 'rounded-lg bg-muted p-3', children: [_jsx("p", { className: cn('font-heading text-xl font-semibold tabular-nums', value === undefined &&
|
|
197
203
|
'text-sm font-normal text-muted-foreground'), title: !metric.complete && value !== undefined
|
|
@@ -201,7 +207,11 @@ function CapabilityDetail({ capability, modules, inventory, }) {
|
|
|
201
207
|
: metric.complete
|
|
202
208
|
? value
|
|
203
209
|
: `≥ ${value}` }), _jsx("p", { className: 'text-xs text-muted-foreground', children: word(`metrics.${metric.key}`) })] }, metric.key));
|
|
204
|
-
}) })
|
|
210
|
+
}) }), capability.key === 'dataModeling' ? (_jsxs("div", { className: 'flex flex-col items-start gap-1', children: [onCountRecords ? (_jsx(Button, { variant: 'outline', size: 'sm', disabled: counting, onClick: onCountRecords, children: t(counting ? 'page.refreshing' : 'detail.countRecords') })) : null, _jsx("p", { className: 'text-xs text-muted-foreground', children: recordCountCheckedAt
|
|
211
|
+
? t('detail.recordsCountedAt', {
|
|
212
|
+
time: formatTime(recordCountCheckedAt, locale),
|
|
213
|
+
})
|
|
214
|
+
: t('detail.recordsOnDemand') })] })) : null] })) : null, _jsxs("div", { className: 'flex flex-col gap-2', children: [_jsx("h3", { className: 'text-sm text-muted-foreground', children: t('detail.packages') }), packages.length > 0 ? (_jsx("ul", { className: 'flex flex-col gap-1 font-mono text-xs', children: packages.map((entry) => (_jsxs("li", { className: 'flex items-center justify-between gap-3', children: [_jsxs("span", { className: 'flex min-w-0 items-center gap-1.5', children: [_jsx(Package, { className: 'size-3.5 shrink-0 text-muted-foreground', "aria-hidden": true }), _jsx("span", { className: 'truncate', children: entry.name })] }), _jsx("span", { className: 'shrink-0 text-muted-foreground', children: entry.version ?? t('page.unavailable') })] }, entry.name))) })) : (_jsx("p", { className: 'text-sm text-muted-foreground', children: t('detail.noPackages') }))] })] })] })] }));
|
|
205
215
|
}
|
|
206
216
|
export default FoundationPage;
|
|
207
217
|
//# sourceMappingURL=foundation-page.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"foundation-page.js","sourceRoot":"","sources":["../../../client/components/foundation-page.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,EAAE,EAAE,MAAM,IAAI,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC/E,OAAO,EACL,WAAW,EACX,SAAS,EACT,OAAO,EACP,QAAQ,GAET,MAAM,OAAO,CAAC;AAEf,OAAO,EACL,qBAAqB,GAOtB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,yBAAyB,EAAE,MAAM,wCAAwC,CAAC;AACnF,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,wBAAwB,EAAE,MAAM,6BAA6B,CAAC;AAEvE,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAClD,OAAO,EACL,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9E,kDAAkD;AAClD,MAAM,aAAa,GAAG,GAAG,CAAC;AAE1B,SAAS,oBAAoB;IAC3B,OAAO,CACL,OAAO,MAAM,KAAK,WAAW;QAC7B,OAAO,MAAM,CAAC,UAAU,KAAK,UAAU;QACvC,MAAM,CAAC,UAAU,CAAC,kCAAkC,CAAC,CAAC,OAAO,CAC9D,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAS,WAAW,CAClB,WAAmB,EACnB,MAAc;IAEd,MAAM,OAAO,GAAG,oBAAoB,EAAE,CAAC;IACvC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;IACxD,oHAAoH;IACpH,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM;QAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;IAC3D,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,OAAO,IAAI,WAAW,KAAK,CAAC;YAAE,OAAO,SAAS,CAAC;QACnD,IAAI,IAAI,GAAG,CAAC,CAAC;QACb,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE;YAC7B,IAAI,IAAI,CAAC,CAAC;YACV,QAAQ,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YAC9C,IAAI,IAAI,IAAI,WAAW;gBAAE,aAAa,CAAC,KAAK,CAAC,CAAC;QAChD,CAAC,EAAE,aAAa,CAAC,CAAC;QAClB,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACnC,OAAO;QACL,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,WAAW,CAAC;KAC/D,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,cAAc;IAC5B,MAAM,EAAE,CAAC,EAAE,GAAG,wBAAwB,EAAE,CAAC;IACzC,MAAM,GAAG,GAAG,oBAAoB,EAAE,CAAC;IACnC,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,qBAAqB,EAAE,CAAC;IAEtE,OAAO,CACL,eAAK,SAAS,EAAC,yDAAyD,aACtE,kBAAQ,SAAS,EAAC,qBAAqB,aACrC,aAAI,SAAS,EAAC,qCAAqC,YAChD,CAAC,CAAC,YAAY,CAAC,GACb,EACL,YAAG,SAAS,EAAC,yCAAyC,YACnD,CAAC,CAAC,kBAAkB,CAAC,GACpB,IACG,EACR,QAAQ,IAAI,KAAK,KAAK,WAAW,CAAC,CAAC,CAAC,CACnC,8BACG,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CACpB,YACE,IAAI,EAAC,OAAO,EACZ,SAAS,EAAC,wFAAwF,YAEjG,CAAC,CAAC,oBAAoB,CAAC,GACtB,CACL,CAAC,CAAC,CAAC,IAAI,EACR,KAAC,sBAAsB,IACrB,QAAQ,EAAE,QAAQ,EAClB,eAAe,EAAE,mBAAmB,CAAC,GAAG,CAAC,EACzC,gBAAgB,EAAE,GAAG,CAAC,OAAO,CAAC,MAAM,EACpC,UAAU,EAAE,OAAO,EACnB,SAAS,EAAE,OAAO,GAClB,IACD,CACJ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CACV,eACE,IAAI,EAAC,OAAO,EACZ,SAAS,EAAC,uEAAuE,aAEjF,sBACG,CAAC,CAAC,KAAK,KAAK,WAAW,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,iBAAiB,CAAC,GAC9D,EACH,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CACpB,iBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,OAAO,EAChB,SAAS,EAAC,2DAA2D,YAEpE,CAAC,CAAC,YAAY,CAAC,GACT,CACV,CAAC,CAAC,CAAC,IAAI,IACJ,CACP,CAAC,CAAC,CAAC,CACF,YAAG,SAAS,EAAC,6DAA6D,YACvE,CAAC,CAAC,cAAc,CAAC,GAChB,CACL,IACG,CACP,CAAC;AACJ,CAAC;AAUD,kHAAkH;AAClH,MAAM,UAAU,sBAAsB,CAAC,EACrC,QAAQ,EAAE,cAAc,EACxB,UAAU,GAAG,KAAK,EAClB,SAAS,EACT,eAAe,GAAG,EAAE,EACpB,gBAAgB,GAAG,EAAE,GACO;IAC5B,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,wBAAwB,EAAE,CAAC;IACvD,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE;QAC5B,MAAM,QAAQ,GAAG,cAAc,CAAC,SAAS;YACvC,CAAC,CAAC,yBAAyB,CACvB,cAAc,EACd,mBAAmB,CAAC,cAAc,CAAC,SAAS,EAAE,eAAe,CAAC,CAC/D;YACH,CAAC,CAAC,cAAc,CAAC;QACnB,OAAO;YACL,GAAG,QAAQ;YACX,YAAY,EAAE,QAAQ,CAAC,qBAAqB,IAAI,QAAQ,CAAC,YAAY;SACtE,CAAC;IACJ,CAAC,EAAE,CAAC,cAAc,EAAE,eAAe,CAAC,CAAC,CAAC;IACtC,MAAM,MAAM,GAAG,OAAO,CACpB,GAAG,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,QAAQ,CAAC,EACxE,CAAC,QAAQ,CAAC,CACX,CAAC;IACF,MAAM,EAAE,GAAG,EAAE,GAAG,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;IAC/D,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CACtC,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,cAAc,CACxE,CAAC;IACF,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAClE,MAAM,OAAO,GAAG,OAAO,CACrB,GAAG,EAAE,CACH,eAAe,CACb,gBAAgB,EAChB,QAAQ,CAAC,SAAS,EAClB,QAAQ,CAAC,aAAa,EACtB,QAAQ,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAChD,EACH,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAC7B,CAAC;IACF,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IACxE,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,aAAa,CAAC,CAAC;IACtE,MAAM,SAAS,GAAG,OAAO;QACvB,CAAC,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACvD,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,kBAAkB,GACtB,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,KAAK,QAAQ,CAAC;QAC7D,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAC3B,IAAI,kBAAkB,IAAI,QAAQ,KAAK,kBAAkB,CAAC,GAAG;QAC3D,WAAW,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC;IACtC,MAAM,MAAM,GAAG,WAAW,CAAC,CAAC,GAA4B,EAAE,EAAE;QAC1D,WAAW,CAAC,GAAG,CAAC,CAAC;QACjB,QAAQ;aACL,cAAc,CAAC,8BAA8B,CAAC;YAC/C,EAAE,cAAc,EAAE,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;IACjE,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,CACL,8BACE,sCACkB,uBAAuB,EACvC,SAAS,EAAC,gEAAgE,aAE1E,eAAK,SAAS,EAAC,2DAA2D,aACxE,eAAK,SAAS,EAAC,6BAA6B,aAC1C,cACE,EAAE,EAAC,uBAAuB,EAC1B,SAAS,EAAC,4DAA4D,aAEtE,KAAC,MAAM,IAAC,SAAS,EAAC,qBAAqB,wBAAe,EACrD,CAAC,CAAC,gBAAgB,CAAC,IACjB,EACL,YAAG,SAAS,EAAC,+BAA+B,YACzC,CAAC,CAAC,sBAAsB,CAAC,GACxB,IACA,EACN,eAAK,SAAS,EAAC,sBAAsB,aACnC,eAAK,SAAS,EAAC,YAAY,aACzB,YACE,SAAS,EAAC,kDAAkD,eAClD,QAAQ,YAEjB,CAAC,CAAC,YAAY,EAAE;oDACf,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC;oDACpC,KAAK,EAAE,QAAQ,CAAC,YAAY,CAAC,MAAM;iDACpC,CAAC,GACA,EACJ,YAAG,SAAS,EAAC,+BAA+B,YACzC,CAAC,CAAC,mBAAmB,CAAC,GACrB,IACA,EACN,cAAK,SAAS,EAAC,YAAY,YACxB,SAAS,CAAC,CAAC,CAAC,CACX,kBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,SAAS,EAClB,QAAQ,EAAE,UAAU,EACpB,SAAS,EAAC,wIAAwI,aAElJ,KAAC,SAAS,IACR,SAAS,EAAE,EAAE,CACX,UAAU,EACV,UAAU,IAAI,0BAA0B,CACzC,wBAED,EACD,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,cAAc,CAAC,IAC5C,CACV,CAAC,CAAC,CAAC,IAAI,GACJ,IACF,IACF,EACN,KAAC,cAAc,IACb,YAAY,EAAE,QAAQ,CAAC,YAAY,EACnC,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,GAAG,EACR,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,SAAS,GACpB,EACD,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAChB,6BACc,CAAC,CAAC,gBAAgB,CAAC,EAC/B,SAAS,EAAC,8DAA8D,aAExE,eAAM,SAAS,EAAC,oCAAoC,YACjD,CAAC,CAAC,gBAAgB,CAAC,GACf,EACN,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CACvB,MAAC,MAAM,IAEL,OAAO,EAAC,SAAS,EACjB,IAAI,EAAC,IAAI,kBACK,MAAM,CAAC,EAAE,KAAK,aAAa,EACzC,SAAS,EAAE,EAAE,CACX,+EAA+E,EAC/E,MAAM,CAAC,EAAE,KAAK,aAAa;oCACzB,8CAA8C,CACjD,EACD,YAAY,EAAE,GAAG,EAAE,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC,EAC/C,YAAY,EAAE,GAAG,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAC1C,OAAO,EAAE,GAAG,EAAE,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC,EAC1C,MAAM,EAAE,GAAG,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,EACpC,OAAO,EAAE,GAAG,EAAE,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC,aAEzC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,EACxB,eAAM,SAAS,EAAC,oCAAoC,YACjD,MAAM,CAAC,KAAK,CAAC,MAAM,GACf,KAlBF,MAAM,CAAC,EAAE,CAmBP,CACV,CAAC,IACE,CACP,CAAC,CAAC,CAAC,IAAI,EACR,eAAK,SAAS,EAAC,sHAAsH,aACnI,cAAI,SAAS,EAAC,gCAAgC,aAC5C,KAAC,UAAU,IACT,MAAM,EAAC,QAAQ,EACf,KAAK,EAAE,CAAC,CAAC,qBAAqB,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,GACzD,EACF,KAAC,UAAU,IACT,MAAM,EAAC,YAAY,EACnB,KAAK,EAAE,CAAC,CAAC,yBAAyB,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC,GACjE,EACF,KAAC,UAAU,IACT,MAAM,EAAC,QAAQ,EACf,KAAK,EAAE,CAAC,CAAC,qBAAqB,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,GACzD,EACD,MAAM,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,CACzB,cAAI,SAAS,EAAC,2CAA2C,aACvD,KAAC,aAAa,IACZ,SAAS,EAAC,2BAA2B,wBAErC,EACD,CAAC,CAAC,mBAAmB,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,IACpD,CACN,CAAC,CAAC,CAAC,IAAI,IACL,EACL,yBACG,CAAC,CAAC,gBAAgB,EAAE;oCACnB,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;iCAC7C,CAAC,GACG,IACH,IACE,EAEV,KAAC,UAAU,IAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,GAAI,EAEnD,kBAAkB,CAAC,CAAC,CAAC,CACpB,KAAC,gBAAgB,IACf,UAAU,EAAE,kBAAkB,EAC9B,SAAS,EAAE,QAAQ,CAAC,SAAS,EAC7B,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CACjC,MAAM,CAAC,KAAK,CAAC,IAAI,CACf,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,KAAK,kBAAkB,CAAC,GAAG,CACrD,CACF,GACD,CACH,CAAC,CAAC,CAAC,IAAI,EAER,KAAC,YAAY,IACX,OAAO,EAAE,OAAO,EAChB,YAAY,EAAE,QAAQ,CAAC,YAAY,EACnC,QAAQ,EAAE,WAAW,EACrB,aAAa,EAAE,gBAAgB,GAC/B,IACD,CACJ,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CACpB,QAA4B;IAE5B,MAAM,MAAM,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC;IACxE,KAAK,MAAM,KAAK,IAAI,QAAQ,CAAC,YAAY;QACvC,MAAM,CAAC,KAAK,CAAC,MAAM,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC;IAC9C,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,UAAU,CAAC,EAClB,MAAM,EACN,KAAK,GAIN;IACC,OAAO,CACL,cAAI,SAAS,EAAC,2BAA2B,aACvC,oCAEE,SAAS,EAAE,EAAE,CACX,4BAA4B,EAC5B,MAAM,KAAK,QAAQ,IAAI,iCAAiC,EACxD,MAAM,KAAK,YAAY,IAAI,qCAAqC,EAChE,MAAM,KAAK,QAAQ,IAAI,6BAA6B,CACrD,GACD,EACD,KAAK,IACH,CACN,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,EACtB,YAAY,EACZ,MAAM,EACN,GAAG,EACH,QAAQ,EACR,QAAQ,EACR,SAAS,GAQV;IACC,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,wBAAwB,EAAE,CAAC;IAC/C,MAAM,QAAQ,GAAG,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;IACxE,OAAO,CACL,aAAI,SAAS,EAAC,2FAA2F,YACtG,YAAY,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE;YAC/B,MAAM,IAAI,GAAG,gBAAgB,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC;YACtD,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,KAAK,UAAU,CAAC,GAAG,CAAC,CAAC;YACxE,MAAM,KAAK,GAAG,KAAK,KAAK,CAAC,CAAC,IAAI,KAAK,GAAG,GAAG,CAAC;YAC1C,MAAM,WAAW,GACf,UAAU,CAAC,GAAG,KAAK,QAAQ,IAAI,UAAU,CAAC,GAAG,KAAK,QAAQ,CAAC;YAC7D,MAAM,IAAI,GACR,WAAW;gBACT,CAAC,CAAC,UAAU;gBACZ,CAAC,CAAC,UAAU,CAAC,MAAM,KAAK,IAAI;oBAC1B,CAAC,CAAC,UAAU,CAAC,MAAM,KAAK,uBAAuB;wBAC7C,CAAC,CAAC,KAAK;wBACP,CAAC,CAAC,cAAc;oBAClB,CAAC,CAAC,KAAK;wBACL,CAAC,CAAC,KAAK;wBACP,CAAC,CAAC,UAAU,CAAC,MAAM,KAAK,YAAY;4BAClC,CAAC,CAAC,YAAY;4BACd,CAAC,CAAC,KAAK,CAAC;YAClB,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK;gBAC3B,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;gBACxB,CAAC,CAAC,CAAC,CAAC,gBAAgB,UAAU,CAAC,GAAG,OAAO,CAAC,CAAC;YAC7C,MAAM,MAAM,GAAG,CAAC,CACd,UAAU,CAAC,MAAM,KAAK,uBAAuB;gBAC3C,CAAC,CAAC,iBAAiB;gBACnB,CAAC,CAAC,UAAU,UAAU,CAAC,MAAM,IAAI,cAAc,EAAE,CACpD,CAAC;YACF,OAAO,CACL,aAEE,SAAS,EAAE,EAAE,CACX,oDAAoD,EACpD,SAAS,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,YAAY,CAC5D,YAED,kBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,kBACzB,UAAU,CAAC,GAAG,KAAK,QAAQ,gBAC7B,GAAG,IAAI,KAAK,MAAM,EAAE,EAChC,KAAK,EAAE,MAAM,iBACA,UAAU,CAAC,MAAM,IAAI,cAAc,EAChD,SAAS,EAAE,EAAE,CACX,6SAA6S,EAC7S,IAAI,KAAK,UAAU,IAAI,oCAAoC,EAC3D,IAAI,KAAK,KAAK;wBACZ,gDAAgD,EAClD,IAAI,KAAK,YAAY;wBACnB,0EAA0E,EAC5E,IAAI,KAAK,KAAK;wBACZ,8CAA8C,EAChD,IAAI,KAAK,cAAc;wBACrB,gHAAgH,EAClH,UAAU,CAAC,GAAG,KAAK,QAAQ;wBACzB,qCAAqC,CACxC,aAED,KAAC,IAAI,IAAC,SAAS,EAAC,QAAQ,wBAAe,EACvC,eAAM,SAAS,EAAC,sCAAsC,YACnD,IAAI,GACA,EACN,UAAU,CAAC,MAAM,KAAK,IAAI;4BAC3B,UAAU,CAAC,MAAM,KAAK,uBAAuB,CAAC,CAAC,CAAC,CAC9C,KAAC,aAAa,IACZ,SAAS,EAAC,sDAAsD,wBAEhE,CACH,CAAC,CAAC,CAAC,IAAI,IACD,IAvCJ,UAAU,CAAC,GAAG,CAwChB,CACN,CAAC;QACJ,CAAC,CAAC,GACC,CACN,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,EAClB,QAAQ,EACR,QAAQ,GAIT;IACC,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,wBAAwB,EAAE,CAAC;IACjD,OAAO,CACL,gCAAqB,CAAC,CAAC,sBAAsB,CAAC,YAC5C,aAAI,SAAS,EAAC,sDAAsD,YACjE,qBAAqB,CAAC,MAAM,CAAC,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAC/C,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,KAAK,UAAU,CAAC,CAChE,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,EAAE;gBAC/C,MAAM,UAAU,GAAG,QAAQ,CAAC,YAAY,CAAC,IAAI,CAC3C,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,KAAK,GAAG,CAC7B,CAAC;gBACF,MAAM,MAAM,GAAG,UAAU,EAAE,OAAO,CAAC,IAAI,CACrC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,KAAK,SAAS,CACnC,CAAC;gBACF,MAAM,KAAK,GACT,MAAM,KAAK,SAAS;oBAClB,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;gBACxC,OAAO,CACL,uBACE,kBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,EAC5B,SAAS,EAAC,8KAA8K,aAExL,eACE,SAAS,EAAE,EAAE,CACX,kDAAkD,EAClD,KAAK,KAAK,SAAS;oCACjB,6CAA6C,CAChD,EACD,KAAK,EACH,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,KAAK,KAAK,IAAI;oCACjD,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC;oCACtB,CAAC,CAAC,SAAS,YAGd,KAAK,KAAK,SAAS;oCAClB,CAAC,CAAC,UAAU,EAAE,MAAM,KAAK,QAAQ;wCAC/B,UAAU,EAAE,MAAM,KAAK,YAAY;wCACnC,CAAC,CAAC,CAAC,CAAC,UAAU,UAAU,CAAC,MAAM,EAAE,CAAC;wCAClC,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC;oCACzB,CAAC,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ;wCAC1B,CAAC,CAAC,KAAK,KAAK,EAAE;wCACd,CAAC,CAAC,KAAK,GACN,EACP,eAAM,SAAS,EAAC,+BAA+B,YAC5C,CAAC,CAAC,WAAW,SAAS,EAAE,CAAC,GACrB,EACP,eAAM,SAAS,EAAC,sBAAsB,YACnC,CAAC,CAAC,gBAAgB,GAAG,OAAO,CAAC,GACzB,IACA,IAjCF,GAAG,GAAG,IAAI,SAAS,EAAE,CAkCzB,CACN,CAAC;YACJ,CAAC,CAAC,GACC,GACG,CACX,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,EACnB,MAAM,EACN,OAAO,GAAG,KAAK,GAIhB;IACC,MAAM,EAAE,CAAC,EAAE,GAAG,wBAAwB,EAAE,CAAC;IACzC,OAAO,CACL,eACE,SAAS,EAAE,EAAE,CACX,qDAAqD,EACrD,MAAM,KAAK,QAAQ,IAAI,8CAA8C,EACrE,MAAM,KAAK,YAAY;YACrB,wEAAwE,EAC1E,MAAM,KAAK,QAAQ,IAAI,uBAAuB,EAC9C,MAAM,KAAK,IAAI;YACb,CAAC,OAAO;gBACN,CAAC,CAAC,qCAAqC;gBACvC,CAAC,CAAC,wCAAwC,CAAC,CAChD,YAEA,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,UAAU,MAAM,IAAI,cAAc,EAAE,CAAC,GACjE,CACR,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,EACxB,UAAU,EACV,OAAO,EACP,SAAS,GAKV;IACC,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,wBAAwB,EAAE,CAAC;IAC7D,MAAM,IAAI,GAAG,gBAAgB,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC;IACtD,MAAM,IAAI,GAAG,gBAAgB,UAAU,CAAC,GAAG,EAAE,CAAC;IAC9C,MAAM,eAAe,GAAG,IAAI,GAAG,CAC7B,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CACxD,CAAC;IACF,KAAK,MAAM,KAAK,IAAI,SAAS,EAAE,OAAO,IAAI,EAAE,EAAE,CAAC;QAC7C,IACE,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC;YACzC,UAAU,CAAC,GAAG,KAAK,aAAa,KAAK,CAAC,IAAI,EAAE,EAC5C,CAAC;YACD,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACjD,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE;gBAC9B,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,OAAO,EAAE,QAAQ,EAAE,OAAO,IAAI,KAAK,CAAC,OAAO;aAC5C,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,MAAM,QAAQ,GAAG,CAAC,GAAG,eAAe,CAAC,MAAM,EAAE,CAAC,CAAC;IAC/C,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,KAAK,uBAAuB,CAAC;IAC9D,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,KAAK,QAAQ,CAAC;IAC7C,MAAM,UAAU,GAAG,UAAU,CAAC,MAAM;SACjC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,mBAAmB,IAAI,KAAK,CAAC,MAAM,CAAC;SACrE,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAgB,CAAC,CAAC;IAE1C,OAAO,CACL,mBACE,EAAE,EAAC,8BAA8B,qBACjB,6BAA6B,EAC7C,SAAS,EAAC,+EAA+E,aAEzF,kBAAQ,SAAS,EAAC,qBAAqB,aACrC,cACE,EAAE,EAAC,6BAA6B,EAChC,SAAS,EAAC,sEAAsE,aAEhF,KAAC,IAAI,IAAC,SAAS,EAAC,qBAAqB,wBAAe,EACnD,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,GAAG,EACnE,KAAC,WAAW,IAAC,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,GAAI,IACzD,EACJ,CAAC,OAAO,IAAI,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CACpC,YAAG,SAAS,EAAC,+BAA+B,YACzC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,UAAU,CAAC,GACtD,CACL,CAAC,CAAC,CAAC,IAAI,IACD,EAER,OAAO,CAAC,CAAC,CAAC,CACT,YAAG,SAAS,EAAC,+BAA+B,YACzC,CAAC,CAAC,4BAA4B,CAAC,GAC9B,CACL,CAAC,CAAC,CAAC,IAAI,EACP,UAAU,CAAC,YAAY,KAAK,UAAU,CAAC,CAAC,CAAC,CACxC,eACE,IAAI,EAAC,MAAM,EACX,SAAS,EAAC,iFAAiF,aAE3F,KAAC,aAAa,IACZ,SAAS,EAAC,yCAAyC,wBAEnD,EACF,eAAK,SAAS,EAAC,qBAAqB,aAClC,sBACG,CAAC,CACA,UAAU,CAAC,YAAY,KAAK,QAAQ;oCAClC,CAAC,CAAC,eAAe;oCACjB,CAAC,CAAC,gBAAgB,CACrB,GACC,EACH,UAAU,CAAC,MAAM,CAAC,IAAI,CACrB,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,mBAAmB,CAC9C,CAAC,CAAC,CAAC,CACF,YAAG,SAAS,EAAC,uBAAuB,YAAE,CAAC,CAAC,gBAAgB,CAAC,GAAK,CAC/D,CAAC,CAAC,CAAC,IAAI,EACP,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CACvB,YAAG,SAAS,EAAC,uBAAuB,YACjC,CAAC,CAAC,mBAAmB,EAAE;oCACtB,OAAO,EAAE,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE;wCACnC,KAAK,EAAE,OAAO;qCACf,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;iCACtB,CAAC,GACA,CACL,CAAC,CAAC,CAAC,IAAI,IACJ,IACF,CACP,CAAC,CAAC,CAAC,IAAI,EAER,eAAK,SAAS,EAAC,uDAAuD,aACpE,eAAK,SAAS,EAAC,qBAAqB,aACjC,UAAU,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAC5D,eAAK,SAAS,EAAC,qBAAqB,aAClC,aAAI,SAAS,EAAC,+BAA+B,YAC1C,CAAC,CAAC,kBAAkB,CAAC,GACnB,EACJ,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CACpB,2BACc,CAAC,CAAC,wBAAwB,CAAC,EACvC,SAAS,EAAC,wBAAwB,YAEjC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CACvB,aAEE,SAAS,EAAC,qFAAqF,YAE9F,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAHd,MAAM,CAAC,EAAE,CAIX,CACN,CAAC,GACC,CACN,CAAC,CAAC,CAAC,IAAI,EACP,UAAU,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAC7B,aAAI,SAAS,EAAC,kEAAkE,YAC7E,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAC9B,uBACG,IAAI,CACH,SAAS,IAAI,CAAC,IAAI,EAAE,EACpB,gBAAgB,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,CAC5C,IAJM,IAAI,CAAC,IAAI,CAKb,CACN,CAAC,GACC,CACN,CAAC,CAAC,CAAC,CACF,YAAG,SAAS,EAAC,+BAA+B,YACzC,CAAC,CAAC,gBAAgB,CAAC,GAClB,CACL,IACG,CACP,CAAC,CAAC,CAAC,IAAI,EAEP,CAAC,KAAK,IAAI,CAAC,OAAO,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CACzC,eAAK,SAAS,EAAC,qBAAqB,aAClC,aAAI,SAAS,EAAC,+BAA+B,YAC1C,CAAC,CAAC,eAAe,CAAC,GAChB,EACL,YAAG,SAAS,EAAC,SAAS,YAAE,IAAI,CAAC,WAAW,UAAU,CAAC,MAAM,EAAE,CAAC,GAAK,IAC7D,CACP,CAAC,CAAC,CAAC,IAAI,EAEP,UAAU,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAC7B,eAAK,SAAS,EAAC,qBAAqB,aAClC,aAAI,SAAS,EAAC,+BAA+B,YAC1C,CAAC,CAAC,cAAc,CAAC,GACf,EACL,aAAI,SAAS,EAAC,+BAA+B,YAC1C,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAC9B,cAEE,SAAS,EAAC,mCAAmC,aAE7C,yBAAO,IAAI,CAAC,SAAS,IAAI,CAAC,GAAG,EAAE,CAAC,GAAQ,EACxC,KAAC,WAAW,IAAC,MAAM,EAAE,IAAI,CAAC,MAAM,GAAI,EACnC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,CACzC,eAAM,SAAS,EAAC,uBAAuB,YACpC,IAAI,CAAC,WAAW,IAAI,CAAC,MAAM,EAAE,CAAC,GAC1B,CACR,CAAC,CAAC,CAAC,IAAI,KATH,IAAI,CAAC,GAAG,CAUV,CACN,CAAC,GACC,IACD,CACP,CAAC,CAAC,CAAC,IAAI,EAEP,CAAC,OAAO,CAAC,CAAC,CAAC,CACV,eAAK,SAAS,EAAC,qCAAqC,aAClD,aAAI,SAAS,EAAC,+BAA+B,YAC1C,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,kBAAkB,CAAC,GACxD,EACL,YAAG,SAAS,EAAC,cAAc,YACxB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,UAAU,CAAC,CAAC,CAAC,GAAG,IAAI,YAAY,CAAC,GACjD,IACA,CACP,CAAC,CAAC,CAAC,IAAI,IACJ,EAEN,eAAK,SAAS,EAAC,qBAAqB,aACjC,UAAU,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAC/B,eAAK,SAAS,EAAC,qBAAqB,aAClC,aAAI,SAAS,EAAC,+BAA+B,YAC1C,CAAC,CAAC,iBAAiB,CAAC,GAClB,EACL,aAAI,SAAS,EAAC,wBAAwB,YACnC,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;4CACjC,MAAM,KAAK,GAAG,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;4CAChD,OAAO,CACL,cAAqB,SAAS,EAAC,yBAAyB,aACtD,YACE,SAAS,EAAE,EAAE,CACX,iDAAiD,EACjD,KAAK,KAAK,SAAS;4DACjB,2CAA2C,CAC9C,EACD,KAAK,EACH,CAAC,MAAM,CAAC,QAAQ,IAAI,KAAK,KAAK,SAAS;4DACrC,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC;4DACtB,CAAC,CAAC,SAAS,YAGd,KAAK,KAAK,SAAS;4DAClB,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC;4DACvB,CAAC,CAAC,MAAM,CAAC,QAAQ;gEACf,CAAC,CAAC,KAAK;gEACP,CAAC,CAAC,KAAK,KAAK,EAAE,GAChB,EACJ,YAAG,SAAS,EAAC,+BAA+B,YACzC,IAAI,CAAC,WAAW,MAAM,CAAC,GAAG,EAAE,CAAC,GAC5B,KArBG,MAAM,CAAC,GAAG,CAsBd,CACN,CAAC;wCACJ,CAAC,CAAC,GACC,IACD,CACP,CAAC,CAAC,CAAC,IAAI,EAER,eAAK,SAAS,EAAC,qBAAqB,aAClC,aAAI,SAAS,EAAC,+BAA+B,YAC1C,CAAC,CAAC,iBAAiB,CAAC,GAClB,EACJ,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CACrB,aAAI,SAAS,EAAC,uCAAuC,YAClD,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CACvB,cAEE,SAAS,EAAC,yCAAyC,aAEnD,gBAAM,SAAS,EAAC,mCAAmC,aACjD,KAAC,OAAO,IACN,SAAS,EAAC,yCAAyC,wBAEnD,EACF,eAAM,SAAS,EAAC,UAAU,YAAE,KAAK,CAAC,IAAI,GAAQ,IACzC,EACP,eAAM,SAAS,EAAC,gCAAgC,YAC7C,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC,kBAAkB,CAAC,GAClC,KAZF,KAAK,CAAC,IAAI,CAaZ,CACN,CAAC,GACC,CACN,CAAC,CAAC,CAAC,CACF,YAAG,SAAS,EAAC,+BAA+B,YACzC,CAAC,CAAC,mBAAmB,CAAC,GACrB,CACL,IACG,IACF,IACF,IACE,CACX,CAAC;AACJ,CAAC;AAED,eAAe,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"foundation-page.js","sourceRoot":"","sources":["../../../client/components/foundation-page.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"module-matrix.d.ts","sourceRoot":"","sources":["../../../client/components/module-matrix.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAY,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AACpD,OAAO,KAAK,EACV,wBAAwB,EACxB,oBAAoB,EACrB,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"module-matrix.d.ts","sourceRoot":"","sources":["../../../client/components/module-matrix.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAY,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AACpD,OAAO,KAAK,EACV,wBAAwB,EACxB,oBAAoB,EACrB,MAAM,4BAA4B,CAAC;AAmBpC,wBAAgB,YAAY,CAAC,EAC3B,OAAO,EACP,YAAY,EACZ,QAAQ,EACR,aAAa,GACd,EAAE;IACD,QAAQ,CAAC,OAAO,EAAE,SAAS,wBAAwB,EAAE,CAAC;IACtD,QAAQ,CAAC,YAAY,EAAE,SAAS,oBAAoB,EAAE,CAAC;IACvD,QAAQ,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,QAAQ,CAAC,aAAa,EAAE,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;CACrD,GAAG,YAAY,CA+Pf"}
|