@enterpriseai/cli 3.7.2 → 3.7.4

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.
@@ -0,0 +1,269 @@
1
+ import inquirer from "inquirer";
2
+ import { PlatformAPIClient } from "./api.js";
3
+ function isRecord(value) {
4
+ return Boolean(value) && typeof value === "object" && !Array.isArray(value);
5
+ }
6
+ function optionalString(value) {
7
+ return typeof value === "string" && value.trim() ? value : undefined;
8
+ }
9
+ function tenantReferenceId(value) {
10
+ if (typeof value === "string" && value.trim())
11
+ return value;
12
+ if (!isRecord(value))
13
+ return null;
14
+ return optionalString(value.id) ?? optionalString(value._id) ?? null;
15
+ }
16
+ function tenantParentIdFromRecord(record) {
17
+ return (tenantReferenceId(record.parentTenant) ??
18
+ tenantReferenceId(record.parent) ??
19
+ optionalString(record.parentTenantId) ??
20
+ optionalString(record.parentId) ??
21
+ optionalString(record.parent_tenant_id) ??
22
+ null);
23
+ }
24
+ function tenantRecordsFromPayload(payload) {
25
+ if (Array.isArray(payload)) {
26
+ return payload.filter(isRecord);
27
+ }
28
+ if (!isRecord(payload))
29
+ return [];
30
+ for (const key of ["children", "tenants", "docs", "items", "data"]) {
31
+ const value = payload[key];
32
+ if (Array.isArray(value)) {
33
+ return value.filter(isRecord);
34
+ }
35
+ }
36
+ if (isRecord(payload.tenant)) {
37
+ return [payload.tenant];
38
+ }
39
+ return [];
40
+ }
41
+ function tenantHierarchyItemFromMembership(membership) {
42
+ return {
43
+ id: membership.id,
44
+ displayName: membership.displayName,
45
+ slug: membership.slug,
46
+ domain: membership.domain,
47
+ isActive: membership.isActive,
48
+ roles: membership.roles,
49
+ parentId: membership.parentId,
50
+ homeRegion: membership.homeRegion,
51
+ hqCountryCode: membership.hqCountryCode,
52
+ directMembership: true,
53
+ children: [],
54
+ };
55
+ }
56
+ function tenantHierarchyItemFromRecord(record) {
57
+ const id = optionalString(record.id) ?? optionalString(record._id);
58
+ if (!id)
59
+ return null;
60
+ const slug = optionalString(record.slug) ?? id;
61
+ const displayName = optionalString(record.displayName) ??
62
+ optionalString(record.name) ??
63
+ optionalString(record.title) ??
64
+ slug;
65
+ return {
66
+ id,
67
+ displayName,
68
+ slug,
69
+ domain: optionalString(record.domain),
70
+ isActive: record.isActive !== false,
71
+ roles: [],
72
+ homeRegion: typeof record.homeRegion === "string" || record.homeRegion === null
73
+ ? record.homeRegion
74
+ : undefined,
75
+ hqCountryCode: typeof record.hqCountryCode === "string" || record.hqCountryCode === null
76
+ ? record.hqCountryCode
77
+ : undefined,
78
+ parentId: tenantParentIdFromRecord(record),
79
+ directMembership: false,
80
+ children: [],
81
+ };
82
+ }
83
+ function mergeTenantHierarchyItem(existing, next) {
84
+ if (!existing)
85
+ return next;
86
+ return {
87
+ ...existing,
88
+ ...next,
89
+ displayName: next.displayName || existing.displayName,
90
+ slug: next.slug || existing.slug,
91
+ domain: next.domain ?? existing.domain,
92
+ roles: existing.roles.length ? existing.roles : next.roles,
93
+ directMembership: existing.directMembership || next.directMembership,
94
+ parentId: next.parentId ?? existing.parentId,
95
+ homeRegion: next.homeRegion ?? existing.homeRegion,
96
+ hqCountryCode: next.hqCountryCode ?? existing.hqCountryCode,
97
+ children: [],
98
+ };
99
+ }
100
+ function compareTenantHierarchyItems(left, right) {
101
+ return left.displayName.localeCompare(right.displayName, undefined, {
102
+ sensitivity: "base",
103
+ });
104
+ }
105
+ export function tenantMatchesParent(entry, parentId) {
106
+ const parent = entry.tenant.parent;
107
+ const resolvedParentId = typeof parent === "string" ? parent : (parent?.id ?? entry.tenant.parentId);
108
+ return resolvedParentId === parentId || entry.tenant.id === parentId;
109
+ }
110
+ export function buildTenantHierarchy(directMemberships, childRecords = []) {
111
+ const byId = new Map();
112
+ for (const membership of directMemberships) {
113
+ byId.set(membership.id, mergeTenantHierarchyItem(byId.get(membership.id), tenantHierarchyItemFromMembership(membership)));
114
+ }
115
+ for (const record of childRecords) {
116
+ if (!isRecord(record))
117
+ continue;
118
+ const item = tenantHierarchyItemFromRecord(record);
119
+ if (!item)
120
+ continue;
121
+ byId.set(item.id, mergeTenantHierarchyItem(byId.get(item.id), item));
122
+ }
123
+ for (const item of byId.values()) {
124
+ item.children = [];
125
+ }
126
+ const roots = [];
127
+ for (const item of byId.values()) {
128
+ if (item.parentId && item.parentId !== item.id && byId.has(item.parentId)) {
129
+ byId.get(item.parentId).children.push(item);
130
+ }
131
+ else {
132
+ roots.push(item);
133
+ }
134
+ }
135
+ const sortTree = (items) => {
136
+ items.sort(compareTenantHierarchyItems);
137
+ for (const item of items) {
138
+ sortTree(item.children);
139
+ }
140
+ return items;
141
+ };
142
+ return sortTree(roots);
143
+ }
144
+ export function flattenTenantHierarchy(roots) {
145
+ const items = [];
146
+ const visit = (item) => {
147
+ items.push(item);
148
+ for (const child of item.children)
149
+ visit(child);
150
+ };
151
+ for (const root of roots)
152
+ visit(root);
153
+ return items;
154
+ }
155
+ function tenantHierarchyStatus(item, activeTenantId) {
156
+ const labels = [];
157
+ if (item.roles.length)
158
+ labels.push(item.roles.join(", "));
159
+ if (!item.directMembership)
160
+ labels.push("visible via parent");
161
+ if (activeTenantId === item.id)
162
+ labels.push("active");
163
+ return labels.length ? ` [${labels.join("; ")}]` : "";
164
+ }
165
+ export function tenantHierarchyLineText(item, depth, activeTenantId) {
166
+ const prefix = "\t".repeat(Math.max(0, depth));
167
+ const domain = item.domain ? ` (${item.domain})` : "";
168
+ return `${prefix}${item.slug} - ${item.displayName}${domain}${tenantHierarchyStatus(item, activeTenantId)}`;
169
+ }
170
+ export function buildTenantHierarchyTreeLines(roots, options) {
171
+ const lines = [];
172
+ const visit = (item, depth) => {
173
+ lines.push(tenantHierarchyLineText(item, depth, options?.activeTenantId));
174
+ item.children.forEach((child) => visit(child, depth + 1));
175
+ };
176
+ roots.forEach((root) => visit(root, 0));
177
+ return lines;
178
+ }
179
+ export function tenantHierarchyJson(item) {
180
+ return {
181
+ id: item.id,
182
+ displayName: item.displayName,
183
+ slug: item.slug,
184
+ domain: item.domain,
185
+ isActive: item.isActive,
186
+ roles: item.roles,
187
+ homeRegion: item.homeRegion,
188
+ hqCountryCode: item.hqCountryCode,
189
+ parentId: item.parentId,
190
+ directMembership: item.directMembership,
191
+ children: item.children.map(tenantHierarchyJson),
192
+ };
193
+ }
194
+ export async function loadTenantHierarchy(options) {
195
+ const warnings = [];
196
+ const childRecords = [];
197
+ const parentMembership = options.parentId
198
+ ? options.memberships.find((membership) => membership.id === options.parentId || membership.slug === options.parentId)
199
+ : undefined;
200
+ const rootMemberships = options.parentId
201
+ ? [
202
+ parentMembership ??
203
+ {
204
+ id: options.parentId,
205
+ displayName: options.parentId,
206
+ slug: options.parentId,
207
+ isActive: true,
208
+ roles: [],
209
+ },
210
+ ]
211
+ : options.memberships;
212
+ const parentsToQuery = options.parentId ? [options.parentId] : [];
213
+ for (const parentId of parentsToQuery) {
214
+ const client = new PlatformAPIClient(options.publicApiUrl, parentId);
215
+ try {
216
+ const response = await client.listTenantChildren(parentId, {
217
+ includeDescendants: true,
218
+ limit: 100,
219
+ });
220
+ if (!response.ok) {
221
+ const body = await response.text().catch(() => "");
222
+ const message = `Could not load child tenants for ${parentId}: ${response.status} ${response.statusText}`.trim();
223
+ warnings.push(message);
224
+ options.debug?.(message, body || undefined);
225
+ continue;
226
+ }
227
+ childRecords.push(...tenantRecordsFromPayload(await response.json()));
228
+ }
229
+ catch (error) {
230
+ const message = error instanceof Error
231
+ ? `Could not load child tenants for ${parentId}: ${error.message}`
232
+ : `Could not load child tenants for ${parentId}`;
233
+ warnings.push(message);
234
+ options.debug?.(message);
235
+ }
236
+ }
237
+ return {
238
+ roots: buildTenantHierarchy(rootMemberships, childRecords),
239
+ warnings,
240
+ };
241
+ }
242
+ export async function promptForTenantFromHierarchy(roots, options) {
243
+ const choices = [];
244
+ const allowIndirect = options?.allowIndirect ?? false;
245
+ const visit = (item, depth) => {
246
+ choices.push({
247
+ name: tenantHierarchyLineText(item, depth),
248
+ value: item.id,
249
+ disabled: allowIndirect || item.directMembership
250
+ ? undefined
251
+ : "Visible through parent hierarchy; direct tenant-admin membership is required to select.",
252
+ });
253
+ item.children.forEach((child) => visit(child, depth + 1));
254
+ };
255
+ roots.forEach((root) => visit(root, 0));
256
+ if (options?.extraChoices?.length) {
257
+ choices.push(...options.extraChoices);
258
+ }
259
+ const { tenantId } = await inquirer.prompt([
260
+ {
261
+ type: "select",
262
+ name: "tenantId",
263
+ message: options?.message ?? "Select the tenant to work with now",
264
+ choices,
265
+ },
266
+ ]);
267
+ return String(tenantId);
268
+ }
269
+ //# sourceMappingURL=tenant-hierarchy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tenant-hierarchy.js","sourceRoot":"","sources":["../../src/lib/tenant-hierarchy.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@enterpriseai/cli",
3
- "version": "3.7.2",
3
+ "version": "3.7.4",
4
4
  "description": "EnterpriseAI CLI for app setup, validation, deployment readiness, and platform operations",
5
5
  "type": "module",
6
6
  "bin": {