@seedprotocol/sdk 0.3.12 → 0.3.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bin.js +6 -8
- package/dist/bin.js.map +1 -1
- package/dist/main.js +3 -4
- package/dist/main.js.map +1 -1
- package/dist/node/db/node.app.db.config.ts +1 -4
- package/dist/scripts/bin.d.ts.map +1 -1
- package/dist/seedSchema/AppStateSchema.ts +2 -2
- package/dist/seedSchema/ConfigSchema.ts +15 -0
- package/dist/seedSchema/MetadataSchema.ts +1 -2
- package/dist/seedSchema/ModelSchema.ts +3 -3
- package/dist/seedSchema/SeedSchema.ts +1 -2
- package/dist/seedSchema/VersionSchema.ts +1 -2
- package/dist/seedSchema/index.ts +3 -4
- package/dist/src/Item/BaseItem.d.ts +1 -1
- package/dist/src/Item/BaseItem.d.ts.map +1 -1
- package/dist/src/Item/BaseItem.js.map +1 -1
- package/dist/src/ItemProperty/BaseItemProperty.d.ts +192 -55
- package/dist/src/ItemProperty/BaseItemProperty.d.ts.map +1 -1
- package/dist/src/ItemProperty/service/actors/hydrateFromDb.d.ts +1 -2
- package/dist/src/ItemProperty/service/actors/hydrateFromDb.d.ts.map +1 -1
- package/dist/src/ItemProperty/service/actors/hydrateFromDb.js +3 -4
- package/dist/src/ItemProperty/service/actors/hydrateFromDb.js.map +1 -1
- package/dist/src/ItemProperty/service/actors/initialize.d.ts +1 -2
- package/dist/src/ItemProperty/service/actors/initialize.d.ts.map +1 -1
- package/dist/src/ItemProperty/service/actors/resolveRelatedValue.d.ts +1 -2
- package/dist/src/ItemProperty/service/actors/resolveRelatedValue.d.ts.map +1 -1
- package/dist/src/ItemProperty/service/actors/resolveRemoteStorage.d.ts +1 -2
- package/dist/src/ItemProperty/service/actors/resolveRemoteStorage.d.ts.map +1 -1
- package/dist/src/ItemProperty/service/actors/saveValueToDb/analyzeInput.d.ts +2 -2
- package/dist/src/ItemProperty/service/actors/saveValueToDb/analyzeInput.d.ts.map +1 -1
- package/dist/src/ItemProperty/service/actors/saveValueToDb/saveImage.d.ts +2 -2
- package/dist/src/ItemProperty/service/actors/saveValueToDb/saveImage.d.ts.map +1 -1
- package/dist/src/ItemProperty/service/actors/saveValueToDb/saveItemStorage.d.ts +2 -2
- package/dist/src/ItemProperty/service/actors/saveValueToDb/saveItemStorage.d.ts.map +1 -1
- package/dist/src/ItemProperty/service/actors/saveValueToDb/saveItemStorage.js +3 -4
- package/dist/src/ItemProperty/service/actors/saveValueToDb/saveItemStorage.js.map +1 -1
- package/dist/src/ItemProperty/service/actors/saveValueToDb/saveRelation.d.ts +2 -2
- package/dist/src/ItemProperty/service/actors/saveValueToDb/saveRelation.d.ts.map +1 -1
- package/dist/src/ItemProperty/service/actors/waitForDb.d.ts +2 -2
- package/dist/src/ItemProperty/service/actors/waitForDb.d.ts.map +1 -1
- package/dist/src/ItemProperty/service/propertyMachine.d.ts +195 -60
- package/dist/src/ItemProperty/service/propertyMachine.d.ts.map +1 -1
- package/dist/src/browser/helpers/ArweaveClient.d.ts.map +1 -1
- package/dist/src/browser/helpers/ArweaveClient.js +1 -0
- package/dist/src/browser/helpers/ArweaveClient.js.map +1 -1
- package/dist/src/browser/helpers/EasClient.d.ts.map +1 -1
- package/dist/src/browser/react/services.d.ts +1 -1
- package/dist/src/browser/react/services.js +3 -4
- package/dist/src/browser/react/services.js.map +1 -1
- package/dist/src/client/ClientManager.d.ts +14 -14
- package/dist/src/client/ClientManager.js +3 -4
- package/dist/src/client/ClientManager.js.map +1 -1
- package/dist/src/client/actors/initialize.d.ts +1 -1
- package/dist/src/client/actors/initialize.d.ts.map +1 -1
- package/dist/src/client/actors/initialize.js +15 -54
- package/dist/src/client/actors/initialize.js.map +1 -1
- package/dist/src/client/actors/saveAppState.js +3 -4
- package/dist/src/client/actors/saveAppState.js.map +1 -1
- package/dist/src/client/clientManagerMachine.d.ts +7 -7
- package/dist/src/client/index.d.ts +1 -1
- package/dist/src/client/index.d.ts.map +1 -1
- package/dist/src/db/Db/BaseDb.d.ts +1 -2
- package/dist/src/db/Db/BaseDb.d.ts.map +1 -1
- package/dist/src/db/Db/BaseDb.js +0 -3
- package/dist/src/db/Db/BaseDb.js.map +1 -1
- package/dist/src/db/read/getExistingItem.js +3 -4
- package/dist/src/db/read/getExistingItem.js.map +1 -1
- package/dist/src/db/read/getItemData.js +3 -4
- package/dist/src/db/read/getItemData.js.map +1 -1
- package/dist/src/db/read/getItemProperties.js +3 -4
- package/dist/src/db/read/getItemProperties.js.map +1 -1
- package/dist/src/db/read/getItemProperty.js +3 -4
- package/dist/src/db/read/getItemProperty.js.map +1 -1
- package/dist/src/db/read/getItems.js +3 -4
- package/dist/src/db/read/getItems.js.map +1 -1
- package/dist/src/db/read/getMetadata.js +3 -4
- package/dist/src/db/read/getMetadata.js.map +1 -1
- package/dist/src/db/read/getModelSchemas.js +3 -4
- package/dist/src/db/read/getModelSchemas.js.map +1 -1
- package/dist/src/db/read/getModels.js +3 -4
- package/dist/src/db/read/getModels.js.map +1 -1
- package/dist/src/db/read/getPropertyData.js +3 -4
- package/dist/src/db/read/getPropertyData.js.map +1 -1
- package/dist/src/db/read/getPublishUploads.js +2 -1
- package/dist/src/db/read/getPublishUploads.js.map +1 -1
- package/dist/src/db/read/getRelationValueData.js +3 -4
- package/dist/src/db/read/getRelationValueData.js.map +1 -1
- package/dist/src/db/read/getSeedData.js +3 -4
- package/dist/src/db/read/getSeedData.js.map +1 -1
- package/dist/src/db/read/getStorageTransactionIdForSeedUid.js +3 -4
- package/dist/src/db/read/getStorageTransactionIdForSeedUid.js.map +1 -1
- package/dist/src/db/read/getVersionData.js +3 -4
- package/dist/src/db/read/getVersionData.js.map +1 -1
- package/dist/src/db/read/subqueries/metadataLatest.js +3 -4
- package/dist/src/db/read/subqueries/metadataLatest.js.map +1 -1
- package/dist/src/db/read/subqueries/versionData.js +3 -4
- package/dist/src/db/read/subqueries/versionData.js.map +1 -1
- package/dist/src/db/write/createMetadata.js +3 -4
- package/dist/src/db/write/createMetadata.js.map +1 -1
- package/dist/src/db/write/createSeed.js +3 -4
- package/dist/src/db/write/createSeed.js.map +1 -1
- package/dist/src/db/write/createSeeds.js +3 -4
- package/dist/src/db/write/createSeeds.js.map +1 -1
- package/dist/src/db/write/createVersion.js +3 -4
- package/dist/src/db/write/createVersion.js.map +1 -1
- package/dist/src/db/write/deleteItem.js +3 -4
- package/dist/src/db/write/deleteItem.js.map +1 -1
- package/dist/src/db/write/saveAppState.js +3 -4
- package/dist/src/db/write/saveAppState.js.map +1 -1
- package/dist/src/db/write/saveMetadata.js +3 -4
- package/dist/src/db/write/saveMetadata.js.map +1 -1
- package/dist/src/db/write/updateItemPropertyValue.js +3 -4
- package/dist/src/db/write/updateItemPropertyValue.js.map +1 -1
- package/dist/src/db/write/updateMetadata.js +3 -4
- package/dist/src/db/write/updateMetadata.js.map +1 -1
- package/dist/src/events/files/download.js +3 -4
- package/dist/src/events/files/download.js.map +1 -1
- package/dist/src/events/item/syncDbWithEas.js +3 -4
- package/dist/src/events/item/syncDbWithEas.js.map +1 -1
- package/dist/src/helpers/FileManager/BaseFileManager.d.ts +1 -4
- package/dist/src/helpers/FileManager/BaseFileManager.d.ts.map +1 -1
- package/dist/src/helpers/FileManager/BaseFileManager.js +0 -9
- package/dist/src/helpers/FileManager/BaseFileManager.js.map +1 -1
- package/dist/src/helpers/crypto.d.ts +3 -0
- package/dist/src/helpers/crypto.d.ts.map +1 -0
- package/dist/src/helpers/crypto.js +9 -0
- package/dist/src/helpers/crypto.js.map +1 -0
- package/dist/src/helpers/db.js +3 -4
- package/dist/src/helpers/db.js.map +1 -1
- package/dist/src/helpers/environment.js +1 -6
- package/dist/src/helpers/environment.js.map +1 -1
- package/dist/src/helpers/index.d.ts +0 -10
- package/dist/src/helpers/index.d.ts.map +1 -1
- package/dist/src/helpers/index.js +1 -6
- package/dist/src/helpers/index.js.map +1 -1
- package/dist/src/interfaces/IItem.d.ts +1 -1
- package/dist/src/interfaces/IItem.d.ts.map +1 -1
- package/dist/src/node/PathResolver.d.ts +11 -2
- package/dist/src/node/PathResolver.d.ts.map +1 -1
- package/dist/src/node/PathResolver.js +5 -12
- package/dist/src/node/PathResolver.js.map +1 -1
- package/dist/src/node/codegen/drizzle.js +2 -36
- package/dist/src/node/codegen/drizzle.js.map +1 -1
- package/dist/src/node/db/Db.d.ts.map +1 -1
- package/dist/src/node/db/node.app.db.config.d.ts.map +1 -1
- package/dist/src/node/helpers/ArweaveClient.d.ts.map +1 -1
- package/dist/src/node/helpers/ArweaveClient.js +1 -0
- package/dist/src/node/helpers/ArweaveClient.js.map +1 -1
- package/dist/src/node/helpers/EasClient.d.ts.map +1 -1
- package/dist/src/node/helpers/EasClient.js +13 -0
- package/dist/src/node/helpers/EasClient.js.map +1 -0
- package/dist/src/node/helpers/FileManager.d.ts +0 -4
- package/dist/src/node/helpers/FileManager.d.ts.map +1 -1
- package/dist/src/seedSchema/AppStateSchema.d.ts +1 -2
- package/dist/src/seedSchema/AppStateSchema.d.ts.map +1 -1
- package/dist/src/seedSchema/AppStateSchema.js.map +1 -1
- package/dist/src/seedSchema/ConfigSchema.d.ts +97 -0
- package/dist/src/seedSchema/ConfigSchema.d.ts.map +1 -0
- package/dist/src/seedSchema/ConfigSchema.js +18 -0
- package/dist/src/seedSchema/ConfigSchema.js.map +1 -0
- package/dist/src/seedSchema/MetadataSchema.d.ts +1 -2
- package/dist/src/seedSchema/MetadataSchema.d.ts.map +1 -1
- package/dist/src/seedSchema/MetadataSchema.js.map +1 -1
- package/dist/src/seedSchema/ModelSchema.d.ts +2 -3
- package/dist/src/seedSchema/ModelSchema.d.ts.map +1 -1
- package/dist/src/seedSchema/ModelSchema.js.map +1 -1
- package/dist/src/seedSchema/SeedSchema.d.ts +1 -2
- package/dist/src/seedSchema/SeedSchema.d.ts.map +1 -1
- package/dist/src/seedSchema/SeedSchema.js.map +1 -1
- package/dist/src/seedSchema/VersionSchema.d.ts +1 -2
- package/dist/src/seedSchema/VersionSchema.d.ts.map +1 -1
- package/dist/src/seedSchema/VersionSchema.js.map +1 -1
- package/dist/src/seedSchema/index.d.ts +3 -4
- package/dist/src/seedSchema/index.d.ts.map +1 -1
- package/dist/src/services/allItems/actors/fetchRelatedItems.js +3 -4
- package/dist/src/services/allItems/actors/fetchRelatedItems.js.map +1 -1
- package/dist/src/services/allItems/actors/initialize.js +3 -4
- package/dist/src/services/allItems/actors/initialize.js.map +1 -1
- package/dist/src/services/db/actors/checkStatus.d.ts.map +1 -1
- package/dist/src/services/db/actors/checkStatus.js +3 -9
- package/dist/src/services/db/actors/checkStatus.js.map +1 -1
- package/dist/src/services/db/actors/migrate.d.ts.map +1 -1
- package/dist/src/services/db/actors/migrate.js +2 -9
- package/dist/src/services/db/actors/migrate.js.map +1 -1
- package/dist/src/services/db/actors/waitForFiles.d.ts.map +1 -1
- package/dist/src/services/db/actors/waitForFiles.js +1 -3
- package/dist/src/services/db/actors/waitForFiles.js.map +1 -1
- package/dist/src/services/db/dbMachine.d.ts.map +1 -1
- package/dist/src/services/db/dbMachine.js +0 -1
- package/dist/src/services/db/dbMachine.js.map +1 -1
- package/dist/src/services/global/actors/addModelsToDb.js +3 -4
- package/dist/src/services/global/actors/addModelsToDb.js.map +1 -1
- package/dist/src/services/global/actors/initialize.d.ts +1 -6
- package/dist/src/services/global/actors/initialize.d.ts.map +1 -1
- package/dist/src/services/global/actors/initialize.js +4 -6
- package/dist/src/services/global/actors/initialize.js.map +1 -1
- package/dist/src/services/global/globalMachine.d.ts +611 -80
- package/dist/src/services/global/globalMachine.d.ts.map +1 -1
- package/dist/src/services/internal/actors/loadAppDb.d.ts.map +1 -1
- package/dist/src/services/internal/actors/loadAppDb.js +1 -2
- package/dist/src/services/internal/actors/loadAppDb.js.map +1 -1
- package/dist/src/services/internal/actors/saveConfig.d.ts.map +1 -1
- package/dist/src/services/internal/actors/saveConfig.js +16 -5
- package/dist/src/services/internal/actors/saveConfig.js.map +1 -1
- package/dist/src/services/internal/actors/validateInput.d.ts +2 -9
- package/dist/src/services/internal/actors/validateInput.d.ts.map +1 -1
- package/dist/src/services/internal/actors/validateInput.js +1 -4
- package/dist/src/services/internal/actors/validateInput.js.map +1 -1
- package/dist/src/services/internal/internalMachine.d.ts +3 -33
- package/dist/src/services/internal/internalMachine.d.ts.map +1 -1
- package/dist/src/services/internal/internalMachine.js +5 -9
- package/dist/src/services/internal/internalMachine.js.map +1 -1
- package/dist/src/services/publish/actors/preparePublishRequestData.js +3 -4
- package/dist/src/services/publish/actors/preparePublishRequestData.js.map +1 -1
- package/dist/src/types/fileManager.d.ts +0 -13
- package/dist/src/types/fileManager.d.ts.map +1 -1
- package/dist/src/types/item.d.ts +8 -9
- package/dist/src/types/item.d.ts.map +1 -1
- package/dist/src/types/machines.d.ts.map +1 -1
- package/package.json +3 -12
- package/dist/addModel.js +0 -93
- package/dist/addModel.js.map +0 -1
- package/dist/protos/seed.proto +0 -97
- package/dist/rpcServer.js +0 -399
- package/dist/rpcServer.js.map +0 -1
- package/dist/scripts/addModel.d.ts +0 -3
- package/dist/scripts/addModel.d.ts.map +0 -1
- package/dist/scripts/rpcServer.cursor.d.ts +0 -2
- package/dist/scripts/rpcServer.cursor.d.ts.map +0 -1
- package/dist/scripts/rpcServer.d.ts +0 -9
- package/dist/scripts/rpcServer.d.ts.map +0 -1
- package/dist/scripts/vite.config.d.ts +0 -3
- package/dist/scripts/vite.config.d.ts.map +0 -1
- package/dist/src/node/Item/Item.js +0 -11
- package/dist/src/node/Item/Item.js.map +0 -1
- package/dist/src/node/ItemProperty/ItemProperty.js +0 -10
- package/dist/src/node/ItemProperty/ItemProperty.js.map +0 -1
- package/dist/src/node/db/Db.js +0 -72
- package/dist/src/node/db/Db.js.map +0 -1
- package/dist/src/node/helpers/FileManager.js +0 -67
- package/dist/src/node/helpers/FileManager.js.map +0 -1
- package/dist/src/seedSchema/PropertyUidSchema.js +0 -18
- package/dist/src/seedSchema/PropertyUidSchema.js.map +0 -1
package/dist/protos/seed.proto
DELETED
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
syntax = "proto3";
|
|
2
|
-
|
|
3
|
-
package seed;
|
|
4
|
-
|
|
5
|
-
// Main service definition
|
|
6
|
-
service SeedService {
|
|
7
|
-
// Model operations
|
|
8
|
-
rpc GetModels (Empty) returns (ModelsResponse);
|
|
9
|
-
rpc GetModel (ModelRequest) returns (ModelResponse);
|
|
10
|
-
|
|
11
|
-
// Item operations
|
|
12
|
-
rpc CreateItem (CreateItemRequest) returns (ItemResponse);
|
|
13
|
-
rpc GetItem (ItemRequest) returns (ItemResponse);
|
|
14
|
-
rpc UpdateItem (UpdateItemRequest) returns (ItemResponse);
|
|
15
|
-
rpc DeleteItem (ItemRequest) returns (StatusResponse);
|
|
16
|
-
rpc PublishItem (ItemRequest) returns (StatusResponse);
|
|
17
|
-
|
|
18
|
-
// Query operations
|
|
19
|
-
rpc QueryItems (QueryRequest) returns (ItemsResponse);
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
// Empty message for requests that don't need parameters
|
|
23
|
-
message Empty {}
|
|
24
|
-
|
|
25
|
-
// Request to get a specific model
|
|
26
|
-
message ModelRequest {
|
|
27
|
-
string modelName = 1;
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
// Response containing all available models
|
|
31
|
-
message ModelsResponse {
|
|
32
|
-
repeated ModelDefinition models = 1;
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
// Response containing a single model definition
|
|
36
|
-
message ModelResponse {
|
|
37
|
-
ModelDefinition model = 1;
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
// Model definition with properties
|
|
41
|
-
message ModelDefinition {
|
|
42
|
-
string name = 1;
|
|
43
|
-
repeated PropertyDefinition properties = 2;
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
// Property definition for a model
|
|
47
|
-
message PropertyDefinition {
|
|
48
|
-
string name = 1;
|
|
49
|
-
string type = 2;
|
|
50
|
-
string relation_model = 3; // If property is a relation, the model it relates to
|
|
51
|
-
bool is_list = 4; // If property is a list of items
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
// Request to create a new item
|
|
55
|
-
message CreateItemRequest {
|
|
56
|
-
string modelName = 1;
|
|
57
|
-
map<string, string> properties = 2;
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
// Request to get a specific item
|
|
61
|
-
message ItemRequest {
|
|
62
|
-
string id = 1;
|
|
63
|
-
string modelName = 2;
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
// Request to update an existing item
|
|
67
|
-
message UpdateItemRequest {
|
|
68
|
-
string id = 1;
|
|
69
|
-
string modelName = 2;
|
|
70
|
-
map<string, string> properties = 3;
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
// Response containing an item
|
|
74
|
-
message ItemResponse {
|
|
75
|
-
string id = 1;
|
|
76
|
-
string modelName = 2;
|
|
77
|
-
map<string, string> properties = 3;
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
// Response containing multiple items
|
|
81
|
-
message ItemsResponse {
|
|
82
|
-
repeated ItemResponse items = 1;
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
// Query request to filter items
|
|
86
|
-
message QueryRequest {
|
|
87
|
-
string modelName = 1;
|
|
88
|
-
map<string, string> filters = 2;
|
|
89
|
-
int32 limit = 3;
|
|
90
|
-
int32 offset = 4;
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
// Simple status response
|
|
94
|
-
message StatusResponse {
|
|
95
|
-
bool success = 1;
|
|
96
|
-
string message = 2;
|
|
97
|
-
}
|
package/dist/rpcServer.js
DELETED
|
@@ -1,399 +0,0 @@
|
|
|
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
|
package/dist/rpcServer.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
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 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"addModel.d.ts","sourceRoot":"","sources":["../../scripts/addModel.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rpcServer.cursor.d.ts","sourceRoot":"","sources":["../../scripts/rpcServer.cursor.ts"],"names":[],"mappings":""}
|
|
@@ -1,9 +0,0 @@
|
|
|
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
|
|
@@ -1 +0,0 @@
|
|
|
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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"vite.config.d.ts","sourceRoot":"","sources":["../../scripts/vite.config.ts"],"names":[],"mappings":";AAGA,wBAaE"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Item.js","sources":["../../../../../src/node/Item/Item.ts"],"sourcesContent":["import { IItem } from '@/interfaces';\nimport { BaseItem } from '@/Item/BaseItem';\nimport { ModelSchema, ModelValues, NewItemProps } from '@/types';\n\nexport class Item<T extends ModelValues<ModelSchema>> extends BaseItem<T> implements IItem<T> {\n constructor(initialValues: NewItemProps<T>) {\n super(initialValues);\n }\n\n}\n\nBaseItem.setPlatformClass(Item)"],"names":[],"mappings":";;AAIM,MAAO,IAAyC,SAAQ,QAAW,CAAA;AACvE,IAAA,WAAA,CAAY,aAA8B,EAAA;QACxC,KAAK,CAAC,aAAa,CAAC;;AAGvB;AAED,QAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAC;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ItemProperty.js","sources":["../../../../../src/node/ItemProperty/ItemProperty.ts"],"sourcesContent":["import { IItemProperty } from '@/interfaces'\nimport { BaseItemProperty } from '@/ItemProperty/BaseItemProperty'\nimport { CreatePropertyInstanceProps, ModelSchema, ModelValues, } from '@/types'\n\nexport class ItemProperty<PropertyType> extends BaseItemProperty<PropertyType> implements IItemProperty<PropertyType> {\n constructor(initialValues: Partial<CreatePropertyInstanceProps>) {\n super(initialValues)\n }\n}"],"names":[],"mappings":";;AAIM,MAAO,YAA2B,SAAQ,gBAA8B,CAAA;AAC5E,IAAA,WAAA,CAAY,aAAmD,EAAA;QAC7D,KAAK,CAAC,aAAa,CAAC;;AAEvB;;;;"}
|