@infrab4a/connect 4.0.0-beta.25 → 4.0.0-beta.27

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 (152) hide show
  1. package/domain/catalog/helpers/RoundProdutcPriceHelper.d.ts +4 -0
  2. package/domain/catalog/helpers/index.d.ts +1 -0
  3. package/domain/catalog/index.d.ts +1 -0
  4. package/domain/catalog/models/category-collection-children.d.ts +13 -0
  5. package/domain/catalog/models/category-filter.d.ts +1 -1
  6. package/domain/catalog/models/category.d.ts +3 -3
  7. package/domain/catalog/models/filter-option.d.ts +1 -2
  8. package/domain/catalog/models/filter.d.ts +1 -2
  9. package/domain/catalog/models/index.d.ts +1 -0
  10. package/domain/catalog/models/kit-product.d.ts +1 -1
  11. package/domain/catalog/models/product.d.ts +1 -2
  12. package/domain/catalog/models/types/category-product.d.ts +4 -0
  13. package/domain/catalog/models/types/index.d.ts +1 -0
  14. package/domain/catalog/models/variant.d.ts +1 -2
  15. package/domain/catalog/repositories/category-collection-children.repository.d.ts +4 -0
  16. package/domain/catalog/repositories/category.repository.d.ts +1 -0
  17. package/domain/catalog/repositories/index.d.ts +1 -0
  18. package/domain/generic/model/base.model.d.ts +9 -5
  19. package/domain/generic/model/types/base-model-builder.type.d.ts +4 -2
  20. package/domain/generic/model/types/identifier-model.type.d.ts +6 -5
  21. package/domain/generic/model/types/model-base-structure.type.d.ts +9 -3
  22. package/domain/generic/model/types/non-function-property-name.type.d.ts +12 -3
  23. package/domain/generic/repository/get.repository.d.ts +2 -2
  24. package/domain/generic/repository/types/repository-find-filters.type.d.ts +3 -3
  25. package/domain/generic/repository/types/repository-order-by-list.type.d.ts +2 -2
  26. package/domain/generic/repository/types/repository-update-params.type.d.ts +2 -2
  27. package/domain/location/models/address.d.ts +5 -3
  28. package/domain/shopping/models/checkout.d.ts +5 -6
  29. package/domain/shopping/models/subscription/checkout.d.ts +3 -4
  30. package/domain/users/models/subscription/subscription.d.ts +3 -3
  31. package/domain/users/models/user-address.d.ts +1 -2
  32. package/domain/users/models/user.d.ts +2 -3
  33. package/esm2020/domain/catalog/helpers/RoundProdutcPriceHelper.mjs +15 -0
  34. package/esm2020/domain/catalog/helpers/index.mjs +2 -0
  35. package/esm2020/domain/catalog/index.mjs +2 -1
  36. package/esm2020/domain/catalog/models/category-collection-children.mjs +13 -0
  37. package/esm2020/domain/catalog/models/category-filter.mjs +1 -1
  38. package/esm2020/domain/catalog/models/category.mjs +1 -4
  39. package/esm2020/domain/catalog/models/filter-option.mjs +1 -4
  40. package/esm2020/domain/catalog/models/filter.mjs +1 -4
  41. package/esm2020/domain/catalog/models/index.mjs +2 -1
  42. package/esm2020/domain/catalog/models/kit-product.mjs +2 -2
  43. package/esm2020/domain/catalog/models/product.mjs +1 -4
  44. package/esm2020/domain/catalog/models/types/category-product.mjs +2 -0
  45. package/esm2020/domain/catalog/models/types/index.mjs +2 -1
  46. package/esm2020/domain/catalog/models/variant.mjs +1 -4
  47. package/esm2020/domain/catalog/repositories/category-collection-children.repository.mjs +2 -0
  48. package/esm2020/domain/catalog/repositories/category.repository.mjs +1 -1
  49. package/esm2020/domain/catalog/repositories/index.mjs +2 -1
  50. package/esm2020/domain/generic/model/base.model.mjs +3 -2
  51. package/esm2020/domain/generic/model/types/base-model-builder.type.mjs +1 -1
  52. package/esm2020/domain/generic/model/types/identifier-model.type.mjs +1 -1
  53. package/esm2020/domain/generic/model/types/model-base-structure.type.mjs +1 -1
  54. package/esm2020/domain/generic/model/types/non-function-property-name.type.mjs +1 -1
  55. package/esm2020/domain/generic/repository/get.repository.mjs +1 -1
  56. package/esm2020/domain/generic/repository/types/repository-find-filters.type.mjs +1 -1
  57. package/esm2020/domain/generic/repository/types/repository-order-by-list.type.mjs +1 -1
  58. package/esm2020/domain/generic/repository/types/repository-update-params.type.mjs +1 -1
  59. package/esm2020/domain/location/models/address.mjs +2 -2
  60. package/esm2020/domain/shopping/models/checkout.mjs +6 -7
  61. package/esm2020/domain/shopping/models/order.mjs +1 -1
  62. package/esm2020/domain/shopping/models/subscription/checkout.mjs +6 -6
  63. package/esm2020/domain/users/models/subscription/subscription.mjs +6 -6
  64. package/esm2020/domain/users/models/user-address.mjs +1 -1
  65. package/esm2020/domain/users/models/user.mjs +3 -3
  66. package/esm2020/domain/users/use-cases/authentication.mjs +2 -2
  67. package/esm2020/infra/elasticsearch/adapters/axios.adapter.mjs +1 -1
  68. package/esm2020/infra/firebase/firestore/mixins/with-create-firestore.mixin.mjs +2 -2
  69. package/esm2020/infra/firebase/firestore/mixins/with-crud-firestore.mixin.mjs +1 -1
  70. package/esm2020/infra/firebase/firestore/mixins/with-delete-firestore.mixin.mjs +1 -1
  71. package/esm2020/infra/firebase/firestore/mixins/with-find-firestore.mixin.mjs +3 -3
  72. package/esm2020/infra/firebase/firestore/mixins/with-firestore.mixin.mjs +1 -1
  73. package/esm2020/infra/firebase/firestore/mixins/with-get-firestore.mixin.mjs +1 -1
  74. package/esm2020/infra/firebase/firestore/mixins/with-helpers.mixin.mjs +1 -1
  75. package/esm2020/infra/firebase/firestore/mixins/with-sub-collection.mixin.mjs +1 -1
  76. package/esm2020/infra/firebase/firestore/mixins/with-update-firestore.mixin.mjs +1 -1
  77. package/esm2020/infra/firebase/firestore/repositories/catalog/category-firestore.repository.mjs +4 -1
  78. package/esm2020/infra/firebase/firestore/types/firestore-sub.repository.type.mjs +1 -1
  79. package/esm2020/infra/firebase/firestore/types/firestore.helpers.type.mjs +1 -1
  80. package/esm2020/infra/firebase/firestore/types/firestore.repository.type.mjs +1 -1
  81. package/esm2020/infra/hasura-graphql/mixins/helpers/attribute-option.helper.mjs +1 -1
  82. package/esm2020/infra/hasura-graphql/mixins/helpers/bind-filter-query.helper.mjs +5 -4
  83. package/esm2020/infra/hasura-graphql/mixins/helpers/filter-option.helper.mjs +1 -1
  84. package/esm2020/infra/hasura-graphql/mixins/helpers/graphql-field.helper.mjs +25 -20
  85. package/esm2020/infra/hasura-graphql/mixins/with-create-hasura-graphql.mixin.mjs +5 -3
  86. package/esm2020/infra/hasura-graphql/mixins/with-crud-hasura-graphql.mixin.mjs +1 -1
  87. package/esm2020/infra/hasura-graphql/mixins/with-delete-hasura-graphql.mixin.mjs +5 -3
  88. package/esm2020/infra/hasura-graphql/mixins/with-find-hasura-graphql.mixin.mjs +21 -4
  89. package/esm2020/infra/hasura-graphql/mixins/with-get-hasura-graphql.mixin.mjs +5 -3
  90. package/esm2020/infra/hasura-graphql/mixins/with-hasura-graphql.mixin.mjs +12 -5
  91. package/esm2020/infra/hasura-graphql/mixins/with-update-hasura-graphql.mixin.mjs +7 -5
  92. package/esm2020/infra/hasura-graphql/repositories/catalog/category-collection-children-hasura-graphql.repository.mjs +38 -0
  93. package/esm2020/infra/hasura-graphql/repositories/catalog/category-hasura-graphql.repository.mjs +26 -2
  94. package/esm2020/infra/hasura-graphql/repositories/catalog/index.mjs +2 -1
  95. package/esm2020/infra/hasura-graphql/repositories/catalog/product-hasura-graphql.repository.mjs +3 -2
  96. package/esm2020/infra/hasura-graphql/types/graphql.repository.type.mjs +1 -1
  97. package/esm2020/infra/hasura-graphql/types/hasura-graphql-fields.type.mjs +1 -1
  98. package/esm2020/utils/decorators/debug.class.decorator.mjs +7 -0
  99. package/esm2020/utils/decorators/index.mjs +3 -0
  100. package/esm2020/utils/decorators/trace.method.decorator.mjs +81 -0
  101. package/esm2020/utils/helpers/class-name.helper.mjs +15 -0
  102. package/esm2020/utils/helpers/debug-decorator.helper.mjs +18 -0
  103. package/esm2020/utils/helpers/debug.helper.mjs +150 -0
  104. package/esm2020/utils/helpers/index.mjs +5 -0
  105. package/esm2020/utils/helpers/reflect.helper.mjs +165 -0
  106. package/esm2020/utils/index.mjs +4 -1
  107. package/esm2020/utils/log.utils.mjs +9 -0
  108. package/fesm2015/infrab4a-connect.mjs +620 -78
  109. package/fesm2015/infrab4a-connect.mjs.map +1 -1
  110. package/fesm2020/infrab4a-connect.mjs +622 -78
  111. package/fesm2020/infrab4a-connect.mjs.map +1 -1
  112. package/infra/elasticsearch/adapters/axios.adapter.d.ts +2 -2
  113. package/infra/firebase/firestore/mixins/with-create-firestore.mixin.d.ts +2 -2
  114. package/infra/firebase/firestore/mixins/with-crud-firestore.mixin.d.ts +1 -1
  115. package/infra/firebase/firestore/mixins/with-delete-firestore.mixin.d.ts +2 -2
  116. package/infra/firebase/firestore/mixins/with-find-firestore.mixin.d.ts +2 -2
  117. package/infra/firebase/firestore/mixins/with-firestore.mixin.d.ts +2 -2
  118. package/infra/firebase/firestore/mixins/with-get-firestore.mixin.d.ts +2 -2
  119. package/infra/firebase/firestore/mixins/with-helpers.mixin.d.ts +2 -2
  120. package/infra/firebase/firestore/mixins/with-sub-collection.mixin.d.ts +2 -2
  121. package/infra/firebase/firestore/mixins/with-update-firestore.mixin.d.ts +3 -3
  122. package/infra/firebase/firestore/repositories/catalog/category-firestore.repository.d.ts +1 -0
  123. package/infra/firebase/firestore/types/firestore-sub.repository.type.d.ts +3 -3
  124. package/infra/firebase/firestore/types/firestore.helpers.type.d.ts +5 -5
  125. package/infra/firebase/firestore/types/firestore.repository.type.d.ts +1 -1
  126. package/infra/hasura-graphql/mixins/helpers/attribute-option.helper.d.ts +9 -3
  127. package/infra/hasura-graphql/mixins/helpers/bind-filter-query.helper.d.ts +5 -5
  128. package/infra/hasura-graphql/mixins/helpers/filter-option.helper.d.ts +4 -2
  129. package/infra/hasura-graphql/mixins/helpers/graphql-field.helper.d.ts +8 -5
  130. package/infra/hasura-graphql/mixins/with-create-hasura-graphql.mixin.d.ts +2 -1
  131. package/infra/hasura-graphql/mixins/with-crud-hasura-graphql.mixin.d.ts +1 -1
  132. package/infra/hasura-graphql/mixins/with-delete-hasura-graphql.mixin.d.ts +1 -1
  133. package/infra/hasura-graphql/mixins/with-find-hasura-graphql.mixin.d.ts +11 -9
  134. package/infra/hasura-graphql/mixins/with-get-hasura-graphql.mixin.d.ts +7 -6
  135. package/infra/hasura-graphql/mixins/with-hasura-graphql.mixin.d.ts +2 -2
  136. package/infra/hasura-graphql/mixins/with-update-hasura-graphql.mixin.d.ts +2 -2
  137. package/infra/hasura-graphql/repositories/catalog/category-collection-children-hasura-graphql.repository.d.ts +10 -0
  138. package/infra/hasura-graphql/repositories/catalog/category-hasura-graphql.repository.d.ts +1 -0
  139. package/infra/hasura-graphql/repositories/catalog/index.d.ts +1 -0
  140. package/infra/hasura-graphql/types/graphql.repository.type.d.ts +7 -5
  141. package/infra/hasura-graphql/types/hasura-graphql-fields.type.d.ts +7 -3
  142. package/package.json +2 -1
  143. package/utils/decorators/debug.class.decorator.d.ts +2 -0
  144. package/utils/decorators/index.d.ts +2 -0
  145. package/utils/decorators/trace.method.decorator.d.ts +14 -0
  146. package/utils/helpers/class-name.helper.d.ts +3 -0
  147. package/utils/helpers/debug-decorator.helper.d.ts +9 -0
  148. package/utils/helpers/debug.helper.d.ts +60 -0
  149. package/utils/helpers/index.d.ts +4 -0
  150. package/utils/helpers/reflect.helper.d.ts +50 -0
  151. package/utils/index.d.ts +3 -0
  152. package/utils/log.utils.d.ts +7 -0
@@ -13,28 +13,14 @@ GraphQLFieldHelper.ConvertModelFieldsToGraphQLFields = (fields) => {
13
13
  if (field === 'affected_rows')
14
14
  return field;
15
15
  const fieldName = Object.keys(field).shift();
16
- const fieldValue = field[fieldName];
16
+ const fieldValue = is(field[fieldName]);
17
17
  if (Array.isArray(fieldValue))
18
18
  return { [fieldName]: GraphQLFieldHelper.ConvertModelFieldsToGraphQLFields(fieldValue) };
19
19
  if (!AttributeOptionHelper.CheckIsColumnOption(fieldValue))
20
- return null;
21
- if (fieldValue.fields)
22
- return !fieldValue.filters
23
- ? {
24
- [fieldValue.columnName || fieldName]: GraphQLFieldHelper.ConvertModelFieldsToGraphQLFields(fieldValue.fields),
25
- }
26
- : {
27
- operation: fieldValue.columnName || fieldName,
28
- fields: GraphQLFieldHelper.ConvertModelFieldsToGraphQLFields(fieldValue.fields),
29
- variables: {
30
- [`${fieldValue.columnName}_where`]: {
31
- name: 'where',
32
- type: fieldValue.filters.filterType,
33
- value: BindFilterQueryHelper.MakeGraphQLWhere(fieldValue.filters.filters, fieldValue.fields),
34
- required: true,
35
- },
36
- },
37
- };
20
+ return;
21
+ const isNestedField = !!fieldValue.fields;
22
+ if (isNestedField)
23
+ return GraphQLFieldHelper.ConvertNestedFieldsToGraphQLFields(fieldName, fieldValue);
38
24
  return fieldValue.columnName;
39
25
  })
40
26
  .filter((field) => !!field);
@@ -117,4 +103,23 @@ GraphQLFieldHelper.ConvertFieldValueTo = (instance, fields, update = false) => {
117
103
  return { ...result, [columnName]: data[attributeName] };
118
104
  }, {});
119
105
  };
