@seedprotocol/sdk 0.3.8 → 0.3.10

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 (199) hide show
  1. package/dist/addModel.js +4 -0
  2. package/dist/addModel.js.map +1 -1
  3. package/dist/bin.js +182 -111
  4. package/dist/bin.js.map +1 -1
  5. package/dist/main.js +13 -1
  6. package/dist/main.js.map +1 -1
  7. package/dist/node/db/node.app.db.config.ts +7 -26
  8. package/dist/scripts/bin.d.ts +4 -4
  9. package/dist/scripts/bin.d.ts.map +1 -1
  10. package/dist/seedData.json +23 -0
  11. package/dist/src/Item/BaseItem.js +3 -3
  12. package/dist/src/Item/BaseItem.js.map +1 -1
  13. package/dist/src/ItemProperty/BaseItemProperty.d.ts +4 -1
  14. package/dist/src/ItemProperty/BaseItemProperty.d.ts.map +1 -1
  15. package/dist/src/ItemProperty/BaseItemProperty.js +65 -21
  16. package/dist/src/ItemProperty/BaseItemProperty.js.map +1 -1
  17. package/dist/src/ItemProperty/service/actors/hydrateFromDb.d.ts.map +1 -1
  18. package/dist/src/ItemProperty/service/actors/hydrateFromDb.js +27 -17
  19. package/dist/src/ItemProperty/service/actors/hydrateFromDb.js.map +1 -1
  20. package/dist/src/ItemProperty/service/actors/initialize.d.ts.map +1 -1
  21. package/dist/src/ItemProperty/service/actors/initialize.js +25 -20
  22. package/dist/src/ItemProperty/service/actors/initialize.js.map +1 -1
  23. package/dist/src/ItemProperty/service/actors/resolveRemoteStorage.d.ts.map +1 -1
  24. package/dist/src/ItemProperty/service/actors/resolveRemoteStorage.js +1 -1
  25. package/dist/src/ItemProperty/service/actors/resolveRemoteStorage.js.map +1 -1
  26. package/dist/src/ItemProperty/service/propertyMachine.d.ts +11 -11
  27. package/dist/src/browser/Item/Item.js +0 -1
  28. package/dist/src/browser/Item/Item.js.map +1 -1
  29. package/dist/src/browser/ItemProperty/ItemProperty.d.ts.map +1 -1
  30. package/dist/src/browser/ItemProperty/ItemProperty.js +0 -1
  31. package/dist/src/browser/ItemProperty/ItemProperty.js.map +1 -1
  32. package/dist/src/browser/db/Db.d.ts.map +1 -1
  33. package/dist/src/browser/db/Db.js +35 -10
  34. package/dist/src/browser/db/Db.js.map +1 -1
  35. package/dist/src/browser/helpers/FileManager.d.ts +3 -1
  36. package/dist/src/browser/helpers/FileManager.d.ts.map +1 -1
  37. package/dist/src/browser/helpers/FileManager.js +24 -12
  38. package/dist/src/browser/helpers/FileManager.js.map +1 -1
  39. package/dist/src/browser/helpers/eas.d.ts +20 -0
  40. package/dist/src/browser/helpers/eas.d.ts.map +1 -0
  41. package/dist/src/browser/helpers/eas.js +89 -0
  42. package/dist/src/browser/helpers/eas.js.map +1 -0
  43. package/dist/src/browser/index.d.ts +0 -1
  44. package/dist/src/browser/index.d.ts.map +1 -1
  45. package/dist/src/browser/react/SeedImage.d.ts +11 -0
  46. package/dist/src/browser/react/SeedImage.d.ts.map +1 -0
  47. package/dist/src/browser/react/SeedImage.js +105 -0
  48. package/dist/src/browser/react/SeedImage.js.map +1 -0
  49. package/dist/src/browser/react/index.d.ts +2 -1
  50. package/dist/src/browser/react/index.d.ts.map +1 -1
  51. package/dist/src/browser/react/item.d.ts +8 -8
  52. package/dist/src/browser/react/item.d.ts.map +1 -1
  53. package/dist/src/browser/react/item.js +9 -53
  54. package/dist/src/browser/react/item.js.map +1 -1
  55. package/dist/src/browser/react/model.d.ts +7 -0
  56. package/dist/src/browser/react/model.d.ts.map +1 -0
  57. package/dist/src/browser/react/model.js +20 -0
  58. package/dist/src/browser/react/model.js.map +1 -0
  59. package/dist/src/browser/react/property.d.ts +3 -3
  60. package/dist/src/browser/react/property.d.ts.map +1 -1
  61. package/dist/src/browser/react/property.js.map +1 -1
  62. package/dist/src/browser/react/services.d.ts.map +1 -1
  63. package/dist/src/browser/react/services.js +6 -1
  64. package/dist/src/browser/react/services.js.map +1 -1
  65. package/dist/src/browser/workers/FileDownloader.d.ts.map +1 -1
  66. package/dist/src/browser/workers/FileDownloader.js +4 -1
  67. package/dist/src/browser/workers/FileDownloader.js.map +1 -1
  68. package/dist/src/browser/workers/ImageResizer.d.ts.map +1 -1
  69. package/dist/src/browser/workers/ImageResizer.js +1 -0
  70. package/dist/src/browser/workers/ImageResizer.js.map +1 -1
  71. package/dist/src/browser/workers/filesDownload.d.ts.map +1 -1
  72. package/dist/src/browser/workers/filesDownload.js +4 -0
  73. package/dist/src/browser/workers/filesDownload.js.map +1 -1
  74. package/dist/src/browser/workers/imageResize.d.ts.map +1 -1
  75. package/dist/src/browser/workers/imageResize.js +4 -1
  76. package/dist/src/browser/workers/imageResize.js.map +1 -1
  77. package/dist/src/client/BaseClientManager.d.ts.map +1 -1
  78. package/dist/src/client/ClientManager.d.ts +184 -22
  79. package/dist/src/client/ClientManager.d.ts.map +1 -1
  80. package/dist/src/client/ClientManager.js +29 -0
  81. package/dist/src/client/ClientManager.js.map +1 -1
  82. package/dist/src/client/actors/initialize.d.ts +2 -2
  83. package/dist/src/client/actors/initialize.d.ts.map +1 -1
  84. package/dist/src/client/actors/initialize.js +9 -0
  85. package/dist/src/client/actors/initialize.js.map +1 -1
  86. package/dist/src/client/actors/saveAppState.js +3 -3
  87. package/dist/src/client/actors/saveAppState.js.map +1 -1
  88. package/dist/src/client/clientManagerMachine.d.ts +86 -10
  89. package/dist/src/client/clientManagerMachine.d.ts.map +1 -1
  90. package/dist/src/client/clientManagerMachine.js +3 -1
  91. package/dist/src/client/clientManagerMachine.js.map +1 -1
  92. package/dist/src/db/read/getModelSchemas.d.ts +1 -2
  93. package/dist/src/db/read/getModelSchemas.d.ts.map +1 -1
  94. package/dist/src/db/read/getModelSchemas.js +1 -21
  95. package/dist/src/db/read/getModelSchemas.js.map +1 -1
  96. package/dist/src/db/read/getModels.d.ts +5 -0
  97. package/dist/src/db/read/getModels.d.ts.map +1 -0
  98. package/dist/src/db/read/getModels.js +16 -0
  99. package/dist/src/db/read/getModels.js.map +1 -0
  100. package/dist/src/db/read/getPublishPayload.d.ts.map +1 -1
  101. package/dist/src/db/read/getPublishPayload.js +52 -14
  102. package/dist/src/db/read/getPublishPayload.js.map +1 -1
  103. package/dist/src/db/read/getPublishUploads.d.ts.map +1 -1
  104. package/dist/src/db/read/getPublishUploads.js +34 -3
  105. package/dist/src/db/read/getPublishUploads.js.map +1 -1
  106. package/dist/src/events/files/download.d.ts.map +1 -1
  107. package/dist/src/events/files/download.js +0 -1
  108. package/dist/src/events/files/download.js.map +1 -1
  109. package/dist/src/events/files/index.d.ts.map +1 -1
  110. package/dist/src/events/files/index.js +0 -1
  111. package/dist/src/events/files/index.js.map +1 -1
  112. package/dist/src/events/item/syncDbWithEas.d.ts.map +1 -1
  113. package/dist/src/events/item/syncDbWithEas.js +9 -28
  114. package/dist/src/events/item/syncDbWithEas.js.map +1 -1
  115. package/dist/src/events/services/allItems.d.ts.map +1 -1
  116. package/dist/src/events/services/allItems.js +0 -1
  117. package/dist/src/events/services/allItems.js.map +1 -1
  118. package/dist/src/helpers/FileManager/BaseFileManager.d.ts +2 -0
  119. package/dist/src/helpers/FileManager/BaseFileManager.d.ts.map +1 -1
  120. package/dist/src/helpers/FileManager/BaseFileManager.js +6 -0
  121. package/dist/src/helpers/FileManager/BaseFileManager.js.map +1 -1
  122. package/dist/src/helpers/constants.d.ts +2 -2
  123. package/dist/src/helpers/constants.d.ts.map +1 -1
  124. package/dist/src/helpers/constants.js +14 -6
  125. package/dist/src/helpers/constants.js.map +1 -1
  126. package/dist/src/helpers/environment.js +1 -1
  127. package/dist/src/helpers/environment.js.map +1 -1
  128. package/dist/src/helpers/getSegmentedItemProperties.d.ts +1 -0
  129. package/dist/src/helpers/getSegmentedItemProperties.d.ts.map +1 -1
  130. package/dist/src/helpers/getSegmentedItemProperties.js +6 -2
  131. package/dist/src/helpers/getSegmentedItemProperties.js.map +1 -1
  132. package/dist/src/helpers/index.d.ts +2 -1
  133. package/dist/src/helpers/index.d.ts.map +1 -1
  134. package/dist/src/helpers/index.js +3 -10
  135. package/dist/src/helpers/index.js.map +1 -1
  136. package/dist/src/helpers/scripts.d.ts +2 -0
  137. package/dist/src/helpers/scripts.d.ts.map +1 -0
  138. package/dist/src/helpers/scripts.js +14 -0
  139. package/dist/src/helpers/scripts.js.map +1 -0
  140. package/dist/src/index.d.ts +11 -2
  141. package/dist/src/index.d.ts.map +1 -1
  142. package/dist/src/interfaces/IItemProperty.d.ts +7 -0
  143. package/dist/src/interfaces/IItemProperty.d.ts.map +1 -1
  144. package/dist/src/node/PathResolver.d.ts +39 -0
  145. package/dist/src/node/PathResolver.d.ts.map +1 -0
  146. package/dist/src/node/PathResolver.js +150 -0
  147. package/dist/src/node/PathResolver.js.map +1 -0
  148. package/dist/src/node/codegen/drizzle.d.ts.map +1 -1
  149. package/dist/src/node/codegen/drizzle.js +25 -4
  150. package/dist/src/node/codegen/drizzle.js.map +1 -1
  151. package/dist/src/node/constants.d.ts +0 -11
  152. package/dist/src/node/constants.d.ts.map +1 -1
  153. package/dist/src/node/constants.js +1 -32
  154. package/dist/src/node/constants.js.map +1 -1
  155. package/dist/src/node/db/node.app.db.config.d.ts.map +1 -1
  156. package/dist/src/node/helpers/FileManager.d.ts +2 -0
  157. package/dist/src/node/helpers/FileManager.d.ts.map +1 -1
  158. package/dist/src/node/helpers/index.d.ts.map +1 -1
  159. package/dist/src/node/helpers/index.js +0 -1
  160. package/dist/src/node/helpers/index.js.map +1 -1
  161. package/dist/src/schema/image/model.d.ts +8 -0
  162. package/dist/src/schema/image/model.d.ts.map +1 -0
  163. package/dist/src/schema/image/model.js +29 -0
  164. package/dist/src/schema/image/model.js.map +1 -0
  165. package/dist/src/schema/model/index.d.ts +8 -8
  166. package/dist/src/schema/property/index.d.ts +33 -45
  167. package/dist/src/schema/property/index.d.ts.map +1 -1
  168. package/dist/src/schema/property/index.js +0 -1
  169. package/dist/src/schema/property/index.js.map +1 -1
  170. package/dist/src/seedSchema/ConfigSchema.js +18 -0
  171. package/dist/src/seedSchema/ConfigSchema.js.map +1 -0
  172. package/dist/src/services/db/actors/migrate.js +2 -2
  173. package/dist/src/services/db/actors/migrate.js.map +1 -1
  174. package/dist/src/services/global/globalMachine.d.ts +90 -90
  175. package/dist/src/services/internal/helpers.js +3 -3
  176. package/dist/src/services/internal/helpers.js.map +1 -1
  177. package/dist/src/stores/eas.d.ts +12 -5
  178. package/dist/src/stores/eas.d.ts.map +1 -1
  179. package/dist/src/stores/eas.js +13 -8
  180. package/dist/src/stores/eas.js.map +1 -1
  181. package/dist/src/stores/modelClass.d.ts.map +1 -1
  182. package/dist/src/stores/modelClass.js.map +1 -1
  183. package/dist/src/types/model.d.ts +2 -15
  184. package/dist/src/types/model.d.ts.map +1 -1
  185. package/package.json +8 -7
  186. package/dist/src/Item/index.d.ts +0 -5
  187. package/dist/src/Item/index.d.ts.map +0 -1
  188. package/dist/src/Item/index.js +0 -4
  189. package/dist/src/Item/index.js.map +0 -1
  190. package/dist/src/ItemProperty/index.d.ts +0 -5
  191. package/dist/src/ItemProperty/index.d.ts.map +0 -1
  192. package/dist/src/ItemProperty/service/actors/index.d.ts +0 -4
  193. package/dist/src/ItemProperty/service/actors/index.d.ts.map +0 -1
  194. package/dist/src/browser/Item/index.d.ts +0 -2
  195. package/dist/src/browser/Item/index.d.ts.map +0 -1
  196. package/dist/src/browser/Item/index.js +0 -2
  197. package/dist/src/browser/Item/index.js.map +0 -1
  198. package/dist/src/browser/ItemProperty/index.d.ts +0 -2
  199. package/dist/src/browser/ItemProperty/index.d.ts.map +0 -1
