@mercurjs/core 2.3.6-canary.1 → 2.3.6-canary.3

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 (198) hide show
  1. package/.medusa/server/src/api/admin/campaigns/middlewares.js +3 -9
  2. package/.medusa/server/src/api/admin/collections/middlewares.js +8 -33
  3. package/.medusa/server/src/api/admin/commission-rates/middlewares.js +9 -39
  4. package/.medusa/server/src/api/admin/core-route-permissions.d.ts +18 -0
  5. package/.medusa/server/src/api/admin/core-route-permissions.js +79 -0
  6. package/.medusa/server/src/api/admin/customer-groups/middlewares.js +3 -9
  7. package/.medusa/server/src/api/admin/inventory-items/middlewares.js +3 -9
  8. package/.medusa/server/src/api/admin/members/middlewares.js +3 -9
  9. package/.medusa/server/src/api/admin/middlewares.js +6 -2
  10. package/.medusa/server/src/api/admin/offers/middlewares.js +10 -21
  11. package/.medusa/server/src/api/admin/order-groups/middlewares.js +4 -15
  12. package/.medusa/server/src/api/admin/orders/middlewares.js +3 -9
  13. package/.medusa/server/src/api/admin/payouts/middlewares.js +4 -15
  14. package/.medusa/server/src/api/admin/price-lists/middlewares.js +3 -9
  15. package/.medusa/server/src/api/admin/product-attributes/middlewares.js +11 -51
  16. package/.medusa/server/src/api/admin/product-categories/middlewares.js +14 -45
  17. package/.medusa/server/src/api/admin/product-changes/middlewares.js +8 -15
  18. package/.medusa/server/src/api/admin/products/[id]/route.js +8 -3
  19. package/.medusa/server/src/api/admin/products/middlewares.js +21 -99
  20. package/.medusa/server/src/api/admin/products/validators.d.ts +3 -3
  21. package/.medusa/server/src/api/admin/products/validators.js +4 -3
  22. package/.medusa/server/src/api/admin/promotions/middlewares.js +7 -21
  23. package/.medusa/server/src/api/admin/reservations/middlewares.js +3 -9
  24. package/.medusa/server/src/api/admin/reviews/middlewares.js +8 -33
  25. package/.medusa/server/src/api/admin/sellers/middlewares.js +32 -117
  26. package/.medusa/server/src/api/admin/sellers/query-config.js +2 -3
  27. package/.medusa/server/src/api/admin/shipping-options/middlewares.js +3 -9
  28. package/.medusa/server/src/api/admin/shipping-profiles/middlewares.js +3 -9
  29. package/.medusa/server/src/api/admin/stock-locations/middlewares.js +3 -9
  30. package/.medusa/server/src/api/admin/users/me/route.d.ts +3 -0
  31. package/.medusa/server/src/api/admin/users/me/route.js +24 -0
  32. package/.medusa/server/src/api/utils/ensure-seller-middleware.js +1 -15
  33. package/.medusa/server/src/api/utils/index.d.ts +1 -2
  34. package/.medusa/server/src/api/utils/index.js +2 -3
  35. package/.medusa/server/src/api/utils/permissions-middleware.d.ts +25 -0
  36. package/.medusa/server/src/api/utils/permissions-middleware.js +103 -0
  37. package/.medusa/server/src/api/vendor/campaigns/middlewares.js +9 -39
  38. package/.medusa/server/src/api/vendor/claims/middlewares.js +37 -129
  39. package/.medusa/server/src/api/vendor/collections/middlewares.js +5 -21
  40. package/.medusa/server/src/api/vendor/currencies/middlewares.js +4 -15
  41. package/.medusa/server/src/api/vendor/customer-groups/middlewares.js +9 -39
  42. package/.medusa/server/src/api/vendor/customers/middlewares.js +5 -21
  43. package/.medusa/server/src/api/vendor/exchanges/middlewares.js +31 -105
  44. package/.medusa/server/src/api/vendor/fulfillment-providers/middlewares.js +3 -9
  45. package/.medusa/server/src/api/vendor/fulfillment-sets/middlewares.js +8 -33
  46. package/.medusa/server/src/api/vendor/inventory-items/middlewares.js +14 -69
  47. package/.medusa/server/src/api/vendor/members/me/route.js +6 -3
  48. package/.medusa/server/src/api/vendor/members/middlewares.js +2 -17
  49. package/.medusa/server/src/api/vendor/middlewares.js +2 -1
  50. package/.medusa/server/src/api/vendor/offers/middlewares.js +10 -45
  51. package/.medusa/server/src/api/vendor/order-edits/middlewares.js +23 -69
  52. package/.medusa/server/src/api/vendor/orders/middlewares.js +18 -63
  53. package/.medusa/server/src/api/vendor/payments/middlewares.js +7 -33
  54. package/.medusa/server/src/api/vendor/payout-accounts/middlewares.js +6 -27
  55. package/.medusa/server/src/api/vendor/payouts/middlewares.js +4 -15
  56. package/.medusa/server/src/api/vendor/price-lists/middlewares.js +11 -51
  57. package/.medusa/server/src/api/vendor/price-preferences/middlewares.js +4 -15
  58. package/.medusa/server/src/api/vendor/product-attributes/middlewares.js +4 -15
  59. package/.medusa/server/src/api/vendor/product-categories/middlewares.js +5 -21
  60. package/.medusa/server/src/api/vendor/product-tags/middlewares.js +4 -15
  61. package/.medusa/server/src/api/vendor/product-types/middlewares.js +4 -15
  62. package/.medusa/server/src/api/vendor/product-variants/middlewares.js +3 -9
  63. package/.medusa/server/src/api/vendor/products/middlewares.js +24 -75
  64. package/.medusa/server/src/api/vendor/products/validators.d.ts +2 -2
  65. package/.medusa/server/src/api/vendor/products/validators.js +4 -3
  66. package/.medusa/server/src/api/vendor/promotions/middlewares.js +14 -69
  67. package/.medusa/server/src/api/vendor/refund-reasons/middlewares.js +4 -15
  68. package/.medusa/server/src/api/vendor/regions/middlewares.js +4 -15
  69. package/.medusa/server/src/api/vendor/reservations/middlewares.js +9 -33
  70. package/.medusa/server/src/api/vendor/return-reasons/middlewares.js +4 -15
  71. package/.medusa/server/src/api/vendor/returns/middlewares.js +26 -135
  72. package/.medusa/server/src/api/vendor/reviews/middlewares.js +5 -21
  73. package/.medusa/server/src/api/vendor/sales-channels/middlewares.js +5 -21
  74. package/.medusa/server/src/api/vendor/sellers/me/route.js +1 -1
  75. package/.medusa/server/src/api/vendor/sellers/middlewares.js +16 -92
  76. package/.medusa/server/src/api/vendor/sellers/query-config.d.ts +0 -4
  77. package/.medusa/server/src/api/vendor/sellers/query-config.js +5 -11
  78. package/.medusa/server/src/api/vendor/shipping-option-types/middlewares.js +4 -15
  79. package/.medusa/server/src/api/vendor/shipping-options/middlewares.js +9 -39
  80. package/.medusa/server/src/api/vendor/shipping-profiles/middlewares.js +4 -15
  81. package/.medusa/server/src/api/vendor/stock-locations/middlewares.js +11 -51
  82. package/.medusa/server/src/api/vendor/stock-locations/validators.d.ts +2 -2
  83. package/.medusa/server/src/api/vendor/uploads/middlewares.js +5 -9
  84. package/.medusa/server/src/modules/payout/migrations/Migration20260928120000.d.ts +5 -0
  85. package/.medusa/server/src/modules/payout/migrations/Migration20260928120000.js +14 -0
  86. package/.medusa/server/src/modules/payout/models/payout-account.js +2 -2
  87. package/.medusa/server/src/patches/index.d.ts +9 -0
  88. package/.medusa/server/src/patches/index.js +47 -11
  89. package/.medusa/server/src/patches/loader.d.ts +10 -0
  90. package/.medusa/server/src/patches/loader.js +46 -4
  91. package/.medusa/server/src/patches/register.d.ts +1 -0
  92. package/.medusa/server/src/patches/register.js +10 -0
  93. package/.medusa/server/src/permissions/definitions/api-keys.d.ts +1 -0
  94. package/.medusa/server/src/permissions/definitions/api-keys.js +8 -0
  95. package/.medusa/server/src/permissions/definitions/commissions.d.ts +1 -0
  96. package/.medusa/server/src/permissions/definitions/commissions.js +9 -0
  97. package/.medusa/server/src/permissions/definitions/customers.d.ts +1 -0
  98. package/.medusa/server/src/permissions/definitions/customers.js +9 -0
  99. package/.medusa/server/src/permissions/definitions/fulfillment.d.ts +1 -0
  100. package/.medusa/server/src/permissions/definitions/fulfillment.js +10 -0
  101. package/.medusa/server/src/permissions/definitions/inventory.d.ts +1 -0
  102. package/.medusa/server/src/permissions/definitions/inventory.js +10 -0
  103. package/.medusa/server/src/permissions/definitions/members.d.ts +1 -0
  104. package/.medusa/server/src/permissions/definitions/members.js +9 -0
  105. package/.medusa/server/src/permissions/definitions/notifications.d.ts +1 -0
  106. package/.medusa/server/src/permissions/definitions/notifications.js +8 -0
  107. package/.medusa/server/src/permissions/definitions/offers.d.ts +1 -0
  108. package/.medusa/server/src/permissions/definitions/offers.js +8 -0
  109. package/.medusa/server/src/permissions/definitions/orders.d.ts +1 -0
  110. package/.medusa/server/src/permissions/definitions/orders.js +12 -0
  111. package/.medusa/server/src/permissions/definitions/payments.d.ts +1 -0
  112. package/.medusa/server/src/permissions/definitions/payments.js +8 -0
  113. package/.medusa/server/src/permissions/definitions/payouts.d.ts +1 -0
  114. package/.medusa/server/src/permissions/definitions/payouts.js +9 -0
  115. package/.medusa/server/src/permissions/definitions/price-lists.d.ts +1 -0
  116. package/.medusa/server/src/permissions/definitions/price-lists.js +9 -0
  117. package/.medusa/server/src/permissions/definitions/product-attributes.d.ts +1 -0
  118. package/.medusa/server/src/permissions/definitions/product-attributes.js +8 -0
  119. package/.medusa/server/src/permissions/definitions/products.d.ts +1 -0
  120. package/.medusa/server/src/permissions/definitions/products.js +14 -0
  121. package/.medusa/server/src/permissions/definitions/promotions.d.ts +1 -0
  122. package/.medusa/server/src/permissions/definitions/promotions.js +9 -0
  123. package/.medusa/server/src/permissions/definitions/refund-reasons.d.ts +1 -0
  124. package/.medusa/server/src/permissions/definitions/refund-reasons.js +8 -0
  125. package/.medusa/server/src/permissions/definitions/regions.d.ts +1 -0
  126. package/.medusa/server/src/permissions/definitions/regions.js +9 -0
  127. package/.medusa/server/src/permissions/definitions/return-reasons.d.ts +1 -0
  128. package/.medusa/server/src/permissions/definitions/return-reasons.js +8 -0
  129. package/.medusa/server/src/permissions/definitions/reviews.d.ts +1 -0
  130. package/.medusa/server/src/permissions/definitions/reviews.js +8 -0
  131. package/.medusa/server/src/permissions/definitions/roles.d.ts +1 -0
  132. package/.medusa/server/src/permissions/definitions/roles.js +9 -0
  133. package/.medusa/server/src/permissions/definitions/sales-channels.d.ts +1 -0
  134. package/.medusa/server/src/permissions/definitions/sales-channels.js +8 -0
  135. package/.medusa/server/src/permissions/definitions/sellers.d.ts +1 -0
  136. package/.medusa/server/src/permissions/definitions/sellers.js +10 -0
  137. package/.medusa/server/src/permissions/definitions/store.d.ts +1 -0
  138. package/.medusa/server/src/permissions/definitions/store.js +8 -0
  139. package/.medusa/server/src/permissions/definitions/translations.d.ts +1 -0
  140. package/.medusa/server/src/permissions/definitions/translations.js +8 -0
  141. package/.medusa/server/src/permissions/definitions/users.d.ts +1 -0
  142. package/.medusa/server/src/permissions/definitions/users.js +8 -0
  143. package/.medusa/server/src/permissions/definitions/workflow-executions.d.ts +1 -0
  144. package/.medusa/server/src/permissions/definitions/workflow-executions.js +8 -0
  145. package/.medusa/server/src/permissions/index.d.ts +27 -0
  146. package/.medusa/server/src/permissions/index.js +44 -0
  147. package/.medusa/server/src/permissions/registry.d.ts +18 -0
  148. package/.medusa/server/src/permissions/registry.js +86 -0
  149. package/.medusa/server/src/utils/sanitize-rich-text.d.ts +2 -0
  150. package/.medusa/server/src/utils/sanitize-rich-text.js +50 -0
  151. package/.medusa/server/src/with-mercur.d.ts +5 -3
  152. package/.medusa/server/src/with-mercur.js +4 -23
  153. package/.medusa/server/src/workflows/index.d.ts +1 -0
  154. package/.medusa/server/src/workflows/index.js +2 -1
  155. package/.medusa/server/src/workflows/payout/workflows/create-payout.d.ts +4 -1
  156. package/.medusa/server/src/workflows/payout/workflows/create-payout.js +6 -2
  157. package/.medusa/server/src/workflows/product-edit/workflows/apply-product-change-actions.js +18 -2
  158. package/.medusa/server/src/workflows/product-edit/workflows/product-edit-delete-product.d.ts +1 -0
  159. package/.medusa/server/src/workflows/product-edit/workflows/product-edit-delete-product.js +2 -2
  160. package/.medusa/server/src/workflows/seller/steps/index.d.ts +0 -1
  161. package/.medusa/server/src/workflows/seller/steps/index.js +1 -2
  162. package/.medusa/server/src/workflows/seller/workflows/accept-member-invite.js +1 -2
  163. package/.medusa/server/src/workflows/seller/workflows/create-seller-account.js +1 -2
  164. package/.medusa/server/src/workflows/seller/workflows/index.d.ts +0 -1
  165. package/.medusa/server/src/workflows/seller/workflows/index.js +1 -2
  166. package/package.json +6 -4
  167. package/.medusa/server/src/api/utils/policy-resources.d.ts +0 -59
  168. package/.medusa/server/src/api/utils/policy-resources.js +0 -64
  169. package/.medusa/server/src/api/utils/rbac-role-fields.d.ts +0 -1
  170. package/.medusa/server/src/api/utils/rbac-role-fields.js +0 -10
  171. package/.medusa/server/src/api/utils/resolve-admin-roles-middleware.d.ts +0 -19
  172. package/.medusa/server/src/api/utils/resolve-admin-roles-middleware.js +0 -55
  173. package/.medusa/server/src/api/vendor/rbac/me/permissions/route.d.ts +0 -16
  174. package/.medusa/server/src/api/vendor/rbac/me/permissions/route.js +0 -58
  175. package/.medusa/server/src/links/seller-member-rbac-role.d.ts +0 -2
  176. package/.medusa/server/src/links/seller-member-rbac-role.js +0 -41
  177. package/.medusa/server/src/modules/seller/utils/ensure-seller-default-roles.d.ts +0 -11
  178. package/.medusa/server/src/modules/seller/utils/ensure-seller-default-roles.js +0 -128
  179. package/.medusa/server/src/policies/commission.d.ts +0 -1
  180. package/.medusa/server/src/policies/commission.js +0 -12
  181. package/.medusa/server/src/policies/offer.d.ts +0 -1
  182. package/.medusa/server/src/policies/offer.js +0 -7
  183. package/.medusa/server/src/policies/payout.d.ts +0 -1
  184. package/.medusa/server/src/policies/payout.js +0 -7
  185. package/.medusa/server/src/policies/product-attribute.d.ts +0 -1
  186. package/.medusa/server/src/policies/product-attribute.js +0 -7
  187. package/.medusa/server/src/policies/product-edit.d.ts +0 -1
  188. package/.medusa/server/src/policies/product-edit.js +0 -7
  189. package/.medusa/server/src/policies/review.d.ts +0 -1
  190. package/.medusa/server/src/policies/review.js +0 -7
  191. package/.medusa/server/src/policies/seller.d.ts +0 -1
  192. package/.medusa/server/src/policies/seller.js +0 -13
  193. package/.medusa/server/src/utils/generate-resource-policies.d.ts +0 -7
  194. package/.medusa/server/src/utils/generate-resource-policies.js +0 -30
  195. package/.medusa/server/src/workflows/seller/steps/create-seller-default-roles.d.ts +0 -2
  196. package/.medusa/server/src/workflows/seller/steps/create-seller-default-roles.js +0 -16
  197. package/.medusa/server/src/workflows/seller/workflows/create-seller-defaults.d.ts +0 -2
  198. package/.medusa/server/src/workflows/seller/workflows/create-seller-defaults.js +0 -11
