@daffodil/product-composite 0.63.2 → 0.64.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (81) hide show
  1. package/driver/magento/testing/factories/bundle/bundle-item-option.factory.d.ts +1 -1
  2. package/driver/magento/testing/factories/bundle/bundle.factory.d.ts +1 -1
  3. package/esm2020/driver/in-memory/in-memory.module.mjs +6 -8
  4. package/esm2020/driver/magento/composite-product-driver.module.mjs +5 -7
  5. package/esm2020/driver/magento/testing/factories/bundle/bundle-item-option.factory.mjs +4 -4
  6. package/esm2020/driver/magento/testing/factories/bundle/bundle-item.factory.mjs +3 -3
  7. package/esm2020/driver/magento/testing/factories/bundle/bundle.factory.mjs +4 -4
  8. package/esm2020/driver/magento/transforms/bundled-product-transformers.mjs +1 -1
  9. package/esm2020/driver/testing/testing.module.mjs +6 -8
  10. package/esm2020/routing/effects/product-page.effects.mjs +5 -5
  11. package/esm2020/routing/module.mjs +6 -8
  12. package/esm2020/routing/services/query-param.service.mjs +3 -3
  13. package/esm2020/state/composite-product-state.module.mjs +6 -8
  14. package/esm2020/state/facades/composite-product/composite-product.facade.mjs +4 -4
  15. package/esm2020/state/helpers/ensure-items.mjs +1 -1
  16. package/esm2020/state/reducers/composite-product-entities/composite-product-entities.reducer.mjs +2 -2
  17. package/esm2020/state/reducers/ensure-items.meta-reducer.mjs +1 -1
  18. package/esm2020/state/reducers/injection-tokens/reducers.token.mjs +2 -2
  19. package/esm2020/state/selectors/all.selector.mjs +2 -2
  20. package/esm2020/state/selectors/composite-product/composite-product.selectors.mjs +1 -1
  21. package/esm2020/state/selectors/composite-product-entities/composite-product-entities.selectors.mjs +1 -1
  22. package/esm2020/state/testing/mock-composite-product-facade.mjs +3 -3
  23. package/esm2020/state/testing/product-testing.module.mjs +4 -4
  24. package/esm2020/testing/factories/composite-product-item-option.factory.mjs +4 -4
  25. package/esm2020/testing/factories/composite-product-item.factory.mjs +3 -3
  26. package/esm2020/testing/factories/composite-product.factory.mjs +4 -4
  27. package/fesm2015/daffodil-product-composite-driver-in-memory.mjs +5 -7
  28. package/fesm2015/daffodil-product-composite-driver-in-memory.mjs.map +1 -1
  29. package/fesm2015/daffodil-product-composite-driver-magento-testing.mjs +9 -9
  30. package/fesm2015/daffodil-product-composite-driver-magento-testing.mjs.map +1 -1
  31. package/fesm2015/daffodil-product-composite-driver-magento.mjs +4 -6
  32. package/fesm2015/daffodil-product-composite-driver-magento.mjs.map +1 -1
  33. package/fesm2015/daffodil-product-composite-driver-testing.mjs +5 -7
  34. package/fesm2015/daffodil-product-composite-driver-testing.mjs.map +1 -1
  35. package/fesm2015/daffodil-product-composite-routing.mjs +12 -14
  36. package/fesm2015/daffodil-product-composite-routing.mjs.map +1 -1
  37. package/fesm2015/daffodil-product-composite-state-testing.mjs +7 -7
  38. package/fesm2015/daffodil-product-composite-state.mjs +9 -11
  39. package/fesm2015/daffodil-product-composite-state.mjs.map +1 -1
  40. package/fesm2015/daffodil-product-composite-testing.mjs +9 -9
  41. package/fesm2015/daffodil-product-composite-testing.mjs.map +1 -1
  42. package/fesm2020/daffodil-product-composite-driver-in-memory.mjs +5 -7
  43. package/fesm2020/daffodil-product-composite-driver-in-memory.mjs.map +1 -1
  44. package/fesm2020/daffodil-product-composite-driver-magento-testing.mjs +9 -9
  45. package/fesm2020/daffodil-product-composite-driver-magento-testing.mjs.map +1 -1
  46. package/fesm2020/daffodil-product-composite-driver-magento.mjs +4 -6
  47. package/fesm2020/daffodil-product-composite-driver-magento.mjs.map +1 -1
  48. package/fesm2020/daffodil-product-composite-driver-testing.mjs +5 -7
  49. package/fesm2020/daffodil-product-composite-driver-testing.mjs.map +1 -1
  50. package/fesm2020/daffodil-product-composite-routing.mjs +12 -14
  51. package/fesm2020/daffodil-product-composite-routing.mjs.map +1 -1
  52. package/fesm2020/daffodil-product-composite-state-testing.mjs +7 -7
  53. package/fesm2020/daffodil-product-composite-state.mjs +9 -11
  54. package/fesm2020/daffodil-product-composite-state.mjs.map +1 -1
  55. package/fesm2020/daffodil-product-composite-testing.mjs +9 -9
  56. package/fesm2020/daffodil-product-composite-testing.mjs.map +1 -1
  57. package/package.json +1 -1
  58. package/state/facades/composite-product/composite-product.facade.d.ts +1 -1
  59. package/state/helpers/ensure-items.d.ts +1 -1
  60. package/state/reducers/composite-product-entities/composite-product-entities.reducer.d.ts +2 -2
  61. package/state/reducers/ensure-items.meta-reducer.d.ts +1 -1
  62. package/state/selectors/all.selector.d.ts +1 -1
  63. package/testing/factories/composite-product-item-option.factory.d.ts +1 -1
  64. package/testing/factories/composite-product.factory.d.ts +1 -1
  65. package/daffodil-product-composite.d.ts +0 -5
  66. package/driver/in-memory/daffodil-product-composite-driver-in-memory.d.ts +0 -5
  67. package/driver/in-memory/package.json +0 -1
  68. package/driver/magento/daffodil-product-composite-driver-magento.d.ts +0 -5
  69. package/driver/magento/package.json +0 -1
  70. package/driver/magento/testing/daffodil-product-composite-driver-magento-testing.d.ts +0 -5
  71. package/driver/magento/testing/package.json +0 -1
  72. package/driver/testing/daffodil-product-composite-driver-testing.d.ts +0 -5
  73. package/driver/testing/package.json +0 -1
  74. package/routing/daffodil-product-composite-routing.d.ts +0 -5
  75. package/routing/package.json +0 -1
  76. package/state/daffodil-product-composite-state.d.ts +0 -5
  77. package/state/package.json +0 -1
  78. package/state/testing/daffodil-product-composite-state-testing.d.ts +0 -5
  79. package/state/testing/package.json +0 -1
  80. package/testing/daffodil-product-composite-testing.d.ts +0 -5
  81. package/testing/package.json +0 -1
@@ -1,5 +1,5 @@
1
- import { getDaffCompositeProductEntitiesSelectors, } from './composite-product-entities/composite-product-entities.selectors';
2
1
  import { getDaffCompositeProductPriceSelectors, } from './composite-product/composite-product.selectors';