@@ -0,0 +1,14 @@
1
+ import { execSync } from 'child_process';
2
+
3
+ const commandExists = (command) => {
4
+ try {
5
+ execSync(`which ${command}`, { stdio: 'ignore' });
6
+ return true;
7
+ }
8
+ catch {
9
+ return false;
10
+ }
11
+ };
12
+
13
+ export { commandExists };
14
+ //# sourceMappingURL=scripts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scripts.js","sources":["../../../../src/helpers/scripts.ts"],"sourcesContent":["import { execSync } from 'child_process'\n\nexport const commandExists = (command: string): boolean => {\n try {\n execSync(`which ${command}`, { stdio: 'ignore' })\n return true\n } catch {\n return false\n }\n}\n"],"names":[],"mappings":";;AAEa,MAAA,aAAa,GAAG,CAAC,OAAe,KAAa;AACxD,IAAA,IAAI;QACF,QAAQ,CAAC,CAAS,MAAA,EAAA,OAAO,CAAE,CAAA,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;AACjD,QAAA,OAAO,IAAI;;AACX,IAAA,MAAM;AACN,QAAA,OAAO,KAAK;;AAEhB;;;;"}
@@ -1,8 +1,17 @@
1
+ import SeedImage from './browser/react/SeedImage';
1
2
  export { Model, Property, Image, List, Text, Json, Relation, Boolean, Number, Date, } from './schema';
2
- export { Item } from './Item';
3
- export { useItems, useItem, useItemProperties, useCreateItem, useItemProperty, useDeleteItem, useGlobalServiceStatus, usePublishItem, usePersistedSnapshots, useServices, useService, } from './browser/react';
3
+ export { BaseItem as Item } from './Item/BaseItem';
4
+ export { BaseItemProperty as ItemProperty } from './ItemProperty/BaseItemProperty';
5
+ export { useItems, useItem, useItemProperties, useCreateItem, useItemProperty, useDeleteItem, useGlobalServiceStatus, usePublishItem, usePersistedSnapshots, useServices, useService, useModels, } from './browser/react';
6
+ export { SeedImage };
7
+ export { FileManager as FileManagerBrowser } from './browser/helpers/FileManager';
8
+ export { Db as DbBrowser } from './browser/db/Db';
9
+ export { models, versions, seeds, metadata, } from './seedSchema';
10
+ export { getModels, getModel, getModelNames, } from './stores/modelClass';
4
11
  export { getCorrectId, } from './helpers';
5
12
  export { eventEmitter, } from './eventBus';
6
13
  export { withSeed } from './node/webpack';
14
+ export type { PublishUpload } from './db/read/getPublishUploads';
7
15
  export { client } from './client';