@@ -1,8 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.vendorProductCategoriesMiddlewares = void 0;
4
- const policy_resources_1 = require("../../utils/policy-resources");
5
- const utils_1 = require("@medusajs/framework/utils");
4
+ const utils_1 = require("../../utils");
6
5
  const framework_1 = require("@medusajs/framework");
7
6
  const query_config_1 = require("./query-config");
8
7
  const validators_1 = require("./validators");
@@ -11,41 +10,26 @@ exports.vendorProductCategoriesMiddlewares = [
11
10
  method: ["GET"],
12
11
  matcher: "/vendor/product-categories",
13
12
  middlewares: [
13
+ (0, utils_1.requirePermission)("product_categories", "view"),
14
14
  (0, framework_1.validateAndTransformQuery)(validators_1.VendorGetProductCategoriesParams, query_config_1.vendorProductCategoryQueryConfig.list),
15
15
  ],
16
- policies: [
17
- {
18
- resource: policy_resources_1.PolicyResource.product_category,
19
- operation: utils_1.PolicyOperation.read,
20
- },
21
- ],
22
16
  },
23
17
  {
24
18
  method: ["GET"],
25
19
  matcher: "/vendor/product-categories/:id",
26
20
  middlewares: [
21
+ (0, utils_1.requirePermission)("product_categories", "view"),
27
22
  (0, framework_1.validateAndTransformQuery)(validators_1.VendorProductCategoryParams, query_config_1.vendorProductCategoryQueryConfig.retrieve),
28
23
  ],
29
- policies: [
30
- {
31
- resource: policy_resources_1.PolicyResource.product_category,
32
- operation: utils_1.PolicyOperation.read,
33
- },
34
- ],
35
24
  },
36
25
  {
37
26
  method: ["POST"],
38
27
  matcher: "/vendor/product-categories/:id/products",
39
28
  middlewares: [
29
+ (0, utils_1.requirePermission)("product_categories", "edit"),
40
30
  (0, framework_1.validateAndTransformBody)(validators_1.VendorBatchLinkProductsToCategory),
41
31
  (0, framework_1.validateAndTransformQuery)(validators_1.VendorProductCategoryParams, query_config_1.vendorProductCategoryQueryConfig.retrieve),
42
32
  ],
43
- policies: [
44
- {
45
- resource: policy_resources_1.PolicyResource.product_category,
46
- operation: utils_1.PolicyOperation.update,
47
- },
48
- ],
49
33
  },