120
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JhcGhxbC1maWVsZC5oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC9taXhpbnMvaGVscGVycy9ncmFwaHFsLWZpZWxkLmhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxHQUlWLE1BQU0sb0JBQW9CLENBQUE7QUFDM0IsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBR2pHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJCQUEyQixDQUFBO0FBQ2pFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRCQUE0QixDQUFBO0FBRWxFLE1BQU0sT0FBTyxrQkFBa0I7O0FBQ3RCLHVDQUFvQixHQUFHLENBQzVCLE1BQXVDLEVBQ0wsRUFBRSxDQUNwQyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLE1BQU0sQ0FBQyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFBO0FBRXBGLG9EQUFpQyxHQUFHLENBQ3pDLE1BQWtDLEVBQzFCLEVBQUU7SUFDVixPQUFPLE1BQU07UUFDWCxFQUFFLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1FBQ2QsSUFBSSxRQUFRLENBQUMsS0FBSyxDQUFDO1lBQUUsT0FBTyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUE7UUFDNUMsSUFBSSxLQUFLLEtBQUssZUFBZTtZQUFFLE9BQU8sS0FBSyxDQUFBO1FBRTNDLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxD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SyxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUU7Z0JBQ3RCLENBQUMsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLGFBQXlELENBQUMsRUFBRSxRQUFRLENBQUM7Z0JBQ25GLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBeUQsQ0FBQyxDQUFBO1lBRXJFLE9BQU87Z0JBQ0wsR0FBRyxNQUFNO2dCQUNULEdBQUcsQ0FBQyxTQUFTLEtBQUssU0FBUztvQkFDekIsQ0FBQyxDQUFDO3dCQUNFLENBQUMsVUFBVSxDQUFDLEVBQUU7NEJBQ1osSUFBSSxFQUNGLFFBQVEsQ0FBQyxhQUE2RCxDQUFDLFlBQVksU0FBUztnQ0FDMUYsQ0FBQyxDQUFDLGtCQUFrQixDQUFDLG1CQUFtQixDQUNwQyxJQUFJLENBQUMsYUFBeUQsQ0FBQyxFQUMvRCxlQUE2QyxDQUM5QztnQ0FDSCxDQUFDLENBQUMsU0FBUzt5QkFDaEI7cUJBQ0Y7b0JBQ0gsQ0FBQyxDQUFDLEVBQUUsQ0FBQzthQUNSLENBQUE7U0FDRjtRQUVELElBQUksQ0FBQyxDQUFDLEVBQUU7WUFDTixPQUFPO2dCQUNMLEdBQUcsTUFBTTtnQkFDVCxDQUFDLFVBQVUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsYUFBeUQsQ0FBQyxFQUFFLFFBQVEsQ0FBQzthQUNoRyxDQUFBO1FBRUgsT0FBTyxFQUFFLEdBQUcsTUFBTSxFQUFFLENBQUMsVUFBVSxDQUFDLEVBQUUsSUFBSSxDQUFDLGFBQXlELENBQUMsRUFBRSxDQUFBO0lBQ3JHLENBQUMsRUFBRSxFQUFjLENBQUMsQ0FBQTtBQUNwQixDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBCYXNlTW9kZWwsXG4gIE1vZGVsQmFzZVN0cnVjdHVyZSxcbiAgTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lcyxcbiAgTm9uRnVuY3Rpb25Qcm9wZXJ0aWVzLFxufSBmcm9tICcuLi8uLi8uLi8uLi9kb21haW4nXG5pbXBvcnQgeyBpcywgaXNEYXRlLCBpc0VtcHR5LCBpc05pbCwgaXNPYmplY3QsIGlzU3RyaW5nLCBwYXJzZURhdGVUaW1lIH0gZnJvbSAnLi4vLi4vLi4vLi4vdXRpbHMnXG5pbXBvcnQgeyBGaWVsZHMsIEdyYXBoUUxQYXJhbXMsIEhhc3VyYUdyYXBoUUxGaWVsZHMgfSBmcm9tICcuLi8uLi90eXBlcydcblxuaW1wb3J0IHsgQXR0cmlidXRlT3B0aW9uSGVscGVyIH0gZnJvbSAnLi9hdHRyaWJ1dGUtb3B0aW9uLmhlbHBlcidcbmltcG9ydCB7IEJpbmRGaWx0ZXJRdWVyeUhlbHBlciB9IGZyb20gJy4vYmluZC1maWx0ZXItcXVlcnkuaGVscGVyJ1xuXG5leHBvcnQgY2xhc3MgR3JhcGhRTEZpZWxkSGVscGVyIHtcbiAgc3RhdGljIENoZWNrSXNHcmFwaFFMUGFyYW1zID0gPE1vZGVsIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlPihcbiAgICBwYXJhbXM6IHN0cmluZyB8IEdyYXBoUUxQYXJhbXM8TW9kZWw+W10sXG4gICk6IHBhcmFtcyBpcyBHcmFwaFFMUGFyYW1zPE1vZGVsPltdID0+XG4gICAgIWlzU3RyaW5nKHBhcmFtcykgJiYgQXJyYXkuaXNBcnJheShwYXJhbXMpICYmIHBhcmFtcy5sZW5ndGggPj0gMCAmJiAhIXBhcmFtc1swXS5vcGVyYXRpb25cblxuICBzdGF0aWMgQ29udmVydE1vZGVsRmllbGRzVG9HcmFwaFFMRmllbGRzID0gPE1vZGVsIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlPihcbiAgICBmaWVsZHM6IEhhc3VyYUdyYXBoUUxGaWVsZHM8TW9kZWw+LFxuICApOiBGaWVsZHMgPT4ge1xuICAgIHJldHVybiBmaWVsZHNcbiAgICAgID8ubWFwKChmaWVsZCkgPT4ge1xuICAgICAgICBpZiAoaXNTdHJpbmcoZmllbGQpKSByZXR1cm4gZmllbGQudG9TdHJpbmcoKVxuICAgICAgICBpZiAoZmllbGQgPT09ICdhZmZlY3RlZF9yb3dzJykgcmV0dXJuIGZpZWxkXG5cbiAgICAgICAgY29uc3QgZmllbGROYW1lID0gT2JqZWN0LmtleXMoZmllbGQpLnNoaWZ0KClcbiAgICAgICAgY29uc3QgZmllbGRWYWx1ZSA9IGZpZWxkW2ZpZWxkTmFtZSBhcyBrZXlvZiB0eXBlb2YgZmllbGRdXG5cbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoZmllbGRWYWx1ZSkpXG4gICAgICAgICAgcmV0dXJuIHsgW2ZpZWxkTmFtZV06IEdyYXBoUUxGaWVsZEhlbHBlci5Db252ZXJ0TW9kZWxGaWVsZHNUb0dyYXBoUUxGaWVsZHMoZmllbGRWYWx1ZSkgfVxuICAgICAgICBpZiAoIUF0dHJpYnV0ZU9wdGlvbkhlbHBlci5DaGVja0lzQ29sdW1uT3B0aW9uKGZpZWxkVmFsdWUpKSByZXR1cm4gbnVsbFxuICAgICAgICBpZiAoZmllbGRWYWx1ZS5maWVsZHMpXG4gICAgICAgICAgcmV0dXJuICFmaWVsZFZhbHVlLmZpbHRlcnNcbiAgICAgICAgICAgID8ge1xuICAgICAgICAgICAgICAgIFtmaWVsZFZhbHVlLmNvbHVtbk5hbWUgfHwgZmllbGROYW1lXTogR3JhcGhRTEZpZWxkSGVscGVyLkNvbnZlcnRNb2RlbEZpZWxkc1RvR3JhcGhRTEZpZWxkcyhcbiAgICAgICAgICAgICAgICAgIGZpZWxkVmFsdWUuZmllbGRzLFxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDoge1xuICAgICAgICAgICAgICAgIG9wZXJhdGlvbjogZmllbGRWYWx1ZS5jb2x1bW5OYW1lIHx8IGZpZWxkTmFtZSxcbiAgICAgICAgICAgICAgICBmaWVsZHM6IEdyYXBoUUxGaWVsZEhlbHBlci5Db252ZXJ0TW9kZWxGaWVsZHNUb0dyYXBoUUxGaWVsZHMoZmllbGRWYWx1ZS5maWVsZHMpLFxuICAgICAgICAgICAgICAgIHZhcmlhYmxlczoge1xuICAgICAgICAgICAgICAgICAgW2Ake2ZpZWxkVmFsdWUuY29sdW1uTmFtZX1fd2hlcmVgXToge1xuICAgICAgICAgICAgICAgICAgICBuYW1lOiAnd2hlcmUnLFxuICAgICAgICAgICAgICAgICAgICB0eXBlOiBmaWVsZFZhbHVlLmZpbHRlcnMuZmlsdGVyVHlwZSxcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6IEJpbmRGaWx0ZXJRdWVyeUhlbHBlci5NYWtlR3JhcGhRTFdoZXJlKGZpZWxkVmFsdWUuZmlsdGVycy5maWx0ZXJzLCBmaWVsZFZhbHVlLmZpZWxkcyksXG4gICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGZpZWxkVmFsdWUuY29sdW1uTmFtZVxuICAgICAgfSlcbiAgICAgIC5maWx0ZXIoKGZpZWxkKSA9PiAhIWZpZWxkKVxuICB9XG5cbiAgc3RhdGljIENvbnZlcnRGaWVsZFZhbHVlRnJvbSA9IDxcbiAgICBNb2RlbCBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZSxcbiAgICBSZWNvcmREYXRhVHlwZSBleHRlbmRzIHN0cmluZyB8IG51bWJlciB8IERhdGFUeXBlIHwgRGF0ZSxcbiAgICBEYXRhVHlwZSBleHRlbmRzIFJlY29yZDxzdHJpbmcsIFJlY29yZERhdGFUeXBlIHwgUmVjb3JkRGF0YVR5cGVbXT4sXG4gID4oXG4gICAgZGF0YTogRGF0YVR5cGUsXG4gICAgZmllbGRzOiBIYXN1cmFHcmFwaFFMRmllbGRzPE1vZGVsPixcbiAgKTogUGFydGlhbDxOb25GdW5jdGlvblByb3BlcnRpZXM8TW9kZWw+PiA9PlxuICAgIE9iamVjdC5rZXlzKGRhdGEpLnJlZHVjZSgocmVzdWx0LCBjb2x1bW5OYW1lKSA9PiB7XG4gICAgICBjb25zdCB7XG4gICAgICAgIGF0dHJpYnV0ZU5hbWUsXG4gICAgICAgIGZpZWxkczogYXR0cmlidXRlRmllbGRzLFxuICAgICAgICBmcm9tLFxuICAgICAgfSA9IEF0dHJpYnV0ZU9wdGlvbkhlbHBlci5GaW5kQ29sdW1uT3B0aW9uRnJvbUxpc3QoY29sdW1uTmFtZSwgZmllbGRzKVxuXG4gICAgICBpZiAoISFhdHRyaWJ1dGVGaWVsZHMgJiYgQXJyYXkuaXNBcnJheShhdHRyaWJ1dGVGaWVsZHMpKSB7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KGRhdGFbY29sdW1uTmFtZV0pKVxuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAuLi5yZXN1bHQsXG4gICAgICAgICAgICBbYXR0cmlidXRlTmFtZV06IGZyb21cbiAgICAgICAgICAgICAgPyBmcm9tKGRhdGFbY29sdW1uTmFtZV0sIGRhdGEpXG4gICAgICAgICAgICAgIDogaXM8UmVjb3JkRGF0YVR5cGVbXT4oZGF0YVtjb2x1bW5OYW1lXSkubWFwKCh2YWx1ZSkgPT5cbiAgICAgICAgICAgICAgICAgIEdyYXBoUUxGaWVsZEhlbHBlci5Db252ZXJ0RmllbGRWYWx1ZUZyb20oaXM8RGF0YVR5cGU+KHZhbHVlKSwgYXR0cmlidXRlRmllbGRzKSxcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgIH1cbiAgICAgICAgaWYgKGlzT2JqZWN0KGRhdGFbY29sdW1uTmFtZV0pKVxuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAuLi5yZXN1bHQsXG4gICAgICAgICAgICBbYXR0cmlidXRlTmFtZV06ICEhZnJvbVxuICAgICAgICAgICAgICA/IGZyb20oZGF0YVtjb2x1bW5OYW1lXSlcbiAgICAgICAgICAgICAgOiBHcmFwaFFMRmllbGRIZWxwZXIuQ29udmVydEZpZWxkVmFsdWVGcm9tKGlzPERhdGFUeXBlPihkYXRhW2NvbHVtbk5hbWVdKSwgYXR0cmlidXRlRmllbGRzKSxcbiAgICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGlmICghIWZyb20pIHJldHVybiB7IC4uLnJlc3VsdCwgW2F0dHJpYnV0ZU5hbWVdOiBmcm9tKGRhdGFbY29sdW1uTmFtZV0sIGRhdGEpIH1cblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4ucmVzdWx0LFxuICAgICAgICBbYXR0cmlidXRlTmFtZV06IGlzU3RyaW5nKGRhdGFbY29sdW1uTmFtZV0pID8gcGFyc2VEYXRlVGltZShkYXRhW2NvbHVtbk5hbWVdLnRvU3RyaW5nKCkpIDogZGF0YVtjb2x1bW5OYW1lXSxcbiAgICAgIH1cbiAgICB9LCB7fSlcblxuICBzdGF0aWMgQ29udmVydEZpZWxkVmFsdWVUbyA9IDxcbiAgICBNb2RlbCBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZSxcbiAgICBEYXRhVHlwZSBleHRlbmRzIFJlY29yZDxzdHJpbmcsIHN0cmluZyB8IG51bWJlciB8IERhdGFUeXBlIHwgRGF0ZT4sXG4gID4oXG4gICAgaW5zdGFuY2U6IE1vZGVsLFxuICAgIGZpZWxkczogSGFzdXJhR3JhcGhRTEZpZWxkczxNb2RlbD4sXG4gICAgdXBkYXRlID0gZmFsc2UsXG4gICk6IERhdGFUeXBlID0+IHtcbiAgICBjb25zdCBkYXRhOiBQYXJ0aWFsPE1vZGVsPiA9IGluc3RhbmNlLnRvUGxhaW4/LigpIHx8IGluc3RhbmNlXG5cbiAgICByZXR1cm4gT2JqZWN0LmtleXMoZGF0YSkucmVkdWNlKChyZXN1bHQsIGF0dHJpYnV0ZU5hbWUpID0+IHtcbiAgICAgIGNvbnN0IHtcbiAgICAgICAgY29sdW1uTmFtZSxcbiAgICAgICAgZmllbGRzOiBhdHRyaWJ1dGVGaWVsZHMsXG4gICAgICAgIGZvcmVpZ25LZXlDb2x1bW4sXG4gICAgICAgIHRvLFxuICAgICAgICBiaW5kUGVyc2lzdERhdGEsXG4gICAgICB9ID0gQXR0cmlidXRlT3B0aW9uSGVscGVyLkZpbmRCeUF0dHJpYnV0ZShhdHRyaWJ1dGVOYW1lIGFzIE5vbkZ1bmN0aW9uQW5kSWRlbnRpZmllclByb3BlcnR5TmFtZXM8TW9kZWw+LCBmaWVsZHMpXG5cbiAgICAgIGlmIChiaW5kUGVyc2lzdERhdGEpXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgLi4ucmVzdWx0LFxuICAgICAgICAgIC4uLmJpbmRQZXJzaXN0RGF0YShkYXRhW2F0dHJpYnV0ZU5hbWUgYXMgTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lczxNb2RlbD5dLCBpbnN0YW5jZSksXG4gICAgICAgIH1cbiAgICAgIGlmIChpc05pbChjb2x1bW5OYW1lKSkgcmV0dXJuIHJlc3VsdFxuICAgICAgaWYgKFxuICAgICAgICAhIWZvcmVpZ25LZXlDb2x1bW4gJiZcbiAgICAgICAgIWlzRW1wdHkoZm9yZWlnbktleUNvbHVtbikgJiZcbiAgICAgICAgIU9iamVjdC5rZXlzKGZvcmVpZ25LZXlDb2x1bW4pLmZpbHRlcihcbiAgICAgICAgICAoa2V5KSA9PlxuICAgICAgICAgICAgIWlzPFJlY29yZDxzdHJpbmcsIHN0cmluZz4+KGRhdGFbYXR0cmlidXRlTmFtZSBhcyBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPE1vZGVsPl0pPy5ba2V5XSxcbiAgICAgICAgKS5sZW5ndGhcbiAgICAgIClcbiAgICAgICAgcmV0dXJuIE9iamVjdC5rZXlzKGZvcmVpZ25LZXlDb2x1bW4pLnJlZHVjZShcbiAgICAgICAgICAob2JqZWN0LCBjdXJyZW50KSA9PiB7XG4gICAgICAgICAgICBjb25zdCB7IGNvbHVtbk5hbWU6IGZvcmVpZ25Db2x1bW5OYW1lIH0gPSBBdHRyaWJ1dGVPcHRpb25IZWxwZXIuRmluZEJ5QXR0cmlidXRlKFxuICAgICAgICAgICAgICBmb3JlaWduS2V5Q29sdW1uW2N1cnJlbnQgYXMga2V5b2YgSGFzdXJhR3JhcGhRTEZpZWxkczxNb2RlbD5bbnVtYmVyXV0sXG4gICAgICAgICAgICAgIGZpZWxkcyxcbiAgICAgICAgICAgIClcblxuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgLi4ub2JqZWN0LFxuICAgICAgICAgICAgICBbZm9yZWlnbkNvbHVtbk5hbWVdOiBkYXRhW2F0dHJpYnV0ZU5hbWUgYXMga2V5b2YgSGFzdXJhR3JhcGhRTEZpZWxkczxNb2RlbD5bbnVtYmVyXV0/LltjdXJyZW50XSxcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9LFxuICAgICAgICAgIHsgLi4ucmVzdWx0IH0sXG4gICAgICAgIClcblxuICAgICAgaWYgKFxuICAgICAgICB1cGRhdGUgJiZcbiAgICAgICAgaXNPYmplY3QoZGF0YVthdHRyaWJ1dGVOYW1lIGFzIGtleW9mIEhhc3VyYUdyYXBoUUxGaWVsZHM8TW9kZWw+W251bWJlcl1dKSAmJlxuICAgICAgICAhaXNOaWwoYXR0cmlidXRlRmllbGRzKSAmJlxuICAgICAgICAhaXNEYXRlKGRhdGFbYXR0cmlidXRlTmFtZSBhcyBrZXlvZiBIYXN1cmFHcmFwaFFMRmllbGRzPE1vZGVsPltudW1iZXJdXSlcbiAgICAgIClcbiAgICAgICAgcmV0dXJuIHJlc3VsdFxuXG4gICAgICBpZiAoXG4gICAgICAgICEhY29sdW1uTmFtZSAmJlxuICAgICAgICBBcnJheS5pc0FycmF5KGF0dHJpYnV0ZUZpZWxkcykgJiZcbiAgICAgICAgaXNPYmplY3QoZGF0YVthdHRyaWJ1dGVOYW1lIGFzIGtleW9mIEhhc3VyYUdyYXBoUUxGaWVsZHM8TW9kZWw+W251bWJlcl1dKVxuICAgICAgKSB7XG4gICAgICAgIGNvbnN0IGNvbnZlcnRlZCA9XG4gICAgICAgICAgIWlzTmlsKGNvbHVtbk5hbWUpICYmIHRvXG4gICAgICAgICAgICA/IHRvKGluc3RhbmNlW2F0dHJpYnV0ZU5hbWUgYXMga2V5b2YgSGFzdXJhR3JhcGhRTEZpZWxkczxNb2RlbD5bbnVtYmVyXV0sIGluc3RhbmNlKVxuICAgICAgICAgICAgOiBkYXRhW2F0dHJpYnV0ZU5hbWUgYXMga2V5b2YgSGFzdXJhR3JhcGhRTEZpZWxkczxNb2RlbD5bbnVtYmVyXV1cblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIC4uLnJlc3VsdCxcbiAgICAgICAgICAuLi4oY29udmVydGVkICE9PSB1bmRlZmluZWRcbiAgICAgICAgICAgID8ge1xuICAgICAgICAgICAgICAgIFtjb2x1bW5OYW1lXToge1xuICAgICAgICAgICAgICAgICAgZGF0YTpcbiAgICAgICAgICAgICAgICAgICAgaW5zdGFuY2VbYXR0cmlidXRlTmFtZSBhcyBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPE1vZGVsPl0gaW5zdGFuY2VvZiBCYXNlTW9kZWxcbiAgICAgICAgICAgICAgICAgICAgICA/IEdyYXBoUUxGaWVsZEhlbHBlci5Db252ZXJ0RmllbGRWYWx1ZVRvKFxuICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhW2F0dHJpYnV0ZU5hbWUgYXMga2V5b2YgSGFzdXJhR3JhcGhRTEZpZWxkczxNb2RlbD5bbnVtYmVyXV0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJpYnV0ZUZpZWxkcyBhcyBIYXN1cmFHcmFwaFFMRmllbGRzPE1vZGVsPixcbiAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICA6IGNvbnZlcnRlZCxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA6IHt9KSxcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAoISF0bylcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAuLi5yZXN1bHQsXG4gICAgICAgICAgW2NvbHVtbk5hbWVdOiB0byhpbnN0YW5jZVthdHRyaWJ1dGVOYW1lIGFzIGtleW9mIEhhc3VyYUdyYXBoUUxGaWVsZHM8TW9kZWw+W251bWJlcl1dLCBpbnN0YW5jZSksXG4gICAgICAgIH1cblxuICAgICAgcmV0dXJuIHsgLi4ucmVzdWx0LCBbY29sdW1uTmFtZV06IGRhdGFbYXR0cmlidXRlTmFtZSBhcyBrZXlvZiBIYXN1cmFHcmFwaFFMRmllbGRzPE1vZGVsPltudW1iZXJdXSB9XG4gICAgfSwge30gYXMgRGF0YVR5cGUpXG4gIH1cbn1cbiJdfQ==
106
+ GraphQLFieldHelper.ConvertNestedFieldsToGraphQLFields = (fieldName, fieldValue) => {
107
+ const hasCustomFilters = !!fieldValue.filters;
108
+ if (hasCustomFilters)
109
+ return {
110
+ operation: fieldValue.columnName || fieldName,
111
+ fields: GraphQLFieldHelper.ConvertModelFieldsToGraphQLFields(fieldValue.fields),
112
+ variables: {
113
+ [`${fieldValue.columnName}_where`]: {
114
+ name: 'where',
115
+ type: fieldValue.filters.filterType,
116
+ value: BindFilterQueryHelper.MakeGraphQLWhere(fieldValue.filters.filters, fieldValue.fields),
117
+ required: true,
118
+ },
119
+ },
120
+ };
121
+ return {
122
+ [fieldValue.columnName || fieldName]: GraphQLFieldHelper.ConvertModelFieldsToGraphQLFields(fieldValue.fields),
123
+ };
124
+ };
125
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JhcGhxbC1maWVsZC5oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC9taXhpbnMvaGVscGVycy9ncmFwaHFsLWZpZWxkLmhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxHQUtWLE1BQU0sb0JBQW9CLENBQUE7QUFDM0IsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBR2pHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJCQUEyQixDQUFBO0FBQ2pFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRCQUE0QixDQUFBO0FBRWxFLE1BQU0sT0FBTyxrQkFBa0I7O0FBQ3RCLHVDQUFvQixHQUFHLENBQzVCLE1BQXVDLEVBQ0wsRUFBRSxDQUNwQyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLE1BQU0sQ0FBQyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFBO0FBRXBGLG9EQUFpQyxHQUFHLENBQ3pDLE1BQWtDLEVBQzFCLEVBQUU7SUFDVixPQUFPLE1BQU07UUFDWCxFQUFFLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1FBQ2QsSUFBSSxRQUFRLENBQUMsS0FBSyxDQUFDO1lBQUUsT0FBTyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUE7UUFDNUMsSUFBSSxLQUFLLEtBQUssZUFBZTtZQUFFLE9BQU8sS0FBSyxDQUFBO1FBRTNDLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxD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InNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEJhc2VNb2RlbCxcbiAgTW9kZWxCYXNlU3RydWN0dXJlLFxuICBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0aWVzV2l0aE5vUGFydGlhbCxcbiAgTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lcyxcbiAgUGFydGlhbElkZW50aWZpZXJzTW9kZWwsXG59IGZyb20gJy4uLy4uLy4uLy4uL2RvbWFpbidcbmltcG9ydCB7IGlzLCBpc0RhdGUsIGlzRW1wdHksIGlzTmlsLCBpc09iamVjdCwgaXNTdHJpbmcsIHBhcnNlRGF0ZVRpbWUgfSBmcm9tICcuLi8uLi8uLi8uLi91dGlscydcbmltcG9ydCB7IENvbHVtbk9wdGlvbnMsIEZpZWxkcywgR3JhcGhRTFBhcmFtcywgSGFzdXJhR3JhcGhRTEZpZWxkcyB9IGZyb20gJy4uLy4uL3R5cGVzJ1xuXG5pbXBvcnQgeyBBdHRyaWJ1dGVPcHRpb25IZWxwZXIgfSBmcm9tICcuL2F0dHJpYnV0ZS1vcHRpb24uaGVscGVyJ1xuaW1wb3J0IHsgQmluZEZpbHRlclF1ZXJ5SGVscGVyIH0gZnJvbSAnLi9iaW5kLWZpbHRlci1xdWVyeS5oZWxwZXInXG5cbmV4cG9ydCBjbGFzcyBHcmFwaFFMRmllbGRIZWxwZXIge1xuICBzdGF0aWMgQ2hlY2tJc0dyYXBoUUxQYXJhbXMgPSA8TW9kZWwgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmU8TW9kZWw+PihcbiAgICBwYXJhbXM6IHN0cmluZyB8IEdyYXBoUUxQYXJhbXM8TW9kZWw+W10sXG4gICk6IHBhcmFtcyBpcyBHcmFwaFFMUGFyYW1zPE1vZGVsPltdID0+XG4gICAgIWlzU3RyaW5nKHBhcmFtcykgJiYgQXJyYXkuaXNBcnJheShwYXJhbXMpICYmIHBhcmFtcy5sZW5ndGggPj0gMCAmJiAhIXBhcmFtc1swXS5vcGVyYXRpb25cblxuICBzdGF0aWMgQ29udmVydE1vZGVsRmllbGRzVG9HcmFwaFFMRmllbGRzID0gPE1vZGVsIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlPE1vZGVsPj4oXG4gICAgZmllbGRzOiBIYXN1cmFHcmFwaFFMRmllbGRzPE1vZGVsPixcbiAgKTogRmllbGRzID0+IHtcbiAgICByZXR1cm4gZmllbGRzXG4gICAgICA/Lm1hcCgoZmllbGQpID0+IHtcbiAgICAgICAgaWYgKGlzU3RyaW5nKGZpZWxkKSkgcmV0dXJuIGZpZWxkLnRvU3RyaW5nKClcbiAgICAgICAgaWYgKGZpZWxkID09PSAnYWZmZWN0ZWRfcm93cycpIHJldHVybiBmaWVsZFxuXG4gICAgICAgIGNvbnN0IGZpZWxkTmFtZSA9IE9iamVjdC5rZXlzKGZpZWxkKS5zaGlmdCgpXG4gICAgICAgIGNvbnN0IGZpZWxkVmFsdWUgPSBpczxDb2x1bW5PcHRpb25zPGFueSwgTW9kZWw+PihmaWVsZFtmaWVsZE5hbWUgYXMga2V5b2YgdHlwZW9mIGZpZWxkXSlcblxuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShmaWVsZFZhbHVlKSlcbiAgICAgICAgICByZXR1cm4geyBbZmllbGROYW1lXTogR3JhcGhRTEZpZWxkSGVscGVyLkNvbnZlcnRNb2RlbEZpZWxkc1RvR3JhcGhRTEZpZWxkcyhmaWVsZFZhbHVlKSB9XG4gICAgICAgIGlmICghQXR0cmlidXRlT3B0aW9uSGVscGVyLkNoZWNrSXNDb2x1bW5PcHRpb24oZmllbGRWYWx1ZSkpIHJldHVyblxuXG4gICAgICAgIGNvbnN0IGlzTmVzdGVkRmllbGQgPSAhIWZpZWxkVmFsdWUuZmllbGRzXG5cbiAgICAgICAgaWYgKGlzTmVzdGVkRmllbGQpIHJldHVybiBHcmFwaFFMRmllbGRIZWxwZXIuQ29udmVydE5lc3RlZEZpZWxkc1RvR3JhcGhRTEZpZWxkcyhmaWVsZE5hbWUsIGZpZWxkVmFsdWUgYXMgYW55KVxuXG4gICAgICAgIHJldHVybiBmaWVsZFZhbHVlLmNvbHVtbk5hbWVcbiAgICAgIH0pXG4gICAgICAuZmlsdGVyKChmaWVsZCkgPT4gISFmaWVsZClcbiAgfVxuXG4gIHN0YXRpYyBDb252ZXJ0RmllbGRWYWx1ZUZyb20gPSA8XG4gICAgTW9kZWwgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmUsXG4gICAgUmVjb3JkRGF0YVR5cGUgZXh0ZW5kcyBzdHJpbmcgfCBudW1iZXIgfCBEYXRhVHlwZSB8IERhdGUsXG4gICAgRGF0YVR5cGUgZXh0ZW5kcyBSZWNvcmQ8c3RyaW5nLCBSZWNvcmREYXRhVHlwZSB8IFJlY29yZERhdGFUeXBlW10+LFxuICA+KFxuICAgIGRhdGE6IERhdGFUeXBlLFxuICAgIGZpZWxkczogSGFzdXJhR3JhcGhRTEZpZWxkczxNb2RlbD4sXG4gICk6IE5vbkZ1bmN0aW9uQW5kSWRlbnRpZmllclByb3BlcnRpZXNXaXRoTm9QYXJ0aWFsPE1vZGVsPiB8IFBhcnRpYWxJZGVudGlmaWVyc01vZGVsPE1vZGVsPiA9PlxuICAgIE9iamVjdC5rZXlzKGRhdGEpLnJlZHVjZSgocmVzdWx0LCBjb2x1bW5OYW1lKSA9PiB7XG4gICAgICBjb25zdCB7XG4gICAgICAgIGF0dHJpYnV0ZU5hbWUsXG4gICAgICAgIGZpZWxkczogYXR0cmlidXRlRmllbGRzLFxuICAgICAgICBmcm9tLFxuICAgICAgfSA9IEF0dHJpYnV0ZU9wdGlvbkhlbHBlci5GaW5kQ29sdW1uT3B0aW9uRnJvbUxpc3QoY29sdW1uTmFtZSwgZmllbGRzKVxuXG4gICAgICBpZiAoISFhdHRyaWJ1dGVGaWVsZHMgJiYgQXJyYXkuaXNBcnJheShhdHRyaWJ1dGVGaWVsZHMpKSB7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KGRhdGFbY29sdW1uTmFtZV0pKVxuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAuLi5yZXN1bHQsXG4gICAgICAgICAgICBbYXR0cmlidXRlTmFtZV06IGZyb21cbiAgICAgICAgICAgICAgPyBmcm9tKGRhdGFbY29sdW1uTmFtZV0sIGRhdGEpXG4gICAgICAgICAgICAgIDogaXM8UmVjb3JkRGF0YVR5cGVbXT4oZGF0YVtjb2x1bW5OYW1lXSkubWFwKCh2YWx1ZSkgPT5cbiAgICAgICAgICAgICAgICAgIEdyYXBoUUxGaWVsZEhlbHBlci5Db252ZXJ0RmllbGRWYWx1ZUZyb20oaXM8RGF0YVR5cGU+KHZhbHVlKSwgYXR0cmlidXRlRmllbGRzKSxcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgIH1cbiAgICAgICAgaWYgKGlzT2JqZWN0KGRhdGFbY29sdW1uTmFtZV0pKVxuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAuLi5yZXN1bHQsXG4gICAgICAgICAgICBbYXR0cmlidXRlTmFtZV06ICEhZnJvbVxuICAgICAgICAgICAgICA/IGZyb20oZGF0YVtjb2x1bW5OYW1lXSlcbiAgICAgICAgICAgICAgOiBHcmFwaFFMRmllbGRIZWxwZXIuQ29udmVydEZpZWxkVmFsdWVGcm9tKGlzPERhdGFUeXBlPihkYXRhW2NvbHVtbk5hbWVdKSwgYXR0cmlidXRlRmllbGRzKSxcbiAgICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGlmICghIWZyb20pIHJldHVybiB7IC4uLnJlc3VsdCwgW2F0dHJpYnV0ZU5hbWVdOiBmcm9tKGRhdGFbY29sdW1uTmFtZV0sIGRhdGEpIH1cblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4ucmVzdWx0LFxuICAgICAgICBbYXR0cmlidXRlTmFtZV06IGlzU3RyaW5nKGRhdGFbY29sdW1uTmFtZV0pID8gcGFyc2VEYXRlVGltZShkYXRhW2NvbHVtbk5hbWVdLnRvU3RyaW5nKCkpIDogZGF0YVtjb2x1bW5OYW1lXSxcbiAgICAgIH1cbiAgICB9LCB7fSlcblxuICBzdGF0aWMgQ29udmVydEZpZWxkVmFsdWVUbyA9IDxcbiAgICBNb2RlbCBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZTxNb2RlbD4sXG4gICAgRGF0YVR5cGUgZXh0ZW5kcyBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBudW1iZXIgfCBEYXRhVHlwZSB8IERhdGU+LFxuICA+KFxuICAgIGluc3RhbmNlOiBNb2RlbCxcbiAgICBmaWVsZHM6IEhhc3VyYUdyYXBoUUxGaWVsZHM8TW9kZWw+LFxuICAgIHVwZGF0ZSA9IGZhbHNlLFxuICApOiBEYXRhVHlwZSA9PiB7XG4gICAgY29uc3QgZGF0YTogUGFydGlhbDxNb2RlbD4gPSBpbnN0YW5jZS50b1BsYWluPy4oKSB8fCBpbnN0YW5jZVxuXG4gICAgcmV0dXJuIE9iamVjdC5rZXlzKGRhdGEpLnJlZHVjZSgocmVzdWx0LCBhdHRyaWJ1dGVOYW1lKSA9PiB7XG4gICAgICBjb25zdCB7XG4gICAgICAgIGNvbHVtbk5hbWUsXG4gICAgICAgIGZpZWxkczogYXR0cmlidXRlRmllbGRzLFxuICAgICAgICBmb3JlaWduS2V5Q29sdW1uLFxuICAgICAgICB0byxcbiAgICAgICAgYmluZFBlcnNpc3REYXRhLFxuICAgICAgfSA9IEF0dHJpYnV0ZU9wdGlvbkhlbHBlci5GaW5kQnlBdHRyaWJ1dGUoYXR0cmlidXRlTmFtZSBhcyBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPE1vZGVsPiwgZmllbGRzKVxuXG4gICAgICBpZiAoYmluZFBlcnNpc3REYXRhKVxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIC4uLnJlc3VsdCxcbiAgICAgICAgICAuLi5iaW5kUGVyc2lzdERhdGEoZGF0YVthdHRyaWJ1dGVOYW1lIGFzIE5vbkZ1bmN0aW9uQW5kSWRlbnRpZmllclByb3BlcnR5TmFtZXM8TW9kZWw+XSwgaW5zdGFuY2UpLFxuICAgICAgICB9XG4gICAgICBpZiAoaXNOaWwoY29sdW1uTmFtZSkpIHJldHVybiByZXN1bHRcbiAgICAgIGlmIChcbiAgICAgICAgISFmb3JlaWduS2V5Q29sdW1uICYmXG4gICAgICAgICFpc0VtcHR5KGZvcmVpZ25LZXlDb2x1bW4pICYmXG4gICAgICAgICFPYmplY3Qua2V5cyhmb3JlaWduS2V5Q29sdW1uKS5maWx0ZXIoXG4gICAgICAgICAgKGtleSkgPT5cbiAgICAgICAgICAgICFpczxSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PihkYXRhW2F0dHJpYnV0ZU5hbWUgYXMgTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lczxNb2RlbD5dKT8uW2tleV0sXG4gICAgICAgICkubGVuZ3RoXG4gICAgICApXG4gICAgICAgIHJldHVybiBPYmplY3Qua2V5cyhmb3JlaWduS2V5Q29sdW1uKS5yZWR1Y2UoXG4gICAgICAgICAgKG9iamVjdCwgY3VycmVudCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgeyBjb2x1bW5OYW1lOiBmb3JlaWduQ29sdW1uTmFtZSB9ID0gQXR0cmlidXRlT3B0aW9uSGVscGVyLkZpbmRCeUF0dHJpYnV0ZShcbiAgICAgICAgICAgICAgZm9yZWlnbktleUNvbHVtbltjdXJyZW50IGFzIGtleW9mIEhhc3VyYUdyYXBoUUxGaWVsZHM8TW9kZWw+W251bWJlcl1dLFxuICAgICAgICAgICAgICBmaWVsZHMsXG4gICAgICAgICAgICApXG5cbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgIC4uLm9iamVjdCxcbiAgICAgICAgICAgICAgW2ZvcmVpZ25Db2x1bW5OYW1lXTogZGF0YVthdHRyaWJ1dGVOYW1lIGFzIGtleW9mIEhhc3VyYUdyYXBoUUxGaWVsZHM8TW9kZWw+W251bWJlcl1dPy5bY3VycmVudF0sXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSxcbiAgICAgICAgICB7IC4uLnJlc3VsdCB9LFxuICAgICAgICApXG5cbiAgICAgIGlmIChcbiAgICAgICAgdXBkYXRlICYmXG4gICAgICAgIGlzT2JqZWN0KGRhdGFbYXR0cmlidXRlTmFtZSBhcyBrZXlvZiBIYXN1cmFHcmFwaFFMRmllbGRzPE1vZGVsPltudW1iZXJdXSkgJiZcbiAgICAgICAgIWlzTmlsKGF0dHJpYnV0ZUZpZWxkcykgJiZcbiAgICAgICAgIWlzRGF0ZShkYXRhW2F0dHJpYnV0ZU5hbWUgYXMga2V5b2YgSGFzdXJhR3JhcGhRTEZpZWxkczxNb2RlbD5bbnVtYmVyXV0pXG4gICAgICApXG4gICAgICAgIHJldHVybiByZXN1bHRcblxuICAgICAgaWYgKFxuICAgICAgICAhIWNvbHVtbk5hbWUgJiZcbiAgICAgICAgQXJyYXkuaXNBcnJheShhdHRyaWJ1dGVGaWVsZHMpICYmXG4gICAgICAgIGlzT2JqZWN0KGRhdGFbYXR0cmlidXRlTmFtZSBhcyBrZXlvZiBIYXN1cmFHcmFwaFFMRmllbGRzPE1vZGVsPltudW1iZXJdXSlcbiAgICAgICkge1xuICAgICAgICBjb25zdCBjb252ZXJ0ZWQgPVxuICAgICAgICAgICFpc05pbChjb2x1bW5OYW1lKSAmJiB0b1xuICAgICAgICAgICAgPyB0byhpbnN0YW5jZVthdHRyaWJ1dGVOYW1lIGFzIGtleW9mIEhhc3VyYUdyYXBoUUxGaWVsZHM8TW9kZWw+W251bWJlcl1dLCBpbnN0YW5jZSlcbiAgICAgICAgICAgIDogZGF0YVthdHRyaWJ1dGVOYW1lIGFzIGtleW9mIEhhc3VyYUdyYXBoUUxGaWVsZHM8TW9kZWw+W251bWJlcl1dXG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAuLi5yZXN1bHQsXG4gICAgICAgICAgLi4uKGNvbnZlcnRlZCAhPT0gdW5kZWZpbmVkXG4gICAgICAgICAgICA/IHtcbiAgICAgICAgICAgICAgICBbY29sdW1uTmFtZV06IHtcbiAgICAgICAgICAgICAgICAgIGRhdGE6XG4gICAgICAgICAgICAgICAgICAgIGluc3RhbmNlW2F0dHJpYnV0ZU5hbWUgYXMgTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lczxNb2RlbD5dIGluc3RhbmNlb2YgQmFzZU1vZGVsXG4gICAgICAgICAgICAgICAgICAgICAgPyBHcmFwaFFMRmllbGRIZWxwZXIuQ29udmVydEZpZWxkVmFsdWVUbyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVthdHRyaWJ1dGVOYW1lIGFzIGtleW9mIEhhc3VyYUdyYXBoUUxGaWVsZHM8TW9kZWw+W251bWJlcl1dLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyaWJ1dGVGaWVsZHMgYXMgSGFzdXJhR3JhcGhRTEZpZWxkczxNb2RlbD4sXG4gICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgOiBjb252ZXJ0ZWQsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgOiB7fSksXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKCEhdG8pXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgLi4ucmVzdWx0LFxuICAgICAgICAgIFtjb2x1bW5OYW1lXTogdG8oaW5zdGFuY2VbYXR0cmlidXRlTmFtZSBhcyBrZXlvZiBIYXN1cmFHcmFwaFFMRmllbGRzPE1vZGVsPltudW1iZXJdXSwgaW5zdGFuY2UpLFxuICAgICAgICB9XG5cbiAgICAgIHJldHVybiB7IC4uLnJlc3VsdCwgW2NvbHVtbk5hbWVdOiBkYXRhW2F0dHJpYnV0ZU5hbWUgYXMga2V5b2YgSGFzdXJhR3JhcGhRTEZpZWxkczxNb2RlbD5bbnVtYmVyXV0gfVxuICAgIH0sIHt9IGFzIERhdGFUeXBlKVxuICB9XG5cbiAgcHJpdmF0ZSBzdGF0aWMgQ29udmVydE5lc3RlZEZpZWxkc1RvR3JhcGhRTEZpZWxkcyA9IDxcbiAgICBUIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlPFQ+LFxuICAgIFAgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmU8UD4sXG4gID4oXG4gICAgZmllbGROYW1lOiBzdHJpbmcsXG4gICAgZmllbGRWYWx1ZTogQ29sdW1uT3B0aW9uczxULCBQPixcbiAgKSA9PiB7XG4gICAgY29uc3QgaGFzQ3VzdG9tRmlsdGVycyA9ICEhZmllbGRWYWx1ZS5maWx0ZXJzXG5cbiAgICBpZiAoaGFzQ3VzdG9tRmlsdGVycylcbiAgICAgIHJldHVybiB7XG4gICAgICAgIG9wZXJhdGlvbjogZmllbGRWYWx1ZS5jb2x1bW5OYW1lIHx8IGZpZWxkTmFtZSxcbiAgICAgICAgZmllbGRzOiBHcmFwaFFMRmllbGRIZWxwZXIuQ29udmVydE1vZGVsRmllbGRzVG9HcmFwaFFMRmllbGRzKGZpZWxkVmFsdWUuZmllbGRzKSxcbiAgICAgICAgdmFyaWFibGVzOiB7XG4gICAgICAgICAgW2Ake2ZpZWxkVmFsdWUuY29sdW1uTmFtZX1fd2hlcmVgXToge1xuICAgICAgICAgICAgbmFtZTogJ3doZXJlJyxcbiAgICAgICAgICAgIHR5cGU6IGZpZWxkVmFsdWUuZmlsdGVycy5maWx0ZXJUeXBlLFxuICAgICAgICAgICAgdmFsdWU6IEJpbmRGaWx0ZXJRdWVyeUhlbHBlci5NYWtlR3JhcGhRTFdoZXJlKGZpZWxkVmFsdWUuZmlsdGVycy5maWx0ZXJzLCBmaWVsZFZhbHVlLmZpZWxkcyksXG4gICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIFtmaWVsZFZhbHVlLmNvbHVtbk5hbWUgfHwgZmllbGROYW1lXTogR3JhcGhRTEZpZWxkSGVscGVyLkNvbnZlcnRNb2RlbEZpZWxkc1RvR3JhcGhRTEZpZWxkcyhmaWVsZFZhbHVlLmZpZWxkcyksXG4gICAgfVxuICB9XG59XG4iXX0=
@@ -1,3 +1,4 @@
1
+ import { DebugHelper } from '../../../utils';
1
2
  import { AttributeOptionHelper } from './helpers';
2
3
  export const withCreateHasuraGraphQL = (MixinBase) => {
3
4
  return class CreateHasuraGraphQLMixin extends MixinBase {
@@ -8,6 +9,7 @@ export const withCreateHasuraGraphQL = (MixinBase) => {
8
9
  this.insertGraphQLObjectType = options?.insertGraphQLObjectType || `${this.tableName}_insert_input`;
9
10
  }
10
11
  async create(data) {
12
+ this.logger = DebugHelper.from(this, 'create');
11
13
  const newData = await this.save(this.model.toInstance(data));
12
14
  return this.model.toInstance(newData);
13
15
  }
@@ -20,8 +22,8 @@ export const withCreateHasuraGraphQL = (MixinBase) => {
20
22
  columnOptions.foreignKeyColumn && [
21
23
  ...Object.values(columnOptions.foreignKeyColumn).map((foreignKeyName) => AttributeOptionHelper.FindByAttribute(foreignKeyName, this.fields)?.columnName),
22
24
  {
23
- [columnOptions.columnName]: Object.keys(columnOptions.foreignKeyColumn).map((foreignKeyField) => AttributeOptionHelper.FindByAttribute(foreignKeyField, columnOptions?.fields)?.columnName ||
24
- foreignKeyField),
25
+ [columnOptions.columnName]: Object.keys(columnOptions.foreignKeyColumn).map((foreignKeyField) => AttributeOptionHelper.FindByAttribute(foreignKeyField, columnOptions?.fields)
26
+ ?.columnName || foreignKeyField),
25
27
  },
26
28
  ]);
27
29
  })
@@ -34,4 +36,4 @@ export const withCreateHasuraGraphQL = (MixinBase) => {
34
36
  }
35
37
  };
