@dxos/echo 0.8.3 → 0.8.4-main.1da679c
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/lib/browser/{chunk-UYPR62ZB.mjs → chunk-WG555MU5.mjs} +404 -174
- package/dist/lib/browser/chunk-WG555MU5.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +9 -1
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/testing/index.mjs +2 -2
- package/dist/lib/node-esm/{chunk-BYBICDIO.mjs → chunk-N55B5WWQ.mjs} +404 -174
- package/dist/lib/node-esm/chunk-N55B5WWQ.mjs.map +7 -0
- package/dist/lib/node-esm/index.mjs +9 -1
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/testing/index.mjs +2 -2
- package/dist/types/src/Obj.d.ts +104 -13
- package/dist/types/src/Obj.d.ts.map +1 -1
- package/dist/types/src/Ref.d.ts +2 -2
- package/dist/types/src/Relation.d.ts +10 -7
- package/dist/types/src/Relation.d.ts.map +1 -1
- package/dist/types/src/Type.d.ts +34 -33
- package/dist/types/src/Type.d.ts.map +1 -1
- package/dist/types/src/errors.d.ts +72 -0
- package/dist/types/src/errors.d.ts.map +1 -0
- package/dist/types/src/index.d.ts +3 -1
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/query/dsl.d.ts +27 -2
- package/dist/types/src/query/dsl.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +20 -13
- package/src/Obj.ts +214 -21
- package/src/Relation.ts +22 -11
- package/src/Type.ts +66 -51
- package/src/errors.ts +18 -0
- package/src/index.ts +4 -1
- package/src/query/dsl.test.ts +40 -1
- package/src/query/dsl.ts +112 -6
- package/src/test/api.test.ts +9 -2
- package/dist/lib/browser/chunk-UYPR62ZB.mjs.map +0 -7
- package/dist/lib/node/chunk-4HQE2F3L.cjs +0 -644
- package/dist/lib/node/chunk-4HQE2F3L.cjs.map +0 -7
- package/dist/lib/node/index.cjs +0 -43
- package/dist/lib/node/index.cjs.map +0 -7
- package/dist/lib/node/meta.json +0 -1
- package/dist/lib/node/testing/index.cjs +0 -89
- package/dist/lib/node/testing/index.cjs.map +0 -7
- package/dist/lib/node-esm/chunk-BYBICDIO.mjs.map +0 -7
package/dist/types/src/Type.d.ts
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { type Schema } from 'effect';
|
|
2
|
-
import type
|
|
3
|
-
import type
|
|
2
|
+
import { type Simplify } from 'effect/Schema';
|
|
3
|
+
import { type EncodedReference } from '@dxos/echo-protocol';
|
|
4
4
|
import * as EchoSchema from '@dxos/echo-schema';
|
|
5
|
-
import type
|
|
5
|
+
import { type ToMutable } from '@dxos/echo-schema';
|
|
6
6
|
import type * as Keys from '@dxos/keys';
|
|
7
7
|
import type * as RelationModule from './Relation';
|
|
8
8
|
export declare const KindId: unique symbol;
|
|
9
9
|
export type KindId = typeof KindId;
|
|
10
|
-
export
|
|
10
|
+
export declare const Kind: typeof EchoSchema.EntityKind;
|
|
11
11
|
/**
|
|
12
12
|
* Assigns a kind to an Object or Relation instance.
|
|
13
13
|
*/
|
|
@@ -15,29 +15,24 @@ export interface OfKind<Kind extends EchoSchema.EntityKind> {
|
|
|
15
15
|
readonly id: Keys.ObjectId;
|
|
16
16
|
readonly [KindId]: Kind;
|
|
17
17
|
}
|
|
18
|
-
interface ObjJsonProps {
|
|
19
|
-
id: string;
|
|
20
|
-
}
|
|
21
|
-
interface RelationJsonProps {
|
|
22
|
-
id: string;
|
|
23
|
-
[EchoSchema.ATTR_RELATION_SOURCE]: string;
|
|
24
|
-
[EchoSchema.ATTR_RELATION_TARGET]: string;
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Returns all properties of an object or relation except for the id and kind.
|
|
28
|
-
*/
|
|
29
|
-
export type Properties<T> = Omit<T, 'id' | KindId | RelationModule.Source | RelationModule.Target>;
|
|
30
18
|
/**
|
|
31
19
|
* Base ECHO schema type.
|
|
32
20
|
*/
|
|
33
21
|
export type Schema = EchoSchema.EchoSchema;
|
|
22
|
+
/**
|
|
23
|
+
* Returns all properties of an object or relation except for the id and kind.
|
|
24
|
+
*/
|
|
25
|
+
export type Properties<T = any> = Omit<T, 'id' | KindId | RelationModule.Source | RelationModule.Target>;
|
|
26
|
+
interface ObjJsonProps {
|
|
27
|
+
id: string;
|
|
28
|
+
}
|
|
34
29
|
/**
|
|
35
30
|
* Return type of the `Obj` schema constructor.
|
|
36
31
|
*
|
|
37
32
|
* This typedef avoids `TS4023` error (name from external module cannot be used named).
|
|
38
33
|
* See Effect's note on interface types.
|
|
39
34
|
*/
|
|
40
|
-
export interface obj<Self extends Schema.Schema.Any> extends Schema.AnnotableClass<obj<Self>, OfKind<EchoSchema.EntityKind.Object> & ToMutable<Schema.Schema.Type<Self>>, Simplify<ObjJsonProps & ToMutable<Schema.Schema.Encoded<Self>>>, Schema.Schema.Context<Self
|
|
35
|
+
export interface obj<Self extends Schema.Schema.Any> extends EchoSchema.TypeMeta, Schema.AnnotableClass<obj<Self>, OfKind<EchoSchema.EntityKind.Object> & ToMutable<Schema.Schema.Type<Self>>, Simplify<ObjJsonProps & ToMutable<Schema.Schema.Encoded<Self>>>, Schema.Schema.Context<Self>> {
|
|
41
36
|
}
|
|
42
37
|
/**
|
|
43
38
|
* Object schema.
|
|
@@ -55,13 +50,25 @@ export declare namespace Obj {
|
|
|
55
50
|
*/
|
|
56
51
|
type Any = Schema.Schema.AnyNoContext;
|
|
57
52
|
}
|
|
53
|
+
export interface Expando extends OfKind<EchoSchema.EntityKind.Object> {
|
|
54
|
+
[key: string]: any;
|
|
55
|
+
}
|
|
56
|
+
type ExpandoEncoded = Simplify<ObjJsonProps & {
|
|
57
|
+
[key: string]: any;
|
|
58
|
+
}>;
|
|
59
|
+
export declare const Expando: Schema.Schema<Expando, ExpandoEncoded, never>;
|
|
60
|
+
interface RelationJsonProps {
|
|
61
|
+
id: string;
|
|
62
|
+
[EchoSchema.ATTR_RELATION_SOURCE]: string;
|
|
63
|
+
[EchoSchema.ATTR_RELATION_TARGET]: string;
|
|
64
|
+
}
|
|
58
65
|
/**
|
|
59
66
|
* Return type of the `Relation` schema constructor.
|
|
60
67
|
*
|
|
61
68
|
* This typedef avoids `TS4023` error (name from external module cannot be used named).
|
|
62
69
|
* See Effect's note on interface types.
|
|
63
70
|
*/
|
|
64
|
-
export interface relation<Self extends Schema.Schema.Any, SourceSchema extends Schema.Schema.Any, TargetSchema extends Schema.Schema.Any> extends Schema.AnnotableClass<relation<Self, SourceSchema, TargetSchema>, OfKind<EchoSchema.EntityKind.Relation> & Relation.Endpoints<Schema.Schema.Type<SourceSchema>, Schema.Schema.Type<TargetSchema>> & ToMutable<Schema.Schema.Type<Self>>, Simplify<RelationJsonProps & ToMutable<Schema.Schema.Encoded<Self>>>, Schema.Schema.Context<Self
|
|
71
|
+
export interface relation<Self extends Schema.Schema.Any, SourceSchema extends Schema.Schema.Any, TargetSchema extends Schema.Schema.Any> extends EchoSchema.TypeMeta, Schema.AnnotableClass<relation<Self, SourceSchema, TargetSchema>, OfKind<EchoSchema.EntityKind.Relation> & Relation.Endpoints<Schema.Schema.Type<SourceSchema>, Schema.Schema.Type<TargetSchema>> & ToMutable<Schema.Schema.Type<Self>>, Simplify<RelationJsonProps & ToMutable<Schema.Schema.Encoded<Self>>>, Schema.Schema.Context<Self>> {
|
|
65
72
|
}
|
|
66
73
|
/**
|
|
67
74
|
* Relation schema.
|
|
@@ -78,14 +85,14 @@ export declare namespace Relation {
|
|
|
78
85
|
* NOTE: This is not an instance type.
|
|
79
86
|
*/
|
|
80
87
|
type Any = Schema.Schema.AnyNoContext;
|
|
81
|
-
/**
|
|
82
|
-
* Get relation target type.
|
|
83
|
-
*/
|
|
84
|
-
type Target<A> = A extends Relation.Endpoints<infer _S, infer T> ? T : never;
|
|
85
88
|
/**
|
|
86
89
|
* Get relation source type.
|
|
87
90
|
*/
|
|
88
91
|
type Source<A> = A extends Relation.Endpoints<infer S, infer _T> ? S : never;
|
|
92
|
+
/**
|
|
93
|
+
* Get relation target type.
|
|
94
|
+
*/
|
|
95
|
+
type Target<A> = A extends Relation.Endpoints<infer _S, infer T> ? T : never;
|
|
89
96
|
type Endpoints<Source, Target> = {
|
|
90
97
|
[RelationModule.Source]: Source;
|
|
91
98
|
[RelationModule.Target]: Target;
|
|
@@ -129,6 +136,10 @@ export declare const getTypename: (schema: Obj.Any | Relation.Any) => string;
|
|
|
129
136
|
* @example 0.1.0
|
|
130
137
|
*/
|
|
131
138
|
export declare const getVersion: (schema: Obj.Any | Relation.Any) => string;
|
|
139
|
+
/**
|
|
140
|
+
* @returns True if the schema is mutable.
|
|
141
|
+
*/
|
|
142
|
+
export declare const isMutable: (schema: Schema.Schema.AnyNoContext) => schema is EchoSchema.EchoSchema;
|
|
132
143
|
/**
|
|
133
144
|
* ECHO type metadata.
|
|
134
145
|
*/
|
|
@@ -137,16 +148,6 @@ export type Meta = EchoSchema.TypeAnnotation;
|
|
|
137
148
|
* Gets the meta data of the schema.
|
|
138
149
|
*/
|
|
139
150
|
export declare const getMeta: (schema: Obj.Any | Relation.Any) => Meta | undefined;
|
|
140
|
-
/**
|
|
141
|
-
* @returns True if the schema is mutable.
|
|
142
|
-
*/
|
|
143
|
-
export declare const isMutable: (schema: Schema.Schema.AnyNoContext) => schema is EchoSchema.EchoSchema;
|
|
144
151
|
export { SpaceId, ObjectId, DXN } from '@dxos/keys';
|
|
145
|
-
export
|
|
146
|
-
[key: string]: any;
|
|
147
|
-
}
|
|
148
|
-
export declare const Expando: Schema.Schema<Expando, Simplify<ObjJsonProps & {
|
|
149
|
-
[key: string]: any;
|
|
150
|
-
}>, never>;
|
|
151
|
-
export { Format, JsonSchemaType as JsonSchema, toEffectSchema, toJsonSchema, } from '@dxos/echo-schema';
|
|
152
|
+
export { Format, JsonSchemaType as JsonSchema, toEffectSchema, toJsonSchema } from '@dxos/echo-schema';
|
|
152
153
|
//# sourceMappingURL=Type.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Type.d.ts","sourceRoot":"","sources":["../../../src/Type.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,QAAQ,CAAC;AACrC,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"Type.d.ts","sourceRoot":"","sources":["../../../src/Type.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { BaseError, type BaseErrorOptions } from '@dxos/errors';
|
|
2
|
+
import { type DXN } from '@dxos/keys';
|
|
3
|
+
declare const SchemaNotFoundError_base: {
|
|
4
|
+
new (options?: BaseErrorOptions): {
|
|
5
|
+
#code: "SCHEMA_NOT_FOUND";
|
|
6
|
+
#context: Record<string, unknown>;
|
|
7
|
+
readonly name: "SCHEMA_NOT_FOUND";
|
|
8
|
+
readonly message: string;
|
|
9
|
+
readonly code: "SCHEMA_NOT_FOUND";
|
|
10
|
+
readonly _tag: "SCHEMA_NOT_FOUND";
|
|
11
|
+
readonly context: Record<string, unknown>;
|
|
12
|
+
stack?: string;
|
|
13
|
+
cause?: unknown;
|
|
14
|
+
};
|
|
15
|
+
code: "SCHEMA_NOT_FOUND";
|
|
16
|
+
is(error: unknown): error is BaseError;
|
|
17
|
+
wrap(options?: Omit<BaseErrorOptions, "cause">): (error: unknown) => {
|
|
18
|
+
#code: "SCHEMA_NOT_FOUND";
|
|
19
|
+
#context: Record<string, unknown>;
|
|
20
|
+
readonly name: "SCHEMA_NOT_FOUND";
|
|
21
|
+
readonly message: string;
|
|
22
|
+
readonly code: "SCHEMA_NOT_FOUND";
|
|
23
|
+
readonly _tag: "SCHEMA_NOT_FOUND";
|
|
24
|
+
readonly context: Record<string, unknown>;
|
|
25
|
+
stack?: string;
|
|
26
|
+
cause?: unknown;
|
|
27
|
+
};
|
|
28
|
+
extend<Code extends string = string>(code: Code, message?: string): any;
|
|
29
|
+
isError(error: unknown): error is Error;
|
|
30
|
+
captureStackTrace(targetObject: object, constructorOpt?: Function): void;
|
|
31
|
+
prepareStackTrace?: ((err: Error, stackTraces: NodeJS.CallSite[]) => any) | undefined;
|
|
32
|
+
stackTraceLimit: number;
|
|
33
|
+
};
|
|
34
|
+
export declare class SchemaNotFoundError extends SchemaNotFoundError_base {
|
|
35
|
+
constructor(schema: string, options?: BaseErrorOptions);
|
|
36
|
+
}
|
|
37
|
+
declare const ObjectNotFoundError_base: {
|
|
38
|
+
new (options?: BaseErrorOptions): {
|
|
39
|
+
#code: "OBJECT_NOT_FOUND";
|
|
40
|
+
#context: Record<string, unknown>;
|
|
41
|
+
readonly name: "OBJECT_NOT_FOUND";
|
|
42
|
+
readonly message: string;
|
|
43
|
+
readonly code: "OBJECT_NOT_FOUND";
|
|
44
|
+
readonly _tag: "OBJECT_NOT_FOUND";
|
|
45
|
+
readonly context: Record<string, unknown>;
|
|
46
|
+
stack?: string;
|
|
47
|
+
cause?: unknown;
|
|
48
|
+
};
|
|
49
|
+
code: "OBJECT_NOT_FOUND";
|
|
50
|
+
is(error: unknown): error is BaseError;
|
|
51
|
+
wrap(options?: Omit<BaseErrorOptions, "cause">): (error: unknown) => {
|
|
52
|
+
#code: "OBJECT_NOT_FOUND";
|
|
53
|
+
#context: Record<string, unknown>;
|
|
54
|
+
readonly name: "OBJECT_NOT_FOUND";
|
|
55
|
+
readonly message: string;
|
|
56
|
+
readonly code: "OBJECT_NOT_FOUND";
|
|
57
|
+
readonly _tag: "OBJECT_NOT_FOUND";
|
|
58
|
+
readonly context: Record<string, unknown>;
|
|
59
|
+
stack?: string;
|
|
60
|
+
cause?: unknown;
|
|
61
|
+
};
|
|
62
|
+
extend<Code extends string = string>(code: Code, message?: string): any;
|
|
63
|
+
isError(error: unknown): error is Error;
|
|
64
|
+
captureStackTrace(targetObject: object, constructorOpt?: Function): void;
|
|
65
|
+
prepareStackTrace?: ((err: Error, stackTraces: NodeJS.CallSite[]) => any) | undefined;
|
|
66
|
+
stackTraceLimit: number;
|
|
67
|
+
};
|
|
68
|
+
export declare class ObjectNotFoundError extends ObjectNotFoundError_base {
|
|
69
|
+
constructor(dxn: DXN, options?: BaseErrorOptions);
|
|
70
|
+
}
|
|
71
|
+
export {};
|
|
72
|
+
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/errors.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,KAAK,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChE,OAAO,EAAE,KAAK,GAAG,EAAE,MAAM,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEtC,qBAAa,mBAAoB,SAAQ,wBAAwD;gBACnF,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,gBAAgB;CAGvD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAED,qBAAa,mBAAoB,SAAQ,wBAAwD;gBACnF,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,gBAAgB;CAGjD"}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
|
+
export * from './errors';
|
|
1
2
|
export * as Key from './Key';
|
|
2
3
|
export * as Obj from './Obj';
|
|
3
4
|
export * as Ref from './Ref';
|
|
4
5
|
export * as Relation from './Relation';
|
|
5
6
|
export * as Type from './Type';
|
|
6
7
|
export { DXN } from '@dxos/keys';
|
|
7
|
-
export { Filter, Query } from './query';
|
|
8
|
+
export { Filter, Order, Query } from './query';
|
|
9
|
+
export { QueryAST } from '@dxos/echo-protocol';
|
|
8
10
|
export { type Live } from '@dxos/live-object';
|
|
9
11
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAE/B,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAIA,cAAc,UAAU,CAAC;AAEzB,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAE/B,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,mBAAmB,CAAC"}
|
|
@@ -1,9 +1,20 @@
|
|
|
1
1
|
import { Schema } from 'effect';
|
|
2
|
+
import type { NonEmptyArray } from 'effect/Array';
|
|
2
3
|
import type { Simplify } from 'effect/Schema';
|
|
3
4
|
import { type ForeignKey, type QueryAST } from '@dxos/echo-protocol';
|
|
4
5
|
import { DXN, ObjectId } from '@dxos/keys';
|
|
5
6
|
import * as Ref from '../Ref';
|
|
6
7
|
import type * as Type from '../Type';
|
|
8
|
+
export interface Order<T> {
|
|
9
|
+
'~Order': {
|
|
10
|
+
value: T;
|
|
11
|
+
};
|
|
12
|
+
ast: QueryAST.Order;
|
|
13
|
+
}
|
|
14
|
+
export declare namespace Order {
|
|
15
|
+
const natural: Order<any>;
|
|
16
|
+
const property: <T>(property: keyof T & string, direction: QueryAST.OrderDirection) => Order<T>;
|
|
17
|
+
}
|
|
7
18
|
export interface Query<T> {
|
|
8
19
|
'~Query': {
|
|
9
20
|
value: T;
|
|
@@ -18,10 +29,10 @@ export interface Query<T> {
|
|
|
18
29
|
select(props: Filter.Props<T>): Query<T>;
|
|
19
30
|
/**
|
|
20
31
|
* Traverse an outgoing reference.
|
|
21
|
-
* @param key - Property path inside T that is a reference.
|
|
32
|
+
* @param key - Property path inside T that is a reference or optional reference.
|
|
22
33
|
* @returns Query for the target of the reference.
|
|
23
34
|
*/
|
|
24
|
-
reference<K extends RefPropKey<T>>(key: K): Query<T[K] extends Ref.Any ? Ref.Target<T[K]> : never>;
|
|
35
|
+
reference<K extends RefPropKey<T>>(key: K): Query<T[K] extends Ref.Any ? Ref.Target<T[K]> : T[K] extends Ref.Any | undefined ? Ref.Target<Exclude<T[K], undefined>> : never>;
|
|
25
36
|
/**
|
|
26
37
|
* Find objects referencing this object.
|
|
27
38
|
* @param target - Schema of the referencing object.
|
|
@@ -53,6 +64,13 @@ export interface Query<T> {
|
|
|
53
64
|
* @returns Query for the target objects.
|
|
54
65
|
*/
|
|
55
66
|
target(): Query<Type.Relation.Target<T>>;
|
|
67
|
+
/**
|
|
68
|
+
* Order the query results.
|
|
69
|
+
* Orders are specified in priority order. The first order will be applied first, etc.
|
|
70
|
+
* @param order - Order to sort the results.
|
|
71
|
+
* @returns Query for the ordered results.
|
|
72
|
+
*/
|
|
73
|
+
orderBy(...order: NonEmptyArray<Order<T>>): Query<T>;
|
|
56
74
|
/**
|
|
57
75
|
* Add options to a query.
|
|
58
76
|
*/
|
|
@@ -60,6 +78,8 @@ export interface Query<T> {
|
|
|
60
78
|
}
|
|
61
79
|
interface QueryAPI {
|
|
62
80
|
is(value: unknown): value is Query.Any;
|
|
81
|
+
/** Construct a query from an ast. */
|
|
82
|
+
fromAst(ast: QueryAST.Query): Query<any>;
|
|
63
83
|
/**
|
|
64
84
|
* Select objects based on a filter.
|
|
65
85
|
* @param filter - Filter to select the objects.
|
|
@@ -176,6 +196,11 @@ interface FilterAPI {
|
|
|
176
196
|
* @param values - Values to check against.
|
|
177
197
|
*/
|
|
178
198
|
in<T>(...values: T[]): Filter<T>;
|
|
199
|
+
/**
|
|
200
|
+
* Predicate for an array property to contain the provided value.
|
|
201
|
+
* @param value - Value to check against.
|
|
202
|
+
*/
|
|
203
|
+
contains<T>(value: T): Filter<T[]>;
|
|
179
204
|
/**
|
|
180
205
|
* Predicate for property to be in the provided range.
|
|
181
206
|
* @param from - Start of the range (inclusive).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dsl.d.ts","sourceRoot":"","sources":["../../../../src/query/dsl.ts"],"names":[],"mappings":"AAIA,OAAO,
|
|
1
|
+
{"version":3,"file":"dsl.d.ts","sourceRoot":"","sources":["../../../../src/query/dsl.ts"],"names":[],"mappings":"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"}
|