50
34
  ];
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3ZlbmRvci9wcm9kdWN0LWNhdGVnb3JpZXMvbWlkZGxld2FyZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbUVBQTZEO0FBQzdELHFEQUEyRDtBQUUzRCxtREFHNEI7QUFFNUIsaURBQWlFO0FBQ2pFLDZDQUlxQjtBQUVSLFFBQUEsa0NBQWtDLEdBQXNCO0lBQ25FO1FBQ0UsTUFBTSxFQUFFLENBQUMsS0FBSyxDQUFDO1FBQ2YsT0FBTyxFQUFFLDRCQUE0QjtRQUNyQyxXQUFXLEVBQUU7WUFDWCxJQUFBLHFDQUF5QixFQUN2Qiw2Q0FBZ0MsRUFDaEMsK0NBQWdDLENBQUMsSUFBSSxDQUN0QztTQUNGO1FBQ0QsUUFBUSxFQUFFO1lBQ1I7Z0JBQ0UsUUFBUSxFQUFFLGlDQUFjLENBQUMsZ0JBQWdCO2dCQUN6QyxTQUFTLEVBQUUsdUJBQWUsQ0FBQyxJQUFJO2FBQ2hDO1NBQ0Y7S0FDRjtJQUNEO1FBQ0UsTUFBTSxFQUFFLENBQUMsS0FBSyxDQUFDO1FBQ2YsT0FBTyxFQUFFLGdDQUFnQztRQUN6QyxXQUFXLEVBQUU7WUFDWCxJQUFBLHFDQUF5QixFQUN2Qix3Q0FBMkIsRUFDM0IsK0NBQWdDLENBQUMsUUFBUSxDQUMxQztTQUNGO1FBQ0QsUUFBUSxFQUFFO1lBQ1I7Z0JBQ0UsUUFBUSxFQUFFLGlDQUFjLENBQUMsZ0JBQWdCO2dCQUN6QyxTQUFTLEVBQUUsdUJBQWUsQ0FBQyxJQUFJO2FBQ2hDO1NBQ0Y7S0FDRjtJQUNEO1FBQ0UsTUFBTSxFQUFFLENBQUMsTUFBTSxDQUFDO1FBQ2hCLE9BQU8sRUFBRSx5Q0FBeUM7UUFDbEQsV0FBVyxFQUFFO1lBQ1gsSUFBQSxvQ0FBd0IsRUFBQyw4Q0FBaUMsQ0FBQztZQUMzRCxJQUFBLHFDQUF5QixFQUN2Qix3Q0FBMkIsRUFDM0IsK0NBQWdDLENBQUMsUUFBUSxDQUMxQztTQUNGO1FBQ0QsUUFBUSxFQUFFO1lBQ1I7Z0JBQ0UsUUFBUSxFQUFFLGlDQUFjLENBQUMsZ0JBQWdCO2dCQUN6QyxTQUFTLEVBQUUsdUJBQWUsQ0FBQyxNQUFNO2FBQ2xDO1NBQ0Y7S0FDRjtDQUNGLENBQUEifQ==
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3ZlbmRvci9wcm9kdWN0LWNhdGVnb3JpZXMvbWlkZGxld2FyZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsdUNBQStDO0FBRS9DLG1EQUc0QjtBQUU1QixpREFBaUU7QUFDakUsNkNBSXFCO0FBRVIsUUFBQSxrQ0FBa0MsR0FBc0I7SUFDbkU7UUFDRSxNQUFNLEVBQUUsQ0FBQyxLQUFLLENBQUM7UUFDZixPQUFPLEVBQUUsNEJBQTRCO1FBQ3JDLFdBQVcsRUFBRTtZQUNYLElBQUEseUJBQWlCLEVBQUMsb0JBQW9CLEVBQUUsTUFBTSxDQUFDO1lBQy9DLElBQUEscUNBQXlCLEVBQ3ZCLDZDQUFnQyxFQUNoQywrQ0FBZ0MsQ0FBQyxJQUFJLENBQ3RDO1NBQ0Y7S0FDRjtJQUNEO1FBQ0UsTUFBTSxFQUFFLENBQUMsS0FBSyxDQUFDO1FBQ2YsT0FBTyxFQUFFLGdDQUFnQztRQUN6QyxXQUFXLEVBQUU7WUFDWCxJQUFBLHlCQUFpQixFQUFDLG9CQUFvQixFQUFFLE1BQU0sQ0FBQztZQUMvQyxJQUFBLHFDQUF5QixFQUN2Qix3Q0FBMkIsRUFDM0IsK0NBQWdDLENBQUMsUUFBUSxDQUMxQztTQUNGO0tBQ0Y7SUFDRDtRQUNFLE1BQU0sRUFBRSxDQUFDLE1BQU0sQ0FBQztRQUNoQixPQUFPLEVBQUUseUNBQXlDO1FBQ2xELFdBQVcsRUFBRTtZQUNYLElBQUEseUJBQWlCLEVBQUMsb0JBQW9CLEVBQUUsTUFBTSxDQUFDO1lBQy9DLElBQUEsb0NBQXdCLEVBQUMsOENBQWlDLENBQUM7WUFDM0QsSUFBQSxxQ0FBeUIsRUFDdkIsd0NBQTJCLEVBQzNCLCtDQUFnQyxDQUFDLFFBQVEsQ0FDMUM7U0FDRjtLQUNGO0NBQ0YsQ0FBQSJ9
@@ -1,8 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.vendorProductTagsMiddlewares = void 0;
4
- const policy_resources_1 = require("../../utils/policy-resources");
5
- const utils_1 = require("@medusajs/framework/utils");
4
+ const utils_1 = require("../../utils");
6
5
  const framework_1 = require("@medusajs/framework");
7
6
  const query_config_1 = require("./query-config");
8
7
  const validators_1 = require("./validators");
@@ -11,27 +10,17 @@ exports.vendorProductTagsMiddlewares = [
11
10
  method: ["GET"],
12
11
  matcher: "/vendor/product-tags",
13
12
  middlewares: [
13
+ (0, utils_1.requirePermission)("product_tags", "view"),
14
14
  (0, framework_1.validateAndTransformQuery)(validators_1.VendorGetProductTagsParams, query_config_1.vendorProductTagsQueryConfig.list),
15
15
  ],
16
- policies: [
17
- {
18
- resource: policy_resources_1.PolicyResource.product_tag,
19
- operation: utils_1.PolicyOperation.read,
20
- },
21
- ],
22
16
  },
23
17
  {
24
18
  method: ["GET"],
25
19
  matcher: "/vendor/product-tags/:id",
26
20
  middlewares: [
21
+ (0, utils_1.requirePermission)("product_tags", "view"),
27
22
  (0, framework_1.validateAndTransformQuery)(validators_1.VendorGetProductTagParams, query_config_1.vendorProductTagsQueryConfig.retrieve),
28
23
  ],
29
- policies: [
30
- {
31
- resource: policy_resources_1.PolicyResource.product_tag,
32
- operation: utils_1.PolicyOperation.read,
33
- },
34
- ],
35
24
  },
36
25
  ];
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3ZlbmRvci9wcm9kdWN0LXRhZ3MvbWlkZGxld2FyZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbUVBQTZEO0FBQzdELHFEQUEyRDtBQUUzRCxtREFBK0Q7QUFFL0QsaURBQTZEO0FBQzdELDZDQUdxQjtBQUVSLFFBQUEsNEJBQTRCLEdBQXNCO0lBQzdEO1FBQ0UsTUFBTSxFQUFFLENBQUMsS0FBSyxDQUFDO1FBQ2YsT0FBTyxFQUFFLHNCQUFzQjtRQUMvQixXQUFXLEVBQUU7WUFDWCxJQUFBLHFDQUF5QixFQUN2Qix1Q0FBMEIsRUFDMUIsMkNBQTRCLENBQUMsSUFBSSxDQUNsQztTQUNGO1FBQ0QsUUFBUSxFQUFFO1lBQ1I7Z0JBQ0UsUUFBUSxFQUFFLGlDQUFjLENBQUMsV0FBVztnQkFDcEMsU0FBUyxFQUFFLHVCQUFlLENBQUMsSUFBSTthQUNoQztTQUNGO0tBQ0Y7SUFDRDtRQUNFLE1BQU0sRUFBRSxDQUFDLEtBQUssQ0FBQztRQUNmLE9BQU8sRUFBRSwwQkFBMEI7UUFDbkMsV0FBVyxFQUFFO1lBQ1gsSUFBQSxxQ0FBeUIsRUFDdkIsc0NBQXlCLEVBQ3pCLDJDQUE0QixDQUFDLFFBQVEsQ0FDdEM7U0FDRjtRQUNELFFBQVEsRUFBRTtZQUNSO2dCQUNFLFFBQVEsRUFBRSxpQ0FBYyxDQUFDLFdBQVc7Z0JBQ3BDLFNBQVMsRUFBRSx1QkFBZSxDQUFDLElBQUk7YUFDaEM7U0FDRjtLQUNGO0NBQ0YsQ0FBQSJ9
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3ZlbmRvci9wcm9kdWN0LXRhZ3MvbWlkZGxld2FyZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsdUNBQStDO0FBRS9DLG1EQUErRDtBQUUvRCxpREFBNkQ7QUFDN0QsNkNBR3FCO0FBRVIsUUFBQSw0QkFBNEIsR0FBc0I7SUFDN0Q7UUFDRSxNQUFNLEVBQUUsQ0FBQyxLQUFLLENBQUM7UUFDZixPQUFPLEVBQUUsc0JBQXNCO1FBQy9CLFdBQVcsRUFBRTtZQUNYLElBQUEseUJBQWlCLEVBQUMsY0FBYyxFQUFFLE1BQU0sQ0FBQztZQUN6QyxJQUFBLHFDQUF5QixFQUN2Qix1Q0FBMEIsRUFDMUIsMkNBQTRCLENBQUMsSUFBSSxDQUNsQztTQUNGO0tBQ0Y7SUFDRDtRQUNFLE1BQU0sRUFBRSxDQUFDLEtBQUssQ0FBQztRQUNmLE9BQU8sRUFBRSwwQkFBMEI7UUFDbkMsV0FBVyxFQUFFO1lBQ1gsSUFBQSx5QkFBaUIsRUFBQyxjQUFjLEVBQUUsTUFBTSxDQUFDO1lBQ3pDLElBQUEscUNBQXlCLEVBQ3ZCLHNDQUF5QixFQUN6QiwyQ0FBNEIsQ0FBQyxRQUFRLENBQ3RDO1NBQ0Y7S0FDRjtDQUNGLENBQUEifQ==
@@ -1,8 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.vendorProductTypesMiddlewares = void 0;
4
- const policy_resources_1 = require("../../utils/policy-resources");
5
- const utils_1 = require("@medusajs/framework/utils");
4
+ const utils_1 = require("../../utils");
6
5
  const framework_1 = require("@medusajs/framework");
