@seedprotocol/sdk 0.3.11 → 0.3.12

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 (231) hide show
  1. package/dist/addModel.js +0 -0
  2. package/dist/bin.js +8 -6
  3. package/dist/bin.js.map +1 -1
  4. package/dist/main.js +4 -3
  5. package/dist/main.js.map +1 -1
  6. package/dist/node/db/node.app.db.config.ts +4 -1
  7. package/dist/protos/seed.proto +97 -0
  8. package/dist/rpcServer.js +399 -0
  9. package/dist/rpcServer.js.map +1 -0
  10. package/dist/scripts/bin.d.ts.map +1 -1
  11. package/dist/scripts/rpcServer.cursor.d.ts +2 -0
  12. package/dist/scripts/rpcServer.cursor.d.ts.map +1 -0
  13. package/dist/scripts/rpcServer.d.ts +9 -0
  14. package/dist/scripts/rpcServer.d.ts.map +1 -0
  15. package/dist/scripts/vite.config.d.ts +3 -0
  16. package/dist/scripts/vite.config.d.ts.map +1 -0
  17. package/dist/seedSchema/AppStateSchema.ts +2 -2
  18. package/dist/seedSchema/MetadataSchema.ts +2 -1
  19. package/dist/seedSchema/ModelSchema.ts +3 -3
  20. package/dist/seedSchema/SeedSchema.ts +2 -1
  21. package/dist/seedSchema/VersionSchema.ts +2 -1
  22. package/dist/seedSchema/index.ts +4 -3
  23. package/dist/src/Item/BaseItem.d.ts +1 -1
  24. package/dist/src/Item/BaseItem.d.ts.map +1 -1
  25. package/dist/src/Item/BaseItem.js.map +1 -1
  26. package/dist/src/ItemProperty/BaseItemProperty.d.ts +55 -192
  27. package/dist/src/ItemProperty/BaseItemProperty.d.ts.map +1 -1
  28. package/dist/src/ItemProperty/service/actors/hydrateFromDb.d.ts +2 -1
  29. package/dist/src/ItemProperty/service/actors/hydrateFromDb.d.ts.map +1 -1
  30. package/dist/src/ItemProperty/service/actors/hydrateFromDb.js +4 -3
  31. package/dist/src/ItemProperty/service/actors/hydrateFromDb.js.map +1 -1
  32. package/dist/src/ItemProperty/service/actors/initialize.d.ts +2 -1
  33. package/dist/src/ItemProperty/service/actors/initialize.d.ts.map +1 -1
  34. package/dist/src/ItemProperty/service/actors/resolveRelatedValue.d.ts +2 -1
  35. package/dist/src/ItemProperty/service/actors/resolveRelatedValue.d.ts.map +1 -1
  36. package/dist/src/ItemProperty/service/actors/resolveRemoteStorage.d.ts +2 -1
  37. package/dist/src/ItemProperty/service/actors/resolveRemoteStorage.d.ts.map +1 -1
  38. package/dist/src/ItemProperty/service/actors/saveValueToDb/analyzeInput.d.ts +2 -2
  39. package/dist/src/ItemProperty/service/actors/saveValueToDb/analyzeInput.d.ts.map +1 -1
  40. package/dist/src/ItemProperty/service/actors/saveValueToDb/saveImage.d.ts +2 -2
  41. package/dist/src/ItemProperty/service/actors/saveValueToDb/saveImage.d.ts.map +1 -1
  42. package/dist/src/ItemProperty/service/actors/saveValueToDb/saveItemStorage.d.ts +2 -2
  43. package/dist/src/ItemProperty/service/actors/saveValueToDb/saveItemStorage.d.ts.map +1 -1
  44. package/dist/src/ItemProperty/service/actors/saveValueToDb/saveItemStorage.js +4 -3
  45. package/dist/src/ItemProperty/service/actors/saveValueToDb/saveItemStorage.js.map +1 -1
  46. package/dist/src/ItemProperty/service/actors/saveValueToDb/saveRelation.d.ts +2 -2
  47. package/dist/src/ItemProperty/service/actors/saveValueToDb/saveRelation.d.ts.map +1 -1
  48. package/dist/src/ItemProperty/service/actors/waitForDb.d.ts +2 -2
  49. package/dist/src/ItemProperty/service/actors/waitForDb.d.ts.map +1 -1
  50. package/dist/src/ItemProperty/service/propertyMachine.d.ts +60 -195
  51. package/dist/src/ItemProperty/service/propertyMachine.d.ts.map +1 -1
  52. package/dist/src/browser/helpers/ArweaveClient.d.ts.map +1 -1
  53. package/dist/src/browser/helpers/ArweaveClient.js +0 -1
  54. package/dist/src/browser/helpers/ArweaveClient.js.map +1 -1
  55. package/dist/src/browser/helpers/EasClient.d.ts.map +1 -1
  56. package/dist/src/browser/react/services.d.ts +1 -1
  57. package/dist/src/browser/react/services.js +4 -3
  58. package/dist/src/browser/react/services.js.map +1 -1
  59. package/dist/src/client/ClientManager.d.ts +14 -14
  60. package/dist/src/client/ClientManager.js +4 -3
  61. package/dist/src/client/ClientManager.js.map +1 -1
  62. package/dist/src/client/actors/initialize.d.ts +1 -1
  63. package/dist/src/client/actors/initialize.d.ts.map +1 -1
  64. package/dist/src/client/actors/initialize.js +54 -15
  65. package/dist/src/client/actors/initialize.js.map +1 -1
  66. package/dist/src/client/actors/saveAppState.js +4 -3
  67. package/dist/src/client/actors/saveAppState.js.map +1 -1
  68. package/dist/src/client/clientManagerMachine.d.ts +7 -7
  69. package/dist/src/client/index.d.ts +1 -1
  70. package/dist/src/client/index.d.ts.map +1 -1
  71. package/dist/src/db/Db/BaseDb.d.ts +2 -1
  72. package/dist/src/db/Db/BaseDb.d.ts.map +1 -1
  73. package/dist/src/db/Db/BaseDb.js +3 -0
  74. package/dist/src/db/Db/BaseDb.js.map +1 -1
  75. package/dist/src/db/read/getExistingItem.js +4 -3
  76. package/dist/src/db/read/getExistingItem.js.map +1 -1
  77. package/dist/src/db/read/getItemData.js +4 -3
  78. package/dist/src/db/read/getItemData.js.map +1 -1
  79. package/dist/src/db/read/getItemProperties.js +4 -3
  80. package/dist/src/db/read/getItemProperties.js.map +1 -1
  81. package/dist/src/db/read/getItemProperty.js +4 -3
  82. package/dist/src/db/read/getItemProperty.js.map +1 -1
  83. package/dist/src/db/read/getItems.js +4 -3
  84. package/dist/src/db/read/getItems.js.map +1 -1
  85. package/dist/src/db/read/getMetadata.js +4 -3
  86. package/dist/src/db/read/getMetadata.js.map +1 -1
  87. package/dist/src/db/read/getModelSchemas.js +4 -3
  88. package/dist/src/db/read/getModelSchemas.js.map +1 -1
  89. package/dist/src/db/read/getModels.js +4 -3
  90. package/dist/src/db/read/getModels.js.map +1 -1
  91. package/dist/src/db/read/getPropertyData.js +4 -3
  92. package/dist/src/db/read/getPropertyData.js.map +1 -1
  93. package/dist/src/db/read/getRelationValueData.js +4 -3
  94. package/dist/src/db/read/getRelationValueData.js.map +1 -1
  95. package/dist/src/db/read/getSeedData.js +4 -3
  96. package/dist/src/db/read/getSeedData.js.map +1 -1
  97. package/dist/src/db/read/getStorageTransactionIdForSeedUid.js +4 -3
  98. package/dist/src/db/read/getStorageTransactionIdForSeedUid.js.map +1 -1
  99. package/dist/src/db/read/getVersionData.js +4 -3
  100. package/dist/src/db/read/getVersionData.js.map +1 -1
  101. package/dist/src/db/read/subqueries/metadataLatest.js +4 -3
  102. package/dist/src/db/read/subqueries/metadataLatest.js.map +1 -1
  103. package/dist/src/db/read/subqueries/versionData.js +4 -3
  104. package/dist/src/db/read/subqueries/versionData.js.map +1 -1
  105. package/dist/src/db/write/createMetadata.js +4 -3
  106. package/dist/src/db/write/createMetadata.js.map +1 -1
  107. package/dist/src/db/write/createSeed.js +4 -3
  108. package/dist/src/db/write/createSeed.js.map +1 -1
  109. package/dist/src/db/write/createSeeds.js +4 -3
  110. package/dist/src/db/write/createSeeds.js.map +1 -1
  111. package/dist/src/db/write/createVersion.js +4 -3
  112. package/dist/src/db/write/createVersion.js.map +1 -1
  113. package/dist/src/db/write/deleteItem.js +4 -3
  114. package/dist/src/db/write/deleteItem.js.map +1 -1
  115. package/dist/src/db/write/saveAppState.js +4 -3
  116. package/dist/src/db/write/saveAppState.js.map +1 -1
  117. package/dist/src/db/write/saveMetadata.js +4 -3
  118. package/dist/src/db/write/saveMetadata.js.map +1 -1
  119. package/dist/src/db/write/updateItemPropertyValue.js +4 -3
  120. package/dist/src/db/write/updateItemPropertyValue.js.map +1 -1
  121. package/dist/src/db/write/updateMetadata.js +4 -3
  122. package/dist/src/db/write/updateMetadata.js.map +1 -1
  123. package/dist/src/events/files/download.js +4 -3
  124. package/dist/src/events/files/download.js.map +1 -1
  125. package/dist/src/events/item/syncDbWithEas.js +4 -3
  126. package/dist/src/events/item/syncDbWithEas.js.map +1 -1
  127. package/dist/src/helpers/FileManager/BaseFileManager.d.ts +4 -1
  128. package/dist/src/helpers/FileManager/BaseFileManager.d.ts.map +1 -1
  129. package/dist/src/helpers/FileManager/BaseFileManager.js +9 -0
  130. package/dist/src/helpers/FileManager/BaseFileManager.js.map +1 -1
  131. package/dist/src/helpers/db.js +4 -3
  132. package/dist/src/helpers/db.js.map +1 -1
  133. package/dist/src/helpers/environment.js +6 -1
  134. package/dist/src/helpers/environment.js.map +1 -1
  135. package/dist/src/helpers/index.d.ts +8 -0
  136. package/dist/src/helpers/index.d.ts.map +1 -1
  137. package/dist/src/helpers/index.js.map +1 -1
  138. package/dist/src/interfaces/IItem.d.ts +1 -1
  139. package/dist/src/interfaces/IItem.d.ts.map +1 -1
  140. package/dist/src/node/Item/Item.js +11 -0
  141. package/dist/src/node/Item/Item.js.map +1 -0
  142. package/dist/src/node/ItemProperty/ItemProperty.js +10 -0
  143. package/dist/src/node/ItemProperty/ItemProperty.js.map +1 -0
  144. package/dist/src/node/PathResolver.d.ts +2 -11
  145. package/dist/src/node/PathResolver.d.ts.map +1 -1
  146. package/dist/src/node/PathResolver.js +12 -5
  147. package/dist/src/node/PathResolver.js.map +1 -1
  148. package/dist/src/node/db/Db.d.ts.map +1 -1
  149. package/dist/src/node/db/Db.js +72 -0
  150. package/dist/src/node/db/Db.js.map +1 -0
  151. package/dist/src/node/db/node.app.db.config.d.ts.map +1 -1
  152. package/dist/src/node/helpers/ArweaveClient.d.ts.map +1 -1
  153. package/dist/src/node/helpers/ArweaveClient.js +0 -1
  154. package/dist/src/node/helpers/ArweaveClient.js.map +1 -1
  155. package/dist/src/node/helpers/EasClient.d.ts.map +1 -1
  156. package/dist/src/node/helpers/FileManager.d.ts +4 -0
  157. package/dist/src/node/helpers/FileManager.d.ts.map +1 -1
  158. package/dist/src/node/helpers/FileManager.js +67 -0
  159. package/dist/src/node/helpers/FileManager.js.map +1 -0
  160. package/dist/src/seedSchema/AppStateSchema.d.ts +2 -1
  161. package/dist/src/seedSchema/AppStateSchema.d.ts.map +1 -1
  162. package/dist/src/seedSchema/AppStateSchema.js.map +1 -1
  163. package/dist/src/seedSchema/MetadataSchema.d.ts +2 -1
  164. package/dist/src/seedSchema/MetadataSchema.d.ts.map +1 -1
  165. package/dist/src/seedSchema/MetadataSchema.js.map +1 -1
  166. package/dist/src/seedSchema/ModelSchema.d.ts +3 -2
  167. package/dist/src/seedSchema/ModelSchema.d.ts.map +1 -1
  168. package/dist/src/seedSchema/ModelSchema.js.map +1 -1
  169. package/dist/src/seedSchema/PropertyUidSchema.js +18 -0
  170. package/dist/src/seedSchema/PropertyUidSchema.js.map +1 -0
  171. package/dist/src/seedSchema/SeedSchema.d.ts +2 -1
  172. package/dist/src/seedSchema/SeedSchema.d.ts.map +1 -1
  173. package/dist/src/seedSchema/SeedSchema.js.map +1 -1
  174. package/dist/src/seedSchema/VersionSchema.d.ts +2 -1
  175. package/dist/src/seedSchema/VersionSchema.d.ts.map +1 -1
  176. package/dist/src/seedSchema/VersionSchema.js.map +1 -1
  177. package/dist/src/seedSchema/index.d.ts +4 -3
  178. package/dist/src/seedSchema/index.d.ts.map +1 -1
  179. package/dist/src/services/allItems/actors/fetchRelatedItems.js +4 -3
  180. package/dist/src/services/allItems/actors/fetchRelatedItems.js.map +1 -1
  181. package/dist/src/services/allItems/actors/initialize.js +4 -3
  182. package/dist/src/services/allItems/actors/initialize.js.map +1 -1
  183. package/dist/src/services/db/actors/checkStatus.d.ts.map +1 -1
  184. package/dist/src/services/db/actors/checkStatus.js +9 -3
  185. package/dist/src/services/db/actors/checkStatus.js.map +1 -1
  186. package/dist/src/services/db/actors/migrate.d.ts.map +1 -1
  187. package/dist/src/services/db/actors/migrate.js +9 -2
  188. package/dist/src/services/db/actors/migrate.js.map +1 -1
  189. package/dist/src/services/db/actors/waitForFiles.d.ts.map +1 -1
  190. package/dist/src/services/db/actors/waitForFiles.js +3 -1
  191. package/dist/src/services/db/actors/waitForFiles.js.map +1 -1
  192. package/dist/src/services/db/dbMachine.d.ts.map +1 -1
  193. package/dist/src/services/db/dbMachine.js +1 -0
  194. package/dist/src/services/db/dbMachine.js.map +1 -1
  195. package/dist/src/services/global/actors/addModelsToDb.js +4 -3
  196. package/dist/src/services/global/actors/addModelsToDb.js.map +1 -1
  197. package/dist/src/services/global/actors/initialize.d.ts +6 -1
  198. package/dist/src/services/global/actors/initialize.d.ts.map +1 -1
  199. package/dist/src/services/global/actors/initialize.js +6 -4
  200. package/dist/src/services/global/actors/initialize.js.map +1 -1
  201. package/dist/src/services/global/globalMachine.d.ts +80 -611
  202. package/dist/src/services/global/globalMachine.d.ts.map +1 -1
  203. package/dist/src/services/internal/actors/loadAppDb.d.ts.map +1 -1
  204. package/dist/src/services/internal/actors/loadAppDb.js +2 -1
  205. package/dist/src/services/internal/actors/loadAppDb.js.map +1 -1
  206. package/dist/src/services/internal/actors/saveConfig.d.ts.map +1 -1
  207. package/dist/src/services/internal/actors/saveConfig.js +5 -16
  208. package/dist/src/services/internal/actors/saveConfig.js.map +1 -1
  209. package/dist/src/services/internal/actors/validateInput.d.ts +9 -2
  210. package/dist/src/services/internal/actors/validateInput.d.ts.map +1 -1
  211. package/dist/src/services/internal/actors/validateInput.js +4 -1
  212. package/dist/src/services/internal/actors/validateInput.js.map +1 -1
  213. package/dist/src/services/internal/internalMachine.d.ts +33 -3
  214. package/dist/src/services/internal/internalMachine.d.ts.map +1 -1
  215. package/dist/src/services/internal/internalMachine.js +9 -5
  216. package/dist/src/services/internal/internalMachine.js.map +1 -1
  217. package/dist/src/services/publish/actors/preparePublishRequestData.js +4 -3
  218. package/dist/src/services/publish/actors/preparePublishRequestData.js.map +1 -1
  219. package/dist/src/types/fileManager.d.ts +13 -0
  220. package/dist/src/types/fileManager.d.ts.map +1 -1
  221. package/dist/src/types/item.d.ts +9 -8
  222. package/dist/src/types/item.d.ts.map +1 -1
  223. package/dist/src/types/machines.d.ts.map +1 -1
  224. package/package.json +9 -4
  225. package/dist/seedSchema/ConfigSchema.ts +0 -15
  226. package/dist/src/node/helpers/EasClient.js +0 -13
  227. package/dist/src/node/helpers/EasClient.js.map +0 -1
  228. package/dist/src/seedSchema/ConfigSchema.d.ts +0 -97
  229. package/dist/src/seedSchema/ConfigSchema.d.ts.map +0 -1
  230. package/dist/src/seedSchema/ConfigSchema.js +0 -18
  231. package/dist/src/seedSchema/ConfigSchema.js.map +0 -1
