@esolve/ng-esolve-connect 0.93.0 → 0.95.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (121) hide show
  1. package/esm2022/index.mjs +3 -1
  2. package/esm2022/lib/account/esolve-account.service.mjs +4 -4
  3. package/esm2022/lib/account/user-account/classes/esolve-erp-document-request.model.mjs +6 -3
  4. package/esm2022/lib/account/user-account/interfaces/esolve-erp-document-request-record.interface.mjs +1 -1
  5. package/esm2022/lib/assets/esolve-assets.service.mjs +4 -4
  6. package/esm2022/lib/auth/esolve-auth-interceptor.service.mjs +4 -4
  7. package/esm2022/lib/auth/esolve-auth.service.mjs +4 -4
  8. package/esm2022/lib/auth/esolve-otp.service.mjs +4 -4
  9. package/esm2022/lib/banners/esolve-banner.service.mjs +4 -4
  10. package/esm2022/lib/cart/esolve-cart.service.mjs +4 -4
  11. package/esm2022/lib/cart/interfaces/esolve-cart-item-record.interface.mjs +1 -1
  12. package/esm2022/lib/category-tree/esolve-category-tree.service.mjs +4 -4
  13. package/esm2022/lib/competitions/services/esolve-competitions.service.mjs +4 -4
  14. package/esm2022/lib/core/esolve-config.service.mjs +4 -4
  15. package/esm2022/lib/coupons/esolve-coupons.service.mjs +4 -4
  16. package/esm2022/lib/deliveries/esolve-deliveries.service.mjs +4 -4
  17. package/esm2022/lib/device/esolve-device.service.mjs +4 -4
  18. package/esm2022/lib/enquiry/esolve-enquiry.service.mjs +4 -4
  19. package/esm2022/lib/geocoder/esolve-geocoder.service.mjs +4 -4
  20. package/esm2022/lib/images/directives/cdn-src.directive.mjs +4 -4
  21. package/esm2022/lib/locations/esolve-locations.service.mjs +4 -4
  22. package/esm2022/lib/manufacturers/esolve-manufacturers.service.mjs +4 -4
  23. package/esm2022/lib/menu/esolve-menu.service.mjs +4 -4
  24. package/esm2022/lib/news/esolve-news.service.mjs +4 -4
  25. package/esm2022/lib/ng-esolve-connect.module.mjs +5 -5
  26. package/esm2022/lib/payment/esolve-payment.service.mjs +4 -4
  27. package/esm2022/lib/ranges/esolve-ranges.service.mjs +4 -4
  28. package/esm2022/lib/reviews/classes/esolve-review-list.model.mjs +10 -0
  29. package/esm2022/lib/reviews/classes/esolve-review-result.model.mjs +9 -0
  30. package/esm2022/lib/reviews/classes/esolve-review.model.mjs +22 -0
  31. package/esm2022/lib/reviews/classes/index.mjs +4 -0
  32. package/esm2022/lib/reviews/index.mjs +5 -0
  33. package/esm2022/lib/reviews/interfaces/esolve-review-list-record.interface.mjs +2 -0
  34. package/esm2022/lib/reviews/interfaces/esolve-review-options.interface.mjs +2 -0
  35. package/esm2022/lib/reviews/interfaces/esolve-review-record.interface.mjs +2 -0
  36. package/esm2022/lib/reviews/interfaces/esolve-review-report.interface.mjs +2 -0
  37. package/esm2022/lib/reviews/interfaces/esolve-review-user.interface.mjs +2 -0
  38. package/esm2022/lib/reviews/interfaces/index.mjs +6 -0
  39. package/esm2022/lib/reviews/services/esolve-reviews.service.mjs +134 -0
  40. package/esm2022/lib/reviews/services/index.mjs +2 -0
  41. package/esm2022/lib/reviews/types/esolve-review-response.type.mjs +2 -0
  42. package/esm2022/lib/reviews/types/esolve-review-sort-field.type.mjs +2 -0
  43. package/esm2022/lib/reviews/types/index.mjs +3 -0
  44. package/esm2022/lib/seo/esolve-seo.service.mjs +4 -4
  45. package/esm2022/lib/session/esolve-session-metadata.service.mjs +4 -4
  46. package/esm2022/lib/session/esolve-session.service.mjs +4 -4
  47. package/esm2022/lib/shared/cookie/esolve-cookie.service.mjs +4 -4
  48. package/esm2022/lib/shared/custom-fields/index.mjs +1 -2
  49. package/esm2022/lib/shared/custom-fields/interfaces/index.mjs +1 -3
  50. package/esm2022/lib/shared/errors/esolve-error-handler.service.mjs +4 -4
  51. package/esm2022/lib/shared/response/esolve-response-handler.service.mjs +4 -4
  52. package/esm2022/lib/shipping/esolve-shipping.service.mjs +4 -4
  53. package/esm2022/lib/specials/esolve-specials.service.mjs +4 -4
  54. package/esm2022/lib/stock/classes/esolve-stock-item-base.model.mjs +12 -3
  55. package/esm2022/lib/stock/esolve-stock.service.mjs +4 -4
  56. package/esm2022/lib/stock/interfaces/esolve-stock-base-record.interface.mjs +1 -1
  57. package/esm2022/lib/stock/interfaces/esolve-stock-cart-parameter.interface.mjs +2 -0
  58. package/esm2022/lib/stock/interfaces/index.mjs +2 -1
  59. package/esm2022/lib/stock/types/esolve-stock-cart-parameter-input.type.mjs +2 -0
  60. package/esm2022/lib/stock/types/index.mjs +2 -1
  61. package/esm2022/lib/suppliers/esolve-suppliers.service.mjs +4 -4
  62. package/esm2022/lib/tags/esolve-tags.service.mjs +4 -4
  63. package/esm2022/lib/topics/esolve-topic.service.mjs +4 -4
  64. package/esm2022/lib/transactions/esolve-transactions.service.mjs +4 -4
  65. package/esm2022/lib/transactions/interfaces/esolve-transaction-item-record.interface.mjs +1 -1
  66. package/esm2022/lib/vouchers/esolve-vouchers.service.mjs +4 -4
  67. package/esm2022/lib/wallet/esolve-wallet.service.mjs +4 -4
  68. package/esm2022/lib/wishlist/esolve-wishlist.service.mjs +4 -4
  69. package/esm2022/media/lib/components/media-layout/esolve-media-layout.component.mjs +4 -4
  70. package/esm2022/media/lib/components/media-section/esolve-media-section.component.mjs +4 -4
  71. package/esm2022/media/lib/ng-esolve-connect-media.module.mjs +5 -5
  72. package/esm2022/media/lib/services/esolve-media-layout.service.mjs +4 -4
  73. package/esm2022/media/lib/services/esolve-media.service.mjs +4 -4
  74. package/esm2022/notifications/lib/services/esolve-notifications.service.mjs +4 -4
  75. package/esm2022/survey/lib/services/esolve-survey.service.mjs +4 -4
  76. package/fesm2022/esolve-ng-esolve-connect-media.mjs +16 -16
  77. package/fesm2022/esolve-ng-esolve-connect-media.mjs.map +1 -1
  78. package/fesm2022/esolve-ng-esolve-connect-notifications.mjs +3 -3
  79. package/fesm2022/esolve-ng-esolve-connect-notifications.mjs.map +1 -1
  80. package/fesm2022/esolve-ng-esolve-connect-survey.mjs +3 -3
  81. package/fesm2022/esolve-ng-esolve-connect-survey.mjs.map +1 -1
  82. package/fesm2022/esolve-ng-esolve-connect.mjs +300 -123
  83. package/fesm2022/esolve-ng-esolve-connect.mjs.map +1 -1
  84. package/index.d.ts +1 -0
  85. package/lib/cart/interfaces/esolve-cart-item-record.interface.d.ts +2 -2
  86. package/lib/reviews/classes/esolve-review-list.model.d.ts +7 -0
  87. package/lib/reviews/classes/esolve-review-result.model.d.ts +6 -0
  88. package/lib/reviews/classes/esolve-review.model.d.ts +14 -0
  89. package/lib/reviews/classes/index.d.ts +3 -0
  90. package/lib/reviews/index.d.ts +4 -0
  91. package/lib/reviews/interfaces/esolve-review-list-record.interface.d.ts +6 -0
  92. package/lib/reviews/interfaces/esolve-review-options.interface.d.ts +10 -0
  93. package/lib/reviews/interfaces/esolve-review-record.interface.d.ts +9 -0
  94. package/lib/reviews/interfaces/esolve-review-report.interface.d.ts +4 -0
  95. package/lib/reviews/interfaces/esolve-review-user.interface.d.ts +4 -0
  96. package/lib/reviews/interfaces/index.d.ts +5 -0
  97. package/lib/reviews/services/esolve-reviews.service.d.ts +27 -0
  98. package/lib/reviews/services/index.d.ts +1 -0
  99. package/lib/reviews/types/esolve-review-response.type.d.ts +2 -0
  100. package/lib/reviews/types/esolve-review-sort-field.type.d.ts +1 -0
  101. package/lib/reviews/types/index.d.ts +2 -0
  102. package/lib/shared/custom-fields/index.d.ts +0 -1
  103. package/lib/shared/custom-fields/interfaces/index.d.ts +0 -2
  104. package/lib/stock/classes/esolve-stock-item-base.model.d.ts +7 -3
  105. package/lib/stock/interfaces/esolve-stock-base-record.interface.d.ts +4 -2
  106. package/lib/stock/interfaces/esolve-stock-cart-parameter.interface.d.ts +8 -0
  107. package/lib/stock/interfaces/index.d.ts +1 -0
  108. package/lib/stock/types/esolve-stock-cart-parameter-input.type.d.ts +1 -0
  109. package/lib/stock/types/index.d.ts +1 -0
  110. package/lib/transactions/interfaces/esolve-transaction-item-record.interface.d.ts +2 -2
  111. package/package.json +1 -1
  112. package/esm2022/lib/shared/custom-fields/interfaces/esolve-custom-fields-metadata-item.interface.mjs +0 -2
  113. package/esm2022/lib/shared/custom-fields/interfaces/esolve-custom-fields-metadata.interface.mjs +0 -2
  114. package/esm2022/lib/shared/custom-fields/types/esolve-input-sub-type.type.mjs +0 -2
  115. package/esm2022/lib/shared/custom-fields/types/esolve-input-type.type.mjs +0 -2
  116. package/esm2022/lib/shared/custom-fields/types/index.mjs +0 -3
  117. package/lib/shared/custom-fields/interfaces/esolve-custom-fields-metadata-item.interface.d.ts +0 -10
  118. package/lib/shared/custom-fields/interfaces/esolve-custom-fields-metadata.interface.d.ts +0 -4
  119. package/lib/shared/custom-fields/types/esolve-input-sub-type.type.d.ts +0 -1
  120. package/lib/shared/custom-fields/types/esolve-input-type.type.d.ts +0 -1
  121. package/lib/shared/custom-fields/types/index.d.ts +0 -2
@@ -88,13 +88,13 @@ export class EsolveSurveyService {
88
88
  }
89
89
  return params;
90
90
  }
91
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: EsolveSurveyService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
92
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: EsolveSurveyService, providedIn: 'root' }); }
91
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EsolveSurveyService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
92
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EsolveSurveyService, providedIn: 'root' }); }
93
93
  }
94
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: EsolveSurveyService, decorators: [{
94
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EsolveSurveyService, decorators: [{
95
95
  type: Injectable,
96
96
  args: [{
97
97
  providedIn: 'root',
98
98
  }]
99
99
  }] });
