@slicemachine/manager 0.1.1-dev-plugins.11 → 0.1.1-dev-plugins.13
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 +85 -0
- package/dist/constants/API_ENDPOINTS.cjs.map +1 -1
- package/dist/constants/API_ENDPOINTS.d.ts +1 -2
- package/dist/constants/API_ENDPOINTS.js.map +1 -1
- package/dist/errors.cjs.map +1 -1
- package/dist/errors.d.ts +1 -1
- package/dist/errors.js.map +1 -1
- package/dist/lib/buildPrismicRepositoryAPIEndpoint.cjs +9 -0
- package/dist/lib/buildPrismicRepositoryAPIEndpoint.cjs.map +1 -0
- package/dist/lib/buildPrismicRepositoryAPIEndpoint.d.ts +4 -0
- package/dist/lib/buildPrismicRepositoryAPIEndpoint.js +9 -0
- package/dist/lib/buildPrismicRepositoryAPIEndpoint.js.map +1 -0
- package/dist/lib/decodePackageJSON.cjs +29 -0
- package/dist/lib/decodePackageJSON.cjs.map +1 -0
- package/dist/lib/decodePackageJSON.d.ts +12 -0
- package/dist/lib/decodePackageJSON.js +12 -0
- package/dist/lib/decodePackageJSON.js.map +1 -0
- package/dist/lib/locateFileUpward.cjs +8 -11
- package/dist/lib/locateFileUpward.cjs.map +1 -1
- package/dist/lib/locateFileUpward.js +8 -11
- package/dist/lib/locateFileUpward.js.map +1 -1
- package/dist/managers/SliceMachineManager.cjs +17 -11
- package/dist/managers/SliceMachineManager.cjs.map +1 -1
- package/dist/managers/SliceMachineManager.d.ts +6 -0
- package/dist/managers/SliceMachineManager.js +17 -11
- package/dist/managers/SliceMachineManager.js.map +1 -1
- package/dist/managers/createSliceMachineManager.cjs +2 -2
- package/dist/managers/createSliceMachineManager.cjs.map +1 -1
- package/dist/managers/createSliceMachineManager.d.ts +4 -3
- package/dist/managers/createSliceMachineManager.js +2 -2
- package/dist/managers/createSliceMachineManager.js.map +1 -1
- package/dist/managers/slices/SlicesManager.cjs +21 -4
- package/dist/managers/slices/SlicesManager.cjs.map +1 -1
- package/dist/managers/slices/SlicesManager.d.ts +1 -1
- package/dist/managers/slices/SlicesManager.js +21 -4
- package/dist/managers/slices/SlicesManager.js.map +1 -1
- package/dist/managers/telemetry/TelemetryManager.cjs +3 -1
- package/dist/managers/telemetry/TelemetryManager.cjs.map +1 -1
- package/dist/managers/telemetry/TelemetryManager.js +3 -1
- package/dist/managers/telemetry/TelemetryManager.js.map +1 -1
- package/dist/managers/user/UserManager.cjs +6 -2
- package/dist/managers/user/UserManager.cjs.map +1 -1
- package/dist/managers/user/UserManager.d.ts +2 -0
- package/dist/managers/user/UserManager.js +6 -2
- package/dist/managers/user/UserManager.js.map +1 -1
- package/dist/managers/versions/VersionsManager.cjs +14 -3
- package/dist/managers/versions/VersionsManager.cjs.map +1 -1
- package/dist/managers/versions/VersionsManager.js +14 -3
- package/dist/managers/versions/VersionsManager.js.map +1 -1
- package/dist/managers/versions/types.d.ts +1 -1
- package/dist/types.d.ts +1 -1
- package/package.json +7 -5
- package/src/constants/API_ENDPOINTS.ts +1 -1
- package/src/errors.ts +1 -74
- package/src/lib/buildPrismicRepositoryAPIEndpoint.ts +16 -0
- package/src/lib/decodePackageJSON.ts +18 -0
- package/src/lib/locateFileUpward.ts +8 -12
- package/src/managers/SliceMachineManager.ts +31 -31
- package/src/managers/createSliceMachineManager.ts +3 -3
- package/src/managers/slices/SlicesManager.ts +24 -7
- package/src/managers/telemetry/TelemetryManager.ts +6 -0
- package/src/managers/user/UserManager.ts +12 -0
- package/src/managers/versions/VersionsManager.ts +22 -6
- package/src/managers/versions/types.ts +1 -1
- package/src/types.ts +1 -1
|
@@ -2,10 +2,10 @@ import { SliceMachineManager } from "./SliceMachineManager";
|
|
|
2
2
|
|
|
3
3
|
type CreateSliceMachineManagerArgs = ConstructorParameters<
|
|
4
4
|
typeof SliceMachineManager
|
|
5
|
-
|
|
5
|
+
>;
|
|
6
6
|
|
|
7
7
|
export const createSliceMachineManager = (
|
|
8
|
-
args
|
|
8
|
+
...args: CreateSliceMachineManagerArgs
|
|
9
9
|
): SliceMachineManager => {
|
|
10
|
-
return new SliceMachineManager(args);
|
|
10
|
+
return new SliceMachineManager(...args);
|
|
11
11
|
};
|
|
@@ -104,7 +104,7 @@ type SliceMachineManagerReadSliceMocksArgs = {
|
|
|
104
104
|
|
|
105
105
|
type SliceMachineManagerReadSliceMocksReturnType = {
|
|
106
106
|
mocks?: SharedSliceContent[];
|
|
107
|
-
errors: HookError[];
|
|
107
|
+
errors: (DecodeError | HookError)[];
|
|
108
108
|
};
|
|
109
109
|
|
|
110
110
|
type SliceMachineManagerReadSliceMocksConfigArgs = {
|
|
@@ -467,19 +467,36 @@ export class SlicesManager extends BaseManager {
|
|
|
467
467
|
assetID: `mocks.json`,
|
|
468
468
|
},
|
|
469
469
|
);
|
|
470
|
-
const data =
|
|
471
|
-
|
|
472
|
-
|
|
470
|
+
const { data, errors } = decodeHookResult(
|
|
471
|
+
t.type({
|
|
472
|
+
data: t.array(SharedSliceContent),
|
|
473
|
+
}),
|
|
474
|
+
{
|
|
475
|
+
...hookResult,
|
|
476
|
+
// Convert the asset data from a Buffer to JSON
|
|
477
|
+
// to prepare it for validation.
|
|
478
|
+
data: hookResult.data.map((result) => {
|
|
479
|
+
try {
|
|
480
|
+
return {
|
|
481
|
+
...result,
|
|
482
|
+
data: JSON.parse(result.data.toString()),
|
|
483
|
+
};
|
|
484
|
+
} catch {
|
|
485
|
+
return result;
|
|
486
|
+
}
|
|
487
|
+
}),
|
|
488
|
+
},
|
|
489
|
+
);
|
|
473
490
|
|
|
474
491
|
if (data) {
|
|
475
492
|
return {
|
|
476
|
-
mocks:
|
|
477
|
-
errors
|
|
493
|
+
mocks: data[0]?.data,
|
|
494
|
+
errors,
|
|
478
495
|
};
|
|
479
496
|
} else {
|
|
480
497
|
return {
|
|
481
498
|
mocks: [],
|
|
482
|
-
errors
|
|
499
|
+
errors,
|
|
483
500
|
};
|
|
484
501
|
}
|
|
485
502
|
}
|
|
@@ -56,6 +56,12 @@ export class TelemetryManager extends BaseManager {
|
|
|
56
56
|
flushAt: 1,
|
|
57
57
|
// TODO: Verify that this actually does not send data to Segment when false.
|
|
58
58
|
enable: this._enabled,
|
|
59
|
+
errorHandler: () => {
|
|
60
|
+
// noop - We don't care if the tracking event
|
|
61
|
+
// failed. Some users or networks intentionally
|
|
62
|
+
// block Segment, so we can't block the app if
|
|
63
|
+
// a tracking event is unsuccessful.
|
|
64
|
+
},
|
|
59
65
|
});
|
|
60
66
|
this._anonymousID = randomUUID();
|
|
61
67
|
}
|
|
@@ -1,6 +1,18 @@
|
|
|
1
|
+
import { SliceMachineError } from "../../errors";
|
|
1
2
|
import { BaseManager } from "../BaseManager";
|
|
3
|
+
import { SliceMachineManager } from "../SliceMachineManager";
|
|
2
4
|
|
|
3
5
|
export class UserManager extends BaseManager {
|
|
6
|
+
constructor(sliceMachineManager: SliceMachineManager) {
|
|
7
|
+
super(sliceMachineManager);
|
|
8
|
+
|
|
9
|
+
if (!sliceMachineManager.getPrismicAuthManager()) {
|
|
10
|
+
throw new SliceMachineError(
|
|
11
|
+
"SliceMachineManager._prismicAuthManager must be set with a PrismicAuthManager instance before instantiating UserManager.",
|
|
12
|
+
);
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
|
|
4
16
|
login = this.prismicAuthManager.login.bind(this.prismicAuthManager);
|
|
5
17
|
getLoginSessionInfo = this.prismicAuthManager.getLoginSessionInfo.bind(
|
|
6
18
|
this.prismicAuthManager,
|
|
@@ -2,6 +2,7 @@ import * as fs from "node:fs/promises";
|
|
|
2
2
|
import * as path from "node:path";
|
|
3
3
|
import semver from "semver";
|
|
4
4
|
|
|
5
|
+
import { decodePackageJSON } from "../../lib/decodePackageJSON";
|
|
5
6
|
import {
|
|
6
7
|
fetchGitHubReleaseBodyForRelease,
|
|
7
8
|
GitHubReleaseMetadata,
|
|
@@ -21,12 +22,14 @@ import { Version } from "./types";
|
|
|
21
22
|
const detectVersionBumpKind = (
|
|
22
23
|
to: string,
|
|
23
24
|
from?: string,
|
|
24
|
-
): typeof VERSION_KIND[keyof typeof VERSION_KIND] => {
|
|
25
|
+
): typeof VERSION_KIND[keyof typeof VERSION_KIND] | undefined => {
|
|
25
26
|
if (!from) {
|
|
26
27
|
return VERSION_KIND.FIRST;
|
|
27
28
|
}
|
|
28
29
|
|
|
29
|
-
if (semver.
|
|
30
|
+
if (semver.eq(to, from)) {
|
|
31
|
+
return undefined;
|
|
32
|
+
} else if (semver.satisfies(to, `~${from}`)) {
|
|
30
33
|
return VERSION_KIND.PATCH;
|
|
31
34
|
} else if (semver.satisfies(to, `^${from}`)) {
|
|
32
35
|
return VERSION_KIND.MINOR;
|
|
@@ -56,11 +59,24 @@ export class VersionsManager extends BaseManager {
|
|
|
56
59
|
"utf8",
|
|
57
60
|
);
|
|
58
61
|
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
+
let sliceMachinePackageJSON: unknown;
|
|
63
|
+
try {
|
|
64
|
+
sliceMachinePackageJSON = JSON.parse(sliceMachinePackageJSONContents);
|
|
65
|
+
} catch {
|
|
66
|
+
// noop
|
|
67
|
+
}
|
|
62
68
|
|
|
63
|
-
|
|
69
|
+
const { value, error } = decodePackageJSON(sliceMachinePackageJSON);
|
|
70
|
+
|
|
71
|
+
if (error) {
|
|
72
|
+
throw new Error(
|
|
73
|
+
`Invalid ${SLICE_MACHINE_NPM_PACKAGE_NAME} \`package.json\` file. ${error.errors.join(
|
|
74
|
+
", ",
|
|
75
|
+
)}`,
|
|
76
|
+
);
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
return value.version;
|
|
64
80
|
}
|
|
65
81
|
|
|
66
82
|
async getAllStableSliceMachineVersions(): Promise<string[]> {
|
package/src/types.ts
CHANGED
|
@@ -13,7 +13,7 @@ export type PackageChangelog = {
|
|
|
13
13
|
export type PackageVersion = {
|
|
14
14
|
versionNumber: string;
|
|
15
15
|
releaseNote: string | null;
|
|
16
|
-
kind: typeof VERSION_KIND[keyof typeof VERSION_KIND] |
|
|
16
|
+
kind: typeof VERSION_KIND[keyof typeof VERSION_KIND] | undefined;
|
|
17
17
|
};
|
|
18
18
|
|
|
19
19
|
/**
|