@graphprotocol/grc-20 0.12.2 → 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/src/core/account.js +2 -2
- package/dist/src/core/account.js.map +1 -1
- package/dist/src/core/account.test.js +11 -11
- package/dist/src/core/account.test.js.map +1 -1
- package/dist/src/core/blocks/data.js +1 -1
- package/dist/src/core/blocks/data.js.map +1 -1
- package/dist/src/core/blocks/data.test.js +14 -14
- package/dist/src/core/blocks/data.test.js.map +1 -1
- package/dist/src/core/blocks/text.js +1 -1
- package/dist/src/core/blocks/text.js.map +1 -1
- package/dist/src/core/blocks/text.test.js +6 -6
- package/dist/src/core/blocks/text.test.js.map +1 -1
- package/dist/src/graph/create-entity.d.ts +6 -2
- package/dist/src/graph/create-entity.d.ts.map +1 -1
- package/dist/src/graph/create-entity.js +68 -25
- package/dist/src/graph/create-entity.js.map +1 -1
- package/dist/src/graph/create-entity.test.js +21 -24
- package/dist/src/graph/create-entity.test.js.map +1 -1
- package/dist/src/graph/create-image.d.ts.map +1 -1
- package/dist/src/graph/create-image.js +11 -18
- package/dist/src/graph/create-image.js.map +1 -1
- package/dist/src/graph/create-image.test.js +5 -6
- package/dist/src/graph/create-image.test.js.map +1 -1
- package/dist/src/graph/create-property.d.ts.map +1 -1
- package/dist/src/graph/create-property.js +27 -17
- package/dist/src/graph/create-property.js.map +1 -1
- package/dist/src/graph/create-relation.d.ts.map +1 -1
- package/dist/src/graph/create-relation.js +30 -10
- package/dist/src/graph/create-relation.js.map +1 -1
- package/dist/src/graph/create-relation.test.js +30 -31
- package/dist/src/graph/create-relation.test.js.map +1 -1
- package/dist/src/graph/create-type.d.ts.map +1 -1
- package/dist/src/graph/create-type.js +16 -14
- package/dist/src/graph/create-type.js.map +1 -1
- package/dist/src/graph/create-type.test.js +17 -18
- package/dist/src/graph/create-type.test.js.map +1 -1
- package/dist/src/graph/delete-entity.js +4 -4
- package/dist/src/graph/delete-entity.js.map +1 -1
- package/dist/src/graph/delete-entity.test.js +2 -3
- package/dist/src/graph/delete-entity.test.js.map +1 -1
- package/dist/src/graph/delete-relation.js +4 -4
- package/dist/src/graph/delete-relation.js.map +1 -1
- package/dist/src/graph/delete-relation.test.js +2 -3
- package/dist/src/graph/delete-relation.test.js.map +1 -1
- package/dist/src/graph/unset-entity-values.d.ts.map +1 -1
- package/dist/src/graph/unset-entity-values.js +8 -4
- package/dist/src/graph/unset-entity-values.js.map +1 -1
- package/dist/src/graph/unset-entity-values.test.js +4 -4
- package/dist/src/graph/unset-entity-values.test.js.map +1 -1
- package/dist/src/graph/unset-relation-fields.d.ts +1 -1
- package/dist/src/graph/unset-relation-fields.d.ts.map +1 -1
- package/dist/src/graph/unset-relation-fields.js +3 -2
- package/dist/src/graph/unset-relation-fields.js.map +1 -1
- package/dist/src/graph/unset-relation-fields.test.js +3 -3
- package/dist/src/graph/unset-relation-fields.test.js.map +1 -1
- package/dist/src/graph/update-entity.d.ts.map +1 -1
- package/dist/src/graph/update-entity.js +17 -13
- package/dist/src/graph/update-entity.js.map +1 -1
- package/dist/src/graph/update-entity.test.js +13 -17
- package/dist/src/graph/update-entity.test.js.map +1 -1
- package/dist/src/graph/update-relation.d.ts.map +1 -1
- package/dist/src/graph/update-relation.js +15 -7
- package/dist/src/graph/update-relation.js.map +1 -1
- package/dist/src/ipfs.test.js +1 -3
- package/dist/src/ipfs.test.js.map +1 -1
- package/dist/src/proto/edit.d.ts.map +1 -1
- package/dist/src/proto/edit.js +100 -9
- package/dist/src/proto/edit.js.map +1 -1
- package/dist/src/proto/edit.test.js +14 -17
- package/dist/src/proto/edit.test.js.map +1 -1
- package/dist/src/types.d.ts +47 -47
- package/dist/src/types.d.ts.map +1 -1
- package/dist/src/types.js.map +1 -1
- package/package.json +1 -1
package/dist/src/core/account.js
CHANGED
|
@@ -31,8 +31,8 @@ export function make(address) {
|
|
|
31
31
|
const { ops: entityOps } = createEntity({
|
|
32
32
|
id: accountId,
|
|
33
33
|
values: {
|
|
34
|
-
[ADDRESS_PROPERTY]:
|
|
35
|
-
[NAME_PROPERTY]:
|
|
34
|
+
[ADDRESS_PROPERTY]: checkedAddress,
|
|
35
|
+
[NAME_PROPERTY]: checkedAddress,
|
|
36
36
|
},
|
|
37
37
|
});
|
|
38
38
|
ops.push(...entityOps);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"account.js","sourceRoot":"","sources":["../../../src/core/account.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,aAAa,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAOlH;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,IAAI,CAAC,OAAe;IAClC,MAAM,SAAS,GAAG,QAAQ,EAAE,CAAC;IAC7B,MAAM,cAAc,GAAW,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAE3D,MAAM,GAAG,GAAS,EAAE,CAAC;IAErB,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,YAAY,CAAC;QACtC,EAAE,EAAE,SAAS;QACb,MAAM,EAAE;YACN,CAAC,gBAAgB,CAAC,EAAE,
|
|
1
|
+
{"version":3,"file":"account.js","sourceRoot":"","sources":["../../../src/core/account.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,aAAa,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAOlH;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,IAAI,CAAC,OAAe;IAClC,MAAM,SAAS,GAAG,QAAQ,EAAE,CAAC;IAC7B,MAAM,cAAc,GAAW,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAE3D,MAAM,GAAG,GAAS,EAAE,CAAC;IAErB,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,YAAY,CAAC;QACtC,EAAE,EAAE,SAAS;QACb,MAAM,EAAE;YACN,CAAC,gBAAgB,CAAC,EAAE,cAAc;YAClC,CAAC,aAAa,CAAC,EAAE,cAAc;SAChC;KACF,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC;IAEvB,mBAAmB;IACnB,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,cAAc,CAAC;QACzC,UAAU,EAAE,SAAS;QACrB,IAAI,EAAE,cAAc;QACpB,QAAQ,EAAE,YAAY;KACvB,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC;IAExB,sBAAsB;IACtB,gEAAgE;IAChE,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,cAAc,CAAC;QACzC,UAAU,EAAE,SAAS;QACrB,IAAI,EAAE,gBAAgB;QACtB,QAAQ,EAAE,QAAQ;KACnB,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC;IAExB,OAAO;QACL,SAAS;QACT,GAAG;KACJ,CAAC;AACJ,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { expect, it } from 'vitest';
|
|
2
|
-
import { Id
|
|
2
|
+
import { Id } from '../id.js';
|
|
3
3
|
import { NetworkIds, SystemIds } from '../system-ids.js';
|
|
4
4
|
import { make } from './account.js';
|
|
5
5
|
const ZERO_ADDRESS = '0x0000000000000000000000000000000000000000';
|
|
@@ -8,26 +8,26 @@ it('should generate ops for an account entity', () => {
|
|
|
8
8
|
const [entityOp, accountTypeOp, networkOp] = ops;
|
|
9
9
|
expect(entityOp?.type).toBe('UPDATE_ENTITY');
|
|
10
10
|
if (entityOp?.type === 'UPDATE_ENTITY' && entityOp?.entity.values?.[0]) {
|
|
11
|
-
expect(entityOp.entity.values[0].propertyId).toBe(
|
|
11
|
+
expect(entityOp.entity.values[0].propertyId).toBe(SystemIds.ADDRESS_PROPERTY);
|
|
12
12
|
expect(entityOp.entity.values[0].value).toBe(ZERO_ADDRESS);
|
|
13
|
-
expect(entityOp.entity.id).toBe(
|
|
13
|
+
expect(entityOp.entity.id).toBe(Id(accountId));
|
|
14
14
|
}
|
|
15
15
|
if (entityOp?.type === 'UPDATE_ENTITY' && entityOp?.entity.values?.[1]) {
|
|
16
|
-
expect(entityOp.entity.values[1].propertyId).toBe(
|
|
16
|
+
expect(entityOp.entity.values[1].propertyId).toBe(SystemIds.NAME_PROPERTY);
|
|
17
17
|
expect(entityOp.entity.values[1].value).toBe(ZERO_ADDRESS);
|
|
18
|
-
expect(entityOp.entity.id).toBe(
|
|
18
|
+
expect(entityOp.entity.id).toBe(Id(accountId));
|
|
19
19
|
}
|
|
20
20
|
expect(accountTypeOp?.type).toBe('CREATE_RELATION');
|
|
21
21
|
if (accountTypeOp?.type === 'CREATE_RELATION') {
|
|
22
|
-
expect(accountTypeOp.relation.type).toBe(
|
|
23
|
-
expect(accountTypeOp.relation.toEntity).toBe(
|
|
24
|
-
expect(accountTypeOp.relation.fromEntity).toBe(
|
|
22
|
+
expect(accountTypeOp.relation.type).toBe(SystemIds.TYPES_PROPERTY);
|
|
23
|
+
expect(accountTypeOp.relation.toEntity).toBe(SystemIds.ACCOUNT_TYPE);
|
|
24
|
+
expect(accountTypeOp.relation.fromEntity).toBe(Id(accountId));
|
|
25
25
|
}
|
|
26
26
|
expect(networkOp?.type).toBe('CREATE_RELATION');
|
|
27
27
|
if (networkOp?.type === 'CREATE_RELATION') {
|
|
28
|
-
expect(networkOp.relation.type).toBe(
|
|
29
|
-
expect(networkOp.relation.toEntity).toBe(
|
|
30
|
-
expect(networkOp.relation.fromEntity).toBe(
|
|
28
|
+
expect(networkOp.relation.type).toBe(SystemIds.NETWORK_PROPERTY);
|
|
29
|
+
expect(networkOp.relation.toEntity).toBe(NetworkIds.ETHEREUM);
|
|
30
|
+
expect(networkOp.relation.fromEntity).toBe(Id(accountId));
|
|
31
31
|
}
|
|
32
32
|
});
|
|
33
33
|
//# sourceMappingURL=account.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"account.test.js","sourceRoot":"","sources":["../../../src/core/account.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AACpC,OAAO,EAAE,EAAE,EAAE,
|
|
1
|
+
{"version":3,"file":"account.test.js","sourceRoot":"","sources":["../../../src/core/account.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data.js","sourceRoot":"","sources":["../../../../src/core/blocks/data.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,8BAA8B,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAIrH,SAAS,eAAe,CAAC,UAA+B;IACtD,QAAQ,UAAU,EAAE,CAAC;QACnB,KAAK,YAAY;YACf,OAAO,SAAS,CAAC,sBAAsB,CAAC;QAC1C,KAAK,KAAK;YACR,OAAO,SAAS,CAAC,sBAAsB,CAAC;QAC1C,KAAK,OAAO;YACV,OAAO,SAAS,CAAC,iBAAiB,CAAC;IACvC,CAAC;AACH,CAAC;AASD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,IAAI,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAmB;IAC1E,MAAM,UAAU,GAAG,QAAQ,EAAE,CAAC;IAE9B,MAAM,GAAG,GAAS,EAAE,CAAC;IACrB,MAAM,EAAE,GAAG,EAAE,gBAAgB,EAAE,GAAG,cAAc,CAAC;QAC/C,UAAU,EAAE,UAAU;QACtB,IAAI,EAAE,cAAc;QACpB,QAAQ,EAAE,UAAU;KACrB,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,CAAC;IAE9B,MAAM,EAAE,GAAG,EAAE,sBAAsB,EAAE,GAAG,cAAc,CAAC;QACrD,UAAU,EAAE,UAAU;QACtB,IAAI,EAAE,8BAA8B;QACpC,QAAQ,EAAE,eAAe,CAAC,UAAU,CAAC;KACtC,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC,GAAG,sBAAsB,CAAC,CAAC;IAEpC,MAAM,EAAE,GAAG,EAAE,oBAAoB,EAAE,GAAG,cAAc,CAAC;QACnD,UAAU,EAAE,EAAE,CAAC,MAAM,CAAC;QACtB,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,EAAE,CAAC,UAAU,CAAC;QACxB,QAAQ;KACT,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC,GAAG,oBAAoB,CAAC,CAAC;IAElC,IAAI,IAAI,EAAE,CAAC;QACT,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,YAAY,CAAC;YACpC,EAAE,EAAE,UAAU;YACd,MAAM,EAAE;gBACN,CAAC,aAAa,CAAC,EAAE,
|
|
1
|
+
{"version":3,"file":"data.js","sourceRoot":"","sources":["../../../../src/core/blocks/data.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,8BAA8B,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAIrH,SAAS,eAAe,CAAC,UAA+B;IACtD,QAAQ,UAAU,EAAE,CAAC;QACnB,KAAK,YAAY;YACf,OAAO,SAAS,CAAC,sBAAsB,CAAC;QAC1C,KAAK,KAAK;YACR,OAAO,SAAS,CAAC,sBAAsB,CAAC;QAC1C,KAAK,OAAO;YACV,OAAO,SAAS,CAAC,iBAAiB,CAAC;IACvC,CAAC;AACH,CAAC;AASD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,IAAI,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAmB;IAC1E,MAAM,UAAU,GAAG,QAAQ,EAAE,CAAC;IAE9B,MAAM,GAAG,GAAS,EAAE,CAAC;IACrB,MAAM,EAAE,GAAG,EAAE,gBAAgB,EAAE,GAAG,cAAc,CAAC;QAC/C,UAAU,EAAE,UAAU;QACtB,IAAI,EAAE,cAAc;QACpB,QAAQ,EAAE,UAAU;KACrB,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,CAAC;IAE9B,MAAM,EAAE,GAAG,EAAE,sBAAsB,EAAE,GAAG,cAAc,CAAC;QACrD,UAAU,EAAE,UAAU;QACtB,IAAI,EAAE,8BAA8B;QACpC,QAAQ,EAAE,eAAe,CAAC,UAAU,CAAC;KACtC,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC,GAAG,sBAAsB,CAAC,CAAC;IAEpC,MAAM,EAAE,GAAG,EAAE,oBAAoB,EAAE,GAAG,cAAc,CAAC;QACnD,UAAU,EAAE,EAAE,CAAC,MAAM,CAAC;QACtB,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,EAAE,CAAC,UAAU,CAAC;QACxB,QAAQ;KACT,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC,GAAG,oBAAoB,CAAC,CAAC;IAElC,IAAI,IAAI,EAAE,CAAC;QACT,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,YAAY,CAAC;YACpC,EAAE,EAAE,UAAU;YACd,MAAM,EAAE;gBACN,CAAC,aAAa,CAAC,EAAE,IAAI;aACtB;SACF,CAAC,CAAC;QACH,GAAG,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC;IACvB,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { expect, it } from 'vitest';
|
|
2
|
-
import { Id
|
|
2
|
+
import { Id } from '../../id.js';
|
|
3
3
|
import { SystemIds } from '../../system-ids.js';
|
|
4
4
|
import { make } from './data.js';
|
|
5
5
|
it('should generate ops for a data block entity', () => {
|
|
@@ -11,18 +11,18 @@ it('should generate ops for a data block entity', () => {
|
|
|
11
11
|
const [blockTypeOp, blockSourceTypeOp, blockRelationOp] = ops;
|
|
12
12
|
expect(blockTypeOp?.type).toBe('CREATE_RELATION');
|
|
13
13
|
if (blockTypeOp?.type === 'CREATE_RELATION') {
|
|
14
|
-
expect(blockTypeOp?.relation.type).toBe(
|
|
15
|
-
expect(blockTypeOp?.relation.toEntity).toBe(
|
|
14
|
+
expect(blockTypeOp?.relation.type).toBe(SystemIds.TYPES_PROPERTY);
|
|
15
|
+
expect(blockTypeOp?.relation.toEntity).toBe(SystemIds.DATA_BLOCK);
|
|
16
16
|
}
|
|
17
17
|
expect(blockSourceTypeOp?.type).toBe('CREATE_RELATION');
|
|
18
18
|
if (blockSourceTypeOp?.type === 'CREATE_RELATION') {
|
|
19
|
-
expect(blockSourceTypeOp?.relation.type).toBe(
|
|
20
|
-
expect(blockSourceTypeOp?.relation.toEntity).toBe(
|
|
19
|
+
expect(blockSourceTypeOp?.relation.type).toBe(SystemIds.DATA_SOURCE_TYPE_RELATION_TYPE);
|
|
20
|
+
expect(blockSourceTypeOp?.relation.toEntity).toBe(SystemIds.QUERY_DATA_SOURCE);
|
|
21
21
|
}
|
|
22
22
|
expect(blockRelationOp?.type).toBe('CREATE_RELATION');
|
|
23
23
|
if (blockRelationOp?.type === 'CREATE_RELATION') {
|
|
24
|
-
expect(blockRelationOp?.relation.type).toBe(
|
|
25
|
-
expect(blockRelationOp?.relation.fromEntity).toBe(
|
|
24
|
+
expect(blockRelationOp?.relation.type).toBe(SystemIds.BLOCKS);
|
|
25
|
+
expect(blockRelationOp?.relation.fromEntity).toBe(Id('5871e8f7-b719-4897-9c4d-cf7c518d32ef'));
|
|
26
26
|
}
|
|
27
27
|
expect(ops.length).toBe(3);
|
|
28
28
|
});
|
|
@@ -36,22 +36,22 @@ it('should generate ops for a data block entity with a name', () => {
|
|
|
36
36
|
const [blockTypeOp, blockSourceTypeOp, blockRelationOp, blockNameOp] = ops;
|
|
37
37
|
expect(blockTypeOp?.type).toBe('CREATE_RELATION');
|
|
38
38
|
if (blockTypeOp?.type === 'CREATE_RELATION') {
|
|
39
|
-
expect(blockTypeOp?.relation.type).toBe(
|
|
40
|
-
expect(blockTypeOp?.relation.toEntity).toBe(
|
|
39
|
+
expect(blockTypeOp?.relation.type).toBe(SystemIds.TYPES_PROPERTY);
|
|
40
|
+
expect(blockTypeOp?.relation.toEntity).toBe(SystemIds.DATA_BLOCK);
|
|
41
41
|
}
|
|
42
42
|
expect(blockSourceTypeOp?.type).toBe('CREATE_RELATION');
|
|
43
43
|
if (blockSourceTypeOp?.type === 'CREATE_RELATION') {
|
|
44
|
-
expect(blockSourceTypeOp?.relation.type).toBe(
|
|
45
|
-
expect(blockSourceTypeOp?.relation.toEntity).toBe(
|
|
44
|
+
expect(blockSourceTypeOp?.relation.type).toBe(SystemIds.DATA_SOURCE_TYPE_RELATION_TYPE);
|
|
45
|
+
expect(blockSourceTypeOp?.relation.toEntity).toBe(SystemIds.QUERY_DATA_SOURCE);
|
|
46
46
|
}
|
|
47
47
|
expect(blockRelationOp?.type).toBe('CREATE_RELATION');
|
|
48
48
|
if (blockRelationOp?.type === 'CREATE_RELATION') {
|
|
49
|
-
expect(blockRelationOp?.relation.type).toBe(
|
|
50
|
-
expect(blockRelationOp?.relation.fromEntity).toBe(
|
|
49
|
+
expect(blockRelationOp?.relation.type).toBe(SystemIds.BLOCKS);
|
|
50
|
+
expect(blockRelationOp?.relation.fromEntity).toBe(Id('5871e8f7-b719-4897-9c4d-cf7c518d32ef'));
|
|
51
51
|
}
|
|
52
52
|
expect(blockNameOp?.type).toBe('UPDATE_ENTITY');
|
|
53
53
|
if (blockNameOp?.type === 'UPDATE_ENTITY' && blockNameOp?.entity.values?.[0]) {
|
|
54
|
-
expect(blockNameOp.entity.values[0].propertyId).toBe(
|
|
54
|
+
expect(blockNameOp.entity.values[0].propertyId).toBe(SystemIds.NAME_PROPERTY);
|
|
55
55
|
expect(blockNameOp.entity.values[0].value).toBe('test-name');
|
|
56
56
|
}
|
|
57
57
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data.test.js","sourceRoot":"","sources":["../../../../src/core/blocks/data.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AACpC,OAAO,EAAE,EAAE,EAAE,
|
|
1
|
+
{"version":3,"file":"data.test.js","sourceRoot":"","sources":["../../../../src/core/blocks/data.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -36,7 +36,7 @@ export function make({ fromId, text, position }) {
|
|
|
36
36
|
const { ops: textBlockMarkdownTextOps } = updateEntity({
|
|
37
37
|
id: newBlockId,
|
|
38
38
|
values: {
|
|
39
|
-
[MARKDOWN_CONTENT]:
|
|
39
|
+
[MARKDOWN_CONTENT]: text,
|
|
40
40
|
},
|
|
41
41
|
});
|
|
42
42
|
ops.push(...textBlockMarkdownTextOps);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"text.js","sourceRoot":"","sources":["../../../../src/core/blocks/text.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE3C,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAIxF;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAmB;IAC9D,MAAM,UAAU,GAAG,QAAQ,EAAE,CAAC;IAE9B,MAAM,GAAG,GAAS,EAAE,CAAC;IAErB,MAAM,EAAE,GAAG,EAAE,gBAAgB,EAAE,GAAG,cAAc,CAAC;QAC/C,UAAU,EAAE,UAAU;QACtB,IAAI,EAAE,cAAc;QACpB,QAAQ,EAAE,UAAU;KACrB,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,CAAC;IAE9B,MAAM,EAAE,GAAG,EAAE,wBAAwB,EAAE,GAAG,YAAY,CAAC;QACrD,EAAE,EAAE,UAAU;QACd,MAAM,EAAE;YACN,CAAC,gBAAgB,CAAC,EAAE,
|
|
1
|
+
{"version":3,"file":"text.js","sourceRoot":"","sources":["../../../../src/core/blocks/text.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE3C,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAIxF;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAmB;IAC9D,MAAM,UAAU,GAAG,QAAQ,EAAE,CAAC;IAE9B,MAAM,GAAG,GAAS,EAAE,CAAC;IAErB,MAAM,EAAE,GAAG,EAAE,gBAAgB,EAAE,GAAG,cAAc,CAAC;QAC/C,UAAU,EAAE,UAAU;QACtB,IAAI,EAAE,cAAc;QACpB,QAAQ,EAAE,UAAU;KACrB,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,CAAC;IAE9B,MAAM,EAAE,GAAG,EAAE,wBAAwB,EAAE,GAAG,YAAY,CAAC;QACrD,EAAE,EAAE,UAAU;QACd,MAAM,EAAE;YACN,CAAC,gBAAgB,CAAC,EAAE,IAAI;SACzB;KACF,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC,GAAG,wBAAwB,CAAC,CAAC;IAEtC,MAAM,EAAE,GAAG,EAAE,oBAAoB,EAAE,GAAG,cAAc,CAAC;QACnD,UAAU,EAAE,EAAE,CAAC,MAAM,CAAC;QACtB,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,UAAU;QACpB,QAAQ;KACT,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC,GAAG,oBAAoB,CAAC,CAAC;IAElC,OAAO,GAAG,CAAC;AACb,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { expect, it } from 'vitest';
|
|
2
|
-
import { Id
|
|
2
|
+
import { Id } from '../../id.js';
|
|
3
3
|
import { SystemIds } from '../../system-ids.js';
|
|
4
4
|
import { make } from './text.js';
|
|
5
5
|
it('should generate ops for a text block entity', () => {
|
|
@@ -11,18 +11,18 @@ it('should generate ops for a text block entity', () => {
|
|
|
11
11
|
const [blockTypeOp, blockMarkdownTextOp, blockRelationOp] = ops;
|
|
12
12
|
expect(blockTypeOp?.type).toBe('CREATE_RELATION');
|
|
13
13
|
if (blockTypeOp?.type === 'CREATE_RELATION') {
|
|
14
|
-
expect(blockTypeOp?.relation.type).toBe(
|
|
15
|
-
expect(blockTypeOp?.relation.toEntity).toBe(
|
|
14
|
+
expect(blockTypeOp?.relation.type).toBe(SystemIds.TYPES_PROPERTY);
|
|
15
|
+
expect(blockTypeOp?.relation.toEntity).toBe(SystemIds.TEXT_BLOCK);
|
|
16
16
|
}
|
|
17
17
|
expect(blockMarkdownTextOp?.type).toBe('UPDATE_ENTITY');
|
|
18
18
|
if (blockMarkdownTextOp?.type === 'UPDATE_ENTITY' && blockMarkdownTextOp?.entity.values?.[0]) {
|
|
19
|
-
expect(blockMarkdownTextOp.entity.values[0].propertyId).toBe(
|
|
19
|
+
expect(blockMarkdownTextOp.entity.values[0].propertyId).toBe(SystemIds.MARKDOWN_CONTENT);
|
|
20
20
|
expect(blockMarkdownTextOp.entity.values[0].value).toBe('test-text');
|
|
21
21
|
}
|
|
22
22
|
expect(blockRelationOp?.type).toBe('CREATE_RELATION');
|
|
23
23
|
if (blockRelationOp?.type === 'CREATE_RELATION') {
|
|
24
|
-
expect(blockRelationOp?.relation.type).toBe(
|
|
25
|
-
expect(blockRelationOp?.relation.fromEntity).toBe(
|
|
24
|
+
expect(blockRelationOp?.relation.type).toBe(SystemIds.BLOCKS);
|
|
25
|
+
expect(blockRelationOp?.relation.fromEntity).toBe(Id('5871e8f7-b719-4897-9c4d-cf7c518d32ef'));
|
|
26
26
|
}
|
|
27
27
|
expect(ops.length).toBe(3);
|
|
28
28
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"text.test.js","sourceRoot":"","sources":["../../../../src/core/blocks/text.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AACpC,OAAO,EAAE,EAAE,EAAE,
|
|
1
|
+
{"version":3,"file":"text.test.js","sourceRoot":"","sources":["../../../../src/core/blocks/text.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AACpC,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;IACrD,MAAM,GAAG,GAAG,IAAI,CAAC;QACf,MAAM,EAAE,sCAAsC;QAC9C,IAAI,EAAE,WAAW;QACjB,QAAQ,EAAE,eAAe;KAC1B,CAAC,CAAC;IAEH,MAAM,CAAC,WAAW,EAAE,mBAAmB,EAAE,eAAe,CAAC,GAAG,GAAG,CAAC;IAEhE,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAClD,IAAI,WAAW,EAAE,IAAI,KAAK,iBAAiB,EAAE,CAAC;QAC5C,MAAM,CAAC,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;QAClE,MAAM,CAAC,WAAW,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IACpE,CAAC;IAED,MAAM,CAAC,mBAAmB,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACxD,IAAI,mBAAmB,EAAE,IAAI,KAAK,eAAe,IAAI,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7F,MAAM,CAAC,mBAAmB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;QACzF,MAAM,CAAC,mBAAmB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACvE,CAAC;IAED,MAAM,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACtD,IAAI,eAAe,EAAE,IAAI,KAAK,iBAAiB,EAAE,CAAC;QAChD,MAAM,CAAC,eAAe,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAC9D,MAAM,CAAC,eAAe,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,sCAAsC,CAAC,CAAC,CAAC;IAChG,CAAC;IAED,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAC7B,CAAC,CAAC,CAAC"}
|
|
@@ -19,10 +19,14 @@ import type { CreateResult, EntityParams } from '../types.js';
|
|
|
19
19
|
* }
|
|
20
20
|
* },
|
|
21
21
|
* relations: {
|
|
22
|
-
* [
|
|
22
|
+
* [relationPropertyId]: {
|
|
23
23
|
* to: 'id of the entity',
|
|
24
24
|
* id: 'id of the relation', // optional
|
|
25
25
|
* toSpace: 'id of the to space', // optional
|
|
26
|
+
* fromSpace: 'id of the from space', // optional
|
|
27
|
+
* fromVersion: 'id of the from version', // optional
|
|
28
|
+
* toVersion: 'id of the to version', // optional
|
|
29
|
+
* verified: true, // optional
|
|
26
30
|
* position: positionString, // optional
|
|
27
31
|
* entityId: 'id of the relation entity', // optional and will be generated if not provided
|
|
28
32
|
* entityName: 'name of the relation entity', // optional
|
|
@@ -34,7 +38,7 @@ import type { CreateResult, EntityParams } from '../types.js';
|
|
|
34
38
|
* },
|
|
35
39
|
* },
|
|
36
40
|
* entityRelations: {
|
|
37
|
-
* [
|
|
41
|
+
* [relationPropertyId]: {
|
|
38
42
|
* to: 'id of the entity',
|
|
39
43
|
* id: 'id of the relation', // optional
|
|
40
44
|
* position: positionString, // optional
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-entity.d.ts","sourceRoot":"","sources":["../../../src/graph/create-entity.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAA6B,MAAM,aAAa,CAAC;AAGzF
|
|
1
|
+
{"version":3,"file":"create-entity.d.ts","sourceRoot":"","sources":["../../../src/graph/create-entity.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAA6B,MAAM,aAAa,CAAC;AAGzF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AACH,eAAO,MAAM,YAAY,GAAI,yEAQ1B,YAAY,KAAG,YAuHjB,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { COVER_PROPERTY, DESCRIPTION_PROPERTY, NAME_PROPERTY, TYPES_PROPERTY } from '../core/ids/system.js';
|
|
2
|
-
import { Id, assertValid, generate
|
|
2
|
+
import { Id, assertValid, generate } from '../id.js';
|
|
3
3
|
import { createRelation } from './create-relation.js';
|
|
4
4
|
/**
|
|
5
5
|
* Creates an entity with the given name, description, cover, properties, and types.
|
|
@@ -21,10 +21,14 @@ import { createRelation } from './create-relation.js';
|
|
|
21
21
|
* }
|
|
22
22
|
* },
|
|
23
23
|
* relations: {
|
|
24
|
-
* [
|
|
24
|
+
* [relationPropertyId]: {
|
|
25
25
|
* to: 'id of the entity',
|
|
26
26
|
* id: 'id of the relation', // optional
|
|
27
27
|
* toSpace: 'id of the to space', // optional
|
|
28
|
+
* fromSpace: 'id of the from space', // optional
|
|
29
|
+
* fromVersion: 'id of the from version', // optional
|
|
30
|
+
* toVersion: 'id of the to version', // optional
|
|
31
|
+
* verified: true, // optional
|
|
28
32
|
* position: positionString, // optional
|
|
29
33
|
* entityId: 'id of the relation entity', // optional and will be generated if not provided
|
|
30
34
|
* entityName: 'name of the relation entity', // optional
|
|
@@ -36,7 +40,7 @@ import { createRelation } from './create-relation.js';
|
|
|
36
40
|
* },
|
|
37
41
|
* },
|
|
38
42
|
* entityRelations: {
|
|
39
|
-
* [
|
|
43
|
+
* [relationPropertyId]: {
|
|
40
44
|
* to: 'id of the entity',
|
|
41
45
|
* id: 'id of the relation', // optional
|
|
42
46
|
* position: positionString, // optional
|
|
@@ -51,62 +55,104 @@ import { createRelation } from './create-relation.js';
|
|
|
51
55
|
* @throws Will throw an error if any provided ID is invalid
|
|
52
56
|
*/
|
|
53
57
|
export const createEntity = ({ id: providedId, name, description, cover, values, relations, types, }) => {
|
|
54
|
-
if (providedId)
|
|
58
|
+
if (providedId)
|
|
55
59
|
assertValid(providedId, '`id` in `createEntity`');
|
|
60
|
+
if (cover)
|
|
61
|
+
assertValid(cover, '`cover` in `createEntity`');
|
|
62
|
+
for (const [key] of Object.entries(values ?? {})) {
|
|
63
|
+
assertValid(key, '`values` in `createEntity`');
|
|
64
|
+
}
|
|
65
|
+
// we only assert Ids one level deep for a better experience here, but multiple levels deep are
|
|
66
|
+
// asserted since we use createRelation and createEntity internally
|
|
67
|
+
for (const [key, relationEntry] of Object.entries(relations ?? {})) {
|
|
68
|
+
assertValid(key, '`relations` in `createEntity`');
|
|
69
|
+
if (Array.isArray(relationEntry)) {
|
|
70
|
+
for (const relation of relationEntry) {
|
|
71
|
+
assertValid(relation.toEntity, '`toEntity` in `relations` in `createEntity`');
|
|
72
|
+
if (relation.toSpace)
|
|
73
|
+
assertValid(relation.toSpace, '`toSpace` in `relations` in `createEntity`');
|
|
74
|
+
if (relation.fromSpace)
|
|
75
|
+
assertValid(relation.fromSpace, '`fromSpace` in `relations` in `createEntity`');
|
|
76
|
+
if (relation.fromVersion)
|
|
77
|
+
assertValid(relation.fromVersion, '`fromVersion` in `relations` in `createEntity`');
|
|
78
|
+
if (relation.toVersion)
|
|
79
|
+
assertValid(relation.toVersion, '`toVersion` in `relations` in `createEntity`');
|
|
80
|
+
if (relation.entityId)
|
|
81
|
+
assertValid(relation.entityId, '`entityId` in `relations` in `createEntity`');
|
|
82
|
+
if (relation.entityCover)
|
|
83
|
+
assertValid(relation.entityCover, '`entityCover` in `relations` in `createEntity`');
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
else {
|
|
87
|
+
assertValid(relationEntry.toEntity, '`toEntity` in `relations` in `createEntity`');
|
|
88
|
+
if (relationEntry.toSpace)
|
|
89
|
+
assertValid(relationEntry.toSpace, '`toSpace` in `relations` in `createEntity`');
|
|
90
|
+
if (relationEntry.fromSpace)
|
|
91
|
+
assertValid(relationEntry.fromSpace, '`fromSpace` in `relations` in `createEntity`');
|
|
92
|
+
if (relationEntry.fromVersion)
|
|
93
|
+
assertValid(relationEntry.fromVersion, '`fromVersion` in `relations` in `createEntity`');
|
|
94
|
+
if (relationEntry.toVersion)
|
|
95
|
+
assertValid(relationEntry.toVersion, '`toVersion` in `relations` in `createEntity`');
|
|
96
|
+
if (relationEntry.entityId)
|
|
97
|
+
assertValid(relationEntry.entityId, '`entityId` in `relations` in `createEntity`');
|
|
98
|
+
if (relationEntry.entityCover)
|
|
99
|
+
assertValid(relationEntry.entityCover, '`entityCover` in `relations` in `createEntity`');
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
for (const typeId of types ?? []) {
|
|
103
|
+
assertValid(typeId, '`types` in `createEntity`');
|
|
56
104
|
}
|
|
57
105
|
const id = providedId ?? generate();
|
|
58
106
|
let ops = [];
|
|
59
107
|
const newValues = [];
|
|
60
108
|
if (name) {
|
|
61
109
|
newValues.push({
|
|
62
|
-
propertyId:
|
|
110
|
+
propertyId: NAME_PROPERTY,
|
|
63
111
|
value: name,
|
|
64
112
|
});
|
|
65
113
|
}
|
|
66
114
|
if (description) {
|
|
67
115
|
newValues.push({
|
|
68
|
-
propertyId:
|
|
116
|
+
propertyId: DESCRIPTION_PROPERTY,
|
|
69
117
|
value: description,
|
|
70
118
|
});
|
|
71
119
|
}
|
|
72
120
|
for (const [key, value] of Object.entries(values ?? {})) {
|
|
73
121
|
newValues.push({
|
|
74
|
-
propertyId:
|
|
75
|
-
value
|
|
122
|
+
propertyId: Id(key),
|
|
123
|
+
value,
|
|
76
124
|
});
|
|
77
125
|
}
|
|
78
126
|
const op = {
|
|
79
127
|
type: 'UPDATE_ENTITY',
|
|
80
128
|
entity: {
|
|
81
|
-
id:
|
|
129
|
+
id: Id(id),
|
|
82
130
|
values: newValues,
|
|
83
131
|
},
|
|
84
132
|
};
|
|
85
133
|
ops.push(op);
|
|
86
134
|
if (cover) {
|
|
87
|
-
assertValid(cover);
|
|
88
135
|
ops.push({
|
|
89
136
|
type: 'CREATE_RELATION',
|
|
90
137
|
relation: {
|
|
91
|
-
id:
|
|
92
|
-
entity:
|
|
93
|
-
fromEntity:
|
|
94
|
-
toEntity:
|
|
95
|
-
type:
|
|
138
|
+
id: generate(),
|
|
139
|
+
entity: generate(),
|
|
140
|
+
fromEntity: Id(id),
|
|
141
|
+
toEntity: Id(cover),
|
|
142
|
+
type: COVER_PROPERTY,
|
|
96
143
|
},
|
|
97
144
|
});
|
|
98
145
|
}
|
|
99
146
|
if (types) {
|
|
100
147
|
for (const typeId of types) {
|
|
101
|
-
assertValid(typeId);
|
|
102
148
|
ops.push({
|
|
103
149
|
type: 'CREATE_RELATION',
|
|
104
150
|
relation: {
|
|
105
|
-
id:
|
|
106
|
-
entity:
|
|
107
|
-
fromEntity:
|
|
108
|
-
toEntity:
|
|
109
|
-
type:
|
|
151
|
+
id: generate(),
|
|
152
|
+
entity: generate(),
|
|
153
|
+
fromEntity: Id(id),
|
|
154
|
+
toEntity: Id(typeId),
|
|
155
|
+
type: TYPES_PROPERTY,
|
|
110
156
|
},
|
|
111
157
|
});
|
|
112
158
|
}
|
|
@@ -114,10 +160,7 @@ export const createEntity = ({ id: providedId, name, description, cover, values,
|
|
|
114
160
|
for (const [typeId, value] of Object.entries(relations ?? {})) {
|
|
115
161
|
const relationsEntries = Array.isArray(value) ? value : [value];
|
|
116
162
|
for (const relation of relationsEntries) {
|
|
117
|
-
const relationId = relation.relationId ?? generate();
|
|
118
|
-
assertValid(relationId);
|
|
119
163
|
const relationEntityId = relation.id ?? generate();
|
|
120
|
-
assertValid(relationEntityId);
|
|
121
164
|
const { ops: relationOps } = createRelation({
|
|
122
165
|
fromEntity: id,
|
|
123
166
|
toEntity: relation.toEntity,
|
|
@@ -135,6 +178,6 @@ export const createEntity = ({ id: providedId, name, description, cover, values,
|
|
|
135
178
|
ops = ops.concat(relationOps);
|
|
136
179
|
}
|
|
137
180
|
}
|
|
138
|
-
return { id, ops };
|
|
181
|
+
return { id: Id(id), ops };
|
|
139
182
|
};
|
|
140
183
|
//# sourceMappingURL=create-entity.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-entity.js","sourceRoot":"","sources":["../../../src/graph/create-entity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5G,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"create-entity.js","sourceRoot":"","sources":["../../../src/graph/create-entity.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { describe, expect, it } from 'vitest';
|
|
2
2
|
import { CLAIM_TYPE, NEWS_STORY_TYPE } from '../core/ids/content.js';
|
|
3
3
|
import { COVER_PROPERTY, DESCRIPTION_PROPERTY, NAME_PROPERTY, TYPES_PROPERTY } from '../core/ids/system.js';
|
|
4
|
-
import { Id
|
|
4
|
+
import { Id } from '../id.js';
|
|
5
5
|
import { createEntity } from './create-entity.js';
|
|
6
6
|
describe('createEntity', () => {
|
|
7
7
|
const coverId = Id('30145d36-d5a5-4244-be59-3d111d879ba5');
|
|
@@ -14,7 +14,7 @@ describe('createEntity', () => {
|
|
|
14
14
|
expect(entity.ops[0]).toMatchObject({
|
|
15
15
|
type: 'UPDATE_ENTITY',
|
|
16
16
|
entity: {
|
|
17
|
-
id:
|
|
17
|
+
id: entity.id,
|
|
18
18
|
values: [],
|
|
19
19
|
},
|
|
20
20
|
});
|
|
@@ -30,7 +30,7 @@ describe('createEntity', () => {
|
|
|
30
30
|
expect(entity.ops[0]).toMatchObject({
|
|
31
31
|
type: 'UPDATE_ENTITY',
|
|
32
32
|
entity: {
|
|
33
|
-
id:
|
|
33
|
+
id: entity.id,
|
|
34
34
|
values: [],
|
|
35
35
|
},
|
|
36
36
|
});
|
|
@@ -38,18 +38,18 @@ describe('createEntity', () => {
|
|
|
38
38
|
expect(entity.ops[1]).toMatchObject({
|
|
39
39
|
type: 'CREATE_RELATION',
|
|
40
40
|
relation: {
|
|
41
|
-
fromEntity:
|
|
42
|
-
toEntity:
|
|
43
|
-
type:
|
|
41
|
+
fromEntity: entity.id,
|
|
42
|
+
toEntity: CLAIM_TYPE,
|
|
43
|
+
type: TYPES_PROPERTY,
|
|
44
44
|
},
|
|
45
45
|
});
|
|
46
46
|
// Check second type relation
|
|
47
47
|
expect(entity.ops[2]).toMatchObject({
|
|
48
48
|
type: 'CREATE_RELATION',
|
|
49
49
|
relation: {
|
|
50
|
-
fromEntity:
|
|
51
|
-
toEntity:
|
|
52
|
-
type:
|
|
50
|
+
fromEntity: entity.id,
|
|
51
|
+
toEntity: NEWS_STORY_TYPE,
|
|
52
|
+
type: TYPES_PROPERTY,
|
|
53
53
|
},
|
|
54
54
|
});
|
|
55
55
|
});
|
|
@@ -64,14 +64,14 @@ describe('createEntity', () => {
|
|
|
64
64
|
expect(entity.ops[0]).toMatchObject({
|
|
65
65
|
type: 'UPDATE_ENTITY',
|
|
66
66
|
entity: {
|
|
67
|
-
id:
|
|
67
|
+
id: entity.id,
|
|
68
68
|
values: [
|
|
69
69
|
{
|
|
70
|
-
propertyId:
|
|
70
|
+
propertyId: NAME_PROPERTY,
|
|
71
71
|
value: 'Test Entity',
|
|
72
72
|
},
|
|
73
73
|
{
|
|
74
|
-
propertyId:
|
|
74
|
+
propertyId: DESCRIPTION_PROPERTY,
|
|
75
75
|
value: 'Test Description',
|
|
76
76
|
},
|
|
77
77
|
],
|
|
@@ -89,7 +89,7 @@ describe('createEntity', () => {
|
|
|
89
89
|
expect(entity.ops[0]).toMatchObject({
|
|
90
90
|
type: 'UPDATE_ENTITY',
|
|
91
91
|
entity: {
|
|
92
|
-
id:
|
|
92
|
+
id: entity.id,
|
|
93
93
|
values: [],
|
|
94
94
|
},
|
|
95
95
|
});
|
|
@@ -97,9 +97,9 @@ describe('createEntity', () => {
|
|
|
97
97
|
expect(entity.ops[1]).toMatchObject({
|
|
98
98
|
type: 'CREATE_RELATION',
|
|
99
99
|
relation: {
|
|
100
|
-
fromEntity:
|
|
101
|
-
toEntity:
|
|
102
|
-
type:
|
|
100
|
+
fromEntity: entity.id,
|
|
101
|
+
toEntity: coverId,
|
|
102
|
+
type: COVER_PROPERTY,
|
|
103
103
|
},
|
|
104
104
|
});
|
|
105
105
|
});
|
|
@@ -107,9 +107,7 @@ describe('createEntity', () => {
|
|
|
107
107
|
const customPropertyId = Id('fa269fd3-de98-49cf-90c4-4235d905a67c');
|
|
108
108
|
const entity = createEntity({
|
|
109
109
|
values: {
|
|
110
|
-
[customPropertyId]:
|
|
111
|
-
value: 'custom value',
|
|
112
|
-
},
|
|
110
|
+
[customPropertyId]: 'custom value',
|
|
113
111
|
},
|
|
114
112
|
});
|
|
115
113
|
expect(entity).toBeDefined();
|
|
@@ -118,10 +116,10 @@ describe('createEntity', () => {
|
|
|
118
116
|
expect(entity.ops[0]).toMatchObject({
|
|
119
117
|
type: 'UPDATE_ENTITY',
|
|
120
118
|
entity: {
|
|
121
|
-
id:
|
|
119
|
+
id: entity.id,
|
|
122
120
|
values: [
|
|
123
121
|
{
|
|
124
|
-
propertyId:
|
|
122
|
+
propertyId: customPropertyId,
|
|
125
123
|
value: 'custom value',
|
|
126
124
|
},
|
|
127
125
|
],
|
|
@@ -140,10 +138,10 @@ describe('createEntity', () => {
|
|
|
140
138
|
expect(entity.ops[0]).toMatchObject({
|
|
141
139
|
type: 'UPDATE_ENTITY',
|
|
142
140
|
entity: {
|
|
143
|
-
id:
|
|
141
|
+
id: providedId,
|
|
144
142
|
values: [
|
|
145
143
|
{
|
|
146
|
-
propertyId:
|
|
144
|
+
propertyId: NAME_PROPERTY,
|
|
147
145
|
value: 'Test Entity',
|
|
148
146
|
},
|
|
149
147
|
],
|
|
@@ -151,7 +149,6 @@ describe('createEntity', () => {
|
|
|
151
149
|
});
|
|
152
150
|
});
|
|
153
151
|
it('throws an error if the provided id is invalid', () => {
|
|
154
|
-
// @ts-expect-error - invalid id type
|
|
155
152
|
expect(() => createEntity({ id: 'invalid' })).toThrow('Invalid id: "invalid" for `id` in `createEntity`');
|
|
156
153
|
});
|
|
157
154
|
});
|