100
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLXN1cnZleS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9uZy1lc29sdmUtY29ubmVjdC9zdXJ2ZXkvc3JjL2xpYi9zZXJ2aWNlcy9lc29sdmUtc3VydmV5LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUNILFVBQVUsRUFDVixVQUFVLEdBRWIsTUFBTSxzQkFBc0IsQ0FBQztBQUU5QixPQUFPLEVBQWMsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzlDLE9BQU8sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFakQsT0FBTyxFQUNILHlCQUF5QixFQUV6Qiw0QkFBNEIsRUFFNUIsbUJBQW1CLEdBQ3RCLE1BQU0sMkJBQTJCLENBQUM7QUFRbkMsT0FBTyxFQUFFLFlBQVksRUFBRSx3QkFBd0IsRUFBRSxNQUFNLFlBQVksQ0FBQzs7QUFLcEUsTUFBTSxPQUFPLG1CQUFtQjtJQUhoQztRQUlxQixXQUFNLEdBQUcsTUFBTSxDQUFDLG1CQUFtQixDQUFDLENBQUM7UUFDckMsU0FBSSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUMxQixpQkFBWSxHQUFHLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1FBQ2pELG9CQUFlLEdBQUcsTUFBTSxDQUFDLDRCQUE0QixDQUFDLENBQUM7S0E2TTNFO0lBcEtHOzs7Ozs7O09BT0c7SUFDSSxTQUFTLENBQ1osYUFBb0QsRUFDcEQsY0FBdUI7UUFFdkIsSUFBSSxDQUFDO1lBQ0QsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLEVBQUUsY0FBYyxDQUFDLENBQUM7WUFFN0QsT0FBTyxJQUFJLENBQUMsSUFBSTtpQkFDWCxHQUFHLENBQ0EsR0FB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QUM7UUFFRCxJQUFJLE9BQU8sY0FBYyxLQUFLLFdBQVcsRUFBRSxDQUFDO1lBQ3hDLE1BQU0sR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxjQUFjLENBQUMsQ0FBQztRQUNuRCxDQUFDO1FBRUQsT0FBTyxNQUFNLENBQUM7SUFDbEIsQ0FBQzs4R0FoTlEsbUJBQW1CO2tIQUFuQixtQkFBbUIsY0FGaEIsTUFBTTs7MkZBRVQsbUJBQW1CO2tCQUgvQixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBIdHRwQ2xpZW50LFxuICAgIEh0dHBQYXJhbXMsXG4gICAgSHR0cEVycm9yUmVzcG9uc2UsXG59IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcblxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgdGhyb3dFcnJvciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQge1xuICAgIEVzb2x2ZUVycm9ySGFuZGxlclNlcnZpY2UsXG4gICAgRXNvbHZlR2V0UmVzcG9uc2UsXG4gICAgRXNvbHZlUmVzcG9uc2VIYW5kbGVyU2VydmljZSxcbiAgICBFc29sdmVTZXRSZXNwb25zZSxcbiAgICBFc29sdmVDb25maWdTZXJ2aWNlLFxufSBmcm9tICdAZXNvbHZlL25nLWVzb2x2ZS1jb25uZWN0JztcblxuaW1wb3J0IHtcbiAgICBFc29sdmVTdXJ2ZXlBbnN3ZXJSZXNwb25zZSxcbiAgICBFc29sdmVTdXJ2ZXlPcHRpb25zLFxuICAgIEVzb2x2ZVN1cnZleVJlY29yZCxcbn0gZnJvbSAnLi4vaW50ZXJmYWNlcyc7XG5cbmltcG9ydCB7IEVzb2x2ZVN1cnZleSwgRXNvbHZlU3VydmV5QW5zd2VyUmVzdWx0IH0gZnJvbSAnLi4vY2xhc3Nlcyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIEVzb2x2ZVN1cnZleVNlcnZpY2Uge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgY29uZmlnID0gaW5qZWN0KEVzb2x2ZUNvbmZpZ1NlcnZpY2UpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgaHR0cCA9IGluamVjdChIdHRwQ2xpZW50KTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGVycm9ySGFuZGxlciA9IGluamVjdChFc29sdmVFcnJvckhhbmRsZXJTZXJ2aWNlKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJlc3BvbnNlSGFuZGxlciA9IGluamVjdChFc29sdmVSZXNwb25zZUhhbmRsZXJTZXJ2aWNlKTtcblxuICAgIC8qKlxuICAgICAqIEdldCBzdXJ2ZXkgZnJvbSBlU29sdmUgQVBJXG4gICAgICpcbiAgICAgKiBAcGFyYW0gb3B0aW9uc1xuICAgICAqXG4gICAgICogQHJldHVybnMgQW4gYE9ic2VydmFibGVgIHdpdGggcmVxdWVzdGVkIHN1cnZleVxuICAgICAqL1xuICAgIHB1YmxpYyBnZXRTdXJ2ZXkob3B0aW9uczoge1xuICAgICAgICBpZDogbnVtYmVyO1xuICAgICAgICB0cmFuc2FjdGlvbl9pZD86IG51bWJlcjtcbiAgICB9KTogT2JzZXJ2YWJsZTxFc29sdmVTdXJ2ZXk+O1xuICAgIHB1YmxpYyBnZXRTdXJ2ZXkob3B0aW9uczoge1xuICAgICAgICBpZGVudGlmaWVyOiBzdHJpbmc7XG4gICAgICAgIHRyYW5zYWN0aW9uX2lkPzogbnVtYmVyO1xuICAgIH0pOiBPYnNlcnZhYmxlPEVzb2x2ZVN1cnZleT47XG4gICAgLyoqXG4gICAgICogR2V0IHN1cnZleSBmcm9tIGVTb2x2ZSBBUElcbiAgICAgKlxuICAgICAqIEBwYXJhbSBpZFxuICAgICAqIEBwYXJhbSB0cmFuc2FjdGlvbl9pZFxuICAgICAqXG4gICAgICogQHJldHVybnMgQW4gYE9ic2VydmFibGVgIHdpdGggcmVxdWVzdGVkIHN1cnZleVxuICAgICAqL1xuICAgIHB1YmxpYyBnZXRTdXJ2ZXkoXG4gICAgICAgIGlkOiBudW1iZXIsXG4gICAgICAgIHRyYW5zYWN0aW9uX2lkPzogbnVtYmVyLFxuICAgICk6IE9ic2VydmFibGU8RXNvbHZlU3VydmV5PjtcbiAgICAvKipcbiAgICAgKiBHZXQgc3VydmV5IGZyb20gZVNvbHZlIEFQSVxuICAgICAqXG4gICAgICogQHBhcmFtIGlkZW50aWZpZXJcbiAgICAgKiBAcGFyYW0gdHJhbnNhY3Rpb25faWRcbiAgICAgKlxuICAgICAqIEByZXR1cm5zIEFuIGBPYnNlcnZhYmxlYCB3aXRoIHJlcXVlc3RlZCBzdXJ2ZXlcbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0U3VydmV5KFxuICAgICAgICBpZGVudGlmaWVyOiBzdHJpbmcsXG4gICAgICAgIHRyYW5zYWN0aW9uX2lkPzogbnVtYmVyLFxuICAgICk6IE9ic2VydmFibGU8RXNvbHZlU3VydmV5PjtcbiAgICAvKipcbiAgICAgKiBHZXQgc3VydmV5IGZyb20gZVNvbHZlIEFQSVxuICAgICAqXG4gICAgICogQHBhcmFtIG9wdGlvbnNfb3JfaWRcbiAgICAgKiBAcGFyYW0gdHJhbnNhY3Rpb25faWRcbiAgICAgKlxuICAgICAqIEByZXR1cm5zIEFuIGBPYnNlcnZhYmxlYCB3aXRoIHJlcXVlc3RlZCBzdXJ2ZXlcbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0U3VydmV5KFxuICAgICAgICBvcHRpb25zX29yX2lkOiBzdHJpbmcgfCBudW1iZXIgfCBFc29sdmVTdXJ2ZXlPcHRpb25zLFxuICAgICAgICB0cmFuc2FjdGlvbl9pZD86IG51bWJlcixcbiAgICApOiBPYnNlcnZhYmxlPEVzb2x2ZVN1cnZleT4ge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgY29uc3QgcGFyYW1zID0gdGhpcy5zZXRQYXJhbXMob3B0aW9uc19vcl9pZCwgdHJhbnNhY3Rpb25faWQpO1xuXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAgICAgICAgICAgLmdldDxFc29sdmVHZXRSZXNwb25zZTxFc29sdmVTdXJ2ZXlSZWNvcmQ+PihcbiAgICAgICAgICAgICAgICAgICAgYCR7dGhpcy5jb25maWcuYXBpX3VybH0vZ2V0LXN1cnZleS5waHBgLFxuICAgICAgICAgICAgICAgICAgICB7IHBhcmFtcyB9LFxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICAgICAgbWFwKChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3BvbnNlLnJlY29yZHMgPT09IHVuZGVmaW5lZCB8fFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFycmF5LmlzQXJyYXkocmVzcG9uc2UucmVjb3JkcylcbiAgICAgICAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IHJlc3BvbnNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbmV3IEVzb2x2ZVN1cnZleShyZXNwb25zZS5yZWNvcmRzKTtcbiAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IGVycm9yKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNldCB0aGUgc3VydmV5IGFuc3dlclxuICAgICAqXG4gICAgICogQHBhcmFtIGRhdGFcbiAgICAgKiBAcGFyYW0gb3B0aW9uc1xuICAgICAqXG4gICAgICogQHJldHVybnMgQW4gYE9ic2VydmFibGVgIHdpdGggdGhlIHJlc3VsdFxuICAgICAqL1xuICAgIHB1YmxpYyBzZXRTdXJ2ZXlBbnN3ZXIoXG4gICAgICAgIGRhdGE6IEZvcm1EYXRhLFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICBpZDogbnVtYmVyO1xuICAgICAgICAgICAgdHJhbnNhY3Rpb25faWQ/OiBudW1iZXI7XG4gICAgICAgIH0sXG4gICAgKTogT2JzZXJ2YWJsZTxFc29sdmVTdXJ2ZXlBbnN3ZXJSZXN1bHQ+O1xuICAgIHB1YmxpYyBzZXRTdXJ2ZXlBbnN3ZXIoXG4gICAgICAgIGRhdGE6IEZvcm1EYXRhLFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICBpZGVudGlmaWVyOiBzdHJpbmc7XG4gICAgICAgICAgICB0cmFuc2FjdGlvbl9pZD86IG51bWJlcjtcbiAgICAgICAgfSxcbiAgICApOiBPYnNlcnZhYmxlPEVzb2x2ZVN1cnZleUFuc3dlclJlc3VsdD47XG4gICAgLyoqXG4gICAgICogU2V0IHRoZSBzdXJ2ZXkgYW5zd2VyXG4gICAgICpcbiAgICAgKiBAcGFyYW0gZGF0YVxuICAgICAqIEBwYXJhbSBpZFxuICAgICAqIEBwYXJhbSB0cmFuc2FjdGlvbl9pZFxuICAgICAqXG4gICAgICogQHJldHVybnMgQW4gYE9ic2VydmFibGVgIHdpdGggdGhlIHJlc3VsdFxuICAgICAqL1xuICAgIHB1YmxpYyBzZXRTdXJ2ZXlBbnN3ZXIoXG4gICAgICAgIGRhdGE6IEZvcm1EYXRhLFxuICAgICAgICBpZDogbnVtYmVyLFxuICAgICAgICB0cmFuc2FjdGlvbl9pZD86IG51bWJlcixcbiAgICApOiBPYnNlcnZhYmxlPEVzb2x2ZVN1cnZleUFuc3dlclJlc3VsdD47XG4gICAgLyoqXG4gICAgICogU2V0IHRoZSBzdXJ2ZXkgYW5zd2VyXG4gICAgICpcbiAgICAgKiBAcGFyYW0gZGF0YVxuICAgICAqIEBwYXJhbSBpZGVudGlmaWVyXG4gICAgICogQHBhcmFtIHRyYW5zYWN0aW9uX2lkXG4gICAgICpcbiAgICAgKiBAcmV0dXJucyBBbiBgT2JzZXJ2YWJsZWAgd2l0aCB0aGUgcmVzdWx0XG4gICAgICovXG4gICAgcHVibGljIHNldFN1cnZleUFuc3dlcihcbiAgICAgICAgZGF0YTogRm9ybURhdGEsXG4gICAgICAgIGlkZW50aWZpZXI6IHN0cmluZyxcbiAgICAgICAgdHJhbnNhY3Rpb25faWQ/OiBudW1iZXIsXG4gICAgKTogT2JzZXJ2YWJsZTxFc29sdmVTdXJ2ZXlBbnN3ZXJSZXN1bHQ+O1xuICAgIC8qKlxuICAgICAqIFNldCB0aGUgc3VydmV5IGFuc3dlclxuICAgICAqXG4gICAgICogQHBhcmFtIGRhdGFcbiAgICAgKiBAcGFyYW0gb3B0aW9uc19vcl9pZFxuICAgICAqIEBwYXJhbSB0cmFuc2FjdGlvbl9pZFxuICAgICAqXG4gICAgICogQHJldHVybnMgQW4gYE9ic2VydmFibGVgIHdpdGggdGhlIHJlc3VsdFxuICAgICAqL1xuICAgIHB1YmxpYyBzZXRTdXJ2ZXlBbnN3ZXIoXG4gICAgICAgIGRhdGE6IEZvcm1EYXRhLFxuICAgICAgICBvcHRpb25zX29yX2lkOiBzdHJpbmcgfCBudW1iZXIgfCBFc29sdmVTdXJ2ZXlPcHRpb25zLFxuICAgICAgICB0cmFuc2FjdGlvbl9pZD86IG51bWJlcixcbiAgICApOiBPYnNlcnZhYmxlPEVzb2x2ZVN1cnZleUFuc3dlclJlc3VsdD4ge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgY29uc3QgcGFyYW1zID0gdGhpcy5zZXRQYXJhbXMob3B0aW9uc19vcl9pZCwgdHJhbnNhY3Rpb25faWQpO1xuXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAgICAgICAgICAgLnBvc3Q8RXNvbHZlU2V0UmVzcG9uc2U8RXNvbHZlU3VydmV5QW5zd2VyUmVzcG9uc2U+PihcbiAgICAgICAgICAgICAgICAgICAgYCR7dGhpcy5jb25maWcuYXBpX3VybH0vc2V0LXN1cnZleS1hbnN3ZXIucGhwYCxcbiAgICAgICAgICAgICAgICAgICAgZGF0YSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmVzcG9uc2VUeXBlOiAnanNvbicsXG4gICAgICAgICAgICAgICAgICAgICAgICBvYnNlcnZlOiAnYm9keScsXG4gICAgICAgICAgICAgICAgICAgICAgICBwYXJhbXMsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgICAgICBtYXAoKGh0dHBfcmVzcG9uc2UpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJlc3BvbnNlSGFuZGxlci52YWxpZGF0ZVNpbmdsZUh0dHBSZXNwb25zZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBodHRwX3Jlc3BvbnNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChyZXNwb25zZSkgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3IEVzb2x2ZVN1cnZleUFuc3dlclJlc3VsdChyZXNwb25zZSksXG4gICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICBjYXRjaEVycm9yKChlcnJvclJlczogSHR0cEVycm9yUmVzcG9uc2UgfCBhbnkpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmVycm9ySGFuZGxlci5oYW5kbGVIdHRwUG9zdEVycm9yKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdzZXQtc3VydmV5LWFuc3dlcicsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JSZXMsXG4gICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gZXJyb3IpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRQYXJhbXMoXG4gICAgICAgIG9wdGlvbnNfb3JfaWQ6IHN0cmluZyB8IG51bWJlciB8IEVzb2x2ZVN1cnZleU9wdGlvbnMsXG4gICAgICAgIHRyYW5zYWN0aW9uX2lkPzogbnVtYmVyLFxuICAgICk6IEh0dHBQYXJhbXMge1xuICAgICAgICBsZXQgcGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoKTtcblxuICAgICAgICBpZiAodHlwZW9mIG9wdGlvbnNfb3JfaWQgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdpZGVudGlmaWVyJywgb3B0aW9uc19vcl9pZCk7XG4gICAgICAgIH0gZWxzZSBpZiAodHlwZW9mIG9wdGlvbnNfb3JfaWQgPT09ICdudW1iZXInKSB7XG4gICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdzdXJ2ZXlzX2lkJywgb3B0aW9uc19vcl9pZCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBpZiAodHlwZW9mIG9wdGlvbnNfb3JfaWQuaWQgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgnc3VydmV5c19pZCcsIG9wdGlvbnNfb3JfaWQuaWQpO1xuICAgICAgICAgICAgfSBlbHNlIGlmICh0eXBlb2Ygb3B0aW9uc19vcl9pZC5pZGVudGlmaWVyICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ2lkZW50aWZpZXInLCBvcHRpb25zX29yX2lkLmlkZW50aWZpZXIpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgICAgICAgICAgICdFaXRoZXIgSUQgb3IgSWRlbnRpZmllciBpcyByZXF1aXJlZCB0byByZXRyaWV2ZSBzdXJ2ZXknLFxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRyYW5zYWN0aW9uX2lkID0gb3B0aW9uc19vcl9pZC50cmFuc2FjdGlvbl9pZDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0eXBlb2YgdHJhbnNhY3Rpb25faWQgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdjYXJ0X2lkJywgdHJhbnNhY3Rpb25faWQpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHBhcmFtcztcbiAgICB9XG59XG4iXX0=
100
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLXN1cnZleS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9uZy1lc29sdmUtY29ubmVjdC9zdXJ2ZXkvc3JjL2xpYi9zZXJ2aWNlcy9lc29sdmUtc3VydmV5LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUNILFVBQVUsRUFDVixVQUFVLEdBRWIsTUFBTSxzQkFBc0IsQ0FBQztBQUU5QixPQUFPLEVBQWMsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzlDLE9BQU8sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFakQsT0FBTyxFQUNILHlCQUF5QixFQUV6Qiw0QkFBNEIsRUFFNUIsbUJBQW1CLEdBQ3RCLE1BQU0sMkJBQTJCLENBQUM7QUFRbkMsT0FBTyxFQUFFLFlBQVksRUFBRSx3QkFBd0IsRUFBRSxNQUFNLFlBQVksQ0FBQzs7QUFLcEUsTUFBTSxPQUFPLG1CQUFtQjtJQUhoQztRQUlxQixXQUFNLEdBQUcsTUFBTSxDQUFDLG1CQUFtQixDQUFDLENBQUM7UUFDckMsU0FBSSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUMxQixpQkFBWSxHQUFHLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1FBQ2pELG9CQUFlLEdBQUcsTUFBTSxDQUFDLDRCQUE0QixDQUFDLENBQUM7S0E2TTNFO0lBcEtHOzs7Ozs7O09BT0c7SUFDSSxTQUFTLENBQ1osYUFBb0QsRUFDcEQsY0FBdUI7UUFFdkIsSUFBSSxDQUFDO1lBQ0QsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLEVBQUUsY0FBYyxDQUFDLENBQUM7WUFFN0QsT0FBTyxJQUFJLENBQUMsSUFBSTtpQkFDWCxHQUFHLENBQ0EsR0FB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QUM7UUFFRCxJQUFJLE9BQU8sY0FBYyxLQUFLLFdBQVcsRUFBRSxDQUFDO1lBQ3hDLE1BQU0sR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxjQUFjLENBQUMsQ0FBQztRQUNuRCxDQUFDO1FBRUQsT0FBTyxNQUFNLENBQUM7SUFDbEIsQ0FBQzsrR0FoTlEsbUJBQW1CO21IQUFuQixtQkFBbUIsY0FGaEIsTUFBTTs7NEZBRVQsbUJBQW1CO2tCQUgvQixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBIdHRwQ2xpZW50LFxuICAgIEh0dHBQYXJhbXMsXG4gICAgSHR0cEVycm9yUmVzcG9uc2UsXG59IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcblxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgdGhyb3dFcnJvciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQge1xuICAgIEVzb2x2ZUVycm9ySGFuZGxlclNlcnZpY2UsXG4gICAgRXNvbHZlR2V0UmVzcG9uc2UsXG4gICAgRXNvbHZlUmVzcG9uc2VIYW5kbGVyU2VydmljZSxcbiAgICBFc29sdmVTZXRSZXNwb25zZSxcbiAgICBFc29sdmVDb25maWdTZXJ2aWNlLFxufSBmcm9tICdAZXNvbHZlL25nLWVzb2x2ZS1jb25uZWN0JztcblxuaW1wb3J0IHtcbiAgICBFc29sdmVTdXJ2ZXlBbnN3ZXJSZXNwb25zZSxcbiAgICBFc29sdmVTdXJ2ZXlPcHRpb25zLFxuICAgIEVzb2x2ZVN1cnZleVJlY29yZCxcbn0gZnJvbSAnLi4vaW50ZXJmYWNlcyc7XG5cbmltcG9ydCB7IEVzb2x2ZVN1cnZleSwgRXNvbHZlU3VydmV5QW5zd2VyUmVzdWx0IH0gZnJvbSAnLi4vY2xhc3Nlcyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIEVzb2x2ZVN1cnZleVNlcnZpY2Uge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgY29uZmlnID0gaW5qZWN0KEVzb2x2ZUNvbmZpZ1NlcnZpY2UpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgaHR0cCA9IGluamVjdChIdHRwQ2xpZW50KTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGVycm9ySGFuZGxlciA9IGluamVjdChFc29sdmVFcnJvckhhbmRsZXJTZXJ2aWNlKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJlc3BvbnNlSGFuZGxlciA9IGluamVjdChFc29sdmVSZXNwb25zZUhhbmRsZXJTZXJ2aWNlKTtcblxuICAgIC8qKlxuICAgICAqIEdldCBzdXJ2ZXkgZnJvbSBlU29sdmUgQVBJXG4gICAgICpcbiAgICAgKiBAcGFyYW0gb3B0aW9uc1xuICAgICAqXG4gICAgICogQHJldHVybnMgQW4gYE9ic2VydmFibGVgIHdpdGggcmVxdWVzdGVkIHN1cnZleVxuICAgICAqL1xuICAgIHB1YmxpYyBnZXRTdXJ2ZXkob3B0aW9uczoge1xuICAgICAgICBpZDogbnVtYmVyO1xuICAgICAgICB0cmFuc2FjdGlvbl9pZD86IG51bWJlcjtcbiAgICB9KTogT2JzZXJ2YWJsZTxFc29sdmVTdXJ2ZXk+O1xuICAgIHB1YmxpYyBnZXRTdXJ2ZXkob3B0aW9uczoge1xuICAgICAgICBpZGVudGlmaWVyOiBzdHJpbmc7XG4gICAgICAgIHRyYW5zYWN0aW9uX2lkPzogbnVtYmVyO1xuICAgIH0pOiBPYnNlcnZhYmxlPEVzb2x2ZVN1cnZleT47XG4gICAgLyoqXG4gICAgICogR2V0IHN1cnZleSBmcm9tIGVTb2x2ZSBBUElcbiAgICAgKlxuICAgICAqIEBwYXJhbSBpZFxuICAgICAqIEBwYXJhbSB0cmFuc2FjdGlvbl9pZFxuICAgICAqXG4gICAgICogQHJldHVybnMgQW4gYE9ic2VydmFibGVgIHdpdGggcmVxdWVzdGVkIHN1cnZleVxuICAgICAqL1xuICAgIHB1YmxpYyBnZXRTdXJ2ZXkoXG4gICAgICAgIGlkOiBudW1iZXIsXG4gICAgICAgIHRyYW5zYWN0aW9uX2lkPzogbnVtYmVyLFxuICAgICk6IE9ic2VydmFibGU8RXNvbHZlU3VydmV5PjtcbiAgICAvKipcbiAgICAgKiBHZXQgc3VydmV5IGZyb20gZVNvbHZlIEFQSVxuICAgICAqXG4gICAgICogQHBhcmFtIGlkZW50aWZpZXJcbiAgICAgKiBAcGFyYW0gdHJhbnNhY3Rpb25faWRcbiAgICAgKlxuICAgICAqIEByZXR1cm5zIEFuIGBPYnNlcnZhYmxlYCB3aXRoIHJlcXVlc3RlZCBzdXJ2ZXlcbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0U3VydmV5KFxuICAgICAgICBpZGVudGlmaWVyOiBzdHJpbmcsXG4gICAgICAgIHRyYW5zYWN0aW9uX2lkPzogbnVtYmVyLFxuICAgICk6IE9ic2VydmFibGU8RXNvbHZlU3VydmV5PjtcbiAgICAvKipcbiAgICAgKiBHZXQgc3VydmV5IGZyb20gZVNvbHZlIEFQSVxuICAgICAqXG4gICAgICogQHBhcmFtIG9wdGlvbnNfb3JfaWRcbiAgICAgKiBAcGFyYW0gdHJhbnNhY3Rpb25faWRcbiAgICAgKlxuICAgICAqIEByZXR1cm5zIEFuIGBPYnNlcnZhYmxlYCB3aXRoIHJlcXVlc3RlZCBzdXJ2ZXlcbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0U3VydmV5KFxuICAgICAgICBvcHRpb25zX29yX2lkOiBzdHJpbmcgfCBudW1iZXIgfCBFc29sdmVTdXJ2ZXlPcHRpb25zLFxuICAgICAgICB0cmFuc2FjdGlvbl9pZD86IG51bWJlcixcbiAgICApOiBPYnNlcnZhYmxlPEVzb2x2ZVN1cnZleT4ge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgY29uc3QgcGFyYW1zID0gdGhpcy5zZXRQYXJhbXMob3B0aW9uc19vcl9pZCwgdHJhbnNhY3Rpb25faWQpO1xuXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAgICAgICAgICAgLmdldDxFc29sdmVHZXRSZXNwb25zZTxFc29sdmVTdXJ2ZXlSZWNvcmQ+PihcbiAgICAgICAgICAgICAgICAgICAgYCR7dGhpcy5jb25maWcuYXBpX3VybH0vZ2V0LXN1cnZleS5waHBgLFxuICAgICAgICAgICAgICAgICAgICB7IHBhcmFtcyB9LFxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICAgICAgbWFwKChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3BvbnNlLnJlY29yZHMgPT09IHVuZGVmaW5lZCB8fFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFycmF5LmlzQXJyYXkocmVzcG9uc2UucmVjb3JkcylcbiAgICAgICAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IHJlc3BvbnNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbmV3IEVzb2x2ZVN1cnZleShyZXNwb25zZS5yZWNvcmRzKTtcbiAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IGVycm9yKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNldCB0aGUgc3VydmV5IGFuc3dlclxuICAgICAqXG4gICAgICogQHBhcmFtIGRhdGFcbiAgICAgKiBAcGFyYW0gb3B0aW9uc1xuICAgICAqXG4gICAgICogQHJldHVybnMgQW4gYE9ic2VydmFibGVgIHdpdGggdGhlIHJlc3VsdFxuICAgICAqL1xuICAgIHB1YmxpYyBzZXRTdXJ2ZXlBbnN3ZXIoXG4gICAgICAgIGRhdGE6IEZvcm1EYXRhLFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICBpZDogbnVtYmVyO1xuICAgICAgICAgICAgdHJhbnNhY3Rpb25faWQ/OiBudW1iZXI7XG4gICAgICAgIH0sXG4gICAgKTogT2JzZXJ2YWJsZTxFc29sdmVTdXJ2ZXlBbnN3ZXJSZXN1bHQ+O1xuICAgIHB1YmxpYyBzZXRTdXJ2ZXlBbnN3ZXIoXG4gICAgICAgIGRhdGE6IEZvcm1EYXRhLFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICBpZGVudGlmaWVyOiBzdHJpbmc7XG4gICAgICAgICAgICB0cmFuc2FjdGlvbl9pZD86IG51bWJlcjtcbiAgICAgICAgfSxcbiAgICApOiBPYnNlcnZhYmxlPEVzb2x2ZVN1cnZleUFuc3dlclJlc3VsdD47XG4gICAgLyoqXG4gICAgICogU2V0IHRoZSBzdXJ2ZXkgYW5zd2VyXG4gICAgICpcbiAgICAgKiBAcGFyYW0gZGF0YVxuICAgICAqIEBwYXJhbSBpZFxuICAgICAqIEBwYXJhbSB0cmFuc2FjdGlvbl9pZFxuICAgICAqXG4gICAgICogQHJldHVybnMgQW4gYE9ic2VydmFibGVgIHdpdGggdGhlIHJlc3VsdFxuICAgICAqL1xuICAgIHB1YmxpYyBzZXRTdXJ2ZXlBbnN3ZXIoXG4gICAgICAgIGRhdGE6IEZvcm1EYXRhLFxuICAgICAgICBpZDogbnVtYmVyLFxuICAgICAgICB0cmFuc2FjdGlvbl9pZD86IG51bWJlcixcbiAgICApOiBPYnNlcnZhYmxlPEVzb2x2ZVN1cnZleUFuc3dlclJlc3VsdD47XG4gICAgLyoqXG4gICAgICogU2V0IHRoZSBzdXJ2ZXkgYW5zd2VyXG4gICAgICpcbiAgICAgKiBAcGFyYW0gZGF0YVxuICAgICAqIEBwYXJhbSBpZGVudGlmaWVyXG4gICAgICogQHBhcmFtIHRyYW5zYWN0aW9uX2lkXG4gICAgICpcbiAgICAgKiBAcmV0dXJucyBBbiBgT2JzZXJ2YWJsZWAgd2l0aCB0aGUgcmVzdWx0XG4gICAgICovXG4gICAgcHVibGljIHNldFN1cnZleUFuc3dlcihcbiAgICAgICAgZGF0YTogRm9ybURhdGEsXG4gICAgICAgIGlkZW50aWZpZXI6IHN0cmluZyxcbiAgICAgICAgdHJhbnNhY3Rpb25faWQ/OiBudW1iZXIsXG4gICAgKTogT2JzZXJ2YWJsZTxFc29sdmVTdXJ2ZXlBbnN3ZXJSZXN1bHQ+O1xuICAgIC8qKlxuICAgICAqIFNldCB0aGUgc3VydmV5IGFuc3dlclxuICAgICAqXG4gICAgICogQHBhcmFtIGRhdGFcbiAgICAgKiBAcGFyYW0gb3B0aW9uc19vcl9pZFxuICAgICAqIEBwYXJhbSB0cmFuc2FjdGlvbl9pZFxuICAgICAqXG4gICAgICogQHJldHVybnMgQW4gYE9ic2VydmFibGVgIHdpdGggdGhlIHJlc3VsdFxuICAgICAqL1xuICAgIHB1YmxpYyBzZXRTdXJ2ZXlBbnN3ZXIoXG4gICAgICAgIGRhdGE6IEZvcm1EYXRhLFxuICAgICAgICBvcHRpb25zX29yX2lkOiBzdHJpbmcgfCBudW1iZXIgfCBFc29sdmVTdXJ2ZXlPcHRpb25zLFxuICAgICAgICB0cmFuc2FjdGlvbl9pZD86IG51bWJlcixcbiAgICApOiBPYnNlcnZhYmxlPEVzb2x2ZVN1cnZleUFuc3dlclJlc3VsdD4ge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgY29uc3QgcGFyYW1zID0gdGhpcy5zZXRQYXJhbXMob3B0aW9uc19vcl9pZCwgdHJhbnNhY3Rpb25faWQpO1xuXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAgICAgICAgICAgLnBvc3Q8RXNvbHZlU2V0UmVzcG9uc2U8RXNvbHZlU3VydmV5QW5zd2VyUmVzcG9uc2U+PihcbiAgICAgICAgICAgICAgICAgICAgYCR7dGhpcy5jb25maWcuYXBpX3VybH0vc2V0LXN1cnZleS1hbnN3ZXIucGhwYCxcbiAgICAgICAgICAgICAgICAgICAgZGF0YSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmVzcG9uc2VUeXBlOiAnanNvbicsXG4gICAgICAgICAgICAgICAgICAgICAgICBvYnNlcnZlOiAnYm9keScsXG4gICAgICAgICAgICAgICAgICAgICAgICBwYXJhbXMsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgICAgICBtYXAoKGh0dHBfcmVzcG9uc2UpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJlc3BvbnNlSGFuZGxlci52YWxpZGF0ZVNpbmdsZUh0dHBSZXNwb25zZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBodHRwX3Jlc3BvbnNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChyZXNwb25zZSkgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3IEVzb2x2ZVN1cnZleUFuc3dlclJlc3VsdChyZXNwb25zZSksXG4gICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICBjYXRjaEVycm9yKChlcnJvclJlczogSHR0cEVycm9yUmVzcG9uc2UgfCBhbnkpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmVycm9ySGFuZGxlci5oYW5kbGVIdHRwUG9zdEVycm9yKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdzZXQtc3VydmV5LWFuc3dlcicsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JSZXMsXG4gICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gZXJyb3IpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRQYXJhbXMoXG4gICAgICAgIG9wdGlvbnNfb3JfaWQ6IHN0cmluZyB8IG51bWJlciB8IEVzb2x2ZVN1cnZleU9wdGlvbnMsXG4gICAgICAgIHRyYW5zYWN0aW9uX2lkPzogbnVtYmVyLFxuICAgICk6IEh0dHBQYXJhbXMge1xuICAgICAgICBsZXQgcGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoKTtcblxuICAgICAgICBpZiAodHlwZW9mIG9wdGlvbnNfb3JfaWQgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdpZGVudGlmaWVyJywgb3B0aW9uc19vcl9pZCk7XG4gICAgICAgIH0gZWxzZSBpZiAodHlwZW9mIG9wdGlvbnNfb3JfaWQgPT09ICdudW1iZXInKSB7XG4gICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdzdXJ2ZXlzX2lkJywgb3B0aW9uc19vcl9pZCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBpZiAodHlwZW9mIG9wdGlvbnNfb3JfaWQuaWQgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgnc3VydmV5c19pZCcsIG9wdGlvbnNfb3JfaWQuaWQpO1xuICAgICAgICAgICAgfSBlbHNlIGlmICh0eXBlb2Ygb3B0aW9uc19vcl9pZC5pZGVudGlmaWVyICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ2lkZW50aWZpZXInLCBvcHRpb25zX29yX2lkLmlkZW50aWZpZXIpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgICAgICAgICAgICdFaXRoZXIgSUQgb3IgSWRlbnRpZmllciBpcyByZXF1aXJlZCB0byByZXRyaWV2ZSBzdXJ2ZXknLFxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRyYW5zYWN0aW9uX2lkID0gb3B0aW9uc19vcl9pZC50cmFuc2FjdGlvbl9pZDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0eXBlb2YgdHJhbnNhY3Rpb25faWQgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdjYXJ0X2lkJywgdHJhbnNhY3Rpb25faWQpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHBhcmFtcztcbiAgICB9XG59XG4iXX0=
@@ -221,10 +221,10 @@ class EsolveMediaService {
221
221
  getMediaRecords(params) {
222
222
  return this.http.get(`${this.config.api_url}/get-media.php`, { params });
223
223
  }
224
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: EsolveMediaService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
225
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: EsolveMediaService, providedIn: 'root' }); }
224
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EsolveMediaService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
225
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EsolveMediaService, providedIn: 'root' }); }
226
226
  }