36
38
  };
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1jcmVhdGUtaGFzdXJhLWdyYXBocWwubWl4aW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC9taXhpbnMvd2l0aC1jcmVhdGUtaGFzdXJhLWdyYXBocWwubWl4aW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sV0FBVyxDQUFBO0FBT2pELE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUFHLENBSXJDLFNBQTJELEVBSTNELEVBQUU7SUFDRixPQUFPLE1BQU0sd0JBQXlCLFNBQVEsU0FBUztRQUlyRCxZQUFZLEdBQUcsTUFBYTtZQUMxQixNQUFNLE9BQU8sR0FBNEIsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUE7WUFFcEQsS0FBSyxDQUFDLEdBQUcsTUFBTSxDQUFDLENBQUE7WUFFaEIsSUFBSSxDQUFDLHNCQUFzQixHQUFHLE9BQU8sRUFBRSxzQkFBc0IsSUFBSSxVQUFVLElBQUksQ0FBQyxTQUFTLE1BQU0sQ0FBQTtZQUMvRixJQUFJLENBQUMsdUJBQXVCLEdBQUcsT0FBTyxFQUFFLHVCQUF1QixJQUFJLEdBQUcsSUFBSSxDQUFDLFNBQVMsZUFBZSxDQUFBO1FBQ3JHLENBQUM7UUFFRCxLQUFLLENBQUMsTUFBTSxDQUFDLElBQW1DO1lBQzlDLE1BQU0sT0FBTyxHQUFHLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxJQUFXLENBQUMsQ0FBQyxDQUFBO1lBRW5FLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUE7UUFDdkMsQ0FBQztRQUVELEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBVztZQUNwQixNQUFNLGlCQUFpQixHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUN4RCxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMscUJBQXFCLENBQUMsZUFBZSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsVUFBVSxDQUNsRCxDQUFBO1lBQy9CLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxDQUFDLE1BQU07aUJBQ2xDLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO2dCQUNiLE1BQU0sYUFBYSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUE7Z0JBRWxELE9BQU8sQ0FDTCxxQkFBcUIsQ0FBQyxtQkFBbUIsQ0FBQyxhQUFhLENBQUM7b0JBQ3hELGFBQWEsQ0FBQyxnQkFBZ0IsSUFBSTtvQkFDaEMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLEdBQUcsQ0FDbEQsQ0FBQyxjQUFjLEVBQUUsRUFBRSxDQUNqQixxQkFBcUIsQ0FBQyxlQUFlLENBQUMsY0FBcUIsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsVUFBVSxDQUN4RjtvQkFDRDt3QkFDRSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLEdBQUcsQ0FDekUsQ0FBQyxlQUFlLEVBQUUsRUFBRSxDQUNsQixxQkFBcUIsQ0FBQyxlQUFlLENBQUMsZUFBc0IsRUFBRSxhQUFhLEVBQUUsTUFBTSxDQUFDLEVBQUUsVUFBVTs0QkFDaEcsZUFBZSxDQUNsQjtxQkFDRjtpQkFDRixDQUNGLENBQUE7WUFDSCxDQUFDLENBQUM7aUJBQ0QsTUFBTSxDQUFDLE9BQU8sQ0FBQztpQkFDZixNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsSUFBSSxFQUFFLEdBQUcsT0FBTyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUE7WUFFdkQsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsUUFBUSxDQUNoQyxJQUFJLENBQUMsc0JBQXNCLEVBQzNCLENBQUMsR0FBRyxpQkFBaUIsRUFBRSxHQUFHLGlCQUFpQixDQUErQixFQUMxRTtnQkFDRSxNQUFNLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLHVCQUF1QixFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsRUFBRTthQUN0RyxDQUNGLENBQUE7WUFFRCxPQUFPLEVBQUUsR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLEVBQUUsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQTtRQUM1RyxDQUFDO0tBQ0ssQ0FBQTtBQUNWLENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENyZWF0ZVJlcG9zaXRvcnksIENyZWF0ZVJlcG9zaXRvcnlQYXJhbXMsIE1vZGVsQmFzZVN0cnVjdHVyZSB9IGZyb20gJy4uLy4uLy4uL2RvbWFpbidcbmltcG9ydCB7IE1lcmdlQ29uc3RydWN0b3JQYXJhbXMsIE1peGluQ3RvciB9IGZyb20gJy4uLy4uLy4uL3V0aWxzJ1xuaW1wb3J0IHsgR3JhcGhRTFJlcG9zaXRvcnksIEhhc3VyYUdyYXBoUUxGaWVsZHMgfSBmcm9tICcuLi90eXBlcydcblxuaW1wb3J0IHsgQXR0cmlidXRlT3B0aW9uSGVscGVyIH0gZnJvbSAnLi9oZWxwZXJzJ1xuXG5leHBvcnQgdHlwZSBDcmVhdGVDb25zdHJ1Y3RvclBhcmFtcyA9IHtcbiAgaW5zZXJ0R3JhcGhRTE9wZXJhdGlvbj86IHN0cmluZ1xuICBpbnNlcnRHcmFwaFFMT2JqZWN0VHlwZT86IHN0cmluZ1xufVxuXG5leHBvcnQgY29uc3Qgd2l0aENyZWF0ZUhhc3VyYUdyYXBoUUwgPSA8XG4gIE1CYXNlIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlLFxuICBUTWl4aW5CYXNlIGV4dGVuZHMgTWl4aW5DdG9yPEdyYXBoUUxSZXBvc2l0b3J5PE1CYXNlPj4sXG4+KFxuICBNaXhpbkJhc2U6IE1peGluQ3RvcjxHcmFwaFFMUmVwb3NpdG9yeTxNQmFzZT4+ICYgVE1peGluQmFzZSxcbik6IE1peGluQ3RvcjxcbiAgR3JhcGhRTFJlcG9zaXRvcnk8TUJhc2U+ICYgSW5zdGFuY2VUeXBlPFRNaXhpbkJhc2U+ICYgQ3JlYXRlUmVwb3NpdG9yeTxNQmFzZT4sXG4gIE1lcmdlQ29uc3RydWN0b3JQYXJhbXM8W0NyZWF0ZUNvbnN0cnVjdG9yUGFyYW1zLCAuLi5hbnlbXV0sIENvbnN0cnVjdG9yUGFyYW1ldGVyczxUTWl4aW5CYXNlPj5cbj4gPT4ge1xuICByZXR1cm4gY2xhc3MgQ3JlYXRlSGFzdXJhR3JhcGhRTE1peGluIGV4dGVuZHMgTWl4aW5CYXNlIGltcGxlbWVudHMgQ3JlYXRlUmVwb3NpdG9yeTxNQmFzZT4ge1xuICAgIGluc2VydEdyYXBoUUxPcGVyYXRpb246IHN0cmluZ1xuICAgIGluc2VydEdyYXBoUUxPYmplY3RUeXBlOiBzdHJpbmdcblxuICAgIGNvbnN0cnVjdG9yKC4uLnBhcmFtczogYW55W10pIHtcbiAgICAgIGNvbnN0IG9wdGlvbnM6IENyZWF0ZUNvbnN0cnVjdG9yUGFyYW1zID0gcGFyYW1zPy5bMF1cblxuICAgICAgc3VwZXIoLi4ucGFyYW1zKVxuXG4gICAgICB0aGlzLmluc2VydEdyYXBoUUxPcGVyYXRpb24gPSBvcHRpb25zPy5pbnNlcnRHcmFwaFFMT3BlcmF0aW9uIHx8IGBpbnNlcnRfJHt0aGlzLnRhYmxlTmFtZX1fb25lYFxuICAgICAgdGhpcy5pbnNlcnRHcmFwaFFMT2JqZWN0VHlwZSA9IG9wdGlvbnM/Lmluc2VydEdyYXBoUUxPYmplY3RUeXBlIHx8IGAke3RoaXMudGFibGVOYW1lfV9pbnNlcnRfaW5wdXRgXG4gICAgfVxuXG4gICAgYXN5bmMgY3JlYXRlKGRhdGE6IENyZWF0ZVJlcG9zaXRvcnlQYXJhbXM8TUJhc2U+KTogUHJvbWlzZTxNQmFzZT4ge1xuICAgICAgY29uc3QgbmV3RGF0YSA9IGF3YWl0IHRoaXMuc2F2ZSh0aGlzLm1vZGVsLnRvSW5zdGFuY2UoZGF0YSBhcyBhbnkpKVxuXG4gICAgICByZXR1cm4gdGhpcy5tb2RlbC50b0luc3RhbmNlKG5ld0RhdGEpXG4gICAgfVxuXG4gICAgYXN5bmMgc2F2ZShkYXRhOiBNQmFzZSk6IFByb21pc2U8UGFydGlhbDxNQmFzZT4+IHtcbiAgICAgIGNvbnN0IHByaW1hcnlLZXlDb2x1bW5zID0gdGhpcy5tb2RlbC5pZGVudGlmaWVyc0ZpZWxkcy5tYXAoXG4gICAgICAgIChmaWVsZCkgPT4gQXR0cmlidXRlT3B0aW9uSGVscGVyLkZpbmRCeUF0dHJpYnV0ZShmaWVsZCwgdGhpcy5maWVsZHMpLmNvbHVtbk5hbWUsXG4gICAgICApIGFzIEhhc3VyYUdyYXBoUUxGaWVsZHM8TUJhc2U+XG4gICAgICBjb25zdCBmb3JlaWduS2V5Q29sdW1ucyA9IHRoaXMuZmllbGRzXG4gICAgICAgIC5tYXAoKGZpZWxkKSA9PiB7XG4gICAgICAgICAgY29uc3QgY29sdW1uT3B0aW9ucyA9IE9iamVjdC52YWx1ZXMoZmllbGQpLnNoaWZ0KClcblxuICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICBBdHRyaWJ1dGVPcHRpb25IZWxwZXIuQ2hlY2tJc0NvbHVtbk9wdGlvbihjb2x1bW5PcHRpb25zKSAmJlxuICAgICAgICAgICAgY29sdW1uT3B0aW9ucy5mb3JlaWduS2V5Q29sdW1uICYmIFtcbiAgICAgICAgICAgICAgLi4uT2JqZWN0LnZhbHVlcyhjb2x1bW5PcHRpb25zLmZvcmVpZ25LZXlDb2x1bW4pLm1hcChcbiAgICAgICAgICAgICAgICAoZm9yZWlnbktleU5hbWUpID0+XG4gICAgICAgICAgICAgICAgICBBdHRyaWJ1dGVPcHRpb25IZWxwZXIuRmluZEJ5QXR0cmlidXRlKGZvcmVpZ25LZXlOYW1lIGFzIGFueSwgdGhpcy5maWVsZHMpPy5jb2x1bW5OYW1lLFxuICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgW2NvbHVtbk9wdGlvbnMuY29sdW1uTmFtZV06IE9iamVjdC5rZXlzKGNvbHVtbk9wdGlvbnMuZm9yZWlnbktleUNvbHVtbikubWFwKFxuICAgICAgICAgICAgICAgICAgKGZvcmVpZ25LZXlGaWVsZCkgPT5cbiAgICAgICAgICAgICAgICAgICAgQXR0cmlidXRlT3B0aW9uSGVscGVyLkZpbmRCeUF0dHJpYnV0ZShmb3JlaWduS2V5RmllbGQgYXMgYW55LCBjb2x1bW5PcHRpb25zPy5maWVsZHMpPy5jb2x1bW5OYW1lIHx8XG4gICAgICAgICAgICAgICAgICAgIGZvcmVpZ25LZXlGaWVsZCxcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgXVxuICAgICAgICAgIClcbiAgICAgICAgfSlcbiAgICAgICAgLmZpbHRlcihCb29sZWFuKVxuICAgICAgICAucmVkdWNlKChrZXlzLCBjdXJyZW50KSA9PiBbLi4ua2V5cywgLi4uY3VycmVudF0sIFtdKVxuXG4gICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0aGlzLm11dGF0aW9uPFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIGFueT4+PihcbiAgICAgICAgdGhpcy5pbnNlcnRHcmFwaFFMT3BlcmF0aW9uLFxuICAgICAgICBbLi4ucHJpbWFyeUtleUNvbHVtbnMsIC4uLmZvcmVpZ25LZXlDb2x1bW5zXSBhcyBIYXN1cmFHcmFwaFFMRmllbGRzPE1CYXNlPixcbiAgICAgICAge1xuICAgICAgICAgIG9iamVjdDogeyB0eXBlOiB0aGlzLmluc2VydEdyYXBoUUxPYmplY3RUeXBlLCByZXF1aXJlZDogdHJ1ZSwgdmFsdWU6IHRoaXMuY29udmVydERhdGFUb0hhc3VyYShkYXRhKSB9LFxuICAgICAgICB9LFxuICAgICAgKVxuXG4gICAgICByZXR1cm4geyAuLi5kYXRhLnRvUGxhaW4oKSwgLi4udGhpcy5jb252ZXJ0RGF0YUZyb21IYXN1cmEocmVzdWx0W3RoaXMuaW5zZXJ0R3JhcGhRTE9wZXJhdGlvbl0pLnRvUGxhaW4oKSB9XG4gICAgfVxuICB9IGFzIGFueVxufVxuIl19
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1jcmVhdGUtaGFzdXJhLWdyYXBocWwubWl4aW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC9taXhpbnMvd2l0aC1jcmVhdGUtaGFzdXJhLWdyYXBocWwubWl4aW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFdBQVcsRUFBcUMsTUFBTSxnQkFBZ0IsQ0FBQTtBQUcvRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxXQUFXLENBQUE7QUFRakQsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQUcsQ0FJckMsU0FBMkQsRUFJM0QsRUFBRTtJQUNGLE9BQU8sTUFBTSx3QkFBeUIsU0FBUSxTQUFTO1FBSXJELFlBQVksR0FBRyxNQUFhO1lBQzFCLE1BQU0sT0FBTyxHQUE0QixNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQTtZQUVwRCxLQUFLLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQTtZQUVoQixJQUFJLENBQUMsc0JBQXNCLEdBQUcsT0FBTyxFQUFFLHNCQUFzQixJQUFJLFVBQVUsSUFBSSxDQUFDLFNBQVMsTUFBTSxDQUFBO1lBQy9GLElBQUksQ0FBQyx1QkFBdUIsR0FBRyxPQUFPLEVBQUUsdUJBQXVCLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxlQUFlLENBQUE7UUFDckcsQ0FBQztRQUVELEtBQUssQ0FBQyxNQUFNLENBQUMsSUFBbUM7WUFDOUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQTtZQUU5QyxNQUFNLE9BQU8sR0FBRyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQTtZQUU1RCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFBO1FBQ3ZDLENBQUM7UUFFRCxLQUFLLENBQUMsSUFBSSxDQUFDLElBQVc7WUFDcEIsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FDeEQsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLHFCQUFxQixDQUFDLGVBQWUsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLFVBQVUsQ0FDbEQsQ0FBQTtZQUMvQixNQUFNLGlCQUFpQixHQUFHLElBQUksQ0FBQyxNQUFNO2lCQUNsQyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtnQkFDYixNQUFNLGFBQWEsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFBO2dCQUVsRCxPQUFPLENBQ0wscUJBQXFCLENBQUMsbUJBQW1CLENBQUMsYUFBYSxDQUFDO29CQUN4RCxhQUFhLENBQUMsZ0JBQWdCLElBQUk7b0JBQ2hDLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxHQUFHLENBQ2xELENBQUMsY0FBYyxFQUFFLEVBQUUsQ0FDakIscUJBQXFCLENBQUMsZUFBZSxDQUFDLGNBQXFCLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFVBQVUsQ0FDeEY7b0JBQ0Q7d0JBQ0UsQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxHQUFHLENBQ3pFLENBQUMsZUFBZSxFQUFFLEVBQUUsQ0FDbEIscUJBQXFCLENBQUMsZUFBZSxDQUFDLGVBQXNCLEVBQUUsYUFBYSxFQUFFLE1BQWEsQ0FBQzs0QkFDekYsRUFBRSxVQUFVLElBQUksZUFBZSxDQUNwQztxQkFDRjtpQkFDRixDQUNGLENBQUE7WUFDSCxDQUFDLENBQUM7aUJBQ0QsTUFBTSxDQUFDLE9BQU8sQ0FBQztpQkFDZixNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsSUFBSSxFQUFFLEdBQUcsT0FBTyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUE7WUFFdkQsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsUUFBUSxDQUNoQyxJQUFJLENBQUMsc0JBQXNCLEVBQzNCLENBQUMsR0FBRyxpQkFBaUIsRUFBRSxHQUFHLGlCQUFpQixDQUErQixFQUMxRTtnQkFDRSxNQUFNLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLHVCQUF1QixFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsRUFBRTthQUN0RyxDQUNGLENBQUE7WUFFRCxPQUFPLEVBQUUsR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLEVBQUUsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQTtRQUM1RyxDQUFDO0tBQ0ssQ0FBQTtBQUNWLENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENyZWF0ZVJlcG9zaXRvcnksIENyZWF0ZVJlcG9zaXRvcnlQYXJhbXMsIE1vZGVsQmFzZVN0cnVjdHVyZSB9IGZyb20gJy4uLy4uLy4uL2RvbWFpbidcbmltcG9ydCB7IERlYnVnSGVscGVyLCBNZXJnZUNvbnN0cnVjdG9yUGFyYW1zLCBNaXhpbkN0b3IgfSBmcm9tICcuLi8uLi8uLi91dGlscydcbmltcG9ydCB7IEdyYXBoUUxSZXBvc2l0b3J5LCBIYXN1cmFHcmFwaFFMRmllbGRzIH0gZnJvbSAnLi4vdHlwZXMnXG5cbmltcG9ydCB7IEF0dHJpYnV0ZU9wdGlvbkhlbHBlciB9IGZyb20gJy4vaGVscGVycydcblxuZXhwb3J0IHR5cGUgQ3JlYXRlQ29uc3RydWN0b3JQYXJhbXMgPSB7XG4gIGluc2VydEdyYXBoUUxPcGVyYXRpb24/OiBzdHJpbmdcbiAgaW5zZXJ0QWxsR3JhcGhRTE9wZXJhdGlvbj86IHN0cmluZ1xuICBpbnNlcnRHcmFwaFFMT2JqZWN0VHlwZT86IHN0cmluZ1xufVxuXG5leHBvcnQgY29uc3Qgd2l0aENyZWF0ZUhhc3VyYUdyYXBoUUwgPSA8XG4gIE1CYXNlIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlPE1CYXNlLCBNQmFzZVsnaWRlbnRpZmllcnNGaWVsZHMnXVtudW1iZXJdPixcbiAgVE1peGluQmFzZSBleHRlbmRzIE1peGluQ3RvcjxHcmFwaFFMUmVwb3NpdG9yeTxNQmFzZT4+LFxuPihcbiAgTWl4aW5CYXNlOiBNaXhpbkN0b3I8R3JhcGhRTFJlcG9zaXRvcnk8TUJhc2U+PiAmIFRNaXhpbkJhc2UsXG4pOiBNaXhpbkN0b3I8XG4gIEdyYXBoUUxSZXBvc2l0b3J5PE1CYXNlPiAmIEluc3RhbmNlVHlwZTxUTWl4aW5CYXNlPiAmIENyZWF0ZVJlcG9zaXRvcnk8TUJhc2U+LFxuICBNZXJnZUNvbnN0cnVjdG9yUGFyYW1zPFtDcmVhdGVDb25zdHJ1Y3RvclBhcmFtcywgLi4uYW55W11dLCBDb25zdHJ1Y3RvclBhcmFtZXRlcnM8VE1peGluQmFzZT4+XG4+ID0+IHtcbiAgcmV0dXJuIGNsYXNzIENyZWF0ZUhhc3VyYUdyYXBoUUxNaXhpbiBleHRlbmRzIE1peGluQmFzZSBpbXBsZW1lbnRzIENyZWF0ZVJlcG9zaXRvcnk8TUJhc2U+IHtcbiAgICBpbnNlcnRHcmFwaFFMT3BlcmF0aW9uOiBzdHJpbmdcbiAgICBpbnNlcnRHcmFwaFFMT2JqZWN0VHlwZTogc3RyaW5nXG5cbiAgICBjb25zdHJ1Y3RvciguLi5wYXJhbXM6IGFueVtdKSB7XG4gICAgICBjb25zdCBvcHRpb25zOiBDcmVhdGVDb25zdHJ1Y3RvclBhcmFtcyA9IHBhcmFtcz8uWzBdXG5cbiAgICAgIHN1cGVyKC4uLnBhcmFtcylcblxuICAgICAgdGhpcy5pbnNlcnRHcmFwaFFMT3BlcmF0aW9uID0gb3B0aW9ucz8uaW5zZXJ0R3JhcGhRTE9wZXJhdGlvbiB8fCBgaW5zZXJ0XyR7dGhpcy50YWJsZU5hbWV9X29uZWBcbiAgICAgIHRoaXMuaW5zZXJ0R3JhcGhRTE9iamVjdFR5cGUgPSBvcHRpb25zPy5pbnNlcnRHcmFwaFFMT2JqZWN0VHlwZSB8fCBgJHt0aGlzLnRhYmxlTmFtZX1faW5zZXJ0X2lucHV0YFxuICAgIH1cblxuICAgIGFzeW5jIGNyZWF0ZShkYXRhOiBDcmVhdGVSZXBvc2l0b3J5UGFyYW1zPE1CYXNlPik6IFByb21pc2U8TUJhc2U+IHtcbiAgICAgIHRoaXMubG9nZ2VyID0gRGVidWdIZWxwZXIuZnJvbSh0aGlzLCAnY3JlYXRlJylcblxuICAgICAgY29uc3QgbmV3RGF0YSA9IGF3YWl0IHRoaXMuc2F2ZSh0aGlzLm1vZGVsLnRvSW5zdGFuY2UoZGF0YSkpXG5cbiAgICAgIHJldHVybiB0aGlzLm1vZGVsLnRvSW5zdGFuY2UobmV3RGF0YSlcbiAgICB9XG5cbiAgICBhc3luYyBzYXZlKGRhdGE6IE1CYXNlKTogUHJvbWlzZTxQYXJ0aWFsPE1CYXNlPj4ge1xuICAgICAgY29uc3QgcHJpbWFyeUtleUNvbHVtbnMgPSB0aGlzLm1vZGVsLmlkZW50aWZpZXJzRmllbGRzLm1hcChcbiAgICAgICAgKGZpZWxkKSA9PiBBdHRyaWJ1dGVPcHRpb25IZWxwZXIuRmluZEJ5QXR0cmlidXRlKGZpZWxkLCB0aGlzLmZpZWxkcykuY29sdW1uTmFtZSxcbiAgICAgICkgYXMgSGFzdXJhR3JhcGhRTEZpZWxkczxNQmFzZT5cbiAgICAgIGNvbnN0IGZvcmVpZ25LZXlDb2x1bW5zID0gdGhpcy5maWVsZHNcbiAgICAgICAgLm1hcCgoZmllbGQpID0+IHtcbiAgICAgICAgICBjb25zdCBjb2x1bW5PcHRpb25zID0gT2JqZWN0LnZhbHVlcyhmaWVsZCkuc2hpZnQoKVxuXG4gICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIEF0dHJpYnV0ZU9wdGlvbkhlbHBlci5DaGVja0lzQ29sdW1uT3B0aW9uKGNvbHVtbk9wdGlvbnMpICYmXG4gICAgICAgICAgICBjb2x1bW5PcHRpb25zLmZvcmVpZ25LZXlDb2x1bW4gJiYgW1xuICAgICAgICAgICAgICAuLi5PYmplY3QudmFsdWVzKGNvbHVtbk9wdGlvbnMuZm9yZWlnbktleUNvbHVtbikubWFwKFxuICAgICAgICAgICAgICAgIChmb3JlaWduS2V5TmFtZSkgPT5cbiAgICAgICAgICAgICAgICAgIEF0dHJpYnV0ZU9wdGlvbkhlbHBlci5GaW5kQnlBdHRyaWJ1dGUoZm9yZWlnbktleU5hbWUgYXMgYW55LCB0aGlzLmZpZWxkcyk/LmNvbHVtbk5hbWUsXG4gICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBbY29sdW1uT3B0aW9ucy5jb2x1bW5OYW1lXTogT2JqZWN0LmtleXMoY29sdW1uT3B0aW9ucy5mb3JlaWduS2V5Q29sdW1uKS5tYXAoXG4gICAgICAgICAgICAgICAgICAoZm9yZWlnbktleUZpZWxkKSA9PlxuICAgICAgICAgICAgICAgICAgICBBdHRyaWJ1dGVPcHRpb25IZWxwZXIuRmluZEJ5QXR0cmlidXRlKGZvcmVpZ25LZXlGaWVsZCBhcyBhbnksIGNvbHVtbk9wdGlvbnM/LmZpZWxkcyBhcyBhbnkpXG4gICAgICAgICAgICAgICAgICAgICAgPy5jb2x1bW5OYW1lIHx8IGZvcmVpZ25LZXlGaWVsZCxcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgXVxuICAgICAgICAgIClcbiAgICAgICAgfSlcbiAgICAgICAgLmZpbHRlcihCb29sZWFuKVxuICAgICAgICAucmVkdWNlKChrZXlzLCBjdXJyZW50KSA9PiBbLi4ua2V5cywgLi4uY3VycmVudF0sIFtdKVxuXG4gICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0aGlzLm11dGF0aW9uPFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIGFueT4+PihcbiAgICAgICAgdGhpcy5pbnNlcnRHcmFwaFFMT3BlcmF0aW9uLFxuICAgICAgICBbLi4ucHJpbWFyeUtleUNvbHVtbnMsIC4uLmZvcmVpZ25LZXlDb2x1bW5zXSBhcyBIYXN1cmFHcmFwaFFMRmllbGRzPE1CYXNlPixcbiAgICAgICAge1xuICAgICAgICAgIG9iamVjdDogeyB0eXBlOiB0aGlzLmluc2VydEdyYXBoUUxPYmplY3RUeXBlLCByZXF1aXJlZDogdHJ1ZSwgdmFsdWU6IHRoaXMuY29udmVydERhdGFUb0hhc3VyYShkYXRhKSB9LFxuICAgICAgICB9LFxuICAgICAgKVxuXG4gICAgICByZXR1cm4geyAuLi5kYXRhLnRvUGxhaW4oKSwgLi4udGhpcy5jb252ZXJ0RGF0YUZyb21IYXN1cmEocmVzdWx0W3RoaXMuaW5zZXJ0R3JhcGhRTE9wZXJhdGlvbl0pLnRvUGxhaW4oKSB9XG4gICAgfVxuICB9IGFzIGFueVxufVxuIl19
@@ -7,4 +7,4 @@ export const withCrudHasuraGraphQL = (MixinBase) => {
7
7
  return class CrudHasuraGraphQLMixin extends withUpdateHasuraGraphQL(withGetHasuraGraphQL(withFindHasuraGraphQL(withDeleteHasuraGraphQL(withCreateHasuraGraphQL(MixinBase))))) {
8
8
  };
9
9
  };
