@graphprotocol/grc-20 0.12.2 → 0.13.1

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.
Files changed (87) hide show
  1. package/README.md +23 -20
  2. package/dist/src/core/account.js +2 -2
  3. package/dist/src/core/account.js.map +1 -1
  4. package/dist/src/core/account.test.js +11 -11
  5. package/dist/src/core/account.test.js.map +1 -1
  6. package/dist/src/core/blocks/data.js +1 -1
  7. package/dist/src/core/blocks/data.js.map +1 -1
  8. package/dist/src/core/blocks/data.test.js +14 -14
  9. package/dist/src/core/blocks/data.test.js.map +1 -1
  10. package/dist/src/core/blocks/text.js +1 -1
  11. package/dist/src/core/blocks/text.js.map +1 -1
  12. package/dist/src/core/blocks/text.test.js +6 -6
  13. package/dist/src/core/blocks/text.test.js.map +1 -1
  14. package/dist/src/graph/create-entity.d.ts +8 -8
  15. package/dist/src/graph/create-entity.d.ts.map +1 -1
  16. package/dist/src/graph/create-entity.js +70 -31
  17. package/dist/src/graph/create-entity.js.map +1 -1
  18. package/dist/src/graph/create-entity.test.js +92 -35
  19. package/dist/src/graph/create-entity.test.js.map +1 -1
  20. package/dist/src/graph/create-image.d.ts.map +1 -1
  21. package/dist/src/graph/create-image.js +11 -18
  22. package/dist/src/graph/create-image.js.map +1 -1
  23. package/dist/src/graph/create-image.test.js +5 -6
  24. package/dist/src/graph/create-image.test.js.map +1 -1
  25. package/dist/src/graph/create-property.d.ts.map +1 -1
  26. package/dist/src/graph/create-property.js +27 -17
  27. package/dist/src/graph/create-property.js.map +1 -1
  28. package/dist/src/graph/create-relation.d.ts.map +1 -1
  29. package/dist/src/graph/create-relation.js +30 -10
  30. package/dist/src/graph/create-relation.js.map +1 -1
  31. package/dist/src/graph/create-relation.test.js +30 -31
  32. package/dist/src/graph/create-relation.test.js.map +1 -1
  33. package/dist/src/graph/create-type.d.ts.map +1 -1
  34. package/dist/src/graph/create-type.js +16 -14
  35. package/dist/src/graph/create-type.js.map +1 -1
  36. package/dist/src/graph/create-type.test.js +17 -18
  37. package/dist/src/graph/create-type.test.js.map +1 -1
  38. package/dist/src/graph/delete-entity.js +4 -4
  39. package/dist/src/graph/delete-entity.js.map +1 -1
  40. package/dist/src/graph/delete-entity.test.js +2 -3
  41. package/dist/src/graph/delete-entity.test.js.map +1 -1
  42. package/dist/src/graph/delete-relation.js +4 -4
  43. package/dist/src/graph/delete-relation.js.map +1 -1
  44. package/dist/src/graph/delete-relation.test.js +2 -3
  45. package/dist/src/graph/delete-relation.test.js.map +1 -1
  46. package/dist/src/graph/index.d.ts +1 -0
  47. package/dist/src/graph/index.d.ts.map +1 -1
  48. package/dist/src/graph/index.js +1 -0
  49. package/dist/src/graph/index.js.map +1 -1
  50. package/dist/src/graph/serialize.d.ts +5 -0
  51. package/dist/src/graph/serialize.d.ts.map +1 -0
  52. package/dist/src/graph/serialize.js +13 -0
  53. package/dist/src/graph/serialize.js.map +1 -0
  54. package/dist/src/graph/serialize.test.d.ts +2 -0
  55. package/dist/src/graph/serialize.test.d.ts.map +1 -0
  56. package/dist/src/graph/serialize.test.js +49 -0
  57. package/dist/src/graph/serialize.test.js.map +1 -0
  58. package/dist/src/graph/unset-entity-values.d.ts.map +1 -1
  59. package/dist/src/graph/unset-entity-values.js +8 -4
  60. package/dist/src/graph/unset-entity-values.js.map +1 -1
  61. package/dist/src/graph/unset-entity-values.test.js +4 -4
  62. package/dist/src/graph/unset-entity-values.test.js.map +1 -1
  63. package/dist/src/graph/unset-relation-fields.d.ts +1 -1
  64. package/dist/src/graph/unset-relation-fields.d.ts.map +1 -1
  65. package/dist/src/graph/unset-relation-fields.js +3 -2
  66. package/dist/src/graph/unset-relation-fields.js.map +1 -1
  67. package/dist/src/graph/unset-relation-fields.test.js +3 -3
  68. package/dist/src/graph/unset-relation-fields.test.js.map +1 -1
  69. package/dist/src/graph/update-entity.d.ts.map +1 -1
  70. package/dist/src/graph/update-entity.js +17 -13
  71. package/dist/src/graph/update-entity.js.map +1 -1
  72. package/dist/src/graph/update-entity.test.js +13 -17
  73. package/dist/src/graph/update-entity.test.js.map +1 -1
  74. package/dist/src/graph/update-relation.d.ts.map +1 -1
  75. package/dist/src/graph/update-relation.js +15 -7
  76. package/dist/src/graph/update-relation.js.map +1 -1
  77. package/dist/src/ipfs.test.js +1 -3
  78. package/dist/src/ipfs.test.js.map +1 -1
  79. package/dist/src/proto/edit.d.ts.map +1 -1
  80. package/dist/src/proto/edit.js +100 -9
  81. package/dist/src/proto/edit.js.map +1 -1
  82. package/dist/src/proto/edit.test.js +14 -17
  83. package/dist/src/proto/edit.test.js.map +1 -1
  84. package/dist/src/types.d.ts +48 -47
  85. package/dist/src/types.d.ts.map +1 -1
  86. package/dist/src/types.js.map +1 -1
  87. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
- import { Id, toBase64 } from '../id.js';
1
+ import { Id, assertValid } from '../id.js';
2
2
  /**
3
3
  * Unsets properties from an entity.
4
4
  *
@@ -14,13 +14,17 @@ import { Id, toBase64 } from '../id.js';
14
14
  * @returns The operation to unset the properties.
15
15
  */
16
16
  export const unsetEntityValues = ({ id, properties }) => {
17
+ assertValid(id, '`id` in `unsetEntityValues`');
18
+ for (const propertyId of properties) {
19
+ assertValid(propertyId, '`properties` in `unsetEntityValues`');
20
+ }
17
21
  const op = {
18
22
  type: 'UNSET_ENTITY_VALUES',
19
23
  unsetEntityValues: {
20
- id: toBase64(Id(id)),
21
- properties: properties.map(propertyId => toBase64(Id(propertyId))),
24
+ id: Id(id),
25
+ properties: properties.map(propertyId => Id(propertyId)),
22
26
  },
23
27
  };
24
- return { id, ops: [op] };
28
+ return { id: Id(id), ops: [op] };
25
29
  };
