@twin.org/entity-storage-models 0.0.3-next.9 → 0.9.0-next.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 (74) hide show
  1. package/dist/es/factories/schemaMigrationFactory.js +17 -0
  2. package/dist/es/factories/schemaMigrationFactory.js.map +1 -0
  3. package/dist/es/helpers/entityStorageHelper.js +126 -0
  4. package/dist/es/helpers/entityStorageHelper.js.map +1 -0
  5. package/dist/es/helpers/migrationHelper.js +232 -0
  6. package/dist/es/helpers/migrationHelper.js.map +1 -0
  7. package/dist/es/index.js +14 -1
  8. package/dist/es/index.js.map +1 -1
  9. package/dist/es/models/IEntityStorageComponent.js.map +1 -1
  10. package/dist/es/models/IEntityStorageConnector.js.map +1 -1
  11. package/dist/es/models/IEntityStorageMigrationConnector.js +2 -0
  12. package/dist/es/models/IEntityStorageMigrationConnector.js.map +1 -0
  13. package/dist/es/models/IMigrationOptions.js +4 -0
  14. package/dist/es/models/IMigrationOptions.js.map +1 -0
  15. package/dist/es/models/IResolvedMigrationStep.js +2 -0
  16. package/dist/es/models/IResolvedMigrationStep.js.map +1 -0
  17. package/dist/es/models/ISchemaMigration.js +2 -0
  18. package/dist/es/models/ISchemaMigration.js.map +1 -0
  19. package/dist/es/models/api/IEntityStorageCountRequest.js +4 -0
  20. package/dist/es/models/api/IEntityStorageCountRequest.js.map +1 -0
  21. package/dist/es/models/api/IEntityStorageCountResponse.js +4 -0
  22. package/dist/es/models/api/IEntityStorageCountResponse.js.map +1 -0
  23. package/dist/es/models/api/IEntityStorageEmptyRequest.js +4 -0
  24. package/dist/es/models/api/IEntityStorageEmptyRequest.js.map +1 -0
  25. package/dist/es/models/api/IEntityStorageGetRequest.js.map +1 -1
  26. package/dist/es/models/api/IEntityStorageRemoveBatchRequest.js +4 -0
  27. package/dist/es/models/api/IEntityStorageRemoveBatchRequest.js.map +1 -0
  28. package/dist/es/models/api/IEntityStorageRemoveRequest.js.map +1 -1
  29. package/dist/es/models/api/IEntityStorageSetBatchRequest.js +4 -0
  30. package/dist/es/models/api/IEntityStorageSetBatchRequest.js.map +1 -0
  31. package/dist/es/models/api/IEntityStorageSetRequest.js.map +1 -1
  32. package/dist/es/models/entityPropertyTransformer.js +2 -0
  33. package/dist/es/models/entityPropertyTransformer.js.map +1 -0
  34. package/dist/types/factories/schemaMigrationFactory.d.ts +14 -0
  35. package/dist/types/helpers/entityStorageHelper.d.ts +59 -0
  36. package/dist/types/helpers/migrationHelper.d.ts +65 -0
  37. package/dist/types/index.d.ts +13 -0
  38. package/dist/types/models/IEntityStorageComponent.d.ts +38 -3
  39. package/dist/types/models/IEntityStorageConnector.d.ts +23 -0
  40. package/dist/types/models/IEntityStorageMigrationConnector.d.ts +35 -0
  41. package/dist/types/models/IMigrationOptions.d.ts +17 -0
  42. package/dist/types/models/IResolvedMigrationStep.d.ts +38 -0
  43. package/dist/types/models/ISchemaMigration.d.ts +30 -0
  44. package/dist/types/models/api/IEntityStorageCountRequest.d.ts +14 -0
  45. package/dist/types/models/api/IEntityStorageCountResponse.d.ts +14 -0
  46. package/dist/types/models/api/IEntityStorageEmptyRequest.d.ts +5 -0
  47. package/dist/types/models/api/IEntityStorageGetRequest.d.ts +4 -0
  48. package/dist/types/models/api/IEntityStorageRemoveBatchRequest.d.ts +9 -0
  49. package/dist/types/models/api/IEntityStorageRemoveRequest.d.ts +9 -0
  50. package/dist/types/models/api/IEntityStorageSetBatchRequest.d.ts +9 -0
  51. package/dist/types/models/api/IEntityStorageSetRequest.d.ts +9 -0
  52. package/dist/types/models/entityPropertyTransformer.d.ts +6 -0
  53. package/docs/changelog.md +321 -49
  54. package/docs/reference/classes/EntityStorageHelper.md +209 -0
  55. package/docs/reference/classes/MigrationHelper.md +198 -0
  56. package/docs/reference/index.md +19 -0
  57. package/docs/reference/interfaces/IEntityStorageComponent.md +101 -3
  58. package/docs/reference/interfaces/IEntityStorageConnector.md +84 -0
  59. package/docs/reference/interfaces/IEntityStorageCountRequest.md +17 -0
  60. package/docs/reference/interfaces/IEntityStorageCountResponse.md +17 -0
  61. package/docs/reference/interfaces/IEntityStorageEmptyRequest.md +3 -0
  62. package/docs/reference/interfaces/IEntityStorageGetRequest.md +6 -0
  63. package/docs/reference/interfaces/IEntityStorageMigrationConnector.md +402 -0
  64. package/docs/reference/interfaces/IEntityStorageRemoveBatchRequest.md +11 -0
  65. package/docs/reference/interfaces/IEntityStorageRemoveRequest.md +14 -0
  66. package/docs/reference/interfaces/IEntityStorageSetBatchRequest.md +11 -0
  67. package/docs/reference/interfaces/IEntityStorageSetRequest.md +14 -0
  68. package/docs/reference/interfaces/IMigrationOptions.md +49 -0
  69. package/docs/reference/interfaces/IResolvedMigrationStep.md +84 -0
  70. package/docs/reference/interfaces/ISchemaMigration.md +68 -0
  71. package/docs/reference/type-aliases/EntityPropertyTransformer.md +34 -0
  72. package/docs/reference/variables/SchemaMigrationFactory.md +13 -0
  73. package/locales/en.json +18 -1
  74. package/package.json +8 -6