227
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: EsolveMediaService, decorators: [{
227
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EsolveMediaService, decorators: [{
228
228
  type: Injectable,
229
229
  args: [{
230
230
  providedIn: 'root',
@@ -374,10 +374,10 @@ class EsolveMediaLayoutService {
374
374
  }
375
375
  return key_array.join(this.section_key_delimiter);
376
376
  }
377
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: EsolveMediaLayoutService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
378
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: EsolveMediaLayoutService }); }
377
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EsolveMediaLayoutService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
378
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EsolveMediaLayoutService }); }
379
379
  }
380
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: EsolveMediaLayoutService, decorators: [{
380
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EsolveMediaLayoutService, decorators: [{
381
381
  type: Injectable
382
382
  }], ctorParameters: () => [] });
383
383
 
@@ -398,10 +398,10 @@ class EsolveMediaLayoutComponent {
398
398
  });
399
399
  this.portal = new ComponentPortal(component, null, injector);
400
400
  }
401
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: EsolveMediaLayoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
402
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.4", type: EsolveMediaLayoutComponent, isStandalone: true, selector: "eslv-media-layout", inputs: { media: "media" }, providers: [EsolveMediaLayoutService], usesOnChanges: true, ngImport: i0, template: "<ng-template [cdkPortalOutlet]=\"portal\"></ng-template>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: PortalModule }, { kind: "directive", type: i1.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }] }); }
401
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EsolveMediaLayoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
402
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.10", type: EsolveMediaLayoutComponent, isStandalone: true, selector: "eslv-media-layout", inputs: { media: "media" }, providers: [EsolveMediaLayoutService], usesOnChanges: true, ngImport: i0, template: "<ng-template [cdkPortalOutlet]=\"portal\"></ng-template>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: PortalModule }, { kind: "directive", type: i1.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }] }); }
403
403
  }
404
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: EsolveMediaLayoutComponent, decorators: [{
404
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EsolveMediaLayoutComponent, decorators: [{
405
405
  type: Component,
406
406
  args: [{ standalone: true, selector: 'eslv-media-layout', imports: [CommonModule, PortalModule], providers: [EsolveMediaLayoutService], template: "<ng-template [cdkPortalOutlet]=\"portal\"></ng-template>\n" }]
407
407
  }], propDecorators: { media: [{
@@ -437,10 +437,10 @@ class EsolveMediaSectionComponent {
437
437
  this.portals.push(portal);
438
438
  }
439
439
  }
440
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: EsolveMediaSectionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
441
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.4", type: EsolveMediaSectionComponent, isStandalone: true, selector: "eslv-media-section", inputs: { key: "key" }, usesOnChanges: true, ngImport: i0, template: "<ng-container *ngIf=\"portals.length > 0\">\n <ng-container *ngFor=\"let portal of portals\">\n <ng-template [cdkPortalOutlet]=\"portal\"></ng-template>\n </ng-container>\n</ng-container>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: PortalModule }, { kind: "directive", type: i1.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }] }); }
440
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EsolveMediaSectionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
441
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.10", type: EsolveMediaSectionComponent, isStandalone: true, selector: "eslv-media-section", inputs: { key: "key" }, usesOnChanges: true, ngImport: i0, template: "<ng-container *ngIf=\"portals.length > 0\">\n <ng-container *ngFor=\"let portal of portals\">\n <ng-template [cdkPortalOutlet]=\"portal\"></ng-template>\n </ng-container>\n</ng-container>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: PortalModule }, { kind: "directive", type: i1.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }] }); }
442
442
  }
443
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: EsolveMediaSectionComponent, decorators: [{
443
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EsolveMediaSectionComponent, decorators: [{
444
444
  type: Component,
445
445
  args: [{ standalone: true, selector: 'eslv-media-section', imports: [CommonModule, PortalModule], template: "<ng-container *ngIf=\"portals.length > 0\">\n <ng-container *ngFor=\"let portal of portals\">\n <ng-template [cdkPortalOutlet]=\"portal\"></ng-template>\n </ng-container>\n</ng-container>\n" }]
446
446
  }], propDecorators: { key: [{
@@ -462,11 +462,11 @@ class NgEsolveConnectMediaModule {
462
462
  providers: [provideNgEsolveConnectMedia(config)],
463
463
  };
464
464
  }
465
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: NgEsolveConnectMediaModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
466
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.2.4", ngImport: i0, type: NgEsolveConnectMediaModule, imports: [EsolveMediaLayoutComponent, EsolveMediaSectionComponent], exports: [EsolveMediaLayoutComponent, EsolveMediaSectionComponent] }); }
467
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: NgEsolveConnectMediaModule, imports: [EsolveMediaLayoutComponent, EsolveMediaSectionComponent] }); }
465
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: NgEsolveConnectMediaModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
466
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.10", ngImport: i0, type: NgEsolveConnectMediaModule, imports: [EsolveMediaLayoutComponent, EsolveMediaSectionComponent], exports: [EsolveMediaLayoutComponent, EsolveMediaSectionComponent] }); }
467
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: NgEsolveConnectMediaModule, imports: [EsolveMediaLayoutComponent, EsolveMediaSectionComponent] }); }
468
468
  }