2
+ import { getDaffCompositeProductEntitiesSelectors, } from './composite-product-entities/composite-product-entities.selectors';
3
3
  /**
4
4
  * A function that returns all selectors in the composite product feature area.
5
5
  * Returns {@link DaffCompositeProductAllSelectors}.
@@ -8,4 +8,4 @@ export const getDaffCompositeProductSelectors = () => ({
8
8
  ...getDaffCompositeProductEntitiesSelectors(),
9
9
  ...getDaffCompositeProductPriceSelectors(),
10
10
  });
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxsLnNlbGVjdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9wcm9kdWN0LWNvbXBvc2l0ZS9zdGF0ZS9zcmMvc2VsZWN0b3JzL2FsbC5zZWxlY3Rvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBRUwsd0NBQXdDLEdBQ3pDLE1BQU0sbUVBQW1FLENBQUM7QUFDM0UsT0FBTyxFQUVMLHFDQUFxQyxHQUN0QyxNQUFNLGlEQUFpRCxDQUFDO0FBU3pEOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLGdDQUFnQyxHQUFHLEdBQStELEVBQUUsQ0FBQyxDQUFDO0lBQ2pILEdBQUcsd0NBQXdDLEVBQUs7SUFDaEQsR0FBRyxxQ0FBcUMsRUFBSztDQUM5QyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYWZmUHJvZHVjdCB9IGZyb20gJ0BkYWZmb2RpbC9wcm9kdWN0JztcblxuaW1wb3J0IHtcbiAgRGFmZkNvbXBvc2l0ZVByb2R1Y3RFbnRpdGllc01lbW9pemVkU2VsZWN0b3JzLFxuICBnZXREYWZmQ29tcG9zaXRlUHJvZHVjdEVudGl0aWVzU2VsZWN0b3JzLFxufSBmcm9tICcuL2NvbXBvc2l0ZS1wcm9kdWN0LWVudGl0aWVzL2NvbXBvc2l0ZS1wcm9kdWN0LWVudGl0aWVzLnNlbGVjdG9ycyc7XG5pbXBvcnQge1xuICBEYWZmQ29tcG9zaXRlUHJvZHVjdE1lbW9pemVkU2VsZWN0b3JzLFxuICBnZXREYWZmQ29tcG9zaXRlUHJvZHVjdFByaWNlU2VsZWN0b3JzLFxufSBmcm9tICcuL2NvbXBvc2l0ZS1wcm9kdWN0L2NvbXBvc2l0ZS1wcm9kdWN0LnNlbGVjdG9ycyc7XG5cbi8qKlxuICogQW4gaW50ZXJmYWNlIGZvciBhbGwgc2VsZWN0b3JzIGluIHRoZSBjb21wb3NpdGUgcHJvZHVjdCBmZWF0dXJlIGFyZWEuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGFmZkNvbXBvc2l0ZVByb2R1Y3RBbGxTZWxlY3RvcnM8VCBleHRlbmRzIERhZmZQcm9kdWN0ID0gRGFmZlByb2R1Y3Q+IGV4dGVuZHNcbiAgRGFmZkNvbXBvc2l0ZVByb2R1Y3RFbnRpdGllc01lbW9pemVkU2VsZWN0b3JzPFQ+LFxuICBEYWZmQ29tcG9zaXRlUHJvZHVjdE1lbW9pemVkU2VsZWN0b3JzPFQ+IHsgfVxuXG4vKipcbiAqIEEgZnVuY3Rpb24gdGhhdCByZXR1cm5zIGFsbCBzZWxlY3RvcnMgaW4gdGhlIGNvbXBvc2l0ZSBwcm9kdWN0IGZlYXR1cmUgYXJlYS5cbiAqIFJldHVybnMge0BsaW5rIERhZmZDb21wb3NpdGVQcm9kdWN0QWxsU2VsZWN0b3JzfS5cbiAqL1xuZXhwb3J0IGNvbnN0IGdldERhZmZDb21wb3NpdGVQcm9kdWN0U2VsZWN0b3JzID0gPFQgZXh0ZW5kcyBEYWZmUHJvZHVjdD4oKTogRGFmZkNvbXBvc2l0ZVByb2R1Y3RBbGxTZWxlY3RvcnM8VD4gPT4gKHtcbiAgLi4uZ2V0RGFmZkNvbXBvc2l0ZVByb2R1Y3RFbnRpdGllc1NlbGVjdG9yczxUPigpLFxuICAuLi5nZXREYWZmQ29tcG9zaXRlUHJvZHVjdFByaWNlU2VsZWN0b3JzPFQ+KCksXG59KTtcbiJdfQ==
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxsLnNlbGVjdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9wcm9kdWN0LWNvbXBvc2l0ZS9zdGF0ZS9zcmMvc2VsZWN0b3JzL2FsbC5zZWxlY3Rvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBRUwscUNBQXFDLEdBQ3RDLE1BQU0saURBQWlELENBQUM7QUFDekQsT0FBTyxFQUVMLHdDQUF3QyxHQUN6QyxNQUFNLG1FQUFtRSxDQUFDO0FBUzNFOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLGdDQUFnQyxHQUFHLEdBQStELEVBQUUsQ0FBQyxDQUFDO0lBQ2pILEdBQUcsd0NBQXdDLEVBQUs7SUFDaEQsR0FBRyxxQ0FBcUMsRUFBSztDQUM5QyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYWZmUHJvZHVjdCB9IGZyb20gJ0BkYWZmb2RpbC9wcm9kdWN0JztcblxuaW1wb3J0IHtcbiAgRGFmZkNvbXBvc2l0ZVByb2R1Y3RNZW1vaXplZFNlbGVjdG9ycyxcbiAgZ2V0RGFmZkNvbXBvc2l0ZVByb2R1Y3RQcmljZVNlbGVjdG9ycyxcbn0gZnJvbSAnLi9jb21wb3NpdGUtcHJvZHVjdC9jb21wb3NpdGUtcHJvZHVjdC5zZWxlY3RvcnMnO1xuaW1wb3J0IHtcbiAgRGFmZkNvbXBvc2l0ZVByb2R1Y3RFbnRpdGllc01lbW9pemVkU2VsZWN0b3JzLFxuICBnZXREYWZmQ29tcG9zaXRlUHJvZHVjdEVudGl0aWVzU2VsZWN0b3JzLFxufSBmcm9tICcuL2NvbXBvc2l0ZS1wcm9kdWN0LWVudGl0aWVzL2NvbXBvc2l0ZS1wcm9kdWN0LWVudGl0aWVzLnNlbGVjdG9ycyc7XG5cbi8qKlxuICogQW4gaW50ZXJmYWNlIGZvciBhbGwgc2VsZWN0b3JzIGluIHRoZSBjb21wb3NpdGUgcHJvZHVjdCBmZWF0dXJlIGFyZWEuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGFmZkNvbXBvc2l0ZVByb2R1Y3RBbGxTZWxlY3RvcnM8VCBleHRlbmRzIERhZmZQcm9kdWN0ID0gRGFmZlByb2R1Y3Q+IGV4dGVuZHNcbiAgRGFmZkNvbXBvc2l0ZVByb2R1Y3RFbnRpdGllc01lbW9pemVkU2VsZWN0b3JzPFQ+LFxuICBEYWZmQ29tcG9zaXRlUHJvZHVjdE1lbW9pemVkU2VsZWN0b3JzPFQ+IHsgfVxuXG4vKipcbiAqIEEgZnVuY3Rpb24gdGhhdCByZXR1cm5zIGFsbCBzZWxlY3RvcnMgaW4gdGhlIGNvbXBvc2l0ZSBwcm9kdWN0IGZlYXR1cmUgYXJlYS5cbiAqIFJldHVybnMge0BsaW5rIERhZmZDb21wb3NpdGVQcm9kdWN0QWxsU2VsZWN0b3JzfS5cbiAqL1xuZXhwb3J0IGNvbnN0IGdldERhZmZDb21wb3NpdGVQcm9kdWN0U2VsZWN0b3JzID0gPFQgZXh0ZW5kcyBEYWZmUHJvZHVjdD4oKTogRGFmZkNvbXBvc2l0ZVByb2R1Y3RBbGxTZWxlY3RvcnM8VD4gPT4gKHtcbiAgLi4uZ2V0RGFmZkNvbXBvc2l0ZVByb2R1Y3RFbnRpdGllc1NlbGVjdG9yczxUPigpLFxuICAuLi5nZXREYWZmQ29tcG9zaXRlUHJvZHVjdFByaWNlU2VsZWN0b3JzPFQ+KCksXG59KTtcbiJdfQ==
@@ -181,4 +181,4 @@ function getOptionQty(appliedOption) {
181
181
  function appliedOptionHasQty(appliedOption) {
182
182
  return appliedOption?.quantity !== null && appliedOption?.quantity !== undefined;
183
183
  }
184
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9zaXRlLXByb2R1Y3Quc2VsZWN0b3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wcm9kdWN0LWNvbXBvc2l0ZS9zdGF0ZS9zcmMvc2VsZWN0b3JzL2NvbXBvc2l0ZS1wcm9kdWN0L2NvbXBvc2l0ZS1wcm9kdWN0LnNlbGVjdG9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxPQUFPLEVBQ0wsY0FBYyxFQUVkLGNBQWMsR0FDZixNQUFNLGFBQWEsQ0FBQztBQUVyQixPQUFPLEVBQ0wsT0FBTyxFQUNQLFVBQVUsRUFDVixZQUFZLEVBQ1osWUFBWSxHQUNiLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUVMLG1CQUFtQixHQUdwQixNQUFNLG1CQUFtQixDQUFDO0FBTzNCLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBSTFFLE9BQU8sRUFBRSx3Q0FBd0MsRUFBRSxNQUFNLG9FQUFvRSxDQUFDO0FBOEI5SCxNQUFNLCtCQUErQixHQUFHLEdBQW9FLEVBQUU7SUFFNUcsTUFBTSxFQUNKLGFBQWEsR0FDZCxHQUFHLCtCQUErQixFQUFLLENBQUM7SUFFekMsTUFBTSxFQUNKLDRDQUE0QyxHQUM3QyxHQUFHLHdDQUF3QyxFQUFFLENBQUM7SUFFL0MsTUFBTSx3REFBd0QsR0FBRyxjQUFjLENBQUMsQ0FBQyxFQUE4QixFQUFFLGFBQTBELEVBQUUsRUFBRSxDQUFDLGNBQWMsQ0FDNUwsYUFBYSxDQUFDLEVBQUUsQ0FBQyxFQUNqQixDQUFDLE9BQVUsRUFBRSxFQUFFO1FBQ2IsSUFBRyxPQUFPLENBQUMsSUFBSSxLQUFLLG1CQUFtQixDQUFDLFNBQVMsRUFBRTtZQUNqRCxPQUFPLFNBQVMsQ0FBQztTQUNsQjtRQUVELE1BQU0sY0FBYyxHQUFHLGFBQWEsQ0FBQyxDQUFDLENBQUMsaUNBQWlDLENBQTRCLE9BQU8sRUFBRSxhQUFhLENBQUMsQ0FBQyxDQUFDLENB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LEVBQUUsUUFBUSxLQUFLLElBQUksSUFBSSxhQUFhLEVBQUUsUUFBUSxLQUFLLFNBQVMsQ0FBQztBQUNuRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRGljdGlvbmFyeSxcbiAgRW50aXR5U3RhdGUsXG59IGZyb20gJ0BuZ3J4L2VudGl0eSc7XG5pbXBvcnQge1xuICBjcmVhdGVTZWxlY3RvcixcbiAgTWVtb2l6ZWRTZWxlY3RvcixcbiAgZGVmYXVsdE1lbW9pemUsXG59IGZyb20gJ0BuZ3J4L3N0b3JlJztcblxuaW1wb3J0IHtcbiAgZGFmZkFkZCxcbiAgZGFmZkRpdmlkZSxcbiAgZGFmZk11bHRpcGx5LFxuICBkYWZmU3VidHJhY3QsXG59IGZyb20gJ0BkYWZmb2RpbC9jb3JlJztcbmltcG9ydCB7XG4gIERhZmZQcm9kdWN0LFxuICBEYWZmUHJvZHVjdFR5cGVFbnVtLFxuICBEYWZmUHJvZHVjdFByaWNlcyxcbiAgRGFmZlByaWNlUmFuZ2UsXG59IGZyb20gJ0BkYWZmb2RpbC9wcm9kdWN0JztcbmltcG9ydCB7XG4gIERhZmZDb21wb3NpdGVQcm9kdWN0LFxuICBEYWZmQ29tcG9zaXRlQ29uZmlndXJhdGlvbkl0ZW0sXG4gIERhZmZDb21wb3NpdGVQcm9kdWN0SXRlbSxcbiAgRGFmZkNvbXBvc2l0ZVByb2R1Y3RJdGVtT3B0aW9uLFxufSBmcm9tICdAZGFmZm9kaWwvcHJvZHVjdC1jb21wb3NpdGUnO1xuaW1wb3J0IHsgZ2V0RGFmZlByb2R1Y3RFbnRpdGllc1NlbGVjdG9ycyB9IGZyb20gJ0BkYWZmb2RpbC9wcm9kdWN0L3N0YXRlJztcblxuaW1wb3J0IHsgRGFmZkNvbXBvc2l0ZVByb2R1Y3RTdGF0ZVJvb3RTbGljZSB9IGZyb20gJy4uLy4uL3JlZHVjZXJzL2NvbXBvc2l0ZS1wcm9kdWN0LXJlZHVjZXJzLXN0YXRlLmludGVyZmFjZSc7XG5pbXBvcnQgeyBEYWZmQ29tcG9zaXRlUHJvZHVjdEVudGl0eSB9IGZyb20gJy4uLy4uL3JlZHVjZXJzL3B1YmxpY19hcGknO1xuaW1wb3J0IHsgZ2V0RGFmZkNvbXBvc2l0ZVByb2R1Y3RFbnRpdGllc1NlbGVjdG9ycyB9IGZyb20gJy4uL2NvbXBvc2l0ZS1wcm9kdWN0LWVudGl0aWVzL2NvbXBvc2l0ZS1wcm9kdWN0LWVudGl0aWVzLnNlbGVjdG9ycyc7XG5cbi8qKlxuICogQW4gaW50ZXJmYWNlIGRlc2NyaWJpbmcgc2VsZWN0b3JzIHVuaXF1ZSB0byB0aGUgY29tcG9zaXRlIHByb2R1Y3QsIHN1Y2ggYXMgcHJpY2luZyBhbmQgZGlzY291bnRzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIERhZmZDb21wb3NpdGVQcm9kdWN0TWVtb2l6ZWRTZWxlY3RvcnM8VCBleHRlbmRzIERhZmZQcm9kdWN0ID0gRGFmZlByb2R1Y3Q+IHtcbiAgLyoqXG4gICAqIEdldCBhIERhZmZQcmljZVJhbmdlIGZvciBhIGNvbXBvc2l0ZSBwcm9kdWN0IGJhc2VkIG9uIHRoZSBjb25maWd1cmF0aW9uIHByb3ZpZGVkIGV4Y2x1ZGluZyB1bnNlbGVjdGVkLCBvcHRpb25hbCBpdGVtIHByaWNlcy5cbiAgICovXG4gIHNlbGVjdENvbXBvc2l0ZVByb2R1Y3RSZXF1aXJlZEl0ZW1QcmljZXNGb3JDb25maWd1cmF0aW9uOiAoIGlkOiBEYWZmQ29tcG9zaXRlUHJvZHVjdFsnaWQnXSwgY29uZmlndXJhdGlvbj86IERpY3Rpb25hcnk8RGFmZkNvbXBvc2l0ZUNvbmZpZ3VyYXRpb25JdGVtPiApID0+IE1lbW9pemVkU2VsZWN0b3I8RGFmZkNvbXBvc2l0ZVByb2R1Y3RTdGF0ZVJvb3RTbGljZTxUPiwgRGFmZlByaWNlUmFuZ2U+O1xuICAvKipcbiAgICogR2V0IHRoZSBicm9hZGVzdCBwb3NzaWJsZSBEYWZmUHJpY2VSYW5nZSBmb3IgYSBjb21wb3NpdGUgcHJvZHVjdCBiYXNlZCBvbiB0aGUgY29uZmlndXJhdGlvbiBwcm92aWRlZCBpbmNsdWRpbmcgb3B0aW9uYWwgaXRlbSBwcmljZXMuXG4gICAqL1xuICBzZWxlY3RDb21wb3NpdGVQcm9kdWN0T3B0aW9uYWxJdGVtUHJpY2VzRm9yQ29uZmlndXJhdGlvbjogKCBpZDogRGFmZkNvbXBvc2l0ZVByb2R1Y3RbJ2lkJ10sIGNvbmZpZ3VyYXRpb24/OiBEaWN0aW9uYXJ5PERhZmZDb21wb3NpdGVDb25maWd1cmF0aW9uSXRlbT4gKSA9PiBNZW1vaXplZFNlbGVjdG9yPERhZmZDb21wb3NpdGVQcm9kdWN0U3RhdGVSb290U2xpY2U8VD4sIERhZmZQcmljZVJhbmdlPjtcbiAgLyoqXG4gICAqIEdldCB0aGUgRGFmZlByaWNlUmFuZ2UgZm9yIGEgY29tcG9zaXRlIHByb2R1Y3QgYmFzZWQgb24gdGhlIGN1cnJlbnQgY29uZmlndXJhdGlvbiBvZiBzZWxlY3RlZCBpdGVtIG9wdGlvbnMgaW4gcmVkdXggc3RhdGUgYW5kXG4gICAqIGV4Y2x1ZGluZyB1bnNlbGVjdGVkLCBvcHRpb25hbCBpdGVtIHByaWNlcy5cbiAgICovXG4gIHNlbGVjdENvbXBvc2l0ZVByb2R1Y3RQcmljZXNBc0N1cnJlbnRseUNvbmZpZ3VyZWQ6ICggaWQ6IERhZmZDb21wb3NpdGVQcm9kdWN0WydpZCddICkgPT4gTWVtb2l6ZWRTZWxlY3RvcjxEYWZmQ29tcG9zaXRlUHJvZHVjdFN0YXRlUm9vdFNsaWNlPFQ+LCBEYWZmUHJpY2VSYW5nZT47XG4gIC8qKlxuICAgKiBHZXQgdGhlIGRpc2NvdW50IGFtb3VudCBmb3IgYSBjb21wb3NpdGUgcHJvZHVjdC4gVGhpcyB2YWx1ZSB3aWxsIGJlIHVuZGVmaW5lZCBpZiBhbGwgcmVxdWlyZWQgb3B0aW9ucyBhcmUgbm90IGNob3Nlbi5cbiAgICovXG4gIHNlbGVjdENvbXBvc2l0ZVByb2R1Y3REaXNjb3VudEFtb3VudDogKCBpZDogRGFmZkNvbXBvc2l0ZVByb2R1Y3RbJ2lkJ10gKSA9PiBNZW1vaXplZFNlbGVjdG9yPERhZmZDb21wb3NpdGVQcm9kdWN0U3RhdGVSb290U2xpY2U8VD4sIG51bWJlcj47XG4gIC8qKlxuICAgKiBHZXQgdGhlIGRpc2NvdW50IHBlcmNlbnQgZm9yIGEgY29tcG9zaXRlIHByb2R1Y3QuIFRoaXMgdmFsdWUgd2lsbCBiZSB1bmRlZmluZWQgaWYgYWxsIHJlcXVpcmVkIG9wdGlvbnMgYXJlIG5vdCBjaG9zZW4uXG4gICAqIE5vdGU6IHRoaXMgcGVyY2VudCBpcyBjb21wdXRlZCBjbGllbnQtc2lkZSBhbmQgc2hvdWxkIGJlIHRyZWF0ZWQgYXMgYW4gZXN0aW1hdGUgcmF0aGVyIHRoYW4gYW4gZXhhY3QgdmFsdWUuXG4gICAqL1xuICBzZWxlY3RDb21wb3NpdGVQcm9kdWN0RGlzY291bnRQZXJjZW50OiAoIGlkOiBEYWZmQ29tcG9zaXRlUHJvZHVjdFsnaWQnXSApID0+IE1lbW9pemVkU2VsZWN0b3I8RGFmZkNvbXBvc2l0ZVByb2R1Y3RTdGF0ZVJvb3RTbGljZTxUPiwgbnVtYmVyPjtcbn1cblxuY29uc3QgY3JlYXRlQ29tcG9zaXRlUHJvZHVjdFNlbGVjdG9ycyA9IDxUIGV4dGVuZHMgRGFmZlByb2R1Y3Q+KCk6IERhZmZDb21wb3NpdGVQcm9kdWN0TWVtb2l6ZWRTZWxlY3RvcnM8VD4gPT4ge1xuXG4gIGNvbnN0IHtcbiAgICBzZWxlY3RQcm9kdWN0LFxuICB9ID0gZ2V0RGFmZlByb2R1Y3RFbnRpdGllc1NlbGVjdG9yczxUPigpO1xuXG4gIGNvbnN0IHtcbiAgICBzZWxlY3RDb21wb3NpdGVQcm9kdWN0QXBwbGllZE9wdGlvbnNFbnRpdGllcyxcbiAgfSA9IGdldERhZmZDb21wb3NpdGVQcm9kdWN0RW50aXRpZXNTZWxlY3RvcnMoKTtcblxuICBjb25zdCBzZWxlY3RDb21wb3NpdGVQcm9kdWN0UmVxdWlyZWRJdGVtUHJpY2VzRm9yQ29uZmlndXJhdGlvbiA9IGRlZmF1bHRNZW1vaXplKChpZDogRGFmZkNvbXBvc2l0ZVByb2R1Y3RbJ2lkJ10sIGNvbmZpZ3VyYXRpb24/OiBEaWN0aW9uYXJ5PERhZmZDb21wb3NpdGVDb25maWd1cmF0aW9uSXRlbT4pID0+IGNyZWF0ZVNlbGVjdG9yKFxuICAgIHNlbGVjdFByb2R1Y3QoaWQpLFxuICAgIChwcm9kdWN0OiBUKSA9PiB7XG4gICAgICBpZihwcm9kdWN0LnR5cGUgIT09IERhZmZQcm9kdWN0VHlwZUVudW0uQ29tcG9zaXRlKSB7XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGFwcGxpZWRPcHRpb25zID0gY29uZmlndXJhdGlvbiA/IGdldEFwcGxpZWRPcHRpb25zRm9yQ29uZmlndXJhdGlvbig8RGFmZkNvbXBvc2l0ZVByb2R1Y3Q+PGFueT5wcm9kdWN0LCBjb25maWd1cmF0aW9uKSA6IHt9O1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgbWluUHJpY2U6IGdldE1pblByaWNlc0ZvckNvbmZpZ3VyYXRpb24oPERhZmZDb21wb3NpdGVQcm9kdWN0Pjxhbnk+cHJvZHVjdCwgYXBwbGllZE9wdGlvbnMpLFxuICAgICAgICBtYXhQcmljZTogZ2V0TWF4UHJpY2VzRm9yQ29uZmlndXJhdGlvbig8RGFmZkNvbXBvc2l0ZVByb2R1Y3Q+PGFueT5wcm9kdWN0LCBhcHBsaWVkT3B0aW9ucyksXG4gICAgICB9O1xuICAgIH0sXG4gICkpLm1lbW9pemVkO1xuXG4gIGNvbnN0IHNlbGVjdENvbXBvc2l0ZVByb2R1Y3RPcHRpb25hbEl0ZW1QcmljZXNGb3JDb25maWd1cmF0aW9uID0gZGVmYXVsdE1lbW9pemUoKGlkOiBEYWZmQ29tcG9zaXRlUHJvZHVjdFsnaWQnXSwgY29uZmlndXJhdGlvbj86IERpY3Rpb25hcnk8RGFmZkNvbXBvc2l0ZUNvbmZpZ3VyYXRpb25JdGVtPikgPT4gY3JlYXRlU2VsZWN0b3IoXG4gICAgc2VsZWN0UHJvZHVjdChpZCksXG4gICAgKHByb2R1Y3Q6IFQpID0+IHtcbiAgICAgIGlmKHByb2R1Y3QudHlwZSAhPT0gRGFmZlByb2R1Y3RUeXBlRW51bS5Db21wb3NpdGUpIHtcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgIH1cblxuICAgICAgY29uc3QgYXBwbGllZE9wdGlvbnMgPSBjb25maWd1cmF0aW9uID8gZ2V0QXBwbGllZE9wdGlvbnNGb3JDb25maWd1cmF0aW9uKDxEYWZmQ29tcG9zaXRlUHJvZHVjdD48YW55PnByb2R1Y3QsIGNvbmZpZ3VyYXRpb24pIDoge307XG4gICAgICByZXR1cm4ge1xuICAgICAgICBtaW5QcmljZTogZ2V0TWluUHJpY2VzRm9yQ29uZmlndXJhdGlvbig8RGFmZkNvbXBvc2l0ZVByb2R1Y3Q+PGFueT5wcm9kdWN0LCBhcHBsaWVkT3B0aW9ucyksXG4gICAgICAgIG1heFByaWNlOiBnZXRNYXhQcmljZXNGb3JDb25maWd1cmF0aW9uSW5jbHVkaW5nT3B0aW9uYWxJdGVtcyg8RGFmZkNvbXBvc2l0ZVByb2R1Y3Q+PGFueT5wcm9kdWN0LCBhcHBsaWVkT3B0aW9ucyksXG4gICAgICB9O1xuICAgIH0sXG4gICkpLm1lbW9pemVkO1xuXG4gIGNvbnN0IHNlbGVjdENvbXBvc2l0ZVByb2R1Y3RQcmljZXNBc0N1cnJlbnRseUNvbmZpZ3VyZWQgPSBkZWZhdWx0TWVtb2l6ZSgoaWQ6IFRbJ2lkJ10pID0+IGNyZWF0ZVNlbGVjdG9yPERhZmZDb21wb3NpdGVQcm9kdWN0U3RhdGVSb290U2xpY2U8VD4sIFtULCBFbnRpdHlTdGF0ZTxEYWZmQ29tcG9zaXRlUHJvZHVjdEVudGl0eT5bJ2VudGl0aWVzJ11dLCBEYWZmUHJpY2VSYW5nZT4oXG4gICAgc2VsZWN0UHJvZHVjdChpZCksXG4gICAgc2VsZWN0Q29tcG9zaXRlUHJvZHVjdEFwcGxpZWRPcHRpb25zRW50aXRpZXMsXG4gICAgKHByb2R1Y3Q6IFQsIGFwcGxpZWRPcHRpb25zRW50aXRpZXMpID0+XG4gICAgICBzZWxlY3RDb21wb3NpdGVQcm9kdWN0UmVxdWlyZWRJdGVtUHJpY2VzRm9yQ29uZmlndXJhdGlvbihpZCwgYXBwbGllZE9wdGlvbnNFbnRpdGllc1tpZF0/Lml0ZW1zIHx8IG51bGwpLnByb2plY3Rvcihwcm9kdWN0KSxcbiAgKSkubWVtb2l6ZWQ7XG5cbiAgY29uc3Qgc2VsZWN0Q29tcG9zaXRlUHJvZHVjdERpc2NvdW50QW1vdW50ID0gZGVmYXVsdE1lbW9pemUoKGlkOiBEYWZmQ29tcG9zaXRlUHJvZHVjdFsnaWQnXSkgPT4gY3JlYXRlU2VsZWN0b3I8RGFmZkNvbXBvc2l0ZVByb2R1Y3RTdGF0ZVJvb3RTbGljZTxUPiwgW1QsIEVudGl0eVN0YXRlPERhZmZDb21wb3NpdGVQcm9kdWN0RW50aXR5PlsnZW50aXRpZXMnXV0sIG51bWJlcj4oXG4gICAgc2VsZWN0UHJvZHVjdChpZCksXG4gICAgc2VsZWN0Q29tcG9zaXRlUHJvZHVjdEFwcGxpZWRPcHRpb25zRW50aXRpZXMsXG4gICAgKHByb2R1Y3Q6IFQsIGFwcGxpZWRPcHRpb25zRW50aXRpZXMpID0+IHtcbiAgICAgIGlmKHByb2R1Y3QudHlwZSAhPT0gRGFmZlByb2R1Y3RUeXBlRW51bS5Db21wb3NpdGUpIHtcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgIH1cbiAgICAgIGNvbnN0IGFwcGxpZWRDb25maWd1cmF0aW9uSXRlbSA9IGFwcGxpZWRPcHRpb25zRW50aXRpZXNbcHJvZHVjdC5pZF0uaXRlbXM7XG4gICAgICBpZigoPERhZmZDb21wb3NpdGVQcm9kdWN0Pjxhbnk+cHJvZHVjdCkuaXRlbXMuZmlsdGVyKGl0ZW0gPT4gaXRlbS5yZXF1aXJlZCAmJiBhcHBsaWVkQ29uZmlndXJhdGlvbkl0ZW1baXRlbS5pZF0udmFsdWUgPT09IG51bGwpLmxlbmd0aCA+IDApIHtcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgIH1cbiAgICAgIGNvbnN0IGFwcGxpZWRPcHRpb25zID0gZ2V0QXBwbGllZE9wdGlvbnNGb3JDb25maWd1cmF0aW9uKCg8RGFmZkNvbXBvc2l0ZVByb2R1Y3Q+PGFueT5wcm9kdWN0KSwgYXBwbGllZENvbmZpZ3VyYXRpb25JdGVtKTtcblxuICAgICAgcmV0dXJuICg8RGFmZkNvbXBvc2l0ZVByb2R1Y3Q+PGFueT5wcm9kdWN0KS5pdGVtcy5yZWR1Y2UoKGFjYywgaXRlbSkgPT5cbiAgICAgICAgYXBwbGllZE9wdGlvbnNbaXRlbS5pZF0/LmRpc2NvdW50Py5hbW91bnQgPyBkYWZmQWRkKGFjYywgZGFmZk11bHRpcGx5KGFwcGxpZWRPcHRpb25zW2l0ZW0uaWRdLmRpc2NvdW50LmFtb3VudCwgYXBwbGllZE9wdGlvbnNbaXRlbS5pZF0ucXVhbnRpdHkpKSA6IGFjYyxcbiAgICAgIHByb2R1Y3QuZGlzY291bnQuYW1vdW50KTtcbiAgICB9LFxuICApKS5tZW1vaXplZDtcblxuICBjb25zdCBzZWxlY3RDb21wb3NpdGVQcm9kdWN0RGlzY291bnRQZXJjZW50ID0gZGVmYXVsdE1lbW9pemUoKGlkOiBEYWZmQ29tcG9zaXRlUHJvZHVjdFsnaWQnXSkgPT4gY3JlYXRlU2VsZWN0b3I8RGFmZkNvbXBvc2l0ZVByb2R1Y3RTdGF0ZVJvb3RTbGljZTxUPiwgW1QsIEVudGl0eVN0YXRlPERhZmZDb21wb3NpdGVQcm9kdWN0RW50aXR5PlsnZW50aXRpZXMnXV0sIG51bWJlcj4oXG4gICAgc2VsZWN0UHJvZHVjdChpZCksXG4gICAgc2VsZWN0Q29tcG9zaXRlUHJvZHVjdEFwcGxpZWRPcHRpb25zRW50aXRpZXMsXG4gICAgKHByb2R1Y3Q6IFQsIGFwcGxpZWRPcHRpb25zRW50aXRpZXMpID0+IHtcbiAgICAgIGlmKHByb2R1Y3QudHlwZSAhPT0gRGFmZlByb2R1Y3RUeXBlRW51bS5Db21wb3NpdGUpIHtcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgIH1cbiAgICAgIGNvbnN0IGFwcGxpZWRPcHRpb25zID0gYXBwbGllZE9wdGlvbnNFbnRpdGllc1twcm9kdWN0LmlkXS5pdGVtcztcbiAgICAgIGlmKCg8RGFmZkNvbXBvc2l0ZVByb2R1Y3Q+PGFueT5wcm9kdWN0KS5pdGVtcy5maWx0ZXIoaXRlbSA9PiBpdGVtLnJlcXVpcmVkICYmIGFwcGxpZWRPcHRpb25zW2l0ZW0uaWRdLnZhbHVlID09PSBudWxsKS5sZW5ndGggPiAwKSB7XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHByaWNlcyA9IGdldE1pblByaWNlc0ZvckNvbmZpZ3VyYXRpb24oXG4gICAgICAgICg8RGFmZkNvbXBvc2l0ZVByb2R1Y3Q+PGFueT5wcm9kdWN0KSxcbiAgICAgICAgZ2V0QXBwbGllZE9wdGlvbnNGb3JDb25maWd1cmF0aW9uKCg8RGFmZkNvbXBvc2l0ZVByb2R1Y3Q+PGFueT5wcm9kdWN0KSwgYXBwbGllZE9wdGlvbnMpLFxuICAgICAgKTtcblxuICAgICAgcmV0dXJuIGRhZmZNdWx0aXBseShcbiAgICAgICAgZGFmZkRpdmlkZShcbiAgICAgICAgICBkYWZmU3VidHJhY3QocHJpY2VzLm9yaWdpbmFsUHJpY2UsIHByaWNlcy5kaXNjb3VudGVkUHJpY2UpLFxuICAgICAgICAgIHByaWNlcy5vcmlnaW5hbFByaWNlLFxuICAgICAgICApLFxuICAgICAgICAxMDAsXG4gICAgICApO1xuICAgIH0sXG4gICkpLm1lbW9pemVkO1xuXG4gIHJldHVybiB7XG4gICAgc2VsZWN0Q29tcG9zaXRlUHJvZHVjdFJlcXVpcmVkSXRlbVByaWNlc0ZvckNvbmZpZ3VyYXRpb24sXG4gICAgc2VsZWN0Q29tcG9zaXRlUHJvZHVjdE9wdGlvbmFsSXRlbVByaWNlc0ZvckNvbmZpZ3VyYXRpb24sXG4gICAgc2VsZWN0Q29tcG9zaXRlUHJvZHVjdFByaWNlc0FzQ3VycmVudGx5Q29uZmlndXJlZCxcbiAgICBzZWxlY3RDb21wb3NpdGVQcm9kdWN0RGlzY291bnRBbW91bnQsXG4gICAgc2VsZWN0Q29tcG9zaXRlUHJvZHVjdERpc2NvdW50UGVyY2VudCxcbiAgfTtcbn07XG5cbi8qKlxuICogQSBmdW5jdGlvbiB0aGF0IHJldHVybnMgYWxsIHNlbGVjdG9ycyByZWxhdGVkIHRvIHRoZSBjb21wb3NpdGUgcHJvZHVjdCBmZWF0dXJlLlxuICpcbiAqIFJldHVybnMge0BsaW5rIERhZmZDb21wb3NpdGVQcm9kdWN0TWVtb2l6ZWRTZWxlY3RvcnN9LlxuICovXG5leHBvcnQgY29uc3QgZ2V0RGFmZkNvbXBvc2l0ZVByb2R1Y3RQcmljZVNlbGVjdG9ycyA9ICgoKSA9PiB7XG4gIGxldCBjYWNoZTtcbiAgcmV0dXJuIDxUIGV4dGVuZHMgRGFmZlByb2R1Y3QgPSBEYWZmUHJvZHVjdD4oKTogRGFmZkNvbXBvc2l0ZVByb2R1Y3RNZW1vaXplZFNlbGVjdG9yczxUPiA9PiBjYWNoZSA9IGNhY2hlXG4gICAgPyBjYWNoZVxuICAgIDogY3JlYXRlQ29tcG9zaXRlUHJvZHVjdFNlbGVjdG9yczxUPigpO1xufSkoKTtcblxuLyoqXG4gKiBUaGUgbWluaW11bSBwcmljZSBvZiBhbiBpdGVtIGlzIHplcm8gaWYgdGhlIGl0ZW0gaXMgb3B0aW9uYWwuXG4gKlxuICogQHBhcmFtIGl0ZW0gRGFmZkNvbXBvc2l0ZVByb2R1Y3RJdGVtXG4gKi9cbmZ1bmN0aW9uIGdldE1pbmltdW1SZXF1aXJlZENvbXBvc2l0ZUl0ZW1QcmljZShpdGVtOiBEYWZmQ29tcG9zaXRlUHJvZHVjdEl0ZW0sIHF0eTogbnVtYmVyKTogbnVtYmVyIHtcbiAgcmV0dXJuIGl0ZW0ucmVxdWlyZWQgPyBkYWZmTXVsdGlwbHkoTWF0aC5taW4oLi4uaXRlbS5vcHRpb25zLm1hcChvcHRpb24gPT4gb3B0aW9uLnByaWNlKSksIHF0eSkgOiAwO1xufVxuXG4vKipcbiAqIFRoZSBtYXhpbXVtIHByaWNlIGZvciBhbiBpdGVtIGlzIHplcm8gaWYgdGhlIGl0ZW0gaXMgb3B0aW9uYWwuXG4gKlxuICogQHBhcmFtIGl0ZW0gRGFmZkNvbXBvc2l0ZVByb2R1Y3RJdGVtXG4gKi9cbmZ1bmN0aW9uIGdldE1heGltdW1SZXF1aXJlZENvbXBvc2l0ZUl0ZW1QcmljZShpdGVtOiBEYWZmQ29tcG9zaXRlUHJvZHVjdEl0ZW0sIHF0eTogbnVtYmVyKTogbnVtYmVyIHtcbiAgcmV0dXJuIGl0ZW0ucmVxdWlyZWQgPyBkYWZmTXVsdGlwbHkoTWF0aC5tYXgoLi4uaXRlbS5vcHRpb25zLm1hcChvcHRpb24gPT4gb3B0aW9uLnByaWNlKSksIHF0eSkgOiAwO1xufVxuXG4vKipcbiAqIFRoZSBtaW5pbXVtIGRpc2NvdW50ZWQgcHJpY2Ugb2YgYW4gaXRlbSBpcyB6ZXJvIGlmIHRoZSBpdGVtIGlzIG9wdGlvbmFsLlxuICpcbiAqIEBwYXJhbSBpdGVtIERhZmZDb21wb3NpdGVQcm9kdWN0SXRlbVxuICovXG5mdW5jdGlvbiBnZXRNaW5pbXVtUmVxdWlyZWRDb21wb3NpdGVJdGVtRGlzY291bnRlZFByaWNlKGl0ZW06IERhZmZDb21wb3NpdGVQcm9kdWN0SXRlbSwgcXR5OiBudW1iZXIpOiBudW1iZXIge1xuICByZXR1cm4gaXRlbS5yZXF1aXJlZCA/IGRhZmZNdWx0aXBseShNYXRoLm1pbiguLi5pdGVtLm9wdGlvbnMubWFwKGdldERpc2NvdW50ZWRQcmljZSkpLCBxdHkpIDogMDtcbn1cbi8qKlxuICogVGhlIG1heGltdW0gZGlzY291bnRlZCBwcmljZSBvZiBhbiBpdGVtIGlzIHplcm8gaWYgdGhlIGl0ZW0gaXMgb3B0aW9uYWwuXG4gKlxuICogQHBhcmFtIGl0ZW0gRGFmZkNvbXBvc2l0ZVByb2R1Y3RJdGVtXG4gKi9cbmZ1bmN0aW9uIGdldE1heGltdW1SZXF1aXJlZENvbXBvc2l0ZUl0ZW1EaXNjb3VudGVkUHJpY2UoaXRlbTogRGFmZkNvbXBvc2l0ZVByb2R1Y3RJdGVtLCBxdHk6IG51bWJlcik6IG51bWJlciB7XG4gIHJldHVybiBpdGVtLnJlcXVpcmVkID8gZGFmZk11bHRpcGx5KE1hdGgubWF4KC4uLml0ZW0ub3B0aW9ucy5tYXAoZ2V0RGlzY291bnRlZFByaWNlKSksIHF0eSkgOiAwO1xufVxuXG4vKipcbiAqIEdldHMgdGhlIG1pbmltdW0gcHJpY2VzIG9mIGEgY29tcG9zaXRlIHByb2R1Y3QgZm9yIHRoZSBjb25maWd1cmF0aW9uIHByb3ZpZGVkIGV4Y2x1ZGluZyB1bnNlbGVjdGVkLCBvcHRpb25hbCBpdGVtIHByaWNlcy5cbiAqXG4gKiBAcGFyYW0gcHJvZHVjdCBhIERhZmZDb21wb3NpdGVQcm9kdWN0XG4gKiBAcGFyYW0gYXBwbGllZE9wdGlvbnMgYSBEaWN0aW9uYXJ5PERhZmZDb21wb3NpdGVQcm9kdWN0SXRlbU9wdGlvbj4gdGhhdCBkZXRlcm1pbmVzIHRoZSBjdXJyZW50IGNvbmZpZ3VyYXRpb24gb2YgdGhlIGNvbXBvc2l0ZSBwcm9kdWN0LlxuICovXG5mdW5jdGlvbiBnZXRNaW5QcmljZXNGb3JDb25maWd1cmF0aW9uKHByb2R1Y3Q6IERhZmZDb21wb3NpdGVQcm9kdWN0LCBhcHBsaWVkT3B0aW9uczogRGljdGlvbmFyeTxEYWZmQ29tcG9zaXRlUHJvZHVjdEl0ZW1PcHRpb24+KTogRGFmZlByb2R1Y3RQcmljZXMge1xuICByZXR1cm4ge1xuICAgIGRpc2NvdW50ZWRQcmljZTogcHJvZHVjdC5pdGVtcy5yZWR1Y2UoKGFjYywgaXRlbSkgPT4gZGFmZkFkZChcbiAgICAgIGFjYyxcbiAgICAgIGFwcGxpZWRPcHRpb25IYXNJZChhcHBsaWVkT3B0aW9uc1tpdGVtLmlkXSkgP1xuICAgICAgICBkYWZmTXVsdGlwbHkoZ2V0RGlzY291bnRlZFByaWNlKGFwcGxpZWRPcHRpb25zW2l0ZW0uaWRdKSwgYXBwbGllZE9wdGlvbnNbaXRlbS5pZF0ucXVhbnRpdHkpIDpcbiAgICAgICAgZ2V0TWluaW11bVJlcXVpcmVkQ29tcG9zaXRlSXRlbURpc2NvdW50ZWRQcmljZShpdGVtLCBnZXRPcHRpb25RdHkoYXBwbGllZE9wdGlvbnNbaXRlbS5pZF0pKSxcbiAgICApLCBnZXREaXNjb3VudGVkUHJpY2UocHJvZHVjdCkpLFxuICAgIGRpc2NvdW50OiB7IGFtb3VudDogbnVsbCwgcGVyY2VudDogbnVsbCB9LFxuICAgIG9yaWdpbmFsUHJpY2U6IHByb2R1Y3QuaXRlbXMucmVkdWNlKChhY2MsIGl0ZW0pID0+IGRhZmZBZGQoXG4gICAgICBhY2MsXG4gICAgICBhcHBsaWVkT3B0aW9uSGFzSWQoYXBwbGllZE9wdGlvbnNbaXRlbS5pZF0pID9cbiAgICAgICAgZGFmZk11bHRpcGx5KGFwcGxpZWRPcHRpb25zW2l0ZW0uaWRdLnByaWNlLCBhcHBsaWVkT3B0aW9uc1tpdGVtLmlkXS5xdWFudGl0eSkgOlxuICAgICAgICBnZXRNaW5pbXVtUmVxdWlyZWRDb21wb3NpdGVJdGVtUHJpY2UoaXRlbSwgZ2V0T3B0aW9uUXR5KGFwcGxpZWRPcHRpb25zW2l0ZW0uaWRdKSksXG4gICAgKSwgcHJvZHVjdC5wcmljZSksXG4gIH07XG59XG5cbi8qKlxuICogR2V0cyB0aGUgbWF4aW11bSBwcmljZXMgb2YgYSBjb21wb3NpdGUgcHJvZHVjdCBmb3IgdGhlIGNvbmZpZ3VyYXRpb24gcHJvdmlkZWQgZXhjbHVkaW5nIHVuc2VsZWN0ZWQsIG9wdGlvbmFsIGl0ZW0gcHJpY2VzLlxuICpcbiAqIEBwYXJhbSBwcm9kdWN0IGEgRGFmZkNvbXBvc2l0ZVByb2R1Y3RcbiAqIEBwYXJhbSBhcHBsaWVkT3B0aW9ucyBhIERpY3Rpb25hcnk8RGFmZkNvbXBvc2l0ZVByb2R1Y3RJdGVtT3B0aW9uPiB0aGF0IGRldGVybWluZXMgdGhlIGN1cnJlbnQgY29uZmlndXJhdGlvbiBvZiB0aGUgY29tcG9zaXRlIHByb2R1Y3QuXG4gKi9cbmZ1bmN0aW9uIGdldE1heFByaWNlc0ZvckNvbmZpZ3VyYXRpb24ocHJvZHVjdDogRGFmZkNvbXBvc2l0ZVByb2R1Y3QsIGFwcGxpZWRPcHRpb25zOiBEaWN0aW9uYXJ5PERhZmZDb21wb3NpdGVQcm9kdWN0SXRlbU9wdGlvbj4pOiBEYWZmUHJvZHVjdFByaWNlcyB7XG4gIHJldHVybiB7XG4gICAgZGlzY291bnRlZFByaWNlOiBwcm9kdWN0Lml0ZW1zLnJlZHVjZSgoYWNjLCBpdGVtKSA9PiBkYWZmQWRkKFxuICAgICAgYWNjLFxuICAgICAgYXBwbGllZE9wdGlvbkhhc0lkKGFwcGxpZWRPcHRpb25zW2l0ZW0uaWRdKSA/XG4gICAgICAgIGRhZmZNdWx0aXBseShnZXREaXNjb3VudGVkUHJpY2UoYXBwbGllZE9wdGlvbnNbaXRlbS5pZF0pLCBhcHBsaWVkT3B0aW9uc1tpdGVtLmlkXS5xdWFudGl0eSkgOlxuICAgICAgICBnZXRNYXhpbXVtUmVxdWlyZWRDb21wb3NpdGVJdGVtRGlzY291bnRlZFByaWNlKGl0ZW0sIGdldE9wdGlvblF0eShhcHBsaWVkT3B0aW9uc1tpdGVtLmlkXSkpLFxuICAgICksIGdldERpc2NvdW50ZWRQcmljZShwcm9kdWN0KSksXG4gICAgZGlzY291bnQ6IHsgYW1vdW50OiBudWxsLCBwZXJjZW50OiBudWxsIH0sXG4gICAgb3JpZ2luYWxQcmljZTogcHJvZHVjdC5pdGVtcy5yZWR1Y2UoKGFjYywgaXRlbSkgPT4gZGFmZkFkZChcbiAgICAgIGFjYyxcbiAgICAgIGFwcGxpZWRPcHRpb25IYXNJZChhcHBsaWVkT3B0aW9uc1tpdGVtLmlkXSkgP1xuICAgICAgICBkYWZmTXVsdGlwbHkoYXBwbGllZE9wdGlvbnNbaXRlbS5pZF0ucHJpY2UsIGFwcGxpZWRPcHRpb25zW2l0ZW0uaWRdLnF1YW50aXR5KSA6XG4gICAgICAgIGdldE1heGltdW1SZXF1aXJlZENvbXBvc2l0ZUl0ZW1QcmljZShpdGVtLCBnZXRPcHRpb25RdHkoYXBwbGllZE9wdGlvbnNbaXRlbS5pZF0pKSxcbiAgICApLCBwcm9kdWN0LnByaWNlKSxcbiAgfTtcbn1cblxuZnVuY3Rpb24gZ2V0RGlzY291bnRlZFByaWNlKHByb2R1Y3Q6IERhZmZQcm9kdWN0KTogbnVtYmVyIHtcbiAgcmV0dXJuIHByb2R1Y3QuZGlzY291bnQgPyBkYWZmU3VidHJhY3QocHJvZHVjdC5wcmljZSwgcHJvZHVjdC5kaXNjb3VudC5hbW91bnQpIDogcHJvZHVjdC5wcmljZTtcbn1cblxuLyoqXG4gKiBHZXRzIHRoZSBtYXhpbXVtIHByaWNlcyBvZiBhIGNvbXBvc2l0ZSBwcm9kdWN0IGluY2x1ZGluZyBvcHRpb25hbCBpdGVtIHByaWNlcy5cbiAqXG4gKiBAcGFyYW0gcHJvZHVjdCBhIERhZmZDb21wb3NpdGVQcm9kdWN0XG4gKi9cbmZ1bmN0aW9uIGdldE1heFByaWNlc0ZvckNvbmZpZ3VyYXRpb25JbmNsdWRpbmdPcHRpb25hbEl0ZW1zKHByb2R1Y3Q6IERhZmZDb21wb3NpdGVQcm9kdWN0LCBhcHBsaWVkT3B0aW9uczogRGljdGlvbmFyeTxEYWZmQ29tcG9zaXRlUHJvZHVjdEl0ZW1PcHRpb24+KTogRGFmZlByb2R1Y3RQcmljZXMge1xuICByZXR1cm4ge1xuICAgIGRpc2NvdW50ZWRQcmljZTogcHJvZHVjdC5pdGVtcy5yZWR1Y2UoKGFjYywgaXRlbSkgPT4gZGFmZkFkZChcbiAgICAgIGFjYyxcbiAgICAgIGFwcGxpZWRPcHRpb25IYXNJZChhcHBsaWVkT3B0aW9uc1tpdGVtLmlkXSkgP1xuICAgICAgICBkYWZmTXVsdGlwbHkoZ2V0RGlzY291bnRlZFByaWNlKGFwcGxpZWRPcHRpb25zW2l0ZW0uaWRdKSwgYXBwbGllZE9wdGlvbnNbaXRlbS5pZF0ucXVhbnRpdHkpIDpcbiAgICAgICAgYXBwbGllZE9wdGlvbkhhc1F0eShhcHBsaWVkT3B0aW9uc1tpdGVtLmlkXSkgP1xuICAgICAgICAgIGRhZmZNdWx0aXBseShNYXRoLm1heCguLi5pdGVtLm9wdGlvbnMubWFwKGdldERpc2NvdW50ZWRQcmljZSkpLCBhcHBsaWVkT3B0aW9uc1tpdGVtLmlkXS5xdWFudGl0eSkgOlxuICAgICAgICAgIE1hdGgubWF4KC4uLml0ZW0ub3B0aW9ucy5tYXAoZ2V0RGlzY291bnRlZFByaWNlKSksXG4gICAgKSwgZ2V0RGlzY291bnRlZFByaWNlKHByb2R1Y3QpKSxcbiAgICBkaXNjb3VudDogeyBhbW91bnQ6IG51bGwsIHBlcmNlbnQ6IG51bGwgfSxcbiAgICBvcmlnaW5hbFByaWNlOiBwcm9kdWN0Lml0ZW1zLnJlZHVjZSgoYWNjLCBpdGVtKSA9PiBkYWZmQWRkKFxuICAgICAgYWNjLFxuICAgICAgYXBwbGllZE9wdGlvbkhhc0lkKGFwcGxpZWRPcHRpb25zW2l0ZW0uaWRdKSA/XG4gICAgICAgIGRhZmZNdWx0aXBseShhcHBsaWVkT3B0aW9uc1tpdGVtLmlkXS5wcmljZSwgYXBwbGllZE9wdGlvbnNbaXRlbS5pZF0ucXVhbnRpdHkpIDpcbiAgICAgICAgYXBwbGllZE9wdGlvbkhhc1F0eShhcHBsaWVkT3B0aW9uc1tpdGVtLmlkXSkgP1xuICAgICAgICAgIGRhZmZNdWx0aXBseShNYXRoLm1heCguLi5pdGVtLm9wdGlvbnMubWFwKG9wdGlvbiA9PiBvcHRpb24ucHJpY2UpKSwgYXBwbGllZE9wdGlvbnNbaXRlbS5pZF0ucXVhbnRpdHkpIDpcbiAgICAgICAgICBNYXRoLm1heCguLi5pdGVtLm9wdGlvbnMubWFwKG9wdGlvbiA9PiBvcHRpb24ucHJpY2UpKSxcbiAgICApLCBwcm9kdWN0LnByaWNlKSxcbiAgfTtcbn1cblxuLyoqXG4gKiBUYWtlcyBhIHByb2R1Y3QgYW5kIGEgc2V0IG9mIG9wdGlvbiBjb25maWd1cmF0aW9ucyBhbmQgY29udmVydCBpdCBpbnRvIGEgZGljdGlvbmFyeSBvZiB0aGUgZnVsbCBvcHRpb24gb2JqZWN0cy5cbiAqXG4gKiBAcGFyYW0gcHJvZHVjdCBhIERhZmZDb21wb3NpdGVQcm9kdWN0XG4gKiBAcGFyYW0gY29uZmlndXJhdGlvbiBhIERpY3Rpb25hcnk8RGFmZkNvbXBvc2l0ZUNvbmZpZ3VyYXRpb25JdGVtPiB1c2VkIHRvIGJ1aWxkIHRoZSBhcHBsaWVkT3B0aW9ucyBvYmplY3QuXG4gKi9cbmZ1bmN0aW9uIGdldEFwcGxpZWRPcHRpb25zRm9yQ29uZmlndXJhdGlvbihwcm9kdWN0OiBEYWZmQ29tcG9zaXRlUHJvZHVjdCwgY29uZmlndXJhdGlvbjogRGljdGlvbmFyeTxEYWZmQ29tcG9zaXRlQ29uZmlndXJhdGlvbkl0ZW0+KTogRGljdGlvbmFyeTxEYWZmQ29tcG9zaXRlUHJvZHVjdEl0ZW1PcHRpb24+IHtcbiAgcmV0dXJuIHByb2R1Y3QuaXRlbXMucmVkdWNlKChhY2MsIGl0ZW0pID0+ICh7XG4gICAgLi4uYWNjLFxuICAgIFtpdGVtLmlkXTogY29uZmlndXJhdGlvbltpdGVtLmlkXSA/IHtcbiAgICAgIC4uLml0ZW0ub3B0aW9ucy5maW5kKG9wdGlvbiA9PiBvcHRpb24uaWQgPT09IGNvbmZpZ3VyYXRpb25baXRlbS5pZF0udmFsdWUpLFxuICAgICAgcXVhbnRpdHk6IChjb25maWd1cmF0aW9uW2l0ZW0uaWRdLnF0eSA9PT0gbnVsbCB8fCBjb25maWd1cmF0aW9uW2l0ZW0uaWRdLnF0eSA9PT0gdW5kZWZpbmVkKSA/IDEgOiBjb25maWd1cmF0aW9uW2l0ZW0uaWRdLnF0eSxcbiAgICB9IDogbnVsbCxcbiAgfSksIHt9KTtcbn1cblxuZnVuY3Rpb24gYXBwbGllZE9wdGlvbkhhc0lkKGFwcGxpZWRPcHRpb246IERhZmZDb21wb3NpdGVQcm9kdWN0SXRlbU9wdGlvbik6IGJvb2xlYW4ge1xuICByZXR1cm4gISFhcHBsaWVkT3B0aW9uPy5pZDtcbn1cblxuZnVuY3Rpb24gZ2V0T3B0aW9uUXR5KGFwcGxpZWRPcHRpb246IERhZmZDb21wb3NpdGVQcm9kdWN0SXRlbU9wdGlvbik6IG51bWJlciB7XG4gIHJldHVybiBhcHBsaWVkT3B0aW9uSGFzUXR5KGFwcGxpZWRPcHRpb24pID8gYXBwbGllZE9wdGlvbi5xdWFudGl0eSA6IDE7XG59XG5cbmZ1bmN0aW9uIGFwcGxpZWRPcHRpb25IYXNRdHkoYXBwbGllZE9wdGlvbjogRGFmZkNvbXBvc2l0ZVByb2R1Y3RJdGVtT3B0aW9uKTogYm9vbGVhbiB7XG4gIHJldHVybiBhcHBsaWVkT3B0aW9uPy5xdWFudGl0eSAhPT0gbnVsbCAmJiBhcHBsaWVkT3B0aW9uPy5xdWFudGl0eSAhPT0gdW5kZWZpbmVkO1xufVxuIl19
184
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9zaXRlLXByb2R1Y3Quc2VsZWN0b3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wcm9kdWN0LWNvbXBvc2l0ZS9zdGF0ZS9zcmMvc2VsZWN0b3JzL2NvbXBvc2l0ZS1wcm9kdWN0L2NvbXBvc2l0ZS1wcm9kdWN0LnNlbGVjdG9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxPQUFPLEVBQ0wsY0FBYyxFQUVkLGNBQWMsR0FDZixNQUFNLGFBQWEsQ0FBQztBQUVyQixPQUFPLEVBQ0wsT0FBTyxFQUNQLFVBQVUsRUFDVixZQUFZLEVBQ1osWUFBWSxHQUNiLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUVMLG1CQUFtQixHQUdwQixNQUFNLG1CQUFtQixDQUFDO0FBQzNCLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBVTFFLE9BQU8sRUFBRSx3Q0FBd0MsRUFBRSxNQUFNLG9FQUFvRSxDQUFDO0FBOEI5SCxNQUFNLCtCQUErQixHQUFHLEdBQW9FLEVBQUU7SUFFNUcsTUFBTSxFQUNKLGFBQWEsR0FDZCxHQUFHLCtCQUErQixFQUFLLENBQUM7SUFFekMsTUFBTSxFQUNKLDRDQUE0QyxHQUM3QyxHQUFHLHdDQUF3QyxFQUFFLENBQUM7SUFFL0MsTUFBTSx3REFBd0QsR0FBRyxjQUFjLENBQUMsQ0FBQyxFQUE4QixFQUFFLGFBQTBELEVBQUUsRUFBRSxDQUFDLGNBQWMsQ0FDNUwsYUFBYSxDQUFDLEVBQUUsQ0FBQyxFQUNqQixDQUFDLE9BQVUsRUFBRSxFQUFFO1FBQ2IsSUFBRyxPQUFPLENBQUMsSUFBSSxLQUFLLG1CQUFtQixDQUFDLFNBQVMsRUFBRTtZQUNqRCxPQUFPLFNBQVMsQ0FBQztTQUNsQjtRQUVELE1BQU0sY0FBYyxHQUFHLGFBQWEsQ0FBQyxDQUFDLENBQUMsaUNBQWlDLENBQTRCLE9BQU8sRUFBRSxhQUFhLENBQUMsQ0FBQyxDQUFDLENB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LEVBQUUsUUFBUSxLQUFLLElBQUksSUFBSSxhQUFhLEVBQUUsUUFBUSxLQUFLLFNBQVMsQ0FBQztBQUNuRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRGljdGlvbmFyeSxcbiAgRW50aXR5U3RhdGUsXG59IGZyb20gJ0BuZ3J4L2VudGl0eSc7XG5pbXBvcnQge1xuICBjcmVhdGVTZWxlY3RvcixcbiAgTWVtb2l6ZWRTZWxlY3RvcixcbiAgZGVmYXVsdE1lbW9pemUsXG59IGZyb20gJ0BuZ3J4L3N0b3JlJztcblxuaW1wb3J0IHtcbiAgZGFmZkFkZCxcbiAgZGFmZkRpdmlkZSxcbiAgZGFmZk11bHRpcGx5LFxuICBkYWZmU3VidHJhY3QsXG59IGZyb20gJ0BkYWZmb2RpbC9jb3JlJztcbmltcG9ydCB7XG4gIERhZmZQcm9kdWN0LFxuICBEYWZmUHJvZHVjdFR5cGVFbnVtLFxuICBEYWZmUHJvZHVjdFByaWNlcyxcbiAgRGFmZlByaWNlUmFuZ2UsXG59IGZyb20gJ0BkYWZmb2RpbC9wcm9kdWN0JztcbmltcG9ydCB7IGdldERhZmZQcm9kdWN0RW50aXRpZXNTZWxlY3RvcnMgfSBmcm9tICdAZGFmZm9kaWwvcHJvZHVjdC9zdGF0ZSc7XG5pbXBvcnQge1xuICBEYWZmQ29tcG9zaXRlUHJvZHVjdCxcbiAgRGFmZkNvbXBvc2l0ZUNvbmZpZ3VyYXRpb25JdGVtLFxuICBEYWZmQ29tcG9zaXRlUHJvZHVjdEl0ZW0sXG4gIERhZmZDb21wb3NpdGVQcm9kdWN0SXRlbU9wdGlvbixcbn0gZnJvbSAnQGRhZmZvZGlsL3Byb2R1Y3QtY29tcG9zaXRlJztcblxuaW1wb3J0IHsgRGFmZkNvbXBvc2l0ZVByb2R1Y3RTdGF0ZVJvb3RTbGljZSB9IGZyb20gJy4uLy4uL3JlZHVjZXJzL2NvbXBvc2l0ZS1wcm9kdWN0LXJlZHVjZXJzLXN0YXRlLmludGVyZmFjZSc7XG5pbXBvcnQgeyBEYWZmQ29tcG9zaXRlUHJvZHVjdEVudGl0eSB9IGZyb20gJy4uLy4uL3JlZHVjZXJzL3B1YmxpY19hcGknO1xuaW1wb3J0IHsgZ2V0RGFmZkNvbXBvc2l0ZVByb2R1Y3RFbnRpdGllc1NlbGVjdG9ycyB9IGZyb20gJy4uL2NvbXBvc2l0ZS1wcm9kdWN0LWVudGl0aWVzL2NvbXBvc2l0ZS1wcm9kdWN0LWVudGl0aWVzLnNlbGVjdG9ycyc7XG5cbi8qKlxuICogQW4gaW50ZXJmYWNlIGRlc2NyaWJpbmcgc2VsZWN0b3JzIHVuaXF1ZSB0byB0aGUgY29tcG9zaXRlIHByb2R1Y3QsIHN1Y2ggYXMgcHJpY2luZyBhbmQgZGlzY291bnRzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIERhZmZDb21wb3NpdGVQcm9kdWN0TWVtb2l6ZWRTZWxlY3RvcnM8VCBleHRlbmRzIERhZmZQcm9kdWN0ID0gRGFmZlByb2R1Y3Q+IHtcbiAgLyoqXG4gICAqIEdldCBhIERhZmZQcmljZVJhbmdlIGZvciBhIGNvbXBvc2l0ZSBwcm9kdWN0IGJhc2VkIG9uIHRoZSBjb25maWd1cmF0aW9uIHByb3ZpZGVkIGV4Y2x1ZGluZyB1bnNlbGVjdGVkLCBvcHRpb25hbCBpdGVtIHByaWNlcy5cbiAgICovXG4gIHNlbGVjdENvbXBvc2l0ZVByb2R1Y3RSZXF1aXJlZEl0ZW1QcmljZXNGb3JDb25maWd1cmF0aW9uOiAoIGlkOiBEYWZmQ29tcG9zaXRlUHJvZHVjdFsnaWQnXSwgY29uZmlndXJhdGlvbj86IERpY3Rpb25hcnk8RGFmZkNvbXBvc2l0ZUNvbmZpZ3VyYXRpb25JdGVtPiApID0+IE1lbW9pemVkU2VsZWN0b3I8RGFmZkNvbXBvc2l0ZVByb2R1Y3RTdGF0ZVJvb3RTbGljZTxUPiwgRGFmZlByaWNlUmFuZ2U+O1xuICAvKipcbiAgICogR2V0IHRoZSBicm9hZGVzdCBwb3NzaWJsZSBEYWZmUHJpY2VSYW5nZSBmb3IgYSBjb21wb3NpdGUgcHJvZHVjdCBiYXNlZCBvbiB0aGUgY29uZmlndXJhdGlvbiBwcm92aWRlZCBpbmNsdWRpbmcgb3B0aW9uYWwgaXRlbSBwcmljZXMuXG4gICAqL1xuICBzZWxlY3RDb21wb3NpdGVQcm9kdWN0T3B0aW9uYWxJdGVtUHJpY2VzRm9yQ29uZmlndXJhdGlvbjogKCBpZDogRGFmZkNvbXBvc2l0ZVByb2R1Y3RbJ2lkJ10sIGNvbmZpZ3VyYXRpb24/OiBEaWN0aW9uYXJ5PERhZmZDb21wb3NpdGVDb25maWd1cmF0aW9uSXRlbT4gKSA9PiBNZW1vaXplZFNlbGVjdG9yPERhZmZDb21wb3NpdGVQcm9kdWN0U3RhdGVSb290U2xpY2U8VD4sIERhZmZQcmljZVJhbmdlPjtcbiAgLyoqXG4gICAqIEdldCB0aGUgRGFmZlByaWNlUmFuZ2UgZm9yIGEgY29tcG9zaXRlIHByb2R1Y3QgYmFzZWQgb24gdGhlIGN1cnJlbnQgY29uZmlndXJhdGlvbiBvZiBzZWxlY3RlZCBpdGVtIG9wdGlvbnMgaW4gcmVkdXggc3RhdGUgYW5kXG4gICAqIGV4Y2x1ZGluZyB1bnNlbGVjdGVkLCBvcHRpb25hbCBpdGVtIHByaWNlcy5cbiAgICovXG4gIHNlbGVjdENvbXBvc2l0ZVByb2R1Y3RQcmljZXNBc0N1cnJlbnRseUNvbmZpZ3VyZWQ6ICggaWQ6IERhZmZDb21wb3NpdGVQcm9kdWN0WydpZCddICkgPT4gTWVtb2l6ZWRTZWxlY3RvcjxEYWZmQ29tcG9zaXRlUHJvZHVjdFN0YXRlUm9vdFNsaWNlPFQ+LCBEYWZmUHJpY2VSYW5nZT47XG4gIC8qKlxuICAgKiBHZXQgdGhlIGRpc2NvdW50IGFtb3VudCBmb3IgYSBjb21wb3NpdGUgcHJvZHVjdC4gVGhpcyB2YWx1ZSB3aWxsIGJlIHVuZGVmaW5lZCBpZiBhbGwgcmVxdWlyZWQgb3B0aW9ucyBhcmUgbm90IGNob3Nlbi5cbiAgICovXG4gIHNlbGVjdENvbXBvc2l0ZVByb2R1Y3REaXNjb3VudEFtb3VudDogKCBpZDogRGFmZkNvbXBvc2l0ZVByb2R1Y3RbJ2lkJ10gKSA9PiBNZW1vaXplZFNlbGVjdG9yPERhZmZDb21wb3NpdGVQcm9kdWN0U3RhdGVSb290U2xpY2U8VD4sIG51bWJlcj47XG4gIC8qKlxuICAgKiBHZXQgdGhlIGRpc2NvdW50IHBlcmNlbnQgZm9yIGEgY29tcG9zaXRlIHByb2R1Y3QuIFRoaXMgdmFsdWUgd2lsbCBiZSB1bmRlZmluZWQgaWYgYWxsIHJlcXVpcmVkIG9wdGlvbnMgYXJlIG5vdCBjaG9zZW4uXG4gICAqIE5vdGU6IHRoaXMgcGVyY2VudCBpcyBjb21wdXRlZCBjbGllbnQtc2lkZSBhbmQgc2hvdWxkIGJlIHRyZWF0ZWQgYXMgYW4gZXN0aW1hdGUgcmF0aGVyIHRoYW4gYW4gZXhhY3QgdmFsdWUuXG4gICAqL1xuICBzZWxlY3RDb21wb3NpdGVQcm9kdWN0RGlzY291bnRQZXJjZW50OiAoIGlkOiBEYWZmQ29tcG9zaXRlUHJvZHVjdFsnaWQnXSApID0+IE1lbW9pemVkU2VsZWN0b3I8RGFmZkNvbXBvc2l0ZVByb2R1Y3RTdGF0ZVJvb3RTbGljZTxUPiwgbnVtYmVyPjtcbn1cblxuY29uc3QgY3JlYXRlQ29tcG9zaXRlUHJvZHVjdFNlbGVjdG9ycyA9IDxUIGV4dGVuZHMgRGFmZlByb2R1Y3Q+KCk6IERhZmZDb21wb3NpdGVQcm9kdWN0TWVtb2l6ZWRTZWxlY3RvcnM8VD4gPT4ge1xuXG4gIGNvbnN0IHtcbiAgICBzZWxlY3RQcm9kdWN0LFxuICB9ID0gZ2V0RGFmZlByb2R1Y3RFbnRpdGllc1NlbGVjdG9yczxUPigpO1xuXG4gIGNvbnN0IHtcbiAgICBzZWxlY3RDb21wb3NpdGVQcm9kdWN0QXBwbGllZE9wdGlvbnNFbnRpdGllcyxcbiAgfSA9IGdldERhZmZDb21wb3NpdGVQcm9kdWN0RW50aXRpZXNTZWxlY3RvcnMoKTtcblxuICBjb25zdCBzZWxlY3RDb21wb3NpdGVQcm9kdWN0UmVxdWlyZWRJdGVtUHJpY2VzRm9yQ29uZmlndXJhdGlvbiA9IGRlZmF1bHRNZW1vaXplKChpZDogRGFmZkNvbXBvc2l0ZVByb2R1Y3RbJ2lkJ10sIGNvbmZpZ3VyYXRpb24/OiBEaWN0aW9uYXJ5PERhZmZDb21wb3NpdGVDb25maWd1cmF0aW9uSXRlbT4pID0+IGNyZWF0ZVNlbGVjdG9yKFxuICAgIHNlbGVjdFByb2R1Y3QoaWQpLFxuICAgIChwcm9kdWN0OiBUKSA9PiB7XG4gICAgICBpZihwcm9kdWN0LnR5cGUgIT09IERhZmZQcm9kdWN0VHlwZUVudW0uQ29tcG9zaXRlKSB7XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGFwcGxpZWRPcHRpb25zID0gY29uZmlndXJhdGlvbiA/IGdldEFwcGxpZWRPcHRpb25zRm9yQ29uZmlndXJhdGlvbig8RGFmZkNvbXBvc2l0ZVByb2R1Y3Q+PGFueT5wcm9kdWN0LCBjb25maWd1cmF0aW9uKSA6IHt9O1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgbWluUHJpY2U6IGdldE1pblByaWNlc0ZvckNvbmZpZ3VyYXRpb24oPERhZmZDb21wb3NpdGVQcm9kdWN0Pjxhbnk+cHJvZHVjdCwgYXBwbGllZE9wdGlvbnMpLFxuICAgICAgICBtYXhQcmljZTogZ2V0TWF4UHJpY2VzRm9yQ29uZmlndXJhdGlvbig8RGFmZkNvbXBvc2l0ZVByb2R1Y3Q+PGFueT5wcm9kdWN0LCBhcHBsaWVkT3B0aW9ucyksXG4gICAgICB9O1xuICAgIH0sXG4gICkpLm1lbW9pemVkO1xuXG4gIGNvbnN0IHNlbGVjdENvbXBvc2l0ZVByb2R1Y3RPcHRpb25hbEl0ZW1QcmljZXNGb3JDb25maWd1cmF0aW9uID0gZGVmYXVsdE1lbW9pemUoKGlkOiBEYWZmQ29tcG9zaXRlUHJvZHVjdFsnaWQnXSwgY29uZmlndXJhdGlvbj86IERpY3Rpb25hcnk8RGFmZkNvbXBvc2l0ZUNvbmZpZ3VyYXRpb25JdGVtPikgPT4gY3JlYXRlU2VsZWN0b3IoXG4gICAgc2VsZWN0UHJvZHVjdChpZCksXG4gICAgKHByb2R1Y3Q6IFQpID0+IHtcbiAgICAgIGlmKHByb2R1Y3QudHlwZSAhPT0gRGFmZlByb2R1Y3RUeXBlRW51bS5Db21wb3NpdGUpIHtcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgIH1cblxuICAgICAgY29uc3QgYXBwbGllZE9wdGlvbnMgPSBjb25maWd1cmF0aW9uID8gZ2V0QXBwbGllZE9wdGlvbnNGb3JDb25maWd1cmF0aW9uKDxEYWZmQ29tcG9zaXRlUHJvZHVjdD48YW55PnByb2R1Y3QsIGNvbmZpZ3VyYXRpb24pIDoge307XG4gICAgICByZXR1cm4ge1xuICAgICAgICBtaW5QcmljZTogZ2V0TWluUHJpY2VzRm9yQ29uZmlndXJhdGlvbig8RGFmZkNvbXBvc2l0ZVByb2R1Y3Q+PGFueT5wcm9kdWN0LCBhcHBsaWVkT3B0aW9ucyksXG4gICAgICAgIG1heFByaWNlOiBnZXRNYXhQcmljZXNGb3JDb25maWd1cmF0aW9uSW5jbHVkaW5nT3B0aW9uYWxJdGVtcyg8RGFmZkNvbXBvc2l0ZVByb2R1Y3Q+PGFueT5wcm9kdWN0LCBhcHBsaWVkT3B0aW9ucyksXG4gICAgICB9O1xuICAgIH0sXG4gICkpLm1lbW9pemVkO1xuXG4gIGNvbnN0IHNlbGVjdENvbXBvc2l0ZVByb2R1Y3RQcmljZXNBc0N1cnJlbnRseUNvbmZpZ3VyZWQgPSBkZWZhdWx0TWVtb2l6ZSgoaWQ6IFRbJ2lkJ10pID0+IGNyZWF0ZVNlbGVjdG9yPERhZmZDb21wb3NpdGVQcm9kdWN0U3RhdGVSb290U2xpY2U8VD4sIFtULCBFbnRpdHlTdGF0ZTxEYWZmQ29tcG9zaXRlUHJvZHVjdEVudGl0eT5bJ2VudGl0aWVzJ11dLCBEYWZmUHJpY2VSYW5nZT4oXG4gICAgc2VsZWN0UHJvZHVjdChpZCksXG4gICAgc2VsZWN0Q29tcG9zaXRlUHJvZHVjdEFwcGxpZWRPcHRpb25zRW50aXRpZXMsXG4gICAgKHByb2R1Y3Q6IFQsIGFwcGxpZWRPcHRpb25zRW50aXRpZXMpID0+XG4gICAgICBzZWxlY3RDb21wb3NpdGVQcm9kdWN0UmVxdWlyZWRJdGVtUHJpY2VzRm9yQ29uZmlndXJhdGlvbihpZCwgYXBwbGllZE9wdGlvbnNFbnRpdGllc1tpZF0/Lml0ZW1zIHx8IG51bGwpLnByb2plY3Rvcihwcm9kdWN0KSxcbiAgKSkubWVtb2l6ZWQ7XG5cbiAgY29uc3Qgc2VsZWN0Q29tcG9zaXRlUHJvZHVjdERpc2NvdW50QW1vdW50ID0gZGVmYXVsdE1lbW9pemUoKGlkOiBEYWZmQ29tcG9zaXRlUHJvZHVjdFsnaWQnXSkgPT4gY3JlYXRlU2VsZWN0b3I8RGFmZkNvbXBvc2l0ZVByb2R1Y3RTdGF0ZVJvb3RTbGljZTxUPiwgW1QsIEVudGl0eVN0YXRlPERhZmZDb21wb3NpdGVQcm9kdWN0RW50aXR5PlsnZW50aXRpZXMnXV0sIG51bWJlcj4oXG4gICAgc2VsZWN0UHJvZHVjdChpZCksXG4gICAgc2VsZWN0Q29tcG9zaXRlUHJvZHVjdEFwcGxpZWRPcHRpb25zRW50aXRpZXMsXG4gICAgKHByb2R1Y3Q6IFQsIGFwcGxpZWRPcHRpb25zRW50aXRpZXMpID0+IHtcbiAgICAgIGlmKHByb2R1Y3QudHlwZSAhPT0gRGFmZlByb2R1Y3RUeXBlRW51bS5Db21wb3NpdGUpIHtcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgIH1cbiAgICAgIGNvbnN0IGFwcGxpZWRDb25maWd1cmF0aW9uSXRlbSA9IGFwcGxpZWRPcHRpb25zRW50aXRpZXNbcHJvZHVjdC5pZF0uaXRlbXM7XG4gICAgICBpZigoPERhZmZDb21wb3NpdGVQcm9kdWN0Pjxhbnk+cHJvZHVjdCkuaXRlbXMuZmlsdGVyKGl0ZW0gPT4gaXRlbS5yZXF1aXJlZCAmJiBhcHBsaWVkQ29uZmlndXJhdGlvbkl0ZW1baXRlbS5pZF0udmFsdWUgPT09IG51bGwpLmxlbmd0aCA+IDApIHtcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgIH1cbiAgICAgIGNvbnN0IGFwcGxpZWRPcHRpb25zID0gZ2V0QXBwbGllZE9wdGlvbnNGb3JDb25maWd1cmF0aW9uKCg8RGFmZkNvbXBvc2l0ZVByb2R1Y3Q+PGFueT5wcm9kdWN0KSwgYXBwbGllZENvbmZpZ3VyYXRpb25JdGVtKTtcblxuICAgICAgcmV0dXJuICg8RGFmZkNvbXBvc2l0ZVByb2R1Y3Q+PGFueT5wcm9kdWN0KS5pdGVtcy5yZWR1Y2UoKGFjYywgaXRlbSkgPT5cbiAgICAgICAgYXBwbGllZE9wdGlvbnNbaXRlbS5pZF0/LmRpc2NvdW50Py5hbW91bnQgPyBkYWZmQWRkKGFjYywgZGFmZk11bHRpcGx5KGFwcGxpZWRPcHRpb25zW2l0ZW0uaWRdLmRpc2NvdW50LmFtb3VudCwgYXBwbGllZE9wdGlvbnNbaXRlbS5pZF0ucXVhbnRpdHkpKSA6IGFjYyxcbiAgICAgIHByb2R1Y3QuZGlzY291bnQuYW1vdW50KTtcbiAgICB9LFxuICApKS5tZW1vaXplZDtcblxuICBjb25zdCBzZWxlY3RDb21wb3NpdGVQcm9kdWN0RGlzY291bnRQZXJjZW50ID0gZGVmYXVsdE1lbW9pemUoKGlkOiBEYWZmQ29tcG9zaXRlUHJvZHVjdFsnaWQnXSkgPT4gY3JlYXRlU2VsZWN0b3I8RGFmZkNvbXBvc2l0ZVByb2R1Y3RTdGF0ZVJvb3RTbGljZTxUPiwgW1QsIEVudGl0eVN0YXRlPERhZmZDb21wb3NpdGVQcm9kdWN0RW50aXR5PlsnZW50aXRpZXMnXV0sIG51bWJlcj4oXG4gICAgc2VsZWN0UHJvZHVjdChpZCksXG4gICAgc2VsZWN0Q29tcG9zaXRlUHJvZHVjdEFwcGxpZWRPcHRpb25zRW50aXRpZXMsXG4gICAgKHByb2R1Y3Q6IFQsIGFwcGxpZWRPcHRpb25zRW50aXRpZXMpID0+IHtcbiAgICAgIGlmKHByb2R1Y3QudHlwZSAhPT0gRGFmZlByb2R1Y3RUeXBlRW51bS5Db21wb3NpdGUpIHtcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgIH1cbiAgICAgIGNvbnN0IGFwcGxpZWRPcHRpb25zID0gYXBwbGllZE9wdGlvbnNFbnRpdGllc1twcm9kdWN0LmlkXS5pdGVtcztcbiAgICAgIGlmKCg8RGFmZkNvbXBvc2l0ZVByb2R1Y3Q+PGFueT5wcm9kdWN0KS5pdGVtcy5maWx0ZXIoaXRlbSA9PiBpdGVtLnJlcXVpcmVkICYmIGFwcGxpZWRPcHRpb25zW2l0ZW0uaWRdLnZhbHVlID09PSBudWxsKS5sZW5ndGggPiAwKSB7XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHByaWNlcyA9IGdldE1pblByaWNlc0ZvckNvbmZpZ3VyYXRpb24oXG4gICAgICAgICg8RGFmZkNvbXBvc2l0ZVByb2R1Y3Q+PGFueT5wcm9kdWN0KSxcbiAgICAgICAgZ2V0QXBwbGllZE9wdGlvbnNGb3JDb25maWd1cmF0aW9uKCg8RGFmZkNvbXBvc2l0ZVByb2R1Y3Q+PGFueT5wcm9kdWN0KSwgYXBwbGllZE9wdGlvbnMpLFxuICAgICAgKTtcblxuICAgICAgcmV0dXJuIGRhZmZNdWx0aXBseShcbiAgICAgICAgZGFmZkRpdmlkZShcbiAgICAgICAgICBkYWZmU3VidHJhY3QocHJpY2VzLm9yaWdpbmFsUHJpY2UsIHByaWNlcy5kaXNjb3VudGVkUHJpY2UpLFxuICAgICAgICAgIHByaWNlcy5vcmlnaW5hbFByaWNlLFxuICAgICAgICApLFxuICAgICAgICAxMDAsXG4gICAgICApO1xuICAgIH0sXG4gICkpLm1lbW9pemVkO1xuXG4gIHJldHVybiB7XG4gICAgc2VsZWN0Q29tcG9zaXRlUHJvZHVjdFJlcXVpcmVkSXRlbVByaWNlc0ZvckNvbmZpZ3VyYXRpb24sXG4gICAgc2VsZWN0Q29tcG9zaXRlUHJvZHVjdE9wdGlvbmFsSXRlbVByaWNlc0ZvckNvbmZpZ3VyYXRpb24sXG4gICAgc2VsZWN0Q29tcG9zaXRlUHJvZHVjdFByaWNlc0FzQ3VycmVudGx5Q29uZmlndXJlZCxcbiAgICBzZWxlY3RDb21wb3NpdGVQcm9kdWN0RGlzY291bnRBbW91bnQsXG4gICAgc2VsZWN0Q29tcG9zaXRlUHJvZHVjdERpc2NvdW50UGVyY2VudCxcbiAgfTtcbn07XG5cbi8qKlxuICogQSBmdW5jdGlvbiB0aGF0IHJldHVybnMgYWxsIHNlbGVjdG9ycyByZWxhdGVkIHRvIHRoZSBjb21wb3NpdGUgcHJvZHVjdCBmZWF0dXJlLlxuICpcbiAqIFJldHVybnMge0BsaW5rIERhZmZDb21wb3NpdGVQcm9kdWN0TWVtb2l6ZWRTZWxlY3RvcnN9LlxuICovXG5leHBvcnQgY29uc3QgZ2V0RGFmZkNvbXBvc2l0ZVByb2R1Y3RQcmljZVNlbGVjdG9ycyA9ICgoKSA9PiB7XG4gIGxldCBjYWNoZTtcbiAgcmV0dXJuIDxUIGV4dGVuZHMgRGFmZlByb2R1Y3QgPSBEYWZmUHJvZHVjdD4oKTogRGFmZkNvbXBvc2l0ZVByb2R1Y3RNZW1vaXplZFNlbGVjdG9yczxUPiA9PiBjYWNoZSA9IGNhY2hlXG4gICAgPyBjYWNoZVxuICAgIDogY3JlYXRlQ29tcG9zaXRlUHJvZHVjdFNlbGVjdG9yczxUPigpO1xufSkoKTtcblxuLyoqXG4gKiBUaGUgbWluaW11bSBwcmljZSBvZiBhbiBpdGVtIGlzIHplcm8gaWYgdGhlIGl0ZW0gaXMgb3B0aW9uYWwuXG4gKlxuICogQHBhcmFtIGl0ZW0gRGFmZkNvbXBvc2l0ZVByb2R1Y3RJdGVtXG4gKi9cbmZ1bmN0aW9uIGdldE1pbmltdW1SZXF1aXJlZENvbXBvc2l0ZUl0ZW1QcmljZShpdGVtOiBEYWZmQ29tcG9zaXRlUHJvZHVjdEl0ZW0sIHF0eTogbnVtYmVyKTogbnVtYmVyIHtcbiAgcmV0dXJuIGl0ZW0ucmVxdWlyZWQgPyBkYWZmTXVsdGlwbHkoTWF0aC5taW4oLi4uaXRlbS5vcHRpb25zLm1hcChvcHRpb24gPT4gb3B0aW9uLnByaWNlKSksIHF0eSkgOiAwO1xufVxuXG4vKipcbiAqIFRoZSBtYXhpbXVtIHByaWNlIGZvciBhbiBpdGVtIGlzIHplcm8gaWYgdGhlIGl0ZW0gaXMgb3B0aW9uYWwuXG4gKlxuICogQHBhcmFtIGl0ZW0gRGFmZkNvbXBvc2l0ZVByb2R1Y3RJdGVtXG4gKi9cbmZ1bmN0aW9uIGdldE1heGltdW1SZXF1aXJlZENvbXBvc2l0ZUl0ZW1QcmljZShpdGVtOiBEYWZmQ29tcG9zaXRlUHJvZHVjdEl0ZW0sIHF0eTogbnVtYmVyKTogbnVtYmVyIHtcbiAgcmV0dXJuIGl0ZW0ucmVxdWlyZWQgPyBkYWZmTXVsdGlwbHkoTWF0aC5tYXgoLi4uaXRlbS5vcHRpb25zLm1hcChvcHRpb24gPT4gb3B0aW9uLnByaWNlKSksIHF0eSkgOiAwO1xufVxuXG4vKipcbiAqIFRoZSBtaW5pbXVtIGRpc2NvdW50ZWQgcHJpY2Ugb2YgYW4gaXRlbSBpcyB6ZXJvIGlmIHRoZSBpdGVtIGlzIG9wdGlvbmFsLlxuICpcbiAqIEBwYXJhbSBpdGVtIERhZmZDb21wb3NpdGVQcm9kdWN0SXRlbVxuICovXG5mdW5jdGlvbiBnZXRNaW5pbXVtUmVxdWlyZWRDb21wb3NpdGVJdGVtRGlzY291bnRlZFByaWNlKGl0ZW06IERhZmZDb21wb3NpdGVQcm9kdWN0SXRlbSwgcXR5OiBudW1iZXIpOiBudW1iZXIge1xuICByZXR1cm4gaXRlbS5yZXF1aXJlZCA/IGRhZmZNdWx0aXBseShNYXRoLm1pbiguLi5pdGVtLm9wdGlvbnMubWFwKGdldERpc2NvdW50ZWRQcmljZSkpLCBxdHkpIDogMDtcbn1cbi8qKlxuICogVGhlIG1heGltdW0gZGlzY291bnRlZCBwcmljZSBvZiBhbiBpdGVtIGlzIHplcm8gaWYgdGhlIGl0ZW0gaXMgb3B0aW9uYWwuXG4gKlxuICogQHBhcmFtIGl0ZW0gRGFmZkNvbXBvc2l0ZVByb2R1Y3RJdGVtXG4gKi9cbmZ1bmN0aW9uIGdldE1heGltdW1SZXF1aXJlZENvbXBvc2l0ZUl0ZW1EaXNjb3VudGVkUHJpY2UoaXRlbTogRGFmZkNvbXBvc2l0ZVByb2R1Y3RJdGVtLCBxdHk6IG51bWJlcik6IG51bWJlciB7XG4gIHJldHVybiBpdGVtLnJlcXVpcmVkID8gZGFmZk11bHRpcGx5KE1hdGgubWF4KC4uLml0ZW0ub3B0aW9ucy5tYXAoZ2V0RGlzY291bnRlZFByaWNlKSksIHF0eSkgOiAwO1xufVxuXG4vKipcbiAqIEdldHMgdGhlIG1pbmltdW0gcHJpY2VzIG9mIGEgY29tcG9zaXRlIHByb2R1Y3QgZm9yIHRoZSBjb25maWd1cmF0aW9uIHByb3ZpZGVkIGV4Y2x1ZGluZyB1bnNlbGVjdGVkLCBvcHRpb25hbCBpdGVtIHByaWNlcy5cbiAqXG4gKiBAcGFyYW0gcHJvZHVjdCBhIERhZmZDb21wb3NpdGVQcm9kdWN0XG4gKiBAcGFyYW0gYXBwbGllZE9wdGlvbnMgYSBEaWN0aW9uYXJ5PERhZmZDb21wb3NpdGVQcm9kdWN0SXRlbU9wdGlvbj4gdGhhdCBkZXRlcm1pbmVzIHRoZSBjdXJyZW50IGNvbmZpZ3VyYXRpb24gb2YgdGhlIGNvbXBvc2l0ZSBwcm9kdWN0LlxuICovXG5mdW5jdGlvbiBnZXRNaW5QcmljZXNGb3JDb25maWd1cmF0aW9uKHByb2R1Y3Q6IERhZmZDb21wb3NpdGVQcm9kdWN0LCBhcHBsaWVkT3B0aW9uczogRGljdGlvbmFyeTxEYWZmQ29tcG9zaXRlUHJvZHVjdEl0ZW1PcHRpb24+KTogRGFmZlByb2R1Y3RQcmljZXMge1xuICByZXR1cm4ge1xuICAgIGRpc2NvdW50ZWRQcmljZTogcHJvZHVjdC5pdGVtcy5yZWR1Y2UoKGFjYywgaXRlbSkgPT4gZGFmZkFkZChcbiAgICAgIGFjYyxcbiAgICAgIGFwcGxpZWRPcHRpb25IYXNJZChhcHBsaWVkT3B0aW9uc1tpdGVtLmlkXSkgP1xuICAgICAgICBkYWZmTXVsdGlwbHkoZ2V0RGlzY291bnRlZFByaWNlKGFwcGxpZWRPcHRpb25zW2l0ZW0uaWRdKSwgYXBwbGllZE9wdGlvbnNbaXRlbS5pZF0ucXVhbnRpdHkpIDpcbiAgICAgICAgZ2V0TWluaW11bVJlcXVpcmVkQ29tcG9zaXRlSXRlbURpc2NvdW50ZWRQcmljZShpdGVtLCBnZXRPcHRpb25RdHkoYXBwbGllZE9wdGlvbnNbaXRlbS5pZF0pKSxcbiAgICApLCBnZXREaXNjb3VudGVkUHJpY2UocHJvZHVjdCkpLFxuICAgIGRpc2NvdW50OiB7IGFtb3VudDogbnVsbCwgcGVyY2VudDogbnVsbCB9LFxuICAgIG9yaWdpbmFsUHJpY2U6IHByb2R1Y3QuaXRlbXMucmVkdWNlKChhY2MsIGl0ZW0pID0+IGRhZmZBZGQoXG4gICAgICBhY2MsXG4gICAgICBhcHBsaWVkT3B0aW9uSGFzSWQoYXBwbGllZE9wdGlvbnNbaXRlbS5pZF0pID9cbiAgICAgICAgZGFmZk11bHRpcGx5KGFwcGxpZWRPcHRpb25zW2l0ZW0uaWRdLnByaWNlLCBhcHBsaWVkT3B0aW9uc1tpdGVtLmlkXS5xdWFudGl0eSkgOlxuICAgICAgICBnZXRNaW5pbXVtUmVxdWlyZWRDb21wb3NpdGVJdGVtUHJpY2UoaXRlbSwgZ2V0T3B0aW9uUXR5KGFwcGxpZWRPcHRpb25zW2l0ZW0uaWRdKSksXG4gICAgKSwgcHJvZHVjdC5wcmljZSksXG4gIH07XG59XG5cbi8qKlxuICogR2V0cyB0aGUgbWF4aW11bSBwcmljZXMgb2YgYSBjb21wb3NpdGUgcHJvZHVjdCBmb3IgdGhlIGNvbmZpZ3VyYXRpb24gcHJvdmlkZWQgZXhjbHVkaW5nIHVuc2VsZWN0ZWQsIG9wdGlvbmFsIGl0ZW0gcHJpY2VzLlxuICpcbiAqIEBwYXJhbSBwcm9kdWN0IGEgRGFmZkNvbXBvc2l0ZVByb2R1Y3RcbiAqIEBwYXJhbSBhcHBsaWVkT3B0aW9ucyBhIERpY3Rpb25hcnk8RGFmZkNvbXBvc2l0ZVByb2R1Y3RJdGVtT3B0aW9uPiB0aGF0IGRldGVybWluZXMgdGhlIGN1cnJlbnQgY29uZmlndXJhdGlvbiBvZiB0aGUgY29tcG9zaXRlIHByb2R1Y3QuXG4gKi9cbmZ1bmN0aW9uIGdldE1heFByaWNlc0ZvckNvbmZpZ3VyYXRpb24ocHJvZHVjdDogRGFmZkNvbXBvc2l0ZVByb2R1Y3QsIGFwcGxpZWRPcHRpb25zOiBEaWN0aW9uYXJ5PERhZmZDb21wb3NpdGVQcm9kdWN0SXRlbU9wdGlvbj4pOiBEYWZmUHJvZHVjdFByaWNlcyB7XG4gIHJldHVybiB7XG4gICAgZGlzY291bnRlZFByaWNlOiBwcm9kdWN0Lml0ZW1zLnJlZHVjZSgoYWNjLCBpdGVtKSA9PiBkYWZmQWRkKFxuICAgICAgYWNjLFxuICAgICAgYXBwbGllZE9wdGlvbkhhc0lkKGFwcGxpZWRPcHRpb25zW2l0ZW0uaWRdKSA/XG4gICAgICAgIGRhZmZNdWx0aXBseShnZXREaXNjb3VudGVkUHJpY2UoYXBwbGllZE9wdGlvbnNbaXRlbS5pZF0pLCBhcHBsaWVkT3B0aW9uc1tpdGVtLmlkXS5xdWFudGl0eSkgOlxuICAgICAgICBnZXRNYXhpbXVtUmVxdWlyZWRDb21wb3NpdGVJdGVtRGlzY291bnRlZFByaWNlKGl0ZW0sIGdldE9wdGlvblF0eShhcHBsaWVkT3B0aW9uc1tpdGVtLmlkXSkpLFxuICAgICksIGdldERpc2NvdW50ZWRQcmljZShwcm9kdWN0KSksXG4gICAgZGlzY291bnQ6IHsgYW1vdW50OiBudWxsLCBwZXJjZW50OiBudWxsIH0sXG4gICAgb3JpZ2luYWxQcmljZTogcHJvZHVjdC5pdGVtcy5yZWR1Y2UoKGFjYywgaXRlbSkgPT4gZGFmZkFkZChcbiAgICAgIGFjYyxcbiAgICAgIGFwcGxpZWRPcHRpb25IYXNJZChhcHBsaWVkT3B0aW9uc1tpdGVtLmlkXSkgP1xuICAgICAgICBkYWZmTXVsdGlwbHkoYXBwbGllZE9wdGlvbnNbaXRlbS5pZF0ucHJpY2UsIGFwcGxpZWRPcHRpb25zW2l0ZW0uaWRdLnF1YW50aXR5KSA6XG4gICAgICAgIGdldE1heGltdW1SZXF1aXJlZENvbXBvc2l0ZUl0ZW1QcmljZShpdGVtLCBnZXRPcHRpb25RdHkoYXBwbGllZE9wdGlvbnNbaXRlbS5pZF0pKSxcbiAgICApLCBwcm9kdWN0LnByaWNlKSxcbiAgfTtcbn1cblxuZnVuY3Rpb24gZ2V0RGlzY291bnRlZFByaWNlKHByb2R1Y3Q6IERhZmZQcm9kdWN0KTogbnVtYmVyIHtcbiAgcmV0dXJuIHByb2R1Y3QuZGlzY291bnQgPyBkYWZmU3VidHJhY3QocHJvZHVjdC5wcmljZSwgcHJvZHVjdC5kaXNjb3VudC5hbW91bnQpIDogcHJvZHVjdC5wcmljZTtcbn1cblxuLyoqXG4gKiBHZXRzIHRoZSBtYXhpbXVtIHByaWNlcyBvZiBhIGNvbXBvc2l0ZSBwcm9kdWN0IGluY2x1ZGluZyBvcHRpb25hbCBpdGVtIHByaWNlcy5cbiAqXG4gKiBAcGFyYW0gcHJvZHVjdCBhIERhZmZDb21wb3NpdGVQcm9kdWN0XG4gKi9cbmZ1bmN0aW9uIGdldE1heFByaWNlc0ZvckNvbmZpZ3VyYXRpb25JbmNsdWRpbmdPcHRpb25hbEl0ZW1zKHByb2R1Y3Q6IERhZmZDb21wb3NpdGVQcm9kdWN0LCBhcHBsaWVkT3B0aW9uczogRGljdGlvbmFyeTxEYWZmQ29tcG9zaXRlUHJvZHVjdEl0ZW1PcHRpb24+KTogRGFmZlByb2R1Y3RQcmljZXMge1xuICByZXR1cm4ge1xuICAgIGRpc2NvdW50ZWRQcmljZTogcHJvZHVjdC5pdGVtcy5yZWR1Y2UoKGFjYywgaXRlbSkgPT4gZGFmZkFkZChcbiAgICAgIGFjYyxcbiAgICAgIGFwcGxpZWRPcHRpb25IYXNJZChhcHBsaWVkT3B0aW9uc1tpdGVtLmlkXSkgP1xuICAgICAgICBkYWZmTXVsdGlwbHkoZ2V0RGlzY291bnRlZFByaWNlKGFwcGxpZWRPcHRpb25zW2l0ZW0uaWRdKSwgYXBwbGllZE9wdGlvbnNbaXRlbS5pZF0ucXVhbnRpdHkpIDpcbiAgICAgICAgYXBwbGllZE9wdGlvbkhhc1F0eShhcHBsaWVkT3B0aW9uc1tpdGVtLmlkXSkgP1xuICAgICAgICAgIGRhZmZNdWx0aXBseShNYXRoLm1heCguLi5pdGVtLm9wdGlvbnMubWFwKGdldERpc2NvdW50ZWRQcmljZSkpLCBhcHBsaWVkT3B0aW9uc1tpdGVtLmlkXS5xdWFudGl0eSkgOlxuICAgICAgICAgIE1hdGgubWF4KC4uLml0ZW0ub3B0aW9ucy5tYXAoZ2V0RGlzY291bnRlZFByaWNlKSksXG4gICAgKSwgZ2V0RGlzY291bnRlZFByaWNlKHByb2R1Y3QpKSxcbiAgICBkaXNjb3VudDogeyBhbW91bnQ6IG51bGwsIHBlcmNlbnQ6IG51bGwgfSxcbiAgICBvcmlnaW5hbFByaWNlOiBwcm9kdWN0Lml0ZW1zLnJlZHVjZSgoYWNjLCBpdGVtKSA9PiBkYWZmQWRkKFxuICAgICAgYWNjLFxuICAgICAgYXBwbGllZE9wdGlvbkhhc0lkKGFwcGxpZWRPcHRpb25zW2l0ZW0uaWRdKSA/XG4gICAgICAgIGRhZmZNdWx0aXBseShhcHBsaWVkT3B0aW9uc1tpdGVtLmlkXS5wcmljZSwgYXBwbGllZE9wdGlvbnNbaXRlbS5pZF0ucXVhbnRpdHkpIDpcbiAgICAgICAgYXBwbGllZE9wdGlvbkhhc1F0eShhcHBsaWVkT3B0aW9uc1tpdGVtLmlkXSkgP1xuICAgICAgICAgIGRhZmZNdWx0aXBseShNYXRoLm1heCguLi5pdGVtLm9wdGlvbnMubWFwKG9wdGlvbiA9PiBvcHRpb24ucHJpY2UpKSwgYXBwbGllZE9wdGlvbnNbaXRlbS5pZF0ucXVhbnRpdHkpIDpcbiAgICAgICAgICBNYXRoLm1heCguLi5pdGVtLm9wdGlvbnMubWFwKG9wdGlvbiA9PiBvcHRpb24ucHJpY2UpKSxcbiAgICApLCBwcm9kdWN0LnByaWNlKSxcbiAgfTtcbn1cblxuLyoqXG4gKiBUYWtlcyBhIHByb2R1Y3QgYW5kIGEgc2V0IG9mIG9wdGlvbiBjb25maWd1cmF0aW9ucyBhbmQgY29udmVydCBpdCBpbnRvIGEgZGljdGlvbmFyeSBvZiB0aGUgZnVsbCBvcHRpb24gb2JqZWN0cy5cbiAqXG4gKiBAcGFyYW0gcHJvZHVjdCBhIERhZmZDb21wb3NpdGVQcm9kdWN0XG4gKiBAcGFyYW0gY29uZmlndXJhdGlvbiBhIERpY3Rpb25hcnk8RGFmZkNvbXBvc2l0ZUNvbmZpZ3VyYXRpb25JdGVtPiB1c2VkIHRvIGJ1aWxkIHRoZSBhcHBsaWVkT3B0aW9ucyBvYmplY3QuXG4gKi9cbmZ1bmN0aW9uIGdldEFwcGxpZWRPcHRpb25zRm9yQ29uZmlndXJhdGlvbihwcm9kdWN0OiBEYWZmQ29tcG9zaXRlUHJvZHVjdCwgY29uZmlndXJhdGlvbjogRGljdGlvbmFyeTxEYWZmQ29tcG9zaXRlQ29uZmlndXJhdGlvbkl0ZW0+KTogRGljdGlvbmFyeTxEYWZmQ29tcG9zaXRlUHJvZHVjdEl0ZW1PcHRpb24+IHtcbiAgcmV0dXJuIHByb2R1Y3QuaXRlbXMucmVkdWNlKChhY2MsIGl0ZW0pID0+ICh7XG4gICAgLi4uYWNjLFxuICAgIFtpdGVtLmlkXTogY29uZmlndXJhdGlvbltpdGVtLmlkXSA/IHtcbiAgICAgIC4uLml0ZW0ub3B0aW9ucy5maW5kKG9wdGlvbiA9PiBvcHRpb24uaWQgPT09IGNvbmZpZ3VyYXRpb25baXRlbS5pZF0udmFsdWUpLFxuICAgICAgcXVhbnRpdHk6IChjb25maWd1cmF0aW9uW2l0ZW0uaWRdLnF0eSA9PT0gbnVsbCB8fCBjb25maWd1cmF0aW9uW2l0ZW0uaWRdLnF0eSA9PT0gdW5kZWZpbmVkKSA/IDEgOiBjb25maWd1cmF0aW9uW2l0ZW0uaWRdLnF0eSxcbiAgICB9IDogbnVsbCxcbiAgfSksIHt9KTtcbn1cblxuZnVuY3Rpb24gYXBwbGllZE9wdGlvbkhhc0lkKGFwcGxpZWRPcHRpb246IERhZmZDb21wb3NpdGVQcm9kdWN0SXRlbU9wdGlvbik6IGJvb2xlYW4ge1xuICByZXR1cm4gISFhcHBsaWVkT3B0aW9uPy5pZDtcbn1cblxuZnVuY3Rpb24gZ2V0T3B0aW9uUXR5KGFwcGxpZWRPcHRpb246IERhZmZDb21wb3NpdGVQcm9kdWN0SXRlbU9wdGlvbik6IG51bWJlciB7XG4gIHJldHVybiBhcHBsaWVkT3B0aW9uSGFzUXR5KGFwcGxpZWRPcHRpb24pID8gYXBwbGllZE9wdGlvbi5xdWFudGl0eSA6IDE7XG59XG5cbmZ1bmN0aW9uIGFwcGxpZWRPcHRpb25IYXNRdHkoYXBwbGllZE9wdGlvbjogRGFmZkNvbXBvc2l0ZVByb2R1Y3RJdGVtT3B0aW9uKTogYm9vbGVhbiB7XG4gIHJldHVybiBhcHBsaWVkT3B0aW9uPy5xdWFudGl0eSAhPT0gbnVsbCAmJiBhcHBsaWVkT3B0aW9uPy5xdWFudGl0eSAhPT0gdW5kZWZpbmVkO1xufVxuIl19
@@ -49,4 +49,4 @@ export const getDaffCompositeProductEntitiesSelectors = (() => {
49
49
  ? cache
50
50
  : createCompositeProductAppliedOptionsEntitiesSelectors();
51
51
  })();
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9zaXRlLXByb2R1Y3QtZW50aXRpZXMuc2VsZWN0b3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wcm9kdWN0LWNvbXBvc2l0ZS9zdGF0ZS9zcmMvc2VsZWN0b3JzL2NvbXBvc2l0ZS1wcm9kdWN0LWVudGl0aWVzL2NvbXBvc2l0ZS1wcm9kdWN0LWVudGl0aWVzLnNlbGVjdG9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxPQUFPLEVBQ0wsY0FBYyxFQUVkLGNBQWMsR0FDZixNQUFNLGFBQWEsQ0FBQztBQUVyQixPQUFPLEVBRUwsbUJBQW1CLEdBQ3BCLE1BQU0sbUJBQW1CLENBQUM7QUFNM0IsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFMUUsT0FBTyxFQUFFLGlEQUFpRCxFQUFFLE1BQU0sc0ZBQXNGLENBQUM7QUFNekosT0FBTyxFQUFFLHNDQUFzQyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFxQzdFLE1BQU0scURBQXFELEdBQUcsR0FBNEUsRUFBRTtJQUMxSSxNQUFNLEVBQ0osMkJBQTJCLEdBQzVCLEdBQUcsc0NBQXNDLEVBQUUsQ0FBQztJQUM3QyxNQUFNLEVBQ0osYUFBYSxHQUNkLEdBQUcsK0JBQStCLEVBQUssQ0FBQztJQUN6QyxNQUFNLGdCQUFnQixHQUFHLGlEQUFpRCxFQUFFLENBQUMsWUFBWSxFQUFFLENBQUM7SUFFNUYsTUFBTSxpREFBaUQsR0FBRyxjQUFjLENBQ3RFLDJCQUEyQixFQUMzQixDQUFDLEtBQXdDLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyx1QkFBdUIsQ0FDNUUsQ0FBQztJQUVGLE1BQU0seUJBQXlCLEdBQUcsY0FBYyxDQUM5QyxpREFBaUQsRUFDakQsZ0JBQWdCLENBQUMsU0FBUyxDQUMzQixDQUFDO0lBRUYsTUFBTSw0Q0FBNEMsR0FBRyxjQUFjLENBQ2pFLGlEQUFpRCxFQUNqRCxnQkFBZ0IsQ0FBQyxjQUFjLENBQ2hDLENBQUM7SUFFRixNQUFNLDJCQUEyQixHQUFHLGNBQWMsQ0FDaEQsaURBQWlELEVBQ2pELGdCQUFnQixDQUFDLFdBQVcsQ0FDN0IsQ0FBQztJQUVGLE1BQU0sb0NBQW9DLEdBQUcsY0FBYyxDQUFDLENBQUMsRUFBVyxFQUFFLEVBQUUsQ0FBQyxjQUFjLENBQ3pGLGFBQWEsQ0FBQyxFQUFFLENBQUMsRUFDakIsaURBQWlELEVBQ2pELENBQUMsT0FBVSxFQUFFLGNBQWMsRUFBRSxFQUFFO1FBQzdCLElBQUcsT0FBTyxDQUFDLElBQUksS0FBSyxtQkFBbUIsQ0FBQyxTQUFTLEVBQUU7WUFDakQsT0FBTyxTQUFTLENBQUM7U0FDbEI7UUFFRCxPQUFtQyxPQUFRLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDdkUsR0FBRyxHQUFHO1lBQ04sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEVBQUUsY0FBYyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO2dCQUNwRSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLEVBQUUsS0FBSyxjQUFjLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQztnQkFDdEcsUUFBUSxFQUFFLGNBQWMsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRzthQUNqRSxDQUFDLENBQUMsQ0FBQyxJQUFJO1NBQ1QsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ1YsQ0FBQyxDQUNGLENBQUMsQ0FBQyxRQUFRLENBQUM7SUFFWixNQUFNLG9DQUFvQyxHQUFHLGNBQWMsQ0FBQyxDQUFDLEVBQVcsRUFBRSxPQUF1QyxFQUFFLEVBQUUsQ0FBQyxjQUFjLENBQ2xJLGFBQWEsQ0FBQyxFQUFFLENBQUMsRUFDakIsQ0FBQyxPQUFVLEVBQUUsRUFBRTtRQUNiLElBQUcsT0FBTyxDQUFDLElBQUksS0FBSyxtQkFBbUIsQ0FBQyxTQUFTLEVBQUU7WUFDakQsT0FBTyxTQUFTLENBQUM7U0FDbEI7UUFFRCxNQUFNLFdBQVcsR0FBK0IsT0FBUSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLE9BQU8sQ0FBQyxDQUFDO1FBRWpHLE9BQU8sV0FBVyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDbkQsQ0FBQyxDQUNGLENBQUMsQ0FBQyxRQUFRLENBQUM7SUFHWixPQUFPO1FBQ0wsaURBQWlEO1FBQ2pELHlCQUF5QjtRQUN6Qiw0Q0FBNEM7UUFDNUMsMkJBQTJCO1FBQzNCLG9DQUFvQztRQUNwQyxvQ0FBb0M7S0FDckMsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLHdDQUF3QyxHQUFHLENBQUMsR0FBRyxFQUFFO0lBQzVELElBQUksS0FBSyxDQUFDO0lBQ1YsT0FBTyxHQUE0RSxFQUFFLENBQUMsS0FBSyxHQUFHLEtBQUs7UUFDakcsQ0FBQyxDQUFDLEtBQUs7UUFDUCxDQUFDLENBQUMscURBQXFELEVBQUssQ0FBQztBQUNqRSxDQUFDLENBQUMsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRW50aXR5U3RhdGUsXG4gIERpY3Rpb25hcnksXG59IGZyb20gJ0BuZ3J4L2VudGl0eSc7XG5pbXBvcnQge1xuICBjcmVhdGVTZWxlY3RvcixcbiAgTWVtb2l6ZWRTZWxlY3RvcixcbiAgZGVmYXVsdE1lbW9pemUsXG59IGZyb20gJ0BuZ3J4L3N0b3JlJztcblxuaW1wb3J0IHtcbiAgRGFmZlByb2R1Y3QsXG4gIERhZmZQcm9kdWN0VHlwZUVudW0sXG59IGZyb20gJ0BkYWZmb2RpbC9wcm9kdWN0JztcbmltcG9ydCB7XG4gIERhZmZDb21wb3NpdGVQcm9kdWN0SXRlbU9wdGlvbixcbiAgRGFmZkNvbXBvc2l0ZVByb2R1Y3RJdGVtLFxuICBEYWZmQ29tcG9zaXRlUHJvZHVjdCxcbn0gZnJvbSAnQGRhZmZvZGlsL3Byb2R1Y3QtY29tcG9zaXRlJztcbmltcG9ydCB7IGdldERhZmZQcm9kdWN0RW50aXRpZXNTZWxlY3RvcnMgfSBmcm9tICdAZGFmZm9kaWwvcHJvZHVjdC9zdGF0ZSc7XG5cbmltcG9ydCB7IGRhZmZDb21wb3NpdGVQcm9kdWN0QXBwbGllZE9wdGlvbnNFbnRpdGllc0FkYXB0ZXIgfSBmcm9tICcuLi8uLi9yZWR1Y2Vycy9jb21wb3NpdGUtcHJvZHVjdC1lbnRpdGllcy9jb21wb3NpdGUtcHJvZHVjdC1lbnRpdGllcy1yZWR1Y2VyLWFkYXB0ZXInO1xuaW1wb3J0IHsgRGFmZkNvbXBvc2l0ZVByb2R1Y3RFbnRpdHkgfSBmcm9tICcuLi8uLi9yZWR1Y2Vycy9jb21wb3NpdGUtcHJvZHVjdC1lbnRpdGllcy9jb21wb3NpdGUtcHJvZHVjdC1lbnRpdHknO1xuaW1wb3J0IHtcbiAgRGFmZkNvbXBvc2l0ZVByb2R1Y3RSZWR1Y2Vyc1N0YXRlLFxuICBEYWZmQ29tcG9zaXRlUHJvZHVjdFN0YXRlUm9vdFNsaWNlLFxufSBmcm9tICcuLi8uLi9yZWR1Y2Vycy9jb21wb3NpdGUtcHJvZHVjdC1yZWR1Y2Vycy1zdGF0ZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgZ2V0RGFmZkNvbXBvc2l0ZVByb2R1Y3RGZWF0dXJlU2VsZWN0b3IgfSBmcm9tICcuLi9mZWF0dXJlLnNlbGVjdG9yJztcblxuLyoqXG4gKiBBbiBpbnRlcmZhY2UgZm9yIHNlbGVjdG9ycyByZWxhdGVkIHRvIHRoZSBjb21wb3NpdGUgcHJvZHVjdCBhcHBsaWVkIG9wdGlvbnMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGFmZkNvbXBvc2l0ZVByb2R1Y3RFbnRpdGllc01lbW9pemVkU2VsZWN0b3JzPFQgZXh0ZW5kcyBEYWZmUHJvZHVjdCA9IERhZmZQcm9kdWN0PiB7XG4gIC8qKlxuICAgKiBUaGUgbmdyeCBlbnRpdGllcyBzdGF0ZSBmb3IgY29tcG9zaXRlIHByb2R1Y3QgYXBwbGllZCBvcHRpb25zLlxuICAgKi9cbiAgc2VsZWN0Q29tcG9zaXRlUHJvZHVjdEFwcGxpZWRPcHRpb25zRW50aXRpZXNTdGF0ZTogTWVtb2l6ZWRTZWxlY3RvcjxEYWZmQ29tcG9zaXRlUHJvZHVjdFN0YXRlUm9vdFNsaWNlPFQ+LCBFbnRpdHlTdGF0ZTxEYWZmQ29tcG9zaXRlUHJvZHVjdEVudGl0eT4+O1xuICAvKipcbiAgICogQSBzZWxlY3RvciBmb3IgYWxsIGNvbXBvc2l0ZSBwcm9kdWN0IGlkcyBpbiBzdGF0ZS5cbiAgICovXG4gIHNlbGVjdENvbXBvc2l0ZVByb2R1Y3RJZHM6IE1lbW9pemVkU2VsZWN0b3I8RGFmZkNvbXBvc2l0ZVByb2R1Y3RTdGF0ZVJvb3RTbGljZTxUPiwgRW50aXR5U3RhdGU8RGFmZkNvbXBvc2l0ZVByb2R1Y3RFbnRpdHk+WydpZHMnXT47XG4gIC8qKlxuICAgKiBUaGUgbmdyeCBlbnRpdGllcyBmb3IgdGhlIGNvbXBvc2l0ZSBwcm9kdWN0IGFwcGxsaWVkIG9wdGlvbnMuXG4gICAqL1xuICBzZWxlY3RDb21wb3NpdGVQcm9kdWN0QXBwbGllZE9wdGlvbnNFbnRpdGllczogTWVtb2l6ZWRTZWxlY3RvcjxEYWZmQ29tcG9zaXRlUHJvZHVjdFN0YXRlUm9vdFNsaWNlPFQ+LCBFbnRpdHlTdGF0ZTxEYWZmQ29tcG9zaXRlUHJvZHVjdEVudGl0eT5bJ2VudGl0aWVzJ10+O1xuICAvKipcbiAgICogVGhlIHRvdGFsIG51bWJlciBvZiBjb21wb3NpdGUgcHJvZHVjdHMgaW4gc3RhdGUuXG4gICAqL1xuICBzZWxlY3RDb21wb3NpdGVQcm9kdWN0VG90YWw6IE1lbW9pemVkU2VsZWN0b3I8RGFmZkNvbXBvc2l0ZVByb2R1Y3RTdGF0ZVJvb3RTbGljZTxUPiwgbnVtYmVyPjtcbiAgLyoqXG4gICAqIFNlbGVjdHMgdGhlIGFwcGxpZWQgb3B0aW9ucyBmb3IgYSBjb21wb3NpdGUgcHJvZHVjdC5cbiAgICpcbiAgICogQHBhcmFtIGlkIHRoZSBpZCBvZiB0aGUgY29tcG9zaXRlIHByb2R1Y3QuXG4gICAqL1xuICBzZWxlY3RDb21wb3NpdGVQcm9kdWN0QXBwbGllZE9wdGlvbnM6IChpZDogVFsnaWQnXSkgPT4gTWVtb2l6ZWRTZWxlY3RvcjxEYWZmQ29tcG9zaXRlUHJvZHVjdFN0YXRlUm9vdFNsaWNlPFQ+LCBEaWN0aW9uYXJ5PERhZmZDb21wb3NpdGVQcm9kdWN0SXRlbU9wdGlvbj4+O1xuICAvKipcbiAgICogU2VsZWN0cyB3aGV0aGVyIHRoZSBwYXJ0aWN1bGFyIGl0ZW0gb2YgYSBjb21wb3NpdGUgcHJvZHVjdCBpcyByZXF1aXJlZCBpbiBvcmRlciBmb3IgdGhlIHByb2R1Y3QgdG8gYmUgdmFsaWQsIGkuZS4gYWRkYWJsZSB0byB0aGUgY2FydC5cbiAgICpcbiAgICogQHBhcmFtIGlkIHRoZSBpZCBvZiB0aGUgY29tcG9zaXRlIHByb2R1Y3QuXG4gICAqIEBwYXJhbSBpdGVtX2lkIHRoZSBpZCBvZiB0aGUgY29tcG9zaXRlIHByb2R1Y3QgaXRlbS5cbiAgICovXG4gIHNlbGVjdElzQ29tcG9zaXRlUHJvZHVjdEl0ZW1SZXF1aXJlZDogKGlkOiBUWydpZCddLCBpdGVtX2lkOiBEYWZmQ29tcG9zaXRlUHJvZHVjdEl0ZW1bJ2lkJ10pID0+IE1lbW9pemVkU2VsZWN0b3I8RGFmZkNvbXBvc2l0ZVByb2R1Y3RTdGF0ZVJvb3RTbGljZTxUPiwgYm9vbGVhbj47XG59XG5cbmNvbnN0IGNyZWF0ZUNvbXBvc2l0ZVByb2R1Y3RBcHBsaWVkT3B0aW9uc0VudGl0aWVzU2VsZWN0b3JzID0gPFQgZXh0ZW5kcyBEYWZmUHJvZHVjdD4oKTogRGFmZkNvbXBvc2l0ZVByb2R1Y3RFbnRpdGllc01lbW9pemVkU2VsZWN0b3JzPFQ+ID0+IHtcbiAgY29uc3Qge1xuICAgIHNlbGVjdENvbXBvc2l0ZVByb2R1Y3RTdGF0ZSxcbiAgfSA9IGdldERhZmZDb21wb3NpdGVQcm9kdWN0RmVhdHVyZVNlbGVjdG9yKCk7XG4gIGNvbnN0IHtcbiAgICBzZWxlY3RQcm9kdWN0LFxuICB9ID0gZ2V0RGFmZlByb2R1Y3RFbnRpdGllc1NlbGVjdG9yczxUPigpO1xuICBjb25zdCBhZGFwdGVyU2VsZWN0b3JzID0gZGFmZkNvbXBvc2l0ZVByb2R1Y3RBcHBsaWVkT3B0aW9uc0VudGl0aWVzQWRhcHRlcigpLmdldFNlbGVjdG9ycygpO1xuXG4gIGNvbnN0IHNlbGVjdENvbXBvc2l0ZVByb2R1Y3RBcHBsaWVkT3B0aW9uc0VudGl0aWVzU3RhdGUgPSBjcmVhdGVTZWxlY3RvcihcbiAgICBzZWxlY3RDb21wb3NpdGVQcm9kdWN0U3RhdGUsXG4gICAgKHN0YXRlOiBEYWZmQ29tcG9zaXRlUHJvZHVjdFJlZHVjZXJzU3RhdGUpID0+IHN0YXRlLmNvbXBvc2l0ZVByb2R1Y3RPcHRpb25zLFxuICApO1xuXG4gIGNvbnN0IHNlbGVjdENvbXBvc2l0ZVByb2R1Y3RJZHMgPSBjcmVhdGVTZWxlY3RvcihcbiAgICBzZWxlY3RDb21wb3NpdGVQcm9kdWN0QXBwbGllZE9wdGlvbnNFbnRpdGllc1N0YXRlLFxuICAgIGFkYXB0ZXJTZWxlY3RvcnMuc2VsZWN0SWRzLFxuICApO1xuXG4gIGNvbnN0IHNlbGVjdENvbXBvc2l0ZVByb2R1Y3RBcHBsaWVkT3B0aW9uc0VudGl0aWVzID0gY3JlYXRlU2VsZWN0b3IoXG4gICAgc2VsZWN0Q29tcG9zaXRlUHJvZHVjdEFwcGxpZWRPcHRpb25zRW50aXRpZXNTdGF0ZSxcbiAgICBhZGFwdGVyU2VsZWN0b3JzLnNlbGVjdEVudGl0aWVzLFxuICApO1xuXG4gIGNvbnN0IHNlbGVjdENvbXBvc2l0ZVByb2R1Y3RUb3RhbCA9IGNyZWF0ZVNlbGVjdG9yKFxuICAgIHNlbGVjdENvbXBvc2l0ZVByb2R1Y3RBcHBsaWVkT3B0aW9uc0VudGl0aWVzU3RhdGUsXG4gICAgYWRhcHRlclNlbGVjdG9ycy5zZWxlY3RUb3RhbCxcbiAgKTtcblxuICBjb25zdCBzZWxlY3RDb21wb3NpdGVQcm9kdWN0QXBwbGllZE9wdGlvbnMgPSBkZWZhdWx0TWVtb2l6ZSgoaWQ6IFRbJ2lkJ10pID0+IGNyZWF0ZVNlbGVjdG9yKFxuICAgIHNlbGVjdFByb2R1Y3QoaWQpLFxuICAgIHNlbGVjdENvbXBvc2l0ZVByb2R1Y3RBcHBsaWVkT3B0aW9uc0VudGl0aWVzU3RhdGUsXG4gICAgKHByb2R1Y3Q6IFQsIGFwcGxpZWRPcHRpb25zKSA9PiB7XG4gICAgICBpZihwcm9kdWN0LnR5cGUgIT09IERhZmZQcm9kdWN0VHlwZUVudW0uQ29tcG9zaXRlKSB7XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiAoPERhZmZDb21wb3NpdGVQcm9kdWN0Pjxhbnk+cHJvZHVjdCkuaXRlbXMucmVkdWNlKChhY2MsIGl0ZW0pID0+ICh7XG4gICAgICAgIC4uLmFjYyxcbiAgICAgICAgW2l0ZW0uaWRdOiBhcHBsaWVkT3B0aW9ucy5lbnRpdGllc1twcm9kdWN0LmlkXS5pdGVtc1tpdGVtLmlkXS52YWx1ZSA/IHtcbiAgICAgICAgICAuLi5pdGVtLm9wdGlvbnMuZmluZChvcHRpb24gPT4gb3B0aW9uLmlkID09PSBhcHBsaWVkT3B0aW9ucy5lbnRpdGllc1twcm9kdWN0LmlkXS5pdGVtc1tpdGVtLmlkXS52YWx1ZSksXG4gICAgICAgICAgcXVhbnRpdHk6IGFwcGxpZWRPcHRpb25zLmVudGl0aWVzW3Byb2R1Y3QuaWRdLml0ZW1zW2l0ZW0uaWRdLnF0eSxcbiAgICAgICAgfSA6IG51bGwsXG4gICAgICB9KSwge30pO1xuICAgIH0sXG4gICkpLm1lbW9pemVkO1xuXG4gIGNvbnN0IHNlbGVjdElzQ29tcG9zaXRlUHJvZHVjdEl0ZW1SZXF1aXJlZCA9IGRlZmF1bHRNZW1vaXplKChpZDogVFsnaWQnXSwgaXRlbV9pZDogRGFmZkNvbXBvc2l0ZVByb2R1Y3RJdGVtWydpZCddKSA9PiBjcmVhdGVTZWxlY3RvcihcbiAgICBzZWxlY3RQcm9kdWN0KGlkKSxcbiAgICAocHJvZHVjdDogVCkgPT4ge1xuICAgICAgaWYocHJvZHVjdC50eXBlICE9PSBEYWZmUHJvZHVjdFR5cGVFbnVtLkNvbXBvc2l0ZSkge1xuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBwcm9kdWN0SXRlbSA9ICg8RGFmZkNvbXBvc2l0ZVByb2R1Y3Q+PGFueT5wcm9kdWN0KS5pdGVtcy5maW5kKGl0ZW0gPT4gaXRlbS5pZCA9PT0gaXRlbV9pZCk7XG5cbiAgICAgIHJldHVybiBwcm9kdWN0SXRlbSA/IHByb2R1Y3RJdGVtLnJlcXVpcmVkIDogbnVsbDtcbiAgICB9LFxuICApKS5tZW1vaXplZDtcblxuXG4gIHJldHVybiB7XG4gICAgc2VsZWN0Q29tcG9zaXRlUHJvZHVjdEFwcGxpZWRPcHRpb25zRW50aXRpZXNTdGF0ZSxcbiAgICBzZWxlY3RDb21wb3NpdGVQcm9kdWN0SWRzLFxuICAgIHNlbGVjdENvbXBvc2l0ZVByb2R1Y3RBcHBsaWVkT3B0aW9uc0VudGl0aWVzLFxuICAgIHNlbGVjdENvbXBvc2l0ZVByb2R1Y3RUb3RhbCxcbiAgICBzZWxlY3RDb21wb3NpdGVQcm9kdWN0QXBwbGllZE9wdGlvbnMsXG4gICAgc2VsZWN0SXNDb21wb3NpdGVQcm9kdWN0SXRlbVJlcXVpcmVkLFxuICB9O1xufTtcblxuLyoqXG4gKiBBIGZ1bmN0aW9uIHRoYXQgcmV0dXJucyBhbGwgc2VsZWN0b3JzIHJlbGF0ZWQgdG8gY29tcG9zaXRlIHByb2R1Y3QgYXBwbGllZCBvcHRpb24gZW50aXRpZXMuXG4gKiBSZXR1cm5zIHtAbGluayBEYWZmQ29tcG9zaXRlUHJvZHVjdEVudGl0aWVzTWVtb2l6ZWRTZWxlY3RvcnN9LlxuICovXG5leHBvcnQgY29uc3QgZ2V0RGFmZkNvbXBvc2l0ZVByb2R1Y3RFbnRpdGllc1NlbGVjdG9ycyA9ICgoKSA9PiB7XG4gIGxldCBjYWNoZTtcbiAgcmV0dXJuIDxUIGV4dGVuZHMgRGFmZlByb2R1Y3Q+KCk6IERhZmZDb21wb3NpdGVQcm9kdWN0RW50aXRpZXNNZW1vaXplZFNlbGVjdG9yczxUPiA9PiBjYWNoZSA9IGNhY2hlXG4gICAgPyBjYWNoZVxuICAgIDogY3JlYXRlQ29tcG9zaXRlUHJvZHVjdEFwcGxpZWRPcHRpb25zRW50aXRpZXNTZWxlY3RvcnM8VD4oKTtcbn0pKCk7XG4iXX0=
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9zaXRlLXByb2R1Y3QtZW50aXRpZXMuc2VsZWN0b3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wcm9kdWN0LWNvbXBvc2l0ZS9zdGF0ZS9zcmMvc2VsZWN0b3JzL2NvbXBvc2l0ZS1wcm9kdWN0LWVudGl0aWVzL2NvbXBvc2l0ZS1wcm9kdWN0LWVudGl0aWVzLnNlbGVjdG9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxPQUFPLEVBQ0wsY0FBYyxFQUVkLGNBQWMsR0FDZixNQUFNLGFBQWEsQ0FBQztBQUVyQixPQUFPLEVBRUwsbUJBQW1CLEdBQ3BCLE1BQU0sbUJBQW1CLENBQUM7QUFDM0IsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFPMUUsT0FBTyxFQUFFLGlEQUFpRCxFQUFFLE1BQU0sc0ZBQXNGLENBQUM7QUFNekosT0FBTyxFQUFFLHNDQUFzQyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFxQzdFLE1BQU0scURBQXFELEdBQUcsR0FBNEUsRUFBRTtJQUMxSSxNQUFNLEVBQ0osMkJBQTJCLEdBQzVCLEdBQUcsc0NBQXNDLEVBQUUsQ0FBQztJQUM3QyxNQUFNLEVBQ0osYUFBYSxHQUNkLEdBQUcsK0JBQStCLEVBQUssQ0FBQztJQUN6QyxNQUFNLGdCQUFnQixHQUFHLGlEQUFpRCxFQUFFLENBQUMsWUFBWSxFQUFFLENBQUM7SUFFNUYsTUFBTSxpREFBaUQsR0FBRyxjQUFjLENBQ3RFLDJCQUEyQixFQUMzQixDQUFDLEtBQXdDLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyx1QkFBdUIsQ0FDNUUsQ0FBQztJQUVGLE1BQU0seUJBQXlCLEdBQUcsY0FBYyxDQUM5QyxpREFBaUQsRUFDakQsZ0JBQWdCLENBQUMsU0FBUyxDQUMzQixDQUFDO0lBRUYsTUFBTSw0Q0FBNEMsR0FBRyxjQUFjLENBQ2pFLGlEQUFpRCxFQUNqRCxnQkFBZ0IsQ0FBQyxjQUFjLENBQ2hDLENBQUM7SUFFRixNQUFNLDJCQUEyQixHQUFHLGNBQWMsQ0FDaEQsaURBQWlELEVBQ2pELGdCQUFnQixDQUFDLFdBQVcsQ0FDN0IsQ0FBQztJQUVGLE1BQU0sb0NBQW9DLEdBQUcsY0FBYyxDQUFDLENBQUMsRUFBVyxFQUFFLEVBQUUsQ0FBQyxjQUFjLENBQ3pGLGFBQWEsQ0FBQyxFQUFFLENBQUMsRUFDakIsaURBQWlELEVBQ2pELENBQUMsT0FBVSxFQUFFLGNBQWMsRUFBRSxFQUFFO1FBQzdCLElBQUcsT0FBTyxDQUFDLElBQUksS0FBSyxtQkFBbUIsQ0FBQyxTQUFTLEVBQUU7WUFDakQsT0FBTyxTQUFTLENBQUM7U0FDbEI7UUFFRCxPQUFtQyxPQUFRLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDdkUsR0FBRyxHQUFHO1lBQ04sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEVBQUUsY0FBYyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO2dCQUNwRSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLEVBQUUsS0FBSyxjQUFjLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQztnQkFDdEcsUUFBUSxFQUFFLGNBQWMsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRzthQUNqRSxDQUFDLENBQUMsQ0FBQyxJQUFJO1NBQ1QsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ1YsQ0FBQyxDQUNGLENBQUMsQ0FBQyxRQUFRLENBQUM7SUFFWixNQUFNLG9DQUFvQyxHQUFHLGNBQWMsQ0FBQyxDQUFDLEVBQVcsRUFBRSxPQUF1QyxFQUFFLEVBQUUsQ0FBQyxjQUFjLENBQ2xJLGFBQWEsQ0FBQyxFQUFFLENBQUMsRUFDakIsQ0FBQyxPQUFVLEVBQUUsRUFBRTtRQUNiLElBQUcsT0FBTyxDQUFDLElBQUksS0FBSyxtQkFBbUIsQ0FBQyxTQUFTLEVBQUU7WUFDakQsT0FBTyxTQUFTLENBQUM7U0FDbEI7UUFFRCxNQUFNLFdBQVcsR0FBK0IsT0FBUSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLE9BQU8sQ0FBQyxDQUFDO1FBRWpHLE9BQU8sV0FBVyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDbkQsQ0FBQyxDQUNGLENBQUMsQ0FBQyxRQUFRLENBQUM7SUFHWixPQUFPO1FBQ0wsaURBQWlEO1FBQ2pELHlCQUF5QjtRQUN6Qiw0Q0FBNEM7UUFDNUMsMkJBQTJCO1FBQzNCLG9DQUFvQztRQUNwQyxvQ0FBb0M7S0FDckMsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLHdDQUF3QyxHQUFHLENBQUMsR0FBRyxFQUFFO0lBQzVELElBQUksS0FBSyxDQUFDO0lBQ1YsT0FBTyxHQUE0RSxFQUFFLENBQUMsS0FBSyxHQUFHLEtBQUs7UUFDakcsQ0FBQyxDQUFDLEtBQUs7UUFDUCxDQUFDLENBQUMscURBQXFELEVBQUssQ0FBQztBQUNqRSxDQUFDLENBQUMsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRW50aXR5U3RhdGUsXG4gIERpY3Rpb25hcnksXG59IGZyb20gJ0BuZ3J4L2VudGl0eSc7XG5pbXBvcnQge1xuICBjcmVhdGVTZWxlY3RvcixcbiAgTWVtb2l6ZWRTZWxlY3RvcixcbiAgZGVmYXVsdE1lbW9pemUsXG59IGZyb20gJ0BuZ3J4L3N0b3JlJztcblxuaW1wb3J0IHtcbiAgRGFmZlByb2R1Y3QsXG4gIERhZmZQcm9kdWN0VHlwZUVudW0sXG59IGZyb20gJ0BkYWZmb2RpbC9wcm9kdWN0JztcbmltcG9ydCB7IGdldERhZmZQcm9kdWN0RW50aXRpZXNTZWxlY3RvcnMgfSBmcm9tICdAZGFmZm9kaWwvcHJvZHVjdC9zdGF0ZSc7XG5pbXBvcnQge1xuICBEYWZmQ29tcG9zaXRlUHJvZHVjdEl0ZW1PcHRpb24sXG4gIERhZmZDb21wb3NpdGVQcm9kdWN0SXRlbSxcbiAgRGFmZkNvbXBvc2l0ZVByb2R1Y3QsXG59IGZyb20gJ0BkYWZmb2RpbC9wcm9kdWN0LWNvbXBvc2l0ZSc7XG5cbmltcG9ydCB7IGRhZmZDb21wb3NpdGVQcm9kdWN0QXBwbGllZE9wdGlvbnNFbnRpdGllc0FkYXB0ZXIgfSBmcm9tICcuLi8uLi9yZWR1Y2Vycy9jb21wb3NpdGUtcHJvZHVjdC1lbnRpdGllcy9jb21wb3NpdGUtcHJvZHVjdC1lbnRpdGllcy1yZWR1Y2VyLWFkYXB0ZXInO1xuaW1wb3J0IHsgRGFmZkNvbXBvc2l0ZVByb2R1Y3RFbnRpdHkgfSBmcm9tICcuLi8uLi9yZWR1Y2Vycy9jb21wb3NpdGUtcHJvZHVjdC1lbnRpdGllcy9jb21wb3NpdGUtcHJvZHVjdC1lbnRpdHknO1xuaW1wb3J0IHtcbiAgRGFmZkNvbXBvc2l0ZVByb2R1Y3RSZWR1Y2Vyc1N0YXRlLFxuICBEYWZmQ29tcG9zaXRlUHJvZHVjdFN0YXRlUm9vdFNsaWNlLFxufSBmcm9tICcuLi8uLi9yZWR1Y2Vycy9jb21wb3NpdGUtcHJvZHVjdC1yZWR1Y2Vycy1zdGF0ZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgZ2V0RGFmZkNvbXBvc2l0ZVByb2R1Y3RGZWF0dXJlU2VsZWN0b3IgfSBmcm9tICcuLi9mZWF0dXJlLnNlbGVjdG9yJztcblxuLyoqXG4gKiBBbiBpbnRlcmZhY2UgZm9yIHNlbGVjdG9ycyByZWxhdGVkIHRvIHRoZSBjb21wb3NpdGUgcHJvZHVjdCBhcHBsaWVkIG9wdGlvbnMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGFmZkNvbXBvc2l0ZVByb2R1Y3RFbnRpdGllc01lbW9pemVkU2VsZWN0b3JzPFQgZXh0ZW5kcyBEYWZmUHJvZHVjdCA9IERhZmZQcm9kdWN0PiB7XG4gIC8qKlxuICAgKiBUaGUgbmdyeCBlbnRpdGllcyBzdGF0ZSBmb3IgY29tcG9zaXRlIHByb2R1Y3QgYXBwbGllZCBvcHRpb25zLlxuICAgKi9cbiAgc2VsZWN0Q29tcG9zaXRlUHJvZHVjdEFwcGxpZWRPcHRpb25zRW50aXRpZXNTdGF0ZTogTWVtb2l6ZWRTZWxlY3RvcjxEYWZmQ29tcG9zaXRlUHJvZHVjdFN0YXRlUm9vdFNsaWNlPFQ+LCBFbnRpdHlTdGF0ZTxEYWZmQ29tcG9zaXRlUHJvZHVjdEVudGl0eT4+O1xuICAvKipcbiAgICogQSBzZWxlY3RvciBmb3IgYWxsIGNvbXBvc2l0ZSBwcm9kdWN0IGlkcyBpbiBzdGF0ZS5cbiAgICovXG4gIHNlbGVjdENvbXBvc2l0ZVByb2R1Y3RJZHM6IE1lbW9pemVkU2VsZWN0b3I8RGFmZkNvbXBvc2l0ZVByb2R1Y3RTdGF0ZVJvb3RTbGljZTxUPiwgRW50aXR5U3RhdGU8RGFmZkNvbXBvc2l0ZVByb2R1Y3RFbnRpdHk+WydpZHMnXT47XG4gIC8qKlxuICAgKiBUaGUgbmdyeCBlbnRpdGllcyBmb3IgdGhlIGNvbXBvc2l0ZSBwcm9kdWN0IGFwcGxsaWVkIG9wdGlvbnMuXG4gICAqL1xuICBzZWxlY3RDb21wb3NpdGVQcm9kdWN0QXBwbGllZE9wdGlvbnNFbnRpdGllczogTWVtb2l6ZWRTZWxlY3RvcjxEYWZmQ29tcG9zaXRlUHJvZHVjdFN0YXRlUm9vdFNsaWNlPFQ+LCBFbnRpdHlTdGF0ZTxEYWZmQ29tcG9zaXRlUHJvZHVjdEVudGl0eT5bJ2VudGl0aWVzJ10+O1xuICAvKipcbiAgICogVGhlIHRvdGFsIG51bWJlciBvZiBjb21wb3NpdGUgcHJvZHVjdHMgaW4gc3RhdGUuXG4gICAqL1xuICBzZWxlY3RDb21wb3NpdGVQcm9kdWN0VG90YWw6IE1lbW9pemVkU2VsZWN0b3I8RGFmZkNvbXBvc2l0ZVByb2R1Y3RTdGF0ZVJvb3RTbGljZTxUPiwgbnVtYmVyPjtcbiAgLyoqXG4gICAqIFNlbGVjdHMgdGhlIGFwcGxpZWQgb3B0aW9ucyBmb3IgYSBjb21wb3NpdGUgcHJvZHVjdC5cbiAgICpcbiAgICogQHBhcmFtIGlkIHRoZSBpZCBvZiB0aGUgY29tcG9zaXRlIHByb2R1Y3QuXG4gICAqL1xuICBzZWxlY3RDb21wb3NpdGVQcm9kdWN0QXBwbGllZE9wdGlvbnM6IChpZDogVFsnaWQnXSkgPT4gTWVtb2l6ZWRTZWxlY3RvcjxEYWZmQ29tcG9zaXRlUHJvZHVjdFN0YXRlUm9vdFNsaWNlPFQ+LCBEaWN0aW9uYXJ5PERhZmZDb21wb3NpdGVQcm9kdWN0SXRlbU9wdGlvbj4+O1xuICAvKipcbiAgICogU2VsZWN0cyB3aGV0aGVyIHRoZSBwYXJ0aWN1bGFyIGl0ZW0gb2YgYSBjb21wb3NpdGUgcHJvZHVjdCBpcyByZXF1aXJlZCBpbiBvcmRlciBmb3IgdGhlIHByb2R1Y3QgdG8gYmUgdmFsaWQsIGkuZS4gYWRkYWJsZSB0byB0aGUgY2FydC5cbiAgICpcbiAgICogQHBhcmFtIGlkIHRoZSBpZCBvZiB0aGUgY29tcG9zaXRlIHByb2R1Y3QuXG4gICAqIEBwYXJhbSBpdGVtX2lkIHRoZSBpZCBvZiB0aGUgY29tcG9zaXRlIHByb2R1Y3QgaXRlbS5cbiAgICovXG4gIHNlbGVjdElzQ29tcG9zaXRlUHJvZHVjdEl0ZW1SZXF1aXJlZDogKGlkOiBUWydpZCddLCBpdGVtX2lkOiBEYWZmQ29tcG9zaXRlUHJvZHVjdEl0ZW1bJ2lkJ10pID0+IE1lbW9pemVkU2VsZWN0b3I8RGFmZkNvbXBvc2l0ZVByb2R1Y3RTdGF0ZVJvb3RTbGljZTxUPiwgYm9vbGVhbj47XG59XG5cbmNvbnN0IGNyZWF0ZUNvbXBvc2l0ZVByb2R1Y3RBcHBsaWVkT3B0aW9uc0VudGl0aWVzU2VsZWN0b3JzID0gPFQgZXh0ZW5kcyBEYWZmUHJvZHVjdD4oKTogRGFmZkNvbXBvc2l0ZVByb2R1Y3RFbnRpdGllc01lbW9pemVkU2VsZWN0b3JzPFQ+ID0+IHtcbiAgY29uc3Qge1xuICAgIHNlbGVjdENvbXBvc2l0ZVByb2R1Y3RTdGF0ZSxcbiAgfSA9IGdldERhZmZDb21wb3NpdGVQcm9kdWN0RmVhdHVyZVNlbGVjdG9yKCk7XG4gIGNvbnN0IHtcbiAgICBzZWxlY3RQcm9kdWN0LFxuICB9ID0gZ2V0RGFmZlByb2R1Y3RFbnRpdGllc1NlbGVjdG9yczxUPigpO1xuICBjb25zdCBhZGFwdGVyU2VsZWN0b3JzID0gZGFmZkNvbXBvc2l0ZVByb2R1Y3RBcHBsaWVkT3B0aW9uc0VudGl0aWVzQWRhcHRlcigpLmdldFNlbGVjdG9ycygpO1xuXG4gIGNvbnN0IHNlbGVjdENvbXBvc2l0ZVByb2R1Y3RBcHBsaWVkT3B0aW9uc0VudGl0aWVzU3RhdGUgPSBjcmVhdGVTZWxlY3RvcihcbiAgICBzZWxlY3RDb21wb3NpdGVQcm9kdWN0U3RhdGUsXG4gICAgKHN0YXRlOiBEYWZmQ29tcG9zaXRlUHJvZHVjdFJlZHVjZXJzU3RhdGUpID0+IHN0YXRlLmNvbXBvc2l0ZVByb2R1Y3RPcHRpb25zLFxuICApO1xuXG4gIGNvbnN0IHNlbGVjdENvbXBvc2l0ZVByb2R1Y3RJZHMgPSBjcmVhdGVTZWxlY3RvcihcbiAgICBzZWxlY3RDb21wb3NpdGVQcm9kdWN0QXBwbGllZE9wdGlvbnNFbnRpdGllc1N0YXRlLFxuICAgIGFkYXB0ZXJTZWxlY3RvcnMuc2VsZWN0SWRzLFxuICApO1xuXG4gIGNvbnN0IHNlbGVjdENvbXBvc2l0ZVByb2R1Y3RBcHBsaWVkT3B0aW9uc0VudGl0aWVzID0gY3JlYXRlU2VsZWN0b3IoXG4gICAgc2VsZWN0Q29tcG9zaXRlUHJvZHVjdEFwcGxpZWRPcHRpb25zRW50aXRpZXNTdGF0ZSxcbiAgICBhZGFwdGVyU2VsZWN0b3JzLnNlbGVjdEVudGl0aWVzLFxuICApO1xuXG4gIGNvbnN0IHNlbGVjdENvbXBvc2l0ZVByb2R1Y3RUb3RhbCA9IGNyZWF0ZVNlbGVjdG9yKFxuICAgIHNlbGVjdENvbXBvc2l0ZVByb2R1Y3RBcHBsaWVkT3B0aW9uc0VudGl0aWVzU3RhdGUsXG4gICAgYWRhcHRlclNlbGVjdG9ycy5zZWxlY3RUb3RhbCxcbiAgKTtcblxuICBjb25zdCBzZWxlY3RDb21wb3NpdGVQcm9kdWN0QXBwbGllZE9wdGlvbnMgPSBkZWZhdWx0TWVtb2l6ZSgoaWQ6IFRbJ2lkJ10pID0+IGNyZWF0ZVNlbGVjdG9yKFxuICAgIHNlbGVjdFByb2R1Y3QoaWQpLFxuICAgIHNlbGVjdENvbXBvc2l0ZVByb2R1Y3RBcHBsaWVkT3B0aW9uc0VudGl0aWVzU3RhdGUsXG4gICAgKHByb2R1Y3Q6IFQsIGFwcGxpZWRPcHRpb25zKSA9PiB7XG4gICAgICBpZihwcm9kdWN0LnR5cGUgIT09IERhZmZQcm9kdWN0VHlwZUVudW0uQ29tcG9zaXRlKSB7XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiAoPERhZmZDb21wb3NpdGVQcm9kdWN0Pjxhbnk+cHJvZHVjdCkuaXRlbXMucmVkdWNlKChhY2MsIGl0ZW0pID0+ICh7XG4gICAgICAgIC4uLmFjYyxcbiAgICAgICAgW2l0ZW0uaWRdOiBhcHBsaWVkT3B0aW9ucy5lbnRpdGllc1twcm9kdWN0LmlkXS5pdGVtc1tpdGVtLmlkXS52YWx1ZSA/IHtcbiAgICAgICAgICAuLi5pdGVtLm9wdGlvbnMuZmluZChvcHRpb24gPT4gb3B0aW9uLmlkID09PSBhcHBsaWVkT3B0aW9ucy5lbnRpdGllc1twcm9kdWN0LmlkXS5pdGVtc1tpdGVtLmlkXS52YWx1ZSksXG4gICAgICAgICAgcXVhbnRpdHk6IGFwcGxpZWRPcHRpb25zLmVudGl0aWVzW3Byb2R1Y3QuaWRdLml0ZW1zW2l0ZW0uaWRdLnF0eSxcbiAgICAgICAgfSA6IG51bGwsXG4gICAgICB9KSwge30pO1xuICAgIH0sXG4gICkpLm1lbW9pemVkO1xuXG4gIGNvbnN0IHNlbGVjdElzQ29tcG9zaXRlUHJvZHVjdEl0ZW1SZXF1aXJlZCA9IGRlZmF1bHRNZW1vaXplKChpZDogVFsnaWQnXSwgaXRlbV9pZDogRGFmZkNvbXBvc2l0ZVByb2R1Y3RJdGVtWydpZCddKSA9PiBjcmVhdGVTZWxlY3RvcihcbiAgICBzZWxlY3RQcm9kdWN0KGlkKSxcbiAgICAocHJvZHVjdDogVCkgPT4ge1xuICAgICAgaWYocHJvZHVjdC50eXBlICE9PSBEYWZmUHJvZHVjdFR5cGVFbnVtLkNvbXBvc2l0ZSkge1xuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBwcm9kdWN0SXRlbSA9ICg8RGFmZkNvbXBvc2l0ZVByb2R1Y3Q+PGFueT5wcm9kdWN0KS5pdGVtcy5maW5kKGl0ZW0gPT4gaXRlbS5pZCA9PT0gaXRlbV9pZCk7XG5cbiAgICAgIHJldHVybiBwcm9kdWN0SXRlbSA/IHByb2R1Y3RJdGVtLnJlcXVpcmVkIDogbnVsbDtcbiAgICB9LFxuICApKS5tZW1vaXplZDtcblxuXG4gIHJldHVybiB7XG4gICAgc2VsZWN0Q29tcG9zaXRlUHJvZHVjdEFwcGxpZWRPcHRpb25zRW50aXRpZXNTdGF0ZSxcbiAgICBzZWxlY3RDb21wb3NpdGVQcm9kdWN0SWRzLFxuICAgIHNlbGVjdENvbXBvc2l0ZVByb2R1Y3RBcHBsaWVkT3B0aW9uc0VudGl0aWVzLFxuICAgIHNlbGVjdENvbXBvc2l0ZVByb2R1Y3RUb3RhbCxcbiAgICBzZWxlY3RDb21wb3NpdGVQcm9kdWN0QXBwbGllZE9wdGlvbnMsXG4gICAgc2VsZWN0SXNDb21wb3NpdGVQcm9kdWN0SXRlbVJlcXVpcmVkLFxuICB9O1xufTtcblxuLyoqXG4gKiBBIGZ1bmN0aW9uIHRoYXQgcmV0dXJucyBhbGwgc2VsZWN0b3JzIHJlbGF0ZWQgdG8gY29tcG9zaXRlIHByb2R1Y3QgYXBwbGllZCBvcHRpb24gZW50aXRpZXMuXG4gKiBSZXR1cm5zIHtAbGluayBEYWZmQ29tcG9zaXRlUHJvZHVjdEVudGl0aWVzTWVtb2l6ZWRTZWxlY3RvcnN9LlxuICovXG5leHBvcnQgY29uc3QgZ2V0RGFmZkNvbXBvc2l0ZVByb2R1Y3RFbnRpdGllc1NlbGVjdG9ycyA9ICgoKSA9PiB7XG4gIGxldCBjYWNoZTtcbiAgcmV0dXJuIDxUIGV4dGVuZHMgRGFmZlByb2R1Y3Q+KCk6IERhZmZDb21wb3NpdGVQcm9kdWN0RW50aXRpZXNNZW1vaXplZFNlbGVjdG9yczxUPiA9PiBjYWNoZSA9IGNhY2hlXG4gICAgPyBjYWNoZVxuICAgIDogY3JlYXRlQ29tcG9zaXRlUHJvZHVjdEFwcGxpZWRPcHRpb25zRW50aXRpZXNTZWxlY3RvcnM8VD4oKTtcbn0pKCk7XG4iXX0=
@@ -37,9 +37,9 @@ export class MockDaffCompositeProductFacade {
37
37
  }
38
38
  ;
39
39
  }
40
- /** @nocollapse */ MockDaffCompositeProductFacade.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: MockDaffCompositeProductFacade, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
41
- /** @nocollapse */ MockDaffCompositeProductFacade.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: MockDaffCompositeProductFacade, providedIn: 'root' });
42
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: MockDaffCompositeProductFacade, decorators: [{
40
+ /** @nocollapse */ MockDaffCompositeProductFacade.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: MockDaffCompositeProductFacade, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
41
+ /** @nocollapse */ MockDaffCompositeProductFacade.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: MockDaffCompositeProductFacade, providedIn: 'root' });
42
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: MockDaffCompositeProductFacade, decorators: [{
43
43
  type: Injectable,
44
44
  args: [{ providedIn: 'root' }]
45
45
  }] });