10
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1jcnVkLWhhc3VyYS1ncmFwaHFsLm1peGluLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC9zcmMvaW5mcmEvaGFzdXJhLWdyYXBocWwvbWl4aW5zL3dpdGgtY3J1ZC1oYXN1cmEtZ3JhcGhxbC5taXhpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxPQUFPLEVBQTJCLHVCQUF1QixFQUFFLE1BQU0sb0NBQW9DLENBQUE7QUFDckcsT0FBTyxFQUEyQix1QkFBdUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFBO0FBQ3JHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFBO0FBQ3hFLE9BQU8sRUFBd0Isb0JBQW9CLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQTtBQUU1RixPQUFPLEVBR0wsdUJBQXVCLEdBQ3hCLE1BQU0sb0NBQW9DLENBQUE7QUFFM0MsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsQ0FLbkMsU0FBMkQsRUFjM0QsRUFBRTtJQUNGLE9BQU8sTUFBTSxzQkFDWCxTQUFRLHVCQUF1QixDQUM3QixvQkFBb0IsQ0FDbEIscUJBQXFCLENBQ25CLHVCQUF1QixDQUFDLHVCQUF1QixDQUFDLFNBQWdELENBQUMsQ0FBQyxDQUNuRyxDQUNGLENBQ0Y7S0FDeUMsQ0FBQTtBQUM5QyxDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDcnVkUmVwb3NpdG9yeSwgTW9kZWxCYXNlU3RydWN0dXJlIH0gZnJvbSAnLi4vLi4vLi4vZG9tYWluJ1xuaW1wb3J0IHsgTWVyZ2VDb25zdHJ1Y3RvclBhcmFtcywgTWl4aW5DdG9yIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMnXG5pbXBvcnQgeyBHcmFwaFFMUmVwb3NpdG9yeSB9IGZyb20gJy4uL3R5cGVzJ1xuXG5pbXBvcnQgeyBDcmVhdGVDb25zdHJ1Y3RvclBhcmFtcywgd2l0aENyZWF0ZUhhc3VyYUdyYXBoUUwgfSBmcm9tICcuL3dpdGgtY3JlYXRlLWhhc3VyYS1ncmFwaHFsLm1peGluJ1xuaW1wb3J0IHsgRGVsZXRlQ29uc3RydWN0b3JQYXJhbXMsIHdpdGhEZWxldGVIYXN1cmFHcmFwaFFMIH0gZnJvbSAnLi93aXRoLWRlbGV0ZS1oYXN1cmEtZ3JhcGhxbC5taXhpbidcbmltcG9ydCB7IHdpdGhGaW5kSGFzdXJhR3JhcGhRTCB9IGZyb20gJy4vd2l0aC1maW5kLWhhc3VyYS1ncmFwaHFsLm1peGluJ1xuaW1wb3J0IHsgR2V0Q29uc3RydWN0b3JQYXJhbXMsIHdpdGhHZXRIYXN1cmFHcmFwaFFMIH0gZnJvbSAnLi93aXRoLWdldC1oYXN1cmEtZ3JhcGhxbC5taXhpbidcbmltcG9ydCB7IEhhc3VyYUNvbnN0cnVjdG9yUGFyYW1zIH0gZnJvbSAnLi93aXRoLWhhc3VyYS1ncmFwaHFsLm1peGluJ1xuaW1wb3J0IHtcbiAgVXBkYXRlQ29uc3RydWN0b3JQYXJhbXMsXG4gIFVwZGF0ZUhhc3VyYUdyYXBoUUxSZXBvc2l0b3J5VHlwZSxcbiAgd2l0aFVwZGF0ZUhhc3VyYUdyYXBoUUwsXG59IGZyb20gJy4vd2l0aC11cGRhdGUtaGFzdXJhLWdyYXBocWwubWl4aW4nXG5cbmV4cG9ydCBjb25zdCB3aXRoQ3J1ZEhhc3VyYUdyYXBoUUwgPSA8XG4gIFRCYXNlIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlLFxuICBSZXBvc2l0b3J5ID0gQ3J1ZFJlcG9zaXRvcnk8VEJhc2U+LFxuICBUTWl4aW5CYXNlIGV4dGVuZHMgTWl4aW5DdG9yID0gTWl4aW5DdG9yLFxuPihcbiAgTWl4aW5CYXNlOiBNaXhpbkN0b3I8R3JhcGhRTFJlcG9zaXRvcnk8VEJhc2U+PiAmIFRNaXhpbkJhc2UsXG4pOiBNaXhpbkN0b3I8XG4gIEdyYXBoUUxSZXBvc2l0b3J5PFRCYXNlPiAmIFJlcG9zaXRvcnkgJiBVcGRhdGVIYXN1cmFHcmFwaFFMUmVwb3NpdG9yeVR5cGU8VEJhc2U+LFxuICBNZXJnZUNvbnN0cnVjdG9yUGFyYW1zPFxuICAgIFtcbiAgICAgIEhhc3VyYUNvbnN0cnVjdG9yUGFyYW1zPFRCYXNlPiAmXG4gICAgICAgIENyZWF0ZUNvbnN0cnVjdG9yUGFyYW1zICZcbiAgICAgICAgRGVsZXRlQ29uc3RydWN0b3JQYXJhbXMgJlxuICAgICAgICBHZXRDb25zdHJ1Y3RvclBhcmFtcyAmXG4gICAgICAgIFVwZGF0ZUNvbnN0cnVjdG9yUGFyYW1zLFxuICAgICAgLi4uYW55W10sXG4gICAgXSxcbiAgICBDb25zdHJ1Y3RvclBhcmFtZXRlcnM8VE1peGluQmFzZT5cbiAgPlxuPiA9PiB7XG4gIHJldHVybiBjbGFzcyBDcnVkSGFzdXJhR3JhcGhRTE1peGluXG4gICAgZXh0ZW5kcyB3aXRoVXBkYXRlSGFzdXJhR3JhcGhRTChcbiAgICAgIHdpdGhHZXRIYXN1cmFHcmFwaFFMKFxuICAgICAgICB3aXRoRmluZEhhc3VyYUdyYXBoUUwoXG4gICAgICAgICAgd2l0aERlbGV0ZUhhc3VyYUdyYXBoUUwod2l0aENyZWF0ZUhhc3VyYUdyYXBoUUwoTWl4aW5CYXNlIGFzIE1peGluQ3RvcjxHcmFwaFFMUmVwb3NpdG9yeTxUQmFzZT4+KSksXG4gICAgICAgICksXG4gICAgICApLFxuICAgIClcbiAgICBpbXBsZW1lbnRzIENydWRSZXBvc2l0b3J5PFRCYXNlPiB7fSBhcyBhbnlcbn1cbiJdfQ==
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1jcnVkLWhhc3VyYS1ncmFwaHFsLm1peGluLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC9zcmMvaW5mcmEvaGFzdXJhLWdyYXBocWwvbWl4aW5zL3dpdGgtY3J1ZC1oYXN1cmEtZ3JhcGhxbC5taXhpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxPQUFPLEVBQTJCLHVCQUF1QixFQUFFLE1BQU0sb0NBQW9DLENBQUE7QUFDckcsT0FBTyxFQUEyQix1QkFBdUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFBO0FBQ3JHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFBO0FBQ3hFLE9BQU8sRUFBd0Isb0JBQW9CLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQTtBQUU1RixPQUFPLEVBR0wsdUJBQXVCLEdBQ3hCLE1BQU0sb0NBQW9DLENBQUE7QUFFM0MsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsQ0FLbkMsU0FBMkQsRUFjM0QsRUFBRTtJQUNGLE9BQU8sTUFBTSxzQkFDWCxTQUFRLHVCQUF1QixDQUM3QixvQkFBb0IsQ0FDbEIscUJBQXFCLENBQ25CLHVCQUF1QixDQUFDLHVCQUF1QixDQUFDLFNBQWdELENBQUMsQ0FBQyxDQUNuRyxDQUNGLENBQ0Y7S0FDeUMsQ0FBQTtBQUM5QyxDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDcnVkUmVwb3NpdG9yeSwgTW9kZWxCYXNlU3RydWN0dXJlIH0gZnJvbSAnLi4vLi4vLi4vZG9tYWluJ1xuaW1wb3J0IHsgTWVyZ2VDb25zdHJ1Y3RvclBhcmFtcywgTWl4aW5DdG9yIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMnXG5pbXBvcnQgeyBHcmFwaFFMUmVwb3NpdG9yeSB9IGZyb20gJy4uL3R5cGVzJ1xuXG5pbXBvcnQgeyBDcmVhdGVDb25zdHJ1Y3RvclBhcmFtcywgd2l0aENyZWF0ZUhhc3VyYUdyYXBoUUwgfSBmcm9tICcuL3dpdGgtY3JlYXRlLWhhc3VyYS1ncmFwaHFsLm1peGluJ1xuaW1wb3J0IHsgRGVsZXRlQ29uc3RydWN0b3JQYXJhbXMsIHdpdGhEZWxldGVIYXN1cmFHcmFwaFFMIH0gZnJvbSAnLi93aXRoLWRlbGV0ZS1oYXN1cmEtZ3JhcGhxbC5taXhpbidcbmltcG9ydCB7IHdpdGhGaW5kSGFzdXJhR3JhcGhRTCB9IGZyb20gJy4vd2l0aC1maW5kLWhhc3VyYS1ncmFwaHFsLm1peGluJ1xuaW1wb3J0IHsgR2V0Q29uc3RydWN0b3JQYXJhbXMsIHdpdGhHZXRIYXN1cmFHcmFwaFFMIH0gZnJvbSAnLi93aXRoLWdldC1oYXN1cmEtZ3JhcGhxbC5taXhpbidcbmltcG9ydCB7IEhhc3VyYUNvbnN0cnVjdG9yUGFyYW1zIH0gZnJvbSAnLi93aXRoLWhhc3VyYS1ncmFwaHFsLm1peGluJ1xuaW1wb3J0IHtcbiAgVXBkYXRlQ29uc3RydWN0b3JQYXJhbXMsXG4gIFVwZGF0ZUhhc3VyYUdyYXBoUUxSZXBvc2l0b3J5VHlwZSxcbiAgd2l0aFVwZGF0ZUhhc3VyYUdyYXBoUUwsXG59IGZyb20gJy4vd2l0aC11cGRhdGUtaGFzdXJhLWdyYXBocWwubWl4aW4nXG5cbmV4cG9ydCBjb25zdCB3aXRoQ3J1ZEhhc3VyYUdyYXBoUUwgPSA8XG4gIFRCYXNlIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlPFRCYXNlLCBUQmFzZVsnaWRlbnRpZmllcnNGaWVsZHMnXVtudW1iZXJdPixcbiAgUmVwb3NpdG9yeSA9IENydWRSZXBvc2l0b3J5PFRCYXNlPixcbiAgVE1peGluQmFzZSBleHRlbmRzIE1peGluQ3RvciA9IE1peGluQ3Rvcixcbj4oXG4gIE1peGluQmFzZTogTWl4aW5DdG9yPEdyYXBoUUxSZXBvc2l0b3J5PFRCYXNlPj4gJiBUTWl4aW5CYXNlLFxuKTogTWl4aW5DdG9yPFxuICBHcmFwaFFMUmVwb3NpdG9yeTxUQmFzZT4gJiBSZXBvc2l0b3J5ICYgVXBkYXRlSGFzdXJhR3JhcGhRTFJlcG9zaXRvcnlUeXBlPFRCYXNlPixcbiAgTWVyZ2VDb25zdHJ1Y3RvclBhcmFtczxcbiAgICBbXG4gICAgICBIYXN1cmFDb25zdHJ1Y3RvclBhcmFtczxUQmFzZT4gJlxuICAgICAgICBDcmVhdGVDb25zdHJ1Y3RvclBhcmFtcyAmXG4gICAgICAgIERlbGV0ZUNvbnN0cnVjdG9yUGFyYW1zICZcbiAgICAgICAgR2V0Q29uc3RydWN0b3JQYXJhbXMgJlxuICAgICAgICBVcGRhdGVDb25zdHJ1Y3RvclBhcmFtcyxcbiAgICAgIC4uLmFueVtdLFxuICAgIF0sXG4gICAgQ29uc3RydWN0b3JQYXJhbWV0ZXJzPFRNaXhpbkJhc2U+XG4gID5cbj4gPT4ge1xuICByZXR1cm4gY2xhc3MgQ3J1ZEhhc3VyYUdyYXBoUUxNaXhpblxuICAgIGV4dGVuZHMgd2l0aFVwZGF0ZUhhc3VyYUdyYXBoUUwoXG4gICAgICB3aXRoR2V0SGFzdXJhR3JhcGhRTChcbiAgICAgICAgd2l0aEZpbmRIYXN1cmFHcmFwaFFMKFxuICAgICAgICAgIHdpdGhEZWxldGVIYXN1cmFHcmFwaFFMKHdpdGhDcmVhdGVIYXN1cmFHcmFwaFFMKE1peGluQmFzZSBhcyBNaXhpbkN0b3I8R3JhcGhRTFJlcG9zaXRvcnk8VEJhc2U+PikpLFxuICAgICAgICApLFxuICAgICAgKSxcbiAgICApXG4gICAgaW1wbGVtZW50cyBDcnVkUmVwb3NpdG9yeTxUQmFzZT4ge30gYXMgYW55XG59XG4iXX0=
@@ -1,4 +1,4 @@
1
- import { isNil } from '../../../utils';
1
+ import { DebugHelper, isNil } from '../../../utils';
2
2
  import { AttributeOptionHelper } from './helpers';
