@infrab4a/connect 3.5.0-beta.3 → 3.6.0-beta.1

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 (87) hide show
  1. package/bundles/infrab4a-connect.umd.js +622 -153
  2. package/bundles/infrab4a-connect.umd.js.map +1 -1
  3. package/domain/catalog/models/category-filter.d.ts +9 -0
  4. package/domain/catalog/models/category.d.ts +3 -2
  5. package/domain/catalog/models/filter-option.d.ts +10 -0
  6. package/domain/catalog/models/filter.d.ts +13 -0
  7. package/domain/catalog/models/index.d.ts +3 -0
  8. package/domain/catalog/models/product.d.ts +1 -0
  9. package/domain/catalog/models/types/index.d.ts +0 -1
  10. package/domain/catalog/repositories/category-filter.repository.d.ts +5 -0
  11. package/domain/catalog/repositories/filter-option.repository.d.ts +4 -0
  12. package/domain/catalog/repositories/filter.repository.d.ts +4 -0
  13. package/domain/catalog/repositories/index.d.ts +3 -0
  14. package/domain/shop-settings/models/index.d.ts +1 -0
  15. package/domain/shop-settings/models/shop-settings.d.ts +9 -0
  16. package/domain/shop-settings/models/types/index.d.ts +5 -0
  17. package/domain/shop-settings/models/types/shop-banner.type.d.ts +12 -0
  18. package/domain/shop-settings/models/types/shop-brands.type.d.ts +10 -0
  19. package/domain/shop-settings/models/types/shop-carousel.type.d.ts +5 -0
  20. package/domain/shop-settings/models/types/shop-collection.type.d.ts +9 -0
  21. package/domain/shop-settings/models/types/shop-section.type.d.ts +9 -0
  22. package/domain/shop-settings/repositories/index.d.ts +1 -0
  23. package/domain/shop-settings/repositories/shop-settings.repository.d.ts +4 -0
  24. package/domain/shopping/models/index.d.ts +4 -5
  25. package/domain/shopping/repositories/index.d.ts +2 -4
  26. package/esm2015/domain/catalog/models/category-filter.js +10 -0
  27. package/esm2015/domain/catalog/models/category.js +8 -1
  28. package/esm2015/domain/catalog/models/filter-option.js +10 -0
  29. package/esm2015/domain/catalog/models/filter.js +10 -0
  30. package/esm2015/domain/catalog/models/index.js +4 -1
  31. package/esm2015/domain/catalog/models/product.js +1 -1
  32. package/esm2015/domain/catalog/models/types/index.js +1 -2
  33. package/esm2015/domain/catalog/repositories/category-filter.repository.js +2 -0
  34. package/esm2015/domain/catalog/repositories/filter-option.repository.js +2 -0
  35. package/esm2015/domain/catalog/repositories/filter.repository.js +2 -0
  36. package/esm2015/domain/catalog/repositories/index.js +4 -1
  37. package/esm2015/domain/shop-settings/models/index.js +2 -1
  38. package/esm2015/domain/shop-settings/models/shop-settings.js +7 -0
  39. package/esm2015/domain/shop-settings/models/types/index.js +6 -1
  40. package/esm2015/domain/shop-settings/models/types/shop-banner.type.js +2 -0
  41. package/esm2015/domain/shop-settings/models/types/shop-brands.type.js +2 -0
  42. package/esm2015/domain/shop-settings/models/types/shop-carousel.type.js +2 -0
  43. package/esm2015/domain/shop-settings/models/types/shop-collection.type.js +2 -0
  44. package/esm2015/domain/shop-settings/models/types/shop-section.type.js +2 -0
  45. package/esm2015/domain/shop-settings/repositories/index.js +2 -1
  46. package/esm2015/domain/shop-settings/repositories/shop-settings.repository.js +2 -0
  47. package/esm2015/domain/shopping/models/index.js +5 -6
  48. package/esm2015/domain/shopping/repositories/index.js +3 -5
  49. package/esm2015/infra/elasticsearch/indexes/products-index.js +3 -2
  50. package/esm2015/infra/firebase/firestore/repositories/shop-settings/index.js +2 -1
  51. package/esm2015/infra/firebase/firestore/repositories/shop-settings/shop-settings-firestore.repository.js +12 -0
  52. package/esm2015/infra/firebase/firestore/repositories/shopping/index.js +4 -6
  53. package/esm2015/infra/hasura-graphql/mixins/helpers/attribute-option.helper.js +2 -2
  54. package/esm2015/infra/hasura-graphql/mixins/with-hasura-graphql.mixin.js +5 -5
  55. package/esm2015/infra/hasura-graphql/repositories/catalog/category-filter-hasura-graphql.repository.js +24 -0
  56. package/esm2015/infra/hasura-graphql/repositories/catalog/category-hasura-graphql.repository.js +84 -4
  57. package/esm2015/infra/hasura-graphql/repositories/catalog/filter-hasura-graphql.repository.js +123 -0
  58. package/esm2015/infra/hasura-graphql/repositories/catalog/filter-option-hasura-graphql.repository.js +21 -0
  59. package/esm2015/infra/hasura-graphql/repositories/catalog/index.js +4 -1
  60. package/esm2015/infra/hasura-graphql/repositories/catalog/product-hasura-graphql.repository.js +2 -1
  61. package/esm2015/infra/hasura-graphql/types/hasura-graphql-fields.type.js +1 -1
  62. package/fesm2015/infrab4a-connect.js +340 -85
  63. package/fesm2015/infrab4a-connect.js.map +1 -1
  64. package/infra/firebase/firestore/repositories/shop-settings/index.d.ts +1 -0
  65. package/infra/firebase/firestore/repositories/shop-settings/shop-settings-firestore.repository.d.ts +8 -0
  66. package/infra/firebase/firestore/repositories/shopping/index.d.ts +3 -5
  67. package/infra/hasura-graphql/repositories/catalog/category-filter-hasura-graphql.repository.d.ts +11 -0
  68. package/infra/hasura-graphql/repositories/catalog/category-hasura-graphql.repository.d.ts +4 -1
  69. package/infra/hasura-graphql/repositories/catalog/filter-hasura-graphql.repository.d.ts +18 -0
  70. package/infra/hasura-graphql/repositories/catalog/filter-option-hasura-graphql.repository.d.ts +10 -0
  71. package/infra/hasura-graphql/repositories/catalog/index.d.ts +3 -0
  72. package/infra/hasura-graphql/types/hasura-graphql-fields.type.d.ts +1 -1
  73. package/package.json +1 -1
  74. package/domain/catalog/models/types/category-filter.type.d.ts +0 -4
  75. package/domain/shopping/models/campaign-dashboard.d.ts +0 -15
  76. package/domain/shopping/models/campaign-hashtag.d.ts +0 -18
  77. package/domain/shopping/repositories/campaign-dashboard.repository.d.ts +0 -4
  78. package/domain/shopping/repositories/campaign-hashtag.repository.d.ts +0 -4
  79. package/esm2015/domain/catalog/models/types/category-filter.type.js +0 -2
  80. package/esm2015/domain/shopping/models/campaign-dashboard.js +0 -7
  81. package/esm2015/domain/shopping/models/campaign-hashtag.js +0 -7
  82. package/esm2015/domain/shopping/repositories/campaign-dashboard.repository.js +0 -2
  83. package/esm2015/domain/shopping/repositories/campaign-hashtag.repository.js +0 -2
  84. package/esm2015/infra/firebase/firestore/repositories/shopping/campaign-dashboard-firestore.repository.js +0 -12
  85. package/esm2015/infra/firebase/firestore/repositories/shopping/campaign-hashtag-firestore.repository.js +0 -12
  86. package/infra/firebase/firestore/repositories/shopping/campaign-dashboard-firestore.repository.d.ts +0 -9
  87. package/infra/firebase/firestore/repositories/shopping/campaign-hashtag-firestore.repository.d.ts +0 -9
@@ -3,7 +3,7 @@ export class AttributeOptionHelper {
3
3
  }