16
+ export * from './types';
8
17
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,EACL,QAAQ,EACR,KAAK,EACL,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,QAAQ,EACR,OAAO,EACP,MAAM,EACN,IAAI,GACL,MAAM,UAAU,CAAA;AAGjB,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAI7B,OAAO,EACL,QAAQ,EACR,OAAO,EACP,iBAAiB,EACjB,aAAa,EACb,eAAe,EACf,aAAa,EACb,sBAAsB,EACtB,cAAc,EACd,qBAAqB,EACrB,WAAW,EACX,UAAU,GACX,MAAM,iBAAiB,CAAA;AAGxB,OAAO,EAAE,YAAY,GAAG,MAAM,WAAW,CAAA;AAIzC,OAAO,EACL,YAAY,GACb,MAAM,YAAY,CAAA;AAInB,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAGzC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,2BAA2B,CAAA;AAGjD,OAAO,EACL,KAAK,EACL,QAAQ,EACR,KAAK,EACL,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,QAAQ,EACR,OAAO,EACP,MAAM,EACN,IAAI,GACL,MAAM,UAAU,CAAA;AAEjB,OAAO,EAAE,QAAQ,IAAI,IAAI,EAAE,MAAM,iBAAiB,CAAA;AAClD,OAAO,EAAE,gBAAgB,IAAI,YAAY,EAAE,MAAM,iCAAiC,CAAA;AAElF,OAAO,EACL,QAAQ,EACR,OAAO,EACP,iBAAiB,EACjB,aAAa,EACb,eAAe,EACf,aAAa,EACb,sBAAsB,EACtB,cAAc,EACd,qBAAqB,EACrB,WAAW,EACX,UAAU,EACV,SAAS,GACV,MAAM,iBAAiB,CAAA;AAGxB,OAAO,EAAE,SAAS,EAAE,CAAA;AAEpB,OAAO,EAAC,WAAW,IAAI,kBAAkB,EAAC,MAAM,+BAA+B,CAAA;AAC/E,OAAO,EAAC,EAAE,IAAI,SAAS,EAAC,MAAM,iBAAiB,CAAA;AAE/C,OAAO,EAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,GAAG,MAAM,cAAc,CAAA;AAEhE,OAAO,EAAC,SAAS,EAAE,QAAQ,EAAE,aAAa,GAAE,MAAM,qBAAqB,CAAA;AAEvE,OAAO,EAAE,YAAY,GAAG,MAAM,WAAW,CAAA;AAEzC,OAAO,EACL,YAAY,GACb,MAAM,YAAY,CAAA;AAInB,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAEzC,YAAY,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAA;AAGhE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAEjC,cAAc,SAAS,CAAA"}
@@ -2,6 +2,7 @@ import { ActorRefFrom, Subscription } from 'xstate';
2
2
  import { BehaviorSubject } from 'rxjs';
3
3
  import { Static } from '@sinclair/typebox';
4
4
  import { TProperty } from '@/schema';