@@ -0,0 +1,399 @@
1
+ #!/usr/bin/env node
2
+ import path from 'path';
3
+ import grpc from '@grpc/grpc-js';
4
+ import protoLoader from '@grpc/proto-loader';
5
+ import { BaseItem } from './src/Item/BaseItem.js';
6
+ import { getModel, getModelNames } from './src/stores/modelClass.js';
7
+ import { fileURLToPath } from 'url';
8
+ import { commandExists } from './src/helpers/scripts.js';
9
+ import { execSync } from 'child_process';
10
+
11
+ const __filename = fileURLToPath(import.meta.url);
12
+ const __dirname = path.dirname(__filename);
13
+ // Load protobuf
14
+ const PROTO_PATH = path.resolve(__dirname, './protos/seed.proto');
15
+ // In-memory cache to store BaseItems by model and ID
16
+ const BaseItemsCache = {};
17
+ /**
18
+ * Implements the SeedService gRPC service
19
+ */
20
+ const server = {
21
+ // Model operations
22
+ GetModels: (call, callback) => {
23
+ try {
24
+ const modelNames = getModelNames();
25
+ const models = [];
26
+ for (const modelName of modelNames) {
27
+ const model = getModel(modelName);
28
+ if (!model) {
29
+ continue;
30
+ }
31
+ const props = Object.keys(model.schema || {}).map(propName => {
32
+ const prop = model.schema?.[propName];
33
+ const refModel = prop?.refModelId ? getModel(prop.refModelId) : undefined;
34
+ return {
35
+ name: propName,
36
+ type: prop?.dataType || 'Text',
37
+ relation_model: refModel ? String(refModel) : '',
38
+ is_list: prop?.dataType === 'List'
39
+ };
40
+ });
41
+ models.push({
42
+ name: modelName,
43
+ properties: props
44
+ });
45
+ }
46
+ callback(null, { models });
47
+ }
48
+ catch (error) {
49
+ const serverError = error;
50
+ callback({
51
+ code: grpc.status.INTERNAL,
52
+ message: `Error getting models: ${serverError.message}`
53
+ });
54
+ }
55
+ },
56
+ GetModel: (call, callback) => {
57
+ try {
58
+ const { modelName } = call.request;
59
+ const model = getModel(modelName);
60
+ if (!model) {
61
+ return callback({
62
+ code: grpc.status.NOT_FOUND,
63
+ message: `Model ${modelName} not found`
64
+ });
65
+ }
66
+ const props = Object.keys(model.schema || {}).map(propName => {
67
+ const prop = model.schema?.[propName];
68
+ const refModel = prop?.refModelId ? getModel(prop.refModelId) : undefined;
69
+ return {
70
+ name: propName,
71
+ type: prop?.dataType || 'Text',
72
+ relation_model: refModel ? String(refModel) : '',
73
+ is_list: prop?.dataType === 'List'
74
+ };
75
+ });
76
+ callback(null, {
77
+ model: {
78
+ name: modelName,
79
+ properties: props
80
+ }
81
+ });
82
+ }
83
+ catch (error) {
84
+ const serverError = error;
85
+ callback({
86
+ code: grpc.status.INTERNAL,
87
+ message: `Error getting model: ${serverError.message}`
88
+ });
89
+ }
90
+ },
91
+ // BaseItem operations
92
+ CreateItem: async (call, callback) => {
93
+ try {
94
+ const { modelName, properties } = call.request;
95
+ const ModelClass = getModel(modelName);
96
+ if (!ModelClass) {
97
+ return callback({
98
+ code: grpc.status.NOT_FOUND,
99
+ message: `Model ${modelName} not found`
100
+ });
101
+ }
102
+ // Process properties to handle relations and lists
103
+ const processedProps = {};
104
+ for (const [key, value] of Object.entries(properties)) {
105
+ // Handle relationship properties and lists based on model definition
106
+ const prop = ModelClass.schema?.[key];
107
+ if (prop?.dataType === 'List') {
108
+ processedProps[key] = JSON.parse(value);
109
+ }
110
+ else if (prop?.refModelId) {
111
+ // Assuming relation is stored as stringified ID
112
+ processedProps[key] = value;
113
+ }
114
+ else {
115
+ processedProps[key] = value;
116
+ }
117
+ }
118
+ const item = await BaseItem.create(processedProps);
119
+ // Cache the BaseItem
120
+ if (!BaseItemsCache[modelName]) {
121
+ BaseItemsCache[modelName] = {};
122
+ }
123
+ BaseItemsCache[modelName][item.seedLocalId] = item;
124
+ // Return the created BaseItem
125
+ callback(null, {
126
+ id: item.seedLocalId,
127
+ modelName,
128
+ properties: properties
129
+ });
130
+ }
131
+ catch (error) {
132
+ const serverError = error;
133
+ callback({
134
+ code: grpc.status.INTERNAL,
135
+ message: `Error creating BaseItem: ${serverError.message}`
136
+ });
137
+ }
138
+ },
139
+ GetItem: async (call, callback) => {
140
+ try {
141
+ const { id, modelName } = call.request;
142
+ // Try to get from cache
143
+ const item = await BaseItem.find({
144
+ seedLocalId: id,
145
+ modelName: modelName
146
+ });
147
+ if (!item) {
148
+ return callback({
149
+ code: grpc.status.NOT_FOUND,
150
+ message: `Item ${id} not found`
151
+ });
152
+ }
153
+ // Convert properties to simple strings for gRPC
154
+ const properties = {};
155
+ for (const [key, value] of Object.entries(item)) {
156
+ if (key !== 'seedLocalId' && key !== 'modelName') {
157
+ if (Array.isArray(value)) {
158
+ properties[key] = JSON.stringify(value);
159
+ }
160
+ else if (typeof value === 'object' && value !== null) {
161
+ properties[key] = JSON.stringify(value);
162
+ }
163
+ else {
164
+ properties[key] = String(value);
165
+ }
166
+ }
167
+ }
168
+ callback(null, {
169
+ id,
170
+ modelName,
171
+ properties
172
+ });
173
+ }
174
+ catch (error) {
175
+ const serverError = error;
176
+ callback({
177
+ code: grpc.status.INTERNAL,
178
+ message: `Error getting BaseItem: ${serverError.message}`
179
+ });
180
+ }
181
+ },
182
+ UpdateItem: async (call, callback) => {
183
+ try {
184
+ const { id, modelName, properties } = call.request;
185
+ // Try to get from cache
186
+ let item = await BaseItem.find({
187
+ seedLocalId: id,
188
+ modelName: modelName
189
+ });
190
+ if (!item) {
191
+ return callback({
192
+ code: grpc.status.NOT_FOUND,
193
+ message: `Item ${id} not found`
194
+ });
195
+ }
196
+ // Update properties
197
+ for (const [key, value] of Object.entries(properties)) {
198
+ const ModelClass = getModel(modelName);
199
+ const prop = ModelClass.schema?.[key];
200
+ if (prop?.dataType === 'List') {
201
+ item[key] = JSON.parse(value);
202
+ }
203
+ else if (prop?.refModelId) {
204
+ item[key] = value;
205
+ }
206
+ else {
207
+ item[key] = value;
208
+ }
209
+ }
210
+ // Save the updated BaseItem
211
+ await item.save();
212
+ // Return the updated BaseItem
213
+ callback(null, {
214
+ id,
215
+ modelName,
216
+ properties: properties
217
+ });
218
+ }
219
+ catch (error) {
220
+ const serverError = error;
221
+ callback({
222
+ code: grpc.status.INTERNAL,
223
+ message: `Error updating BaseItem: ${serverError.message}`
224
+ });
225
+ }
226
+ },
227
+ DeleteItem: async (call, callback) => {
228
+ try {
229
+ const { id, modelName } = call.request;
230
+ // Try to get from cache
231
+ const item = await BaseItem.find({
232
+ seedLocalId: id,
233
+ modelName: modelName
234
+ });
235
+ if (!item) {
236
+ return callback({
237
+ code: grpc.status.NOT_FOUND,
238
+ message: `Item ${id} not found`
239
+ });
240
+ }
241
+ // Delete the BaseItem
242
+ await item.delete();
243
+ // Remove from cache
244
+ if (BaseItemsCache[modelName]) {
245
+ delete BaseItemsCache[modelName][id];
246
+ }
247
+ callback(null, {
248
+ success: true,
249
+ message: `Item ${id} deleted successfully`
250
+ });
251
+ }
252
+ catch (error) {
253
+ const serverError = error;
254
+ callback({
255
+ code: grpc.status.INTERNAL,
256
+ message: `Error deleting BaseItem: ${serverError.message}`
257
+ });
258
+ }
259
+ },
260
+ QueryItems: async (call, callback) => {
261
+ try {
262
+ const { modelName, filters, limit, offset } = call.request;
263
+ // Get all BaseItems for the model
264
+ const modelItems = BaseItemsCache[modelName] || {};
265
+ let items = Object.values(modelItems);
266
+ // Apply filters
267
+ if (filters) {
268
+ items = items.filter(item => {
269
+ return Object.entries(filters).every(([key, value]) => {
270
+ return item[key] === value;
271
+ });
272
+ });
273
+ }
274
+ // Apply pagination
275
+ if (offset) {
276
+ items = items.slice(offset);
277
+ }
278
+ if (limit) {
279
+ items = items.slice(0, limit);
280
+ }
281
+ // Format response
282
+ const responseItems = items.map(item => {
283
+ const properties = {};
284
+ for (const [key, value] of Object.entries(item)) {
285
+ if (key !== 'seedLocalId' && key !== 'modelName') {
286
+ if (Array.isArray(value)) {
287
+ properties[key] = JSON.stringify(value);
288
+ }
289
+ else if (typeof value === 'object' && value !== null) {
290
+ properties[key] = JSON.stringify(value);
291
+ }
292
+ else {
293
+ properties[key] = String(value);
294
+ }
295
+ }
296
+ }
297
+ return {
298
+ id: item.seedLocalId,
299
+ modelName,
300
+ properties
301
+ };
302
+ });
303
+ callback(null, { items: responseItems });
304
+ }
305
+ catch (error) {
306
+ const serverError = error;
307
+ callback({
308
+ code: grpc.status.INTERNAL,
309
+ message: `Error querying BaseItems: ${serverError.message}`
310
+ });
311
+ }
312
+ },
313
+ PublishItem: async (call, callback) => {
314
+ try {
315
+ const { id, modelName } = call.request;
316
+ // Try to get from cache
317
+ const item = await BaseItem.find({
318
+ seedLocalId: id,
319
+ modelName: modelName
320
+ });
321
+ if (!item) {
322
+ return callback({
323
+ code: grpc.status.NOT_FOUND,
324
+ message: `Item ${id} not found`
325
+ });
326
+ }
327
+ // Publish the BaseItem
328
+ await item.publish();
329
+ callback(null, {
330
+ success: true,
331
+ message: `Item ${id} published successfully`
332
+ });
333
+ }
334
+ catch (error) {
335
+ const serverError = error;
336
+ callback({
337
+ code: grpc.status.INTERNAL,
338
+ message: `Error publishing BaseItem: ${serverError.message}`
339
+ });
340
+ }
341
+ }
342
+ };
343
+ /**
344
+ * Start the gRPC server
345
+ */
346
+ function startServer(port = 50051) {
347
+ const packageDefinition = protoLoader.loadSync(PROTO_PATH, {
348
+ keepCase: true,
349
+ longs: String,
350
+ enums: String,
351
+ defaults: true,
352
+ oneofs: true
353
+ });
354
+ const seedProto = grpc.loadPackageDefinition(packageDefinition);
355
+ const grpcServer = new grpc.Server();
356
+ grpcServer.addService(seedProto.seed.SeedService.service, server);
357
+ grpcServer.bindAsync(`0.0.0.0:${String(port)}`, grpc.ServerCredentials.createInsecure(), (err, boundPort) => {
358
+ if (err) {
359
+ console.error('Failed to bind server:', err);
360
+ return;
361
+ }
362
+ console.log(`Server running at http://0.0.0.0:${boundPort}`);
363
+ });
364
+ // Handle graceful shutdown
365
+ process.on('SIGINT', () => {
366
+ console.log('Shutting down gRPC server');
367
+ grpcServer.tryShutdown(() => {
368
+ console.log('Server stopped');
369
+ process.exit(0);
370
+ });
371
+ });
372
+ return grpcServer;
373
+ }
374
+ function parseArgs(args) {
375
+ const port = args.find((arg, index) => {
376
+ return arg === '--port' && args[index + 1];
377
+ });
378
+ return {
379
+ port: port ? parseInt(args[args.indexOf(port) + 1], 10) : 50051
380
+ };
381
+ }
382
+ function init(args) {
383
+ console.log('Starting RPC server with args:', args);
384
+ const { port } = parseArgs(args);
385
+ // Ensure tsx is installed
386
+ const tsxExists = commandExists('tsx');
387
+ if (!tsxExists) {
388
+ execSync(`npm install -g tsx`, { stdio: 'inherit' });
389
+ }
390
+ startServer(port);
391
+ }
392
+ // Only start the server if this file is being run directly
393
+ const calledFrom = process.argv[1];
394
+ if (calledFrom === __filename || calledFrom.endsWith('rpcServer.ts')) {
395
+ init(process.argv.slice(2));
396
+ }
397
+
398
+ export { init, startServer };
399
+ //# sourceMappingURL=rpcServer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rpcServer.js","sources":["../../scripts/rpcServer.ts"],"sourcesContent":["#!/usr/bin/env node\n\nimport path from 'path';\nimport grpc from '@grpc/grpc-js';\nimport protoLoader from '@grpc/proto-loader';\nimport { BaseItem } from '@/Item/BaseItem';\nimport { getModels, getModel, getModelNames } from '@/stores/modelClass';\nimport { fileURLToPath } from 'url';\nimport { ModelClassType } from '@/types/model';\nimport { commandExists } from '@/helpers/scripts';\nimport { execSync } from 'child_process';\n\nconst __filename = fileURLToPath(import.meta.url);\nconst __dirname = path.dirname(__filename);\n\n// Load protobuf\nconst PROTO_PATH = path.resolve(__dirname, './protos/seed.proto');\n\n// In-memory cache to store BaseItems by model and ID\nconst BaseItemsCache: Record<string, Record<string, any>> = {};\n\ninterface ServerError extends Error {\n code?: number;\n message: string;\n}\n\n/**\n * Implements the SeedService gRPC service\n */\nconst server = {\n // Model operations\n GetModels: (call: grpc.ServerUnaryCall<any, any>, callback: grpc.sendUnaryData<any>) => {\n try {\n const modelNames = getModelNames();\n const models = [];\n\n for (const modelName of modelNames) {\n const model = getModel(modelName) as ModelClassType;\n if (!model) {\n continue;\n }\n const props = Object.keys(model.schema || {}).map(propName => {\n const prop = model.schema?.[propName];\n const refModel = prop?.refModelId ? getModel(prop.refModelId) : undefined;\n return {\n name: propName,\n type: prop?.dataType || 'Text',\n relation_model: refModel ? String(refModel) : '',\n is_list: prop?.dataType === 'List'\n };\n });\n\n models.push({\n name: modelName,\n properties: props\n });\n }\n\n callback(null, { models });\n } catch (error) {\n const serverError = error as ServerError;\n callback({\n code: grpc.status.INTERNAL,\n message: `Error getting models: ${serverError.message}`\n });\n }\n },\n\n GetModel: (call: grpc.ServerUnaryCall<any, any>, callback: grpc.sendUnaryData<any>) => {\n try {\n const { modelName } = call.request;\n const model = getModel(modelName) as ModelClassType;\n \n if (!model) {\n return callback({\n code: grpc.status.NOT_FOUND,\n message: `Model ${modelName} not found`\n });\n }\n\n const props = Object.keys(model.schema || {}).map(propName => {\n const prop = model.schema?.[propName];\n const refModel = prop?.refModelId ? getModel(prop.refModelId) : undefined;\n return {\n name: propName,\n type: prop?.dataType || 'Text',\n relation_model: refModel ? String(refModel) : '',\n is_list: prop?.dataType === 'List'\n };\n });\n\n callback(null, { \n model: {\n name: modelName,\n properties: props\n }\n });\n } catch (error) {\n const serverError = error as ServerError;\n callback({\n code: grpc.status.INTERNAL,\n message: `Error getting model: ${serverError.message}`\n });\n }\n },\n\n // BaseItem operations\n CreateItem: async (call: grpc.ServerUnaryCall<any, any>, callback: grpc.sendUnaryData<any>) => {\n try {\n const { modelName, properties } = call.request;\n const ModelClass = getModel(modelName) as ModelClassType;\n \n if (!ModelClass) {\n return callback({\n code: grpc.status.NOT_FOUND,\n message: `Model ${modelName} not found`\n });\n }\n\n // Process properties to handle relations and lists\n const processedProps: Record<string, any> = {};\n for (const [key, value] of Object.entries(properties)) {\n // Handle relationship properties and lists based on model definition\n const prop = ModelClass.schema?.[key];\n if (prop?.dataType === 'List') {\n processedProps[key] = JSON.parse(value as string);\n } else if (prop?.refModelId) {\n // Assuming relation is stored as stringified ID\n processedProps[key] = value;\n } else {\n processedProps[key] = value;\n }\n }\n\n const item = await BaseItem.create(processedProps);\n\n // Cache the BaseItem\n if (!BaseItemsCache[modelName]) {\n BaseItemsCache[modelName] = {};\n }\n \n BaseItemsCache[modelName][item.seedLocalId] = item;\n\n // Return the created BaseItem\n callback(null, {\n id: item.seedLocalId,\n modelName,\n properties: properties\n });\n } catch (error) {\n const serverError = error as ServerError;\n callback({\n code: grpc.status.INTERNAL,\n message: `Error creating BaseItem: ${serverError.message}`\n });\n }\n },\n\n GetItem: async (call: grpc.ServerUnaryCall<any, any>, callback: grpc.sendUnaryData<any>) => {\n try {\n const { id, modelName } = call.request;\n \n // Try to get from cache\n const item = await BaseItem.find({\n seedLocalId: id,\n modelName: modelName\n });\n \n if (!item) {\n return callback({\n code: grpc.status.NOT_FOUND,\n message: `Item ${id} not found`\n });\n }\n\n // Convert properties to simple strings for gRPC\n const properties: Record<string, string> = {};\n for (const [key, value] of Object.entries(item)) {\n if (key !== 'seedLocalId' && key !== 'modelName') {\n if (Array.isArray(value)) {\n properties[key] = JSON.stringify(value);\n } else if (typeof value === 'object' && value !== null) {\n properties[key] = JSON.stringify(value);\n } else {\n properties[key] = String(value);\n }\n }\n }\n\n callback(null, {\n id,\n modelName,\n properties\n });\n } catch (error) {\n const serverError = error as ServerError;\n callback({\n code: grpc.status.INTERNAL,\n message: `Error getting BaseItem: ${serverError.message}`\n });\n }\n },\n\n UpdateItem: async (call: grpc.ServerUnaryCall<any, any>, callback: grpc.sendUnaryData<any>) => {\n try {\n const { id, modelName, properties } = call.request;\n \n // Try to get from cache\n let item = await BaseItem.find({\n seedLocalId: id,\n modelName: modelName\n });\n \n if (!item) {\n return callback({\n code: grpc.status.NOT_FOUND,\n message: `Item ${id} not found`\n });\n }\n\n // Update properties\n for (const [key, value] of Object.entries(properties)) {\n const ModelClass = getModel(modelName) as ModelClassType;\n const prop = ModelClass.schema?.[key];\n if (prop?.dataType === 'List') {\n (item as any)[key] = JSON.parse(value as string);\n } else if (prop?.refModelId) {\n (item as any)[key] = value;\n } else {\n (item as any)[key] = value;\n }\n }\n\n // Save the updated BaseItem\n await (item as any).save();\n\n // Return the updated BaseItem\n callback(null, {\n id,\n modelName,\n properties: properties\n });\n } catch (error) {\n const serverError = error as ServerError;\n callback({\n code: grpc.status.INTERNAL,\n message: `Error updating BaseItem: ${serverError.message}`\n });\n }\n },\n\n DeleteItem: async (call: grpc.ServerUnaryCall<any, any>, callback: grpc.sendUnaryData<any>) => {\n try {\n const { id, modelName } = call.request;\n \n // Try to get from cache\n const item = await BaseItem.find({\n seedLocalId: id,\n modelName: modelName\n });\n \n if (!item) {\n return callback({\n code: grpc.status.NOT_FOUND,\n message: `Item ${id} not found`\n });\n }\n\n // Delete the BaseItem\n await (item as any).delete();\n \n // Remove from cache\n if (BaseItemsCache[modelName]) {\n delete BaseItemsCache[modelName][id];\n }\n\n callback(null, {\n success: true,\n message: `Item ${id} deleted successfully`\n });\n } catch (error) {\n const serverError = error as ServerError;\n callback({\n code: grpc.status.INTERNAL,\n message: `Error deleting BaseItem: ${serverError.message}`\n });\n }\n },\n\n QueryItems: async (call: grpc.ServerUnaryCall<any, any>, callback: grpc.sendUnaryData<any>) => {\n try {\n const { modelName, filters, limit, offset } = call.request;\n \n // Get all BaseItems for the model\n const modelItems = BaseItemsCache[modelName] || {};\n let items = Object.values(modelItems);\n \n // Apply filters\n if (filters) {\n items = items.filter(item => {\n return Object.entries(filters).every(([key, value]) => {\n return (item as any)[key] === value;\n });\n });\n }\n \n // Apply pagination\n if (offset) {\n items = items.slice(offset);\n }\n \n if (limit) {\n items = items.slice(0, limit);\n }\n \n // Format response\n const responseItems = items.map(item => {\n const properties: Record<string, string> = {};\n for (const [key, value] of Object.entries(item)) {\n if (key !== 'seedLocalId' && key !== 'modelName') {\n if (Array.isArray(value)) {\n properties[key] = JSON.stringify(value);\n } else if (typeof value === 'object' && value !== null) {\n properties[key] = JSON.stringify(value);\n } else {\n properties[key] = String(value);\n }\n }\n }\n \n return {\n id: (item as any).seedLocalId,\n modelName,\n properties\n };\n });\n\n callback(null, { items: responseItems });\n } catch (error) {\n const serverError = error as ServerError;\n callback({\n code: grpc.status.INTERNAL,\n message: `Error querying BaseItems: ${serverError.message}`\n });\n }\n },\n\n PublishItem: async (call: grpc.ServerUnaryCall<any, any>, callback: grpc.sendUnaryData<any>) => {\n try {\n const { id, modelName } = call.request;\n \n // Try to get from cache\n const item = await BaseItem.find({\n seedLocalId: id,\n modelName: modelName\n });\n \n if (!item) {\n return callback({\n code: grpc.status.NOT_FOUND,\n message: `Item ${id} not found`\n });\n }\n\n // Publish the BaseItem\n await item.publish();\n\n callback(null, {\n success: true,\n message: `Item ${id} published successfully`\n });\n } catch (error) {\n const serverError = error as ServerError;\n callback({\n code: grpc.status.INTERNAL,\n message: `Error publishing BaseItem: ${serverError.message}`\n });\n }\n }\n};\n\n/**\n * Start the gRPC server\n */\nfunction startServer(port = 50051) {\n const packageDefinition = protoLoader.loadSync(PROTO_PATH, {\n keepCase: true,\n longs: String,\n enums: String,\n defaults: true,\n oneofs: true\n });\n\n const seedProto = grpc.loadPackageDefinition(packageDefinition) as any;\n const grpcServer = new grpc.Server();\n \n grpcServer.addService(seedProto.seed.SeedService.service, server);\n \n grpcServer.bindAsync(`0.0.0.0:${String(port)}`, grpc.ServerCredentials.createInsecure(), (err, boundPort) => {\n if (err) {\n console.error('Failed to bind server:', err);\n return;\n }\n \n console.log(`Server running at http://0.0.0.0:${boundPort}`);\n });\n\n // Handle graceful shutdown\n process.on('SIGINT', () => {\n console.log('Shutting down gRPC server');\n grpcServer.tryShutdown(() => {\n console.log('Server stopped');\n process.exit(0);\n });\n });\n\n return grpcServer;\n}\n\nfunction parseArgs(args: string[]) {\n const port = args.find((arg, index) => {\n return arg === '--port' && args[index + 1];\n });\n \n return {\n port: port ? parseInt(args[args.indexOf(port) + 1], 10) : 50051\n };\n}\n\nfunction init(args: string[]) {\n console.log('Starting RPC server with args:', args);\n \n const { port } = parseArgs(args);\n\n // Ensure tsx is installed\n const tsxExists = commandExists('tsx');\n if (!tsxExists) {\n execSync(`npm install -g tsx`, {stdio: 'inherit'});\n }\n\n startServer(port);\n}\n\n// Only start the server if this file is being run directly\nconst calledFrom = process.argv[1];\nif (calledFrom === __filename || calledFrom.endsWith('rpcServer.ts')) {\n init(process.argv.slice(2));\n}\n\nexport { startServer, init };"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"bin.d.ts","sourceRoot":"","sources":["../../scripts/bin.ts"],"names":[],"mappings":";AAMA,OAAO,0BAA0B,CAAA;AACjC,OAAO,4BAA4B,CAAA;AACnC,OAAO,4BAA4B,CAAA;AACnC,OAAO,8BAA8B,CAAA;AAoHrC,QAAA,MAAM,IAAI,SAAU,MAAM,EAAE,SAyL3B,CAAA;AAeD,OAAO,EAAE,IAAI,EAAE,CAAA"}
1
+ {"version":3,"file":"bin.d.ts","sourceRoot":"","sources":["../../scripts/bin.ts"],"names":[],"mappings":";AAMA,OAAO,0BAA0B,CAAA;AACjC,OAAO,4BAA4B,CAAA;AACnC,OAAO,4BAA4B,CAAA;AACnC,OAAO,8BAA8B,CAAA;AA8GrC,QAAA,MAAM,IAAI,SAAU,MAAM,EAAE,SAyL3B,CAAA;AAeD,OAAO,EAAE,IAAI,EAAE,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=rpcServer.cursor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rpcServer.cursor.d.ts","sourceRoot":"","sources":["../../scripts/rpcServer.cursor.ts"],"names":[],"mappings":""}
@@ -0,0 +1,9 @@
1
+ #!/usr/bin/env node
2
+ import grpc from '@grpc/grpc-js';
3
+ /**
4
+ * Start the gRPC server
5
+ */
6
+ declare function startServer(port?: number): grpc.Server;
7
+ declare function init(args: string[]): void;
8
+ export { startServer, init };
9
+ //# sourceMappingURL=rpcServer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rpcServer.d.ts","sourceRoot":"","sources":["../../scripts/rpcServer.ts"],"names":[],"mappings":";AAGA,OAAO,IAAI,MAAM,eAAe,CAAC;AA0XjC;;GAEG;AACH,iBAAS,WAAW,CAAC,IAAI,SAAQ,eAiChC;AAYD,iBAAS,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,QAY3B;AAQD,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC"}
@@ -0,0 +1,3 @@
1
+ declare const _default: import("vite").UserConfig;
2
+ export default _default;
3
+ //# sourceMappingURL=vite.config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vite.config.d.ts","sourceRoot":"","sources":["../../scripts/vite.config.ts"],"names":[],"mappings":";AAGA,wBAaE"}
@@ -1,5 +1,5 @@
1
1
  import { int, sqliteTable, text } from 'drizzle-orm/sqlite-core'