7
6
  const query_config_1 = require("./query-config");
8
7
  const validators_1 = require("./validators");
@@ -11,27 +10,17 @@ exports.vendorProductTypesMiddlewares = [
11
10
  method: ["GET"],
12
11
  matcher: "/vendor/product-types",
13
12
  middlewares: [
13
+ (0, utils_1.requirePermission)("product_types", "view"),
14
14
  (0, framework_1.validateAndTransformQuery)(validators_1.VendorGetProductTypesParams, query_config_1.vendorProductTypeQueryConfig.list),
15
15
  ],
16
- policies: [
17
- {
18
- resource: policy_resources_1.PolicyResource.product_type,
19
- operation: utils_1.PolicyOperation.read,
20
- },
21
- ],
22
16
  },
23
17
  {
24
18
  method: ["GET"],
25
19
  matcher: "/vendor/product-types/:id",
26
20
  middlewares: [
21
+ (0, utils_1.requirePermission)("product_types", "view"),
27
22
  (0, framework_1.validateAndTransformQuery)(validators_1.VendorGetProductTypeParams, query_config_1.vendorProductTypeQueryConfig.retrieve),
28
23
  ],
29
- policies: [
30
- {
31
- resource: policy_resources_1.PolicyResource.product_type,
32
- operation: utils_1.PolicyOperation.read,
33
- },
34
- ],
35
24
  },
36
25
  ];
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3ZlbmRvci9wcm9kdWN0LXR5cGVzL21pZGRsZXdhcmVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG1FQUE2RDtBQUM3RCxxREFBMkQ7QUFFM0QsbURBQStEO0FBRS9ELGlEQUE2RDtBQUM3RCw2Q0FHcUI7QUFFUixRQUFBLDZCQUE2QixHQUFzQjtJQUM5RDtRQUNFLE1BQU0sRUFBRSxDQUFDLEtBQUssQ0FBQztRQUNmLE9BQU8sRUFBRSx1QkFBdUI7UUFDaEMsV0FBVyxFQUFFO1lBQ1gsSUFBQSxxQ0FBeUIsRUFDdkIsd0NBQTJCLEVBQzNCLDJDQUE0QixDQUFDLElBQUksQ0FDbEM7U0FDRjtRQUNELFFBQVEsRUFBRTtZQUNSO2dCQUNFLFFBQVEsRUFBRSxpQ0FBYyxDQUFDLFlBQVk7Z0JBQ3JDLFNBQVMsRUFBRSx1QkFBZSxDQUFDLElBQUk7YUFDaEM7U0FDRjtLQUNGO0lBQ0Q7UUFDRSxNQUFNLEVBQUUsQ0FBQyxLQUFLLENBQUM7UUFDZixPQUFPLEVBQUUsMkJBQTJCO1FBQ3BDLFdBQVcsRUFBRTtZQUNYLElBQUEscUNBQXlCLEVBQ3ZCLHVDQUEwQixFQUMxQiwyQ0FBNEIsQ0FBQyxRQUFRLENBQ3RDO1NBQ0Y7UUFDRCxRQUFRLEVBQUU7WUFDUjtnQkFDRSxRQUFRLEVBQUUsaUNBQWMsQ0FBQyxZQUFZO2dCQUNyQyxTQUFTLEVBQUUsdUJBQWUsQ0FBQyxJQUFJO2FBQ2hDO1NBQ0Y7S0FDRjtDQUNGLENBQUEifQ==
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3ZlbmRvci9wcm9kdWN0LXR5cGVzL21pZGRsZXdhcmVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHVDQUErQztBQUUvQyxtREFBK0Q7QUFFL0QsaURBQTZEO0FBQzdELDZDQUdxQjtBQUVSLFFBQUEsNkJBQTZCLEdBQXNCO0lBQzlEO1FBQ0UsTUFBTSxFQUFFLENBQUMsS0FBSyxDQUFDO1FBQ2YsT0FBTyxFQUFFLHVCQUF1QjtRQUNoQyxXQUFXLEVBQUU7WUFDWCxJQUFBLHlCQUFpQixFQUFDLGVBQWUsRUFBRSxNQUFNLENBQUM7WUFDMUMsSUFBQSxxQ0FBeUIsRUFDdkIsd0NBQTJCLEVBQzNCLDJDQUE0QixDQUFDLElBQUksQ0FDbEM7U0FDRjtLQUNGO0lBQ0Q7UUFDRSxNQUFNLEVBQUUsQ0FBQyxLQUFLLENBQUM7UUFDZixPQUFPLEVBQUUsMkJBQTJCO1FBQ3BDLFdBQVcsRUFBRTtZQUNYLElBQUEseUJBQWlCLEVBQUMsZUFBZSxFQUFFLE1BQU0sQ0FBQztZQUMxQyxJQUFBLHFDQUF5QixFQUN2Qix1Q0FBMEIsRUFDMUIsMkNBQTRCLENBQUMsUUFBUSxDQUN0QztTQUNGO0tBQ0Y7Q0FDRixDQUFBIn0=
@@ -1,8 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.vendorProductVariantsMiddlewares = void 0;
4
- const policy_resources_1 = require("../../utils/policy-resources");
5
- const utils_1 = require("@medusajs/framework/utils");
4
+ const utils_1 = require("../../utils");
6
5
  const framework_1 = require("@medusajs/framework");
7
6
  const types_1 = require("@mercurjs/types");
8
7
  const helpers_1 = require("../products/helpers");
@@ -40,15 +39,10 @@ exports.vendorProductVariantsMiddlewares = [
40
39
  method: ["GET"],
41
40
  matcher: "/vendor/product-variants",
42
41
  middlewares: [
42
+ (0, utils_1.requirePermission)("products", "view"),
43
43
  (0, framework_1.validateAndTransformQuery)(validators_1.VendorGetProductVariantsParams, query_config_1.vendorProductVariantsQueryConfig.list),
44
44
  applySellerProductVariantFilter,
45
45
  ],
46
- policies: [
47
- {
48
- resource: policy_resources_1.PolicyResource.product_variant,
49
- operation: utils_1.PolicyOperation.read,
50
- },
51
- ],
52
46
  },
53
47
  ];