469
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: NgEsolveConnectMediaModule, decorators: [{
469
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: NgEsolveConnectMediaModule, decorators: [{
470
470
  type: NgModule,
471
471
  args: [{
472
472
  imports: [EsolveMediaLayoutComponent, EsolveMediaSectionComponent],
@@ -1 +1 @@
1
- {"version":3,"file":"esolve-ng-esolve-connect-media.mjs","sources":["../../../../libs/ng-esolve-connect/media/src/lib/classes/esolve-heading.model.ts","../../../../libs/ng-esolve-connect/media/src/lib/classes/esolve-media-group.model.ts","../../../../libs/ng-esolve-connect/media/src/lib/classes/esolve-media-layout-section.model.ts","../../../../libs/ng-esolve-connect/media/src/lib/classes/esolve-media-link.model.ts","../../../../libs/ng-esolve-connect/media/src/lib/classes/esolve-media-article.model.ts","../../../../libs/ng-esolve-connect/media/src/lib/services/esolve-media.service.ts","../../../../libs/ng-esolve-connect/media/src/lib/esolve-connect-media-config.token.ts","../../../../libs/ng-esolve-connect/media/src/lib/services/esolve-media-layout.service.ts","../../../../libs/ng-esolve-connect/media/src/lib/components/media-layout/esolve-media-layout.component.ts","../../../../libs/ng-esolve-connect/media/src/lib/components/media-layout/esolve-media-layout.component.html","../../../../libs/ng-esolve-connect/media/src/lib/components/media-section/esolve-media-section.component.ts","../../../../libs/ng-esolve-connect/media/src/lib/components/media-section/esolve-media-section.component.html","../../../../libs/ng-esolve-connect/media/src/lib/functions/provide-ng-esolve-connect-media.function.ts","../../../../libs/ng-esolve-connect/media/src/lib/ng-esolve-connect-media.module.ts","../../../../libs/ng-esolve-connect/media/src/esolve-ng-esolve-connect-media.ts"],"sourcesContent":["export class EsolveHeading {\n constructor(\n public identifier: string,\n public value: string,\n ) {}\n}\n","import { EsolveMediaGroupRecord } from '../interfaces';\n\nexport class EsolveMediaGroup {\n public id = 0;\n public name = '';\n public sef_name = '';\n public description = '';\n\n constructor(record?: EsolveMediaGroupRecord) {\n if (record) {\n this.id = +(record.id ?? 0);\n this.name = record.name ?? '';\n this.sef_name = record.sef_name ?? '';\n this.description = record.description ?? '';\n }\n }\n}\n","import {\n EsolveMediaLayoutSectionRecord,\n EsolveMediaSectionDataGeneric,\n} from '../interfaces';\nimport { EsolveMediaLayoutSectionType } from '../types';\n\nexport class EsolveMediaLayoutSection {\n public type: EsolveMediaLayoutSectionType;\n public sub_type = '';\n public identifier: string;\n\n private data?: EsolveMediaSectionDataGeneric;\n\n constructor(record: EsolveMediaLayoutSectionRecord) {\n this.type = record.type;\n this.identifier = record.identifier;\n this.sub_type = record.sub_type ?? '';\n\n if (record.data) {\n this.data = record.data;\n }\n }\n\n public getData<T = EsolveMediaSectionDataGeneric>(): T | null {\n if (typeof this.data === 'undefined') {\n return null;\n }\n\n return this.data as T;\n }\n}\n","import { EsolveUrlTarget } from '@esolve/ng-esolve-connect';\n\nimport { EsolveMediaLinkRecord } from '../interfaces';\n\nexport class EsolveMediaLink {\n public caption: string;\n public url: string;\n public target: EsolveUrlTarget;\n\n constructor(record: EsolveMediaLinkRecord) {\n this.url = record.url;\n this.caption = record.caption ?? 'Read more...';\n this.target = record.target ?? '_self';\n }\n}\n","import {\n EsolveSeoDetails,\n EsolveTag,\n EsolveTopic,\n EsolveSeoInfo,\n EsolveManufacturer,\n EsolveRange,\n EsolveCustomFields,\n} from '@esolve/ng-esolve-connect';\n\nimport { EsolveMediaRecord } from '../interfaces';\n\nimport { EsolveMediaGroup } from './esolve-media-group.model';\nimport { EsolveMediaLayoutSection } from './esolve-media-layout-section.model';\nimport { EsolveMediaLink } from './esolve-media-link.model';\n\nexport class EsolveMediaArticle implements EsolveSeoDetails {\n public identifier: string;\n public title: string;\n public sub_title: string;\n public article: string;\n public layout = '';\n public image_url = '';\n public tags: EsolveTag[] = [];\n public topics: EsolveTopic[] = [];\n public seo_details: EsolveSeoInfo;\n public group?: EsolveMediaGroup;\n public manufacturer?: EsolveManufacturer;\n public range?: EsolveRange;\n public sections?: Map<string, EsolveMediaLayoutSection[]>;\n public link?: EsolveMediaLink;\n public custom_fields?: EsolveCustomFields;\n\n constructor(record: EsolveMediaRecord) {\n this.identifier = record.identifier;\n this.title = record.title;\n this.sub_title = record.sub_title;\n this.article = record.article;\n\n let seo_title = record.seo_page_title ?? '';\n const seo_keywords = record.seo_keywords ?? '';\n const seo_description = record.seo_description ?? '';\n\n if (seo_title.trim() === '') {\n seo_title = this.title;\n }\n\n this.seo_details = new EsolveSeoInfo(\n seo_title,\n seo_description,\n seo_keywords,\n );\n\n this.image_url = record.image_url ?? '';\n if (this.image_url !== '') {\n this.image_url = this.image_url + '?cs=' + record.image_checksum;\n }\n\n if (record.tags && record.tags.length > 0) {\n for (const tag of record.tags) {\n this.tags.push(new EsolveTag(tag));\n }\n }\n\n if (record.topics && record.topics.length > 0) {\n for (const topic of record.topics) {\n this.topics.push(new EsolveTopic(topic));\n }\n }\n\n if (record.media_group) {\n this.group = new EsolveMediaGroup(record.media_group);\n }\n\n if (record.manufacturer) {\n this.manufacturer = new EsolveManufacturer(record.manufacturer);\n }\n\n if (record.range) {\n this.range = new EsolveRange(record.range);\n }\n\n if (\n record.is_both_master_and_minor_article ||\n !record.is_minor_article\n ) {\n this.layout = record.layout ?? '';\n\n if (record.sections) {\n this.sections = new Map<string, EsolveMediaLayoutSection[]>();\n\n for (const key in record.sections) {\n const section_list: EsolveMediaLayoutSection[] = [];\n const section_records = record.sections[key];\n\n for (const section_record of section_records) {\n section_list.push(\n new EsolveMediaLayoutSection(section_record),\n );\n }\n\n this.sections.set(key, section_list);\n }\n }\n }\n\n if (\n record.is_both_master_and_minor_article ||\n record.is_minor_article\n ) {\n if (record.sef_url) {\n this.link = new EsolveMediaLink({\n url: record.sef_url,\n caption: record.link_caption,\n target: record.target,\n });\n }\n }\n\n if (record.custom_fields) {\n this.custom_fields = record.custom_fields;\n }\n }\n}\n","import { inject, Injectable } from '@angular/core';\nimport { HttpClient, HttpParams } from '@angular/common/http';\n\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\n\nimport {\n EsolveGetResponse,\n EsolveConfigService,\n} from '@esolve/ng-esolve-connect';\n\nimport { EsolveMediaArticle, EsolveHeading } from '../classes';\nimport { EsolveMediaRecord, EsolveHeadingRecord } from '../interfaces';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class EsolveMediaService {\n private config = inject(EsolveConfigService);\n private http = inject(HttpClient);\n\n /**\n * Retrieves the media record from the eSolve instance using the identifier\n *\n * @param identifier String representing the eSolve media identifier\n */\n public getMediaArticle(identifier: string): Observable<EsolveMediaArticle> {\n const params = new HttpParams({ fromObject: { identifier } });\n\n // TODO: Error Handling\n return this.getMediaRecords(params).pipe(\n map((response) => {\n if (\n response.records === undefined ||\n response.records.length <= 0\n ) {\n throw response;\n }\n\n const mediaRecord = response.records[0];\n\n if (!mediaRecord.active) {\n throw response;\n }\n\n return this.processMediaRecord(mediaRecord);\n }),\n );\n }\n\n /**\n * Retrieves a group of media records from the eSolve instance linked to a group\n *\n * @param media_group String representing the eSolve media group\n */\n public getGroupedMediaArticles(\n media_group: string,\n ): Observable<EsolveMediaArticle[]> {\n const params = new HttpParams({\n fromObject: { media_group_sef: media_group },\n });\n\n return this.getMediaRecords(params).pipe(\n map((response) => {\n const mediaArticles: EsolveMediaArticle[] = [];\n\n if (\n response.records !== undefined &&\n response.records.length > 0\n ) {\n for (const mediaRecord of response.records) {\n if (mediaRecord.active) {\n mediaArticles.push(\n this.processMediaRecord(mediaRecord),\n );\n }\n }\n }\n\n return mediaArticles;\n }),\n );\n }\n\n /**\n * Retrieves the media heading records from the eSolve instance using the identifiers\n *\n * @param identifiers Array of strings representing the eSolve heading identifiers\n */\n public getHeadings(identifiers: string[]): Observable<EsolveHeading[]> {\n return this.http\n .get<EsolveGetResponse<EsolveHeadingRecord[]>>(\n `${this.config.api_url}/get-headings.php`,\n {\n params: {\n identifier: identifiers.join(','),\n },\n },\n )\n .pipe(\n map((response) => {\n const headings: EsolveHeading[] = [];\n\n if (\n response.records !== undefined &&\n response.records.length > 0\n ) {\n for (const heading_record of response.records) {\n headings.push(\n this.processHeadingRecord(heading_record),\n );\n }\n }\n\n return headings;\n }),\n );\n }\n\n /**\n * Processes media article record\n *\n * @param record Record from eSolve instance\n */\n private processMediaRecord(record: EsolveMediaRecord): EsolveMediaArticle {\n return new EsolveMediaArticle(record);\n }\n\n /**\n * Processes media heading record\n *\n * @param record Record from eSolve instance\n */\n private processHeadingRecord(record: EsolveHeadingRecord): EsolveHeading {\n return new EsolveHeading(record.identifier, record.value);\n }\n\n /**\n * Retrieves media records from eSolve instance.\n *\n * @param params HTTP params\n */\n private getMediaRecords(\n params: HttpParams,\n ): Observable<EsolveGetResponse<EsolveMediaRecord[]>> {\n return this.http.get<EsolveGetResponse<EsolveMediaRecord[]>>(\n `${this.config.api_url}/get-media.php`,\n { params },\n );\n }\n}\n","import { InjectionToken } from '@angular/core';\n\nimport { EsolveConnectMediaConfig } from './interfaces';\n\nexport const ESOLVE_CONNECT_MEDIA_CONFIG =\n new InjectionToken<EsolveConnectMediaConfig>('esolve.connect.media.config');\n","import { ComponentType } from '@angular/cdk/portal';\nimport { inject, Injectable } from '@angular/core';\n\nimport { EsolveMediaArticle, EsolveMediaLayoutSection } from '../classes';\nimport { EsolveMediaLayoutSectionType } from '../types';\n\nimport { ESOLVE_CONNECT_MEDIA_CONFIG } from '../esolve-connect-media-config.token';\n\ntype ComponentMap = Map<string, ComponentType<any>>;\n\ntype SectionKeyOptions = {\n type: EsolveMediaLayoutSectionType;\n sub_type?: string;\n layout?: string;\n group?: string;\n};\n\n@Injectable()\nexport class EsolveMediaLayoutService {\n private readonly section_key_delimiter = '>>>';\n private readonly default_section_group_key = '__default';\n private readonly default_layout_key = '__default__';\n\n private media?: EsolveMediaArticle;\n private layout_map: ComponentMap = new Map();\n private section_map: ComponentMap = new Map();\n private default_layout: string;\n\n constructor() {\n const config = inject(ESOLVE_CONNECT_MEDIA_CONFIG);\n\n if (config.layouts.length === 0) {\n throw new Error('No layouts have been defined');\n }\n\n for (const layout of config.layouts) {\n this.setLayout(layout.key, layout.component);\n\n if (layout.sections) {\n for (const section_group_key in layout.sections) {\n const sections = layout.sections[section_group_key];\n\n if (!sections || sections.length === 0) {\n continue;\n }\n\n for (const section of sections) {\n const key_options: SectionKeyOptions = {\n type: section.key,\n sub_type: section.sub_key,\n layout: layout.key,\n };\n\n if (\n section_group_key !== this.default_section_group_key\n ) {\n key_options.group = section_group_key;\n }\n\n this.setSection(section.component, key_options);\n }\n }\n }\n }\n\n const default_layout = config.default_layout;\n\n if (default_layout) {\n this.default_layout = default_layout;\n } else {\n this.default_layout = config.layouts[0].key;\n }\n\n if (config.sections.length > 0) {\n for (const section of config.sections) {\n const key_options: SectionKeyOptions = {\n type: section.key,\n sub_type: section.sub_key,\n };\n\n this.setSection(section.component, key_options);\n }\n }\n }\n\n public getMedia() {\n if (!this.media) {\n throw new Error('Media not declared');\n }\n\n return this.media;\n }\n\n public setMedia(media: EsolveMediaArticle) {\n this.media = media;\n }\n\n public getLayout() {\n const media = this.getMedia();\n\n let layout_key = media.layout;\n\n if (layout_key === '') {\n layout_key = this.default_layout;\n }\n\n return this.searchLayout(layout_key);\n }\n\n public getSectionContent(key: string) {\n const media = this.getMedia();\n\n if (media.sections) {\n const section = media.sections.get(key);\n\n if (section) {\n return section;\n }\n }\n\n return [];\n }\n\n public getSectionComponent(key: string, section: EsolveMediaLayoutSection) {\n const type = section.type;\n const sub_type = section.sub_type;\n const { layout } = this.getMedia();\n\n const section_key = this.createSectionMapKey({\n type,\n sub_type,\n layout,\n group: key,\n });\n\n let component = this.section_map.get(section_key);\n\n if (component) {\n return component;\n }\n\n const layout_key = this.createSectionMapKey({\n type,\n sub_type,\n layout,\n });\n\n component = this.section_map.get(layout_key);\n\n if (component) {\n return component;\n }\n\n const base_key = this.createSectionMapKey({\n type,\n sub_type,\n });\n\n component = this.section_map.get(base_key);\n\n if (component) {\n return component;\n }\n\n throw new Error('Section component not defined');\n }\n\n private searchLayout(layout_key: string) {\n if (layout_key === this.default_layout_key) {\n layout_key = this.default_layout;\n }\n\n const component = this.layout_map.get(layout_key);\n\n if (!component) {\n throw new Error('Layout not declared');\n }\n\n return component;\n }\n\n private setLayout(key: string, component: ComponentType<any>) {\n this.layout_map.set(key, component);\n }\n\n private setSection(\n component: ComponentType<any>,\n key_options: SectionKeyOptions,\n ) {\n const key = this.createSectionMapKey(key_options);\n\n this.section_map.set(key, component);\n }\n\n private createSectionMapKey(key_options: SectionKeyOptions) {\n const { type, sub_type, layout, group } = key_options;\n\n const key_array: string[] = [type];\n\n if (sub_type) {\n key_array.push(sub_type);\n }\n\n if (layout) {\n key_array.push(layout);\n\n if (group) {\n key_array.push(group);\n }\n }\n\n return key_array.join(this.section_key_delimiter);\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { Component, OnChanges, Input, Injector, inject } from '@angular/core';\nimport { ComponentPortal, PortalModule } from '@angular/cdk/portal';\n\nimport { EsolveMediaArticle } from '../../classes';\nimport { EsolveMediaLayoutService } from '../../services';\n\n@Component({\n standalone: true,\n selector: 'eslv-media-layout',\n templateUrl: 'esolve-media-layout.component.html',\n imports: [CommonModule, PortalModule],\n providers: [EsolveMediaLayoutService],\n})\nexport class EsolveMediaLayoutComponent implements OnChanges {\n @Input({ required: true }) public media!: EsolveMediaArticle;\n\n public layoutService = inject(EsolveMediaLayoutService);\n public portal!: ComponentPortal<any>;\n\n public ngOnChanges(): void {\n this.layoutService.setMedia(this.media);\n const component = this.layoutService.getLayout();\n const injector = Injector.create({\n providers: [\n {\n provide: EsolveMediaLayoutService,\n useValue: this.layoutService,\n },\n ],\n });\n\n this.portal = new ComponentPortal(component, null, injector);\n }\n}\n","<ng-template [cdkPortalOutlet]=\"portal\"></ng-template>\n","import { CommonModule } from '@angular/common';\nimport { Component, Injector, Input, OnChanges, inject } from '@angular/core';\nimport { ComponentPortal, PortalModule } from '@angular/cdk/portal';\n\nimport { EsolveMediaLayoutSection } from '../../classes';\nimport { EsolveMediaLayoutService } from '../../services';\n\n@Component({\n standalone: true,\n selector: 'eslv-media-section',\n templateUrl: './esolve-media-section.component.html',\n imports: [CommonModule, PortalModule],\n})\nexport class EsolveMediaSectionComponent implements OnChanges {\n @Input({ required: true }) public key!: string;\n\n public layoutService = inject(EsolveMediaLayoutService);\n public portals: ComponentPortal<any>[] = [];\n\n public ngOnChanges(): void {\n const sections = this.layoutService.getSectionContent(this.key);\n this.processPortals(sections);\n }\n\n private processPortals(sections: EsolveMediaLayoutSection[]) {\n for (const section of sections) {\n const injector = Injector.create({\n providers: [\n {\n provide: EsolveMediaLayoutSection,\n useValue: section,\n },\n {\n provide: EsolveMediaLayoutService,\n useValue: this.layoutService,\n },\n ],\n });\n\n const component = this.layoutService.getSectionComponent(\n this.key,\n section,\n );\n\n const portal = new ComponentPortal(component, null, injector);\n this.portals.push(portal);\n }\n }\n}\n","<ng-container *ngIf=\"portals.length > 0\">\n <ng-container *ngFor=\"let portal of portals\">\n <ng-template [cdkPortalOutlet]=\"portal\"></ng-template>\n </ng-container>\n</ng-container>\n","import { Provider } from '@angular/core';\n\nimport { EsolveConnectMediaConfig } from '../interfaces';\nimport { ESOLVE_CONNECT_MEDIA_CONFIG } from '../esolve-connect-media-config.token';\n\nexport function provideNgEsolveConnectMedia(\n config: EsolveConnectMediaConfig,\n): Provider {\n return {\n provide: ESOLVE_CONNECT_MEDIA_CONFIG,\n useValue: config,\n };\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\n\nimport {\n EsolveMediaLayoutComponent,\n EsolveMediaSectionComponent,\n} from './components';\nimport { EsolveConnectMediaConfig } from './interfaces';\nimport { provideNgEsolveConnectMedia } from './functions';\n\n@NgModule({\n imports: [EsolveMediaLayoutComponent, EsolveMediaSectionComponent],\n exports: [EsolveMediaLayoutComponent, EsolveMediaSectionComponent],\n})\nexport class NgEsolveConnectMediaModule {\n public static withConfig(\n config: EsolveConnectMediaConfig,\n ): ModuleWithProviders<NgEsolveConnectMediaModule> {\n return {\n ngModule: NgEsolveConnectMediaModule,\n providers: [provideNgEsolveConnectMedia(config)],\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2"],"mappings":"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"}
1
+ {"version":3,"file":"esolve-ng-esolve-connect-media.mjs","sources":["../../../../libs/ng-esolve-connect/media/src/lib/classes/esolve-heading.model.ts","../../../../libs/ng-esolve-connect/media/src/lib/classes/esolve-media-group.model.ts","../../../../libs/ng-esolve-connect/media/src/lib/classes/esolve-media-layout-section.model.ts","../../../../libs/ng-esolve-connect/media/src/lib/classes/esolve-media-link.model.ts","../../../../libs/ng-esolve-connect/media/src/lib/classes/esolve-media-article.model.ts","../../../../libs/ng-esolve-connect/media/src/lib/services/esolve-media.service.ts","../../../../libs/ng-esolve-connect/media/src/lib/esolve-connect-media-config.token.ts","../../../../libs/ng-esolve-connect/media/src/lib/services/esolve-media-layout.service.ts","../../../../libs/ng-esolve-connect/media/src/lib/components/media-layout/esolve-media-layout.component.ts","../../../../libs/ng-esolve-connect/media/src/lib/components/media-layout/esolve-media-layout.component.html","../../../../libs/ng-esolve-connect/media/src/lib/components/media-section/esolve-media-section.component.ts","../../../../libs/ng-esolve-connect/media/src/lib/components/media-section/esolve-media-section.component.html","../../../../libs/ng-esolve-connect/media/src/lib/functions/provide-ng-esolve-connect-media.function.ts","../../../../libs/ng-esolve-connect/media/src/lib/ng-esolve-connect-media.module.ts","../../../../libs/ng-esolve-connect/media/src/esolve-ng-esolve-connect-media.ts"],"sourcesContent":["export class EsolveHeading {\n constructor(\n public identifier: string,\n public value: string,\n ) {}\n}\n","import { EsolveMediaGroupRecord } from '../interfaces';\n\nexport class EsolveMediaGroup {\n public id = 0;\n public name = '';\n public sef_name = '';\n public description = '';\n\n constructor(record?: EsolveMediaGroupRecord) {\n if (record) {\n this.id = +(record.id ?? 0);\n this.name = record.name ?? '';\n this.sef_name = record.sef_name ?? '';\n this.description = record.description ?? '';\n }\n }\n}\n","import {\n EsolveMediaLayoutSectionRecord,\n EsolveMediaSectionDataGeneric,\n} from '../interfaces';\nimport { EsolveMediaLayoutSectionType } from '../types';\n\nexport class EsolveMediaLayoutSection {\n public type: EsolveMediaLayoutSectionType;\n public sub_type = '';\n public identifier: string;\n\n private data?: EsolveMediaSectionDataGeneric;\n\n constructor(record: EsolveMediaLayoutSectionRecord) {\n this.type = record.type;\n this.identifier = record.identifier;\n this.sub_type = record.sub_type ?? '';\n\n if (record.data) {\n this.data = record.data;\n }\n }\n\n public getData<T = EsolveMediaSectionDataGeneric>(): T | null {\n if (typeof this.data === 'undefined') {\n return null;\n }\n\n return this.data as T;\n }\n}\n","import { EsolveUrlTarget } from '@esolve/ng-esolve-connect';\n\nimport { EsolveMediaLinkRecord } from '../interfaces';\n\nexport class EsolveMediaLink {\n public caption: string;\n public url: string;\n public target: EsolveUrlTarget;\n\n constructor(record: EsolveMediaLinkRecord) {\n this.url = record.url;\n this.caption = record.caption ?? 'Read more...';\n this.target = record.target ?? '_self';\n }\n}\n","import {\n EsolveSeoDetails,\n EsolveTag,\n EsolveTopic,\n EsolveSeoInfo,\n EsolveManufacturer,\n EsolveRange,\n EsolveCustomFields,\n} from '@esolve/ng-esolve-connect';\n\nimport { EsolveMediaRecord } from '../interfaces';\n\nimport { EsolveMediaGroup } from './esolve-media-group.model';\nimport { EsolveMediaLayoutSection } from './esolve-media-layout-section.model';\nimport { EsolveMediaLink } from './esolve-media-link.model';\n\nexport class EsolveMediaArticle implements EsolveSeoDetails {\n public identifier: string;\n public title: string;\n public sub_title: string;\n public article: string;\n public layout = '';\n public image_url = '';\n public tags: EsolveTag[] = [];\n public topics: EsolveTopic[] = [];\n public seo_details: EsolveSeoInfo;\n public group?: EsolveMediaGroup;\n public manufacturer?: EsolveManufacturer;\n public range?: EsolveRange;\n public sections?: Map<string, EsolveMediaLayoutSection[]>;\n public link?: EsolveMediaLink;\n public custom_fields?: EsolveCustomFields;\n\n constructor(record: EsolveMediaRecord) {\n this.identifier = record.identifier;\n this.title = record.title;\n this.sub_title = record.sub_title;\n this.article = record.article;\n\n let seo_title = record.seo_page_title ?? '';\n const seo_keywords = record.seo_keywords ?? '';\n const seo_description = record.seo_description ?? '';\n\n if (seo_title.trim() === '') {\n seo_title = this.title;\n }\n\n this.seo_details = new EsolveSeoInfo(\n seo_title,\n seo_description,\n seo_keywords,\n );\n\n this.image_url = record.image_url ?? '';\n if (this.image_url !== '') {\n this.image_url = this.image_url + '?cs=' + record.image_checksum;\n }\n\n if (record.tags && record.tags.length > 0) {\n for (const tag of record.tags) {\n this.tags.push(new EsolveTag(tag));\n }\n }\n\n if (record.topics && record.topics.length > 0) {\n for (const topic of record.topics) {\n this.topics.push(new EsolveTopic(topic));\n }\n }\n\n if (record.media_group) {\n this.group = new EsolveMediaGroup(record.media_group);\n }\n\n if (record.manufacturer) {\n this.manufacturer = new EsolveManufacturer(record.manufacturer);\n }\n\n if (record.range) {\n this.range = new EsolveRange(record.range);\n }\n\n if (\n record.is_both_master_and_minor_article ||\n !record.is_minor_article\n ) {\n this.layout = record.layout ?? '';\n\n if (record.sections) {\n this.sections = new Map<string, EsolveMediaLayoutSection[]>();\n\n for (const key in record.sections) {\n const section_list: EsolveMediaLayoutSection[] = [];\n const section_records = record.sections[key];\n\n for (const section_record of section_records) {\n section_list.push(\n new EsolveMediaLayoutSection(section_record),\n );\n }\n\n this.sections.set(key, section_list);\n }\n }\n }\n\n if (\n record.is_both_master_and_minor_article ||\n record.is_minor_article\n ) {\n if (record.sef_url) {\n this.link = new EsolveMediaLink({\n url: record.sef_url,\n caption: record.link_caption,\n target: record.target,\n });\n }\n }\n\n if (record.custom_fields) {\n this.custom_fields = record.custom_fields;\n }\n }\n}\n","import { inject, Injectable } from '@angular/core';\nimport { HttpClient, HttpParams } from '@angular/common/http';\n\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\n\nimport {\n EsolveGetResponse,\n EsolveConfigService,\n} from '@esolve/ng-esolve-connect';\n\nimport { EsolveMediaArticle, EsolveHeading } from '../classes';\nimport { EsolveMediaRecord, EsolveHeadingRecord } from '../interfaces';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class EsolveMediaService {\n private config = inject(EsolveConfigService);\n private http = inject(HttpClient);\n\n /**\n * Retrieves the media record from the eSolve instance using the identifier\n *\n * @param identifier String representing the eSolve media identifier\n */\n public getMediaArticle(identifier: string): Observable<EsolveMediaArticle> {\n const params = new HttpParams({ fromObject: { identifier } });\n\n // TODO: Error Handling\n return this.getMediaRecords(params).pipe(\n map((response) => {\n if (\n response.records === undefined ||\n response.records.length <= 0\n ) {\n throw response;\n }\n\n const mediaRecord = response.records[0];\n\n if (!mediaRecord.active) {\n throw response;\n }\n\n return this.processMediaRecord(mediaRecord);\n }),\n );\n }\n\n /**\n * Retrieves a group of media records from the eSolve instance linked to a group\n *\n * @param media_group String representing the eSolve media group\n */\n public getGroupedMediaArticles(\n media_group: string,\n ): Observable<EsolveMediaArticle[]> {\n const params = new HttpParams({\n fromObject: { media_group_sef: media_group },\n });\n\n return this.getMediaRecords(params).pipe(\n map((response) => {\n const mediaArticles: EsolveMediaArticle[] = [];\n\n if (\n response.records !== undefined &&\n response.records.length > 0\n ) {\n for (const mediaRecord of response.records) {\n if (mediaRecord.active) {\n mediaArticles.push(\n this.processMediaRecord(mediaRecord),\n );\n }\n }\n }\n\n return mediaArticles;\n }),\n );\n }\n\n /**\n * Retrieves the media heading records from the eSolve instance using the identifiers\n *\n * @param identifiers Array of strings representing the eSolve heading identifiers\n */\n public getHeadings(identifiers: string[]): Observable<EsolveHeading[]> {\n return this.http\n .get<EsolveGetResponse<EsolveHeadingRecord[]>>(\n `${this.config.api_url}/get-headings.php`,\n {\n params: {\n identifier: identifiers.join(','),\n },\n },\n )\n .pipe(\n map((response) => {\n const headings: EsolveHeading[] = [];\n\n if (\n response.records !== undefined &&\n response.records.length > 0\n ) {\n for (const heading_record of response.records) {\n headings.push(\n this.processHeadingRecord(heading_record),\n );\n }\n }\n\n return headings;\n }),\n );\n }\n\n /**\n * Processes media article record\n *\n * @param record Record from eSolve instance\n */\n private processMediaRecord(record: EsolveMediaRecord): EsolveMediaArticle {\n return new EsolveMediaArticle(record);\n }\n\n /**\n * Processes media heading record\n *\n * @param record Record from eSolve instance\n */\n private processHeadingRecord(record: EsolveHeadingRecord): EsolveHeading {\n return new EsolveHeading(record.identifier, record.value);\n }\n\n /**\n * Retrieves media records from eSolve instance.\n *\n * @param params HTTP params\n */\n private getMediaRecords(\n params: HttpParams,\n ): Observable<EsolveGetResponse<EsolveMediaRecord[]>> {\n return this.http.get<EsolveGetResponse<EsolveMediaRecord[]>>(\n `${this.config.api_url}/get-media.php`,\n { params },\n );\n }\n}\n","import { InjectionToken } from '@angular/core';\n\nimport { EsolveConnectMediaConfig } from './interfaces';\n\nexport const ESOLVE_CONNECT_MEDIA_CONFIG =\n new InjectionToken<EsolveConnectMediaConfig>('esolve.connect.media.config');\n","import { ComponentType } from '@angular/cdk/portal';\nimport { inject, Injectable } from '@angular/core';\n\nimport { EsolveMediaArticle, EsolveMediaLayoutSection } from '../classes';\nimport { EsolveMediaLayoutSectionType } from '../types';\n\nimport { ESOLVE_CONNECT_MEDIA_CONFIG } from '../esolve-connect-media-config.token';\n\ntype ComponentMap = Map<string, ComponentType<any>>;\n\ntype SectionKeyOptions = {\n type: EsolveMediaLayoutSectionType;\n sub_type?: string;\n layout?: string;\n group?: string;\n};\n\n@Injectable()\nexport class EsolveMediaLayoutService {\n private readonly section_key_delimiter = '>>>';\n private readonly default_section_group_key = '__default';\n private readonly default_layout_key = '__default__';\n\n private media?: EsolveMediaArticle;\n private layout_map: ComponentMap = new Map();\n private section_map: ComponentMap = new Map();\n private default_layout: string;\n\n constructor() {\n const config = inject(ESOLVE_CONNECT_MEDIA_CONFIG);\n\n if (config.layouts.length === 0) {\n throw new Error('No layouts have been defined');\n }\n\n for (const layout of config.layouts) {\n this.setLayout(layout.key, layout.component);\n\n if (layout.sections) {\n for (const section_group_key in layout.sections) {\n const sections = layout.sections[section_group_key];\n\n if (!sections || sections.length === 0) {\n continue;\n }\n\n for (const section of sections) {\n const key_options: SectionKeyOptions = {\n type: section.key,\n sub_type: section.sub_key,\n layout: layout.key,\n };\n\n if (\n section_group_key !== this.default_section_group_key\n ) {\n key_options.group = section_group_key;\n }\n\n this.setSection(section.component, key_options);\n }\n }\n }\n }\n\n const default_layout = config.default_layout;\n\n if (default_layout) {\n this.default_layout = default_layout;\n } else {\n this.default_layout = config.layouts[0].key;\n }\n\n if (config.sections.length > 0) {\n for (const section of config.sections) {\n const key_options: SectionKeyOptions = {\n type: section.key,\n sub_type: section.sub_key,\n };\n\n this.setSection(section.component, key_options);\n }\n }\n }\n\n public getMedia() {\n if (!this.media) {\n throw new Error('Media not declared');\n }\n\n return this.media;\n }\n\n public setMedia(media: EsolveMediaArticle) {\n this.media = media;\n }\n\n public getLayout() {\n const media = this.getMedia();\n\n let layout_key = media.layout;\n\n if (layout_key === '') {\n layout_key = this.default_layout;\n }\n\n return this.searchLayout(layout_key);\n }\n\n public getSectionContent(key: string) {\n const media = this.getMedia();\n\n if (media.sections) {\n const section = media.sections.get(key);\n\n if (section) {\n return section;\n }\n }\n\n return [];\n }\n\n public getSectionComponent(key: string, section: EsolveMediaLayoutSection) {\n const type = section.type;\n const sub_type = section.sub_type;\n const { layout } = this.getMedia();\n\n const section_key = this.createSectionMapKey({\n type,\n sub_type,\n layout,\n group: key,\n });\n\n let component = this.section_map.get(section_key);\n\n if (component) {\n return component;\n }\n\n const layout_key = this.createSectionMapKey({\n type,\n sub_type,\n layout,\n });\n\n component = this.section_map.get(layout_key);\n\n if (component) {\n return component;\n }\n\n const base_key = this.createSectionMapKey({\n type,\n sub_type,\n });\n\n component = this.section_map.get(base_key);\n\n if (component) {\n return component;\n }\n\n throw new Error('Section component not defined');\n }\n\n private searchLayout(layout_key: string) {\n if (layout_key === this.default_layout_key) {\n layout_key = this.default_layout;\n }\n\n const component = this.layout_map.get(layout_key);\n\n if (!component) {\n throw new Error('Layout not declared');\n }\n\n return component;\n }\n\n private setLayout(key: string, component: ComponentType<any>) {\n this.layout_map.set(key, component);\n }\n\n private setSection(\n component: ComponentType<any>,\n key_options: SectionKeyOptions,\n ) {\n const key = this.createSectionMapKey(key_options);\n\n this.section_map.set(key, component);\n }\n\n private createSectionMapKey(key_options: SectionKeyOptions) {\n const { type, sub_type, layout, group } = key_options;\n\n const key_array: string[] = [type];\n\n if (sub_type) {\n key_array.push(sub_type);\n }\n\n if (layout) {\n key_array.push(layout);\n\n if (group) {\n key_array.push(group);\n }\n }\n\n return key_array.join(this.section_key_delimiter);\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { Component, OnChanges, Input, Injector, inject } from '@angular/core';\nimport { ComponentPortal, PortalModule } from '@angular/cdk/portal';\n\nimport { EsolveMediaArticle } from '../../classes';\nimport { EsolveMediaLayoutService } from '../../services';\n\n@Component({\n standalone: true,\n selector: 'eslv-media-layout',\n templateUrl: 'esolve-media-layout.component.html',\n imports: [CommonModule, PortalModule],\n providers: [EsolveMediaLayoutService],\n})\nexport class EsolveMediaLayoutComponent implements OnChanges {\n @Input({ required: true }) public media!: EsolveMediaArticle;\n\n public layoutService = inject(EsolveMediaLayoutService);\n public portal!: ComponentPortal<any>;\n\n public ngOnChanges(): void {\n this.layoutService.setMedia(this.media);\n const component = this.layoutService.getLayout();\n const injector = Injector.create({\n providers: [\n {\n provide: EsolveMediaLayoutService,\n useValue: this.layoutService,\n },\n ],\n });\n\n this.portal = new ComponentPortal(component, null, injector);\n }\n}\n","<ng-template [cdkPortalOutlet]=\"portal\"></ng-template>\n","import { CommonModule } from '@angular/common';\nimport { Component, Injector, Input, OnChanges, inject } from '@angular/core';\nimport { ComponentPortal, PortalModule } from '@angular/cdk/portal';\n\nimport { EsolveMediaLayoutSection } from '../../classes';\nimport { EsolveMediaLayoutService } from '../../services';\n\n@Component({\n standalone: true,\n selector: 'eslv-media-section',\n templateUrl: './esolve-media-section.component.html',\n imports: [CommonModule, PortalModule],\n})\nexport class EsolveMediaSectionComponent implements OnChanges {\n @Input({ required: true }) public key!: string;\n\n public layoutService = inject(EsolveMediaLayoutService);\n public portals: ComponentPortal<any>[] = [];\n\n public ngOnChanges(): void {\n const sections = this.layoutService.getSectionContent(this.key);\n this.processPortals(sections);\n }\n\n private processPortals(sections: EsolveMediaLayoutSection[]) {\n for (const section of sections) {\n const injector = Injector.create({\n providers: [\n {\n provide: EsolveMediaLayoutSection,\n useValue: section,\n },\n {\n provide: EsolveMediaLayoutService,\n useValue: this.layoutService,\n },\n ],\n });\n\n const component = this.layoutService.getSectionComponent(\n this.key,\n section,\n );\n\n const portal = new ComponentPortal(component, null, injector);\n this.portals.push(portal);\n }\n }\n}\n","<ng-container *ngIf=\"portals.length > 0\">\n <ng-container *ngFor=\"let portal of portals\">\n <ng-template [cdkPortalOutlet]=\"portal\"></ng-template>\n </ng-container>\n</ng-container>\n","import { Provider } from '@angular/core';\n\nimport { EsolveConnectMediaConfig } from '../interfaces';\nimport { ESOLVE_CONNECT_MEDIA_CONFIG } from '../esolve-connect-media-config.token';\n\nexport function provideNgEsolveConnectMedia(\n config: EsolveConnectMediaConfig,\n): Provider {\n return {\n provide: ESOLVE_CONNECT_MEDIA_CONFIG,\n useValue: config,\n };\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\n\nimport {\n EsolveMediaLayoutComponent,\n EsolveMediaSectionComponent,\n} from './components';\nimport { EsolveConnectMediaConfig } from './interfaces';\nimport { provideNgEsolveConnectMedia } from './functions';\n\n@NgModule({\n imports: [EsolveMediaLayoutComponent, EsolveMediaSectionComponent],\n exports: [EsolveMediaLayoutComponent, EsolveMediaSectionComponent],\n})\nexport class NgEsolveConnectMediaModule {\n public static withConfig(\n config: EsolveConnectMediaConfig,\n ): ModuleWithProviders<NgEsolveConnectMediaModule> {\n return {\n ngModule: NgEsolveConnectMediaModule,\n providers: [provideNgEsolveConnectMedia(config)],\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2"],"mappings":"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"}
@@ -96,10 +96,10 @@ class EsolveNotificationsService {
96
96
  }
97
97
  return notifications;
98
98
  }
99
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: EsolveNotificationsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
100
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: EsolveNotificationsService, providedIn: 'root' }); }
99
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EsolveNotificationsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
100
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EsolveNotificationsService, providedIn: 'root' }); }
101
101
  }