@@ -0,0 +1,34 @@
1
+ # Type Alias: EntityPropertyTransformer\<T, U\>
2
+
3
+ > **EntityPropertyTransformer**\<`T`, `U`\> = (`schema1Property`, `schemaProperty2`, `value`) => `unknown`
4
+
5
+ Type for the optional transformEntityProperty function.
6
+ Used in migration steps for custom property transformations.
7
+
8
+ ## Type Parameters
9
+
10
+ ### T
11
+
12
+ `T` = `unknown`
13
+
14
+ ### U
15
+
16
+ `U` = `unknown`
17
+
18
+ ## Parameters
19
+
20
+ ### schema1Property
21
+
22
+ `IEntitySchemaProperty`\<`T`\>
23
+
24
+ ### schemaProperty2
25
+
26
+ `IEntitySchemaProperty`\<`U`\>
27
+
28
+ ### value
29
+
30
+ `unknown`
31
+
32
+ ## Returns
33
+
34
+ `unknown`
@@ -0,0 +1,13 @@
1
+ # Variable: SchemaMigrationFactory
2
+
3
+ > `const` **SchemaMigrationFactory**: `Factory`\<[`ISchemaMigration`](../interfaces/ISchemaMigration.md)\<`unknown`, `unknown`\>\>
4
+
5
+ Factory for optional per-step migration overrides.
6
+
7
+ Only register an entry when a version step requires property renames or a custom
8
+ transform hook. For purely structural changes (add/remove/type-change) the
9
+ SchemaVersionService diffs the two versioned schema classes automatically
10
+ without needing any factory entry.
11
+
12
+ Keys follow the convention "BaseSchemaName_fromVersion_toVersion",
13
+ for example "MyEntity_0_1" for the step that migrates MyEntity from version 0 to 1.
package/locales/en.json CHANGED
@@ -1,3 +1,20 @@
1
1
  {
2
- "error": {}
2
+ "error": {
3
+ "entityStorageHelper": {
4
+ "sortNotIndexed": "The property \"{property}\" is not indexed and cannot be used for sorting",
5
+ "propertyNotInSchema": "The property \"{property}\" does not exist in the schema and cannot be used for projection"
6
+ },
7
+ "migrationHelper": {
8
+ "migrateSchemaFailed": "Migration failed for schema \"{schemaName}\".",
9
+ "transformRequiredForProperty": "A transformation function is required to migrate property \"{from}\" to \"{to}\" of type \"{type}\"",
10
+ "coercionProducedUndefined": "Coercion of property \"{property}\" to type \"{type}\" produced undefined but the property is not optional"
11
+ }
12
+ },
13
+ "info": {
14
+ "migrationHelper": {
15
+ "migrateSchemaStarting": "Migrating schema \"{schemaName}\"",
16
+ "migrateSchemaFinalizing": "Finalizing migration of schema \"{schemaName}\"",
17
+ "migrateSchemaComplete": "Migration of schema \"{schemaName}\" complete"
18
+ }
19
+ }
3
20
  }
package/package.json CHANGED
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "@twin.org/entity-storage-models",
3
- "version": "0.0.3-next.9",
3
+ "version": "0.9.0-next.1",
4
4
  "description": "Shared models for storage contracts, requests, responses and connector capabilities.",
5
5
  "repository": {
6
6
  "type": "git",
7
- "url": "git+https://github.com/twinfoundation/entity-storage.git",
7
+ "url": "git+https://github.com/iotaledger/twin-entity-storage.git",
8
8
  "directory": "packages/entity-storage-models"
9
9
  },
10
10
  "author": "martyn.janes@iota.org",
@@ -14,9 +14,11 @@
14
14
  "node": ">=20.0.0"
15
15
  },
16
16
  "dependencies": {
17
- "@twin.org/core": "next",
18
- "@twin.org/entity": "next",
19
- "@twin.org/nameof": "next"
17
+ "@twin.org/context": "0.9.0-next.1",
18
+ "@twin.org/core": "0.9.0-next.1",
19
+ "@twin.org/entity": "0.9.0-next.1",
20
+ "@twin.org/logging-models": "0.9.0-next.1",
21
+ "@twin.org/nameof": "0.9.0-next.1"
20
22
  },
21
23
  "main": "./dist/es/index.js",
22
24
  "types": "./dist/types/index.d.ts",
@@ -50,7 +52,7 @@
50
52
  "schemas"
51
53
  ],
52
54
  "bugs": {
53
- "url": "git+https://github.com/twinfoundation/entity-storage/issues"
55
+ "url": "git+https://github.com/iotaledger/twin-entity-storage/issues"
54
56
  },
55
57
  "homepage": "https://twindev.org"
56
58
  }