54
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3ZlbmRvci9wcm9kdWN0LXZhcmlhbnRzL21pZGRsZXdhcmVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG1FQUE2RDtBQUM3RCxxREFBMkQ7QUFPM0QsbURBQStEO0FBQy9ELDJDQUErQztBQUUvQyxpREFHNEI7QUFDNUIsaURBQWlFO0FBQ2pFLDZDQUE2RDtBQUU3RCxNQUFNLCtCQUErQixHQUFHLEtBQUssRUFDM0MsR0FBK0IsRUFDL0IsSUFBb0IsRUFDcEIsSUFBd0IsRUFDeEIsRUFBRTtJQUNGLE1BQU0sUUFBUSxHQUFHLEdBQUcsQ0FBQyxjQUFlLENBQUMsU0FBUyxDQUFBO0lBRTlDLE1BQU0sQ0FBQyxhQUFhLEVBQUUsdUJBQXVCLENBQUMsR0FBRyxNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQUM7UUFDakUsSUFBQSxrQ0FBd0IsRUFBQyxHQUFHLENBQUMsS0FBSyxFQUFFLFFBQVEsQ0FBQztRQUM3QyxJQUFBLDJDQUFpQyxFQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDO0tBQ3ZELENBQUMsQ0FBQTtJQUVGLEdBQUcsQ0FBQyxnQkFBZ0IsS0FBSyxFQUFFLENBQUE7SUFDM0IsTUFBTSxXQUFXLEdBQUksR0FBRyxDQUFDLGdCQUFnQixDQUFDLElBQTZCLElBQUksRUFBRSxDQUFBO0lBQzdFLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEdBQUc7UUFDMUIsR0FBRyxXQUFXO1FBQ2Q7WUFDRSxHQUFHLEVBQUU7Z0JBQ0g7b0JBQ0UsVUFBVSxFQUFFLGFBQWE7b0JBQ3pCLE9BQU8sRUFBRTt3QkFDUCxNQUFNLEVBQUUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxxQkFBYSxDQUFDLEtBQUssRUFBRSxxQkFBYSxDQUFDLFFBQVEsQ0FBQyxFQUFFO3FCQUMvRDtpQkFDRjtnQkFDRDtvQkFDRSxPQUFPLEVBQUUsRUFBRSxNQUFNLEVBQUUscUJBQWEsQ0FBQyxTQUFTLEVBQUU7b0JBQzVDLFVBQVUsRUFBRSxFQUFFLElBQUksRUFBRSx1QkFBdUIsRUFBRTtpQkFDOUM7YUFDRjtTQUNGO0tBQ0YsQ0FBQTtJQUVELE9BQU8sSUFBSSxFQUFFLENBQUE7QUFDZixDQUFDLENBQUE7QUFFWSxRQUFBLGdDQUFnQyxHQUFzQjtJQUNqRTtRQUNFLE1BQU0sRUFBRSxDQUFDLEtBQUssQ0FBQztRQUNmLE9BQU8sRUFBRSwwQkFBMEI7UUFDbkMsV0FBVyxFQUFFO1lBQ1gsSUFBQSxxQ0FBeUIsRUFDdkIsMkNBQThCLEVBQzlCLCtDQUFnQyxDQUFDLElBQUksQ0FDdEM7WUFDRCwrQkFBK0I7U0FDaEM7UUFDRCxRQUFRLEVBQUU7WUFDUjtnQkFDRSxRQUFRLEVBQUUsaUNBQWMsQ0FBQyxlQUFlO2dCQUN4QyxTQUFTLEVBQUUsdUJBQWUsQ0FBQyxJQUFJO2FBQ2hDO1NBQ0Y7S0FDRjtDQUNGLENBQUEifQ==
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3ZlbmRvci9wcm9kdWN0LXZhcmlhbnRzL21pZGRsZXdhcmVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHVDQUErQztBQU8vQyxtREFBK0Q7QUFDL0QsMkNBQStDO0FBRS9DLGlEQUc0QjtBQUM1QixpREFBaUU7QUFDakUsNkNBQTZEO0FBRTdELE1BQU0sK0JBQStCLEdBQUcsS0FBSyxFQUMzQyxHQUErQixFQUMvQixJQUFvQixFQUNwQixJQUF3QixFQUN4QixFQUFFO0lBQ0YsTUFBTSxRQUFRLEdBQUcsR0FBRyxDQUFDLGNBQWUsQ0FBQyxTQUFTLENBQUE7SUFFOUMsTUFBTSxDQUFDLGFBQWEsRUFBRSx1QkFBdUIsQ0FBQyxHQUFHLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FBQztRQUNqRSxJQUFBLGtDQUF3QixFQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDO1FBQzdDLElBQUEsMkNBQWlDLEVBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxRQUFRLENBQUM7S0FDdkQsQ0FBQyxDQUFBO0lBRUYsR0FBRyxDQUFDLGdCQUFnQixLQUFLLEVBQUUsQ0FBQTtJQUMzQixNQUFNLFdBQVcsR0FBSSxHQUFHLENBQUMsZ0JBQWdCLENBQUMsSUFBNkIsSUFBSSxFQUFFLENBQUE7SUFDN0UsR0FBRyxDQUFDLGdCQUFnQixDQUFDLElBQUksR0FBRztRQUMxQixHQUFHLFdBQVc7UUFDZDtZQUNFLEdBQUcsRUFBRTtnQkFDSDtvQkFDRSxVQUFVLEVBQUUsYUFBYTtvQkFDekIsT0FBTyxFQUFFO3dCQUNQLE1BQU0sRUFBRSxFQUFFLEdBQUcsRUFBRSxDQUFDLHFCQUFhLENBQUMsS0FBSyxFQUFFLHFCQUFhLENBQUMsUUFBUSxDQUFDLEVBQUU7cUJBQy9EO2lCQUNGO2dCQUNEO29CQUNFLE9BQU8sRUFBRSxFQUFFLE1BQU0sRUFBRSxxQkFBYSxDQUFDLFNBQVMsRUFBRTtvQkFDNUMsVUFBVSxFQUFFLEVBQUUsSUFBSSxFQUFFLHVCQUF1QixFQUFFO2lCQUM5QzthQUNGO1NBQ0Y7S0FDRixDQUFBO0lBRUQsT0FBTyxJQUFJLEVBQUUsQ0FBQTtBQUNmLENBQUMsQ0FBQTtBQUVZLFFBQUEsZ0NBQWdDLEdBQXNCO0lBQ2pFO1FBQ0UsTUFBTSxFQUFFLENBQUMsS0FBSyxDQUFDO1FBQ2YsT0FBTyxFQUFFLDBCQUEwQjtRQUNuQyxXQUFXLEVBQUU7WUFDWCxJQUFBLHlCQUFpQixFQUFDLFVBQVUsRUFBRSxNQUFNLENBQUM7WUFDckMsSUFBQSxxQ0FBeUIsRUFDdkIsMkNBQThCLEVBQzlCLCtDQUFnQyxDQUFDLElBQUksQ0FDdEM7WUFDRCwrQkFBK0I7U0FDaEM7S0FDRjtDQUNGLENBQUEifQ==
@@ -1,8 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.vendorProductsMiddlewares = void 0;
4
- const policy_resources_1 = require("../../utils/policy-resources");
5
- const utils_1 = require("@medusajs/framework/utils");
4
+ const utils_1 = require("../../utils");
6
5
  const framework_1 = require("@medusajs/framework");
7
6
  const types_1 = require("@mercurjs/types");
8
7
  const utils_2 = require("../../utils");
@@ -48,163 +47,113 @@ const ensureVariantBelongsToProduct = async (req, _res, next) => {
48
47
  return next();
49
48
  };
