@sectile/core 0.6.0 → 0.7.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/internal/kernel/indexed-sequence.d.ts +5 -1
- package/dist/internal/kernel/indexed-sequence.d.ts.map +1 -1
- package/dist/internal/kernel/indexed-sequence.js +6 -2
- package/dist/internal/kernel/indexed-sequence.js.map +1 -1
- package/dist/structures/sequence.d.ts +2 -0
- package/dist/structures/sequence.d.ts.map +1 -1
- package/dist/structures/sequence.js +5 -2
- package/dist/structures/sequence.js.map +1 -1
- package/package.json +1 -1
|
@@ -2,6 +2,8 @@ import { type BoundaryPolicy, type Direction, type MoveResult, type Result, type
|
|
|
2
2
|
export interface SequenceView<ID extends StableID> {
|
|
3
3
|
readonly size: number;
|
|
4
4
|
readonly ids: readonly ID[];
|
|
5
|
+
readonly maxItems: number;
|
|
6
|
+
readonly maxIDCodeUnits: number;
|
|
5
7
|
at(index: number): ID | null;
|
|
6
8
|
indexOf(id: ID): number | null;
|
|
7
9
|
contains(id: ID): boolean;
|
|
@@ -12,7 +14,9 @@ export interface SequenceView<ID extends StableID> {
|
|
|
12
14
|
export declare class IndexedSequence<ID extends StableID> implements SequenceView<ID> {
|
|
13
15
|
#private;
|
|
14
16
|
readonly ids: readonly ID[];
|
|
15
|
-
|
|
17
|
+
readonly maxItems: number;
|
|
18
|
+
readonly maxIDCodeUnits: number;
|
|
19
|
+
constructor(ids: readonly ID[], maxItems?: number, maxIDCodeUnits?: number);
|
|
16
20
|
get size(): number;
|
|
17
21
|
at(index: number): ID | null;
|
|
18
22
|
indexOf(id: ID): number | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"indexed-sequence.d.ts","sourceRoot":"","sources":["../../../src/internal/kernel/indexed-sequence.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,MAAM,EACX,KAAK,WAAW,EAEhB,KAAK,QAAQ,EACd,MAAM,iBAAiB,CAAC;AAGzB,MAAM,WAAW,YAAY,CAAC,EAAE,SAAS,QAAQ;IAC/C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,GAAG,EAAE,SAAS,EAAE,EAAE,CAAC;IAC5B,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,EAAE,GAAG,IAAI,CAAC;IAC7B,OAAO,CAAC,EAAE,EAAE,EAAE,GAAG,MAAM,GAAG,IAAI,CAAC;IAC/B,QAAQ,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC;IAC1B,OAAO,CAAC,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;IAChD,OAAO,CAAC,SAAS,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,GAAG,YAAY,CAAC,EAAE,CAAC,CAAC;IACzE,IAAI,CACF,OAAO,EAAE,EAAE,EACX,SAAS,EAAE,SAAS,EACpB,QAAQ,CAAC,EAAE,cAAc,EACzB,OAAO,CAAC,EAAE,WAAW,CAAC,EAAE,CAAC,GACxB,UAAU,CAAC,EAAE,CAAC,CAAC;CACnB;AAED,qBAAa,eAAe,CAAC,EAAE,SAAS,QAAQ,CAAE,YAAW,YAAY,CAAC,EAAE,CAAC;;IAC3E,SAAgB,GAAG,EAAE,SAAS,EAAE,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"indexed-sequence.d.ts","sourceRoot":"","sources":["../../../src/internal/kernel/indexed-sequence.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,9 +2,13 @@ import {} from '../../shared.js';
|
|
|
2
2
|
import { freezeArray, normalizeMaxScan, ok, resourceError } from './foundation.js';
|
|
3
3
|
export class IndexedSequence {
|
|
4
4
|
ids;
|
|
5
|
+
maxItems;
|
|
6
|
+
maxIDCodeUnits;
|
|
5
7
|
#index;
|
|
6
|
-
constructor(ids) {
|
|
8
|
+
constructor(ids, maxItems = 100_000, maxIDCodeUnits = 1_024) {
|
|
7
9
|
this.ids = freezeArray(ids);
|
|
10
|
+
this.maxItems = maxItems;
|
|
11
|
+
this.maxIDCodeUnits = maxIDCodeUnits;
|
|
8
12
|
this.#index = new Map(this.ids.map((id, index) => [id, index]));
|
|
9
13
|
Object.freeze(this);
|
|
10
14
|
}
|
|
@@ -30,7 +34,7 @@ export class IndexedSequence {
|
|
|
30
34
|
return leftIndex === rightIndex ? 0 : leftIndex < rightIndex ? -1 : 1;
|
|
31
35
|
}
|
|
32
36
|
project(predicate) {
|
|
33
|
-
return new IndexedSequence(this.ids.filter(predicate));
|
|
37
|
+
return new IndexedSequence(this.ids.filter(predicate), this.maxItems, this.maxIDCodeUnits);
|
|
34
38
|
}
|
|
35
39
|
move(current, direction, boundary = 'stop', options = {}) {
|
|
36
40
|
return moveInSequence(this.ids, this.#index, current, direction, boundary, options);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"indexed-sequence.js","sourceRoot":"","sources":["../../../src/internal/kernel/indexed-sequence.ts"],"names":[],"mappings":"AAAA,OAAO,EAQN,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,EAAE,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"indexed-sequence.js","sourceRoot":"","sources":["../../../src/internal/kernel/indexed-sequence.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,6 +17,8 @@ export type SequenceProjectionPredicate<ID extends StableID = StableID> = (id: I
|
|
|
17
17
|
export interface Sequence<ID extends StableID = StableID> {
|
|
18
18
|
readonly size: number;
|
|
19
19
|
readonly ids: readonly ID[];
|
|
20
|
+
readonly maxItems: number;
|
|
21
|
+
readonly maxIDCodeUnits: number;
|
|
20
22
|
at(index: number): ID | null;
|
|
21
23
|
indexOf(id: ID): number | null;
|
|
22
24
|
contains(id: ID): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sequence.d.ts","sourceRoot":"","sources":["../../src/structures/sequence.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,cAAc,EACnB,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,gBAAgB,EACrB,KAAK,MAAM,EACX,KAAK,WAAW,EAChB,KAAK,QAAQ,EACd,MAAM,cAAc,CAAC;AAItB,MAAM,WAAW,eAAgB,SAAQ,gBAAgB;IACvD,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,MAAM,aAAa,CAAC,EAAE,SAAS,QAAQ,GAAG,QAAQ,IACpD;IACE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,SAAS,EAAE,EAAE,CAAC;CAClC,GACD;IACE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB,CAAC;AAEN,MAAM,MAAM,2BAA2B,CAAC,EAAE,SAAS,QAAQ,GAAG,QAAQ,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC;AAE7G,MAAM,WAAW,QAAQ,CAAC,EAAE,SAAS,QAAQ,GAAG,QAAQ;IACtD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,GAAG,EAAE,SAAS,EAAE,EAAE,CAAC;IAC5B,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,EAAE,GAAG,IAAI,CAAC;IAC7B,OAAO,CAAC,EAAE,EAAE,EAAE,GAAG,MAAM,GAAG,IAAI,CAAC;IAC/B,QAAQ,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC;IAC1B,OAAO,CAAC,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;IAChD,OAAO,CAAC,SAAS,EAAE,2BAA2B,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IAClE,IAAI,CACF,OAAO,EAAE,EAAE,EACX,SAAS,EAAE,SAAS,EACpB,QAAQ,CAAC,EAAE,cAAc,EACzB,OAAO,CAAC,EAAE,WAAW,CAAC,EAAE,CAAC,GACxB,UAAU,CAAC,EAAE,CAAC,CAAC;CACnB;AAED,wBAAgB,cAAc,CAAC,EAAE,SAAS,QAAQ,EAChD,GAAG,EAAE,SAAS,EAAE,EAAE,EAClB,OAAO,GAAE,eAAoB,GAC5B,QAAQ,CAAC,EAAE,CAAC,CAEd;AAED,wBAAgB,iBAAiB,CAAC,EAAE,SAAS,QAAQ,EACnD,GAAG,EAAE,SAAS,EAAE,EAAE,EAClB,OAAO,GAAE,eAAoB,GAC5B,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"sequence.d.ts","sourceRoot":"","sources":["../../src/structures/sequence.ts"],"names":[],"mappings":"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"}
|
|
@@ -23,7 +23,7 @@ export function tryCreateSequence(ids, options = {}) {
|
|
|
23
23
|
const validated = validateUniqueIDs(ids, maxIDCodeUnits);
|
|
24
24
|
if (!validated.ok)
|
|
25
25
|
return validated;
|
|
26
|
-
return ok(new IndexedSequence(validated.value));
|
|
26
|
+
return ok(new IndexedSequence(validated.value, maxItems, maxIDCodeUnits));
|
|
27
27
|
}
|
|
28
28
|
export function applySequencePatch(sequence, patch, options = {}) {
|
|
29
29
|
return unwrap(tryApplySequencePatch(sequence, patch, options));
|
|
@@ -56,7 +56,10 @@ export function tryApplySequencePatch(sequence, patch, options = {}) {
|
|
|
56
56
|
const moved = ids.splice(patch.from, patch.count);
|
|
57
57
|
ids.splice(patch.to, 0, ...moved);
|
|
58
58
|
}
|
|
59
|
-
const result = tryCreateSequence(ids,
|
|
59
|
+
const result = tryCreateSequence(ids, {
|
|
60
|
+
maxItems: options.maxItems ?? sequence.maxItems,
|
|
61
|
+
maxIDCodeUnits: options.maxIDCodeUnits ?? sequence.maxIDCodeUnits,
|
|
62
|
+
});
|
|
60
63
|
if (result.ok)
|
|
61
64
|
return result;
|
|
62
65
|
return fail('transition-rejection', result.error.code, result.error.message, result.error.details);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sequence.js","sourceRoot":"","sources":["../../src/structures/sequence.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EACL,yBAAyB,GAQ1B,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACpG,OAAO,EAAE,eAAe,EAAqB,MAAM,wCAAwC,CAAC;
|
|
1
|
+
{"version":3,"file":"sequence.js","sourceRoot":"","sources":["../../src/structures/sequence.ts"],"names":[],"mappings":"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"}
|