@@ -4,12 +4,12 @@ import { MockDaffCompositeProductFacade } from './mock-composite-product-facade'
4
4
  import * as i0 from "@angular/core";
5
5
  export class DaffCompositeProductStateTestingModule {
6
6
  }
7
- /** @nocollapse */ DaffCompositeProductStateTestingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCompositeProductStateTestingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8
- /** @nocollapse */ DaffCompositeProductStateTestingModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCompositeProductStateTestingModule });
9
- /** @nocollapse */ DaffCompositeProductStateTestingModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCompositeProductStateTestingModule, providers: [
7
+ /** @nocollapse */ DaffCompositeProductStateTestingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DaffCompositeProductStateTestingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8
+ /** @nocollapse */ DaffCompositeProductStateTestingModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: DaffCompositeProductStateTestingModule });
9
+ /** @nocollapse */ DaffCompositeProductStateTestingModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DaffCompositeProductStateTestingModule, providers: [
10
10
  { provide: DaffCompositeProductFacade, useExisting: MockDaffCompositeProductFacade },
11
11
  ] });
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCompositeProductStateTestingModule, decorators: [{
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DaffCompositeProductStateTestingModule, decorators: [{
13
13
  type: NgModule,
14
14
  args: [{
15
15
  providers: [
@@ -21,12 +21,12 @@ export class DaffCompositeProductItemOptionFactory extends DaffModelFactory {
21
21
  super(MockCompositeProductItemOption);
22
22
  }
23
23
  }
24
- /** @nocollapse */ DaffCompositeProductItemOptionFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCompositeProductItemOptionFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
25
- /** @nocollapse */ DaffCompositeProductItemOptionFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCompositeProductItemOptionFactory, providedIn: 'root' });
26
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCompositeProductItemOptionFactory, decorators: [{
24
+ /** @nocollapse */ DaffCompositeProductItemOptionFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DaffCompositeProductItemOptionFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
25
+ /** @nocollapse */ DaffCompositeProductItemOptionFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DaffCompositeProductItemOptionFactory, providedIn: 'root' });
26
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DaffCompositeProductItemOptionFactory, decorators: [{
27
27
  type: Injectable,
28
28
  args: [{
29
29
  providedIn: 'root',
30
30
  }]
31
31
  }], ctorParameters: function () { return []; } });
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9zaXRlLXByb2R1Y3QtaXRlbS1vcHRpb24uZmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvcHJvZHVjdC1jb21wb3NpdGUvdGVzdGluZy9zcmMvZmFjdG9yaWVzL2NvbXBvc2l0ZS1wcm9kdWN0LWl0ZW0tb3B0aW9uLmZhY3RvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFckQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFMUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDJCQUEyQixDQUFDOztBQUV4RDs7R0FFRztBQUNILE1BQU0sT0FBTyw4QkFBK0IsU0FBUSxXQUFXO0lBQS9EOztRQUNFLGFBQVEsR0FBRyxLQUFLLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDckQsZUFBVSxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDeEMsQ0FBQztDQUFBO0FBRUQ7O0dBRUc7QUFJSCxNQUFNLE9BQU8scUNBQXNDLFNBQVEsZ0JBQWdEO0lBQ3pHO1FBQ0UsS0FBSyxDQUFDLDhCQUE4QixDQUFDLENBQUM7SUFDeEMsQ0FBQzs7cUpBSFUscUNBQXFDO3lKQUFyQyxxQ0FBcUMsY0FGcEMsTUFBTTsyRkFFUCxxQ0FBcUM7a0JBSGpELFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZmFrZXIgfSBmcm9tICdAZmFrZXItanMvZmFrZXIvbG9jYWxlL2VuX1VTJztcblxuaW1wb3J0IHsgRGFmZk1vZGVsRmFjdG9yeSB9IGZyb20gJ0BkYWZmb2RpbC9jb3JlL3Rlc3RpbmcnO1xuaW1wb3J0IHsgRGFmZkNvbXBvc2l0ZVByb2R1Y3RJdGVtT3B0aW9uIH0gZnJvbSAnQGRhZmZvZGlsL3Byb2R1Y3QtY29tcG9zaXRlJztcbmltcG9ydCB7IE1vY2tQcm9kdWN0IH0gZnJvbSAnQGRhZmZvZGlsL3Byb2R1Y3QvdGVzdGluZyc7XG5cbi8qKlxuICogTW9ja2VkIERhZmZDb21wb3NpdGVQcm9kdWN0SXRlbU9wdGlvbiBvYmplY3QuXG4gKi9cbmV4cG9ydCBjbGFzcyBNb2NrQ29tcG9zaXRlUHJvZHVjdEl0ZW1PcHRpb24gZXh0ZW5kcyBNb2NrUHJvZHVjdCBpbXBsZW1lbnRzIERhZmZDb21wb3NpdGVQcm9kdWN0SXRlbU9wdGlvbiB7XG4gIHF1YW50aXR5ID0gZmFrZXIuZGF0YXR5cGUubnVtYmVyKHsgbWluOiAxLCBtYXg6IDkgfSk7XG4gIGlzX2RlZmF1bHQgPSBmYWtlci5kYXRhdHlwZS5ib29sZWFuKCk7XG59XG5cbi8qKlxuICogRmFjdG9yeSBmb3IgY3JlYXRpbmcgRGFmZkNvbXBvc2l0ZVByb2R1Y3RJdGVtT3B0aW9ucy5cbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIERhZmZDb21wb3NpdGVQcm9kdWN0SXRlbU9wdGlvbkZhY3RvcnkgZXh0ZW5kcyBEYWZmTW9kZWxGYWN0b3J5PERhZmZDb21wb3NpdGVQcm9kdWN0SXRlbU9wdGlvbj57XG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKE1vY2tDb21wb3NpdGVQcm9kdWN0SXRlbU9wdGlvbik7XG4gIH1cbn1cbiJdfQ==
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9zaXRlLXByb2R1Y3QtaXRlbS1vcHRpb24uZmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvcHJvZHVjdC1jb21wb3NpdGUvdGVzdGluZy9zcmMvZmFjdG9yaWVzL2NvbXBvc2l0ZS1wcm9kdWN0LWl0ZW0tb3B0aW9uLmZhY3RvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFckQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDJCQUEyQixDQUFDOztBQUd4RDs7R0FFRztBQUNILE1BQU0sT0FBTyw4QkFBK0IsU0FBUSxXQUFXO0lBQS9EOztRQUNFLGFBQVEsR0FBRyxLQUFLLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDckQsZUFBVSxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDeEMsQ0FBQztDQUFBO0FBRUQ7O0dBRUc7QUFJSCxNQUFNLE9BQU8scUNBQXNDLFNBQVEsZ0JBQWdEO0lBQ3pHO1FBQ0UsS0FBSyxDQUFDLDhCQUE4QixDQUFDLENBQUM7SUFDeEMsQ0FBQzs7cUpBSFUscUNBQXFDO3lKQUFyQyxxQ0FBcUMsY0FGcEMsTUFBTTsyRkFFUCxxQ0FBcUM7a0JBSGpELFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZmFrZXIgfSBmcm9tICdAZmFrZXItanMvZmFrZXIvbG9jYWxlL2VuX1VTJztcblxuaW1wb3J0IHsgRGFmZk1vZGVsRmFjdG9yeSB9IGZyb20gJ0BkYWZmb2RpbC9jb3JlL3Rlc3RpbmcnO1xuaW1wb3J0IHsgTW9ja1Byb2R1Y3QgfSBmcm9tICdAZGFmZm9kaWwvcHJvZHVjdC90ZXN0aW5nJztcbmltcG9ydCB7IERhZmZDb21wb3NpdGVQcm9kdWN0SXRlbU9wdGlvbiB9IGZyb20gJ0BkYWZmb2RpbC9wcm9kdWN0LWNvbXBvc2l0ZSc7XG5cbi8qKlxuICogTW9ja2VkIERhZmZDb21wb3NpdGVQcm9kdWN0SXRlbU9wdGlvbiBvYmplY3QuXG4gKi9cbmV4cG9ydCBjbGFzcyBNb2NrQ29tcG9zaXRlUHJvZHVjdEl0ZW1PcHRpb24gZXh0ZW5kcyBNb2NrUHJvZHVjdCBpbXBsZW1lbnRzIERhZmZDb21wb3NpdGVQcm9kdWN0SXRlbU9wdGlvbiB7XG4gIHF1YW50aXR5ID0gZmFrZXIuZGF0YXR5cGUubnVtYmVyKHsgbWluOiAxLCBtYXg6IDkgfSk7XG4gIGlzX2RlZmF1bHQgPSBmYWtlci5kYXRhdHlwZS5ib29sZWFuKCk7XG59XG5cbi8qKlxuICogRmFjdG9yeSBmb3IgY3JlYXRpbmcgRGFmZkNvbXBvc2l0ZVByb2R1Y3RJdGVtT3B0aW9ucy5cbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIERhZmZDb21wb3NpdGVQcm9kdWN0SXRlbU9wdGlvbkZhY3RvcnkgZXh0ZW5kcyBEYWZmTW9kZWxGYWN0b3J5PERhZmZDb21wb3NpdGVQcm9kdWN0SXRlbU9wdGlvbj57XG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKE1vY2tDb21wb3NpdGVQcm9kdWN0SXRlbU9wdGlvbik7XG4gIH1cbn1cbiJdfQ==
@@ -34,9 +34,9 @@ export class DaffCompositeProductItemFactory extends DaffModelFactory {
34
34
  super(MockCompositeProductItem, optionFactory);
35
35
  }
36
36
  }
37
- /** @nocollapse */ DaffCompositeProductItemFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCompositeProductItemFactory, deps: [{ token: i1.DaffCompositeProductItemOptionFactory }], target: i0.ɵɵFactoryTarget.Injectable });
38
- /** @nocollapse */ DaffCompositeProductItemFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCompositeProductItemFactory, providedIn: 'root' });
39
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCompositeProductItemFactory, decorators: [{
37
+ /** @nocollapse */ DaffCompositeProductItemFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DaffCompositeProductItemFactory, deps: [{ token: i1.DaffCompositeProductItemOptionFactory }], target: i0.ɵɵFactoryTarget.Injectable });
38
+ /** @nocollapse */ DaffCompositeProductItemFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DaffCompositeProductItemFactory, providedIn: 'root' });
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DaffCompositeProductItemFactory, decorators: [{
40
40
  type: Injectable,
41
41
  args: [{
42
42
  providedIn: 'root',
@@ -24,12 +24,12 @@ export class DaffCompositeProductFactory extends DaffModelFactory {
24
24
  super(MockCompositeProduct, itemFactory);
25
25
  }
26
26
  }
27
- /** @nocollapse */ DaffCompositeProductFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCompositeProductFactory, deps: [{ token: i1.DaffCompositeProductItemFactory }], target: i0.ɵɵFactoryTarget.Injectable });
28
- /** @nocollapse */ DaffCompositeProductFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCompositeProductFactory, providedIn: 'root' });
29
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCompositeProductFactory, decorators: [{
27
+ /** @nocollapse */ DaffCompositeProductFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DaffCompositeProductFactory, deps: [{ token: i1.DaffCompositeProductItemFactory }], target: i0.ɵɵFactoryTarget.Injectable });
28
+ /** @nocollapse */ DaffCompositeProductFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DaffCompositeProductFactory, providedIn: 'root' });
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DaffCompositeProductFactory, decorators: [{
30
30
  type: Injectable,
31
31
  args: [{
32
32
  providedIn: 'root',
33
33
  }]
34
34
  }], ctorParameters: function () { return [{ type: i1.DaffCompositeProductItemFactory }]; } });
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9zaXRlLXByb2R1Y3QuZmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvcHJvZHVjdC1jb21wb3NpdGUvdGVzdGluZy9zcmMvZmFjdG9yaWVzL2NvbXBvc2l0ZS1wcm9kdWN0LmZhY3RvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUczQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUMxRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUV4RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFeEQsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7OztBQUVuRjs7R0FFRztBQUNILE1BQU0sT0FBTyxvQkFBcUIsU0FBUSxXQUFXO0lBSW5ELFlBQ1ksV0FBNEM7UUFFdEQsS0FBSyxFQUFFLENBQUM7UUFGRSxnQkFBVyxHQUFYLFdBQVcsQ0FBaUM7UUFKeEQsU0FBSSxHQUFHLG1CQUFtQixDQUFDLFNBQVMsQ0FBQztRQUNyQyxVQUFLLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFNdkMsQ0FBQztDQUNGO0FBRUQ7O0dBRUc7QUFJSCxNQUFNLE9BQU8sMkJBQTRCLFNBQVEsZ0JBQXNDO0lBQ3JGLFlBQ0UsV0FBNEM7UUFFNUMsS0FBSyxDQUFDLG9CQUFvQixFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBQzNDLENBQUM7OzJJQUxVLDJCQUEyQjsrSUFBM0IsMkJBQTJCLGNBRjFCLE1BQU07MkZBRVAsMkJBQTJCO2tCQUh2QyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGZha2VyIH0gZnJvbSAnQGZha2VyLWpzL2Zha2VyL2xvY2FsZS9lbl9VUyc7XG5cbmltcG9ydCB7IERhZmZNb2RlbEZhY3RvcnkgfSBmcm9tICdAZGFmZm9kaWwvY29yZS90ZXN0aW5nJztcbmltcG9ydCB7IERhZmZQcm9kdWN0VHlwZUVudW0gfSBmcm9tICdAZGFmZm9kaWwvcHJvZHVjdCc7XG5pbXBvcnQgeyBEYWZmQ29tcG9zaXRlUHJvZHVjdCB9IGZyb20gJ0BkYWZmb2RpbC9wcm9kdWN0LWNvbXBvc2l0ZSc7XG5pbXBvcnQgeyBNb2NrUHJvZHVjdCB9IGZyb20gJ0BkYWZmb2RpbC9wcm9kdWN0L3Rlc3RpbmcnO1xuXG5pbXBvcnQgeyBEYWZmQ29tcG9zaXRlUHJvZHVjdEl0ZW1GYWN0b3J5IH0gZnJvbSAnLi9jb21wb3NpdGUtcHJvZHVjdC1pdGVtLmZhY3RvcnknO1xuXG4vKipcbiAqIE1vY2tlZCBEYWZmQ29tcG9zaXRlUHJvZHVjdCBvYmplY3QuXG4gKi9cbmV4cG9ydCBjbGFzcyBNb2NrQ29tcG9zaXRlUHJvZHVjdCBleHRlbmRzIE1vY2tQcm9kdWN0IGltcGxlbWVudHMgRGFmZkNvbXBvc2l0ZVByb2R1Y3Qge1xuICB0eXBlID0gRGFmZlByb2R1Y3RUeXBlRW51bS5Db21wb3NpdGU7XG4gIGl0ZW1zID0gdGhpcy5pdGVtRmFjdG9yeS5jcmVhdGVNYW55KDIpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBpdGVtRmFjdG9yeTogRGFmZkNvbXBvc2l0ZVByb2R1Y3RJdGVtRmFjdG9yeSxcbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxufVxuXG4vKipcbiAqIEZhY3RvcnkgZm9yIGNyZWF0aW5nIERhZmZDb21wb3NpdGVQcm9kdWN0cy5cbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIERhZmZDb21wb3NpdGVQcm9kdWN0RmFjdG9yeSBleHRlbmRzIERhZmZNb2RlbEZhY3Rvcnk8RGFmZkNvbXBvc2l0ZVByb2R1Y3Q+e1xuICBjb25zdHJ1Y3RvcihcbiAgICBpdGVtRmFjdG9yeTogRGFmZkNvbXBvc2l0ZVByb2R1Y3RJdGVtRmFjdG9yeSxcbiAgKSB7XG4gICAgc3VwZXIoTW9ja0NvbXBvc2l0ZVByb2R1Y3QsIGl0ZW1GYWN0b3J5KTtcbiAgfVxufVxuIl19
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9zaXRlLXByb2R1Y3QuZmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvcHJvZHVjdC1jb21wb3NpdGUvdGVzdGluZy9zcmMvZmFjdG9yaWVzL2NvbXBvc2l0ZS1wcm9kdWN0LmZhY3RvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUczQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUMxRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFHeEQsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7OztBQUVuRjs7R0FFRztBQUNILE1BQU0sT0FBTyxvQkFBcUIsU0FBUSxXQUFXO0lBSW5ELFlBQ1ksV0FBNEM7UUFFdEQsS0FBSyxFQUFFLENBQUM7UUFGRSxnQkFBVyxHQUFYLFdBQVcsQ0FBaUM7UUFKeEQsU0FBSSxHQUFHLG1CQUFtQixDQUFDLFNBQVMsQ0FBQztRQUNyQyxVQUFLLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFNdkMsQ0FBQztDQUNGO0FBRUQ7O0dBRUc7QUFJSCxNQUFNLE9BQU8sMkJBQTRCLFNBQVEsZ0JBQXNDO0lBQ3JGLFlBQ0UsV0FBNEM7UUFFNUMsS0FBSyxDQUFDLG9CQUFvQixFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBQzNDLENBQUM7OzJJQUxVLDJCQUEyQjsrSUFBM0IsMkJBQTJCLGNBRjFCLE1BQU07MkZBRVAsMkJBQTJCO2tCQUh2QyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGZha2VyIH0gZnJvbSAnQGZha2VyLWpzL2Zha2VyL2xvY2FsZS9lbl9VUyc7XG5cbmltcG9ydCB7IERhZmZNb2RlbEZhY3RvcnkgfSBmcm9tICdAZGFmZm9kaWwvY29yZS90ZXN0aW5nJztcbmltcG9ydCB7IERhZmZQcm9kdWN0VHlwZUVudW0gfSBmcm9tICdAZGFmZm9kaWwvcHJvZHVjdCc7XG5pbXBvcnQgeyBNb2NrUHJvZHVjdCB9IGZyb20gJ0BkYWZmb2RpbC9wcm9kdWN0L3Rlc3RpbmcnO1xuaW1wb3J0IHsgRGFmZkNvbXBvc2l0ZVByb2R1Y3QgfSBmcm9tICdAZGFmZm9kaWwvcHJvZHVjdC1jb21wb3NpdGUnO1xuXG5pbXBvcnQgeyBEYWZmQ29tcG9zaXRlUHJvZHVjdEl0ZW1GYWN0b3J5IH0gZnJvbSAnLi9jb21wb3NpdGUtcHJvZHVjdC1pdGVtLmZhY3RvcnknO1xuXG4vKipcbiAqIE1vY2tlZCBEYWZmQ29tcG9zaXRlUHJvZHVjdCBvYmplY3QuXG4gKi9cbmV4cG9ydCBjbGFzcyBNb2NrQ29tcG9zaXRlUHJvZHVjdCBleHRlbmRzIE1vY2tQcm9kdWN0IGltcGxlbWVudHMgRGFmZkNvbXBvc2l0ZVByb2R1Y3Qge1xuICB0eXBlID0gRGFmZlByb2R1Y3RUeXBlRW51bS5Db21wb3NpdGU7XG4gIGl0ZW1zID0gdGhpcy5pdGVtRmFjdG9yeS5jcmVhdGVNYW55KDIpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBpdGVtRmFjdG9yeTogRGFmZkNvbXBvc2l0ZVByb2R1Y3RJdGVtRmFjdG9yeSxcbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxufVxuXG4vKipcbiAqIEZhY3RvcnkgZm9yIGNyZWF0aW5nIERhZmZDb21wb3NpdGVQcm9kdWN0cy5cbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIERhZmZDb21wb3NpdGVQcm9kdWN0RmFjdG9yeSBleHRlbmRzIERhZmZNb2RlbEZhY3Rvcnk8RGFmZkNvbXBvc2l0ZVByb2R1Y3Q+e1xuICBjb25zdHJ1Y3RvcihcbiAgICBpdGVtRmFjdG9yeTogRGFmZkNvbXBvc2l0ZVByb2R1Y3RJdGVtRmFjdG9yeSxcbiAgKSB7XG4gICAgc3VwZXIoTW9ja0NvbXBvc2l0ZVByb2R1Y3QsIGl0ZW1GYWN0b3J5KTtcbiAgfVxufVxuIl19
@@ -1,8 +1,8 @@
1
1
  import { CommonModule } from '@angular/common';
