thinkwork-cli 0.13.0 → 0.13.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/dist/{api-client-JUBCQQDF.js → api-client-JYZXYQJR.js} +3 -1
- package/dist/bowser-6Z6JFAIR.js +2822 -0
- package/dist/chunk-DV3MRBR5.js +43 -0
- package/dist/chunk-DVPBI5HM.js +1728 -0
- package/dist/chunk-EI5ZX7CN.js +522 -0
- package/dist/chunk-EUJ7X6YD.js +126 -0
- package/dist/chunk-GG5WKBOX.js +436 -0
- package/dist/chunk-I64EZSU5.js +358 -0
- package/dist/chunk-ILZKG5WV.js +6151 -0
- package/dist/chunk-KMIJ5KGT.js +128 -0
- package/dist/chunk-OCPHU34C.js +996 -0
- package/dist/chunk-QOERT44A.js +3286 -0
- package/dist/chunk-XYM7PE2A.js +2264 -0
- package/dist/{chunk-STY44FQO.js → chunk-Z2F6RJFR.js} +12 -18
- package/dist/cli.js +72564 -18884
- package/dist/dist-es-CRV46D5B.js +315 -0
- package/dist/dist-es-DCY4IC3Y.js +2000 -0
- package/dist/dist-es-ENBUC3JP.js +14726 -0
- package/dist/dist-es-G54LBMRN.js +48 -0
- package/dist/dist-es-G7PTG75M.js +176 -0
- package/dist/dist-es-GKDBE7E6.js +88 -0
- package/dist/dist-es-HY3535OI.js +70 -0
- package/dist/dist-es-KL7Y5NB2.js +377 -0
- package/dist/dist-es-LDE437AM.js +170 -0
- package/dist/dist-es-P26FWFLT.js +485 -0
- package/dist/dist-es-Q57SZXZ7.js +70 -0
- package/dist/dist-es-R7FGL2IB.js +88 -0
- package/dist/dist-es-USORBXZ5.js +318 -0
- package/dist/dist-es-ZKC2QKD2.js +377 -0
- package/dist/drizzle/0076_scheduled_jobs_marco_backfill.sql +2 -1
- package/dist/drizzle/0079_seed_tenant_customize_catalog.sql +1 -0
- package/dist/drizzle/0090_brain_schema_extraction.sql +10 -0
- package/dist/drizzle/0132_drop_computer_tables.sql +3 -0
- package/dist/drizzle/0160_compliance_event_types_plugins.sql +2 -0
- package/dist/drizzle/0214_think137_drop_judge_evidence_roi.sql +1 -0
- package/dist/drizzle/0216_drop_agent_loop_versions_goal_worker_policy.sql +1 -0
- package/dist/drizzle/0227_analyst_reader_role.sql +106 -38
- package/dist/drizzle/0230_analyst_rls.sql +192 -66
- package/dist/drizzle/0232_memory_source_thin_ledger.sql +176 -0
- package/dist/drizzle/0232_message_source_event_id.sql +9 -0
- package/dist/drizzle/0233_msteams_install_and_links.sql +151 -0
- package/dist/drizzle/0233_workflow_memory_stage_tokens.sql +20 -0
- package/dist/drizzle/0234_memory_claim_lifecycle.sql +160 -0
- package/dist/drizzle/0235_workflow_token_execution_claim.sql +34 -0
- package/dist/drizzle/0236_memory_retraction_fencing.sql +50 -0
- package/dist/drizzle/0237_memory_claims_active_value_uidx.sql +172 -0
- package/dist/drizzle/0238_memory_erase_generation_fence.sql +97 -0
- package/dist/drizzle/0239_canonical_entity_identity.sql +257 -0
- package/dist/drizzle/0240_memory_personal_scope.sql +45 -0
- package/dist/drizzle/0241_knowledge_base_document_manifest.sql +67 -0
- package/dist/drizzle/0242_search_queries.sql +28 -0
- package/dist/drizzle/0243_section_sources_thread_refs.sql +12 -0
- package/dist/drizzle/0244_system_automations_and_memory_stage_overrides.sql +45 -0
- package/dist/drizzle/0245_wiki_page_render.sql +21 -0
- package/dist/drizzle/0246_automation_workflow_ownership.sql +30 -0
- package/dist/drizzle/0247_capability_runtime.sql +402 -0
- package/dist/drizzle/0248_capability_private_interpreter.sql +13 -0
- package/dist/drizzle/0249_capability_headless_execution_evidence.sql +40 -0
- package/dist/drizzle/0250_kg_schema_extraction.sql +576 -0
- package/dist/drizzle/0251_agents_json_render_ui.sql +25 -0
- package/dist/drizzle/0251_brain_stragglers.sql +263 -0
- package/dist/drizzle/0252_drop_kg_and_straggler_compat_views.sql +100 -0
- package/dist/drizzle/0253_drop_brain_substrate.sql +93 -0
- package/dist/drizzle/0254_capability_autonomous_admission.sql +29 -0
- package/dist/drizzle/0255_capability_autonomous_approval_mode.sql +16 -0
- package/dist/drizzle/0256_agent_profile_manifest_authority.sql +18 -0
- package/dist/drizzle/0257_agents_runtime_allow_harness.sql +24 -0
- package/dist/drizzle/0257_capability_approvals.sql +53 -0
- package/dist/drizzle/0258_pending_tool_approvals.sql +84 -0
- package/dist/drizzle/0259_tenant_capability_registry_trust.sql +19 -0
- package/dist/drizzle/0260_scheduled_jobs_run_as_user.sql +20 -0
- package/dist/drizzle/0261_managed_harness_multiplayer.sql +313 -0
- package/dist/drizzle/0261_native_auth_control_plane.sql +328 -0
- package/dist/drizzle/0262_auth_subscription_tickets.sql +59 -0
- package/dist/drizzle/0262_parallel_harness_threads.sql +9 -0
- package/dist/drizzle/0263_agentcore_runtime_identifier.sql +69 -0
- package/dist/drizzle/0263_drop_workos_auth_runtime.sql +236 -0
- package/dist/drizzle/0264_auth_enrollment_attempt_limits.sql +15 -0
- package/dist/drizzle/0264_harness_tool_execution_ledger.sql +113 -0
- package/dist/drizzle/0265_eval_runs_requester_identity.sql +28 -0
- package/dist/drizzle/0265_require_fully_valid_auth_publication.sql +27 -0
- package/dist/drizzle/0266_auth_identity_recovery_grants.sql +9 -0
- package/dist/drizzle/0266_eval_profiles_runtime_type.sql +12 -0
- package/dist/drizzle/0267_ontology_candidate_rejections.sql +53 -0
- package/dist/drizzle/0268_identity_crosswalk_routing.sql +182 -0
- package/dist/drizzle/0269_ontology_system_map.sql +31 -0
- package/dist/event-streams-7JNLJEEL.js +894 -0
- package/dist/event-streams-KDF5RWR6.js +1515 -0
- package/dist/loadSso-DJVB7BXE.js +576 -0
- package/dist/loadSso-JAMNA3WY.js +583 -0
- package/dist/plugins/catalog/package.json +1 -2
- package/dist/plugins/catalog/src/__tests__/build-catalog.test.ts +0 -1
- package/dist/plugins/catalog/src/__tests__/contracts.test.ts +0 -69
- package/dist/plugins/catalog/src/__tests__/plugin-package.test.ts +0 -2
- package/dist/plugins/catalog/src/__tests__/plugin-registry.test.ts +0 -5
- package/dist/plugins/catalog/src/contracts.ts +2 -179
- package/dist/plugins/catalog/src/registry/generated-first-party.ts +0 -6
- package/dist/signin-UGDWTGS4.js +821 -0
- package/dist/sso-oidc-Q4VXANXY.js +837 -0
- package/dist/sts-CWLSE3GH.js +1241 -0
- package/dist/sts-DNZLNVOV.js +1245 -0
- package/dist/terraform/examples/greenfield/main.tf +247 -50
- package/dist/terraform/examples/greenfield/terraform.tfvars.example +15 -1
- package/dist/terraform/modules/app/agentcore-admin/main.tf +341 -0
- package/dist/terraform/modules/app/agentcore-admin/outputs.tf +20 -0
- package/dist/terraform/modules/app/agentcore-code-interpreter/main.tf +61 -0
- package/dist/terraform/modules/app/agentcore-gateway/main.tf +305 -0
- package/dist/terraform/modules/app/agentcore-gateway/outputs.tf +44 -0
- package/dist/terraform/modules/app/agentcore-gateway/scripts/delete_gateway.sh +93 -0
- package/dist/terraform/modules/app/agentcore-gateway/scripts/read_gateway.sh +33 -0
- package/dist/terraform/modules/app/agentcore-gateway/scripts/reconcile_gateway.sh +543 -0
- package/dist/terraform/modules/app/agentcore-gateway/variables.tf +70 -0
- package/dist/terraform/modules/app/agentcore-harness/main.tf +330 -0
- package/dist/terraform/modules/app/agentcore-harness/outputs.tf +72 -0
- package/dist/terraform/modules/app/agentcore-harness/scripts/delete_harness.sh +5 -0
- package/dist/terraform/modules/app/agentcore-harness/scripts/harness-lifecycle.mjs +430 -0
- package/dist/terraform/modules/app/agentcore-harness/scripts/harness-readback.mjs +180 -0
- package/dist/terraform/modules/app/agentcore-harness/scripts/harness-tool-contract.mjs +193 -0
- package/dist/terraform/modules/app/agentcore-harness/scripts/prune_harness.sh +5 -0
- package/dist/terraform/modules/app/agentcore-harness/scripts/read_harness.sh +5 -0
- package/dist/terraform/modules/app/agentcore-harness/scripts/reconcile_harness.sh +5 -0
- package/dist/terraform/modules/app/agentcore-harness/variables.tf +96 -0
- package/dist/terraform/modules/app/agentcore-identity/main.tf +173 -0
- package/dist/terraform/modules/app/agentcore-identity/outputs.tf +51 -0
- package/dist/terraform/modules/app/agentcore-identity/scripts/bootstrap_twenty_oauth_client.sh +122 -0
- package/dist/terraform/modules/app/agentcore-identity/scripts/delete_identity.sh +25 -0
- package/dist/terraform/modules/app/agentcore-identity/scripts/delete_twenty_identity.sh +16 -0
- package/dist/terraform/modules/app/agentcore-identity/scripts/read_identity.sh +40 -0
- package/dist/terraform/modules/app/agentcore-identity/scripts/reconcile_identity.sh +73 -0
- package/dist/terraform/modules/app/agentcore-identity/scripts/reconcile_twenty_identity.sh +74 -0
- package/dist/terraform/modules/app/agentcore-identity/scripts/reconcile_twenty_provider.mjs +61 -0
- package/dist/terraform/modules/app/agentcore-identity/variables.tf +54 -0
- package/dist/terraform/modules/app/agentcore-pi/main.tf +7 -0
- package/dist/terraform/modules/app/appsync-subscriptions/main.tf +127 -21
- package/dist/terraform/modules/app/appsync-subscriptions/outputs.tf +0 -6
- package/dist/terraform/modules/app/appsync-subscriptions/variables.tf +5 -0
- package/dist/terraform/modules/app/capability-broker/main.tf +393 -0
- package/dist/terraform/modules/app/capability-broker/outputs.tf +54 -0
- package/dist/terraform/modules/app/capability-broker/variables.tf +98 -0
- package/dist/terraform/modules/app/deployment-control-plane/runner.py +1011 -31
- package/dist/terraform/modules/app/deployment-control-plane/test_runner_bundle.py +655 -2
- package/dist/terraform/modules/app/lambda-api/agentcore-harness-alarms.tf +88 -0
- package/dist/terraform/modules/app/lambda-api/agentcore-identity-alarms.tf +91 -0
- package/dist/terraform/modules/app/lambda-api/capability-search-alarms.tf +60 -0
- package/dist/terraform/modules/app/lambda-api/handlers.tf +606 -37
- package/dist/terraform/modules/app/lambda-api/iam-grouped.tf +192 -21
- package/dist/terraform/modules/app/lambda-api/main.tf +35 -0
- package/dist/terraform/modules/app/lambda-api/mcp-oauth.tf +181 -4
- package/dist/terraform/modules/app/lambda-api/memory-alarms.tf +92 -0
- package/dist/terraform/modules/app/lambda-api/msteams-app-secrets.tf +46 -0
- package/dist/terraform/modules/app/lambda-api/outputs.tf +35 -0
- package/dist/terraform/modules/app/lambda-api/runtime-config.tf +3 -21
- package/dist/terraform/modules/app/lambda-api/variables.tf +188 -3
- package/dist/terraform/modules/app/workflow-interpreter-stepfunctions/alarms.tf +47 -0
- package/dist/terraform/modules/app/workflow-interpreter-stepfunctions/main.tf +43 -2
- package/dist/terraform/modules/foundation/cognito/main.tf +319 -73
- package/dist/terraform/modules/foundation/cognito/outputs.tf +42 -0
- package/dist/terraform/modules/foundation/cognito/variables.tf +124 -2
- package/dist/terraform/modules/foundation/vpc/outputs.tf +5 -0
- package/dist/terraform/modules/thinkwork/main.tf +396 -26
- package/dist/terraform/modules/thinkwork/outputs.tf +188 -5
- package/dist/terraform/modules/thinkwork/variables.tf +154 -5
- package/dist/terraform/schema.graphql +69 -36
- package/dist/workspace-defaults/files/TOOLS.md +39 -0
- package/dist/workspace-defaults/files/USER.md +1 -0
- package/dist/workspace-defaults/files/agents/analyst/INSTRUCTIONS.md +18 -0
- package/dist/workspace-defaults/files/agents/coding/INSTRUCTIONS.md +11 -0
- package/dist/workspace-defaults/files/agents/research/INSTRUCTIONS.md +12 -0
- package/dist/workspace-defaults/files/agents/reviewer/INSTRUCTIONS.md +15 -0
- package/dist/workspace-defaults/files/skills/document-composer/SKILL.md +6 -2
- package/package.json +6 -3
- package/dist/plugins/workos-auth/package.json +0 -22
- package/dist/plugins/workos-auth/src/index.ts +0 -30
- package/dist/plugins/workos-auth/src/manifest.ts +0 -40
- package/dist/plugins/workos-auth/src/provider-contract.ts +0 -39
- package/dist/plugins/workos-auth/test/manifest.test.ts +0 -94
- package/dist/plugins/workos-auth/tsconfig.json +0 -8
- /package/dist/workspace-defaults/files/{AGENTS.md → INSTRUCTIONS.md} +0 -0
|
@@ -8,7 +8,6 @@
|
|
|
8
8
|
* - `skills` — bundled skill folders seeded into the tenant catalog
|
|
9
9
|
* - `infrastructure` — a managed-app Terraform deployment
|
|
10
10
|
* - `ui-surface` — declared or launchable UI identity
|
|
11
|
-
* - `auth-provider` — declared/admin-configured login federation capability
|
|
12
11
|
*
|
|
13
12
|
* Capability declarations are catalog metadata, not install lifecycle
|
|
14
13
|
* components. They let a plugin advertise channel contracts whose runtime is
|
|
@@ -34,7 +33,6 @@ export const PLUGIN_COMPONENT_TYPES = [
|
|
|
34
33
|
"skills",
|
|
35
34
|
"infrastructure",
|
|
36
35
|
"ui-surface",
|
|
37
|
-
"auth-provider",
|
|
38
36
|
] as const;
|
|
39
37
|
|
|
40
38
|
export type PluginComponentType = (typeof PLUGIN_COMPONENT_TYPES)[number];
|
|
@@ -294,59 +292,11 @@ export interface UiSurfaceLaunchMetadata {
|
|
|
294
292
|
entitlementProductKey?: string;
|
|
295
293
|
}
|
|
296
294
|
|
|
297
|
-
export const AUTH_PROVIDER_KEYS = ["workos"] as const;
|
|
298
|
-
|
|
299
|
-
export type AuthProviderKey = (typeof AUTH_PROVIDER_KEYS)[number];
|
|
300
|
-
|
|
301
|
-
export const AUTH_PROVIDER_CONFIG_FIELD_STORAGE = [
|
|
302
|
-
"metadata",
|
|
303
|
-
"secret-ref",
|
|
304
|
-
] as const;
|
|
305
|
-
|
|
306
|
-
export type AuthProviderConfigFieldStorage =
|
|
307
|
-
(typeof AUTH_PROVIDER_CONFIG_FIELD_STORAGE)[number];
|
|
308
|
-
|
|
309
|
-
export interface AuthProviderConfigField {
|
|
310
|
-
/** Operator-facing input key; values are never present in the manifest. */
|
|
311
|
-
key: string;
|
|
312
|
-
displayName: string;
|
|
313
|
-
required: boolean;
|
|
314
|
-
/**
|
|
315
|
-
* metadata: non-secret config such as issuer/client id.
|
|
316
|
-
* secret-ref: stored only as an operator-managed secret reference.
|
|
317
|
-
*/
|
|
318
|
-
storage: AuthProviderConfigFieldStorage;
|
|
319
|
-
}
|
|
320
|
-
|
|
321
|
-
export interface AuthProviderPublicOption {
|
|
322
|
-
/**
|
|
323
|
-
* Public-safe option key. For the U1-approved fallback this is `sso`; do not
|
|
324
|
-
* use provider-specific Google/Microsoft keys unless routing evidence exists.
|
|
325
|
-
*/
|
|
326
|
-
key: string;
|
|
327
|
-
displayName: string;
|
|
328
|
-
providerSpecific: boolean;
|
|
329
|
-
recommended?: boolean;
|
|
330
|
-
}
|
|
331
|
-
|
|
332
|
-
export interface AuthProviderComponent {
|
|
333
|
-
type: "auth-provider";
|
|
334
|
-
key: string;
|
|
335
|
-
displayName: string;
|
|
336
|
-
provider: AuthProviderKey;
|
|
337
|
-
settingsSurface: string;
|
|
338
|
-
/** Cognito IdP name the validated bridge will use; not a secret. */
|
|
339
|
-
cognitoIdentityProviderName: string;
|
|
340
|
-
configFields: AuthProviderConfigField[];
|
|
341
|
-
publicOptions: AuthProviderPublicOption[];
|
|
342
|
-
}
|
|
343
|
-
|
|
344
295
|
export type PluginComponent =
|
|
345
296
|
| McpServerComponent
|
|
346
297
|
| SkillsComponent
|
|
347
298
|
| InfrastructureComponent
|
|
348
|
-
| UiSurfaceComponent
|
|
349
|
-
| AuthProviderComponent;
|
|
299
|
+
| UiSurfaceComponent;
|
|
350
300
|
|
|
351
301
|
export interface EmailChannelProviderOption {
|
|
352
302
|
key: EmailChannelProviderKey;
|
|
@@ -566,12 +516,6 @@ function validatePluginVersion(value: unknown, pluginKey: string): void {
|
|
|
566
516
|
case "ui-surface":
|
|
567
517
|
validateUiSurfaceComponent(component as UiSurfaceComponent, label);
|
|
568
518
|
break;
|
|
569
|
-
case "auth-provider":
|
|
570
|
-
validateAuthProviderComponent(
|
|
571
|
-
component as AuthProviderComponent,
|
|
572
|
-
label,
|
|
573
|
-
);
|
|
574
|
-
break;
|
|
575
519
|
}
|
|
576
520
|
}
|
|
577
521
|
|
|
@@ -1443,131 +1387,10 @@ function validateUiSurfaceLaunchMetadata(
|
|
|
1443
1387
|
}
|
|
1444
1388
|
}
|
|
1445
1389
|
|
|
1446
|
-
function validateAuthProviderComponent(
|
|
1447
|
-
component: Partial<AuthProviderComponent>,
|
|
1448
|
-
label: string,
|
|
1449
|
-
): void {
|
|
1450
|
-
const prefix = `${label}: auth-provider "${component.key}"`;
|
|
1451
|
-
requireString(component.displayName, `${prefix}.displayName`);
|
|
1452
|
-
if (
|
|
1453
|
-
typeof component.provider !== "string" ||
|
|
1454
|
-
!(AUTH_PROVIDER_KEYS as readonly string[]).includes(component.provider)
|
|
1455
|
-
) {
|
|
1456
|
-
throw new PluginManifestError(
|
|
1457
|
-
`${prefix}.provider "${String(component.provider)}" is not supported`,
|
|
1458
|
-
);
|
|
1459
|
-
}
|
|
1460
|
-
requireString(component.settingsSurface, `${prefix}.settingsSurface`);
|
|
1461
|
-
requireString(
|
|
1462
|
-
component.cognitoIdentityProviderName,
|
|
1463
|
-
`${prefix}.cognitoIdentityProviderName`,
|
|
1464
|
-
);
|
|
1465
|
-
|
|
1466
|
-
if (
|
|
1467
|
-
!Array.isArray(component.configFields) ||
|
|
1468
|
-
component.configFields.length === 0
|
|
1469
|
-
) {
|
|
1470
|
-
throw new PluginManifestError(
|
|
1471
|
-
`${prefix}.configFields must be a non-empty array`,
|
|
1472
|
-
);
|
|
1473
|
-
}
|
|
1474
|
-
const seenConfigKeys = new Set<string>();
|
|
1475
|
-
for (const [index, field] of component.configFields.entries()) {
|
|
1476
|
-
const fieldPrefix = `${prefix}.configFields[${index}]`;
|
|
1477
|
-
if (!field || typeof field !== "object" || Array.isArray(field)) {
|
|
1478
|
-
throw new PluginManifestError(`${fieldPrefix} must be an object`);
|
|
1479
|
-
}
|
|
1480
|
-
rejectManifestValueCarrier(
|
|
1481
|
-
field as unknown as Record<string, unknown>,
|
|
1482
|
-
fieldPrefix,
|
|
1483
|
-
);
|
|
1484
|
-
requireString(field.key, `${fieldPrefix}.key`);
|
|
1485
|
-
if (!CREDENTIAL_KEY_RE.test(field.key)) {
|
|
1486
|
-
throw new PluginManifestError(
|
|
1487
|
-
`${fieldPrefix}.key "${field.key}" must match ${CREDENTIAL_KEY_RE.source}`,
|
|
1488
|
-
);
|
|
1489
|
-
}
|
|
1490
|
-
if (seenConfigKeys.has(field.key)) {
|
|
1491
|
-
throw new PluginManifestError(
|
|
1492
|
-
`${prefix}.configFields declares duplicate key "${field.key}"`,
|
|
1493
|
-
);
|
|
1494
|
-
}
|
|
1495
|
-
seenConfigKeys.add(field.key);
|
|
1496
|
-
requireString(field.displayName, `${fieldPrefix}.displayName`);
|
|
1497
|
-
if (typeof field.required !== "boolean") {
|
|
1498
|
-
throw new PluginManifestError(
|
|
1499
|
-
`${fieldPrefix}.required must be a boolean`,
|
|
1500
|
-
);
|
|
1501
|
-
}
|
|
1502
|
-
if (
|
|
1503
|
-
!(AUTH_PROVIDER_CONFIG_FIELD_STORAGE as readonly string[]).includes(
|
|
1504
|
-
field.storage,
|
|
1505
|
-
)
|
|
1506
|
-
) {
|
|
1507
|
-
throw new PluginManifestError(
|
|
1508
|
-
`${fieldPrefix}.storage must be one of ${AUTH_PROVIDER_CONFIG_FIELD_STORAGE.join(", ")}`,
|
|
1509
|
-
);
|
|
1510
|
-
}
|
|
1511
|
-
}
|
|
1512
|
-
|
|
1513
|
-
if (
|
|
1514
|
-
!Array.isArray(component.publicOptions) ||
|
|
1515
|
-
component.publicOptions.length === 0
|
|
1516
|
-
) {
|
|
1517
|
-
throw new PluginManifestError(
|
|
1518
|
-
`${prefix}.publicOptions must be a non-empty array`,
|
|
1519
|
-
);
|
|
1520
|
-
}
|
|
1521
|
-
const seenOptionKeys = new Set<string>();
|
|
1522
|
-
let recommendedCount = 0;
|
|
1523
|
-
for (const [index, option] of component.publicOptions.entries()) {
|
|
1524
|
-
const optionPrefix = `${prefix}.publicOptions[${index}]`;
|
|
1525
|
-
if (!option || typeof option !== "object" || Array.isArray(option)) {
|
|
1526
|
-
throw new PluginManifestError(`${optionPrefix} must be an object`);
|
|
1527
|
-
}
|
|
1528
|
-
rejectManifestValueCarrier(
|
|
1529
|
-
option as unknown as Record<string, unknown>,
|
|
1530
|
-
optionPrefix,
|
|
1531
|
-
);
|
|
1532
|
-
requireString(option.key, `${optionPrefix}.key`);
|
|
1533
|
-
if (!SLUG_RE.test(option.key)) {
|
|
1534
|
-
throw new PluginManifestError(
|
|
1535
|
-
`${optionPrefix}.key "${option.key}" must match ${SLUG_RE.source}`,
|
|
1536
|
-
);
|
|
1537
|
-
}
|
|
1538
|
-
if (seenOptionKeys.has(option.key)) {
|
|
1539
|
-
throw new PluginManifestError(
|
|
1540
|
-
`${prefix}.publicOptions declares duplicate key "${option.key}"`,
|
|
1541
|
-
);
|
|
1542
|
-
}
|
|
1543
|
-
seenOptionKeys.add(option.key);
|
|
1544
|
-
requireString(option.displayName, `${optionPrefix}.displayName`);
|
|
1545
|
-
if (typeof option.providerSpecific !== "boolean") {
|
|
1546
|
-
throw new PluginManifestError(
|
|
1547
|
-
`${optionPrefix}.providerSpecific must be a boolean`,
|
|
1548
|
-
);
|
|
1549
|
-
}
|
|
1550
|
-
if (
|
|
1551
|
-
option.recommended !== undefined &&
|
|
1552
|
-
typeof option.recommended !== "boolean"
|
|
1553
|
-
) {
|
|
1554
|
-
throw new PluginManifestError(
|
|
1555
|
-
`${optionPrefix}.recommended must be a boolean`,
|
|
1556
|
-
);
|
|
1557
|
-
}
|
|
1558
|
-
if (option.recommended === true) recommendedCount += 1;
|
|
1559
|
-
}
|
|
1560
|
-
if (recommendedCount !== 1) {
|
|
1561
|
-
throw new PluginManifestError(
|
|
1562
|
-
`${prefix}.publicOptions must declare exactly one recommended option`,
|
|
1563
|
-
);
|
|
1564
|
-
}
|
|
1565
|
-
}
|
|
1566
|
-
|
|
1567
1390
|
function rejectManifestValueCarrier(
|
|
1568
1391
|
value: Record<string, unknown>,
|
|
1569
1392
|
prefix: string,
|
|
1570
|
-
context = "
|
|
1393
|
+
context = "plugin manifests",
|
|
1571
1394
|
): void {
|
|
1572
1395
|
for (const key of ["value", "secret", "defaultValue", "currentValue"]) {
|
|
1573
1396
|
if (Object.prototype.hasOwnProperty.call(value, key)) {
|
|
@@ -10,7 +10,6 @@ import { lastmilePluginPackage as rawLastmilePluginPackage } from "@thinkwork/pl
|
|
|
10
10
|
import { n8nPluginPackage as rawN8nPluginPackage } from "@thinkwork/plugin-n8n";
|
|
11
11
|
import { sendgridPluginPackage as rawSendgridPluginPackage } from "@thinkwork/plugin-sendgrid";
|
|
12
12
|
import { twentyPluginPackage as rawTwentyPluginPackage } from "@thinkwork/plugin-twenty";
|
|
13
|
-
import { workosAuthPluginPackage as rawWorkosAuthPluginPackage } from "@thinkwork/plugin-workos-auth";
|
|
14
13
|
|
|
15
14
|
export const companyDataPluginPackage = defineFirstPartyPluginPackage(
|
|
16
15
|
rawCompanyDataPluginPackage,
|
|
@@ -33,9 +32,6 @@ export const sendgridPluginPackage = defineFirstPartyPluginPackage(
|
|
|
33
32
|
export const twentyPluginPackage = defineFirstPartyPluginPackage(
|
|
34
33
|
rawTwentyPluginPackage,
|
|
35
34
|
);
|
|
36
|
-
export const workosAuthPluginPackage = defineFirstPartyPluginPackage(
|
|
37
|
-
rawWorkosAuthPluginPackage,
|
|
38
|
-
);
|
|
39
35
|
|
|
40
36
|
export const companyDataManifest = companyDataPluginPackage.manifest;
|
|
41
37
|
export const companyEtlManifest = companyEtlPluginPackage.manifest;
|
|
@@ -44,7 +40,6 @@ export const lastmileManifest = lastmilePluginPackage.manifest;
|
|
|
44
40
|
export const n8nManifest = n8nPluginPackage.manifest;
|
|
45
41
|
export const sendgridManifest = sendgridPluginPackage.manifest;
|
|
46
42
|
export const twentyManifest = twentyPluginPackage.manifest;
|
|
47
|
-
export const workosAuthManifest = workosAuthPluginPackage.manifest;
|
|
48
43
|
|
|
49
44
|
export const firstPartyPluginPackages = [
|
|
50
45
|
companyDataPluginPackage,
|
|
@@ -54,7 +49,6 @@ export const firstPartyPluginPackages = [
|
|
|
54
49
|
n8nPluginPackage,
|
|
55
50
|
sendgridPluginPackage,
|
|
56
51
|
twentyPluginPackage,
|
|
57
|
-
workosAuthPluginPackage,
|
|
58
52
|
] as const;
|
|
59
53
|
|
|
60
54
|
/**
|