50
49
  exports.vendorProductsMiddlewares = [
50
+ {
51
+ method: ["GET"],
52
+ matcher: "/vendor/products/:id/preview",
53
+ middlewares: [(0, utils_1.requirePermission)("products", "view")],
54
+ },
51
55
  {
52
56
  method: ["GET"],
53
57
  matcher: "/vendor/products",
54
58
  middlewares: [
59
+ (0, utils_1.requirePermission)("products", "view"),
55
60
  (0, framework_1.validateAndTransformQuery)(validators_1.VendorGetProductsParams, query_config_1.vendorProductQueryConfig.list),
56
61
  applySellerProductLinkFilter,
57
62
  utils_2.applyOfferedProductsFilter,
58
63
  ],
59
- policies: [
60
- {
61
- resource: policy_resources_1.PolicyResource.product,
62
- operation: utils_1.PolicyOperation.read,
63
- },
64
- ],
65
64
  },
66
65
  {
67
66
  method: ["POST"],
68
67
  matcher: "/vendor/products",
69
68
  middlewares: [
69
+ (0, utils_1.requirePermission)("products", "edit"),
70
70
  (0, framework_1.validateAndTransformBody)(validators_1.VendorCreateProduct),
71
71
  (0, framework_1.validateAndTransformQuery)(validators_1.VendorGetProductParams, query_config_1.vendorProductQueryConfig.retrieve),
72
72
  ],
73
- policies: [
74
- {
75
- resource: policy_resources_1.PolicyResource.product,
76
- operation: utils_1.PolicyOperation.create,
77
- },
78
- ],
79
73
  },
80
74
  {
81
75
  method: ["GET"],
82
76
  matcher: "/vendor/products/:id",
83
77
  middlewares: [
78
+ (0, utils_1.requirePermission)("products", "view"),
84
79
  (0, framework_1.validateAndTransformQuery)(validators_1.VendorGetProductParams, query_config_1.vendorProductQueryConfig.retrieve),
85
80
  ],
86
- policies: [
87
- {
88
- resource: policy_resources_1.PolicyResource.product,
89
- operation: utils_1.PolicyOperation.read,
90
- },
91
- ],
92
81
  },
93
82
  {
94
83
  method: ["POST"],
95
84
  matcher: "/vendor/products/:id",
96
85
  middlewares: [
86
+ (0, utils_1.requirePermission)("products", "edit"),
97
87
  (0, framework_1.validateAndTransformBody)(validators_1.VendorUpdateProduct),
98
88
  (0, framework_1.validateAndTransformQuery)(validators_1.VendorGetProductParams, query_config_1.vendorProductQueryConfig.retrieve),
99
89
  ],
100
- policies: [
101
- {
102
- resource: policy_resources_1.PolicyResource.product,
103
- operation: utils_1.PolicyOperation.update,
104
- },
105
- ],
106
90
  },
107
91
  {
108
92
  method: ["DELETE"],
109
93
  matcher: "/vendor/products/:id",
110
- middlewares: [],
111
- policies: [
112
- {
113
- resource: policy_resources_1.PolicyResource.product,
114
- operation: utils_1.PolicyOperation.delete,
115
- },
94
+ middlewares: [
95
+ (0, utils_1.requirePermission)("products", "manage"),
116
96
  ],
117
97
  },
118
98
  {
119
99
  method: ["POST"],
120
100
  matcher: "/vendor/products/:id/cancel",
121
- middlewares: [(0, framework_1.validateAndTransformBody)(validators_1.VendorCancelProductChange)],
122
- policies: [
123
- {
124
- resource: policy_resources_1.PolicyResource.product,
125
- operation: utils_1.PolicyOperation.update,
126
- },
101
+ middlewares: [
102
+ (0, utils_1.requirePermission)("products", "edit"),
103
+ (0, framework_1.validateAndTransformBody)(validators_1.VendorCancelProductChange)
127
104
  ],
128
105
  },
129
106
  {
130
107
  method: ["GET"],
131
108
  matcher: "/vendor/products/:id/variants",
132
109
  middlewares: [
110
+ (0, utils_1.requirePermission)("products", "view"),
133
111
  (0, framework_1.validateAndTransformQuery)(validators_1.VendorGetProductVariantsParams, query_config_1.vendorProductVariantQueryConfig.list),
134
112
  ],
135
- policies: [
136
- {
137
- resource: policy_resources_1.PolicyResource.product_variant,
138
- operation: utils_1.PolicyOperation.read,
139
- },
140
- ],
141
113
  },
142
114
  {
143
115
  method: ["POST"],
144
116
  matcher: "/vendor/products/:id/variants",
145
117
  middlewares: [
118
+ (0, utils_1.requirePermission)("products", "edit"),
146
119
  (0, framework_1.validateAndTransformBody)(validators_1.VendorAddProductVariant),
147
120
  (0, framework_1.validateAndTransformQuery)(validators_1.VendorGetProductParams, query_config_1.vendorProductQueryConfig.retrieve),
148
121
  ],
149
- policies: [
150
- {
151
- resource: policy_resources_1.PolicyResource.product_variant,
152
- operation: utils_1.PolicyOperation.update,
153
- },
154
- ],
155
122
  },
156
123
  {
157
124
  method: ["GET"],
158
125
  matcher: "/vendor/products/:id/variants/:variant_id",
159
126
  middlewares: [
127
+ (0, utils_1.requirePermission)("products", "view"),
160
128
  (0, framework_1.validateAndTransformQuery)(validators_1.VendorGetProductVariantParams, query_config_1.vendorProductVariantQueryConfig.retrieve),
161
129
  ],
162
- policies: [
163
- {
164
- resource: policy_resources_1.PolicyResource.product_variant,
165
- operation: utils_1.PolicyOperation.read,
166
- },
167
- ],
168
130
  },
169
131
  {
170
132
  method: ["POST"],
171
133
  matcher: "/vendor/products/:id/variants/:variant_id",
172
134
  middlewares: [
135
+ (0, utils_1.requirePermission)("products", "edit"),
173
136
  ensureVariantBelongsToProduct,
174
137
  (0, framework_1.validateAndTransformBody)(validators_1.VendorUpdateProductVariant),
175
138
  (0, framework_1.validateAndTransformQuery)(validators_1.VendorGetProductParams, query_config_1.vendorProductQueryConfig.retrieve),
176
139
  ],
177
- policies: [
178
- {
179
- resource: policy_resources_1.PolicyResource.product_variant,
180
- operation: utils_1.PolicyOperation.update,
181
- },
182
- ],
183
140
  },
184
141
  {
185
142
  method: ["DELETE"],
186
143
  matcher: "/vendor/products/:id/variants/:variant_id",
187
- middlewares: [ensureVariantBelongsToProduct],
188
- policies: [
189
- {
190
- resource: policy_resources_1.PolicyResource.product_variant,
191
- operation: utils_1.PolicyOperation.delete,
192
- },
144
+ middlewares: [
145
+ (0, utils_1.requirePermission)("products", "manage"),
146
+ ensureVariantBelongsToProduct
193
147
  ],
194
148
  },
195
149
  {
196
150
  method: ["POST"],
197
151
  matcher: "/vendor/products/:id/attributes/batch",
198
152
  middlewares: [
153
+ (0, utils_1.requirePermission)("products", "edit"),
199
154
  (0, framework_1.validateAndTransformBody)(validators_1.VendorBatchProductAttributes),
200
155
  (0, framework_1.validateAndTransformQuery)(validators_1.VendorGetProductParams, query_config_1.vendorProductQueryConfig.retrieve),
201
156
  ],
202
- policies: [
203
- {
204
- resource: policy_resources_1.PolicyResource.product,
205
- operation: utils_1.PolicyOperation.update,
206
- },
207
- ],
208
157
  },
209
158
  ];
210
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3ZlbmRvci9wcm9kdWN0cy9taWRkbGV3YXJlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtRUFBNkQ7QUFDN0QscURBQTJEO0FBTzNELG1EQUc0QjtBQUM1QiwyQ0FBK0M7QUFFL0MsdUNBQXdEO0FBQ3hELHVDQUdrQjtBQUNsQixpREFHdUI7QUFDdkIsNkNBV3FCO0FBQ3JCLHFEQUlrQztBQUVsQyxNQUFNLDRCQUE0QixHQUFHLEtBQUssRUFDeEMsR0FBK0IsRUFDL0IsSUFBb0IsRUFDcEIsSUFBd0IsRUFDeEIsRUFBRTtJQUNGLE1BQU0sUUFBUSxHQUFHLEdBQUcsQ0FBQyxjQUFlLENBQUMsU0FBUyxDQUFBO0lBRTlDLE1BQU0sQ0FBQyxhQUFhLEVBQUUsdUJBQXVCLENBQUMsR0FBRyxNQUFNLElBQUEsa0JBQVUsRUFBQztRQUNoRSxJQUFBLGtDQUF3QixFQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDO1FBQzdDLElBQUEsMkNBQWlDLEVBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxRQUFRLENBQUM7S0FDdkQsQ0FBQyxDQUFBO0lBRUYsR0FBRyxDQUFDLGdCQUFnQixLQUFLLEVBQUUsQ0FBQTtJQUMzQixNQUFNLFdBQVcsR0FBSSxHQUFHLENBQUMsZ0JBQWdCLENBQUMsSUFBNkIsSUFBSSxFQUFFLENBQUE7SUFDN0UsR0FBRyxDQUFDLGdCQUFnQixDQUFDLElBQUksR0FBRztRQUMxQixHQUFHLFdBQVc7UUFDZDtZQUNFLEdBQUcsRUFBRTtnQkFDSDtvQkFDRSxFQUFFLEVBQUUsYUFBYTtvQkFDakIsTUFBTSxFQUFFLEVBQUUsR0FBRyxFQUFFLENBQUMscUJBQWEsQ0FBQyxLQUFLLEVBQUUscUJBQWEsQ0FBQyxRQUFRLENBQUMsRUFBRTtpQkFDL0Q7Z0JBQ0Q7b0JBQ0UsTUFBTSxFQUFFLHFCQUFhLENB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
159
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3ZlbmRvci9wcm9kdWN0cy9taWRkbGV3YXJlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSx1Q0FBK0M7QUFPL0MsbURBRzRCO0FBQzVCLDJDQUErQztBQUUvQyx1Q0FBd0Q7QUFDeEQsdUNBR2tCO0FBQ2xCLGlEQUd1QjtBQUN2Qiw2Q0FXcUI7QUFDckIscURBSWtDO0FBRWxDLE1BQU0sNEJBQTRCLEdBQUcsS0FBSyxFQUN4QyxHQUErQixFQUMvQixJQUFvQixFQUNwQixJQUF3QixFQUN4QixFQUFFO0lBQ0YsTUFBTSxRQUFRLEdBQUcsR0FBRyxDQUFDLGNBQWUsQ0FBQyxTQUFTLENBQUE7SUFFOUMsTUFBTSxDQUFDLGFBQWEsRUFBRSx1QkFBdUIsQ0FBQyxHQUFHLE1BQU0sSUFBQSxrQkFBVSxFQUFDO1FBQ2hFLElBQUEsa0NBQXdCLEVBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxRQUFRLENBQUM7UUFDN0MsSUFBQSwyQ0FBaUMsRUFBQyxHQUFHLENBQUMsS0FBSyxFQUFFLFFBQVEsQ0FBQztLQUN2RCxDQUFDLENBQUE7SUFFRixHQUFHLENBQUMsZ0JBQWdCLEtBQUssRUFBRSxDQUFBO0lBQzNCLE1BQU0sV0FBVyxHQUFJLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUE2QixJQUFJLEVBQUUsQ0FBQTtJQUM3RSxHQUFHLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxHQUFHO1FBQzFCLEdBQUcsV0FBVztRQUNkO1lBQ0UsR0FBRyxFQUFFO2dCQUNIO29CQUNFLEVBQUUsRUFBRSxhQUFhO29CQUNqQixNQUFNLEVBQUUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxxQkFBYSxDQUFDLEtBQUssRUFBRSxxQkFBYSxDQUFDLFFBQVEsQ0FBQyxFQUFFO2lCQUMvRDtnQkFDRDtvQkFDRSxNQUFNLEVBQUUscUJBQWEsQ0FBQyxTQUFTO29CQUMv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
@@ -138,7 +138,7 @@ export type VendorCreateProductType = z.infer<typeof CreateProduct> & Additional
138
138
  declare const CreateProduct: z.ZodObject<{
139
139
  title: z.ZodString;
140
140
  subtitle: z.ZodOptional<z.ZodString>;
141
- description: z.ZodOptional<z.ZodString>;
141
+ description: z.ZodPipe<z.ZodOptional<z.ZodString>, z.ZodTransform<string | undefined, string | undefined>>;
142
142
  status: z.ZodOptional<z.ZodEnum<{
143
143
  readonly DRAFT: "draft";
144
144
  readonly PROPOSED: "proposed";
@@ -222,7 +222,7 @@ export type VendorUpdateProductType = z.infer<typeof UpdateProduct> & Additional
222
222
  declare const UpdateProduct: z.ZodObject<{
223
223
  title: z.ZodOptional<z.ZodString>;
224
224
  subtitle: z.ZodOptional<z.ZodNullable<z.ZodString>>;
225
- description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
225
+ description: z.ZodPipe<z.ZodOptional<z.ZodNullable<z.ZodString>>, z.ZodTransform<string | null | undefined, string | null | undefined>>;
226
226
  discountable: z.ZodOptional<z.ZodPipe<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>, z.ZodTransform<boolean, string | boolean>>>;
227
227
  is_giftcard: z.ZodOptional<z.ZodPipe<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>, z.ZodTransform<boolean, string | boolean>>>;
228
228
  images: z.ZodOptional<z.ZodArray<z.ZodObject<{
@@ -6,6 +6,7 @@ const types_1 = require("@mercurjs/types");
6
6
  const validators_1 = require("@medusajs/medusa/api/utils/validators");
7
7
  const common_1 = require("@medusajs/medusa/api/utils/common-validators/common");
8
8
  const utils_1 = require("@medusajs/framework/utils");
9
+ const sanitize_rich_text_1 = require("../../../utils/sanitize-rich-text");
9
10
  const statusEnum = zod_1.z.nativeEnum(types_1.ProductStatus);
10
11
  const VendorGetProductsParamsFields = zod_1.z.object({
11
12
  q: zod_1.z.string().optional(),
@@ -128,7 +129,7 @@ const CreateProduct = zod_1.z
128
129
  .object({
129
130
  title: zod_1.z.string(),
130
131
  subtitle: zod_1.z.string().optional(),
131
- description: zod_1.z.string().optional(),
132
+ description: zod_1.z.string().optional().transform(sanitize_rich_text_1.sanitizeNullableRichText),
132
133
  status: statusEnum.optional(),
133
134
  is_giftcard: (0, common_1.booleanString)().optional().default(false),
134
135
  discountable: (0, common_1.booleanString)().optional().default(true),
@@ -177,7 +178,7 @@ const UpdateProduct = zod_1.z
177
178
  .object({
178
179
  title: zod_1.z.string().optional(),
179
180
  subtitle: zod_1.z.string().nullish(),
180
- description: zod_1.z.string().nullish(),
181
+ description: zod_1.z.string().nullish().transform(sanitize_rich_text_1.sanitizeNullableRichText),
181
182
  discountable: (0, common_1.booleanString)().optional(),
182
183
  is_giftcard: (0, common_1.booleanString)().optional(),
183
184
  images: zod_1.z
@@ -344,4 +345,4 @@ exports.VendorBatchProductAttributes = zod_1.z
344
345
  update: zod_1.z.array(VendorBatchAttributeUpdate).optional(),
345
346
  })
346
347
  .strict();
347
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcGkvdmVuZG9yL3Byb2R1Y3RzL3ZhbGlkYXRvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNkJBQXVCO0FBQ3ZCLDJDQUFtRTtBQUNuRSxzRUFLOEM7QUFDOUMsZ0ZBRzREO0FBRTVELHFEQUFrRTtBQUVsRSxNQUFNLFVBQVUsR0FBRyxPQUFDLENBQUMsVUFBVSxDQUFDLHFCQUFhLENBQUMsQ0FBQTtBQUU5QyxNQUFNLDZCQUE2QixHQUFHLE9BQUMsQ0FBQyxNQUFNLENBQUM7SUFDN0MsQ0FBQyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDeEIsRUFBRSxFQUFFLE9BQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsT0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFO0lBQ3pELEtBQUssRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQzVCLE1BQU0sRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQzdCLE1BQU0sRUFBRSxVQUFVLENBQUMsS0FBSyxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQ3JDLGFBQWEsRUFBRSxPQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLE9BQUMsQ0FBQyxLQUFLLENBQUMsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRTtJQUNwRSxPQUFPLEVBQUUsT0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLE9BQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxPQUFDLENBQUMsS0FBSyxDQUFDLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxD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M0IsSUFBSSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDM0IsT0FBTyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDOUIsT0FBTyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDOUIsUUFBUSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDL0IsWUFBWSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDbkMsTUFBTSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDN0IsTUFBTSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDN0IsTUFBTSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDN0IsS0FBSyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDNUIsY0FBYyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDckMsUUFBUSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDL0IsUUFBUSxFQUFFLE9BQUMsQ0FBQyxNQUFNLENBQUMsT0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLE9BQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLFFBQVEsRUFBRTtJQUN0RCxPQUFPLEVBQUUsT0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsUUFBUSxFQUFFO0NBQ3JELENBQUM7S0FDRCxNQUFNLEVBQUUsQ0FBQTtBQUVYLE1BQU0sb0JBQW9CLEdBQUcsT0FBQztLQUMzQixNQUFNLENBQUM7SUFDTixFQUFFLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRTtJQUN6QixLQUFLLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRTtJQUM1QixHQUFHLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLE9BQU8sRUFBRTtJQUN6QixHQUFHLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLE9BQU8sRUFBRTtJQUN6QixHQUFHLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLE9BQU8sRUFBRTtJQUN6QixJQUFJLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLE9BQU8sRUFBRTtJQUMxQixJQUFJLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLE9BQU8sRUFBRTtJQUMxQixJQUFJLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLE9BQU8sRUFBRTtJQUMxQixPQUFPLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLE9BQU8sRUFBRTtJQUM3QixPQUFPLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLE9BQU8sRUFBRTtJQUM3QixRQUFRLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLE9BQU8sRUFBRTtJQUM5QixTQUFTLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLE9BQU8sRUFBRTtJQUMvQixZQUFZLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRTtJQUNuQyxNQUFNLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLE9BQU8sRUFBRTtJQUM1QixNQUFNLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLE9BQU8sRUFBRTtJQUM1QixNQUFNLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLE9BQU8sRUFBRTtJQUM1QixLQUFLLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLE9BQU8sRUFBRTtJQUMzQixjQUFjLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLE9BQU8sRUFBRTtJQUNwQyxRQUFRLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLE9BQU8sRUFB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TUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQ2hDLE1BQU0sRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQzdCLFdBQVcsRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQ2xDLE9BQU8sRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQzlCLGFBQWEsRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQ3BDLFVBQVUsRUFBRSxPQUFDLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDLFFBQVEsRUFBRTtJQUM3QyxJQUFJLEVBQUUsT0FBQyxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQyxRQUFRLEVBQUU7SUFDdkMsT0FBTyxFQUFFLE9BQUM7U0FDUCxLQUFLLENBQUMsT0FBQyxDQUFDLE1BQU0sQ0FBQyxFQUFFLEtBQUssRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsTUFBTSxFQUFFLE9BQUMsQ0FBQyxLQUFLLENBQUMsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQ25FLFFBQVEsRUFBRTtJQUNiLFVBQVUsRUFBRSxPQUFDLENBQUMsS0FBSyxDQUFDLDRCQUE0QixDQUFDLENBQUMsUUFBUSxFQUFFO0lBQzVELFFBQVEsRUFBRSxPQUFDLENBQUMsS0FBSyxDQUFDLG9CQUFvQixDQUFDLENBQUMsUUFBUSxFQUFFO0lBQ2xELE1BQU0sRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQzdCLE1BQU0sRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQzdCLE1BQU0sRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQzdCLEtBQUssRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQzVCLE9BQU8sRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQzlCLFFBQVEsRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQy9CLGNBQWMsRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQ3JDLFFBQVEsRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQy9CLFFBQVEsRUFBRSxPQUFDLENBQUMsTUFBTSxDQUFDLE9BQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxPQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxRQUFRLEVBQUU7Q0FDdkQsQ0FBQztLQUNELE1BQU0sRUFBRSxDQUFBO0FBQ0UsUUFBQSxtQkFBbUIsR0FBRyxJQUFBLCtCQUFrQixFQUFDLGFBQWEsRUFBRSxDQUFDLE1BQU0sRUFBRSxFQUFFO0FBQzlFLHlFQUF5RTtBQUN6RSx1RUFBdUU7QUFDdkUsd0VBQXdFO0FBQ3hFLHFFQUFxRTtBQUNyRSxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxFQUFFO0lBQy9CLElBQ0UsSUFBSSxDQUFDLE1BQU0sS0FBSyxTQUFTO1FBQ3pCLG1CQUFXLENBQUMsZ0JBQWdCLENBQUMsMEJBQWtCLENBQUMsZUFBZSxDQUFDO1FBQ2hFLElBQUksQ0FBQyxNQUFNLEtBQUsscUJBQWEsQ0FBQyxLQUFLO1FBQ25DLElBQUksQ0FBQyxNQUFNLEtBQUsscUJBQWEsQ0FBQyxRQUFRLEVBQ3RDLENBQUM7UUFDRCxHQUFHLENBQUMsUUFBUSxDQUFDO1lBQ1gsSUFBSSxFQUFFLE9BQUMsQ0FBQyxZQUFZLENBQUMsTUFBTTtZQUMzQixJQUFJLEVBQUUsQ0FBQyxRQUFRLENBQUM7WUFDaEIsT0FBTyxFQUFFLG9FQUFvRSxxQkFBYSxDQUFDLEtBQUssS0FBSyxxQkFBYSxDQUFDLFFBQVEsR0FBRztTQUMvSCxDQUFDLENBQUE7SUFDSixDQUFDO0FBQ0gsQ0FBQyxDQUFvQyxDQUN0QyxDQUFBO0FBSUQsTUFBTSxhQUFhLEdBQUcsT0FBQztLQUNwQixNQUFNLENBQUM7SUFDTixLQUFLLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRTtJQUM1QixRQUFRLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLE9BQU8sRUFBRTtJQUM5QixXQUFXLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLE9BQU8sRUFBRTtJQUNqQyxZQUFZLEVBQUUsSUFBQSxzQkFBYSxHQUFFLENBQUMsUUFBUSxFQUFFO0lBQ3hDLFdBQVcsRUFBRSxJQUFBLHNCQUFhLEdBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDdkMsTUFBTSxFQUFFLE9BQUM7U0FDTixLQUFLLENBQUMsT0FBQyxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFLEVBQUUsR0FBRyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUM7U0FDL0QsUUFBUSxFQUFFO0lBQ2IsU0FBUyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDL0IsTUFBTSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDNUIsV0FBVyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDakMsT0FBTyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDN0IsYUFBYSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDbkMsVUFBVSxFQUFFLE9BQUMsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUMsUUFBUSxFQUFFO0lBQzdDLElBQUksRUFBRSxPQUFDLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDLFFBQVEsRUFBRTtJQUN2QyxPQUFPLEVBQUUsT0FBQztTQUNQLEtBQUssQ0FBQyxPQUFDLENBQUMsTUFBTSxDQUFDLEVBQUUsS0FBSyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxNQUFNLEVBQUUsT0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDbkUsUUFBUSxFQUFFO0lBQ2IsUUFBUSxFQUFFLE9BQUMsQ0FBQyxLQUFLLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxRQUFRLEVBQUU7SUFDbEQsTUFBTSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDNUIsTUFBTSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDNUIsTUFBTSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDNUIsS0FBSyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDM0IsT0FBTyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDN0IsUUFBUSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDOUIsY0FBYyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDcEMsUUFBUSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDOUIsUUFBUSxFQUFFLE9BQUMsQ0FBQyxNQUFNLENBQUMsT0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLE9BQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLE9BQU8sRUFBRTtDQUN0RCxDQUFDO0tBQ0QsTUFBTSxFQUFFLENBQUE7QUFDRSxRQUFBLG1CQUFtQixHQUFHLElBQUEsK0JBQWtCLEVBQUMsYUFBYSxDQUFDLENBQUE7QUFFcEUsTUFBTSxvQ0FBb0MsR0FBRyxPQUFDLENBQUMsTUFBTSxDQUFDO0lBQ3BELENBQUMsRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQ3hCLGdCQUFnQixFQUFFLElBQUEsc0JBQWEsR0FBRSxDQUFDLFFBQVEsRUFBRTtJQUM1QyxlQUFlLEVBQUUsSUFBQSxzQkFBYSxHQUFFLENBQUMsUUFBUSxFQUFFO0lBQzNDLFVBQVUsRUFBRSxJQUFBLDhCQUFpQixHQUFFLENBQUMsUUFBUSxFQUFFO0lBQzFDLFVBQVUsRUFBRSxJQUFBLDhCQUFpQixHQUFFLENBQUMsUUFBUSxFQUFFO0NBQzNDLENBQUMsQ0FBQTtBQUtXLFFBQUEsOEJBQThCLEdBQUcsSUFBQSw2QkFBZ0IsRUFBQztJQUM3RCxNQUFNLEVBQUUsQ0FBQztJQUNULEtBQUssRUFBRSxFQUFFO0NBQ1YsQ0FBQztLQUNDLEtBQUssQ0FBQyxvQ0FBb0MsQ0FBQztLQUMzQyxLQUFLLENBQUMsSUFBQSwrQkFBc0IsRUFBQyxvQ0FBb0MsQ0FBQyxDQUFDLENBQUE7QUFLekQsUUFBQSw2QkFBNkIsR0FBRyxJQUFBLCtCQUFrQixHQUFFLENBQUE7QUFHcEQsUUFBQSx1QkFBdUIsR0FBRyxPQUFDO0tBQ3JDLE1BQU0sQ0FBQztJQUNOLEtBQUssRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFO0lBQ2pCLEdBQUcsRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQzFCLEdBQUcsRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQzFCLEdBQUcsRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQzFCLElBQUksRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQzNCLElBQUksRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQzNCLElBQUksRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQzNCLE9BQU8sRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQzlCLE9BQU8sRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQzlCLFFBQVEsRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQy9CLFlBQVksRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQ25DLE1BQU0sRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQzdCLE1BQU0sRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQzdCLE1BQU0sRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQzdCLEtBQUssRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQzVCLGNBQWMsRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQ3JDLFFBQVEsRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQy9CLGVBQWUsRUFBRSxPQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQ3ZDLGdCQUFnQixFQUFFLE9BQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDeEMsU0FBUyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDaEMsUUFBUSxFQUFFLE9BQUMsQ0FBQyxNQUFNLENBQUMsT0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLE9BQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLFFBQVEsRUFBRTtJQUN0RCxPQUFPLEVBQUUsT0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsUUFBUSxFQUFFO0NBQ3JELENBQUM7S0FDRCxNQUFNLEVBQUUsQ0FBQTtBQUtFLFFBQUEsMEJBQTBCLEdBQUcsT0FBQztLQUN4QyxNQUFNLENBQUM7SUFDTixLQUFLLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRTtJQUM1QixHQUFHLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLE9BQU8sRUFBRTtJQUN6QixHQUFHLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLE9BQU8sRUFBRTtJQUN6QixHQUFHLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLE9BQU8sRUFBRTtJQUN6QixJQUFJLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLE9BQU8sRUFBRTtJQUMxQixJQUFJLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLE9BQU8sRUFBRTtJQUMxQixJQUFJLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLE9BQU8sRUFBRTtJQUMxQixPQUFPLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLE9BQU8sRUFBRTtJQUM3QixPQUFPLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLE9BQU8sRUFBRTtJQUM3QixRQUFRLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLE9BQU8sRUFBRTtJQUM5QixTQUFTLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLE9BQU8sRUFBRTtJQUMvQixZQUFZLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRTtJQUNuQyxNQUFNLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLE9BQU8sRUFBRTtJQUM1QixNQUFNLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLE9BQU8sRUFBRTtJQUM1QixNQUFNLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLE9BQU8sRUFBRTtJQUM1QixLQUFLLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLE9BQU8sRUFBRTtJQUMzQixjQUFjLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLE9BQU8sRUFBRTtJQUNwQyxRQUFRLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLE9BQU8sRUFBRTtJQUM5QixlQUFlLEVBQUUsT0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsRUFBRTtJQUN2QyxnQkFBZ0IsRUFBRSxPQUFDLENBQUMsT0FBTyxFQUFFLENBQUMs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
348
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcGkvdmVuZG9yL3Byb2R1Y3RzL3ZhbGlkYXRvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNkJBQXVCO0FBQ3ZCLDJDQUFtRTtBQUNuRSxzRUFLOEM7QUFDOUMsZ0ZBRzREO0FBRTVELHFEQUFrRTtBQUNsRSwwRUFBNEU7QUFFNUUsTUFBTSxVQUFVLEdBQUcsT0FBQyxDQUFDLFVBQVUsQ0FBQyxxQkFBYSxDQUFDLENBQUE7QUFFOUMsTUFBTSw2QkFBNkIsR0FBRyxPQUFDLENBQUMsTUFBTSxDQUFDO0lBQzdDLENBQUMsRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQ3hCLEVBQUUsRUFBRSxPQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLE9BQUMsQ0FBQyxLQUFLLENBQUMsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRTtJQUN6RCxLQUFLLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRTtJQUM1QixNQUFNLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRTtJQUM3QixNQUFNLEVBQUUsVUFBVSxDQUFDLEtBQUssRUFBRSxDQUFDLFFBQVEsRUFBRTtJQUNyQyxhQUFhLEVBQUUsT0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLE9BQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxPQUFDLENBQUMsS0FBSyxDQUFDLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUU7SUFDcEUsT0FBTyxFQUFFLE9BQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsT0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFO0lBQzlELFdBQVcsRUFBRSxPQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLE9BQUMsQ0FBQyxLQUFLLENBQUMsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRTtJQUNsRSxNQUFNLEVBQUUsT0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLE9BQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxPQUFDLENBQUMsS0FBSyxDQUFDLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUU7SUFDN0QsR0FBRyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDMUIsR0FBRyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDMUIsR0FBRyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDMUIsT0FBTyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDOUIsVUFBVSxFQUFFLElBQUEsOEJBQWlCLEdBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDMUMsVUFBVSxFQUFFLElBQUEsOEJBQWlCLEdBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDMUMsVUFBVSxFQUFFLElBQUEsOEJBQWlCLEdBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDMUMsU0FBUyxFQUFFLElBQUEsc0JBQWEsR0FBRSxDQUFDLFFBQVEsRUFBRTtDQUN0QyxDQUFDLENBQUE7QUFHVyxRQUFBLHVCQUF1QixHQUFHLElBQUEsNkJBQWdCLEVBQUM7SUFDdEQsTUFBTSxFQUFFLENBQUM7SUFDVCxLQUFLLEVBQUUsRUFBRTtDQUNWLENBQUM7S0FDQyxLQUFLLENBQUMsNkJBQTZCLENBQUM7S0FDcEMsS0FBSyxDQUFDLElBQUEsK0JBQXNCLEVBQUMsNkJBQTZCLENBQUMsQ0FBQztLQUM1RCxTQUFTLENB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ekIsS0FBSyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDNUIsR0FBRyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDekIsR0FBRyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDekIsR0FBRyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDekIsSUFBSSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDMUIsSUFBSSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDMUIsSUFBSSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDMUIsT0FBTyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDN0IsT0FBTyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDN0IsUUFBUSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDOUIsU0FBUyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDL0IsWUFBWSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDbkMsTUFBTSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDNUIsTUFBTSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDNUIsTUFBTSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDNUIsS0FBSyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDM0IsY0FBYyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDcEMsUUFBUSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUs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LEVBQUU7SUFDNUIsR0FBRyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDekIsR0FBRyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDekIsR0FBRyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDekIsSUFBSSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDMUIsSUFBSSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDMUIsSUFBSSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDMUIsT0FBTyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDN0IsT0FBTyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDN0IsUUFBUSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDOUIsU0FBUyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDL0IsWUFBWSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDbkMsTUFBTSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDNUIsTUFBTSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDNUIsTUFBTSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDNUIsS0FBSyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDM0IsY0FBYyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDcEMsUUFBUSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUU7SUFDOUIsZUFBZSxFQUFFLE9BQUMsQ0FBQyxP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