2
-
2
+ import { InferSelectModel } from 'drizzle-orm'
3
3
  export const appState = sqliteTable('appState', {
4
4
  key: text('key').unique(),
5
5
  value: text('value'),
@@ -7,4 +7,4 @@ export const appState = sqliteTable('appState', {
7
7
  updatedAt: int('updated_at'),
8
8
  })
9
9
 
10
- export type appStateType = appState.$inferSelect
10
+ export type appStateType = InferSelectModel<typeof appState>
@@ -1,4 +1,5 @@
1
1
  import { int, sqliteTable, text } from 'drizzle-orm/sqlite-core'
2
+ import { InferSelectModel } from 'drizzle-orm'
2
3
 
3
4
  export const metadata = sqliteTable('metadata', {
4
5
  localId: text('local_id').unique(),
@@ -25,4 +26,4 @@ export const metadata = sqliteTable('metadata', {
25
26
  updatedAt: int('updated_at'),
26
27
  })
27
28
 
28
- export type MetadataType = metadata.$inferSelect
29
+ export type MetadataType = InferSelectModel<typeof metadata>
@@ -1,6 +1,6 @@
1
1
  import { int, sqliteTable, text, unique } from 'drizzle-orm/sqlite-core'
2
2
  import { relations } from 'drizzle-orm'
3
-
3
+ import { InferInsertModel, InferSelectModel } from 'drizzle-orm'
4
4
  export const models = sqliteTable('models', {
5
5
  id: int('id').primaryKey({ autoIncrement: true }),
6
6
  name: text('name').notNull(),
@@ -42,5 +42,5 @@ export const propertiesRelations = relations(properties, ({ one }) => ({
42
42
  refModel: one(models),
43
43
  }))
44
44
 
45
- export type NewPropertyRecord = typeof properties.$inferInsert
46
- export type PropertyType = typeof properties.$inferSelect
45
+ export type NewPropertyRecord = InferInsertModel<typeof properties>
46
+ export type PropertyType = InferSelectModel<typeof properties>
@@ -1,3 +1,4 @@
1
+ import { InferSelectModel } from 'drizzle-orm'
1
2
  import { int, sqliteTable, text } from 'drizzle-orm/sqlite-core'
2
3
 
3
4
  export const seeds = sqliteTable(
@@ -26,4 +27,4 @@ export const seeds = sqliteTable(
26
27
  // },
27
28
  )
28
29
 
29
- export type SeedType = seeds.$inferSelect
30
+ export type SeedType = InferSelectModel<typeof seeds>
@@ -1,4 +1,5 @@
1
1
  import { int, sqliteTable, text } from 'drizzle-orm/sqlite-core'
2
+ import { InferSelectModel } from 'drizzle-orm'
2
3
 
3
4
  export const versions = sqliteTable('versions', {
4
5
  localId: text('local_id').unique(),
@@ -13,4 +14,4 @@ export const versions = sqliteTable('versions', {
13
14
  attestationRaw: text('attestation_raw'),
14
15
  })
15
16
 
16
- export type VersionsType = versions.$inferSelect
17
+ export type VersionsType = InferSelectModel<typeof versions>
@@ -1,6 +1,7 @@
1
- export * from './SeedSchema'
2
- export * from './VersionSchema'
3
- export * from './MetadataSchema'
4
1
  export * from './AppStateSchema'
2
+ export * from './MetadataSchema'
5
3
  export * from './ModelSchema'
6
4
  export * from './ModelUidSchema'
5
+ export * from './PropertyUidSchema'
6
+ export * from './SeedSchema'
7
+ export * from './VersionSchema'
@@ -1,6 +1,6 @@
1
1
  import { IItem, IItemProperty } from '@/interfaces';
2
2
  import { itemMachineSingle } from '@/Item/service/itemMachineSingle';
3
- import { VersionsType } from '@/seedSchema/VersionSchema';
3
+ import { VersionsType } from '@/seedSchema';
4
4
  import { CreatePropertyInstanceProps, ItemData, ItemFindProps, ModelSchema, ModelValues, NewItemProps, PropertyData } from '@/types';
5
5
  import { immerable } from 'immer';
6
6
  import { BehaviorSubject } from 'rxjs';
@@ -1 +1 @@
1
- {"version":3,"file":"BaseItem.d.ts","sourceRoot":"","sources":["../../../src/Item/BaseItem.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BaseItem.d.ts","sourceRoot":"","sources":["../../../src/Item/BaseItem.ts"],"names":[],"mappings":"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"}