@pikku/addon-console 0.12.26 → 0.12.27
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/.pikku/addon/pikku-addon-types.gen.d.ts +1 -1
- package/dist/.pikku/addon/pikku-addon-types.gen.js +1 -1
- package/dist/.pikku/addon/pikku-package.gen.js +2 -2
- package/dist/.pikku/addon/pikku-package.gen.js.map +1 -1
- package/dist/.pikku/agent/pikku-agent-map.gen.d.ts +1 -1
- package/dist/.pikku/agent/pikku-agent-types.gen.d.ts +3 -2
- package/dist/.pikku/agent/pikku-agent-types.gen.d.ts.map +1 -1
- package/dist/.pikku/agent/pikku-agent-types.gen.js.map +1 -1
- package/dist/.pikku/auth/auth.types.d.ts +1 -1
- package/dist/.pikku/auth/auth.types.js +1 -1
- package/dist/.pikku/channel/pikku-channel-types.gen.d.ts +1 -1
- package/dist/.pikku/channel/pikku-channel-types.gen.js +1 -1
- package/dist/.pikku/console/pikku-node-types.gen.d.ts +1 -1
- package/dist/.pikku/function/pikku-function-types.gen.d.ts +9 -15
- package/dist/.pikku/function/pikku-function-types.gen.d.ts.map +1 -1
- package/dist/.pikku/function/pikku-function-types.gen.js +3 -12
- package/dist/.pikku/function/pikku-function-types.gen.js.map +1 -1
- package/dist/.pikku/function/pikku-functions-meta.gen.js +1 -1
- package/dist/.pikku/function/pikku-functions-meta.gen.json +368 -175
- package/dist/.pikku/function/pikku-functions.gen.js +27 -13
- package/dist/.pikku/function/pikku-functions.gen.js.map +1 -1
- package/dist/.pikku/http/pikku-http-types.gen.d.ts +2 -24
- package/dist/.pikku/http/pikku-http-types.gen.d.ts.map +1 -1
- package/dist/.pikku/http/pikku-http-types.gen.js +2 -24
- package/dist/.pikku/http/pikku-http-types.gen.js.map +1 -1
- package/dist/.pikku/mcp/pikku-mcp-types.gen.d.ts +1 -1
- package/dist/.pikku/mcp/pikku-mcp-types.gen.js +1 -1
- package/dist/.pikku/pikku-bootstrap.gen.d.ts +1 -1
- package/dist/.pikku/pikku-bootstrap.gen.js +1 -1
- package/dist/.pikku/pikku-meta-service.gen.d.ts +1 -1
- package/dist/.pikku/pikku-meta-service.gen.js +1 -1
- package/dist/.pikku/pikku-services.gen.d.ts +6 -4
- package/dist/.pikku/pikku-services.gen.d.ts.map +1 -1
- package/dist/.pikku/pikku-services.gen.js +4 -2
- package/dist/.pikku/pikku-services.gen.js.map +1 -1
- package/dist/.pikku/pikku-types.gen.d.ts +2 -1
- package/dist/.pikku/pikku-types.gen.d.ts.map +1 -1
- package/dist/.pikku/pikku-types.gen.js +3 -1
- package/dist/.pikku/pikku-types.gen.js.map +1 -1
- package/dist/.pikku/queue/pikku-queue-types.gen.d.ts +1 -1
- package/dist/.pikku/queue/pikku-queue-types.gen.js +1 -1
- package/dist/.pikku/rpc/pikku-rpc-wirings-map.gen.d.ts +43 -20
- package/dist/.pikku/rpc/pikku-rpc-wirings-map.internal.gen.d.ts +43 -20
- package/dist/.pikku/rpc/pikku-rpc-wirings-map.remote.gen.d.ts +200 -0
- package/dist/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.js +1 -1
- package/dist/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.json +13 -6
- package/dist/.pikku/scheduler/pikku-scheduler-types.gen.d.ts +1 -1
- package/dist/.pikku/scheduler/pikku-scheduler-types.gen.js +1 -1
- package/dist/.pikku/schemas/register.gen.js +49 -23
- package/dist/.pikku/schemas/register.gen.js.map +1 -1
- package/dist/.pikku/schemas/schemas/AddonPackageInfo.schema.json +1 -1
- package/dist/.pikku/schemas/schemas/AllMeta.schema.json +1 -1
- package/dist/.pikku/schemas/schemas/GetAddonInstancesInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/GetAddonInstancesOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/GetAddonMetaOutput.schema.json +1 -1
- package/dist/.pikku/schemas/schemas/GetFunctionsMetaOutput.schema.json +1 -1
- package/dist/.pikku/schemas/schemas/GetOpenapisOutput.schema.json +1 -1
- package/dist/.pikku/schemas/schemas/GetWebhookDeliveryInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/GetWorkflowMetaByIdOutput.schema.json +1 -1
- package/dist/.pikku/schemas/schemas/ListWebhookDeliveriesInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/ListWebhookDeliveriesOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/ScopeAddScopeToUserInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/ScopeAddScopeToUserOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/ScopeAddUserToRoleInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/ScopeAddUserToRoleOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/ScopeCreateRoleInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/ScopeCreateRoleOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/ScopeDeleteRoleInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/ScopeDeleteRoleOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/ScopeListDeclaredOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/ScopeListRolesOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/ScopeListUserRolesInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/ScopeListUserRolesOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/ScopeRemoveScopeFromUserInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/ScopeRemoveScopeFromUserOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/ScopeRemoveUserFromRoleInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/ScopeRemoveUserFromRoleOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/ScopeSetRoleScopesInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/ScopeSetRoleScopesOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/WebhookDeliveryWithAttempts.schema.json +1 -0
- package/dist/.pikku/scopes/pikku-scope-types.gen.d.ts +6 -0
- package/dist/.pikku/scopes/pikku-scope-types.gen.d.ts.map +1 -0
- package/dist/.pikku/scopes/pikku-scope-types.gen.js +5 -0
- package/dist/.pikku/scopes/pikku-scope-types.gen.js.map +1 -0
- package/dist/.pikku/scopes/pikku-scopes-meta.gen.json +21 -0
- package/dist/.pikku/scopes/pikku-scopes.gen.d.ts +36 -0
- package/dist/.pikku/scopes/pikku-scopes.gen.d.ts.map +1 -0
- package/dist/.pikku/scopes/pikku-scopes.gen.js +30 -0
- package/dist/.pikku/scopes/pikku-scopes.gen.js.map +1 -0
- package/dist/.pikku/secrets/pikku-secret-types.gen.d.ts +1 -1
- package/dist/.pikku/secrets/pikku-secret-types.gen.js +1 -1
- package/dist/.pikku/secrets/pikku-secrets-meta.gen.json +1 -0
- package/dist/.pikku/secrets/pikku-secrets.gen.d.ts +11 -1
- package/dist/.pikku/secrets/pikku-secrets.gen.d.ts.map +1 -1
- package/dist/.pikku/secrets/pikku-secrets.gen.js +11 -1
- package/dist/.pikku/secrets/pikku-secrets.gen.js.map +1 -1
- package/dist/.pikku/trigger/pikku-trigger-types.gen.d.ts +1 -1
- package/dist/.pikku/trigger/pikku-trigger-types.gen.js +1 -1
- package/dist/.pikku/variables/pikku-variable-types.gen.d.ts +1 -1
- package/dist/.pikku/variables/pikku-variable-types.gen.js +1 -1
- package/dist/.pikku/variables/pikku-variables-meta.gen.json +1 -0
- package/dist/.pikku/variables/pikku-variables.gen.d.ts +11 -1
- package/dist/.pikku/variables/pikku-variables.gen.d.ts.map +1 -1
- package/dist/.pikku/variables/pikku-variables.gen.js +13 -3
- package/dist/.pikku/variables/pikku-variables.gen.js.map +1 -1
- package/dist/.pikku/workflow/pikku-workflow-map.gen.d.ts +1 -1
- package/dist/.pikku/workflow/pikku-workflow-types.gen.d.ts +17 -8
- package/dist/.pikku/workflow/pikku-workflow-types.gen.d.ts.map +1 -1
- package/dist/.pikku/workflow/pikku-workflow-types.gen.js +1 -1
- package/dist/.pikku/workflow/pikku-workflow-types.gen.js.map +1 -1
- package/dist/.pikku/workflow/pikku-workflow-wirings-meta.gen.js +1 -1
- package/dist/.pikku/workflow/pikku-workflow-wirings.gen.d.ts +1 -1
- package/dist/.pikku/workflow/pikku-workflow-wirings.gen.js +1 -1
- package/dist/src/functions/get-addon-instances.function.d.ts +25 -0
- package/dist/src/functions/get-addon-instances.function.d.ts.map +1 -0
- package/dist/src/functions/get-addon-instances.function.js +30 -0
- package/dist/src/functions/get-addon-instances.function.js.map +1 -0
- package/dist/src/functions/get-installed-package.function.d.ts.map +1 -1
- package/dist/src/functions/get-installed-package.function.js +13 -13
- package/dist/src/functions/get-installed-package.function.js.map +1 -1
- package/dist/src/functions/get-openapi-detail.function.d.ts.map +1 -1
- package/dist/src/functions/get-openapi-detail.function.js +3 -9
- package/dist/src/functions/get-openapi-detail.function.js.map +1 -1
- package/dist/src/functions/get-openapis.function.d.ts +3 -3
- package/dist/src/functions/get-openapis.function.d.ts.map +1 -1
- package/dist/src/functions/get-openapis.function.js +3 -12
- package/dist/src/functions/get-openapis.function.js.map +1 -1
- package/dist/src/functions/get-webhook-delivery.function.d.ts +9 -0
- package/dist/src/functions/get-webhook-delivery.function.d.ts.map +1 -0
- package/dist/src/functions/get-webhook-delivery.function.js +14 -0
- package/dist/src/functions/get-webhook-delivery.function.js.map +1 -0
- package/dist/src/functions/install-addon.function.d.ts.map +1 -1
- package/dist/src/functions/install-addon.function.js +65 -11
- package/dist/src/functions/install-addon.function.js.map +1 -1
- package/dist/src/functions/list-webhook-deliveries.function.d.ts +12 -0
- package/dist/src/functions/list-webhook-deliveries.function.d.ts.map +1 -0
- package/dist/src/functions/list-webhook-deliveries.function.js +14 -0
- package/dist/src/functions/list-webhook-deliveries.function.js.map +1 -0
- package/dist/src/functions/scope-add-scope-to-user.function.d.ts +17 -0
- package/dist/src/functions/scope-add-scope-to-user.function.d.ts.map +1 -0
- package/dist/src/functions/scope-add-scope-to-user.function.js +16 -0
- package/dist/src/functions/scope-add-scope-to-user.function.js.map +1 -0
- package/dist/src/functions/scope-add-user-to-role.function.d.ts +17 -0
- package/dist/src/functions/scope-add-user-to-role.function.d.ts.map +1 -0
- package/dist/src/functions/scope-add-user-to-role.function.js +16 -0
- package/dist/src/functions/scope-add-user-to-role.function.js.map +1 -0
- package/dist/src/functions/scope-create-role.function.d.ts +20 -0
- package/dist/src/functions/scope-create-role.function.d.ts.map +1 -0
- package/dist/src/functions/scope-create-role.function.js +18 -0
- package/dist/src/functions/scope-create-role.function.js.map +1 -0
- package/dist/src/functions/scope-delete-role.function.d.ts +14 -0
- package/dist/src/functions/scope-delete-role.function.d.ts.map +1 -0
- package/dist/src/functions/scope-delete-role.function.js +16 -0
- package/dist/src/functions/scope-delete-role.function.js.map +1 -0
- package/dist/src/functions/scope-list-declared.function.d.ts +18 -0
- package/dist/src/functions/scope-list-declared.function.d.ts.map +1 -0
- package/dist/src/functions/scope-list-declared.function.js +15 -0
- package/dist/src/functions/scope-list-declared.function.js.map +1 -0
- package/dist/src/functions/scope-list-roles.function.d.ts +9 -0
- package/dist/src/functions/scope-list-roles.function.d.ts.map +1 -0
- package/dist/src/functions/scope-list-roles.function.js +14 -0
- package/dist/src/functions/scope-list-roles.function.js.map +1 -0
- package/dist/src/functions/scope-list-user-roles.function.d.ts +20 -0
- package/dist/src/functions/scope-list-user-roles.function.d.ts.map +1 -0
- package/dist/src/functions/scope-list-user-roles.function.js +23 -0
- package/dist/src/functions/scope-list-user-roles.function.js.map +1 -0
- package/dist/src/functions/scope-remove-scope-from-user.function.d.ts +17 -0
- package/dist/src/functions/scope-remove-scope-from-user.function.d.ts.map +1 -0
- package/dist/src/functions/scope-remove-scope-from-user.function.js +16 -0
- package/dist/src/functions/scope-remove-scope-from-user.function.js.map +1 -0
- package/dist/src/functions/scope-remove-user-from-role.function.d.ts +17 -0
- package/dist/src/functions/scope-remove-user-from-role.function.d.ts.map +1 -0
- package/dist/src/functions/scope-remove-user-from-role.function.js +16 -0
- package/dist/src/functions/scope-remove-user-from-role.function.js.map +1 -0
- package/dist/src/functions/scope-set-role-scopes.function.d.ts +17 -0
- package/dist/src/functions/scope-set-role-scopes.function.d.ts.map +1 -0
- package/dist/src/functions/scope-set-role-scopes.function.js +16 -0
- package/dist/src/functions/scope-set-role-scopes.function.js.map +1 -0
- package/dist/src/lib/derive-instance-overrides.d.ts +31 -0
- package/dist/src/lib/derive-instance-overrides.d.ts.map +1 -0
- package/dist/src/lib/derive-instance-overrides.js +72 -0
- package/dist/src/lib/derive-instance-overrides.js.map +1 -0
- package/dist/src/lib/derive-instance-overrides.test.d.ts +2 -0
- package/dist/src/lib/derive-instance-overrides.test.d.ts.map +1 -0
- package/dist/src/lib/derive-instance-overrides.test.js +59 -0
- package/dist/src/lib/derive-instance-overrides.test.js.map +1 -0
- package/dist/src/scopes.d.ts +2 -0
- package/dist/src/scopes.d.ts.map +1 -0
- package/dist/src/scopes.js +29 -0
- package/dist/src/scopes.js.map +1 -0
- package/dist/src/services/addon.service.d.ts +37 -0
- package/dist/src/services/addon.service.d.ts.map +1 -1
- package/dist/src/services/addon.service.js +24 -0
- package/dist/src/services/addon.service.js.map +1 -1
- package/dist/src/services/addon.service.test.js +17 -0
- package/dist/src/services/addon.service.test.js.map +1 -1
- package/dist/src/services.d.ts.map +1 -1
- package/dist/src/services.js +3 -4
- package/dist/src/services.js.map +1 -1
- package/package.json +4 -4
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scope-set-role-scopes.function.js","sourceRoot":"","sources":["../../../src/functions/scope-set-role-scopes.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAElC,MAAM,CAAC,MAAM,kBAAkB,GAAG,SAAS,CAGzC;IACA,KAAK,EAAE,iBAAiB;IACxB,WAAW,EACT,2FAA2F;IAC7F,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,CAAC,qBAAqB,CAAC;IAC/B,IAAI,EAAE,KAAK,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;QACjD,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,IAAI,mBAAmB,CAAC,gCAAgC,CAAC,CAAA;QACjE,CAAC;QACD,MAAM,YAAY,CAAC,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QAC9C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;IAC1B,CAAC;CACF,CAAC,CAAA"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Per-instance override derivation for a second-or-later `wireAddon` of the
|
|
3
|
+
* same package. The first instance of a package uses the package's documented
|
|
4
|
+
* logical names as-is (no overrides); once a package is installed a second
|
|
5
|
+
* time, both instances would otherwise resolve to the SAME secret/variable/
|
|
6
|
+
* credential. Namespace-scoping the new instance's names keeps them isolated.
|
|
7
|
+
*
|
|
8
|
+
* Overrides are only a sensible default the console writes into the generated
|
|
9
|
+
* wiring — the user owns the file and can drop or edit them (the runtime and
|
|
10
|
+
* inspector both treat overrides as optional, falling back to the logical name).
|
|
11
|
+
*/
|
|
12
|
+
export interface AddonDeclaredNames {
|
|
13
|
+
secrets: string[];
|
|
14
|
+
variables: string[];
|
|
15
|
+
credentials: string[];
|
|
16
|
+
}
|
|
17
|
+
export interface InstanceOverrides {
|
|
18
|
+
secretOverrides?: Record<string, string>;
|
|
19
|
+
variableOverrides?: Record<string, string>;
|
|
20
|
+
credentialOverrides?: Record<string, string>;
|
|
21
|
+
}
|
|
22
|
+
/** `@pikku/addon-mandrill` -> `mandrill`. */
|
|
23
|
+
export declare const packageBase: (packageName: string) => string;
|
|
24
|
+
export declare function deriveInstanceOverrides(namespace: string, packageName: string, declared: AddonDeclaredNames): InstanceOverrides;
|
|
25
|
+
/**
|
|
26
|
+
* Read a freshly-installed addon package's declared logical names from the
|
|
27
|
+
* `.pikku` meta it ships in node_modules. Missing meta files are treated as
|
|
28
|
+
* "declares none" — an addon may have no secrets/variables/credentials.
|
|
29
|
+
*/
|
|
30
|
+
export declare function readAddonDeclaredNames(rootDir: string, packageName: string): Promise<AddonDeclaredNames>;
|
|
31
|
+
//# sourceMappingURL=derive-instance-overrides.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"derive-instance-overrides.d.ts","sourceRoot":"","sources":["../../../src/lib/derive-instance-overrides.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;GAUG;AAEH,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,SAAS,EAAE,MAAM,EAAE,CAAA;IACnB,WAAW,EAAE,MAAM,EAAE,CAAA;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACxC,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC1C,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAC7C;AASD,6CAA6C;AAC7C,eAAO,MAAM,WAAW,GAAI,aAAa,MAAM,KAAG,MACW,CAAA;AA2B7D,wBAAgB,uBAAuB,CACrC,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,kBAAkB,GAC3B,iBAAiB,CAoBnB;AAED;;;;GAIG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,kBAAkB,CAAC,CAyB7B"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { readFile } from 'node:fs/promises';
|
|
2
|
+
import { join } from 'node:path';
|
|
3
|
+
/** `mandrill-promo` -> `MANDRILL_PROMO`. */
|
|
4
|
+
const screamingSnake = (s) => s
|
|
5
|
+
.replace(/[^a-zA-Z0-9]+/g, '_')
|
|
6
|
+
.replace(/([a-z])([A-Z])/g, '$1_$2')
|
|
7
|
+
.toUpperCase();
|
|
8
|
+
/** `@pikku/addon-mandrill` -> `mandrill`. */
|
|
9
|
+
export const packageBase = (packageName) => packageName.replace(/^@[^/]+\//, '').replace(/^addon-/, '');
|
|
10
|
+
/**
|
|
11
|
+
* Env-style secret/variable name for an instance. Strips a leading package-base
|
|
12
|
+
* token from the logical key (so `MANDRILL_API_KEY` under `mandrill-promo`
|
|
13
|
+
* becomes `MANDRILL_PROMO_API_KEY`, not `MANDRILL_PROMO_MANDRILL_API_KEY`),
|
|
14
|
+
* otherwise prefixes the whole key.
|
|
15
|
+
*/
|
|
16
|
+
const scopedEnvName = (namespace, base, key) => {
|
|
17
|
+
const ns = screamingSnake(namespace);
|
|
18
|
+
const basePrefix = screamingSnake(base) + '_';
|
|
19
|
+
const bare = key.toUpperCase().startsWith(basePrefix)
|
|
20
|
+
? key.slice(basePrefix.length)
|
|
21
|
+
: key;
|
|
22
|
+
return `${ns}_${bare}`;
|
|
23
|
+
};
|
|
24
|
+
/** Credential names are camelCase/kebab identifiers (they double as the
|
|
25
|
+
* better-auth providerId), so scope them with the kebab namespace rather than
|
|
26
|
+
* the env-style scream: `gmailOAuth` under `gmail-support` -> `gmail-support-gmailOAuth`. */
|
|
27
|
+
const scopedCredentialName = (namespace, key) => `${namespace}-${key}`;
|
|
28
|
+
export function deriveInstanceOverrides(namespace, packageName, declared) {
|
|
29
|
+
const base = packageBase(packageName);
|
|
30
|
+
const overrides = {};
|
|
31
|
+
if (declared.secrets.length > 0) {
|
|
32
|
+
overrides.secretOverrides = Object.fromEntries(declared.secrets.map((k) => [k, scopedEnvName(namespace, base, k)]));
|
|
33
|
+
}
|
|
34
|
+
if (declared.variables.length > 0) {
|
|
35
|
+
overrides.variableOverrides = Object.fromEntries(declared.variables.map((k) => [k, scopedEnvName(namespace, base, k)]));
|
|
36
|
+
}
|
|
37
|
+
if (declared.credentials.length > 0) {
|
|
38
|
+
overrides.credentialOverrides = Object.fromEntries(declared.credentials.map((k) => [k, scopedCredentialName(namespace, k)]));
|
|
39
|
+
}
|
|
40
|
+
return overrides;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Read a freshly-installed addon package's declared logical names from the
|
|
44
|
+
* `.pikku` meta it ships in node_modules. Missing meta files are treated as
|
|
45
|
+
* "declares none" — an addon may have no secrets/variables/credentials.
|
|
46
|
+
*/
|
|
47
|
+
export async function readAddonDeclaredNames(rootDir, packageName) {
|
|
48
|
+
const pkgPikku = join(rootDir, 'node_modules', packageName, '.pikku');
|
|
49
|
+
// Read the id the addon actually reads by (secretId/variableId for secrets and
|
|
50
|
+
// variables — the string it passes to getSecret / variables.get; the meta's
|
|
51
|
+
// own name for credentials), falling back to the meta key for older meta. That
|
|
52
|
+
// id is what overrides key on, matching the runtime aliaser and the inspector
|
|
53
|
+
// merge.
|
|
54
|
+
const readIds = async (rel, idField) => {
|
|
55
|
+
try {
|
|
56
|
+
const raw = await readFile(join(pkgPikku, rel), 'utf-8');
|
|
57
|
+
const meta = JSON.parse(raw);
|
|
58
|
+
return Object.entries(meta).map(([key, def]) => idField ? (def[idField] ?? key) : key);
|
|
59
|
+
}
|
|
60
|
+
catch {
|
|
61
|
+
// No meta of this kind shipped — the addon declares none.
|
|
62
|
+
return [];
|
|
63
|
+
}
|
|
64
|
+
};
|
|
65
|
+
const [secrets, variables, credentials] = await Promise.all([
|
|
66
|
+
readIds('secrets/pikku-secrets-meta.gen.json', 'secretId'),
|
|
67
|
+
readIds('variables/pikku-variables-meta.gen.json', 'variableId'),
|
|
68
|
+
readIds('credentials/pikku-credentials-meta.gen.json'),
|
|
69
|
+
]);
|
|
70
|
+
return { secrets, variables, credentials };
|
|
71
|
+
}
|
|
72
|
+
//# sourceMappingURL=derive-instance-overrides.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"derive-instance-overrides.js","sourceRoot":"","sources":["../../../src/lib/derive-instance-overrides.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"derive-instance-overrides.test.d.ts","sourceRoot":"","sources":["../../../src/lib/derive-instance-overrides.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { strict as assert } from 'assert';
|
|
2
|
+
import { describe, test } from 'node:test';
|
|
3
|
+
import { deriveInstanceOverrides, packageBase, } from './derive-instance-overrides.js';
|
|
4
|
+
describe('deriveInstanceOverrides', () => {
|
|
5
|
+
test('scopes an env secret by namespace, stripping a redundant package prefix', () => {
|
|
6
|
+
const o = deriveInstanceOverrides('mandrill-promo', '@pikku/addon-mandrill', {
|
|
7
|
+
secrets: ['MANDRILL_API_KEY'],
|
|
8
|
+
variables: [],
|
|
9
|
+
credentials: [],
|
|
10
|
+
});
|
|
11
|
+
assert.deepEqual(o.secretOverrides, {
|
|
12
|
+
MANDRILL_API_KEY: 'MANDRILL_PROMO_API_KEY',
|
|
13
|
+
});
|
|
14
|
+
});
|
|
15
|
+
test('prefixes a secret that does not start with the package base', () => {
|
|
16
|
+
const o = deriveInstanceOverrides('acme-mail', '@pikku/addon-mandrill', {
|
|
17
|
+
secrets: ['SMTP_PASSWORD'],
|
|
18
|
+
variables: [],
|
|
19
|
+
credentials: [],
|
|
20
|
+
});
|
|
21
|
+
assert.deepEqual(o.secretOverrides, {
|
|
22
|
+
SMTP_PASSWORD: 'ACME_MAIL_SMTP_PASSWORD',
|
|
23
|
+
});
|
|
24
|
+
});
|
|
25
|
+
test('scopes variables the same env-style way', () => {
|
|
26
|
+
const o = deriveInstanceOverrides('gmail-support', '@pikku/addon-gmail', {
|
|
27
|
+
secrets: [],
|
|
28
|
+
variables: ['GMAIL_REGION'],
|
|
29
|
+
credentials: [],
|
|
30
|
+
});
|
|
31
|
+
assert.deepEqual(o.variableOverrides, {
|
|
32
|
+
GMAIL_REGION: 'GMAIL_SUPPORT_REGION',
|
|
33
|
+
});
|
|
34
|
+
});
|
|
35
|
+
test('scopes credentials with the kebab namespace (providerId identity)', () => {
|
|
36
|
+
const o = deriveInstanceOverrides('gmail-support', '@pikku/addon-gmail', {
|
|
37
|
+
secrets: [],
|
|
38
|
+
variables: [],
|
|
39
|
+
credentials: ['gmailOAuth'],
|
|
40
|
+
});
|
|
41
|
+
assert.deepEqual(o.credentialOverrides, {
|
|
42
|
+
gmailOAuth: 'gmail-support-gmailOAuth',
|
|
43
|
+
});
|
|
44
|
+
});
|
|
45
|
+
test('omits override maps for kinds the addon declares none of', () => {
|
|
46
|
+
const o = deriveInstanceOverrides('x-two', '@pikku/addon-x', {
|
|
47
|
+
secrets: [],
|
|
48
|
+
variables: [],
|
|
49
|
+
credentials: [],
|
|
50
|
+
});
|
|
51
|
+
assert.deepEqual(o, {});
|
|
52
|
+
});
|
|
53
|
+
test('packageBase strips scope and addon- prefix', () => {
|
|
54
|
+
assert.equal(packageBase('@pikku/addon-mandrill'), 'mandrill');
|
|
55
|
+
assert.equal(packageBase('addon-slack'), 'slack');
|
|
56
|
+
assert.equal(packageBase('mypkg'), 'mypkg');
|
|
57
|
+
});
|
|
58
|
+
});
|
|
59
|
+
//# sourceMappingURL=derive-instance-overrides.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"derive-instance-overrides.test.js","sourceRoot":"","sources":["../../../src/lib/derive-instance-overrides.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,QAAQ,CAAA;AACzC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAC1C,OAAO,EACL,uBAAuB,EACvB,WAAW,GACZ,MAAM,gCAAgC,CAAA;AAEvC,QAAQ,CAAC,yBAAyB,EAAE,GAAG,EAAE;IACvC,IAAI,CAAC,yEAAyE,EAAE,GAAG,EAAE;QACnF,MAAM,CAAC,GAAG,uBAAuB,CAC/B,gBAAgB,EAChB,uBAAuB,EACvB;YACE,OAAO,EAAE,CAAC,kBAAkB,CAAC;YAC7B,SAAS,EAAE,EAAE;YACb,WAAW,EAAE,EAAE;SAChB,CACF,CAAA;QACD,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,eAAe,EAAE;YAClC,gBAAgB,EAAE,wBAAwB;SAC3C,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,6DAA6D,EAAE,GAAG,EAAE;QACvE,MAAM,CAAC,GAAG,uBAAuB,CAAC,WAAW,EAAE,uBAAuB,EAAE;YACtE,OAAO,EAAE,CAAC,eAAe,CAAC;YAC1B,SAAS,EAAE,EAAE;YACb,WAAW,EAAE,EAAE;SAChB,CAAC,CAAA;QACF,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,eAAe,EAAE;YAClC,aAAa,EAAE,yBAAyB;SACzC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,yCAAyC,EAAE,GAAG,EAAE;QACnD,MAAM,CAAC,GAAG,uBAAuB,CAAC,eAAe,EAAE,oBAAoB,EAAE;YACvE,OAAO,EAAE,EAAE;YACX,SAAS,EAAE,CAAC,cAAc,CAAC;YAC3B,WAAW,EAAE,EAAE;SAChB,CAAC,CAAA;QACF,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,iBAAiB,EAAE;YACpC,YAAY,EAAE,sBAAsB;SACrC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,mEAAmE,EAAE,GAAG,EAAE;QAC7E,MAAM,CAAC,GAAG,uBAAuB,CAAC,eAAe,EAAE,oBAAoB,EAAE;YACvE,OAAO,EAAE,EAAE;YACX,SAAS,EAAE,EAAE;YACb,WAAW,EAAE,CAAC,YAAY,CAAC;SAC5B,CAAC,CAAA;QACF,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,mBAAmB,EAAE;YACtC,UAAU,EAAE,0BAA0B;SACvC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,0DAA0D,EAAE,GAAG,EAAE;QACpE,MAAM,CAAC,GAAG,uBAAuB,CAAC,OAAO,EAAE,gBAAgB,EAAE;YAC3D,OAAO,EAAE,EAAE;YACX,SAAS,EAAE,EAAE;YACb,WAAW,EAAE,EAAE;SAChB,CAAC,CAAA;QACF,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;IACzB,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACtD,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,uBAAuB,CAAC,EAAE,UAAU,CAAC,CAAA;QAC9D,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC,CAAA;QACjD,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,CAAA;IAC7C,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scopes.d.ts","sourceRoot":"","sources":["../../src/scopes.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { wireScope } from '#pikku';
|
|
2
|
+
/**
|
|
3
|
+
* Scopes the console's own authorization management requires.
|
|
4
|
+
*
|
|
5
|
+
* Self-hosting: the functions that grant scopes are themselves scoped, so
|
|
6
|
+
* handing someone the console does not hand them the ability to grant
|
|
7
|
+
* themselves anything. These flow into the host's ScopeId union and declared
|
|
8
|
+
* set when the addon is wired, so a host role can grant them.
|
|
9
|
+
*/
|
|
10
|
+
wireScope({
|
|
11
|
+
pikku: {
|
|
12
|
+
displayName: 'Pikku Console',
|
|
13
|
+
description: "The console's own administrative capabilities",
|
|
14
|
+
scopes: {
|
|
15
|
+
scopes: {
|
|
16
|
+
description: 'Authorization management',
|
|
17
|
+
scopes: {
|
|
18
|
+
read: {
|
|
19
|
+
description: 'View declared scopes, roles, and who holds them',
|
|
20
|
+
},
|
|
21
|
+
manage: {
|
|
22
|
+
description: 'Create and delete roles, change their scopes, and grant roles to users',
|
|
23
|
+
},
|
|
24
|
+
},
|
|
25
|
+
},
|
|
26
|
+
},
|
|
27
|
+
},
|
|
28
|
+
});
|
|
29
|
+
//# sourceMappingURL=scopes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scopes.js","sourceRoot":"","sources":["../../src/scopes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAElC;;;;;;;GAOG;AACH,SAAS,CAAC;IACR,KAAK,EAAE;QACL,WAAW,EAAE,eAAe;QAC5B,WAAW,EAAE,+CAA+C;QAC5D,MAAM,EAAE;YACN,MAAM,EAAE;gBACN,WAAW,EAAE,0BAA0B;gBACvC,MAAM,EAAE;oBACN,IAAI,EAAE;wBACJ,WAAW,EAAE,iDAAiD;qBAC/D;oBACD,MAAM,EAAE;wBACN,WAAW,EACT,wEAAwE;qBAC3E;iBACF;aACF;SACF;KACF;CACF,CAAC,CAAA"}
|
|
@@ -26,6 +26,12 @@ export interface AddonPackageInfo {
|
|
|
26
26
|
functions: FunctionsMeta;
|
|
27
27
|
agents: Record<string, unknown>;
|
|
28
28
|
secrets: Record<string, unknown>;
|
|
29
|
+
/**
|
|
30
|
+
* OAuth2 + wire credentials the addon declares (from its own
|
|
31
|
+
* `credentials/pikku-credentials-meta.gen.json`). Entries with an `oauth2`
|
|
32
|
+
* field are OAuth integrations to connect; the rest are wire credentials.
|
|
33
|
+
*/
|
|
34
|
+
credentials: Record<string, unknown>;
|
|
29
35
|
variables: Record<string, unknown>;
|
|
30
36
|
httpRoutes: HTTPWiringsMeta;
|
|
31
37
|
channels: ChannelsMeta;
|
|
@@ -35,11 +41,42 @@ export interface AddonPackageInfo {
|
|
|
35
41
|
}
|
|
36
42
|
export type AddonMeta = AddonPackageInfo;
|
|
37
43
|
export type AddonDetail = AddonPackageInfo;
|
|
44
|
+
export interface OpenApiSummary {
|
|
45
|
+
name: string;
|
|
46
|
+
version: string;
|
|
47
|
+
provider: string;
|
|
48
|
+
service: string | null;
|
|
49
|
+
title: string;
|
|
50
|
+
description: string;
|
|
51
|
+
openapiVer: string;
|
|
52
|
+
swaggerUrl: string;
|
|
53
|
+
logo?: string;
|
|
54
|
+
}
|
|
55
|
+
export interface OpenApiListResult {
|
|
56
|
+
apis: OpenApiSummary[];
|
|
57
|
+
total: number;
|
|
58
|
+
nextCursor: number | null;
|
|
59
|
+
}
|
|
60
|
+
export interface OpenApiDetail extends OpenApiSummary {
|
|
61
|
+
swaggerYamlUrl?: string;
|
|
62
|
+
categories: string[];
|
|
63
|
+
tags: string[];
|
|
64
|
+
added?: string;
|
|
65
|
+
updated?: string;
|
|
66
|
+
}
|
|
38
67
|
export declare class AddonService {
|
|
39
68
|
private fabricApiUrl;
|
|
40
69
|
constructor(fabricApiUrl: string);
|
|
41
70
|
readAddonsMeta(): Promise<AddonMeta[]>;
|
|
42
71
|
readAddon(id: string): Promise<AddonDetail | null>;
|
|
72
|
+
/** Browse the fabric registry's OpenAPI catalogue (apis.guru + published). */
|
|
73
|
+
readOpenapis(opts: {
|
|
74
|
+
limit: number;
|
|
75
|
+
offset: number;
|
|
76
|
+
search?: string;
|
|
77
|
+
}): Promise<OpenApiListResult>;
|
|
78
|
+
/** Fetch one OpenAPI catalogue entry by name (returns null when absent). */
|
|
79
|
+
readOpenapiDetail(name: string): Promise<OpenApiDetail | null>;
|
|
43
80
|
init(): Promise<void>;
|
|
44
81
|
}
|
|
45
82
|
//# sourceMappingURL=addon.service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"addon.service.d.ts","sourceRoot":"","sources":["../../../src/services/addon.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAChD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AACrD,OAAO,KAAK,EACV,WAAW,EACX,eAAe,EACf,aAAa,EACd,MAAM,iBAAiB,CAAA;AAExB,MAAM,WAAW,OAAO;IACtB,SAAS,EAAE,WAAW,CAAA;IACtB,aAAa,EAAE,eAAe,CAAA;IAC9B,WAAW,EAAE,aAAa,CAAA;CAC3B;AAED,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,OAAO,EAAE,MAAM,CAAA;IACf,WAAW,EAAE,MAAM,CAAA;IACnB,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,UAAU,EAAE,MAAM,EAAE,CAAA;IACpB,SAAS,EAAE,aAAa,CAAA;IACxB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC/B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAChC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAClC,UAAU,EAAE,eAAe,CAAA;IAC3B,QAAQ,EAAE,YAAY,CAAA;IACtB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAA;IACnC,GAAG,EAAE,OAAO,GAAG,IAAI,CAAA;IACnB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACjC;AAED,MAAM,MAAM,SAAS,GAAG,gBAAgB,CAAA;AACxC,MAAM,MAAM,WAAW,GAAG,gBAAgB,CAAA;AAE1C,qBAAa,YAAY;IACX,OAAO,CAAC,YAAY;gBAAZ,YAAY,EAAE,MAAM;IAElC,cAAc,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;IAWtC,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"addon.service.d.ts","sourceRoot":"","sources":["../../../src/services/addon.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,6 +19,30 @@ export class AddonService {
|
|
|
19
19
|
return null;
|
|
20
20
|
return JSON.parse(text);
|
|
21
21
|
}
|
|
22
|
+
/** Browse the fabric registry's OpenAPI catalogue (apis.guru + published). */
|
|
23
|
+
async readOpenapis(opts) {
|
|
24
|
+
const params = new URLSearchParams({
|
|
25
|
+
limit: String(opts.limit),
|
|
26
|
+
offset: String(opts.offset),
|
|
27
|
+
});
|
|
28
|
+
if (opts.search)
|
|
29
|
+
params.set('query', opts.search);
|
|
30
|
+
const response = await fetch(`${this.fabricApiUrl}/registry/openapis?${params.toString()}`);
|
|
31
|
+
if (!response.ok) {
|
|
32
|
+
throw new Error(`Registry returned ${response.status}`);
|
|
33
|
+
}
|
|
34
|
+
return response.json();
|
|
35
|
+
}
|
|
36
|
+
/** Fetch one OpenAPI catalogue entry by name (returns null when absent). */
|
|
37
|
+
async readOpenapiDetail(name) {
|
|
38
|
+
const response = await fetch(`${this.fabricApiUrl}/registry/openapis/${encodeURIComponent(name)}`);
|
|
39
|
+
if (!response.ok)
|
|
40
|
+
return null;
|
|
41
|
+
const text = await response.text();
|
|
42
|
+
if (!text)
|
|
43
|
+
return null;
|
|
44
|
+
return JSON.parse(text);
|
|
45
|
+
}
|
|
22
46
|
async init() { }
|
|
23
47
|
}
|
|
24
48
|
//# sourceMappingURL=addon.service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"addon.service.js","sourceRoot":"","sources":["../../../src/services/addon.service.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"addon.service.js","sourceRoot":"","sources":["../../../src/services/addon.service.ts"],"names":[],"mappings":"AA6EA,MAAM,OAAO,YAAY;IACvB,YAAoB,YAAoB;QAApB,iBAAY,GAAZ,YAAY,CAAQ;IAAG,CAAC;IAE5C,KAAK,CAAC,cAAc;QAClB,MAAM,QAAQ,GAAG,MAAM,KAAK,CAC1B,GAAG,IAAI,CAAC,YAAY,8BAA8B,CACnD,CAAA;QACD,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,qBAAqB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAA;QACzD,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;QACpC,OAAO,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAA;IAC9B,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,EAAU;QACxB,MAAM,QAAQ,GAAG,MAAM,KAAK,CAC1B,GAAG,IAAI,CAAC,YAAY,sBAAsB,kBAAkB,CAAC,EAAE,CAAC,EAAE,CACnE,CAAA;QACD,IAAI,CAAC,QAAQ,CAAC,EAAE;YAAE,OAAO,IAAI,CAAA;QAC7B,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;QAClC,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAA;QACtB,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IACzB,CAAC;IAED,8EAA8E;IAC9E,KAAK,CAAC,YAAY,CAAC,IAIlB;QACC,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC;YACjC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;YACzB,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;SAC5B,CAAC,CAAA;QACF,IAAI,IAAI,CAAC,MAAM;YAAE,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;QACjD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAC1B,GAAG,IAAI,CAAC,YAAY,sBAAsB,MAAM,CAAC,QAAQ,EAAE,EAAE,CAC9D,CAAA;QACD,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,qBAAqB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAA;QACzD,CAAC;QACD,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAA;IACxB,CAAC;IAED,4EAA4E;IAC5E,KAAK,CAAC,iBAAiB,CAAC,IAAY;QAClC,MAAM,QAAQ,GAAG,MAAM,KAAK,CAC1B,GAAG,IAAI,CAAC,YAAY,sBAAsB,kBAAkB,CAAC,IAAI,CAAC,EAAE,CACrE,CAAA;QACD,IAAI,CAAC,QAAQ,CAAC,EAAE;YAAE,OAAO,IAAI,CAAA;QAC7B,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;QAClC,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAA;QACtB,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IACzB,CAAC;IAED,KAAK,CAAC,IAAI,KAAmB,CAAC;CAC/B"}
|
|
@@ -39,5 +39,22 @@ describe('AddonService', () => {
|
|
|
39
39
|
assert.ok(calls[0].startsWith(`${FABRIC}/registry/packages/pkg-1`), `expected fabric /registry/packages/:id, got ${calls[0]}`);
|
|
40
40
|
assert.deepEqual(result, { id: 'pkg-1', name: '@x/y' });
|
|
41
41
|
});
|
|
42
|
+
test('readOpenapis queries the fabric registry openapis endpoint', async () => {
|
|
43
|
+
mockFetch({ apis: [{ name: 'stripe' }], total: 1, nextCursor: null });
|
|
44
|
+
const service = new AddonService(FABRIC);
|
|
45
|
+
const result = await service.readOpenapis({ limit: 50, offset: 0, search: 'stripe' });
|
|
46
|
+
assert.equal(calls.length, 1);
|
|
47
|
+
assert.ok(calls[0].startsWith(`${FABRIC}/registry/openapis`), `expected fabric /registry/openapis, got ${calls[0]}`);
|
|
48
|
+
assert.ok(calls[0].includes('query=stripe'), `expected query param, got ${calls[0]}`);
|
|
49
|
+
assert.deepEqual(result, { apis: [{ name: 'stripe' }], total: 1, nextCursor: null });
|
|
50
|
+
});
|
|
51
|
+
test('readOpenapiDetail queries the fabric registry openapi-by-name endpoint', async () => {
|
|
52
|
+
mockFetch({ name: 'stripe', title: 'Stripe' });
|
|
53
|
+
const service = new AddonService(FABRIC);
|
|
54
|
+
const result = await service.readOpenapiDetail('stripe');
|
|
55
|
+
assert.equal(calls.length, 1);
|
|
56
|
+
assert.ok(calls[0].startsWith(`${FABRIC}/registry/openapis/stripe`), `expected fabric /registry/openapis/:name, got ${calls[0]}`);
|
|
57
|
+
assert.deepEqual(result, { name: 'stripe', title: 'Stripe' });
|
|
58
|
+
});
|
|
42
59
|
});
|
|
43
60
|
//# sourceMappingURL=addon.service.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"addon.service.test.js","sourceRoot":"","sources":["../../../src/services/addon.service.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AACjE,OAAO,MAAM,MAAM,oBAAoB,CAAA;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAEjD,MAAM,MAAM,GAAG,wBAAwB,CAAA;AAEvC,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC5B,IAAI,KAAe,CAAA;IACnB,IAAI,aAAsC,CAAA;IAE1C,UAAU,CAAC,GAAG,EAAE;QACd,KAAK,GAAG,EAAE,CAAA;QACV,aAAa,GAAG,UAAU,CAAC,KAAK,CAAA;IAClC,CAAC,CAAC,CAAA;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,UAAU,CAAC,KAAK,GAAG,aAAa,CAAA;IAClC,CAAC,CAAC,CAAA;IAEF,MAAM,SAAS,GAAG,CAAC,IAAa,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE;QAC7C,UAAU,CAAC,KAAK,GAAG,CAAC,KAAK,EAAE,GAAiB,EAAE,EAAE;YAC9C,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;YACvB,OAAO;gBACL,EAAE;gBACF,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG;gBACtB,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,IAAI;gBACtB,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;aAC3B,CAAA;QACf,CAAC,CAA4B,CAAA;IAC/B,CAAC,CAAA;IAED,IAAI,CAAC,8DAA8D,EAAE,KAAK,IAAI,EAAE;QAC9E,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAA;QACtC,MAAM,OAAO,GAAG,IAAI,YAAY,CAAC,MAAM,CAAC,CAAA;QACxC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,cAAc,EAAE,CAAA;QAC7C,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;QAC7B,MAAM,CAAC,EAAE,CACP,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,MAAM,oBAAoB,CAAC,EAClD,2CAA2C,KAAK,CAAC,CAAC,CAAC,EAAE,CACtD,CAAA;QACD,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAA;IACzC,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,8DAA8D,EAAE,KAAK,IAAI,EAAE;QAC9E,SAAS,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;QACxC,MAAM,OAAO,GAAG,IAAI,YAAY,CAAC,MAAM,CAAC,CAAA;QACxC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,CAAA;QAC/C,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;QAC7B,MAAM,CAAC,EAAE,CACP,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,MAAM,0BAA0B,CAAC,EACxD,+CAA+C,KAAK,CAAC,CAAC,CAAC,EAAE,CAC1D,CAAA;QACD,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;IACzD,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
|
|
1
|
+
{"version":3,"file":"addon.service.test.js","sourceRoot":"","sources":["../../../src/services/addon.service.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AACjE,OAAO,MAAM,MAAM,oBAAoB,CAAA;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAEjD,MAAM,MAAM,GAAG,wBAAwB,CAAA;AAEvC,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC5B,IAAI,KAAe,CAAA;IACnB,IAAI,aAAsC,CAAA;IAE1C,UAAU,CAAC,GAAG,EAAE;QACd,KAAK,GAAG,EAAE,CAAA;QACV,aAAa,GAAG,UAAU,CAAC,KAAK,CAAA;IAClC,CAAC,CAAC,CAAA;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,UAAU,CAAC,KAAK,GAAG,aAAa,CAAA;IAClC,CAAC,CAAC,CAAA;IAEF,MAAM,SAAS,GAAG,CAAC,IAAa,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE;QAC7C,UAAU,CAAC,KAAK,GAAG,CAAC,KAAK,EAAE,GAAiB,EAAE,EAAE;YAC9C,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;YACvB,OAAO;gBACL,EAAE;gBACF,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG;gBACtB,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,IAAI;gBACtB,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;aAC3B,CAAA;QACf,CAAC,CAA4B,CAAA;IAC/B,CAAC,CAAA;IAED,IAAI,CAAC,8DAA8D,EAAE,KAAK,IAAI,EAAE;QAC9E,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAA;QACtC,MAAM,OAAO,GAAG,IAAI,YAAY,CAAC,MAAM,CAAC,CAAA;QACxC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,cAAc,EAAE,CAAA;QAC7C,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;QAC7B,MAAM,CAAC,EAAE,CACP,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,MAAM,oBAAoB,CAAC,EAClD,2CAA2C,KAAK,CAAC,CAAC,CAAC,EAAE,CACtD,CAAA;QACD,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAA;IACzC,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,8DAA8D,EAAE,KAAK,IAAI,EAAE;QAC9E,SAAS,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;QACxC,MAAM,OAAO,GAAG,IAAI,YAAY,CAAC,MAAM,CAAC,CAAA;QACxC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,CAAA;QAC/C,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;QAC7B,MAAM,CAAC,EAAE,CACP,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,MAAM,0BAA0B,CAAC,EACxD,+CAA+C,KAAK,CAAC,CAAC,CAAC,EAAE,CAC1D,CAAA;QACD,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;IACzD,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,4DAA4D,EAAE,KAAK,IAAI,EAAE;QAC5E,SAAS,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAA;QACrE,MAAM,OAAO,GAAG,IAAI,YAAY,CAAC,MAAM,CAAC,CAAA;QACxC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAA;QACrF,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;QAC7B,MAAM,CAAC,EAAE,CACP,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,MAAM,oBAAoB,CAAC,EAClD,2CAA2C,KAAK,CAAC,CAAC,CAAC,EAAE,CACtD,CAAA;QACD,MAAM,CAAC,EAAE,CACP,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,EACjC,6BAA6B,KAAK,CAAC,CAAC,CAAC,EAAE,CACxC,CAAA;QACD,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAA;IACtF,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,wEAAwE,EAAE,KAAK,IAAI,EAAE;QACxF,SAAS,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAA;QAC9C,MAAM,OAAO,GAAG,IAAI,YAAY,CAAC,MAAM,CAAC,CAAA;QACxC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAA;QACxD,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;QAC7B,MAAM,CAAC,EAAE,CACP,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,MAAM,2BAA2B,CAAC,EACzD,iDAAiD,KAAK,CAAC,CAAC,CAAC,EAAE,CAC5D,CAAA;QACD,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAA;IAC/D,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"services.d.ts","sourceRoot":"","sources":["../../src/services.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"services.d.ts","sourceRoot":"","sources":["../../src/services.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,uBAAuB,0MA4EnC,CAAA"}
|
package/dist/src/services.js
CHANGED
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
import { pikkuAddonServices } from '#pikku';
|
|
2
2
|
import { WiringService } from './services/wiring.service.js';
|
|
3
3
|
import { AddonService } from './services/addon.service.js';
|
|
4
|
-
import { OAuthService } from './services/oauth.service.js';
|
|
5
4
|
import { StateDiffService } from './services/state-diff.service.js';
|
|
6
5
|
import { DbSchemaService } from './services/db-schema.service.js';
|
|
7
6
|
import { findProjectRoot } from './lib/find-project-root.js';
|
|
8
|
-
export const createSingletonServices = pikkuAddonServices(async (_config, { variables, metaService: existingMetaService, aiAgentRunner, schedulerService, agentRunService, workflowService, workflowRunService, aiStorage, aiRunState, deploymentService, credentialService, coverageService, }) => {
|
|
7
|
+
export const createSingletonServices = pikkuAddonServices(async (_config, { variables, metaService: existingMetaService, aiAgentRunner, schedulerService, agentRunService, workflowService, workflowRunService, aiStorage, aiRunState, deploymentService, credentialService, coverageService, scopeService, webhookService, }) => {
|
|
9
8
|
if (!existingMetaService) {
|
|
10
9
|
throw new Error('metaService is required for the console addon. Set it in your createSingletonServices using PikkuMetaService from #pikku/pikku-meta-service.gen.js');
|
|
11
10
|
}
|
|
@@ -14,7 +13,6 @@ export const createSingletonServices = pikkuAddonServices(async (_config, { vari
|
|
|
14
13
|
const wiringService = new WiringService(metaService);
|
|
15
14
|
const addonService = new AddonService(fabricApiUrl);
|
|
16
15
|
await addonService.init();
|
|
17
|
-
const oauthService = new OAuthService();
|
|
18
16
|
const metaBasePath = existingMetaService?.basePath;
|
|
19
17
|
let codeEditService = null;
|
|
20
18
|
let stateDiffService = null;
|
|
@@ -41,7 +39,6 @@ export const createSingletonServices = pikkuAddonServices(async (_config, { vari
|
|
|
41
39
|
metaService,
|
|
42
40
|
wiringService,
|
|
43
41
|
addonService,
|
|
44
|
-
oauthService,
|
|
45
42
|
workflowService,
|
|
46
43
|
workflowRunService,
|
|
47
44
|
agentRunService,
|
|
@@ -52,6 +49,8 @@ export const createSingletonServices = pikkuAddonServices(async (_config, { vari
|
|
|
52
49
|
schedulerService,
|
|
53
50
|
credentialService,
|
|
54
51
|
coverageService,
|
|
52
|
+
scopeService,
|
|
53
|
+
webhookService,
|
|
55
54
|
codeEditService,
|
|
56
55
|
stateDiffService,
|
|
57
56
|
dbSchemaService,
|
package/dist/src/services.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"services.js","sourceRoot":"","sources":["../../src/services.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAA;
|
|
1
|
+
{"version":3,"file":"services.js","sourceRoot":"","sources":["../../src/services.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAA;AAE1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAA;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAA;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAE5D,MAAM,CAAC,MAAM,uBAAuB,GAAG,kBAAkB,CACvD,KAAK,EACH,OAAO,EACP,EACE,SAAS,EACT,WAAW,EAAE,mBAAmB,EAChC,aAAa,EACb,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,kBAAkB,EAClB,SAAS,EACT,UAAU,EACV,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,EACf,YAAY,EACZ,cAAc,GACf,EACD,EAAE;IACF,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CACb,oJAAoJ,CACrJ,CAAA;IACH,CAAC;IACD,MAAM,WAAW,GAAG,mBAAmB,CAAA;IACvC,MAAM,YAAY,GAChB,CAAC,MAAM,SAAS,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,IAAI,6BAA6B,CAAA;IAE1E,MAAM,aAAa,GAAG,IAAI,aAAa,CAAC,WAAW,CAAC,CAAA;IACpD,MAAM,YAAY,GAAG,IAAI,YAAY,CAAC,YAAY,CAAC,CAAA;IACnD,MAAM,YAAY,CAAC,IAAI,EAAE,CAAA;IAEzB,MAAM,YAAY,GAAG,mBAAmB,EAAE,QAAQ,CAAA;IAClD,IAAI,eAAe,GAA2B,IAAI,CAAA;IAClD,IAAI,gBAAgB,GAA4B,IAAI,CAAA;IACpD,IAAI,eAAe,GAA2B,IAAI,CAAA;IAClD,IAAI,YAAY,EAAE,CAAC;QACjB,MAAM,WAAW,GAAG,eAAe,CAAC,YAAY,CAAC,CAAA;QACjD,gBAAgB,GAAG,IAAI,gBAAgB,CAAC,WAAW,CAAC,CAAA;QACpD,eAAe,GAAG,IAAI,eAAe,CAAC,WAAW,CAAC,CAAA;QAClD,2EAA2E;QAC3E,4EAA4E;QAC5E,2EAA2E;QAC3E,yEAAyE;QACzE,0EAA0E;QAC1E,IAAI,CAAC;YACH,MAAM,YAAY,GAAG,iCAAiC,CAAA;YACtD,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAA;YACtD,eAAe,GAAG,IAAI,eAAe,CAAC,WAAW,CAAC,CAAA;QACpD,CAAC;QAAC,MAAM,CAAC;YACP,yEAAyE;QAC3E,CAAC;IACH,CAAC;IAED,OAAO;QACL,WAAW;QACX,aAAa;QACb,YAAY;QACZ,eAAe;QACf,kBAAkB;QAClB,eAAe;QACf,SAAS;QACT,UAAU;QACV,iBAAiB;QACjB,aAAa;QACb,gBAAgB;QAChB,iBAAiB;QACjB,eAAe;QACf,YAAY;QACZ,cAAc;QACd,eAAe;QACf,gBAAgB;QAChB,eAAe;KAChB,CAAA;AACH,CAAC,CACF,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pikku/addon-console",
|
|
3
|
-
"version": "0.12.
|
|
3
|
+
"version": "0.12.27",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"imports": {
|
|
6
6
|
"#pikku": {
|
|
@@ -38,11 +38,11 @@
|
|
|
38
38
|
"test:coverage": "bash run-tests.sh --coverage"
|
|
39
39
|
},
|
|
40
40
|
"peerDependencies": {
|
|
41
|
-
"@pikku/core": "^0.12.
|
|
41
|
+
"@pikku/core": "^0.12.64"
|
|
42
42
|
},
|
|
43
43
|
"devDependencies": {
|
|
44
|
-
"@pikku/cli": "^0.12.
|
|
45
|
-
"@pikku/core": "^0.12.
|
|
44
|
+
"@pikku/cli": "^0.12.83",
|
|
45
|
+
"@pikku/core": "^0.12.64",
|
|
46
46
|
"oauth2-mock-server": "^7.1.1",
|
|
47
47
|
"typescript": "^6.0.3"
|
|
48
48
|
},
|