5
+ import { BaseItemProperty } from '@/ItemProperty/BaseItemProperty';
5
6
  export interface IItemProperty<PropertyType> {
6
7
  readonly localId: string;
7
8
  readonly uid: string;
@@ -12,6 +13,7 @@ export interface IItemProperty<PropertyType> {
12
13
  readonly modelName: string;
13
14
  readonly propertyDef: Static<typeof TProperty> | undefined;
14
15
  readonly localStoragePath: string | void;
16
+ readonly localStorageDir: string | void;
15
17
  readonly versionLocalId: string | undefined;
16
18
  readonly status: any;
17
19
  readonly alias: string | undefined;
@@ -21,5 +23,10 @@ export interface IItemProperty<PropertyType> {
21
23
  save(): Promise<void>;
22
24
  unload(): void;
23
25
  getService(): ActorRefFrom<any>;
26
+ find(props: {
27
+ propertyName: string;
28
+ seedLocalId?: string;
29
+ seedUid?: string;
30
+ }): Promise<BaseItemProperty<any> | undefined>;
24
31
  }
25
32
  //# sourceMappingURL=IItemProperty.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"IItemProperty.d.ts","sourceRoot":"","sources":["../../../src/interfaces/IItemProperty.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAGrC,MAAM,WAAW,aAAa,CAAC,YAAY;IAEzC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,OAAO,SAAS,CAAC,GAAG,SAAS,CAAC;IAC3D,QAAQ,CAAC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IACzC,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5C,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC;IACrB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,KAAK,EAAE,GAAG,CAAC;IACX,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAE5B,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,GAAG,YAAY,CAAC;IACjE,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACtB,MAAM,IAAI,IAAI,CAAC;IACf,UAAU,IAAI,YAAY,CAAC,GAAG,CAAC,CAAC;CACjC"}
1
+ {"version":3,"file":"IItemProperty.d.ts","sourceRoot":"","sources":["../../../src/interfaces/IItemProperty.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAEnE,MAAM,WAAW,aAAa,CAAC,YAAY;IAEzC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,OAAO,SAAS,CAAC,GAAG,SAAS,CAAC;IAC3D,QAAQ,CAAC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IACzC,QAAQ,CAAC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5C,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC;IACrB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,KAAK,EAAE,GAAG,CAAC;IACX,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAE5B,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,GAAG,YAAY,CAAC;IACjE,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACtB,MAAM,IAAI,IAAI,CAAC;IACf,UAAU,IAAI,YAAY,CAAC,GAAG,CAAC,CAAC;IAChC,IAAI,CAAC,KAAK,EAAE;QACV,YAAY,EAAE,MAAM,CAAC;QACrB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,GAAG,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC;CAChD"}
@@ -0,0 +1,39 @@
1
+ export declare class PathResolver {
2
+ private static instance;
3
+ private constructor();
4
+ static getInstance(): PathResolver;
5
+ /**
6
+ * Detects the current environment based on filesystem structure and package.json
7
+ */
8
+ private detectEnvironment;
9
+ private isInSdkRepo;
10
+ private isUsingLinkedSdk;
11
+ /**
12
+ * Gets the root directory containing node_modules
13
+ */
14
+ getRootWithNodeModules(): string;
15
+ /**
16
+ * Gets the SDK root directory
17
+ */
18
+ getSdkRootDir(): string;
19
+ getNodeModulesDir(): string;
20
+ /**
21
+ * Gets the .seed directory path
22
+ */
23
+ getDotSeedDir(schemaFileDir?: string): string;
24
+ /**
25
+ * Gets paths for app-specific directories
26
+ */
27
+ getAppPaths(schemaFileDir?: string | undefined): {
28
+ sdkRootDir: string;
29
+ dotSeedDir: string;
30
+ nodeModulesDir: string;
31
+ appSchemaDir: string;
32
+ appDbDir: string;
33
+ appMetaDir: string;
34
+ drizzleDbConfigPath: string;
35
+ drizzleKitPath: string;
36
+ templatePath: string;
37
+ };
38
+ }
39
+ //# sourceMappingURL=PathResolver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PathResolver.d.ts","sourceRoot":"","sources":["../../../src/node/PathResolver.ts"],"names":[],"mappings":"AAIA,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAc;IACrC,OAAO;IAEP,MAAM,CAAC,WAAW,IAAI,YAAY;IAOlC;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAoBzB,OAAO,CAAC,WAAW;IAYnB,OAAO,CAAC,gBAAgB;IAcxB;;OAEG;IACH,sBAAsB,IAAI,MAAM;IAYhC;;OAEG;IACH,aAAa,IAAI,MAAM;IAmCvB,iBAAiB,IAAI,MAAM;IAa3B;;OAEG;IACH,aAAa,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM;IAO7C;;OAEG;IACH,WAAW,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS;;;;;;;;;;;CA4B/C"}
@@ -0,0 +1,150 @@
1
+ import path from 'path';
2
+ import fs from 'fs';
3
+ import { NODE_APP_DB_CONFIG } from './constants.js';
4
+
5
+ class PathResolver {
6
+ constructor() { }
7
+ static getInstance() {
8
+ if (!PathResolver.instance) {
9
+ PathResolver.instance = new PathResolver();
10
+ }
11
+ return PathResolver.instance;
12
+ }
13
+ /**
14
+ * Detects the current environment based on filesystem structure and package.json
15
+ */
16
+ detectEnvironment() {
17
+ // Check if we're in the SDK repo itself
18
+ if (process.env.NODE_ENV !== 'test' && this.isInSdkRepo()) {
19
+ return 'sdk-dev';
20
+ }
21
+ // Check if we're running tests
22
+ if (process.env.NODE_ENV === 'test') {
23
+ return 'test';
24
+ }
25
+ // Check if we're using a linked version of the SDK
26
+ if (this.isUsingLinkedSdk()) {
27
+ return 'linked-sdk';
28
+ }
29
+ // Default to production environment
30
+ return 'production';
31
+ }
32
+ isInSdkRepo() {
33
+ try {
34
+ // Check if we're in the SDK repo by looking for specific SDK files/directories
35
+ const currentDir = process.cwd();
36
+ return fs.existsSync(path.join(currentDir, 'src', 'node')) &&
37
+ fs.existsSync(path.join(currentDir, 'package.json')) &&
38
+ JSON.parse(fs.readFileSync(path.join(currentDir, 'package.json'), 'utf8')).name === '@seedprotocol/sdk';
39
+ }
40
+ catch {
41
+ return false;
42
+ }
43
+ }
44
+ isUsingLinkedSdk() {
45
+ try {
46
+ const pkgPath = path.join(process.cwd(), 'package.json');
47
+ if (!fs.existsSync(pkgPath))
48
+ return false;
49
+ const pkg = JSON.parse(fs.readFileSync(pkgPath, 'utf8'));
50
+ const sdkDep = pkg.dependencies?.['@seedprotocol/sdk'];
51
+ return sdkDep && (sdkDep.startsWith('link:') || sdkDep.startsWith('portal:'));
52
+ }
53
+ catch {
54
+ return false;
55
+ }
56
+ }
57
+ /**
58
+ * Gets the root directory containing node_modules
59
+ */
60
+ getRootWithNodeModules() {
61
+ const processCwd = process.cwd();
62
+ const calledFromMocks = processCwd.includes('__mocks__');
63
+ if (calledFromMocks) {
64
+ return path.join(processCwd, '..', '..', '..', '..');
65
+ }
66
+ return processCwd;
67
+ }
68
+ /**
69
+ * Gets the SDK root directory
70
+ */
71
+ getSdkRootDir() {
72
+ const env = this.detectEnvironment();
73
+ const rootWithNodeModules = this.getRootWithNodeModules();
74
+ const processCwd = process.cwd();
75
+ if (process.cwd().includes('__mocks__')) {
76
+ return path.join(rootWithNodeModules, 'src');
77
+ }
78
+ if (env === 'linked-sdk') {
79
+ // For linked packages, find the package directory
80
+ const pkgJson = JSON.parse(fs.readFileSync(path.join(processCwd, 'package.json'), 'utf8'));
81
+ const sdkPath = pkgJson.dependencies?.['@seedprotocol/sdk'] || pkgJson.devDependencies?.['@seedprotocol/sdk'];
82
+ console.log(sdkPath);
83
+ if (sdkPath === 'link:@seedprotocol/sdk') {
84
+ return path.join(processCwd, 'node_modules', '@seedprotocol', 'sdk', 'src');
85
+ }
86
+ return path.resolve(processCwd, sdkPath.replace(/^(link:|portal:)/, ''));
87
+ }
88
+ console.log('getSdkRootDir', rootWithNodeModules, env);
89
+ switch (env) {
90
+ case 'sdk-dev':
91
+ // This should be {localDir}/seed-protocol-sdk/src
92
+ return path.join(rootWithNodeModules, 'src');
93
+ case 'test':
94
+ // This should be {localDir}/seed-protocol-sdk/src
95
+ return path.join(rootWithNodeModules, 'src');
96
+ default:
97
+ // This should be {projectDir}/node_modules/@seedprotocol/sdk
98
+ return path.join(rootWithNodeModules, 'node_modules', '@seedprotocol', 'sdk');
99
+ }
100
+ }
101
+ getNodeModulesDir() {
102
+ const env = this.detectEnvironment();
103
+ const rootWithNodeModules = this.getRootWithNodeModules();
104
+ let nodeModulesDir = path.join(rootWithNodeModules, 'node_modules');
105
+ if (env !== 'linked-sdk' && env !== 'sdk-dev' && nodeModulesDir.includes('__tests__')) {
106
+ nodeModulesDir = path.join(process.cwd(), '..', '..', '..', '..', 'node_modules');
107
+ }
108
+ return nodeModulesDir;
109
+ }
110
+ /**
111
+ * Gets the .seed directory path
112
+ */
113
+ getDotSeedDir(schemaFileDir) {
114
+ if (!schemaFileDir && process.env.SEED_SDK_TEST_PROJECT_TYPE && !process.cwd().includes('__mocks__')) {
115
+ return path.join(process.cwd(), '__tests__', '__mocks__', process.env.SEED_SDK_TEST_PROJECT_TYPE, 'project', '.seed');
116
+ }
117
+ return path.join(schemaFileDir || process.cwd(), '.seed');
118
+ }
119
+ /**
120
+ * Gets paths for app-specific directories
121
+ */
122
+ getAppPaths(schemaFileDir) {
123
+ const env = this.detectEnvironment();
124
+ const dotSeedDir = this.getDotSeedDir(schemaFileDir);
125
+ const nodeModulesDir = this.getNodeModulesDir();
126
+ let drizzleKitPath = path.join(nodeModulesDir, 'drizzle-kit', 'bin.cjs');
127
+ if (env === 'linked-sdk') {
128
+ const sdkRootDir = this.getSdkRootDir();
129
+ console.log(`sdkRootDir: ${sdkRootDir}`);
130
+ const sdkPackageDir = path.dirname(sdkRootDir);
131
+ console.log(`sdkPackageDir: ${sdkPackageDir}`);
132
+ const sdkNodeModulesDir = path.join(sdkPackageDir, 'node_modules');
133
+ drizzleKitPath = path.join(sdkNodeModulesDir, 'drizzle-kit', 'bin.cjs');
134
+ }
135
+ return {
136
+ sdkRootDir: this.getSdkRootDir(),
137
+ dotSeedDir,
138
+ nodeModulesDir,
139
+ appSchemaDir: path.join(dotSeedDir, 'schema'),
140
+ appDbDir: path.join(dotSeedDir, 'db'),
141
+ appMetaDir: path.join(dotSeedDir, 'db', 'meta'),
142
+ drizzleDbConfigPath: path.join(this.getSdkRootDir(), 'node', 'db', NODE_APP_DB_CONFIG),
143
+ drizzleKitPath,
144
+ templatePath: path.join(this.getSdkRootDir(), 'node', 'codegen', 'templates')
145
+ };
146
+ }
147
+ }
148
+
149
+ export { PathResolver };
150
+ //# sourceMappingURL=PathResolver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PathResolver.js","sources":["../../../../src/node/PathResolver.ts"],"sourcesContent":["import path from 'path'\nimport fs from 'fs'\nimport { NODE_APP_DB_CONFIG } from './constants'\n\nexport class PathResolver {\n private static instance: PathResolver\n private constructor() {}\n\n static getInstance(): PathResolver {\n if (!PathResolver.instance) {\n PathResolver.instance = new PathResolver()\n }\n return PathResolver.instance\n }\n\n /**\n * Detects the current environment based on filesystem structure and package.json\n */\n private detectEnvironment(): 'sdk-dev' | 'linked-sdk' | 'test' | 'production' {\n // Check if we're in the SDK repo itself\n if (process.env.NODE_ENV !== 'test' && this.isInSdkRepo()) {\n return 'sdk-dev'\n }\n\n // Check if we're running tests\n if (process.env.NODE_ENV === 'test') {\n return 'test'\n }\n\n // Check if we're using a linked version of the SDK\n if (this.isUsingLinkedSdk()) {\n return 'linked-sdk'\n }\n\n // Default to production environment\n return 'production'\n }\n\n private isInSdkRepo(): boolean {\n try {\n // Check if we're in the SDK repo by looking for specific SDK files/directories\n const currentDir = process.cwd()\n return fs.existsSync(path.join(currentDir, 'src', 'node')) &&\n fs.existsSync(path.join(currentDir, 'package.json')) &&\n JSON.parse(fs.readFileSync(path.join(currentDir, 'package.json'), 'utf8')).name === '@seedprotocol/sdk'\n } catch {\n return false\n }\n }\n\n private isUsingLinkedSdk(): boolean {\n try {\n const pkgPath = path.join(process.cwd(), 'package.json')\n if (!fs.existsSync(pkgPath)) return false\n \n const pkg = JSON.parse(fs.readFileSync(pkgPath, 'utf8'))\n const sdkDep = pkg.dependencies?.['@seedprotocol/sdk']\n \n return sdkDep && (sdkDep.startsWith('link:') || sdkDep.startsWith('portal:'))\n } catch {\n return false\n }\n }\n\n /**\n * Gets the root directory containing node_modules\n */\n getRootWithNodeModules(): string {\n const processCwd = process.cwd()\n\n const calledFromMocks = processCwd.includes('__mocks__')\n\n if (calledFromMocks) {\n return path.join(processCwd, '..', '..', '..', '..',)\n }\n\n return processCwd\n }\n\n /**\n * Gets the SDK root directory\n */\n getSdkRootDir(): string {\n const env = this.detectEnvironment()\n const rootWithNodeModules = this.getRootWithNodeModules()\n const processCwd = process.cwd()\n\n if (process.cwd().includes('__mocks__')) {\n return path.join(rootWithNodeModules, 'src')\n }\n\n if (env === 'linked-sdk') {\n // For linked packages, find the package directory\n const pkgJson = JSON.parse(fs.readFileSync(path.join(processCwd, 'package.json'), 'utf8'))\n const sdkPath = pkgJson.dependencies?.['@seedprotocol/sdk'] || pkgJson.devDependencies?.['@seedprotocol/sdk']\n console.log(sdkPath)\n if (sdkPath === 'link:@seedprotocol/sdk') {\n return path.join(processCwd, 'node_modules', '@seedprotocol', 'sdk', 'src')\n }\n return path.resolve(processCwd, sdkPath.replace(/^(link:|portal:)/, ''))\n }\n\n console.log('getSdkRootDir', rootWithNodeModules, env)\n\n switch (env) {\n case 'sdk-dev':\n // This should be {localDir}/seed-protocol-sdk/src\n return path.join(rootWithNodeModules, 'src')\n case 'test':\n // This should be {localDir}/seed-protocol-sdk/src\n return path.join(rootWithNodeModules, 'src')\n default:\n // This should be {projectDir}/node_modules/@seedprotocol/sdk\n return path.join(rootWithNodeModules, 'node_modules', '@seedprotocol', 'sdk',)\n }\n }\n\n getNodeModulesDir(): string {\n const env = this.detectEnvironment()\n const rootWithNodeModules = this.getRootWithNodeModules()\n\n let nodeModulesDir = path.join(rootWithNodeModules, 'node_modules')\n\n if (env !== 'linked-sdk' && env !== 'sdk-dev' && nodeModulesDir.includes('__tests__')) {\n nodeModulesDir = path.join(process.cwd(), '..', '..', '..', '..', 'node_modules',)\n }\n\n return nodeModulesDir\n }\n\n /**\n * Gets the .seed directory path\n */\n getDotSeedDir(schemaFileDir?: string): string {\n if (!schemaFileDir && process.env.SEED_SDK_TEST_PROJECT_TYPE && !process.cwd().includes('__mocks__')) {\n return path.join(process.cwd(), '__tests__', '__mocks__', process.env.SEED_SDK_TEST_PROJECT_TYPE, 'project', '.seed')\n }\n return path.join(schemaFileDir || process.cwd(), '.seed')\n }\n\n /**\n * Gets paths for app-specific directories\n */\n getAppPaths(schemaFileDir?: string | undefined) {\n const env = this.detectEnvironment()\n const dotSeedDir = this.getDotSeedDir(schemaFileDir)\n const nodeModulesDir = this.getNodeModulesDir()\n\n let drizzleKitPath = path.join(nodeModulesDir, 'drizzle-kit', 'bin.cjs')\n\n if (env === 'linked-sdk') {\n const sdkRootDir = this.getSdkRootDir()\n console.log(`sdkRootDir: ${sdkRootDir}`)\n const sdkPackageDir = path.dirname(sdkRootDir)\n console.log(`sdkPackageDir: ${sdkPackageDir}`)\n const sdkNodeModulesDir = path.join(sdkPackageDir, 'node_modules')\n drizzleKitPath = path.join(sdkNodeModulesDir, 'drizzle-kit', 'bin.cjs')\n }\n\n return {\n sdkRootDir: this.getSdkRootDir(),\n dotSeedDir,\n nodeModulesDir,\n appSchemaDir: path.join(dotSeedDir, 'schema'),\n appDbDir: path.join(dotSeedDir, 'db'),\n appMetaDir: path.join(dotSeedDir, 'db', 'meta'),\n drizzleDbConfigPath: path.join(this.getSdkRootDir(), 'node', 'db', NODE_APP_DB_CONFIG),\n drizzleKitPath,\n templatePath: path.join(this.getSdkRootDir(), 'node', 'codegen', 'templates')\n }\n }\n} \n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"drizzle.d.ts","sourceRoot":"","sources":["../../../../src/node/codegen/drizzle.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAmCxC,eAAO,MAAM,yBAAyB,cACzB,MAAM,cACL,cAAc,KACzB,MAcF,CAAA;AAED,eAAO,MAAM,kCAAkC,mBAC7B,MAAM,GAAG,SAAS,iBACnB,MAAM,GAAG,SAAS,kBAoBlC,CAAA;AA2BD,eAAO,MAAM,iBAAiB,WAAY,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAG,MAM/D,CAAC"}
1
+ {"version":3,"file":"drizzle.d.ts","sourceRoot":"","sources":["../../../../src/node/codegen/drizzle.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,cAAc,EAAE,MAAY,SAAS,CAAA;AA4C9C,eAAO,MAAM,yBAAyB,cACzB,MAAM,cACL,cAAc,KACzB,MAgBF,CAAA;AAED,eAAO,MAAM,kCAAkC,mBAC7B,MAAM,GAAG,SAAS,iBACnB,MAAM,GAAG,SAAS,kBA0BlC,CAAA;AA2BD,eAAO,MAAM,iBAAiB,WAAY,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAG,MAY/D,CAAC"}
@@ -3,13 +3,17 @@ import pluralize from 'pluralize';
3
3
  import { camelCase, snakeCase } from 'lodash-es';
4
4
  import * as nunjucks from 'nunjucks';
5
5
  import { SCHEMA_NJK } from '../../helpers/constants.js';
6
- import { templatePath, dotSeedDir, appGeneratedSchemaDir } from '../constants.js';
7
6
  import { getTsImport } from '../helpers/index.js';
8
7
  import fs from 'fs';
8
+ import { PathResolver } from '../PathResolver.js';
9
+ import debug from 'debug';
9
10
 
11
+ const logger = debug('seedSdk:codegen:drizzle');
10
12
  const TemplateLoader = {
11
13
  getSource: (name) => {
12
- let templateFilePath;
14
+ const pathResolver = PathResolver.getInstance();
15
+ const { templatePath } = pathResolver.getAppPaths();
16
+ let templateFilePath = templatePath;
13
17
  if (name.includes(templatePath)) {
14
18
  templateFilePath = name;
15
19
  }
@@ -29,8 +33,16 @@ const env = new nunjucks.Environment(TemplateLoader);
29
33
  env.addFilter('camelCase', camelCase);
30
34
  env.addFilter('snakeCase', snakeCase);
31
35
  env.addFilter('pluralize', pluralize);
36
+ const refNamesToExcludeFromRelations = [
37
+ 'Text',
38
+ 'Number',
39
+ 'Boolean',
40
+ 'Date',
41
+ ];
32
42
  const generateDrizzleSchemaCode = (modelName, modelClass) => {
33
- const listProperties = Object.entries(modelClass.schema).filter(([key, propertyDef]) => propertyDef?.dataType === 'List');
43
+ const listProperties = Object.entries(modelClass.schema).filter(([key, propertyDef]) => propertyDef?.dataType === 'List' && !refNamesToExcludeFromRelations.includes(propertyDef?.ref));
44
+ const pathResolver = PathResolver.getInstance();
45
+ const { templatePath } = pathResolver.getAppPaths();
34
46
  const filePath = path.join(templatePath, SCHEMA_NJK);
35
47
  const schemaCode = env.render(filePath, {
36
48
  modelName,
@@ -40,9 +52,13 @@ const generateDrizzleSchemaCode = (modelName, modelClass) => {
40
52
  return schemaCode;
41
53
  };
42
54
  const createDrizzleSchemaFilesFromConfig = async (configFilePath, outputDirPath) => {
55
+ const pathResolver = PathResolver.getInstance();
56
+ const { dotSeedDir, appSchemaDir } = pathResolver.getAppPaths();
57
+ console.log('createDrizzleSchemaFilesFromConfig', configFilePath, outputDirPath);
43
58
  const schemaFilePath = configFilePath || path.join(dotSeedDir, 'schema.ts'); // Developer created file with model definitions
59
+ console.log('schemaFilePath', schemaFilePath);
44
60
  const { models, } = await getTsImport(schemaFilePath);
45
- const writeToDir = appGeneratedSchemaDir;
61
+ const writeToDir = appSchemaDir;
46
62
  for (const [modelName, modelClass] of Object.entries(models)) {
47
63
  const code = generateDrizzleSchemaCode(modelName, modelClass);
48
64
  if (!fs.existsSync(writeToDir)) {
@@ -77,6 +93,11 @@ const seedTypeToJsType = (propertyType) => {
77
93
  };
78
94
  const generateModelCode = (values) => {
79
95
  const { modelName, properties } = values;
96
+ const pathResolver = PathResolver.getInstance();
97
+ const { templatePath } = pathResolver.getAppPaths();
98
+ if (modelName === 'Text' || modelName === 'TestModel') {
99
+ logger(`Model name is ${modelName}.`);
100
+ }
80
101
  const njkEnv = new nunjucks.Environment(new nunjucks.FileSystemLoader(templatePath));
81
102
  njkEnv.addFilter('seedTypeToJsType', seedTypeToJsType);
82
103
  return njkEnv.render('model.njk', { modelName, properties });
@@ -1 +1 @@
1
- {"version":3,"file":"drizzle.js","sources":["../../../../../src/node/codegen/drizzle.ts"],"sourcesContent":["import path from 'path'\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 '@/helpers/constants'\nimport {\n appGeneratedSchemaDir,\n dotSeedDir,\n templatePath,\n} from '@/node/constants'\nimport { getTsImport } from '@/node/helpers'\nimport fs from 'fs'\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\nexport const 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 configFilePath: string | undefined,\n outputDirPath: string | undefined,\n) => {\n const schemaFilePath = configFilePath || path.join(dotSeedDir, 'schema.ts') // Developer created file with model definitions\n const { models, } = await getTsImport<{\n models: Record<string, ModelClassType>\n }>(schemaFilePath)\n\n const writeToDir = outputDirPath || appGeneratedSchemaDir\n\n for (const [modelName, modelClass] of Object.entries(models)) {\n const code = generateDrizzleSchemaCode(modelName, modelClass)\n\n if (!fs.existsSync(writeToDir)) {\n fs.mkdirSync(writeToDir)\n }\n\n const filePath = path.join(writeToDir, `${modelName}Schema.ts`)\n\n await fs.promises.writeFile(filePath, code).catch((e) => console.error(e))\n }\n}\n\n // Helper to determine TypeScript type based on property type\n const seedTypeToJsType = (propertyType: string): string => {\n switch (propertyType) {\n case 'Text':\n return 'string';\n case 'Number':\n return 'number';\n case 'Boolean':\n return 'boolean';\n case 'Date':\n return 'string';\n case 'List':\n return 'string[]';\n case 'Relation':\n return 'string';\n case 'Image':\n return 'string';\n case 'File':\n return 'string';\n default:\n return 'any';\n }\n};\n\n\nexport const generateModelCode = (values: Record<string, any>): string => {\n const { modelName, properties } = values;\n\n const njkEnv = new nunjucks.Environment(new nunjucks.FileSystemLoader(templatePath))\n njkEnv.addFilter('seedTypeToJsType', seedTypeToJsType)\n return njkEnv.render('model.njk', { modelName, properties })\n};\n"],"names":[],"mappings":";;;;;;;;;AAeA,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;MAExB,yBAAyB,GAAG,CACvC,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,WAAW,EAAE,QAAQ,KAAK,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;AAEa,MAAA,kCAAkC,GAAG,OAChD,cAAkC,EAClC,aAAiC,KAC/B;AACF,IAAA,MAAM,cAAc,GAAG,cAAc,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAA;IAC3E,MAAM,EAAE,MAAM,GAAG,GAAG,MAAM,WAAW,CAElC,cAAc,CAAC;AAElB,IAAA,MAAM,UAAU,GAAoB,qBAAqB;AAEzD,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,UAAU,CAAC,EAAE;AAC9B,YAAA,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC;;AAG1B,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAG,EAAA,SAAS,CAAW,SAAA,CAAA,CAAC;QAE/D,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;AAEC;AACA,MAAM,gBAAgB,GAAG,CAAC,YAAoB,KAAY;IACzD,QAAQ,YAAY;AAClB,QAAA,KAAK,MAAM;AACT,YAAA,OAAO,QAAQ;AACjB,QAAA,KAAK,QAAQ;AACX,YAAA,OAAO,QAAQ;AACjB,QAAA,KAAK,SAAS;AACZ,YAAA,OAAO,SAAS;AAClB,QAAA,KAAK,MAAM;AACT,YAAA,OAAO,QAAQ;AACjB,QAAA,KAAK,MAAM;AACT,YAAA,OAAO,UAAU;AACnB,QAAA,KAAK,UAAU;AACb,YAAA,OAAO,QAAQ;AACjB,QAAA,KAAK,OAAO;AACV,YAAA,OAAO,QAAQ;AACjB,QAAA,KAAK,MAAM;AACT,YAAA,OAAO,QAAQ;AACjB,QAAA;AACE,YAAA,OAAO,KAAK;;AAElB,CAAC;AAGY,MAAA,iBAAiB,GAAG,CAAC,MAA2B,KAAY;AACvE,IAAA,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,MAAM;AAExC,IAAA,MAAM,MAAM,GAAG,IAAI,QAAQ,CAAC,WAAW,CAAC,IAAI,QAAQ,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC;AACpF,IAAA,MAAM,CAAC,SAAS,CAAC,kBAAkB,EAAE,gBAAgB,CAAC;AACtD,IAAA,OAAO,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC;AAC9D;;;;"}
1
+ {"version":3,"file":"drizzle.js","sources":["../../../../../src/node/codegen/drizzle.ts"],"sourcesContent":["import path from 'path'\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 '@/helpers/constants'\nimport { getTsImport } from '@/node/helpers'\nimport fs from 'fs'\nimport {PathResolver} from '@/node/PathResolver'\nimport debug from 'debug'\n\nconst logger = debug('seedSdk:codegen:drizzle')\n\n\nconst TemplateLoader: ILoader = {\n getSource: (name: string) => {\n const pathResolver = PathResolver.getInstance()\n const { templatePath } = pathResolver.getAppPaths()\n let templateFilePath = templatePath\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 refNamesToExcludeFromRelations = [\n 'Text',\n 'Number',\n 'Boolean',\n 'Date',\n]\n\nexport const generateDrizzleSchemaCode = (\n modelName: string,\n modelClass: ModelClassType,\n): string => {\n const listProperties = Object.entries(modelClass.schema).filter(\n ([key, propertyDef]) => propertyDef?.dataType === 'List' && !refNamesToExcludeFromRelations.includes(propertyDef?.ref!),\n )\n\n const pathResolver = PathResolver.getInstance()\n const { templatePath } = pathResolver.getAppPaths()\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 configFilePath: string | undefined,\n outputDirPath: string | undefined,\n) => {\n const pathResolver = PathResolver.getInstance()\n const { dotSeedDir, appSchemaDir } = pathResolver.getAppPaths()\n console.log('createDrizzleSchemaFilesFromConfig', configFilePath, outputDirPath)\n\n const schemaFilePath = configFilePath || path.join(dotSeedDir, 'schema.ts') // Developer created file with model definitions\n console.log('schemaFilePath', schemaFilePath)\n\n const { models, } = await getTsImport<{\n models: Record<string, ModelClassType>\n }>(schemaFilePath)\n\n const writeToDir = outputDirPath || appSchemaDir\n\n for (const [modelName, modelClass] of Object.entries(models)) {\n const code = generateDrizzleSchemaCode(modelName, modelClass)\n\n if (!fs.existsSync(writeToDir)) {\n fs.mkdirSync(writeToDir)\n }\n\n const filePath = path.join(writeToDir, `${modelName}Schema.ts`)\n\n await fs.promises.writeFile(filePath, code).catch((e) => console.error(e))\n }\n}\n\n // Helper to determine TypeScript type based on property type\n const seedTypeToJsType = (propertyType: string): string => {\n switch (propertyType) {\n case 'Text':\n return 'string';\n case 'Number':\n return 'number';\n case 'Boolean':\n return 'boolean';\n case 'Date':\n return 'string';\n case 'List':\n return 'string[]';\n case 'Relation':\n return 'string';\n case 'Image':\n return 'string';\n case 'File':\n return 'string';\n default:\n return 'any';\n }\n};\n\n\nexport const generateModelCode = (values: Record<string, any>): string => {\n const { modelName, properties } = values;\n const pathResolver = PathResolver.getInstance()\n const { templatePath } = pathResolver.getAppPaths()\n\n if (modelName === 'Text' || modelName === 'TestModel') {\n logger(`Model name is ${modelName}.`)\n }\n\n const njkEnv = new nunjucks.Environment(new nunjucks.FileSystemLoader(templatePath))\n njkEnv.addFilter('seedTypeToJsType', seedTypeToJsType)\n return njkEnv.render('model.njk', { modelName, properties })\n};\n"],"names":[],"mappings":"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"}
@@ -1,14 +1,3 @@
1
1
  import 'dotenv/config';
2
2
  export declare const NODE_APP_DB_CONFIG = "node.app.db.config.ts";
3
- declare let rootWithNodeModules: string;
4
- declare let sdkRootDir: string;
5
- declare let dotSeedDir: string;
6
- export declare const drizzleKitPath: string;
7
- export declare const appSchemaDir: string;
8
- export declare const appDbDir: string;
9
- export declare const appMetaDir: string;
10
- export declare const appGeneratedSchemaDir: string;
11
- export declare const drizzleDbConfigPath: string;
12
- export declare const templatePath: string;
13
- export { rootWithNodeModules, sdkRootDir, dotSeedDir };
14
3
  //# sourceMappingURL=constants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/node/constants.ts"],"names":[],"mappings":"AACA,OAAO,eAAe,CAAA;AAGtB,eAAO,MAAM,kBAAkB,0BAA0B,CAAA;AAYzD,QAAA,IAAI,mBAAmB,QAA6D,CAAA;AAYpF,QAAA,IAAI,UAAU,QAMb,CAAA;AAMD,QAAA,IAAI,UAAU,QAA0C,CAAA;AAaxD,eAAO,MAAM,cAAc,QAK1B,CAAA;AAGD,eAAO,MAAM,YAAY,QAAkC,CAAA;AAC3D,eAAO,MAAM,QAAQ,QAA8B,CAAA;AACnD,eAAO,MAAM,UAAU,QAA8B,CAAA;AACrD,eAAO,MAAM,qBAAqB,QAAkC,CAAA;AAEpE,eAAO,MAAM,mBAAmB,QAK/B,CAAA;AAED,eAAO,MAAM,YAAY,QAKxB,CAAA;AAED,OAAO,EAAE,mBAAmB,EAAE,UAAU,EAAE,UAAU,EAAE,CAAA"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/node/constants.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAA;AAEtB,eAAO,MAAM,kBAAkB,0BAA0B,CAAA"}
@@ -1,37 +1,6 @@
1
- import path from 'path';
2
1
  import 'dotenv/config';
3
- import process from 'node:process';
4
2
 
5
3
  const NODE_APP_DB_CONFIG = 'node.app.db.config.ts';
6
- console.log('process.env.IS_SEED_DEV', process.env.IS_SEED_DEV);
7
- const currentDir = path.dirname(new URL(import.meta.url).pathname);
8
- console.log('currentDir', currentDir);
9
- const parentToCheck = path.join(currentDir, '..');
10
- console.log('parentToCheck', parentToCheck);
11
- let rootWithNodeModules = path.join(currentDir, '..', '..', '..', '..', '..', '..');
12
- if (process.env.IS_PORTAL) {
13
- rootWithNodeModules = process.cwd();
14
- }
15
- if (process.env.IS_SEED_DEV || process.env.NODE_ENV === 'test') {
16
- rootWithNodeModules = path.join(parentToCheck, '..');
17
- }
18
- console.log('rootWithNodeModules', rootWithNodeModules);
19
- let sdkRootDir = path.join(rootWithNodeModules, 'node_modules', '@seedprotocol', 'sdk', 'dist');
20
- if (process.env.IS_SEED_DEV) {
21
- sdkRootDir = path.join(rootWithNodeModules, 'src');
22
- }
23
- let dotSeedDir = path.join(rootWithNodeModules, '.seed');
24
- if (process.env.IS_SEED_DEV || process.env.NODE_ENV === 'test') {
25
- dotSeedDir = path.join(process.cwd(), '__tests__', '__mocks__', 'node', 'project', '.seed');
26
- }
27
- const drizzleKitPath = path.join(rootWithNodeModules, 'node_modules', 'drizzle-kit', 'bin.cjs');
28
- // App file paths. These are the single source of truth for the SDK user's data model
29
- const appSchemaDir = path.join(dotSeedDir, 'schema');
30
- const appDbDir = path.join(dotSeedDir, 'db');
31
- const appMetaDir = path.join(appDbDir, 'meta');
32
- const appGeneratedSchemaDir = path.join(dotSeedDir, 'schema');
33
- const drizzleDbConfigPath = path.join(sdkRootDir, 'node', 'db', NODE_APP_DB_CONFIG);
34
- const templatePath = path.join(sdkRootDir, 'node', 'codegen', 'templates');
35
4
 
36
- export { NODE_APP_DB_CONFIG, appDbDir, appGeneratedSchemaDir, appMetaDir, appSchemaDir, dotSeedDir, drizzleDbConfigPath, drizzleKitPath, rootWithNodeModules, sdkRootDir, templatePath };
5
+ export { NODE_APP_DB_CONFIG };
37
6
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sources":["../../../../src/node/constants.ts"],"sourcesContent":["import path from 'path'\nimport 'dotenv/config'\nimport process from 'node:process'\n\nexport const NODE_APP_DB_CONFIG = 'node.app.db.config.ts'\n\nconsole.log('process.env.IS_SEED_DEV', process.env.IS_SEED_DEV)\n\nconst currentDir = path.dirname(new URL(import.meta.url).pathname)\n\nconsole.log('currentDir', currentDir)\n\nconst parentToCheck = path.join(currentDir, '..',)\n\nconsole.log('parentToCheck', parentToCheck)\n\nlet rootWithNodeModules = path.join(currentDir, '..', '..', '..', '..', '..', '..',)\n\nif (process.env.IS_PORTAL) {\n rootWithNodeModules = process.cwd()\n}\n\nif (process.env.IS_SEED_DEV || process.env.NODE_ENV === 'test') {\n rootWithNodeModules = path.join(parentToCheck, '..',)\n}\n\nconsole.log('rootWithNodeModules', rootWithNodeModules)\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 || process.env.NODE_ENV === 'test') {\n dotSeedDir = path.join(\n process.cwd(),\n '__tests__',\n '__mocks__',\n 'node',\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"],"names":[],"mappings":";;;;AAIO,MAAM,kBAAkB,GAAG;AAElC,OAAO,CAAC,GAAG,CAAC,yBAAyB,EAAE,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC;AAE/D,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC;AAElE,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,UAAU,CAAC;AAErC,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAE;AAElD,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,aAAa,CAAC;AAEvC,IAAA,mBAAmB,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI;AAElF,IAAI,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE;AACzB,IAAA,mBAAmB,GAAG,OAAO,CAAC,GAAG,EAAE;AACrC;AAEA,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,MAAM,EAAE;IAC9D,mBAAmB,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAE;AACvD;AAEA,OAAO,CAAC,GAAG,CAAC,qBAAqB,EAAE,mBAAmB,CAAC;AAEvD,IAAI,UAAU,GAAG,IAAI,CAAC,IAAI,CACxB,mBAAmB,EACnB,cAAc,EACd,eAAe,EACf,KAAK,EACL,MAAM;AAGR,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE;IAC3B,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,KAAK,CAAC;AACpD;AAEI,IAAA,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,OAAO;AAEvD,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,MAAM,EAAE;IAC9D,UAAU,GAAG,IAAI,CAAC,IAAI,CACpB,OAAO,CAAC,GAAG,EAAE,EACb,WAAW,EACX,WAAW,EACX,MAAM,EACN,SAAS,EACT,OAAO,CACR;AACH;AAEa,MAAA,cAAc,GAAG,IAAI,CAAC,IAAI,CACrC,mBAAmB,EACnB,cAAc,EACd,aAAa,EACb,SAAS;AAGX;AACO,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ;AACnD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI;AAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM;AAC7C,MAAM,qBAAqB,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ;AAEtD,MAAA,mBAAmB,GAAG,IAAI,CAAC,IAAI,CAC1C,UAAU,EACV,MAAM,EACN,IAAI,EACJ,kBAAkB;AAGP,MAAA,YAAY,GAAG,IAAI,CAAC,IAAI,CACnC,UAAU,EACV,MAAM,EACN,SAAS,EACT,WAAW;;;;"}
1
+ {"version":3,"file":"constants.js","sources":["../../../../src/node/constants.ts"],"sourcesContent":["import 'dotenv/config'\n\nexport const NODE_APP_DB_CONFIG = 'node.app.db.config.ts'\n\n\n\n"],"names":[],"mappings":";;AAEO,MAAM,kBAAkB,GAAG;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"node.app.db.config.d.ts","sourceRoot":"","sources":["../../../../src/node/db/node.app.db.config.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;wBAoCrC,aAAa;AAPnB,wBAOmB"}
1
+ {"version":3,"file":"node.app.db.config.d.ts","sourceRoot":"","sources":["../../../../src/node/db/node.app.db.config.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;wBAmBrC,aAAa;AAPnB,wBAOmB"}
@@ -9,6 +9,8 @@ declare class FileManager extends BaseFileManager {
9
9
  static createDirIfNotExists(filePath: string): Promise<void>;
10
10
  static readFileAsBuffer(filePath: string): Promise<Buffer>;
11
11
  static readFile(filePath: string): Promise<File>;
12
+ static getParentDirPath(filePath: string): string;
13
+ static getFilenameFromPath(filePath: string): string;
12
14
  }
13
15
  export { FileManager };
14
16
  //# sourceMappingURL=FileManager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FileManager.d.ts","sourceRoot":"","sources":["../../../../src/node/helpers/FileManager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAA;AAEvE,cAAM,WAAY,SAAQ,eAAe;WAE1B,qBAAqB,CAAE,IAAI,EAAE,MAAM,GAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;WAMlE,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC;WAIrC,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;WAMjC,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;WAM5B,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;WAMhC,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;WAM9C,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;WAMrD,gBAAgB,CAAE,QAAQ,EAAE,MAAM,GAAI,OAAO,CAAC,MAAM,CAAC;WAIrD,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAIvD;AAED,OAAO,EAAE,WAAW,EAAE,CAAA"}
1
+ {"version":3,"file":"FileManager.d.ts","sourceRoot":"","sources":["../../../../src/node/helpers/FileManager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAA;AAGvE,cAAM,WAAY,SAAQ,eAAe;WAE1B,qBAAqB,CAAE,IAAI,EAAE,MAAM,GAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;WAMlE,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC;WAIrC,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;WAMjC,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;WAM5B,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;WAMhC,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;WAM9C,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;WAMrD,gBAAgB,CAAE,QAAQ,EAAE,MAAM,GAAI,OAAO,CAAC,MAAM,CAAC;WAIrD,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAItD,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAIjD,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;CAIrD;AAED,OAAO,EAAE,WAAW,EAAE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/node/helpers/index.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,WAAW,GAAU,CAAC,YAAY,MAAM,KAAG,OAAO,CAAC,CAAC,CA+BhE,CAAA;AAED,eAAO,MAAM,wBAAwB,QAC9B,MAAM,aACA,MAAM,kBAoBlB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/node/helpers/index.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,WAAW,GAAU,CAAC,YAAY,MAAM,KAAG,OAAO,CAAC,CAAC,CA6BhE,CAAA;AAED,eAAO,MAAM,wBAAwB,QAC9B,MAAM,aACA,MAAM,kBAoBlB,CAAA"}
@@ -13,7 +13,6 @@ const getTsImport = async (filePath) => {
13
13
  logger(`Typescript file not found at ${filePath}`);
14
14
  throw new Error(`Typescript file not found at ${filePath}`);
15
15
  }
16
- console.log('filePath', filePath);
17
16
  let result;
18
17
  try {
19
18
  result = await tsImport.load(filePath, {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../src/node/helpers/index.ts"],"sourcesContent":["import 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('seedSdk: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 console.log('filePath', filePath)\n\n let result\n\n try {\n result = await tsImport.load(filePath, {\n mode: LoadMode.Compile,\n compileOptions: {\n compilerOptions: {\n experimentalDecorators: true,\n emitDecoratorMetadata: true,\n },\n },\n }).catch((e) => {\n logger('Error loading ts file:', e)\n throw e\n })\n\n } catch ( e ) {\n console.error(e)\n }\n\n\n return result\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"],"names":[],"mappings":";;;;;;;;AAQA,MAAM,MAAM,GAAG,KAAK,CAAC,iBAAiB,CAAC;MAE1B,WAAW,GAAG,OAAU,QAAgB,KAAgB;;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,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC;AAEjC,IAAA,IAAI,MAAM;AAEV,IAAA,IAAI;AACF,QAAA,MAAM,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE;YACrC,IAAI,EAAE,QAAQ,CAAC,OAAO;AACtB,YAAA,cAAc,EAAE;AACd,gBAAA,eAAe,EAAE;AACf,oBAAA,sBAAsB,EAAE,IAAI;AAC5B,oBAAA,qBAAqB,EAAE,IAAI;AAC5B,iBAAA;AACF,aAAA;AACF,SAAA,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAI;AACb,YAAA,MAAM,CAAC,wBAAwB,EAAE,CAAC,CAAC;AACnC,YAAA,MAAM,CAAC;AACT,SAAC,CAAC;;IAEF,OAAQ,CAAC,EAAG;AACZ,QAAA,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;;AAIlB,IAAA,OAAO,MAAM;AACf;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../../src/node/helpers/index.ts"],"sourcesContent":["import 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('seedSdk: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 let result\n\n try {\n result = await tsImport.load(filePath, {\n mode: LoadMode.Compile,\n compileOptions: {\n compilerOptions: {\n experimentalDecorators: true,\n emitDecoratorMetadata: true,\n },\n },\n }).catch((e) => {\n logger('Error loading ts file:', e)\n throw e\n })\n\n } catch ( e ) {\n console.error(e)\n }\n\n\n return result\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"],"names":[],"mappings":";;;;;;;;AAQA,MAAM,MAAM,GAAG,KAAK,CAAC,iBAAiB,CAAC;MAE1B,WAAW,GAAG,OAAU,QAAgB,KAAgB;;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,IAAI,MAAM;AAEV,IAAA,IAAI;AACF,QAAA,MAAM,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE;YACrC,IAAI,EAAE,QAAQ,CAAC,OAAO;AACtB,YAAA,cAAc,EAAE;AACd,gBAAA,eAAe,EAAE;AACf,oBAAA,sBAAsB,EAAE,IAAI;AAC5B,oBAAA,qBAAqB,EAAE,IAAI;AAC5B,iBAAA;AACF,aAAA;AACF,SAAA,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAI;AACb,YAAA,MAAM,CAAC,wBAAwB,EAAE,CAAC,CAAC;AACnC,YAAA,MAAM,CAAC;AACT,SAAC,CAAC;;IAEF,OAAQ,CAAC,EAAG;AACZ,QAAA,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;;AAIlB,IAAA,OAAO,MAAM;AACf;;;;"}
@@ -0,0 +1,8 @@
1
+ declare class Image {
2
+ storageTransactionId: string;
3
+ uri: string;
4
+ alt: string;
5
+ src: string;
6
+ }
7
+ export { Image };
8
+ //# sourceMappingURL=model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../../../src/schema/image/model.ts"],"names":[],"mappings":"AAEA,cACM,KAAK;IACD,oBAAoB,EAAG,MAAM,CAAA;IAC7B,GAAG,EAAG,MAAM,CAAA;IACZ,GAAG,EAAG,MAAM,CAAA;IACZ,GAAG,EAAG,MAAM,CAAA;CACrB;AAED,OAAO,EAAE,KAAK,EAAE,CAAA"}
@@ -0,0 +1,29 @@
1
+ import { __decorate, __metadata } from 'tslib';
2
+ import 'reflect-metadata';
3
+ import { Model } from '../model/index.js';
4
+ import { Text } from '../property/index.js';
5
+
6
+ let Image = class Image {
7
+ };
8
+ __decorate([
9
+ Text(),
10
+ __metadata("design:type", String)
11
+ ], Image.prototype, "storageTransactionId", void 0);
12
+ __decorate([
13
+ Text(),
14
+ __metadata("design:type", String)
15
+ ], Image.prototype, "uri", void 0);
16
+ __decorate([
17
+ Text(),
18
+ __metadata("design:type", String)
19
+ ], Image.prototype, "alt", void 0);
20
+ __decorate([
21
+ Text(),
22
+ __metadata("design:type", String)
23
+ ], Image.prototype, "src", void 0);
24
+ Image = __decorate([
25
+ Model
26
+ ], Image);
27
+
28
+ export { Image };
29
+ //# sourceMappingURL=model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model.js","sources":["../../../../../src/schema/image/model.ts"],"sourcesContent":["import { Model, Text } from '@/schema'\n\n@Model\nclass Image {\n @Text() storageTransactionId!: string\n @Text() uri!: string\n @Text() alt!: string\n @Text() src!: string\n}\n\nexport { Image }\n"],"names":[],"mappings":";;;;;AAGM,IAAA,KAAK,GAAX,MAAM,KAAK,CAAA;;AACD,UAAA,CAAA;AAAP,IAAA,IAAI,EAAE;;AAA8B,CAAA,EAAA,KAAA,CAAA,SAAA,EAAA,sBAAA,EAAA,MAAA,CAAA;AAC7B,UAAA,CAAA;AAAP,IAAA,IAAI,EAAE;;AAAa,CAAA,EAAA,KAAA,CAAA,SAAA,EAAA,KAAA,EAAA,MAAA,CAAA;AACZ,UAAA,CAAA;AAAP,IAAA,IAAI,EAAE;;AAAa,CAAA,EAAA,KAAA,CAAA,SAAA,EAAA,KAAA,EAAA,MAAA,CAAA;AACZ,UAAA,CAAA;AAAP,IAAA,IAAI,EAAE;;AAAa,CAAA,EAAA,KAAA,CAAA,SAAA,EAAA,KAAA,EAAA,MAAA,CAAA;AAJhB,KAAK,GAAA,UAAA,CAAA;IADV;AACK,CAAA,EAAA,KAAK,CAKV;;;;"}