@burdenoff/microfe-adaptercloud 2026.825.4 → 2026.829.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/adaptercloud/AdapterCloudRoot.d.ts.map +1 -1
- package/dist/adaptercloud/AdapterCloudRoot.js +52 -55
- package/dist/adaptercloud/AdapterCloudRoot.js.map +1 -1
- package/dist/adaptercloud/components/ActiveSwitch.d.ts +17 -0
- package/dist/adaptercloud/components/ActiveSwitch.d.ts.map +1 -0
- package/dist/adaptercloud/components/ActiveSwitch.js +28 -0
- package/dist/adaptercloud/components/ActiveSwitch.js.map +1 -0
- package/dist/adaptercloud/components/index.d.ts +1 -0
- package/dist/adaptercloud/components/index.d.ts.map +1 -1
- package/dist/adaptercloud/hooks/index.d.ts +1 -0
- package/dist/adaptercloud/hooks/index.d.ts.map +1 -1
- package/dist/adaptercloud/hooks/useAdapterCloudApi.d.ts +28 -2
- package/dist/adaptercloud/hooks/useAdapterCloudApi.d.ts.map +1 -1
- package/dist/adaptercloud/hooks/useAdapterCloudApi.js +318 -291
- package/dist/adaptercloud/hooks/useAdapterCloudApi.js.map +1 -1
- package/dist/adaptercloud/hooks/useTr.d.ts +2 -0
- package/dist/adaptercloud/hooks/useTr.d.ts.map +1 -0
- package/dist/adaptercloud/hooks/useTr.js +14 -0
- package/dist/adaptercloud/hooks/useTr.js.map +1 -0
- package/dist/adaptercloud/pages/OverviewPage.d.ts.map +1 -1
- package/dist/adaptercloud/pages/OverviewPage.js +117 -120
- package/dist/adaptercloud/pages/OverviewPage.js.map +1 -1
- package/dist/adaptercloud/pages/adapters/AdaptersListPage.d.ts.map +1 -1
- package/dist/adaptercloud/pages/adapters/AdaptersListPage.js +6 -5
- package/dist/adaptercloud/pages/adapters/AdaptersListPage.js.map +1 -1
- package/dist/adaptercloud/pages/connections/ConnectionDetailPage.d.ts.map +1 -1
- package/dist/adaptercloud/pages/connections/ConnectionDetailPage.js +217 -104
- package/dist/adaptercloud/pages/connections/ConnectionDetailPage.js.map +1 -1
- package/dist/adaptercloud/pages/connections/ConnectionsListPage.d.ts.map +1 -1
- package/dist/adaptercloud/pages/connections/ConnectionsListPage.js +6 -5
- package/dist/adaptercloud/pages/connections/ConnectionsListPage.js.map +1 -1
- package/dist/adaptercloud/pages/costs/CostsPage.d.ts.map +1 -1
- package/dist/adaptercloud/pages/costs/CostsPage.js +183 -156
- package/dist/adaptercloud/pages/costs/CostsPage.js.map +1 -1
- package/dist/adaptercloud/pages/drift/DriftListPage.d.ts.map +1 -1
- package/dist/adaptercloud/pages/drift/DriftListPage.js +108 -107
- package/dist/adaptercloud/pages/drift/DriftListPage.js.map +1 -1
- package/dist/adaptercloud/pages/policies/PoliciesListPage.d.ts.map +1 -1
- package/dist/adaptercloud/pages/policies/PoliciesListPage.js +141 -131
- package/dist/adaptercloud/pages/policies/PoliciesListPage.js.map +1 -1
- package/dist/adaptercloud/pages/policies/PolicyDetailPage.d.ts.map +1 -1
- package/dist/adaptercloud/pages/policies/PolicyDetailPage.js +171 -117
- package/dist/adaptercloud/pages/policies/PolicyDetailPage.js.map +1 -1
- package/dist/adaptercloud/pages/resources/ResourcesListPage.d.ts.map +1 -1
- package/dist/adaptercloud/pages/resources/ResourcesListPage.js +85 -66
- package/dist/adaptercloud/pages/resources/ResourcesListPage.js.map +1 -1
- package/dist/adaptercloud/pages/sync-runs/SyncRunsListPage.d.ts.map +1 -1
- package/dist/adaptercloud/pages/sync-runs/SyncRunsListPage.js +148 -121
- package/dist/adaptercloud/pages/sync-runs/SyncRunsListPage.js.map +1 -1
- package/dist/adaptercloud/pages/violations/ViolationsListPage.d.ts.map +1 -1
- package/dist/adaptercloud/pages/violations/ViolationsListPage.js +145 -144
- package/dist/adaptercloud/pages/violations/ViolationsListPage.js.map +1 -1
- package/dist/utils/pageContext.d.ts +0 -2
- package/dist/utils/pageContext.d.ts.map +1 -1
- package/dist/utils/pageContext.js +1 -3
- package/dist/utils/pageContext.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AdapterCloudRoot.d.ts","sourceRoot":"","sources":["../../src/adaptercloud/AdapterCloudRoot.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAoBhC,OAAO,KAAK,EAAE,qBAAqB,EAAW,MAAM,SAAS,CAAC;AAsB9D,eAAO,MAAM,gBAAgB,EAAE,EAAE,CAAC,qBAAqB,
|
|
1
|
+
{"version":3,"file":"AdapterCloudRoot.d.ts","sourceRoot":"","sources":["../../src/adaptercloud/AdapterCloudRoot.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAoBhC,OAAO,KAAK,EAAE,qBAAqB,EAAW,MAAM,SAAS,CAAC;AAsB9D,eAAO,MAAM,gBAAgB,EAAE,EAAE,CAAC,qBAAqB,CAwItD,CAAC"}
|
|
@@ -1,135 +1,132 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
1
|
+
import { useTr as e } from "./hooks/useTr.js";
|
|
2
|
+
import { AdapterCloudProvider as t } from "./context/AdapterCloudContext.js";
|
|
3
|
+
import { notify as n } from "./lib/toast.js";
|
|
4
|
+
import { AdapterCloudRoutes as r } from "./AdapterCloudRoutes.js";
|
|
5
|
+
import { useEffect as i } from "react";
|
|
5
6
|
import { MutationCache as a, QueryClient as o, QueryClientProvider as s } from "@tanstack/react-query";
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import { FeatureFlagProvider as b } from "@burdenoff/fe-libs/shared/feature-flags";
|
|
7
|
+
import { Activity as c, Boxes as l, Cable as u, DollarSign as d, GitCompareArrows as f, LayoutDashboard as p, ScrollText as m, Server as h, ShieldAlert as g, Waypoints as _ } from "lucide-react";
|
|
8
|
+
import { jsx as v } from "react/jsx-runtime";
|
|
9
|
+
import { FeatureFlagProvider as y } from "@burdenoff/fe-libs/shared/feature-flags";
|
|
10
10
|
//#region src/adaptercloud/AdapterCloudRoot.tsx
|
|
11
|
-
var
|
|
11
|
+
var b = new o({
|
|
12
12
|
mutationCache: new a({ onError: (e) => {
|
|
13
|
-
|
|
13
|
+
n.error("Something went wrong", e instanceof Error ? e.message : "Please try again.");
|
|
14
14
|
} }),
|
|
15
15
|
defaultOptions: { queries: {
|
|
16
16
|
staleTime: 300 * 1e3,
|
|
17
17
|
retry: 1
|
|
18
18
|
} }
|
|
19
|
-
}),
|
|
20
|
-
let { registerNavItems: a, registerFooterItems: o, basePath:
|
|
21
|
-
let n = C(e);
|
|
22
|
-
return n === e ? t : n;
|
|
23
|
-
}, [C]), T = (e, t) => (e.endsWith("/") ? e.slice(0, -1) : e) + (t.startsWith("/") ? t : `/${t}`);
|
|
19
|
+
}), x = (n) => {
|
|
20
|
+
let { registerNavItems: a, registerFooterItems: o, basePath: x = "/" } = n, S = e(), C = (e, t) => (e.endsWith("/") ? e.slice(0, -1) : e) + (t.startsWith("/") ? t : `/${t}`);
|
|
24
21
|
return i(() => {
|
|
25
22
|
if (a) return a([
|
|
26
23
|
{
|
|
27
24
|
id: "adaptercloud-overview",
|
|
28
|
-
label:
|
|
29
|
-
path:
|
|
30
|
-
icon: /* @__PURE__ */
|
|
25
|
+
label: S("adaptercloud.nav.overview", "Overview"),
|
|
26
|
+
path: C(x, ""),
|
|
27
|
+
icon: /* @__PURE__ */ v(p, { size: 20 }),
|
|
31
28
|
order: 1,
|
|
32
29
|
group: "main"
|
|
33
30
|
},
|
|
34
31
|
{
|
|
35
32
|
id: "adaptercloud-adapters",
|
|
36
|
-
label:
|
|
37
|
-
path:
|
|
38
|
-
icon: /* @__PURE__ */
|
|
33
|
+
label: S("adaptercloud.nav.adapters", "Adapters"),
|
|
34
|
+
path: C(x, "adapters"),
|
|
35
|
+
icon: /* @__PURE__ */ v(l, { size: 20 }),
|
|
39
36
|
order: 10,
|
|
40
37
|
group: "fabric"
|
|
41
38
|
},
|
|
42
39
|
{
|
|
43
40
|
id: "adaptercloud-connections",
|
|
44
|
-
label:
|
|
45
|
-
path:
|
|
46
|
-
icon: /* @__PURE__ */
|
|
41
|
+
label: S("adaptercloud.nav.connections", "Connections"),
|
|
42
|
+
path: C(x, "connections"),
|
|
43
|
+
icon: /* @__PURE__ */ v(u, { size: 20 }),
|
|
47
44
|
order: 11,
|
|
48
45
|
group: "fabric"
|
|
49
46
|
},
|
|
50
47
|
{
|
|
51
48
|
id: "adaptercloud-resources",
|
|
52
|
-
label:
|
|
53
|
-
path:
|
|
54
|
-
icon: /* @__PURE__ */
|
|
49
|
+
label: S("adaptercloud.nav.resources", "Resources"),
|
|
50
|
+
path: C(x, "resources"),
|
|
51
|
+
icon: /* @__PURE__ */ v(h, { size: 20 }),
|
|
55
52
|
order: 12,
|
|
56
53
|
group: "fabric"
|
|
57
54
|
},
|
|
58
55
|
{
|
|
59
56
|
id: "adaptercloud-topology",
|
|
60
|
-
label:
|
|
61
|
-
path:
|
|
62
|
-
icon: /* @__PURE__ */
|
|
57
|
+
label: S("adaptercloud.nav.topology", "Topology"),
|
|
58
|
+
path: C(x, "topology"),
|
|
59
|
+
icon: /* @__PURE__ */ v(_, { size: 20 }),
|
|
63
60
|
order: 13,
|
|
64
61
|
group: "fabric"
|
|
65
62
|
},
|
|
66
63
|
{
|
|
67
64
|
id: "adaptercloud-policies",
|
|
68
|
-
label:
|
|
69
|
-
path:
|
|
70
|
-
icon: /* @__PURE__ */
|
|
65
|
+
label: S("adaptercloud.nav.policies", "Policies"),
|
|
66
|
+
path: C(x, "policies"),
|
|
67
|
+
icon: /* @__PURE__ */ v(m, { size: 20 }),
|
|
71
68
|
order: 20,
|
|
72
69
|
group: "governance"
|
|
73
70
|
},
|
|
74
71
|
{
|
|
75
72
|
id: "adaptercloud-violations",
|
|
76
|
-
label:
|
|
77
|
-
path:
|
|
78
|
-
icon: /* @__PURE__ */
|
|
73
|
+
label: S("adaptercloud.nav.violations", "Violations"),
|
|
74
|
+
path: C(x, "violations"),
|
|
75
|
+
icon: /* @__PURE__ */ v(g, { size: 20 }),
|
|
79
76
|
order: 21,
|
|
80
77
|
group: "governance"
|
|
81
78
|
},
|
|
82
79
|
{
|
|
83
80
|
id: "adaptercloud-drift",
|
|
84
|
-
label:
|
|
85
|
-
path:
|
|
86
|
-
icon: /* @__PURE__ */
|
|
81
|
+
label: S("adaptercloud.nav.drift", "Drift"),
|
|
82
|
+
path: C(x, "drift"),
|
|
83
|
+
icon: /* @__PURE__ */ v(f, { size: 20 }),
|
|
87
84
|
order: 22,
|
|
88
85
|
group: "governance"
|
|
89
86
|
},
|
|
90
87
|
{
|
|
91
88
|
id: "adaptercloud-sync-runs",
|
|
92
|
-
label:
|
|
93
|
-
path:
|
|
94
|
-
icon: /* @__PURE__ */
|
|
89
|
+
label: S("adaptercloud.nav.syncRuns", "Sync Runs"),
|
|
90
|
+
path: C(x, "sync-runs"),
|
|
91
|
+
icon: /* @__PURE__ */ v(c, { size: 20 }),
|
|
95
92
|
order: 30,
|
|
96
93
|
group: "operations"
|
|
97
94
|
},
|
|
98
95
|
{
|
|
99
96
|
id: "adaptercloud-costs",
|
|
100
|
-
label:
|
|
101
|
-
path:
|
|
102
|
-
icon: /* @__PURE__ */
|
|
97
|
+
label: S("adaptercloud.nav.finops", "FinOps"),
|
|
98
|
+
path: C(x, "costs"),
|
|
99
|
+
icon: /* @__PURE__ */ v(d, { size: 20 }),
|
|
103
100
|
order: 31,
|
|
104
101
|
group: "operations"
|
|
105
102
|
}
|
|
106
103
|
]);
|
|
107
104
|
}, [
|
|
108
105
|
a,
|
|
109
|
-
|
|
110
|
-
|
|
106
|
+
x,
|
|
107
|
+
S
|
|
111
108
|
]), i(() => {
|
|
112
109
|
if (o) return o([{
|
|
113
110
|
id: "adaptercloud-status",
|
|
114
|
-
label:
|
|
111
|
+
label: S("adaptercloud.footer.ready", "AdapterCloud Ready"),
|
|
115
112
|
type: "status",
|
|
116
113
|
order: 10,
|
|
117
114
|
section: "left"
|
|
118
115
|
}]);
|
|
119
|
-
}, [o,
|
|
120
|
-
client:
|
|
121
|
-
children: /* @__PURE__ */ y
|
|
116
|
+
}, [o, S]), /* @__PURE__ */ v(s, {
|
|
117
|
+
client: b,
|
|
118
|
+
children: /* @__PURE__ */ v(y, {
|
|
122
119
|
workspaceId: null,
|
|
123
120
|
gateway: "global",
|
|
124
121
|
defaultEnabled: !0,
|
|
125
|
-
children: /* @__PURE__ */
|
|
126
|
-
...
|
|
127
|
-
children: /* @__PURE__ */
|
|
122
|
+
children: /* @__PURE__ */ v(t, {
|
|
123
|
+
...n,
|
|
124
|
+
children: /* @__PURE__ */ v(r, {})
|
|
128
125
|
})
|
|
129
126
|
})
|
|
130
127
|
});
|
|
131
128
|
};
|
|
132
129
|
//#endregion
|
|
133
|
-
export {
|
|
130
|
+
export { x as AdapterCloudRoot };
|
|
134
131
|
|
|
135
132
|
//# sourceMappingURL=AdapterCloudRoot.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AdapterCloudRoot.js","names":[],"sources":["../../src/adaptercloud/AdapterCloudRoot.tsx"],"sourcesContent":["/**\n * AdapterCloud Root Component\n * @module adaptercloud\n */\n\nimport type { FC } from 'react';\nimport {
|
|
1
|
+
{"version":3,"file":"AdapterCloudRoot.js","names":[],"sources":["../../src/adaptercloud/AdapterCloudRoot.tsx"],"sourcesContent":["/**\n * AdapterCloud Root Component\n * @module adaptercloud\n */\n\nimport type { FC } from 'react';\nimport { useEffect } from 'react';\nimport { MutationCache, QueryClient, QueryClientProvider } from '@tanstack/react-query';\nimport { useTr } from './hooks/useTr';\nimport {\n LayoutDashboard,\n Boxes,\n Cable,\n Server,\n Waypoints,\n ScrollText,\n ShieldAlert,\n GitCompareArrows,\n Activity,\n DollarSign,\n} from 'lucide-react';\nimport { AdapterCloudProvider } from './context/AdapterCloudContext';\nimport { FeatureFlagProvider } from '@burdenoff/fe-libs/shared/feature-flags';\nimport { AdapterCloudRoutes } from './AdapterCloudRoutes';\nimport { notify } from './lib/toast';\nimport type { AdapterCloudRootProps, NavItem } from './types';\n\n// Create a query client for this microfrontend. A shared MutationCache surfaces\n// every failed write as a toast, so no mutation can fail silently with only\n// inline error state (the <Toaster> is owned by the host app shell).\nconst queryClient = new QueryClient({\n mutationCache: new MutationCache({\n onError: (error) => {\n notify.error(\n 'Something went wrong',\n error instanceof Error ? error.message : 'Please try again.'\n );\n },\n }),\n defaultOptions: {\n queries: {\n staleTime: 5 * 60 * 1000,\n retry: 1,\n },\n },\n});\n\nexport const AdapterCloudRoot: FC<AdapterCloudRootProps> = (props) => {\n const { registerNavItems, registerFooterItems, basePath = '/' } = props;\n const t = useTr();\n\n // Helper to join paths correctly\n const joinPath = (base: string, path: string): string => {\n const cleanBase = base.endsWith('/') ? base.slice(0, -1) : base;\n const cleanPath = path.startsWith('/') ? path : `/${path}`;\n return cleanBase + cleanPath;\n };\n\n // Register navigation items with shell on mount\n useEffect(() => {\n if (!registerNavItems) return;\n\n const navItems: NavItem[] = [\n // Overview\n {\n id: 'adaptercloud-overview',\n label: t('adaptercloud.nav.overview', 'Overview'),\n path: joinPath(basePath, ''),\n icon: <LayoutDashboard size={20} />,\n order: 1,\n group: 'main',\n },\n\n // Fabric\n {\n id: 'adaptercloud-adapters',\n label: t('adaptercloud.nav.adapters', 'Adapters'),\n path: joinPath(basePath, 'adapters'),\n icon: <Boxes size={20} />,\n order: 10,\n group: 'fabric',\n },\n {\n id: 'adaptercloud-connections',\n label: t('adaptercloud.nav.connections', 'Connections'),\n path: joinPath(basePath, 'connections'),\n icon: <Cable size={20} />,\n order: 11,\n group: 'fabric',\n },\n {\n id: 'adaptercloud-resources',\n label: t('adaptercloud.nav.resources', 'Resources'),\n path: joinPath(basePath, 'resources'),\n icon: <Server size={20} />,\n order: 12,\n group: 'fabric',\n },\n {\n id: 'adaptercloud-topology',\n label: t('adaptercloud.nav.topology', 'Topology'),\n path: joinPath(basePath, 'topology'),\n icon: <Waypoints size={20} />,\n order: 13,\n group: 'fabric',\n },\n\n // Governance\n {\n id: 'adaptercloud-policies',\n label: t('adaptercloud.nav.policies', 'Policies'),\n path: joinPath(basePath, 'policies'),\n icon: <ScrollText size={20} />,\n order: 20,\n group: 'governance',\n },\n {\n id: 'adaptercloud-violations',\n label: t('adaptercloud.nav.violations', 'Violations'),\n path: joinPath(basePath, 'violations'),\n icon: <ShieldAlert size={20} />,\n order: 21,\n group: 'governance',\n },\n {\n id: 'adaptercloud-drift',\n label: t('adaptercloud.nav.drift', 'Drift'),\n path: joinPath(basePath, 'drift'),\n icon: <GitCompareArrows size={20} />,\n order: 22,\n group: 'governance',\n },\n\n // Operations\n {\n id: 'adaptercloud-sync-runs',\n label: t('adaptercloud.nav.syncRuns', 'Sync Runs'),\n path: joinPath(basePath, 'sync-runs'),\n icon: <Activity size={20} />,\n order: 30,\n group: 'operations',\n },\n {\n id: 'adaptercloud-costs',\n label: t('adaptercloud.nav.finops', 'FinOps'),\n path: joinPath(basePath, 'costs'),\n icon: <DollarSign size={20} />,\n order: 31,\n group: 'operations',\n },\n ];\n\n const cleanup = registerNavItems(navItems);\n return cleanup;\n }, [registerNavItems, basePath, t]);\n\n // Register footer items\n useEffect(() => {\n if (!registerFooterItems) return;\n\n const footerItems = [\n {\n id: 'adaptercloud-status',\n label: t('adaptercloud.footer.ready', 'AdapterCloud Ready'),\n type: 'status' as const,\n order: 10,\n section: 'left' as const,\n },\n ];\n\n const cleanup = registerFooterItems(footerItems);\n return cleanup;\n }, [registerFooterItems, t]);\n\n return (\n <QueryClientProvider client={queryClient}>\n <FeatureFlagProvider workspaceId={null} gateway=\"global\" defaultEnabled={true}>\n <AdapterCloudProvider {...props}>\n <AdapterCloudRoutes />\n </AdapterCloudProvider>\n </FeatureFlagProvider>\n </QueryClientProvider>\n );\n};\n"],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { FC } from 'react';
|
|
2
|
+
|
|
3
|
+
interface ActiveSwitchProps {
|
|
4
|
+
checked: boolean;
|
|
5
|
+
onToggle: () => void;
|
|
6
|
+
disabled?: boolean;
|
|
7
|
+
/** Accessible name — describes the action the switch performs. */
|
|
8
|
+
label: string;
|
|
9
|
+
/** Optional visible text rendered beside the switch. */
|
|
10
|
+
children?: React.ReactNode;
|
|
11
|
+
/** Stop the click from reaching a clickable ancestor (e.g. a card row). */
|
|
12
|
+
stopPropagation?: boolean;
|
|
13
|
+
className?: string;
|
|
14
|
+
}
|
|
15
|
+
export declare const ActiveSwitch: FC<ActiveSwitchProps>;
|
|
16
|
+
export {};
|
|
17
|
+
//# sourceMappingURL=ActiveSwitch.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ActiveSwitch.d.ts","sourceRoot":"","sources":["../../../src/adaptercloud/components/ActiveSwitch.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAGhC,UAAU,iBAAiB;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,kEAAkE;IAClE,KAAK,EAAE,MAAM,CAAC;IACd,wDAAwD;IACxD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,2EAA2E;IAC3E,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,YAAY,EAAE,EAAE,CAAC,iBAAiB,CAmC9C,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { cn as e } from "../utils/cn.js";
|
|
2
|
+
import { jsx as t, jsxs as n } from "react/jsx-runtime";
|
|
3
|
+
//#region src/adaptercloud/components/ActiveSwitch.tsx
|
|
4
|
+
var r = ({ checked: r, onToggle: i, disabled: a = !1, label: o, children: s, stopPropagation: c = !1, className: l }) => /* @__PURE__ */ n("div", {
|
|
5
|
+
className: e("flex items-center gap-2", l),
|
|
6
|
+
children: [/* @__PURE__ */ t("button", {
|
|
7
|
+
type: "button",
|
|
8
|
+
role: "switch",
|
|
9
|
+
"aria-checked": r,
|
|
10
|
+
"aria-label": o,
|
|
11
|
+
disabled: a,
|
|
12
|
+
onClick: (e) => {
|
|
13
|
+
c && e.stopPropagation(), i();
|
|
14
|
+
},
|
|
15
|
+
className: e("relative inline-flex h-5 w-9 shrink-0 items-center rounded-full border transition-colors focus:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-focus-ring)] disabled:opacity-60", r ? "border-transparent bg-action-primary-bg" : "border-border-subtle bg-bg-sunken"),
|
|
16
|
+
children: /* @__PURE__ */ t("span", {
|
|
17
|
+
"aria-hidden": "true",
|
|
18
|
+
className: e("inline-block h-3.5 w-3.5 transform rounded-full shadow-sm transition-transform", r ? "translate-x-4 bg-action-primary-text" : "translate-x-0.5 bg-text-secondary")
|
|
19
|
+
})
|
|
20
|
+
}), s && /* @__PURE__ */ t("span", {
|
|
21
|
+
className: "text-xs text-text-secondary",
|
|
22
|
+
children: s
|
|
23
|
+
})]
|
|
24
|
+
});
|
|
25
|
+
//#endregion
|
|
26
|
+
export { r as ActiveSwitch };
|
|
27
|
+
|
|
28
|
+
//# sourceMappingURL=ActiveSwitch.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ActiveSwitch.js","names":[],"sources":["../../../src/adaptercloud/components/ActiveSwitch.tsx"],"sourcesContent":["/**\n * Active Switch Component\n * @module adaptercloud/components\n *\n * The inline on/off control used wherever a governance object's `isActive`\n * flag can be flipped in place (policy list rows, policy detail header). Pure\n * presentation — the caller owns the mutation and the optimistic state.\n */\n\nimport type { FC } from 'react';\nimport { cn } from '../utils/cn';\n\ninterface ActiveSwitchProps {\n checked: boolean;\n onToggle: () => void;\n disabled?: boolean;\n /** Accessible name — describes the action the switch performs. */\n label: string;\n /** Optional visible text rendered beside the switch. */\n children?: React.ReactNode;\n /** Stop the click from reaching a clickable ancestor (e.g. a card row). */\n stopPropagation?: boolean;\n className?: string;\n}\n\nexport const ActiveSwitch: FC<ActiveSwitchProps> = ({\n checked,\n onToggle,\n disabled = false,\n label,\n children,\n stopPropagation = false,\n className,\n}) => (\n <div className={cn('flex items-center gap-2', className)}>\n <button\n type=\"button\"\n role=\"switch\"\n aria-checked={checked}\n aria-label={label}\n disabled={disabled}\n onClick={(e) => {\n if (stopPropagation) e.stopPropagation();\n onToggle();\n }}\n className={cn(\n 'relative inline-flex h-5 w-9 shrink-0 items-center rounded-full border transition-colors focus:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-focus-ring)] disabled:opacity-60',\n checked ? 'border-transparent bg-action-primary-bg' : 'border-border-subtle bg-bg-sunken'\n )}\n >\n <span\n aria-hidden=\"true\"\n className={cn(\n 'inline-block h-3.5 w-3.5 transform rounded-full shadow-sm transition-transform',\n checked ? 'translate-x-4 bg-action-primary-text' : 'translate-x-0.5 bg-text-secondary'\n )}\n />\n </button>\n {children && <span className=\"text-xs text-text-secondary\">{children}</span>}\n </div>\n);\n"],"mappings":";;;AAyBA,IAAa,KAAuC,EAClD,YACA,aACA,cAAW,IACX,UACA,aACA,qBAAkB,IAClB,mBAEA,kBAAC,OAAD;CAAK,WAAW,EAAG,2BAA2B,CAAS;WAAvD,CACE,kBAAC,UAAD;EACE,MAAK;EACL,MAAK;EACL,gBAAc;EACd,cAAY;EACF;EACV,UAAU,MAAM;GAEd,AADI,KAAiB,EAAE,gBAAgB,GACvC,EAAS;EACX;EACA,WAAW,EACT,qMACA,IAAU,4CAA4C,mCACxD;YAEA,kBAAC,QAAD;GACE,eAAY;GACZ,WAAW,EACT,kFACA,IAAU,yCAAyC,mCACrD;EACD,CAAA;CACK,CAAA,GACP,KAAY,kBAAC,QAAD;EAAM,WAAU;EAA+B;CAAe,CAAA,CACxE"}
|
|
@@ -9,4 +9,5 @@ export { SeverityBadge } from './SeverityBadge';
|
|
|
9
9
|
export { EmptyState } from './EmptyState';
|
|
10
10
|
export { DataState } from './DataState';
|
|
11
11
|
export { ConfirmDialog } from './ConfirmDialog';
|
|
12
|
+
export { ActiveSwitch } from './ActiveSwitch';
|
|
12
13
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/adaptercloud/components/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/adaptercloud/components/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
* Hooks Index
|
|
3
3
|
* @module adaptercloud/hooks
|
|
4
4
|
*/
|
|
5
|
+
export { useTr } from './useTr';
|
|
5
6
|
export { adaKeys, useAdaHealth, useAdapters, useAdapter, useCreateAdapter, useUpdateAdapter, useArchiveAdapter, useConnections, useConnection, useCreateConnection, useUpdateConnection, useSetConnectionStatus, useDisableConnection, useResources, useResource, usePolicies, usePolicy, useCreatePolicy, useUpdatePolicy, useArchivePolicy, useViolations, useResolveViolation, useDriftRecords, useRemediateDrift, useSyncRuns, useStartSyncRun, useCancelSyncRun, useCostSummary, useCostRecords, } from './useAdapterCloudApi';
|
|
6
7
|
export type { AdapterListFilter, ConnectionListFilter, ResourceListFilter, PolicyListFilter, ViolationListFilter, DriftListFilter, SyncRunListFilter, CostRecordListFilter, } from './useAdapterCloudApi';
|
|
7
8
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/adaptercloud/hooks/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,OAAO,EAEP,YAAY,EAEZ,WAAW,EACX,UAAU,EACV,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EAEjB,cAAc,EACd,aAAa,EACb,mBAAmB,EACnB,mBAAmB,EACnB,sBAAsB,EACtB,oBAAoB,EAEpB,YAAY,EACZ,WAAW,EAEX,WAAW,EACX,SAAS,EACT,eAAe,EACf,eAAe,EACf,gBAAgB,EAEhB,aAAa,EACb,mBAAmB,EAEnB,eAAe,EACf,iBAAiB,EAEjB,WAAW,EACX,eAAe,EACf,gBAAgB,EAEhB,cAAc,EACd,cAAc,GACf,MAAM,sBAAsB,CAAC;AAE9B,YAAY,EACV,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,gBAAgB,EAChB,mBAAmB,EACnB,eAAe,EACf,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,sBAAsB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/adaptercloud/hooks/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,OAAO,EACL,OAAO,EAEP,YAAY,EAEZ,WAAW,EACX,UAAU,EACV,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EAEjB,cAAc,EACd,aAAa,EACb,mBAAmB,EACnB,mBAAmB,EACnB,sBAAsB,EACtB,oBAAoB,EAEpB,YAAY,EACZ,WAAW,EAEX,WAAW,EACX,SAAS,EACT,eAAe,EACf,eAAe,EACf,gBAAgB,EAEhB,aAAa,EACb,mBAAmB,EAEnB,eAAe,EACf,iBAAiB,EAEjB,WAAW,EACX,eAAe,EACf,gBAAgB,EAEhB,cAAc,EACd,cAAc,GACf,MAAM,sBAAsB,CAAC;AAE9B,YAAY,EACV,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,gBAAgB,EAChB,mBAAmB,EACnB,eAAe,EACf,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,sBAAsB,CAAC"}
|
|
@@ -15,6 +15,7 @@ export declare const adaKeys: {
|
|
|
15
15
|
policy: (id: string) => readonly ["adaptercloud", "policy", string];
|
|
16
16
|
violations: (filter: Record<string, unknown>) => readonly ["adaptercloud", "violations", Record<string, unknown>];
|
|
17
17
|
drift: (filter: Record<string, unknown>) => readonly ["adaptercloud", "drift", Record<string, unknown>];
|
|
18
|
+
driftCount: (status?: AdaDriftStatus) => readonly ["adaptercloud", "drift", "count", AdaDriftStatus | null];
|
|
18
19
|
syncRuns: (filter: Record<string, unknown>) => readonly ["adaptercloud", "sync-runs", Record<string, unknown>];
|
|
19
20
|
syncRun: (id: string) => readonly ["adaptercloud", "sync-run", string];
|
|
20
21
|
topology: (filter: Record<string, unknown>) => readonly ["adaptercloud", "topology", Record<string, unknown>];
|
|
@@ -78,7 +79,14 @@ export interface ViolationListFilter {
|
|
|
78
79
|
status?: AdaViolationStatus;
|
|
79
80
|
pagination?: PaginationInput;
|
|
80
81
|
}
|
|
81
|
-
|
|
82
|
+
/**
|
|
83
|
+
* @param options.enabled Set false to hold the query until its inputs are
|
|
84
|
+
* known (e.g. a policy-scoped count whose route id has not resolved), so it
|
|
85
|
+
* never falls back to an unintended estate-wide fetch.
|
|
86
|
+
*/
|
|
87
|
+
export declare const useViolations: (filter?: ViolationListFilter, options?: {
|
|
88
|
+
enabled?: boolean;
|
|
89
|
+
}) => import('@tanstack/react-query').UseQueryResult<NoInfer<AdaPolicyViolationPage>, Error>;
|
|
82
90
|
export declare const useResolveViolation: () => import('@tanstack/react-query').UseMutationResult<AdaPolicyViolation, Error, {
|
|
83
91
|
id: string;
|
|
84
92
|
status: AdaViolationStatus;
|
|
@@ -89,13 +97,31 @@ export interface DriftListFilter {
|
|
|
89
97
|
status?: AdaDriftStatus;
|
|
90
98
|
}
|
|
91
99
|
export declare const useDriftRecords: (filter?: DriftListFilter) => import('@tanstack/react-query').UseQueryResult<NoInfer<AdaDriftRecord[]>, Error>;
|
|
100
|
+
/**
|
|
101
|
+
* Exact, estate-wide count of drift records for one status (every status when
|
|
102
|
+
* omitted).
|
|
103
|
+
*
|
|
104
|
+
* Reads `pageInfo.totalCount` from a `limit: 1` query rather than measuring a
|
|
105
|
+
* fetched page: {@link useDriftRecords} caps at the service's 100-row page
|
|
106
|
+
* ceiling, so counting its result silently plateaus once an estate has more
|
|
107
|
+
* drift than that. Resolves to `null` when a deployed schema does not expose
|
|
108
|
+
* `totalCount`, which callers must render as "unknown" rather than as zero.
|
|
109
|
+
*/
|
|
110
|
+
export declare const useDriftCount: (status?: AdaDriftStatus) => import('@tanstack/react-query').UseQueryResult<number | null, Error>;
|
|
92
111
|
export declare const useRemediateDrift: () => import('@tanstack/react-query').UseMutationResult<AdaDriftRecord, Error, string, unknown>;
|
|
93
112
|
export interface SyncRunListFilter {
|
|
94
113
|
connectionId?: string;
|
|
95
114
|
status?: AdaSyncStatus;
|
|
96
115
|
pagination?: PaginationInput;
|
|
97
116
|
}
|
|
98
|
-
|
|
117
|
+
/**
|
|
118
|
+
* @param options.enabled Set false to hold the query until its inputs are
|
|
119
|
+
* known (e.g. a connection-scoped panel whose route id has not resolved),
|
|
120
|
+
* so it never falls back to an unintended estate-wide fetch.
|
|
121
|
+
*/
|
|
122
|
+
export declare const useSyncRuns: (filter?: SyncRunListFilter, options?: {
|
|
123
|
+
enabled?: boolean;
|
|
124
|
+
}) => import('@tanstack/react-query').UseQueryResult<NoInfer<AdaSyncRunPage>, Error>;
|
|
99
125
|
export declare const useStartSyncRun: () => import('@tanstack/react-query').UseMutationResult<AdaSyncRun, Error, AdaStartSyncRunInput, unknown>;
|
|
100
126
|
export declare const useCancelSyncRun: () => import('@tanstack/react-query').UseMutationResult<AdaSyncRun, Error, string, unknown>;
|
|
101
127
|
export declare const useCostSummary: (connectionId?: string) => import('@tanstack/react-query').UseQueryResult<NoInfer<AdaCostSummary>, Error>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useAdapterCloudApi.d.ts","sourceRoot":"","sources":["../../../src/adaptercloud/hooks/useAdapterCloudApi.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;
|
|
1
|
+
{"version":3,"file":"useAdapterCloudApi.d.ts","sourceRoot":"","sources":["../../../src/adaptercloud/hooks/useAdapterCloudApi.ts"],"names":[],"mappings":"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"}
|