2
2
  import * as i0 from '@angular/core';
3
3
  import { NgModule } from '@angular/core';
4
- import { DaffCompositeProductFactory } from '@daffodil/product-composite/testing';
5
4
  import { DAFF_PRODUCT_TYPE_FACTORIES } from '@daffodil/product/testing';
5
+ import { DaffCompositeProductFactory } from '@daffodil/product-composite/testing';
6
6
 
7
7
  /**
8
8
  * Module for providing the composite product factory to the product kind factory.
@@ -21,12 +21,10 @@ class DaffCompositeProductInMemoryDriverModule {
21
21
  };
22
22
  }
23
23
  }
24
- /** @nocollapse */ DaffCompositeProductInMemoryDriverModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCompositeProductInMemoryDriverModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
25
- /** @nocollapse */ DaffCompositeProductInMemoryDriverModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCompositeProductInMemoryDriverModule, imports: [CommonModule] });
26
- /** @nocollapse */ DaffCompositeProductInMemoryDriverModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCompositeProductInMemoryDriverModule, imports: [[
27
- CommonModule,
28
- ]] });
29
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCompositeProductInMemoryDriverModule, decorators: [{
24
+ /** @nocollapse */ DaffCompositeProductInMemoryDriverModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DaffCompositeProductInMemoryDriverModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
25
+ /** @nocollapse */ DaffCompositeProductInMemoryDriverModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: DaffCompositeProductInMemoryDriverModule, imports: [CommonModule] });
26
+ /** @nocollapse */ DaffCompositeProductInMemoryDriverModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DaffCompositeProductInMemoryDriverModule, imports: [CommonModule] });
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DaffCompositeProductInMemoryDriverModule, decorators: [{
30
28
  type: NgModule,
31
29
  args: [{
32
30
  imports: [
@@ -1 +1 @@
1
- {"version":3,"file":"daffodil-product-composite-driver-in-memory.mjs","sources":["../../../libs/product-composite/driver/in-memory/src/in-memory.module.ts","../../../libs/product-composite/driver/in-memory/src/daffodil-product-composite-driver-in-memory.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\nimport {\n NgModule,\n ModuleWithProviders,\n} from '@angular/core';\n\nimport { DaffCompositeProductFactory } from '@daffodil/product-composite/testing';\nimport { DAFF_PRODUCT_TYPE_FACTORIES } from '@daffodil/product/testing';\n\n/**\n * Module for providing the composite product factory to the product kind factory.\n */\n@NgModule({\n imports: [\n CommonModule,\n ],\n})\nexport class DaffCompositeProductInMemoryDriverModule {\n static forRoot(): ModuleWithProviders<DaffCompositeProductInMemoryDriverModule> {\n return {\n ngModule: DaffCompositeProductInMemoryDriverModule,\n providers: [\n {\n provide: DAFF_PRODUCT_TYPE_FACTORIES,\n useExisting: DaffCompositeProductFactory,\n multi: true,\n },\n ],\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;AASA;;AAEG;MAMU,wCAAwC,CAAA;AACnD,IAAA,OAAO,OAAO,GAAA;QACZ,OAAO;AACL,YAAA,QAAQ,EAAE,wCAAwC;AAClD,YAAA,SAAS,EAAE;AACT,gBAAA;AACE,oBAAA,OAAO,EAAE,2BAA2B;AACpC,oBAAA,WAAW,EAAE,2BAA2B;AACxC,oBAAA,KAAK,EAAE,IAAI;AACZ,iBAAA;AACF,aAAA;SACF,CAAC;KACH;;wJAZU,wCAAwC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAxC,mBAAA,wCAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,wCAAwC,YAHjD,YAAY,CAAA,EAAA,CAAA,CAAA;AAGH,mBAAA,wCAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,wCAAwC,EAJ1C,OAAA,EAAA,CAAA;YACP,YAAY;SACb,CAAA,EAAA,CAAA,CAAA;2FAEU,wCAAwC,EAAA,UAAA,EAAA,CAAA;kBALpD,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;iBACF,CAAA;;;AChBD;;AAEG;;;;"}
1
+ {"version":3,"file":"daffodil-product-composite-driver-in-memory.mjs","sources":["../../../libs/product-composite/driver/in-memory/src/in-memory.module.ts","../../../libs/product-composite/driver/in-memory/src/daffodil-product-composite-driver-in-memory.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\nimport {\n NgModule,\n ModuleWithProviders,\n} from '@angular/core';\n\nimport { DAFF_PRODUCT_TYPE_FACTORIES } from '@daffodil/product/testing';\nimport { DaffCompositeProductFactory } from '@daffodil/product-composite/testing';\n\n/**\n * Module for providing the composite product factory to the product kind factory.\n */\n@NgModule({\n imports: [\n CommonModule,\n ],\n})\nexport class DaffCompositeProductInMemoryDriverModule {\n static forRoot(): ModuleWithProviders<DaffCompositeProductInMemoryDriverModule> {\n return {\n ngModule: DaffCompositeProductInMemoryDriverModule,\n providers: [\n {\n provide: DAFF_PRODUCT_TYPE_FACTORIES,\n useExisting: DaffCompositeProductFactory,\n multi: true,\n },\n ],\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;AASA;;AAEG;MAMU,wCAAwC,CAAA;AACnD,IAAA,OAAO,OAAO,GAAA;QACZ,OAAO;AACL,YAAA,QAAQ,EAAE,wCAAwC;AAClD,YAAA,SAAS,EAAE;AACT,gBAAA;AACE,oBAAA,OAAO,EAAE,2BAA2B;AACpC,oBAAA,WAAW,EAAE,2BAA2B;AACxC,oBAAA,KAAK,EAAE,IAAI;AACZ,iBAAA;AACF,aAAA;SACF,CAAC;KACH;;wJAZU,wCAAwC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAxC,mBAAA,wCAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,wCAAwC,YAHjD,YAAY,CAAA,EAAA,CAAA,CAAA;AAGH,mBAAA,wCAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,wCAAwC,YAHjD,YAAY,CAAA,EAAA,CAAA,CAAA;2FAGH,wCAAwC,EAAA,UAAA,EAAA,CAAA;kBALpD,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;iBACF,CAAA;;;AChBD;;AAEG;;;;"}
@@ -28,9 +28,9 @@ class MagentoBundledProductItemOptionFactory extends DaffModelFactory {
28
28
  super(MockMagentoBundledProductItemOption, simpleFactory);
29
29
  }
30
30
  }
31
- /** @nocollapse */ MagentoBundledProductItemOptionFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: MagentoBundledProductItemOptionFactory, deps: [{ token: i1.MagentoSimpleProductFactory }], target: i0.ɵɵFactoryTarget.Injectable });
32
- /** @nocollapse */ MagentoBundledProductItemOptionFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: MagentoBundledProductItemOptionFactory, providedIn: 'root' });
33
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: MagentoBundledProductItemOptionFactory, decorators: [{
31
+ /** @nocollapse */ MagentoBundledProductItemOptionFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: MagentoBundledProductItemOptionFactory, deps: [{ token: i1.MagentoSimpleProductFactory }], target: i0.ɵɵFactoryTarget.Injectable });
32
+ /** @nocollapse */ MagentoBundledProductItemOptionFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: MagentoBundledProductItemOptionFactory, providedIn: 'root' });
33
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: MagentoBundledProductItemOptionFactory, decorators: [{
34
34
  type: Injectable,
35
35
  args: [{
36
36
  providedIn: 'root',
@@ -58,9 +58,9 @@ class MagentoBundledProductItemFactory extends DaffModelFactory {
58
58
  super(MockMagentoBundledProductItem, optionFactory);
59
59
  }
60
60
  }
61
- /** @nocollapse */ MagentoBundledProductItemFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: MagentoBundledProductItemFactory, deps: [{ token: MagentoBundledProductItemOptionFactory }], target: i0.ɵɵFactoryTarget.Injectable });
62
- /** @nocollapse */ MagentoBundledProductItemFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: MagentoBundledProductItemFactory, providedIn: 'root' });
63
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: MagentoBundledProductItemFactory, decorators: [{
61
+ /** @nocollapse */ MagentoBundledProductItemFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: MagentoBundledProductItemFactory, deps: [{ token: MagentoBundledProductItemOptionFactory }], target: i0.ɵɵFactoryTarget.Injectable });
62
+ /** @nocollapse */ MagentoBundledProductItemFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: MagentoBundledProductItemFactory, providedIn: 'root' });
63
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: MagentoBundledProductItemFactory, decorators: [{
64
64
  type: Injectable,
65
65
  args: [{
66
66
  providedIn: 'root',
@@ -86,9 +86,9 @@ class MagentoBundledProductFactory extends DaffModelFactory {
86
86
  super(MockMagentoBundledProduct, bundleItemFactory);
87
87
  }
88
88
  }
89
- /** @nocollapse */ MagentoBundledProductFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: MagentoBundledProductFactory, deps: [{ token: MagentoBundledProductItemFactory }], target: i0.ɵɵFactoryTarget.Injectable });
90
- /** @nocollapse */ MagentoBundledProductFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: MagentoBundledProductFactory, providedIn: 'root' });
91
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: MagentoBundledProductFactory, decorators: [{
89
+ /** @nocollapse */ MagentoBundledProductFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: MagentoBundledProductFactory, deps: [{ token: MagentoBundledProductItemFactory }], target: i0.ɵɵFactoryTarget.Injectable });
90
+ /** @nocollapse */ MagentoBundledProductFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: MagentoBundledProductFactory, providedIn: 'root' });
91
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: MagentoBundledProductFactory, decorators: [{
92
92
  type: Injectable,
93
93
  args: [{
94
94
  providedIn: 'root',
@@ -1 +1 @@
1
- {"version":3,"file":"daffodil-product-composite-driver-magento-testing.mjs","sources":["../../../libs/product-composite/driver/magento/testing/src/factories/bundle/bundle-item-option.factory.ts","../../../libs/product-composite/driver/magento/testing/src/factories/bundle/bundle-item.factory.ts","../../../libs/product-composite/driver/magento/testing/src/factories/bundle/bundle.factory.ts","../../../libs/product-composite/driver/magento/testing/src/daffodil-product-composite-driver-magento-testing.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { faker } from '@faker-js/faker/locale/en_US';\n\nimport { DaffModelFactory } from '@daffodil/core/testing';\nimport { MagentoBundledProductItemOption } from '@daffodil/product-composite/driver/magento';\nimport { MagentoSimpleProduct } from '@daffodil/product/driver/magento';\nimport { MagentoSimpleProductFactory } from '@daffodil/product/driver/magento/testing';\n\n\nexport class MockMagentoBundledProductItemOption implements MagentoBundledProductItemOption {\n constructor(\n private simpleFactory: MagentoSimpleProductFactory,\n ) {}\n\n uid = faker.datatype.uuid();\n label = faker.random.word();\n quantity = faker.datatype.number({ min: 1, max: 20 });\n is_default = faker.datatype.boolean();\n position = faker.datatype.number({ min: 1, max: 10 });\n product = this.createProduct();\n\n protected createProduct(): MagentoSimpleProduct {\n return this.simpleFactory.create();\n }\n}\n\n/**\n * A factory for creating stub data for {@link MagentoBundledProduct}s.\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class MagentoBundledProductItemOptionFactory extends DaffModelFactory<MagentoBundledProductItemOption> {\n constructor(\n simpleFactory: MagentoSimpleProductFactory,\n ) {\n super(MockMagentoBundledProductItemOption, simpleFactory);\n }\n}\n","import { Injectable } from '@angular/core';\nimport { faker } from '@faker-js/faker/locale/en_US';\n\nimport { DaffModelFactory } from '@daffodil/core/testing';\nimport {\n MagentoBundledProductItem,\n MagentoBundledProductItemOption,\n} from '@daffodil/product-composite/driver/magento';\n\nimport { MagentoBundledProductItemOptionFactory } from './bundle-item-option.factory';\n\n\nexport class MockMagentoBundledProductItem implements MagentoBundledProductItem {\n constructor(\n private optionFactory: MagentoBundledProductItemOptionFactory,\n ) {}\n required = faker.datatype.boolean();\n title = faker.random.word();\n type = faker.random.word();\n options = this.createOptions();\n option_id = faker.datatype.number({ min: 1, max: 9999 });\n\n protected createOptions(): MagentoBundledProductItemOption[] {\n\t return this.optionFactory.createMany(faker.datatype.number({ min: 1, max: 5 }));\n }\n}\n\n/**\n * A factory for creating stub data for {@link MagentoBundledProduct}s.\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class MagentoBundledProductItemFactory extends DaffModelFactory<MagentoBundledProductItem> {\n constructor(\n optionFactory: MagentoBundledProductItemOptionFactory,\n ) {\n super(MockMagentoBundledProductItem, optionFactory);\n }\n}\n","import { Injectable } from '@angular/core';\nimport { faker } from '@faker-js/faker/locale/en_US';\n\nimport { DaffModelFactory } from '@daffodil/core/testing';\nimport {\n MagentoBundledProduct,\n MagentoBundledProductItem,\n} from '@daffodil/product-composite/driver/magento';\nimport { MagentoProductTypeEnum } from '@daffodil/product/driver/magento';\nimport { MockMagentoCoreProduct } from '@daffodil/product/driver/magento/testing';\n\nimport { MagentoBundledProductItemFactory } from './bundle-item.factory';\n\n\nexport class MockMagentoBundledProduct extends MockMagentoCoreProduct implements MagentoBundledProduct {\n constructor(\n private bundleItemFactory: MagentoBundledProductItemFactory,\n ) {\n super();\n }\n\n __typename = MagentoProductTypeEnum.BundledProduct;\n items = this.createBundleItems();\n\n protected createBundleItems(): MagentoBundledProductItem[] {\n return this.bundleItemFactory.createMany(faker.datatype.number({ min: 1, max: 5 }));\n }\n}\n\n/**\n * A factory for creating stub data for {@link MagentoBundledProduct}s.\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class MagentoBundledProductFactory extends DaffModelFactory<MagentoBundledProduct> {\n constructor(\n bundleItemFactory: MagentoBundledProductItemFactory,\n ) {\n super(MockMagentoBundledProduct, bundleItemFactory);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.MagentoBundledProductItemOptionFactory","i1.MagentoBundledProductItemFactory"],"mappings":"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"}
1
+ {"version":3,"file":"daffodil-product-composite-driver-magento-testing.mjs","sources":["../../../libs/product-composite/driver/magento/testing/src/factories/bundle/bundle-item-option.factory.ts","../../../libs/product-composite/driver/magento/testing/src/factories/bundle/bundle-item.factory.ts","../../../libs/product-composite/driver/magento/testing/src/factories/bundle/bundle.factory.ts","../../../libs/product-composite/driver/magento/testing/src/daffodil-product-composite-driver-magento-testing.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { faker } from '@faker-js/faker/locale/en_US';\n\nimport { DaffModelFactory } from '@daffodil/core/testing';\nimport { MagentoSimpleProduct } from '@daffodil/product/driver/magento';\nimport { MagentoSimpleProductFactory } from '@daffodil/product/driver/magento/testing';\nimport { MagentoBundledProductItemOption } from '@daffodil/product-composite/driver/magento';\n\n\nexport class MockMagentoBundledProductItemOption implements MagentoBundledProductItemOption {\n constructor(\n private simpleFactory: MagentoSimpleProductFactory,\n ) {}\n\n uid = faker.datatype.uuid();\n label = faker.random.word();\n quantity = faker.datatype.number({ min: 1, max: 20 });\n is_default = faker.datatype.boolean();\n position = faker.datatype.number({ min: 1, max: 10 });\n product = this.createProduct();\n\n protected createProduct(): MagentoSimpleProduct {\n return this.simpleFactory.create();\n }\n}\n\n/**\n * A factory for creating stub data for {@link MagentoBundledProduct}s.\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class MagentoBundledProductItemOptionFactory extends DaffModelFactory<MagentoBundledProductItemOption> {\n constructor(\n simpleFactory: MagentoSimpleProductFactory,\n ) {\n super(MockMagentoBundledProductItemOption, simpleFactory);\n }\n}\n","import { Injectable } from '@angular/core';\nimport { faker } from '@faker-js/faker/locale/en_US';\n\nimport { DaffModelFactory } from '@daffodil/core/testing';\nimport {\n MagentoBundledProductItem,\n MagentoBundledProductItemOption,\n} from '@daffodil/product-composite/driver/magento';\n\nimport { MagentoBundledProductItemOptionFactory } from './bundle-item-option.factory';\n\n\nexport class MockMagentoBundledProductItem implements MagentoBundledProductItem {\n constructor(\n private optionFactory: MagentoBundledProductItemOptionFactory,\n ) {}\n required = faker.datatype.boolean();\n title = faker.random.word();\n type = faker.random.word();\n options = this.createOptions();\n option_id = faker.datatype.number({ min: 1, max: 9999 });\n\n protected createOptions(): MagentoBundledProductItemOption[] {\n\t return this.optionFactory.createMany(faker.datatype.number({ min: 1, max: 5 }));\n }\n}\n\n/**\n * A factory for creating stub data for {@link MagentoBundledProduct}s.\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class MagentoBundledProductItemFactory extends DaffModelFactory<MagentoBundledProductItem> {\n constructor(\n optionFactory: MagentoBundledProductItemOptionFactory,\n ) {\n super(MockMagentoBundledProductItem, optionFactory);\n }\n}\n","import { Injectable } from '@angular/core';\nimport { faker } from '@faker-js/faker/locale/en_US';\n\nimport { DaffModelFactory } from '@daffodil/core/testing';\nimport { MagentoProductTypeEnum } from '@daffodil/product/driver/magento';\nimport { MockMagentoCoreProduct } from '@daffodil/product/driver/magento/testing';\nimport {\n MagentoBundledProduct,\n MagentoBundledProductItem,\n} from '@daffodil/product-composite/driver/magento';\n\nimport { MagentoBundledProductItemFactory } from './bundle-item.factory';\n\n\nexport class MockMagentoBundledProduct extends MockMagentoCoreProduct implements MagentoBundledProduct {\n constructor(\n private bundleItemFactory: MagentoBundledProductItemFactory,\n ) {\n super();\n }\n\n __typename = MagentoProductTypeEnum.BundledProduct;\n items = this.createBundleItems();\n\n protected createBundleItems(): MagentoBundledProductItem[] {\n return this.bundleItemFactory.createMany(faker.datatype.number({ min: 1, max: 5 }));\n }\n}\n\n/**\n * A factory for creating stub data for {@link MagentoBundledProduct}s.\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class MagentoBundledProductFactory extends DaffModelFactory<MagentoBundledProduct> {\n constructor(\n bundleItemFactory: MagentoBundledProductItemFactory,\n ) {\n super(MockMagentoBundledProduct, bundleItemFactory);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.MagentoBundledProductItemOptionFactory","i1.MagentoBundledProductItemFactory"],"mappings":"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"}
@@ -114,12 +114,10 @@ class DaffCompositeProductMagentoDriverModule {
114
114
  };
115
115
  }
116
116
  }
117
- /** @nocollapse */ DaffCompositeProductMagentoDriverModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCompositeProductMagentoDriverModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
118
- /** @nocollapse */ DaffCompositeProductMagentoDriverModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCompositeProductMagentoDriverModule, imports: [CommonModule] });
119
- /** @nocollapse */ DaffCompositeProductMagentoDriverModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCompositeProductMagentoDriverModule, imports: [[
120
- CommonModule,
121
- ]] });
122
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCompositeProductMagentoDriverModule, decorators: [{
117
+ /** @nocollapse */ DaffCompositeProductMagentoDriverModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DaffCompositeProductMagentoDriverModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
118
+ /** @nocollapse */ DaffCompositeProductMagentoDriverModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: DaffCompositeProductMagentoDriverModule, imports: [CommonModule] });
119
+ /** @nocollapse */ DaffCompositeProductMagentoDriverModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DaffCompositeProductMagentoDriverModule, imports: [CommonModule] });
120
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DaffCompositeProductMagentoDriverModule, decorators: [{
123
121
  type: NgModule,
124
122
  args: [{
125
123
  imports: [
@@ -1 +1 @@
1
- {"version":3,"file":"daffodil-product-composite-driver-magento.mjs","sources":["../../../libs/product-composite/driver/magento/src/fragments/bundled-product.ts","../../../libs/product-composite/driver/magento/src/transforms/bundled-product-transformers.ts","../../../libs/product-composite/driver/magento/src/composite-product-driver.module.ts","../../../libs/product-composite/driver/magento/src/models/bundled-product.ts","../../../libs/product-composite/driver/magento/src/daffodil-product-composite-driver-magento.ts"],"sourcesContent":["import { gql } from 'apollo-angular';\n\nexport const magentoBundledProductFragment = gql`\nfragment magentoBundledProduct on BundleProduct {\n\titems {\n\t\toption_id\n\t\trequired\n\t\ttitle\n\t\ttype\n\t\toptions {\n\t\t\tuid\n\t\t\tis_default\n\t\t\tlabel\n\t\t\tquantity\n position\n\t\t\tproduct {\n\t\t\t\tstock_status\n\t\t\t\tprice_range {\n\t\t\t\t\tmaximum_price {\n\t\t\t\t\t\tregular_price {\n\t\t\t\t\t\t\tvalue\n\t\t\t\t\t\t\tcurrency\n\t\t\t\t\t\t}\n\t\t\t\t\t\tdiscount {\n\t\t\t\t\t\t\tamount_off\n\t\t\t\t\t\t\tpercent_off\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n`;\n","import {\n DaffProductDiscount,\n DaffProductTypeEnum,\n DaffProduct,\n} from '@daffodil/product';\nimport {\n DaffCompositeProduct,\n DaffCompositeProductItemOption,\n DaffCompositeProductItem,\n DaffCompositeProductItemInputEnum,\n} from '@daffodil/product-composite';\nimport { MagentoProductStockStatusEnum } from '@daffodil/product/driver/magento';\n\nimport {\n MagentoBundledProduct,\n MagentoBundledProductItem,\n MagentoBundledProductItemOption,\n MagentoBundledProductItemOptionProduct,\n} from '../models/bundled-product';\n\n/**\n * Transforms the magento MagentoProduct from the magento product query into a DaffProduct.\n *\n * @param response the response from a magento product query.\n */\nexport function transformMagentoBundledProduct(\n daffProduct: DaffProduct,\n { items }: MagentoBundledProduct,\n): DaffCompositeProduct {\n return {\n ...daffProduct,\n ...items.length > 0 ? {\n price: 0,\n discount: {\n amount: 0,\n percent: 0,\n },\n } : {},\n type: DaffProductTypeEnum.Composite,\n items: items.map(transformMagentoBundledProductItem),\n };\n}\n\nfunction transformMagentoBundledProductItem(item: MagentoBundledProductItem): DaffCompositeProductItem {\n return {\n id: item.option_id.toString(),\n required: item.required,\n title: item.title,\n input_type: <DaffCompositeProductItemInputEnum>item.type,\n options: Array.from(item.options).sort((a, b) => a.position - b.position).map(transformMagentoBundledProductItemOption),\n };\n}\n\nfunction transformMagentoBundledProductItemOption(option: MagentoBundledProductItemOption): DaffCompositeProductItemOption {\n return {\n id: option.uid.toString(),\n type: DaffProductTypeEnum.Simple,\n url: null,\n name: option.label,\n price: getPrice(option.product),\n images: [],\n thumbnail: null,\n discount: getDiscount(option.product),\n quantity: option.quantity,\n is_default: option.is_default,\n in_stock: option.product.stock_status === MagentoProductStockStatusEnum.InStock,\n };\n}\n\n/**\n * A function for null checking an object.\n */\nfunction getPrice(product: MagentoBundledProductItemOptionProduct): number {\n return product.price_range?.maximum_price?.regular_price?.value || null;\n}\n\nfunction getDiscount(product: MagentoBundledProductItemOptionProduct): DaffProductDiscount {\n return product.price_range?.maximum_price?.discount\n ? {\n amount: product.price_range.maximum_price.discount.amount_off,\n percent: product.price_range.maximum_price.discount.percent_off,\n } : { amount: null, percent: null };\n}\n","import { CommonModule } from '@angular/common';\nimport {\n NgModule,\n ModuleWithProviders,\n} from '@angular/core';\n\nimport {\n daffProvideProductMagentoExtraProductTransforms,\n MagentoProductTypeEnum,\n daffProvideProductMagentoExtraProductFragments,\n daffProvideProductMagentoExtraProductPreviewTransforms,\n} from '@daffodil/product/driver/magento';\n\nimport { magentoBundledProductFragment } from './fragments/bundled-product';\nimport { MagentoBundledProduct } from './public_api';\nimport { transformMagentoBundledProduct } from './transforms/bundled-product-transformers';\n\n/**\n * A module that provides the product fragment for composite products along with a composite product transformer.\n */\n@NgModule({\n imports: [\n CommonModule,\n ],\n})\nexport class DaffCompositeProductMagentoDriverModule {\n static forRoot(): ModuleWithProviders<DaffCompositeProductMagentoDriverModule> {\n return {\n ngModule: DaffCompositeProductMagentoDriverModule,\n providers: [\n ...daffProvideProductMagentoExtraProductFragments(magentoBundledProductFragment),\n ...daffProvideProductMagentoExtraProductTransforms<MagentoBundledProduct>(\n (daffProduct, magentoProduct) =>\n magentoProduct.__typename === MagentoProductTypeEnum.BundledProduct\n ? transformMagentoBundledProduct(daffProduct, magentoProduct)\n : daffProduct,\n ),\n // stub out composite fields for a preview\n ...daffProvideProductMagentoExtraProductPreviewTransforms<MagentoBundledProduct>(\n (daffProduct, magentoProduct) =>\n magentoProduct.__typename === MagentoProductTypeEnum.BundledProduct\n ? {\n ...daffProduct,\n items: [],\n price: 0,\n discount: {\n amount: 0,\n percent: 0,\n },\n }\n : daffProduct,\n ),\n ],\n };\n }\n}\n","import {\n MagentoProduct,\n MagentoProductStockStatusEnum,\n} from '@daffodil/product/driver/magento';\n\nexport enum MagentoPriceTypeEnum {\n fixed = 'FIXED',\n percent = 'PERCENT',\n dynamic = 'DYNAMIC'\n}\n\nexport interface MagentoBundledProduct extends MagentoProduct {\n items: MagentoBundledProductItem[];\n}\n\nexport interface MagentoBundledProductItem {\n required: boolean;\n title: string;\n type: string;\n options: MagentoBundledProductItemOption[];\n option_id?: number;\n}\n\nexport interface MagentoBundledProductItemOption {\n uid: string;\n label: string;\n quantity: number;\n is_default: boolean;\n position: number;\n product: MagentoBundledProductItemOptionProduct;\n}\n\nexport interface MagentoBundledProductItemOptionProduct {\n stock_status?: MagentoProductStockStatusEnum;\n price_range: {\n maximum_price: {\n regular_price: {\n value: number;\n currency: any;\n };\n discount: {\n amount_off: number;\n percent_off: number;\n };\n };\n };\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"daffodil-product-composite-driver-magento.mjs","sources":["../../../libs/product-composite/driver/magento/src/fragments/bundled-product.ts","../../../libs/product-composite/driver/magento/src/transforms/bundled-product-transformers.ts","../../../libs/product-composite/driver/magento/src/composite-product-driver.module.ts","../../../libs/product-composite/driver/magento/src/models/bundled-product.ts","../../../libs/product-composite/driver/magento/src/daffodil-product-composite-driver-magento.ts"],"sourcesContent":["import { gql } from 'apollo-angular';\n\nexport const magentoBundledProductFragment = gql`\nfragment magentoBundledProduct on BundleProduct {\n\titems {\n\t\toption_id\n\t\trequired\n\t\ttitle\n\t\ttype\n\t\toptions {\n\t\t\tuid\n\t\t\tis_default\n\t\t\tlabel\n\t\t\tquantity\n position\n\t\t\tproduct {\n\t\t\t\tstock_status\n\t\t\t\tprice_range {\n\t\t\t\t\tmaximum_price {\n\t\t\t\t\t\tregular_price {\n\t\t\t\t\t\t\tvalue\n\t\t\t\t\t\t\tcurrency\n\t\t\t\t\t\t}\n\t\t\t\t\t\tdiscount {\n\t\t\t\t\t\t\tamount_off\n\t\t\t\t\t\t\tpercent_off\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n`;\n","import {\n DaffProductDiscount,\n DaffProductTypeEnum,\n DaffProduct,\n} from '@daffodil/product';\nimport { MagentoProductStockStatusEnum } from '@daffodil/product/driver/magento';\nimport {\n DaffCompositeProduct,\n DaffCompositeProductItemOption,\n DaffCompositeProductItem,\n DaffCompositeProductItemInputEnum,\n} from '@daffodil/product-composite';\n\nimport {\n MagentoBundledProduct,\n MagentoBundledProductItem,\n MagentoBundledProductItemOption,\n MagentoBundledProductItemOptionProduct,\n} from '../models/bundled-product';\n\n/**\n * Transforms the magento MagentoProduct from the magento product query into a DaffProduct.\n *\n * @param response the response from a magento product query.\n */\nexport function transformMagentoBundledProduct(\n daffProduct: DaffProduct,\n { items }: MagentoBundledProduct,\n): DaffCompositeProduct {\n return {\n ...daffProduct,\n ...items.length > 0 ? {\n price: 0,\n discount: {\n amount: 0,\n percent: 0,\n },\n } : {},\n type: DaffProductTypeEnum.Composite,\n items: items.map(transformMagentoBundledProductItem),\n };\n}\n\nfunction transformMagentoBundledProductItem(item: MagentoBundledProductItem): DaffCompositeProductItem {\n return {\n id: item.option_id.toString(),\n required: item.required,\n title: item.title,\n input_type: <DaffCompositeProductItemInputEnum>item.type,\n options: Array.from(item.options).sort((a, b) => a.position - b.position).map(transformMagentoBundledProductItemOption),\n };\n}\n\nfunction transformMagentoBundledProductItemOption(option: MagentoBundledProductItemOption): DaffCompositeProductItemOption {\n return {\n id: option.uid.toString(),\n type: DaffProductTypeEnum.Simple,\n url: null,\n name: option.label,\n price: getPrice(option.product),\n images: [],\n thumbnail: null,\n discount: getDiscount(option.product),\n quantity: option.quantity,\n is_default: option.is_default,\n in_stock: option.product.stock_status === MagentoProductStockStatusEnum.InStock,\n };\n}\n\n/**\n * A function for null checking an object.\n */\nfunction getPrice(product: MagentoBundledProductItemOptionProduct): number {\n return product.price_range?.maximum_price?.regular_price?.value || null;\n}\n\nfunction getDiscount(product: MagentoBundledProductItemOptionProduct): DaffProductDiscount {\n return product.price_range?.maximum_price?.discount\n ? {\n amount: product.price_range.maximum_price.discount.amount_off,\n percent: product.price_range.maximum_price.discount.percent_off,\n } : { amount: null, percent: null };\n}\n","import { CommonModule } from '@angular/common';\nimport {\n NgModule,\n ModuleWithProviders,\n} from '@angular/core';\n\nimport {\n daffProvideProductMagentoExtraProductTransforms,\n MagentoProductTypeEnum,\n daffProvideProductMagentoExtraProductFragments,\n daffProvideProductMagentoExtraProductPreviewTransforms,\n} from '@daffodil/product/driver/magento';\n\nimport { magentoBundledProductFragment } from './fragments/bundled-product';\nimport { MagentoBundledProduct } from './public_api';\nimport { transformMagentoBundledProduct } from './transforms/bundled-product-transformers';\n\n/**\n * A module that provides the product fragment for composite products along with a composite product transformer.\n */\n@NgModule({\n imports: [\n CommonModule,\n ],\n})\nexport class DaffCompositeProductMagentoDriverModule {\n static forRoot(): ModuleWithProviders<DaffCompositeProductMagentoDriverModule> {\n return {\n ngModule: DaffCompositeProductMagentoDriverModule,\n providers: [\n ...daffProvideProductMagentoExtraProductFragments(magentoBundledProductFragment),\n ...daffProvideProductMagentoExtraProductTransforms<MagentoBundledProduct>(\n (daffProduct, magentoProduct) =>\n magentoProduct.__typename === MagentoProductTypeEnum.BundledProduct\n ? transformMagentoBundledProduct(daffProduct, magentoProduct)\n : daffProduct,\n ),\n // stub out composite fields for a preview\n ...daffProvideProductMagentoExtraProductPreviewTransforms<MagentoBundledProduct>(\n (daffProduct, magentoProduct) =>\n magentoProduct.__typename === MagentoProductTypeEnum.BundledProduct\n ? {\n ...daffProduct,\n items: [],\n price: 0,\n discount: {\n amount: 0,\n percent: 0,\n },\n }\n : daffProduct,\n ),\n ],\n };\n }\n}\n","import {\n MagentoProduct,\n MagentoProductStockStatusEnum,\n} from '@daffodil/product/driver/magento';\n\nexport enum MagentoPriceTypeEnum {\n fixed = 'FIXED',\n percent = 'PERCENT',\n dynamic = 'DYNAMIC'\n}\n\nexport interface MagentoBundledProduct extends MagentoProduct {\n items: MagentoBundledProductItem[];\n}\n\nexport interface MagentoBundledProductItem {\n required: boolean;\n title: string;\n type: string;\n options: MagentoBundledProductItemOption[];\n option_id?: number;\n}\n\nexport interface MagentoBundledProductItemOption {\n uid: string;\n label: string;\n quantity: number;\n is_default: boolean;\n position: number;\n product: MagentoBundledProductItemOptionProduct;\n}\n\nexport interface MagentoBundledProductItemOptionProduct {\n stock_status?: MagentoProductStockStatusEnum;\n price_range: {\n maximum_price: {\n regular_price: {\n value: number;\n currency: any;\n };\n discount: {\n amount_off: number;\n percent_off: number;\n };\n };\n };\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  import { CommonModule } from '@angular/common';
2
2
  import * as i0 from '@angular/core';
3
3
  import { NgModule } from '@angular/core';
4
- import { DaffCompositeProductFactory } from '@daffodil/product-composite/testing';
5
4
  import { DAFF_PRODUCT_TYPE_FACTORIES } from '@daffodil/product/testing';
5
+ import { DaffCompositeProductFactory } from '@daffodil/product-composite/testing';
6
6
 
7
7
  /**
8
8
  * Module for providing the composite product factory to the product kind factory.
@@ -21,12 +21,10 @@ class DaffCompositeProductTestingDriverModule {
21
21
  };
22
22
  }
23
23
  }
24
- /** @nocollapse */ DaffCompositeProductTestingDriverModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCompositeProductTestingDriverModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
25
- /** @nocollapse */ DaffCompositeProductTestingDriverModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCompositeProductTestingDriverModule, imports: [CommonModule] });
26
- /** @nocollapse */ DaffCompositeProductTestingDriverModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCompositeProductTestingDriverModule, imports: [[
27
- CommonModule,
28
- ]] });
29
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffCompositeProductTestingDriverModule, decorators: [{
24
+ /** @nocollapse */ DaffCompositeProductTestingDriverModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DaffCompositeProductTestingDriverModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
25
+ /** @nocollapse */ DaffCompositeProductTestingDriverModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: DaffCompositeProductTestingDriverModule, imports: [CommonModule] });
26
+ /** @nocollapse */ DaffCompositeProductTestingDriverModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DaffCompositeProductTestingDriverModule, imports: [CommonModule] });
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DaffCompositeProductTestingDriverModule, decorators: [{
30
28
  type: NgModule,
31
29
  args: [{
32
30
  imports: [