@trigger.dev/core 0.0.0-prerelease-local-bundle-20260824142657 → 0.0.0-prerelease-local-bundle-20260825080823
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/commonjs/v3/isomorphic/friendlyId.d.ts +59 -1
- package/dist/commonjs/v3/isomorphic/friendlyId.js +152 -12
- package/dist/commonjs/v3/isomorphic/friendlyId.js.map +1 -1
- package/dist/commonjs/v3/isomorphic/friendlyId.test.js +269 -1
- package/dist/commonjs/v3/isomorphic/friendlyId.test.js.map +1 -1
- package/dist/commonjs/v3/isomorphic/runOpsResidency.d.ts +21 -7
- package/dist/commonjs/v3/isomorphic/runOpsResidency.js +23 -7
- package/dist/commonjs/v3/isomorphic/runOpsResidency.js.map +1 -1
- package/dist/commonjs/v3/isomorphic/runOpsResidency.test.js +85 -2
- package/dist/commonjs/v3/isomorphic/runOpsResidency.test.js.map +1 -1
- package/dist/commonjs/version.js +1 -1
- package/dist/esm/v3/isomorphic/friendlyId.d.ts +59 -1
- package/dist/esm/v3/isomorphic/friendlyId.js +146 -11
- package/dist/esm/v3/isomorphic/friendlyId.js.map +1 -1
- package/dist/esm/v3/isomorphic/friendlyId.test.js +270 -2
- package/dist/esm/v3/isomorphic/friendlyId.test.js.map +1 -1
- package/dist/esm/v3/isomorphic/runOpsResidency.d.ts +21 -7
- package/dist/esm/v3/isomorphic/runOpsResidency.js +23 -8
- package/dist/esm/v3/isomorphic/runOpsResidency.js.map +1 -1
- package/dist/esm/v3/isomorphic/runOpsResidency.test.js +87 -4
- package/dist/esm/v3/isomorphic/runOpsResidency.test.js.map +1 -1
- package/dist/esm/version.js +1 -1
- package/package.json +1 -1
|
@@ -3,6 +3,8 @@ export declare const RUN_OPS_ID_LENGTH = 26;
|
|
|
3
3
|
export declare const RUN_OPS_ID_REGION_INDEX = 24;
|
|
4
4
|
export declare const RUN_OPS_ID_VERSION_INDEX = 25;
|
|
5
5
|
export declare const RUN_OPS_ID_VERSION = "1";
|
|
6
|
+
export declare const RUN_OPS_ID_VERSION_2 = "2";
|
|
7
|
+
export declare const RUN_OPS_ID_SHARD_INDEX = 24;
|
|
6
8
|
/** Region char stamped when the region is unknown or unmapped at mint. */
|
|
7
9
|
export declare const DEFAULT_REGION_CHAR = "0";
|
|
8
10
|
/** One lowercase [a-z0-9] char per supported region, at RUN_OPS_ID_REGION_INDEX. */
|
|
@@ -19,12 +21,24 @@ export declare function base32hexDecode(s: string): Uint8Array;
|
|
|
19
21
|
* discriminator — see runOpsResidency.ts.
|
|
20
22
|
*/
|
|
21
23
|
export declare function generateRunOpsId(region?: string): string;
|
|
24
|
+
/**
|
|
25
|
+
* Mint a gen-2 id body (26 chars, no prefix): the same core, then the shard key,
|
|
26
|
+
* then version char "2". Throws on a shard char outside [a-z0-9] — an id that
|
|
27
|
+
* cannot be routed must never be minted.
|
|
28
|
+
*/
|
|
29
|
+
export declare function generateRunOpsIdV2(shardChar: string): string;
|
|
22
30
|
export type ParsedRunId = {
|
|
23
31
|
format: "b32hex";
|
|
24
32
|
table: "partitioned";
|
|
25
33
|
timestamp: Date;
|
|
26
34
|
region: string;
|
|
27
35
|
version: string;
|
|
36
|
+
} | {
|
|
37
|
+
format: "b32hexV2";
|
|
38
|
+
table: "partitioned";
|
|
39
|
+
timestamp: Date;
|
|
40
|
+
shard: string;
|
|
41
|
+
version: string;
|
|
28
42
|
} | {
|
|
29
43
|
format: "legacy";
|
|
30
44
|
table: "legacy";
|
|
@@ -40,10 +54,54 @@ export declare function parseRunOpsIdBody(body: string): {
|
|
|
40
54
|
region: string;
|
|
41
55
|
version: string;
|
|
42
56
|
} | undefined;
|
|
57
|
+
/**
|
|
58
|
+
* Parse a gen-2 id body (no prefix): the mirror of {@link parseRunOpsIdBody},
|
|
59
|
+
* requiring version "2" at index 25 and a shard key in [a-z0-9] at index 24.
|
|
60
|
+
* Total: returns undefined for any other string, and never throws.
|
|
61
|
+
*/
|
|
62
|
+
export declare function parseRunOpsIdV2Body(body: string): {
|
|
63
|
+
timestamp: Date;
|
|
64
|
+
shard: string;
|
|
65
|
+
version: string;
|
|
66
|
+
} | undefined;
|
|
43
67
|
/** True if the (prefixless) id body is a well-formed run-ops v1 id. */
|
|
44
68
|
export declare function isRunOpsIdBody(body: string): boolean;
|
|
45
|
-
/** Parse a `run_`-prefixed friendly id; anything not a well-formed v1 id is legacy. */
|
|
69
|
+
/** Parse a `run_`-prefixed friendly id; anything not a well-formed v1/gen-2 id is legacy. */
|
|
46
70
|
export declare function parseRunId(id: string): ParsedRunId;
|
|
71
|
+
export declare const WAITPOINT_ID_VERSION = "w";
|
|
72
|
+
export declare const WAITPOINT_ID_TYPE_INDEX = 24;
|
|
73
|
+
export type WaitpointIdType = "RUN" | "BATCH" | "DATETIME" | "MANUAL";
|
|
74
|
+
export type ParsedWaitpointId = {
|
|
75
|
+
format: "b32hexW";
|
|
76
|
+
type: WaitpointIdType;
|
|
77
|
+
timestamp: Date;
|
|
78
|
+
} | {
|
|
79
|
+
format: "legacy";
|
|
80
|
+
};
|
|
81
|
+
/**
|
|
82
|
+
* Mint a standalone waitpoint id body (26 chars, no prefix) for DATETIME and MANUAL: a
|
|
83
|
+
* fresh core, the type char, then the waitpoint version char.
|
|
84
|
+
*/
|
|
85
|
+
export declare function generateWaitpointId(type: WaitpointIdType): string;
|
|
86
|
+
/**
|
|
87
|
+
* Derive the 1:1 waitpoint id body for a RUN or BATCH anchor by reusing the anchor's
|
|
88
|
+
* 24-char core. Pure, so create-if-absent is idempotent without a lock. Returns
|
|
89
|
+
* undefined when the anchor is not a run-ops id, which is the caller's signal to mint a
|
|
90
|
+
* legacy waitpoint instead.
|
|
91
|
+
*
|
|
92
|
+
* Only the core survives: the anchor's region or shard char and its version char are
|
|
93
|
+
* both replaced. So the anchor id is NOT recoverable from the waitpoint id — the reverse
|
|
94
|
+
* direction uses the completedBy* back-pointer.
|
|
95
|
+
*/
|
|
96
|
+
export declare function deriveWaitpointIdFromAnchor(anchorId: string, type: WaitpointIdType): string | undefined;
|
|
97
|
+
/**
|
|
98
|
+
* Classify a waitpoint id. Accepts the prefixed (`waitpoint_<body>`) and bare forms, but
|
|
99
|
+
* NOT another entity's prefix (`run_`, `batch_`, ...) — this is the discriminator a
|
|
100
|
+
* later ticket uses to route a possibly customer-supplied id, so a foreign prefix must
|
|
101
|
+
* classify legacy rather than have its body reinterpreted as a waitpoint id. Total:
|
|
102
|
+
* never throws.
|
|
103
|
+
*/
|
|
104
|
+
export declare function parseWaitpointId(id: string): ParsedWaitpointId;
|
|
47
105
|
export declare function generateInternalId(): string;
|
|
48
106
|
/** Convert an internal ID to a friendly ID */
|
|
49
107
|
export declare function toFriendlyId(entityName: string, internalId: string): string;
|
|
@@ -3,15 +3,20 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.IdGenerator = exports.WebhookDeliveryId = exports.WebhookEndpointId = exports.SessionId = exports.ErrorId = exports.AttemptId = exports.BulkActionId = exports.BatchId = exports.WaitpointId = exports.SnapshotId = exports.RunId = exports.QueueId = exports.CheckpointId = exports.BackgroundWorkerId = exports.IdUtil = exports.REGION_CODES = exports.DEFAULT_REGION_CHAR = exports.RUN_OPS_ID_VERSION = exports.RUN_OPS_ID_VERSION_INDEX = exports.RUN_OPS_ID_REGION_INDEX = exports.RUN_OPS_ID_LENGTH = void 0;
|
|
6
|
+
exports.IdGenerator = exports.WebhookDeliveryId = exports.WebhookEndpointId = exports.SessionId = exports.ErrorId = exports.AttemptId = exports.BulkActionId = exports.BatchId = exports.WaitpointId = exports.SnapshotId = exports.RunId = exports.QueueId = exports.CheckpointId = exports.BackgroundWorkerId = exports.IdUtil = exports.WAITPOINT_ID_TYPE_INDEX = exports.WAITPOINT_ID_VERSION = exports.REGION_CODES = exports.DEFAULT_REGION_CHAR = exports.RUN_OPS_ID_SHARD_INDEX = exports.RUN_OPS_ID_VERSION_2 = exports.RUN_OPS_ID_VERSION = exports.RUN_OPS_ID_VERSION_INDEX = exports.RUN_OPS_ID_REGION_INDEX = exports.RUN_OPS_ID_LENGTH = void 0;
|
|
7
7
|
exports.generateFriendlyId = generateFriendlyId;
|
|
8
8
|
exports.regionCharForRegion = regionCharForRegion;
|
|
9
9
|
exports.base32hexEncode = base32hexEncode;
|
|
10
10
|
exports.base32hexDecode = base32hexDecode;
|
|
11
11
|
exports.generateRunOpsId = generateRunOpsId;
|
|
12
|
+
exports.generateRunOpsIdV2 = generateRunOpsIdV2;
|
|
12
13
|
exports.parseRunOpsIdBody = parseRunOpsIdBody;
|
|
14
|
+
exports.parseRunOpsIdV2Body = parseRunOpsIdV2Body;
|
|
13
15
|
exports.isRunOpsIdBody = isRunOpsIdBody;
|
|
14
16
|
exports.parseRunId = parseRunId;
|
|
17
|
+
exports.generateWaitpointId = generateWaitpointId;
|
|
18
|
+
exports.deriveWaitpointIdFromAnchor = deriveWaitpointIdFromAnchor;
|
|
19
|
+
exports.parseWaitpointId = parseWaitpointId;
|
|
15
20
|
exports.generateInternalId = generateInternalId;
|
|
16
21
|
exports.toFriendlyId = toFriendlyId;
|
|
17
22
|
exports.fromFriendlyId = fromFriendlyId;
|
|
@@ -37,6 +42,11 @@ exports.RUN_OPS_ID_LENGTH = 26;
|
|
|
37
42
|
exports.RUN_OPS_ID_REGION_INDEX = 24;
|
|
38
43
|
exports.RUN_OPS_ID_VERSION_INDEX = 25;
|
|
39
44
|
exports.RUN_OPS_ID_VERSION = "1";
|
|
45
|
+
// Gen-2 id: same 26-char layout, but index 24 carries a routing SHARD KEY rather
|
|
46
|
+
// than a region char. MUST stay 26 chars: a 27-char shape could collide with the
|
|
47
|
+
// pre-cutover base62 format, which must keep classifying legacy.
|
|
48
|
+
exports.RUN_OPS_ID_VERSION_2 = "2";
|
|
49
|
+
exports.RUN_OPS_ID_SHARD_INDEX = exports.RUN_OPS_ID_REGION_INDEX;
|
|
40
50
|
const RUN_OPS_ID_CORE_BYTES = 15; // 6 timestamp + 9 random → exactly 24 base32hex chars
|
|
41
51
|
const RUN_OPS_ID_CORE_LENGTH = 24;
|
|
42
52
|
const RUN_OPS_ID_TIMESTAMP_BYTES = 6;
|
|
@@ -46,6 +56,8 @@ exports.DEFAULT_REGION_CHAR = "0";
|
|
|
46
56
|
// decoding), NOT part of the base32hex core — so it may use the full DNS-safe
|
|
47
57
|
// lowercase [a-z0-9] range (e.g. "w" for us-west-2, which is outside [0-9a-v]).
|
|
48
58
|
const REGION_CHAR_PATTERN = /^[a-z0-9]$/;
|
|
59
|
+
// Same slot, same range: the gen-2 shard key is a region char's positional twin.
|
|
60
|
+
const SHARD_CHAR_PATTERN = REGION_CHAR_PATTERN;
|
|
49
61
|
/** One lowercase [a-z0-9] char per supported region, at RUN_OPS_ID_REGION_INDEX. */
|
|
50
62
|
exports.REGION_CODES = {
|
|
51
63
|
"us-east-1": "e",
|
|
@@ -112,6 +124,18 @@ function base32hexDecode(s) {
|
|
|
112
124
|
}
|
|
113
125
|
return Uint8Array.from(out);
|
|
114
126
|
}
|
|
127
|
+
// Shared by both generations. The buffer MUST be per-call — a hoisted one would
|
|
128
|
+
// let concurrent mints overwrite each other's bytes.
|
|
129
|
+
function mintRunOpsIdCore() {
|
|
130
|
+
const core = new Uint8Array(RUN_OPS_ID_CORE_BYTES);
|
|
131
|
+
let ms = Date.now();
|
|
132
|
+
for (let i = RUN_OPS_ID_TIMESTAMP_BYTES - 1; i >= 0; i--) {
|
|
133
|
+
core[i] = ms % 256;
|
|
134
|
+
ms = Math.floor(ms / 256);
|
|
135
|
+
}
|
|
136
|
+
getRandomValues(core.subarray(RUN_OPS_ID_TIMESTAMP_BYTES));
|
|
137
|
+
return base32hexEncode(core);
|
|
138
|
+
}
|
|
115
139
|
/**
|
|
116
140
|
* Mint a run-ops v1 id body (26 chars, no prefix): 24-char base32hex core
|
|
117
141
|
* (6-byte ms timestamp + 9 CSPRNG bytes) + region char + version char "1".
|
|
@@ -119,14 +143,18 @@ function base32hexDecode(s) {
|
|
|
119
143
|
* discriminator — see runOpsResidency.ts.
|
|
120
144
|
*/
|
|
121
145
|
function generateRunOpsId(region) {
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
146
|
+
return `${mintRunOpsIdCore()}${regionCharForRegion(region)}${exports.RUN_OPS_ID_VERSION}`;
|
|
147
|
+
}
|
|
148
|
+
/**
|
|
149
|
+
* Mint a gen-2 id body (26 chars, no prefix): the same core, then the shard key,
|
|
150
|
+
* then version char "2". Throws on a shard char outside [a-z0-9] — an id that
|
|
151
|
+
* cannot be routed must never be minted.
|
|
152
|
+
*/
|
|
153
|
+
function generateRunOpsIdV2(shardChar) {
|
|
154
|
+
if (!SHARD_CHAR_PATTERN.test(shardChar)) {
|
|
155
|
+
throw new Error(`invalid run-ops shard char: ${JSON.stringify(shardChar)}`);
|
|
127
156
|
}
|
|
128
|
-
|
|
129
|
-
return `${base32hexEncode(core)}${regionCharForRegion(region)}${exports.RUN_OPS_ID_VERSION}`;
|
|
157
|
+
return `${mintRunOpsIdCore()}${shardChar}${exports.RUN_OPS_ID_VERSION_2}`;
|
|
130
158
|
}
|
|
131
159
|
const LEGACY_RUN_ID = { format: "legacy", table: "legacy" };
|
|
132
160
|
/**
|
|
@@ -143,6 +171,14 @@ function parseRunOpsIdBody(body) {
|
|
|
143
171
|
const region = body[exports.RUN_OPS_ID_REGION_INDEX] ?? "";
|
|
144
172
|
if (!REGION_CHAR_PATTERN.test(region))
|
|
145
173
|
return undefined;
|
|
174
|
+
const timestamp = parseRunOpsIdCoreTimestamp(body);
|
|
175
|
+
if (timestamp === undefined)
|
|
176
|
+
return undefined;
|
|
177
|
+
return { timestamp, region, version: exports.RUN_OPS_ID_VERSION };
|
|
178
|
+
}
|
|
179
|
+
// Decode the leading 24-char core and recover its embedded ms timestamp.
|
|
180
|
+
// Returns undefined (never throws) when the core is outside the base32hex alphabet.
|
|
181
|
+
function parseRunOpsIdCoreTimestamp(body) {
|
|
146
182
|
let core;
|
|
147
183
|
try {
|
|
148
184
|
core = base32hexDecode(body.slice(0, RUN_OPS_ID_CORE_LENGTH));
|
|
@@ -154,18 +190,122 @@ function parseRunOpsIdBody(body) {
|
|
|
154
190
|
for (let i = 0; i < RUN_OPS_ID_TIMESTAMP_BYTES; i++) {
|
|
155
191
|
ms = ms * 256 + (core[i] ?? 0);
|
|
156
192
|
}
|
|
157
|
-
return
|
|
193
|
+
return new Date(ms);
|
|
194
|
+
}
|
|
195
|
+
/**
|
|
196
|
+
* Parse a gen-2 id body (no prefix): the mirror of {@link parseRunOpsIdBody},
|
|
197
|
+
* requiring version "2" at index 25 and a shard key in [a-z0-9] at index 24.
|
|
198
|
+
* Total: returns undefined for any other string, and never throws.
|
|
199
|
+
*/
|
|
200
|
+
function parseRunOpsIdV2Body(body) {
|
|
201
|
+
if (body.length !== exports.RUN_OPS_ID_LENGTH)
|
|
202
|
+
return undefined;
|
|
203
|
+
if (body[exports.RUN_OPS_ID_VERSION_INDEX] !== exports.RUN_OPS_ID_VERSION_2)
|
|
204
|
+
return undefined;
|
|
205
|
+
const shard = body[exports.RUN_OPS_ID_SHARD_INDEX] ?? "";
|
|
206
|
+
if (!SHARD_CHAR_PATTERN.test(shard))
|
|
207
|
+
return undefined;
|
|
208
|
+
const timestamp = parseRunOpsIdCoreTimestamp(body);
|
|
209
|
+
if (timestamp === undefined)
|
|
210
|
+
return undefined;
|
|
211
|
+
return { timestamp, shard, version: exports.RUN_OPS_ID_VERSION_2 };
|
|
158
212
|
}
|
|
159
213
|
/** True if the (prefixless) id body is a well-formed run-ops v1 id. */
|
|
160
214
|
function isRunOpsIdBody(body) {
|
|
161
215
|
return parseRunOpsIdBody(body) !== undefined;
|
|
162
216
|
}
|
|
163
|
-
/** Parse a `run_`-prefixed friendly id; anything not a well-formed v1 id is legacy. */
|
|
217
|
+
/** Parse a `run_`-prefixed friendly id; anything not a well-formed v1/gen-2 id is legacy. */
|
|
164
218
|
function parseRunId(id) {
|
|
165
219
|
if (!id.startsWith("run_"))
|
|
166
220
|
return LEGACY_RUN_ID;
|
|
167
|
-
const
|
|
168
|
-
|
|
221
|
+
const body = id.slice(4);
|
|
222
|
+
const v1 = parseRunOpsIdBody(body);
|
|
223
|
+
if (v1)
|
|
224
|
+
return { format: "b32hex", table: "partitioned", ...v1 };
|
|
225
|
+
const v2 = parseRunOpsIdV2Body(body);
|
|
226
|
+
if (v2)
|
|
227
|
+
return { format: "b32hexV2", table: "partitioned", ...v2 };
|
|
228
|
+
return LEGACY_RUN_ID;
|
|
229
|
+
}
|
|
230
|
+
// Waitpoint ids reuse the run-ops body layout — 24-char base32hex core, then a
|
|
231
|
+
// positional char, then a version char — so the body parses positionally instead of
|
|
232
|
+
// splitting on "_". Index 24 carries the TYPE (the slot a run uses for its region or
|
|
233
|
+
// shard char), which leaves room to move to a shard char under a later version.
|
|
234
|
+
exports.WAITPOINT_ID_VERSION = "w";
|
|
235
|
+
exports.WAITPOINT_ID_TYPE_INDEX = exports.RUN_OPS_ID_REGION_INDEX;
|
|
236
|
+
// "w" sits OUTSIDE the base32hex alphabet [0-9a-v], so the version char can never be
|
|
237
|
+
// mistaken for a core char, and it can never collide with a numeric run generation.
|
|
238
|
+
const WAITPOINT_TYPE_CHARS = {
|
|
239
|
+
RUN: "r",
|
|
240
|
+
BATCH: "b",
|
|
241
|
+
DATETIME: "d",
|
|
242
|
+
MANUAL: "m",
|
|
243
|
+
};
|
|
244
|
+
const WAITPOINT_TYPES_BY_CHAR = {
|
|
245
|
+
r: "RUN",
|
|
246
|
+
b: "BATCH",
|
|
247
|
+
d: "DATETIME",
|
|
248
|
+
m: "MANUAL",
|
|
249
|
+
};
|
|
250
|
+
const LEGACY_WAITPOINT_ID = { format: "legacy" };
|
|
251
|
+
/**
|
|
252
|
+
* Mint a standalone waitpoint id body (26 chars, no prefix) for DATETIME and MANUAL: a
|
|
253
|
+
* fresh core, the type char, then the waitpoint version char.
|
|
254
|
+
*/
|
|
255
|
+
function generateWaitpointId(type) {
|
|
256
|
+
return `${mintRunOpsIdCore()}${WAITPOINT_TYPE_CHARS[type]}${exports.WAITPOINT_ID_VERSION}`;
|
|
257
|
+
}
|
|
258
|
+
/**
|
|
259
|
+
* Derive the 1:1 waitpoint id body for a RUN or BATCH anchor by reusing the anchor's
|
|
260
|
+
* 24-char core. Pure, so create-if-absent is idempotent without a lock. Returns
|
|
261
|
+
* undefined when the anchor is not a run-ops id, which is the caller's signal to mint a
|
|
262
|
+
* legacy waitpoint instead.
|
|
263
|
+
*
|
|
264
|
+
* Only the core survives: the anchor's region or shard char and its version char are
|
|
265
|
+
* both replaced. So the anchor id is NOT recoverable from the waitpoint id — the reverse
|
|
266
|
+
* direction uses the completedBy* back-pointer.
|
|
267
|
+
*/
|
|
268
|
+
function deriveWaitpointIdFromAnchor(anchorId, type) {
|
|
269
|
+
const body = stripAnchorPrefix(anchorId);
|
|
270
|
+
if (!parseRunOpsIdBody(body) && !parseRunOpsIdV2Body(body)) {
|
|
271
|
+
return undefined;
|
|
272
|
+
}
|
|
273
|
+
return `${body.slice(0, RUN_OPS_ID_CORE_LENGTH)}${WAITPOINT_TYPE_CHARS[type]}${exports.WAITPOINT_ID_VERSION}`;
|
|
274
|
+
}
|
|
275
|
+
/**
|
|
276
|
+
* Classify a waitpoint id. Accepts the prefixed (`waitpoint_<body>`) and bare forms, but
|
|
277
|
+
* NOT another entity's prefix (`run_`, `batch_`, ...) — this is the discriminator a
|
|
278
|
+
* later ticket uses to route a possibly customer-supplied id, so a foreign prefix must
|
|
279
|
+
* classify legacy rather than have its body reinterpreted as a waitpoint id. Total:
|
|
280
|
+
* never throws.
|
|
281
|
+
*/
|
|
282
|
+
function parseWaitpointId(id) {
|
|
283
|
+
const body = stripWaitpointIdPrefix(id);
|
|
284
|
+
if (body.length !== exports.RUN_OPS_ID_LENGTH)
|
|
285
|
+
return LEGACY_WAITPOINT_ID;
|
|
286
|
+
if (body[exports.RUN_OPS_ID_VERSION_INDEX] !== exports.WAITPOINT_ID_VERSION)
|
|
287
|
+
return LEGACY_WAITPOINT_ID;
|
|
288
|
+
const type = WAITPOINT_TYPES_BY_CHAR[body[exports.WAITPOINT_ID_TYPE_INDEX] ?? ""];
|
|
289
|
+
if (!type)
|
|
290
|
+
return LEGACY_WAITPOINT_ID;
|
|
291
|
+
const timestamp = parseRunOpsIdCoreTimestamp(body);
|
|
292
|
+
if (timestamp === undefined)
|
|
293
|
+
return LEGACY_WAITPOINT_ID;
|
|
294
|
+
return { format: "b32hexW", type, timestamp };
|
|
295
|
+
}
|
|
296
|
+
// Strip any `<prefix>_` if present. Prefix-agnostic is correct ONLY here: the caller
|
|
297
|
+
// already knows anchorId names a run or batch anchor, so there is no foreign prefix to
|
|
298
|
+
// guard against. Do not reuse for parseWaitpointId — see stripWaitpointIdPrefix.
|
|
299
|
+
function stripAnchorPrefix(id) {
|
|
300
|
+
const underscore = id.indexOf("_");
|
|
301
|
+
return underscore === -1 ? id : id.slice(underscore + 1);
|
|
302
|
+
}
|
|
303
|
+
const WAITPOINT_ID_PREFIX = "waitpoint_";
|
|
304
|
+
// Strip the `waitpoint_` prefix if present; any other prefix, or a bare body, is left
|
|
305
|
+
// as-is. Unlike stripAnchorPrefix, this must never strip a foreign prefix down to a body
|
|
306
|
+
// that then happens to pass the run-ops shape check.
|
|
307
|
+
function stripWaitpointIdPrefix(id) {
|
|
308
|
+
return id.startsWith(WAITPOINT_ID_PREFIX) ? id.slice(WAITPOINT_ID_PREFIX.length) : id;
|
|
169
309
|
}
|
|
170
310
|
function generateInternalId() {
|
|
171
311
|
return (0, cuid_1.default)();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"friendlyId.js","sourceRoot":"","sources":["../../../../src/v3/isomorphic/friendlyId.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"friendlyId.js","sourceRoot":"","sources":["../../../../src/v3/isomorphic/friendlyId.ts"],"names":[],"mappings":"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"}
|