@contractspec/example.marketplace 1.56.1 → 1.58.0

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 (302) hide show
  1. package/dist/browser/docs/index.js +103 -0
  2. package/dist/browser/docs/marketplace.docblock.js +103 -0
  3. package/dist/browser/entities/index.js +721 -0
  4. package/dist/browser/entities/order.js +167 -0
  5. package/dist/browser/entities/payout.js +142 -0
  6. package/dist/browser/entities/product.js +152 -0
  7. package/dist/browser/entities/review.js +129 -0
  8. package/dist/browser/entities/store.js +97 -0
  9. package/dist/browser/example.js +42 -0
  10. package/dist/browser/handlers/index.js +303 -0
  11. package/dist/browser/handlers/marketplace.handlers.js +303 -0
  12. package/dist/browser/index.js +2016 -0
  13. package/dist/browser/marketplace.capability.js +40 -0
  14. package/dist/browser/marketplace.feature.js +137 -0
  15. package/dist/browser/order/index.js +307 -0
  16. package/dist/browser/order/order.enum.js +17 -0
  17. package/dist/browser/order/order.event.js +131 -0
  18. package/dist/browser/order/order.operations.js +172 -0
  19. package/dist/browser/order/order.presentation.js +153 -0
  20. package/dist/browser/order/order.schema.js +79 -0
  21. package/dist/browser/payout/index.js +152 -0
  22. package/dist/browser/payout/payout.enum.js +12 -0
  23. package/dist/browser/payout/payout.event.js +55 -0
  24. package/dist/browser/payout/payout.operations.js +94 -0
  25. package/dist/browser/payout/payout.presentation.js +111 -0
  26. package/dist/browser/payout/payout.schema.js +61 -0
  27. package/dist/browser/product/index.js +249 -0
  28. package/dist/browser/product/product.enum.js +13 -0
  29. package/dist/browser/product/product.event.js +74 -0
  30. package/dist/browser/product/product.operations.js +171 -0
  31. package/dist/browser/product/product.presentation.js +158 -0
  32. package/dist/browser/product/product.schema.js +84 -0
  33. package/dist/browser/review/index.js +206 -0
  34. package/dist/browser/review/review.enum.js +11 -0
  35. package/dist/browser/review/review.event.js +50 -0
  36. package/dist/browser/review/review.operations.js +152 -0
  37. package/dist/browser/review/review.presentation.js +123 -0
  38. package/dist/browser/review/review.schema.js +74 -0
  39. package/dist/browser/seeders/index.js +12 -0
  40. package/dist/browser/store/index.js +142 -0
  41. package/dist/browser/store/store.enum.js +11 -0
  42. package/dist/browser/store/store.event.js +52 -0
  43. package/dist/browser/store/store.operations.js +88 -0
  44. package/dist/browser/store/store.presentation.js +94 -0
  45. package/dist/browser/store/store.schema.js +43 -0
  46. package/dist/browser/tests/operations.test-spec.js +139 -0
  47. package/dist/browser/ui/MarketplaceDashboard.js +418 -0
  48. package/dist/browser/ui/hooks/index.js +59 -0
  49. package/dist/browser/ui/hooks/useMarketplaceData.js +56 -0
  50. package/dist/browser/ui/index.js +668 -0
  51. package/dist/browser/ui/renderers/index.js +248 -0
  52. package/dist/browser/ui/renderers/marketplace.markdown.js +248 -0
  53. package/dist/docs/index.d.ts +2 -1
  54. package/dist/docs/index.d.ts.map +1 -0
  55. package/dist/docs/index.js +104 -1
  56. package/dist/docs/marketplace.docblock.d.ts +2 -1
  57. package/dist/docs/marketplace.docblock.d.ts.map +1 -0
  58. package/dist/docs/marketplace.docblock.js +46 -57
  59. package/dist/entities/index.d.ts +302 -307
  60. package/dist/entities/index.d.ts.map +1 -1
  61. package/dist/entities/index.js +719 -43
  62. package/dist/entities/order.d.ts +77 -82
  63. package/dist/entities/order.d.ts.map +1 -1
  64. package/dist/entities/order.js +162 -167
  65. package/dist/entities/payout.d.ts +64 -69
  66. package/dist/entities/payout.d.ts.map +1 -1
  67. package/dist/entities/payout.js +137 -156
  68. package/dist/entities/product.d.ts +69 -74
  69. package/dist/entities/product.d.ts.map +1 -1
  70. package/dist/entities/product.js +148 -156
  71. package/dist/entities/review.d.ts +55 -60
  72. package/dist/entities/review.d.ts.map +1 -1
  73. package/dist/entities/review.js +124 -146
  74. package/dist/entities/store.d.ts +40 -45
  75. package/dist/entities/store.d.ts.map +1 -1
  76. package/dist/entities/store.js +94 -106
  77. package/dist/example.d.ts +2 -6
  78. package/dist/example.d.ts.map +1 -1
  79. package/dist/example.js +40 -55
  80. package/dist/handlers/index.d.ts +2 -2
  81. package/dist/handlers/index.d.ts.map +1 -0
  82. package/dist/handlers/index.js +304 -3
  83. package/dist/handlers/marketplace.handlers.d.ts +138 -138
  84. package/dist/handlers/marketplace.handlers.d.ts.map +1 -1
  85. package/dist/handlers/marketplace.handlers.js +284 -309
  86. package/dist/index.d.ts +13 -31
  87. package/dist/index.d.ts.map +1 -0
  88. package/dist/index.js +2017 -32
  89. package/dist/marketplace.capability.d.ts +3 -8
  90. package/dist/marketplace.capability.d.ts.map +1 -1
  91. package/dist/marketplace.capability.js +41 -34
  92. package/dist/marketplace.feature.d.ts +1 -7
  93. package/dist/marketplace.feature.d.ts.map +1 -1
  94. package/dist/marketplace.feature.js +136 -313
  95. package/dist/node/docs/index.js +103 -0
  96. package/dist/node/docs/marketplace.docblock.js +103 -0
  97. package/dist/node/entities/index.js +721 -0
  98. package/dist/node/entities/order.js +167 -0
  99. package/dist/node/entities/payout.js +142 -0
  100. package/dist/node/entities/product.js +152 -0
  101. package/dist/node/entities/review.js +129 -0
  102. package/dist/node/entities/store.js +97 -0
  103. package/dist/node/example.js +42 -0
  104. package/dist/node/handlers/index.js +303 -0
  105. package/dist/node/handlers/marketplace.handlers.js +303 -0
  106. package/dist/node/index.js +2016 -0
  107. package/dist/node/marketplace.capability.js +40 -0
  108. package/dist/node/marketplace.feature.js +137 -0
  109. package/dist/node/order/index.js +307 -0
  110. package/dist/node/order/order.enum.js +17 -0
  111. package/dist/node/order/order.event.js +131 -0
  112. package/dist/node/order/order.operations.js +172 -0
  113. package/dist/node/order/order.presentation.js +153 -0
  114. package/dist/node/order/order.schema.js +79 -0
  115. package/dist/node/payout/index.js +152 -0
  116. package/dist/node/payout/payout.enum.js +12 -0
  117. package/dist/node/payout/payout.event.js +55 -0
  118. package/dist/node/payout/payout.operations.js +94 -0
  119. package/dist/node/payout/payout.presentation.js +111 -0
  120. package/dist/node/payout/payout.schema.js +61 -0
  121. package/dist/node/product/index.js +249 -0
  122. package/dist/node/product/product.enum.js +13 -0
  123. package/dist/node/product/product.event.js +74 -0
  124. package/dist/node/product/product.operations.js +171 -0
  125. package/dist/node/product/product.presentation.js +158 -0
  126. package/dist/node/product/product.schema.js +84 -0
  127. package/dist/node/review/index.js +206 -0
  128. package/dist/node/review/review.enum.js +11 -0
  129. package/dist/node/review/review.event.js +50 -0
  130. package/dist/node/review/review.operations.js +152 -0
  131. package/dist/node/review/review.presentation.js +123 -0
  132. package/dist/node/review/review.schema.js +74 -0
  133. package/dist/node/seeders/index.js +12 -0
  134. package/dist/node/store/index.js +142 -0
  135. package/dist/node/store/store.enum.js +11 -0
  136. package/dist/node/store/store.event.js +52 -0
  137. package/dist/node/store/store.operations.js +88 -0
  138. package/dist/node/store/store.presentation.js +94 -0
  139. package/dist/node/store/store.schema.js +43 -0
  140. package/dist/node/tests/operations.test-spec.js +139 -0
  141. package/dist/node/ui/MarketplaceDashboard.js +418 -0
  142. package/dist/node/ui/hooks/index.js +59 -0
  143. package/dist/node/ui/hooks/useMarketplaceData.js +56 -0
  144. package/dist/node/ui/index.js +668 -0
  145. package/dist/node/ui/renderers/index.js +248 -0
  146. package/dist/node/ui/renderers/marketplace.markdown.js +248 -0
  147. package/dist/order/index.d.ts +8 -5
  148. package/dist/order/index.d.ts.map +1 -0
  149. package/dist/order/index.js +307 -5
  150. package/dist/order/order.enum.d.ts +1 -6
  151. package/dist/order/order.enum.d.ts.map +1 -1
  152. package/dist/order/order.enum.js +16 -20
  153. package/dist/order/order.event.d.ts +133 -139
  154. package/dist/order/order.event.d.ts.map +1 -1
  155. package/dist/order/order.event.js +121 -205
  156. package/dist/order/order.operations.d.ts +291 -297
  157. package/dist/order/order.operations.d.ts.map +1 -1
  158. package/dist/order/order.operations.js +169 -115
  159. package/dist/order/order.presentation.d.ts +3 -8
  160. package/dist/order/order.presentation.d.ts.map +1 -1
  161. package/dist/order/order.presentation.js +149 -81
  162. package/dist/order/order.schema.d.ts +143 -148
  163. package/dist/order/order.schema.d.ts.map +1 -1
  164. package/dist/order/order.schema.js +75 -150
  165. package/dist/payout/index.d.ts +8 -5
  166. package/dist/payout/index.d.ts.map +1 -0
  167. package/dist/payout/index.js +152 -5
  168. package/dist/payout/payout.enum.d.ts +1 -6
  169. package/dist/payout/payout.enum.d.ts.map +1 -1
  170. package/dist/payout/payout.enum.js +11 -15
  171. package/dist/payout/payout.event.d.ts +54 -60
  172. package/dist/payout/payout.event.d.ts.map +1 -1
  173. package/dist/payout/payout.event.js +51 -87
  174. package/dist/payout/payout.operations.d.ts +82 -88
  175. package/dist/payout/payout.operations.d.ts.map +1 -1
  176. package/dist/payout/payout.operations.js +92 -50
  177. package/dist/payout/payout.presentation.d.ts +2 -7
  178. package/dist/payout/payout.presentation.d.ts.map +1 -1
  179. package/dist/payout/payout.presentation.js +108 -56
  180. package/dist/payout/payout.schema.d.ts +139 -144
  181. package/dist/payout/payout.schema.d.ts.map +1 -1
  182. package/dist/payout/payout.schema.js +58 -112
  183. package/dist/product/index.d.ts +8 -5
  184. package/dist/product/index.d.ts.map +1 -0
  185. package/dist/product/index.js +249 -5
  186. package/dist/product/product.enum.d.ts +1 -6
  187. package/dist/product/product.enum.d.ts.map +1 -1
  188. package/dist/product/product.enum.js +12 -16
  189. package/dist/product/product.event.d.ts +63 -69
  190. package/dist/product/product.event.d.ts.map +1 -1
  191. package/dist/product/product.event.js +68 -113
  192. package/dist/product/product.operations.d.ts +225 -231
  193. package/dist/product/product.operations.d.ts.map +1 -1
  194. package/dist/product/product.operations.js +168 -104
  195. package/dist/product/product.presentation.d.ts +3 -8
  196. package/dist/product/product.presentation.d.ts.map +1 -1
  197. package/dist/product/product.presentation.js +154 -81
  198. package/dist/product/product.schema.d.ts +196 -201
  199. package/dist/product/product.schema.d.ts.map +1 -1
  200. package/dist/product/product.schema.js +80 -171
  201. package/dist/review/index.d.ts +8 -5
  202. package/dist/review/index.d.ts.map +1 -0
  203. package/dist/review/index.js +206 -5
  204. package/dist/review/review.enum.d.ts +1 -6
  205. package/dist/review/review.enum.d.ts.map +1 -1
  206. package/dist/review/review.enum.js +10 -14
  207. package/dist/review/review.event.d.ts +46 -52
  208. package/dist/review/review.event.d.ts.map +1 -1
  209. package/dist/review/review.event.js +46 -79
  210. package/dist/review/review.operations.d.ts +190 -196
  211. package/dist/review/review.operations.d.ts.map +1 -1
  212. package/dist/review/review.operations.js +149 -102
  213. package/dist/review/review.presentation.d.ts +2 -7
  214. package/dist/review/review.presentation.d.ts.map +1 -1
  215. package/dist/review/review.presentation.js +120 -56
  216. package/dist/review/review.schema.d.ts +164 -169
  217. package/dist/review/review.schema.d.ts.map +1 -1
  218. package/dist/review/review.schema.js +70 -151
  219. package/dist/seeders/index.d.ts +4 -8
  220. package/dist/seeders/index.d.ts.map +1 -1
  221. package/dist/seeders/index.js +11 -16
  222. package/dist/store/index.d.ts +8 -5
  223. package/dist/store/index.d.ts.map +1 -0
  224. package/dist/store/index.js +142 -5
  225. package/dist/store/store.enum.d.ts +1 -6
  226. package/dist/store/store.enum.d.ts.map +1 -1
  227. package/dist/store/store.enum.js +10 -14
  228. package/dist/store/store.event.d.ts +42 -48
  229. package/dist/store/store.event.d.ts.map +1 -1
  230. package/dist/store/store.event.js +48 -75
  231. package/dist/store/store.operations.d.ts +98 -104
  232. package/dist/store/store.operations.d.ts.map +1 -1
  233. package/dist/store/store.operations.js +86 -58
  234. package/dist/store/store.presentation.d.ts +2 -7
  235. package/dist/store/store.presentation.d.ts.map +1 -1
  236. package/dist/store/store.presentation.js +91 -56
  237. package/dist/store/store.schema.d.ts +70 -75
  238. package/dist/store/store.schema.d.ts.map +1 -1
  239. package/dist/store/store.schema.js +41 -90
  240. package/dist/tests/operations.test-spec.d.ts +5 -10
  241. package/dist/tests/operations.test-spec.d.ts.map +1 -1
  242. package/dist/tests/operations.test-spec.js +134 -146
  243. package/dist/ui/MarketplaceDashboard.d.ts +1 -6
  244. package/dist/ui/MarketplaceDashboard.d.ts.map +1 -1
  245. package/dist/ui/MarketplaceDashboard.js +413 -313
  246. package/dist/ui/hooks/index.d.ts +2 -2
  247. package/dist/ui/hooks/index.d.ts.map +1 -0
  248. package/dist/ui/hooks/index.js +59 -4
  249. package/dist/ui/hooks/useMarketplaceData.d.ts +16 -20
  250. package/dist/ui/hooks/useMarketplaceData.d.ts.map +1 -1
  251. package/dist/ui/hooks/useMarketplaceData.js +53 -60
  252. package/dist/ui/index.d.ts +7 -6
  253. package/dist/ui/index.d.ts.map +1 -0
  254. package/dist/ui/index.js +668 -5
  255. package/dist/ui/renderers/index.d.ts +2 -2
  256. package/dist/ui/renderers/index.d.ts.map +1 -0
  257. package/dist/ui/renderers/index.js +249 -3
  258. package/dist/ui/renderers/marketplace.markdown.d.ts +13 -15
  259. package/dist/ui/renderers/marketplace.markdown.d.ts.map +1 -1
  260. package/dist/ui/renderers/marketplace.markdown.js +241 -236
  261. package/package.json +529 -110
  262. package/dist/docs/marketplace.docblock.js.map +0 -1
  263. package/dist/entities/index.js.map +0 -1
  264. package/dist/entities/order.js.map +0 -1
  265. package/dist/entities/payout.js.map +0 -1
  266. package/dist/entities/product.js.map +0 -1
  267. package/dist/entities/review.js.map +0 -1
  268. package/dist/entities/store.js.map +0 -1
  269. package/dist/example.js.map +0 -1
  270. package/dist/handlers/marketplace.handlers.js.map +0 -1
  271. package/dist/marketplace.capability.js.map +0 -1
  272. package/dist/marketplace.feature.js.map +0 -1
  273. package/dist/order/order.enum.js.map +0 -1
  274. package/dist/order/order.event.js.map +0 -1
  275. package/dist/order/order.operations.js.map +0 -1
  276. package/dist/order/order.presentation.js.map +0 -1
  277. package/dist/order/order.schema.js.map +0 -1
  278. package/dist/payout/payout.enum.js.map +0 -1
  279. package/dist/payout/payout.event.js.map +0 -1
  280. package/dist/payout/payout.operations.js.map +0 -1
  281. package/dist/payout/payout.presentation.js.map +0 -1
  282. package/dist/payout/payout.schema.js.map +0 -1
  283. package/dist/product/product.enum.js.map +0 -1
  284. package/dist/product/product.event.js.map +0 -1
  285. package/dist/product/product.operations.js.map +0 -1
  286. package/dist/product/product.presentation.js.map +0 -1
  287. package/dist/product/product.schema.js.map +0 -1
  288. package/dist/review/review.enum.js.map +0 -1
  289. package/dist/review/review.event.js.map +0 -1
  290. package/dist/review/review.operations.js.map +0 -1
  291. package/dist/review/review.presentation.js.map +0 -1
  292. package/dist/review/review.schema.js.map +0 -1
  293. package/dist/seeders/index.js.map +0 -1
  294. package/dist/store/store.enum.js.map +0 -1
  295. package/dist/store/store.event.js.map +0 -1
  296. package/dist/store/store.operations.js.map +0 -1
  297. package/dist/store/store.presentation.js.map +0 -1
  298. package/dist/store/store.schema.js.map +0 -1
  299. package/dist/tests/operations.test-spec.js.map +0 -1
  300. package/dist/ui/MarketplaceDashboard.js.map +0 -1
  301. package/dist/ui/hooks/useMarketplaceData.js.map +0 -1
  302. package/dist/ui/renderers/marketplace.markdown.js.map +0 -1
