@velarscript/core 0.12.0 → 0.13.0
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/index.d.ts +0 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +263 -89
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
package/dist/index.d.ts
CHANGED
|
@@ -5,10 +5,6 @@ export declare const VELAR_WORKER_MANIFEST_MODULE = "velar/worker-manifest";
|
|
|
5
5
|
export declare function standardModuleInterfaces(extensions?: readonly CompilerExtension[]): ReadonlyMap<string, ModuleInterface>;
|
|
6
6
|
export declare function isStandardModule(source: string, extensions?: readonly CompilerExtension[]): boolean;
|
|
7
7
|
export declare function standardModuleInterface(source: string, extensions?: readonly CompilerExtension[]): ModuleInterface | null;
|
|
8
|
-
export declare const STANDARD_MODULE_ADAPTER_DEPENDENCIES: ReadonlyMap<string, {
|
|
9
|
-
readonly packageName: string;
|
|
10
|
-
readonly version: string;
|
|
11
|
-
}>;
|
|
12
8
|
export declare function standardModuleSources(extensions?: readonly CompilerExtension[]): ReadonlyMap<string, string>;
|
|
13
9
|
export declare function standardModuleRoute(source: string): string;
|
|
14
10
|
export interface StandardModuleApi {
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAQL,KAAK,iBAAiB,EAEtB,KAAK,eAAe,EAErB,MAAM,uBAAuB,CAAC;AA6B/B,eAAO,MAAM,sBAAsB,0BAA0B,CAAC;AAC9D,eAAO,MAAM,0BAA0B,QAAQ,CAAC;AAEhD,eAAO,MAAM,4BAA4B,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAQL,KAAK,iBAAiB,EAEtB,KAAK,eAAe,EAErB,MAAM,uBAAuB,CAAC;AA6B/B,eAAO,MAAM,sBAAsB,0BAA0B,CAAC;AAC9D,eAAO,MAAM,0BAA0B,QAAQ,CAAC;AAEhD,eAAO,MAAM,4BAA4B,0BAA0B,CAAC;AA2cpE,wBAAgB,wBAAwB,CAAC,UAAU,GAAE,SAAS,iBAAiB,EAAO,GAAG,WAAW,CAAC,MAAM,EAAE,eAAe,CAAC,CAM5H;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,GAAE,SAAS,iBAAiB,EAAO,GAAG,OAAO,CAEvG;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,GAAE,SAAS,iBAAiB,EAAO,GAAG,eAAe,GAAG,IAAI,CAM7H;AAwiFD,wBAAgB,qBAAqB,CAAC,UAAU,GAAE,SAAS,iBAAiB,EAAO,GAAG,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAMhH;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAE1D;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACtD,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC,CAAC;CAC/D;AAED,wBAAgB,iBAAiB,CAAC,UAAU,GAAE,SAAS,iBAAiB,EAAO,GAAG,iBAAiB,CAQlG;AAED,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,EACd,aAAa,GAAE,OAAuB,EACtC,UAAU,GAAE,SAAS,iBAAiB,EAAO,GAC5C,MAAM,GAAG,IAAI,CAgBf;AAED,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,MAAM,EACd,aAAa,GAAE,OAAuB,EACtC,UAAU,GAAE,SAAS,iBAAiB,EAAO,GAC5C,SAAS,MAAM,EAAE,GAAG,IAAI,CAO1B;AAED,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,EACvB,aAAa,GAAE,OAAuB,EACtC,UAAU,GAAE,SAAS,iBAAiB,EAAO,GAC5C,WAAW,CAAC,MAAM,CAAC,CAerB;AAuBD,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,MAAM,EAChB,aAAa,GAAE,OAAuB,EACtC,UAAU,GAAE,SAAS,iBAAiB,EAAO,GAC5C,MAAM,GAAG,IAAI,CAGf"}
|
package/dist/index.js
CHANGED
|
@@ -3,7 +3,6 @@ import { VELAR_CLASS_FIELD_MODULE, VELAR_CLASS_FIELD_MODULE_SOURCE, VELAR_COLLEC
|
|
|
3
3
|
export const CORE_WORKER_CONFIG_KEY = "velar:core-workers-v1";
|
|
4
4
|
export const VELAR_STANDARD_API_VERSION = "0.5";
|
|
5
5
|
export const VELAR_WORKER_MANIFEST_MODULE = "velar/worker-manifest";
|
|
6
|
-
const anyType = { kind: "any" };
|
|
7
6
|
const nullType = { kind: "null" };
|
|
8
7
|
const stringType = { kind: "string" };
|
|
9
8
|
const numberType = { kind: "number" };
|
|
@@ -30,10 +29,13 @@ function object(fields) {
|
|
|
30
29
|
const unknownType = { kind: "unknown" };
|
|
31
30
|
const errorType = { kind: "class", name: "Error" };
|
|
32
31
|
const cleanupType = apiFunction([], [], nullType);
|
|
33
|
-
|
|
32
|
+
// D90 R17: accept-anything positions are `unknown`, the top type for
|
|
33
|
+
// assignment targets; the analyzer's intrinsic handlers compute the real
|
|
34
|
+
// per-call types, so nothing here ever hands back an unchecked `any`.
|
|
35
|
+
const listUnknown = { kind: "list", element: unknownType };
|
|
34
36
|
const listNumber = { kind: "list", element: numberType };
|
|
35
37
|
const listString = { kind: "list", element: stringType };
|
|
36
|
-
const
|
|
38
|
+
const mapUnknown = { kind: "map", key: unknownType, value: unknownType };
|
|
37
39
|
const mapString = (value) => ({ kind: "map", key: stringType, value });
|
|
38
40
|
const patternOptionsType = object({
|
|
39
41
|
ignoreCase: optional(boolType),
|
|
@@ -203,33 +205,33 @@ const workerErrorIdentities = new Map([
|
|
|
203
205
|
const coreModuleInterfaces = new Map([
|
|
204
206
|
["velar/collections", moduleInterface(new Map([
|
|
205
207
|
["range", apiIntrinsic("collections.range", ["start", "end", "step"], [numberType, numberType, numberType], listNumber, 1)],
|
|
206
|
-
["enumerate", apiIntrinsic("collections.enumerate", ["values", "start"], [
|
|
207
|
-
["zip", apiIntrinsic("collections.zip", ["left", "right"], [
|
|
208
|
-
["unique", apiIntrinsic("collections.unique", ["values"], [
|
|
209
|
-
["chunk", apiIntrinsic("collections.chunk", ["values", "size"], [
|
|
210
|
-
["flatten", apiIntrinsic("collections.flatten", ["values"], [
|
|
211
|
-
["compact", apiIntrinsic("collections.compact", ["values"], [
|
|
212
|
-
["reversed", apiIntrinsic("collections.reversed", ["values"], [
|
|
213
|
-
["take", apiIntrinsic("collections.take", ["values", "count"], [
|
|
214
|
-
["drop", apiIntrinsic("collections.drop", ["values", "count"], [
|
|
215
|
-
["first", apiIntrinsic("collections.first", ["values"], [
|
|
216
|
-
["last", apiIntrinsic("collections.last", ["values"], [
|
|
217
|
-
["find", apiIntrinsic("collections.find", ["values", "test"], [
|
|
218
|
-
["index", apiIntrinsic("collections.index", ["values", "value"], [
|
|
219
|
-
["has", apiIntrinsic("collections.has", ["values", "value"], [
|
|
220
|
-
["count", apiIntrinsic("collections.count", ["values", "value"], [
|
|
221
|
-
["some", apiIntrinsic("collections.some", ["values", "test"], [
|
|
222
|
-
["every", apiIntrinsic("collections.every", ["values", "test"], [
|
|
223
|
-
["partition", apiIntrinsic("collections.partition", ["values", "test"], [
|
|
224
|
-
["groupBy", apiIntrinsic("collections.groupBy", ["values", "key"], [
|
|
225
|
-
["keyBy", apiIntrinsic("collections.keyBy", ["values", "key"], [
|
|
226
|
-
["countBy", apiIntrinsic("collections.countBy", ["values", "key"], [
|
|
227
|
-
["sortBy", apiIntrinsic("collections.sortBy", ["values", "key", "descending"], [
|
|
228
|
-
["minBy", apiIntrinsic("collections.minBy", ["values", "key"], [
|
|
229
|
-
["maxBy", apiIntrinsic("collections.maxBy", ["values", "key"], [
|
|
208
|
+
["enumerate", apiIntrinsic("collections.enumerate", ["values", "start"], [listUnknown, numberType], listUnknown, 1)],
|
|
209
|
+
["zip", apiIntrinsic("collections.zip", ["left", "right"], [listUnknown, listUnknown], listUnknown)],
|
|
210
|
+
["unique", apiIntrinsic("collections.unique", ["values"], [listUnknown], listUnknown)],
|
|
211
|
+
["chunk", apiIntrinsic("collections.chunk", ["values", "size"], [listUnknown, numberType], listUnknown)],
|
|
212
|
+
["flatten", apiIntrinsic("collections.flatten", ["values"], [listUnknown], listUnknown)],
|
|
213
|
+
["compact", apiIntrinsic("collections.compact", ["values"], [listUnknown], listUnknown)],
|
|
214
|
+
["reversed", apiIntrinsic("collections.reversed", ["values"], [listUnknown], listUnknown)],
|
|
215
|
+
["take", apiIntrinsic("collections.take", ["values", "count"], [listUnknown, numberType], listUnknown)],
|
|
216
|
+
["drop", apiIntrinsic("collections.drop", ["values", "count"], [listUnknown, numberType], listUnknown)],
|
|
217
|
+
["first", apiIntrinsic("collections.first", ["values"], [listUnknown], unknownType)],
|
|
218
|
+
["last", apiIntrinsic("collections.last", ["values"], [listUnknown], unknownType)],
|
|
219
|
+
["find", apiIntrinsic("collections.find", ["values", "test"], [listUnknown, unknownType], unknownType)],
|
|
220
|
+
["index", apiIntrinsic("collections.index", ["values", "value"], [listUnknown, unknownType], optional(numberType))],
|
|
221
|
+
["has", apiIntrinsic("collections.has", ["values", "value"], [listUnknown, unknownType], boolType)],
|
|
222
|
+
["count", apiIntrinsic("collections.count", ["values", "value"], [listUnknown, unknownType], numberType)],
|
|
223
|
+
["some", apiIntrinsic("collections.some", ["values", "test"], [listUnknown, unknownType], boolType)],
|
|
224
|
+
["every", apiIntrinsic("collections.every", ["values", "test"], [listUnknown, unknownType], boolType)],
|
|
225
|
+
["partition", apiIntrinsic("collections.partition", ["values", "test"], [listUnknown, unknownType], unknownType)],
|
|
226
|
+
["groupBy", apiIntrinsic("collections.groupBy", ["values", "key"], [listUnknown, unknownType], mapUnknown)],
|
|
227
|
+
["keyBy", apiIntrinsic("collections.keyBy", ["values", "key"], [listUnknown, unknownType], mapUnknown)],
|
|
228
|
+
["countBy", apiIntrinsic("collections.countBy", ["values", "key"], [listUnknown, unknownType], mapUnknown)],
|
|
229
|
+
["sortBy", apiIntrinsic("collections.sortBy", ["values", "key", "descending"], [listUnknown, unknownType, boolType], listUnknown, 2)],
|
|
230
|
+
["minBy", apiIntrinsic("collections.minBy", ["values", "key"], [listUnknown, unknownType], unknownType)],
|
|
231
|
+
["maxBy", apiIntrinsic("collections.maxBy", ["values", "key"], [listUnknown, unknownType], unknownType)],
|
|
230
232
|
["sum", apiIntrinsic("collections.sum", ["values"], [listNumber], numberType)],
|
|
231
233
|
["join", apiIntrinsic("collections.join", ["values", "separator"], [listString, stringType], stringType, 1)],
|
|
232
|
-
["repeat", apiIntrinsic("collections.repeat", ["value", "count"], [
|
|
234
|
+
["repeat", apiIntrinsic("collections.repeat", ["value", "count"], [unknownType, numberType], listUnknown)],
|
|
233
235
|
]))],
|
|
234
236
|
["velar/text", moduleInterface(new Map([
|
|
235
237
|
["trimStart", apiFunction(["value"], [stringType], stringType)],
|
|
@@ -348,29 +350,29 @@ const coreModuleInterfaces = new Map([
|
|
|
348
350
|
["WorkerPool", workerTemplate(workerPoolIdentity, "WorkerPool")], [workerPoolIdentity, workerTemplate(workerPoolIdentity, "WorkerPool")],
|
|
349
351
|
]))],
|
|
350
352
|
["velar/json", moduleInterface(new Map([
|
|
351
|
-
["parse", apiIntrinsic("json.parse", ["text", "target"], [stringType,
|
|
352
|
-
["tryParse", apiIntrinsic("json.tryParse", ["text", "target", "fallback"], [stringType,
|
|
353
|
-
["stringify", apiIntrinsic("json.stringify", ["value", "pretty"], [
|
|
354
|
-
["stableStringify", apiIntrinsic("json.stableStringify", ["value", "pretty"], [
|
|
355
|
-
["clone", apiIntrinsic("json.clone", ["value", "target"], [
|
|
356
|
-
["isSerializable", apiFunction(["value"], [
|
|
353
|
+
["parse", apiIntrinsic("json.parse", ["text", "target"], [stringType, unknownType], unknownType, 1)],
|
|
354
|
+
["tryParse", apiIntrinsic("json.tryParse", ["text", "target", "fallback"], [stringType, unknownType, unknownType], unknownType, 1)],
|
|
355
|
+
["stringify", apiIntrinsic("json.stringify", ["value", "pretty"], [unknownType, { kind: "union", members: [boolType, numberType] }], stringType, 1)],
|
|
356
|
+
["stableStringify", apiIntrinsic("json.stableStringify", ["value", "pretty"], [unknownType, { kind: "union", members: [boolType, numberType] }], stringType, 1)],
|
|
357
|
+
["clone", apiIntrinsic("json.clone", ["value", "target"], [unknownType, unknownType], unknownType, 1)],
|
|
358
|
+
["isSerializable", apiFunction(["value"], [unknownType], boolType)],
|
|
357
359
|
]))],
|
|
358
360
|
["velar/async", moduleInterface(new Map([
|
|
359
361
|
["sleep", apiFunction(["duration"], [durationType], promise(nullType))],
|
|
360
|
-
["all", apiIntrinsic("async.all", ["values"], [
|
|
361
|
-
["race", apiIntrinsic("async.race", ["values"], [
|
|
362
|
-
["timeout", apiIntrinsic("async.timeout", ["value", "duration", "message"], [promise(
|
|
363
|
-
["retry", apiIntrinsic("async.retry", ["task", "attempts", "delay"], [
|
|
364
|
-
["map", apiIntrinsic("async.map", ["values", "worker", "concurrency"], [
|
|
365
|
-
["series", apiIntrinsic("async.series", ["tasks"], [
|
|
362
|
+
["all", apiIntrinsic("async.all", ["values"], [unknownType], promise(unknownType))],
|
|
363
|
+
["race", apiIntrinsic("async.race", ["values"], [listUnknown], promise(unknownType))],
|
|
364
|
+
["timeout", apiIntrinsic("async.timeout", ["value", "duration", "message"], [promise(unknownType), durationType, stringType], promise(unknownType), 2)],
|
|
365
|
+
["retry", apiIntrinsic("async.retry", ["task", "attempts", "delay"], [unknownType, numberType, durationType], promise(unknownType), 1)],
|
|
366
|
+
["map", apiIntrinsic("async.map", ["values", "worker", "concurrency"], [listUnknown, unknownType, numberType], promise(listUnknown), 2)],
|
|
367
|
+
["series", apiIntrinsic("async.series", ["tasks"], [listUnknown], promise(listUnknown))],
|
|
366
368
|
]))],
|
|
367
369
|
["velar/url", moduleInterface(new Map([
|
|
368
370
|
["parse", apiFunction(["value", "base"], [stringType, stringType], urlInfoType, 1)],
|
|
369
371
|
// join is a pure rest call, so its segments stay positional.
|
|
370
372
|
["join", intrinsic("url.join", [stringType], stringType)],
|
|
371
|
-
["query", apiFunction(["params"], [
|
|
373
|
+
["query", apiFunction(["params"], [unknownType], stringType)],
|
|
372
374
|
["parseQuery", apiFunction(["value"], [stringType], { kind: "map", key: stringType, value: stringType })],
|
|
373
|
-
["withQuery", apiFunction(["value", "params"], [stringType,
|
|
375
|
+
["withQuery", apiFunction(["value", "params"], [stringType, unknownType], stringType)],
|
|
374
376
|
["withHash", apiFunction(["value", "hash"], [stringType, stringType], stringType)],
|
|
375
377
|
["isExternal", apiFunction(["value", "base"], [stringType, stringType], boolType, 1)],
|
|
376
378
|
["encode", apiFunction(["value"], [stringType], stringType)],
|
|
@@ -400,7 +402,7 @@ const coreModuleInterfaces = new Map([
|
|
|
400
402
|
["useSink", apiFunction(["sink"], [functionType([logRecordType], unknownType)], cleanupType)],
|
|
401
403
|
]), new Map(), new Map(), new Map([["LogRecord", logRecordType]]))],
|
|
402
404
|
["velar/test", moduleInterface(new Map([
|
|
403
|
-
["expect", apiIntrinsic("test.expect", ["actual"], [
|
|
405
|
+
["expect", apiIntrinsic("test.expect", ["actual"], [unknownType], unknownType)],
|
|
404
406
|
]))],
|
|
405
407
|
]);
|
|
406
408
|
function moduleInterface(exports, classes = new Map(), namedTypes = new Map(), typeAliases = new Map(), namedTypeReadonlyFields = new Map(), namedTypeIdentities = new Map(), enums = new Map(), genericTypes = new Map()) {
|
|
@@ -506,8 +508,15 @@ const __velarListRangeError = RangeError;
|
|
|
506
508
|
function __velarListReactiveRuntime() {
|
|
507
509
|
const descriptor = __velarListGetOwnPropertyDescriptor(globalThis, __velarListSymbolFor(${JSON.stringify(VELAR_RUNTIME_REGISTRY_KEY)}));
|
|
508
510
|
const runtime = descriptor && "value" in descriptor ? descriptor.value : null;
|
|
509
|
-
|
|
510
|
-
|
|
511
|
+
// No registry means no reactive runtime in this realm, which is ordinary Core
|
|
512
|
+
// behavior. A registry from another generation is a mixed build: reading past
|
|
513
|
+
// it would copy raw values and silently lose every collectionRead dependency,
|
|
514
|
+
// so it fails closed ahead of the callable duck-checks.
|
|
515
|
+
if (!runtime || (typeof runtime !== "object" && typeof runtime !== "function")) return null;
|
|
516
|
+
if (runtime.version !== ${JSON.stringify(VELAR_RUNTIME_SCHEMA_VERSION)}) {
|
|
517
|
+
throw new __velarListTypeError("VelarScript reactive runtime schema " + (typeof runtime.version === "string" ? runtime.version : "(unknown)") + " does not match this module's schema ${VELAR_RUNTIME_SCHEMA_VERSION}; one build mixed two generations of @velarscript/* — run 'npm ls @velarscript/compiler' and pin one version");
|
|
518
|
+
}
|
|
519
|
+
return typeof runtime.toRaw === "function" && typeof runtime.collectionRead === "function" ? runtime : null;
|
|
511
520
|
}
|
|
512
521
|
function __velarRequireList(value, name) {
|
|
513
522
|
const reactive = __velarListReactiveRuntime();
|
|
@@ -618,6 +627,9 @@ function __velarCollectionsCodePointCompare(left, right) {
|
|
|
618
627
|
}
|
|
619
628
|
function __velarCollectionsOrderedCompare(kind, left, right) {
|
|
620
629
|
if (kind === "string") return __velarCollectionsCodePointCompare(left, right);
|
|
630
|
+
// R1: comparable() already fences NaN upstream, so this is defence in depth —
|
|
631
|
+
// the ordering primitive must never answer "equal" for an unordered value.
|
|
632
|
+
if (left !== left || right !== right) throw new __velarCollectionsNativeTypeError("ordered comparison found NaN, which has no ordering");
|
|
621
633
|
return left < right ? -1 : left > right ? 1 : 0;
|
|
622
634
|
}
|
|
623
635
|
function requireList(value, name) {
|
|
@@ -818,7 +830,7 @@ function extremeBy(values, key, direction, name) {
|
|
|
818
830
|
|
|
819
831
|
export function minBy(values, key) { return extremeBy(values, key, -1, "minBy"); }
|
|
820
832
|
export function maxBy(values, key) { return extremeBy(values, key, 1, "maxBy"); }
|
|
821
|
-
export function sum(values) { values = requireList(values, "sum"); let total = 0; for (let index = 0; index < values.length; index += 1) { if (typeof values[index] !== "number") throw new __velarCollectionsNativeTypeError("sum requires numbers"); total += values[index]; } return total; }
|
|
833
|
+
export function sum(values) { values = requireList(values, "sum"); let total = 0; for (let index = 0; index < values.length; index += 1) { if (typeof values[index] !== "number") throw new __velarCollectionsNativeTypeError("sum requires numbers"); if (values[index] !== values[index]) throw new __velarCollectionsNativeTypeError("sum found NaN, which poisons the total; drop it with filter(x => not x.isNaN()) or fix the upstream computation"); total += values[index]; } return total; }
|
|
822
834
|
export function join(values, separator = "") {
|
|
823
835
|
if (typeof separator !== "string") throw new __velarCollectionsNativeTypeError("join separator must be a string");
|
|
824
836
|
values = requireList(values, "join");
|
|
@@ -845,6 +857,7 @@ ${VELAR_TEXT_METHOD_RUNTIME}
|
|
|
845
857
|
${VELAR_UTF8_RUNTIME}
|
|
846
858
|
const maxTextCodeUnits = __velarMaxTextCodeUnits;
|
|
847
859
|
const maxTextItems = __velarMaxTextItems;
|
|
860
|
+
const maxTextPatternMillis = 250;
|
|
848
861
|
const __velarTextGetOwnPropertyNames = __velarTextGetOwnPropertyDescriptor(__velarTextNativeObject, "getOwnPropertyNames")?.value;
|
|
849
862
|
const __velarTextGetOwnPropertySymbols = __velarTextGetOwnPropertyDescriptor(__velarTextNativeObject, "getOwnPropertySymbols")?.value;
|
|
850
863
|
const __velarTextGetPrototypeOf = __velarTextGetOwnPropertyDescriptor(__velarTextNativeObject, "getPrototypeOf")?.value;
|
|
@@ -856,6 +869,8 @@ const __velarTextArrayJoin = __velarTextGetOwnPropertyDescriptor(__velarTextArra
|
|
|
856
869
|
const __velarTextStringTrimStart = __velarTextGetOwnPropertyDescriptor(__velarTextStringPrototype, "trimStart")?.value;
|
|
857
870
|
const __velarTextStringTrimEnd = __velarTextGetOwnPropertyDescriptor(__velarTextStringPrototype, "trimEnd")?.value;
|
|
858
871
|
const __velarTextStringNormalize = __velarTextGetOwnPropertyDescriptor(__velarTextStringPrototype, "normalize")?.value;
|
|
872
|
+
const __velarTextNativeDate = globalThis.Date;
|
|
873
|
+
const __velarTextDateNow = __velarTextGetOwnPropertyDescriptor(__velarTextNativeDate, "now")?.value;
|
|
859
874
|
const nativeRegExpPrototype = __velarTextGetPrototypeOf(/(?:)/u);
|
|
860
875
|
const NativeRegExp = __velarTextGetOwnPropertyDescriptor(nativeRegExpPrototype, "constructor")?.value;
|
|
861
876
|
const nativeRegExpExec = __velarTextGetOwnPropertyDescriptor(nativeRegExpPrototype, "exec")?.value;
|
|
@@ -864,14 +879,37 @@ const __velarTextStringCodePointAt = __velarTextGetOwnPropertyDescriptor(__velar
|
|
|
864
879
|
const __velarTextStringFromCodePoint = __velarTextGetOwnPropertyDescriptor(__velarTextNativeString, "fromCodePoint")?.value;
|
|
865
880
|
const __velarTextTitleSeparators = /[_\-/]+/gu;
|
|
866
881
|
const __velarTextTitleWords = /(^|\s)([\p{L}\p{N}])/gu;
|
|
867
|
-
|
|
882
|
+
// A line ends at CRLF, at a lone CR, or at LF — the same three the language
|
|
883
|
+
// itself accepts as a statement separator and the same three
|
|
884
|
+
// SourceText indexes for diagnostics. A text API that disagreed with its
|
|
885
|
+
// own language would make Text.lineStarts on Vel source compute line
|
|
886
|
+
// numbers the compiler does not report.
|
|
887
|
+
const __velarTextLines = /\r\n|[\r\n]/gu;
|
|
868
888
|
const __velarTextWords = /\s+/gu;
|
|
869
|
-
const
|
|
870
|
-
const
|
|
889
|
+
const __velarTextLatinMarks = /(?<=\p{Script=Latin})\p{M}+/gu;
|
|
890
|
+
const __velarTextBaselessMarks = /(?<![\p{L}\p{N}\p{M}])\p{M}+/gu;
|
|
891
|
+
const __velarTextSlugSeparators = /[^\p{L}\p{N}\p{M}]+/gu;
|
|
871
892
|
const __velarTextSlugEdges = /^-+|-+$/gu;
|
|
872
893
|
const __velarTextWhitespace = /\s+/gu;
|
|
894
|
+
const __velarTextPatternPrefix = /^Invalid regular expression: (?:\/[\s\S]*\/[a-z]*: )?/u;
|
|
873
895
|
function __velarTextAppend(values, value) { values[values.length] = value; }
|
|
874
896
|
function __velarTextJoin(values, separator) { return __velarTextCall(__velarTextArrayJoin, values, [separator]); }
|
|
897
|
+
// TXT-P2: bounded work is already the promise on this surface — the code-unit
|
|
898
|
+
// and item caps are here — and time was the dimension that was missed, so a
|
|
899
|
+
// backtracking pattern over hostile input could run for as long as it liked.
|
|
900
|
+
// Every operation that runs a pattern the author supplied gets a fresh budget,
|
|
901
|
+
// checked at every exec boundary. The engine is not interruptible, so one
|
|
902
|
+
// catastrophic exec is caught when it returns rather than pre-empted; that
|
|
903
|
+
// still turns a silent unbounded hang into a loud bounded failure and stops
|
|
904
|
+
// the amplification a per-match loop would otherwise give it. The budget is
|
|
905
|
+
// deliberately not charged to slug, title or normalizeWhitespace: they run
|
|
906
|
+
// this module's own linear patterns, so their only bound is on size, and a
|
|
907
|
+
// wall clock would otherwise make a large but legal text succeed or fail by
|
|
908
|
+
// how busy the machine is.
|
|
909
|
+
function patternDeadline() { return __velarTextCall(__velarTextDateNow, __velarTextNativeDate, []) + maxTextPatternMillis; }
|
|
910
|
+
function checkPatternDeadline(deadline) {
|
|
911
|
+
if (__velarTextCall(__velarTextDateNow, __velarTextNativeDate, []) > deadline) throw new __velarTextNativeRangeError("text pattern matching cannot exceed " + maxTextPatternMillis + " ms");
|
|
912
|
+
}
|
|
875
913
|
function __velarTextRegexReplace(value, pattern, replacement) {
|
|
876
914
|
pattern.lastIndex = 0;
|
|
877
915
|
const output = []; let end = 0, units = 0;
|
|
@@ -943,6 +981,22 @@ function patternOptions(value) {
|
|
|
943
981
|
}
|
|
944
982
|
return output;
|
|
945
983
|
}
|
|
984
|
+
// TXT-P1: the engine's reason is the only actionable half of an invalid-pattern
|
|
985
|
+
// failure. Patterns compile in 'u' mode, so an identity escape that is tolerated
|
|
986
|
+
// everywhere else in JavaScript is an error here, and "[a-z" and "\\@" are
|
|
987
|
+
// otherwise byte-identical failures. The host-shaped prefix is stripped so the
|
|
988
|
+
// engine's own text does not travel verbatim, and a caught value that is not an
|
|
989
|
+
// Error, or carries no usable message, falls back to the bare message.
|
|
990
|
+
function patternReason(error) {
|
|
991
|
+
if (typeof error !== "object" || error === null) return "";
|
|
992
|
+
const descriptor = __velarTextGetOwnPropertyDescriptor(error, "message");
|
|
993
|
+
if (!descriptor || !("value" in descriptor) || typeof descriptor.value !== "string") return "";
|
|
994
|
+
const message = descriptor.value;
|
|
995
|
+
const prefix = __velarTextCall(nativeRegExpExec, __velarTextPatternPrefix, [message]);
|
|
996
|
+
const head = prefix === null ? null : __velarTextGetOwnPropertyDescriptor(prefix, 0);
|
|
997
|
+
const reason = head && typeof head.value === "string" ? __velarTextCall(__velarNativeStringSlice, message, [head.value.length]) : message;
|
|
998
|
+
return reason === "" || reason.length > 200 ? "" : ": " + reason;
|
|
999
|
+
}
|
|
946
1000
|
function patternOf(expression, options, global = false) {
|
|
947
1001
|
expression = valueOf(expression); options = patternOptions(options);
|
|
948
1002
|
if (expression.length > 4096) throw new __velarTextNativeRangeError("text patterns cannot exceed 4096 code units");
|
|
@@ -952,7 +1006,7 @@ function patternOf(expression, options, global = false) {
|
|
|
952
1006
|
if (options.multiline === true) flags += "m";
|
|
953
1007
|
if (options.dotAll === true) flags += "s";
|
|
954
1008
|
try { return new NativeRegExp(expression, flags); }
|
|
955
|
-
catch { throw new __velarTextNativeTypeError("Invalid text pattern"); }
|
|
1009
|
+
catch (error) { throw new __velarTextNativeTypeError("Invalid text pattern" + patternReason(error)); }
|
|
956
1010
|
}
|
|
957
1011
|
function checkedMatchValue(match, input) {
|
|
958
1012
|
if (!__velarTextCall(__velarTextArrayIsArray, __velarTextNativeArray, [match]) || match.length < 1 || match.length > 4097) throw new __velarTextNativeTypeError("The regular expression engine returned an invalid match");
|
|
@@ -979,9 +1033,11 @@ function nextTextIndex(value, index) {
|
|
|
979
1033
|
return index >= value.length ? index + 1 : __velarTextNextCodePointOffset(value, index);
|
|
980
1034
|
}
|
|
981
1035
|
function eachMatch(value, pattern, visit) {
|
|
1036
|
+
const deadline = patternDeadline();
|
|
982
1037
|
let count = 0, units = 0, previousUnitIndex = 0, previousCodePointIndex = 0;
|
|
983
1038
|
while (true) {
|
|
984
1039
|
const raw = __velarTextCall(nativeRegExpExec, pattern, [value]);
|
|
1040
|
+
checkPatternDeadline(deadline);
|
|
985
1041
|
if (raw === null) return;
|
|
986
1042
|
if (count >= maxTextItems) throw new __velarTextNativeRangeError("Text patterns cannot produce more than " + maxTextItems + " matches");
|
|
987
1043
|
count += 1;
|
|
@@ -1009,7 +1065,16 @@ export function lineStarts(value) {
|
|
|
1009
1065
|
let unitOffset = 0, codePointOffset = 0;
|
|
1010
1066
|
while (unitOffset < value.length) {
|
|
1011
1067
|
const nextUnitOffset = __velarTextNextCodePointOffset(value, unitOffset);
|
|
1012
|
-
|
|
1068
|
+
const code = __velarTextCall(__velarNativeStringCharCodeAt, value, [unitOffset]);
|
|
1069
|
+
// CRLF is one break, not two: consume the LF with the CR so the following
|
|
1070
|
+
// line starts once. A lone CR breaks as well — see __velarTextLines.
|
|
1071
|
+
if (code === 13 && __velarTextCall(__velarNativeStringCharCodeAt, value, [nextUnitOffset]) === 10) {
|
|
1072
|
+
__velarTextAppend(output, codePointOffset + 2);
|
|
1073
|
+
unitOffset = __velarTextNextCodePointOffset(value, nextUnitOffset);
|
|
1074
|
+
codePointOffset += 2;
|
|
1075
|
+
continue;
|
|
1076
|
+
}
|
|
1077
|
+
if (code === 10 || code === 13) __velarTextAppend(output, codePointOffset + 1);
|
|
1013
1078
|
unitOffset = nextUnitOffset;
|
|
1014
1079
|
codePointOffset += 1;
|
|
1015
1080
|
}
|
|
@@ -1039,7 +1104,18 @@ export function chunks(value, size) {
|
|
|
1039
1104
|
return textList(output, "chunks");
|
|
1040
1105
|
}
|
|
1041
1106
|
export function words(value) { const cleaned = __velarTextCall(__velarNativeStringTrim, valueOf(value), []); return cleaned ? textList(__velarTextRegexSplit(cleaned, __velarTextWords, maxTextItems + 1), "words") : []; }
|
|
1042
|
-
|
|
1107
|
+
// TXT-U4: the NFKD pass is folding machinery, not a result. Text equality is
|
|
1108
|
+
// code-point-sequence identity, so a decomposed slug misses the text it renders
|
|
1109
|
+
// as — a Hangul syllable comes back as conjoining jamo and never matches the
|
|
1110
|
+
// title it was made from. The output is recomposed to NFC before it leaves.
|
|
1111
|
+
// Folding only reaches marks sitting on a Latin base, because dropping a mark
|
|
1112
|
+
// is meaning-preserving there and meaning-destroying everywhere else: every
|
|
1113
|
+
// other script keeps its marks, and those slugs are percent-encoded in a URL.
|
|
1114
|
+
// Marks the separator pass now has to keep must still have something to sit
|
|
1115
|
+
// on: a mark run with no letter or digit before it — a variation selector left
|
|
1116
|
+
// behind by a dropped emoji, a stray accent — is invisible in a URL, so two
|
|
1117
|
+
// slugs that read alike would name different pages. Those runs go.
|
|
1118
|
+
export function slug(value) { let output = __velarTextCall(__velarTextStringNormalize, valueOf(value), ["NFKD"]); output = __velarTextRegexReplace(output, __velarTextLatinMarks, ""); output = __velarTextRegexReplace(output, __velarTextBaselessMarks, ""); output = __velarTextCall(__velarNativeStringLower, output, []); output = __velarTextCall(__velarNativeStringTrim, output, []); output = __velarTextRegexReplace(output, __velarTextSlugSeparators, "-"); output = __velarTextRegexReplace(output, __velarTextSlugEdges, ""); return textOutput(__velarTextCall(__velarTextStringNormalize, output, ["NFC"]), "slug"); }
|
|
1043
1119
|
// TXT-U3: text equality is code-point-sequence identity, so "café" typed on a
|
|
1044
1120
|
// keyboard (NFC) and the same name read back from a macOS filename (NFD) are
|
|
1045
1121
|
// different values with different sizes. This is the boundary tool that makes
|
|
@@ -1095,8 +1171,8 @@ export function fromCodePoint(value) {
|
|
|
1095
1171
|
if (value >= 0xD800 && value <= 0xDFFF) throw new __velarTextNativeRangeError("fromCodePoint refuses surrogate halves; they are not characters on their own");
|
|
1096
1172
|
return __velarTextCall(__velarTextStringFromCodePoint, __velarTextNativeString, [value]);
|
|
1097
1173
|
}
|
|
1098
|
-
export function matches(value, expression, options = {}) { value = valueOf(value);
|
|
1099
|
-
export function findMatch(value, expression, options = {}) { value = valueOf(value); const
|
|
1174
|
+
export function matches(value, expression, options = {}) { value = valueOf(value); const pattern = patternOf(expression, options); const deadline = patternDeadline(); const found = __velarTextCall(nativeRegExpExec, pattern, [value]) !== null; checkPatternDeadline(deadline); return found; }
|
|
1175
|
+
export function findMatch(value, expression, options = {}) { value = valueOf(value); const pattern = patternOf(expression, options); const deadline = patternDeadline(); const match = __velarTextCall(nativeRegExpExec, pattern, [value]); checkPatternDeadline(deadline); return match === null ? null : publicMatchValue(checkedMatchValue(match, value), value); }
|
|
1100
1176
|
export function findMatches(value, expression, options = {}) { value = valueOf(value); const output = []; eachMatch(value, patternOf(expression, options, true), match => __velarTextAppend(output, match)); return output; }
|
|
1101
1177
|
export function replaceMatches(value, expression, replacement, options = {}) {
|
|
1102
1178
|
value = valueOf(value); replacement = valueOf(replacement);
|
|
@@ -1116,7 +1192,7 @@ export function replaceMatches(value, expression, replacement, options = {}) {
|
|
|
1116
1192
|
export function splitPattern(value, expression, options = {}) {
|
|
1117
1193
|
value = valueOf(value); const output = []; let end = 0;
|
|
1118
1194
|
eachMatch(value, patternOf(expression, options, true), (match, unitIndex) => { if (output.length >= maxTextItems) throw new __velarTextNativeRangeError("splitPattern cannot produce more than " + maxTextItems + " items"); __velarTextAppend(output, __velarTextCall(__velarNativeStringSlice, value, [end, unitIndex])); end = unitIndex + match.value.length; });
|
|
1119
|
-
__velarTextAppend(output, __velarTextCall(__velarNativeStringSlice, value, [end])); return output;
|
|
1195
|
+
__velarTextAppend(output, __velarTextCall(__velarNativeStringSlice, value, [end])); return textList(output, "splitPattern");
|
|
1120
1196
|
}
|
|
1121
1197
|
`.trimStart()],
|
|
1122
1198
|
["velar/math", String.raw `
|
|
@@ -1160,15 +1236,18 @@ const __velarMathNumberIsSafeInteger = __velarMathHostOperation(__velarMathNativ
|
|
|
1160
1236
|
if (typeof __velarMathApply !== "function") throw new __velarMathNativeTypeError("The JavaScript Reflect.apply math API is unavailable");
|
|
1161
1237
|
function __velarMathCall(operation, arguments_) { return __velarMathApply(operation, undefined, arguments_); }
|
|
1162
1238
|
function requireNumber(value, name) { if (typeof value !== "number") throw new __velarMathNativeTypeError(name + " requires numbers"); return value; }
|
|
1239
|
+
// R1: a NaN may be held and tested with .isNaN(), but nothing compares or
|
|
1240
|
+
// aggregates it. The self-inequality test cannot be redirected by a host.
|
|
1241
|
+
function requireOrderedNumber(value, name) { requireNumber(value, name); if (value !== value) throw new __velarMathNativeTypeError(name + " found NaN, which has no ordering; drop it with filter(x => not x.isNaN()) or fix the upstream computation"); return value; }
|
|
1163
1242
|
function unary(value, operation, name) { return __velarMathCall(operation, [requireNumber(value, name)]); }
|
|
1164
1243
|
function binary(left, right, operation, name) { return __velarMathCall(operation, [requireNumber(left, name), requireNumber(right, name)]); }
|
|
1165
1244
|
export const pi = __velarMathHostData(__velarMathNativeMath, "PI", "number");
|
|
1166
1245
|
export const e = __velarMathHostData(__velarMathNativeMath, "E", "number");
|
|
1167
1246
|
export const tau = pi * 2;
|
|
1168
1247
|
export const infinity = __velarMathHostData(__velarMathNativeNumber, "POSITIVE_INFINITY", "number");
|
|
1169
|
-
export function min(...values) { if (!values.length) throw new __velarMathNativeRangeError("min requires at least one number"); let result =
|
|
1170
|
-
export function max(...values) { if (!values.length) throw new __velarMathNativeRangeError("max requires at least one number"); let result =
|
|
1171
|
-
export function clamp(value, minimum, maximum) { value =
|
|
1248
|
+
export function min(...values) { if (!values.length) throw new __velarMathNativeRangeError("min requires at least one number"); let result = requireOrderedNumber(values[0], "Math.min"); for (let index = 1; index < values.length; index += 1) result = __velarMathCall(__velarMathMin, [result, requireOrderedNumber(values[index], "Math.min")]); return result; }
|
|
1249
|
+
export function max(...values) { if (!values.length) throw new __velarMathNativeRangeError("max requires at least one number"); let result = requireOrderedNumber(values[0], "Math.max"); for (let index = 1; index < values.length; index += 1) result = __velarMathCall(__velarMathMax, [result, requireOrderedNumber(values[index], "Math.max")]); return result; }
|
|
1250
|
+
export function clamp(value, minimum, maximum) { value = requireOrderedNumber(value, "Math.clamp"); minimum = requireOrderedNumber(minimum, "Math.clamp"); maximum = requireOrderedNumber(maximum, "Math.clamp"); if (minimum > maximum) throw new __velarMathNativeRangeError("clamp minimum cannot exceed maximum"); return __velarMathCall(__velarMathMin, [maximum, __velarMathCall(__velarMathMax, [minimum, value])]); }
|
|
1172
1251
|
export function sign(value) { return unary(value, __velarMathSign, "sign"); }
|
|
1173
1252
|
export function trunc(value) { return unary(value, __velarMathTrunc, "trunc"); }
|
|
1174
1253
|
export function sqrt(value) { return unary(value, __velarMathSqrt, "sqrt"); }
|
|
@@ -1499,18 +1578,26 @@ function __velarRandomCall(operation, receiver, arguments_) { return __velarRand
|
|
|
1499
1578
|
function __velarRandomImul(left, right) { return __velarRandomCall(__velarRandomMathImul, __velarRandomNativeMath, [left, right]); }
|
|
1500
1579
|
function __velarRandomRotl(value, count) { return (value << count | value >>> (32 - count)) >>> 0; }
|
|
1501
1580
|
function __velarRandomHash(text) {
|
|
1502
|
-
let
|
|
1581
|
+
let first = (1779033703 ^ text.length) >>> 0;
|
|
1582
|
+
let second = (3144134277 ^ text.length) >>> 0;
|
|
1583
|
+
let third = (1013904242 ^ text.length) >>> 0;
|
|
1584
|
+
let fourth = (2773480762 ^ text.length) >>> 0;
|
|
1503
1585
|
for (let index = 0; index < text.length; index += 1) {
|
|
1504
|
-
|
|
1505
|
-
|
|
1506
|
-
|
|
1586
|
+
const code = __velarRandomCall(__velarRandomStringCharCodeAt, text, [index]);
|
|
1587
|
+
first = second ^ __velarRandomImul(first ^ code, 597399067);
|
|
1588
|
+
second = third ^ __velarRandomImul(second ^ code, 2869860233);
|
|
1589
|
+
third = fourth ^ __velarRandomImul(third ^ code, 951274213);
|
|
1590
|
+
fourth = first ^ __velarRandomImul(fourth ^ code, 2716044179);
|
|
1591
|
+
}
|
|
1592
|
+
first = __velarRandomImul(third ^ first >>> 18, 597399067);
|
|
1593
|
+
second = __velarRandomImul(fourth ^ second >>> 22, 2869860233);
|
|
1594
|
+
third = __velarRandomImul(first ^ third >>> 17, 951274213);
|
|
1595
|
+
fourth = __velarRandomImul(second ^ fourth >>> 19, 2716044179);
|
|
1507
1596
|
const output = new __velarRandomNativeArray(4);
|
|
1508
|
-
|
|
1509
|
-
|
|
1510
|
-
|
|
1511
|
-
|
|
1512
|
-
output[index] = value;
|
|
1513
|
-
}
|
|
1597
|
+
output[0] = first >>> 0;
|
|
1598
|
+
output[1] = second >>> 0;
|
|
1599
|
+
output[2] = third >>> 0;
|
|
1600
|
+
output[3] = fourth >>> 0;
|
|
1514
1601
|
if ((output[0] | output[1] | output[2] | output[3]) === 0) output[0] = 1;
|
|
1515
1602
|
return output;
|
|
1516
1603
|
}
|
|
@@ -1542,8 +1629,8 @@ function __velarRandomRange(start, end) {
|
|
|
1542
1629
|
if (!__velarRandomCall(__velarRandomNumberIsSafeInteger, __velarRandomNativeNumber, [start])
|
|
1543
1630
|
|| !__velarRandomCall(__velarRandomNumberIsSafeInteger, __velarRandomNativeNumber, [end])
|
|
1544
1631
|
|| !__velarRandomCall(__velarRandomNumberIsSafeInteger, __velarRandomNativeNumber, [width])
|
|
1545
|
-
|| width <= 0
|
|
1546
|
-
throw new __velarRandomNativeRangeError("Random.int requires an increasing safe-integer range
|
|
1632
|
+
|| width <= 0) {
|
|
1633
|
+
throw new __velarRandomNativeRangeError("Random.int requires an increasing safe-integer range");
|
|
1547
1634
|
}
|
|
1548
1635
|
return [start, width];
|
|
1549
1636
|
}
|
|
@@ -1551,8 +1638,13 @@ const __velarRandomPrototype = {
|
|
|
1551
1638
|
number() { return __velarRandomNext(this) / 4294967296; },
|
|
1552
1639
|
int(start, end = null) {
|
|
1553
1640
|
const range = __velarRandomRange(start, end);
|
|
1554
|
-
|
|
1555
|
-
|
|
1641
|
+
if (range[1] <= 4294967296) {
|
|
1642
|
+
const limit = __velarRandomCall(__velarRandomMathFloor, __velarRandomNativeMath, [4294967296 / range[1]]) * range[1];
|
|
1643
|
+
let value; do { value = __velarRandomNext(this); } while (value >= limit);
|
|
1644
|
+
return range[0] + value % range[1];
|
|
1645
|
+
}
|
|
1646
|
+
const limit = __velarRandomCall(__velarRandomMathFloor, __velarRandomNativeMath, [9007199254740992 / range[1]]) * range[1];
|
|
1647
|
+
let value; do { value = __velarRandomNext(this) * 2097152 + (__velarRandomNext(this) >>> 11); } while (value >= limit);
|
|
1556
1648
|
return range[0] + value % range[1];
|
|
1557
1649
|
},
|
|
1558
1650
|
bool(probability = 0.5) {
|
|
@@ -2133,6 +2225,7 @@ export function normalize(value, base = "") { const url = urlOf(value, base); re
|
|
|
2133
2225
|
`.trimStart()],
|
|
2134
2226
|
["velar/time", String.raw `
|
|
2135
2227
|
const maximumDateMilliseconds = 8_640_000_000_000_000;
|
|
2228
|
+
const localDayWindowMilliseconds = 108_000_000;
|
|
2136
2229
|
const __velarTimeNativeObject = globalThis.Object;
|
|
2137
2230
|
const __velarTimeNativeArray = globalThis.Array;
|
|
2138
2231
|
const __velarTimeNativeNumber = globalThis.Number;
|
|
@@ -2170,11 +2263,12 @@ const __velarTimeDatePrototype = __velarTimeHostData(__velarTimeNativeDate, "pro
|
|
|
2170
2263
|
const __velarTimeIntl = __velarTimeHostData(globalThis, "Intl", "object");
|
|
2171
2264
|
const __velarTimeDateTimeFormat = __velarTimeHostOperation(__velarTimeIntl, "DateTimeFormat");
|
|
2172
2265
|
const __velarTimeDateTimeFormatPrototype = __velarTimeHostData(__velarTimeDateTimeFormat, "prototype", "object");
|
|
2173
|
-
const __velarTimeRegExpPattern = /^(\d{4})-(\d{2})-(\d{2})(?:
|
|
2266
|
+
const __velarTimeRegExpPattern = /^(\d{4})-(\d{2})-(\d{2})(?:[Tt](\d{2}):(\d{2})(?::(\d{2})(?:\.(\d+))?)?([Zz]|[+-]\d{2}(?::?\d{2})?))?$/u;
|
|
2174
2267
|
const __velarTimeDigitsPattern = /^\d{1,6}$/u;
|
|
2175
2268
|
const __velarTimeRegExpPrototype = __velarTimeGetPrototypeOf(__velarTimeRegExpPattern);
|
|
2176
2269
|
const __velarTimeDateNow = __velarTimeHostOperation(__velarTimeNativeDate, "now");
|
|
2177
2270
|
const __velarTimeMathAbs = __velarTimeHostOperation(__velarTimeNativeMath, "abs");
|
|
2271
|
+
const __velarTimeMathFloor = __velarTimeHostOperation(__velarTimeNativeMath, "floor");
|
|
2178
2272
|
const __velarTimeNumberIsFinite = __velarTimeHostOperation(__velarTimeNativeNumber, "isFinite");
|
|
2179
2273
|
const __velarTimeNumberIsInteger = __velarTimeHostOperation(__velarTimeNativeNumber, "isInteger");
|
|
2180
2274
|
const __velarTimeNumberIsSafeInteger = __velarTimeHostOperation(__velarTimeNativeNumber, "isSafeInteger");
|
|
@@ -2189,6 +2283,7 @@ const __velarTimeSetUTCFullYear = __velarTimeHostOperation(__velarTimeDateProtot
|
|
|
2189
2283
|
const __velarTimeSetUTCHours = __velarTimeHostOperation(__velarTimeDatePrototype, "setUTCHours");
|
|
2190
2284
|
const __velarTimeSetFullYear = __velarTimeHostOperation(__velarTimeDatePrototype, "setFullYear");
|
|
2191
2285
|
const __velarTimeSetHours = __velarTimeHostOperation(__velarTimeDatePrototype, "setHours");
|
|
2286
|
+
const __velarTimeSetTime = __velarTimeHostOperation(__velarTimeDatePrototype, "setTime");
|
|
2192
2287
|
const __velarTimeGetUTCFullYear = __velarTimeHostOperation(__velarTimeDatePrototype, "getUTCFullYear");
|
|
2193
2288
|
const __velarTimeGetUTCMonth = __velarTimeHostOperation(__velarTimeDatePrototype, "getUTCMonth");
|
|
2194
2289
|
const __velarTimeGetUTCDate = __velarTimeHostOperation(__velarTimeDatePrototype, "getUTCDate");
|
|
@@ -2308,7 +2403,15 @@ function calendarParts(year, month, day, hour = 0, minute = 0, second = 0, milli
|
|
|
2308
2403
|
if (millisecond < 0 || millisecond > 999) throw new __velarTimeNativeRangeError("velar/time millisecond must be from 0 through 999");
|
|
2309
2404
|
return [year, month, day, hour, minute, second, millisecond];
|
|
2310
2405
|
}
|
|
2311
|
-
function
|
|
2406
|
+
function localDayOrder(value, year, month, day) {
|
|
2407
|
+
const currentYear = __velarTimeCall(__velarTimeGetFullYear, value, []);
|
|
2408
|
+
if (currentYear !== year) return currentYear < year ? -1 : 1;
|
|
2409
|
+
const currentMonth = __velarTimeCall(__velarTimeGetMonth, value, []) + 1;
|
|
2410
|
+
if (currentMonth !== month) return currentMonth < month ? -1 : 1;
|
|
2411
|
+
const currentDay = __velarTimeCall(__velarTimeGetDate, value, []);
|
|
2412
|
+
return currentDay === day ? 0 : currentDay < day ? -1 : 1;
|
|
2413
|
+
}
|
|
2414
|
+
function build(utc, year, month, day, hour = 0, minute = 0, second = 0, millisecond = 0, resolveGap = false) {
|
|
2312
2415
|
calendarParts(year, month, day, hour, minute, second, millisecond);
|
|
2313
2416
|
const value = new __velarTimeNativeDate(0);
|
|
2314
2417
|
if (utc) {
|
|
@@ -2319,11 +2422,31 @@ function build(utc, year, month, day, hour = 0, minute = 0, second = 0, millisec
|
|
|
2319
2422
|
throw new __velarTimeNativeRangeError("velar/time date parts do not form a real UTC date");
|
|
2320
2423
|
}
|
|
2321
2424
|
} else {
|
|
2425
|
+
// A local wall clock that a daylight-saving fall-back repeats names two real
|
|
2426
|
+
// instants and round-trips for both, so this resolves to the earlier,
|
|
2427
|
+
// pre-transition one, which is the ECMAScript LocalTZA default.
|
|
2322
2428
|
__velarTimeCall(__velarTimeSetFullYear, value, [year, month - 1, day]);
|
|
2323
2429
|
__velarTimeCall(__velarTimeSetHours, value, [hour, minute, second, millisecond]);
|
|
2324
|
-
if (
|
|
2430
|
+
if (localDayOrder(value, year, month, day) !== 0
|
|
2325
2431
|
|| __velarTimeCall(__velarTimeGetHours, value, []) !== hour || __velarTimeCall(__velarTimeGetMinutes, value, []) !== minute || __velarTimeCall(__velarTimeGetSeconds, value, []) !== second || __velarTimeCall(__velarTimeGetMilliseconds, value, []) !== millisecond) {
|
|
2326
|
-
|
|
2432
|
+
// A caller who supplied a wall clock still gets the rejection. A caller who
|
|
2433
|
+
// named a calendar day and nothing else did not, so where a transition skips
|
|
2434
|
+
// local midnight the day resolves forward to its first existing instant
|
|
2435
|
+
// rather than becoming unrepresentable. A gap opens at 00:15 or 00:45 as
|
|
2436
|
+
// readily as at 01:00, so the window around the requested day is searched
|
|
2437
|
+
// to the millisecond for the least instant that has reached the day.
|
|
2438
|
+
if (!resolveGap) throw new __velarTimeNativeRangeError("velar/time date parts do not form a real local date");
|
|
2439
|
+
const anchor = __velarTimeCall(__velarTimeGetTime, value, []);
|
|
2440
|
+
let low = anchor - localDayWindowMilliseconds, high = anchor + localDayWindowMilliseconds;
|
|
2441
|
+
while (low < high) {
|
|
2442
|
+
const middle = low + __velarTimeCall(__velarTimeMathFloor, __velarTimeNativeMath, [(high - low) / 2]);
|
|
2443
|
+
__velarTimeCall(__velarTimeSetTime, value, [middle]);
|
|
2444
|
+
if (localDayOrder(value, year, month, day) < 0) low = middle + 1; else high = middle;
|
|
2445
|
+
}
|
|
2446
|
+
__velarTimeCall(__velarTimeSetTime, value, [low]);
|
|
2447
|
+
// The search answers the first instant at or after the requested day, so a
|
|
2448
|
+
// day the zone skipped whole lands on the next one and is still rejected.
|
|
2449
|
+
if (localDayOrder(value, year, month, day) !== 0) throw new __velarTimeNativeRangeError("velar/time date parts do not form a real local date");
|
|
2327
2450
|
}
|
|
2328
2451
|
}
|
|
2329
2452
|
return valid(__velarTimeCall(__velarTimeGetTime, value, []));
|
|
@@ -2339,22 +2462,38 @@ export function parse(value) {
|
|
|
2339
2462
|
const year = __velarTimeNumber(match[1]), month = __velarTimeNumber(match[2]), day = __velarTimeNumber(match[3]);
|
|
2340
2463
|
if (!match[4]) return build(true, year, month, day);
|
|
2341
2464
|
const hour = __velarTimeNumber(match[4]), minute = __velarTimeNumber(match[5]), second = __velarTimeNumber(match[6] ?? 0);
|
|
2342
|
-
const millisecond = __velarTimeNumber(__velarTimeCall(__velarTimeStringPadEnd, match[7] ?? "", [3, "0"]) || 0);
|
|
2465
|
+
const millisecond = __velarTimeNumber(__velarTimeCall(__velarTimeStringPadEnd, __velarTimeCall(__velarTimeStringSlice, match[7] ?? "", [0, 3]), [3, "0"]) || 0);
|
|
2343
2466
|
const zone = match[8];
|
|
2344
2467
|
let offset = 0;
|
|
2345
|
-
if (zone !== "Z") {
|
|
2468
|
+
if (zone !== "Z" && zone !== "z") {
|
|
2469
|
+
// Three spellings name one offset: '+HH:MM', the basic-format '+HHMM' that
|
|
2470
|
+
// log lines and databases emit, and the hour-only '+HH'. The minutes sit
|
|
2471
|
+
// at the end whenever they are written at all.
|
|
2346
2472
|
const sign = zone[0] === "+" ? 1 : -1;
|
|
2347
2473
|
const offsetHour = __velarTimeNumber(__velarTimeCall(__velarTimeStringSlice, zone, [1, 3]));
|
|
2348
|
-
const offsetMinute = __velarTimeNumber(__velarTimeCall(__velarTimeStringSlice, zone, [
|
|
2474
|
+
const offsetMinute = zone.length === 3 ? 0 : __velarTimeNumber(__velarTimeCall(__velarTimeStringSlice, zone, [zone.length - 2]));
|
|
2349
2475
|
if (offsetHour > 23 || offsetMinute > 59) return null;
|
|
2350
2476
|
offset = sign * (offsetHour * 60 + offsetMinute);
|
|
2351
2477
|
}
|
|
2352
|
-
|
|
2478
|
+
// RFC 3339 §5.7 writes an inserted leap second as ':60'. No JavaScript clock
|
|
2479
|
+
// counts it, so it names the second that follows it, which is the instant a
|
|
2480
|
+
// reader of the timestamp means. A leap second is only ever inserted at the
|
|
2481
|
+
// end of a UTC day, which is the local 23:59 in 'Z' and some other wall
|
|
2482
|
+
// clock under an offset, so the rule is checked on the UTC instant rather
|
|
2483
|
+
// than on the written hour. Elsewhere ':60' is a typo, not a timestamp, and
|
|
2484
|
+
// still answers null instead of being absorbed as a one-second shift.
|
|
2485
|
+
const leap = second === 60;
|
|
2486
|
+
const instant = build(true, year, month, day, hour, minute, leap ? 59 : second, millisecond) - offset * 60_000;
|
|
2487
|
+
if (leap) {
|
|
2488
|
+
const second59 = instant - millisecond;
|
|
2489
|
+
if (second59 - __velarTimeCall(__velarTimeMathFloor, __velarTimeNativeMath, [second59 / 86_400_000]) * 86_400_000 !== 86_399_000) return null;
|
|
2490
|
+
}
|
|
2491
|
+
return valid(instant + (leap ? 1000 : 0));
|
|
2353
2492
|
} catch { return null; }
|
|
2354
2493
|
}
|
|
2355
2494
|
export function iso(value = now()) { const date = new __velarTimeNativeDate(valid(value)); return timeResultText(__velarTimeCall(__velarTimeToISOString, date, []), "Date.toISOString", 64); }
|
|
2356
2495
|
export function format(value, locale = "", timeZone = "") { locale = timeText(locale, "Time locale"); timeZone = timeText(timeZone, "Time zone"); const formatter = new __velarTimeDateTimeFormat(locale || undefined, timeZone ? { dateStyle: "medium", timeStyle: "medium", timeZone } : { dateStyle: "medium", timeStyle: "medium" }); const boundFormat = __velarTimeCall(__velarTimeFormatGetter, formatter, []); if (typeof boundFormat !== "function") throw new __velarTimeNativeTypeError("Intl.DateTimeFormat.format must be a function"); const output = __velarTimeCall(boundFormat, undefined, [new __velarTimeNativeDate(valid(value))]); return timeResultText(output, "Intl.DateTimeFormat.format"); }
|
|
2357
|
-
export function date(year, month, day, hour =
|
|
2496
|
+
export function date(year, month, day, hour = null, minute = null, second = null) { return build(false, year, month, day, hour ?? 0, minute ?? 0, second ?? 0, 0, hour === null && minute === null && second === null); }
|
|
2358
2497
|
export function utc(year, month, day, hour = 0, minute = 0, second = 0) { return build(true, year, month, day, hour, minute, second); }
|
|
2359
2498
|
export function parts(value, timeZone = "") {
|
|
2360
2499
|
const date = new __velarTimeNativeDate(valid(value));
|
|
@@ -2374,7 +2513,12 @@ export function parts(value, timeZone = "") {
|
|
|
2374
2513
|
`.trimStart()],
|
|
2375
2514
|
["velar/id", String.raw `
|
|
2376
2515
|
${VELAR_ERROR_NORMALIZATION_RUNTIME}
|
|
2377
|
-
|
|
2516
|
+
// D7: 'isUuid' answers the textual question its name and documentation ask —
|
|
2517
|
+
// 36 characters, hyphenated 8-4-4-4-12, hexadecimal in either case. Constraining
|
|
2518
|
+
// the version and variant nibbles rejected canonical text a caller cannot fix:
|
|
2519
|
+
// the nil and max UUIDs of RFC 9562 and every GUID from a variant other than
|
|
2520
|
+
// RFC 4122, which is what a .NET 'Guid.Empty' or an older partner system sends.
|
|
2521
|
+
const uuidPattern = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/iu;
|
|
2378
2522
|
const __velarIdNativeTypeError = globalThis.TypeError;
|
|
2379
2523
|
const __velarIdGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
|
|
2380
2524
|
const __velarIdGetPrototypeOf = Object.getPrototypeOf;
|
|
@@ -2595,6 +2739,10 @@ function __velarLogRank(value) {
|
|
|
2595
2739
|
}
|
|
2596
2740
|
function createLogger(scope, base = null) {
|
|
2597
2741
|
const context = fieldsOf(base);
|
|
2742
|
+
const debugRank = __velarLogRank("debug");
|
|
2743
|
+
const infoRank = __velarLogRank("info");
|
|
2744
|
+
const warnRank = __velarLogRank("warn");
|
|
2745
|
+
const errorRank = __velarLogRank("error");
|
|
2598
2746
|
const merged = (fields) => {
|
|
2599
2747
|
const output = __velarLogCloneMap(context);
|
|
2600
2748
|
const items = __velarLogMapItems(fieldsOf(fields));
|
|
@@ -2606,11 +2754,16 @@ function createLogger(scope, base = null) {
|
|
|
2606
2754
|
}
|
|
2607
2755
|
return output;
|
|
2608
2756
|
};
|
|
2757
|
+
// A call below the active level returns before it builds anything: the
|
|
2758
|
+
// context is not merged, the message and fields are not validated, and no
|
|
2759
|
+
// bound is checked, so turning a level off is both free and side-effect-free.
|
|
2760
|
+
// 'threshold' is read per call, so 'setLevel' keeps reaching loggers that
|
|
2761
|
+
// already exist. The gate inside 'emit' stays as the belt to these braces.
|
|
2609
2762
|
return __velarLogFreezeValue({
|
|
2610
|
-
debug(message, fields = null) { return emit(scope, "debug", message, merged(fields)); },
|
|
2611
|
-
info(message, fields = null) { return emit(scope, "info", message, merged(fields)); },
|
|
2612
|
-
warn(message, fields = null) { return emit(scope, "warn", message, merged(fields)); },
|
|
2613
|
-
error(message, error = null, fields = null) { return emit(scope, "error", message, merged(fields), error); },
|
|
2763
|
+
debug(message, fields = null) { if (debugRank < __velarLogRank(threshold)) return null; return emit(scope, "debug", message, merged(fields)); },
|
|
2764
|
+
info(message, fields = null) { if (infoRank < __velarLogRank(threshold)) return null; return emit(scope, "info", message, merged(fields)); },
|
|
2765
|
+
warn(message, fields = null) { if (warnRank < __velarLogRank(threshold)) return null; return emit(scope, "warn", message, merged(fields)); },
|
|
2766
|
+
error(message, error = null, fields = null) { if (errorRank < __velarLogRank(threshold)) return null; return emit(scope, "error", message, merged(fields), error); },
|
|
2614
2767
|
});
|
|
2615
2768
|
}
|
|
2616
2769
|
|
|
@@ -2697,8 +2850,24 @@ const __velarTestPromiseThen = __velarDeepGetOwnPropertyDescriptor(__velarTestPr
|
|
|
2697
2850
|
const __velarTestRegExpPrototype = __velarDeepGetPrototypeOf(/(?:)/u);
|
|
2698
2851
|
const __velarTestNativeRegExp = __velarDeepGetOwnPropertyDescriptor(__velarTestRegExpPrototype, "constructor")?.value;
|
|
2699
2852
|
const __velarTestRegExpExec = __velarDeepGetOwnPropertyDescriptor(__velarTestRegExpPrototype, "exec")?.value;
|
|
2853
|
+
const __velarTestPatternPrefix = /^Invalid regular expression: (?:\/[\s\S]*\/[a-z]*: )?/u;
|
|
2854
|
+
const __velarTestNativeDate = globalThis.Date;
|
|
2855
|
+
const __velarTestDateNow = __velarDeepGetOwnPropertyDescriptor(__velarTestNativeDate, "now")?.value;
|
|
2856
|
+
const maxTestPatternMillis = 250;
|
|
2700
2857
|
function __velarTestAppend(items, value) { items[items.length] = value; }
|
|
2701
2858
|
function __velarTestJoin(items) { return __velarDeepCall(__velarTestArrayJoin, items, [", "]); }
|
|
2859
|
+
// The same reason-carrying treatment patternOf gives velar/text: toMatch compiles
|
|
2860
|
+
// in 'u' mode too, so an identity escape rejected only here needs to say so.
|
|
2861
|
+
function __velarTestPatternReason(error) {
|
|
2862
|
+
if (typeof error !== "object" || error === null) return "";
|
|
2863
|
+
const descriptor = __velarDeepGetOwnPropertyDescriptor(error, "message");
|
|
2864
|
+
if (!descriptor || !("value" in descriptor) || typeof descriptor.value !== "string") return "";
|
|
2865
|
+
const message = descriptor.value;
|
|
2866
|
+
const prefix = __velarDeepCall(__velarTestRegExpExec, __velarTestPatternPrefix, [message]);
|
|
2867
|
+
const head = prefix === null ? null : __velarDeepGetOwnPropertyDescriptor(prefix, 0);
|
|
2868
|
+
const reason = head && typeof head.value === "string" ? __velarDeepCall(__velarTestStringSlice, message, [head.value.length]) : message;
|
|
2869
|
+
return reason === "" || reason.length > 200 ? "" : ": " + reason;
|
|
2870
|
+
}
|
|
2702
2871
|
function __velarTestString(value) { return __velarDeepCall(__velarTestNativeString, undefined, [value]); }
|
|
2703
2872
|
function display(value, state = null) {
|
|
2704
2873
|
state ??= { active: new __velarDeepNativeWeakSet(), nodes: 0, depth: 0 };
|
|
@@ -2799,8 +2968,14 @@ export function expect(actual) {
|
|
|
2799
2968
|
if (typeof actual !== "string" || typeof expected !== "string") throw new __velarTestNativeTypeError("toMatch requires text and a string pattern");
|
|
2800
2969
|
if (expected.length > 4096) throw new __velarTestNativeRangeError("toMatch patterns cannot exceed 4096 code units");
|
|
2801
2970
|
let pattern;
|
|
2802
|
-
try { pattern = new __velarTestNativeRegExp(expected, "u"); } catch { throw new __velarTestNativeTypeError("Invalid toMatch pattern"); }
|
|
2803
|
-
|
|
2971
|
+
try { pattern = new __velarTestNativeRegExp(expected, "u"); } catch (error) { throw new __velarTestNativeTypeError("Invalid toMatch pattern" + __velarTestPatternReason(error)); }
|
|
2972
|
+
// The same time budget velar/text puts on its pattern operations: this is
|
|
2973
|
+
// that operation under another name, and an assertion that never returns
|
|
2974
|
+
// is a hung suite rather than a failing one.
|
|
2975
|
+
const deadline = __velarDeepCall(__velarTestDateNow, __velarTestNativeDate, []) + maxTestPatternMillis;
|
|
2976
|
+
const matched = __velarDeepCall(__velarTestRegExpExec, pattern, [actual]) !== null;
|
|
2977
|
+
if (__velarDeepCall(__velarTestDateNow, __velarTestNativeDate, []) > deadline) throw new __velarTestNativeRangeError("toMatch pattern matching cannot exceed " + maxTestPatternMillis + " ms");
|
|
2978
|
+
if (!matched) throw new __velarTestNativeError("Expected " + display(actual) + " to match " + display(expected));
|
|
2804
2979
|
},
|
|
2805
2980
|
toHaveLength(expected) {
|
|
2806
2981
|
if (!__velarDeepCall(__velarTestNumberIsSafeInteger, __velarTestNativeNumber, [expected]) || expected < 0) throw new __velarTestNativeRangeError("Expected length must be a non-negative safe integer");
|
|
@@ -2843,7 +3018,6 @@ const coreModuleDependencies = new Map([
|
|
|
2843
3018
|
// D50 rule 97.2: 'toEqual' is the language's own equals(a, b).
|
|
2844
3019
|
["velar/test", [VELAR_COLLECTION_LOWERING_MODULE]],
|
|
2845
3020
|
]);
|
|
2846
|
-
export const STANDARD_MODULE_ADAPTER_DEPENDENCIES = new Map();
|
|
2847
3021
|
export function standardModuleSources(extensions = []) {
|
|
2848
3022
|
const activeExtensions = standardExtensions(extensions);
|
|
2849
3023
|
return new Map([
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@velarscript/core",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.13.0",
|
|
4
4
|
"description": "The target-neutral VelarScript Standard API contracts and runtime modules.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"type": "module",
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
"access": "public"
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"@velarscript/compiler": "0.
|
|
28
|
+
"@velarscript/compiler": "0.13.0"
|
|
29
29
|
},
|
|
30
30
|
"exports": {
|
|
31
31
|
".": {
|