@elevasis/sdk 1.9.0 → 1.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli.cjs +228 -190
- package/dist/index.d.ts +127 -154
- package/dist/index.js +15 -139
- package/dist/test-utils/index.d.ts +8270 -0
- package/dist/test-utils/index.js +20070 -0
- package/dist/types/worker/index.d.ts +20 -1
- package/dist/worker/index.js +7 -4
- package/package.json +8 -2
- package/reference/_navigation.md +15 -1
- package/reference/_reference-manifest.json +56 -0
- package/reference/claude-config/sync-notes/2026-04-24-test-utils-and-template-tests.md +73 -0
- package/reference/claude-config/sync-notes/2026-04-24-ui-consolidation-and-sdk-cli-train.md +1 -1
- package/reference/deployment/provided-features.mdx +40 -267
- package/reference/examples/organization-model.ts +96 -564
- package/reference/packages/core/src/organization-model/README.md +101 -97
- package/reference/packages/core/src/test-utils/README.md +5 -10
- package/reference/packages/ui/src/test-utils/README.md +5 -0
- package/reference/resources/types.mdx +72 -163
- package/reference/scaffold/core/organization-graph.mdx +89 -272
- package/reference/scaffold/core/organization-model.mdx +149 -320
- package/reference/scaffold/operations/workflow-recipes.md +94 -1
- package/reference/scaffold/recipes/add-a-feature.md +102 -158
- package/reference/scaffold/recipes/add-a-resource.md +85 -158
- package/reference/scaffold/recipes/customize-organization-model.md +141 -400
- package/reference/scaffold/recipes/gate-by-feature-or-admin.md +114 -158
- package/reference/scaffold/reference/contracts.md +62 -148
- package/reference/scaffold/reference/feature-registry.md +8 -8
- package/reference/scaffold/reference/glossary.md +71 -105
- package/reference/scaffold/ui/feature-flags-and-gating.md +27 -232
- package/reference/scaffold/ui/feature-shell.mdx +50 -219
- package/reference/scaffold/ui/recipes.md +62 -397
package/dist/index.js
CHANGED
|
@@ -38,126 +38,6 @@ var ToolingError = class extends ExecutionError {
|
|
|
38
38
|
}
|
|
39
39
|
};
|
|
40
40
|
|
|
41
|
-
// ../core/src/platform/registry/domains.ts
|
|
42
|
-
var DOMAINS = {
|
|
43
|
-
// Business domains
|
|
44
|
-
INBOUND_PIPELINE: "inbound-pipeline",
|
|
45
|
-
LEAD_GEN_PIPELINE: "lead-gen-pipeline",
|
|
46
|
-
SUPPORT: "support",
|
|
47
|
-
CLIENT_SUPPORT: "client-support",
|
|
48
|
-
DELIVERY: "delivery",
|
|
49
|
-
OPERATIONS: "operations",
|
|
50
|
-
FINANCE: "finance",
|
|
51
|
-
EXECUTIVE: "executive",
|
|
52
|
-
INSTANTLY: "instantly",
|
|
53
|
-
// Technical domains
|
|
54
|
-
TESTING: "testing",
|
|
55
|
-
INTERNAL: "internal",
|
|
56
|
-
INTEGRATION: "integration",
|
|
57
|
-
UTILITY: "utility",
|
|
58
|
-
DIAGNOSTIC: "diagnostic"
|
|
59
|
-
};
|
|
60
|
-
var INBOUND_PIPELINE_DOMAIN = {
|
|
61
|
-
id: DOMAINS.INBOUND_PIPELINE,
|
|
62
|
-
name: "Inbound Pipeline",
|
|
63
|
-
description: "End-to-end inbound client acquisition from first reply to onboarding",
|
|
64
|
-
color: "blue"
|
|
65
|
-
};
|
|
66
|
-
var LEAD_GEN_PIPELINE_DOMAIN = {
|
|
67
|
-
id: DOMAINS.LEAD_GEN_PIPELINE,
|
|
68
|
-
name: "Lead Gen Pipeline",
|
|
69
|
-
description: "Lead scraping, enrichment, qualification, and personalization",
|
|
70
|
-
color: "cyan"
|
|
71
|
-
};
|
|
72
|
-
var SUPPORT_DOMAIN = {
|
|
73
|
-
id: DOMAINS.SUPPORT,
|
|
74
|
-
name: "Customer Support",
|
|
75
|
-
description: "Ticket triage, knowledge base, escalations",
|
|
76
|
-
color: "green"
|
|
77
|
-
};
|
|
78
|
-
var CLIENT_SUPPORT_DOMAIN = {
|
|
79
|
-
id: DOMAINS.CLIENT_SUPPORT,
|
|
80
|
-
name: "Client Support",
|
|
81
|
-
description: "Client change requests, bug reports, and feature requests",
|
|
82
|
-
color: "teal"
|
|
83
|
-
};
|
|
84
|
-
var DELIVERY_DOMAIN = {
|
|
85
|
-
id: DOMAINS.DELIVERY,
|
|
86
|
-
name: "Client Delivery",
|
|
87
|
-
description: "Project execution and milestone tracking",
|
|
88
|
-
color: "orange"
|
|
89
|
-
};
|
|
90
|
-
var OPERATIONS_DOMAIN = {
|
|
91
|
-
id: DOMAINS.OPERATIONS,
|
|
92
|
-
name: "Operations",
|
|
93
|
-
description: "Internal business operations and administration",
|
|
94
|
-
color: "violet"
|
|
95
|
-
};
|
|
96
|
-
var FINANCE_DOMAIN = {
|
|
97
|
-
id: DOMAINS.FINANCE,
|
|
98
|
-
name: "Finance",
|
|
99
|
-
description: "Billing, invoicing, and financial operations",
|
|
100
|
-
color: "pink"
|
|
101
|
-
};
|
|
102
|
-
var EXECUTIVE_DOMAIN = {
|
|
103
|
-
id: DOMAINS.EXECUTIVE,
|
|
104
|
-
name: "Executive Operations",
|
|
105
|
-
description: "High-level business orchestration and decision-making",
|
|
106
|
-
color: "indigo"
|
|
107
|
-
};
|
|
108
|
-
var TESTING_DOMAIN = {
|
|
109
|
-
id: DOMAINS.TESTING,
|
|
110
|
-
name: "Testing",
|
|
111
|
-
description: "Test resources and development workflows",
|
|
112
|
-
color: "gray"
|
|
113
|
-
};
|
|
114
|
-
var INTERNAL_DOMAIN = {
|
|
115
|
-
id: DOMAINS.INTERNAL,
|
|
116
|
-
name: "Internal",
|
|
117
|
-
description: "Internal platform resources",
|
|
118
|
-
color: "dark"
|
|
119
|
-
};
|
|
120
|
-
var INTEGRATION_DOMAIN = {
|
|
121
|
-
id: DOMAINS.INTEGRATION,
|
|
122
|
-
name: "Integration",
|
|
123
|
-
description: "External service integrations",
|
|
124
|
-
color: "teal"
|
|
125
|
-
};
|
|
126
|
-
var INSTANTLY_DOMAIN = {
|
|
127
|
-
id: DOMAINS.INSTANTLY,
|
|
128
|
-
name: "Instantly Toolkit",
|
|
129
|
-
description: "Instantly campaign creation, analytics, and optimization",
|
|
130
|
-
color: "lime"
|
|
131
|
-
};
|
|
132
|
-
var UTILITY_DOMAIN = {
|
|
133
|
-
id: DOMAINS.UTILITY,
|
|
134
|
-
name: "Utility",
|
|
135
|
-
description: "Utility workflows for maintenance and diagnostics",
|
|
136
|
-
color: "grape"
|
|
137
|
-
};
|
|
138
|
-
var DIAGNOSTIC_DOMAIN = {
|
|
139
|
-
id: DOMAINS.DIAGNOSTIC,
|
|
140
|
-
name: "Diagnostic",
|
|
141
|
-
description: "Diagnostic workflows for testing integrations and services",
|
|
142
|
-
color: "yellow"
|
|
143
|
-
};
|
|
144
|
-
var DOMAIN_MAP = {
|
|
145
|
-
[DOMAINS.INBOUND_PIPELINE]: INBOUND_PIPELINE_DOMAIN,
|
|
146
|
-
[DOMAINS.LEAD_GEN_PIPELINE]: LEAD_GEN_PIPELINE_DOMAIN,
|
|
147
|
-
[DOMAINS.SUPPORT]: SUPPORT_DOMAIN,
|
|
148
|
-
[DOMAINS.CLIENT_SUPPORT]: CLIENT_SUPPORT_DOMAIN,
|
|
149
|
-
[DOMAINS.DELIVERY]: DELIVERY_DOMAIN,
|
|
150
|
-
[DOMAINS.OPERATIONS]: OPERATIONS_DOMAIN,
|
|
151
|
-
[DOMAINS.FINANCE]: FINANCE_DOMAIN,
|
|
152
|
-
[DOMAINS.EXECUTIVE]: EXECUTIVE_DOMAIN,
|
|
153
|
-
[DOMAINS.TESTING]: TESTING_DOMAIN,
|
|
154
|
-
[DOMAINS.INTERNAL]: INTERNAL_DOMAIN,
|
|
155
|
-
[DOMAINS.INSTANTLY]: INSTANTLY_DOMAIN,
|
|
156
|
-
[DOMAINS.INTEGRATION]: INTEGRATION_DOMAIN,
|
|
157
|
-
[DOMAINS.UTILITY]: UTILITY_DOMAIN,
|
|
158
|
-
[DOMAINS.DIAGNOSTIC]: DIAGNOSTIC_DOMAIN
|
|
159
|
-
};
|
|
160
|
-
|
|
161
41
|
// ../core/src/platform/registry/reserved.ts
|
|
162
42
|
var RESERVED_RESOURCE_IDS = /* @__PURE__ */ new Set(["command-center-assistant"]);
|
|
163
43
|
Array.from(RESERVED_RESOURCE_IDS);
|
|
@@ -2952,16 +2832,6 @@ function serializeAllOrganizations(registry) {
|
|
|
2952
2832
|
}
|
|
2953
2833
|
return cache;
|
|
2954
2834
|
}
|
|
2955
|
-
function deriveDomainDefinitions(resources) {
|
|
2956
|
-
const domainIds = /* @__PURE__ */ new Set();
|
|
2957
|
-
resources.workflows?.forEach((w) => w.config.domains?.forEach((d) => domainIds.add(d)));
|
|
2958
|
-
resources.agents?.forEach((a) => a.config.domains?.forEach((d) => domainIds.add(d)));
|
|
2959
|
-
resources.triggers?.forEach((t) => t.domains?.forEach((d) => domainIds.add(d)));
|
|
2960
|
-
resources.integrations?.forEach((i) => i.domains?.forEach((d) => domainIds.add(d)));
|
|
2961
|
-
resources.externalResources?.forEach((e) => e.domains?.forEach((d) => domainIds.add(d)));
|
|
2962
|
-
resources.humanCheckpoints?.forEach((h) => h.domains?.forEach((d) => domainIds.add(d)));
|
|
2963
|
-
return Array.from(domainIds).map((id) => DOMAIN_MAP[id]);
|
|
2964
|
-
}
|
|
2965
2835
|
function serializeOrganization(resources) {
|
|
2966
2836
|
const workflowDefinitions = /* @__PURE__ */ new Map();
|
|
2967
2837
|
const workflowResources = [];
|
|
@@ -2976,7 +2846,9 @@ function serializeOrganization(resources) {
|
|
|
2976
2846
|
description: workflow.config.description,
|
|
2977
2847
|
version: workflow.config.version,
|
|
2978
2848
|
type: "workflow",
|
|
2979
|
-
status: workflow.config.status
|
|
2849
|
+
status: workflow.config.status,
|
|
2850
|
+
links: workflow.config.links,
|
|
2851
|
+
category: workflow.config.category
|
|
2980
2852
|
});
|
|
2981
2853
|
commandViewWorkflows.push({
|
|
2982
2854
|
resourceId,
|
|
@@ -2985,7 +2857,8 @@ function serializeOrganization(resources) {
|
|
|
2985
2857
|
version: workflow.config.version,
|
|
2986
2858
|
type: "workflow",
|
|
2987
2859
|
status: workflow.config.status,
|
|
2988
|
-
|
|
2860
|
+
links: workflow.config.links,
|
|
2861
|
+
category: workflow.config.category,
|
|
2989
2862
|
stepCount: Object.keys(workflow.steps).length,
|
|
2990
2863
|
entryPoint: workflow.entryPoint
|
|
2991
2864
|
});
|
|
@@ -3003,7 +2876,9 @@ function serializeOrganization(resources) {
|
|
|
3003
2876
|
description: agent.config.description,
|
|
3004
2877
|
version: agent.config.version,
|
|
3005
2878
|
type: "agent",
|
|
3006
|
-
status: agent.config.status
|
|
2879
|
+
status: agent.config.status,
|
|
2880
|
+
links: agent.config.links,
|
|
2881
|
+
category: agent.config.category
|
|
3007
2882
|
});
|
|
3008
2883
|
commandViewAgents.push({
|
|
3009
2884
|
resourceId,
|
|
@@ -3012,7 +2887,8 @@ function serializeOrganization(resources) {
|
|
|
3012
2887
|
version: agent.config.version,
|
|
3013
2888
|
type: "agent",
|
|
3014
2889
|
status: agent.config.status,
|
|
3015
|
-
|
|
2890
|
+
links: agent.config.links,
|
|
2891
|
+
category: agent.config.category,
|
|
3016
2892
|
modelProvider: agent.modelConfig.provider,
|
|
3017
2893
|
modelId: agent.modelConfig.model,
|
|
3018
2894
|
toolCount: agent.tools.length,
|
|
@@ -3026,7 +2902,6 @@ function serializeOrganization(resources) {
|
|
|
3026
2902
|
const integrations = resources.integrations ?? [];
|
|
3027
2903
|
const externalResources = resources.externalResources ?? [];
|
|
3028
2904
|
const humanCheckpoints = resources.humanCheckpoints ?? [];
|
|
3029
|
-
const domainDefinitions = deriveDomainDefinitions(resources);
|
|
3030
2905
|
return {
|
|
3031
2906
|
version: resources.version,
|
|
3032
2907
|
resources: {
|
|
@@ -3045,8 +2920,7 @@ function serializeOrganization(resources) {
|
|
|
3045
2920
|
integrations,
|
|
3046
2921
|
externalResources,
|
|
3047
2922
|
humanCheckpoints,
|
|
3048
|
-
edges
|
|
3049
|
-
domainDefinitions
|
|
2923
|
+
edges
|
|
3050
2924
|
},
|
|
3051
2925
|
triggers,
|
|
3052
2926
|
integrations,
|
|
@@ -3304,7 +3178,8 @@ var ResourceRegistry = class {
|
|
|
3304
3178
|
version: def.config.version,
|
|
3305
3179
|
type: def.config.type,
|
|
3306
3180
|
status: def.config.status,
|
|
3307
|
-
|
|
3181
|
+
links: def.config.links,
|
|
3182
|
+
category: def.config.category,
|
|
3308
3183
|
origin: this.remoteResources.has(`${organizationName}/${def.config.resourceId}`) ? "remote" : "local"
|
|
3309
3184
|
})).filter((resource) => !environment || resource.status === environment);
|
|
3310
3185
|
const agents = (orgResources.agents || []).map((def) => ({
|
|
@@ -3314,7 +3189,8 @@ var ResourceRegistry = class {
|
|
|
3314
3189
|
version: def.config.version,
|
|
3315
3190
|
type: def.config.type,
|
|
3316
3191
|
status: def.config.status,
|
|
3317
|
-
|
|
3192
|
+
links: def.config.links,
|
|
3193
|
+
category: def.config.category,
|
|
3318
3194
|
sessionCapable: def.config.sessionCapable ?? false,
|
|
3319
3195
|
origin: this.remoteResources.has(`${organizationName}/${def.config.resourceId}`) ? "remote" : "local"
|
|
3320
3196
|
})).filter((resource) => !environment || resource.status === environment);
|