@@ -1,93 +1,88 @@
1
- import * as _contractspec_lib_schema475 from "@contractspec/lib.schema";
2
-
3
- //#region src/entities/product.d.ts
4
1
  /**
5
2
  * Product status enum.
6
3
  */
7
- declare const ProductStatusEnum: _contractspec_lib_schema475.EntityEnumDef;
4
+ export declare const ProductStatusEnum: import("@contractspec/lib.schema").EntityEnumDef;
8
5
  /**
9
6
  * Product type enum.
10
7
  */
11
- declare const ProductTypeEnum: _contractspec_lib_schema475.EntityEnumDef;
8
+ export declare const ProductTypeEnum: import("@contractspec/lib.schema").EntityEnumDef;
12
9
  /**
13
10
  * Product entity - an item for sale on the marketplace.
14
11
  */
15
- declare const ProductEntity: _contractspec_lib_schema475.EntitySpec<{
16
- id: _contractspec_lib_schema475.EntityScalarField;
17
- storeId: _contractspec_lib_schema475.EntityScalarField;
18
- name: _contractspec_lib_schema475.EntityScalarField;
19
- slug: _contractspec_lib_schema475.EntityScalarField;
20
- description: _contractspec_lib_schema475.EntityScalarField;
21
- shortDescription: _contractspec_lib_schema475.EntityScalarField;
22
- status: _contractspec_lib_schema475.EntityEnumField;
23
- type: _contractspec_lib_schema475.EntityEnumField;
24
- price: _contractspec_lib_schema475.EntityScalarField;
25
- compareAtPrice: _contractspec_lib_schema475.EntityScalarField;
26
- currency: _contractspec_lib_schema475.EntityScalarField;
27
- sku: _contractspec_lib_schema475.EntityScalarField;
28
- barcode: _contractspec_lib_schema475.EntityScalarField;
29
- quantity: _contractspec_lib_schema475.EntityScalarField;
30
- trackInventory: _contractspec_lib_schema475.EntityScalarField;
31
- allowBackorder: _contractspec_lib_schema475.EntityScalarField;
32
- lowStockThreshold: _contractspec_lib_schema475.EntityScalarField;
33
- weight: _contractspec_lib_schema475.EntityScalarField;
34
- weightUnit: _contractspec_lib_schema475.EntityScalarField;
35
- categoryId: _contractspec_lib_schema475.EntityScalarField;
36
- tags: _contractspec_lib_schema475.EntityScalarField;
37
- primaryImageId: _contractspec_lib_schema475.EntityScalarField;
38
- seoTitle: _contractspec_lib_schema475.EntityScalarField;
39
- seoDescription: _contractspec_lib_schema475.EntityScalarField;
40
- attributes: _contractspec_lib_schema475.EntityScalarField;
41
- reviewCount: _contractspec_lib_schema475.EntityScalarField;
42
- averageRating: _contractspec_lib_schema475.EntityScalarField;
43
- totalSold: _contractspec_lib_schema475.EntityScalarField;
44
- createdAt: _contractspec_lib_schema475.EntityScalarField;
45
- updatedAt: _contractspec_lib_schema475.EntityScalarField;
46
- publishedAt: _contractspec_lib_schema475.EntityScalarField;
47
- store: _contractspec_lib_schema475.EntityRelationField;
48
- variants: _contractspec_lib_schema475.EntityRelationField;
49
- orderItems: _contractspec_lib_schema475.EntityRelationField;
50
- reviews: _contractspec_lib_schema475.EntityRelationField;
12
+ export declare const ProductEntity: import("@contractspec/lib.schema").EntitySpec<{
13
+ id: import("@contractspec/lib.schema").EntityScalarField;
14
+ storeId: import("@contractspec/lib.schema").EntityScalarField;
15
+ name: import("@contractspec/lib.schema").EntityScalarField;
16
+ slug: import("@contractspec/lib.schema").EntityScalarField;
17
+ description: import("@contractspec/lib.schema").EntityScalarField;
18
+ shortDescription: import("@contractspec/lib.schema").EntityScalarField;
19
+ status: import("@contractspec/lib.schema").EntityEnumField;
20
+ type: import("@contractspec/lib.schema").EntityEnumField;
21
+ price: import("@contractspec/lib.schema").EntityScalarField;
22
+ compareAtPrice: import("@contractspec/lib.schema").EntityScalarField;
23
+ currency: import("@contractspec/lib.schema").EntityScalarField;
24
+ sku: import("@contractspec/lib.schema").EntityScalarField;
25
+ barcode: import("@contractspec/lib.schema").EntityScalarField;
26
+ quantity: import("@contractspec/lib.schema").EntityScalarField;
27
+ trackInventory: import("@contractspec/lib.schema").EntityScalarField;
28
+ allowBackorder: import("@contractspec/lib.schema").EntityScalarField;
29
+ lowStockThreshold: import("@contractspec/lib.schema").EntityScalarField;
30
+ weight: import("@contractspec/lib.schema").EntityScalarField;
31
+ weightUnit: import("@contractspec/lib.schema").EntityScalarField;
32
+ categoryId: import("@contractspec/lib.schema").EntityScalarField;
33
+ tags: import("@contractspec/lib.schema").EntityScalarField;
34
+ primaryImageId: import("@contractspec/lib.schema").EntityScalarField;
35
+ seoTitle: import("@contractspec/lib.schema").EntityScalarField;
36
+ seoDescription: import("@contractspec/lib.schema").EntityScalarField;
37
+ attributes: import("@contractspec/lib.schema").EntityScalarField;
38
+ reviewCount: import("@contractspec/lib.schema").EntityScalarField;
39
+ averageRating: import("@contractspec/lib.schema").EntityScalarField;
40
+ totalSold: import("@contractspec/lib.schema").EntityScalarField;
41
+ createdAt: import("@contractspec/lib.schema").EntityScalarField;
42
+ updatedAt: import("@contractspec/lib.schema").EntityScalarField;
43
+ publishedAt: import("@contractspec/lib.schema").EntityScalarField;
44
+ store: import("@contractspec/lib.schema").EntityRelationField;
45
+ variants: import("@contractspec/lib.schema").EntityRelationField;
46
+ orderItems: import("@contractspec/lib.schema").EntityRelationField;
47
+ reviews: import("@contractspec/lib.schema").EntityRelationField;
51
48
  }>;
52
49
  /**
53
50
  * Product variant entity - variations of a product (size, color, etc.).
54
51
  */
55
- declare const ProductVariantEntity: _contractspec_lib_schema475.EntitySpec<{
56
- id: _contractspec_lib_schema475.EntityScalarField;
57
- productId: _contractspec_lib_schema475.EntityScalarField;
58
- name: _contractspec_lib_schema475.EntityScalarField;
59
- options: _contractspec_lib_schema475.EntityScalarField;
60
- price: _contractspec_lib_schema475.EntityScalarField;
61
- compareAtPrice: _contractspec_lib_schema475.EntityScalarField;
62
- sku: _contractspec_lib_schema475.EntityScalarField;
63
- barcode: _contractspec_lib_schema475.EntityScalarField;
64
- quantity: _contractspec_lib_schema475.EntityScalarField;
65
- imageId: _contractspec_lib_schema475.EntityScalarField;
66
- isActive: _contractspec_lib_schema475.EntityScalarField;
67
- position: _contractspec_lib_schema475.EntityScalarField;
68
- createdAt: _contractspec_lib_schema475.EntityScalarField;
69
- updatedAt: _contractspec_lib_schema475.EntityScalarField;
70
- product: _contractspec_lib_schema475.EntityRelationField;
52
+ export declare const ProductVariantEntity: import("@contractspec/lib.schema").EntitySpec<{
53
+ id: import("@contractspec/lib.schema").EntityScalarField;
54
+ productId: import("@contractspec/lib.schema").EntityScalarField;
55
+ name: import("@contractspec/lib.schema").EntityScalarField;
56
+ options: import("@contractspec/lib.schema").EntityScalarField;
57
+ price: import("@contractspec/lib.schema").EntityScalarField;
58
+ compareAtPrice: import("@contractspec/lib.schema").EntityScalarField;
59
+ sku: import("@contractspec/lib.schema").EntityScalarField;
60
+ barcode: import("@contractspec/lib.schema").EntityScalarField;
61
+ quantity: import("@contractspec/lib.schema").EntityScalarField;
62
+ imageId: import("@contractspec/lib.schema").EntityScalarField;
63
+ isActive: import("@contractspec/lib.schema").EntityScalarField;
64
+ position: import("@contractspec/lib.schema").EntityScalarField;
65
+ createdAt: import("@contractspec/lib.schema").EntityScalarField;
66
+ updatedAt: import("@contractspec/lib.schema").EntityScalarField;
67
+ product: import("@contractspec/lib.schema").EntityRelationField;
71
68
  }>;
72
69
  /**
73
70
  * Category entity - product categorization.
74
71
  */
75
- declare const CategoryEntity: _contractspec_lib_schema475.EntitySpec<{
76
- id: _contractspec_lib_schema475.EntityScalarField;
77
- name: _contractspec_lib_schema475.EntityScalarField;
78
- slug: _contractspec_lib_schema475.EntityScalarField;
79
- description: _contractspec_lib_schema475.EntityScalarField;
80
- parentId: _contractspec_lib_schema475.EntityScalarField;
81
- path: _contractspec_lib_schema475.EntityScalarField;
82
- level: _contractspec_lib_schema475.EntityScalarField;
83
- position: _contractspec_lib_schema475.EntityScalarField;
84
- imageId: _contractspec_lib_schema475.EntityScalarField;
85
- isActive: _contractspec_lib_schema475.EntityScalarField;
86
- createdAt: _contractspec_lib_schema475.EntityScalarField;
87
- updatedAt: _contractspec_lib_schema475.EntityScalarField;
88
- parent: _contractspec_lib_schema475.EntityRelationField;
89
- children: _contractspec_lib_schema475.EntityRelationField;
72
+ export declare const CategoryEntity: import("@contractspec/lib.schema").EntitySpec<{
73
+ id: import("@contractspec/lib.schema").EntityScalarField;
74
+ name: import("@contractspec/lib.schema").EntityScalarField;
75
+ slug: import("@contractspec/lib.schema").EntityScalarField;
76
+ description: import("@contractspec/lib.schema").EntityScalarField;
77
+ parentId: import("@contractspec/lib.schema").EntityScalarField;
78
+ path: import("@contractspec/lib.schema").EntityScalarField;
79
+ level: import("@contractspec/lib.schema").EntityScalarField;
80
+ position: import("@contractspec/lib.schema").EntityScalarField;
81
+ imageId: import("@contractspec/lib.schema").EntityScalarField;
82
+ isActive: import("@contractspec/lib.schema").EntityScalarField;
83
+ createdAt: import("@contractspec/lib.schema").EntityScalarField;
84
+ updatedAt: import("@contractspec/lib.schema").EntityScalarField;
85
+ parent: import("@contractspec/lib.schema").EntityRelationField;
86
+ children: import("@contractspec/lib.schema").EntityRelationField;
90
87
  }>;
91
- //#endregion
92
- export { CategoryEntity, ProductEntity, ProductStatusEnum, ProductTypeEnum, ProductVariantEntity };
93
88
  //# sourceMappingURL=product.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"product.d.ts","names":[],"sources":["../../src/entities/product.ts"],"sourcesContent":[],"mappings":";;;;;;AAUa,cAAA,iBAYX,EAAA,2BAAA,CAZ4B,aAY5B;AAKF;AAUA;;cAVa,iBAKX,2BAAA,CAL0B;;;;cAUf,2CAAa;MAsFxB,2BAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0DAtFwB;EAAA,WAAA,+CAAA;EA2Fb,KAAA,iDAiDX;EAAA,QAAA,iDAAA;;;;;;;cAjDW,kDAAoB;MAiD/B,2BAAA,CAAA;;;;;;;wDAjD+B;EAAA,QAAA,+CAAA;EAsDpB,OAAA,+CAsCX;EAAA,QAAA,+CAAA;;;;;;;;;cAtCW,4CAAc;MAsCzB,2BAAA,CAAA;;;;yDAtCyB;EAAA,IAAA,+CAAA"}
1
+ {"version":3,"file":"product.d.ts","sourceRoot":"","sources":["../../src/entities/product.ts"],"names":[],"mappings":"AAOA;;GAEG;AACH,eAAO,MAAM,iBAAiB,kDAY5B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,eAAe,kDAK1B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsFxB,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;EAiD/B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;EAsCzB,CAAC"}
@@ -1,161 +1,153 @@
1
- import { defineEntity, defineEntityEnum, field, index } from "@contractspec/lib.schema";
2
-
3
- //#region src/entities/product.ts
4
- /**
5
- * Product status enum.
6
- */
7
- const ProductStatusEnum = defineEntityEnum({
8
- name: "ProductStatus",
9
- values: [
10
- "DRAFT",
11
- "PENDING_REVIEW",
12
- "ACTIVE",
13
- "OUT_OF_STOCK",
14
- "DISCONTINUED",
15
- "REJECTED"
16
- ],
17
- schema: "marketplace",
18
- description: "Status of a product listing."
1
+ // @bun
2
+ // src/entities/product.ts
3
+ import {
4
+ defineEntity,
5
+ defineEntityEnum,
6
+ field,
7
+ index
8
+ } from "@contractspec/lib.schema";
9
+ var ProductStatusEnum = defineEntityEnum({
10
+ name: "ProductStatus",
11
+ values: [
12
+ "DRAFT",
13
+ "PENDING_REVIEW",
14
+ "ACTIVE",
15
+ "OUT_OF_STOCK",
16
+ "DISCONTINUED",
17
+ "REJECTED"
18
+ ],
19
+ schema: "marketplace",
20
+ description: "Status of a product listing."
19
21
  });
20
- /**
21
- * Product type enum.
22
- */
23
- const ProductTypeEnum = defineEntityEnum({
24
- name: "ProductType",
25
- values: [
26
- "PHYSICAL",
27
- "DIGITAL",
28
- "SERVICE",
29
- "SUBSCRIPTION"
30
- ],
31
- schema: "marketplace",
32
- description: "Type of product."
22
+ var ProductTypeEnum = defineEntityEnum({
23
+ name: "ProductType",
24
+ values: ["PHYSICAL", "DIGITAL", "SERVICE", "SUBSCRIPTION"],
25
+ schema: "marketplace",
26
+ description: "Type of product."
33
27
  });
34
- /**
35
- * Product entity - an item for sale on the marketplace.
36
- */
37
- const ProductEntity = defineEntity({
38
- name: "Product",
39
- description: "A product listing on the marketplace.",
40
- schema: "marketplace",
41
- map: "product",
42
- fields: {
43
- id: field.id({ description: "Unique product ID" }),
44
- storeId: field.foreignKey(),
45
- name: field.string({ description: "Product name" }),
46
- slug: field.string({ description: "URL-friendly identifier" }),
47
- description: field.string({ isOptional: true }),
48
- shortDescription: field.string({ isOptional: true }),
49
- status: field.enum("ProductStatus", { default: "DRAFT" }),
50
- type: field.enum("ProductType", { default: "PHYSICAL" }),
51
- price: field.decimal({ description: "Base price" }),
52
- compareAtPrice: field.decimal({
53
- isOptional: true,
54
- description: "Original price for showing discounts"
55
- }),
56
- currency: field.string({ default: "\"USD\"" }),
57
- sku: field.string({ isOptional: true }),
58
- barcode: field.string({ isOptional: true }),
59
- quantity: field.int({ default: 0 }),
60
- trackInventory: field.boolean({ default: true }),
61
- allowBackorder: field.boolean({ default: false }),
62
- lowStockThreshold: field.int({ default: 5 }),
63
- weight: field.decimal({ isOptional: true }),
64
- weightUnit: field.string({ default: "\"kg\"" }),
65
- categoryId: field.string({ isOptional: true }),
66
- tags: field.string({ isArray: true }),
67
- primaryImageId: field.string({ isOptional: true }),
68
- seoTitle: field.string({ isOptional: true }),
69
- seoDescription: field.string({ isOptional: true }),
70
- attributes: field.json({
71
- isOptional: true,
72
- description: "Custom product attributes"
73
- }),
74
- reviewCount: field.int({ default: 0 }),
75
- averageRating: field.decimal({ default: 0 }),
76
- totalSold: field.int({ default: 0 }),
77
- createdAt: field.createdAt(),
78
- updatedAt: field.updatedAt(),
79
- publishedAt: field.dateTime({ isOptional: true }),
80
- store: field.belongsTo("Store", ["storeId"], ["id"]),
81
- variants: field.hasMany("ProductVariant"),
82
- orderItems: field.hasMany("OrderItem"),
83
- reviews: field.hasMany("Review")
84
- },
85
- indexes: [
86
- index.unique(["storeId", "slug"]),
87
- index.on(["storeId", "status"]),
88
- index.on(["status", "publishedAt"]),
89
- index.on(["categoryId", "status"]),
90
- index.on(["averageRating"]),
91
- index.on(["totalSold"]),
92
- index.on(["price"])
93
- ],
94
- enums: [ProductStatusEnum, ProductTypeEnum]
28
+ var ProductEntity = defineEntity({
29
+ name: "Product",
30
+ description: "A product listing on the marketplace.",
31
+ schema: "marketplace",
32
+ map: "product",
33
+ fields: {
34
+ id: field.id({ description: "Unique product ID" }),
35
+ storeId: field.foreignKey(),
36
+ name: field.string({ description: "Product name" }),
37
+ slug: field.string({ description: "URL-friendly identifier" }),
38
+ description: field.string({ isOptional: true }),
39
+ shortDescription: field.string({ isOptional: true }),
40
+ status: field.enum("ProductStatus", { default: "DRAFT" }),
41
+ type: field.enum("ProductType", { default: "PHYSICAL" }),
42
+ price: field.decimal({ description: "Base price" }),
43
+ compareAtPrice: field.decimal({
44
+ isOptional: true,
45
+ description: "Original price for showing discounts"
46
+ }),
47
+ currency: field.string({ default: '"USD"' }),
48
+ sku: field.string({ isOptional: true }),
49
+ barcode: field.string({ isOptional: true }),
50
+ quantity: field.int({ default: 0 }),
51
+ trackInventory: field.boolean({ default: true }),
52
+ allowBackorder: field.boolean({ default: false }),
53
+ lowStockThreshold: field.int({ default: 5 }),
54
+ weight: field.decimal({ isOptional: true }),
55
+ weightUnit: field.string({ default: '"kg"' }),
56
+ categoryId: field.string({ isOptional: true }),
57
+ tags: field.string({ isArray: true }),
58
+ primaryImageId: field.string({ isOptional: true }),
59
+ seoTitle: field.string({ isOptional: true }),
60
+ seoDescription: field.string({ isOptional: true }),
61
+ attributes: field.json({
62
+ isOptional: true,
63
+ description: "Custom product attributes"
64
+ }),
65
+ reviewCount: field.int({ default: 0 }),
66
+ averageRating: field.decimal({ default: 0 }),
67
+ totalSold: field.int({ default: 0 }),
68
+ createdAt: field.createdAt(),
69
+ updatedAt: field.updatedAt(),
70
+ publishedAt: field.dateTime({ isOptional: true }),
71
+ store: field.belongsTo("Store", ["storeId"], ["id"]),
72
+ variants: field.hasMany("ProductVariant"),
73
+ orderItems: field.hasMany("OrderItem"),
74
+ reviews: field.hasMany("Review")
75
+ },
76
+ indexes: [
77
+ index.unique(["storeId", "slug"]),
78
+ index.on(["storeId", "status"]),
79
+ index.on(["status", "publishedAt"]),
80
+ index.on(["categoryId", "status"]),
81
+ index.on(["averageRating"]),
82
+ index.on(["totalSold"]),
83
+ index.on(["price"])
84
+ ],
85
+ enums: [ProductStatusEnum, ProductTypeEnum]
95
86
  });
96
- /**
97
- * Product variant entity - variations of a product (size, color, etc.).
98
- */
99
- const ProductVariantEntity = defineEntity({
100
- name: "ProductVariant",
101
- description: "A variant of a product with specific options.",
102
- schema: "marketplace",
103
- map: "product_variant",
104
- fields: {
105
- id: field.id(),
106
- productId: field.foreignKey(),
107
- name: field.string({ description: "Variant name (e.g., \"Large / Blue\")" }),
108
- options: field.json({ description: "Variant options (e.g., {size: \"L\", color: \"Blue\"})" }),
109
- price: field.decimal({ description: "Variant-specific price" }),
110
- compareAtPrice: field.decimal({ isOptional: true }),
111
- sku: field.string({ isOptional: true }),
112
- barcode: field.string({ isOptional: true }),
113
- quantity: field.int({ default: 0 }),
114
- imageId: field.string({ isOptional: true }),
115
- isActive: field.boolean({ default: true }),
116
- position: field.int({ default: 0 }),
117
- createdAt: field.createdAt(),
118
- updatedAt: field.updatedAt(),
119
- product: field.belongsTo("Product", ["productId"], ["id"], { onDelete: "Cascade" })
120
- },
121
- indexes: [
122
- index.on(["productId", "sku"]),
123
- index.on(["productId", "position"]),
124
- index.on(["barcode"])
125
- ]
87
+ var ProductVariantEntity = defineEntity({
88
+ name: "ProductVariant",
89
+ description: "A variant of a product with specific options.",
90
+ schema: "marketplace",
91
+ map: "product_variant",
92
+ fields: {
93
+ id: field.id(),
94
+ productId: field.foreignKey(),
95
+ name: field.string({ description: 'Variant name (e.g., "Large / Blue")' }),
96
+ options: field.json({
97
+ description: 'Variant options (e.g., {size: "L", color: "Blue"})'
98
+ }),
99
+ price: field.decimal({ description: "Variant-specific price" }),
100
+ compareAtPrice: field.decimal({ isOptional: true }),
101
+ sku: field.string({ isOptional: true }),
102
+ barcode: field.string({ isOptional: true }),
103
+ quantity: field.int({ default: 0 }),
104
+ imageId: field.string({ isOptional: true }),
105
+ isActive: field.boolean({ default: true }),
106
+ position: field.int({ default: 0 }),
107
+ createdAt: field.createdAt(),
108
+ updatedAt: field.updatedAt(),
109
+ product: field.belongsTo("Product", ["productId"], ["id"], {
110
+ onDelete: "Cascade"
111
+ })
112
+ },
113
+ indexes: [
114
+ index.on(["productId", "sku"]),
115
+ index.on(["productId", "position"]),
116
+ index.on(["barcode"])
117
+ ]
126
118
  });
127
- /**
128
- * Category entity - product categorization.
129
- */
130
- const CategoryEntity = defineEntity({
131
- name: "Category",
132
- description: "Product category for organization.",
133
- schema: "marketplace",
134
- map: "category",
135
- fields: {
136
- id: field.id(),
137
- name: field.string(),
138
- slug: field.string(),
139
- description: field.string({ isOptional: true }),
140
- parentId: field.string({ isOptional: true }),
141
- path: field.string({ description: "Full path for hierarchical queries" }),
142
- level: field.int({ default: 0 }),
143
- position: field.int({ default: 0 }),
144
- imageId: field.string({ isOptional: true }),
145
- isActive: field.boolean({ default: true }),
146
- createdAt: field.createdAt(),
147
- updatedAt: field.updatedAt(),
148
- parent: field.belongsTo("Category", ["parentId"], ["id"]),
149
- children: field.hasMany("Category")
150
- },
151
- indexes: [
152
- index.unique(["slug"]),
153
- index.on(["parentId", "position"]),
154
- index.on(["path"]),
155
- index.on(["isActive"])
156
- ]
119
+ var CategoryEntity = defineEntity({
120
+ name: "Category",
121
+ description: "Product category for organization.",
122
+ schema: "marketplace",
123
+ map: "category",
124
+ fields: {
125
+ id: field.id(),
126
+ name: field.string(),
127
+ slug: field.string(),
128
+ description: field.string({ isOptional: true }),
129
+ parentId: field.string({ isOptional: true }),
130
+ path: field.string({ description: "Full path for hierarchical queries" }),
131
+ level: field.int({ default: 0 }),
132
+ position: field.int({ default: 0 }),
133
+ imageId: field.string({ isOptional: true }),
134
+ isActive: field.boolean({ default: true }),
135
+ createdAt: field.createdAt(),
136
+ updatedAt: field.updatedAt(),
137
+ parent: field.belongsTo("Category", ["parentId"], ["id"]),
138
+ children: field.hasMany("Category")
139
+ },
140
+ indexes: [
141
+ index.unique(["slug"]),
142
+ index.on(["parentId", "position"]),
143
+ index.on(["path"]),
144
+ index.on(["isActive"])
145
+ ]
157
146
  });
158
-
159
- //#endregion
160
- export { CategoryEntity, ProductEntity, ProductStatusEnum, ProductTypeEnum, ProductVariantEntity };
161
- //# sourceMappingURL=product.js.map
147
+ export {
148
+ ProductVariantEntity,
149
+ ProductTypeEnum,
150
+ ProductStatusEnum,
151
+ ProductEntity,
152
+ CategoryEntity
153
+ };