102
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: EsolveNotificationsService, decorators: [{
102
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EsolveNotificationsService, decorators: [{
103
103
  type: Injectable,
104
104
  args: [{
105
105
  providedIn: 'root',
@@ -1 +1 @@
1
- {"version":3,"file":"esolve-ng-esolve-connect-notifications.mjs","sources":["../../../../libs/ng-esolve-connect/notifications/src/lib/classes/esolve-notification-button-action.model.ts","../../../../libs/ng-esolve-connect/notifications/src/lib/classes/esolve-notification-dates.model.ts","../../../../libs/ng-esolve-connect/notifications/src/lib/classes/esolve-system-notification-type.model.ts","../../../../libs/ng-esolve-connect/notifications/src/lib/classes/esolve-system-notification.model.ts","../../../../libs/ng-esolve-connect/notifications/src/lib/services/esolve-notifications.service.ts","../../../../libs/ng-esolve-connect/notifications/src/esolve-ng-esolve-connect-notifications.ts"],"sourcesContent":["import { EsolveUrlTarget } from '@esolve/ng-esolve-connect';\n\nimport { EsolveNotificationButtonActionRecord } from '../interfaces';\n\nexport class EsolveNotificationButtonAction {\n public text = '';\n public url = '';\n public module = '';\n public target: EsolveUrlTarget = '_self';\n\n constructor(record?: EsolveNotificationButtonActionRecord) {\n if (record) {\n this.text = record.text;\n this.url = record.url;\n this.module = record.module;\n this.target = record.target;\n }\n }\n}\n","import { EsolveNotificationDatesRecord } from '../interfaces';\n\nexport class EsolveNotificationDates {\n public from: Date;\n public to: Date;\n\n constructor(record: EsolveNotificationDatesRecord) {\n this.from = new Date(record.from.timestamp * 1000);\n this.to = new Date(record.to.timestamp * 1000);\n }\n}\n","import { EsolveSystemNotificationTypeRecord } from '../interfaces';\nimport {\n EsolveNotificationPosition,\n EsolveNotificationSize,\n EsolveNotificationType,\n} from '../types';\n\nexport class EsolveSystemNotificationType {\n public id = 0;\n public identifier = '';\n public title = '';\n public system_disable_order = false;\n public position: EsolveNotificationPosition;\n public size: EsolveNotificationSize;\n public type: EsolveNotificationType;\n\n constructor(record: EsolveSystemNotificationTypeRecord) {\n this.id = +record.id;\n this.identifier = record.identifier;\n this.title = record.title;\n this.system_disable_order = !!+record.system_disable_order;\n this.type = record.type;\n this.size = record.size;\n this.position = record.position;\n }\n}\n","import { EsolveSystemNotificationRecord } from '../interfaces';\nimport { EsolveNotificationButtonAction } from './esolve-notification-button-action.model';\nimport { EsolveNotificationDates } from './esolve-notification-dates.model';\nimport { EsolveSystemNotificationType } from './esolve-system-notification-type.model';\n\nexport class EsolveSystemNotification {\n public id = 0;\n public identifier = '';\n public title = '';\n public message = '';\n public timeout = 0;\n public display_every = 0;\n public button_actions: EsolveNotificationButtonAction[] = [];\n public type: EsolveSystemNotificationType;\n public dates?: EsolveNotificationDates;\n\n constructor(record: EsolveSystemNotificationRecord) {\n this.id = +record.id;\n this.identifier = record.identifier;\n this.title = record.title;\n this.message = record.message;\n this.timeout = +record.timeout;\n this.display_every = +record.display_every;\n\n this.type = new EsolveSystemNotificationType(record.type);\n\n for (const action of record.button_actions) {\n this.button_actions.push(\n new EsolveNotificationButtonAction(action),\n );\n }\n\n if (record.dates) {\n this.dates = new EsolveNotificationDates(record.dates);\n }\n }\n}\n","import { Injectable, inject } from '@angular/core';\nimport { HttpClient, HttpParams } from '@angular/common/http';\n\nimport { Observable, map } from 'rxjs';\n\nimport {\n EsolveConfigService,\n EsolveGetResponse,\n} from '@esolve/ng-esolve-connect';\n\nimport {\n EsolveSystemNotificationOptions,\n EsolveSystemNotificationRecord,\n} from '../interfaces';\nimport { EsolveSystemNotification } from '../classes';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class EsolveNotificationsService {\n private readonly config = inject(EsolveConfigService);\n private readonly http = inject(HttpClient);\n\n public getSystemNotifications(\n options?: EsolveSystemNotificationOptions,\n ): Observable<EsolveSystemNotification[]> {\n let params = new HttpParams();\n\n if (options) {\n if (options.exclude_ids) {\n params = params.set(\n 'exclude_ids',\n options.exclude_ids.join(','),\n );\n }\n }\n\n return this.http\n .get<EsolveGetResponse<EsolveSystemNotificationRecord[]>>(\n `${this.config.api_url}/get-system-notifications.php`,\n { params },\n )\n .pipe(\n map((response) => {\n if (\n response.records === undefined ||\n response.records.length <= 0\n ) {\n throw response;\n }\n\n return this.processNotifications(response.records);\n }),\n );\n }\n\n private processNotifications(\n records: EsolveSystemNotificationRecord[],\n ): EsolveSystemNotification[] {\n const notifications: EsolveSystemNotification[] = [];\n\n for (const record of records) {\n notifications.push(new EsolveSystemNotification(record));\n }\n\n return notifications;\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":"esolve-ng-esolve-connect-notifications.mjs","sources":["../../../../libs/ng-esolve-connect/notifications/src/lib/classes/esolve-notification-button-action.model.ts","../../../../libs/ng-esolve-connect/notifications/src/lib/classes/esolve-notification-dates.model.ts","../../../../libs/ng-esolve-connect/notifications/src/lib/classes/esolve-system-notification-type.model.ts","../../../../libs/ng-esolve-connect/notifications/src/lib/classes/esolve-system-notification.model.ts","../../../../libs/ng-esolve-connect/notifications/src/lib/services/esolve-notifications.service.ts","../../../../libs/ng-esolve-connect/notifications/src/esolve-ng-esolve-connect-notifications.ts"],"sourcesContent":["import { EsolveUrlTarget } from '@esolve/ng-esolve-connect';\n\nimport { EsolveNotificationButtonActionRecord } from '../interfaces';\n\nexport class EsolveNotificationButtonAction {\n public text = '';\n public url = '';\n public module = '';\n public target: EsolveUrlTarget = '_self';\n\n constructor(record?: EsolveNotificationButtonActionRecord) {\n if (record) {\n this.text = record.text;\n this.url = record.url;\n this.module = record.module;\n this.target = record.target;\n }\n }\n}\n","import { EsolveNotificationDatesRecord } from '../interfaces';\n\nexport class EsolveNotificationDates {\n public from: Date;\n public to: Date;\n\n constructor(record: EsolveNotificationDatesRecord) {\n this.from = new Date(record.from.timestamp * 1000);\n this.to = new Date(record.to.timestamp * 1000);\n }\n}\n","import { EsolveSystemNotificationTypeRecord } from '../interfaces';\nimport {\n EsolveNotificationPosition,\n EsolveNotificationSize,\n EsolveNotificationType,\n} from '../types';\n\nexport class EsolveSystemNotificationType {\n public id = 0;\n public identifier = '';\n public title = '';\n public system_disable_order = false;\n public position: EsolveNotificationPosition;\n public size: EsolveNotificationSize;\n public type: EsolveNotificationType;\n\n constructor(record: EsolveSystemNotificationTypeRecord) {\n this.id = +record.id;\n this.identifier = record.identifier;\n this.title = record.title;\n this.system_disable_order = !!+record.system_disable_order;\n this.type = record.type;\n this.size = record.size;\n this.position = record.position;\n }\n}\n","import { EsolveSystemNotificationRecord } from '../interfaces';\nimport { EsolveNotificationButtonAction } from './esolve-notification-button-action.model';\nimport { EsolveNotificationDates } from './esolve-notification-dates.model';\nimport { EsolveSystemNotificationType } from './esolve-system-notification-type.model';\n\nexport class EsolveSystemNotification {\n public id = 0;\n public identifier = '';\n public title = '';\n public message = '';\n public timeout = 0;\n public display_every = 0;\n public button_actions: EsolveNotificationButtonAction[] = [];\n public type: EsolveSystemNotificationType;\n public dates?: EsolveNotificationDates;\n\n constructor(record: EsolveSystemNotificationRecord) {\n this.id = +record.id;\n this.identifier = record.identifier;\n this.title = record.title;\n this.message = record.message;\n this.timeout = +record.timeout;\n this.display_every = +record.display_every;\n\n this.type = new EsolveSystemNotificationType(record.type);\n\n for (const action of record.button_actions) {\n this.button_actions.push(\n new EsolveNotificationButtonAction(action),\n );\n }\n\n if (record.dates) {\n this.dates = new EsolveNotificationDates(record.dates);\n }\n }\n}\n","import { Injectable, inject } from '@angular/core';\nimport { HttpClient, HttpParams } from '@angular/common/http';\n\nimport { Observable, map } from 'rxjs';\n\nimport {\n EsolveConfigService,\n EsolveGetResponse,\n} from '@esolve/ng-esolve-connect';\n\nimport {\n EsolveSystemNotificationOptions,\n EsolveSystemNotificationRecord,\n} from '../interfaces';\nimport { EsolveSystemNotification } from '../classes';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class EsolveNotificationsService {\n private readonly config = inject(EsolveConfigService);\n private readonly http = inject(HttpClient);\n\n public getSystemNotifications(\n options?: EsolveSystemNotificationOptions,\n ): Observable<EsolveSystemNotification[]> {\n let params = new HttpParams();\n\n if (options) {\n if (options.exclude_ids) {\n params = params.set(\n 'exclude_ids',\n options.exclude_ids.join(','),\n );\n }\n }\n\n return this.http\n .get<EsolveGetResponse<EsolveSystemNotificationRecord[]>>(\n `${this.config.api_url}/get-system-notifications.php`,\n { params },\n )\n .pipe(\n map((response) => {\n if (\n response.records === undefined ||\n response.records.length <= 0\n ) {\n throw response;\n }\n\n return this.processNotifications(response.records);\n }),\n );\n }\n\n private processNotifications(\n records: EsolveSystemNotificationRecord[],\n ): EsolveSystemNotification[] {\n const notifications: EsolveSystemNotification[] = [];\n\n for (const record of records) {\n notifications.push(new EsolveSystemNotification(record));\n }\n\n return notifications;\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -285,10 +285,10 @@ class EsolveSurveyService {
285
285
  }
286
286
  return params;
287
287
  }
288
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: EsolveSurveyService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
289
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: EsolveSurveyService, providedIn: 'root' }); }
288
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EsolveSurveyService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
289
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EsolveSurveyService, providedIn: 'root' }); }
290
290
  }
