@jigx/sdk-tools 1.1.0-rc.1 → 1.1.0-rc.5
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/README.md +40 -51
- package/dist/auth/cognito-auth.d.ts +26 -0
- package/dist/auth/cognito-auth.d.ts.map +1 -0
- package/dist/auth/cognito-auth.js +150 -0
- package/dist/auth/cognito-auth.js.map +1 -0
- package/dist/auth/cognito-config.d.ts +10 -0
- package/dist/auth/cognito-config.d.ts.map +1 -0
- package/dist/auth/cognito-config.js +17 -0
- package/dist/auth/cognito-config.js.map +1 -0
- package/dist/auth/credentials-store.d.ts +34 -0
- package/dist/auth/credentials-store.d.ts.map +1 -0
- package/dist/auth/credentials-store.js +116 -0
- package/dist/auth/credentials-store.js.map +1 -0
- package/dist/auth/errors.d.ts +23 -0
- package/dist/auth/errors.d.ts.map +1 -0
- package/dist/auth/errors.js +39 -0
- package/dist/auth/errors.js.map +1 -0
- package/dist/auth/identity-client.d.ts +19 -0
- package/dist/auth/identity-client.d.ts.map +1 -0
- package/dist/auth/identity-client.js +70 -0
- package/dist/auth/identity-client.js.map +1 -0
- package/dist/auth/index.d.ts +12 -0
- package/dist/auth/index.d.ts.map +1 -0
- package/dist/auth/index.js +7 -0
- package/dist/auth/index.js.map +1 -0
- package/dist/auth/jigx-config-store.d.ts +27 -0
- package/dist/auth/jigx-config-store.d.ts.map +1 -0
- package/dist/auth/jigx-config-store.js +76 -0
- package/dist/auth/jigx-config-store.js.map +1 -0
- package/dist/cli.js +141 -19
- package/dist/cli.js.map +1 -1
- package/dist/creator/create.d.ts +0 -4
- package/dist/creator/create.d.ts.map +1 -1
- package/dist/creator/create.js +4 -18
- package/dist/creator/create.js.map +1 -1
- package/dist/creator/index.d.ts +1 -1
- package/dist/creator/index.d.ts.map +1 -1
- package/dist/creator/index.js +1 -1
- package/dist/creator/index.js.map +1 -1
- package/dist/deployer/deploy-to-strata.js +2 -2
- package/dist/deployer/deploy-to-strata.js.map +1 -1
- package/dist/deployer/deploy.d.ts +17 -0
- package/dist/deployer/deploy.d.ts.map +1 -1
- package/dist/deployer/deploy.js +91 -4
- package/dist/deployer/deploy.js.map +1 -1
- package/dist/deployer/index.d.ts +1 -1
- package/dist/deployer/index.d.ts.map +1 -1
- package/dist/deployer/index.js +1 -1
- package/dist/deployer/index.js.map +1 -1
- package/dist/index.d.ts +11 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -2
- package/dist/index.js.map +1 -1
- package/dist/init/index.d.ts +2 -0
- package/dist/init/index.d.ts.map +1 -0
- package/dist/init/index.js +2 -0
- package/dist/init/index.js.map +1 -0
- package/dist/init/init.d.ts +45 -0
- package/dist/init/init.d.ts.map +1 -0
- package/dist/init/init.js +126 -0
- package/dist/init/init.js.map +1 -0
- package/dist/jigx-command/format.d.ts +7 -0
- package/dist/jigx-command/format.d.ts.map +1 -0
- package/dist/jigx-command/format.js +7 -0
- package/dist/jigx-command/format.js.map +1 -0
- package/dist/jigx-command/index.d.ts +3 -0
- package/dist/jigx-command/index.d.ts.map +1 -0
- package/dist/jigx-command/index.js +2 -0
- package/dist/jigx-command/index.js.map +1 -0
- package/dist/login/index.d.ts +3 -0
- package/dist/login/index.d.ts.map +1 -0
- package/dist/login/index.js +2 -0
- package/dist/login/index.js.map +1 -0
- package/dist/login/login.d.ts +19 -0
- package/dist/login/login.d.ts.map +1 -0
- package/dist/login/login.js +58 -0
- package/dist/login/login.js.map +1 -0
- package/dist/logout/index.d.ts +3 -0
- package/dist/logout/index.d.ts.map +1 -0
- package/dist/logout/index.js +2 -0
- package/dist/logout/index.js.map +1 -0
- package/dist/logout/logout.d.ts +26 -0
- package/dist/logout/logout.d.ts.map +1 -0
- package/dist/logout/logout.js +100 -0
- package/dist/logout/logout.js.map +1 -0
- package/dist/scaffolder/scaffold.d.ts.map +1 -1
- package/dist/scaffolder/scaffold.js +1 -6
- package/dist/scaffolder/scaffold.js.map +1 -1
- package/dist/scaffolder/templates.d.ts +0 -3
- package/dist/scaffolder/templates.d.ts.map +1 -1
- package/dist/scaffolder/templates.js +15 -47
- package/dist/scaffolder/templates.js.map +1 -1
- package/dist/whoami/index.d.ts +3 -0
- package/dist/whoami/index.d.ts.map +1 -0
- package/dist/whoami/index.js +2 -0
- package/dist/whoami/index.js.map +1 -0
- package/dist/whoami/whoami.d.ts +27 -0
- package/dist/whoami/whoami.d.ts.map +1 -0
- package/dist/whoami/whoami.js +53 -0
- package/dist/whoami/whoami.js.map +1 -0
- package/package.json +19 -3
- package/CHANGELOG.md +0 -22
- package/dist/builder/__tests__/build.test.d.ts +0 -2
- package/dist/builder/__tests__/build.test.d.ts.map +0 -1
- package/dist/builder/__tests__/build.test.js +0 -88
- package/dist/builder/__tests__/build.test.js.map +0 -1
- package/dist/builder/__tests__/extract-to-folder.test.d.ts +0 -2
- package/dist/builder/__tests__/extract-to-folder.test.d.ts.map +0 -1
- package/dist/builder/__tests__/extract-to-folder.test.js +0 -198
- package/dist/builder/__tests__/extract-to-folder.test.js.map +0 -1
- package/dist/builder/__tests__/fixtures/sample-application.d.ts +0 -2
- package/dist/builder/__tests__/fixtures/sample-application.d.ts.map +0 -1
- package/dist/builder/__tests__/fixtures/sample-application.js +0 -56
- package/dist/builder/__tests__/fixtures/sample-application.js.map +0 -1
- package/dist/creator/__tests__/create.test.d.ts +0 -2
- package/dist/creator/__tests__/create.test.d.ts.map +0 -1
- package/dist/creator/__tests__/create.test.js +0 -95
- package/dist/creator/__tests__/create.test.js.map +0 -1
- package/dist/deployer/__tests__/deploy-to-strata.test.d.ts +0 -2
- package/dist/deployer/__tests__/deploy-to-strata.test.d.ts.map +0 -1
- package/dist/deployer/__tests__/deploy-to-strata.test.js +0 -174
- package/dist/deployer/__tests__/deploy-to-strata.test.js.map +0 -1
- package/dist/deployer/__tests__/deploy.test.d.ts +0 -2
- package/dist/deployer/__tests__/deploy.test.d.ts.map +0 -1
- package/dist/deployer/__tests__/deploy.test.js +0 -116
- package/dist/deployer/__tests__/deploy.test.js.map +0 -1
- package/dist/env-loader/__tests__/load-env.test.d.ts +0 -2
- package/dist/env-loader/__tests__/load-env.test.d.ts.map +0 -1
- package/dist/env-loader/__tests__/load-env.test.js +0 -46
- package/dist/env-loader/__tests__/load-env.test.js.map +0 -1
- package/dist/env-loader/index.d.ts +0 -3
- package/dist/env-loader/index.d.ts.map +0 -1
- package/dist/env-loader/index.js +0 -2
- package/dist/env-loader/index.js.map +0 -1
- package/dist/env-loader/load-env.d.ts +0 -12
- package/dist/env-loader/load-env.d.ts.map +0 -1
- package/dist/env-loader/load-env.js +0 -50
- package/dist/env-loader/load-env.js.map +0 -1
- package/dist/scaffolder/__tests__/scaffold.test.d.ts +0 -2
- package/dist/scaffolder/__tests__/scaffold.test.d.ts.map +0 -1
- package/dist/scaffolder/__tests__/scaffold.test.js +0 -126
- package/dist/scaffolder/__tests__/scaffold.test.js.map +0 -1
- package/dist/slug/__tests__/validate.test.d.ts +0 -2
- package/dist/slug/__tests__/validate.test.d.ts.map +0 -1
- package/dist/slug/__tests__/validate.test.js +0 -51
- package/dist/slug/__tests__/validate.test.js.map +0 -1
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { COGNITO_CONFIG } from './cognito-config.js';
|
|
2
|
+
import { AuthHttpError, NetworkError } from './errors.js';
|
|
3
|
+
const CLIENT_TYPE_HEADER = { 'x-client-type': 'sdk-tools' };
|
|
4
|
+
function meUrl(strataRestUrl) {
|
|
5
|
+
return `${strataRestUrl}/strata/users/me`;
|
|
6
|
+
}
|
|
7
|
+
function composeFullName(parsed) {
|
|
8
|
+
const composed = [parsed.firstName, parsed.lastName].filter(Boolean).join(' ').trim();
|
|
9
|
+
if (composed)
|
|
10
|
+
return composed;
|
|
11
|
+
if (parsed.name)
|
|
12
|
+
return parsed.name;
|
|
13
|
+
if (parsed.email)
|
|
14
|
+
return parsed.email;
|
|
15
|
+
return undefined;
|
|
16
|
+
}
|
|
17
|
+
async function readBody(response) {
|
|
18
|
+
try {
|
|
19
|
+
return await response.text();
|
|
20
|
+
}
|
|
21
|
+
catch {
|
|
22
|
+
return '';
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
export class IdentityClient {
|
|
26
|
+
async getMe(options) {
|
|
27
|
+
const { environment, idToken } = options;
|
|
28
|
+
const { strataRestUrl } = COGNITO_CONFIG[environment];
|
|
29
|
+
let response;
|
|
30
|
+
try {
|
|
31
|
+
response = await fetch(meUrl(strataRestUrl), {
|
|
32
|
+
method: 'GET',
|
|
33
|
+
headers: { Authorization: `Bearer ${idToken}`, ...CLIENT_TYPE_HEADER },
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
catch (error) {
|
|
37
|
+
throw new NetworkError(`getMe request failed: ${error instanceof Error ? error.message : String(error)}`);
|
|
38
|
+
}
|
|
39
|
+
const body = await readBody(response);
|
|
40
|
+
if (!response.ok) {
|
|
41
|
+
throw new AuthHttpError({
|
|
42
|
+
message: `getMe failed (${response.status} ${response.statusText}). ${body.slice(0, 500)}`,
|
|
43
|
+
status: response.status,
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
const parsed = (body ? JSON.parse(body) : {});
|
|
47
|
+
if (!parsed.userId) {
|
|
48
|
+
throw new AuthHttpError({
|
|
49
|
+
message: `getMe succeeded but response had no userId. Body: ${body.slice(0, 500)}`,
|
|
50
|
+
status: response.status,
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
const fullName = composeFullName(parsed);
|
|
54
|
+
if (!fullName) {
|
|
55
|
+
throw new AuthHttpError({
|
|
56
|
+
message: `getMe succeeded but response had no name/firstName/lastName/email. Body: ${body.slice(0, 500)}`,
|
|
57
|
+
status: response.status,
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
const orgsMap = parsed.organizations ?? {};
|
|
61
|
+
const organizations = Object.entries(orgsMap)
|
|
62
|
+
.filter((entry) => Boolean(entry[0] && entry[1].name))
|
|
63
|
+
.map(([organizationId, org]) => ({
|
|
64
|
+
organizationId,
|
|
65
|
+
organizationName: org.name,
|
|
66
|
+
}));
|
|
67
|
+
return { userId: parsed.userId, fullName, email: parsed.email ?? '', organizations };
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=identity-client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"identity-client.js","sourceRoot":"","sources":["../../src/auth/identity-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export { COGNITO_CONFIG } from './cognito-config.js';
|
|
2
|
+
export type { CognitoEnvironmentConfig } from './cognito-config.js';
|
|
3
|
+
export { CognitoAuth } from './cognito-auth.js';
|
|
4
|
+
export type { RefreshSessionOptions, RefreshSessionResult, SignInOptions, SignInResult, } from './cognito-auth.js';
|
|
5
|
+
export { CredentialsStore } from './credentials-store.js';
|
|
6
|
+
export type { ClearUserHomeOptions, ClearUserHomeResult, ReadUserHomeOptions, UserHomeRefreshToken, WriteUserHomeOptions, } from './credentials-store.js';
|
|
7
|
+
export { IdentityClient } from './identity-client.js';
|
|
8
|
+
export type { GetMeOptions as IdentityGetMeOptions, GetMeResult as IdentityGetMeResult, OrganizationSummary as IdentityOrganizationSummary, } from './identity-client.js';
|
|
9
|
+
export { JigxConfigStore } from './jigx-config-store.js';
|
|
10
|
+
export type { JigxConfig, JigxConfigEnvironment } from './jigx-config-store.js';
|
|
11
|
+
export { AuthHttpError, CredentialsSchemaError, InvalidCredentialsError, NetworkError, RefreshExpiredError, } from './errors.js';
|
|
12
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/auth/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACpD,YAAY,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAA;AAEnE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,YAAY,EACV,qBAAqB,EACrB,oBAAoB,EACpB,aAAa,EACb,YAAY,GACb,MAAM,mBAAmB,CAAA;AAE1B,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AACzD,YAAY,EACV,oBAAoB,EACpB,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,wBAAwB,CAAA;AAE/B,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACrD,YAAY,EACV,YAAY,IAAI,oBAAoB,EACpC,WAAW,IAAI,mBAAmB,EAClC,mBAAmB,IAAI,2BAA2B,GACnD,MAAM,sBAAsB,CAAA;AAE7B,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AACxD,YAAY,EAAE,UAAU,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAA;AAE/E,OAAO,EACL,aAAa,EACb,sBAAsB,EACtB,uBAAuB,EACvB,YAAY,EACZ,mBAAmB,GACpB,MAAM,aAAa,CAAA"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { COGNITO_CONFIG } from './cognito-config.js';
|
|
2
|
+
export { CognitoAuth } from './cognito-auth.js';
|
|
3
|
+
export { CredentialsStore } from './credentials-store.js';
|
|
4
|
+
export { IdentityClient } from './identity-client.js';
|
|
5
|
+
export { JigxConfigStore } from './jigx-config-store.js';
|
|
6
|
+
export { AuthHttpError, CredentialsSchemaError, InvalidCredentialsError, NetworkError, RefreshExpiredError, } from './errors.js';
|
|
7
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/auth/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAGpD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAQ/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AASzD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAOrD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAGxD,OAAO,EACL,aAAa,EACb,sBAAsB,EACtB,uBAAuB,EACvB,YAAY,EACZ,mBAAmB,GACpB,MAAM,aAAa,CAAA"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { DeployEnvironment } from '../deployer/index.js';
|
|
2
|
+
export interface JigxConfigEnvironment {
|
|
3
|
+
readonly organizationId: string;
|
|
4
|
+
}
|
|
5
|
+
interface ReadOptions {
|
|
6
|
+
readonly projectRoot: string;
|
|
7
|
+
}
|
|
8
|
+
interface GetEnvironmentOptions {
|
|
9
|
+
readonly projectRoot: string;
|
|
10
|
+
readonly environment: DeployEnvironment;
|
|
11
|
+
}
|
|
12
|
+
interface SetEnvironmentOptions {
|
|
13
|
+
readonly projectRoot: string;
|
|
14
|
+
readonly environment: DeployEnvironment;
|
|
15
|
+
readonly organizationId: string;
|
|
16
|
+
}
|
|
17
|
+
export interface JigxConfig {
|
|
18
|
+
readonly version: number;
|
|
19
|
+
readonly environments: Partial<Record<DeployEnvironment, JigxConfigEnvironment>>;
|
|
20
|
+
}
|
|
21
|
+
export declare class JigxConfigStore {
|
|
22
|
+
read(options: ReadOptions): Promise<JigxConfig | null>;
|
|
23
|
+
getEnvironment(options: GetEnvironmentOptions): Promise<JigxConfigEnvironment | null>;
|
|
24
|
+
setEnvironment(options: SetEnvironmentOptions): Promise<void>;
|
|
25
|
+
}
|
|
26
|
+
export {};
|
|
27
|
+
//# sourceMappingURL=jigx-config-store.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jigx-config-store.d.ts","sourceRoot":"","sources":["../../src/auth/jigx-config-store.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAQ7D,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;CAChC;AAoED,UAAU,WAAW;IACnB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;CAC7B;AAED,UAAU,qBAAqB;IAC7B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,WAAW,EAAE,iBAAiB,CAAA;CACxC;AAED,UAAU,qBAAqB;IAC7B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,WAAW,EAAE,iBAAiB,CAAA;IACvC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;CAChC;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,MAAM,CAAC,iBAAiB,EAAE,qBAAqB,CAAC,CAAC,CAAA;CACjF;AAUD,qBAAa,eAAe;IACpB,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAG3D;IAEK,cAAc,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC,CAK1F;IAEK,cAAc,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CAWlE;CACF"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { readFile, writeFile } from 'node:fs/promises';
|
|
2
|
+
import path from 'node:path';
|
|
3
|
+
import { CredentialsSchemaError } from './errors.js';
|
|
4
|
+
const JIGX_CONFIG_SCHEMA_VERSION = 1;
|
|
5
|
+
const JIGX_CONFIG_FILE = 'jigx.json';
|
|
6
|
+
function jigxConfigPath(projectRoot) {
|
|
7
|
+
return path.join(projectRoot, JIGX_CONFIG_FILE);
|
|
8
|
+
}
|
|
9
|
+
function isFileNotFoundError(error) {
|
|
10
|
+
return (error instanceof Error && 'code' in error && error.code === 'ENOENT');
|
|
11
|
+
}
|
|
12
|
+
function schemaMismatchMessage(options) {
|
|
13
|
+
const { path: filePath, fileVersion, expectedVersion } = options;
|
|
14
|
+
if (fileVersion > expectedVersion) {
|
|
15
|
+
return `${filePath} was written by a newer @jigx/sdk-tools (schema v${fileVersion} > v${expectedVersion}). Upgrade @jigx/sdk-tools to read this file.`;
|
|
16
|
+
}
|
|
17
|
+
return `${filePath} has unsupported schema version ${fileVersion} (expected ${expectedVersion}).`;
|
|
18
|
+
}
|
|
19
|
+
async function readJigxConfigFile(projectRoot) {
|
|
20
|
+
const filePath = jigxConfigPath(projectRoot);
|
|
21
|
+
try {
|
|
22
|
+
const raw = await readFile(filePath, 'utf8');
|
|
23
|
+
const parsed = JSON.parse(raw);
|
|
24
|
+
if (parsed === null ||
|
|
25
|
+
typeof parsed !== 'object' ||
|
|
26
|
+
!('version' in parsed) ||
|
|
27
|
+
!('environments' in parsed)) {
|
|
28
|
+
throw new CredentialsSchemaError(`${filePath} is malformed: missing version or environments field.`);
|
|
29
|
+
}
|
|
30
|
+
const file = parsed;
|
|
31
|
+
if (file.version !== JIGX_CONFIG_SCHEMA_VERSION) {
|
|
32
|
+
throw new CredentialsSchemaError(schemaMismatchMessage({
|
|
33
|
+
path: filePath,
|
|
34
|
+
fileVersion: file.version,
|
|
35
|
+
expectedVersion: JIGX_CONFIG_SCHEMA_VERSION,
|
|
36
|
+
}));
|
|
37
|
+
}
|
|
38
|
+
return file;
|
|
39
|
+
}
|
|
40
|
+
catch (error) {
|
|
41
|
+
if (isFileNotFoundError(error))
|
|
42
|
+
return null;
|
|
43
|
+
if (error instanceof CredentialsSchemaError)
|
|
44
|
+
throw error;
|
|
45
|
+
if (error instanceof SyntaxError) {
|
|
46
|
+
throw new CredentialsSchemaError(`${filePath} is not valid JSON: ${error.message}`);
|
|
47
|
+
}
|
|
48
|
+
throw error;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
export class JigxConfigStore {
|
|
52
|
+
async read(options) {
|
|
53
|
+
const { projectRoot } = options;
|
|
54
|
+
return readJigxConfigFile(projectRoot);
|
|
55
|
+
}
|
|
56
|
+
async getEnvironment(options) {
|
|
57
|
+
const { projectRoot, environment } = options;
|
|
58
|
+
const file = await readJigxConfigFile(projectRoot);
|
|
59
|
+
if (!file)
|
|
60
|
+
return null;
|
|
61
|
+
return file.environments[environment] ?? null;
|
|
62
|
+
}
|
|
63
|
+
async setEnvironment(options) {
|
|
64
|
+
const { projectRoot, environment, organizationId } = options;
|
|
65
|
+
const existing = await readJigxConfigFile(projectRoot);
|
|
66
|
+
const next = {
|
|
67
|
+
version: JIGX_CONFIG_SCHEMA_VERSION,
|
|
68
|
+
environments: {
|
|
69
|
+
...(existing?.environments ?? {}),
|
|
70
|
+
[environment]: { organizationId },
|
|
71
|
+
},
|
|
72
|
+
};
|
|
73
|
+
await writeFile(jigxConfigPath(projectRoot), `${JSON.stringify(next, null, 2)}\n`, 'utf8');
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=jigx-config-store.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jigx-config-store.js","sourceRoot":"","sources":["../../src/auth/jigx-config-store.ts"],"names":[],"mappings":"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"}
|
package/dist/cli.js
CHANGED
|
@@ -1,11 +1,21 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import pkg from '../package.json' with { type: 'json' };
|
|
3
|
+
import { AuthHttpError, InvalidCredentialsError, NetworkError } from './auth/index.js';
|
|
3
4
|
import { build } from './builder/index.js';
|
|
4
|
-
import { create, InstallFailedError
|
|
5
|
-
import { deploy, DeployError } from './deployer/index.js';
|
|
6
|
-
import {
|
|
5
|
+
import { create, InstallFailedError } from './creator/index.js';
|
|
6
|
+
import { deploy, DeployError, MissingOrganizationError, MissingRefreshTokenError, } from './deployer/index.js';
|
|
7
|
+
import { init, InitCancelledError, NoOrganizationsError, NotAuthenticatedError, OrganizationOverrideMismatchError, } from './init/index.js';
|
|
8
|
+
import { login, LoginCancelledError } from './login/index.js';
|
|
9
|
+
import { logout, LogoutCancelledError, LogoutFlagConflictError } from './logout/index.js';
|
|
7
10
|
import { PromptCancelledError } from './prompts/index.js';
|
|
8
11
|
import { ScaffoldError } from './scaffolder/index.js';
|
|
12
|
+
import { whoami } from './whoami/index.js';
|
|
13
|
+
class CliFlagError extends Error {
|
|
14
|
+
constructor(message) {
|
|
15
|
+
super(message);
|
|
16
|
+
this.name = 'CliFlagError';
|
|
17
|
+
}
|
|
18
|
+
}
|
|
9
19
|
const HELP = `jigx — Jigx SDK toolkit for Application projects
|
|
10
20
|
|
|
11
21
|
Usage: jigx <command> [options]
|
|
@@ -13,12 +23,18 @@ Usage: jigx <command> [options]
|
|
|
13
23
|
Commands:
|
|
14
24
|
create Scaffold a new Application project (Title → Name → Type prompts)
|
|
15
25
|
build Build the Application from src/app.ts into build/output.json + build/app/
|
|
26
|
+
login Sign in to Cognito and cache a refresh token in ~/.jigx/refresh-tokens.json
|
|
27
|
+
init Bind this project to an Organization in jigx.json (per environment)
|
|
16
28
|
deploy Build and deploy the Application content; deploys to prod (default) or dev
|
|
29
|
+
whoami Print the live User identity and the project's Organization binding (per env)
|
|
30
|
+
logout Clear cached refresh tokens for one env or all envs
|
|
17
31
|
|
|
18
32
|
Options:
|
|
19
|
-
-v, --version
|
|
20
|
-
-h, --help
|
|
21
|
-
--env <target>
|
|
33
|
+
-v, --version Print the @jigx/sdk-tools package version
|
|
34
|
+
-h, --help Show this help message
|
|
35
|
+
--env <target> Target environment: prod (default) | dev
|
|
36
|
+
--org <id> Organization id (skip the picker on jigx init)
|
|
37
|
+
--all jigx logout: clear all envs from ~/.jigx/refresh-tokens.json
|
|
22
38
|
`;
|
|
23
39
|
async function runBuild() {
|
|
24
40
|
const result = await build({ projectRoot: process.cwd() });
|
|
@@ -26,16 +42,54 @@ async function runBuild() {
|
|
|
26
42
|
console.log(` ${result.outputJsonPath}`);
|
|
27
43
|
console.log(` ${result.extractedFolderPath} (${result.filesExtracted} files)`);
|
|
28
44
|
}
|
|
29
|
-
function
|
|
45
|
+
function parseEnvironmentValue(args) {
|
|
30
46
|
const flagIndex = args.indexOf('--env');
|
|
31
47
|
if (flagIndex === -1)
|
|
32
|
-
return
|
|
33
|
-
const value = args
|
|
48
|
+
return undefined;
|
|
49
|
+
const value = args.at(flagIndex + 1);
|
|
50
|
+
if (value === undefined) {
|
|
51
|
+
throw new CliFlagError(`Missing value for --env. Expected 'dev' or 'prod'.`);
|
|
52
|
+
}
|
|
34
53
|
if (value !== 'dev' && value !== 'prod') {
|
|
35
|
-
throw new
|
|
54
|
+
throw new CliFlagError(`Invalid --env value: "${value}". Expected 'dev' or 'prod'.`);
|
|
55
|
+
}
|
|
56
|
+
return value;
|
|
57
|
+
}
|
|
58
|
+
function parseEnvironment(args) {
|
|
59
|
+
return parseEnvironmentValue(args) ?? 'prod';
|
|
60
|
+
}
|
|
61
|
+
function parseOptionalEnvironment(args) {
|
|
62
|
+
return parseEnvironmentValue(args);
|
|
63
|
+
}
|
|
64
|
+
function parseFlagValue(args, flag) {
|
|
65
|
+
const flagIndex = args.indexOf(flag);
|
|
66
|
+
if (flagIndex === -1)
|
|
67
|
+
return undefined;
|
|
68
|
+
const value = args[flagIndex + 1];
|
|
69
|
+
if (!value || value.startsWith('--')) {
|
|
70
|
+
throw new CliFlagError(`Missing value for ${flag}.`);
|
|
36
71
|
}
|
|
37
72
|
return value;
|
|
38
73
|
}
|
|
74
|
+
const KNOWN_FLAGS_BY_COMMAND = {
|
|
75
|
+
build: [],
|
|
76
|
+
deploy: ['--env'],
|
|
77
|
+
create: [],
|
|
78
|
+
init: ['--env', '--org'],
|
|
79
|
+
login: ['--env'],
|
|
80
|
+
whoami: ['--env'],
|
|
81
|
+
logout: ['--env', '--all'],
|
|
82
|
+
};
|
|
83
|
+
function rejectUnknownFlags(command, args) {
|
|
84
|
+
const known = KNOWN_FLAGS_BY_COMMAND[command];
|
|
85
|
+
if (!known)
|
|
86
|
+
return;
|
|
87
|
+
for (const arg of args) {
|
|
88
|
+
if (arg.startsWith('--') && !known.includes(arg)) {
|
|
89
|
+
throw new CliFlagError(`Unknown flag: ${arg}`);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
}
|
|
39
93
|
async function runDeploy(args) {
|
|
40
94
|
const environment = parseEnvironment(args);
|
|
41
95
|
const result = await deploy({ projectRoot: process.cwd(), environment });
|
|
@@ -43,16 +97,47 @@ async function runDeploy(args) {
|
|
|
43
97
|
console.log(`${verb} Application "${result.applicationName}" to ${environment}.`);
|
|
44
98
|
console.log(` ${result.manageUrl}`);
|
|
45
99
|
}
|
|
100
|
+
async function runInit(args) {
|
|
101
|
+
const environment = parseEnvironment(args);
|
|
102
|
+
const organizationIdOverride = parseFlagValue(args, '--org');
|
|
103
|
+
const result = await init({
|
|
104
|
+
projectRoot: process.cwd(),
|
|
105
|
+
environment,
|
|
106
|
+
organizationIdOverride,
|
|
107
|
+
});
|
|
108
|
+
const verb = result.overwritten ? 'Updated' : 'Bound';
|
|
109
|
+
console.log(`${verb} env "${result.environment}" → ${result.organization.organizationName} (${result.organization.organizationId}).`);
|
|
110
|
+
console.log(`Logged in as ${result.fullName} (${result.userId}).`);
|
|
111
|
+
}
|
|
112
|
+
async function runLogin(args) {
|
|
113
|
+
const environment = parseEnvironment(args);
|
|
114
|
+
const result = await login({ environment });
|
|
115
|
+
console.log(`\nLogged in as ${result.fullName} (${result.userId}).`);
|
|
116
|
+
console.log(`Environment: ${result.environment}`);
|
|
117
|
+
console.log('Run `jigx init` to bind a project.');
|
|
118
|
+
}
|
|
119
|
+
async function runWhoami(args) {
|
|
120
|
+
const environment = parseOptionalEnvironment(args) ?? 'prod';
|
|
121
|
+
const result = await whoami({ projectRoot: process.cwd(), environment });
|
|
122
|
+
console.log(result.formatted);
|
|
123
|
+
if (!result.authenticated)
|
|
124
|
+
process.exit(1);
|
|
125
|
+
}
|
|
126
|
+
async function runLogout(args) {
|
|
127
|
+
const environment = parseOptionalEnvironment(args);
|
|
128
|
+
const all = args.includes('--all');
|
|
129
|
+
const result = await logout({ environment, all });
|
|
130
|
+
console.log(result.formatted);
|
|
131
|
+
}
|
|
46
132
|
async function runCreate() {
|
|
47
133
|
const result = await create({ cwd: process.cwd() });
|
|
48
134
|
console.log(`\nScaffolded Application "${result.answers.applicationName}" at ${result.scaffold.destinationPath}`);
|
|
49
|
-
console.log(`Installed dependencies via
|
|
135
|
+
console.log(`Installed dependencies via npm in ${result.install.durationMs}ms.`);
|
|
50
136
|
console.log('\nNext steps:');
|
|
137
|
+
console.log(' npm i -g @jigx/sdk-tools@next # one-time per machine, puts `jigx` on PATH');
|
|
51
138
|
console.log(` cd ${result.answers.applicationName}`);
|
|
52
|
-
console.log('
|
|
53
|
-
console.log('
|
|
54
|
-
console.log(' yarn build');
|
|
55
|
-
console.log(' yarn deploy # deploys to prod; pass --env dev for staging');
|
|
139
|
+
console.log(' git init # initialize git repository');
|
|
140
|
+
console.log(' jigx deploy # interactive login on first run, deploys to prod');
|
|
56
141
|
}
|
|
57
142
|
async function main() {
|
|
58
143
|
const command = process.argv[2] ?? '';
|
|
@@ -65,6 +150,7 @@ async function main() {
|
|
|
65
150
|
console.log(HELP);
|
|
66
151
|
return;
|
|
67
152
|
}
|
|
153
|
+
rejectUnknownFlags(command, rest);
|
|
68
154
|
switch (command) {
|
|
69
155
|
case 'build':
|
|
70
156
|
await runBuild();
|
|
@@ -75,24 +161,60 @@ async function main() {
|
|
|
75
161
|
case 'create':
|
|
76
162
|
await runCreate();
|
|
77
163
|
return;
|
|
164
|
+
case 'init':
|
|
165
|
+
await runInit(rest);
|
|
166
|
+
return;
|
|
167
|
+
case 'login':
|
|
168
|
+
await runLogin(rest);
|
|
169
|
+
return;
|
|
170
|
+
case 'whoami':
|
|
171
|
+
await runWhoami(rest);
|
|
172
|
+
return;
|
|
173
|
+
case 'logout':
|
|
174
|
+
await runLogout(rest);
|
|
175
|
+
return;
|
|
78
176
|
default:
|
|
79
177
|
console.error(`Unknown command: ${command}\n\n${HELP}`);
|
|
80
178
|
process.exit(1);
|
|
81
179
|
}
|
|
82
180
|
}
|
|
83
181
|
main().catch((error) => {
|
|
84
|
-
if (error instanceof PromptCancelledError
|
|
182
|
+
if (error instanceof PromptCancelledError ||
|
|
183
|
+
error instanceof LoginCancelledError ||
|
|
184
|
+
error instanceof LogoutCancelledError ||
|
|
185
|
+
error instanceof InitCancelledError) {
|
|
85
186
|
process.exit(1);
|
|
86
187
|
}
|
|
87
188
|
const err = error instanceof Error ? error : new Error(String(error));
|
|
88
|
-
if (err instanceof
|
|
189
|
+
if (err instanceof CliFlagError) {
|
|
190
|
+
console.error(`jigx: ${err.message}\n\n${HELP}`);
|
|
191
|
+
}
|
|
192
|
+
else if (err instanceof InvalidCredentialsError) {
|
|
193
|
+
console.error(`Login failed: ${err.message}`);
|
|
194
|
+
}
|
|
195
|
+
else if (err instanceof AuthHttpError) {
|
|
196
|
+
console.error(`Login failed (${err.status}): ${err.message}`);
|
|
197
|
+
}
|
|
198
|
+
else if (err instanceof NetworkError) {
|
|
199
|
+
console.error(`Network error: ${err.message}`);
|
|
200
|
+
}
|
|
201
|
+
else if (err instanceof MissingOrganizationError || err instanceof MissingRefreshTokenError) {
|
|
89
202
|
console.error(`Cannot deploy Application: ${err.message}`);
|
|
90
203
|
}
|
|
91
204
|
else if (err instanceof DeployError) {
|
|
92
205
|
console.error(`Application deploy failed: ${err.message}`);
|
|
93
206
|
}
|
|
94
|
-
else if (err instanceof
|
|
95
|
-
console.error(`
|
|
207
|
+
else if (err instanceof NotAuthenticatedError) {
|
|
208
|
+
console.error(`jigx init: ${err.message}`);
|
|
209
|
+
}
|
|
210
|
+
else if (err instanceof NoOrganizationsError) {
|
|
211
|
+
console.error(`jigx init: ${err.message}`);
|
|
212
|
+
}
|
|
213
|
+
else if (err instanceof OrganizationOverrideMismatchError) {
|
|
214
|
+
console.error(`jigx init: ${err.message}`);
|
|
215
|
+
}
|
|
216
|
+
else if (err instanceof LogoutFlagConflictError) {
|
|
217
|
+
console.error(`jigx logout: ${err.message}`);
|
|
96
218
|
}
|
|
97
219
|
else if (err instanceof ScaffoldError) {
|
|
98
220
|
console.error(`Cannot create Application: ${err.message}`);
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAGA,OAAO,GAAG,MAAM,iBAAiB,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAA;AACvD,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC1C,OAAO,EAAE,MAAM,EAAE,kBAAkB,EAAE,oBAAoB,
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/dist/creator/create.d.ts
CHANGED
|
@@ -11,7 +11,6 @@ export interface CreateOptions {
|
|
|
11
11
|
readonly cwd: string;
|
|
12
12
|
readonly prompts?: () => Promise<CreatePromptAnswers>;
|
|
13
13
|
readonly install?: InstallFn;
|
|
14
|
-
readonly npmToken?: string | undefined;
|
|
15
14
|
}
|
|
16
15
|
export interface CreateResult {
|
|
17
16
|
readonly answers: CreatePromptAnswers;
|
|
@@ -24,8 +23,5 @@ export declare class InstallFailedError extends Error {
|
|
|
24
23
|
readonly exitCode: number;
|
|
25
24
|
});
|
|
26
25
|
}
|
|
27
|
-
export declare class NpmTokenMissingError extends Error {
|
|
28
|
-
constructor();
|
|
29
|
-
}
|
|
30
26
|
export declare function create(options: CreateOptions): Promise<CreateResult>;
|
|
31
27
|
//# sourceMappingURL=create.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../src/creator/create.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,mBAAmB,EAAoB,MAAM,qBAAqB,CAAA;AAChF,OAAO,EAAY,KAAK,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAEtE,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;CAC5B;AAED,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,EAAE;IAAE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CAAE,KAAK,OAAO,CAAC,kBAAkB,CAAC,CAAA;AAE1F,MAAM,WAAW,aAAa;IAE5B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IAEpB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,OAAO,CAAC,mBAAmB,CAAC,CAAA;IAErD,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../src/creator/create.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,mBAAmB,EAAoB,MAAM,qBAAqB,CAAA;AAChF,OAAO,EAAY,KAAK,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAEtE,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;CAC5B;AAED,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,EAAE;IAAE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CAAE,KAAK,OAAO,CAAC,kBAAkB,CAAC,CAAA;AAE1F,MAAM,WAAW,aAAa;IAE5B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IAEpB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,OAAO,CAAC,mBAAmB,CAAC,CAAA;IAErD,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,CAAA;CAC7B;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,OAAO,EAAE,mBAAmB,CAAA;IACrC,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAA;IACjC,QAAQ,CAAC,OAAO,EAAE,kBAAkB,CAAA;CACrC;AAED,qBAAa,kBAAmB,SAAQ,KAAK;IAC3C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IAEzB,YAAY,OAAO,EAAE;QAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,EAOjD;CACF;AA6BD,wBAAsB,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CAmB1E"}
|
package/dist/creator/create.js
CHANGED
|
@@ -5,28 +5,17 @@ import { scaffold } from '../scaffolder/index.js';
|
|
|
5
5
|
export class InstallFailedError extends Error {
|
|
6
6
|
exitCode;
|
|
7
7
|
constructor(options) {
|
|
8
|
-
super(`
|
|
9
|
-
`Run "
|
|
10
|
-
`If the failure mentions 401/403 against @jigx/*, ensure NPM_TOKEN is exported in your shell ` +
|
|
11
|
-
`(1Password item 'npm', field 'jigx read only token') and that your one-time ~/.npmrc contains ` +
|
|
12
|
-
`\`//registry.npmjs.org/:_authToken=\${NPM_TOKEN}\`.`);
|
|
8
|
+
super(`npm install exited with code ${options.exitCode}. ` +
|
|
9
|
+
`Run "npm install" inside the new project directory to retry.`);
|
|
13
10
|
this.name = 'InstallFailedError';
|
|
14
11
|
this.exitCode = options.exitCode;
|
|
15
12
|
}
|
|
16
13
|
}
|
|
17
|
-
export class NpmTokenMissingError extends Error {
|
|
18
|
-
constructor() {
|
|
19
|
-
super(`NPM_TOKEN environment variable not set. @jigx packages are published with restricted access. ` +
|
|
20
|
-
`Get the token from 1Password (item 'npm', field 'jigx read only token') and add to your shell: ` +
|
|
21
|
-
`\`export NPM_TOKEN="..."\`. Then re-run: \`npx @jigx/sdk-tools create\`.`);
|
|
22
|
-
this.name = 'NpmTokenMissingError';
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
14
|
const defaultInstall = (options) => {
|
|
26
15
|
const { cwd } = options;
|
|
27
16
|
return new Promise((resolve, reject) => {
|
|
28
17
|
const startTime = Date.now();
|
|
29
|
-
const child = spawn('
|
|
18
|
+
const child = spawn('npm', ['install'], {
|
|
30
19
|
cwd,
|
|
31
20
|
stdio: 'inherit',
|
|
32
21
|
shell: process.platform === 'win32',
|
|
@@ -43,10 +32,7 @@ const defaultInstall = (options) => {
|
|
|
43
32
|
});
|
|
44
33
|
};
|
|
45
34
|
export async function create(options) {
|
|
46
|
-
const { cwd, prompts = runCreatePrompts, install = defaultInstall
|
|
47
|
-
if (!npmToken || npmToken.trim().length === 0) {
|
|
48
|
-
throw new NpmTokenMissingError();
|
|
49
|
-
}
|
|
35
|
+
const { cwd, prompts = runCreatePrompts, install = defaultInstall } = options;
|
|
50
36
|
const answers = await prompts();
|
|
51
37
|
const destinationPath = path.join(cwd, answers.applicationName);
|
|
52
38
|
const scaffoldResult = await scaffold({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../src/creator/create.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC1C,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,OAAO,EAA4B,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAChF,OAAO,EAAE,QAAQ,EAAuB,MAAM,wBAAwB,CAAA;
|
|
1
|
+
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../src/creator/create.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC1C,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,OAAO,EAA4B,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAChF,OAAO,EAAE,QAAQ,EAAuB,MAAM,wBAAwB,CAAA;AAwBtE,MAAM,OAAO,kBAAmB,SAAQ,KAAK;IAClC,QAAQ,CAAQ;IAEzB,YAAY,OAAsC,EAAE;QAClD,KAAK,CACH,gCAAgC,OAAO,CAAC,QAAQ,IAAI;YAClD,8DAA8D,CACjE,CAAA;QACD,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAA;QAChC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAA;IAAA,CACjC;CACF;AAED,MAAM,cAAc,GAAc,CAAC,OAAO,EAAE,EAAE,CAAC;IAC7C,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAA;IACvB,OAAO,IAAI,OAAO,CAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC;QAC1D,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QAC5B,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC,SAAS,CAAC,EAAE;YACtC,GAAG;YACH,KAAK,EAAE,SAAS;YAChB,KAAK,EAAE,OAAO,CAAC,QAAQ,KAAK,OAAO;SACpC,CAAC,CAAA;QACF,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAY,EAAE,EAAE,CAAC;YAClC,MAAM,CAAC,KAAK,CAAC,CAAA;QAAA,CACd,CAAC,CAAA;QACF,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;YACzB,OAAO,CAAC;gBACN,QAAQ,EAAE,IAAI,IAAI,CAAC;gBACnB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;aACnC,CAAC,CAAA;QAAA,CACH,CAAC,CAAA;IAAA,CACH,CAAC,CAAA;AAAA,CACH,CAAA;AAQD,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,OAAsB,EAAyB;IAC1E,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,gBAAgB,EAAE,OAAO,GAAG,cAAc,EAAE,GAAG,OAAO,CAAA;IAE7E,MAAM,OAAO,GAAG,MAAM,OAAO,EAAE,CAAA;IAC/B,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,eAAe,CAAC,CAAA;IAE/D,MAAM,cAAc,GAAG,MAAM,QAAQ,CAAC;QACpC,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,eAAe,EAAE,OAAO,CAAC,eAAe;QACxC,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,eAAe;KAChB,CAAC,CAAA;IAEF,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,EAAE,GAAG,EAAE,eAAe,EAAE,CAAC,CAAA;IAC7D,IAAI,aAAa,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;QACjC,MAAM,IAAI,kBAAkB,CAAC,EAAE,QAAQ,EAAE,aAAa,CAAC,QAAQ,EAAE,CAAC,CAAA;IACpE,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,OAAO,EAAE,aAAa,EAAE,CAAA;AAAA,CACrE"}
|
package/dist/creator/index.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export { create, InstallFailedError
|
|
1
|
+
export { create, InstallFailedError } from './create.js';
|
|
2
2
|
export type { CreateOptions, CreateResult, InstallFn, InstallSpawnResult } from './create.js';
|
|
3
3
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/creator/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,kBAAkB,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/creator/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AACxD,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA"}
|
package/dist/creator/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { create, InstallFailedError
|
|
1
|
+
export { create, InstallFailedError } from './create.js';
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/creator/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,kBAAkB,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/creator/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA"}
|
|
@@ -37,13 +37,13 @@ function deployErrorFromResponse(options) {
|
|
|
37
37
|
const detail = body ? ` Response: ${body.slice(0, 500)}` : '';
|
|
38
38
|
if (status === 401 || status === 403) {
|
|
39
39
|
return new DeployError({
|
|
40
|
-
message: `${baseMessage}
|
|
40
|
+
message: `${baseMessage} The cached session was rejected — re-run \`jigx login\` to refresh.${detail}`,
|
|
41
41
|
status,
|
|
42
42
|
});
|
|
43
43
|
}
|
|
44
44
|
if (status === 404) {
|
|
45
45
|
return new DeployError({
|
|
46
|
-
message: `${baseMessage}
|
|
46
|
+
message: `${baseMessage} The Organization or Application was not found — re-run \`jigx init\` to rebind, or check the bound Organization in jigx.json.${detail}`,
|
|
47
47
|
status,
|
|
48
48
|
});
|
|
49
49
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deploy-to-strata.js","sourceRoot":"","sources":["../../src/deployer/deploy-to-strata.ts"],"names":[],"mappings":"AAkCA,MAAM,OAAO,WAAY,SAAQ,KAAK;IAC3B,MAAM,CAAS;IAExB,YAAY,OAA+D,EAAE;QAC3E,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QACtB,IAAI,CAAC,IAAI,GAAG,aAAa,CAAA;QACzB,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAA;IAAA,CAC7B;CACF;AAOD,MAAM,gBAAgB,GAA+C;IACnE,GAAG,EAAE;QACH,aAAa,EAAE,yCAAyC;QACxD,aAAa,EAAE,6BAA6B;KAC7C;IACD,IAAI,EAAE;QACJ,aAAa,EAAE,qCAAqC;QACpD,aAAa,EAAE,yBAAyB;KACzC;CACF,CAAA;AAED,SAAS,WAAW,CAAC,MAAc,EAA0B;IAC3D,OAAO;QACL,aAAa,EAAE,UAAU,MAAM,EAAE;QACjC,cAAc,EAAE,kBAAkB;KACnC,CAAA;AAAA,CACF;AAED,KAAK,UAAU,gBAAgB,CAAC,QAAkB,EAAmB;IACnE,IAAI,CAAC;QACH,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;IAC9B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAA;IACX,CAAC;AAAA,CACF;AAED,SAAS,uBAAuB,CAAC,OAIhC,EAAe;IACd,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,OAAO,CAAA;IAC1C,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAA;IAC9B,MAAM,WAAW,GAAG,GAAG,MAAM,YAAY,MAAM,IAAI,QAAQ,CAAC,UAAU,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAA;IACvF,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,cAAc,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;IAE7D,IAAI,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;QACrC,OAAO,IAAI,WAAW,CAAC;YACrB,OAAO,EAAE,GAAG,WAAW,
|
|
1
|
+
{"version":3,"file":"deploy-to-strata.js","sourceRoot":"","sources":["../../src/deployer/deploy-to-strata.ts"],"names":[],"mappings":"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"}
|