jazz-tools 0.17.14 → 0.18.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/.svelte-kit/__package__/jazz.class.svelte.js +1 -1
- package/.svelte-kit/__package__/media/image.svelte +3 -9
- package/.svelte-kit/__package__/media/image.svelte.d.ts +1 -6
- package/.svelte-kit/__package__/media/image.svelte.d.ts.map +1 -1
- package/.svelte-kit/__package__/media/image.types.d.ts +7 -0
- package/.svelte-kit/__package__/media/image.types.d.ts.map +1 -0
- package/.svelte-kit/__package__/media/image.types.js +1 -0
- package/.svelte-kit/__package__/tests/media/image.svelte.test.js +31 -31
- package/.turbo/turbo-build.log +50 -50
- package/CHANGELOG.md +31 -0
- package/dist/browser/index.js +2 -2
- package/dist/browser/index.js.map +1 -1
- package/dist/{chunk-LZOF6WP5.js → chunk-HJ3GTGY7.js} +1320 -1018
- package/dist/chunk-HJ3GTGY7.js.map +1 -0
- package/dist/index.js +18 -18
- package/dist/index.js.map +1 -1
- package/dist/inspector/{custom-element-ZSNTCECD.js → custom-element-WCY6D3QJ.js} +3 -3
- package/dist/inspector/{custom-element-ZSNTCECD.js.map → custom-element-WCY6D3QJ.js.map} +1 -1
- package/dist/inspector/index.js +1 -1
- package/dist/inspector/index.js.map +1 -1
- package/dist/inspector/register-custom-element.js +1 -1
- package/dist/media/{chunk-E5J3WLQW.js → chunk-KR2V6X2N.js} +14 -9
- package/dist/media/chunk-KR2V6X2N.js.map +1 -0
- package/dist/media/create-image.d.ts +6 -6
- package/dist/media/index.browser.d.ts +6 -6
- package/dist/media/index.browser.js +1 -1
- package/dist/media/index.d.ts +1 -1
- package/dist/media/index.js +1 -1
- package/dist/media/index.native.d.ts +6 -6
- package/dist/media/index.native.js +1 -1
- package/dist/media/utils.d.ts.map +1 -1
- package/dist/prosemirror/index.js +2 -2
- package/dist/prosemirror/index.js.map +1 -1
- package/dist/react/index.js +7 -5
- package/dist/react/index.js.map +1 -1
- package/dist/react-core/hooks.d.ts.map +1 -1
- package/dist/react-core/index.js +4658 -23
- package/dist/react-core/index.js.map +1 -1
- package/dist/react-native-core/index.js +1 -1
- package/dist/react-native-core/index.js.map +1 -1
- package/dist/svelte/jazz.class.svelte.js +1 -1
- package/dist/svelte/media/image.svelte +3 -9
- package/dist/svelte/media/image.svelte.d.ts +1 -6
- package/dist/svelte/media/image.svelte.d.ts.map +1 -1
- package/dist/svelte/media/image.types.d.ts +7 -0
- package/dist/svelte/media/image.types.d.ts.map +1 -0
- package/dist/svelte/media/image.types.js +1 -0
- package/dist/svelte/tests/media/image.svelte.test.js +31 -31
- package/dist/testing.js +18 -14
- package/dist/testing.js.map +1 -1
- package/dist/tools/coValues/CoFieldInit.d.ts +13 -0
- package/dist/tools/coValues/CoFieldInit.d.ts.map +1 -0
- package/dist/tools/coValues/CoValueBase.d.ts +18 -15
- package/dist/tools/coValues/CoValueBase.d.ts.map +1 -1
- package/dist/tools/coValues/account.d.ts +100 -46
- package/dist/tools/coValues/account.d.ts.map +1 -1
- package/dist/tools/coValues/coFeed.d.ts +78 -62
- package/dist/tools/coValues/coFeed.d.ts.map +1 -1
- package/dist/tools/coValues/coList.d.ts +212 -99
- package/dist/tools/coValues/coList.d.ts.map +1 -1
- package/dist/tools/coValues/coMap.d.ts +200 -192
- package/dist/tools/coValues/coMap.d.ts.map +1 -1
- package/dist/tools/coValues/coPlainText.d.ts +30 -22
- package/dist/tools/coValues/coPlainText.d.ts.map +1 -1
- package/dist/tools/coValues/deepLoading.d.ts +13 -13
- package/dist/tools/coValues/deepLoading.d.ts.map +1 -1
- package/dist/tools/coValues/extensions/imageDef.d.ts +1 -1
- package/dist/tools/coValues/group.d.ts +32 -32
- package/dist/tools/coValues/group.d.ts.map +1 -1
- package/dist/tools/coValues/inbox.d.ts.map +1 -1
- package/dist/tools/coValues/interfaces.d.ts +18 -17
- package/dist/tools/coValues/interfaces.d.ts.map +1 -1
- package/dist/tools/coValues/profile.d.ts +6 -5
- package/dist/tools/coValues/profile.d.ts.map +1 -1
- package/dist/tools/coValues/schemaUnion.d.ts +3 -3
- package/dist/tools/coValues/schemaUnion.d.ts.map +1 -1
- package/dist/tools/exports.d.ts +1 -1
- package/dist/tools/exports.d.ts.map +1 -1
- package/dist/tools/implementation/anonymousJazzAgent.d.ts +2 -1
- package/dist/tools/implementation/anonymousJazzAgent.d.ts.map +1 -1
- package/dist/tools/implementation/schema.d.ts +5 -5
- package/dist/tools/implementation/schema.d.ts.map +1 -1
- package/dist/tools/implementation/symbols.d.ts +2 -0
- package/dist/tools/implementation/symbols.d.ts.map +1 -1
- package/dist/tools/implementation/zodSchema/schemaTypes/AccountSchema.d.ts +2 -2
- package/dist/tools/implementation/zodSchema/schemaTypes/AccountSchema.d.ts.map +1 -1
- package/dist/tools/implementation/zodSchema/schemaTypes/CoFeedSchema.d.ts +6 -2
- package/dist/tools/implementation/zodSchema/schemaTypes/CoFeedSchema.d.ts.map +1 -1
- package/dist/tools/implementation/zodSchema/schemaTypes/CoListSchema.d.ts +8 -3
- package/dist/tools/implementation/zodSchema/schemaTypes/CoListSchema.d.ts.map +1 -1
- package/dist/tools/implementation/zodSchema/schemaTypes/CoMapSchema.d.ts +12 -7
- package/dist/tools/implementation/zodSchema/schemaTypes/CoMapSchema.d.ts.map +1 -1
- package/dist/tools/implementation/zodSchema/schemaTypes/CoRecordSchema.d.ts +13 -7
- package/dist/tools/implementation/zodSchema/schemaTypes/CoRecordSchema.d.ts.map +1 -1
- package/dist/tools/implementation/zodSchema/schemaTypes/FileStreamSchema.d.ts +11 -2
- package/dist/tools/implementation/zodSchema/schemaTypes/FileStreamSchema.d.ts.map +1 -1
- package/dist/tools/implementation/zodSchema/schemaTypes/PlainTextSchema.d.ts +4 -0
- package/dist/tools/implementation/zodSchema/schemaTypes/PlainTextSchema.d.ts.map +1 -1
- package/dist/tools/implementation/zodSchema/schemaTypes/RichTextSchema.d.ts +4 -0
- package/dist/tools/implementation/zodSchema/schemaTypes/RichTextSchema.d.ts.map +1 -1
- package/dist/tools/implementation/zodSchema/typeConverters/{CoFieldInit.d.ts → CoFieldSchemaInit.d.ts} +7 -7
- package/dist/tools/implementation/zodSchema/typeConverters/CoFieldSchemaInit.d.ts.map +1 -0
- package/dist/tools/implementation/zodSchema/typeConverters/InstanceOfSchema.d.ts +4 -4
- package/dist/tools/implementation/zodSchema/typeConverters/InstanceOfSchema.d.ts.map +1 -1
- package/dist/tools/implementation/zodSchema/typeConverters/InstanceOfSchemaCoValuesNullable.d.ts +4 -4
- package/dist/tools/implementation/zodSchema/typeConverters/InstanceOfSchemaCoValuesNullable.d.ts.map +1 -1
- package/dist/tools/implementation/zodSchema/zodCo.d.ts +2 -2
- package/dist/tools/implementation/zodSchema/zodCo.d.ts.map +1 -1
- package/dist/tools/internal.d.ts +2 -1
- package/dist/tools/internal.d.ts.map +1 -1
- package/dist/tools/lib/migration.d.ts +1 -1
- package/dist/tools/lib/migration.d.ts.map +1 -1
- package/dist/tools/subscribe/SubscriptionScope.d.ts.map +1 -1
- package/dist/tools/subscribe/index.d.ts +1 -1
- package/dist/tools/subscribe/index.d.ts.map +1 -1
- package/dist/tools/subscribe/utils.d.ts +2 -2
- package/dist/tools/subscribe/utils.d.ts.map +1 -1
- package/dist/tools/testing.d.ts.map +1 -1
- package/dist/tools/tests/utils.d.ts +2 -6
- package/dist/tools/tests/utils.d.ts.map +1 -1
- package/dist/worker/index.js +3 -3
- package/dist/worker/index.js.map +1 -1
- package/package.json +4 -4
- package/src/browser/auth/PasskeyAuth.ts +2 -2
- package/src/browser/createBrowserContext.ts +2 -2
- package/src/browser/tests/PasskeyAuth.test.ts +2 -2
- package/src/inspector/custom-element.tsx +2 -2
- package/src/inspector/viewer/new-app.tsx +1 -1
- package/src/media/create-image.test.ts +7 -7
- package/src/media/create-image.ts +5 -3
- package/src/media/index.ts +1 -1
- package/src/media/utils.test.ts +72 -66
- package/src/media/utils.ts +9 -6
- package/src/prosemirror/lib/plugin.ts +1 -1
- package/src/prosemirror/lib/sync.ts +1 -1
- package/src/prosemirror/tests/plugin.test.ts +4 -4
- package/src/react/media/image.tsx +2 -2
- package/src/react/tests/media/image.test.tsx +52 -32
- package/src/react-core/hooks.ts +11 -5
- package/src/react-core/tests/useAccount.test.ts +16 -22
- package/src/react-core/tests/useCoState.test.ts +19 -19
- package/src/react-core/tests/useInboxSender.test.ts +5 -2
- package/src/react-core/tests/usePassPhraseAuth.test.ts +6 -6
- package/src/react-native-core/media/image.tsx +1 -1
- package/src/svelte/jazz.class.svelte.ts +1 -1
- package/src/svelte/media/image.svelte +3 -9
- package/src/svelte/media/image.types.ts +7 -0
- package/src/svelte/tests/media/image.svelte.test.ts +34 -32
- package/src/tools/auth/DemoAuth.ts +2 -2
- package/src/tools/auth/PassphraseAuth.ts +2 -2
- package/src/tools/auth/clerk/index.ts +2 -2
- package/src/tools/auth/clerk/tests/JazzClerkAuth.test.ts +1 -1
- package/src/tools/coValues/CoFieldInit.ts +20 -0
- package/src/tools/coValues/CoValueBase.ts +40 -60
- package/src/tools/coValues/account.ts +306 -232
- package/src/tools/coValues/coFeed.ts +185 -153
- package/src/tools/coValues/coList.ts +507 -334
- package/src/tools/coValues/coMap.ts +420 -286
- package/src/tools/coValues/coPlainText.ts +94 -110
- package/src/tools/coValues/deepLoading.ts +13 -13
- package/src/tools/coValues/group.ts +100 -114
- package/src/tools/coValues/inbox.ts +16 -14
- package/src/tools/coValues/interfaces.ts +49 -31
- package/src/tools/coValues/profile.ts +8 -6
- package/src/tools/coValues/request.ts +9 -9
- package/src/tools/coValues/schemaUnion.ts +11 -5
- package/src/tools/exports.ts +1 -1
- package/src/tools/implementation/ContextManager.ts +4 -4
- package/src/tools/implementation/anonymousJazzAgent.ts +2 -1
- package/src/tools/implementation/createContext.ts +1 -1
- package/src/tools/implementation/devtoolsFormatters.ts +9 -9
- package/src/tools/implementation/invites.ts +2 -2
- package/src/tools/implementation/schema.ts +7 -7
- package/src/tools/implementation/symbols.ts +3 -0
- package/src/tools/implementation/zodSchema/schemaTypes/AccountSchema.ts +2 -2
- package/src/tools/implementation/zodSchema/schemaTypes/CoFeedSchema.ts +11 -2
- package/src/tools/implementation/zodSchema/schemaTypes/CoListSchema.ts +18 -7
- package/src/tools/implementation/zodSchema/schemaTypes/CoMapSchema.ts +17 -7
- package/src/tools/implementation/zodSchema/schemaTypes/CoRecordSchema.ts +20 -11
- package/src/tools/implementation/zodSchema/schemaTypes/FileStreamSchema.ts +19 -2
- package/src/tools/implementation/zodSchema/schemaTypes/PlainTextSchema.ts +6 -0
- package/src/tools/implementation/zodSchema/schemaTypes/RichTextSchema.ts +6 -0
- package/src/tools/implementation/zodSchema/typeConverters/{CoFieldInit.ts → CoFieldSchemaInit.ts} +11 -11
- package/src/tools/implementation/zodSchema/typeConverters/InstanceOfSchema.ts +4 -4
- package/src/tools/implementation/zodSchema/typeConverters/InstanceOfSchemaCoValuesNullable.ts +4 -4
- package/src/tools/implementation/zodSchema/zodCo.ts +2 -2
- package/src/tools/internal.ts +2 -1
- package/src/tools/lib/migration.ts +5 -5
- package/src/tools/subscribe/SubscriptionScope.ts +32 -24
- package/src/tools/subscribe/index.ts +4 -4
- package/src/tools/subscribe/utils.ts +11 -11
- package/src/tools/testing.ts +17 -13
- package/src/tools/tests/ContextManager.test.ts +68 -57
- package/src/tools/tests/PassphraseAuth.test.ts +2 -2
- package/src/tools/tests/account.test.ts +139 -69
- package/src/tools/tests/coDiscriminatedUnion.test-d.ts +12 -6
- package/src/tools/tests/coDiscriminatedUnion.test.ts +26 -17
- package/src/tools/tests/coFeed.test-d.ts +18 -17
- package/src/tools/tests/coFeed.test.ts +108 -97
- package/src/tools/tests/coList.test-d.ts +18 -23
- package/src/tools/tests/coList.test.ts +350 -165
- package/src/tools/tests/coMap.record.test-d.ts +9 -13
- package/src/tools/tests/coMap.record.test.ts +37 -23
- package/src/tools/tests/coMap.test-d.ts +43 -21
- package/src/tools/tests/coMap.test.ts +360 -182
- package/src/tools/tests/coOptional.test.ts +28 -13
- package/src/tools/tests/coPlainText.test.ts +15 -15
- package/src/tools/tests/createContext.test.ts +14 -14
- package/src/tools/tests/deepLoading.test.ts +95 -94
- package/src/tools/tests/exportImport.test.ts +61 -41
- package/src/tools/tests/groupsAndAccounts.test.ts +333 -116
- package/src/tools/tests/inbox.test.ts +22 -17
- package/src/tools/tests/interfaces.test.ts +12 -11
- package/src/tools/tests/invites.test.ts +6 -4
- package/src/tools/tests/load.test.ts +20 -18
- package/src/tools/tests/patterns/notifications.test.ts +6 -6
- package/src/tools/tests/patterns/quest.test.ts +3 -3
- package/src/tools/tests/patterns/requestToJoin.test.ts +22 -22
- package/src/tools/tests/request.test.ts +38 -39
- package/src/tools/tests/schemaUnion.test.ts +64 -10
- package/src/tools/tests/subscribe.test.ts +64 -64
- package/src/tools/tests/testing.test.ts +5 -9
- package/src/tools/tests/utils.ts +3 -3
- package/src/tools/tests/zod.test.ts +3 -3
- package/src/worker/index.ts +3 -3
- package/dist/chunk-LZOF6WP5.js.map +0 -1
- package/dist/media/chunk-E5J3WLQW.js.map +0 -1
- package/dist/tools/implementation/zodSchema/typeConverters/CoFieldInit.d.ts.map +0 -1
@@ -1,5 +1,5 @@
|
|
1
|
-
import type {
|
2
|
-
import
|
1
|
+
import type { CoValueUniqueness, RawCoList } from "cojson";
|
2
|
+
import { Account, CoFieldInit, CoValue, CoValueClass, CoValueJazzApi, Group, ID, RefsToResolve, RefsToResolveStrict, Resolved, Schema, SchemaFor, SubscribeListenerOptions, TypeSym } from "../internal.js";
|
3
3
|
import { AnonymousJazzAgent, ItemsSym, Ref, inspect } from "../internal.js";
|
4
4
|
/**
|
5
5
|
* CoLists are collaborative versions of plain arrays.
|
@@ -7,18 +7,23 @@ import { AnonymousJazzAgent, ItemsSym, Ref, inspect } from "../internal.js";
|
|
7
7
|
* @categoryDescription Content
|
8
8
|
* You can access items on a `CoList` as if they were normal items on a plain array, using `[]` notation, etc.
|
9
9
|
*
|
10
|
-
*
|
10
|
+
* All readonly array methods are available on `CoList`. You can also use the `.$jazz` API to mutate the CoList.
|
11
|
+
*
|
12
|
+
* ```ts
|
13
|
+
* const colorList = ColorList.create(["red", "green", "blue"]);
|
14
|
+
* ```
|
11
15
|
*
|
12
16
|
* ```ts
|
13
17
|
* colorList[0];
|
14
|
-
* colorList
|
15
|
-
* colorList.push("Kawazaki Green");
|
16
|
-
* colorList.splice(1, 1);
|
18
|
+
* colorList.$jazz.set(3, "yellow");
|
19
|
+
* colorList.$jazz.push("Kawazaki Green");
|
20
|
+
* colorList.$jazz.splice(1, 1);
|
17
21
|
* ```
|
18
22
|
*
|
19
23
|
* @category CoValues
|
20
24
|
*/
|
21
|
-
export declare class CoList<out Item = any> extends Array<Item> implements CoValue {
|
25
|
+
export declare class CoList<out Item = any> extends Array<Item> implements ReadonlyArray<Item>, CoValue {
|
26
|
+
$jazz: CoListJazzApi<this>;
|
22
27
|
/**
|
23
28
|
* Declare a `CoList` by subclassing `CoList.Of(...)` and passing the item schema using `co`.
|
24
29
|
*
|
@@ -39,59 +44,13 @@ export declare class CoList<out Item = any> extends Array<Item> implements CoVal
|
|
39
44
|
* @ignore
|
40
45
|
* @deprecated Use UPPERCASE `CoList.Of` instead! */
|
41
46
|
static of(..._args: never): never;
|
42
|
-
/**
|
43
|
-
* The ID of this `CoList`
|
44
|
-
* @category Content */
|
45
|
-
id: ID<this>;
|
46
47
|
/** @category Type Helpers */
|
47
|
-
|
48
|
-
/** @category Internals */
|
49
|
-
_raw: RawCoList;
|
50
|
-
/** @category Internals */
|
51
|
-
_instanceID: string;
|
48
|
+
[TypeSym]: "CoList";
|
52
49
|
/** @internal This is only a marker type and doesn't exist at runtime */
|
53
50
|
[ItemsSym]: Item;
|
54
51
|
/** @internal */
|
55
52
|
static _schema: any;
|
56
|
-
/** @internal */
|
57
|
-
get _schema(): {
|
58
|
-
[ItemsSym]: SchemaFor<Item> | any;
|
59
|
-
};
|
60
|
-
/** @category Collaboration */
|
61
|
-
get _owner(): Account | Group;
|
62
|
-
/**
|
63
|
-
* If a `CoList`'s items are a `coField.ref(...)`, you can use `coList._refs[i]` to access
|
64
|
-
* the `Ref` instead of the potentially loaded/null value.
|
65
|
-
*
|
66
|
-
* This allows you to always get the ID or load the value manually.
|
67
|
-
*
|
68
|
-
* @example
|
69
|
-
* ```ts
|
70
|
-
* animals._refs[0].id; // => ID<Animal>
|
71
|
-
* animals._refs[0].value;
|
72
|
-
* // => Animal | null
|
73
|
-
* const animal = await animals._refs[0].load();
|
74
|
-
* ```
|
75
|
-
*
|
76
|
-
* @category Content
|
77
|
-
**/
|
78
|
-
get _refs(): {
|
79
|
-
[idx: number]: Exclude<Item, null> extends CoValue ? Ref<Exclude<Item, null>> : never;
|
80
|
-
} & {
|
81
|
-
length: number;
|
82
|
-
[Symbol.iterator](): IterableIterator<Exclude<Item, null> extends CoValue ? Ref<Exclude<Item, null>> : never>;
|
83
|
-
};
|
84
|
-
get _edits(): {
|
85
|
-
[idx: number]: {
|
86
|
-
value?: Item;
|
87
|
-
ref?: Item extends CoValue ? Ref<Item> : never;
|
88
|
-
by: Account | null;
|
89
|
-
madeAt: Date;
|
90
|
-
};
|
91
|
-
};
|
92
|
-
get _loadedAs(): Account | AnonymousJazzAgent;
|
93
53
|
static get [Symbol.species](): ArrayConstructor;
|
94
|
-
getItemsDescriptor(): any;
|
95
54
|
constructor(options: {
|
96
55
|
fromRaw: RawCoList;
|
97
56
|
} | undefined);
|
@@ -115,29 +74,12 @@ export declare class CoList<out Item = any> extends Array<Item> implements CoVal
|
|
115
74
|
* ```
|
116
75
|
*
|
117
76
|
* @category Creation
|
77
|
+
* @deprecated Use `co.list(...).create` instead.
|
118
78
|
**/
|
119
79
|
static create<L extends CoList>(this: CoValueClass<L>, items: L[number][], options?: {
|
120
80
|
owner: Account | Group;
|
121
81
|
unique?: CoValueUniqueness["uniqueness"];
|
122
82
|
} | Account | Group): L;
|
123
|
-
push(...items: Item[]): number;
|
124
|
-
unshift(...items: Item[]): number;
|
125
|
-
pop(): Item | undefined;
|
126
|
-
shift(): Item | undefined;
|
127
|
-
/**
|
128
|
-
* Splice the `CoList` at a given index.
|
129
|
-
*
|
130
|
-
* @param start - The index to start the splice.
|
131
|
-
* @param deleteCount - The number of items to delete.
|
132
|
-
* @param items - The items to insert.
|
133
|
-
*/
|
134
|
-
splice(start: number, deleteCount: number, ...items: Item[]): Item[];
|
135
|
-
/**
|
136
|
-
* Modify the `CoList` to match another list, where the changes are managed internally.
|
137
|
-
*
|
138
|
-
* @param result - The resolved list of items.
|
139
|
-
*/
|
140
|
-
applyDiff(result: Item[]): void;
|
141
83
|
toJSON(_key?: string, seenAbove?: ID<CoValue>[]): any[];
|
142
84
|
[inspect](): any[];
|
143
85
|
/** @category Internals */
|
@@ -146,7 +88,7 @@ export declare class CoList<out Item = any> extends Array<Item> implements CoVal
|
|
146
88
|
static schema<V extends CoList>(this: {
|
147
89
|
new (...args: any): V;
|
148
90
|
} & typeof CoList, def: {
|
149
|
-
[ItemsSym]: V["
|
91
|
+
[ItemsSym]: V["$jazz"]["schema"][ItemsSym];
|
150
92
|
}): void;
|
151
93
|
/**
|
152
94
|
* Load a `CoList` with a given ID, as a given account.
|
@@ -169,6 +111,7 @@ export declare class CoList<out Item = any> extends Array<Item> implements CoVal
|
|
169
111
|
* ```
|
170
112
|
*
|
171
113
|
* @category Subscription & Loading
|
114
|
+
* @deprecated Use `co.list(...).load` instead.
|
172
115
|
*/
|
173
116
|
static load<L extends CoList, const R extends RefsToResolve<L> = true>(this: CoValueClass<L>, id: ID<L>, options?: {
|
174
117
|
resolve?: RefsToResolveStrict<L, R>;
|
@@ -201,34 +144,10 @@ export declare class CoList<out Item = any> extends Array<Item> implements CoVal
|
|
201
144
|
* ```
|
202
145
|
*
|
203
146
|
* @category Subscription & Loading
|
147
|
+
* @deprecated Use `co.list(...).subscribe` instead.
|
204
148
|
*/
|
205
149
|
static subscribe<L extends CoList, const R extends RefsToResolve<L> = true>(this: CoValueClass<L>, id: ID<L>, listener: (value: Resolved<L, R>, unsubscribe: () => void) => void): () => void;
|
206
150
|
static subscribe<L extends CoList, const R extends RefsToResolve<L> = true>(this: CoValueClass<L>, id: ID<L>, options: SubscribeListenerOptions<L, R>, listener: (value: Resolved<L, R>, unsubscribe: () => void) => void): () => void;
|
207
|
-
/**
|
208
|
-
* Given an already loaded `CoList`, ensure that items are loaded to the specified depth.
|
209
|
-
*
|
210
|
-
* Works like `CoList.load()`, but you don't need to pass the ID or the account to load as again.
|
211
|
-
*
|
212
|
-
* @category Subscription & Loading
|
213
|
-
*/
|
214
|
-
ensureLoaded<L extends CoList, const R extends RefsToResolve<L>>(this: L, options: {
|
215
|
-
resolve: RefsToResolveStrict<L, R>;
|
216
|
-
}): Promise<Resolved<L, R>>;
|
217
|
-
/**
|
218
|
-
* Given an already loaded `CoList`, subscribe to updates to the `CoList` and ensure that items are loaded to the specified depth.
|
219
|
-
*
|
220
|
-
* Works like `CoList.subscribe()`, but you don't need to pass the ID or the account to load as again.
|
221
|
-
*
|
222
|
-
* Returns an unsubscribe function that you should call when you no longer need updates.
|
223
|
-
*
|
224
|
-
* @category Subscription & Loading
|
225
|
-
**/
|
226
|
-
subscribe<L extends CoList, const R extends RefsToResolve<L> = true>(this: L, listener: (value: Resolved<L, R>, unsubscribe: () => void) => void): () => void;
|
227
|
-
subscribe<L extends CoList, const R extends RefsToResolve<L> = true>(this: L, options: {
|
228
|
-
resolve?: RefsToResolveStrict<L, R>;
|
229
|
-
}, listener: (value: Resolved<L, R>, unsubscribe: () => void) => void): () => void;
|
230
|
-
/** @category Type Helpers */
|
231
|
-
castAs<Cl extends CoValueClass & CoValueFromRaw<CoValue>>(cl: Cl): InstanceType<Cl>;
|
232
151
|
/** @deprecated Use `CoList.upsertUnique` and `CoList.loadUnique` instead. */
|
233
152
|
static findUnique<L extends CoList>(this: CoValueClass<L>, unique: CoValueUniqueness["uniqueness"], ownerID: ID<Account> | ID<Group>, as?: Account | Group | AnonymousJazzAgent): string;
|
234
153
|
/** @internal */
|
@@ -270,6 +189,153 @@ export declare class CoList<out Item = any> extends Array<Item> implements CoVal
|
|
270
189
|
resolve?: RefsToResolveStrict<L, R>;
|
271
190
|
loadAs?: Account | AnonymousJazzAgent;
|
272
191
|
}): Promise<Resolved<L, R> | null>;
|
192
|
+
/**
|
193
|
+
* @deprecated Use `.$jazz.push` instead.
|
194
|
+
*/
|
195
|
+
push(...items: never): never;
|
196
|
+
/**
|
197
|
+
* @deprecated Use `.$jazz.unshift` instead.
|
198
|
+
*/
|
199
|
+
unshift(...items: never): number;
|
200
|
+
/**
|
201
|
+
* @deprecated Use `.$jazz.pop` instead.
|
202
|
+
*/
|
203
|
+
pop(value: never): never;
|
204
|
+
/**
|
205
|
+
* @deprecated Use `.$jazz.shift` instead.
|
206
|
+
*/
|
207
|
+
shift(value: never): never;
|
208
|
+
/**
|
209
|
+
* @deprecated Use `.$jazz.splice` instead.
|
210
|
+
*/
|
211
|
+
splice(start: never, deleteCount: never, ...items: never): never;
|
212
|
+
/**
|
213
|
+
* @deprecated Use `.$jazz.set` instead.
|
214
|
+
*/
|
215
|
+
copyWithin(target: never, start: never, end: never): never;
|
216
|
+
/**
|
217
|
+
* @deprecated Use `.$jazz.set` instead.
|
218
|
+
*/
|
219
|
+
fill(value: never, start?: never, end?: never): never;
|
220
|
+
/**
|
221
|
+
* @deprecated Use `.toReversed` if you want a reversed copy, or `.$jazz.set` to mutate the CoList.
|
222
|
+
*/
|
223
|
+
reverse(value: never): never;
|
224
|
+
/**
|
225
|
+
* @deprecated Use `.toSorted()` if you want a sorted copy, or `.$jazz.set` to mutate the CoList.
|
226
|
+
*/
|
227
|
+
sort(compareFn?: never): never;
|
228
|
+
}
|
229
|
+
/** @internal */
|
230
|
+
type CoListItem<L> = L extends CoList<unknown> ? L[number] : never;
|
231
|
+
export declare class CoListJazzApi<L extends CoList> extends CoValueJazzApi<L> {
|
232
|
+
private coList;
|
233
|
+
private getRaw;
|
234
|
+
constructor(coList: L, getRaw: () => RawCoList);
|
235
|
+
/**
|
236
|
+
* The ID of this `CoList`
|
237
|
+
* @category Content
|
238
|
+
*/
|
239
|
+
get id(): ID<L>;
|
240
|
+
/** @category Collaboration */
|
241
|
+
get owner(): Group;
|
242
|
+
set(index: number, value: CoFieldInit<CoListItem<L>>): void;
|
243
|
+
/**
|
244
|
+
* Appends new elements to the end of an array, and returns the new length of the array.
|
245
|
+
* @param items New elements to add to the array.
|
246
|
+
*
|
247
|
+
* @category Content
|
248
|
+
*/
|
249
|
+
push(...items: CoFieldInit<CoListItem<L>>[]): number;
|
250
|
+
/**
|
251
|
+
* Inserts new elements at the start of an array, and returns the new length of the array.
|
252
|
+
* @param items Elements to insert at the start of the array.
|
253
|
+
*
|
254
|
+
* @category Content
|
255
|
+
*/
|
256
|
+
unshift(...items: CoFieldInit<CoListItem<L>>[]): number;
|
257
|
+
/**
|
258
|
+
* Removes the last element from an array and returns it.
|
259
|
+
* If the array is empty, undefined is returned and the array is not modified.
|
260
|
+
*
|
261
|
+
* @category Content
|
262
|
+
*/
|
263
|
+
pop(): CoListItem<L> | undefined;
|
264
|
+
/**
|
265
|
+
* Removes the first element from an array and returns it.
|
266
|
+
* If the array is empty, undefined is returned and the array is not modified.
|
267
|
+
*
|
268
|
+
* @category Content
|
269
|
+
*/
|
270
|
+
shift(): CoListItem<L> | undefined;
|
271
|
+
/**
|
272
|
+
* Removes elements from an array and, if necessary, inserts new elements in their place, returning the deleted elements.
|
273
|
+
* @param start The zero-based location in the array from which to start removing elements.
|
274
|
+
* @param deleteCount The number of elements to remove.
|
275
|
+
* @param items Elements to insert into the array in place of the deleted elements.
|
276
|
+
* @returns An array containing the elements that were deleted.
|
277
|
+
*
|
278
|
+
* @category Content
|
279
|
+
*/
|
280
|
+
splice(start: number, deleteCount: number, ...items: CoFieldInit<CoListItem<L>>[]): CoListItem<L>[];
|
281
|
+
/**
|
282
|
+
* Removes the elements at the specified indices from the array.
|
283
|
+
* @param indices The indices of the elements to remove.
|
284
|
+
* @returns The removed elements.
|
285
|
+
*
|
286
|
+
* @category Content
|
287
|
+
*/
|
288
|
+
remove(...indices: number[]): CoListItem<L>[];
|
289
|
+
/**
|
290
|
+
* Removes the elements matching the predicate from the array.
|
291
|
+
* @param predicate The predicate to match the elements to remove.
|
292
|
+
* @returns The removed elements.
|
293
|
+
*
|
294
|
+
* @category Content
|
295
|
+
*/
|
296
|
+
remove(predicate: (item: CoListItem<L>, index: number, coList: L) => boolean): CoListItem<L>[];
|
297
|
+
/**
|
298
|
+
* Retains only the elements matching the predicate from the array.
|
299
|
+
* @param predicate The predicate to match the elements to retain.
|
300
|
+
* @returns The removed elements.
|
301
|
+
*
|
302
|
+
* @category Content
|
303
|
+
*/
|
304
|
+
retain(predicate: (item: CoListItem<L>, index: number, coList: L) => boolean): CoListItem<L>[];
|
305
|
+
/**
|
306
|
+
* Modify the `CoList` to match another list, where the changes are managed internally.
|
307
|
+
*
|
308
|
+
* Changes are detected using `Object.is` for non-collaborative values and `$jazz.id` for collaborative values.
|
309
|
+
*
|
310
|
+
* @param result - The resolved list of items. For collaborative values, both CoValues and JSON values are supported.
|
311
|
+
* @returns The modified CoList.
|
312
|
+
*
|
313
|
+
* @category Content
|
314
|
+
*/
|
315
|
+
applyDiff(result: CoFieldInit<CoListItem<L>>[]): L;
|
316
|
+
/**
|
317
|
+
* Given an already loaded `CoList`, ensure that items are loaded to the specified depth.
|
318
|
+
*
|
319
|
+
* Works like `CoList.load()`, but you don't need to pass the ID or the account to load as again.
|
320
|
+
*
|
321
|
+
* @category Subscription & Loading
|
322
|
+
*/
|
323
|
+
ensureLoaded<L extends CoList, const R extends RefsToResolve<L>>(this: CoListJazzApi<L>, options: {
|
324
|
+
resolve: RefsToResolveStrict<L, R>;
|
325
|
+
}): Promise<Resolved<L, R>>;
|
326
|
+
/**
|
327
|
+
* Given an already loaded `CoList`, subscribe to updates to the `CoList` and ensure that items are loaded to the specified depth.
|
328
|
+
*
|
329
|
+
* Works like `CoList.subscribe()`, but you don't need to pass the ID or the account to load as again.
|
330
|
+
*
|
331
|
+
* Returns an unsubscribe function that you should call when you no longer need updates.
|
332
|
+
*
|
333
|
+
* @category Subscription & Loading
|
334
|
+
**/
|
335
|
+
subscribe<L extends CoList, const R extends RefsToResolve<L> = true>(this: CoListJazzApi<L>, listener: (value: Resolved<L, R>, unsubscribe: () => void) => void): () => void;
|
336
|
+
subscribe<L extends CoList, const R extends RefsToResolve<L> = true>(this: CoListJazzApi<L>, options: {
|
337
|
+
resolve?: RefsToResolveStrict<L, R>;
|
338
|
+
}, listener: (value: Resolved<L, R>, unsubscribe: () => void) => void): () => void;
|
273
339
|
/**
|
274
340
|
* Wait for the `CoList` to be uploaded to the other peers.
|
275
341
|
*
|
@@ -277,6 +343,53 @@ export declare class CoList<out Item = any> extends Array<Item> implements CoVal
|
|
277
343
|
*/
|
278
344
|
waitForSync(options?: {
|
279
345
|
timeout?: number;
|
280
|
-
}): Promise<
|
346
|
+
}): Promise<void>;
|
347
|
+
/**
|
348
|
+
* Get the descriptor for the items in the `CoList`
|
349
|
+
* @internal
|
350
|
+
*/
|
351
|
+
getItemsDescriptor(): Schema | undefined;
|
352
|
+
/**
|
353
|
+
* If a `CoList`'s items are a `coField.ref(...)`, you can use `coList.$jazz.refs[i]` to access
|
354
|
+
* the `Ref` instead of the potentially loaded/null value.
|
355
|
+
*
|
356
|
+
* This allows you to always get the ID or load the value manually.
|
357
|
+
*
|
358
|
+
* @example
|
359
|
+
* ```ts
|
360
|
+
* animals.$jazz.refs[0].id; // => ID<Animal>
|
361
|
+
* animals.$jazz.refs[0].value;
|
362
|
+
* // => Animal | null
|
363
|
+
* const animal = await animals.$jazz.refs[0].load();
|
364
|
+
* ```
|
365
|
+
*
|
366
|
+
* @category Content
|
367
|
+
**/
|
368
|
+
get refs(): {
|
369
|
+
[idx: number]: Exclude<CoListItem<L>, null> extends CoValue ? Ref<Exclude<CoListItem<L>, null>> : never;
|
370
|
+
} & {
|
371
|
+
length: number;
|
372
|
+
[Symbol.iterator](): IterableIterator<Exclude<CoListItem<L>, null> extends CoValue ? Ref<Exclude<CoListItem<L>, null>> : never>;
|
373
|
+
};
|
374
|
+
/**
|
375
|
+
* Get the edits made to the CoList.
|
376
|
+
*
|
377
|
+
* @category Collaboration
|
378
|
+
*/
|
379
|
+
getEdits(): {
|
380
|
+
[idx: number]: {
|
381
|
+
value?: CoListItem<L>;
|
382
|
+
ref?: CoListItem<L> extends CoValue ? Ref<CoListItem<L>> : never;
|
383
|
+
by: Account | null;
|
384
|
+
madeAt: Date;
|
385
|
+
};
|
386
|
+
};
|
387
|
+
/** @internal */
|
388
|
+
get raw(): RawCoList;
|
389
|
+
/** @internal */
|
390
|
+
get schema(): {
|
391
|
+
[ItemsSym]: SchemaFor<CoListItem<L>> | any;
|
392
|
+
};
|
281
393
|
}
|
394
|
+
export {};
|
282
395
|
//# sourceMappingURL=coList.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"coList.d.ts","sourceRoot":"","sources":["../../../src/tools/coValues/coList.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
1
|
+
{"version":3,"file":"coList.d.ts","sourceRoot":"","sources":["../../../src/tools/coValues/coList.ts"],"names":[],"mappings":"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"}
|