291
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: EsolveSurveyService, decorators: [{
291
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EsolveSurveyService, decorators: [{
292
292
  type: Injectable,
293
293
  args: [{
294
294
  providedIn: 'root',
@@ -1 +1 @@
1
- {"version":3,"file":"esolve-ng-esolve-connect-survey.mjs","sources":["../../../../libs/ng-esolve-connect/survey/src/lib/classes/esolve-survey-question.model.ts","../../../../libs/ng-esolve-connect/survey/src/lib/classes/esolve-survey-values-question.model.ts","../../../../libs/ng-esolve-connect/survey/src/lib/classes/esolve-survey-check-question.model.ts","../../../../libs/ng-esolve-connect/survey/src/lib/classes/esolve-survey-text-question.model.ts","../../../../libs/ng-esolve-connect/survey/src/lib/classes/esolve-survey-input-question.model.ts","../../../../libs/ng-esolve-connect/survey/src/lib/classes/esolve-survey-radio-question.model.ts","../../../../libs/ng-esolve-connect/survey/src/lib/classes/esolve-survey-options-question.model.ts","../../../../libs/ng-esolve-connect/survey/src/lib/classes/esolve-survey-rating-question.model.ts","../../../../libs/ng-esolve-connect/survey/src/lib/classes/esolve-survey-select-question.model.ts","../../../../libs/ng-esolve-connect/survey/src/lib/classes/esolve-survey-textarea-question.model.ts","../../../../libs/ng-esolve-connect/survey/src/lib/classes/esolve-survey.model.ts","../../../../libs/ng-esolve-connect/survey/src/lib/classes/esolve-survey-answer-result.model.ts","../../../../libs/ng-esolve-connect/survey/src/lib/services/esolve-survey.service.ts","../../../../libs/ng-esolve-connect/survey/src/esolve-ng-esolve-connect-survey.ts"],"sourcesContent":["import { EsolveSurveyQuestionRecord } from '../interfaces';\nimport { EsolveSurveyQuestionType } from '../types';\n\nexport abstract class EsolveSurveyQuestion {\n public abstract type: EsolveSurveyQuestionType;\n public id: number;\n public identifier: string;\n public question: string;\n public title: string;\n public description: string;\n\n constructor(record: EsolveSurveyQuestionRecord) {\n this.id = record.id;\n this.identifier = record.identifier;\n this.question = record.question;\n this.title = record.title;\n this.description = record.description;\n }\n}\n","import { EsolveSurveyValuesQuestionRecord } from '../interfaces';\n\nimport { EsolveSurveyQuestion } from './esolve-survey-question.model';\n\nexport abstract class EsolveSurveyValuesQuestion extends EsolveSurveyQuestion {\n public values: string[] = [];\n\n constructor(record: EsolveSurveyValuesQuestionRecord) {\n super(record);\n\n if (record.values.length > 0) {\n this.values = record.values;\n }\n }\n}\n","import { EsolveSurveyValuesQuestionRecord } from '../interfaces';\n\nimport { EsolveSurveyValuesQuestion } from './esolve-survey-values-question.model';\n\nexport class EsolveSurveyCheckQuestion extends EsolveSurveyValuesQuestion {\n public readonly type = 'check_boxes';\n\n constructor(record: EsolveSurveyValuesQuestionRecord) {\n if (record.type !== 'check_boxes') {\n throw new Error('Invalid type');\n }\n\n super(record);\n }\n}\n","import { EsolveSurveyTextQuestionRecord } from '../interfaces';\n\nimport { EsolveSurveyQuestion } from './esolve-survey-question.model';\n\nexport abstract class EsolveSurveyTextQuestion extends EsolveSurveyQuestion {\n public length: number;\n public placeholder = '';\n\n constructor(record: EsolveSurveyTextQuestionRecord) {\n super(record);\n\n this.length = record.length;\n this.placeholder = record.placeholder;\n }\n}\n","import { EsolveSurveyTextQuestionRecord } from '../interfaces';\n\nimport { EsolveSurveyTextQuestion } from './esolve-survey-text-question.model';\n\nexport class EsolveSurveyInputQuestion extends EsolveSurveyTextQuestion {\n public readonly type = 'input';\n\n constructor(record: EsolveSurveyTextQuestionRecord) {\n if (record.type !== 'input') {\n throw new Error('Invalid type');\n }\n\n super(record);\n }\n}\n","import { EsolveSurveyValuesQuestionRecord } from '../interfaces';\n\nimport { EsolveSurveyValuesQuestion } from './esolve-survey-values-question.model';\n\nexport class EsolveSurveyRadioQuestion extends EsolveSurveyValuesQuestion {\n public readonly type = 'radio_boxes';\n\n constructor(record: EsolveSurveyValuesQuestionRecord) {\n if (record.type !== 'radio_boxes') {\n throw new Error('Invalid type');\n }\n\n super(record);\n }\n}\n","import {\n EsolveSurveyOption,\n EsolveSurveyOptionsQuestionRecord,\n} from '../interfaces';\n\nimport { EsolveSurveyQuestion } from './esolve-survey-question.model';\n\nexport abstract class EsolveSurveyOptionsQuestion<\n T extends number | string,\n> extends EsolveSurveyQuestion {\n public options: EsolveSurveyOption<T>[] = [];\n\n constructor(record: EsolveSurveyOptionsQuestionRecord) {\n super(record);\n\n if (record.options.length > 0) {\n for (const option of record.options) {\n try {\n this.processOption(option);\n } catch (error) {\n console.error(error);\n }\n }\n }\n }\n\n protected abstract processValue(option: number | string): T;\n\n protected processOption(option: EsolveSurveyOption<string | number>): void {\n this.options.push({\n label: option.label,\n value: this.processValue(option.value),\n });\n }\n}\n","import { EsolveSurveyOptionsQuestionRecord } from '../interfaces';\n\nimport { EsolveSurveyOptionsQuestion } from './esolve-survey-options-question.model';\n\nexport class EsolveSurveyRatingQuestion extends EsolveSurveyOptionsQuestion<number> {\n public readonly type = 'rating';\n\n constructor(record: EsolveSurveyOptionsQuestionRecord) {\n if (record.type !== 'rating') {\n throw new Error('Invalid type');\n }\n\n super(record);\n }\n\n protected processValue(value: string | number): number {\n if (typeof value === 'string') {\n throw new Error('Value must be a number');\n }\n\n return value;\n }\n}\n","import {\n EsolveSurveyOption,\n EsolveSurveyOptionsQuestionRecord,\n} from '../interfaces';\n\nimport { EsolveSurveyOptionsQuestion } from './esolve-survey-options-question.model';\n\nexport class EsolveSurveySelectQuestion extends EsolveSurveyOptionsQuestion<string> {\n public readonly type = 'select';\n\n public placeholder?: string;\n\n constructor(record: EsolveSurveyOptionsQuestionRecord) {\n if (record.type !== 'select') {\n throw new Error('Invalid type');\n }\n\n super(record);\n }\n\n protected processValue(value: string | number): string {\n if (typeof value === 'number') {\n throw new Error('Value must be a string');\n }\n\n return value;\n }\n\n protected override processOption(option: EsolveSurveyOption<string>): void {\n if (option.value === '' && !this.placeholder) {\n this.placeholder = option.label;\n return;\n }\n\n this.options.push({\n label: option.label,\n value: this.processValue(option.value),\n });\n }\n}\n","import { EsolveSurveyTextQuestionRecord } from '../interfaces';\n\nimport { EsolveSurveyTextQuestion } from './esolve-survey-text-question.model';\n\nexport class EsolveSurveyTextareaQuestion extends EsolveSurveyTextQuestion {\n public readonly type = 'textarea';\n\n constructor(record: EsolveSurveyTextQuestionRecord) {\n if (record.type !== 'textarea') {\n throw new Error('Invalid type');\n }\n\n super(record);\n }\n}\n","import { EsolveSeoDetails, EsolveSeoInfo } from '@esolve/ng-esolve-connect';\n\nimport { EsolveSurveyRecord } from '../interfaces';\nimport { EsolveSurveyQuestionRecordList, EsolveSurveyType } from '../types';\n\nimport { EsolveSurveyQuestion } from './esolve-survey-question.model';\nimport { EsolveSurveyCheckQuestion } from './esolve-survey-check-question.model';\nimport { EsolveSurveyInputQuestion } from './esolve-survey-input-question.model';\nimport { EsolveSurveyRadioQuestion } from './esolve-survey-radio-question.model';\nimport { EsolveSurveyRatingQuestion } from './esolve-survey-rating-question.model';\nimport { EsolveSurveySelectQuestion } from './esolve-survey-select-question.model';\nimport { EsolveSurveyTextareaQuestion } from './esolve-survey-textarea-question.model';\n\nexport class EsolveSurvey implements EsolveSeoDetails {\n public id: number;\n public type: EsolveSurveyType;\n public identifier: string;\n public title: string;\n public description: string;\n public questions: EsolveSurveyQuestion[] = [];\n public seo_details: EsolveSeoInfo;\n\n constructor(record: EsolveSurveyRecord) {\n this.id = record.id;\n this.type = record.type;\n this.identifier = record.identifier;\n this.title = record.title;\n this.description = record.description;\n\n if (record.questions.length > 0) {\n this.processQuestions(record.questions);\n }\n\n this.seo_details = new EsolveSeoInfo(this.title, this.description);\n }\n\n private processQuestions(questions: EsolveSurveyQuestionRecordList) {\n for (const record of questions) {\n switch (record.type) {\n case 'input': {\n const question = new EsolveSurveyInputQuestion(record);\n\n this.questions.push(question);\n break;\n }\n\n case 'textarea': {\n const question = new EsolveSurveyTextareaQuestion(record);\n\n this.questions.push(question);\n break;\n }\n\n case 'radio_boxes': {\n const question = new EsolveSurveyRadioQuestion(record);\n\n this.questions.push(question);\n break;\n }\n\n case 'check_boxes': {\n const question = new EsolveSurveyCheckQuestion(record);\n\n this.questions.push(question);\n break;\n }\n\n case 'select': {\n const question = new EsolveSurveySelectQuestion(record);\n\n this.questions.push(question);\n break;\n }\n\n case 'rating': {\n const question = new EsolveSurveyRatingQuestion(record);\n\n this.questions.push(question);\n break;\n }\n\n default:\n break;\n }\n }\n }\n}\n","import { EsolveResponseResult } from '@esolve/ng-esolve-connect';\n\nimport { EsolveSurveyAnswerResponse } from '../interfaces';\n\nexport class EsolveSurveyAnswerResult extends EsolveResponseResult {\n public invalid_question_ids?: number[];\n\n constructor(response: EsolveSurveyAnswerResponse) {\n super(response);\n\n if (\n response.invalid_question_ids &&\n response.invalid_question_ids.length > 0\n ) {\n this.invalid_question_ids = response.invalid_question_ids;\n }\n }\n}\n","import { Injectable, inject } from '@angular/core';\nimport {\n HttpClient,\n HttpParams,\n HttpErrorResponse,\n} from '@angular/common/http';\n\nimport { Observable, throwError } from 'rxjs';\nimport { catchError, map } from 'rxjs/operators';\n\nimport {\n EsolveErrorHandlerService,\n EsolveGetResponse,\n EsolveResponseHandlerService,\n EsolveSetResponse,\n EsolveConfigService,\n} from '@esolve/ng-esolve-connect';\n\nimport {\n EsolveSurveyAnswerResponse,\n EsolveSurveyOptions,\n EsolveSurveyRecord,\n} from '../interfaces';\n\nimport { EsolveSurvey, EsolveSurveyAnswerResult } from '../classes';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class EsolveSurveyService {\n private readonly config = inject(EsolveConfigService);\n private readonly http = inject(HttpClient);\n private readonly errorHandler = inject(EsolveErrorHandlerService);\n private readonly responseHandler = inject(EsolveResponseHandlerService);\n\n /**\n * Get survey from eSolve API\n *\n * @param options\n *\n * @returns An `Observable` with requested survey\n */\n public getSurvey(options: {\n id: number;\n transaction_id?: number;\n }): Observable<EsolveSurvey>;\n public getSurvey(options: {\n identifier: string;\n transaction_id?: number;\n }): Observable<EsolveSurvey>;\n /**\n * Get survey from eSolve API\n *\n * @param id\n * @param transaction_id\n *\n * @returns An `Observable` with requested survey\n */\n public getSurvey(\n id: number,\n transaction_id?: number,\n ): Observable<EsolveSurvey>;\n /**\n * Get survey from eSolve API\n *\n * @param identifier\n * @param transaction_id\n *\n * @returns An `Observable` with requested survey\n */\n public getSurvey(\n identifier: string,\n transaction_id?: number,\n ): Observable<EsolveSurvey>;\n /**\n * Get survey from eSolve API\n *\n * @param options_or_id\n * @param transaction_id\n *\n * @returns An `Observable` with requested survey\n */\n public getSurvey(\n options_or_id: string | number | EsolveSurveyOptions,\n transaction_id?: number,\n ): Observable<EsolveSurvey> {\n try {\n const params = this.setParams(options_or_id, transaction_id);\n\n return this.http\n .get<EsolveGetResponse<EsolveSurveyRecord>>(\n `${this.config.api_url}/get-survey.php`,\n { params },\n )\n .pipe(\n map((response) => {\n if (\n response.records === undefined ||\n Array.isArray(response.records)\n ) {\n throw response;\n }\n\n return new EsolveSurvey(response.records);\n }),\n );\n } catch (error) {\n return throwError(() => error);\n }\n }\n\n /**\n * Set the survey answer\n *\n * @param data\n * @param options\n *\n * @returns An `Observable` with the result\n */\n public setSurveyAnswer(\n data: FormData,\n options: {\n id: number;\n transaction_id?: number;\n },\n ): Observable<EsolveSurveyAnswerResult>;\n public setSurveyAnswer(\n data: FormData,\n options: {\n identifier: string;\n transaction_id?: number;\n },\n ): Observable<EsolveSurveyAnswerResult>;\n /**\n * Set the survey answer\n *\n * @param data\n * @param id\n * @param transaction_id\n *\n * @returns An `Observable` with the result\n */\n public setSurveyAnswer(\n data: FormData,\n id: number,\n transaction_id?: number,\n ): Observable<EsolveSurveyAnswerResult>;\n /**\n * Set the survey answer\n *\n * @param data\n * @param identifier\n * @param transaction_id\n *\n * @returns An `Observable` with the result\n */\n public setSurveyAnswer(\n data: FormData,\n identifier: string,\n transaction_id?: number,\n ): Observable<EsolveSurveyAnswerResult>;\n /**\n * Set the survey answer\n *\n * @param data\n * @param options_or_id\n * @param transaction_id\n *\n * @returns An `Observable` with the result\n */\n public setSurveyAnswer(\n data: FormData,\n options_or_id: string | number | EsolveSurveyOptions,\n transaction_id?: number,\n ): Observable<EsolveSurveyAnswerResult> {\n try {\n const params = this.setParams(options_or_id, transaction_id);\n\n return this.http\n .post<EsolveSetResponse<EsolveSurveyAnswerResponse>>(\n `${this.config.api_url}/set-survey-answer.php`,\n data,\n {\n responseType: 'json',\n observe: 'body',\n params,\n },\n )\n .pipe(\n map((http_response) =>\n this.responseHandler.validateSingleHttpResponse(\n http_response,\n (response) =>\n new EsolveSurveyAnswerResult(response),\n ),\n ),\n catchError((errorRes: HttpErrorResponse | any) => {\n return this.errorHandler.handleHttpPostError(\n 'set-survey-answer',\n errorRes,\n );\n }),\n );\n } catch (error) {\n return throwError(() => error);\n }\n }\n\n private setParams(\n options_or_id: string | number | EsolveSurveyOptions,\n transaction_id?: number,\n ): HttpParams {\n let params = new HttpParams();\n\n if (typeof options_or_id === 'string') {\n params = params.set('identifier', options_or_id);\n } else if (typeof options_or_id === 'number') {\n params = params.set('surveys_id', options_or_id);\n } else {\n if (typeof options_or_id.id !== 'undefined') {\n params = params.set('surveys_id', options_or_id.id);\n } else if (typeof options_or_id.identifier !== 'undefined') {\n params = params.set('identifier', options_or_id.identifier);\n } else {\n throw new Error(\n 'Either ID or Identifier is required to retrieve survey',\n );\n }\n\n transaction_id = options_or_id.transaction_id;\n }\n\n if (typeof transaction_id !== 'undefined') {\n params = params.set('cart_id', transaction_id);\n }\n\n return params;\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":"esolve-ng-esolve-connect-survey.mjs","sources":["../../../../libs/ng-esolve-connect/survey/src/lib/classes/esolve-survey-question.model.ts","../../../../libs/ng-esolve-connect/survey/src/lib/classes/esolve-survey-values-question.model.ts","../../../../libs/ng-esolve-connect/survey/src/lib/classes/esolve-survey-check-question.model.ts","../../../../libs/ng-esolve-connect/survey/src/lib/classes/esolve-survey-text-question.model.ts","../../../../libs/ng-esolve-connect/survey/src/lib/classes/esolve-survey-input-question.model.ts","../../../../libs/ng-esolve-connect/survey/src/lib/classes/esolve-survey-radio-question.model.ts","../../../../libs/ng-esolve-connect/survey/src/lib/classes/esolve-survey-options-question.model.ts","../../../../libs/ng-esolve-connect/survey/src/lib/classes/esolve-survey-rating-question.model.ts","../../../../libs/ng-esolve-connect/survey/src/lib/classes/esolve-survey-select-question.model.ts","../../../../libs/ng-esolve-connect/survey/src/lib/classes/esolve-survey-textarea-question.model.ts","../../../../libs/ng-esolve-connect/survey/src/lib/classes/esolve-survey.model.ts","../../../../libs/ng-esolve-connect/survey/src/lib/classes/esolve-survey-answer-result.model.ts","../../../../libs/ng-esolve-connect/survey/src/lib/services/esolve-survey.service.ts","../../../../libs/ng-esolve-connect/survey/src/esolve-ng-esolve-connect-survey.ts"],"sourcesContent":["import { EsolveSurveyQuestionRecord } from '../interfaces';\nimport { EsolveSurveyQuestionType } from '../types';\n\nexport abstract class EsolveSurveyQuestion {\n public abstract type: EsolveSurveyQuestionType;\n public id: number;\n public identifier: string;\n public question: string;\n public title: string;\n public description: string;\n\n constructor(record: EsolveSurveyQuestionRecord) {\n this.id = record.id;\n this.identifier = record.identifier;\n this.question = record.question;\n this.title = record.title;\n this.description = record.description;\n }\n}\n","import { EsolveSurveyValuesQuestionRecord } from '../interfaces';\n\nimport { EsolveSurveyQuestion } from './esolve-survey-question.model';\n\nexport abstract class EsolveSurveyValuesQuestion extends EsolveSurveyQuestion {\n public values: string[] = [];\n\n constructor(record: EsolveSurveyValuesQuestionRecord) {\n super(record);\n\n if (record.values.length > 0) {\n this.values = record.values;\n }\n }\n}\n","import { EsolveSurveyValuesQuestionRecord } from '../interfaces';\n\nimport { EsolveSurveyValuesQuestion } from './esolve-survey-values-question.model';\n\nexport class EsolveSurveyCheckQuestion extends EsolveSurveyValuesQuestion {\n public readonly type = 'check_boxes';\n\n constructor(record: EsolveSurveyValuesQuestionRecord) {\n if (record.type !== 'check_boxes') {\n throw new Error('Invalid type');\n }\n\n super(record);\n }\n}\n","import { EsolveSurveyTextQuestionRecord } from '../interfaces';\n\nimport { EsolveSurveyQuestion } from './esolve-survey-question.model';\n\nexport abstract class EsolveSurveyTextQuestion extends EsolveSurveyQuestion {\n public length: number;\n public placeholder = '';\n\n constructor(record: EsolveSurveyTextQuestionRecord) {\n super(record);\n\n this.length = record.length;\n this.placeholder = record.placeholder;\n }\n}\n","import { EsolveSurveyTextQuestionRecord } from '../interfaces';\n\nimport { EsolveSurveyTextQuestion } from './esolve-survey-text-question.model';\n\nexport class EsolveSurveyInputQuestion extends EsolveSurveyTextQuestion {\n public readonly type = 'input';\n\n constructor(record: EsolveSurveyTextQuestionRecord) {\n if (record.type !== 'input') {\n throw new Error('Invalid type');\n }\n\n super(record);\n }\n}\n","import { EsolveSurveyValuesQuestionRecord } from '../interfaces';\n\nimport { EsolveSurveyValuesQuestion } from './esolve-survey-values-question.model';\n\nexport class EsolveSurveyRadioQuestion extends EsolveSurveyValuesQuestion {\n public readonly type = 'radio_boxes';\n\n constructor(record: EsolveSurveyValuesQuestionRecord) {\n if (record.type !== 'radio_boxes') {\n throw new Error('Invalid type');\n }\n\n super(record);\n }\n}\n","import {\n EsolveSurveyOption,\n EsolveSurveyOptionsQuestionRecord,\n} from '../interfaces';\n\nimport { EsolveSurveyQuestion } from './esolve-survey-question.model';\n\nexport abstract class EsolveSurveyOptionsQuestion<\n T extends number | string,\n> extends EsolveSurveyQuestion {\n public options: EsolveSurveyOption<T>[] = [];\n\n constructor(record: EsolveSurveyOptionsQuestionRecord) {\n super(record);\n\n if (record.options.length > 0) {\n for (const option of record.options) {\n try {\n this.processOption(option);\n } catch (error) {\n console.error(error);\n }\n }\n }\n }\n\n protected abstract processValue(option: number | string): T;\n\n protected processOption(option: EsolveSurveyOption<string | number>): void {\n this.options.push({\n label: option.label,\n value: this.processValue(option.value),\n });\n }\n}\n","import { EsolveSurveyOptionsQuestionRecord } from '../interfaces';\n\nimport { EsolveSurveyOptionsQuestion } from './esolve-survey-options-question.model';\n\nexport class EsolveSurveyRatingQuestion extends EsolveSurveyOptionsQuestion<number> {\n public readonly type = 'rating';\n\n constructor(record: EsolveSurveyOptionsQuestionRecord) {\n if (record.type !== 'rating') {\n throw new Error('Invalid type');\n }\n\n super(record);\n }\n\n protected processValue(value: string | number): number {\n if (typeof value === 'string') {\n throw new Error('Value must be a number');\n }\n\n return value;\n }\n}\n","import {\n EsolveSurveyOption,\n EsolveSurveyOptionsQuestionRecord,\n} from '../interfaces';\n\nimport { EsolveSurveyOptionsQuestion } from './esolve-survey-options-question.model';\n\nexport class EsolveSurveySelectQuestion extends EsolveSurveyOptionsQuestion<string> {\n public readonly type = 'select';\n\n public placeholder?: string;\n\n constructor(record: EsolveSurveyOptionsQuestionRecord) {\n if (record.type !== 'select') {\n throw new Error('Invalid type');\n }\n\n super(record);\n }\n\n protected processValue(value: string | number): string {\n if (typeof value === 'number') {\n throw new Error('Value must be a string');\n }\n\n return value;\n }\n\n protected override processOption(option: EsolveSurveyOption<string>): void {\n if (option.value === '' && !this.placeholder) {\n this.placeholder = option.label;\n return;\n }\n\n this.options.push({\n label: option.label,\n value: this.processValue(option.value),\n });\n }\n}\n","import { EsolveSurveyTextQuestionRecord } from '../interfaces';\n\nimport { EsolveSurveyTextQuestion } from './esolve-survey-text-question.model';\n\nexport class EsolveSurveyTextareaQuestion extends EsolveSurveyTextQuestion {\n public readonly type = 'textarea';\n\n constructor(record: EsolveSurveyTextQuestionRecord) {\n if (record.type !== 'textarea') {\n throw new Error('Invalid type');\n }\n\n super(record);\n }\n}\n","import { EsolveSeoDetails, EsolveSeoInfo } from '@esolve/ng-esolve-connect';\n\nimport { EsolveSurveyRecord } from '../interfaces';\nimport { EsolveSurveyQuestionRecordList, EsolveSurveyType } from '../types';\n\nimport { EsolveSurveyQuestion } from './esolve-survey-question.model';\nimport { EsolveSurveyCheckQuestion } from './esolve-survey-check-question.model';\nimport { EsolveSurveyInputQuestion } from './esolve-survey-input-question.model';\nimport { EsolveSurveyRadioQuestion } from './esolve-survey-radio-question.model';\nimport { EsolveSurveyRatingQuestion } from './esolve-survey-rating-question.model';\nimport { EsolveSurveySelectQuestion } from './esolve-survey-select-question.model';\nimport { EsolveSurveyTextareaQuestion } from './esolve-survey-textarea-question.model';\n\nexport class EsolveSurvey implements EsolveSeoDetails {\n public id: number;\n public type: EsolveSurveyType;\n public identifier: string;\n public title: string;\n public description: string;\n public questions: EsolveSurveyQuestion[] = [];\n public seo_details: EsolveSeoInfo;\n\n constructor(record: EsolveSurveyRecord) {\n this.id = record.id;\n this.type = record.type;\n this.identifier = record.identifier;\n this.title = record.title;\n this.description = record.description;\n\n if (record.questions.length > 0) {\n this.processQuestions(record.questions);\n }\n\n this.seo_details = new EsolveSeoInfo(this.title, this.description);\n }\n\n private processQuestions(questions: EsolveSurveyQuestionRecordList) {\n for (const record of questions) {\n switch (record.type) {\n case 'input': {\n const question = new EsolveSurveyInputQuestion(record);\n\n this.questions.push(question);\n break;\n }\n\n case 'textarea': {\n const question = new EsolveSurveyTextareaQuestion(record);\n\n this.questions.push(question);\n break;\n }\n\n case 'radio_boxes': {\n const question = new EsolveSurveyRadioQuestion(record);\n\n this.questions.push(question);\n break;\n }\n\n case 'check_boxes': {\n const question = new EsolveSurveyCheckQuestion(record);\n\n this.questions.push(question);\n break;\n }\n\n case 'select': {\n const question = new EsolveSurveySelectQuestion(record);\n\n this.questions.push(question);\n break;\n }\n\n case 'rating': {\n const question = new EsolveSurveyRatingQuestion(record);\n\n this.questions.push(question);\n break;\n }\n\n default:\n break;\n }\n }\n }\n}\n","import { EsolveResponseResult } from '@esolve/ng-esolve-connect';\n\nimport { EsolveSurveyAnswerResponse } from '../interfaces';\n\nexport class EsolveSurveyAnswerResult extends EsolveResponseResult {\n public invalid_question_ids?: number[];\n\n constructor(response: EsolveSurveyAnswerResponse) {\n super(response);\n\n if (\n response.invalid_question_ids &&\n response.invalid_question_ids.length > 0\n ) {\n this.invalid_question_ids = response.invalid_question_ids;\n }\n }\n}\n","import { Injectable, inject } from '@angular/core';\nimport {\n HttpClient,\n HttpParams,\n HttpErrorResponse,\n} from '@angular/common/http';\n\nimport { Observable, throwError } from 'rxjs';\nimport { catchError, map } from 'rxjs/operators';\n\nimport {\n EsolveErrorHandlerService,\n EsolveGetResponse,\n EsolveResponseHandlerService,\n EsolveSetResponse,\n EsolveConfigService,\n} from '@esolve/ng-esolve-connect';\n\nimport {\n EsolveSurveyAnswerResponse,\n EsolveSurveyOptions,\n EsolveSurveyRecord,\n} from '../interfaces';\n\nimport { EsolveSurvey, EsolveSurveyAnswerResult } from '../classes';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class EsolveSurveyService {\n private readonly config = inject(EsolveConfigService);\n private readonly http = inject(HttpClient);\n private readonly errorHandler = inject(EsolveErrorHandlerService);\n private readonly responseHandler = inject(EsolveResponseHandlerService);\n\n /**\n * Get survey from eSolve API\n *\n * @param options\n *\n * @returns An `Observable` with requested survey\n */\n public getSurvey(options: {\n id: number;\n transaction_id?: number;\n }): Observable<EsolveSurvey>;\n public getSurvey(options: {\n identifier: string;\n transaction_id?: number;\n }): Observable<EsolveSurvey>;\n /**\n * Get survey from eSolve API\n *\n * @param id\n * @param transaction_id\n *\n * @returns An `Observable` with requested survey\n */\n public getSurvey(\n id: number,\n transaction_id?: number,\n ): Observable<EsolveSurvey>;\n /**\n * Get survey from eSolve API\n *\n * @param identifier\n * @param transaction_id\n *\n * @returns An `Observable` with requested survey\n */\n public getSurvey(\n identifier: string,\n transaction_id?: number,\n ): Observable<EsolveSurvey>;\n /**\n * Get survey from eSolve API\n *\n * @param options_or_id\n * @param transaction_id\n *\n * @returns An `Observable` with requested survey\n */\n public getSurvey(\n options_or_id: string | number | EsolveSurveyOptions,\n transaction_id?: number,\n ): Observable<EsolveSurvey> {\n try {\n const params = this.setParams(options_or_id, transaction_id);\n\n return this.http\n .get<EsolveGetResponse<EsolveSurveyRecord>>(\n `${this.config.api_url}/get-survey.php`,\n { params },\n )\n .pipe(\n map((response) => {\n if (\n response.records === undefined ||\n Array.isArray(response.records)\n ) {\n throw response;\n }\n\n return new EsolveSurvey(response.records);\n }),\n );\n } catch (error) {\n return throwError(() => error);\n }\n }\n\n /**\n * Set the survey answer\n *\n * @param data\n * @param options\n *\n * @returns An `Observable` with the result\n */\n public setSurveyAnswer(\n data: FormData,\n options: {\n id: number;\n transaction_id?: number;\n },\n ): Observable<EsolveSurveyAnswerResult>;\n public setSurveyAnswer(\n data: FormData,\n options: {\n identifier: string;\n transaction_id?: number;\n },\n ): Observable<EsolveSurveyAnswerResult>;\n /**\n * Set the survey answer\n *\n * @param data\n * @param id\n * @param transaction_id\n *\n * @returns An `Observable` with the result\n */\n public setSurveyAnswer(\n data: FormData,\n id: number,\n transaction_id?: number,\n ): Observable<EsolveSurveyAnswerResult>;\n /**\n * Set the survey answer\n *\n * @param data\n * @param identifier\n * @param transaction_id\n *\n * @returns An `Observable` with the result\n */\n public setSurveyAnswer(\n data: FormData,\n identifier: string,\n transaction_id?: number,\n ): Observable<EsolveSurveyAnswerResult>;\n /**\n * Set the survey answer\n *\n * @param data\n * @param options_or_id\n * @param transaction_id\n *\n * @returns An `Observable` with the result\n */\n public setSurveyAnswer(\n data: FormData,\n options_or_id: string | number | EsolveSurveyOptions,\n transaction_id?: number,\n ): Observable<EsolveSurveyAnswerResult> {\n try {\n const params = this.setParams(options_or_id, transaction_id);\n\n return this.http\n .post<EsolveSetResponse<EsolveSurveyAnswerResponse>>(\n `${this.config.api_url}/set-survey-answer.php`,\n data,\n {\n responseType: 'json',\n observe: 'body',\n params,\n },\n )\n .pipe(\n map((http_response) =>\n this.responseHandler.validateSingleHttpResponse(\n http_response,\n (response) =>\n new EsolveSurveyAnswerResult(response),\n ),\n ),\n catchError((errorRes: HttpErrorResponse | any) => {\n return this.errorHandler.handleHttpPostError(\n 'set-survey-answer',\n errorRes,\n );\n }),\n );\n } catch (error) {\n return throwError(() => error);\n }\n }\n\n private setParams(\n options_or_id: string | number | EsolveSurveyOptions,\n transaction_id?: number,\n ): HttpParams {\n let params = new HttpParams();\n\n if (typeof options_or_id === 'string') {\n params = params.set('identifier', options_or_id);\n } else if (typeof options_or_id === 'number') {\n params = params.set('surveys_id', options_or_id);\n } else {\n if (typeof options_or_id.id !== 'undefined') {\n params = params.set('surveys_id', options_or_id.id);\n } else if (typeof options_or_id.identifier !== 'undefined') {\n params = params.set('identifier', options_or_id.identifier);\n } else {\n throw new Error(\n 'Either ID or Identifier is required to retrieve survey',\n );\n }\n\n transaction_id = options_or_id.transaction_id;\n }\n\n if (typeof transaction_id !== 'undefined') {\n params = params.set('cart_id', transaction_id);\n }\n\n return params;\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}