26
30
  //# sourceMappingURL=unset-entity-values.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"unset-entity-values.js","sourceRoot":"","sources":["../../../src/graph/unset-entity-values.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAGxC;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,EAAE,EAAE,EAAE,UAAU,EAA2B,EAAE,EAAE;IAC/E,MAAM,EAAE,GAAwB;QAC9B,IAAI,EAAE,qBAAqB;QAC3B,iBAAiB,EAAE;YACjB,EAAE,EAAE,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YACpB,UAAU,EAAE,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;SACnE;KACF,CAAC;IAEF,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;AAC3B,CAAC,CAAC"}
1
+ {"version":3,"file":"unset-entity-values.js","sourceRoot":"","sources":["../../../src/graph/unset-entity-values.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAG3C;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,EAAE,EAAE,EAAE,UAAU,EAA2B,EAAE,EAAE;IAC/E,WAAW,CAAC,EAAE,EAAE,6BAA6B,CAAC,CAAC;IAC/C,KAAK,MAAM,UAAU,IAAI,UAAU,EAAE,CAAC;QACpC,WAAW,CAAC,UAAU,EAAE,qCAAqC,CAAC,CAAC;IACjE,CAAC;IAED,MAAM,EAAE,GAAwB;QAC9B,IAAI,EAAE,qBAAqB;QAC3B,iBAAiB,EAAE;YACjB,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;YACV,UAAU,EAAE,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;SACzD;KACF,CAAC;IAEF,OAAO,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;AACnC,CAAC,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { describe, expect, it } from 'vitest';
2
- import { Id, toBase64 } from '../id.js';
2
+ import { Id } from '../id.js';
3
3
  import { unsetEntityValues } from './unset-entity-values.js';
4
4
  describe('unsetEntityValues', () => {
5
5
  it('should create an unset properties operation with valid ID and properties', () => {
@@ -12,8 +12,8 @@ describe('unsetEntityValues', () => {
12
12
  {
13
13
  type: 'UNSET_ENTITY_VALUES',
14
14
  unsetEntityValues: {
15
- id: toBase64(id),
16
- properties: properties.map(property => toBase64(property)),
15
+ id: id,
16
+ properties: properties,
17
17
  },
18
18
  },
19
19
  ],
@@ -29,7 +29,7 @@ describe('unsetEntityValues', () => {
29
29
  {
30
30
  type: 'UNSET_ENTITY_VALUES',
31
31
  unsetEntityValues: {
32
- id: toBase64(id),
32
+ id: id,
33
33
  properties: [],
34
34
  },
35
35
  },
@@ -1 +1 @@
1
- {"version":3,"file":"unset-entity-values.test.js","sourceRoot":"","sources":["../../../src/graph/unset-entity-values.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE7D,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IACjC,EAAE,CAAC,0EAA0E,EAAE,GAAG,EAAE;QAClF,MAAM,EAAE,GAAG,EAAE,CAAC,sCAAsC,CAAC,CAAC;QACtD,MAAM,UAAU,GAAG,CAAC,EAAE,CAAC,sCAAsC,CAAC,EAAE,EAAE,CAAC,sCAAsC,CAAC,CAAC,CAAC;QAC5G,MAAM,MAAM,GAAG,iBAAiB,CAAC,EAAE,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;QAErD,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;YACrB,EAAE;YACF,GAAG,EAAE;gBACH;oBACE,IAAI,EAAE,qBAAqB;oBAC3B,iBAAiB,EAAE;wBACjB,EAAE,EAAE,QAAQ,CAAC,EAAE,CAAC;wBAChB,UAAU,EAAE,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;qBAC3D;iBACF;aACF;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;QAC9C,MAAM,EAAE,GAAG,EAAE,CAAC,sCAAsC,CAAC,CAAC;QACtD,MAAM,UAAU,GAAS,EAAE,CAAC;QAC5B,MAAM,MAAM,GAAG,iBAAiB,CAAC,EAAE,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;QAErD,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;YACrB,EAAE;YACF,GAAG,EAAE;gBACH;oBACE,IAAI,EAAE,qBAAqB;oBAC3B,iBAAiB,EAAE;wBACjB,EAAE,EAAE,QAAQ,CAAC,EAAE,CAAC;wBAChB,UAAU,EAAE,EAAE;qBACf;iBACF;aACF;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"unset-entity-values.test.js","sourceRoot":"","sources":["../../../src/graph/unset-entity-values.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,EAAE,EAAE,MAAM,UAAU,CAAC;AAC9B,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE7D,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IACjC,EAAE,CAAC,0EAA0E,EAAE,GAAG,EAAE;QAClF,MAAM,EAAE,GAAG,EAAE,CAAC,sCAAsC,CAAC,CAAC;QACtD,MAAM,UAAU,GAAG,CAAC,EAAE,CAAC,sCAAsC,CAAC,EAAE,EAAE,CAAC,sCAAsC,CAAC,CAAC,CAAC;QAC5G,MAAM,MAAM,GAAG,iBAAiB,CAAC,EAAE,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;QAErD,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;YACrB,EAAE;YACF,GAAG,EAAE;gBACH;oBACE,IAAI,EAAE,qBAAqB;oBAC3B,iBAAiB,EAAE;wBACjB,EAAE,EAAE,EAAE;wBACN,UAAU,EAAE,UAAU;qBACvB;iBACF;aACF;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;QAC9C,MAAM,EAAE,GAAG,EAAE,CAAC,sCAAsC,CAAC,CAAC;QACtD,MAAM,UAAU,GAAS,EAAE,CAAC;QAC5B,MAAM,MAAM,GAAG,iBAAiB,CAAC,EAAE,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;QAErD,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;YACrB,EAAE;YACF,GAAG,EAAE;gBACH;oBACE,IAAI,EAAE,qBAAqB;oBAC3B,iBAAiB,EAAE;wBACjB,EAAE,EAAE,EAAE;wBACN,UAAU,EAAE,EAAE;qBACf;iBACF;aACF;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -19,7 +19,7 @@ import type { UnsetRelationFieldsOp, UnsetRelationParams } from '../types.js';
19
19
  * @returns The operation to unset the relation.
20
20
  */
21
21
  export declare const unsetRelationFields: ({ id, fromVersion, toSpace, toVersion, position, verified, }: UnsetRelationParams) => {
22
- id: Id;
22
+ id: string | Id;
23
23
  ops: UnsetRelationFieldsOp[];
24
24
  };
25
25
  //# sourceMappingURL=unset-relation-fields.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"unset-relation-fields.d.ts","sourceRoot":"","sources":["../../../src/graph/unset-relation-fields.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAY,MAAM,UAAU,CAAC;AACxC,OAAO,KAAK,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAE9E;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,mBAAmB,GAAI,8DAOjC,mBAAmB;;;CAcrB,CAAC"}
1
+ {"version":3,"file":"unset-relation-fields.d.ts","sourceRoot":"","sources":["../../../src/graph/unset-relation-fields.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAe,MAAM,UAAU,CAAC;AAC3C,OAAO,KAAK,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAE9E;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,mBAAmB,GAAI,8DAOjC,mBAAmB;;;CAgBrB,CAAC"}
@@ -1,4 +1,4 @@
1
- import { Id, toBase64 } from '../id.js';
1
+ import { Id, assertValid } from '../id.js';
2
2
  /**
3
3
  * Unsets fields from a relation.
4
4
  *
@@ -18,10 +18,11 @@ import { Id, toBase64 } from '../id.js';
18
18
  * @returns The operation to unset the relation.
19
19
  */
20
20
  export const unsetRelationFields = ({ id, fromVersion, toSpace, toVersion, position, verified, }) => {
21
+ assertValid(id, '`id` in `unsetRelationFields`');
21
22
  const op = {
22
23
  type: 'UNSET_RELATION_FIELDS',
23
24
  unsetRelationFields: {
24
- id: toBase64(Id(id)),
25
+ id: Id(id),
25
26
  fromVersion,
26
27
  toSpace,
27
28
  toVersion,
@@ -1 +1 @@
1
- {"version":3,"file":"unset-relation-fields.js","sourceRoot":"","sources":["../../../src/graph/unset-relation-fields.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAGxC;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,EAClC,EAAE,EACF,WAAW,EACX,OAAO,EACP,SAAS,EACT,QAAQ,EACR,QAAQ,GACY,EAAE,EAAE;IACxB,MAAM,EAAE,GAA0B;QAChC,IAAI,EAAE,uBAAuB;QAC7B,mBAAmB,EAAE;YACnB,EAAE,EAAE,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YACpB,WAAW;YACX,OAAO;YACP,SAAS;YACT,QAAQ;YACR,QAAQ;SACT;KACF,CAAC;IAEF,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;AAC3B,CAAC,CAAC"}
1
+ {"version":3,"file":"unset-relation-fields.js","sourceRoot":"","sources":["../../../src/graph/unset-relation-fields.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAG3C;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,EAClC,EAAE,EACF,WAAW,EACX,OAAO,EACP,SAAS,EACT,QAAQ,EACR,QAAQ,GACY,EAAE,EAAE;IACxB,WAAW,CAAC,EAAE,EAAE,+BAA+B,CAAC,CAAC;IAEjD,MAAM,EAAE,GAA0B;QAChC,IAAI,EAAE,uBAAuB;QAC7B,mBAAmB,EAAE;YACnB,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;YACV,WAAW;YACX,OAAO;YACP,SAAS;YACT,QAAQ;YACR,QAAQ;SACT;KACF,CAAC;IAEF,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;AAC3B,CAAC,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { describe, expect, it } from 'vitest';
2
- import { Id, toBase64 } from '../id.js';
2
+ import { Id } from '../id.js';
3
3
  import { unsetRelationFields } from './unset-relation-fields.js';
4
4
  describe('unsetRelationFields', () => {
5
5
  it('should create an unset relation operation with valid parameters', () => {
@@ -23,7 +23,7 @@ describe('unsetRelationFields', () => {
23
23
  {
24
24
  type: 'UNSET_RELATION_FIELDS',
25
25
  unsetRelationFields: {
26
- id: toBase64(id),
26
+ id,
27
27
  fromVersion,
28
28
  toSpace,
29
29
  toVersion,
@@ -51,7 +51,7 @@ describe('unsetRelationFields', () => {
51
51
  {
52
52
  type: 'UNSET_RELATION_FIELDS',
53
53
  unsetRelationFields: {
54
- id: toBase64(id),
54
+ id,
55
55
  toSpace,
56
56
  position,
57
57
  verified,
@@ -1 +1 @@
1
- {"version":3,"file":"unset-relation-fields.test.js","sourceRoot":"","sources":["../../../src/graph/unset-relation-fields.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEjE,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;IACnC,EAAE,CAAC,iEAAiE,EAAE,GAAG,EAAE;QACzE,MAAM,EAAE,GAAG,EAAE,CAAC,sCAAsC,CAAC,CAAC;QACtD,MAAM,WAAW,GAAG,IAAI,CAAC;QACzB,MAAM,OAAO,GAAG,IAAI,CAAC;QACrB,MAAM,SAAS,GAAG,IAAI,CAAC;QACvB,MAAM,QAAQ,GAAG,IAAI,CAAC;QACtB,MAAM,QAAQ,GAAG,IAAI,CAAC;QAEtB,MAAM,MAAM,GAAG,mBAAmB,CAAC;YACjC,EAAE;YACF,WAAW;YACX,OAAO;YACP,SAAS;YACT,QAAQ;YACR,QAAQ;SACT,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;YACrB,EAAE;YACF,GAAG,EAAE;gBACH;oBACE,IAAI,EAAE,uBAAuB;oBAC7B,mBAAmB,EAAE;wBACnB,EAAE,EAAE,QAAQ,CAAC,EAAE,CAAC;wBAChB,WAAW;wBACX,OAAO;wBACP,SAAS;wBACT,QAAQ;wBACR,QAAQ;qBACT;iBACF;aACF;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;QAC3C,MAAM,EAAE,GAAG,EAAE,CAAC,sCAAsC,CAAC,CAAC;QACtD,MAAM,OAAO,GAAG,IAAI,CAAC;QACrB,MAAM,QAAQ,GAAG,IAAI,CAAC;QACtB,MAAM,QAAQ,GAAG,IAAI,CAAC;QAEtB,MAAM,MAAM,GAAG,mBAAmB,CAAC;YACjC,EAAE;YACF,OAAO;YACP,QAAQ;YACR,QAAQ;SACT,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;YACrB,EAAE;YACF,GAAG,EAAE;gBACH;oBACE,IAAI,EAAE,uBAAuB;oBAC7B,mBAAmB,EAAE;wBACnB,EAAE,EAAE,QAAQ,CAAC,EAAE,CAAC;wBAChB,OAAO;wBACP,QAAQ;wBACR,QAAQ;qBACT;iBACF;aACF;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"unset-relation-fields.test.js","sourceRoot":"","sources":["../../../src/graph/unset-relation-fields.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,EAAE,EAAE,MAAM,UAAU,CAAC;AAC9B,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEjE,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;IACnC,EAAE,CAAC,iEAAiE,EAAE,GAAG,EAAE;QACzE,MAAM,EAAE,GAAG,EAAE,CAAC,sCAAsC,CAAC,CAAC;QACtD,MAAM,WAAW,GAAG,IAAI,CAAC;QACzB,MAAM,OAAO,GAAG,IAAI,CAAC;QACrB,MAAM,SAAS,GAAG,IAAI,CAAC;QACvB,MAAM,QAAQ,GAAG,IAAI,CAAC;QACtB,MAAM,QAAQ,GAAG,IAAI,CAAC;QAEtB,MAAM,MAAM,GAAG,mBAAmB,CAAC;YACjC,EAAE;YACF,WAAW;YACX,OAAO;YACP,SAAS;YACT,QAAQ;YACR,QAAQ;SACT,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;YACrB,EAAE;YACF,GAAG,EAAE;gBACH;oBACE,IAAI,EAAE,uBAAuB;oBAC7B,mBAAmB,EAAE;wBACnB,EAAE;wBACF,WAAW;wBACX,OAAO;wBACP,SAAS;wBACT,QAAQ;wBACR,QAAQ;qBACT;iBACF;aACF;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;QAC3C,MAAM,EAAE,GAAG,EAAE,CAAC,sCAAsC,CAAC,CAAC;QACtD,MAAM,OAAO,GAAG,IAAI,CAAC;QACrB,MAAM,QAAQ,GAAG,IAAI,CAAC;QACtB,MAAM,QAAQ,GAAG,IAAI,CAAC;QAEtB,MAAM,MAAM,GAAG,mBAAmB,CAAC;YACjC,EAAE;YACF,OAAO;YACP,QAAQ;YACR,QAAQ;SACT,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;YACrB,EAAE;YACF,GAAG,EAAE;gBACH;oBACE,IAAI,EAAE,uBAAuB;oBAC7B,mBAAmB,EAAE;wBACnB,EAAE;wBACF,OAAO;wBACP,QAAQ;wBACR,QAAQ;qBACT;iBACF;aACF;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"update-entity.d.ts","sourceRoot":"","sources":["../../../src/graph/update-entity.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAsB,kBAAkB,EAAS,MAAM,aAAa,CAAC;AAE/F;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,eAAO,MAAM,YAAY,GAAI,0CAA0C,kBAAkB,KAAG,YAgD3F,CAAC"}
1
+ {"version":3,"file":"update-entity.d.ts","sourceRoot":"","sources":["../../../src/graph/update-entity.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAsB,kBAAkB,EAAS,MAAM,aAAa,CAAC;AAE/F;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,eAAO,MAAM,YAAY,GAAI,0CAA0C,kBAAkB,KAAG,YAmD3F,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { COVER_PROPERTY, DESCRIPTION_PROPERTY, NAME_PROPERTY } from '../core/ids/system.js';
2
- import { Id, assertValid, generate, toBase64 } from '../id.js';
2
+ import { Id, assertValid, generate } from '../id.js';
3
3
  /**
4
4
  * Updates an entity with the given name, description, cover and properties.
5
5
  * All IDs passed to this function (cover, property IDs) are validated.
@@ -27,47 +27,51 @@ import { Id, assertValid, generate, toBase64 } from '../id.js';
27
27
  */
28
28
  export const updateEntity = ({ id, name, description, cover, values }) => {
29
29
  assertValid(id, '`id` in `updateEntity`');
30
+ if (cover)
31
+ assertValid(cover, '`cover` in `updateEntity`');
32
+ for (const [key] of Object.entries(values ?? {})) {
33
+ assertValid(key, '`values` in `updateEntity`');
34
+ }
30
35
  const ops = [];
31
36
  const newValues = [];
32
37
  if (name) {
33
38
  newValues.push({
34
- propertyId: toBase64(NAME_PROPERTY),
39
+ propertyId: NAME_PROPERTY,
35
40
  value: name,
36
41
  });
37
42
  }
38
43
  if (description) {
39
44
  newValues.push({
40
- propertyId: toBase64(DESCRIPTION_PROPERTY),
45
+ propertyId: DESCRIPTION_PROPERTY,
41
46
  value: description,
42
47
  });
43
48
  }
44
49
  for (const [key, value] of Object.entries(values ?? {})) {
45
50
  newValues.push({
46
- propertyId: toBase64(Id(key)),
47
- value: value.value,
51
+ propertyId: Id(key),
52
+ value,
48
53
  });
49
54
  }
50
55
  const op = {
51
56
  type: 'UPDATE_ENTITY',
52
57
  entity: {
53
- id: toBase64(Id(id)),
58
+ id: Id(id),
54
59
  values: newValues,
55
60
  },
56
61
  };
57
62
  ops.push(op);
58
63
  if (cover) {
59
- assertValid(cover);
60
64
  ops.push({
61
65
  type: 'CREATE_RELATION',
62
66
  relation: {
63
- id: toBase64(generate()),
64
- entity: toBase64(generate()),
65
- fromEntity: toBase64(Id(id)),
66
- toEntity: toBase64(Id(cover)),
67
- type: toBase64(COVER_PROPERTY),
67
+ id: generate(),
68
+ entity: generate(),
69
+ fromEntity: Id(id),
70
+ toEntity: Id(cover),
71
+ type: COVER_PROPERTY,
68
72
  },
69
73
  });
70
74
  }
71
- return { id, ops };
75
+ return { id: Id(id), ops };
72
76
  };
73
77
  //# sourceMappingURL=update-entity.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"update-entity.js","sourceRoot":"","sources":["../../../src/graph/update-entity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC5F,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAG/D;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAsB,EAAgB,EAAE;IACzG,WAAW,CAAC,EAAE,EAAE,wBAAwB,CAAC,CAAC;IAC1C,MAAM,GAAG,GAAc,EAAE,CAAC;IAE1B,MAAM,SAAS,GAAiB,EAAE,CAAC;IACnC,IAAI,IAAI,EAAE,CAAC;QACT,SAAS,CAAC,IAAI,CAAC;YACb,UAAU,EAAE,QAAQ,CAAC,aAAa,CAAC;YACnC,KAAK,EAAE,IAAI;SACZ,CAAC,CAAC;IACL,CAAC;IACD,IAAI,WAAW,EAAE,CAAC;QAChB,SAAS,CAAC,IAAI,CAAC;YACb,UAAU,EAAE,QAAQ,CAAC,oBAAoB,CAAC;YAC1C,KAAK,EAAE,WAAW;SACnB,CAAC,CAAC;IACL,CAAC;IACD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,CAAC;QACxD,SAAS,CAAC,IAAI,CAAC;YACb,UAAU,EAAE,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;YAC7B,KAAK,EAAE,KAAK,CAAC,KAAK;SACnB,CAAC,CAAC;IACL,CAAC;IAED,MAAM,EAAE,GAAmB;QACzB,IAAI,EAAE,eAAe;QACrB,MAAM,EAAE;YACN,EAAE,EAAE,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YACpB,MAAM,EAAE,SAAS;SAClB;KACF,CAAC;IACF,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEb,IAAI,KAAK,EAAE,CAAC;QACV,WAAW,CAAC,KAAK,CAAC,CAAC;QACnB,GAAG,CAAC,IAAI,CAAC;YACP,IAAI,EAAE,iBAAiB;YACvB,QAAQ,EAAE;gBACR,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC;gBACxB,MAAM,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC;gBAC5B,UAAU,EAAE,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;gBAC5B,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;gBAC7B,IAAI,EAAE,QAAQ,CAAC,cAAc,CAAC;aAC/B;SACF,CAAC,CAAC;IACL,CAAC;IAED,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC;AACrB,CAAC,CAAC"}
1
+ {"version":3,"file":"update-entity.js","sourceRoot":"","sources":["../../../src/graph/update-entity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC5F,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAGrD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAsB,EAAgB,EAAE;IACzG,WAAW,CAAC,EAAE,EAAE,wBAAwB,CAAC,CAAC;IAC1C,IAAI,KAAK;QAAE,WAAW,CAAC,KAAK,EAAE,2BAA2B,CAAC,CAAC;IAC3D,KAAK,MAAM,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,CAAC;QACjD,WAAW,CAAC,GAAG,EAAE,4BAA4B,CAAC,CAAC;IACjD,CAAC;IACD,MAAM,GAAG,GAAc,EAAE,CAAC;IAE1B,MAAM,SAAS,GAAiB,EAAE,CAAC;IACnC,IAAI,IAAI,EAAE,CAAC;QACT,SAAS,CAAC,IAAI,CAAC;YACb,UAAU,EAAE,aAAa;YACzB,KAAK,EAAE,IAAI;SACZ,CAAC,CAAC;IACL,CAAC;IACD,IAAI,WAAW,EAAE,CAAC;QAChB,SAAS,CAAC,IAAI,CAAC;YACb,UAAU,EAAE,oBAAoB;YAChC,KAAK,EAAE,WAAW;SACnB,CAAC,CAAC;IACL,CAAC;IACD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,CAAC;QACxD,SAAS,CAAC,IAAI,CAAC;YACb,UAAU,EAAE,EAAE,CAAC,GAAG,CAAC;YACnB,KAAK;SACN,CAAC,CAAC;IACL,CAAC;IAED,MAAM,EAAE,GAAmB;QACzB,IAAI,EAAE,eAAe;QACrB,MAAM,EAAE;YACN,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;YACV,MAAM,EAAE,SAAS;SAClB;KACF,CAAC;IACF,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEb,IAAI,KAAK,EAAE,CAAC;QACV,GAAG,CAAC,IAAI,CAAC;YACP,IAAI,EAAE,iBAAiB;YACvB,QAAQ,EAAE;gBACR,EAAE,EAAE,QAAQ,EAAE;gBACd,MAAM,EAAE,QAAQ,EAAE;gBAClB,UAAU,EAAE,EAAE,CAAC,EAAE,CAAC;gBAClB,QAAQ,EAAE,EAAE,CAAC,KAAK,CAAC;gBACnB,IAAI,EAAE,cAAc;aACrB;SACF,CAAC,CAAC;IACL,CAAC;IAED,OAAO,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC;AAC7B,CAAC,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { describe, expect, it } from 'vitest';
2
2
  import { COVER_PROPERTY, DESCRIPTION_PROPERTY, NAME_PROPERTY } from '../core/ids/system.js';
3
- import { Id, toBase64 } from '../id.js';
3
+ import { Id } from '../id.js';
4
4
  import { updateEntity } from './update-entity.js';
5
5
  describe('updateEntity', () => {
6
6
  const entityId = Id('b1dc6e5c-63e1-43ba-b3d4-755b251a4ea1');
@@ -17,14 +17,14 @@ describe('updateEntity', () => {
17
17
  expect(result.ops[0]).toMatchObject({
18
18
  type: 'UPDATE_ENTITY',
19
19
  entity: {
20
- id: toBase64(entityId),
20
+ id: entityId,
21
21
  values: [
22
22
  {
23
- propertyId: toBase64(NAME_PROPERTY),
23
+ propertyId: NAME_PROPERTY,
24
24
  value: 'Updated Entity',
25
25
  },
26
26
  {
27
- propertyId: toBase64(DESCRIPTION_PROPERTY),
27
+ propertyId: DESCRIPTION_PROPERTY,
28
28
  value: 'Updated Description',
29
29
  },
30
30
  ],
@@ -42,10 +42,10 @@ describe('updateEntity', () => {
42
42
  expect(result.ops[0]).toMatchObject({
43
43
  type: 'UPDATE_ENTITY',
44
44
  entity: {
45
- id: toBase64(entityId),
45
+ id: entityId,
46
46
  values: [
47
47
  {
48
- propertyId: toBase64(NAME_PROPERTY),
48
+ propertyId: NAME_PROPERTY,
49
49
  value: 'Updated Entity',
50
50
  },
51
51
  ],
@@ -64,7 +64,7 @@ describe('updateEntity', () => {
64
64
  expect(result.ops[0]).toMatchObject({
65
65
  type: 'UPDATE_ENTITY',
66
66
  entity: {
67
- id: toBase64(entityId),
67
+ id: entityId,
68
68
  values: [],
69
69
  },
70
70
  });
@@ -72,9 +72,9 @@ describe('updateEntity', () => {
72
72
  expect(result.ops[1]).toMatchObject({
73
73
  type: 'CREATE_RELATION',
74
74
  relation: {
75
- fromEntity: toBase64(entityId),
76
- toEntity: toBase64(coverId),
77
- type: toBase64(COVER_PROPERTY),
75
+ fromEntity: entityId,
76
+ toEntity: coverId,
77
+ type: COVER_PROPERTY,
78
78
  },
79
79
  });
80
80
  });
@@ -83,9 +83,7 @@ describe('updateEntity', () => {
83
83
  const result = updateEntity({
84
84
  id: entityId,
85
85
  values: {
86
- [customPropertyId]: {
87
- value: 'updated custom value',
88
- },
86
+ [customPropertyId]: 'updated custom value',
89
87
  },
90
88
  });
91
89
  expect(result).toBeDefined();
@@ -94,10 +92,10 @@ describe('updateEntity', () => {
94
92
  expect(result.ops[0]).toMatchObject({
95
93
  type: 'UPDATE_ENTITY',
96
94
  entity: {
97
- id: toBase64(entityId),
95
+ id: entityId,
98
96
  values: [
99
97
  {
100
- propertyId: toBase64(customPropertyId),
98
+ propertyId: customPropertyId,
101
99
  value: 'updated custom value',
102
100
  },
103
101
  ],
@@ -105,11 +103,9 @@ describe('updateEntity', () => {
105
103
  });
106
104
  });
107
105
  it('throws an error if the provided id is invalid', () => {
108
- // @ts-expect-error - invalid id type
109
106
  expect(() => updateEntity({ id: 'invalid' })).toThrow('Invalid id: "invalid" for `id` in `updateEntity`');
110
107
  });
111
108
  it('throws an error if the provided cover id is invalid', () => {
112
- // @ts-expect-error - invalid cover id type
113
109
  expect(() => updateEntity({ id: entityId, cover: 'invalid' })).toThrow('Invalid id: "invalid"');
114
110
  });
115
111
  });
@@ -1 +1 @@
1
- {"version":3,"file":"update-entity.test.js","sourceRoot":"","sources":["../../../src/graph/update-entity.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"update-entity.test.js","sourceRoot":"","sources":["../../../src/graph/update-entity.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC5F,OAAO,EAAE,EAAE,EAAE,MAAM,UAAU,CAAC;AAC9B,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC5B,MAAM,QAAQ,GAAG,EAAE,CAAC,sCAAsC,CAAC,CAAC;IAC5D,MAAM,OAAO,GAAG,EAAE,CAAC,sCAAsC,CAAC,CAAC;IAE3D,EAAE,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;QAC3D,MAAM,MAAM,GAAG,YAAY,CAAC;YAC1B,EAAE,EAAE,QAAQ;YACZ,IAAI,EAAE,gBAAgB;YACtB,WAAW,EAAE,qBAAqB;SACnC,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;QAC7B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAEnC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC;YAClC,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE;gBACN,EAAE,EAAE,QAAQ;gBACZ,MAAM,EAAE;oBACN;wBACE,UAAU,EAAE,aAAa;wBACzB,KAAK,EAAE,gBAAgB;qBACxB;oBACD;wBACE,UAAU,EAAE,oBAAoB;wBAChC,KAAK,EAAE,qBAAqB;qBAC7B;iBACF;aACF;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kCAAkC,EAAE,KAAK,IAAI,EAAE;QAChD,MAAM,MAAM,GAAG,YAAY,CAAC;YAC1B,EAAE,EAAE,QAAQ;YACZ,IAAI,EAAE,gBAAgB;SACvB,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;QAC7B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAEnC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC;YAClC,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE;gBACN,EAAE,EAAE,QAAQ;gBACZ,MAAM,EAAE;oBACN;wBACE,UAAU,EAAE,aAAa;wBACzB,KAAK,EAAE,gBAAgB;qBACxB;iBACF;aACF;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8BAA8B,EAAE,KAAK,IAAI,EAAE;QAC5C,MAAM,MAAM,GAAG,YAAY,CAAC;YAC1B,EAAE,EAAE,QAAQ;YACZ,KAAK,EAAE,OAAO;SACf,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;QAC7B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAEnC,yBAAyB;QACzB,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC;YAClC,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE;gBACN,EAAE,EAAE,QAAQ;gBACZ,MAAM,EAAE,EAAE;aACX;SACF,CAAC,CAAC;QAEH,uBAAuB;QACvB,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC;YAClC,IAAI,EAAE,iBAAiB;YACvB,QAAQ,EAAE;gBACR,UAAU,EAAE,QAAQ;gBACpB,QAAQ,EAAE,OAAO;gBACjB,IAAI,EAAE,cAAc;aACrB;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sCAAsC,EAAE,KAAK,IAAI,EAAE;QACpD,MAAM,gBAAgB,GAAG,EAAE,CAAC,sCAAsC,CAAC,CAAC;QACpE,MAAM,MAAM,GAAG,YAAY,CAAC;YAC1B,EAAE,EAAE,QAAQ;YACZ,MAAM,EAAE;gBACN,CAAC,gBAAgB,CAAC,EAAE,sBAAsB;aAC3C;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;QAC7B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAEnC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC;YAClC,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE;gBACN,EAAE,EAAE,QAAQ;gBACZ,MAAM,EAAE;oBACN;wBACE,UAAU,EAAE,gBAAgB;wBAC5B,KAAK,EAAE,sBAAsB;qBAC9B;iBACF;aACF;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;QACvD,MAAM,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,kDAAkD,CAAC,CAAC;IAC5G,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;QAC7D,MAAM,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;IAClG,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"update-relation.d.ts","sourceRoot":"","sources":["../../../src/graph/update-relation.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAM,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAE1E;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,cAAc,GAAI,yEAQ5B,oBAAoB,KAAG,YAmBzB,CAAC"}
1
+ {"version":3,"file":"update-relation.d.ts","sourceRoot":"","sources":["../../../src/graph/update-relation.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAM,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAE1E;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,cAAc,GAAI,yEAQ5B,oBAAoB,KAAG,YAuBzB,CAAC"}
@@ -1,4 +1,4 @@
1
- import { assertValid, toBase64 } from '../id.js';
1
+ import { Id, assertValid } from '../id.js';
2
2
  /**
3
3
  * Updates a relation.
4
4
  *
@@ -19,19 +19,27 @@ import { assertValid, toBase64 } from '../id.js';
19
19
  */
20
20
  export const updateRelation = ({ id, position, fromSpace, toSpace, fromVersion, toVersion, verified, }) => {
21
21
  assertValid(id, '`id` in `updateRelation`');
22
+ if (fromSpace)
23
+ assertValid(fromSpace, '`fromSpace` in `updateRelation`');
24
+ if (toSpace)
25
+ assertValid(toSpace, '`toSpace` in `updateRelation`');
26
+ if (fromVersion)
27
+ assertValid(fromVersion, '`fromVersion` in `updateRelation`');
28
+ if (toVersion)
29
+ assertValid(toVersion, '`toVersion` in `updateRelation`');
22
30
  const ops = [];
23
31
  ops.push({
24
32
  type: 'UPDATE_RELATION',
25
33
  relation: {
26
- id: toBase64(id),
34
+ id: Id(id),
27
35
  position,
28
- fromSpace: fromSpace ? toBase64(fromSpace) : undefined,
29
- toSpace: toSpace ? toBase64(toSpace) : undefined,
30
- fromVersion: fromVersion ? toBase64(fromVersion) : undefined,
31
- toVersion: toVersion ? toBase64(toVersion) : undefined,
36
+ fromSpace: fromSpace ? Id(fromSpace) : undefined,
37
+ toSpace: toSpace ? Id(toSpace) : undefined,
38
+ fromVersion: fromVersion ? Id(fromVersion) : undefined,
39
+ toVersion: toVersion ? Id(toVersion) : undefined,
32
40
  verified,
33
41
  },
34
42
  });
35
- return { id, ops };
43
+ return { id: Id(id), ops };
36
44
  };
37
45
  //# sourceMappingURL=update-relation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"update-relation.js","sourceRoot":"","sources":["../../../src/graph/update-relation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAGjD;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,EAC7B,EAAE,EACF,QAAQ,EACR,SAAS,EACT,OAAO,EACP,WAAW,EACX,SAAS,EACT,QAAQ,GACa,EAAgB,EAAE;IACvC,WAAW,CAAC,EAAE,EAAE,0BAA0B,CAAC,CAAC;IAE5C,MAAM,GAAG,GAAc,EAAE,CAAC;IAE1B,GAAG,CAAC,IAAI,CAAC;QACP,IAAI,EAAE,iBAAiB;QACvB,QAAQ,EAAE;YACR,EAAE,EAAE,QAAQ,CAAC,EAAE,CAAC;YAChB,QAAQ;YACR,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS;YACtD,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS;YAChD,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS;YAC5D,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS;YACtD,QAAQ;SACT;KACF,CAAC,CAAC;IAEH,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC;AACrB,CAAC,CAAC"}
1
+ {"version":3,"file":"update-relation.js","sourceRoot":"","sources":["../../../src/graph/update-relation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAG3C;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,EAC7B,EAAE,EACF,QAAQ,EACR,SAAS,EACT,OAAO,EACP,WAAW,EACX,SAAS,EACT,QAAQ,GACa,EAAgB,EAAE;IACvC,WAAW,CAAC,EAAE,EAAE,0BAA0B,CAAC,CAAC;IAC5C,IAAI,SAAS;QAAE,WAAW,CAAC,SAAS,EAAE,iCAAiC,CAAC,CAAC;IACzE,IAAI,OAAO;QAAE,WAAW,CAAC,OAAO,EAAE,+BAA+B,CAAC,CAAC;IACnE,IAAI,WAAW;QAAE,WAAW,CAAC,WAAW,EAAE,mCAAmC,CAAC,CAAC;IAC/E,IAAI,SAAS;QAAE,WAAW,CAAC,SAAS,EAAE,iCAAiC,CAAC,CAAC;IAEzE,MAAM,GAAG,GAAc,EAAE,CAAC;IAE1B,GAAG,CAAC,IAAI,CAAC;QACP,IAAI,EAAE,iBAAiB;QACvB,QAAQ,EAAE;YACR,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;YACV,QAAQ;YACR,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS;YAChD,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS;YAC1C,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS;YACtD,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS;YAChD,QAAQ;SACT;KACF,CAAC,CAAC;IAEH,OAAO,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC;AAC7B,CAAC,CAAC"}
@@ -7,9 +7,7 @@ it('full flow', async () => {
7
7
  name: 'test',
8
8
  description: 'test',
9
9
  values: {
10
- [WEBSITE_PROPERTY]: {
11
- value: 'test',
12
- },
10
+ [WEBSITE_PROPERTY]: 'test',
13
11
  },
14
12
  });
15
13
  const { cid, editId } = await publishEdit({
@@ -1 +1 @@
1
- {"version":3,"file":"ipfs.test.js","sourceRoot":"","sources":["../../src/ipfs.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAExC,EAAE,CAAC,WAAW,EAAE,KAAK,IAAI,EAAE;IACzB,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,YAAY,CAAC;QAC/B,IAAI,EAAE,MAAM;QACZ,WAAW,EAAE,MAAM;QACnB,MAAM,EAAE;YACN,CAAC,gBAAgB,CAAC,EAAE;gBAClB,KAAK,EAAE,MAAM;aACd;SACF;KACF,CAAC,CAAC;IAEH,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,MAAM,WAAW,CAAC;QACxC,IAAI,EAAE,MAAM;QACZ,GAAG;QACH,MAAM,EAAE,wCAAwC;KACjD,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;AAC3B,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"ipfs.test.js","sourceRoot":"","sources":["../../src/ipfs.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAExC,EAAE,CAAC,WAAW,EAAE,KAAK,IAAI,EAAE;IACzB,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,YAAY,CAAC;QAC/B,IAAI,EAAE,MAAM;QACZ,WAAW,EAAE,MAAM;QACnB,MAAM,EAAE;YACN,CAAC,gBAAgB,CAAC,EAAE,MAAM;SAC3B;KACF,CAAC,CAAC;IAEH,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,MAAM,WAAW,CAAC;QACxC,IAAI,EAAE,MAAM;QACZ,GAAG;QACH,MAAM,EAAE,wCAAwC;KACjD,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;AAC3B,CAAC,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"edit.d.ts","sourceRoot":"","sources":["../../../src/proto/edit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,EAAiC,MAAM,UAAU,CAAC;AAClE,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAWtC,KAAK,sBAAsB,GAAG;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,EAAE,EAAE,CAAC;IACV,MAAM,EAAE,KAAK,MAAM,EAAE,CAAC;IACtB,QAAQ,CAAC,EAAE,EAAE,CAAC;CACf,CAAC;AA6BF,wBAAgB,MAAM,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,sBAAsB,GAAG,UAAU,CAQ1F"}
1
+ {"version":3,"file":"edit.d.ts","sourceRoot":"","sources":["../../../src/proto/edit.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,EAA+B,MAAM,UAAU,CAAC;AAChE,OAAO,KAAK,EAAU,EAAE,EAA0E,MAAM,aAAa,CAAC;AAWtH,KAAK,sBAAsB,GAAG;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,EAAE,EAAE,CAAC;IACV,MAAM,EAAE,KAAK,MAAM,EAAE,CAAC;IACtB,QAAQ,CAAC,EAAE,EAAE,CAAC;CACf,CAAC;AAmBF,wBAAgB,MAAM,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,sBAAsB,GAAG,UAAU,CAQ1F"}
@@ -1,5 +1,5 @@
1
- import { fromBase64, generate, toBytes } from '../id.js';
2
- import { Edit, Entity, Op as OpBinary, Relation, RelationUpdate, UnsetEntityValues, UnsetRelationFields, } from './gen/src/proto/ipfs_pb.js';
1
+ import { generate, toBase64, toBytes } from '../id.js';
2
+ import { Edit, Entity as EntityProto, Op as OpBinary, Relation as RelationProto, RelationUpdate, UnsetEntityValues, UnsetRelationFields, } from './gen/src/proto/ipfs_pb.js';
3
3
  function hexToBytes(hex) {
4
4
  let hexString = hex;
5
5
  if (hexString.startsWith('0x')) {
@@ -23,6 +23,97 @@ export function encode({ name, ops, author, language }) {
23
23
  language: language ? toBytes(language) : undefined,
24
24
  }).toBinary();
25
25
  }
26
+ function convertRelationIdsToBase64(relation) {
27
+ const result = {
28
+ id: toBase64(relation.id).toString(),
29
+ type: toBase64(relation.type).toString(),
30
+ from_entity: toBase64(relation.fromEntity).toString(),
31
+ to_entity: toBase64(relation.toEntity).toString(),
32
+ entity: toBase64(relation.entity).toString(),
33
+ };
34
+ if (relation.fromSpace) {
35
+ result.from_space = toBase64(relation.fromSpace).toString();
36
+ }
37
+ if (relation.fromVersion) {
38
+ result.from_version = toBase64(relation.fromVersion).toString();
39
+ }
40
+ if (relation.toSpace) {
41
+ result.to_space = toBase64(relation.toSpace).toString();
42
+ }
43
+ if (relation.toVersion) {
44
+ result.to_version = toBase64(relation.toVersion).toString();
45
+ }
46
+ if (relation.position !== undefined) {
47
+ result.position = relation.position;
48
+ }
49
+ if (relation.verified !== undefined) {
50
+ result.verified = relation.verified;
51
+ }
52
+ return result;
53
+ }
54
+ function convertUnsetEntityValuesToBase64(unsetEntityValues) {
55
+ return {
56
+ id: toBase64(unsetEntityValues.id).toString(),
57
+ properties: unsetEntityValues.properties.map(propertyId => toBase64(propertyId).toString()),
58
+ };
59
+ }
60
+ function convertUpdateRelationToBase64(relation) {
61
+ const result = {
62
+ id: toBase64(relation.id).toString(),
63
+ };
64
+ if (relation.fromSpace) {
65
+ result.from_space = toBase64(relation.fromSpace).toString();
66
+ }
67
+ if (relation.fromVersion) {
68
+ result.from_version = toBase64(relation.fromVersion).toString();
69
+ }
70
+ if (relation.toSpace) {
71
+ result.to_space = toBase64(relation.toSpace).toString();
72
+ }
73
+ if (relation.toVersion) {
74
+ result.to_version = toBase64(relation.toVersion).toString();
75
+ }
76
+ if (relation.position !== undefined) {
77
+ result.position = relation.position;
78
+ }
79
+ if (relation.verified !== undefined) {
80
+ result.verified = relation.verified;
81
+ }
82
+ return result;
83
+ }
84
+ function convertUnsetRelationFieldsToBase64(unsetRelationFields) {
85
+ const result = {
86
+ id: toBase64(unsetRelationFields.id).toString(),
87
+ };
88
+ if (unsetRelationFields.fromSpace !== undefined) {
89
+ result.from_space = unsetRelationFields.fromSpace;
90
+ }
91
+ if (unsetRelationFields.fromVersion !== undefined) {
92
+ result.from_version = unsetRelationFields.fromVersion;
93
+ }
94
+ if (unsetRelationFields.toSpace !== undefined) {
95
+ result.to_space = unsetRelationFields.toSpace;
96
+ }
97
+ if (unsetRelationFields.toVersion !== undefined) {
98
+ result.to_version = unsetRelationFields.toVersion;
99
+ }
100
+ if (unsetRelationFields.position !== undefined) {
101
+ result.position = unsetRelationFields.position;
102
+ }
103
+ if (unsetRelationFields.verified !== undefined) {
104
+ result.verified = unsetRelationFields.verified;
105
+ }
106
+ return result;
107
+ }
108
+ function convertUpdateEntityToBase64(entity) {
109
+ return {
110
+ id: toBase64(entity.id).toString(),
111
+ values: entity.values.map(value => ({
112
+ property_id: toBase64(value.propertyId).toString(),
113
+ value: value.value,
114
+ })),
115
+ };
116
+ }
26
117
  function opsToBinary(ops) {
27
118
  return ops.map(o => {
28
119
  switch (o.type) {
@@ -30,49 +121,49 @@ function opsToBinary(ops) {
30
121
  return new OpBinary({
31
122
  payload: {
32
123
  case: 'createRelation',
33
- value: Relation.fromJson(o.relation),
124
+ value: RelationProto.fromJson(convertRelationIdsToBase64(o.relation)),
34
125
  },
35
126
  });
36
127
  case 'DELETE_RELATION':
37
128
  return new OpBinary({
38
129
  payload: {
39
130
  case: 'deleteRelation',
40
- value: toBytes(fromBase64(o.id)),
131
+ value: toBytes(o.id),
41
132
  },
42
133
  });
43
134
  case 'UPDATE_ENTITY':
44
135
  return new OpBinary({
45
136
  payload: {
46
137
  case: 'updateEntity',
47
- value: Entity.fromJson(o.entity),
138
+ value: EntityProto.fromJson(convertUpdateEntityToBase64(o.entity)),
48
139
  },
49
140
  });
50
141
  case 'UNSET_ENTITY_VALUES':
51
142
  return new OpBinary({
52
143
  payload: {
53
144
  case: 'unsetEntityValues',
54
- value: UnsetEntityValues.fromJson(o.unsetEntityValues),
145
+ value: UnsetEntityValues.fromJson(convertUnsetEntityValuesToBase64(o.unsetEntityValues)),
55
146
  },
56
147
  });
57
148
  case 'DELETE_ENTITY':
58
149
  return new OpBinary({
59
150
  payload: {
60
151
  case: 'deleteEntity',
61
- value: toBytes(fromBase64(o.id)),
152
+ value: toBytes(o.id),
62
153
  },
63
154
  });
64
155
  case 'UPDATE_RELATION':
65
156
  return new OpBinary({
66
157
  payload: {
67
158
  case: 'updateRelation',
68
- value: RelationUpdate.fromJson(o.relation),
159
+ value: RelationUpdate.fromJson(convertUpdateRelationToBase64(o.relation)),
69
160
  },
70
161
  });
71
162
  case 'UNSET_RELATION_FIELDS':
72
163
  return new OpBinary({
73
164
  payload: {
74
165
  case: 'unsetRelationFields',
75
- value: UnsetRelationFields.fromJson(o.unsetRelationFields),
166
+ value: UnsetRelationFields.fromJson(convertUnsetRelationFieldsToBase64(o.unsetRelationFields)),
76
167
  },
77
168
  });
78
169
  }
@@ -1 +1 @@
1
- {"version":3,"file":"edit.js","sourceRoot":"","sources":["../../../src/proto/edit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"edit.js","sourceRoot":"","sources":["../../../src/proto/edit.ts"],"names":[],"mappings":"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"}