@seedprotocol/sdk 0.1.126 → 0.1.128

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 CHANGED
@@ -22,7 +22,7 @@ import 'thirdweb';
22
22
  const NODE_APP_DB_CONFIG = 'node.app.db.config.ts';
23
23
  const currentDir = path.dirname(new URL(import.meta.url).pathname);
24
24
  const parentToCheck = path.join(currentDir, '..');
25
- let rootWithNodeModules = path.join(currentDir, '..', '..', '..', '..');
25
+ let rootWithNodeModules = path.join(currentDir, '..', '..', '..');
26
26
  if (process.env.IS_SEED_DEV) {
27
27
  rootWithNodeModules = path.join(parentToCheck, '..');
28
28
  }
package/dist/bin.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"bin.js","sources":["../../src/node/constants.ts","../../src/node/helpers/index.ts","../../src/node/codegen/drizzle.ts","../../scripts/bin.ts"],"sourcesContent":["import path from 'path'\nimport 'dotenv/config'\n\nexport const NODE_APP_DB_CONFIG = 'node.app.db.config.ts'\n\nconst currentDir = path.dirname(new URL(import.meta.url).pathname)\n\nconst parentToCheck = path.join(currentDir, '..')\n\nlet rootWithNodeModules = path.join(currentDir, '..', '..', '..', '..')\n\nif (process.env.IS_SEED_DEV) {\n rootWithNodeModules = path.join(parentToCheck, '..')\n}\n\nlet sdkRootDir = path.join(\n rootWithNodeModules,\n 'node_modules',\n '@seedprotocol',\n 'sdk',\n 'dist',\n)\n\nif (process.env.IS_SEED_DEV) {\n sdkRootDir = path.join(rootWithNodeModules, 'src')\n}\n\nlet dotSeedDir = path.join(rootWithNodeModules, '.seed')\n\nif (process.env.IS_SEED_DEV) {\n dotSeedDir = path.join(\n process.cwd(),\n '__tests__',\n '__mocks__',\n 'project',\n '.seed',\n )\n}\n\nexport const drizzleKitPath = path.join(\n rootWithNodeModules,\n 'node_modules',\n 'drizzle-kit',\n 'bin.cjs',\n)\n\n// App file paths. These are the single source of truth for the SDK user's data model\nexport const appSchemaDir = path.join(dotSeedDir, 'schema')\nexport const appDbDir = path.join(dotSeedDir, 'db')\nexport const appMetaDir = path.join(appDbDir, 'meta')\nexport const appGeneratedSchemaDir = path.join(dotSeedDir, 'schema')\n\nexport const drizzleDbConfigPath = path.join(\n sdkRootDir,\n 'node',\n 'db',\n NODE_APP_DB_CONFIG,\n)\n\nexport const templatePath = path.join(\n sdkRootDir,\n 'node',\n 'codegen',\n 'templates',\n)\n\nexport { rootWithNodeModules, sdkRootDir, dotSeedDir }\n","// import { customAlphabet } from 'nanoid'\n// import { alphanumeric } from 'nanoid-dictionary'\nimport fs from 'fs'\nimport * as tsImport from 'ts-import'\nimport { LoadMode } from 'ts-import'\nimport path from 'path'\nimport { glob } from 'glob'\nimport { rimraf } from 'rimraf'\nimport debug from 'debug'\n\nconst logger = debug('app:helpers')\n\nexport const getTsImport = async <T>(filePath: string): Promise<T> => {\n // Check if the config file exists\n if (!fs.existsSync(filePath)) {\n logger(`Typescript file not found at ${filePath}`)\n throw new Error(`Typescript file not found at ${filePath}`)\n }\n\n return await tsImport.load(filePath, {\n mode: LoadMode.Compile,\n compileOptions: {\n compilerOptions: {\n experimentalDecorators: true,\n emitDecoratorMetadata: true,\n },\n },\n })\n}\n\nexport const deleteFilesWithExtension = async (\n dir: string,\n extension: string,\n) => {\n const pattern = path.join(dir, `**/*${extension}`)\n glob(pattern, (err, files) => {\n if (err) {\n logger('Error finding files:', err)\n return\n }\n\n for (const file of files) {\n // TODO: Change this whole thing to be async?\n rimraf(file, (err) => {\n if (err) {\n logger('Error deleting file:', err)\n } else {\n logger(`Deleted: ${file}`)\n }\n })\n }\n })\n}\n","import path from 'path'\nimport fs from 'fs'\nimport pluralize from 'pluralize'\nimport { camelCase, snakeCase } from 'lodash-es'\nimport * as nunjucks from 'nunjucks'\nimport { ILoader } from 'nunjucks'\nimport { ModelClassType } from '@/types'\nimport { SCHEMA_NJK } from '@/shared/helpers/constants'\nimport {\n appGeneratedSchemaDir,\n dotSeedDir,\n templatePath,\n} from '@/node/constants'\nimport { getTsImport } from '@/node/helpers'\n\nconst TemplateLoader: ILoader = {\n getSource: (name: string) => {\n let templateFilePath\n if (name.includes(templatePath)) {\n templateFilePath = name\n } else {\n templateFilePath = path.join(templatePath, path.basename(name))\n }\n const src = fs.readFileSync(templateFilePath, 'utf-8')\n\n return {\n path: name,\n src,\n noCache: false,\n }\n },\n}\n\n// Configure Nunjucks\nconst env = new nunjucks.Environment(TemplateLoader)\n\nenv.addFilter('camelCase', camelCase)\nenv.addFilter('snakeCase', snakeCase)\nenv.addFilter('pluralize', pluralize)\n\nconst generateDrizzleSchemaCode = (\n modelName: string,\n modelClass: ModelClassType,\n): string => {\n const listProperties = Object.entries(modelClass.schema).filter(\n ([key, propertyDef]) => propertyDef?.dataType === 'List',\n )\n\n const filePath = path.join(templatePath, SCHEMA_NJK)\n\n const schemaCode = env.render(filePath, {\n modelName,\n modelClass,\n listProperties,\n })\n\n return schemaCode\n}\n\nexport const createDrizzleSchemaFilesFromConfig = async () => {\n const schemaFilePath = path.join(dotSeedDir, 'schema.ts') // Developer created file with model definitions\n\n const { models } = await getTsImport<{\n models: Record<string, ModelClassType>\n }>(schemaFilePath)\n\n for (const [modelName, modelClass] of Object.entries(models)) {\n const code = generateDrizzleSchemaCode(modelName, modelClass)\n\n if (!fs.existsSync(appGeneratedSchemaDir)) {\n fs.mkdirSync(appGeneratedSchemaDir)\n }\n\n const filePath = path.join(appGeneratedSchemaDir, `${modelName}Schema.ts`)\n\n await fs.promises.writeFile(filePath, code).catch((e) => console.error(e))\n }\n}\n","#!/usr/bin/env node\nimport path from 'path'\nimport fs from 'fs'\nimport { exec as execSync } from 'child_process'\nimport { promisify } from 'util'\nimport { pathToFileURL } from 'url'\nimport process from 'node:process'\nimport { SCHEMA_TS } from '@/shared/helpers/constants'\nimport {\n appMetaDir,\n appSchemaDir,\n dotSeedDir,\n drizzleDbConfigPath,\n drizzleKitPath,\n rootWithNodeModules,\n sdkRootDir,\n} from '@/node/constants'\nimport { createDrizzleSchemaFilesFromConfig } from '@/node/codegen'\nimport { rimrafSync } from 'rimraf'\n\nconst exec = promisify(execSync)\n\nlet a\n\na = process.argv.splice(2)\n\nconst init = (args: string[]) => {\n console.log('args:', args)\n\n if (args && args.length && args[0] === 'init') {\n console.log('[Seed Protocol] Running init script')\n\n let appFilesDirPath = args[2] || undefined\n\n let schemaFileDir = args[1] || rootWithNodeModules\n const schemaFilePath = path.join(schemaFileDir, SCHEMA_TS)\n\n // Remove dotSeedDir to start fresh each time\n if (fs.existsSync(dotSeedDir)) {\n fs.rmSync(dotSeedDir, { recursive: true })\n }\n\n const drizzleKitCommand = `npx --yes tsx ${drizzleKitPath}`\n\n const ensureIndexExports = (dirPath: string): void => {\n try {\n // Get all file names in the directory\n const files = fs.readdirSync(dirPath)\n\n // Filter for .ts files excluding index.ts\n const tsFiles = files.filter(\n (file) => file.endsWith('.ts') && file !== 'index.ts',\n )\n\n // Check if index.ts exists\n const indexFilePath = path.join(dirPath, 'index.ts')\n try {\n fs.accessSync(indexFilePath)\n } catch (error) {\n console.error(`index.ts not found in the directory: ${dirPath}`)\n return\n }\n\n // Read the content of index.ts\n const indexContent = fs.readFileSync(indexFilePath, 'utf8')\n\n // Create export statements for each .ts file\n const exportStatements = tsFiles.map(\n (file) => `export * from './${path.basename(file, '.ts')}';`,\n )\n\n // Check if each export statement is already present in index.ts\n const missingExports = exportStatements.filter(\n (statement) => !indexContent.includes(statement),\n )\n\n if (missingExports.length > 0) {\n // Append missing export statements to index.ts\n const newContent =\n indexContent + '\\n' + missingExports.join('\\n') + '\\n'\n fs.writeFileSync(indexFilePath, newContent, 'utf8')\n console.log(\n `Updated index.ts with missing exports:\\n${missingExports.join('\\n')}`,\n )\n } else {\n console.log('All exports are already present in index.ts')\n }\n } catch (error) {\n console.error(`Error processing directory: ${dirPath}`, error)\n }\n }\n\n const copyFiles = (srcDir, destDir) => {\n if (!fs.existsSync(destDir)) {\n fs.mkdirSync(destDir, { recursive: true })\n }\n const srcFiles = fs.readdirSync(srcDir)\n srcFiles.forEach((file) => {\n console.log(`Copying ${srcDir}/${file} to ${destDir}/${file}`)\n fs.copyFileSync(path.join(srcDir, file), path.join(destDir, file))\n })\n }\n\n const copyDotSeedFilesToAppFiles = async (_appFilesDirPath: string) => {\n console.log('[Seed Protocol] Copying dot seed files to app files')\n return new Promise<void>((resolve) => {\n fs.promises.rm(_appFilesDirPath, { recursive: true }).then(() => {\n console.log(`[Seed Protocol] Removed old app files`)\n console.log(`[Seed Protocol] making dir at ${_appFilesDirPath}`)\n fs.mkdirSync(_appFilesDirPath, { recursive: true })\n console.log('[Seed Protocol] copying app files')\n fs.cpSync(dotSeedDir, _appFilesDirPath, { recursive: true })\n console.log(\n '[Seed Protocol] removing sqlite3 files and index.ts files',\n )\n rimrafSync(`${_appFilesDirPath}/**/*.sqlite3`, {\n glob: true,\n })\n rimrafSync(`${_appFilesDirPath}/**/index.ts`, {\n glob: true,\n })\n resolve()\n })\n })\n }\n\n const runCommand = async (command: string) => {\n const { stdout, stderr } = await exec(command)\n if (stderr) {\n console.error(stderr)\n return\n }\n console.log(stdout)\n }\n\n const updateSchema = async (pathToConfig: string, pathToMeta: string) => {\n if (!fs.existsSync(pathToMeta)) {\n await runCommand(\n `${drizzleKitCommand} generate --config=${pathToConfig}`,\n )\n }\n await runCommand(`${drizzleKitCommand} migrate --config=${pathToConfig}`)\n }\n\n const runCommands = async () => {\n await createDrizzleSchemaFilesFromConfig()\n ensureIndexExports(appSchemaDir)\n await updateSchema(drizzleDbConfigPath, appMetaDir)\n }\n\n copyFiles(\n path.join(sdkRootDir, 'shared', 'seedSchema'),\n path.join(dotSeedDir, 'schema'),\n )\n\n fs.copyFileSync(schemaFilePath, path.join(dotSeedDir, 'schema.ts'))\n\n runCommands()\n .then(() => {\n if (!appFilesDirPath) {\n console.log('[Seed Protocol] Finished running init script')\n } else {\n return copyDotSeedFilesToAppFiles(appFilesDirPath)\n }\n })\n .then(() => {\n console.log('[Seed Protocol] Finished running init script')\n })\n }\n}\n\nconst calledFrom = pathToFileURL(process.argv[1]).href\n\nconsole.log('calledFrom:', calledFrom)\n\nif (\n calledFrom.endsWith('node_modules/.bin/seed') ||\n import.meta.url.endsWith('@seedprotocol/sdk/node/bin.js') ||\n import.meta.url.endsWith('scripts/bin.ts')\n) {\n // module was not imported but called directly\n init(a)\n}\n\nexport { init }\n"],"names":["execSync","process"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAGO,MAAM,kBAAkB,GAAG,uBAAuB;AAEzD,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC;AAElE,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC;AAEjD,IAAI,mBAAmB,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;AAEvE,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE;IAC3B,mBAAmB,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC;AACtD;AAEA,IAAI,UAAU,GAAG,IAAI,CAAC,IAAI,CACxB,mBAAmB,EACnB,cAAc,EACd,eAAe,EACf,KAAK,EACL,MAAM,CACP;AAED,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE;IAC3B,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,KAAK,CAAC;AACpD;AAEA,IAAI,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,OAAO,CAAC;AAExD,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE;AAC3B,IAAA,UAAU,GAAG,IAAI,CAAC,IAAI,CACpB,OAAO,CAAC,GAAG,EAAE,EACb,WAAW,EACX,WAAW,EACX,SAAS,EACT,OAAO,CACR;AACH;AAEO,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CACrC,mBAAmB,EACnB,cAAc,EACd,aAAa,EACb,SAAS,CACV;AAED;AACO,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC;AACpD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC;AAC5C,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC;AAC9C,MAAM,qBAAqB,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC;AAE7D,MAAM,mBAAmB,GAAG,IAAI,CAAC,IAAI,CAC1C,UAAU,EACV,MAAM,EACN,IAAI,EACJ,kBAAkB,CACnB;AAEM,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CACnC,UAAU,EACV,MAAM,EACN,SAAS,EACT,WAAW,CACZ;;ACtDD,MAAM,MAAM,GAAG,KAAK,CAAC,aAAa,CAAC;AAE5B,MAAM,WAAW,GAAG,CAAU,QAAgB,KAAgB,SAAA,CAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,aAAA;;IAEnE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;AAC5B,QAAA,MAAM,CAAC,CAAA,6BAAA,EAAgC,QAAQ,CAAA,CAAE,CAAC;AAClD,QAAA,MAAM,IAAI,KAAK,CAAC,gCAAgC,QAAQ,CAAA,CAAE,CAAC;;AAG7D,IAAA,OAAO,MAAM,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE;QACnC,IAAI,EAAE,QAAQ,CAAC,OAAO;AACtB,QAAA,cAAc,EAAE;AACd,YAAA,eAAe,EAAE;AACf,gBAAA,sBAAsB,EAAE,IAAI;AAC5B,gBAAA,qBAAqB,EAAE,IAAI;AAC5B,aAAA;AACF,SAAA;AACF,KAAA,CAAC;AACJ,CAAC,CAAA;;ACbD,MAAM,cAAc,GAAY;AAC9B,IAAA,SAAS,EAAE,CAAC,IAAY,KAAI;AAC1B,QAAA,IAAI,gBAAgB;AACpB,QAAA,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE;YAC/B,gBAAgB,GAAG,IAAI;;aAClB;AACL,YAAA,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;;QAEjE,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,gBAAgB,EAAE,OAAO,CAAC;QAEtD,OAAO;AACL,YAAA,IAAI,EAAE,IAAI;YACV,GAAG;AACH,YAAA,OAAO,EAAE,KAAK;SACf;KACF;CACF;AAED;AACA,MAAM,GAAG,GAAG,IAAI,QAAQ,CAAC,WAAW,CAAC,cAAc,CAAC;AAEpD,GAAG,CAAC,SAAS,CAAC,WAAW,EAAE,SAAS,CAAC;AACrC,GAAG,CAAC,SAAS,CAAC,WAAW,EAAE,SAAS,CAAC;AACrC,GAAG,CAAC,SAAS,CAAC,WAAW,EAAE,SAAS,CAAC;AAErC,MAAM,yBAAyB,GAAG,CAChC,SAAiB,EACjB,UAA0B,KAChB;AACV,IAAA,MAAM,cAAc,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,MAAM,CAC7D,CAAC,CAAC,GAAG,EAAE,WAAW,CAAC,KAAK,CAAA,WAAW,KAAA,IAAA,IAAX,WAAW,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAX,WAAW,CAAE,QAAQ,MAAK,MAAM,CACzD;IAED,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,UAAU,CAAC;AAEpD,IAAA,MAAM,UAAU,GAAG,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE;QACtC,SAAS;QACT,UAAU;QACV,cAAc;AACf,KAAA,CAAC;AAEF,IAAA,OAAO,UAAU;AACnB,CAAC;AAEM,MAAM,kCAAkC,GAAG,MAAW,SAAA,CAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,aAAA;AAC3D,IAAA,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAA;IAEzD,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,WAAW,CAEjC,cAAc,CAAC;AAElB,IAAA,KAAK,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;QAC5D,MAAM,IAAI,GAAG,yBAAyB,CAAC,SAAS,EAAE,UAAU,CAAC;QAE7D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,qBAAqB,CAAC,EAAE;AACzC,YAAA,EAAE,CAAC,SAAS,CAAC,qBAAqB,CAAC;;AAGrC,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAG,EAAA,SAAS,CAAW,SAAA,CAAA,CAAC;QAE1E,MAAM,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;;AAE9E,CAAC,CAAA;;ACzDD,MAAM,IAAI,GAAG,SAAS,CAACA,MAAQ,CAAC;AAEhC,IAAI,CAAC;AAEL,CAAC,GAAGC,SAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;AAE1B,MAAM,IAAI,GAAG,CAAC,IAAc,KAAI;AAC9B,IAAA,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC;AAE1B,IAAA,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM,EAAE;AAC7C,QAAA,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC;QAElD,IAAI,eAAe,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,SAAS;QAE1C,IAAI,aAAa,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,mBAAmB;QAClD,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,CAAC;;AAG1D,QAAA,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE;YAC7B,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;;AAG5C,QAAA,MAAM,iBAAiB,GAAG,CAAiB,cAAA,EAAA,cAAc,EAAE;AAE3D,QAAA,MAAM,kBAAkB,GAAG,CAAC,OAAe,KAAU;AACnD,YAAA,IAAI;;gBAEF,MAAM,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC;;gBAGrC,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAC1B,CAAC,IAAI,KAAK,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,KAAK,UAAU,CACtD;;gBAGD,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC;AACpD,gBAAA,IAAI;AACF,oBAAA,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC;;gBAC5B,OAAO,KAAK,EAAE;AACd,oBAAA,OAAO,CAAC,KAAK,CAAC,wCAAwC,OAAO,CAAA,CAAE,CAAC;oBAChE;;;gBAIF,MAAM,YAAY,GAAG,EAAE,CAAC,YAAY,CAAC,aAAa,EAAE,MAAM,CAAC;;gBAG3D,MAAM,gBAAgB,GAAG,OAAO,CAAC,GAAG,CAClC,CAAC,IAAI,KAAK,oBAAoB,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,CAAI,EAAA,CAAA,CAC7D;;AAGD,gBAAA,MAAM,cAAc,GAAG,gBAAgB,CAAC,MAAM,CAC5C,CAAC,SAAS,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,CACjD;AAED,gBAAA,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE;;AAE7B,oBAAA,MAAM,UAAU,GACd,YAAY,GAAG,IAAI,GAAG,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI;oBACxD,EAAE,CAAC,aAAa,CAAC,aAAa,EAAE,UAAU,EAAE,MAAM,CAAC;AACnD,oBAAA,OAAO,CAAC,GAAG,CACT,CAAA,wCAAA,EAA2C,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAE,CAAA,CACvE;;qBACI;AACL,oBAAA,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC;;;YAE5D,OAAO,KAAK,EAAE;gBACd,OAAO,CAAC,KAAK,CAAC,CAAA,4BAAA,EAA+B,OAAO,CAAE,CAAA,EAAE,KAAK,CAAC;;AAElE,SAAC;AAED,QAAA,MAAM,SAAS,GAAG,CAAC,MAAM,EAAE,OAAO,KAAI;YACpC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;gBAC3B,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;;YAE5C,MAAM,QAAQ,GAAG,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC;AACvC,YAAA,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,KAAI;AACxB,gBAAA,OAAO,CAAC,GAAG,CAAC,CAAA,QAAA,EAAW,MAAM,CAAA,CAAA,EAAI,IAAI,CAAA,IAAA,EAAO,OAAO,CAAA,CAAA,EAAI,IAAI,CAAA,CAAE,CAAC;gBAC9D,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;AACpE,aAAC,CAAC;AACJ,SAAC;AAED,QAAA,MAAM,0BAA0B,GAAG,CAAO,gBAAwB,KAAI,SAAA,CAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,aAAA;AACpE,YAAA,OAAO,CAAC,GAAG,CAAC,qDAAqD,CAAC;AAClE,YAAA,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,KAAI;AACnC,gBAAA,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,gBAAgB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,MAAK;AAC9D,oBAAA,OAAO,CAAC,GAAG,CAAC,CAAA,qCAAA,CAAuC,CAAC;AACpD,oBAAA,OAAO,CAAC,GAAG,CAAC,iCAAiC,gBAAgB,CAAA,CAAE,CAAC;oBAChE,EAAE,CAAC,SAAS,CAAC,gBAAgB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;AACnD,oBAAA,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC;AAChD,oBAAA,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,gBAAgB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;AAC5D,oBAAA,OAAO,CAAC,GAAG,CACT,2DAA2D,CAC5D;AACD,oBAAA,UAAU,CAAC,CAAA,EAAG,gBAAgB,CAAA,aAAA,CAAe,EAAE;AAC7C,wBAAA,IAAI,EAAE,IAAI;AACX,qBAAA,CAAC;AACF,oBAAA,UAAU,CAAC,CAAA,EAAG,gBAAgB,CAAA,YAAA,CAAc,EAAE;AAC5C,wBAAA,IAAI,EAAE,IAAI;AACX,qBAAA,CAAC;AACF,oBAAA,OAAO,EAAE;AACX,iBAAC,CAAC;AACJ,aAAC,CAAC;AACJ,SAAC,CAAA;AAED,QAAA,MAAM,UAAU,GAAG,CAAO,OAAe,KAAI,SAAA,CAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,aAAA;YAC3C,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC;YAC9C,IAAI,MAAM,EAAE;AACV,gBAAA,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;gBACrB;;AAEF,YAAA,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC;AACrB,SAAC,CAAA;AAED,QAAA,MAAM,YAAY,GAAG,CAAO,YAAoB,EAAE,UAAkB,KAAI,SAAA,CAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,aAAA;YACtE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE;gBAC9B,MAAM,UAAU,CACd,CAAG,EAAA,iBAAiB,sBAAsB,YAAY,CAAA,CAAE,CACzD;;YAEH,MAAM,UAAU,CAAC,CAAG,EAAA,iBAAiB,qBAAqB,YAAY,CAAA,CAAE,CAAC;AAC3E,SAAC,CAAA;QAED,MAAM,WAAW,GAAG,MAAW,SAAA,CAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,aAAA;YAC7B,MAAM,kCAAkC,EAAE;YAC1C,kBAAkB,CAAC,YAAY,CAAC;AAChC,YAAA,MAAM,YAAY,CAAC,mBAAmB,EAAE,UAAU,CAAC;AACrD,SAAC,CAAA;QAED,SAAS,CACP,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,EAAE,YAAY,CAAC,EAC7C,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,CAChC;AAED,QAAA,EAAE,CAAC,YAAY,CAAC,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;AAEnE,QAAA,WAAW;aACR,IAAI,CAAC,MAAK;YACT,IAAI,CAAC,eAAe,EAAE;AACpB,gBAAA,OAAO,CAAC,GAAG,CAAC,8CAA8C,CAAC;;iBACtD;AACL,gBAAA,OAAO,0BAA0B,CAAC,eAAe,CAAC;;AAEtD,SAAC;aACA,IAAI,CAAC,MAAK;AACT,YAAA,OAAO,CAAC,GAAG,CAAC,8CAA8C,CAAC;AAC7D,SAAC,CAAC;;AAER;AAEA,MAAM,UAAU,GAAG,aAAa,CAACA,SAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;AAEtD,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,UAAU,CAAC;AAEtC,IACE,UAAU,CAAC,QAAQ,CAAC,wBAAwB,CAAC;IAC7C,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,+BAA+B,CAAC;IACzD,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAC1C;;IAEA,IAAI,CAAC,CAAC,CAAC;AACT;;;;"}
1
+ {"version":3,"file":"bin.js","sources":["../../src/node/constants.ts","../../src/node/helpers/index.ts","../../src/node/codegen/drizzle.ts","../../scripts/bin.ts"],"sourcesContent":["import path from 'path'\nimport 'dotenv/config'\n\nexport const NODE_APP_DB_CONFIG = 'node.app.db.config.ts'\n\nconst currentDir = path.dirname(new URL(import.meta.url).pathname)\n\nconst parentToCheck = path.join(currentDir, '..')\n\nlet rootWithNodeModules = path.join(currentDir, '..', '..', '..')\n\nif (process.env.IS_SEED_DEV) {\n rootWithNodeModules = path.join(parentToCheck, '..')\n}\n\nlet sdkRootDir = path.join(\n rootWithNodeModules,\n 'node_modules',\n '@seedprotocol',\n 'sdk',\n 'dist',\n)\n\nif (process.env.IS_SEED_DEV) {\n sdkRootDir = path.join(rootWithNodeModules, 'src')\n}\n\nlet dotSeedDir = path.join(rootWithNodeModules, '.seed')\n\nif (process.env.IS_SEED_DEV) {\n dotSeedDir = path.join(\n process.cwd(),\n '__tests__',\n '__mocks__',\n 'project',\n '.seed',\n )\n}\n\nexport const drizzleKitPath = path.join(\n rootWithNodeModules,\n 'node_modules',\n 'drizzle-kit',\n 'bin.cjs',\n)\n\n// App file paths. These are the single source of truth for the SDK user's data model\nexport const appSchemaDir = path.join(dotSeedDir, 'schema')\nexport const appDbDir = path.join(dotSeedDir, 'db')\nexport const appMetaDir = path.join(appDbDir, 'meta')\nexport const appGeneratedSchemaDir = path.join(dotSeedDir, 'schema')\n\nexport const drizzleDbConfigPath = path.join(\n sdkRootDir,\n 'node',\n 'db',\n NODE_APP_DB_CONFIG,\n)\n\nexport const templatePath = path.join(\n sdkRootDir,\n 'node',\n 'codegen',\n 'templates',\n)\n\nexport { rootWithNodeModules, sdkRootDir, dotSeedDir }\n","// import { customAlphabet } from 'nanoid'\n// import { alphanumeric } from 'nanoid-dictionary'\nimport fs from 'fs'\nimport * as tsImport from 'ts-import'\nimport { LoadMode } from 'ts-import'\nimport path from 'path'\nimport { glob } from 'glob'\nimport { rimraf } from 'rimraf'\nimport debug from 'debug'\n\nconst logger = debug('app:helpers')\n\nexport const getTsImport = async <T>(filePath: string): Promise<T> => {\n // Check if the config file exists\n if (!fs.existsSync(filePath)) {\n logger(`Typescript file not found at ${filePath}`)\n throw new Error(`Typescript file not found at ${filePath}`)\n }\n\n return await tsImport.load(filePath, {\n mode: LoadMode.Compile,\n compileOptions: {\n compilerOptions: {\n experimentalDecorators: true,\n emitDecoratorMetadata: true,\n },\n },\n })\n}\n\nexport const deleteFilesWithExtension = async (\n dir: string,\n extension: string,\n) => {\n const pattern = path.join(dir, `**/*${extension}`)\n glob(pattern, (err, files) => {\n if (err) {\n logger('Error finding files:', err)\n return\n }\n\n for (const file of files) {\n // TODO: Change this whole thing to be async?\n rimraf(file, (err) => {\n if (err) {\n logger('Error deleting file:', err)\n } else {\n logger(`Deleted: ${file}`)\n }\n })\n }\n })\n}\n","import path from 'path'\nimport fs from 'fs'\nimport pluralize from 'pluralize'\nimport { camelCase, snakeCase } from 'lodash-es'\nimport * as nunjucks from 'nunjucks'\nimport { ILoader } from 'nunjucks'\nimport { ModelClassType } from '@/types'\nimport { SCHEMA_NJK } from '@/shared/helpers/constants'\nimport {\n appGeneratedSchemaDir,\n dotSeedDir,\n templatePath,\n} from '@/node/constants'\nimport { getTsImport } from '@/node/helpers'\n\nconst TemplateLoader: ILoader = {\n getSource: (name: string) => {\n let templateFilePath\n if (name.includes(templatePath)) {\n templateFilePath = name\n } else {\n templateFilePath = path.join(templatePath, path.basename(name))\n }\n const src = fs.readFileSync(templateFilePath, 'utf-8')\n\n return {\n path: name,\n src,\n noCache: false,\n }\n },\n}\n\n// Configure Nunjucks\nconst env = new nunjucks.Environment(TemplateLoader)\n\nenv.addFilter('camelCase', camelCase)\nenv.addFilter('snakeCase', snakeCase)\nenv.addFilter('pluralize', pluralize)\n\nconst generateDrizzleSchemaCode = (\n modelName: string,\n modelClass: ModelClassType,\n): string => {\n const listProperties = Object.entries(modelClass.schema).filter(\n ([key, propertyDef]) => propertyDef?.dataType === 'List',\n )\n\n const filePath = path.join(templatePath, SCHEMA_NJK)\n\n const schemaCode = env.render(filePath, {\n modelName,\n modelClass,\n listProperties,\n })\n\n return schemaCode\n}\n\nexport const createDrizzleSchemaFilesFromConfig = async () => {\n const schemaFilePath = path.join(dotSeedDir, 'schema.ts') // Developer created file with model definitions\n\n const { models } = await getTsImport<{\n models: Record<string, ModelClassType>\n }>(schemaFilePath)\n\n for (const [modelName, modelClass] of Object.entries(models)) {\n const code = generateDrizzleSchemaCode(modelName, modelClass)\n\n if (!fs.existsSync(appGeneratedSchemaDir)) {\n fs.mkdirSync(appGeneratedSchemaDir)\n }\n\n const filePath = path.join(appGeneratedSchemaDir, `${modelName}Schema.ts`)\n\n await fs.promises.writeFile(filePath, code).catch((e) => console.error(e))\n }\n}\n","#!/usr/bin/env node\nimport path from 'path'\nimport fs from 'fs'\nimport { exec as execSync } from 'child_process'\nimport { promisify } from 'util'\nimport { pathToFileURL } from 'url'\nimport process from 'node:process'\nimport { SCHEMA_TS } from '@/shared/helpers/constants'\nimport {\n appMetaDir,\n appSchemaDir,\n dotSeedDir,\n drizzleDbConfigPath,\n drizzleKitPath,\n rootWithNodeModules,\n sdkRootDir,\n} from '@/node/constants'\nimport { createDrizzleSchemaFilesFromConfig } from '@/node/codegen'\nimport { rimrafSync } from 'rimraf'\n\nconst exec = promisify(execSync)\n\nlet a\n\na = process.argv.splice(2)\n\nconst init = (args: string[]) => {\n console.log('args:', args)\n\n if (args && args.length && args[0] === 'init') {\n console.log('[Seed Protocol] Running init script')\n\n let appFilesDirPath = args[2] || undefined\n\n let schemaFileDir = args[1] || rootWithNodeModules\n const schemaFilePath = path.join(schemaFileDir, SCHEMA_TS)\n\n // Remove dotSeedDir to start fresh each time\n if (fs.existsSync(dotSeedDir)) {\n fs.rmSync(dotSeedDir, { recursive: true })\n }\n\n const drizzleKitCommand = `npx --yes tsx ${drizzleKitPath}`\n\n const ensureIndexExports = (dirPath: string): void => {\n try {\n // Get all file names in the directory\n const files = fs.readdirSync(dirPath)\n\n // Filter for .ts files excluding index.ts\n const tsFiles = files.filter(\n (file) => file.endsWith('.ts') && file !== 'index.ts',\n )\n\n // Check if index.ts exists\n const indexFilePath = path.join(dirPath, 'index.ts')\n try {\n fs.accessSync(indexFilePath)\n } catch (error) {\n console.error(`index.ts not found in the directory: ${dirPath}`)\n return\n }\n\n // Read the content of index.ts\n const indexContent = fs.readFileSync(indexFilePath, 'utf8')\n\n // Create export statements for each .ts file\n const exportStatements = tsFiles.map(\n (file) => `export * from './${path.basename(file, '.ts')}';`,\n )\n\n // Check if each export statement is already present in index.ts\n const missingExports = exportStatements.filter(\n (statement) => !indexContent.includes(statement),\n )\n\n if (missingExports.length > 0) {\n // Append missing export statements to index.ts\n const newContent =\n indexContent + '\\n' + missingExports.join('\\n') + '\\n'\n fs.writeFileSync(indexFilePath, newContent, 'utf8')\n console.log(\n `Updated index.ts with missing exports:\\n${missingExports.join('\\n')}`,\n )\n } else {\n console.log('All exports are already present in index.ts')\n }\n } catch (error) {\n console.error(`Error processing directory: ${dirPath}`, error)\n }\n }\n\n const copyFiles = (srcDir, destDir) => {\n if (!fs.existsSync(destDir)) {\n fs.mkdirSync(destDir, { recursive: true })\n }\n const srcFiles = fs.readdirSync(srcDir)\n srcFiles.forEach((file) => {\n console.log(`Copying ${srcDir}/${file} to ${destDir}/${file}`)\n fs.copyFileSync(path.join(srcDir, file), path.join(destDir, file))\n })\n }\n\n const copyDotSeedFilesToAppFiles = async (_appFilesDirPath: string) => {\n console.log('[Seed Protocol] Copying dot seed files to app files')\n return new Promise<void>((resolve) => {\n fs.promises.rm(_appFilesDirPath, { recursive: true }).then(() => {\n console.log(`[Seed Protocol] Removed old app files`)\n console.log(`[Seed Protocol] making dir at ${_appFilesDirPath}`)\n fs.mkdirSync(_appFilesDirPath, { recursive: true })\n console.log('[Seed Protocol] copying app files')\n fs.cpSync(dotSeedDir, _appFilesDirPath, { recursive: true })\n console.log(\n '[Seed Protocol] removing sqlite3 files and index.ts files',\n )\n rimrafSync(`${_appFilesDirPath}/**/*.sqlite3`, {\n glob: true,\n })\n rimrafSync(`${_appFilesDirPath}/**/index.ts`, {\n glob: true,\n })\n resolve()\n })\n })\n }\n\n const runCommand = async (command: string) => {\n const { stdout, stderr } = await exec(command)\n if (stderr) {\n console.error(stderr)\n return\n }\n console.log(stdout)\n }\n\n const updateSchema = async (pathToConfig: string, pathToMeta: string) => {\n if (!fs.existsSync(pathToMeta)) {\n await runCommand(\n `${drizzleKitCommand} generate --config=${pathToConfig}`,\n )\n }\n await runCommand(`${drizzleKitCommand} migrate --config=${pathToConfig}`)\n }\n\n const runCommands = async () => {\n await createDrizzleSchemaFilesFromConfig()\n ensureIndexExports(appSchemaDir)\n await updateSchema(drizzleDbConfigPath, appMetaDir)\n }\n\n copyFiles(\n path.join(sdkRootDir, 'shared', 'seedSchema'),\n path.join(dotSeedDir, 'schema'),\n )\n\n fs.copyFileSync(schemaFilePath, path.join(dotSeedDir, 'schema.ts'))\n\n runCommands()\n .then(() => {\n if (!appFilesDirPath) {\n console.log('[Seed Protocol] Finished running init script')\n } else {\n return copyDotSeedFilesToAppFiles(appFilesDirPath)\n }\n })\n .then(() => {\n console.log('[Seed Protocol] Finished running init script')\n })\n }\n}\n\nconst calledFrom = pathToFileURL(process.argv[1]).href\n\nconsole.log('calledFrom:', calledFrom)\n\nif (\n calledFrom.endsWith('node_modules/.bin/seed') ||\n import.meta.url.endsWith('@seedprotocol/sdk/node/bin.js') ||\n import.meta.url.endsWith('scripts/bin.ts')\n) {\n // module was not imported but called directly\n init(a)\n}\n\nexport { init }\n"],"names":["execSync","process"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- export { g as GET_ALL_PROPERTIES_FOR_ALL_VERSIONS, f as GET_PROPERTIES, G as GET_SCHEMAS, a as GET_SCHEMA_BY_NAME, b as GET_SEEDS, c as GET_SEED_IDS, d as GET_STORAGE_TRANSACTION_ID, e as GET_VERSIONS, I as Item, h as itemMachineAll, i as itemMachineSingle } from './index-DUt28tMW.js';
1
+ export { g as GET_ALL_PROPERTIES_FOR_ALL_VERSIONS, f as GET_PROPERTIES, G as GET_SCHEMAS, a as GET_SCHEMA_BY_NAME, b as GET_SEEDS, c as GET_SEED_IDS, d as GET_STORAGE_TRANSACTION_ID, e as GET_VERSIONS, I as Item, h as itemMachineAll, i as itemMachineSingle } from './index-CSWCwkb_.js';
2
2
  import 'tslib';
3
3
  import 'reflect-metadata';
4
4
  import '@sinclair/typebox';
@@ -33,4 +33,4 @@ import 'arweave';
33
33
  import './constants-B6s6tGup.js';
34
34
  import '@ethereum-attestation-service/eas-sdk';
35
35
  import 'thirdweb';
36
- //# sourceMappingURL=index-BcHvHPr-.js.map
36
+ //# sourceMappingURL=index-Bonkz33x.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-Bonkz33x.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -2114,7 +2114,7 @@ const addModelsToDb = fromCallback(({ sendBack, input: { context } }) => {
2114
2114
  if (!models$1) {
2115
2115
  return;
2116
2116
  }
2117
- const { models: SeedModels } = yield import('./seed.schema.config-CRyEhrSQ.js');
2117
+ const { models: SeedModels } = yield import('./seed.schema.config-CRQPn2Sv.js');
2118
2118
  const allModels = Object.assign(Object.assign({}, SeedModels), models$1);
2119
2119
  let hasModelsInDb = false;
2120
2120
  const schemaDefsByModelName = new Map();
@@ -5536,7 +5536,7 @@ const processRelationProperty = (relationProperty, multiPublishPayload, uploaded
5536
5536
  listOfAttestations: [],
5537
5537
  propertiesToUpdate: [
5538
5538
  {
5539
- publishLocalId: relationProperty.localId,
5539
+ publishLocalId: relationProperty.seedLocalId,
5540
5540
  propertySchemaUid: relationProperty.schemaUid,
5541
5541
  },
5542
5542
  ],
@@ -5586,7 +5586,7 @@ const processListProperty = (listProperty, uploadTransactions, multiPublishPaylo
5586
5586
  listOfAttestations: [],
5587
5587
  propertiesToUpdate: [
5588
5588
  {
5589
- publishLocalId: listProperty.localId,
5589
+ publishLocalId: listProperty.seedLocalId,
5590
5590
  propertySchemaUid: listProperty.schemaUid,
5591
5591
  },
5592
5592
  ],
@@ -6616,7 +6616,7 @@ const client = {
6616
6616
  addresses,
6617
6617
  arweaveDomain,
6618
6618
  });
6619
- import('./seed.schema.config-CRyEhrSQ.js').then(({ models }) => {
6619
+ import('./seed.schema.config-CRQPn2Sv.js').then(({ models }) => {
6620
6620
  for (const [key, value] of Object.entries(models)) {
6621
6621
  setModel(key, value);
6622
6622
  }
@@ -7296,7 +7296,7 @@ const hydrateFromDb = fromCallback(({ sendBack, input: { context } }) => {
7296
7296
  if (propertyRecordSchema &&
7297
7297
  propertyRecordSchema.storageType &&
7298
7298
  propertyRecordSchema.storageType === 'ItemStorage') {
7299
- const { Item } = yield import('./index-BcHvHPr-.js');
7299
+ const { Item } = yield import('./index-Bonkz33x.js');
7300
7300
  const item = yield Item.find({
7301
7301
  seedLocalId,
7302
7302
  modelName,
@@ -8253,4 +8253,4 @@ if (isNode()) {
8253
8253
  }
8254
8254
 
8255
8255
  export { GET_SCHEMAS as G, Item as I, Json as J, List as L, Model as M, Property as P, Relation as R, Text as T, GET_SCHEMA_BY_NAME as a, GET_SEEDS as b, GET_SEED_IDS as c, GET_STORAGE_TRANSACTION_ID as d, GET_VERSIONS as e, GET_PROPERTIES as f, GET_ALL_PROPERTIES_FOR_ALL_VERSIONS as g, itemMachineAll as h, itemMachineSingle as i, ImageSrc as j, ItemProperty as k, useItem as l, useItemProperties as m, useCreateItem as n, useItemProperty as o, useDeleteItem as p, useGlobalServiceStatus as q, useServices as r, getGlobalService as s, client as t, useItems as u, getCorrectId as v, withSeed as w };
8256
- //# sourceMappingURL=index-DUt28tMW.js.map
8256
+ //# sourceMappingURL=index-CSWCwkb_.js.map