3
3
  export const withDeleteHasuraGraphQL = (MixinBase) => {
4
4
  return class DeleteHasuraGraphQLMixin extends MixinBase {
@@ -8,9 +8,11 @@ export const withDeleteHasuraGraphQL = (MixinBase) => {
8
8
  this.deleteGraphQLOperation = options?.deleteGraphQLOperation || `delete_${this.tableName}_by_pk`;
9
9
  }
10
10
  async delete(identifiers) {
11
+ this.logger = DebugHelper.from(this, 'delete');
11
12
  const instance = this.model.toInstance(identifiers);
12
13
  await this.mutation(this.deleteGraphQLOperation, this.model.identifiersFields.map((field) => AttributeOptionHelper.FindByAttribute(field, this.fields).columnName), this.model.identifiersFields.reduce((ids, identifier) => {
13
- if (isNil(instance[identifier]))
14
+ const identifierBinded = identifier;
15
+ if (isNil(instance.identifier[identifierBinded]))
14
16
  return ids;
15
17
  const columnOption = AttributeOptionHelper.FindByAttribute(identifier, this.fields);
16
18
  const value = columnOption.to(identifiers[identifier], instance);
@@ -26,4 +28,4 @@ export const withDeleteHasuraGraphQL = (MixinBase) => {
26
28
  }
27
29
  };
28
30
  };
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1kZWxldGUtaGFzdXJhLWdyYXBocWwubWl4aW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC9taXhpbnMvd2l0aC1kZWxldGUtaGFzdXJhLWdyYXBocWwubWl4aW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLEtBQUssRUFBcUMsTUFBTSxnQkFBZ0IsQ0FBQTtBQUd6RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxXQUFXLENBQUE7QUFNakQsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQUcsQ0FJckMsU0FBMkQsRUFJM0QsRUFBRTtJQUNGLE9BQU8sTUFBTSx3QkFBeUIsU0FBUSxTQUFTO1FBR3JELFlBQVksR0FBRyxNQUFhO1lBQzFCLE1BQU0sT0FBTyxHQUE0QixNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQTtZQUVwRCxLQUFLLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQTtZQUVoQixJQUFJLENBQUMsc0JBQXNCLEdBQUcsT0FBTyxFQUFFLHNCQUFzQixJQUFJLFVBQVUsSUFBSSxDQUFDLFNBQVMsUUFBUSxDQUFBO1FBQ25HLENBQUM7UUFFRCxLQUFLLENBQUMsTUFBTSxDQUFDLFdBQTBDO1lBQ3JELE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLFdBQWtCLENBQUMsQ0FBQTtZQUUxRCxNQUFNLElBQUksQ0FBQyxRQUFRLENBQ2pCLElBQUksQ0FBQyxzQkFBc0IsRUFDM0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQzlCLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQyxlQUFlLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxVQUFVLENBQ2xELEVBQy9CLElBQUksQ0FBQyxLQUFLLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLFVBQVUsRUFBRSxFQUFFO2dCQUN0RCxJQUFJLEtBQUssQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLENBQUM7b0JBQUUsT0FBTyxHQUFHLENBQUE7Z0JBRTNDLE1BQU0sWUFBWSxHQUFHLHFCQUFxQixDQUFDLGVBQWUsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFBO2dCQUNuRixNQUFNLEtBQUssR0FBRyxZQUFZLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxVQUFpRCxDQUFDLEVBQUUsUUFBUSxDQUFDLENBQUE7Z0JBRXZHLE9BQU87b0JBQ0wsR0FBRyxHQUFHO29CQUNOLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxFQUFFO3dCQUN6QixJQUFJLEVBQUUsSUFBSSxDQUFDLHlCQUF5QixDQUFDLFlBQVksQ0FBQyxJQUFJLElBQUksS0FBSyxDQUFDO3dCQUNoRSxLQUFLO3dCQUNMLFFBQVEsRUFBRSxJQUFJO3FCQUNmO2lCQUNGLENBQUE7WUFDSCxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQ1AsQ0FBQTtRQUNILENBQUM7S0FDSyxDQUFBO0FBQ1YsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGVsZXRlUmVwb3NpdG9yeSwgRGVsZXRlUmVwb3NpdG9yeVBhcmFtcywgTW9kZWxCYXNlU3RydWN0dXJlIH0gZnJvbSAnLi4vLi4vLi4vZG9tYWluJ1xuaW1wb3J0IHsgaXNOaWwsIE1lcmdlQ29uc3RydWN0b3JQYXJhbXMsIE1peGluQ3RvciB9IGZyb20gJy4uLy4uLy4uL3V0aWxzJ1xuaW1wb3J0IHsgR3JhcGhRTFJlcG9zaXRvcnksIEhhc3VyYUdyYXBoUUxGaWVsZHMgfSBmcm9tICcuLi90eXBlcydcblxuaW1wb3J0IHsgQXR0cmlidXRlT3B0aW9uSGVscGVyIH0gZnJvbSAnLi9oZWxwZXJzJ1xuXG5leHBvcnQgdHlwZSBEZWxldGVDb25zdHJ1Y3RvclBhcmFtcyA9IHtcbiAgZGVsZXRlR3JhcGhRTE9wZXJhdGlvbj86IHN0cmluZ1xufVxuXG5leHBvcnQgY29uc3Qgd2l0aERlbGV0ZUhhc3VyYUdyYXBoUUwgPSA8XG4gIE1CYXNlIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlLFxuICBUTWl4aW5CYXNlIGV4dGVuZHMgTWl4aW5DdG9yPEdyYXBoUUxSZXBvc2l0b3J5PE1CYXNlPj4sXG4+KFxuICBNaXhpbkJhc2U6IE1peGluQ3RvcjxHcmFwaFFMUmVwb3NpdG9yeTxNQmFzZT4+ICYgVE1peGluQmFzZSxcbik6IE1peGluQ3RvcjxcbiAgR3JhcGhRTFJlcG9zaXRvcnk8TUJhc2U+ICYgRGVsZXRlUmVwb3NpdG9yeTxNQmFzZT4gJiBJbnN0YW5jZVR5cGU8VE1peGluQmFzZT4sXG4gIE1lcmdlQ29uc3RydWN0b3JQYXJhbXM8W0RlbGV0ZUNvbnN0cnVjdG9yUGFyYW1zLCAuLi5hbnlbXV0sIENvbnN0cnVjdG9yUGFyYW1ldGVyczxUTWl4aW5CYXNlPj5cbj4gPT4ge1xuICByZXR1cm4gY2xhc3MgRGVsZXRlSGFzdXJhR3JhcGhRTE1peGluIGV4dGVuZHMgTWl4aW5CYXNlIGltcGxlbWVudHMgRGVsZXRlUmVwb3NpdG9yeTxNQmFzZT4ge1xuICAgIGRlbGV0ZUdyYXBoUUxPcGVyYXRpb246IHN0cmluZ1xuXG4gICAgY29uc3RydWN0b3IoLi4ucGFyYW1zOiBhbnlbXSkge1xuICAgICAgY29uc3Qgb3B0aW9uczogRGVsZXRlQ29uc3RydWN0b3JQYXJhbXMgPSBwYXJhbXM/LlswXVxuXG4gICAgICBzdXBlciguLi5wYXJhbXMpXG5cbiAgICAgIHRoaXMuZGVsZXRlR3JhcGhRTE9wZXJhdGlvbiA9IG9wdGlvbnM/LmRlbGV0ZUdyYXBoUUxPcGVyYXRpb24gfHwgYGRlbGV0ZV8ke3RoaXMudGFibGVOYW1lfV9ieV9wa2BcbiAgICB9XG5cbiAgICBhc3luYyBkZWxldGUoaWRlbnRpZmllcnM6IERlbGV0ZVJlcG9zaXRvcnlQYXJhbXM8TUJhc2U+KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICBjb25zdCBpbnN0YW5jZSA9IHRoaXMubW9kZWwudG9JbnN0YW5jZShpZGVudGlmaWVycyBhcyBhbnkpXG5cbiAgICAgIGF3YWl0IHRoaXMubXV0YXRpb24oXG4gICAgICAgIHRoaXMuZGVsZXRlR3JhcGhRTE9wZXJhdGlvbixcbiAgICAgICAgdGhpcy5tb2RlbC5pZGVudGlmaWVyc0ZpZWxkcy5tYXAoXG4gICAgICAgICAgKGZpZWxkKSA9PiBBdHRyaWJ1dGVPcHRpb25IZWxwZXIuRmluZEJ5QXR0cmlidXRlKGZpZWxkLCB0aGlzLmZpZWxkcykuY29sdW1uTmFtZSxcbiAgICAgICAgKSBhcyBIYXN1cmFHcmFwaFFMRmllbGRzPE1CYXNlPixcbiAgICAgICAgdGhpcy5tb2RlbC5pZGVudGlmaWVyc0ZpZWxkcy5yZWR1Y2UoKGlkcywgaWRlbnRpZmllcikgPT4ge1xuICAgICAgICAgIGlmIChpc05pbChpbnN0YW5jZVtpZGVudGlmaWVyXSkpIHJldHVybiBpZHNcblxuICAgICAgICAgIGNvbnN0IGNvbHVtbk9wdGlvbiA9IEF0dHJpYnV0ZU9wdGlvbkhlbHBlci5GaW5kQnlBdHRyaWJ1dGUoaWRlbnRpZmllciwgdGhpcy5maWVsZHMpXG4gICAgICAgICAgY29uc3QgdmFsdWUgPSBjb2x1bW5PcHRpb24udG8oaWRlbnRpZmllcnNbaWRlbnRpZmllciBhcyBrZXlvZiBEZWxldGVSZXBvc2l0b3J5UGFyYW1zPE1CYXNlPl0sIGluc3RhbmNlKVxuXG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIC4uLmlkcyxcbiAgICAgICAgICAgIFtjb2x1bW5PcHRpb24uY29sdW1uTmFtZV06IHtcbiAgICAgICAgICAgICAgdHlwZTogdGhpcy5nZXRBdHRyaWJ1dGVHcmFwaFFMVHlwZU9mKGNvbHVtbk9wdGlvbi50eXBlIHx8IHZhbHVlKSxcbiAgICAgICAgICAgICAgdmFsdWUsXG4gICAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9XG4gICAgICAgIH0sIHt9KSxcbiAgICAgIClcbiAgICB9XG4gIH0gYXMgYW55XG59XG4iXX0=
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1kZWxldGUtaGFzdXJhLWdyYXBocWwubWl4aW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC9taXhpbnMvd2l0aC1kZWxldGUtaGFzdXJhLWdyYXBocWwubWl4aW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBTUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQXFDLE1BQU0sZ0JBQWdCLENBQUE7QUFHdEYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sV0FBVyxDQUFBO0FBTWpELE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUFHLENBSXJDLFNBQTJELEVBSTNELEVBQUU7SUFDRixPQUFPLE1BQU0sd0JBQXlCLFNBQVEsU0FBUztRQUdyRCxZQUFZLEdBQUcsTUFBYTtZQUMxQixNQUFNLE9BQU8sR0FBNEIsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUE7WUFFcEQsS0FBSyxDQUFDLEdBQUcsTUFBTSxDQUFDLENBQUE7WUFFaEIsSUFBSSxDQUFDLHNCQUFzQixHQUFHLE9BQU8sRUFBRSxzQkFBc0IsSUFBSSxVQUFVLElBQUksQ0FBQyxTQUFTLFFBQVEsQ0FBQTtRQUNuRyxDQUFDO1FBRUQsS0FBSyxDQUFDLE1BQU0sQ0FBQyxXQUEwQztZQUNyRCxJQUFJLENBQUMsTUFBTSxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFBO1lBRTlDLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxDQUFBO1lBRW5ELE1BQU0sSUFBSSxDQUFDLFFBQVEsQ0FDakIsSUFBSSxDQUFDLHNCQUFzQixFQUMzQixJQUFJLENBQUMsS0FBSyxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FDOUIsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLHFCQUFxQixDQUFDLGVBQWUsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLFVBQVUsQ0FDbEQsRUFDL0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsVUFBVSxFQUFFLEVBQUU7Z0JBQ3RELE1BQU0sZ0JBQWdCLEdBR2xCLFVBQVUsQ0FBQTtnQkFFZCxJQUFJLEtBQUssQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLGdCQUFnQixDQUFDLENBQUM7b0JBQUUsT0FBTyxHQUFHLENBQUE7Z0JBRTVELE1BQU0sWUFBWSxHQUFHLHFCQUFxQixDQUFDLGVBQWUsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFBO2dCQUNuRixNQUFNLEtBQUssR0FBRyxZQUFZLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxVQUFpRCxDQUFDLEVBQUUsUUFBUSxDQUFDLENBQUE7Z0JBRXZHLE9BQU87b0JBQ0wsR0FBRyxHQUFHO29CQUNOLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxFQUFFO3dCQUN6QixJQUFJLEVBQUUsSUFBSSxDQUFDLHlCQUF5QixDQUFDLFlBQVksQ0FBQyxJQUFJLElBQUksS0FBSyxDQUFDO3dCQUNoRSxLQUFLO3dCQUNMLFFBQVEsRUFBRSxJQUFJO3FCQUNmO2lCQUNGLENBQUE7WUFDSCxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQ1AsQ0FBQTtRQUNILENBQUM7S0FDSyxDQUFBO0FBQ1YsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRGVsZXRlUmVwb3NpdG9yeSxcbiAgRGVsZXRlUmVwb3NpdG9yeVBhcmFtcyxcbiAgTW9kZWxCYXNlU3RydWN0dXJlLFxuICBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzLFxufSBmcm9tICcuLi8uLi8uLi9kb21haW4nXG5pbXBvcnQgeyBEZWJ1Z0hlbHBlciwgaXNOaWwsIE1lcmdlQ29uc3RydWN0b3JQYXJhbXMsIE1peGluQ3RvciB9IGZyb20gJy4uLy4uLy4uL3V0aWxzJ1xuaW1wb3J0IHsgR3JhcGhRTFJlcG9zaXRvcnksIEhhc3VyYUdyYXBoUUxGaWVsZHMgfSBmcm9tICcuLi90eXBlcydcblxuaW1wb3J0IHsgQXR0cmlidXRlT3B0aW9uSGVscGVyIH0gZnJvbSAnLi9oZWxwZXJzJ1xuXG5leHBvcnQgdHlwZSBEZWxldGVDb25zdHJ1Y3RvclBhcmFtcyA9IHtcbiAgZGVsZXRlR3JhcGhRTE9wZXJhdGlvbj86IHN0cmluZ1xufVxuXG5leHBvcnQgY29uc3Qgd2l0aERlbGV0ZUhhc3VyYUdyYXBoUUwgPSA8XG4gIE1CYXNlIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlPE1CYXNlLCBNQmFzZVsnaWRlbnRpZmllcnNGaWVsZHMnXVtudW1iZXJdPixcbiAgVE1peGluQmFzZSBleHRlbmRzIE1peGluQ3RvcjxHcmFwaFFMUmVwb3NpdG9yeTxNQmFzZT4+LFxuPihcbiAgTWl4aW5CYXNlOiBNaXhpbkN0b3I8R3JhcGhRTFJlcG9zaXRvcnk8TUJhc2U+PiAmIFRNaXhpbkJhc2UsXG4pOiBNaXhpbkN0b3I8XG4gIEdyYXBoUUxSZXBvc2l0b3J5PE1CYXNlPiAmIERlbGV0ZVJlcG9zaXRvcnk8TUJhc2U+ICYgSW5zdGFuY2VUeXBlPFRNaXhpbkJhc2U+LFxuICBNZXJnZUNvbnN0cnVjdG9yUGFyYW1zPFtEZWxldGVDb25zdHJ1Y3RvclBhcmFtcywgLi4uYW55W11dLCBDb25zdHJ1Y3RvclBhcmFtZXRlcnM8VE1peGluQmFzZT4+XG4+ID0+IHtcbiAgcmV0dXJuIGNsYXNzIERlbGV0ZUhhc3VyYUdyYXBoUUxNaXhpbiBleHRlbmRzIE1peGluQmFzZSBpbXBsZW1lbnRzIERlbGV0ZVJlcG9zaXRvcnk8TUJhc2U+IHtcbiAgICBkZWxldGVHcmFwaFFMT3BlcmF0aW9uOiBzdHJpbmdcblxuICAgIGNvbnN0cnVjdG9yKC4uLnBhcmFtczogYW55W10pIHtcbiAgICAgIGNvbnN0IG9wdGlvbnM6IERlbGV0ZUNvbnN0cnVjdG9yUGFyYW1zID0gcGFyYW1zPy5bMF1cblxuICAgICAgc3VwZXIoLi4ucGFyYW1zKVxuXG4gICAgICB0aGlzLmRlbGV0ZUdyYXBoUUxPcGVyYXRpb24gPSBvcHRpb25zPy5kZWxldGVHcmFwaFFMT3BlcmF0aW9uIHx8IGBkZWxldGVfJHt0aGlzLnRhYmxlTmFtZX1fYnlfcGtgXG4gICAgfVxuXG4gICAgYXN5bmMgZGVsZXRlKGlkZW50aWZpZXJzOiBEZWxldGVSZXBvc2l0b3J5UGFyYW1zPE1CYXNlPik6IFByb21pc2U8dm9pZD4ge1xuICAgICAgdGhpcy5sb2dnZXIgPSBEZWJ1Z0hlbHBlci5mcm9tKHRoaXMsICdkZWxldGUnKVxuXG4gICAgICBjb25zdCBpbnN0YW5jZSA9IHRoaXMubW9kZWwudG9JbnN0YW5jZShpZGVudGlmaWVycylcblxuICAgICAgYXdhaXQgdGhpcy5tdXRhdGlvbihcbiAgICAgICAgdGhpcy5kZWxldGVHcmFwaFFMT3BlcmF0aW9uLFxuICAgICAgICB0aGlzLm1vZGVsLmlkZW50aWZpZXJzRmllbGRzLm1hcChcbiAgICAgICAgICAoZmllbGQpID0+IEF0dHJpYnV0ZU9wdGlvbkhlbHBlci5GaW5kQnlBdHRyaWJ1dGUoZmllbGQsIHRoaXMuZmllbGRzKS5jb2x1bW5OYW1lLFxuICAgICAgICApIGFzIEhhc3VyYUdyYXBoUUxGaWVsZHM8TUJhc2U+LFxuICAgICAgICB0aGlzLm1vZGVsLmlkZW50aWZpZXJzRmllbGRzLnJlZHVjZSgoaWRzLCBpZGVudGlmaWVyKSA9PiB7XG4gICAgICAgICAgY29uc3QgaWRlbnRpZmllckJpbmRlZDogRXh0cmFjdDxcbiAgICAgICAgICAgIE5vbkZ1bmN0aW9uQW5kSWRlbnRpZmllclByb3BlcnR5TmFtZXM8TUJhc2U+LFxuICAgICAgICAgICAgTUJhc2VbJ2lkZW50aWZpZXJzRmllbGRzJ11bbnVtYmVyXVxuICAgICAgICAgID4gPSBpZGVudGlmaWVyXG5cbiAgICAgICAgICBpZiAoaXNOaWwoaW5zdGFuY2UuaWRlbnRpZmllcltpZGVudGlmaWVyQmluZGVkXSkpIHJldHVybiBpZHNcblxuICAgICAgICAgIGNvbnN0IGNvbHVtbk9wdGlvbiA9IEF0dHJpYnV0ZU9wdGlvbkhlbHBlci5GaW5kQnlBdHRyaWJ1dGUoaWRlbnRpZmllciwgdGhpcy5maWVsZHMpXG4gICAgICAgICAgY29uc3QgdmFsdWUgPSBjb2x1bW5PcHRpb24udG8oaWRlbnRpZmllcnNbaWRlbnRpZmllciBhcyBrZXlvZiBEZWxldGVSZXBvc2l0b3J5UGFyYW1zPE1CYXNlPl0sIGluc3RhbmNlKVxuXG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIC4uLmlkcyxcbiAgICAgICAgICAgIFtjb2x1bW5PcHRpb24uY29sdW1uTmFtZV06IHtcbiAgICAgICAgICAgICAgdHlwZTogdGhpcy5nZXRBdHRyaWJ1dGVHcmFwaFFMVHlwZU9mKGNvbHVtbk9wdGlvbi50eXBlIHx8IHZhbHVlKSxcbiAgICAgICAgICAgICAgdmFsdWUsXG4gICAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9XG4gICAgICAgIH0sIHt9KSxcbiAgICAgIClcbiAgICB9XG4gIH0gYXMgYW55XG59XG4iXX0=
@@ -1,12 +1,29 @@
1
- import { isNil } from '../../../utils';
2
- import { BindFilterQueryHelper } from './helpers';
1
+ import { DebugHelper, isNil } from '../../../utils';
2
+ import { AttributeOptionHelper, BindFilterQueryHelper } from './helpers';
3
3
  export const withFindHasuraGraphQL = (MixinBase) => {
4
4
  return class FindHasuraGraphQLMixin extends MixinBase {
5
+ constructor() {
6
+ super(...arguments);
7
+ this.bindOrderByAttributes = (orderBy, fields) => Object.keys(orderBy).reduce((acc, current) => ({
8
+ ...acc,
9
+ [AttributeOptionHelper.FindByAttribute(current, fields)
10
+ .columnName]: orderBy[current],
11
+ }), {});
12
+ }
5
13
  async find(params) {
14
+ this.logger = DebugHelper.from(this, 'find');
6
15
  const { filters, limits, orderBy, options } = params || {};
7
16
  const enableCount = options?.enableCount ?? true;
8
17
  const variablesCount = {
9
- ...(isNil(orderBy) ? {} : { order_by: { type: `${this.tableName}_order_by!`, list: true, value: orderBy } }),
18
+ ...(isNil(orderBy)
19
+ ? {}
20
+ : {
21
+ order_by: {
22
+ type: `${this.tableName}_order_by!`,
23
+ list: true,
24
+ value: this.bindOrderByAttributes(orderBy, this.fields),
25
+ },
26
+ }),
10
27
  ...(isNil(filters)
11
28
  ? {}
12
29
  : {
@@ -47,4 +64,4 @@ export const withFindHasuraGraphQL = (MixinBase) => {
47
64
  }
48
65
  };
49
66
  };
50
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1maW5kLWhhc3VyYS1ncmFwaHFsLm1peGluLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC9zcmMvaW5mcmEvaGFzdXJhLWdyYXBocWwvbWl4aW5zL3dpdGgtZmluZC1oYXN1cmEtZ3JhcGhxbC5taXhpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQWEsS0FBSyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFHakQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sV0FBVyxDQUFBO0FBRWpELE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFHLENBSW5DLFNBQTJELEVBQzNELEVBQUU7SUFDRixPQUFPLE1BQU0sc0JBQXVCLFNBQVEsU0FBUztRQUNuRCxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQW9DO1lBQzdDLE1BQU0sRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsR0FBRyxNQUFNLElBQUksRUFBRSxDQUFBO1lBQzFELE1BQU0sV0FBVyxHQUFHLE9BQU8sRUFBRSxXQUFXLElBQUksSUFBSSxDQUFBO1lBQ2hELE1BQU0sY0FBYyxHQUFHO2dCQUNyQixHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsUUFBUSxFQUFFLEVBQUUsSUFBSSxFQUFFLEdBQUcsSUFBSSxDQUFDLFNBQVMsWUFBWSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUM7Z0JBQzVHLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDO29CQUNoQixDQUFDLENBQUMsRUFBRTtvQkFDSixDQUFDLENBQUM7d0JBQ0UsS0FBSyxFQUFFOzRCQUNMLEtBQUssRUFBRSxxQkFBcUIsQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQzs0QkFDbkUsSUFBSSxFQUFFLEdBQUcsSUFBSSxDQUFDLFNBQVMsV0FBVzs0QkFDbEMsUUFBUSxFQUFFLElBQUk7eUJBQ2Y7cUJBQ0YsQ0FBQzthQUNQLENBQUE7WUFDRCxNQUFNLFNBQVMsR0FBRztnQkFDaEIsR0FBRyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7Z0JBQ2hDLEdBQUcsY0FBYzthQUNsQixDQUFBO1lBQ0QsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDO2dCQUM5QjtvQkFDRSxTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7b0JBQ3pCLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTTt3QkFDbkIsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxNQUFNOzZCQUNWLEdBQUcsQ0FDRixDQUFDLFNBQVMsRUFBRSxFQUFFLENBQ1osSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUFDLFdBQVcsS0FBSyxTQUFTLENBQUM7NEJBQzVELElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLEtBQUssRUFBRSxLQUFLLFNBQVMsQ0FBQyxDQUNwRjs2QkFDQSxNQUFNLENBQUMsT0FBTyxDQUFDO3dCQUNwQixDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU07b0JBQ2YsU0FBUztpQkFDVjtnQkFDRCxHQUFHLENBQUMsV0FBVztvQkFDYixDQUFDLENBQUM7d0JBQ0U7NEJBQ0UsU0FBUyxFQUFFLEdBQUcsSUFBSSxDQUFDLFNBQVMsWUFBWTs0QkFDeEMsTUFBTSxFQUFFLENBQUMsRUFBRSxTQUFTLEVBQUUsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDOzRCQUNsQyxTQUFTLEVBQUUsY0FBYzt5QkFDRjtxQkFDMUI7b0JBQ0gsQ0FBQyxDQUFDLEVBQUUsQ0FBQzthQUNSLENBQUMsQ0FBQTtZQUNGLE1BQU0sSUFBSSxHQUFZLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBb0MsRUFBRSxFQUFFLENBQ3hGLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxHQUFHLENBQUMsQ0FDaEMsQ0FBQTtZQUVELE9BQU8sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsWUFBWSxDQUFDLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUE7UUFDeEcsQ0FBQztLQUNGLENBQUE7QUFDSCxDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGaW5kUmVwb3NpdG9yeSwgRmluZFJlcG9zaXRvcnlQYXJhbXMsIE1vZGVsQmFzZVN0cnVjdHVyZSwgUmVwb3NpdG9yeUZpbmRSZXN1bHQgfSBmcm9tICcuLi8uLi8uLi9kb21haW4nXG5pbXBvcnQgeyBNaXhpbkN0b3IsIGlzTmlsIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMnXG5pbXBvcnQgeyBHcmFwaFFMUGFyYW1zLCBHcmFwaFFMUmVwb3NpdG9yeSB9IGZyb20gJy4uL3R5cGVzJ1xuXG5pbXBvcnQgeyBCaW5kRmlsdGVyUXVlcnlIZWxwZXIgfSBmcm9tICcuL2hlbHBlcnMnXG5cbmV4cG9ydCBjb25zdCB3aXRoRmluZEhhc3VyYUdyYXBoUUwgPSA8XG4gIE1CYXNlIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlLFxuICBUTWl4aW5CYXNlIGV4dGVuZHMgTWl4aW5DdG9yPEdyYXBoUUxSZXBvc2l0b3J5PE1CYXNlPj4sXG4+KFxuICBNaXhpbkJhc2U6IE1peGluQ3RvcjxHcmFwaFFMUmVwb3NpdG9yeTxNQmFzZT4+ICYgVE1peGluQmFzZSxcbikgPT4ge1xuICByZXR1cm4gY2xhc3MgRmluZEhhc3VyYUdyYXBoUUxNaXhpbiBleHRlbmRzIE1peGluQmFzZSBpbXBsZW1lbnRzIEZpbmRSZXBvc2l0b3J5PE1CYXNlPiB7XG4gICAgYXN5bmMgZmluZChwYXJhbXM/OiBGaW5kUmVwb3NpdG9yeVBhcmFtczxNQmFzZT4pOiBQcm9taXNlPFJlcG9zaXRvcnlGaW5kUmVzdWx0PE1CYXNlPj4ge1xuICAgICAgY29uc3QgeyBmaWx0ZXJzLCBsaW1pdHMsIG9yZGVyQnksIG9wdGlvbnMgfSA9IHBhcmFtcyB8fCB7fVxuICAgICAgY29uc3QgZW5hYmxlQ291bnQgPSBvcHRpb25zPy5lbmFibGVDb3VudCA/PyB0cnVlXG4gICAgICBjb25zdCB2YXJpYWJsZXNDb3VudCA9IHtcbiAgICAgICAgLi4uKGlzTmlsKG9yZGVyQnkpID8ge30gOiB7IG9yZGVyX2J5OiB7IHR5cGU6IGAke3RoaXMudGFibGVOYW1lfV9vcmRlcl9ieSFgLCBsaXN0OiB0cnVlLCB2YWx1ZTogb3JkZXJCeSB9IH0pLFxuICAgICAgICAuLi4oaXNOaWwoZmlsdGVycylcbiAgICAgICAgICA/IHt9XG4gICAgICAgICAgOiB7XG4gICAgICAgICAgICAgIHdoZXJlOiB7XG4gICAgICAgICAgICAgICAgdmFsdWU6IEJpbmRGaWx0ZXJRdWVyeUhlbHBlci5NYWtlR3JhcGhRTFdoZXJlKGZpbHRlcnMsIHRoaXMuZmllbGRzKSxcbiAgICAgICAgICAgICAgICB0eXBlOiBgJHt0aGlzLnRhYmxlTmFtZX1fYm9vbF9leHBgLFxuICAgICAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSksXG4gICAgICB9XG4gICAgICBjb25zdCB2YXJpYWJsZXMgPSB7XG4gICAgICAgIC4uLihpc05pbChsaW1pdHMpID8ge30gOiBsaW1pdHMpLFxuICAgICAgICAuLi52YXJpYWJsZXNDb3VudCxcbiAgICAgIH1cbiAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMucXVlcnkoW1xuICAgICAgICB7XG4gICAgICAgICAgb3BlcmF0aW9uOiB0aGlzLnRhYmxlTmFtZSxcbiAgICAgICAgICBmaWVsZHM6IHBhcmFtcy5maWVsZHNcbiAgICAgICAgICAgID8gcGFyYW1zLmZpZWxkc1xuICAgICAgICAgICAgICAgIC5tYXAoXG4gICAgICAgICAgICAgICAgICAoZmllbGROYW1lKSA9PlxuICAgICAgICAgICAgICAgICAgICB0aGlzLmZpZWxkcy5maW5kKChmaWVsZE9wdGlvbikgPT4gZmllbGRPcHRpb24gPT09IGZpZWxkTmFtZSkgPz9cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5maWVsZHMuZmluZCgoZmllbGRPcHRpb24pID0+IE9iamVjdC5rZXlzKGZpZWxkT3B0aW9uKS5zaGlmdCgpID09PSBmaWVsZE5hbWUpLFxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAuZmlsdGVyKEJvb2xlYW4pXG4gICAgICAgICAgICA6IHRoaXMuZmllbGRzLFxuICAgICAgICAgIHZhcmlhYmxlcyxcbiAgICAgICAgfSxcbiAgICAgICAgLi4uKGVuYWJsZUNvdW50XG4gICAgICAgICAgPyBbXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBvcGVyYXRpb246IGAke3RoaXMudGFibGVOYW1lfV9hZ2dyZWdhdGVgLFxuICAgICAgICAgICAgICAgIGZpZWxkczogW3sgYWdncmVnYXRlOiBbJ2NvdW50J10gfV0sXG4gICAgICAgICAgICAgICAgdmFyaWFibGVzOiB2YXJpYWJsZXNDb3VudCxcbiAgICAgICAgICAgICAgfSBhcyBHcmFwaFFMUGFyYW1zPE1CYXNlPixcbiAgICAgICAgICAgIF1cbiAgICAgICAgICA6IFtdKSxcbiAgICAgIF0pXG4gICAgICBjb25zdCBkYXRhOiBNQmFzZVtdID0gcmVzdWx0W3RoaXMudGFibGVOYW1lXS5tYXAoKHJvdzogUmVjb3JkPHN0cmluZywgc3RyaW5nIHwgbnVtYmVyPikgPT5cbiAgICAgICAgdGhpcy5jb252ZXJ0RGF0YUZyb21IYXN1cmEocm93KSxcbiAgICAgIClcblxuICAgICAgcmV0dXJuIHsgZGF0YSwgY291bnQ6IGVuYWJsZUNvdW50ID8gcmVzdWx0W2Ake3RoaXMudGFibGVOYW1lfV9hZ2dyZWdhdGVgXS5hZ2dyZWdhdGUuY291bnQgOiBJbmZpbml0eSB9XG4gICAgfVxuICB9XG59XG4iXX0=
67
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1maW5kLWhhc3VyYS1ncmFwaHFsLm1peGluLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC9zcmMvaW5mcmEvaGFzdXJhLWdyYXBocWwvbWl4aW5zL3dpdGgtZmluZC1oYXN1cmEtZ3JhcGhxbC5taXhpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFRQSxPQUFPLEVBQUUsV0FBVyxFQUFhLEtBQUssRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBRTlELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLFdBQVcsQ0FBQTtBQUV4RSxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxDQUluQyxTQUEyRCxFQUMzRCxFQUFFO0lBQ0YsT0FBTyxNQUFNLHNCQUF1QixTQUFRLFNBQVM7UUFBOUM7O1lBNkRMLDBCQUFxQixHQUFHLENBQUMsT0FBaUMsRUFBRSxNQUFrQyxFQUFFLEVBQUUsQ0FDaEcsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLENBQ3pCLENBQUMsR0FBRyxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQztnQkFDakIsR0FBRyxHQUFHO2dCQUNOLENBQUMscUJBQXFCLENBQUMsZUFBZSxDQUFDLE9BQXVELEVBQUUsTUFBTSxDQUFDO3FCQUNwRyxVQUFVLENBQUMsRUFBRSxPQUFPLENBQUMsT0FBdUQsQ0FBQzthQUNqRixDQUFDLEVBQ0YsRUFBRSxDQUNILENBQUE7UUFDTCxDQUFDO1FBckVDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBb0M7WUFDN0MsSUFBSSxDQUFDLE1BQU0sR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQTtZQUU1QyxNQUFNLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLEdBQUcsTUFBTSxJQUFJLEVBQUUsQ0FBQTtZQUMxRCxNQUFNLFdBQVcsR0FBRyxPQUFPLEVBQUUsV0FBVyxJQUFJLElBQUksQ0FBQTtZQUNoRCxNQUFNLGNBQWMsR0FBRztnQkFDckIsR0FBRyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUM7b0JBQ2hCLENBQUMsQ0FBQyxFQUFFO29CQUNKLENBQUMsQ0FBQzt3QkFDRSxRQUFRLEVBQUU7NEJBQ1IsSUFBSSxFQUFFLEdBQUcsSUFBSSxDQUFDLFNBQVMsWUFBWTs0QkFDbkMsSUFBSSxFQUFFLElBQUk7NEJBQ1YsS0FBSyxFQUFFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQzt5QkFDeEQ7cUJBQ0YsQ0FBQztnQkFDTixHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQztvQkFDaEIsQ0FBQyxDQUFDLEVBQUU7b0JBQ0osQ0FBQyxDQUFDO3dCQUNFLEtBQUssRUFBRTs0QkFDTCxLQUFLLEVBQUUscUJBQXFCLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUM7NEJBQ25FLElBQUksRUFBRSxHQUFHLElBQUksQ0FBQyxTQUFTLFdBQVc7NEJBQ2xDLFFBQVEsRUFBRSxJQUFJO3lCQUNmO3FCQUNGLENBQUM7YUFDUCxDQUFBO1lBQ0QsTUFBTSxTQUFTLEdBQUc7Z0JBQ2hCLEdBQUcsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO2dCQUNoQyxHQUFHLGNBQWM7YUFDbEIsQ0FBQTtZQUNELE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLEtBQUssQ0FBQztnQkFDOUI7b0JBQ0UsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTO29CQUN6QixNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU07d0JBQ25CLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTTs2QkFDVixHQUFHLENBQ0YsQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUNaLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQyxXQUFXLEtBQUssU0FBUyxDQUFDOzRCQUM1RCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxLQUFLLEVBQUUsS0FBSyxTQUFTLENBQUMsQ0FDcEY7NkJBQ0EsTUFBTSxDQUFDLE9BQU8sQ0FBQzt3QkFDcEIsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNO29CQUNmLFNBQVM7aUJBQ1Y7Z0JBQ0QsR0FBRyxDQUFDLFdBQVc7b0JBQ2IsQ0FBQyxDQUFDO3dCQUNFOzRCQUNFLFNBQVMsRUFBRSxHQUFHLElBQUksQ0FBQyxTQUFTLFlBQVk7NEJBQ3hDLE1BQU0sRUFBRSxDQUFDLEVBQUUsU0FBUyxFQUFFLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQzs0QkFDbEMsU0FBUyxFQUFFLGNBQWM7eUJBQ0Y7cUJBQzFCO29CQUNILENBQUMsQ0FBQyxFQUFFLENBQUM7YUFDUixDQUFDLENBQUE7WUFDRixNQUFNLElBQUksR0FBWSxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQW9DLEVBQUUsRUFBRSxDQUN4RixJQUFJLENBQUMscUJBQXFCLENBQUMsR0FBRyxDQUFDLENBQ2hDLENBQUE7WUFFRCxPQUFPLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxTQUFTLFlBQVksQ0FBQyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFBO1FBQ3hHLENBQUM7S0FXRixDQUFBO0FBQ0gsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRmluZFJlcG9zaXRvcnksXG4gIEZpbmRSZXBvc2l0b3J5UGFyYW1zLFxuICBNb2RlbEJhc2VTdHJ1Y3R1cmUsXG4gIE5vbkZ1bmN0aW9uQW5kSWRlbnRpZmllclByb3BlcnR5TmFtZXMsXG4gIFJlcG9zaXRvcnlGaW5kUmVzdWx0LFxuICBSZXBvc2l0b3J5T3JkZXJCeSxcbn0gZnJvbSAnLi4vLi4vLi4vZG9tYWluJ1xuaW1wb3J0IHsgRGVidWdIZWxwZXIsIE1peGluQ3RvciwgaXNOaWwgfSBmcm9tICcuLi8uLi8uLi91dGlscydcbmltcG9ydCB7IEdyYXBoUUxQYXJhbXMsIEdyYXBoUUxSZXBvc2l0b3J5LCBIYXN1cmFHcmFwaFFMRmllbGRzIH0gZnJvbSAnLi4vdHlwZXMnXG5pbXBvcnQgeyBBdHRyaWJ1dGVPcHRpb25IZWxwZXIsIEJpbmRGaWx0ZXJRdWVyeUhlbHBlciB9IGZyb20gJy4vaGVscGVycydcblxuZXhwb3J0IGNvbnN0IHdpdGhGaW5kSGFzdXJhR3JhcGhRTCA9IDxcbiAgTUJhc2UgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmU8TUJhc2UsIE1CYXNlWydpZGVudGlmaWVyc0ZpZWxkcyddW251bWJlcl0+LFxuICBUTWl4aW5CYXNlIGV4dGVuZHMgTWl4aW5DdG9yPEdyYXBoUUxSZXBvc2l0b3J5PE1CYXNlPj4sXG4+KFxuICBNaXhpbkJhc2U6IE1peGluQ3RvcjxHcmFwaFFMUmVwb3NpdG9yeTxNQmFzZT4+ICYgVE1peGluQmFzZSxcbikgPT4ge1xuICByZXR1cm4gY2xhc3MgRmluZEhhc3VyYUdyYXBoUUxNaXhpbiBleHRlbmRzIE1peGluQmFzZSBpbXBsZW1lbnRzIEZpbmRSZXBvc2l0b3J5PE1CYXNlPiB7XG4gICAgYXN5bmMgZmluZChwYXJhbXM/OiBGaW5kUmVwb3NpdG9yeVBhcmFtczxNQmFzZT4pOiBQcm9taXNlPFJlcG9zaXRvcnlGaW5kUmVzdWx0PE1CYXNlPj4ge1xuICAgICAgdGhpcy5sb2dnZXIgPSBEZWJ1Z0hlbHBlci5mcm9tKHRoaXMsICdmaW5kJylcblxuICAgICAgY29uc3QgeyBmaWx0ZXJzLCBsaW1pdHMsIG9yZGVyQnksIG9wdGlvbnMgfSA9IHBhcmFtcyB8fCB7fVxuICAgICAgY29uc3QgZW5hYmxlQ291bnQgPSBvcHRpb25zPy5lbmFibGVDb3VudCA/PyB0cnVlXG4gICAgICBjb25zdCB2YXJpYWJsZXNDb3VudCA9IHtcbiAgICAgICAgLi4uKGlzTmlsKG9yZGVyQnkpXG4gICAgICAgICAgPyB7fVxuICAgICAgICAgIDoge1xuICAgICAgICAgICAgICBvcmRlcl9ieToge1xuICAgICAgICAgICAgICAgIHR5cGU6IGAke3RoaXMudGFibGVOYW1lfV9vcmRlcl9ieSFgLFxuICAgICAgICAgICAgICAgIGxpc3Q6IHRydWUsXG4gICAgICAgICAgICAgICAgdmFsdWU6IHRoaXMuYmluZE9yZGVyQnlBdHRyaWJ1dGVzKG9yZGVyQnksIHRoaXMuZmllbGRzKSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAuLi4oaXNOaWwoZmlsdGVycylcbiAgICAgICAgICA/IHt9XG4gICAgICAgICAgOiB7XG4gICAgICAgICAgICAgIHdoZXJlOiB7XG4gICAgICAgICAgICAgICAgdmFsdWU6IEJpbmRGaWx0ZXJRdWVyeUhlbHBlci5NYWtlR3JhcGhRTFdoZXJlKGZpbHRlcnMsIHRoaXMuZmllbGRzKSxcbiAgICAgICAgICAgICAgICB0eXBlOiBgJHt0aGlzLnRhYmxlTmFtZX1fYm9vbF9leHBgLFxuICAgICAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSksXG4gICAgICB9XG4gICAgICBjb25zdCB2YXJpYWJsZXMgPSB7XG4gICAgICAgIC4uLihpc05pbChsaW1pdHMpID8ge30gOiBsaW1pdHMpLFxuICAgICAgICAuLi52YXJpYWJsZXNDb3VudCxcbiAgICAgIH1cbiAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMucXVlcnkoW1xuICAgICAgICB7XG4gICAgICAgICAgb3BlcmF0aW9uOiB0aGlzLnRhYmxlTmFtZSxcbiAgICAgICAgICBmaWVsZHM6IHBhcmFtcy5maWVsZHNcbiAgICAgICAgICAgID8gcGFyYW1zLmZpZWxkc1xuICAgICAgICAgICAgICAgIC5tYXAoXG4gICAgICAgICAgICAgICAgICAoZmllbGROYW1lKSA9PlxuICAgICAgICAgICAgICAgICAgICB0aGlzLmZpZWxkcy5maW5kKChmaWVsZE9wdGlvbikgPT4gZmllbGRPcHRpb24gPT09IGZpZWxkTmFtZSkgPz9cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5maWVsZHMuZmluZCgoZmllbGRPcHRpb24pID0+IE9iamVjdC5rZXlzKGZpZWxkT3B0aW9uKS5zaGlmdCgpID09PSBmaWVsZE5hbWUpLFxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAuZmlsdGVyKEJvb2xlYW4pXG4gICAgICAgICAgICA6IHRoaXMuZmllbGRzLFxuICAgICAgICAgIHZhcmlhYmxlcyxcbiAgICAgICAgfSxcbiAgICAgICAgLi4uKGVuYWJsZUNvdW50XG4gICAgICAgICAgPyBbXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBvcGVyYXRpb246IGAke3RoaXMudGFibGVOYW1lfV9hZ2dyZWdhdGVgLFxuICAgICAgICAgICAgICAgIGZpZWxkczogW3sgYWdncmVnYXRlOiBbJ2NvdW50J10gfV0sXG4gICAgICAgICAgICAgICAgdmFyaWFibGVzOiB2YXJpYWJsZXNDb3VudCxcbiAgICAgICAgICAgICAgfSBhcyBHcmFwaFFMUGFyYW1zPE1CYXNlPixcbiAgICAgICAgICAgIF1cbiAgICAgICAgICA6IFtdKSxcbiAgICAgIF0pXG4gICAgICBjb25zdCBkYXRhOiBNQmFzZVtdID0gcmVzdWx0W3RoaXMudGFibGVOYW1lXS5tYXAoKHJvdzogUmVjb3JkPHN0cmluZywgc3RyaW5nIHwgbnVtYmVyPikgPT5cbiAgICAgICAgdGhpcy5jb252ZXJ0RGF0YUZyb21IYXN1cmEocm93KSxcbiAgICAgIClcblxuICAgICAgcmV0dXJuIHsgZGF0YSwgY291bnQ6IGVuYWJsZUNvdW50ID8gcmVzdWx0W2Ake3RoaXMudGFibGVOYW1lfV9hZ2dyZWdhdGVgXS5hZ2dyZWdhdGUuY291bnQgOiBJbmZpbml0eSB9XG4gICAgfVxuXG4gICAgYmluZE9yZGVyQnlBdHRyaWJ1dGVzID0gKG9yZGVyQnk6IFJlcG9zaXRvcnlPcmRlckJ5PE1CYXNlPiwgZmllbGRzOiBIYXN1cmFHcmFwaFFMRmllbGRzPE1CYXNlPikgPT5cbiAgICAgIE9iamVjdC5rZXlzKG9yZGVyQnkpLnJlZHVjZShcbiAgICAgICAgKGFjYywgY3VycmVudCkgPT4gKHtcbiAgICAgICAgICAuLi5hY2MsXG4gICAgICAgICAgW0F0dHJpYnV0ZU9wdGlvbkhlbHBlci5GaW5kQnlBdHRyaWJ1dGUoY3VycmVudCBhcyBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPE1CYXNlPiwgZmllbGRzKVxuICAgICAgICAgICAgLmNvbHVtbk5hbWVdOiBvcmRlckJ5W2N1cnJlbnQgYXMgTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lczxNQmFzZT5dLFxuICAgICAgICB9KSxcbiAgICAgICAge30sXG4gICAgICApXG4gIH1cbn1cbiJdfQ==
@@ -1,5 +1,5 @@
1
1
  import { NotFoundError } from '../../../errors';
2
- import { isNil } from '../../../utils';
2
+ import { DebugHelper, isNil } from '../../../utils';
3
3
  import { AttributeOptionHelper } from './helpers';
4
4
  export const withGetHasuraGraphQL = (MixinBase) => {
5
5
  return class GetHasuraGraphQLMixin extends MixinBase {
@@ -9,9 +9,11 @@ export const withGetHasuraGraphQL = (MixinBase) => {
9
9
  this.getGraphQLOperation = options?.getGraphQLOperation || `${this.tableName}_by_pk`;
10
10
  }
11
11
  async get(identifiers) {
12
+ this.logger = DebugHelper.from(this, 'get');
12
13
  const instance = this.model.toInstance(identifiers);
13
14
  const result = await this.query(this.getGraphQLOperation, this.fields, this.model.identifiersFields.reduce((ids, identifier) => {
14
- if (isNil(instance[identifier]))
15
+ const identifierBinded = identifier;
16
+ if (isNil(instance[identifierBinded]))
15
17
  return ids;
16
18
  const columnOption = AttributeOptionHelper.FindByAttribute(identifier, this.fields);
17
19
  const value = columnOption?.to?.(identifiers[identifier], instance) ||
@@ -32,4 +34,4 @@ export const withGetHasuraGraphQL = (MixinBase) => {
32
34
  }
33
35
  };
34
36
  };
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1nZXQtaGFzdXJhLWdyYXBocWwubWl4aW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC9taXhpbnMvd2l0aC1nZXQtaGFzdXJhLWdyYXBocWwubWl4aW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQy9DLE9BQU8sRUFBRSxLQUFLLEVBQWEsTUFBTSxnQkFBZ0IsQ0FBQTtBQUdqRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxXQUFXLENBQUE7QUFNakQsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUcsQ0FJbEMsU0FBMkQsRUFDM0QsRUFBRTtJQUNGLE9BQU8sTUFBTSxxQkFBc0IsU0FBUSxTQUFTO1FBR2xELFlBQVksR0FBRyxNQUFhO1lBQzFCLE1BQU0sT0FBTyxHQUF5QixNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQTtZQUVqRCxLQUFLLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQTtZQUVoQixJQUFJLENBQUMsbUJBQW1CLEdBQUcsT0FBTyxFQUFFLG1CQUFtQixJQUFJLEdBQUcsSUFBSSxDQUFDLFNBQVMsUUFBUSxDQUFBO1FBQ3RGLENBQUM7UUFFRCxLQUFLLENBQUMsR0FBRyxDQUFDLFdBQXVDO1lBQy9DLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxDQUFBO1lBQ25ELE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLEtBQUssQ0FDN0IsSUFBSSxDQUFDLG1CQUFtQixFQUN4QixJQUFJLENBQUMsTUFBTSxFQUNYLElBQUksQ0FBQyxLQUFLLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLFVBQVUsRUFBRSxFQUFFO2dCQUN0RCxJQUFJLEtBQUssQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLENBQUM7b0JBQUUsT0FBTyxHQUFHLENBQUE7Z0JBRTNDLE1BQU0sWUFBWSxHQUFHLHFCQUFxQixDQUFDLGVBQWUsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFBO2dCQUNuRixNQUFNLEtBQUssR0FDVCxZQUFZLEVBQUUsRUFBRSxFQUFFLENBQUMsV0FBVyxDQUFDLFVBQXNDLENBQUMsRUFBRSxRQUFRLENBQUM7b0JBQ2pGLFdBQVcsQ0FBQyxVQUFzQyxDQUFDLENBQUE7Z0JBRXJELE9BQU87b0JBQ0wsR0FBRyxHQUFHO29CQUNOLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxFQUFFO3dCQUN6QixJQUFJLEVBQUUsSUFBSSxDQUFDLHlCQUF5QixDQUFDLFlBQVksQ0FBQyxJQUFJLElBQUksS0FBSyxDQUFDO3dCQUNoRSxLQUFLO3dCQUNMLFFBQVEsRUFBRSxJQUFJO3FCQUNmO2lCQUNGLENBQUE7WUFDSCxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQ1AsQ0FBQTtZQUNELE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsQ0FBQTtZQUU3QyxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUM7Z0JBQUUsTUFBTSxJQUFJLGFBQWEsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxZQUFZLENBQUMsQ0FBQTtZQUVsRixPQUFPLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQTtRQUNyRSxDQUFDO0tBQ0YsQ0FBQTtBQUNILENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEdldFJlcG9zaXRvcnksIEdldFJlcG9zaXRvcnlQYXJhbXMsIE1vZGVsQmFzZVN0cnVjdHVyZSB9IGZyb20gJy4uLy4uLy4uL2RvbWFpbidcbmltcG9ydCB7IE5vdEZvdW5kRXJyb3IgfSBmcm9tICcuLi8uLi8uLi9lcnJvcnMnXG5pbXBvcnQgeyBpc05pbCwgTWl4aW5DdG9yIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMnXG5pbXBvcnQgeyBHcmFwaFFMUmVwb3NpdG9yeSB9IGZyb20gJy4uL3R5cGVzJ1xuXG5pbXBvcnQgeyBBdHRyaWJ1dGVPcHRpb25IZWxwZXIgfSBmcm9tICcuL2hlbHBlcnMnXG5cbmV4cG9ydCB0eXBlIEdldENvbnN0cnVjdG9yUGFyYW1zID0ge1xuICBnZXRHcmFwaFFMT3BlcmF0aW9uPzogc3RyaW5nXG59XG5cbmV4cG9ydCBjb25zdCB3aXRoR2V0SGFzdXJhR3JhcGhRTCA9IDxcbiAgTUJhc2UgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmUsXG4gIFRNaXhpbkJhc2UgZXh0ZW5kcyBNaXhpbkN0b3I8R3JhcGhRTFJlcG9zaXRvcnk8TUJhc2U+Pixcbj4oXG4gIE1peGluQmFzZTogTWl4aW5DdG9yPEdyYXBoUUxSZXBvc2l0b3J5PE1CYXNlPj4gJiBUTWl4aW5CYXNlLFxuKSA9PiB7XG4gIHJldHVybiBjbGFzcyBHZXRIYXN1cmFHcmFwaFFMTWl4aW4gZXh0ZW5kcyBNaXhpbkJhc2UgaW1wbGVtZW50cyBHZXRSZXBvc2l0b3J5PE1CYXNlPiB7XG4gICAgZ2V0R3JhcGhRTE9wZXJhdGlvbjogc3RyaW5nXG5cbiAgICBjb25zdHJ1Y3RvciguLi5wYXJhbXM6IGFueVtdKSB7XG4gICAgICBjb25zdCBvcHRpb25zOiBHZXRDb25zdHJ1Y3RvclBhcmFtcyA9IHBhcmFtcz8uWzBdXG5cbiAgICAgIHN1cGVyKC4uLnBhcmFtcylcblxuICAgICAgdGhpcy5nZXRHcmFwaFFMT3BlcmF0aW9uID0gb3B0aW9ucz8uZ2V0R3JhcGhRTE9wZXJhdGlvbiB8fCBgJHt0aGlzLnRhYmxlTmFtZX1fYnlfcGtgXG4gICAgfVxuXG4gICAgYXN5bmMgZ2V0KGlkZW50aWZpZXJzOiBHZXRSZXBvc2l0b3J5UGFyYW1zPE1CYXNlPik6IFByb21pc2U8TUJhc2U+IHtcbiAgICAgIGNvbnN0IGluc3RhbmNlID0gdGhpcy5tb2RlbC50b0luc3RhbmNlKGlkZW50aWZpZXJzKVxuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5xdWVyeShcbiAgICAgICAgdGhpcy5nZXRHcmFwaFFMT3BlcmF0aW9uLFxuICAgICAgICB0aGlzLmZpZWxkcyxcbiAgICAgICAgdGhpcy5tb2RlbC5pZGVudGlmaWVyc0ZpZWxkcy5yZWR1Y2UoKGlkcywgaWRlbnRpZmllcikgPT4ge1xuICAgICAgICAgIGlmIChpc05pbChpbnN0YW5jZVtpZGVudGlmaWVyXSkpIHJldHVybiBpZHNcblxuICAgICAgICAgIGNvbnN0IGNvbHVtbk9wdGlvbiA9IEF0dHJpYnV0ZU9wdGlvbkhlbHBlci5GaW5kQnlBdHRyaWJ1dGUoaWRlbnRpZmllciwgdGhpcy5maWVsZHMpXG4gICAgICAgICAgY29uc3QgdmFsdWUgPVxuICAgICAgICAgICAgY29sdW1uT3B0aW9uPy50bz8uKGlkZW50aWZpZXJzW2lkZW50aWZpZXIgYXMga2V5b2YgdHlwZW9mIGlkZW50aWZpZXJzXSwgaW5zdGFuY2UpIHx8XG4gICAgICAgICAgICBpZGVudGlmaWVyc1tpZGVudGlmaWVyIGFzIGtleW9mIHR5cGVvZiBpZGVudGlmaWVyc11cblxuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAuLi5pZHMsXG4gICAgICAgICAgICBbY29sdW1uT3B0aW9uLmNvbHVtbk5hbWVdOiB7XG4gICAgICAgICAgICAgIHR5cGU6IHRoaXMuZ2V0QXR0cmlidXRlR3JhcGhRTFR5cGVPZihjb2x1bW5PcHRpb24udHlwZSB8fCB2YWx1ZSksXG4gICAgICAgICAgICAgIHZhbHVlLFxuICAgICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfVxuICAgICAgICB9LCB7fSksXG4gICAgICApXG4gICAgICBjb25zdCBkYXRhID0gcmVzdWx0W3RoaXMuZ2V0R3JhcGhRTE9wZXJhdGlvbl1cblxuICAgICAgaWYgKGlzTmlsKGRhdGEpKSB0aHJvdyBuZXcgTm90Rm91bmRFcnJvcihgJHtpbnN0YW5jZS5jb25zdHJ1Y3Rvci5uYW1lfSBub3QgZm91bmRgKVxuXG4gICAgICByZXR1cm4gdGhpcy5jb252ZXJ0RGF0YUZyb21IYXN1cmEocmVzdWx0W3RoaXMuZ2V0R3JhcGhRTE9wZXJhdGlvbl0pXG4gICAgfVxuICB9XG59XG4iXX0=
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1nZXQtaGFzdXJhLWdyYXBocWwubWl4aW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC9taXhpbnMvd2l0aC1nZXQtaGFzdXJhLWdyYXBocWwubWl4aW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBTUEsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQy9DLE9BQU8sRUFBRSxXQUFXLEVBQWEsS0FBSyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFHOUQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sV0FBVyxDQUFBO0FBTWpELE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLENBSWxDLFNBQTJELEVBQzNELEVBQUU7SUFDRixPQUFPLE1BQU0scUJBQXNCLFNBQVEsU0FBUztRQUdsRCxZQUFZLEdBQUcsTUFBYTtZQUMxQixNQUFNLE9BQU8sR0FBeUIsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUE7WUFFakQsS0FBSyxDQUFDLEdBQUcsTUFBTSxDQUFDLENBQUE7WUFFaEIsSUFBSSxDQUFDLG1CQUFtQixHQUFHLE9BQU8sRUFBRSxtQkFBbUIsSUFBSSxHQUFHLElBQUksQ0FBQyxTQUFTLFFBQVEsQ0FBQTtRQUN0RixDQUFDO1FBRUQsS0FBSyxDQUFDLEdBQUcsQ0FBQyxXQUF1QztZQUMvQyxJQUFJLENBQUMsTUFBTSxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFBO1lBRTNDLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxDQUFBO1lBQ25ELE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLEtBQUssQ0FDN0IsSUFBSSxDQUFDLG1CQUFtQixFQUN4QixJQUFJLENBQUMsTUFBTSxFQUNYLElBQUksQ0FBQyxLQUFLLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLFVBQVUsRUFBRSxFQUFFO2dCQUN0RCxNQUFNLGdCQUFnQixHQUdsQixVQUFVLENBQUE7Z0JBRWQsSUFBSSxLQUFLLENBQUMsUUFBUSxDQUFDLGdCQUFnQixDQUFDLENBQUM7b0JBQUUsT0FBTyxHQUFHLENBQUE7Z0JBRWpELE1BQU0sWUFBWSxHQUFHLHFCQUFxQixDQUFDLGVBQWUsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFBO2dCQUNuRixNQUFNLEtBQUssR0FDVCxZQUFZLEVBQUUsRUFBRSxFQUFFLENBQUMsV0FBVyxDQUFDLFVBQXNDLENBQUMsRUFBRSxRQUFRLENBQUM7b0JBQ2pGLFdBQVcsQ0FBQyxVQUFzQyxDQUFDLENBQUE7Z0JBRXJELE9BQU87b0JBQ0wsR0FBRyxHQUFHO29CQUNOLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxFQUFFO3dCQUN6QixJQUFJLEVBQUUsSUFBSSxDQUFDLHlCQUF5QixDQUFDLFlBQVksQ0FBQyxJQUFJLElBQUksS0FBSyxDQUFDO3dCQUNoRSxLQUFLO3dCQUNMLFFBQVEsRUFBRSxJQUFJO3FCQUNmO2lCQUNGLENBQUE7WUFDSCxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQ1AsQ0FBQTtZQUNELE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsQ0FBQTtZQUU3QyxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUM7Z0JBQUUsTUFBTSxJQUFJLGFBQWEsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxZQUFZLENBQUMsQ0FBQTtZQUVsRixPQUFPLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQTtRQUNyRSxDQUFDO0tBQ0YsQ0FBQTtBQUNILENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEdldFJlcG9zaXRvcnksXG4gIEdldFJlcG9zaXRvcnlQYXJhbXMsXG4gIE1vZGVsQmFzZVN0cnVjdHVyZSxcbiAgTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lcyxcbn0gZnJvbSAnLi4vLi4vLi4vZG9tYWluJ1xuaW1wb3J0IHsgTm90Rm91bmRFcnJvciB9IGZyb20gJy4uLy4uLy4uL2Vycm9ycydcbmltcG9ydCB7IERlYnVnSGVscGVyLCBNaXhpbkN0b3IsIGlzTmlsIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMnXG5pbXBvcnQgeyBHcmFwaFFMUmVwb3NpdG9yeSB9IGZyb20gJy4uL3R5cGVzJ1xuXG5pbXBvcnQgeyBBdHRyaWJ1dGVPcHRpb25IZWxwZXIgfSBmcm9tICcuL2hlbHBlcnMnXG5cbmV4cG9ydCB0eXBlIEdldENvbnN0cnVjdG9yUGFyYW1zID0ge1xuICBnZXRHcmFwaFFMT3BlcmF0aW9uPzogc3RyaW5nXG59XG5cbmV4cG9ydCBjb25zdCB3aXRoR2V0SGFzdXJhR3JhcGhRTCA9IDxcbiAgTUJhc2UgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmU8TUJhc2UsIE1CYXNlWydpZGVudGlmaWVyc0ZpZWxkcyddW251bWJlcl0+LFxuICBUTWl4aW5CYXNlIGV4dGVuZHMgTWl4aW5DdG9yPEdyYXBoUUxSZXBvc2l0b3J5PE1CYXNlPj4sXG4+KFxuICBNaXhpbkJhc2U6IE1peGluQ3RvcjxHcmFwaFFMUmVwb3NpdG9yeTxNQmFzZT4+ICYgVE1peGluQmFzZSxcbikgPT4ge1xuICByZXR1cm4gY2xhc3MgR2V0SGFzdXJhR3JhcGhRTE1peGluIGV4dGVuZHMgTWl4aW5CYXNlIGltcGxlbWVudHMgR2V0UmVwb3NpdG9yeTxNQmFzZT4ge1xuICAgIGdldEdyYXBoUUxPcGVyYXRpb246IHN0cmluZ1xuXG4gICAgY29uc3RydWN0b3IoLi4ucGFyYW1zOiBhbnlbXSkge1xuICAgICAgY29uc3Qgb3B0aW9uczogR2V0Q29uc3RydWN0b3JQYXJhbXMgPSBwYXJhbXM/LlswXVxuXG4gICAgICBzdXBlciguLi5wYXJhbXMpXG5cbiAgICAgIHRoaXMuZ2V0R3JhcGhRTE9wZXJhdGlvbiA9IG9wdGlvbnM/LmdldEdyYXBoUUxPcGVyYXRpb24gfHwgYCR7dGhpcy50YWJsZU5hbWV9X2J5X3BrYFxuICAgIH1cblxuICAgIGFzeW5jIGdldChpZGVudGlmaWVyczogR2V0UmVwb3NpdG9yeVBhcmFtczxNQmFzZT4pOiBQcm9taXNlPE1CYXNlPiB7XG4gICAgICB0aGlzLmxvZ2dlciA9IERlYnVnSGVscGVyLmZyb20odGhpcywgJ2dldCcpXG5cbiAgICAgIGNvbnN0IGluc3RhbmNlID0gdGhpcy5tb2RlbC50b0luc3RhbmNlKGlkZW50aWZpZXJzKVxuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5xdWVyeShcbiAgICAgICAgdGhpcy5nZXRHcmFwaFFMT3BlcmF0aW9uLFxuICAgICAgICB0aGlzLmZpZWxkcyxcbiAgICAgICAgdGhpcy5tb2RlbC5pZGVudGlmaWVyc0ZpZWxkcy5yZWR1Y2UoKGlkcywgaWRlbnRpZmllcikgPT4ge1xuICAgICAgICAgIGNvbnN0IGlkZW50aWZpZXJCaW5kZWQ6IEV4dHJhY3Q8XG4gICAgICAgICAgICBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPE1CYXNlPixcbiAgICAgICAgICAgIE1CYXNlWydpZGVudGlmaWVyc0ZpZWxkcyddW251bWJlcl1cbiAgICAgICAgICA+ID0gaWRlbnRpZmllclxuXG4gICAgICAgICAgaWYgKGlzTmlsKGluc3RhbmNlW2lkZW50aWZpZXJCaW5kZWRdKSkgcmV0dXJuIGlkc1xuXG4gICAgICAgICAgY29uc3QgY29sdW1uT3B0aW9uID0gQXR0cmlidXRlT3B0aW9uSGVscGVyLkZpbmRCeUF0dHJpYnV0ZShpZGVudGlmaWVyLCB0aGlzLmZpZWxkcylcbiAgICAgICAgICBjb25zdCB2YWx1ZSA9XG4gICAgICAgICAgICBjb2x1bW5PcHRpb24/LnRvPy4oaWRlbnRpZmllcnNbaWRlbnRpZmllciBhcyBrZXlvZiB0eXBlb2YgaWRlbnRpZmllcnNdLCBpbnN0YW5jZSkgfHxcbiAgICAgICAgICAgIGlkZW50aWZpZXJzW2lkZW50aWZpZXIgYXMga2V5b2YgdHlwZW9mIGlkZW50aWZpZXJzXVxuXG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIC4uLmlkcyxcbiAgICAgICAgICAgIFtjb2x1bW5PcHRpb24uY29sdW1uTmFtZV06IHtcbiAgICAgICAgICAgICAgdHlwZTogdGhpcy5nZXRBdHRyaWJ1dGVHcmFwaFFMVHlwZU9mKGNvbHVtbk9wdGlvbi50eXBlIHx8IHZhbHVlKSxcbiAgICAgICAgICAgICAgdmFsdWUsXG4gICAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9XG4gICAgICAgIH0sIHt9KSxcbiAgICAgIClcbiAgICAgIGNvbnN0IGRhdGEgPSByZXN1bHRbdGhpcy5nZXRHcmFwaFFMT3BlcmF0aW9uXVxuXG4gICAgICBpZiAoaXNOaWwoZGF0YSkpIHRocm93IG5ldyBOb3RGb3VuZEVycm9yKGAke2luc3RhbmNlLmNvbnN0cnVjdG9yLm5hbWV9IG5vdCBmb3VuZGApXG5cbiAgICAgIHJldHVybiB0aGlzLmNvbnZlcnREYXRhRnJvbUhhc3VyYShyZXN1bHRbdGhpcy5nZXRHcmFwaFFMT3BlcmF0aW9uXSlcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -1,6 +1,6 @@
1
1
  import axios from 'axios';
2
2
  import { mutation, query } from 'gql-query-builder';
3
- import { isBoolean, isInteger, isNaN, isNil, isNumber, isString, isUUID, parseISO, } from '../../../utils';
3
+ import { DebugHelper, isBoolean, isInteger, isNaN, isNil, isNumber, isString, isUUID, parseISO, } from '../../../utils';
4
4
  import { GraphQLFieldHelper } from './helpers';
5
5
  export const withHasuraGraphQL = (MixinBase) => {
6
6
  return class HasuraGraphQLMixin extends MixinBase {
@@ -12,6 +12,7 @@ export const withHasuraGraphQL = (MixinBase) => {
12
12
  this.authOptions = options.authOptions;
13
13
  this.model = options.model;
14
14
  this.fields = options.fields || this.model.identifiersFields;
15
+ this.logger = DebugHelper.from(this);
15
16
  }
16
17
  get headers() {
17
18
  return {
@@ -35,13 +36,18 @@ export const withHasuraGraphQL = (MixinBase) => {
35
36
  return this.fetch(resultQuery);
36
37
  }
37
38
  async query(operation, fields, variables) {
38
- const builded = this.buildHasuraQueryFields({ operation, fields, variables });
39
+ const builded = this.buildHasuraQueryFields({
40
+ operation,
41
+ fields: fields,
42
+ variables,
43
+ });
39
44
  const interpected = (await this.interceptors?.request?.(builded)) || builded;
40
45
  const resultQuery = query(interpected);
41
46
  const result = await this.fetch(resultQuery);
42
47
  return (await this.interceptors?.response?.(result, interpected)) || result;
43
48
  }
44
49
  async fetch(params) {
50
+ this.logger.with('params').log(params);
45
51
  const headers = this.headers;
46
52
  const { data: result } = await axios({
47
53
  url: `${this.endpoint}`,
@@ -51,6 +57,7 @@ export const withHasuraGraphQL = (MixinBase) => {
51
57
  });
52
58
  if (!isNil(result.errors))
53
59
  throw new Error(JSON.stringify(result.errors));
60
+ this.logger.with('returns').log(result);
54
61
  return result.data;
55
62
  }
56
63
  getAttributeGraphQLTypeOf(value) {
@@ -76,8 +83,8 @@ export const withHasuraGraphQL = (MixinBase) => {
76
83
  return value;
77
84
  return date;
78
85
  }
79
- convertDataFromHasura(data) {
80
- const plain = GraphQLFieldHelper.ConvertFieldValueFrom(data, this.fields);
86
+ convertDataFromHasura(data, fields) {
87
+ const plain = GraphQLFieldHelper.ConvertFieldValueFrom(data, fields || this.fields);
81
88
  return this.model.toInstance(plain);
82
89
  }
83
90
  convertDataToHasura(instance, update = false) {
@@ -98,4 +105,4 @@ export const withHasuraGraphQL = (MixinBase) => {
98
105
  }
99
106
  };
100
107
  };
101
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1oYXN1cmEtZ3JhcGhxbC5taXhpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL2luZnJhL2hhc3VyYS1ncmFwaHFsL21peGlucy93aXRoLWhhc3VyYS1ncmFwaHFsLm1peGluLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQTtBQUN6QixPQUFPLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBR25ELE9BQU8sRUFHTCxTQUFTLEVBQ1QsU0FBUyxFQUNULEtBQUssRUFDTCxLQUFLLEVBQ0wsUUFBUSxFQUNSLFFBQVEsRUFDUixNQUFNLEVBQ04sUUFBUSxHQUNULE1BQU0sZ0JBQWdCLENBQUE7QUFXdkIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sV0FBVyxDQUFBO0FBc0I5QyxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxDQUMvQixTQUFZLEVBQzBGLEVBQUU7SUFDeEcsT0FBTyxNQUFNLGtCQUFtQixTQUFRLFNBQVM7UUFzQi9DLFlBQVksR0FBRyxNQUFhO1lBQzFCLE1BQU0sT0FBTyxHQUFtQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUE7WUFFekQsS0FBSyxDQUFDLEdBQUcsTUFBTSxDQUFDLENBQUE7WUFFaEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFBO1lBQ2xDLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDLFFBQVEsQ0FBQTtZQUNoQyxJQUFJLENBQUMsV0FBVyxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUE7WUFDdEMsSUFBSSxDQUFDLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFBO1lBQzFCLElBQUksQ0FBQyxNQUFNLEdBQUcsT0FBTyxDQUFDLE1BQU0sSUFBSyxJQUFJLENBQUMsS0FBSyxDQUFDLGlCQUFnRCxDQUFBO1FBQzlGLENBQUM7UUF4QkQsSUFBSSxPQUFPO1lBQ1QsT0FBTztnQkFDTCxjQUFjLEVBQUUsa0JBQWtCO2dCQUNsQyxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxhQUFhLEVBQUUsSUFBSSxDQUFDLFdBQVcsRUFBRSxTQUFTLEVBQUUsQ0FBQztnQkFDN0YsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsdUJBQXVCLEVBQUUsSUFBSSxDQUFDLFdBQVcsRUFBRSxXQUFXLEVBQUUsQ0FBQztnQkFDM0csR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLFFBQVEsQ0FBQztvQkFDbkMsQ0FBQyxDQUFDLEVBQUU7b0JBQ0osQ0FBQyxDQUFDO3dCQUNFLGVBQWUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxJQUFJO3dCQUMvQyxrQkFBa0IsRUFBRSxJQUFJLENBQUMsV0FBVyxFQUFFLFFBQVEsRUFBRSxNQUFNO3FCQUN2RCxDQUFDO2FBQ1AsQ0FBQTtRQUNILENBQUM7UUFjRCxLQUFLLENBQUMsUUFBUSxDQUNaLFNBQWlCLEVBQ2pCLE1BQW1DLEVBQ25DLFNBQTJCO1lBRTNCLE1BQU0sV0FBVyxHQUFHLFFBQVEsQ0FBQztnQkFDM0IsU0FBUztnQkFDVCxTQUFTO2dCQUNULE1BQU0sRUFBRSxrQkFBa0IsQ0FBQyxpQ0FBaUMsQ0FBQyxNQUFNLENBQUM7YUFDckUsQ0FBQyxDQUFBO1lBRUYsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFBO1FBQ2hDLENBQUM7UUFFRCxLQUFLLENBQUMsS0FBSyxDQUNULFNBQTBDLEVBQzFDLE1BQW1DLEVBQ25DLFNBQTJCO1lBRTNCLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQTtZQUM3RSxNQUFNLFdBQVcsR0FBRyxDQUFDLE1BQU0sSUFBSSxDQUFDLFlBQVksRUFBRSxPQUFPLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLE9BQU8sQ0FBQTtZQUM1RSxNQUFNLFdBQVcsR0FBRyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUE7WUFDdEMsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFBO1lBRTVDLE9BQU8sQ0FBQyxNQUFNLElBQUksQ0FBQyxZQUFZLEVBQUUsUUFBUSxFQUFFLENBQUMsTUFBTSxFQUFFLFdBQVcsQ0FBQyxDQUFDLElBQUksTUFBTSxDQUFBO1FBQzdFLENBQUM7UUFFRCxLQUFLLENBQUMsS0FBSyxDQUFxQixNQUF5QztZQUN2RSxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFBO1lBQzVCLE1BQU0sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLEdBQUcsTUFBTSxLQUFLLENBQUM7Z0JBQ25DLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUU7Z0JBQ3ZCLE1BQU0sRUFBRSxNQUFNO2dCQUNkLElBQUksRUFBRSxNQUFNO2dCQUNaLE9BQU87YUFDUixDQUFDLENBQUE7WUFFRixJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUM7Z0JBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFBO1lBRXpFLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQTtRQUNwQixDQUFDO1FBRUQseUJBQXlCLENBQVksS0FBZ0I7WUFDbkQsSUFBSSxNQUFNLENBQUMsS0FBWSxDQUFDO2dCQUFFLE9BQU8sTUFBTSxDQUFBO1lBQ3ZDLElBQUksUUFBUSxDQUFDLEtBQUssQ0FBQztnQkFBRSxPQUFPLFFBQVEsQ0FBQTtZQUNwQyxJQUFJLFNBQVMsQ0FBQyxLQUFLLENBQUM7Z0JBQUUsT0FBTyxTQUFTLENBQUE7WUFDdEMsSUFBSSxLQUFLLFlBQVksSUFBSTtnQkFBRSxPQUFPLGFBQWEsQ0FBQTtZQUMvQyxJQUFJLFNBQVMsQ0FBQyxLQUFLLENBQUM7Z0JBQUUsT0FBTyxLQUFLLENBQUE7WUFDbEMsSUFBSSxRQUFRLENBQUMsS0FBSyxDQUFDO2dCQUFFLE9BQU8sU0FBUyxDQUFBO1lBRXJDLE1BQU0sSUFBSSxLQUFLLENBQUMsMEJBQTBCLENBQUMsQ0FBQTtRQUM3QyxDQUFDO1FBRUQseUJBQXlCLENBQUMsS0FBYTtZQUNyQyxJQUFJLENBQUMsa0RBQWtELENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQztnQkFBRSxPQUFPLEtBQUssQ0FBQTtZQUVqRixNQUFNLElBQUksR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUE7WUFFNUIsSUFBSSxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUFFLE9BQU8sS0FBSyxDQUFBO1lBRXZDLE9BQU8sSUFBSSxDQUFBO1FBQ2IsQ0FBQztRQUVELHFCQUFxQixDQUFDLElBQXFDO1lBQ3pELE1BQU0sS0FBSyxHQUFHLGtCQUFrQixDQUFDLHFCQUFxQixDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUE7WUFFekUsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUNyQyxDQUFDO1FBRUQsbUJBQW1CLENBQUMsUUFBZSxFQUFFLE1BQU0sR0FBRyxLQUFLO1lBQ2pELE9BQU8sa0JBQWtCLENBQUMsbUJBQW1CLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUE7UUFDOUUsQ0FBQztRQUVELHNCQUFzQixDQUFDLEVBQ3JCLFNBQVMsRUFDVCxNQUFNLEVBQ04sU0FBUyxHQUtWO1lBQ0MsT0FBTyxrQkFBa0IsQ0FBQyxvQkFBb0IsQ0FBQyxTQUFTLENBQUM7Z0JBQ3ZELENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO29CQUN6QixTQUFTLEVBQUUsTUFBTSxDQUFDLFNBQVM7b0JBQzNCLFNBQVMsRUFBRSxNQUFNLENBQUMsU0FBUztvQkFDM0IsTUFBTSxFQUFFLGtCQUFrQixDQUFDLGlDQUFpQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUM7aUJBQzVFLENBQUMsQ0FBQztnQkFDTCxDQUFDLENBQUM7b0JBQ0UsU0FBUztvQkFDVCxTQUFTO29CQUNULE1BQU0sRUFBRSxrQkFBa0IsQ0FBQyxpQ0FBaUMsQ0FBQyxNQUFNLENBQUM7aUJBQ3JFLENBQUE7UUFDUCxDQUFDO0tBQ0YsQ0FBQTtBQUNILENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBheGlvcyBmcm9tICdheGlvcydcbmltcG9ydCB7IG11dGF0aW9uLCBxdWVyeSB9IGZyb20gJ2dxbC1xdWVyeS1idWlsZGVyJ1xuXG5pbXBvcnQgeyBCYXNlTW9kZWxCdWlsZGVyLCBNb2RlbEJhc2VTdHJ1Y3R1cmUgfSBmcm9tICcuLi8uLi8uLi9kb21haW4nXG5pbXBvcnQge1xuICBNZXJnZUNvbnN0cnVjdG9yUGFyYW1zLFxuICBNaXhpbkN0b3IsXG4gIGlzQm9vbGVhbixcbiAgaXNJbnRlZ2VyLFxuICBpc05hTixcbiAgaXNOaWwsXG4gIGlzTnVtYmVyLFxuICBpc1N0cmluZyxcbiAgaXNVVUlELFxuICBwYXJzZUlTTyxcbn0gZnJvbSAnLi4vLi4vLi4vdXRpbHMnXG5pbXBvcnQge1xuICBGaWVsZHMsXG4gIEdyYXBoUUxQYXJhbXMsXG4gIEdyYXBoUUxSZXBvc2l0b3J5LFxuICBIYXN1cmFHcmFwaFFMQXV0aE9wdGlvbnMsXG4gIEhhc3VyYUdyYXBoUUxGaWVsZHMsXG4gIEhhc3VyYUdyYXBoUUxIZWFkZXJzLFxuICBWYXJpYWJsZU9wdGlvbnMsXG59IGZyb20gJy4uL3R5cGVzJ1xuXG5pbXBvcnQgeyBHcmFwaFFMRmllbGRIZWxwZXIgfSBmcm9tICcuL2hlbHBlcnMnXG5cbnR5cGUgUXVlcnlCdWlsZGVyT3B0aW9ucyA9IHtcbiAgb3BlcmF0aW9uOiBzdHJpbmdcbiAgZmllbGRzOiBGaWVsZHNcbiAgdmFyaWFibGVzPzogVmFyaWFibGVPcHRpb25zXG59XG5cbnR5cGUgSGFzdXJhR3JhcGhRTEludGVyY2VwdG9yczxQID0gUXVlcnlCdWlsZGVyT3B0aW9ucyB8IFF1ZXJ5QnVpbGRlck9wdGlvbnNbXT4gPSB7XG4gIHJlcXVlc3Q/OiA8Uj4ocmVxdWVzdDogUCkgPT4gUHJvbWlzZTxQICYgUj5cbiAgcmVzcG9uc2U/OiA8Uj4ocmVzcG9uc2U6IFIsIHJlcXVlc3Q6IFApID0+IFByb21pc2U8Uj5cbn1cblxuZXhwb3J0IHR5cGUgSGFzdXJhQ29uc3RydWN0b3JQYXJhbXM8TW9kZWwgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmU+ID0ge1xuICB0YWJsZU5hbWU6IHN0cmluZ1xuICBtb2RlbDogQmFzZU1vZGVsQnVpbGRlcjxNb2RlbD5cbiAgZmllbGRzOiBIYXN1cmFHcmFwaFFMRmllbGRzPE1vZGVsPlxuICBlbmRwb2ludDogc3RyaW5nXG4gIGludGVyY2VwdG9ycz86IEhhc3VyYUdyYXBoUUxJbnRlcmNlcHRvcnNcbiAgYXV0aE9wdGlvbnM6IEhhc3VyYUdyYXBoUUxBdXRoT3B0aW9uc1xufVxuXG5leHBvcnQgY29uc3Qgd2l0aEhhc3VyYUdyYXBoUUwgPSA8TUJhc2UgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmUsIFQgZXh0ZW5kcyBNaXhpbkN0b3IgPSBNaXhpbkN0b3I+KFxuICBNaXhpbkJhc2U6IFQsXG4pOiBNaXhpbkN0b3I8R3JhcGhRTFJlcG9zaXRvcnk8TUJhc2U+LCBNZXJnZUNvbnN0cnVjdG9yUGFyYW1zPGFueVtdLCBIYXN1cmFDb25zdHJ1Y3RvclBhcmFtczxNQmFzZT5bXT4+ID0+IHtcbiAgcmV0dXJuIGNsYXNzIEhhc3VyYUdyYXBoUUxNaXhpbiBleHRlbmRzIE1peGluQmFzZSBpbXBsZW1lbnRzIEdyYXBoUUxSZXBvc2l0b3J5PE1CYXNlPiB7XG4gICAgdGFibGVOYW1lOiBzdHJpbmdcbiAgICBlbmRwb2ludDogc3RyaW5nXG4gICAgYXV0aE9wdGlvbnM6IEhhc3VyYUdyYXBoUUxBdXRoT3B0aW9uc1xuICAgIGludGVyY2VwdG9yczogSGFzdXJhR3JhcGhRTEludGVyY2VwdG9yc1xuICAgIG1vZGVsOiBCYXNlTW9kZWxCdWlsZGVyPE1CYXNlPlxuICAgIGZpZWxkczogSGFzdXJhR3JhcGhRTEZpZWxkczxNQmFzZT5cblxuICAgIGdldCBoZWFkZXJzKCk6IEhhc3VyYUdyYXBoUUxIZWFkZXJzIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICAgIC4uLihpc05pbCh0aGlzLmF1dGhPcHRpb25zPy5hdXRoVG9rZW4pID8ge30gOiB7IEF1dGhvcml6YXRpb246IHRoaXMuYXV0aE9wdGlvbnM/LmF1dGhUb2tlbiB9KSxcbiAgICAgICAgLi4uKGlzTmlsKHRoaXMuYXV0aE9wdGlvbnM/LmFkbWluU2VjcmV0KSA/IHt9IDogeyAnWC1IYXN1cmEtQWRtaW4tU2VjcmV0JzogdGhpcy5hdXRoT3B0aW9ucz8uYWRtaW5TZWNyZXQgfSksXG4gICAgICAgIC4uLihpc05pbCh0aGlzLmF1dGhPcHRpb25zPy5hdXRoUm9sZSlcbiAgICAgICAgICA/IHt9XG4gICAgICAgICAgOiB7XG4gICAgICAgICAgICAgICdYLUhhc3VyYS1Sb2xlJzogdGhpcy5hdXRoT3B0aW9ucy5hdXRoUm9sZS5yb2xlLFxuICAgICAgICAgICAgICAnWC1IYXN1cmEtVXNlci1JZCc6IHRoaXMuYXV0aE9wdGlvbnM/LmF1dGhSb2xlPy51c2VySWQsXG4gICAgICAgICAgICB9KSxcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvciguLi5wYXJhbXM6IGFueVtdKSB7XG4gICAgICBjb25zdCBvcHRpb25zOiBIYXN1cmFDb25zdHJ1Y3RvclBhcmFtczxNQmFzZT4gPSBwYXJhbXNbMF1cblxuICAgICAgc3VwZXIoLi4ucGFyYW1zKVxuXG4gICAgICB0aGlzLnRhYmxlTmFtZSA9IG9wdGlvbnMudGFibGVOYW1lXG4gICAgICB0aGlzLmVuZHBvaW50ID0gb3B0aW9ucy5lbmRwb2ludFxuICAgICAgdGhpcy5hdXRoT3B0aW9ucyA9IG9wdGlvbnMuYXV0aE9wdGlvbnNcbiAgICAgIHRoaXMubW9kZWwgPSBvcHRpb25zLm1vZGVsXG4gICAgICB0aGlzLmZpZWxkcyA9IG9wdGlvbnMuZmllbGRzIHx8ICh0aGlzLm1vZGVsLmlkZW50aWZpZXJzRmllbGRzIGFzIEhhc3VyYUdyYXBoUUxGaWVsZHM8TUJhc2U+KVxuICAgIH1cblxuICAgIGFzeW5jIG11dGF0aW9uPFJldHVybkZpZWxkcyA9IGFueT4oXG4gICAgICBvcGVyYXRpb246IHN0cmluZyxcbiAgICAgIGZpZWxkcz86IEhhc3VyYUdyYXBoUUxGaWVsZHM8TUJhc2U+LFxuICAgICAgdmFyaWFibGVzPzogVmFyaWFibGVPcHRpb25zLFxuICAgICk6IFByb21pc2U8UmV0dXJuRmllbGRzPiB7XG4gICAgICBjb25zdCByZXN1bHRRdWVyeSA9IG11dGF0aW9uKHtcbiAgICAgICAgb3BlcmF0aW9uLFxuICAgICAgICB2YXJpYWJsZXMsXG4gICAgICAgIGZpZWxkczogR3JhcGhRTEZpZWxkSGVscGVyLkNvbnZlcnRNb2RlbEZpZWxkc1RvR3JhcGhRTEZpZWxkcyhmaWVsZHMpLFxuICAgICAgfSlcblxuICAgICAgcmV0dXJuIHRoaXMuZmV0Y2gocmVzdWx0UXVlcnkpXG4gICAgfVxuXG4gICAgYXN5bmMgcXVlcnk8UmV0dXJuRmllbGRzID0gYW55PihcbiAgICAgIG9wZXJhdGlvbjogc3RyaW5nIHwgR3JhcGhRTFBhcmFtczxNQmFzZT5bXSxcbiAgICAgIGZpZWxkcz86IEhhc3VyYUdyYXBoUUxGaWVsZHM8TUJhc2U+LFxuICAgICAgdmFyaWFibGVzPzogVmFyaWFibGVPcHRpb25zLFxuICAgICk6IFByb21pc2U8UmV0dXJuRmllbGRzPiB7XG4gICAgICBjb25zdCBidWlsZGVkID0gdGhpcy5idWlsZEhhc3VyYVF1ZXJ5RmllbGRzKHsgb3BlcmF0aW9uLCBmaWVsZHMsIHZhcmlhYmxlcyB9KVxuICAgICAgY29uc3QgaW50ZXJwZWN0ZWQgPSAoYXdhaXQgdGhpcy5pbnRlcmNlcHRvcnM/LnJlcXVlc3Q/LihidWlsZGVkKSkgfHwgYnVpbGRlZFxuICAgICAgY29uc3QgcmVzdWx0UXVlcnkgPSBxdWVyeShpbnRlcnBlY3RlZClcbiAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMuZmV0Y2gocmVzdWx0UXVlcnkpXG5cbiAgICAgIHJldHVybiAoYXdhaXQgdGhpcy5pbnRlcmNlcHRvcnM/LnJlc3BvbnNlPy4ocmVzdWx0LCBpbnRlcnBlY3RlZCkpIHx8IHJlc3VsdFxuICAgIH1cblxuICAgIGFzeW5jIGZldGNoPFJldHVybkZpZWxkcyA9IGFueT4ocGFyYW1zOiB7IHZhcmlhYmxlczogYW55OyBxdWVyeTogc3RyaW5nIH0pOiBQcm9taXNlPFJldHVybkZpZWxkcz4ge1xuICAgICAgY29uc3QgaGVhZGVycyA9IHRoaXMuaGVhZGVyc1xuICAgICAgY29uc3QgeyBkYXRhOiByZXN1bHQgfSA9IGF3YWl0IGF4aW9zKHtcbiAgICAgICAgdXJsOiBgJHt0aGlzLmVuZHBvaW50fWAsXG4gICAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgICBkYXRhOiBwYXJhbXMsXG4gICAgICAgIGhlYWRlcnMsXG4gICAgICB9KVxuXG4gICAgICBpZiAoIWlzTmlsKHJlc3VsdC5lcnJvcnMpKSB0aHJvdyBuZXcgRXJyb3IoSlNPTi5zdHJpbmdpZnkocmVzdWx0LmVycm9ycykpXG5cbiAgICAgIHJldHVybiByZXN1bHQuZGF0YVxuICAgIH1cblxuICAgIGdldEF0dHJpYnV0ZUdyYXBoUUxUeXBlT2Y8RmllbGRUeXBlPih2YWx1ZTogRmllbGRUeXBlKTogc3RyaW5nIHtcbiAgICAgIGlmIChpc1VVSUQodmFsdWUgYXMgYW55KSkgcmV0dXJuICd1dWlkJ1xuICAgICAgaWYgKGlzU3RyaW5nKHZhbHVlKSkgcmV0dXJuICdTdHJpbmcnXG4gICAgICBpZiAoaXNCb29sZWFuKHZhbHVlKSkgcmV0dXJuICdCb29sZWFuJ1xuICAgICAgaWYgKHZhbHVlIGluc3RhbmNlb2YgRGF0ZSkgcmV0dXJuICd0aW1lc3RhbXB0eidcbiAgICAgIGlmIChpc0ludGVnZXIodmFsdWUpKSByZXR1cm4gJ0ludCdcbiAgICAgIGlmIChpc051bWJlcih2YWx1ZSkpIHJldHVybiAnbnVtZXJpYydcblxuICAgICAgdGhyb3cgbmV3IEVycm9yKCdUeXBlIG5vdCBpbXBsZW1lbnRlZCB5ZXQnKVxuICAgIH1cblxuICAgIGNoZWNrSWZJc0RhdGVUaW1lQW5kUGFyc2UodmFsdWU6IHN0cmluZyk6IERhdGUgfCBzdHJpbmcge1xuICAgICAgaWYgKCEvXlxcZHs0fS0oMFsxLTldfDFbMC0yXSktKDBbMS05XXxbMTJdWzAtOV18M1swMV0pJC8udGVzdCh2YWx1ZSkpIHJldHVybiB2YWx1ZVxuXG4gICAgICBjb25zdCBkYXRlID0gcGFyc2VJU08odmFsdWUpXG5cbiAgICAgIGlmIChpc05hTihkYXRlLmdldFRpbWUoKSkpIHJldHVybiB2YWx1ZVxuXG4gICAgICByZXR1cm4gZGF0ZVxuICAgIH1cblxuICAgIGNvbnZlcnREYXRhRnJvbUhhc3VyYShkYXRhOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBudW1iZXI+KTogTUJhc2Uge1xuICAgICAgY29uc3QgcGxhaW4gPSBHcmFwaFFMRmllbGRIZWxwZXIuQ29udmVydEZpZWxkVmFsdWVGcm9tKGRhdGEsIHRoaXMuZmllbGRzKVxuXG4gICAgICByZXR1cm4gdGhpcy5tb2RlbC50b0luc3RhbmNlKHBsYWluKVxuICAgIH1cblxuICAgIGNvbnZlcnREYXRhVG9IYXN1cmEoaW5zdGFuY2U6IE1CYXNlLCB1cGRhdGUgPSBmYWxzZSk6IFJlY29yZDxzdHJpbmcsIHN0cmluZyB8IG51bWJlcj4ge1xuICAgICAgcmV0dXJuIEdyYXBoUUxGaWVsZEhlbHBlci5Db252ZXJ0RmllbGRWYWx1ZVRvKGluc3RhbmNlLCB0aGlzLmZpZWxkcywgdXBkYXRlKVxuICAgIH1cblxuICAgIGJ1aWxkSGFzdXJhUXVlcnlGaWVsZHMoe1xuICAgICAgb3BlcmF0aW9uLFxuICAgICAgZmllbGRzLFxuICAgICAgdmFyaWFibGVzLFxuICAgIH06IHtcbiAgICAgIG9wZXJhdGlvbjogc3RyaW5nIHwgR3JhcGhRTFBhcmFtczxNQmFzZT5bXVxuICAgICAgZmllbGRzPzogSGFzdXJhR3JhcGhRTEZpZWxkczxNQmFzZT5cbiAgICAgIHZhcmlhYmxlcz86IFZhcmlhYmxlT3B0aW9uc1xuICAgIH0pOiBRdWVyeUJ1aWxkZXJPcHRpb25zIHwgUXVlcnlCdWlsZGVyT3B0aW9uc1tdIHtcbiAgICAgIHJldHVybiBHcmFwaFFMRmllbGRIZWxwZXIuQ2hlY2tJc0dyYXBoUUxQYXJhbXMob3BlcmF0aW9uKVxuICAgICAgICA/IG9wZXJhdGlvbi5tYXAoKG9wdGlvbikgPT4gKHtcbiAgICAgICAgICAgIG9wZXJhdGlvbjogb3B0aW9uLm9wZXJhdGlvbixcbiAgICAgICAgICAgIHZhcmlhYmxlczogb3B0aW9uLnZhcmlhYmxlcyxcbiAgICAgICAgICAgIGZpZWxkczogR3JhcGhRTEZpZWxkSGVscGVyLkNvbnZlcnRNb2RlbEZpZWxkc1RvR3JhcGhRTEZpZWxkcyhvcHRpb24uZmllbGRzKSxcbiAgICAgICAgICB9KSlcbiAgICAgICAgOiB7XG4gICAgICAgICAgICBvcGVyYXRpb24sXG4gICAgICAgICAgICB2YXJpYWJsZXMsXG4gICAgICAgICAgICBmaWVsZHM6IEdyYXBoUUxGaWVsZEhlbHBlci5Db252ZXJ0TW9kZWxGaWVsZHNUb0dyYXBoUUxGaWVsZHMoZmllbGRzKSxcbiAgICAgICAgICB9XG4gICAgfVxuICB9XG59XG4iXX0=
108
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1oYXN1cmEtZ3JhcGhxbC5taXhpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL2luZnJhL2hhc3VyYS1ncmFwaHFsL21peGlucy93aXRoLWhhc3VyYS1ncmFwaHFsLm1peGluLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQTtBQUN6QixPQUFPLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBR25ELE9BQU8sRUFDTCxXQUFXLEVBQ1gsU0FBUyxFQUNULFNBQVMsRUFDVCxLQUFLLEVBQ0wsS0FBSyxFQUNMLFFBQVEsRUFDUixRQUFRLEVBQ1IsTUFBTSxFQUdOLFFBQVEsR0FDVCxNQUFNLGdCQUFnQixDQUFBO0FBV3ZCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLFdBQVcsQ0FBQTtBQXNCOUMsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsQ0FJL0IsU0FBWSxFQUMwRixFQUFFO0lBQ3hHLE9BQU8sTUFBTSxrQkFBbUIsU0FBUSxTQUFTO1FBdUIvQyxZQUFZLEdBQUcsTUFBYTtZQUMxQixNQUFNLE9BQU8sR0FBbUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFBO1lBRXpELEtBQUssQ0FBQyxHQUFHLE1BQU0sQ0FBQyxDQUFBO1lBRWhCLElBQUksQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQTtZQUNsQyxJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUE7WUFDaEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFBO1lBQ3RDLElBQUksQ0FBQyxLQUFLLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQTtZQUMxQixJQUFJLENBQUMsTUFBTSxHQUFHLE9BQU8sQ0FBQyxNQUFNLElBQUssSUFBSSxDQUFDLEtBQUssQ0FBQyxpQkFBZ0Qs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QTtRQUNyQyxDQUFDO1FBRUQsbUJBQW1CLENBQUMsUUFBZSxFQUFFLE1BQU0sR0FBRyxLQUFLO1lBQ2pELE9BQU8sa0JBQWtCLENBQUMsbUJBQW1CLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUE7UUFDOUUsQ0FBQztRQUVELHNCQUFzQixDQUFDLEVBQ3JCLFNBQVMsRUFDVCxNQUFNLEVBQ04sU0FBUyxHQUtWO1lBQ0MsT0FBTyxrQkFBa0IsQ0FBQyxvQkFBb0IsQ0FBQyxTQUFTLENBQUM7Z0JBQ3ZELENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO29CQUN6QixTQUFTLEVBQUUsTUFBTSxDQUFDLFNBQVM7b0JBQzNCLFNBQVMsRUFBRSxNQUFNLENBQUMsU0FBUztvQkFDM0IsTUFBTSxFQUFFLGtCQUFrQixDQUFDLGlDQUFpQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUM7aUJBQzVFLENBQUMsQ0FBQztnQkFDTCxDQUFDLENBQUM7b0JBQ0UsU0FBUztvQkFDVCxTQUFTO29CQUNULE1BQU0sRUFBRSxrQkFBa0IsQ0FBQyxpQ0FBaUMsQ0FBQyxNQUFNLENBQUM7aUJBQ3JFLENBQUE7UUFDUCxDQUFDO0tBQ0YsQ0FBQTtBQUNILENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBheGlvcyBmcm9tICdheGlvcydcbmltcG9ydCB7IG11dGF0aW9uLCBxdWVyeSB9IGZyb20gJ2dxbC1xdWVyeS1idWlsZGVyJ1xuXG5pbXBvcnQgeyBCYXNlTW9kZWxCdWlsZGVyLCBNb2RlbEJhc2VTdHJ1Y3R1cmUgfSBmcm9tICcuLi8uLi8uLi9kb21haW4nXG5pbXBvcnQge1xuICBEZWJ1Z0hlbHBlcixcbiAgaXNCb29sZWFuLFxuICBpc0ludGVnZXIsXG4gIGlzTmFOLFxuICBpc05pbCxcbiAgaXNOdW1iZXIsXG4gIGlzU3RyaW5nLFxuICBpc1VVSUQsXG4gIE1lcmdlQ29uc3RydWN0b3JQYXJhbXMsXG4gIE1peGluQ3RvcixcbiAgcGFyc2VJU08sXG59IGZyb20gJy4uLy4uLy4uL3V0aWxzJ1xuaW1wb3J0IHtcbiAgRmllbGRzLFxuICBHcmFwaFFMUGFyYW1zLFxuICBHcmFwaFFMUmVwb3NpdG9yeSxcbiAgSGFzdXJhR3JhcGhRTEF1dGhPcHRpb25zLFxuICBIYXN1cmFHcmFwaFFMRmllbGRzLFxuICBIYXN1cmFHcmFwaFFMSGVhZGVycyxcbiAgVmFyaWFibGVPcHRpb25zLFxufSBmcm9tICcuLi90eXBlcydcblxuaW1wb3J0IHsgR3JhcGhRTEZpZWxkSGVscGVyIH0gZnJvbSAnLi9oZWxwZXJzJ1xuXG50eXBlIFF1ZXJ5QnVpbGRlck9wdGlvbnMgPSB7XG4gIG9wZXJhdGlvbjogc3RyaW5nXG4gIGZpZWxkczogRmllbGRzXG4gIHZhcmlhYmxlcz86IFZhcmlhYmxlT3B0aW9uc1xufVxuXG50eXBlIEhhc3VyYUdyYXBoUUxJbnRlcmNlcHRvcnM8UCA9IFF1ZXJ5QnVpbGRlck9wdGlvbnMgfCBRdWVyeUJ1aWxkZXJPcHRpb25zW10+ID0ge1xuICByZXF1ZXN0PzogPFI+KHJlcXVlc3Q6IFApID0+IFByb21pc2U8UCAmIFI+XG4gIHJlc3BvbnNlPzogPFI+KHJlc3BvbnNlOiBSLCByZXF1ZXN0OiBQKSA9PiBQcm9taXNlPFI+XG59XG5cbmV4cG9ydCB0eXBlIEhhc3VyYUNvbnN0cnVjdG9yUGFyYW1zPE1vZGVsIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlPE1vZGVsLCBNb2RlbFsnaWRlbnRpZmllcnNGaWVsZHMnXVtudW1iZXJdPj4gPSB7XG4gIHRhYmxlTmFtZTogc3RyaW5nXG4gIG1vZGVsOiBCYXNlTW9kZWxCdWlsZGVyPE1vZGVsPlxuICBmaWVsZHM6IEhhc3VyYUdyYXBoUUxGaWVsZHM8TW9kZWw+XG4gIGVuZHBvaW50OiBzdHJpbmdcbiAgaW50ZXJjZXB0b3JzPzogSGFzdXJhR3JhcGhRTEludGVyY2VwdG9yc1xuICBhdXRoT3B0aW9uczogSGFzdXJhR3JhcGhRTEF1dGhPcHRpb25zXG59XG5cbmV4cG9ydCBjb25zdCB3aXRoSGFzdXJhR3JhcGhRTCA9IDxcbiAgTUJhc2UgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmU8TUJhc2UsIE1CYXNlWydpZGVudGlmaWVyc0ZpZWxkcyddW251bWJlcl0+LFxuICBUIGV4dGVuZHMgTWl4aW5DdG9yID0gTWl4aW5DdG9yLFxuPihcbiAgTWl4aW5CYXNlOiBULFxuKTogTWl4aW5DdG9yPEdyYXBoUUxSZXBvc2l0b3J5PE1CYXNlPiwgTWVyZ2VDb25zdHJ1Y3RvclBhcmFtczxhbnlbXSwgSGFzdXJhQ29uc3RydWN0b3JQYXJhbXM8TUJhc2U+W10+PiA9PiB7XG4gIHJldHVybiBjbGFzcyBIYXN1cmFHcmFwaFFMTWl4aW4gZXh0ZW5kcyBNaXhpbkJhc2UgaW1wbGVtZW50cyBHcmFwaFFMUmVwb3NpdG9yeTxNQmFzZT4ge1xuICAgIHRhYmxlTmFtZTogc3RyaW5nXG4gICAgZW5kcG9pbnQ6IHN0cmluZ1xuICAgIGF1dGhPcHRpb25zOiBIYXN1cmFHcmFwaFFMQXV0aE9wdGlvbnNcbiAgICBpbnRlcmNlcHRvcnM6IEhhc3VyYUdyYXBoUUxJbnRlcmNlcHRvcnNcbiAgICBtb2RlbDogQmFzZU1vZGVsQnVpbGRlcjxNQmFzZT5cbiAgICBmaWVsZHM6IEhhc3VyYUdyYXBoUUxGaWVsZHM8TUJhc2U+XG4gICAgbG9nZ2VyOiBEZWJ1Z0hlbHBlclxuXG4gICAgZ2V0IGhlYWRlcnMoKTogSGFzdXJhR3JhcGhRTEhlYWRlcnMge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICAgICAgLi4uKGlzTmlsKHRoaXMuYXV0aE9wdGlvbnM/LmF1dGhUb2tlbikgPyB7fSA6IHsgQXV0aG9yaXphdGlvbjogdGhpcy5hdXRoT3B0aW9ucz8uYXV0aFRva2VuIH0pLFxuICAgICAgICAuLi4oaXNOaWwodGhpcy5hdXRoT3B0aW9ucz8uYWRtaW5TZWNyZXQpID8ge30gOiB7ICdYLUhhc3VyYS1BZG1pbi1TZWNyZXQnOiB0aGlzLmF1dGhPcHRpb25zPy5hZG1pblNlY3JldCB9KSxcbiAgICAgICAgLi4uKGlzTmlsKHRoaXMuYXV0aE9wdGlvbnM/LmF1dGhSb2xlKVxuICAgICAgICAgID8ge31cbiAgICAgICAgICA6IHtcbiAgICAgICAgICAgICAgJ1gtSGFzdXJhLVJvbGUnOiB0aGlzLmF1dGhPcHRpb25zLmF1dGhSb2xlLnJvbGUsXG4gICAgICAgICAgICAgICdYLUhhc3VyYS1Vc2VyLUlkJzogdGhpcy5hdXRoT3B0aW9ucz8uYXV0aFJvbGU/LnVzZXJJZCxcbiAgICAgICAgICAgIH0pLFxuICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKC4uLnBhcmFtczogYW55W10pIHtcbiAgICAgIGNvbnN0IG9wdGlvbnM6IEhhc3VyYUNvbnN0cnVjdG9yUGFyYW1zPE1CYXNlPiA9IHBhcmFtc1swXVxuXG4gICAgICBzdXBlciguLi5wYXJhbXMpXG5cbiAgICAgIHRoaXMudGFibGVOYW1lID0gb3B0aW9ucy50YWJsZU5hbWVcbiAgICAgIHRoaXMuZW5kcG9pbnQgPSBvcHRpb25zLmVuZHBvaW50XG4gICAgICB0aGlzLmF1dGhPcHRpb25zID0gb3B0aW9ucy5hdXRoT3B0aW9uc1xuICAgICAgdGhpcy5tb2RlbCA9IG9wdGlvbnMubW9kZWxcbiAgICAgIHRoaXMuZmllbGRzID0gb3B0aW9ucy5maWVsZHMgfHwgKHRoaXMubW9kZWwuaWRlbnRpZmllcnNGaWVsZHMgYXMgSGFzdXJhR3JhcGhRTEZpZWxkczxNQmFzZT4pXG4gICAgICB0aGlzLmxvZ2dlciA9IERlYnVnSGVscGVyLmZyb20odGhpcylcbiAgICB9XG5cbiAgICBhc3luYyBtdXRhdGlvbjxSZXR1cm5GaWVsZHMgPSBhbnk+KFxuICAgICAgb3BlcmF0aW9uOiBzdHJpbmcsXG4gICAgICBmaWVsZHM/OiBzdHJpbmdbXSB8IEhhc3VyYUdyYXBoUUxGaWVsZHM8TUJhc2U+LFxuICAgICAgdmFyaWFibGVzPzogVmFyaWFibGVPcHRpb25zLFxuICAgICk6IFByb21pc2U8UmV0dXJuRmllbGRzPiB7XG4gICAgICBjb25zdCByZXN1bHRRdWVyeSA9IG11dGF0aW9uKHtcbiAgICAgICAgb3BlcmF0aW9uLFxuICAgICAgICB2YXJpYWJsZXMsXG4gICAgICAgIGZpZWxkczogR3JhcGhRTEZpZWxkSGVscGVyLkNvbnZlcnRNb2RlbEZpZWxkc1RvR3JhcGhRTEZpZWxkcyhmaWVsZHMgYXMgSGFzdXJhR3JhcGhRTEZpZWxkczxNQmFzZT4pLFxuICAgICAgfSlcblxuICAgICAgcmV0dXJuIHRoaXMuZmV0Y2gocmVzdWx0UXVlcnkpXG4gICAgfVxuXG4gICAgYXN5bmMgcXVlcnk8UmV0dXJuRmllbGRzID0gYW55PihcbiAgICAgIG9wZXJhdGlvbjogc3RyaW5nIHwgR3JhcGhRTFBhcmFtczxNQmFzZT5bXSxcbiAgICAgIGZpZWxkcz86IHN0cmluZ1tdIHwgSGFzdXJhR3JhcGhRTEZpZWxkczxNQmFzZT4sXG4gICAgICB2YXJpYWJsZXM/OiBWYXJpYWJsZU9wdGlvbnMsXG4gICAgKTogUHJvbWlzZTxSZXR1cm5GaWVsZHM+IHtcbiAgICAgIGNvbnN0IGJ1aWxkZWQgPSB0aGlzLmJ1aWxkSGFzdXJhUXVlcnlGaWVsZHMoe1xuICAgICAgICBvcGVyYXRpb24sXG4gICAgICAgIGZpZWxkczogZmllbGRzIGFzIEhhc3VyYUdyYXBoUUxGaWVsZHM8TUJhc2U+LFxuICAgICAgICB2YXJpYWJsZXMsXG4gICAgICB9KVxuICAgICAgY29uc3QgaW50ZXJwZWN0ZWQgPSAoYXdhaXQgdGhpcy5pbnRlcmNlcHRvcnM/LnJlcXVlc3Q/LihidWlsZGVkKSkgfHwgYnVpbGRlZFxuICAgICAgY29uc3QgcmVzdWx0UXVlcnkgPSBxdWVyeShpbnRlcnBlY3RlZClcbiAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMuZmV0Y2gocmVzdWx0UXVlcnkpXG5cbiAgICAgIHJldHVybiAoYXdhaXQgdGhpcy5pbnRlcmNlcHRvcnM/LnJlc3BvbnNlPy4ocmVzdWx0LCBpbnRlcnBlY3RlZCkpIHx8IHJlc3VsdFxuICAgIH1cblxuICAgIGFzeW5jIGZldGNoPFJldHVybkZpZWxkcyA9IGFueT4ocGFyYW1zOiB7IHZhcmlhYmxlczogYW55OyBxdWVyeTogc3RyaW5nIH0pOiBQcm9taXNlPFJldHVybkZpZWxkcz4ge1xuICAgICAgdGhpcy5sb2dnZXIud2l0aCgncGFyYW1zJykubG9nKHBhcmFtcylcblxuICAgICAgY29uc3QgaGVhZGVycyA9IHRoaXMuaGVhZGVyc1xuICAgICAgY29uc3QgeyBkYXRhOiByZXN1bHQgfSA9IGF3YWl0IGF4aW9zKHtcbiAgICAgICAgdXJsOiBgJHt0aGlzLmVuZHBvaW50fWAsXG4gICAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgICBkYXRhOiBwYXJhbXMsXG4gICAgICAgIGhlYWRlcnMsXG4gICAgICB9KVxuXG4gICAgICBpZiAoIWlzTmlsKHJlc3VsdC5lcnJvcnMpKSB0aHJvdyBuZXcgRXJyb3IoSlNPTi5zdHJpbmdpZnkocmVzdWx0LmVycm9ycykpXG5cbiAgICAgIHRoaXMubG9nZ2VyLndpdGgoJ3JldHVybnMnKS5sb2cocmVzdWx0KVxuXG4gICAgICByZXR1cm4gcmVzdWx0LmRhdGFcbiAgICB9XG5cbiAgICBnZXRBdHRyaWJ1dGVHcmFwaFFMVHlwZU9mPEZpZWxkVHlwZT4odmFsdWU6IEZpZWxkVHlwZSk6IHN0cmluZyB7XG4gICAgICBpZiAoaXNVVUlEKHZhbHVlIGFzIGFueSkpIHJldHVybiAndXVpZCdcbiAgICAgIGlmIChpc1N0cmluZyh2YWx1ZSkpIHJldHVybiAnU3RyaW5nJ1xuICAgICAgaWYgKGlzQm9vbGVhbih2YWx1ZSkpIHJldHVybiAnQm9vbGVhbidcbiAgICAgIGlmICh2YWx1ZSBpbnN0YW5jZW9mIERhdGUpIHJldHVybiAndGltZXN0YW1wdHonXG4gICAgICBpZiAoaXNJbnRlZ2VyKHZhbHVlKSkgcmV0dXJuICdJbnQnXG4gICAgICBpZiAoaXNOdW1iZXIodmFsdWUpKSByZXR1cm4gJ251bWVyaWMnXG5cbiAgICAgIHRocm93IG5ldyBFcnJvcignVHlwZSBub3QgaW1wbGVtZW50ZWQgeWV0JylcbiAgICB9XG5cbiAgICBjaGVja0lmSXNEYXRlVGltZUFuZFBhcnNlKHZhbHVlOiBzdHJpbmcpOiBEYXRlIHwgc3RyaW5nIHtcbiAgICAgIGlmICghL15cXGR7NH0tKDBbMS05XXwxWzAtMl0pLSgwWzEtOV18WzEyXVswLTldfDNbMDFdKSQvLnRlc3QodmFsdWUpKSByZXR1cm4gdmFsdWVcblxuICAgICAgY29uc3QgZGF0ZSA9IHBhcnNlSVNPKHZhbHVlKVxuXG4gICAgICBpZiAoaXNOYU4oZGF0ZS5nZXRUaW1lKCkpKSByZXR1cm4gdmFsdWVcblxuICAgICAgcmV0dXJuIGRhdGVcbiAgICB9XG5cbiAgICBjb252ZXJ0RGF0YUZyb21IYXN1cmEoXG4gICAgICBkYXRhOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBudW1iZXI+LFxuICAgICAgZmllbGRzPzogc3RyaW5nW10gfCBIYXN1cmFHcmFwaFFMRmllbGRzPE1CYXNlPixcbiAgICApOiBNQmFzZSB7XG4gICAgICBjb25zdCBwbGFpbiA9IEdyYXBoUUxGaWVsZEhlbHBlci5Db252ZXJ0RmllbGRWYWx1ZUZyb20oXG4gICAgICAgIGRhdGEsXG4gICAgICAgIChmaWVsZHMgYXMgSGFzdXJhR3JhcGhRTEZpZWxkczxNQmFzZT4pIHx8IHRoaXMuZmllbGRzLFxuICAgICAgKVxuXG4gICAgICByZXR1cm4gdGhpcy5tb2RlbC50b0luc3RhbmNlKHBsYWluKVxuICAgIH1cblxuICAgIGNvbnZlcnREYXRhVG9IYXN1cmEoaW5zdGFuY2U6IE1CYXNlLCB1cGRhdGUgPSBmYWxzZSk6IFJlY29yZDxzdHJpbmcsIHN0cmluZyB8IG51bWJlcj4ge1xuICAgICAgcmV0dXJuIEdyYXBoUUxGaWVsZEhlbHBlci5Db252ZXJ0RmllbGRWYWx1ZVRvKGluc3RhbmNlLCB0aGlzLmZpZWxkcywgdXBkYXRlKVxuICAgIH1cblxuICAgIGJ1aWxkSGFzdXJhUXVlcnlGaWVsZHMoe1xuICAgICAgb3BlcmF0aW9uLFxuICAgICAgZmllbGRzLFxuICAgICAgdmFyaWFibGVzLFxuICAgIH06IHtcbiAgICAgIG9wZXJhdGlvbjogc3RyaW5nIHwgR3JhcGhRTFBhcmFtczxNQmFzZT5bXVxuICAgICAgZmllbGRzPzogSGFzdXJhR3JhcGhRTEZpZWxkczxNQmFzZT5cbiAgICAgIHZhcmlhYmxlcz86IFZhcmlhYmxlT3B0aW9uc1xuICAgIH0pOiBRdWVyeUJ1aWxkZXJPcHRpb25zIHwgUXVlcnlCdWlsZGVyT3B0aW9uc1tdIHtcbiAgICAgIHJldHVybiBHcmFwaFFMRmllbGRIZWxwZXIuQ2hlY2tJc0dyYXBoUUxQYXJhbXMob3BlcmF0aW9uKVxuICAgICAgICA/IG9wZXJhdGlvbi5tYXAoKG9wdGlvbikgPT4gKHtcbiAgICAgICAgICAgIG9wZXJhdGlvbjogb3B0aW9uLm9wZXJhdGlvbixcbiAgICAgICAgICAgIHZhcmlhYmxlczogb3B0aW9uLnZhcmlhYmxlcyxcbiAgICAgICAgICAgIGZpZWxkczogR3JhcGhRTEZpZWxkSGVscGVyLkNvbnZlcnRNb2RlbEZpZWxkc1RvR3JhcGhRTEZpZWxkcyhvcHRpb24uZmllbGRzKSxcbiAgICAgICAgICB9KSlcbiAgICAgICAgOiB7XG4gICAgICAgICAgICBvcGVyYXRpb24sXG4gICAgICAgICAgICB2YXJpYWJsZXMsXG4gICAgICAgICAgICBmaWVsZHM6IEdyYXBoUUxGaWVsZEhlbHBlci5Db252ZXJ0TW9kZWxGaWVsZHNUb0dyYXBoUUxGaWVsZHMoZmllbGRzKSxcbiAgICAgICAgICB9XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -1,5 +1,5 @@
1
1
  import { BaseModel, UpdateOptionActions, } from '../../../domain';
2
- import { is, isNil } from '../../../utils';
2
+ import { DebugHelper, is, isNil } from '../../../utils';
3
3
  import { AttributeOptionHelper } from './helpers';
4
4
  export const withUpdateHasuraGraphQL = (MixinBase) => {
5
5
  const getValueByAction = (options) => {
@@ -20,6 +20,7 @@ export const withUpdateHasuraGraphQL = (MixinBase) => {
20
20
  this.updateGraphQLPKType = options?.updateGraphQLPKType || `${this.tableName}_pk_columns_input`;
21
21
  }
22
22
  async update(data) {
23
+ this.logger = DebugHelper.from(this, 'update');
23
24
  const plainData = this.paramsToPlain(data);
24
25
  await this.mutation(this.updateGraphQLOperation, this.model.identifiersFields.map((field) => AttributeOptionHelper.FindByAttribute(field, this.fields).columnName), {
25
26
  _set: {
@@ -45,10 +46,11 @@ export const withUpdateHasuraGraphQL = (MixinBase) => {
45
46
  getUpdateModelKeys(data) {
46
47
  const instance = this.model.toInstance(data);
47
48
  return this.model.identifiersFields.reduce((ids, identifier) => {
48
- if (isNil(instance[identifier]))
49
+ const identifierBinded = identifier;
50
+ if (isNil(instance.identifier[identifierBinded]))
49
51
  return ids;
50
- const columnOption = AttributeOptionHelper.FindByAttribute(identifier, this.fields);
51
- const value = columnOption?.to?.(data[identifier], instance) || data[columnOption.attributeName];
52
+ const columnOption = AttributeOptionHelper.FindByAttribute(identifierBinded, this.fields);
53
+ const value = columnOption?.to?.(data[identifierBinded], instance) || data[columnOption.attributeName];
52
54
  return {
53
55
  ...ids,
54
56
  [columnOption.columnName]: value,
@@ -57,4 +59,4 @@ export const withUpdateHasuraGraphQL = (MixinBase) => {
57
59
  }
58
60
  };
59
61
  };
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC11cGRhdGUtaGFzdXJhLWdyYXBocWwubWl4aW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC9taXhpbnMvd2l0aC11cGRhdGUtaGFzdXJhLWdyYXBocWwubWl4aW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFJVCxtQkFBbUIsR0FHcEIsTUFBTSxpQkFBaUIsQ0FBQTtBQUN4QixPQUFPLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBcUMsTUFBTSxnQkFBZ0IsQ0FBQTtBQUc3RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxXQUFXLENBQUE7QUFZakQsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQUcsQ0FJckMsU0FBMkQsRUFJM0QsRUFBRTtJQUNGLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxPQUE2QixFQUFXLEVBQUU7UUFDbEUsSUFBSSxPQUFPLFlBQVksU0FBUztZQUFFLE9BQU8sT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFBO1FBQzFELElBQUksS0FBSyxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUM7WUFBRSxPQUFPLE9BQU8sQ0FBQTtRQUMxQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxFQUFFLG1CQUFtQixDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDO1lBQzdHLE9BQU8sSUFBSSxDQUFBO1FBRWIsT0FBTyxPQUFPLENBQUMsS0FBSyxDQUFBO0lBQ3RCLENBQUMsQ0FBQTtJQUVELE9BQU8sTUFBTSx3QkFBeUIsU0FBUSxTQUFTO1FBS3JELFlBQVksR0FBRyxNQUFhO1lBQzFCLE1BQU0sT0FBTyxHQUE0QixNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQTtZQUVwRCxLQUFLLENBQUMs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Q0FBQyxDQUFBO2dCQUVoRyxPQUFPO29CQUNMLEdBQUcsR0FBRztvQkFDTixDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsRUFBRSxLQUFLO2lCQUNqQyxDQUFBO1lBQ0gsQ0FBQyxFQUFFLEVBQStDLENBQUMsQ0FBQTtRQUNyRCxDQUFDO0tBQ0ssQ0FBQTtBQUNWLENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEJhc2VNb2RlbCxcbiAgTW9kZWxCYXNlU3RydWN0dXJlLFxuICBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0aWVzLFxuICBSZXBvc2l0b3J5VXBkYXRlUGFyYW1zLFxuICBVcGRhdGVPcHRpb25BY3Rpb25zLFxuICBVcGRhdGVPcHRpb25zLFxuICBVcGRhdGVSZXBvc2l0b3J5LFxufSBmcm9tICcuLi8uLi8uLi9kb21haW4nXG5pbXBvcnQgeyBpcywgaXNOaWwsIE1lcmdlQ29uc3RydWN0b3JQYXJhbXMsIE1peGluQ3RvciB9IGZyb20gJy4uLy4uLy4uL3V0aWxzJ1xuaW1wb3J0IHsgR3JhcGhRTFJlcG9zaXRvcnksIEhhc3VyYUdyYXBoUUxGaWVsZHMgfSBmcm9tICcuLi90eXBlcydcblxuaW1wb3J0IHsgQXR0cmlidXRlT3B0aW9uSGVscGVyIH0gZnJvbSAnLi9oZWxwZXJzJ1xuXG5leHBvcnQgdHlwZSBVcGRhdGVIYXN1cmFHcmFwaFFMUmVwb3NpdG9yeVR5cGU8TUJhc2UgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmU+ID0gVXBkYXRlUmVwb3NpdG9yeTxNQmFzZT4gJiB7XG4gIHBhcmFtc1RvUGxhaW4ocGFyYW1zOiBSZXBvc2l0b3J5VXBkYXRlUGFyYW1zPE1CYXNlPik6IFBhcnRpYWw8TUJhc2U+XG59XG5cbmV4cG9ydCB0eXBlIFVwZGF0ZUNvbnN0cnVjdG9yUGFyYW1zID0ge1xuICB1cGRhdGVHcmFwaFFMT3BlcmF0aW9uPzogc3RyaW5nXG4gIHVwZGF0ZUdyYXBoUUxPYmplY3RUeXBlPzogc3RyaW5nXG4gIHVwZGF0ZUdyYXBoUUxQS1R5cGU/OiBzdHJpbmdcbn1cblxuZXhwb3J0IGNvbnN0IHdpdGhVcGRhdGVIYXN1cmFHcmFwaFFMID0gPFxuICBNQmFzZSBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZSxcbiAgVE1peGluQmFzZSBleHRlbmRzIE1peGluQ3RvcjxHcmFwaFFMUmVwb3NpdG9yeTxNQmFzZT4+LFxuPihcbiAgTWl4aW5CYXNlOiBNaXhpbkN0b3I8R3JhcGhRTFJlcG9zaXRvcnk8TUJhc2U+PiAmIFRNaXhpbkJhc2UsXG4pOiBNaXhpbkN0b3I8XG4gIEdyYXBoUUxSZXBvc2l0b3J5PE1CYXNlPiAmIFVwZGF0ZUhhc3VyYUdyYXBoUUxSZXBvc2l0b3J5VHlwZTxNQmFzZT4gJiBJbnN0YW5jZVR5cGU8VE1peGluQmFzZT4sXG4gIE1lcmdlQ29uc3RydWN0b3JQYXJhbXM8W1VwZGF0ZUNvbnN0cnVjdG9yUGFyYW1zLCAuLi5hbnlbXV0sIENvbnN0cnVjdG9yUGFyYW1ldGVyczxUTWl4aW5CYXNlPj5cbj4gPT4ge1xuICBjb25zdCBnZXRWYWx1ZUJ5QWN0aW9uID0gKG9wdGlvbnM6IFVwZGF0ZU9wdGlvbnM8TUJhc2U+KTogdW5rbm93biA9PiB7XG4gICAgaWYgKG9wdGlvbnMgaW5zdGFuY2VvZiBCYXNlTW9kZWwpIHJldHVybiBvcHRpb25zLnRvUGxhaW4oKVxuICAgIGlmIChpc05pbChvcHRpb25zPy5hY3Rpb24pKSByZXR1cm4gb3B0aW9uc1xuICAgIGlmIChbVXBkYXRlT3B0aW9uQWN0aW9ucy5SRU1PVkVfRklFTEQudG9TdHJpbmcoKSwgVXBkYXRlT3B0aW9uQWN0aW9ucy5OVUxMLnRvU3RyaW5nKCldLmluY2x1ZGVzKG9wdGlvbnMuYWN0aW9uKSlcbiAgICAgIHJldHVybiBudWxsXG5cbiAgICByZXR1cm4gb3B0aW9ucy52YWx1ZVxuICB9XG5cbiAgcmV0dXJuIGNsYXNzIFVwZGF0ZUhhc3VyYUdyYXBoUUxNaXhpbiBleHRlbmRzIE1peGluQmFzZSBpbXBsZW1lbnRzIFVwZGF0ZVJlcG9zaXRvcnk8TUJhc2U+IHtcbiAgICB1cGRhdGVHcmFwaFFMT3BlcmF0aW9uOiBzdHJpbmdcbiAgICB1cGRhdGVHcmFwaFFMT2JqZWN0VHlwZTogc3RyaW5nXG4gICAgdXBkYXRlR3JhcGhRTFBLVHlwZTogc3RyaW5nXG5cbiAgICBjb25zdHJ1Y3RvciguLi5wYXJhbXM6IGFueVtdKSB7XG4gICAgICBjb25zdCBvcHRpb25zOiBVcGRhdGVDb25zdHJ1Y3RvclBhcmFtcyA9IHBhcmFtcz8uWzBdXG5cbiAgICAgIHN1cGVyKC4uLnBhcmFtcylcblxuICAgICAgdGhpcy51cGRhdGVHcmFwaFFMT3BlcmF0aW9uID0gb3B0aW9ucz8udXBkYXRlR3JhcGhRTE9wZXJhdGlvbiB8fCBgdXBkYXRlXyR7dGhpcy50YWJsZU5hbWV9X2J5X3BrYFxuICAgICAgdGhpcy51cGRhdGVHcmFwaFFMT2JqZWN0VHlwZSA9IG9wdGlvbnM/LnVwZGF0ZUdyYXBoUUxPYmplY3RUeXBlIHx8IGAke3RoaXMudGFibGVOYW1lfV9zZXRfaW5wdXRgXG4gICAgICB0aGlzLnVwZGF0ZUdyYXBoUUxQS1R5cGUgPSBvcHRpb25zPy51cGRhdGVHcmFwaFFMUEtUeXBlIHx8IGAke3RoaXMudGFibGVOYW1lfV9wa19jb2x1bW5zX2lucHV0YFxuICAgIH1cblxuICAgIGFzeW5jIHVwZGF0ZShkYXRhOiBSZXBvc2l0b3J5VXBkYXRlUGFyYW1zPE1CYXNlPik6IFByb21pc2U8TUJhc2U+IHtcbiAgICAgIGNvbnN0IHBsYWluRGF0YSA9IHRoaXMucGFyYW1zVG9QbGFpbihkYXRhKVxuXG4gICAgICBhd2FpdCB0aGlzLm11dGF0aW9uKFxuICAgICAgICB0aGlzLnVwZGF0ZUdyYXBoUUxPcGVyYXRpb24sXG4gICAgICAgIHRoaXMubW9kZWwuaWRlbnRpZmllcnNGaWVsZHMubWFwKFxuICAgICAgICAgIChmaWVsZCkgPT4gQXR0cmlidXRlT3B0aW9uSGVscGVyLkZpbmRCeUF0dHJpYnV0ZShmaWVsZCwgdGhpcy5maWVsZHMpLmNvbHVtbk5hbWUsXG4gICAgICAgICkgYXMgSGFzdXJhR3JhcGhRTEZpZWxkczxNQmFzZT4sXG4gICAgICAgIHtcbiAgICAgICAgICBfc2V0OiB7XG4gICAgICAgICAgICB0eXBlOiB0aGlzLnVwZGF0ZUdyYXBoUUxPYmplY3RUeXBlLFxuICAgICAgICAgICAgdmFsdWU6IHRoaXMuY29udmVydERhdGFUb0hhc3VyYSh0aGlzLm1vZGVsLnRvSW5zdGFuY2UocGxhaW5EYXRhKSwgdHJ1ZSksXG4gICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHBrX2NvbHVtbnM6IHsgdHlwZTogdGhpcy51cGRhdGVHcmFwaFFMUEtUeXBlLCB2YWx1ZTogdGhpcy5nZXRVcGRhdGVNb2RlbEtleXMocGxhaW5EYXRhKSwgcmVxdWlyZWQ6IHRydWUgfSxcbiAgICAgICAgfSxcbiAgICAgIClcblxuICAgICAgcmV0dXJuIHRoaXMubW9kZWwudG9JbnN0YW5jZShwbGFpbkRhdGEpXG4gICAgfVxuXG4gICAgcGFyYW1zVG9QbGFpbihwYXJhbXM6IFJlcG9zaXRvcnlVcGRhdGVQYXJhbXM8TUJhc2U+KTogUGFydGlhbDxNQmFzZT4ge1xuICAgICAgY29uc3QgbW9kZWwgPSB0aGlzLm1vZGVsXG5cbiAgICAgIGlmIChtb2RlbC5pc01vZGVsKHBhcmFtcykpIHJldHVybiBwYXJhbXMudG9QbGFpbigpXG5cbiAgICAgIHJldHVybiBPYmplY3Qua2V5cyhwYXJhbXMpLnJlZHVjZShcbiAgICAgICAgKGRhdGEsIGN1cnJlbnRLZXkpID0+ICh7XG4gICAgICAgICAgLi4uZGF0YSxcbiAgICAgICAgICAuLi4ocGFyYW1zW2N1cnJlbnRLZXkgYXMga2V5b2YgUmVwb3NpdG9yeVVwZGF0ZVBhcmFtczxNQmFzZT5dICE9PSB1bmRlZmluZWQgJiYge1xuICAgICAgICAgICAgW2N1cnJlbnRLZXldOiBnZXRWYWx1ZUJ5QWN0aW9uKFxuICAgICAgICAgICAgICBpczxVcGRhdGVPcHRpb25zPE1CYXNlPj4ocGFyYW1zW2N1cnJlbnRLZXkgYXMga2V5b2YgUmVwb3NpdG9yeVVwZGF0ZVBhcmFtczxNQmFzZT5dKSxcbiAgICAgICAgICAgICksXG4gICAgICAgICAgfSksXG4gICAgICAgIH0pLFxuICAgICAgICB7fSxcbiAgICAgIClcbiAgICB9XG5cbiAgICBnZXRVcGRhdGVNb2RlbEtleXMoZGF0YTogUGFydGlhbDxNQmFzZT4pOiBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0aWVzPE1CYXNlPiB7XG4gICAgICBjb25zdCBpbnN0YW5jZSA9IHRoaXMubW9kZWwudG9JbnN0YW5jZShkYXRhKVxuXG4gICAgICByZXR1cm4gdGhpcy5tb2RlbC5pZGVudGlmaWVyc0ZpZWxkcy5yZWR1Y2UoKGlkcywgaWRlbnRpZmllcikgPT4ge1xuICAgICAgICBpZiAoaXNOaWwoaW5zdGFuY2VbaWRlbnRpZmllcl0pKSByZXR1cm4gaWRzXG5cbiAgICAgICAgY29uc3QgY29sdW1uT3B0aW9uID0gQXR0cmlidXRlT3B0aW9uSGVscGVyLkZpbmRCeUF0dHJpYnV0ZShpZGVudGlmaWVyLCB0aGlzLmZpZWxkcylcbiAgICAgICAgY29uc3QgdmFsdWUgPSBjb2x1bW5PcHRpb24/LnRvPy4oZGF0YVtpZGVudGlmaWVyXSwgaW5zdGFuY2UpIHx8IGRhdGFbY29sdW1uT3B0aW9uLmF0dHJpYnV0ZU5hbWVdXG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAuLi5pZHMsXG4gICAgICAgICAgW2NvbHVtbk9wdGlvbi5jb2x1bW5OYW1lXTogdmFsdWUsXG4gICAgICAgIH1cbiAgICAgIH0sIHt9IGFzIE5vbkZ1bmN0aW9uQW5kSWRlbnRpZmllclByb3BlcnRpZXM8TUJhc2U+KVxuICAgIH1cbiAgfSBhcyBhbnlcbn1cbiJdfQ==
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC11cGRhdGUtaGFzdXJhLWdyYXBocWwubWl4aW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC9taXhpbnMvd2l0aC11cGRhdGUtaGFzdXJhLWdyYXBocWwubWl4aW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFLVCxtQkFBbUIsR0FHcEIsTUFBTSxpQkFBaUIsQ0FBQTtBQUN4QixPQUFPLEVBQUUsV0FBVyxFQUFFLEVBQUUsRUFBRSxLQUFLLEVBQXFDLE1BQU0sZ0JBQWdCLENBQUE7QUFHMUYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sV0FBVyxDQUFBO0FBY2pELE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUFHLENBSXJDLFNBQTJELEVBSTNELEVBQUU7SUFDRixNQUFNLGdCQUFnQixHQUFHLENBQUMsT0FBNkIsRUFBVyxFQUFFO1FBQ2xFLElBQUksT0FBTyxZQUFZLFNBQVM7WUFBRSxPQUFPLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQTtRQUMxRCxJQUFJLEtBQUssQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDO1lBQUUsT0FBTyxPQUFPLENBQUE7UUFDMUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsRUFBRSxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQztZQUM3RyxPQUFPLElBQUksQ0FBQTtRQUViLE9BQU8sT0FBTyxDQUFDLEtBQUssQ0FBQTtJQUN0QixDQUFDLENBQUE7SUFFRCxPQUFPLE1BQU0sd0JBQXlCLFNBQVEsU0FBUztRQUtyRCxZQUFZLEdBQUcsTUFBYTtZQUMxQixNQUFNLE9BQU8sR0FBNEIsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUE7WUFFcEQs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QUFDLE1BQU0sQ0FDWixDQUFBO2dCQUNELE1BQU0sS0FBSyxHQUFHLFlBQVksRUFBRSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsRUFBRSxRQUFRLENBQUMsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLGFBQWEsQ0FBQyxDQUFBO2dCQUV0RyxPQUFPO29CQUNMLEdBQUcsR0FBRztvQkFDTixDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsRUFBRSxLQUFLO2lCQUNqQyxDQUFBO1lBQ0gsQ0FBQyxFQUFFLEVBQStDLENBQUMsQ0FBQTtRQUNyRCxDQUFDO0tBQ0ssQ0FBQTtBQUNWLENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEJhc2VNb2RlbCxcbiAgTW9kZWxCYXNlU3RydWN0dXJlLFxuICBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0aWVzLFxuICBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzLFxuICBSZXBvc2l0b3J5VXBkYXRlUGFyYW1zLFxuICBVcGRhdGVPcHRpb25BY3Rpb25zLFxuICBVcGRhdGVPcHRpb25zLFxuICBVcGRhdGVSZXBvc2l0b3J5LFxufSBmcm9tICcuLi8uLi8uLi9kb21haW4nXG5pbXBvcnQgeyBEZWJ1Z0hlbHBlciwgaXMsIGlzTmlsLCBNZXJnZUNvbnN0cnVjdG9yUGFyYW1zLCBNaXhpbkN0b3IgfSBmcm9tICcuLi8uLi8uLi91dGlscydcbmltcG9ydCB7IEdyYXBoUUxSZXBvc2l0b3J5LCBIYXN1cmFHcmFwaFFMRmllbGRzIH0gZnJvbSAnLi4vdHlwZXMnXG5cbmltcG9ydCB7IEF0dHJpYnV0ZU9wdGlvbkhlbHBlciB9IGZyb20gJy4vaGVscGVycydcblxuZXhwb3J0IHR5cGUgVXBkYXRlSGFzdXJhR3JhcGhRTFJlcG9zaXRvcnlUeXBlPFxuICBNQmFzZSBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZTxNQmFzZSwgTUJhc2VbJ2lkZW50aWZpZXJzRmllbGRzJ11bbnVtYmVyXT4sXG4+ID0gVXBkYXRlUmVwb3NpdG9yeTxNQmFzZT4gJiB7XG4gIHBhcmFtc1RvUGxhaW4ocGFyYW1zOiBSZXBvc2l0b3J5VXBkYXRlUGFyYW1zPE1CYXNlPik6IFBhcnRpYWw8TUJhc2U+XG59XG5cbmV4cG9ydCB0eXBlIFVwZGF0ZUNvbnN0cnVjdG9yUGFyYW1zID0ge1xuICB1cGRhdGVHcmFwaFFMT3BlcmF0aW9uPzogc3RyaW5nXG4gIHVwZGF0ZUdyYXBoUUxPYmplY3RUeXBlPzogc3RyaW5nXG4gIHVwZGF0ZUdyYXBoUUxQS1R5cGU/OiBzdHJpbmdcbn1cblxuZXhwb3J0IGNvbnN0IHdpdGhVcGRhdGVIYXN1cmFHcmFwaFFMID0gPFxuICBNQmFzZSBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZTxNQmFzZT4sXG4gIFRNaXhpbkJhc2UgZXh0ZW5kcyBNaXhpbkN0b3I8R3JhcGhRTFJlcG9zaXRvcnk8TUJhc2U+Pixcbj4oXG4gIE1peGluQmFzZTogTWl4aW5DdG9yPEdyYXBoUUxSZXBvc2l0b3J5PE1CYXNlPj4gJiBUTWl4aW5CYXNlLFxuKTogTWl4aW5DdG9yPFxuICBHcmFwaFFMUmVwb3NpdG9yeTxNQmFzZT4gJiBVcGRhdGVIYXN1cmFHcmFwaFFMUmVwb3NpdG9yeVR5cGU8TUJhc2U+ICYgSW5zdGFuY2VUeXBlPFRNaXhpbkJhc2U+LFxuICBNZXJnZUNvbnN0cnVjdG9yUGFyYW1zPFtVcGRhdGVDb25zdHJ1Y3RvclBhcmFtcywgLi4uYW55W11dLCBDb25zdHJ1Y3RvclBhcmFtZXRlcnM8VE1peGluQmFzZT4+XG4+ID0+IHtcbiAgY29uc3QgZ2V0VmFsdWVCeUFjdGlvbiA9IChvcHRpb25zOiBVcGRhdGVPcHRpb25zPE1CYXNlPik6IHVua25vd24gPT4ge1xuICAgIGlmIChvcHRpb25zIGluc3RhbmNlb2YgQmFzZU1vZGVsKSByZXR1cm4gb3B0aW9ucy50b1BsYWluKClcbiAgICBpZiAoaXNOaWwob3B0aW9ucz8uYWN0aW9uKSkgcmV0dXJuIG9wdGlvbnNcbiAgICBpZiAoW1VwZGF0ZU9wdGlvbkFjdGlvbnMuUkVNT1ZFX0ZJRUxELnRvU3RyaW5nKCksIFVwZGF0ZU9wdGlvbkFjdGlvbnMuTlVMTC50b1N0cmluZygpXS5pbmNsdWRlcyhvcHRpb25zLmFjdGlvbikpXG4gICAgICByZXR1cm4gbnVsbFxuXG4gICAgcmV0dXJuIG9wdGlvbnMudmFsdWVcbiAgfVxuXG4gIHJldHVybiBjbGFzcyBVcGRhdGVIYXN1cmFHcmFwaFFMTWl4aW4gZXh0ZW5kcyBNaXhpbkJhc2UgaW1wbGVtZW50cyBVcGRhdGVSZXBvc2l0b3J5PE1CYXNlPiB7XG4gICAgdXBkYXRlR3JhcGhRTE9wZXJhdGlvbjogc3RyaW5nXG4gICAgdXBkYXRlR3JhcGhRTE9iamVjdFR5cGU6IHN0cmluZ1xuICAgIHVwZGF0ZUdyYXBoUUxQS1R5cGU6IHN0cmluZ1xuXG4gICAgY29uc3RydWN0b3IoLi4ucGFyYW1zOiBhbnlbXSkge1xuICAgICAgY29uc3Qgb3B0aW9uczogVXBkYXRlQ29uc3RydWN0b3JQYXJhbXMgPSBwYXJhbXM/LlswXVxuXG4gICAgICBzdXBlciguLi5wYXJhbXMpXG5cbiAgICAgIHRoaXMudXBkYXRlR3JhcGhRTE9wZXJhdGlvbiA9IG9wdGlvbnM/LnVwZGF0ZUdyYXBoUUxPcGVyYXRpb24gfHwgYHVwZGF0ZV8ke3RoaXMudGFibGVOYW1lfV9ieV9wa2BcbiAgICAgIHRoaXMudXBkYXRlR3JhcGhRTE9iamVjdFR5cGUgPSBvcHRpb25zPy51cGRhdGVHcmFwaFFMT2JqZWN0VHlwZSB8fCBgJHt0aGlzLnRhYmxlTmFtZX1fc2V0X2lucHV0YFxuICAgICAgdGhpcy51cGRhdGVHcmFwaFFMUEtUeXBlID0gb3B0aW9ucz8udXBkYXRlR3JhcGhRTFBLVHlwZSB8fCBgJHt0aGlzLnRhYmxlTmFtZX1fcGtfY29sdW1uc19pbnB1dGBcbiAgICB9XG5cbiAgICBhc3luYyB1cGRhdGUoZGF0YTogUmVwb3NpdG9yeVVwZGF0ZVBhcmFtczxNQmFzZT4pOiBQcm9taXNlPE1CYXNlPiB7XG4gICAgICB0aGlzLmxvZ2dlciA9IERlYnVnSGVscGVyLmZyb20odGhpcywgJ3VwZGF0ZScpXG5cbiAgICAgIGNvbnN0IHBsYWluRGF0YSA9IHRoaXMucGFyYW1zVG9QbGFpbihkYXRhKVxuXG4gICAgICBhd2FpdCB0aGlzLm11dGF0aW9uKFxuICAgICAgICB0aGlzLnVwZGF0ZUdyYXBoUUxPcGVyYXRpb24sXG4gICAgICAgIHRoaXMubW9kZWwuaWRlbnRpZmllcnNGaWVsZHMubWFwKFxuICAgICAgICAgIChmaWVsZCkgPT4gQXR0cmlidXRlT3B0aW9uSGVscGVyLkZpbmRCeUF0dHJpYnV0ZShmaWVsZCwgdGhpcy5maWVsZHMpLmNvbHVtbk5hbWUsXG4gICAgICAgICkgYXMgSGFzdXJhR3JhcGhRTEZpZWxkczxNQmFzZT4sXG4gICAgICAgIHtcbiAgICAgICAgICBfc2V0OiB7XG4gICAgICAgICAgICB0eXBlOiB0aGlzLnVwZGF0ZUdyYXBoUUxPYmplY3RUeXBlLFxuICAgICAgICAgICAgdmFsdWU6IHRoaXMuY29udmVydERhdGFUb0hhc3VyYSh0aGlzLm1vZGVsLnRvSW5zdGFuY2UocGxhaW5EYXRhKSwgdHJ1ZSksXG4gICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHBrX2NvbHVtbnM6IHsgdHlwZTogdGhpcy51cGRhdGVHcmFwaFFMUEtUeXBlLCB2YWx1ZTogdGhpcy5nZXRVcGRhdGVNb2RlbEtleXMocGxhaW5EYXRhKSwgcmVxdWlyZWQ6IHRydWUgfSxcbiAgICAgICAgfSxcbiAgICAgIClcblxuICAgICAgcmV0dXJuIHRoaXMubW9kZWwudG9JbnN0YW5jZShwbGFpbkRhdGEpXG4gICAgfVxuXG4gICAgcGFyYW1zVG9QbGFpbihwYXJhbXM6IFJlcG9zaXRvcnlVcGRhdGVQYXJhbXM8TUJhc2U+KTogUGFydGlhbDxNQmFzZT4ge1xuICAgICAgY29uc3QgbW9kZWwgPSB0aGlzLm1vZGVsXG5cbiAgICAgIGlmIChtb2RlbC5pc01vZGVsKHBhcmFtcykpIHJldHVybiBwYXJhbXMudG9QbGFpbigpXG5cbiAgICAgIHJldHVybiBPYmplY3Qua2V5cyhwYXJhbXMpLnJlZHVjZShcbiAgICAgICAgKGRhdGEsIGN1cnJlbnRLZXkpID0+ICh7XG4gICAgICAgICAgLi4uZGF0YSxcbiAgICAgICAgICAuLi4ocGFyYW1zW2N1cnJlbnRLZXkgYXMga2V5b2YgUmVwb3NpdG9yeVVwZGF0ZVBhcmFtczxNQmFzZT5dICE9PSB1bmRlZmluZWQgJiYge1xuICAgICAgICAgICAgW2N1cnJlbnRLZXldOiBnZXRWYWx1ZUJ5QWN0aW9uKFxuICAgICAgICAgICAgICBpczxVcGRhdGVPcHRpb25zPE1CYXNlPj4ocGFyYW1zW2N1cnJlbnRLZXkgYXMga2V5b2YgUmVwb3NpdG9yeVVwZGF0ZVBhcmFtczxNQmFzZT5dKSxcbiAgICAgICAgICAgICksXG4gICAgICAgICAgfSksXG4gICAgICAgIH0pLFxuICAgICAgICB7fSxcbiAgICAgIClcbiAgICB9XG5cbiAgICBnZXRVcGRhdGVNb2RlbEtleXMoZGF0YTogUGFydGlhbDxNQmFzZT4pOiBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0aWVzPE1CYXNlPiB7XG4gICAgICBjb25zdCBpbnN0YW5jZSA9IHRoaXMubW9kZWwudG9JbnN0YW5jZShkYXRhKVxuXG4gICAgICByZXR1cm4gdGhpcy5tb2RlbC5pZGVudGlmaWVyc0ZpZWxkcy5yZWR1Y2UoKGlkcywgaWRlbnRpZmllcikgPT4ge1xuICAgICAgICBjb25zdCBpZGVudGlmaWVyQmluZGVkOiBFeHRyYWN0PFxuICAgICAgICAgIE5vbkZ1bmN0aW9uQW5kSWRlbnRpZmllclByb3BlcnR5TmFtZXM8TUJhc2U+LFxuICAgICAgICAgIE1CYXNlWydpZGVudGlmaWVyc0ZpZWxkcyddW251bWJlcl1cbiAgICAgICAgPiA9IGlkZW50aWZpZXJcblxuICAgICAgICBpZiAoaXNOaWwoaW5zdGFuY2UuaWRlbnRpZmllcltpZGVudGlmaWVyQmluZGVkXSkpIHJldHVybiBpZHNcblxuICAgICAgICBjb25zdCBjb2x1bW5PcHRpb24gPSBBdHRyaWJ1dGVPcHRpb25IZWxwZXIuRmluZEJ5QXR0cmlidXRlPE1CYXNlLCBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPE1CYXNlPj4oXG4gICAgICAgICAgaWRlbnRpZmllckJpbmRlZCxcbiAgICAgICAgICB0aGlzLmZpZWxkcyxcbiAgICAgICAgKVxuICAgICAgICBjb25zdCB2YWx1ZSA9IGNvbHVtbk9wdGlvbj8udG8/LihkYXRhW2lkZW50aWZpZXJCaW5kZWRdLCBpbnN0YW5jZSkgfHwgZGF0YVtjb2x1bW5PcHRpb24uYXR0cmlidXRlTmFtZV1cblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIC4uLmlkcyxcbiAgICAgICAgICBbY29sdW1uT3B0aW9uLmNvbHVtbk5hbWVdOiB2YWx1ZSxcbiAgICAgICAgfVxuICAgICAgfSwge30gYXMgTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydGllczxNQmFzZT4pXG4gICAgfVxuICB9IGFzIGFueVxufVxuIl19