4
4
  AttributeOptionHelper.FindByAttribute = (attributeName, fields) => {
5
5
  if (fields.includes(attributeName))
6
- return { columnName: attributeName.toString(), attributeName };
6
+ return { columnName: attributeName.toString(), attributeName, to: (value) => value, from: (value) => value };
7
7
  const field = fields.find((columnOption) => isObject(columnOption) && Object.keys(columnOption).includes(attributeName.toString()));
8
8
  const fieldOption = field === null || field === void 0 ? void 0 : field[attributeName.toString()];
9
9
  if (isNil(fieldOption))
@@ -28,4 +28,4 @@ AttributeOptionHelper.FindColumnOptionFromList = (columnName, fields) => {
28
28
  return { attributeName: attributeName, fields: fieldOption };
29
29
  return Object.assign({ attributeName: attributeName || columnName, columnName }, fieldOption);
30
30
  };
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXR0cmlidXRlLW9wdGlvbi5oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC9taXhpbnMvaGVscGVycy9hdHRyaWJ1dGUtb3B0aW9uLmhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBUW5ELE1BQU0sT0FBTyxxQkFBcUI7O0FBQ3pCLHFDQUFlLEdBQUcsQ0FJdkIsYUFBd0IsRUFDeEIsTUFBa0MsRUFDTyxFQUFFO0lBQzNDLElBQUksTUFBTSxDQUFDLFFBQVEsQ0FBQyxhQUFvQixDQUFDO1FBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxhQUFhLENBQUMsUUFBUSxFQUFFLEVBQUUsYUFBYSxFQUFFLENBQUE7SUFFekcsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FDdkIsQ0FBQyxZQUFZLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FDekcsQ0FBQTtJQUNELE1BQU0sV0FBVyxHQUFHLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtBQUssQ0FBRyxhQUFhLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQTtJQUVyRCxJQUFJLEtBQUssQ0FBQyxXQUFXLENBQUM7UUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLGFBQWEsQ0FBQyxRQUFRLEVBQUUsRUFBRSxhQUFhLEVBQUUsQ0FBQTtJQUN0RixJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDO1FBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxhQUFhLENBQUMsUUFBUSxFQUFFLEVBQUUsYUFBYSxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsQ0FBQTtJQUVuSCx1QkFBUyxhQUFhLEVBQUUsVUFBVSxFQUFFLGFBQWEsQ0FBQyxRQUFRLEVBQUUsSUFBSyxXQUFXLEVBQUU7QUFDaEYsQ0FBQyxDQUFBO0FBRU0seUNBQW1CLEdBQUcsQ0FDM0IsVUFBNkMsRUFDSSxFQUFFLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUE7QUFFdEUsOENBQXdCLEdBQUcsQ0FDaEMsVUFBa0IsRUFDbEIsTUFBd0MsRUFDbUUsRUFBRTtJQUM3RyxJQUFJLE1BQU0sQ0FBQyxRQUFRLENBQUMsVUFBaUIsQ0FBQztRQUNwQyxPQUFPLEVBQUUsVUFBVSxFQUFFLGFBQWEsRUFBRSxVQUFnRSxFQUFFLENBQUE7SUFFeEcsTUFBTSxLQUFLLEdBQ1QsTUFBTSxDQUFDLElBQUksQ0FDVCxDQUFDLFlBQVksRUFBRSxFQUFFOztRQUNmLE9BQUEsUUFBUSxDQUFDLFlBQVksQ0FBQztZQUN0QixDQUFBLE1BQUEsTUFBTSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQyxJQUFJLENBQzlCLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNLENBQUMsSUFBSSxNQUFNLENBQUMsVUFBVSxLQUFLLFVBQVUsQ0FDbEcsMENBQUUsVUFBVSxNQUFLLFVBQVUsQ0FBQTtLQUFBLENBQy9CLElBQUksRUFBRSxDQUFBO0lBQ1QsTUFBTSxhQUFhLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQzNDLENBQUMsbUJBQW1CLEVBQUUsRUFBRSxDQUN0QixxQkFBcUIsQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUNyRSxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQzVDLENBQUE7SUFDRCxNQUFNLFdBQVcsR0FBRyxLQUFLLGFBQUwsS0FBSyx1QkFBTCxLQUFLLENBQUcsYUFBYSxDQUFDLENBQUE7SUFFMUMsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQztRQUM1QixPQUFPLEVBQUUsYUFBYSxFQUFFLGFBQW1FLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxDQUFBO0lBRXBILHVCQUNFLGFBQWEsRUFBRyxhQUFvRSxJQUFJLFVBQVUsRUFDbEcsVUFBVSxJQUNQLFdBQVcsRUFDZjtBQUNILENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1vZGVsQmFzZVN0cnVjdHVyZSwgTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lcyB9IGZyb20gJy4uLy4uLy4uLy4uL2RvbWFpbidcclxuaW1wb3J0IHsgaXNOaWwsIGlzT2JqZWN0IH0gZnJvbSAnLi4vLi4vLi4vLi4vdXRpbHMnXHJcbmltcG9ydCB7IENvbHVtbk9wdGlvbnMsIEhhc3VyYUdyYXBoUUxGaWVsZHMgfSBmcm9tICcuLi8uLi90eXBlcydcclxuXHJcbnR5cGUgRmluZEJ5QXR0cmlidXRlUmVzdWx0PFxyXG4gIE1CYXNlIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlPE1CYXNlPixcclxuICBBdHRyaWJ1dGUgZXh0ZW5kcyBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPE1CYXNlPixcclxuPiA9IENvbHVtbk9wdGlvbnM8TUJhc2VbQXR0cmlidXRlXSwgTUJhc2U+ICYgeyBhdHRyaWJ1dGVOYW1lOiBBdHRyaWJ1dGUgfVxyXG5cclxuZXhwb3J0IGNsYXNzIEF0dHJpYnV0ZU9wdGlvbkhlbHBlciB7XHJcbiAgc3RhdGljIEZpbmRCeUF0dHJpYnV0ZSA9IDxcclxuICAgIE1CYXNlIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlLFxyXG4gICAgQXR0cmlidXRlIGV4dGVuZHMgTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lczxNQmFzZT4gPSBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPE1CYXNlPixcclxuICA+KFxyXG4gICAgYXR0cmlidXRlTmFtZTogQXR0cmlidXRlLFxyXG4gICAgZmllbGRzOiBIYXN1cmFHcmFwaFFMRmllbGRzPE1CYXNlPixcclxuICApOiBGaW5kQnlBdHRyaWJ1dGVSZXN1bHQ8TUJhc2UsIEF0dHJpYnV0ZT4gPT4ge1xyXG4gICAgaWYgKGZpZWxkcy5pbmNsdWRlcyhhdHRyaWJ1dGVOYW1lIGFzIGFueSkpIHJldHVybiB7IGNvbHVtbk5hbWU6IGF0dHJpYnV0ZU5hbWUudG9TdHJpbmcoKSwgYXR0cmlidXRlTmFtZSB9XHJcblxyXG4gICAgY29uc3QgZmllbGQgPSBmaWVsZHMuZmluZChcclxuICAgICAgKGNvbHVtbk9wdGlvbikgPT4gaXNPYmplY3QoY29sdW1uT3B0aW9uKSAmJiBPYmplY3Qua2V5cyhjb2x1bW5PcHRpb24pLmluY2x1ZGVzKGF0dHJpYnV0ZU5hbWUudG9TdHJpbmcoKSksXHJcbiAgICApXHJcbiAgICBjb25zdCBmaWVsZE9wdGlvbiA9IGZpZWxkPy5bYXR0cmlidXRlTmFtZS50b1N0cmluZygpXVxyXG5cclxuICAgIGlmIChpc05pbChmaWVsZE9wdGlvbikpIHJldHVybiB7IGNvbHVtbk5hbWU6IGF0dHJpYnV0ZU5hbWUudG9TdHJpbmcoKSwgYXR0cmlidXRlTmFtZSB9XHJcbiAgICBpZiAoQXJyYXkuaXNBcnJheShmaWVsZE9wdGlvbikpIHJldHVybiB7IGNvbHVtbk5hbWU6IGF0dHJpYnV0ZU5hbWUudG9TdHJpbmcoKSwgYXR0cmlidXRlTmFtZSwgZmllbGRzOiBmaWVsZE9wdGlvbiB9XHJcblxyXG4gICAgcmV0dXJuIHsgYXR0cmlidXRlTmFtZSwgY29sdW1uTmFtZTogYXR0cmlidXRlTmFtZS50b1N0cmluZygpLCAuLi5maWVsZE9wdGlvbiB9XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgQ2hlY2tJc0NvbHVtbk9wdGlvbiA9IDxNb2RlbCBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZSwgUGFyZW50TW9kZWwgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmU+KFxyXG4gICAgZmllbGRWYWx1ZTogQ29sdW1uT3B0aW9uczxNb2RlbCwgUGFyZW50TW9kZWw+LFxyXG4gICk6IGZpZWxkVmFsdWUgaXMgQ29sdW1uT3B0aW9uczxNb2RlbCwgUGFyZW50TW9kZWw+ID0+ICEhZmllbGRWYWx1ZS5jb2x1bW5OYW1lXHJcblxyXG4gIHN0YXRpYyBGaW5kQ29sdW1uT3B0aW9uRnJvbUxpc3QgPSA8TW9kZWwgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmUsIFBhcmVudE1vZGVsIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlPihcclxuICAgIGNvbHVtbk5hbWU6IHN0cmluZyxcclxuICAgIGZpZWxkczogSGFzdXJhR3JhcGhRTEZpZWxkczxQYXJlbnRNb2RlbD4sXHJcbiAgKTogQ29sdW1uT3B0aW9uczxNb2RlbCwgUGFyZW50TW9kZWw+ICYgeyBhdHRyaWJ1dGVOYW1lOiBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPFBhcmVudE1vZGVsPiB9ID0+IHtcclxuICAgIGlmIChmaWVsZHMuaW5jbHVkZXMoY29sdW1uTmFtZSBhcyBhbnkpKVxyXG4gICAgICByZXR1cm4geyBjb2x1bW5OYW1lLCBhdHRyaWJ1dGVOYW1lOiBjb2x1bW5OYW1lIGFzIE5vbkZ1bmN0aW9uQW5kSWRlbnRpZmllclByb3BlcnR5TmFtZXM8UGFyZW50TW9kZWw+IH1cclxuXHJcbiAgICBjb25zdCBmaWVsZCA9XHJcbiAgICAgIGZpZWxkcy5maW5kKFxyXG4gICAgICAgIChjb2x1bW5PcHRpb24pID0+XHJcbiAgICAgICAgICBpc09iamVjdChjb2x1bW5PcHRpb24pICYmXHJcbiAgICAgICAgICBPYmplY3QudmFsdWVzKGNvbHVtbk9wdGlvbikuZmluZChcclxuICAgICAgICAgICAgKG9wdGlvbikgPT4gQXR0cmlidXRlT3B0aW9uSGVscGVyLkNoZWNrSXNDb2x1bW5PcHRpb24ob3B0aW9uKSAmJiBvcHRpb24uY29sdW1uTmFtZSA9PT0gY29sdW1uTmFtZSxcclxuICAgICAgICAgICk/LmNvbHVtbk5hbWUgPT09IGNvbHVtbk5hbWUsXHJcbiAgICAgICkgfHwge31cclxuICAgIGNvbnN0IGF0dHJpYnV0ZU5hbWUgPSBPYmplY3Qua2V5cyhmaWVsZCkuZmluZChcclxuICAgICAgKGZpZWxkT3B0aW9uRnJvbUxpc3QpID0+XHJcbiAgICAgICAgQXR0cmlidXRlT3B0aW9uSGVscGVyLkNoZWNrSXNDb2x1bW5PcHRpb24oZmllbGRbZmllbGRPcHRpb25Gcm9tTGlzdF0pIHx8XHJcbiAgICAgICAgQXJyYXkuaXNBcnJheShmaWVsZFtmaWVsZE9wdGlvbkZyb21MaXN0XSksXHJcbiAgICApXHJcbiAgICBjb25zdCBmaWVsZE9wdGlvbiA9IGZpZWxkPy5bYXR0cmlidXRlTmFtZV1cclxuXHJcbiAgICBpZiAoQXJyYXkuaXNBcnJheShmaWVsZE9wdGlvbikpXHJcbiAgICAgIHJldHVybiB7IGF0dHJpYnV0ZU5hbWU6IGF0dHJpYnV0ZU5hbWUgYXMgTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lczxQYXJlbnRNb2RlbD4sIGZpZWxkczogZmllbGRPcHRpb24gfVxyXG5cclxuICAgIHJldHVybiB7XHJcbiAgICAgIGF0dHJpYnV0ZU5hbWU6IChhdHRyaWJ1dGVOYW1lIGFzIE5vbkZ1bmN0aW9uQW5kSWRlbnRpZmllclByb3BlcnR5TmFtZXM8UGFyZW50TW9kZWw+KSB8fCBjb2x1bW5OYW1lLFxyXG4gICAgICBjb2x1bW5OYW1lLFxyXG4gICAgICAuLi5maWVsZE9wdGlvbixcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXR0cmlidXRlLW9wdGlvbi5oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC9taXhpbnMvaGVscGVycy9hdHRyaWJ1dGUtb3B0aW9uLmhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBUW5ELE1BQU0sT0FBTyxxQkFBcUI7O0FBQ3pCLHFDQUFlLEdBQUcsQ0FJdkIsYUFBd0IsRUFDeEIsTUFBa0MsRUFDTyxFQUFFO0lBQzNDLElBQUksTUFBTSxDQUFDLFFBQVEsQ0FBQyxhQUFvQixDQUFDO1FBQ3ZDLE9BQU8sRUFBRSxVQUFVLEVBQUUsYUFBYSxDQUFDLFFBQVEsRUFBRSxFQUFFLGFBQWEsRUFBRSxFQUFFLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssRUFBRSxDQUFBO0lBRTlHLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQ3ZCLENBQUMsWUFBWSxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQ3pHLENBQUE7SUFDRCxNQUFNLFdBQVcsR0FBRyxLQUFLLGFBQUwsS0FBSyx1QkFBTCxLQUFLLENBQUcsYUFBYSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUE7SUFFckQsSUFBSSxLQUFLLENBQUMsV0FBVyxDQUFDO1FBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxhQUFhLENBQUMsUUFBUSxFQUFFLEVBQUUsYUFBYSxFQUFFLENBQUE7SUFDdEYsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQztRQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsYUFBYSxDQUFDLFFBQVEsRUFBRSxFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLENBQUE7SUFFbkgsdUJBQVMsYUFBYSxFQUFFLFVBQVUsRUFBRSxhQUFhLENBQUMsUUFBUSxFQUFFLElBQUssV0FBVyxFQUFFO0FBQ2hGLENBQUMsQ0FBQTtBQUVNLHlDQUFtQixHQUFHLENBQzNCLFVBQTZDLEVBQ0ksRUFBRSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFBO0FBRXRFLDhDQUF3QixHQUFHLENBQ2hDLFVBQWtCLEVBQ2xCLE1BQXdDLEVBQ21FLEVBQUU7SUFDN0csSUFBSSxNQUFNLENBQUMsUUFBUSxDQUFDLFVBQWlCLENBQUM7UUFDcEMsT0FBTyxFQUFFLFVBQVUsRUFBRSxhQUFhLEVBQUUsVUFBZ0UsRUFBRSxDQUFBO0lBRXhHLE1BQU0sS0FBSyxHQUNULE1BQU0sQ0FBQyxJQUFJLENBQ1QsQ0FBQyxZQUFZLEVBQUUsRUFBRTs7UUFDZixPQUFBLFFBQVEsQ0FBQyxZQUFZLENBQUM7WUFDdEIsQ0FBQSxNQUFBLE1BQU0sQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUMsSUFBSSxDQUM5QixDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMscUJBQXFCLENBQUMsbUJBQW1CLENBQUMsTUFBTSxDQUFDLElBQUksTUFBTSxDQUFDLFVBQVUsS0FBSyxVQUFVLENBQ2xHLDBDQUFFLFVBQVUsTUFBSyxVQUFVLENBQUE7S0FBQSxDQUMvQixJQUFJLEVBQUUsQ0FBQTtJQUNULE1BQU0sYUFBYSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxDQUMzQyxDQUFDLG1CQUFtQixFQUFFLEVBQUUsQ0FDdEIscUJBQXFCLENBQUMsbUJBQW1CLENBQUMsS0FBSyxDQUFDLG1CQUFtQixDQUFDLENBQUM7UUFDckUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUM1QyxDQUFBO0lBQ0QsTUFBTSxXQUFXLEdBQUcsS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFHLGFBQWEsQ0FBQyxDQUFBO0lBRTFDLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUM7UUFDNUIsT0FBTyxFQUFFLGFBQWEsRUFBRSxhQUFtRSxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsQ0FBQTtJQUVwSCx1QkFDRSxhQUFhLEVBQUcsYUFBb0UsSUFBSSxVQUFVLEVBQ2xHLFVBQVUsSUFDUCxXQUFXLEVBQ2Y7QUFDSCxDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNb2RlbEJhc2VTdHJ1Y3R1cmUsIE5vbkZ1bmN0aW9uQW5kSWRlbnRpZmllclByb3BlcnR5TmFtZXMgfSBmcm9tICcuLi8uLi8uLi8uLi9kb21haW4nXHJcbmltcG9ydCB7IGlzTmlsLCBpc09iamVjdCB9IGZyb20gJy4uLy4uLy4uLy4uL3V0aWxzJ1xyXG5pbXBvcnQgeyBDb2x1bW5PcHRpb25zLCBIYXN1cmFHcmFwaFFMRmllbGRzIH0gZnJvbSAnLi4vLi4vdHlwZXMnXHJcblxyXG50eXBlIEZpbmRCeUF0dHJpYnV0ZVJlc3VsdDxcclxuICBNQmFzZSBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZTxNQmFzZT4sXHJcbiAgQXR0cmlidXRlIGV4dGVuZHMgTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lczxNQmFzZT4sXHJcbj4gPSBDb2x1bW5PcHRpb25zPE1CYXNlW0F0dHJpYnV0ZV0sIE1CYXNlPiAmIHsgYXR0cmlidXRlTmFtZTogQXR0cmlidXRlIH1cclxuXHJcbmV4cG9ydCBjbGFzcyBBdHRyaWJ1dGVPcHRpb25IZWxwZXIge1xyXG4gIHN0YXRpYyBGaW5kQnlBdHRyaWJ1dGUgPSA8XHJcbiAgICBNQmFzZSBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZSxcclxuICAgIEF0dHJpYnV0ZSBleHRlbmRzIE5vbkZ1bmN0aW9uQW5kSWRlbnRpZmllclByb3BlcnR5TmFtZXM8TUJhc2U+ID0gTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lczxNQmFzZT4sXHJcbiAgPihcclxuICAgIGF0dHJpYnV0ZU5hbWU6IEF0dHJpYnV0ZSxcclxuICAgIGZpZWxkczogSGFzdXJhR3JhcGhRTEZpZWxkczxNQmFzZT4sXHJcbiAgKTogRmluZEJ5QXR0cmlidXRlUmVzdWx0PE1CYXNlLCBBdHRyaWJ1dGU+ID0+IHtcclxuICAgIGlmIChmaWVsZHMuaW5jbHVkZXMoYXR0cmlidXRlTmFtZSBhcyBhbnkpKVxyXG4gICAgICByZXR1cm4geyBjb2x1bW5OYW1lOiBhdHRyaWJ1dGVOYW1lLnRvU3RyaW5nKCksIGF0dHJpYnV0ZU5hbWUsIHRvOiAodmFsdWUpID0+IHZhbHVlLCBmcm9tOiAodmFsdWUpID0+IHZhbHVlIH1cclxuXHJcbiAgICBjb25zdCBmaWVsZCA9IGZpZWxkcy5maW5kKFxyXG4gICAgICAoY29sdW1uT3B0aW9uKSA9PiBpc09iamVjdChjb2x1bW5PcHRpb24pICYmIE9iamVjdC5rZXlzKGNvbHVtbk9wdGlvbikuaW5jbHVkZXMoYXR0cmlidXRlTmFtZS50b1N0cmluZygpKSxcclxuICAgIClcclxuICAgIGNvbnN0IGZpZWxkT3B0aW9uID0gZmllbGQ/LlthdHRyaWJ1dGVOYW1lLnRvU3RyaW5nKCldXHJcblxyXG4gICAgaWYgKGlzTmlsKGZpZWxkT3B0aW9uKSkgcmV0dXJuIHsgY29sdW1uTmFtZTogYXR0cmlidXRlTmFtZS50b1N0cmluZygpLCBhdHRyaWJ1dGVOYW1lIH1cclxuICAgIGlmIChBcnJheS5pc0FycmF5KGZpZWxkT3B0aW9uKSkgcmV0dXJuIHsgY29sdW1uTmFtZTogYXR0cmlidXRlTmFtZS50b1N0cmluZygpLCBhdHRyaWJ1dGVOYW1lLCBmaWVsZHM6IGZpZWxkT3B0aW9uIH1cclxuXHJcbiAgICByZXR1cm4geyBhdHRyaWJ1dGVOYW1lLCBjb2x1bW5OYW1lOiBhdHRyaWJ1dGVOYW1lLnRvU3RyaW5nKCksIC4uLmZpZWxkT3B0aW9uIH1cclxuICB9XHJcblxyXG4gIHN0YXRpYyBDaGVja0lzQ29sdW1uT3B0aW9uID0gPE1vZGVsIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlLCBQYXJlbnRNb2RlbCBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZT4oXHJcbiAgICBmaWVsZFZhbHVlOiBDb2x1bW5PcHRpb25zPE1vZGVsLCBQYXJlbnRNb2RlbD4sXHJcbiAgKTogZmllbGRWYWx1ZSBpcyBDb2x1bW5PcHRpb25zPE1vZGVsLCBQYXJlbnRNb2RlbD4gPT4gISFmaWVsZFZhbHVlLmNvbHVtbk5hbWVcclxuXHJcbiAgc3RhdGljIEZpbmRDb2x1bW5PcHRpb25Gcm9tTGlzdCA9IDxNb2RlbCBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZSwgUGFyZW50TW9kZWwgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmU+KFxyXG4gICAgY29sdW1uTmFtZTogc3RyaW5nLFxyXG4gICAgZmllbGRzOiBIYXN1cmFHcmFwaFFMRmllbGRzPFBhcmVudE1vZGVsPixcclxuICApOiBDb2x1bW5PcHRpb25zPE1vZGVsLCBQYXJlbnRNb2RlbD4gJiB7IGF0dHJpYnV0ZU5hbWU6IE5vbkZ1bmN0aW9uQW5kSWRlbnRpZmllclByb3BlcnR5TmFtZXM8UGFyZW50TW9kZWw+IH0gPT4ge1xyXG4gICAgaWYgKGZpZWxkcy5pbmNsdWRlcyhjb2x1bW5OYW1lIGFzIGFueSkpXHJcbiAgICAgIHJldHVybiB7IGNvbHVtbk5hbWUsIGF0dHJpYnV0ZU5hbWU6IGNvbHVtbk5hbWUgYXMgTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lczxQYXJlbnRNb2RlbD4gfVxyXG5cclxuICAgIGNvbnN0IGZpZWxkID1cclxuICAgICAgZmllbGRzLmZpbmQoXHJcbiAgICAgICAgKGNvbHVtbk9wdGlvbikgPT5cclxuICAgICAgICAgIGlzT2JqZWN0KGNvbHVtbk9wdGlvbikgJiZcclxuICAgICAgICAgIE9iamVjdC52YWx1ZXMoY29sdW1uT3B0aW9uKS5maW5kKFxyXG4gICAgICAgICAgICAob3B0aW9uKSA9PiBBdHRyaWJ1dGVPcHRpb25IZWxwZXIuQ2hlY2tJc0NvbHVtbk9wdGlvbihvcHRpb24pICYmIG9wdGlvbi5jb2x1bW5OYW1lID09PSBjb2x1bW5OYW1lLFxyXG4gICAgICAgICAgKT8uY29sdW1uTmFtZSA9PT0gY29sdW1uTmFtZSxcclxuICAgICAgKSB8fCB7fVxyXG4gICAgY29uc3QgYXR0cmlidXRlTmFtZSA9IE9iamVjdC5rZXlzKGZpZWxkKS5maW5kKFxyXG4gICAgICAoZmllbGRPcHRpb25Gcm9tTGlzdCkgPT5cclxuICAgICAgICBBdHRyaWJ1dGVPcHRpb25IZWxwZXIuQ2hlY2tJc0NvbHVtbk9wdGlvbihmaWVsZFtmaWVsZE9wdGlvbkZyb21MaXN0XSkgfHxcclxuICAgICAgICBBcnJheS5pc0FycmF5KGZpZWxkW2ZpZWxkT3B0aW9uRnJvbUxpc3RdKSxcclxuICAgIClcclxuICAgIGNvbnN0IGZpZWxkT3B0aW9uID0gZmllbGQ/LlthdHRyaWJ1dGVOYW1lXVxyXG5cclxuICAgIGlmIChBcnJheS5pc0FycmF5KGZpZWxkT3B0aW9uKSlcclxuICAgICAgcmV0dXJuIHsgYXR0cmlidXRlTmFtZTogYXR0cmlidXRlTmFtZSBhcyBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPFBhcmVudE1vZGVsPiwgZmllbGRzOiBmaWVsZE9wdGlvbiB9XHJcblxyXG4gICAgcmV0dXJuIHtcclxuICAgICAgYXR0cmlidXRlTmFtZTogKGF0dHJpYnV0ZU5hbWUgYXMgTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lczxQYXJlbnRNb2RlbD4pIHx8IGNvbHVtbk5hbWUsXHJcbiAgICAgIGNvbHVtbk5hbWUsXHJcbiAgICAgIC4uLmZpZWxkT3B0aW9uLFxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,6 +1,6 @@
1
1
  import { __awaiter } from "tslib";
2
+ import axios from 'axios';
2
3
  import { mutation, query } from 'gql-query-builder';
3
- import fetch from 'node-fetch';
4
4
  import { isBoolean, isInteger, isNaN, isNil, isNumber, isString, isUUID, parseISO, } from '../../../utils';
5
5
  import { GraphQLFieldHelper } from './helpers';
6
6
  export const withHasuraGraphQL = (MixinBase) => {
@@ -48,12 +48,12 @@ export const withHasuraGraphQL = (MixinBase) => {
48
48
  fetch(params) {
49
49
  return __awaiter(this, void 0, void 0, function* () {
50
50
  const headers = this.headers;
51
- const response = yield fetch(`${this.endpoint}`, {
51
+ const { data: result } = yield axios({
52
+ url: `${this.endpoint}`,
52
53
  method: 'POST',
53
- body: JSON.stringify(params),
54
+ data: params,
54
55
  headers,
55
56
  });
56
- const result = yield response.json();
57
57
  if (!isNil(result.errors))
58
58
  throw new Error(JSON.stringify(result.errors));
59
59
  return result.data;
@@ -91,4 +91,4 @@ export const withHasuraGraphQL = (MixinBase) => {
91
91
  }
92
92
  };
93
93
  };
94
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1oYXN1cmEtZ3JhcGhxbC5taXhpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL2luZnJhL2hhc3VyYS1ncmFwaHFsL21peGlucy93aXRoLWhhc3VyYS1ncmFwaHFsLm1peGluLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBQ25ELE9BQU8sS0FBSyxNQUFNLFlBQVksQ0FBQTtBQUc5QixPQUFPLEVBQ0wsU0FBUyxFQUNULFNBQVMsRUFDVCxLQUFLLEVBQ0wsS0FBSyxFQUNMLFFBQVEsRUFDUixRQUFRLEVBQ1IsTUFBTSxFQUdOLFFBQVEsR0FDVCxNQUFNLGdCQUFnQixDQUFBO0FBVXZCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLFdBQVcsQ0FBQTtBQVU5QyxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxDQUMvQixTQUFZLEVBQ3FHLEVBQUU7SUFDbkgsT0FBTyxNQUFNLGtCQUFtQixTQUFRLFNBQVM7UUFrQi9DLFlBQVksR0FBRyxNQUFNO1lBQ25CLE1BQU0sT0FBTyxHQUE2QixNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUE7WUFFbkQsS0FBSyxDQUFDLEdBQUcsTUFBTSxDQUFDLENBQUE7WUFFaEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFBO1lBQ2xDLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDLFFBQVEsQ0FBQTtZQUNoQyxJQUFJLENBQUMsV0FBVyxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUE7WUFDdEMsSUFBSSxDQUFDLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFBO1lBQzFCLElBQUksQ0FBQyxNQUFNLEdBQUcsT0FBTyxDQUFDLE1BQU0sSUFBSyxJQUFJLENBQUMsS0FBSyxDQUFDLGlCQUFnRCxDQUFBO1FBQzlG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bXV0YXRpb24sIHF1ZXJ5IH0gZnJvbSAnZ3FsLXF1ZXJ5LWJ1aWxkZXInXHJcbmltcG9ydCBmZXRjaCBmcm9tICdub2RlLWZldGNoJ1xyXG5cclxuaW1wb3J0IHsgQmFzZU1vZGVsQnVpbGRlciwgTW9kZWxCYXNlU3RydWN0dXJlIH0gZnJvbSAnLi4vLi4vLi4vZG9tYWluJ1xyXG5pbXBvcnQge1xyXG4gIGlzQm9vbGVhbixcclxuICBpc0ludGVnZXIsXHJcbiAgaXNOYU4sXHJcbiAgaXNOaWwsXHJcbiAgaXNOdW1iZXIsXHJcbiAgaXNTdHJpbmcsXHJcbiAgaXNVVUlELFxyXG4gIE1lcmdlQ29uc3RydWN0b3JQYXJhbXMsXHJcbiAgTWl4aW5DdG9yLFxyXG4gIHBhcnNlSVNPLFxyXG59IGZyb20gJy4uLy4uLy4uL3V0aWxzJ1xyXG5pbXBvcnQge1xyXG4gIEdyYXBoUUxQYXJhbXMsXHJcbiAgR3JhcGhRTFJlcG9zaXRvcnksXHJcbiAgSGFzdXJhR3JhcGhRTEF1dGhPcHRpb25zLFxyXG4gIEhhc3VyYUdyYXBoUUxGaWVsZHMsXHJcbiAgSGFzdXJhR3JhcGhRTEhlYWRlcnMsXHJcbiAgVmFyaWFibGVPcHRpb25zLFxyXG59IGZyb20gJy4uL3R5cGVzJ1xyXG5cclxuaW1wb3J0IHsgR3JhcGhRTEZpZWxkSGVscGVyIH0gZnJvbSAnLi9oZWxwZXJzJ1xyXG5cclxuZXhwb3J0IHR5cGUgQ29uc3RydWN0b3JQYXJhbXM8TW9kZWwgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmU+ID0ge1xyXG4gIHRhYmxlTmFtZTogc3RyaW5nXHJcbiAgbW9kZWw6IEJhc2VNb2RlbEJ1aWxkZXI8TW9kZWw+XHJcbiAgZmllbGRzOiBIYXN1cmFHcmFwaFFMRmllbGRzPE1vZGVsPlxyXG4gIGVuZHBvaW50OiBzdHJpbmdcclxuICBhdXRoT3B0aW9uczogSGFzdXJhR3JhcGhRTEF1dGhPcHRpb25zXHJcbn1cclxuXHJcbmV4cG9ydCBjb25zdCB3aXRoSGFzdXJhR3JhcGhRTCA9IDxNQmFzZSBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZSwgVCBleHRlbmRzIE1peGluQ3RvciA9IE1peGluQ3Rvcj4oXHJcbiAgTWl4aW5CYXNlOiBULFxyXG4pOiBNaXhpbkN0b3I8R3JhcGhRTFJlcG9zaXRvcnk8TUJhc2U+LCBNZXJnZUNvbnN0cnVjdG9yUGFyYW1zPENvbnN0cnVjdG9yUGFyYW1zPE1CYXNlPiwgQ29uc3RydWN0b3JQYXJhbWV0ZXJzPFQ+Pj4gPT4ge1xyXG4gIHJldHVybiBjbGFzcyBIYXN1cmFHcmFwaFFMTWl4aW4gZXh0ZW5kcyBNaXhpbkJhc2UgaW1wbGVtZW50cyBHcmFwaFFMUmVwb3NpdG9yeTxNQmFzZT4ge1xyXG4gICAgdGFibGVOYW1lOiBzdHJpbmdcclxuICAgIGVuZHBvaW50OiBzdHJpbmdcclxuICAgIGF1dGhPcHRpb25zOiBIYXN1cmFHcmFwaFFMQXV0aE9wdGlvbnNcclxuICAgIG1vZGVsOiBCYXNlTW9kZWxCdWlsZGVyPE1CYXNlPlxyXG4gICAgZmllbGRzOiBIYXN1cmFHcmFwaFFMRmllbGRzPE1CYXNlPlxyXG5cclxuICAgIGdldCBoZWFkZXJzKCk6IEhhc3VyYUdyYXBoUUxIZWFkZXJzIHtcclxuICAgICAgcmV0dXJuIHtcclxuICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxyXG4gICAgICAgIC4uLihpc05pbCh0aGlzLmF1dGhPcHRpb25zLmF1dGhUb2tlbikgPyB7fSA6IHsgQXV0aG9yaXphdGlvbjogdGhpcy5hdXRoT3B0aW9ucy5hdXRoVG9rZW4gfSksXHJcbiAgICAgICAgLi4uKGlzTmlsKHRoaXMuYXV0aE9wdGlvbnMuYWRtaW5TZWNyZXQpID8ge30gOiB7ICdYLUhhc3VyYS1BZG1pbi1TZWNyZXQnOiB0aGlzLmF1dGhPcHRpb25zLmFkbWluU2VjcmV0IH0pLFxyXG4gICAgICAgIC4uLihpc05pbCh0aGlzLmF1dGhPcHRpb25zLmF1dGhSb2xlKVxyXG4gICAgICAgICAgPyB7fVxyXG4gICAgICAgICAgOiB7ICdYLUhhc3VyYS1Sb2xlJzogdGhpcy5hdXRoT3B0aW9ucy5hdXRoUm9sZS5yb2xlLCAnWC1IYXN1cmEtVXNlci1JZCc6IHRoaXMuYXV0aE9wdGlvbnMuYXV0aFJvbGUudXNlcklkIH0pLFxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3RydWN0b3IoLi4ucGFyYW1zKSB7XHJcbiAgICAgIGNvbnN0IG9wdGlvbnM6IENvbnN0cnVjdG9yUGFyYW1zPE1CYXNlPiA9IHBhcmFtc1swXVxyXG5cclxuICAgICAgc3VwZXIoLi4ucGFyYW1zKVxyXG5cclxuICAgICAgdGhpcy50YWJsZU5hbWUgPSBvcHRpb25zLnRhYmxlTmFtZVxyXG4gICAgICB0aGlzLmVuZHBvaW50ID0gb3B0aW9ucy5lbmRwb2ludFxyXG4gICAgICB0aGlzLmF1dGhPcHRpb25zID0gb3B0aW9ucy5hdXRoT3B0aW9uc1xyXG4gICAgICB0aGlzLm1vZGVsID0gb3B0aW9ucy5tb2RlbFxyXG4gICAgICB0aGlzLmZpZWxkcyA9IG9wdGlvbnMuZmllbGRzIHx8ICh0aGlzLm1vZGVsLmlkZW50aWZpZXJzRmllbGRzIGFzIEhhc3VyYUdyYXBoUUxGaWVsZHM8TUJhc2U+KVxyXG4gICAgfVxyXG5cclxuICAgIGFzeW5jIG11dGF0aW9uPFJldHVybkZpZWxkcyA9IGFueT4oXHJcbiAgICAgIG9wZXJhdGlvbjogc3RyaW5nLFxyXG4gICAgICBmaWVsZHM/OiBIYXN1cmFHcmFwaFFMRmllbGRzPE1CYXNlPixcclxuICAgICAgdmFyaWFibGVzPzogVmFyaWFibGVPcHRpb25zLFxyXG4gICAgKTogUHJvbWlzZTxSZXR1cm5GaWVsZHM+IHtcclxuICAgICAgY29uc3QgcmVzdWx0UXVlcnkgPSBtdXRhdGlvbih7XHJcbiAgICAgICAgb3BlcmF0aW9uLFxyXG4gICAgICAgIHZhcmlhYmxlcyxcclxuICAgICAgICBmaWVsZHM6IEdyYXBoUUxGaWVsZEhlbHBlci5Db252ZXJ0TW9kZWxGaWVsZHNUb0dyYXBoUUxGaWVsZHMoZmllbGRzKSxcclxuICAgICAgfSlcclxuXHJcbiAgICAgIHJldHVybiB0aGlzLmZldGNoKHJlc3VsdFF1ZXJ5KVxyXG4gICAgfVxyXG5cclxuICAgIGFzeW5jIHF1ZXJ5PFJldHVybkZpZWxkcyA9IGFueT4oXHJcbiAgICAgIG9wZXJhdGlvbjogc3RyaW5nIHwgR3JhcGhRTFBhcmFtczxNQmFzZT5bXSxcclxuICAgICAgZmllbGRzPzogSGFzdXJhR3JhcGhRTEZpZWxkczxNQmFzZT4sXHJcbiAgICAgIHZhcmlhYmxlcz86IFZhcmlhYmxlT3B0aW9ucyxcclxuICAgICk6IFByb21pc2U8UmV0dXJuRmllbGRzPiB7XHJcbiAgICAgIGNvbnN0IHJlc3VsdFF1ZXJ5ID0gR3JhcGhRTEZpZWxkSGVscGVyLkNoZWNrSXNHcmFwaFFMUGFyYW1zKG9wZXJhdGlvbilcclxuICAgICAgICA/IHF1ZXJ5KFxyXG4gICAgICAgICAgICBvcGVyYXRpb24ubWFwKChvcHRpb24pID0+ICh7XHJcbiAgICAgICAgICAgICAgb3BlcmF0aW9uOiBvcHRpb24ub3BlcmF0aW9uLFxyXG4gICAgICAgICAgICAgIHZhcmlhYmxlczogb3B0aW9uLnZhcmlhYmxlcyxcclxuICAgICAgICAgICAgICBmaWVsZHM6IEdyYXBoUUxGaWVsZEhlbHBlci5Db252ZXJ0TW9kZWxGaWVsZHNUb0dyYXBoUUxGaWVsZHMob3B0aW9uLmZpZWxkcyksXHJcbiAgICAgICAgICAgIH0pKSxcclxuICAgICAgICAgIClcclxuICAgICAgICA6IHF1ZXJ5KHtcclxuICAgICAgICAgICAgb3BlcmF0aW9uLFxyXG4gICAgICAgICAgICB2YXJpYWJsZXMsXHJcbiAgICAgICAgICAgIGZpZWxkczogR3JhcGhRTEZpZWxkSGVscGVyLkNvbnZlcnRNb2RlbEZpZWxkc1RvR3JhcGhRTEZpZWxkcyhmaWVsZHMpLFxyXG4gICAgICAgICAgfSlcclxuXHJcbiAgICAgIHJldHVybiB0aGlzLmZldGNoKHJlc3VsdFF1ZXJ5KVxyXG4gICAgfVxyXG5cclxuICAgIGFzeW5jIGZldGNoPFJldHVybkZpZWxkcyA9IGFueT4ocGFyYW1zOiB7IHZhcmlhYmxlczogYW55OyBxdWVyeTogc3RyaW5nIH0pOiBQcm9taXNlPFJldHVybkZpZWxkcz4ge1xyXG4gICAgICBjb25zdCBoZWFkZXJzID0gdGhpcy5oZWFkZXJzXHJcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2goYCR7dGhpcy5lbmRwb2ludH1gLCB7XHJcbiAgICAgICAgbWV0aG9kOiAnUE9TVCcsXHJcbiAgICAgICAgYm9keTogSlNPTi5zdHJpbmdpZnkocGFyYW1zKSxcclxuICAgICAgICBoZWFkZXJzLFxyXG4gICAgICB9KVxyXG4gICAgICBjb25zdCByZXN1bHQ6IGFueSA9IGF3YWl0IHJlc3BvbnNlLmpzb24oKVxyXG5cclxuICAgICAgaWYgKCFpc05pbChyZXN1bHQuZXJyb3JzKSkgdGhyb3cgbmV3IEVycm9yKEpTT04uc3RyaW5naWZ5KHJlc3VsdC5lcnJvcnMpKVxyXG5cclxuICAgICAgcmV0dXJuIHJlc3VsdC5kYXRhXHJcbiAgICB9XHJcblxyXG4gICAgZ2V0QXR0cmlidXRlR3JhcGhRTFR5cGVPZjxGaWVsZFR5cGU+KHZhbHVlOiBGaWVsZFR5cGUpOiBzdHJpbmcge1xyXG4gICAgICBpZiAoaXNVVUlEKHZhbHVlIGFzIGFueSkpIHJldHVybiAndXVpZCdcclxuICAgICAgaWYgKGlzU3RyaW5nKHZhbHVlKSkgcmV0dXJuICdTdHJpbmcnXHJcbiAgICAgIGlmIChpc0Jvb2xlYW4odmFsdWUpKSByZXR1cm4gJ0Jvb2xlYW4nXHJcbiAgICAgIGlmICh2YWx1ZSBpbnN0YW5jZW9mIERhdGUpIHJldHVybiAndGltZXN0YW1wdHonXHJcbiAgICAgIGlmIChpc0ludGVnZXIodmFsdWUpKSByZXR1cm4gJ0ludCdcclxuICAgICAgaWYgKGlzTnVtYmVyKHZhbHVlKSkgcmV0dXJuICdudW1lcmljJ1xyXG5cclxuICAgICAgdGhyb3cgbmV3IEVycm9yKCdUeXBlIG5vdCBpbXBsZW1lbnRlZCB5ZXQnKVxyXG4gICAgfVxyXG5cclxuICAgIGNoZWNrSWZJc0RhdGVUaW1lQW5kUGFyc2UodmFsdWU6IHN0cmluZyk6IERhdGUgfCBzdHJpbmcge1xyXG4gICAgICBpZiAoIS9eXFxkezR9LSgwWzEtOV18MVswLTJdKS0oMFsxLTldfFsxMl1bMC05XXwzWzAxXSkkLy50ZXN0KHZhbHVlKSkgcmV0dXJuIHZhbHVlXHJcblxyXG4gICAgICBjb25zdCBkYXRlID0gcGFyc2VJU08odmFsdWUpXHJcblxyXG4gICAgICBpZiAoaXNOYU4oZGF0ZS5nZXRUaW1lKCkpKSByZXR1cm4gdmFsdWVcclxuXHJcbiAgICAgIHJldHVybiBkYXRlXHJcbiAgICB9XHJcblxyXG4gICAgY29udmVydERhdGFGcm9tSGFzdXJhKGRhdGE6IFJlY29yZDxzdHJpbmcsIHN0cmluZyB8IG51bWJlcj4pOiBNQmFzZSB7XHJcbiAgICAgIGNvbnN0IHBsYWluID0gR3JhcGhRTEZpZWxkSGVscGVyLkNvbnZlcnRGaWVsZFZhbHVlRnJvbShkYXRhLCB0aGlzLmZpZWxkcylcclxuXHJcbiAgICAgIHJldHVybiB0aGlzLm1vZGVsLnRvSW5zdGFuY2UocGxhaW4pXHJcbiAgICB9XHJcblxyXG4gICAgY29udmVydERhdGFUb0hhc3VyYShpbnN0YW5jZTogTUJhc2UsIHVwZGF0ZSA9IGZhbHNlKTogUmVjb3JkPHN0cmluZywgc3RyaW5nIHwgbnVtYmVyPiB7XHJcbiAgICAgIHJldHVybiBHcmFwaFFMRmllbGRIZWxwZXIuQ29udmVydEZpZWxkVmFsdWVUbyhpbnN0YW5jZSwgdGhpcy5maWVsZHMsIHVwZGF0ZSlcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
94
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1oYXN1cmEtZ3JhcGhxbC5taXhpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL2luZnJhL2hhc3VyYS1ncmFwaHFsL21peGlucy93aXRoLWhhc3VyYS1ncmFwaHFsLm1peGluLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEtBQUssTUFBTSxPQUFPLENBQUE7QUFDekIsT0FBTyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUduRCxPQUFPLEVBQ0wsU0FBUyxFQUNULFNBQVMsRUFDVCxLQUFLLEVBQ0wsS0FBSyxFQUNMLFFBQVEsRUFDUixRQUFRLEVBQ1IsTUFBTSxFQUdOLFFBQVEsR0FDVCxNQUFNLGdCQUFnQixDQUFBO0FBVXZCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLFdBQVcsQ0FBQTtBQVU5QyxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxDQUMvQixTQUFZLEVBQ3FHLEVBQUU7SUFDbkgsT0FBTyxNQUFNLGtCQUFtQixTQUFRLFNBQVM7UUFrQi9DLFlBQVksR0FBRyxNQUFNO1lBQ25CLE1BQU0sT0FBTyxHQUE2QixNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUE7WUFFbkQsS0FBSyxDQUFDLEdBQUcsTUFBTSxDQUFDLENBQUE7WUFFaEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFBO1lBQ2xDLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDLFFBQVEsQ0FBQTtZQUNoQyxJQUFJLENBQUMsV0FBVyxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUE7WUFDdEMsSUFBSSxDQUFDLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFBO1lBQzFCLElBQUksQ0FBQyxNQUFNLEdBQUcsT0FBTyxDQUFDLE1BQU0sSUFBSyxJQUFJLENBQUMsS0FBSyxDQUFDLGlCQUFnRCxDQUFBO1FBQzlG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Q0FBQTtZQUNwQyxJQUFJLFNBQVMsQ0FBQyxLQUFLLENBQUM7Z0JBQUUsT0FBTyxTQUFTLENBQUE7WUFDdEMsSUFBSSxLQUFLLFlBQVksSUFBSTtnQkFBRSxPQUFPLGFBQWEsQ0FBQTtZQUMvQyxJQUFJLFNBQVMsQ0FBQyxLQUFLLENBQUM7Z0JBQUUsT0FBTyxLQUFLLENBQUE7WUFDbEMsSUFBSSxRQUFRLENBQUMsS0FBSyxDQUFDO2dCQUFFLE9BQU8sU0FBUyxDQUFBO1lBRXJDLE1BQU0sSUFBSSxLQUFLLENBQUMsMEJBQTBCLENBQUMsQ0FBQTtRQUM3QyxDQUFDO1FBRUQseUJBQXlCLENBQUMsS0FBYTtZQUNyQyxJQUFJLENBQUMsa0RBQWtELENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQztnQkFBRSxPQUFPLEtBQUssQ0FBQTtZQUVqRixNQUFNLElBQUksR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUE7WUFFNUIsSUFBSSxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUFFLE9BQU8sS0FBSyxDQUFBO1lBRXZDLE9BQU8sSUFBSSxDQUFBO1FBQ2IsQ0FBQztRQUVELHFCQUFxQixDQUFDLElBQXFDO1lBQ3pELE1BQU0sS0FBSyxHQUFHLGtCQUFrQixDQUFDLHFCQUFxQixDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUE7WUFFekUsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUNyQyxDQUFDO1FBRUQsbUJBQW1CLENBQUMsUUFBZSxFQUFFLE1BQU0sR0FBRyxLQUFLO1lBQ2pELE9BQU8sa0JBQWtCLENBQUMsbUJBQW1CLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUE7UUFDOUUsQ0FBQztLQUNGLENBQUE7QUFDSCxDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgYXhpb3MgZnJvbSAnYXhpb3MnXHJcbmltcG9ydCB7IG11dGF0aW9uLCBxdWVyeSB9IGZyb20gJ2dxbC1xdWVyeS1idWlsZGVyJ1xyXG5cclxuaW1wb3J0IHsgQmFzZU1vZGVsQnVpbGRlciwgTW9kZWxCYXNlU3RydWN0dXJlIH0gZnJvbSAnLi4vLi4vLi4vZG9tYWluJ1xyXG5pbXBvcnQge1xyXG4gIGlzQm9vbGVhbixcclxuICBpc0ludGVnZXIsXHJcbiAgaXNOYU4sXHJcbiAgaXNOaWwsXHJcbiAgaXNOdW1iZXIsXHJcbiAgaXNTdHJpbmcsXHJcbiAgaXNVVUlELFxyXG4gIE1lcmdlQ29uc3RydWN0b3JQYXJhbXMsXHJcbiAgTWl4aW5DdG9yLFxyXG4gIHBhcnNlSVNPLFxyXG59IGZyb20gJy4uLy4uLy4uL3V0aWxzJ1xyXG5pbXBvcnQge1xyXG4gIEdyYXBoUUxQYXJhbXMsXHJcbiAgR3JhcGhRTFJlcG9zaXRvcnksXHJcbiAgSGFzdXJhR3JhcGhRTEF1dGhPcHRpb25zLFxyXG4gIEhhc3VyYUdyYXBoUUxGaWVsZHMsXHJcbiAgSGFzdXJhR3JhcGhRTEhlYWRlcnMsXHJcbiAgVmFyaWFibGVPcHRpb25zLFxyXG59IGZyb20gJy4uL3R5cGVzJ1xyXG5cclxuaW1wb3J0IHsgR3JhcGhRTEZpZWxkSGVscGVyIH0gZnJvbSAnLi9oZWxwZXJzJ1xyXG5cclxuZXhwb3J0IHR5cGUgQ29uc3RydWN0b3JQYXJhbXM8TW9kZWwgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmU+ID0ge1xyXG4gIHRhYmxlTmFtZTogc3RyaW5nXHJcbiAgbW9kZWw6IEJhc2VNb2RlbEJ1aWxkZXI8TW9kZWw+XHJcbiAgZmllbGRzOiBIYXN1cmFHcmFwaFFMRmllbGRzPE1vZGVsPlxyXG4gIGVuZHBvaW50OiBzdHJpbmdcclxuICBhdXRoT3B0aW9uczogSGFzdXJhR3JhcGhRTEF1dGhPcHRpb25zXHJcbn1cclxuXHJcbmV4cG9ydCBjb25zdCB3aXRoSGFzdXJhR3JhcGhRTCA9IDxNQmFzZSBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZSwgVCBleHRlbmRzIE1peGluQ3RvciA9IE1peGluQ3Rvcj4oXHJcbiAgTWl4aW5CYXNlOiBULFxyXG4pOiBNaXhpbkN0b3I8R3JhcGhRTFJlcG9zaXRvcnk8TUJhc2U+LCBNZXJnZUNvbnN0cnVjdG9yUGFyYW1zPENvbnN0cnVjdG9yUGFyYW1zPE1CYXNlPiwgQ29uc3RydWN0b3JQYXJhbWV0ZXJzPFQ+Pj4gPT4ge1xyXG4gIHJldHVybiBjbGFzcyBIYXN1cmFHcmFwaFFMTWl4aW4gZXh0ZW5kcyBNaXhpbkJhc2UgaW1wbGVtZW50cyBHcmFwaFFMUmVwb3NpdG9yeTxNQmFzZT4ge1xyXG4gICAgdGFibGVOYW1lOiBzdHJpbmdcclxuICAgIGVuZHBvaW50OiBzdHJpbmdcclxuICAgIGF1dGhPcHRpb25zOiBIYXN1cmFHcmFwaFFMQXV0aE9wdGlvbnNcclxuICAgIG1vZGVsOiBCYXNlTW9kZWxCdWlsZGVyPE1CYXNlPlxyXG4gICAgZmllbGRzOiBIYXN1cmFHcmFwaFFMRmllbGRzPE1CYXNlPlxyXG5cclxuICAgIGdldCBoZWFkZXJzKCk6IEhhc3VyYUdyYXBoUUxIZWFkZXJzIHtcclxuICAgICAgcmV0dXJuIHtcclxuICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxyXG4gICAgICAgIC4uLihpc05pbCh0aGlzLmF1dGhPcHRpb25zLmF1dGhUb2tlbikgPyB7fSA6IHsgQXV0aG9yaXphdGlvbjogdGhpcy5hdXRoT3B0aW9ucy5hdXRoVG9rZW4gfSksXHJcbiAgICAgICAgLi4uKGlzTmlsKHRoaXMuYXV0aE9wdGlvbnMuYWRtaW5TZWNyZXQpID8ge30gOiB7ICdYLUhhc3VyYS1BZG1pbi1TZWNyZXQnOiB0aGlzLmF1dGhPcHRpb25zLmFkbWluU2VjcmV0IH0pLFxyXG4gICAgICAgIC4uLihpc05pbCh0aGlzLmF1dGhPcHRpb25zLmF1dGhSb2xlKVxyXG4gICAgICAgICAgPyB7fVxyXG4gICAgICAgICAgOiB7ICdYLUhhc3VyYS1Sb2xlJzogdGhpcy5hdXRoT3B0aW9ucy5hdXRoUm9sZS5yb2xlLCAnWC1IYXN1cmEtVXNlci1JZCc6IHRoaXMuYXV0aE9wdGlvbnMuYXV0aFJvbGUudXNlcklkIH0pLFxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3RydWN0b3IoLi4ucGFyYW1zKSB7XHJcbiAgICAgIGNvbnN0IG9wdGlvbnM6IENvbnN0cnVjdG9yUGFyYW1zPE1CYXNlPiA9IHBhcmFtc1swXVxyXG5cclxuICAgICAgc3VwZXIoLi4ucGFyYW1zKVxyXG5cclxuICAgICAgdGhpcy50YWJsZU5hbWUgPSBvcHRpb25zLnRhYmxlTmFtZVxyXG4gICAgICB0aGlzLmVuZHBvaW50ID0gb3B0aW9ucy5lbmRwb2ludFxyXG4gICAgICB0aGlzLmF1dGhPcHRpb25zID0gb3B0aW9ucy5hdXRoT3B0aW9uc1xyXG4gICAgICB0aGlzLm1vZGVsID0gb3B0aW9ucy5tb2RlbFxyXG4gICAgICB0aGlzLmZpZWxkcyA9IG9wdGlvbnMuZmllbGRzIHx8ICh0aGlzLm1vZGVsLmlkZW50aWZpZXJzRmllbGRzIGFzIEhhc3VyYUdyYXBoUUxGaWVsZHM8TUJhc2U+KVxyXG4gICAgfVxyXG5cclxuICAgIGFzeW5jIG11dGF0aW9uPFJldHVybkZpZWxkcyA9IGFueT4oXHJcbiAgICAgIG9wZXJhdGlvbjogc3RyaW5nLFxyXG4gICAgICBmaWVsZHM/OiBIYXN1cmFHcmFwaFFMRmllbGRzPE1CYXNlPixcclxuICAgICAgdmFyaWFibGVzPzogVmFyaWFibGVPcHRpb25zLFxyXG4gICAgKTogUHJvbWlzZTxSZXR1cm5GaWVsZHM+IHtcclxuICAgICAgY29uc3QgcmVzdWx0UXVlcnkgPSBtdXRhdGlvbih7XHJcbiAgICAgICAgb3BlcmF0aW9uLFxyXG4gICAgICAgIHZhcmlhYmxlcyxcclxuICAgICAgICBmaWVsZHM6IEdyYXBoUUxGaWVsZEhlbHBlci5Db252ZXJ0TW9kZWxGaWVsZHNUb0dyYXBoUUxGaWVsZHMoZmllbGRzKSxcclxuICAgICAgfSlcclxuXHJcbiAgICAgIHJldHVybiB0aGlzLmZldGNoKHJlc3VsdFF1ZXJ5KVxyXG4gICAgfVxyXG5cclxuICAgIGFzeW5jIHF1ZXJ5PFJldHVybkZpZWxkcyA9IGFueT4oXHJcbiAgICAgIG9wZXJhdGlvbjogc3RyaW5nIHwgR3JhcGhRTFBhcmFtczxNQmFzZT5bXSxcclxuICAgICAgZmllbGRzPzogSGFzdXJhR3JhcGhRTEZpZWxkczxNQmFzZT4sXHJcbiAgICAgIHZhcmlhYmxlcz86IFZhcmlhYmxlT3B0aW9ucyxcclxuICAgICk6IFByb21pc2U8UmV0dXJuRmllbGRzPiB7XHJcbiAgICAgIGNvbnN0IHJlc3VsdFF1ZXJ5ID0gR3JhcGhRTEZpZWxkSGVscGVyLkNoZWNrSXNHcmFwaFFMUGFyYW1zKG9wZXJhdGlvbilcclxuICAgICAgICA/IHF1ZXJ5KFxyXG4gICAgICAgICAgICBvcGVyYXRpb24ubWFwKChvcHRpb24pID0+ICh7XHJcbiAgICAgICAgICAgICAgb3BlcmF0aW9uOiBvcHRpb24ub3BlcmF0aW9uLFxyXG4gICAgICAgICAgICAgIHZhcmlhYmxlczogb3B0aW9uLnZhcmlhYmxlcyxcclxuICAgICAgICAgICAgICBmaWVsZHM6IEdyYXBoUUxGaWVsZEhlbHBlci5Db252ZXJ0TW9kZWxGaWVsZHNUb0dyYXBoUUxGaWVsZHMob3B0aW9uLmZpZWxkcyksXHJcbiAgICAgICAgICAgIH0pKSxcclxuICAgICAgICAgIClcclxuICAgICAgICA6IHF1ZXJ5KHtcclxuICAgICAgICAgICAgb3BlcmF0aW9uLFxyXG4gICAgICAgICAgICB2YXJpYWJsZXMsXHJcbiAgICAgICAgICAgIGZpZWxkczogR3JhcGhRTEZpZWxkSGVscGVyLkNvbnZlcnRNb2RlbEZpZWxkc1RvR3JhcGhRTEZpZWxkcyhmaWVsZHMpLFxyXG4gICAgICAgICAgfSlcclxuXHJcbiAgICAgIHJldHVybiB0aGlzLmZldGNoKHJlc3VsdFF1ZXJ5KVxyXG4gICAgfVxyXG5cclxuICAgIGFzeW5jIGZldGNoPFJldHVybkZpZWxkcyA9IGFueT4ocGFyYW1zOiB7IHZhcmlhYmxlczogYW55OyBxdWVyeTogc3RyaW5nIH0pOiBQcm9taXNlPFJldHVybkZpZWxkcz4ge1xyXG4gICAgICBjb25zdCBoZWFkZXJzID0gdGhpcy5oZWFkZXJzXHJcbiAgICAgIGNvbnN0IHsgZGF0YTogcmVzdWx0IH0gPSBhd2FpdCBheGlvcyh7XHJcbiAgICAgICAgdXJsOiBgJHt0aGlzLmVuZHBvaW50fWAsXHJcbiAgICAgICAgbWV0aG9kOiAnUE9TVCcsXHJcbiAgICAgICAgZGF0YTogcGFyYW1zLFxyXG4gICAgICAgIGhlYWRlcnMsXHJcbiAgICAgIH0pXHJcblxyXG4gICAgICBpZiAoIWlzTmlsKHJlc3VsdC5lcnJvcnMpKSB0aHJvdyBuZXcgRXJyb3IoSlNPTi5zdHJpbmdpZnkocmVzdWx0LmVycm9ycykpXHJcblxyXG4gICAgICByZXR1cm4gcmVzdWx0LmRhdGFcclxuICAgIH1cclxuXHJcbiAgICBnZXRBdHRyaWJ1dGVHcmFwaFFMVHlwZU9mPEZpZWxkVHlwZT4odmFsdWU6IEZpZWxkVHlwZSk6IHN0cmluZyB7XHJcbiAgICAgIGlmIChpc1VVSUQodmFsdWUgYXMgYW55KSkgcmV0dXJuICd1dWlkJ1xyXG4gICAgICBpZiAoaXNTdHJpbmcodmFsdWUpKSByZXR1cm4gJ1N0cmluZydcclxuICAgICAgaWYgKGlzQm9vbGVhbih2YWx1ZSkpIHJldHVybiAnQm9vbGVhbidcclxuICAgICAgaWYgKHZhbHVlIGluc3RhbmNlb2YgRGF0ZSkgcmV0dXJuICd0aW1lc3RhbXB0eidcclxuICAgICAgaWYgKGlzSW50ZWdlcih2YWx1ZSkpIHJldHVybiAnSW50J1xyXG4gICAgICBpZiAoaXNOdW1iZXIodmFsdWUpKSByZXR1cm4gJ251bWVyaWMnXHJcblxyXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1R5cGUgbm90IGltcGxlbWVudGVkIHlldCcpXHJcbiAgICB9XHJcblxyXG4gICAgY2hlY2tJZklzRGF0ZVRpbWVBbmRQYXJzZSh2YWx1ZTogc3RyaW5nKTogRGF0ZSB8IHN0cmluZyB7XHJcbiAgICAgIGlmICghL15cXGR7NH0tKDBbMS05XXwxWzAtMl0pLSgwWzEtOV18WzEyXVswLTldfDNbMDFdKSQvLnRlc3QodmFsdWUpKSByZXR1cm4gdmFsdWVcclxuXHJcbiAgICAgIGNvbnN0IGRhdGUgPSBwYXJzZUlTTyh2YWx1ZSlcclxuXHJcbiAgICAgIGlmIChpc05hTihkYXRlLmdldFRpbWUoKSkpIHJldHVybiB2YWx1ZVxyXG5cclxuICAgICAgcmV0dXJuIGRhdGVcclxuICAgIH1cclxuXHJcbiAgICBjb252ZXJ0RGF0YUZyb21IYXN1cmEoZGF0YTogUmVjb3JkPHN0cmluZywgc3RyaW5nIHwgbnVtYmVyPik6IE1CYXNlIHtcclxuICAgICAgY29uc3QgcGxhaW4gPSBHcmFwaFFMRmllbGRIZWxwZXIuQ29udmVydEZpZWxkVmFsdWVGcm9tKGRhdGEsIHRoaXMuZmllbGRzKVxyXG5cclxuICAgICAgcmV0dXJuIHRoaXMubW9kZWwudG9JbnN0YW5jZShwbGFpbilcclxuICAgIH1cclxuXHJcbiAgICBjb252ZXJ0RGF0YVRvSGFzdXJhKGluc3RhbmNlOiBNQmFzZSwgdXBkYXRlID0gZmFsc2UpOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBudW1iZXI+IHtcclxuICAgICAgcmV0dXJuIEdyYXBoUUxGaWVsZEhlbHBlci5Db252ZXJ0RmllbGRWYWx1ZVRvKGluc3RhbmNlLCB0aGlzLmZpZWxkcywgdXBkYXRlKVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,24 @@
1
+ import { CategoryFilter } from '../../../../domain';
2
+ import { Base } from '../../../../utils';
3
+ import { withCrudHasuraGraphQL, withHasuraGraphQL } from '../../mixins';
4
+ export class CategoryFilterHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGraphQL(Base)) {
5
+ constructor(endpoint, authOptions) {
6
+ super({
7
+ tableName: 'category_filter',
8
+ model: CategoryFilter,
9
+ endpoint,
10
+ authOptions,
11
+ fields: ['id', { filterId: { columnName: 'filter_id' } }, { categoryId: { columnName: 'category_id' } }],
12
+ });
13
+ }
14
+ deleteByCategoryAndFilter(categoryId, filterId) {
15
+ return this.mutation('delete_category_filter', ['affected_rows'], {
16
+ where: {
17
+ type: 'category_filter_bool_exp',
18
+ required: true,
19
+ value: { category_id: { _eq: categoryId }, filter_id: { _eq: filterId } },
20
+ },
21
+ });
22
+ }
23
+ }
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcnktZmlsdGVyLWhhc3VyYS1ncmFwaHFsLnJlcG9zaXRvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC9yZXBvc2l0b3JpZXMvY2F0YWxvZy9jYXRlZ29yeS1maWx0ZXItaGFzdXJhLWdyYXBocWwucmVwb3NpdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFFbkQsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBQ3hDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUd2RSxNQUFNLE9BQU8scUNBQ1gsU0FBUSxxQkFBcUIsQ0FBQyxpQkFBaUIsQ0FBaUIsSUFBSSxDQUFDLENBQUM7SUFHdEUsWUFBWSxRQUFnQixFQUFFLFdBQXFDO1FBQ2pFLEtBQUssQ0FBQztZQUNKLFNBQVMsRUFBRSxpQkFBaUI7WUFDNUIsS0FBSyxFQUFFLGNBQWM7WUFDckIsUUFBUTtZQUNSLFdBQVc7WUFDWCxNQUFNLEVBQUUsQ0FBQyxJQUFJLEVBQUUsRUFBRSxRQUFRLEVBQUUsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLEVBQUUsRUFBRSxFQUFFLFVBQVUsRUFBRSxFQUFFLFVBQVUsRUFBRSxhQUFhLEVBQUUsRUFBRSxDQUFDO1NBQ3pHLENBQUMsQ0FBQTtJQUNKLENBQUM7SUFFRCx5QkFBeUIsQ0FBQyxVQUFrQixFQUFFLFFBQWdCO1FBQzVELE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyx3QkFBd0IsRUFBRSxDQUFDLGVBQWUsQ0FBQyxFQUFFO1lBQ2hFLEtBQUssRUFBRTtnQkFDTCxJQUFJLEVBQUUsMEJBQTBCO2dCQUNoQyxRQUFRLEVBQUUsSUFBSTtnQkFDZCxLQUFLLEVBQUUsRUFBRSxXQUFXLEVBQUUsRUFBRSxHQUFHLEVBQUUsVUFBVSxFQUFFLEVBQUUsU0FBUyxFQUFFLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxFQUFFO2FBQzFFO1NBQ0YsQ0FBQyxDQUFBO0lBQ0osQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2F0ZWdvcnlGaWx0ZXIgfSBmcm9tICcuLi8uLi8uLi8uLi9kb21haW4nXHJcbmltcG9ydCB7IENhdGVnb3J5RmlsdGVyUmVwb3NpdG9yeSB9IGZyb20gJy4uLy4uLy4uLy4uL2RvbWFpbi9jYXRhbG9nL3JlcG9zaXRvcmllcydcclxuaW1wb3J0IHsgQmFzZSB9IGZyb20gJy4uLy4uLy4uLy4uL3V0aWxzJ1xyXG5pbXBvcnQgeyB3aXRoQ3J1ZEhhc3VyYUdyYXBoUUwsIHdpdGhIYXN1cmFHcmFwaFFMIH0gZnJvbSAnLi4vLi4vbWl4aW5zJ1xyXG5pbXBvcnQgeyBIYXN1cmFHcmFwaFFMQXV0aE9wdGlvbnMgfSBmcm9tICcuLi8uLi90eXBlcydcclxuXHJcbmV4cG9ydCBjbGFzcyBDYXRlZ29yeUZpbHRlckhhc3VyYUdyYXBoUUxSZXBvc2l0b3J5XHJcbiAgZXh0ZW5kcyB3aXRoQ3J1ZEhhc3VyYUdyYXBoUUwod2l0aEhhc3VyYUdyYXBoUUw8Q2F0ZWdvcnlGaWx0ZXI+KEJhc2UpKVxyXG4gIGltcGxlbWVudHMgQ2F0ZWdvcnlGaWx0ZXJSZXBvc2l0b3J5XHJcbntcclxuICBjb25zdHJ1Y3RvcihlbmRwb2ludDogc3RyaW5nLCBhdXRoT3B0aW9uczogSGFzdXJhR3JhcGhRTEF1dGhPcHRpb25zKSB7XHJcbiAgICBzdXBlcih7XHJcbiAgICAgIHRhYmxlTmFtZTogJ2NhdGVnb3J5X2ZpbHRlcicsXHJcbiAgICAgIG1vZGVsOiBDYXRlZ29yeUZpbHRlcixcclxuICAgICAgZW5kcG9pbnQsXHJcbiAgICAgIGF1dGhPcHRpb25zLFxyXG4gICAgICBmaWVsZHM6IFsnaWQnLCB7IGZpbHRlcklkOiB7IGNvbHVtbk5hbWU6ICdmaWx0ZXJfaWQnIH0gfSwgeyBjYXRlZ29yeUlkOiB7IGNvbHVtbk5hbWU6ICdjYXRlZ29yeV9pZCcgfSB9XSxcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBkZWxldGVCeUNhdGVnb3J5QW5kRmlsdGVyKGNhdGVnb3J5SWQ6IG51bWJlciwgZmlsdGVySWQ6IG51bWJlcik6IFByb21pc2U8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5tdXRhdGlvbignZGVsZXRlX2NhdGVnb3J5X2ZpbHRlcicsIFsnYWZmZWN0ZWRfcm93cyddLCB7XHJcbiAgICAgIHdoZXJlOiB7XHJcbiAgICAgICAgdHlwZTogJ2NhdGVnb3J5X2ZpbHRlcl9ib29sX2V4cCcsXHJcbiAgICAgICAgcmVxdWlyZWQ6IHRydWUsXHJcbiAgICAgICAgdmFsdWU6IHsgY2F0ZWdvcnlfaWQ6IHsgX2VxOiBjYXRlZ29yeUlkIH0sIGZpbHRlcl9pZDogeyBfZXE6IGZpbHRlcklkIH0gfSxcclxuICAgICAgfSxcclxuICAgIH0pXHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -5,7 +5,7 @@ import { Base, omit } from '../../../../utils';
5
5
  import { HasuraGraphQLColumnType } from '../../enums';
6
6
  import { withCrudHasuraGraphQL, withHasuraGraphQL } from '../../mixins';
7
7
  export class CategoryHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGraphQL(Base)) {
8
- constructor(endpoint, authOptions, productRepository) {
8
+ constructor(endpoint, authOptions, productRepository, categoryFilterRepository) {
9
9
  super({
10
10
  tableName: 'category',
11
11
  model: Category,
@@ -41,7 +41,17 @@ export class CategoryHasuraGraphQLRepository extends withCrudHasuraGraphQL(withH
41
41
  },
42
42
  },
43
43
  },
44
- 'filters',
44
+ {
45
+ filters: {
46
+ columnName: 'filters',
47
+ foreignKeyColumn: { filter_id: 'id' },
48
+ fields: [{ filter: ['id', 'description', 'slug', 'enabled'] }],
49
+ bindPersistData: (value) => ({
50
+ filters: { data: value.map((filter) => ({ filter_id: filter.id })) },
51
+ }),
52
+ from: (filters) => (filters === null || filters === void 0 ? void 0 : filters.map((filter) => filter === null || filter === void 0 ? void 0 : filter.filter)) || [],
53
+ },
54
+ },
45
55
  { createdAt: { columnName: 'created_at' } },
46
56
  { updatedAt: { columnName: 'updated_at' } },
47
57
  {
@@ -66,6 +76,7 @@ export class CategoryHasuraGraphQLRepository extends withCrudHasuraGraphQL(withH
66
76
  ],
67
77
  });
68
78
  this.productRepository = productRepository;
79
+ this.categoryFilterRepository = categoryFilterRepository;
69
80
  }
70
81
  create(params) {
71
82
  const _super = Object.create(null, {
@@ -92,12 +103,13 @@ export class CategoryHasuraGraphQLRepository extends withCrudHasuraGraphQL(withH
92
103
  update: { get: () => super.update }
93
104
  });
94
105
  return __awaiter(this, void 0, void 0, function* () {
95
- const { products, id: checkId, metadata } = params, data = __rest(params, ["products", "id", "metadata"]);
106
+ const { products, id: checkId, metadata, filters } = params, data = __rest(params, ["products", "id", "metadata", "filters"]);
96
107
  const plainData = this.paramsToPlain({ id: checkId });
97
108
  const id = yield this.getId(plainData.id);
98
109
  const category = yield _super.update.call(this, Object.assign({ id }, data));
99
110
  category.products = products && (yield this.updateProducts(+id, { products }));
100
111
  category.metadata = metadata && (yield this.updateMetadata(+id, { metadata }));
112
+ category.filters = filters && (yield this.updateFilters(+id, { filters }));
101
113
  return category;
102
114
  });
103
115
  }
@@ -237,5 +249,73 @@ export class CategoryHasuraGraphQLRepository extends withCrudHasuraGraphQL(withH
237
249
  return plainData.metadata;
238
250
  });
239
251
  }
252
+ updateFilters(categoryId, { filters }) {
253
+ return __awaiter(this, void 0, void 0, function* () {
254
+ if ('action' in filters && filters.action === 'remove' && filters.value.length) {
255
+ for (let i = 0; i < filters.value.length; i++) {
256
+ yield this.categoryFilterRepository.deleteByCategoryAndFilter(categoryId, filters.value[i].id);
257
+ }
258
+ return [];
259
+ }
260
+ if ('action' in filters && filters.action === 'merge' && filters.value.length) {
261
+ let filtersList = [];
262
+ for (let i = 0; i < filters.value.length; i++) {
263
+ try {
264
+ const hasFilter = yield this.categoryFilterRepository
265
+ .find({
266
+ filters: {
267
+ categoryId,
268
+ filterId: filters.value[i].id,
269
+ },
270
+ })
271
+ .then((data) => data.data.shift());
272
+ if (hasFilter) {
273
+ filtersList.push(hasFilter);
274
+ }
275
+ else {
276
+ const newCategoryFilter = yield this.categoryFilterRepository.create({
277
+ filterId: filters.value[i].id,
278
+ categoryId,
279
+ });
280
+ filtersList.push(newCategoryFilter);
281
+ }
282
+ }
283
+ catch (error) {
284
+ console.log('catch error: ', error);
285
+ }
286
+ }
287
+ return filtersList;
288
+ }
289
+ if (Array.isArray(filters) && filters.length) {
290
+ let filtersList = [];
291
+ for (let i = 0; i < filters.length; i++) {
292
+ try {
293
+ const hasFilter = yield this.categoryFilterRepository
294
+ .find({
295
+ filters: {
296
+ categoryId,
297
+ filterId: filters[i].id,
298
+ },
299
+ })
300
+ .then((data) => data.data.shift());
301
+ if (hasFilter) {
302
+ filtersList.push(hasFilter);
303
+ }
304
+ else {
305
+ const newCategoryFilter = yield this.categoryFilterRepository.create({
306
+ filterId: filters[i].id,
307
+ categoryId,
308
+ });
309
+ filtersList.push(newCategoryFilter);
310
+ }
311
+ }
312
+ catch (error) {
313
+ console.log('catch error: ', error);
314
+ }
315
+ }
316
+ return filtersList;
317
+ }
318
+ });
319
+ }
240
320
  }
241
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcnktaGFzdXJhLWdyYXBocWwucmVwb3NpdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL2luZnJhL2hhc3VyYS1ncmFwaHFsL3JlcG9zaXRvcmllcy9jYXRhbG9nL2NhdGVnb3J5LWhhc3VyYS1ncmFwaHFsLnJlcG9zaXRvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFDTCxRQUFRLEVBUVIsS0FBSyxHQUNOLE1BQU0sb0JBQW9CLENBQUE7QUFDM0IsT0FBTyxFQUFFLHNCQUFzQixFQUFFLGFBQWEsRUFBRSxNQUFNLG9CQUFvQixDQUFBO0FBQzFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFDOUMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sYUFBYSxDQUFBO0FBQ3JELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQU12RSxNQUFNLE9BQU8sK0JBQ1gsU0FBUSxxQkFBcUIsQ0FBQyxpQkFBaUIsQ0FBd0IsSUFBSSxDQUFDLENBQUM7SUFHN0UsWUFDRSxRQUFnQixFQUNoQixXQUFxQyxFQUNwQixpQkFBaUQ7UUFFbEUsS0FBSyxDQUFDO1lBQ0osU0FBUyxFQUFFLFVBQVU7WUFDckIsS0FBSyxFQUFFLFFBQVE7WUFDZixRQUFRO1lBQ1IsV0FBVztZQUNYLE1BQU0sRUFBRTtnQkFDTixFQUFFLEVBQUUsRUFBRSxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsRUFBRSxFQUFFO2dCQUN0RixFQUFFLFdBQVcsRUFBRSxFQUFFLFVBQVUsRUFBRSxjQUFjLEVB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QUFTLEVBQUUsQ0FBQyxDQUFDO2lCQUNuRzthQUNGLENBQUMsQ0FBQTtZQUVGLE9BQU8sU0FBUyxDQUFDLFFBQVEsQ0FBQTtRQUMzQixDQUFDO0tBQUE7SUFFYSxjQUFjLENBQzFCLFVBQWtCLEVBQ2xCLEVBQUUsUUFBUSxFQUFtRTs7WUFFN0UsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUE7WUFFbEQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRO2dCQUFFLE9BQU07WUFFL0IsTUFBTSxJQUFJLENBQUMsUUFBUSxDQUFDLGdDQUFnQyxFQUFFLENBQUMsYUFBYSxDQUFDLEVBQUU7Z0JBQ3JFLFVBQVUsRUFBRTtvQkFDVixLQUFLLEVBQUUsRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFO29CQUNsQyxJQUFJLEVBQUUsb0NBQW9DO29CQUMxQyxRQUFRLEVBQUUsSUFBSTtpQkFDZjtnQkFDRCxJQUFJLEVBQUU7b0JBQ0osS0FBSyxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxhQUFhLENBQUMsQ0FBQztvQkFDdEMsSUFBSSxFQUFFLDZCQUE2QjtvQkFDbkMsUUFBUSxFQUFFLElBQUk7aUJBQ2Y7YUFDRixDQUFDLENBQUE7WUFFRixPQUFPLFNBQVMsQ0FBQyxRQUFRLENBQUE7UUFDM0IsQ0FBQztLQUFBO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENhdGVnb3J5LFxyXG4gIENhdGVnb3J5TWV0YWRhdGEsXHJcbiAgQ2F0ZWdvcnlSZXBvc2l0b3J5LFxyXG4gIENyZWF0ZVJlcG9zaXRvcnlQYXJhbXMsXHJcbiAgR2V0UmVwb3NpdG9yeVBhcmFtcyxcclxuICBQcm9kdWN0LFxyXG4gIFNob3BzLFxyXG4gIFVwZGF0ZVJlcG9zaXRvcnlQYXJhbXMsXHJcbiAgV2hlcmUsXHJcbn0gZnJvbSAnLi4vLi4vLi4vLi4vZG9tYWluJ1xyXG5pbXBvcnQgeyBEdXBsaWNhdGVkUmVzdWx0c0Vycm9yLCBOb3RGb3VuZEVycm9yIH0gZnJvbSAnLi4vLi4vLi4vLi4vZXJyb3JzJ1xyXG5pbXBvcnQgeyBCYXNlLCBvbWl0IH0gZnJvbSAnLi4vLi4vLi4vLi4vdXRpbHMnXHJcbmltcG9ydCB7IEhhc3VyYUdyYXBoUUxDb2x1bW5UeXBlIH0gZnJvbSAnLi4vLi4vZW51bXMnXHJcbmltcG9ydCB7IHdpdGhDcnVkSGFzdXJhR3JhcGhRTCwgd2l0aEhhc3VyYUdyYXBoUUwgfSBmcm9tICcuLi8uLi9taXhpbnMnXHJcbmltcG9ydCB7IENhdGVnb3J5SGFzdXJhR3JhcGhRTCB9IGZyb20gJy4uLy4uL21vZGVscydcclxuaW1wb3J0IHsgSGFzdXJhR3JhcGhRTEF1dGhPcHRpb25zIH0gZnJvbSAnLi4vLi4vdHlwZXMnXHJcblxyXG5pbXBvcnQgeyBQcm9kdWN0SGFzdXJhR3JhcGhRTFJlcG9zaXRvcnkgfSBmcm9tICcuL3Byb2R1Y3QtaGFzdXJhLWdyYXBocWwucmVwb3NpdG9yeSdcclxuXHJcbmV4cG9ydCBjbGFzcyBDYXRlZ29yeUhhc3VyYUdyYXBoUUxSZXBvc2l0b3J5XHJcbiAgZXh0ZW5kcyB3aXRoQ3J1ZEhhc3VyYUdyYXBoUUwod2l0aEhhc3VyYUdyYXBoUUw8Q2F0ZWdvcnlIYXN1cmFHcmFwaFFMPihCYXNlKSlcclxuICBpbXBsZW1lbnRzIENhdGVnb3J5UmVwb3NpdG9yeVxyXG57XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBlbmRwb2ludDogc3RyaW5nLFxyXG4gICAgYXV0aE9wdGlvbnM6IEhhc3VyYUdyYXBoUUxBdXRoT3B0aW9ucyxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgcHJvZHVjdFJlcG9zaXRvcnk6IFByb2R1Y3RIYXN1cmFHcmFwaFFMUmVwb3NpdG9yeSxcclxuICApIHtcclxuICAgIHN1cGVyKHtcclxuICAgICAgdGFibGVOYW1lOiAnY2F0ZWdvcnknLFxyXG4gICAgICBtb2RlbDogQ2F0ZWdvcnksXHJcbiAgICAgIGVuZHBvaW50LFxyXG4gICAgICBhdXRoT3B0aW9ucyxcclxuICAgICAgZmllbGRzOiBbXHJcbiAgICAgICAgeyBpZDogeyBjb2x1bW5OYW1lOiAnaWQnLCB0bzogKHZhbHVlKSA9PiArdmFsdWUsIGZyb206ICh2YWx1ZSkgPT4gdmFsdWUudG9TdHJpbmcoKSB9IH0sXHJcbiAgICAgICAgeyBmaXJlc3RvcmVJZDogeyBjb2x1bW5OYW1lOiAnZmlyZXN0b3JlX2lkJyB9IH0sXHJcbiAgICAgICAgJ25hbWUnLFxyXG4gICAgICAgICdkZXNjcmlwdGlvbicsXHJcbiAgICAgICAgJ2ltYWdlJyxcclxuICAgICAgICAncHVibGlzaGVkJyxcclxuICAgICAgICAnc2hvcCcsXHJcbiAgICAgICAgJ3NsdWcnLFxyXG4gICAgICAgIHsgYnJhbmRDYXRlZ29yeTogeyBjb2x1bW5OYW1lOiAnYnJhbmRfY2F0ZWdvcnknIH0gfSxcclxuICAgICAgICB7IGJyYW5kQ2F0ZWdvcnlCYW5uZXI6IHsgY29sdW1uTmFtZTogJ2JyYW5kX2Jhbm5lcicgfSB9LFxyXG4gICAgICAgIHsgYnJhbmRDYXRlZ29yeUJhbm5lck1vYmlsZTogeyBjb2x1bW5OYW1lOiAnYnJhbmRfYmFubmVyX21vYmlsZScgfSB9LFxyXG4gICAgICAgIHsgYnJhbmRMb2dvOiB7IGNvbHVtbk5hbWU6ICdicmFuZF9sb2dvJyB9IH0sXHJcbiAgICAgICAgeyBicmFuZENvbmRpdGlvbjogeyBjb2x1bW5OYW1lOiAnYnJhbmRfY29uZGl0aW9uJyB9IH0sXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgY29uZGl0aW9uczoge1xyXG4gICAgICAgICAgICBjb2x1bW5OYW1lOiAndGFnX2NvbmRpdGlvbicsXHJcbiAgICAgICAgICAgIHR5cGU6IEhhc3VyYUdyYXBoUUxDb2x1bW5UeXBlLkpzb25iLFxyXG4gICAgICAgICAgICBmcm9tOiAodGFnczogdW5rbm93biwgcm93KSA9PiAoeyBicmFuZDogcm93LmJyYW5kX2NvbmRpdGlvbiwgdGFnczogQXJyYXkuaXNBcnJheSh0YWdzKSA/IHRhZ3MgOiBbXSB9KSxcclxuICAgICAgICAgICAgYmluZFBlcnNpc3REYXRhOiAodmFsdWUpID0+IHtcclxuICAgICAgICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICAgICAgYnJhbmRfY29uZGl0aW9uOiB2YWx1ZS5icmFuZCxcclxuICAgICAgICAgICAgICAgIHRhZ19jb25kaXRpb246IHZhbHVlPy50YWdzIHx8IFtdLFxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgYmluZEZpbmRGaWx0ZXI6IChzZW50ZW5jZTogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgICAgIC4uLihzZW50ZW5jZS5icmFuZCA/IHsgYnJhbmRfY29uZGl0aW9uOiBzZW50ZW5jZS5icmFuZCB9IDoge30pLFxyXG4gICAgICAgICAgICAgICAgLi4uKHNlbnRlbmNlLnRhZ3MgPyB7IHRhZ19jb25kaXRpb246IHNlbnRlbmNlLnRhZ3MgfSA6IHt9KSxcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgJ2ZpbHRlcnMnLFxyXG4gICAgICAgIHsgY3JlYXRlZEF0OiB7IGNvbHVtbk5hbWU6ICdjcmVhdGVkX2F0JyB9IH0sXHJcbiAgICAgICAgeyB1cGRhdGVkQXQ6IHsgY29sdW1uTmFtZTogJ3VwZGF0ZWRfYXQnIH0gfSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICBwcm9kdWN0czoge1xyXG4gICAgICAgICAgICBjb2x1bW5OYW1lOiAncHJvZHVjdHMnLFxyXG4gICAgICAgICAgICBmaWVsZHM6IFsncHJvZHVjdF9pZCddLFxyXG4gICAgICAgICAgICBmcm9tOiAodmFsdWU6IHsgcHJvZHVjdF9pZDogbnVtYmVyIH1bXSkgPT4gdmFsdWUubWFwKChwcm9kdWN0KSA9PiBwcm9kdWN0LnByb2R1Y3RfaWQudG9TdHJpbmcoKSksXHJcbiAgICAgICAgICAgIHRvOiAocHJvZHVjdElkcykgPT5cclxuICAgICAgICAgICAgICBwcm9kdWN0SWRzLm1hcCgocHJvZHVjdElkKSA9PiAoe1xyXG4gICAgICAgICAgICAgICAgcHJvZHVjdF9pZDogK3Byb2R1Y3RJZCxcclxuICAgICAgICAgICAgICB9KSksXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgbWV0YWRhdGE6IHtcclxuICAgICAgICAgICAgY29sdW1uTmFtZTogJ21ldGFkYXRhJyxcclxuICAgICAgICAgICAgZmllbGRzOiBbJ3RpdGxlJywgJ2Rlc2NyaXB0aW9uJ10sXHJcbiAgICAgICAgICAgIGJpbmRQZXJzaXN0RGF0YTogKHZhbHVlKSA9PiAoe1xyXG4gICAgICAgICAgICAgIG1ldGFkYXRhOiB7IGRhdGE6IHZhbHVlIH0sXHJcbiAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICB9LFxyXG4gICAgICBdLFxyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIGFzeW5jIGNyZWF0ZShwYXJhbXM6IENyZWF0ZVJlcG9zaXRvcnlQYXJhbXM8Q2F0ZWdvcnlIYXN1cmFHcmFwaFFMPik6IFByb21pc2U8Q2F0ZWdvcnlIYXN1cmFHcmFwaFFMPiB7XHJcbiAgICBjb25zdCB7IG1ldGFkYXRhLCAuLi5kYXRhIH0gPSBwYXJhbXNcclxuXHJcbiAgICByZXR1cm4gc3VwZXIuY3JlYXRlKHsgLi4uZGF0YSwgbWV0YWRhdGE6IG1ldGFkYXRhIHx8IHsgZGVzY3JpcHRpb246IG51bGwsIHRpdGxlOiBudWxsIH0gfSlcclxuICB9XHJcblxyXG4gIGFzeW5jIGdldChpZGVudGlmaWVyczogR2V0UmVwb3NpdG9yeVBhcmFtczxDYXRlZ29yeUhhc3VyYUdyYXBoUUw+KTogUHJvbWlzZTxDYXRlZ29yeUhhc3VyYUdyYXBoUUw+IHtcclxuICAgIHJldHVybiBOdW1iZXIuaXNOYU4oK2lkZW50aWZpZXJzLmlkKVxyXG4gICAgICA/IChhd2FpdCB0aGlzLmZpbmQoeyBmaWx0ZXJzOiB7IGZpcmVzdG9yZUlkOiBpZGVudGlmaWVycy5pZCB9LCBvcHRpb25zOiB7IGVuYWJsZUNvdW50OiBmYWxzZSB9IH0pKS5kYXRhPy5bMF1cclxuICAgICAgOiBzdXBlci5nZXQoaWRlbnRpZmllcnMpXHJcbiAgfVxyXG5cclxuICBhc3luYyB1cGRhdGUocGFyYW1zOiBVcGRhdGVSZXBvc2l0b3J5UGFyYW1zPENhdGVnb3J5SGFzdXJhR3JhcGhRTD4pOiBQcm9taXNlPENhdGVnb3J5SGFzdXJhR3JhcGhRTD4ge1xyXG4gICAgY29uc3QgeyBwcm9kdWN0cywgaWQ6IGNoZWNrSWQsIG1ldGFkYXRhLCAuLi5kYXRhIH0gPSBwYXJhbXNcclxuICAgIGNvbnN0IHBsYWluRGF0YSA9IHRoaXMucGFyYW1zVG9QbGFpbih7IGlkOiBjaGVja0lkIH0pXHJcbiAgICBjb25zdCBpZCA9IGF3YWl0IHRoaXMuZ2V0SWQocGxhaW5EYXRhLmlkKVxyXG4gICAgY29uc3QgY2F0ZWdvcnkgPSBhd2FpdCBzdXBlci51cGRhdGUoeyBpZCwgLi4uZGF0YSB9KVxyXG5cclxuICAgIGNhdGVnb3J5LnByb2R1Y3RzID0gcHJvZHVjdHMgJiYgKGF3YWl0IHRoaXMudXBkYXRlUHJvZHVjdHMoK2lkLCB7IHByb2R1Y3RzIH0pKVxyXG4gICAgY2F0ZWdvcnkubWV0YWRhdGEgPSBtZXRhZGF0YSAmJiAoYXdhaXQgdGhpcy51cGRhdGVNZXRhZGF0YSgraWQsIHsgbWV0YWRhdGEgfSkpXHJcblxyXG4gICAgcmV0dXJuIGNhdGVnb3J5XHJcbiAgfVxyXG5cclxuICBhc3luYyBnZXRDYXRlZ29yeUJ5U2x1ZyhzbHVnOiBzdHJpbmcsIHNob3A6IFNob3BzKTogUHJvbWlzZTxDYXRlZ29yeT4ge1xyXG4gICAgaWYgKCFzbHVnKSByZXR1cm5cclxuXHJcbiAgICBjb25zdCB7IGRhdGEgfSA9IGF3YWl0IHRoaXMuZmluZCh7IGZpbHRlcnM6IHsgc2x1Zywgc2hvcCwgcHVibGlzaGVkOiB0cnVlIH0sIG9wdGlvbnM6IHsgZW5hYmxlQ291bnQ6IGZhbHNlIH0gfSlcclxuXHJcbiAgICBpZiAoIWRhdGEubGVuZ3RoKSB0aHJvdyBuZXcgTm90Rm91bmRFcnJvcihgQ2F0ZWdvcnkgd2l0aCBzbHVnICR7c2x1Z30gbm90IGZvdW5kYClcclxuICAgIGlmIChkYXRhLmxlbmd0aCA+IDEpIHRocm93IG5ldyBEdXBsaWNhdGVkUmVzdWx0c0Vycm9yKCdRdWVyeSByZXR1cm5lZCBkdXBsaWNhdGVkIHZhbHVlcycpXHJcblxyXG4gICAgcmV0dXJuIGRhdGEuc2hpZnQoKVxyXG4gIH1cclxuXHJcbiAgYXN5bmMgZ2V0Q2F0ZWdvcmllc0ZvckhvbWUoY2F0ZWdvcnlJZHM6IHN0cmluZ1tdLCBsaW1pdCA9IDQpOiBQcm9taXNlPHsgY2F0ZWdvcnk6IENhdGVnb3J5OyBwcm9kdWN0czogUHJvZHVjdFtdIH1bXT4ge1xyXG4gICAgaWYgKCFjYXRlZ29yeUlkcz8ubGVuZ3RoKSByZXR1cm4gW11cclxuXHJcbiAgICBjb25zdCBjYXRlZ29yaWVzRmlyZXN0b3JlID0gY2F0ZWdvcnlJZHMuZmlsdGVyKChjYXRlZ29yeUlkKSA9PiBOdW1iZXIuaXNOYU4oK2NhdGVnb3J5SWQpKVxyXG4gICAgY29uc3QgY2F0ZWdvcmllc0hhc3VyYSA9IGNhdGVnb3J5SWRzLmZpbHRlcigoY2F0ZWdvcnlJZCkgPT4gK2NhdGVnb3J5SWQgPiAwKVxyXG4gICAgY29uc3QgY2F0ZWdvcmllcyA9IFtdXHJcblxyXG4gICAgaWYgKGNhdGVnb3JpZXNGaXJlc3RvcmUubGVuZ3RoKVxyXG4gICAgICBjYXRlZ29yaWVzLnB1c2goXHJcbiAgICAgICAgLi4uKGF3YWl0IHRoaXMuZmluZCh7XHJcbiAgICAgICAgICBmaWx0ZXJzOiB7IGZpcmVzdG9yZUlkOiB7IG9wZXJhdG9yOiBXaGVyZS5JTiwgdmFsdWU6IGNhdGVnb3JpZXNGaXJlc3RvcmUuZmlsdGVyKEJvb2xlYW4pIH0sIHB1Ymxpc2hlZDogdHJ1ZSB9LFxyXG4gICAgICAgIH0pLnRoZW4oKHsgZGF0YSB9KSA9PiBkYXRhKSksXHJcbiAgICAgIClcclxuICAgIGlmIChjYXRlZ29yaWVzSGFzdXJhLmxlbmd0aClcclxuICAgICAgY2F0ZWdvcmllcy5wdXNoKFxyXG4gICAgICAgIC4uLihhd2FpdCB0aGlzLmZpbmQoe1xyXG4gICAgICAgICAgZmlsdGVyczogeyBpZDogeyBvcGVyYXRvcjogV2hlcmUuSU4sIHZhbHVlOiBjYXRlZ29yaWVzSGFzdXJhLmZpbHRlcihCb29sZWFuKSB9LCBwdWJsaXNoZWQ6IHRydWUgfSxcclxuICAgICAgICB9KS50aGVuKCh7IGRhdGEgfSkgPT4gZGF0YSkpLFxyXG4gICAgICApXHJcblxyXG4gICAgaWYgKCFjYXRlZ29yaWVzLmxlbmd0aCkgcmV0dXJuIFtdXHJcblxyXG4gICAgY29uc3QgaG9tZVNlY3Rpb25zID0gYXdhaXQgUHJvbWlzZS5hbGwoXHJcbiAgICAgIGNhdGVnb3JpZXMubWFwKGFzeW5jIChjYXRlZ29yeSkgPT4gKHtcclxuICAgICAgICBjYXRlZ29yeSxcclxuICAgICAgICBwcm9kdWN0czogYXdhaXQgdGhpcy5tb3VudENhdGVnb3J5KGNhdGVnb3J5LCB7IGxpbWl0LCBoYXNTdG9jazogdHJ1ZSB9KSxcclxuICAgICAgfSkpLFxyXG4gICAgKVxyXG5cclxuICAgIHJldHVybiBob21lU2VjdGlvbnNcclxuICB9XHJcblxyXG4gIGFzeW5jIG1vdW50Q2F0ZWdvcnkoY2F0ZWdvcnk6IENhdGVnb3J5LCBvcHRpb25zPzogeyBsaW1pdD86IG51bWJlcjsgaGFzU3RvY2s/OiBib29sZWFuIH0pOiBQcm9taXNlPFByb2R1Y3RbXT4ge1xyXG4gICAgaWYgKCFjYXRlZ29yeT8ucHJvZHVjdHM/Lmxlbmd0aCkgcmV0dXJuIFtdXHJcblxyXG4gICAgY29uc3QgcHJvZHVjdHMgPSBbXVxyXG4gICAgY29uc3QgeyBkYXRhOiBwcm9kdWN0c0RhdGEgfSA9IGF3YWl0IHRoaXMucHJvZHVjdFJlcG9zaXRvcnkuZmluZCh7XHJcbiAgICAgIGZpbHRlcnM6IHtcclxuICAgICAgICBpZDogeyBvcGVyYXRvcjogV2hlcmUuSU4sIHZhbHVlOiBjYXRlZ29yeS5wcm9kdWN0cyB9LFxyXG4gICAgICAgIHB1Ymxpc2hlZDogdHJ1ZSxcclxuICAgICAgICAuLi4ob3B0aW9ucz8uaGFzU3RvY2sgPyB7IHN0b2NrOiB7IHF1YW50aXR5OiB7IG9wZXJhdG9yOiBXaGVyZS5HVCwgdmFsdWU6IDAgfSB9IH0gOiB7fSksXHJcbiAgICAgIH0sXHJcbiAgICAgIGZpZWxkczogW1xyXG4gICAgICAgICdpZCcsXHJcbiAgICAgICAgJ25hbWUnLFxyXG4gICAgICAgICdzbHVnJyxcclxuICAgICAgICAnaW1hZ2VzJyxcclxuICAgICAgICAnbWluaWF0dXJlcycsXHJcbiAgICAgICAgJ3ByaWNlJyxcclxuICAgICAgICAnZnVsbFByaWNlJyxcclxuICAgICAgICAnc3Vic2NyaWJlckRpc2NvdW50UGVyY2VudGFnZScsXHJcbiAgICAgICAgJ3N1YnNjcmliZXJQcmljZScsXHJcbiAgICAgICAgJ3N0b2NrJyxcclxuICAgICAgICAncHVibGlzaGVkJyxcclxuICAgICAgICAnQ0VTVCcsXHJcbiAgICAgICAgJ0VBTicsXHJcbiAgICAgICAgJ05DTScsXHJcbiAgICAgICAgJ2JyYW5kJyxcclxuICAgICAgICAnY29zdFByaWNlJyxcclxuICAgICAgICAnaGFzVmFyaWFudHMnLFxyXG4gICAgICAgICdpc0tpdCcsXHJcbiAgICAgICAgJ3NrdScsXHJcbiAgICAgICAgJ3JhdGUnLFxyXG4gICAgICAgICd0YWdzJyxcclxuICAgICAgICAndHlwZScsXHJcbiAgICAgICAgJ3Nob3BwaW5nQ291bnQnLFxyXG4gICAgICBdLFxyXG4gICAgICAuLi4ob3B0aW9ucz8ubGltaXQgPyB7IGxpbWl0czogeyBsaW1pdDogb3B0aW9ucz8ubGltaXQgfSB9IDoge30pLFxyXG4gICAgICBvcHRpb25zOiB7IGVuYWJsZUNvdW50OiBmYWxzZSB9LFxyXG4gICAgfSlcclxuXHJcbiAgICBwcm9kdWN0cy5wdXNoKC4uLnByb2R1Y3RzRGF0YSlcclxuXHJcbiAgICByZXR1cm4gcHJvZHVjdHNcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXN5bmMgZ2V0SWQoaWQ6IHN0cmluZyk6IFByb21pc2U8c3RyaW5nPiB7XHJcbiAgICBpZiAoIU51bWJlci5pc05hTigraWQpKSByZXR1cm4gaWRcclxuXHJcbiAgICBjb25zdCB7IGRhdGEgfSA9IGF3YWl0IHRoaXMuZmluZCh7IGZpbHRlcnM6IHsgZmlyZXN0b3JlSWQ6IGlkIH0sIG9wdGlvbnM6IHsgZW5hYmxlQ291bnQ6IGZhbHNlIH0gfSlcclxuXHJcbiAgICBpZiAoZGF0YT8uWzBdPy5pZCkgcmV0dXJuIGRhdGE/LlswXT8uaWRcclxuXHJcbiAgICB0aHJvdyBuZXcgTm90Rm91bmRFcnJvcihgQ2F0ZWdvcnkgd2l0aCBpZCAke2lkfSBub3QgZm91bmRgKVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBhc3luYyB1cGRhdGVQcm9kdWN0cyhcclxuICAgIGNhdGVnb3J5SWQ6IG51bWJlcixcclxuICAgIHsgcHJvZHVjdHMgfTogUGljazxVcGRhdGVSZXBvc2l0b3J5UGFyYW1zPENhdGVnb3J5SGFzdXJhR3JhcGhRTD4sICdwcm9kdWN0cyc+LFxyXG4gICk6IFByb21pc2U8Q2F0ZWdvcnlIYXN1cmFHcmFwaFFMWydwcm9kdWN0cyddPiB7XHJcbiAgICBpZiAoJ2FjdGlvbicgaW4gcHJvZHVjdHMgJiYgcHJvZHVjdHMuYWN0aW9uID09PSAncmVtb3ZlJykge1xyXG4gICAgICBhd2FpdCB0aGlzLm11dGF0aW9uKCdkZWxldGVfY2F0ZWdvcnlfcHJvZHVjdCcsIFsnYWZmZWN0ZWRfcm93cyddLCB7XHJcbiAgICAgICAgd2hlcmU6IHtcclxuICAgICAgICAgIHR5cGU6ICdjYXRlZ29yeV9wcm9kdWN0X2Jvb2xfZXhwJyxcclxuICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLFxyXG4gICAgICAgICAgdmFsdWU6IHsgY2F0ZWdvcnlfaWQ6IHsgX2VxOiBjYXRlZ29yeUlkIH0gfSxcclxuICAgICAgICB9LFxyXG4gICAgICB9KVxyXG5cclxuICAgICAgcmV0dXJuIFtdXHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgcGxhaW5EYXRhID0gdGhpcy5wYXJhbXNUb1BsYWluKHsgcHJvZHVjdHMgfSlcclxuXHJcbiAgICBpZiAoIXBsYWluRGF0YS5wcm9kdWN0cyB8fCBwbGFpbkRhdGEucHJvZHVjdHMubGVuZ3RoIDw9IDApIHJldHVybiBbXVxyXG5cclxuICAgIGF3YWl0IHRoaXMubXV0YXRpb24oJ2RlbGV0ZV9jYXRlZ29yeV9wcm9kdWN0JywgWydhZmZlY3RlZF9yb3dzJ10sIHtcclxuICAgICAgd2hlcmU6IHtcclxuICAgICAgICB0eXBlOiAnY2F0ZWdvcnlfcHJvZHVjdF9ib29sX2V4cCcsXHJcbiAgICAgICAgcmVxdWlyZWQ6IHRydWUsXHJcbiAgICAgICAgdmFsdWU6IHsgY2F0ZWdvcnlfaWQ6IHsgX2VxOiBjYXRlZ29yeUlkIH0gfSxcclxuICAgICAgfSxcclxuICAgIH0pXHJcblxyXG4gICAgYXdhaXQgdGhpcy5tdXRhdGlvbignaW5zZXJ0X2NhdGVnb3J5X3Byb2R1Y3QnLCBbJ2FmZmVjdGVkX3Jvd3MnXSwge1xyXG4gICAgICBvYmplY3RzOiB7XHJcbiAgICAgICAgdHlwZTogJ1tjYXRlZ29yeV9wcm9kdWN0X2luc2VydF9pbnB1dCFdJyxcclxuICAgICAgICByZXF1aXJlZDogdHJ1ZSxcclxuICAgICAgICB2YWx1ZTogcGxhaW5EYXRhLnByb2R1Y3RzLm1hcCgocHJvZHVjdElkKSA9PiAoeyBjYXRlZ29yeV9pZDogY2F0ZWdvcnlJZCwgcHJvZHVjdF9pZDogcHJvZHVjdElkIH0pKSxcclxuICAgICAgfSxcclxuICAgIH0pXHJcblxyXG4gICAgcmV0dXJuIHBsYWluRGF0YS5wcm9kdWN0c1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBhc3luYyB1cGRhdGVNZXRhZGF0YShcclxuICAgIGNhdGVnb3J5SWQ6IG51bWJlcixcclxuICAgIHsgbWV0YWRhdGEgfTogUGljazxVcGRhdGVSZXBvc2l0b3J5UGFyYW1zPENhdGVnb3J5SGFzdXJhR3JhcGhRTD4sICdtZXRhZGF0YSc+LFxyXG4gICk6IFByb21pc2U8Q2F0ZWdvcnlNZXRhZGF0YT4ge1xyXG4gICAgY29uc3QgcGxhaW5EYXRhID0gdGhpcy5wYXJhbXNUb1BsYWluKHsgbWV0YWRhdGEgfSlcclxuXHJcbiAgICBpZiAoIXBsYWluRGF0YS5tZXRhZGF0YSkgcmV0dXJuXHJcblxyXG4gICAgYXdhaXQgdGhpcy5tdXRhdGlvbigndXBkYXRlX2NhdGVnb3J5X21ldGFkYXRhX2J5X3BrJywgWydjYXRlZ29yeV9pZCddLCB7XHJcbiAgICAgIHBrX2NvbHVtbnM6IHtcclxuICAgICAgICB2YWx1ZTogeyBjYXRlZ29yeV9pZDogY2F0ZWdvcnlJZCB9LFxyXG4gICAgICAgIHR5cGU6ICdjYXRlZ29yeV9tZXRhZGF0YV9wa19jb2x1bW5zX2lucHV0JyxcclxuICAgICAgICByZXF1aXJlZDogdHJ1ZSxcclxuICAgICAgfSxcclxuICAgICAgX3NldDoge1xyXG4gICAgICAgIHZhbHVlOiBvbWl0KG1ldGFkYXRhLCBbJ2NhdGVnb3J5X2lkJ10pLFxyXG4gICAgICAgIHR5cGU6ICdjYXRlZ29yeV9tZXRhZGF0YV9zZXRfaW5wdXQnLFxyXG4gICAgICAgIHJlcXVpcmVkOiB0cnVlLFxyXG4gICAgICB9LFxyXG4gICAgfSlcclxuXHJcbiAgICByZXR1cm4gcGxhaW5EYXRhLm1ldGFkYXRhXHJcbiAgfVxyXG59XHJcbiJdfQ==
321
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcnktaGFzdXJhLWdyYXBocWwucmVwb3NpdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL2luZnJhL2hhc3VyYS1ncmFwaHFsL3JlcG9zaXRvcmllcy9jYXRhbG9nL2NhdGVnb3J5LWhhc3VyYS1ncmFwaHFsLnJlcG9zaXRvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFDTCxRQUFRLEVBUVIsS0FBSyxHQUNOLE1BQU0sb0JBQW9CLENBQUE7QUFDM0IsT0FBTyxFQUFFLHNCQUFzQixFQUFFLGFBQWEsRUFBRSxNQUFNLG9CQUFvQixDQUFBO0FBQzFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFDOUMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sYUFBYSxDQUFBO0FBQ3JELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQU92RSxNQUFNLE9BQU8sK0JBQ1gsU0FBUSxxQkFBcUIsQ0FBQyxpQkFBaUIsQ0FBd0IsSUFBSSxDQUFDLENBQUM7SUFHN0UsWUFDRSxRQUFnQixFQUNoQixXQUFxQyxFQUNwQixpQkFBaUQsRUFDakQsd0JBQStEO1FBRWhGLEtBQUssQ0FBQztZQUNKLFNBQVMsRUFBRSxVQUFVO1lBQ3JCLEtBQUssRUFBRSxRQUFRO1lBQ2YsUUFBUTtZQUNSLFdBQVc7WUFDWCxNQUFNLEVBQUU7Z0JBQ04sRUFBRSxFQUFFLEVBQUUsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLEVBQUUsRUFBRTtnQkFDdEYsRUFBRSxXQUFXLEVBQUUsRUFBRSxVQUFV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QUFFO29CQUN2QyxJQUFJO3dCQUNGLE1BQU0sU0FBUyxHQUFHLE1BQU0sSUFBSSxDQUFDLHdCQUF3Qjs2QkFDbEQsSUFBSSxDQUFDOzRCQUNKLE9BQU8sRUFBRTtnQ0FDUCxVQUFVO2dDQUNWLFFBQVEsRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRTs2QkFDeEI7eUJBQ0YsQ0FBQzs2QkFDRCxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQTt3QkFFcEMsSUFBSSxTQUFTLEVBQUU7NEJBQ2IsV0FBVyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQTt5QkFDNUI7NkJBQU07NEJBQ0wsTUFBTSxpQkFBaUIsR0FBRyxNQUFNLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxNQUFNLENBQUM7Z0NBQ25FLFFBQVEsRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRTtnQ0FDdkIsVUFBVTs2QkFDWCxDQUFDLENBQUE7NEJBQ0YsV0FBVyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFBO3lCQUNwQztxQkFDRjtvQkFBQyxPQUFPLEtBQUssRUFBRTt3QkFDZCxPQUFPLENBQUMsR0FBRyxDQUFDLGVBQWUsRUFBRSxLQUFLLENBQUMsQ0FBQTtxQkFDcEM7aUJBQ0Y7Z0JBRUQsT0FBTyxXQUFXLENBQUE7YUFDbkI7UUFDSCxDQUFDO0tBQUE7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ2F0ZWdvcnksXHJcbiAgQ2F0ZWdvcnlNZXRhZGF0YSxcclxuICBDYXRlZ29yeVJlcG9zaXRvcnksXHJcbiAgQ3JlYXRlUmVwb3NpdG9yeVBhcmFtcyxcclxuICBHZXRSZXBvc2l0b3J5UGFyYW1zLFxyXG4gIFByb2R1Y3QsXHJcbiAgU2hvcHMsXHJcbiAgVXBkYXRlUmVwb3NpdG9yeVBhcmFtcyxcclxuICBXaGVyZSxcclxufSBmcm9tICcuLi8uLi8uLi8uLi9kb21haW4nXHJcbmltcG9ydCB7IER1cGxpY2F0ZWRSZXN1bHRzRXJyb3IsIE5vdEZvdW5kRXJyb3IgfSBmcm9tICcuLi8uLi8uLi8uLi9lcnJvcnMnXHJcbmltcG9ydCB7IEJhc2UsIG9taXQgfSBmcm9tICcuLi8uLi8uLi8uLi91dGlscydcclxuaW1wb3J0IHsgSGFzdXJhR3JhcGhRTENvbHVtblR5cGUgfSBmcm9tICcuLi8uLi9lbnVtcydcclxuaW1wb3J0IHsgd2l0aENydWRIYXN1cmFHcmFwaFFMLCB3aXRoSGFzdXJhR3JhcGhRTCB9IGZyb20gJy4uLy4uL21peGlucydcclxuaW1wb3J0IHsgQ2F0ZWdvcnlIYXN1cmFHcmFwaFFMIH0gZnJvbSAnLi4vLi4vbW9kZWxzJ1xyXG5pbXBvcnQgeyBIYXN1cmFHcmFwaFFMQXV0aE9wdGlvbnMgfSBmcm9tICcuLi8uLi90eXBlcydcclxuaW1wb3J0IHsgQ2F0ZWdvcnlGaWx0ZXJIYXN1cmFHcmFwaFFMUmVwb3NpdG9yeSB9IGZyb20gJy4vY2F0ZWdvcnktZmlsdGVyLWhhc3VyYS1ncmFwaHFsLnJlcG9zaXRvcnknXHJcblxyXG5pbXBvcnQgeyBQcm9kdWN0SGFzdXJhR3JhcGhRTFJlcG9zaXRvcnkgfSBmcm9tICcuL3Byb2R1Y3QtaGFzdXJhLWdyYXBocWwucmVwb3NpdG9yeSdcclxuXHJcbmV4cG9ydCBjbGFzcyBDYXRlZ29yeUhhc3VyYUdyYXBoUUxSZXBvc2l0b3J5XHJcbiAgZXh0ZW5kcyB3aXRoQ3J1ZEhhc3VyYUdyYXBoUUwod2l0aEhhc3VyYUdyYXBoUUw8Q2F0ZWdvcnlIYXN1cmFHcmFwaFFMPihCYXNlKSlcclxuICBpbXBsZW1lbnRzIENhdGVnb3J5UmVwb3NpdG9yeVxyXG57XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBlbmRwb2ludDogc3RyaW5nLFxyXG4gICAgYXV0aE9wdGlvbnM6IEhhc3VyYUdyYXBoUUxBdXRoT3B0aW9ucyxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgcHJvZHVjdFJlcG9zaXRvcnk6IFByb2R1Y3RIYXN1cmFHcmFwaFFMUmVwb3NpdG9yeSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgY2F0ZWdvcnlGaWx0ZXJSZXBvc2l0b3J5OiBDYXRlZ29yeUZpbHRlckhhc3VyYUdyYXBoUUxSZXBvc2l0b3J5LFxyXG4gICkge1xyXG4gICAgc3VwZXIoe1xyXG4gICAgICB0YWJsZU5hbWU6ICdjYXRlZ29yeScsXHJcbiAgICAgIG1vZGVsOiBDYXRlZ29yeSxcclxuICAgICAgZW5kcG9pbnQsXHJcbiAgICAgIGF1dGhPcHRpb25zLFxyXG4gICAgICBmaWVsZHM6IFtcclxuICAgICAgICB7IGlkOiB7IGNvbHVtbk5hbWU6ICdpZCcsIHRvOiAodmFsdWUpID0+ICt2YWx1ZSwgZnJvbTogKHZhbHVlKSA9PiB2YWx1ZS50b1N0cmluZygpIH0gfSxcclxuICAgICAgICB7IGZpcmVzdG9yZUlkOiB7IGNvbHVtbk5hbWU6ICdmaXJlc3RvcmVfaWQnIH0gfSxcclxuICAgICAgICAnbmFtZScsXHJcbiAgICAgICAgJ2Rlc2NyaXB0aW9uJyxcclxuICAgICAgICAnaW1hZ2UnLFxyXG4gICAgICAgICdwdWJsaXNoZWQnLFxyXG4gICAgICAgICdzaG9wJyxcclxuICAgICAgICAnc2x1ZycsXHJcbiAgICAgICAgeyBicmFuZENhdGVnb3J5OiB7IGNvbHVtbk5hbWU6ICdicmFuZF9jYXRlZ29yeScgfSB9LFxyXG4gICAgICAgIHsgYnJhbmRDYXRlZ29yeUJhbm5lcjogeyBjb2x1bW5OYW1lOiAnYnJhbmRfYmFubmVyJyB9IH0sXHJcbiAgICAgICAgeyBicmFuZENhdGVnb3J5QmFubmVyTW9iaWxlOiB7IGNvbHVtbk5hbWU6ICdicmFuZF9iYW5uZXJfbW9iaWxlJyB9IH0sXHJcbiAgICAgICAgeyBicmFuZExvZ286IHsgY29sdW1uTmFtZTogJ2JyYW5kX2xvZ28nIH0gfSxcclxuICAgICAgICB7IGJyYW5kQ29uZGl0aW9uOiB7IGNvbHVtbk5hbWU6ICdicmFuZF9jb25kaXRpb24nIH0gfSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICBjb25kaXRpb25zOiB7XHJcbiAgICAgICAgICAgIGNvbHVtbk5hbWU6ICd0YWdfY29uZGl0aW9uJyxcclxuICAgICAgICAgICAgdHlwZTogSGFzdXJhR3JhcGhRTENvbHVtblR5cGUuSnNvbmIsXHJcbiAgICAgICAgICAgIGZyb206ICh0YWdzOiB1bmtub3duLCByb3cpID0+ICh7IGJyYW5kOiByb3cuYnJhbmRfY29uZGl0aW9uLCB0YWdzOiBBcnJheS5pc0FycmF5KHRhZ3MpID8gdGFncyA6IFtdIH0pLFxyXG4gICAgICAgICAgICBiaW5kUGVyc2lzdERhdGE6ICh2YWx1ZSkgPT4ge1xyXG4gICAgICAgICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgICAgICBicmFuZF9jb25kaXRpb246IHZhbHVlLmJyYW5kLFxyXG4gICAgICAgICAgICAgICAgdGFnX2NvbmRpdGlvbjogdmFsdWU/LnRhZ3MgfHwgW10sXHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICBiaW5kRmluZEZpbHRlcjogKHNlbnRlbmNlOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICAgICAgLi4uKHNlbnRlbmNlLmJyYW5kID8geyBicmFuZF9jb25kaXRpb246IHNlbnRlbmNlLmJyYW5kIH0gOiB7fSksXHJcbiAgICAgICAgICAgICAgICAuLi4oc2VudGVuY2UudGFncyA/IHsgdGFnX2NvbmRpdGlvbjogc2VudGVuY2UudGFncyB9IDoge30pLFxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgfSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICBmaWx0ZXJzOiB7XHJcbiAgICAgICAgICAgIGNvbHVtbk5hbWU6ICdmaWx0ZXJzJyxcclxuICAgICAgICAgICAgZm9yZWlnbktleUNvbHVtbjogeyBmaWx0ZXJfaWQ6ICdpZCcgfSxcclxuICAgICAgICAgICAgZmllbGRzOiBbeyBmaWx0ZXI6IFsnaWQnLCAnZGVzY3JpcHRpb24nLCAnc2x1ZycsICdlbmFibGVkJ10gfV0sXHJcbiAgICAgICAgICAgIGJpbmRQZXJzaXN0RGF0YTogKHZhbHVlKSA9PiAoe1xyXG4gICAgICAgICAgICAgIGZpbHRlcnM6IHsgZGF0YTogdmFsdWUubWFwKChmaWx0ZXIpID0+ICh7IGZpbHRlcl9pZDogZmlsdGVyLmlkIH0pKSB9LFxyXG4gICAgICAgICAgICB9KSxcclxuICAgICAgICAgICAgZnJvbTogKGZpbHRlcnM6IHsgZmlsdGVyOiB7IGlkOiBudW1iZXI7IGRlc2NyaXB0aW9uOiBzdHJpbmc7IHNsdWc6IHN0cmluZzsgZW5hYmxlZDogYm9vbGVhbiB9IH1bXSkgPT5cclxuICAgICAgICAgICAgICBmaWx0ZXJzPy5tYXAoKGZpbHRlcikgPT4gZmlsdGVyPy5maWx0ZXIpIHx8IFtdLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICB9LFxyXG4gICAgICAgIHsgY3JlYXRlZEF0OiB7IGNvbHVtbk5hbWU6ICdjcmVhdGVkX2F0JyB9IH0sXHJcbiAgICAgICAgeyB1cGRhdGVkQXQ6IHsgY29sdW1uTmFtZTogJ3VwZGF0ZWRfYXQnIH0gfSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICBwcm9kdWN0czoge1xyXG4gICAgICAgICAgICBjb2x1bW5OYW1lOiAncHJvZHVjdHMnLFxyXG4gICAgICAgICAgICBmaWVsZHM6IFsncHJvZHVjdF9pZCddLFxyXG4gICAgICAgICAgICBmcm9tOiAodmFsdWU6IHsgcHJvZHVjdF9pZDogbnVtYmVyIH1bXSkgPT4gdmFsdWUubWFwKChwcm9kdWN0KSA9PiBwcm9kdWN0LnByb2R1Y3RfaWQudG9TdHJpbmcoKSksXHJcbiAgICAgICAgICAgIHRvOiAocHJvZHVjdElkcykgPT5cclxuICAgICAgICAgICAgICBwcm9kdWN0SWRzLm1hcCgocHJvZHVjdElkKSA9PiAoe1xyXG4gICAgICAgICAgICAgICAgcHJvZHVjdF9pZDogK3Byb2R1Y3RJZCxcclxuICAgICAgICAgICAgICB9KSksXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgbWV0YWRhdGE6IHtcclxuICAgICAgICAgICAgY29sdW1uTmFtZTogJ21ldGFkYXRhJyxcclxuICAgICAgICAgICAgZmllbGRzOiBbJ3RpdGxlJywgJ2Rlc2NyaXB0aW9uJ10sXHJcbiAgICAgICAgICAgIGJpbmRQZXJzaXN0RGF0YTogKHZhbHVlKSA9PiAoe1xyXG4gICAgICAgICAgICAgIG1ldGFkYXRhOiB7IGRhdGE6IHZhbHVlIH0sXHJcbiAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICB9LFxyXG4gICAgICBdLFxyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIGFzeW5jIGNyZWF0ZShwYXJhbXM6IENyZWF0ZVJlcG9zaXRvcnlQYXJhbXM8Q2F0ZWdvcnlIYXN1cmFHcmFwaFFMPik6IFByb21pc2U8Q2F0ZWdvcnlIYXN1cmFHcmFwaFFMPiB7XHJcbiAgICBjb25zdCB7IG1ldGFkYXRhLCAuLi5kYXRhIH0gPSBwYXJhbXNcclxuXHJcbiAgICByZXR1cm4gc3VwZXIuY3JlYXRlKHsgLi4uZGF0YSwgbWV0YWRhdGE6IG1ldGFkYXRhIHx8IHsgZGVzY3JpcHRpb246IG51bGwsIHRpdGxlOiBudWxsIH0gfSlcclxuICB9XHJcblxyXG4gIGFzeW5jIGdldChpZGVudGlmaWVyczogR2V0UmVwb3NpdG9yeVBhcmFtczxDYXRlZ29yeUhhc3VyYUdyYXBoUUw+KTogUHJvbWlzZTxDYXRlZ29yeUhhc3VyYUdyYXBoUUw+IHtcclxuICAgIHJldHVybiBOdW1iZXIuaXNOYU4oK2lkZW50aWZpZXJzLmlkKVxyXG4gICAgICA/IChhd2FpdCB0aGlzLmZpbmQoeyBmaWx0ZXJzOiB7IGZpcmVzdG9yZUlkOiBpZGVudGlmaWVycy5pZCB9LCBvcHRpb25zOiB7IGVuYWJsZUNvdW50OiBmYWxzZSB9IH0pKS5kYXRhPy5bMF1cclxuICAgICAgOiBzdXBlci5nZXQoaWRlbnRpZmllcnMpXHJcbiAgfVxyXG5cclxuICBhc3luYyB1cGRhdGUocGFyYW1zOiBVcGRhdGVSZXBvc2l0b3J5UGFyYW1zPENhdGVnb3J5SGFzdXJhR3JhcGhRTD4pOiBQcm9taXNlPENhdGVnb3J5SGFzdXJhR3JhcGhRTD4ge1xyXG4gICAgY29uc3QgeyBwcm9kdWN0cywgaWQ6IGNoZWNrSWQsIG1ldGFkYXRhLCBmaWx0ZXJzLCAuLi5kYXRhIH0gPSBwYXJhbXNcclxuICAgIGNvbnN0IHBsYWluRGF0YSA9IHRoaXMucGFyYW1zVG9QbGFpbih7IGlkOiBjaGVja0lkIH0pXHJcbiAgICBjb25zdCBpZCA9IGF3YWl0IHRoaXMuZ2V0SWQocGxhaW5EYXRhLmlkKVxyXG4gICAgY29uc3QgY2F0ZWdvcnkgPSBhd2FpdCBzdXBlci51cGRhdGUoeyBpZCwgLi4uZGF0YSB9KVxyXG5cclxuICAgIGNhdGVnb3J5LnByb2R1Y3RzID0gcHJvZHVjdHMgJiYgKGF3YWl0IHRoaXMudXBkYXRlUHJvZHVjdHMoK2lkLCB7IHByb2R1Y3RzIH0pKVxyXG4gICAgY2F0ZWdvcnkubWV0YWRhdGEgPSBtZXRhZGF0YSAmJiAoYXdhaXQgdGhpcy51cGRhdGVNZXRhZGF0YSgraWQsIHsgbWV0YWRhdGEgfSkpXHJcbiAgICBjYXRlZ29yeS5maWx0ZXJzID0gZmlsdGVycyAmJiAoYXdhaXQgdGhpcy51cGRhdGVGaWx0ZXJzKCtpZCwgeyBmaWx0ZXJzIH0pKVxyXG5cclxuICAgIHJldHVybiBjYXRlZ29yeVxyXG4gIH1cclxuXHJcbiAgYXN5bmMgZ2V0Q2F0ZWdvcnlCeVNsdWcoc2x1Zzogc3RyaW5nLCBzaG9wOiBTaG9wcyk6IFByb21pc2U8Q2F0ZWdvcnk+IHtcclxuICAgIGlmICghc2x1ZykgcmV0dXJuXHJcblxyXG4gICAgY29uc3QgeyBkYXRhIH0gPSBhd2FpdCB0aGlzLmZpbmQoeyBmaWx0ZXJzOiB7IHNsdWcsIHNob3AsIHB1Ymxpc2hlZDogdHJ1ZSB9LCBvcHRpb25zOiB7IGVuYWJsZUNvdW50OiBmYWxzZSB9IH0pXHJcblxyXG4gICAgaWYgKCFkYXRhLmxlbmd0aCkgdGhyb3cgbmV3IE5vdEZvdW5kRXJyb3IoYENhdGVnb3J5IHdpdGggc2x1ZyAke3NsdWd9IG5vdCBmb3VuZGApXHJcbiAgICBpZiAoZGF0YS5sZW5ndGggPiAxKSB0aHJvdyBuZXcgRHVwbGljYXRlZFJlc3VsdHNFcnJvcignUXVlcnkgcmV0dXJuZWQgZHVwbGljYXRlZCB2YWx1ZXMnKVxyXG5cclxuICAgIHJldHVybiBkYXRhLnNoaWZ0KClcclxuICB9XHJcblxyXG4gIGFzeW5jIGdldENhdGVnb3JpZXNGb3JIb21lKGNhdGVnb3J5SWRzOiBzdHJpbmdbXSwgbGltaXQgPSA0KTogUHJvbWlzZTx7IGNhdGVnb3J5OiBDYXRlZ29yeTsgcHJvZHVjdHM6IFByb2R1Y3RbXSB9W10+IHtcclxuICAgIGlmICghY2F0ZWdvcnlJZHM/Lmxlbmd0aCkgcmV0dXJuIFtdXHJcblxyXG4gICAgY29uc3QgY2F0ZWdvcmllc0ZpcmVzdG9yZSA9IGNhdGVnb3J5SWRzLmZpbHRlcigoY2F0ZWdvcnlJZCkgPT4gTnVtYmVyLmlzTmFOKCtjYXRlZ29yeUlkKSlcclxuICAgIGNvbnN0IGNhdGVnb3JpZXNIYXN1cmEgPSBjYXRlZ29yeUlkcy5maWx0ZXIoKGNhdGVnb3J5SWQpID0+ICtjYXRlZ29yeUlkID4gMClcclxuICAgIGNvbnN0IGNhdGVnb3JpZXMgPSBbXVxyXG5cclxuICAgIGlmIChjYXRlZ29yaWVzRmlyZXN0b3JlLmxlbmd0aClcclxuICAgICAgY2F0ZWdvcmllcy5wdXNoKFxyXG4gICAgICAgIC4uLihhd2FpdCB0aGlzLmZpbmQoe1xyXG4gICAgICAgICAgZmlsdGVyczogeyBmaXJlc3RvcmVJZDogeyBvcGVyYXRvcjogV2hlcmUuSU4sIHZhbHVlOiBjYXRlZ29yaWVzRmlyZXN0b3JlLmZpbHRlcihCb29sZWFuKSB9LCBwdWJsaXNoZWQ6IHRydWUgfSxcclxuICAgICAgICB9KS50aGVuKCh7IGRhdGEgfSkgPT4gZGF0YSkpLFxyXG4gICAgICApXHJcbiAgICBpZiAoY2F0ZWdvcmllc0hhc3VyYS5sZW5ndGgpXHJcbiAgICAgIGNhdGVnb3JpZXMucHVzaChcclxuICAgICAgICAuLi4oYXdhaXQgdGhpcy5maW5kKHtcclxuICAgICAgICAgIGZpbHRlcnM6IHsgaWQ6IHsgb3BlcmF0b3I6IFdoZXJlLklOLCB2YWx1ZTogY2F0ZWdvcmllc0hhc3VyYS5maWx0ZXIoQm9vbGVhbikgfSwgcHVibGlzaGVkOiB0cnVlIH0sXHJcbiAgICAgICAgfSkudGhlbigoeyBkYXRhIH0pID0+IGRhdGEpKSxcclxuICAgICAgKVxyXG5cclxuICAgIGlmICghY2F0ZWdvcmllcy5sZW5ndGgpIHJldHVybiBbXVxyXG5cclxuICAgIGNvbnN0IGhvbWVTZWN0aW9ucyA9IGF3YWl0IFByb21pc2UuYWxsKFxyXG4gICAgICBjYXRlZ29yaWVzLm1hcChhc3luYyAoY2F0ZWdvcnkpID0+ICh7XHJcbiAgICAgICAgY2F0ZWdvcnksXHJcbiAgICAgICAgcHJvZHVjdHM6IGF3YWl0IHRoaXMubW91bnRDYXRlZ29yeShjYXRlZ29yeSwgeyBsaW1pdCwgaGFzU3RvY2s6IHRydWUgfSksXHJcbiAgICAgIH0pKSxcclxuICAgIClcclxuXHJcbiAgICByZXR1cm4gaG9tZVNlY3Rpb25zXHJcbiAgfVxyXG5cclxuICBhc3luYyBtb3VudENhdGVnb3J5KGNhdGVnb3J5OiBDYXRlZ29yeSwgb3B0aW9ucz86IHsgbGltaXQ/OiBudW1iZXI7IGhhc1N0b2NrPzogYm9vbGVhbiB9KTogUHJvbWlzZTxQcm9kdWN0W10+IHtcclxuICAgIGlmICghY2F0ZWdvcnk/LnByb2R1Y3RzPy5sZW5ndGgpIHJldHVybiBbXVxyXG5cclxuICAgIGNvbnN0IHByb2R1Y3RzID0gW11cclxuICAgIGNvbnN0IHsgZGF0YTogcHJvZHVjdHNEYXRhIH0gPSBhd2FpdCB0aGlzLnByb2R1Y3RSZXBvc2l0b3J5LmZpbmQoe1xyXG4gICAgICBmaWx0ZXJzOiB7XHJcbiAgICAgICAgaWQ6IHsgb3BlcmF0b3I6IFdoZXJlLklOLCB2YWx1ZTogY2F0ZWdvcnkucHJvZHVjdHMgfSxcclxuICAgICAgICBwdWJsaXNoZWQ6IHRydWUsXHJcbiAgICAgICAgLi4uKG9wdGlvbnM/Lmhhc1N0b2NrID8geyBzdG9jazogeyBxdWFudGl0eTogeyBvcGVyYXRvcjogV2hlcmUuR1QsIHZhbHVlOiAwIH0gfSB9IDoge30pLFxyXG4gICAgICB9LFxyXG4gICAgICBmaWVsZHM6IFtcclxuICAgICAgICAnaWQnLFxyXG4gICAgICAgICduYW1lJyxcclxuICAgICAgICAnc2x1ZycsXHJcbiAgICAgICAgJ2ltYWdlcycsXHJcbiAgICAgICAgJ21pbmlhdHVyZXMnLFxyXG4gICAgICAgICdwcmljZScsXHJcbiAgICAgICAgJ2Z1bGxQcmljZScsXHJcbiAgICAgICAgJ3N1YnNjcmliZXJEaXNjb3VudFBlcmNlbnRhZ2UnLFxyXG4gICAgICAgICdzdWJzY3JpYmVyUHJpY2UnLFxyXG4gICAgICAgICdzdG9jaycsXHJcbiAgICAgICAgJ3B1Ymxpc2hlZCcsXHJcbiAgICAgICAgJ0NFU1QnLFxyXG4gICAgICAgICdFQU4nLFxyXG4gICAgICAgICdOQ00nLFxyXG4gICAgICAgICdicmFuZCcsXHJcbiAgICAgICAgJ2Nvc3RQcmljZScsXHJcbiAgICAgICAgJ2hhc1ZhcmlhbnRzJyxcclxuICAgICAgICAnaXNLaXQnLFxyXG4gICAgICAgICdza3UnLFxyXG4gICAgICAgICdyYXRlJyxcclxuICAgICAgICAndGFncycsXHJcbiAgICAgICAgJ3R5cGUnLFxyXG4gICAgICAgICdzaG9wcGluZ0NvdW50JyxcclxuICAgICAgXSxcclxuICAgICAgLi4uKG9wdGlvbnM/LmxpbWl0ID8geyBsaW1pdHM6IHsgbGltaXQ6IG9wdGlvbnM/LmxpbWl0IH0gfSA6IHt9KSxcclxuICAgICAgb3B0aW9uczogeyBlbmFibGVDb3VudDogZmFsc2UgfSxcclxuICAgIH0pXHJcblxyXG4gICAgcHJvZHVjdHMucHVzaCguLi5wcm9kdWN0c0RhdGEpXHJcblxyXG4gICAgcmV0dXJuIHByb2R1Y3RzXHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFzeW5jIGdldElkKGlkOiBzdHJpbmcpOiBQcm9taXNlPHN0cmluZz4ge1xyXG4gICAgaWYgKCFOdW1iZXIuaXNOYU4oK2lkKSkgcmV0dXJuIGlkXHJcblxyXG4gICAgY29uc3QgeyBkYXRhIH0gPSBhd2FpdCB0aGlzLmZpbmQoeyBmaWx0ZXJzOiB7IGZpcmVzdG9yZUlkOiBpZCB9LCBvcHRpb25zOiB7IGVuYWJsZUNvdW50OiBmYWxzZSB9IH0pXHJcblxyXG4gICAgaWYgKGRhdGE/LlswXT8uaWQpIHJldHVybiBkYXRhPy5bMF0/LmlkXHJcblxyXG4gICAgdGhyb3cgbmV3IE5vdEZvdW5kRXJyb3IoYENhdGVnb3J5IHdpdGggaWQgJHtpZH0gbm90IGZvdW5kYClcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXN5bmMgdXBkYXRlUHJvZHVjdHMoXHJcbiAgICBjYXRlZ29yeUlkOiBudW1iZXIsXHJcbiAgICB7IHByb2R1Y3RzIH06IFBpY2s8VXBkYXRlUmVwb3NpdG9yeVBhcmFtczxDYXRlZ29yeUhhc3VyYUdyYXBoUUw+LCAncHJvZHVjdHMnPixcclxuICApOiBQcm9taXNlPENhdGVnb3J5SGFzdXJhR3JhcGhRTFsncHJvZHVjdHMnXT4ge1xyXG4gICAgaWYgKCdhY3Rpb24nIGluIHByb2R1Y3RzICYmIHByb2R1Y3RzLmFjdGlvbiA9PT0gJ3JlbW92ZScpIHtcclxuICAgICAgYXdhaXQgdGhpcy5tdXRhdGlvbignZGVsZXRlX2NhdGVnb3J5X3Byb2R1Y3QnLCBbJ2FmZmVjdGVkX3Jvd3MnXSwge1xyXG4gICAgICAgIHdoZXJlOiB7XHJcbiAgICAgICAgICB0eXBlOiAnY2F0ZWdvcnlfcHJvZHVjdF9ib29sX2V4cCcsXHJcbiAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcclxuICAgICAgICAgIHZhbHVlOiB7IGNhdGVnb3J5X2lkOiB7IF9lcTogY2F0ZWdvcnlJZCB9IH0sXHJcbiAgICAgICAgfSxcclxuICAgICAgfSlcclxuXHJcbiAgICAgIHJldHVybiBbXVxyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IHBsYWluRGF0YSA9IHRoaXMucGFyYW1zVG9QbGFpbih7IHByb2R1Y3RzIH0pXHJcblxyXG4gICAgaWYgKCFwbGFpbkRhdGEucHJvZHVjdHMgfHwgcGxhaW5EYXRhLnByb2R1Y3RzLmxlbmd0aCA8PSAwKSByZXR1cm4gW11cclxuXHJcbiAgICBhd2FpdCB0aGlzLm11dGF0aW9uKCdkZWxldGVfY2F0ZWdvcnlfcHJvZHVjdCcsIFsnYWZmZWN0ZWRfcm93cyddLCB7XHJcbiAgICAgIHdoZXJlOiB7XHJcbiAgICAgICAgdHlwZTogJ2NhdGVnb3J5X3Byb2R1Y3RfYm9vbF9leHAnLFxyXG4gICAgICAgIHJlcXVpcmVkOiB0cnVlLFxyXG4gICAgICAgIHZhbHVlOiB7IGNhdGVnb3J5X2lkOiB7IF9lcTogY2F0ZWdvcnlJZCB9IH0sXHJcbiAgICAgIH0sXHJcbiAgICB9KVxyXG5cclxuICAgIGF3YWl0IHRoaXMubXV0YXRpb24oJ2luc2VydF9jYXRlZ29yeV9wcm9kdWN0JywgWydhZmZlY3RlZF9yb3dzJ10sIHtcclxuICAgICAgb2JqZWN0czoge1xyXG4gICAgICAgIHR5cGU6ICdbY2F0ZWdvcnlfcHJvZHVjdF9pbnNlcnRfaW5wdXQhXScsXHJcbiAgICAgICAgcmVxdWlyZWQ6IHRydWUsXHJcbiAgICAgICAgdmFsdWU6IHBsYWluRGF0YS5wcm9kdWN0cy5tYXAoKHByb2R1Y3RJZCkgPT4gKHsgY2F0ZWdvcnlfaWQ6IGNhdGVnb3J5SWQsIHByb2R1Y3RfaWQ6IHByb2R1Y3RJZCB9KSksXHJcbiAgICAgIH0sXHJcbiAgICB9KVxyXG5cclxuICAgIHJldHVybiBwbGFpbkRhdGEucHJvZHVjdHNcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXN5bmMgdXBkYXRlTWV0YWRhdGEoXHJcbiAgICBjYXRlZ29yeUlkOiBudW1iZXIsXHJcbiAgICB7IG1ldGFkYXRhIH06IFBpY2s8VXBkYXRlUmVwb3NpdG9yeVBhcmFtczxDYXRlZ29yeUhhc3VyYUdyYXBoUUw+LCAnbWV0YWRhdGEnPixcclxuICApOiBQcm9taXNlPENhdGVnb3J5TWV0YWRhdGE+IHtcclxuICAgIGNvbnN0IHBsYWluRGF0YSA9IHRoaXMucGFyYW1zVG9QbGFpbih7IG1ldGFkYXRhIH0pXHJcblxyXG4gICAgaWYgKCFwbGFpbkRhdGEubWV0YWRhdGEpIHJldHVyblxyXG5cclxuICAgIGF3YWl0IHRoaXMubXV0YXRpb24oJ3VwZGF0ZV9jYXRlZ29yeV9tZXRhZGF0YV9ieV9waycsIFsnY2F0ZWdvcnlfaWQnXSwge1xyXG4gICAgICBwa19jb2x1bW5zOiB7XHJcbiAgICAgICAgdmFsdWU6IHsgY2F0ZWdvcnlfaWQ6IGNhdGVnb3J5SWQgfSxcclxuICAgICAgICB0eXBlOiAnY2F0ZWdvcnlfbWV0YWRhdGFfcGtfY29sdW1uc19pbnB1dCcsXHJcbiAgICAgICAgcmVxdWlyZWQ6IHRydWUsXHJcbiAgICAgIH0sXHJcbiAgICAgIF9zZXQ6IHtcclxuICAgICAgICB2YWx1ZTogb21pdChtZXRhZGF0YSwgWydjYXRlZ29yeV9pZCddKSxcclxuICAgICAgICB0eXBlOiAnY2F0ZWdvcnlfbWV0YWRhdGFfc2V0X2lucHV0JyxcclxuICAgICAgICByZXF1aXJlZDogdHJ1ZSxcclxuICAgICAgfSxcclxuICAgIH0pXHJcblxyXG4gICAgcmV0dXJuIHBsYWluRGF0YS5tZXRhZGF0YVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBhc3luYyB1cGRhdGVGaWx0ZXJzKFxyXG4gICAgY2F0ZWdvcnlJZDogbnVtYmVyLFxyXG4gICAgeyBmaWx0ZXJzIH06IFBpY2s8VXBkYXRlUmVwb3NpdG9yeVBhcmFtczxDYXRlZ29yeUhhc3VyYUdyYXBoUUw+LCAnZmlsdGVycyc+LFxyXG4gICkge1xyXG4gICAgaWYgKCdhY3Rpb24nIGluIGZpbHRlcnMgJiYgZmlsdGVycy5hY3Rpb24gPT09ICdyZW1vdmUnICYmIGZpbHRlcnMudmFsdWUubGVuZ3RoKSB7XHJcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZmlsdGVycy52YWx1ZS5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgIGF3YWl0IHRoaXMuY2F0ZWdvcnlGaWx0ZXJSZXBvc2l0b3J5LmRlbGV0ZUJ5Q2F0ZWdvcnlBbmRGaWx0ZXIoY2F0ZWdvcnlJZCwgZmlsdGVycy52YWx1ZVtpXS5pZClcclxuICAgICAgfVxyXG5cclxuICAgICAgcmV0dXJuIFtdXHJcbiAgICB9XHJcblxyXG4gICAgaWYgKCdhY3Rpb24nIGluIGZpbHRlcnMgJiYgZmlsdGVycy5hY3Rpb24gPT09ICdtZXJnZScgJiYgZmlsdGVycy52YWx1ZS5sZW5ndGgpIHtcclxuICAgICAgbGV0IGZpbHRlcnNMaXN0ID0gW11cclxuXHJcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZmlsdGVycy52YWx1ZS5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICBjb25zdCBoYXNGaWx0ZXIgPSBhd2FpdCB0aGlzLmNhdGVnb3J5RmlsdGVyUmVwb3NpdG9yeVxyXG4gICAgICAgICAgICAuZmluZCh7XHJcbiAgICAgICAgICAgICAgZmlsdGVyczoge1xyXG4gICAgICAgICAgICAgICAgY2F0ZWdvcnlJZCxcclxuICAgICAgICAgICAgICAgIGZpbHRlcklkOiBmaWx0ZXJzLnZhbHVlW2ldLmlkLFxyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgIC50aGVuKChkYXRhKSA9PiBkYXRhLmRhdGEuc2hpZnQoKSlcclxuXHJcbiAgICAgICAgICBpZiAoaGFzRmlsdGVyKSB7XHJcbiAgICAgICAgICAgIGZpbHRlcnNMaXN0LnB1c2goaGFzRmlsdGVyKVxyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgY29uc3QgbmV3Q2F0ZWdvcnlGaWx0ZXIgPSBhd2FpdCB0aGlzLmNhdGVnb3J5RmlsdGVyUmVwb3NpdG9yeS5jcmVhdGUoe1xyXG4gICAgICAgICAgICAgIGZpbHRlcklkOiBmaWx0ZXJzLnZhbHVlW2ldLmlkLFxyXG4gICAgICAgICAgICAgIGNhdGVnb3J5SWQsXHJcbiAgICAgICAgICAgIH0pXHJcblxyXG4gICAgICAgICAgICBmaWx0ZXJzTGlzdC5wdXNoKG5ld0NhdGVnb3J5RmlsdGVyKVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgICAgICBjb25zb2xlLmxvZygnY2F0Y2ggZXJyb3I6ICcsIGVycm9yKVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgcmV0dXJuIGZpbHRlcnNMaXN0XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKEFycmF5LmlzQXJyYXkoZmlsdGVycykgJiYgZmlsdGVycy5sZW5ndGgpIHtcclxuICAgICAgbGV0IGZpbHRlcnNMaXN0ID0gW11cclxuXHJcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZmlsdGVycy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICBjb25zdCBoYXNGaWx0ZXIgPSBhd2FpdCB0aGlzLmNhdGVnb3J5RmlsdGVyUmVwb3NpdG9yeVxyXG4gICAgICAgICAgICAuZmluZCh7XHJcbiAgICAgICAgICAgICAgZmlsdGVyczoge1xyXG4gICAgICAgICAgICAgICAgY2F0ZWdvcnlJZCxcclxuICAgICAgICAgICAgICAgIGZpbHRlcklkOiBmaWx0ZXJzW2ldLmlkLFxyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgIC50aGVuKChkYXRhKSA9PiBkYXRhLmRhdGEuc2hpZnQoKSlcclxuXHJcbiAgICAgICAgICBpZiAoaGFzRmlsdGVyKSB7XHJcbiAgICAgICAgICAgIGZpbHRlcnNMaXN0LnB1c2goaGFzRmlsdGVyKVxyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgY29uc3QgbmV3Q2F0ZWdvcnlGaWx0ZXIgPSBhd2FpdCB0aGlzLmNhdGVnb3J5RmlsdGVyUmVwb3NpdG9yeS5jcmVhdGUoe1xyXG4gICAgICAgICAgICAgIGZpbHRlcklkOiBmaWx0ZXJzW2ldLmlkLFxyXG4gICAgICAgICAgICAgIGNhdGVnb3J5SWQsXHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgIGZpbHRlcnNMaXN0LnB1c2gobmV3Q2F0ZWdvcnlGaWx0ZXIpXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgICAgICAgIGNvbnNvbGUubG9nKCdjYXRjaCBlcnJvcjogJywgZXJyb3IpXHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICByZXR1cm4gZmlsdGVyc0xpc3RcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,123 @@
1
+ import { __awaiter, __rest } from "tslib";
2
+ import { Filter } from '../../../../domain';
3
+ import { Base } from '../../../../utils';
4
+ import { withCrudHasuraGraphQL, withHasuraGraphQL } from '../../mixins';
5
+ export class FilterHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGraphQL(Base)) {
6
+ constructor(endpoint, authOptions, filterOptionRepository, categoryFilterRepository) {
7
+ super({
8
+ tableName: 'filter',
9
+ model: Filter,
10
+ endpoint,
11
+ authOptions,
12
+ fields: [
13
+ 'id',
14
+ 'description',
15
+ 'slug',
16
+ 'enabled',
17
+ { createdAt: { columnName: 'created_at' } },
18
+ { updatedAt: { columnName: 'updated_at' } },
19
+ {
20
+ options: {
21
+ columnName: 'options',
22
+ foreignKeyColumn: { filterId: 'id' },
23
+ fields: [
24
+ 'id',
25
+ { filterId: { columnName: 'filter_id' } },
26
+ 'description',
27
+ { createdAt: { columnName: 'created_at' } },
28
+ { updatedAt: { columnName: 'updated_at' } },
29
+ ],
30
+ },
31
+ },
32
+ ],
33
+ });
34
+ this.filterOptionRepository = filterOptionRepository;
35
+ this.categoryFilterRepository = categoryFilterRepository;
36
+ }
37
+ update(params) {
38
+ const _super = Object.create(null, {
39
+ update: { get: () => super.update }
40
+ });
41
+ return __awaiter(this, void 0, void 0, function* () {
42
+ const { options } = params, data = __rest(params, ["options"]);
43
+ const filter = yield _super.update.call(this, data);
44
+ filter.options = yield this.updateOptions(+data.id, { options });
45
+ return filter;
46
+ });
47
+ }
48
+ updateOptions(filterId, { options }) {
49
+ return __awaiter(this, void 0, void 0, function* () {
50
+ if (!options)
51
+ return [];
52
+ if ('action' in options && options.action === 'remove' && options.value.length) {
53
+ for (let i = 0; i < options.value.length; i++) {
54
+ yield this.filterOptionRepository.delete({ id: options.value[i].id });
55
+ }
56
+ return [];
57
+ }
58
+ if ('action' in options && options.action === 'merge' && options.value.length) {
59
+ let filterOptions = [];
60
+ for (let i = 0; i < options.value.length; i++) {
61
+ try {
62
+ const hasFilter = yield this.filterOptionRepository.get({ id: options.value[i].id });
63
+ if (hasFilter)
64
+ filterOptions.push(hasFilter);
65
+ }
66
+ catch (error) {
67
+ const newOption = yield this.filterOptionRepository.create(Object.assign(Object.assign({}, options.value[i]), { filterId }));
68
+ filterOptions.push(newOption);
69
+ }
70
+ }
71
+ return filterOptions;
72
+ }
73
+ if (Array.isArray(options) && options.length) {
74
+ let filterOptions = [];
75
+ for (let i = 0; i < options.length; i++) {
76
+ try {
77
+ const hasFilter = yield this.filterOptionRepository.get({ id: options[i].id });
78
+ if (hasFilter)
79
+ filterOptions.push(hasFilter);
80
+ }
81
+ catch (error) {
82
+ const newOption = yield this.filterOptionRepository.create(Object.assign(Object.assign({}, options[i]), { filterId }));
83
+ filterOptions.push(newOption);
84
+ }
85
+ }
86
+ }
87
+ return [];
88
+ });
89
+ }
90
+ delete(params) {
91
+ const _super = Object.create(null, {
92
+ delete: { get: () => super.delete }
93
+ });
94
+ return __awaiter(this, void 0, void 0, function* () {
95
+ const { options } = params, data = __rest(params, ["options"]);
96
+ const categoryFilters = yield this.categoryFilterRepository
97
+ .find({
98
+ filters: {
99
+ filterId: +data.id,
100
+ },
101
+ })
102
+ .then((result) => result.data);
103
+ if (categoryFilters.length)
104
+ throw new Error('Erro: o filtro está associado a uma ou mais categoria(s)');
105
+ yield this.deleteOptions(options);
106
+ yield _super.delete.call(this, { id: +data.id });
107
+ return;
108
+ });
109
+ }
110
+ deleteOptions(options) {
111
+ return __awaiter(this, void 0, void 0, function* () {
112
+ for (let i = 0; i < options.length; i++) {
113
+ try {
114
+ yield this.filterOptionRepository.delete({ id: options[i].id });
115
+ }
116
+ catch (error) {
117
+ console.log(error);
118
+ }
119
+ }
120
+ });
121
+ }
122
+ }
123
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLWhhc3VyYS1ncmFwaHFsLnJlcG9zaXRvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC9yZXBvc2l0b3JpZXMvY2F0YWxvZy9maWx0ZXItaGFzdXJhLWdyYXBocWwucmVwb3NpdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBMEIsTUFBTSxvQkFBb0IsQ0FBQTtBQUVuRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFDeEMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sY0FBYyxDQUFBO0FBS3ZFLE1BQU0sT0FBTyw2QkFDWCxTQUFRLHFCQUFxQixDQUFDLGlCQUFpQixDQUFTLElBQUksQ0FBQyxDQUFDO0lBRzlELFlBQ0UsUUFBZ0IsRUFDaEIsV0FBcUMsRUFDcEIsc0JBQTJELEVBQzNELHdCQUErRDtRQUVoRixLQUFLLENBQUM7WUFDSixTQUFTLEVBQUUsUUFBUTtZQUNuQixLQUFLLEVBQUUsTUFBTTtZQUNiLFFBQVE7WUFDUixXQUFXO1lBQ1gsTUFBTSxFQUFFO2dCQUNOLElBQUk7Z0JBQ0osYUFBYTtnQkFDYixNQUFNO2dCQUNOLFNBQVM7Z0JBQ1QsRUFBRSxTQUFTLEVBQUUsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLEVBQUU7Z0JBQzNDLEVBQUUsU0FBUyxFQUFFLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxFQUFFO2dCQUMzQztvQkFDRSxPQUFPLEVBQUU7d0JBQ1AsVUFBVSxFQUFFLFNBQVM7d0JBQ3JCLGdCQUFnQixFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTt3QkFDcEMsTUFBTSxFQUFFOzRCQUNOLElBQUk7NEJBQ0osRUFBRSxRQUFRLEVBQUUsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLEVBQUU7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QUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtnQkFDdkMsSUFBSTtvQkFDRixNQUFNLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUE7aUJBQ2hFO2dCQUFDLE9BQU8sS0FBSyxFQUFFO29CQUNkLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUE7aUJBQ25CO2FBQ0Y7UUFDSCxDQUFDO0tBQUE7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZpbHRlciwgVXBkYXRlUmVwb3NpdG9yeVBhcmFtcyB9IGZyb20gJy4uLy4uLy4uLy4uL2RvbWFpbidcclxuaW1wb3J0IHsgRmlsdGVyUmVwb3NpdG9yeSB9IGZyb20gJy4uLy4uLy4uLy4uL2RvbWFpbi9jYXRhbG9nL3JlcG9zaXRvcmllcydcclxuaW1wb3J0IHsgQmFzZSB9IGZyb20gJy4uLy4uLy4uLy4uL3V0aWxzJ1xyXG5pbXBvcnQgeyB3aXRoQ3J1ZEhhc3VyYUdyYXBoUUwsIHdpdGhIYXN1cmFHcmFwaFFMIH0gZnJvbSAnLi4vLi4vbWl4aW5zJ1xyXG5pbXBvcnQgeyBIYXN1cmFHcmFwaFFMQXV0aE9wdGlvbnMgfSBmcm9tICcuLi8uLi90eXBlcydcclxuaW1wb3J0IHsgQ2F0ZWdvcnlGaWx0ZXJIYXN1cmFHcmFwaFFMUmVwb3NpdG9yeSB9IGZyb20gJy4vY2F0ZWdvcnktZmlsdGVyLWhhc3VyYS1ncmFwaHFsLnJlcG9zaXRvcnknXHJcbmltcG9ydCB7IEZpbHRlck9wdGlvbkhhc3VyYUdyYXBoUUxSZXBvc2l0b3J5IH0gZnJvbSAnLi9maWx0ZXItb3B0aW9uLWhhc3VyYS1ncmFwaHFsLnJlcG9zaXRvcnknXHJcblxyXG5leHBvcnQgY2xhc3MgRmlsdGVySGFzdXJhR3JhcGhRTFJlcG9zaXRvcnlcclxuICBleHRlbmRzIHdpdGhDcnVkSGFzdXJhR3JhcGhRTCh3aXRoSGFzdXJhR3JhcGhRTDxGaWx0ZXI+KEJhc2UpKVxyXG4gIGltcGxlbWVudHMgRmlsdGVyUmVwb3NpdG9yeVxyXG57XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBlbmRwb2ludDogc3RyaW5nLFxyXG4gICAgYXV0aE9wdGlvbnM6IEhhc3VyYUdyYXBoUUxBdXRoT3B0aW9ucyxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgZmlsdGVyT3B0aW9uUmVwb3NpdG9yeTogRmlsdGVyT3B0aW9uSGFzdXJhR3JhcGhRTFJlcG9zaXRvcnksXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNhdGVnb3J5RmlsdGVyUmVwb3NpdG9yeTogQ2F0ZWdvcnlGaWx0ZXJIYXN1cmFHcmFwaFFMUmVwb3NpdG9yeSxcclxuICApIHtcclxuICAgIHN1cGVyKHtcclxuICAgICAgdGFibGVOYW1lOiAnZmlsdGVyJyxcclxuICAgICAgbW9kZWw6IEZpbHRlcixcclxuICAgICAgZW5kcG9pbnQsXHJcbiAgICAgIGF1dGhPcHRpb25zLFxyXG4gICAgICBmaWVsZHM6IFtcclxuICAgICAgICAnaWQnLFxyXG4gICAgICAgICdkZXNjcmlwdGlvbicsXHJcbiAgICAgICAgJ3NsdWcnLFxyXG4gICAgICAgICdlbmFibGVkJyxcclxuICAgICAgICB7IGNyZWF0ZWRBdDogeyBjb2x1bW5OYW1lOiAnY3JlYXRlZF9hdCcgfSB9LFxyXG4gICAgICAgIHsgdXBkYXRlZEF0OiB7IGNvbHVtbk5hbWU6ICd1cGRhdGVkX2F0JyB9IH0sXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgb3B0aW9uczoge1xyXG4gICAgICAgICAgICBjb2x1bW5OYW1lOiAnb3B0aW9ucycsXHJcbiAgICAgICAgICAgIGZvcmVpZ25LZXlDb2x1bW46IHsgZmlsdGVySWQ6ICdpZCcgfSxcclxuICAgICAgICAgICAgZmllbGRzOiBbXHJcbiAgICAgICAgICAgICAgJ2lkJyxcclxuICAgICAgICAgICAgICB7IGZpbHRlcklkOiB7IGNvbHVtbk5hbWU6ICdmaWx0ZXJfaWQnIH0gfSxcclxuICAgICAgICAgICAgICAnZGVzY3JpcHRpb24nLFxyXG4gICAgICAgICAgICAgIHsgY3JlYXRlZEF0OiB7IGNvbHVtbk5hbWU6ICdjcmVhdGVkX2F0JyB9IH0sXHJcbiAgICAgICAgICAgICAgeyB1cGRhdGVkQXQ6IHsgY29sdW1uTmFtZTogJ3VwZGF0ZWRfYXQnIH0gfSxcclxuICAgICAgICAgICAgXSxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgfSxcclxuICAgICAgXSxcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBhc3luYyB1cGRhdGUocGFyYW1zOiBVcGRhdGVSZXBvc2l0b3J5UGFyYW1zPEZpbHRlcj4pOiBQcm9taXNlPEZpbHRlcj4ge1xyXG4gICAgY29uc3QgeyBvcHRpb25zLCAuLi5kYXRhIH0gPSBwYXJhbXNcclxuXHJcbiAgICBjb25zdCBmaWx0ZXIgPSBhd2FpdCBzdXBlci51cGRhdGUoZGF0YSlcclxuXHJcbiAgICBmaWx0ZXIub3B0aW9ucyA9IGF3YWl0IHRoaXMudXBkYXRlT3B0aW9ucygrZGF0YS5pZCwgeyBvcHRpb25zIH0pXHJcblxyXG4gICAgcmV0dXJuIGZpbHRlclxyXG4gIH1cclxuXHJcbiAgYXN5bmMgdXBkYXRlT3B0aW9ucyhmaWx0ZXJJZDogbnVtYmVyLCB7IG9wdGlvbnMgfTogUGljazxVcGRhdGVSZXBvc2l0b3J5UGFyYW1zPEZpbHRlcj4sICdvcHRpb25zJz4pIHtcclxuICAgIGlmICghb3B0aW9ucykgcmV0dXJuIFtdXHJcblxyXG4gICAgaWYgKCdhY3Rpb24nIGluIG9wdGlvbnMgJiYgb3B0aW9ucy5hY3Rpb24gPT09ICdyZW1vdmUnICYmIG9wdGlvbnMudmFsdWUubGVuZ3RoKSB7XHJcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgb3B0aW9ucy52YWx1ZS5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgIGF3YWl0IHRoaXMuZmlsdGVyT3B0aW9uUmVwb3NpdG9yeS5kZWxldGUoeyBpZDogb3B0aW9ucy52YWx1ZVtpXS5pZCB9KVxyXG4gICAgICB9XHJcblxyXG4gICAgICByZXR1cm4gW11cclxuICAgIH1cclxuXHJcbiAgICBpZiAoJ2FjdGlvbicgaW4gb3B0aW9ucyAmJiBvcHRpb25zLmFjdGlvbiA9PT0gJ21lcmdlJyAmJiBvcHRpb25zLnZhbHVlLmxlbmd0aCkge1xyXG4gICAgICBsZXQgZmlsdGVyT3B0aW9ucyA9IFtdXHJcblxyXG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG9wdGlvbnMudmFsdWUubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgY29uc3QgaGFzRmlsdGVyID0gYXdhaXQgdGhpcy5maWx0ZXJPcHRpb25SZXBvc2l0b3J5LmdldCh7IGlkOiBvcHRpb25zLnZhbHVlW2ldLmlkIH0pXHJcbiAgICAgICAgICBpZiAoaGFzRmlsdGVyKSBmaWx0ZXJPcHRpb25zLnB1c2goaGFzRmlsdGVyKVxyXG4gICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgICAgICBjb25zdCBuZXdPcHRpb24gPSBhd2FpdCB0aGlzLmZpbHRlck9wdGlvblJlcG9zaXRvcnkuY3JlYXRlKHsgLi4ub3B0aW9ucy52YWx1ZVtpXSwgZmlsdGVySWQgfSlcclxuICAgICAgICAgIGZpbHRlck9wdGlvbnMucHVzaChuZXdPcHRpb24pXHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICByZXR1cm4gZmlsdGVyT3B0aW9uc1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChBcnJheS5pc0FycmF5KG9wdGlvbnMpICYmIG9wdGlvbnMubGVuZ3RoKSB7XHJcbiAgICAgIGxldCBmaWx0ZXJPcHRpb25zID0gW11cclxuXHJcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgb3B0aW9ucy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICBjb25zdCBoYXNGaWx0ZXIgPSBhd2FpdCB0aGlzLmZpbHRlck9wdGlvblJlcG9zaXRvcnkuZ2V0KHsgaWQ6IG9wdGlvbnNbaV0uaWQgfSlcclxuICAgICAgICAgIGlmIChoYXNGaWx0ZXIpIGZpbHRlck9wdGlvbnMucHVzaChoYXNGaWx0ZXIpXHJcbiAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgICAgICAgIGNvbnN0IG5ld09wdGlvbiA9IGF3YWl0IHRoaXMuZmlsdGVyT3B0aW9uUmVwb3NpdG9yeS5jcmVhdGUoeyAuLi5vcHRpb25zW2ldLCBmaWx0ZXJJZCB9KVxyXG4gICAgICAgICAgZmlsdGVyT3B0aW9ucy5wdXNoKG5ld09wdGlvbilcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gW11cclxuICB9XHJcblxyXG4gIGFzeW5jIGRlbGV0ZShwYXJhbXM6IFVwZGF0ZVJlcG9zaXRvcnlQYXJhbXM8RmlsdGVyPik6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgY29uc3QgeyBvcHRpb25zLCAuLi5kYXRhIH0gPSBwYXJhbXNcclxuXHJcbiAgICBjb25zdCBjYXRlZ29yeUZpbHRlcnMgPSBhd2FpdCB0aGlzLmNhdGVnb3J5RmlsdGVyUmVwb3NpdG9yeVxyXG4gICAgICAuZmluZCh7XHJcbiAgICAgICAgZmlsdGVyczoge1xyXG4gICAgICAgICAgZmlsdGVySWQ6ICtkYXRhLmlkLFxyXG4gICAgICAgIH0sXHJcbiAgICAgIH0pXHJcbiAgICAgIC50aGVuKChyZXN1bHQpID0+IHJlc3VsdC5kYXRhKVxyXG5cclxuICAgIGlmIChjYXRlZ29yeUZpbHRlcnMubGVuZ3RoKSB0aHJvdyBuZXcgRXJyb3IoJ0Vycm86IG8gZmlsdHJvIGVzdMOhIGFzc29jaWFkbyBhIHVtYSBvdSBtYWlzIGNhdGVnb3JpYShzKScpXHJcblxyXG4gICAgYXdhaXQgdGhpcy5kZWxldGVPcHRpb25zKG9wdGlvbnMpXHJcblxyXG4gICAgYXdhaXQgc3VwZXIuZGVsZXRlKHsgaWQ6ICtkYXRhLmlkIH0pXHJcblxyXG4gICAgcmV0dXJuXHJcbiAgfVxyXG5cclxuICBhc3luYyBkZWxldGVPcHRpb25zKG9wdGlvbnMpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgb3B0aW9ucy5sZW5ndGg7IGkrKykge1xyXG4gICAgICB0cnkge1xyXG4gICAgICAgIGF3YWl0IHRoaXMuZmlsdGVyT3B0aW9uUmVwb3NpdG9yeS5kZWxldGUoeyBpZDogb3B0aW9uc1tpXS5pZCB9KVxyXG4gICAgICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgICAgIGNvbnNvbGUubG9nKGVycm9yKVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,21 @@
1
+ import { FilterOption } from '../../../../domain';
2
+ import { Base } from '../../../../utils';
3
+ import { withCrudHasuraGraphQL, withHasuraGraphQL } from '../../mixins';
4
+ export class FilterOptionHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGraphQL(Base)) {
5
+ constructor(endpoint, authOptions) {
6
+ super({
7
+ tableName: 'filter_option',
8
+ model: FilterOption,
9
+ endpoint,
10
+ authOptions,
11
+ fields: [
12
+ 'id',
13
+ 'description',
14
+ { filterId: { columnName: 'filter_id' } },
15
+ { createdAt: { columnName: 'created_at' } },
16
+ { updatedAt: { columnName: 'updated_at' } },
17
+ ],
18
+ });
19
+ }
20
+ }
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLW9wdGlvbi1oYXN1cmEtZ3JhcGhxbC5yZXBvc2l0b3J5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC9zcmMvaW5mcmEvaGFzdXJhLWdyYXBocWwvcmVwb3NpdG9yaWVzL2NhdGFsb2cvZmlsdGVyLW9wdGlvbi1oYXN1cmEtZ3JhcGhxbC5yZXBvc2l0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTtBQUVqRCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFDeEMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sY0FBYyxDQUFBO0FBR3ZFLE1BQU0sT0FBTyxtQ0FDWCxTQUFRLHFCQUFxQixDQUFDLGlCQUFpQixDQUFlLElBQUksQ0FBQyxDQUFDO0lBR3BFLFlBQVksUUFBZ0IsRUFBRSxXQUFxQztRQUNqRSxLQUFLLENBQUM7WUFDSixTQUFTLEVBQUUsZUFBZTtZQUMxQixLQUFLLEVBQUUsWUFBWTtZQUNuQixRQUFRO1lBQ1IsV0FBVztZQUNYLE1BQU0sRUFBRTtnQkFDTixJQUFJO2dCQUNKLGFBQWE7Z0JBQ2IsRUFBRSxRQUFRLEVBQUUsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLEVBQUU7Z0JBQ3pDLEVBQUUsU0FBUyxFQUFFLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxFQUFFO2dCQUMzQyxFQUFFLFNBQVMsRUFBRSxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsRUFBRTthQUM1QztTQUNGLENBQUMsQ0FBQTtJQUNKLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZpbHRlck9wdGlvbiB9IGZyb20gJy4uLy4uLy4uLy4uL2RvbWFpbidcclxuaW1wb3J0IHsgRmlsdGVyT3B0aW9uUmVwb3NpdG9yeSB9IGZyb20gJy4uLy4uLy4uLy4uL2RvbWFpbi9jYXRhbG9nL3JlcG9zaXRvcmllcydcclxuaW1wb3J0IHsgQmFzZSB9IGZyb20gJy4uLy4uLy4uLy4uL3V0aWxzJ1xyXG5pbXBvcnQgeyB3aXRoQ3J1ZEhhc3VyYUdyYXBoUUwsIHdpdGhIYXN1cmFHcmFwaFFMIH0gZnJvbSAnLi4vLi4vbWl4aW5zJ1xyXG5pbXBvcnQgeyBIYXN1cmFHcmFwaFFMQXV0aE9wdGlvbnMgfSBmcm9tICcuLi8uLi90eXBlcydcclxuXHJcbmV4cG9ydCBjbGFzcyBGaWx0ZXJPcHRpb25IYXN1cmFHcmFwaFFMUmVwb3NpdG9yeVxyXG4gIGV4dGVuZHMgd2l0aENydWRIYXN1cmFHcmFwaFFMKHdpdGhIYXN1cmFHcmFwaFFMPEZpbHRlck9wdGlvbj4oQmFzZSkpXHJcbiAgaW1wbGVtZW50cyBGaWx0ZXJPcHRpb25SZXBvc2l0b3J5XHJcbntcclxuICBjb25zdHJ1Y3RvcihlbmRwb2ludDogc3RyaW5nLCBhdXRoT3B0aW9uczogSGFzdXJhR3JhcGhRTEF1dGhPcHRpb25zKSB7XHJcbiAgICBzdXBlcih7XHJcbiAgICAgIHRhYmxlTmFtZTogJ2ZpbHRlcl9vcHRpb24nLFxyXG4gICAgICBtb2RlbDogRmlsdGVyT3B0aW9uLFxyXG4gICAgICBlbmRwb2ludCxcclxuICAgICAgYXV0aE9wdGlvbnMsXHJcbiAgICAgIGZpZWxkczogW1xyXG4gICAgICAgICdpZCcsXHJcbiAgICAgICAgJ2Rlc2NyaXB0aW9uJyxcclxuICAgICAgICB7IGZpbHRlcklkOiB7IGNvbHVtbk5hbWU6ICdmaWx0ZXJfaWQnIH0gfSxcclxuICAgICAgICB7IGNyZWF0ZWRBdDogeyBjb2x1bW5OYW1lOiAnY3JlYXRlZF9hdCcgfSB9LFxyXG4gICAgICAgIHsgdXBkYXRlZEF0OiB7IGNvbHVtbk5hbWU6ICd1cGRhdGVkX2F0JyB9IH0sXHJcbiAgICAgIF0sXHJcbiAgICB9KVxyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,4 +1,7 @@
1
+ export * from './category-filter-hasura-graphql.repository';
1
2
  export * from './category-hasura-graphql.repository';
3
+ export * from './filter-hasura-graphql.repository';
4
+ export * from './filter-option-hasura-graphql.repository';
2
5
  export * from './product-hasura-graphql.repository';
3
6
  export * from './variant-hasura-graphql.repository';
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC9yZXBvc2l0b3JpZXMvY2F0YWxvZy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHNDQUFzQyxDQUFBO0FBQ3BELGNBQWMscUNBQXFDLENBQUE7QUFDbkQsY0FBYyxxQ0FBcUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY2F0ZWdvcnktaGFzdXJhLWdyYXBocWwucmVwb3NpdG9yeSdcclxuZXhwb3J0ICogZnJvbSAnLi9wcm9kdWN0LWhhc3VyYS1ncmFwaHFsLnJlcG9zaXRvcnknXHJcbmV4cG9ydCAqIGZyb20gJy4vdmFyaWFudC1oYXN1cmEtZ3JhcGhxbC5yZXBvc2l0b3J5J1xyXG4iXX0=
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC9yZXBvc2l0b3JpZXMvY2F0YWxvZy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDZDQUE2QyxDQUFBO0FBQzNELGNBQWMsc0NBQXNDLENBQUE7QUFDcEQsY0FBYyxvQ0FBb0MsQ0FBQTtBQUNsRCxjQUFjLDJDQUEyQyxDQUFBO0FBQ3pELGNBQWMscUNBQXFDLENBQUE7QUFDbkQsY0FBYyxxQ0FBcUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY2F0ZWdvcnktZmlsdGVyLWhhc3VyYS1ncmFwaHFsLnJlcG9zaXRvcnknXHJcbmV4cG9ydCAqIGZyb20gJy4vY2F0ZWdvcnktaGFzdXJhLWdyYXBocWwucmVwb3NpdG9yeSdcclxuZXhwb3J0ICogZnJvbSAnLi9maWx0ZXItaGFzdXJhLWdyYXBocWwucmVwb3NpdG9yeSdcclxuZXhwb3J0ICogZnJvbSAnLi9maWx0ZXItb3B0aW9uLWhhc3VyYS1ncmFwaHFsLnJlcG9zaXRvcnknXHJcbmV4cG9ydCAqIGZyb20gJy4vcHJvZHVjdC1oYXN1cmEtZ3JhcGhxbC5yZXBvc2l0b3J5J1xyXG5leHBvcnQgKiBmcm9tICcuL3ZhcmlhbnQtaGFzdXJhLWdyYXBocWwucmVwb3NpdG9yeSdcclxuIl19