@devx-commerce/plugin-gati 0.0.2-beta.3 → 0.0.2-beta.30

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 (121) hide show
  1. package/.medusa/server/src/api/erp/webhook/route.js +82 -2
  2. package/.medusa/server/src/modules/category-group-master/index.js +13 -0
  3. package/.medusa/server/src/modules/category-group-master/migrations/Migration20250531004725.js +15 -0
  4. package/.medusa/server/src/modules/category-group-master/models/category-group-master.js +12 -0
  5. package/.medusa/server/src/modules/category-group-master/service.js +10 -0
  6. package/.medusa/server/src/modules/category-master/index.js +13 -0
  7. package/.medusa/server/src/modules/category-master/migrations/Migration20250513122212.js +15 -0
  8. package/.medusa/server/src/modules/category-master/migrations/Migration20250519180539.js +14 -0
  9. package/.medusa/server/src/modules/category-master/migrations/Migration20250531004724.js +14 -0
  10. package/.medusa/server/src/modules/category-master/models/category-master.js +15 -0
  11. package/.medusa/server/src/modules/category-master/service.js +10 -0
  12. package/.medusa/server/src/modules/collection-group-master/index.js +13 -0
  13. package/.medusa/server/src/modules/collection-group-master/migrations/Migration20250531022203.js +15 -0
  14. package/.medusa/server/src/modules/collection-group-master/models/collection-group-master.js +12 -0
  15. package/.medusa/server/src/modules/collection-group-master/service.js +10 -0
  16. package/.medusa/server/src/modules/collection-master/index.js +13 -0
  17. package/.medusa/server/src/modules/collection-master/migrations/Migration20250513122211.js +16 -0
  18. package/.medusa/server/src/modules/collection-master/migrations/Migration20250531025048.js +14 -0
  19. package/.medusa/server/src/modules/collection-master/models/collection-master.js +15 -0
  20. package/.medusa/server/src/modules/collection-master/service.js +10 -0
  21. package/.medusa/server/src/modules/erp/migrations/Migration20250513121436.js +16 -0
  22. package/.medusa/server/src/modules/erp/models/erp.js +10 -0
  23. package/.medusa/server/src/modules/extended-product/migrations/{Migration20250426103546.js → Migration20250519043358.js} +11 -5
  24. package/.medusa/server/src/modules/extended-product/migrations/Migration20250601030519.js +23 -0
  25. package/.medusa/server/src/modules/extended-product/models/extended-product.js +60 -3
  26. package/.medusa/server/src/modules/extended-product/service.js +3 -1
  27. package/.medusa/server/src/modules/extended-variant/migrations/{Migration20250430062016.js → Migration20250507055941.js} +4 -4
  28. package/.medusa/server/src/modules/extended-variant/migrations/Migration20250508025507.js +14 -0
  29. package/.medusa/server/src/modules/extended-variant/migrations/Migration20250601045242.js +18 -0
  30. package/.medusa/server/src/modules/extended-variant/models/extended-variant.js +33 -1
  31. package/.medusa/server/src/modules/party-master/index.js +13 -0
  32. package/.medusa/server/src/modules/party-master/migrations/Migration20250604104235.js +16 -0
  33. package/.medusa/server/src/modules/party-master/migrations/Migration20250604115453.js +16 -0
  34. package/.medusa/server/src/modules/party-master/migrations/Migration20250604120348.js +16 -0
  35. package/.medusa/server/src/modules/party-master/migrations/Migration20250604120701.js +14 -0
  36. package/.medusa/server/src/modules/party-master/models/party-master.js +60 -0
  37. package/.medusa/server/src/modules/party-master/service.js +10 -0
  38. package/.medusa/server/src/modules/raw-master/index.js +13 -0
  39. package/.medusa/server/src/modules/raw-master/migrations/Migration20250509190057.js +16 -0
  40. package/.medusa/server/src/modules/raw-master/migrations/Migration20250509190322.js +14 -0
  41. package/.medusa/server/src/modules/raw-master/models/raw-master.js +17 -0
  42. package/.medusa/server/src/modules/raw-master/service.js +10 -0
  43. package/.medusa/server/src/modules/shape-master/index.js +13 -0
  44. package/.medusa/server/src/modules/shape-master/migrations/Migration20250509174455.js +16 -0
  45. package/.medusa/server/src/modules/shape-master/models/shape-master.js +13 -0
  46. package/.medusa/server/src/modules/shape-master/service.js +10 -0
  47. package/.medusa/server/src/modules/sub-category-master/index.js +13 -0
  48. package/.medusa/server/src/modules/sub-category-master/migrations/Migration20250513115356.js +15 -0
  49. package/.medusa/server/src/modules/sub-category-master/migrations/Migration20250519180538.js +14 -0
  50. package/.medusa/server/src/modules/sub-category-master/migrations/Migration20250531010409.js +14 -0
  51. package/.medusa/server/src/modules/sub-category-master/models/sub-category-master.js +15 -0
  52. package/.medusa/server/src/modules/sub-category-master/service.js +10 -0
  53. package/.medusa/server/src/subscribers/category-group-master.js +117 -0
  54. package/.medusa/server/src/subscribers/category-master.js +130 -0
  55. package/.medusa/server/src/subscribers/collection-master.js +115 -0
  56. package/.medusa/server/src/subscribers/party-master.js +229 -0
  57. package/.medusa/server/src/subscribers/sub-category-master.js +130 -0
  58. package/.medusa/server/src/utils/address-formatter.js +59 -0
  59. package/.medusa/server/src/utils/phone-mapper.js +28 -0
  60. package/.medusa/server/src/workflows/category-group-master/index.js +58 -0
  61. package/.medusa/server/src/workflows/category-group-master/steps/create-category-group.js +18 -0
  62. package/.medusa/server/src/workflows/category-group-master/steps/delete-category-group.js +23 -0
  63. package/.medusa/server/src/workflows/category-group-master/steps/fetch-category-master.js +70 -0
  64. package/.medusa/server/src/workflows/category-group-master/steps/update-category-group.js +26 -0
  65. package/.medusa/server/src/workflows/category-master/index.js +58 -0
  66. package/.medusa/server/src/workflows/category-master/steps/create-category.js +21 -0
  67. package/.medusa/server/src/workflows/category-master/steps/delete-category.js +23 -0
  68. package/.medusa/server/src/workflows/category-master/steps/fetch-category-master.js +70 -0
  69. package/.medusa/server/src/workflows/category-master/steps/update-category.js +29 -0
  70. package/.medusa/server/src/workflows/collection-group-master/index.js +37 -0
  71. package/.medusa/server/src/workflows/collection-group-master/steps/create-category.js +50 -0
  72. package/.medusa/server/src/workflows/collection-group-master/steps/create-collection-group.js +18 -0
  73. package/.medusa/server/src/workflows/collection-group-master/steps/delete-collection-group.js +23 -0
  74. package/.medusa/server/src/workflows/collection-group-master/steps/fetch-collection-grp-master.js +70 -0
  75. package/.medusa/server/src/workflows/collection-group-master/steps/update-collection-group.js +26 -0
  76. package/.medusa/server/src/workflows/collection-master/index.js +68 -0
  77. package/.medusa/server/src/workflows/collection-master/steps/create-category.js +60 -0
  78. package/.medusa/server/src/workflows/collection-master/steps/create-collection.js +22 -0
  79. package/.medusa/server/src/workflows/collection-master/steps/delete-collection.js +22 -0
  80. package/.medusa/server/src/workflows/collection-master/steps/fetch-collection-master.js +70 -0
  81. package/.medusa/server/src/workflows/collection-master/steps/update-collection.js +32 -0
  82. package/.medusa/server/src/workflows/create-extended-product-from-product/index.js +31 -1
  83. package/.medusa/server/src/workflows/create-extended-product-from-product/steps/create-style-collection-lines.js +25 -0
  84. package/.medusa/server/src/workflows/create-extended-product-from-product/steps/create-style-exploration-lines.js +26 -0
  85. package/.medusa/server/src/workflows/create-extended-variant-from-variant/index.js +74 -0
  86. package/.medusa/server/src/workflows/create-extended-variant-from-variant/steps/create-extended-variant.js +18 -0
  87. package/.medusa/server/src/workflows/create-extended-variant-from-variant/steps/create-style-detail-lines.js +25 -0
  88. package/.medusa/server/src/workflows/create-or-update-party-style-master/index.js +175 -6
  89. package/.medusa/server/src/workflows/create-or-update-party-style-master/steps/fetch-party-styles.js +1 -1
  90. package/.medusa/server/src/workflows/create-or-update-product-options/index.js +25 -0
  91. package/.medusa/server/src/workflows/create-or-update-product-options/steps/create-update-product-options.js +28 -0
  92. package/.medusa/server/src/workflows/create-or-update-style-master/index.js +180 -11
  93. package/.medusa/server/src/workflows/helpers/product-helper.js +421 -4
  94. package/.medusa/server/src/workflows/hooks/variant-created.js +16 -0
  95. package/.medusa/server/src/workflows/party-master/index.js +103 -0
  96. package/.medusa/server/src/workflows/party-master/steps/create-party.js +66 -0
  97. package/.medusa/server/src/workflows/party-master/steps/delete-party.js +23 -0
  98. package/.medusa/server/src/workflows/party-master/steps/fetch-party-master.js +70 -0
  99. package/.medusa/server/src/workflows/party-master/steps/update-party.js +74 -0
  100. package/.medusa/server/src/workflows/raw-master/index.js +30 -0
  101. package/.medusa/server/src/workflows/raw-master/steps/create-raw.js +25 -0
  102. package/.medusa/server/src/workflows/raw-master/steps/delete-raw.js +23 -0
  103. package/.medusa/server/src/workflows/raw-master/steps/fetch-raw-master.js +70 -0
  104. package/.medusa/server/src/workflows/raw-master/steps/update-raw.js +34 -0
  105. package/.medusa/server/src/workflows/shape-master/index.js +30 -0
  106. package/.medusa/server/src/workflows/shape-master/steps/create-shape.js +20 -0
  107. package/.medusa/server/src/workflows/shape-master/steps/delete-shape.js +23 -0
  108. package/.medusa/server/src/workflows/shape-master/steps/fetch-shape-master.js +70 -0
  109. package/.medusa/server/src/workflows/shape-master/steps/update-shape.js +30 -0
  110. package/.medusa/server/src/workflows/sub-category-master/index.js +58 -0
  111. package/.medusa/server/src/workflows/sub-category-master/steps/create-sub-category.js +21 -0
  112. package/.medusa/server/src/workflows/sub-category-master/steps/delete-sub-category.js +23 -0
  113. package/.medusa/server/src/workflows/sub-category-master/steps/fetch-category-master.js +70 -0
  114. package/.medusa/server/src/workflows/sub-category-master/steps/update-sub-category.js +31 -0
  115. package/.medusa/server/src/workflows/types/index.js +1 -1
  116. package/.medusa/server/src/workflows/update-extended-product-from-product/index.js +19 -2
  117. package/.medusa/server/src/workflows/update-extended-product-from-product/steps/update-extended-product-from-product.js +26 -6
  118. package/.medusa/server/src/workflows/update-extended-variant-from-variant/index.js +43 -0
  119. package/.medusa/server/src/workflows/update-extended-variant-from-variant/steps/update-extended-product-from-product.js +54 -0
  120. package/.medusa/server/src/workflows/update-extended-variant-from-variant/steps/update-extended-variant-with-field.js +15 -0
  121. package/package.json +6 -2
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Migration20250509174455 = void 0;
4
+ const migrations_1 = require("@mikro-orm/migrations");
5
+ class Migration20250509174455 extends migrations_1.Migration {
6
+ async up() {
7
+ this.addSql(`create table if not exists "shape_master" ("id" text not null, "shape_no" integer not null, "shape_for" text not null, "shape_code" text not null, "shape_name" text not null, "shape_alias_name" text not null, "created_at" timestamptz not null default now(), "updated_at" timestamptz not null default now(), "deleted_at" timestamptz null, constraint "shape_master_pkey" primary key ("id"));`);
8
+ this.addSql(`CREATE INDEX IF NOT EXISTS "IDX_shape_master_shape_code" ON "shape_master" (shape_code) WHERE deleted_at IS NULL;`);
9
+ this.addSql(`CREATE INDEX IF NOT EXISTS "IDX_shape_master_deleted_at" ON "shape_master" (deleted_at) WHERE deleted_at IS NULL;`);
10
+ }
11
+ async down() {
12
+ this.addSql(`drop table if exists "shape_master" cascade;`);
13
+ }
14
+ }
15
+ exports.Migration20250509174455 = Migration20250509174455;
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWlncmF0aW9uMjAyNTA1MDkxNzQ0NTUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbW9kdWxlcy9zaGFwZS1tYXN0ZXIvbWlncmF0aW9ucy9NaWdyYXRpb24yMDI1MDUwOTE3NDQ1NS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxzREFBa0Q7QUFFbEQsTUFBYSx1QkFBd0IsU0FBUSxzQkFBUztJQUUzQyxLQUFLLENBQUMsRUFBRTtRQUNmLElBQUksQ0FBQyxNQUFNLENBQUMsdVlBQXVZLENBQUMsQ0FBQztRQUNyWixJQUFJLENBQUMsTUFBTSxDQUFDLG1IQUFtSCxDQUFDLENBQUM7UUFDakksSUFBSSxDQUFDLE1BQU0sQ0FBQyxtSEFBbUgsQ0FBQyxDQUFDO0lBQ25JLENBQUM7SUFFUSxLQUFLLENBQUMsSUFBSTtRQUNqQixJQUFJLENBQUMsTUFBTSxDQUFDLDhDQUE4QyxDQUFDLENBQUM7SUFDOUQsQ0FBQztDQUVGO0FBWkQsMERBWUMifQ==
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ShapeMaster = void 0;
4
+ const utils_1 = require("@medusajs/framework/utils");
5
+ exports.ShapeMaster = utils_1.model.define("shape_master", {
6
+ id: utils_1.model.id().primaryKey(),
7
+ shape_no: utils_1.model.number(),
8
+ shape_for: utils_1.model.text(),
9
+ shape_code: utils_1.model.text().index(),
10
+ shape_name: utils_1.model.text(),
11
+ shape_alias_name: utils_1.model.text(),
12
+ });
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcGUtbWFzdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL21vZHVsZXMvc2hhcGUtbWFzdGVyL21vZGVscy9zaGFwZS1tYXN0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEscURBQWtEO0FBRXJDLFFBQUEsV0FBVyxHQUFHLGFBQUssQ0FBQyxNQUFNLENBQUMsY0FBYyxFQUFFO0lBQ3RELEVBQUUsRUFBRSxhQUFLLENBQUMsRUFBRSxFQUFFLENBQUMsVUFBVSxFQUFFO0lBQzNCLFFBQVEsRUFBRSxhQUFLLENBQUMsTUFBTSxFQUFFO0lBQ3hCLFNBQVMsRUFBRSxhQUFLLENBQUMsSUFBSSxFQUFFO0lBQ3ZCLFVBQVUsRUFBRSxhQUFLLENBQUMsSUFBSSxFQUFFLENBQUMsS0FBSyxFQUFFO0lBQ2hDLFVBQVUsRUFBRSxhQUFLLENBQUMsSUFBSSxFQUFFO0lBQ3hCLGdCQUFnQixFQUFFLGFBQUssQ0FBQyxJQUFJLEVBQUU7Q0FDL0IsQ0FBQyxDQUFDIn0=
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const utils_1 = require("@medusajs/framework/utils");
4
+ const shape_master_1 = require("./models/shape-master");
5
+ class ShapeMasterService extends (0, utils_1.MedusaService)({
6
+ ShapeMaster: shape_master_1.ShapeMaster,
7
+ }) {
8
+ }
9
+ exports.default = ShapeMasterService;
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9tb2R1bGVzL3NoYXBlLW1hc3Rlci9zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEscURBQTBEO0FBQzFELHdEQUFvRDtBQUVwRCxNQUFNLGtCQUFtQixTQUFRLElBQUEscUJBQWEsRUFBQztJQUM3QyxXQUFXLEVBQVgsMEJBQVc7Q0FDWixDQUFDO0NBQUc7QUFFTCxrQkFBZSxrQkFBa0IsQ0FBQyJ9
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.SUB_CATEGORY_MASTER_MODULE = void 0;
7
+ const utils_1 = require("@medusajs/framework/utils");
8
+ const service_1 = __importDefault(require("./service"));
9
+ exports.SUB_CATEGORY_MASTER_MODULE = "sub_category_master";
10
+ exports.default = (0, utils_1.Module)(exports.SUB_CATEGORY_MASTER_MODULE, {
11
+ service: service_1.default,
12
+ });
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbW9kdWxlcy9zdWItY2F0ZWdvcnktbWFzdGVyL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLHFEQUFtRDtBQUVuRCx3REFBaUQ7QUFFcEMsUUFBQSwwQkFBMEIsR0FBRyxxQkFBcUIsQ0FBQztBQUVoRSxrQkFBZSxJQUFBLGNBQU0sRUFBQyxrQ0FBMEIsRUFBRTtJQUNoRCxPQUFPLEVBQUUsaUJBQXdCO0NBQ2xDLENBQUMsQ0FBQyJ9
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Migration20250513115356 = void 0;
4
+ const migrations_1 = require("@mikro-orm/migrations");
5
+ class Migration20250513115356 extends migrations_1.Migration {
6
+ async up() {
7
+ this.addSql(`create table if not exists "sub_category_master" ("id" text not null, "sub_item_no" integer not null, "sub_category_code" text not null, "sub_category_name" text not null, "grp_no" integer not null, "category_code" text not null, "created_at" timestamptz not null default now(), "updated_at" timestamptz not null default now(), "deleted_at" timestamptz null, constraint "sub_category_master_pkey" primary key ("id"));`);
8
+ this.addSql(`CREATE INDEX IF NOT EXISTS "IDX_sub_category_master_deleted_at" ON "sub_category_master" (deleted_at) WHERE deleted_at IS NULL;`);
9
+ }
10
+ async down() {
11
+ this.addSql(`drop table if exists "sub_category_master" cascade;`);
12
+ }
13
+ }
14
+ exports.Migration20250513115356 = Migration20250513115356;
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWlncmF0aW9uMjAyNTA1MTMxMTUzNTYuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbW9kdWxlcy9zdWItY2F0ZWdvcnktbWFzdGVyL21pZ3JhdGlvbnMvTWlncmF0aW9uMjAyNTA1MTMxMTUzNTYudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsc0RBQWtEO0FBRWxELE1BQWEsdUJBQXdCLFNBQVEsc0JBQVM7SUFFM0MsS0FBSyxDQUFDLEVBQUU7UUFDZixJQUFJLENBQUMsTUFBTSxDQUFDLG1hQUFtYSxDQUFDLENBQUM7UUFDamIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxpSUFBaUksQ0FBQyxDQUFDO0lBQ2pKLENBQUM7SUFFUSxLQUFLLENBQUMsSUFBSTtRQUNqQixJQUFJLENBQUMsTUFBTSxDQUFDLHFEQUFxRCxDQUFDLENBQUM7SUFDckUsQ0FBQztDQUVGO0FBWEQsMERBV0MifQ==
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Migration20250519180538 = void 0;
4
+ const migrations_1 = require("@mikro-orm/migrations");
5
+ class Migration20250519180538 extends migrations_1.Migration {
6
+ async up() {
7
+ this.addSql(`alter table if exists "sub_category_master" add column if not exists "mapping_id" text null;`);
8
+ }
9
+ async down() {
10
+ this.addSql(`alter table if exists "sub_category_master" drop column if exists "mapping_id";`);
11
+ }
12
+ }
13
+ exports.Migration20250519180538 = Migration20250519180538;
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWlncmF0aW9uMjAyNTA1MTkxODA1MzguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbW9kdWxlcy9zdWItY2F0ZWdvcnktbWFzdGVyL21pZ3JhdGlvbnMvTWlncmF0aW9uMjAyNTA1MTkxODA1MzgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsc0RBQWtEO0FBRWxELE1BQWEsdUJBQXdCLFNBQVEsc0JBQVM7SUFFM0MsS0FBSyxDQUFDLEVBQUU7UUFDZixJQUFJLENBQUMsTUFBTSxDQUFDLDhGQUE4RixDQUFDLENBQUM7SUFDOUcsQ0FBQztJQUVRLEtBQUssQ0FBQyxJQUFJO1FBQ2pCLElBQUksQ0FBQyxNQUFNLENBQUMsaUZBQWlGLENBQUMsQ0FBQztJQUNqRyxDQUFDO0NBRUY7QUFWRCwwREFVQyJ9
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Migration20250531010409 = void 0;
4
+ const migrations_1 = require("@mikro-orm/migrations");
5
+ class Migration20250531010409 extends migrations_1.Migration {
6
+ async up() {
7
+ this.addSql(`alter table if exists "sub_category_master" add column if not exists "category_name" text not null;`);
8
+ }
9
+ async down() {
10
+ this.addSql(`alter table if exists "sub_category_master" drop column if exists "category_name";`);
11
+ }
12
+ }
13
+ exports.Migration20250531010409 = Migration20250531010409;
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWlncmF0aW9uMjAyNTA1MzEwMTA0MDkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbW9kdWxlcy9zdWItY2F0ZWdvcnktbWFzdGVyL21pZ3JhdGlvbnMvTWlncmF0aW9uMjAyNTA1MzEwMTA0MDkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsc0RBQWtEO0FBRWxELE1BQWEsdUJBQXdCLFNBQVEsc0JBQVM7SUFFM0MsS0FBSyxDQUFDLEVBQUU7UUFDZixJQUFJLENBQUMsTUFBTSxDQUFDLHFHQUFxRyxDQUFDLENBQUM7SUFDckgsQ0FBQztJQUVRLEtBQUssQ0FBQyxJQUFJO1FBQ2pCLElBQUksQ0FBQyxNQUFNLENBQUMsb0ZBQW9GLENBQUMsQ0FBQztJQUNwRyxDQUFDO0NBRUY7QUFWRCwwREFVQyJ9
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SubCategoryMaster = void 0;
4
+ const utils_1 = require("@medusajs/framework/utils");
5
+ exports.SubCategoryMaster = utils_1.model.define("sub_category_master", {
6
+ id: utils_1.model.id().primaryKey(),
7
+ sub_item_no: utils_1.model.number(),
8
+ sub_category_code: utils_1.model.text(),
9
+ sub_category_name: utils_1.model.text(),
10
+ grp_no: utils_1.model.number(),
11
+ category_code: utils_1.model.text(),
12
+ category_name: utils_1.model.text(),
13
+ mapping_id: utils_1.model.text().nullable(),
14
+ });
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ViLWNhdGVnb3J5LW1hc3Rlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9tb2R1bGVzL3N1Yi1jYXRlZ29yeS1tYXN0ZXIvbW9kZWxzL3N1Yi1jYXRlZ29yeS1tYXN0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEscURBQWtEO0FBRXJDLFFBQUEsaUJBQWlCLEdBQUcsYUFBSyxDQUFDLE1BQU0sQ0FBQyxxQkFBcUIsRUFBRTtJQUNuRSxFQUFFLEVBQUUsYUFBSyxDQUFDLEVBQUUsRUFBRSxDQUFDLFVBQVUsRUFBRTtJQUMzQixXQUFXLEVBQUUsYUFBSyxDQUFDLE1BQU0sRUFBRTtJQUMzQixpQkFBaUIsRUFBRSxhQUFLLENBQUMsSUFBSSxFQUFFO0lBQy9CLGlCQUFpQixFQUFFLGFBQUssQ0FBQyxJQUFJLEVBQUU7SUFDL0IsTUFBTSxFQUFFLGFBQUssQ0FBQyxNQUFNLEVBQUU7SUFDdEIsYUFBYSxFQUFFLGFBQUssQ0FBQyxJQUFJLEVBQUU7SUFDM0IsYUFBYSxFQUFFLGFBQUssQ0FBQyxJQUFJLEVBQUU7SUFDM0IsVUFBVSxFQUFFLGFBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxRQUFRLEVBQUU7Q0FDcEMsQ0FBQyxDQUFDIn0=
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const utils_1 = require("@medusajs/framework/utils");
4
+ const sub_category_master_1 = require("./models/sub-category-master");
5
+ class SubCategoryMasterService extends (0, utils_1.MedusaService)({
6
+ SubCategoryMaster: sub_category_master_1.SubCategoryMaster,
7
+ }) {
8
+ }
9
+ exports.default = SubCategoryMasterService;
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9tb2R1bGVzL3N1Yi1jYXRlZ29yeS1tYXN0ZXIvc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHFEQUEwRDtBQUMxRCxzRUFBaUU7QUFFakUsTUFBTSx3QkFBeUIsU0FBUSxJQUFBLHFCQUFhLEVBQUM7SUFDbkQsaUJBQWlCLEVBQWpCLHVDQUFpQjtDQUNsQixDQUFDO0NBQUc7QUFFTCxrQkFBZSx3QkFBd0IsQ0FBQyJ9
@@ -0,0 +1,117 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.config = void 0;
4
+ exports.default = categoryGroupMasterHandler;
5
+ const utils_1 = require("@medusajs/framework/utils");
6
+ const core_flows_1 = require("@medusajs/medusa/core-flows");
7
+ const product_helper_1 = require("../workflows/helpers/product-helper");
8
+ const category_group_master_1 = require("../modules/category-group-master");
9
+ /**
10
+ * Handles category master events by syncing them with Medusa categories
11
+ */
12
+ async function categoryGroupMasterHandler({ event: { data: eventData }, container, }) {
13
+ try {
14
+ const { operation, data } = eventData;
15
+ for (const item of data) {
16
+ switch (operation) {
17
+ case "create":
18
+ await handleCreate(container, item);
19
+ break;
20
+ case "update":
21
+ await handleUpdate(container, item);
22
+ break;
23
+ case "delete":
24
+ await handleDelete(container, item);
25
+ break;
26
+ default:
27
+ throw new Error(`Unsupported operation: ${operation}`);
28
+ }
29
+ }
30
+ }
31
+ catch (error) {
32
+ console.error("Error in category master handler:", error);
33
+ throw error;
34
+ }
35
+ }
36
+ /**
37
+ * Creates a new collection in Medusa and updates the collection master mapping
38
+ */
39
+ async function handleCreate(container, data) {
40
+ // TODO: remove math.random from handle
41
+ const { result } = await (0, core_flows_1.createProductCategoriesWorkflow)(container).run({
42
+ input: {
43
+ product_categories: [
44
+ {
45
+ name: data.category_group_name,
46
+ handle: (0, product_helper_1.toKebabCase)([
47
+ data.category_group_name,
48
+ data.category_group_code,
49
+ Math.random().toString(36).substring(2, 15),
50
+ ]),
51
+ is_active: false,
52
+ is_internal: false,
53
+ metadata: {
54
+ external_id: data.id,
55
+ },
56
+ },
57
+ ],
58
+ additional_data: {
59
+ [data.id]: {
60
+ thumbnail: "",
61
+ images: [],
62
+ is_featured: false,
63
+ is_custom: false,
64
+ },
65
+ },
66
+ },
67
+ });
68
+ const categoryGroupMasterService = container.resolve(category_group_master_1.CATEGORY_GROUP_MASTER_MODULE);
69
+ await categoryGroupMasterService.updateCategoryGroupMasters([
70
+ {
71
+ id: data.id,
72
+ mapping_id: result[0].id,
73
+ },
74
+ ]);
75
+ }
76
+ /**
77
+ * Updates an existing category in Medusa if it has a mapping
78
+ */
79
+ async function handleUpdate(container, data) {
80
+ const query = container.resolve(utils_1.ContainerRegistrationKeys.QUERY);
81
+ const { data: [category_master], } = await query.graph({
82
+ entity: "category_group_master",
83
+ fields: ["id", "mapping_id"],
84
+ filters: { id: data.id },
85
+ });
86
+ if (!category_master?.mapping_id) {
87
+ return;
88
+ }
89
+ await (0, core_flows_1.updateProductCategoriesWorkflow)(container).run({
90
+ input: {
91
+ selector: {
92
+ id: category_master.mapping_id,
93
+ },
94
+ update: {
95
+ name: data.category_group_name,
96
+ metadata: {
97
+ external_id: data.id,
98
+ },
99
+ },
100
+ },
101
+ });
102
+ }
103
+ /**
104
+ * Deletes a collection in Medusa if it has a mapping
105
+ */
106
+ async function handleDelete(container, data) {
107
+ if (!data?.mapping_id) {
108
+ return;
109
+ }
110
+ await (0, core_flows_1.deleteProductCategoriesWorkflow)(container).run({
111
+ input: [data.mapping_id],
112
+ });
113
+ }
114
+ exports.config = {
115
+ event: "category_group_master",
116
+ };
117
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcnktZ3JvdXAtbWFzdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3N1YnNjcmliZXJzL2NhdGVnb3J5LWdyb3VwLW1hc3Rlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUE4QkEsNkNBeUJDO0FBdERELHFEQUFzRTtBQUN0RSw0REFJcUM7QUFJckMsd0VBQWtFO0FBRWxFLDRFQUFnRjtBQWVoRjs7R0FFRztBQUNZLEtBQUssVUFBVSwwQkFBMEIsQ0FBQyxFQUN2RCxLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLEVBQzFCLFNBQVMsR0FDZ0M7SUFDekMsSUFBSSxDQUFDO1FBQ0gsTUFBTSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsR0FBRyxTQUFTLENBQUM7UUFDdEMsS0FBSyxNQUFNLElBQUksSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUN4QixRQUFRLFNBQVMsRUFBRSxDQUFDO2dCQUNsQixLQUFLLFFBQVE7b0JBQ1gsTUFBTSxZQUFZLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDO29CQUNwQyxNQUFNO2dCQUNSLEtBQUssUUFBUTtvQkFDWCxNQUFNLFlBQVksQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLENBQUM7b0JBQ3BDLE1BQU07Z0JBQ1IsS0FBSyxRQUFRO29CQUNYLE1BQU0sWUFBWSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQztvQkFDcEMsTUFBTTtnQkFDUjtvQkFDRSxNQUFNLElBQUksS0FBSyxDQUFDLDBCQUEwQixTQUFTLEVBQUUsQ0FBQyxDQUFDO1lBQzNELENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQztJQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7UUFDZixPQUFPLENBQUMsS0FBSyxDQUFDLG1DQUFtQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzFELE1BQU0sS0FBSyxDQUFDO0lBQ2QsQ0FBQztBQUNILENBQUM7QUFFRDs7R0FFRztBQUNILEtB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
@@ -0,0 +1,130 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.config = void 0;
4
+ exports.default = categoryMasterHandler;
5
+ const utils_1 = require("@medusajs/framework/utils");
6
+ const core_flows_1 = require("@medusajs/medusa/core-flows");
7
+ const category_master_1 = require("../modules/category-master");
8
+ const product_helper_1 = require("../workflows/helpers/product-helper");
9
+ /**
10
+ * Handles category master events by syncing them with Medusa categories
11
+ */
12
+ async function categoryMasterHandler({ event: { data: eventData }, container, }) {
13
+ try {
14
+ const { operation, data } = eventData;
15
+ for (const item of data) {
16
+ switch (operation) {
17
+ case "create":
18
+ await handleCreate(container, item);
19
+ break;
20
+ case "update":
21
+ await handleUpdate(container, item);
22
+ break;
23
+ case "delete":
24
+ await handleDelete(container, item);
25
+ break;
26
+ default:
27
+ throw new Error(`Unsupported operation: ${operation}`);
28
+ }
29
+ }
30
+ }
31
+ catch (error) {
32
+ console.error("Error in category master handler:", error);
33
+ throw error;
34
+ }
35
+ }
36
+ /**
37
+ * Creates a new collection in Medusa and updates the collection master mapping
38
+ */
39
+ async function handleCreate(container, data) {
40
+ const query = container.resolve(utils_1.ContainerRegistrationKeys.QUERY);
41
+ const { data: [category_group_master], } = await query.graph({
42
+ entity: "category_group_master",
43
+ fields: ["id", "mapping_id"],
44
+ filters: { grp_no: data.grp_group_no },
45
+ });
46
+ // TODO: remove math.random from handle
47
+ const { result } = await (0, core_flows_1.createProductCategoriesWorkflow)(container).run({
48
+ input: {
49
+ product_categories: [
50
+ {
51
+ name: data.category_name,
52
+ handle: (0, product_helper_1.toKebabCase)([
53
+ data.category_name,
54
+ data.category_code,
55
+ Math.random().toString(36).substring(2, 15),
56
+ ]),
57
+ is_active: false,
58
+ is_internal: false,
59
+ parent_category_id: category_group_master?.mapping_id,
60
+ metadata: {
61
+ external_id: data.id,
62
+ },
63
+ },
64
+ ],
65
+ additional_data: {
66
+ [data.id]: {
67
+ thumbnail: "",
68
+ images: [],
69
+ is_featured: false,
70
+ is_custom: false,
71
+ },
72
+ },
73
+ },
74
+ });
75
+ const categoryMasterService = container.resolve(category_master_1.CATEGORY_MASTER_MODULE);
76
+ await categoryMasterService.updateCategoryMasters([
77
+ {
78
+ id: data.id,
79
+ mapping_id: result[0].id,
80
+ },
81
+ ]);
82
+ }
83
+ /**
84
+ * Updates an existing category in Medusa if it has a mapping
85
+ */
86
+ async function handleUpdate(container, data) {
87
+ const query = container.resolve(utils_1.ContainerRegistrationKeys.QUERY);
88
+ const { data: [category_master], } = await query.graph({
89
+ entity: "category_master",
90
+ fields: ["id", "mapping_id"],
91
+ filters: { id: data.id },
92
+ });
93
+ const { data: [category_group_master], } = await query.graph({
94
+ entity: "category_group_master",
95
+ fields: ["id", "mapping_id"],
96
+ filters: { grp_no: category_master.grp_group_no },
97
+ });
98
+ if (!category_master?.mapping_id) {
99
+ return;
100
+ }
101
+ await (0, core_flows_1.updateProductCategoriesWorkflow)(container).run({
102
+ input: {
103
+ selector: {
104
+ id: category_master.mapping_id,
105
+ },
106
+ update: {
107
+ name: data.category_name,
108
+ parent_category_id: category_group_master?.mapping_id,
109
+ metadata: {
110
+ external_id: data.id,
111
+ },
112
+ },
113
+ },
114
+ });
115
+ }
116
+ /**
117
+ * Deletes a collection in Medusa if it has a mapping
118
+ */
119
+ async function handleDelete(container, data) {
120
+ if (!data?.mapping_id) {
121
+ return;
122
+ }
123
+ await (0, core_flows_1.deleteProductCategoriesWorkflow)(container).run({
124
+ input: [data.mapping_id],
125
+ });
126
+ }
127
+ exports.config = {
128
+ event: "category_master",
129
+ };
130
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcnktbWFzdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3N1YnNjcmliZXJzL2NhdGVnb3J5LW1hc3Rlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUErQkEsd0NBeUJDO0FBdkRELHFEQUFzRTtBQUN0RSw0REFJcUM7QUFFckMsZ0VBQW9FO0FBRXBFLHdFQUFrRTtBQWtCbEU7O0dBRUc7QUFDWSxLQUFLLFVBQVUscUJBQXFCLENBQUMsRUFDbEQsS0FBSyxFQUFFLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxFQUMxQixTQUFTLEdBQzJCO0lBQ3BDLElBQUksQ0FBQztRQUNILE1BQU0sRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLEdBQUcsU0FBUyxDQUFDO1FBQ3RDLEtBQUssTUFBTSxJQUFJLElBQUksSUFBSSxFQUFFLENBQUM7WUFDeEIsUUFBUSxTQUFTLEVBQUUsQ0FBQztnQkFDbEIsS0FBSyxRQUFRO29CQUNYLE1BQU0sWUFBWSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQztvQkFDcEMsTUFBTTtnQkFDUixLQUFLLFFBQVE7b0JBQ1gsTUFBTSxZQUFZLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDO29CQUNwQyxNQUFNO2dCQUNSLEtBQUssUUFBUTtvQkFDWCxNQUFNLFlBQVksQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLENBQUM7b0JBQ3BDLE1BQU07Z0JBQ1I7b0JBQ0UsTUFBTSxJQUFJLEtBQUssQ0FBQywwQkFBMEIsU0FBUyxFQUFFLENBQUMsQ0FBQztZQUMzRCxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1FBQ2YsT0FBTyxDQUFDLEtBQUssQ0FBQyxtQ0FBbUMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUMxRCxNQUFNLEtBQUssQ0FBQztJQUNkLENBQUM7QUFDSCxDQUFDO0FBRUQ7O0dBRUc7QUFDSCxLQUFLLFVBQVUsWUFB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
@@ -0,0 +1,115 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.config = void 0;
4
+ exports.default = collectionMasterHandler;
5
+ const utils_1 = require("@medusajs/framework/utils");
6
+ const core_flows_1 = require("@medusajs/medusa/core-flows");
7
+ const collection_master_1 = require("../modules/collection-master");
8
+ const product_helper_1 = require("../workflows/helpers/product-helper");
9
+ /**
10
+ * Handles collection master events by syncing them with Medusa collections
11
+ */
12
+ async function collectionMasterHandler({ event: { data: eventData }, container, }) {
13
+ try {
14
+ const { operation, data } = eventData;
15
+ for (const item of data) {
16
+ switch (operation) {
17
+ case "create":
18
+ await handleCreate(container, item);
19
+ break;
20
+ case "update":
21
+ await handleUpdate(container, item);
22
+ break;
23
+ case "delete":
24
+ await handleDelete(container, item);
25
+ break;
26
+ default:
27
+ throw new Error(`Unsupported operation: ${operation}`);
28
+ }
29
+ }
30
+ }
31
+ catch (error) {
32
+ console.error("Error in collection master handler:", error);
33
+ throw error;
34
+ }
35
+ }
36
+ /**
37
+ * Creates a new collection in Medusa and updates the collection master mapping
38
+ */
39
+ async function handleCreate(container, data) {
40
+ const { result } = await (0, core_flows_1.createCollectionsWorkflow)(container).run({
41
+ input: {
42
+ collections: [
43
+ {
44
+ title: data.collection_name,
45
+ handle: (0, product_helper_1.toKebabCase)([data.collection_name]),
46
+ metadata: {
47
+ external_id: data.id,
48
+ },
49
+ },
50
+ ],
51
+ additional_data: {
52
+ [data.id]: {
53
+ thumbnail: "",
54
+ images: [],
55
+ is_featured: false,
56
+ is_active: false,
57
+ is_custom: false,
58
+ smart_collection_type: null,
59
+ smart_collection_price_range: null,
60
+ },
61
+ },
62
+ },
63
+ });
64
+ const collectionMasterService = container.resolve(collection_master_1.COLLECTION_MASTER_MODULE);
65
+ await collectionMasterService.updateCollectionMasters([
66
+ {
67
+ id: data.id,
68
+ mapping_id: result[0].id,
69
+ },
70
+ ]);
71
+ }
72
+ /**
73
+ * Updates an existing collection in Medusa if it has a mapping
74
+ */
75
+ async function handleUpdate(container, data) {
76
+ const query = container.resolve(utils_1.ContainerRegistrationKeys.QUERY);
77
+ const { data: [collection_master], } = await query.graph({
78
+ entity: "collection_master",
79
+ fields: ["id", "mapping_id"],
80
+ filters: { id: data.id },
81
+ });
82
+ if (!collection_master?.mapping_id) {
83
+ return;
84
+ }
85
+ await (0, core_flows_1.updateCollectionsWorkflow)(container).run({
86
+ input: {
87
+ selector: {
88
+ id: collection_master.mapping_id,
89
+ },
90
+ update: {
91
+ title: data.collection_name,
92
+ metadata: {
93
+ external_id: data.id,
94
+ },
95
+ },
96
+ },
97
+ });
98
+ }
99
+ /**
100
+ * Deletes a collection in Medusa if it has a mapping
101
+ */
102
+ async function handleDelete(container, data) {
103
+ if (!data?.mapping_id) {
104
+ return;
105
+ }
106
+ await (0, core_flows_1.deleteCollectionsWorkflow)(container).run({
107
+ input: {
108
+ ids: [data.mapping_id],
109
+ },
110
+ });
111
+ }
112
+ exports.config = {
113
+ event: "collection_master",
114
+ };
115
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbi1tYXN0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvc3Vic2NyaWJlcnMvY29sbGVjdGlvbi1tYXN0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBK0JBLDBDQXlCQztBQXZERCxxREFBc0U7QUFDdEUsNERBSXFDO0FBRXJDLG9FQUF3RTtBQUV4RSx3RUFBa0U7QUFrQmxFOztHQUVHO0FBQ1ksS0FBSyxVQUFVLHVCQUF1QixDQUFDLEVBQ3BELEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsRUFDMUIsU0FBUyxHQUM2QjtJQUN0QyxJQUFJLENBQUM7UUFDSCxNQUFNLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxHQUFHLFNBQVMsQ0FBQztRQUN0QyxLQUFLLE1BQU0sSUFBSSxJQUFJLElBQUksRUFBRSxDQUFDO1lBQ3hCLFFBQVEsU0FBUyxFQUFFLENBQUM7Z0JBQ2xCLEtBQUssUUFBUTtvQkFDWCxNQUFNLFlBQVksQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLENBQUM7b0JBQ3BDLE1BQU07Z0JBQ1IsS0FBSyxRQUFRO29CQUNYLE1BQU0sWUFBWSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQztvQkFDcEMsTUFBTTtnQkFDUixLQUFLLFFBQVE7b0JBQ1gsTUFBTSxZQUFZLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDO29CQUNwQyxNQUFNO2dCQUNSO29CQUNFLE1BQU0sSUFBSSxLQUFLLENBQUMsMEJBQTBCLFNBQVMsRUFBRSxDQUFDLENBQUM7WUFDM0QsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztRQUNmLE9BQU8sQ0FBQyxLQUFLLENBQUMscUNBQXFDLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDNUQsTUFBTSxLQUFLLENBQUM7SUFDZCxDQUFDO0FBQ0gsQ0FBQztBQUVEOztHQUVHO0FBQ0gsS0FBSyxVQUFV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