geonetwork-ui 2.3.0-dev.c4b41b40 → 2.3.0-dev.cd1164a9

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 (148) hide show
  1. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/read-parts.mjs +2 -2
  2. package/esm2022/libs/api/metadata-converter/src/lib/iso19139/write-parts.mjs +2 -2
  3. package/esm2022/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.mjs +9 -7
  4. package/esm2022/libs/feature/dataviz/src/lib/chart-view/chart-view.component.mjs +1 -1
  5. package/esm2022/libs/feature/dataviz/src/lib/service/data.service.mjs +5 -23
  6. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.mjs +1 -1
  7. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.mjs +104 -0
  8. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.mjs +8 -3
  9. package/esm2022/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.mjs +1 -1
  10. package/esm2022/libs/feature/editor/src/lib/fields.config.mjs +8 -1
  11. package/esm2022/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.mjs +73 -20
  12. package/esm2022/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.mjs +1 -1
  13. package/esm2022/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.mjs +1 -1
  14. package/esm2022/libs/feature/map/src/lib/map-context/map-context.model.mjs +1 -1
  15. package/esm2022/libs/feature/map/src/lib/map-context/map-context.service.mjs +58 -17
  16. package/esm2022/libs/feature/map/src/lib/utils/map-utils.service.mjs +6 -2
  17. package/esm2022/libs/feature/record/src/lib/data-view/data-view.component.mjs +1 -1
  18. package/esm2022/libs/feature/record/src/lib/map-view/map-view.component.mjs +5 -3
  19. package/esm2022/libs/feature/record/src/lib/state/mdview.reducer.mjs +1 -3
  20. package/esm2022/libs/feature/search/src/index.mjs +2 -1
  21. package/esm2022/libs/feature/search/src/lib/results-layout/results-layout.component.mjs +1 -1
  22. package/esm2022/libs/feature/search/src/lib/results-list/results-list.container.component.mjs +4 -4
  23. package/esm2022/libs/feature/search/src/lib/sort-by/sort-by.component.mjs +1 -1
  24. package/esm2022/libs/feature/search/src/lib/utils/service/fields.service.mjs +1 -1
  25. package/esm2022/libs/ui/catalog/src/lib/language-switcher/language-switcher.component.mjs +1 -1
  26. package/esm2022/libs/ui/catalog/src/lib/organisations-filter/organisations-filter.component.mjs +1 -1
  27. package/esm2022/libs/ui/elements/src/index.mjs +2 -2
  28. package/esm2022/libs/ui/elements/src/lib/api-card/api-card.component.mjs +3 -2
  29. package/esm2022/libs/ui/elements/src/lib/downloads-list/downloads-list.component.mjs +2 -2
  30. package/esm2022/libs/ui/elements/src/lib/error/error.component.mjs +30 -0
  31. package/esm2022/libs/ui/elements/src/lib/record-api-form/record-api-form.component.mjs +89 -54
  32. package/esm2022/libs/ui/elements/src/lib/ui-elements.module.mjs +6 -6
  33. package/esm2022/libs/ui/elements/src/lib/user-feedback-item/user-feedback-item.component.mjs +3 -5
  34. package/esm2022/libs/ui/inputs/src/lib/check-toggle/check-toggle.component.mjs +4 -3
  35. package/esm2022/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.mjs +5 -3
  36. package/esm2022/libs/ui/inputs/src/lib/text-input/text-input.component.mjs +5 -3
  37. package/esm2022/libs/ui/inputs/src/lib/ui-inputs.module.mjs +6 -5
  38. package/esm2022/libs/ui/layout/src/lib/carousel/carousel.component.mjs +3 -3
  39. package/esm2022/libs/util/app-config/src/lib/app-config.mjs +3 -1
  40. package/esm2022/libs/util/app-config/src/lib/fixtures.mjs +2 -1
  41. package/esm2022/libs/util/app-config/src/lib/model.mjs +1 -1
  42. package/esm2022/translations/de.json +12 -14
  43. package/esm2022/translations/en.json +12 -14
  44. package/esm2022/translations/es.json +12 -14
  45. package/esm2022/translations/fr.json +12 -14
  46. package/esm2022/translations/it.json +12 -14
  47. package/esm2022/translations/nl.json +12 -14
  48. package/esm2022/translations/pt.json +12 -14
  49. package/fesm2022/geonetwork-ui.mjs +493 -277
  50. package/fesm2022/geonetwork-ui.mjs.map +1 -1
  51. package/libs/api/metadata-converter/src/lib/iso19139/write-parts.d.ts.map +1 -1
  52. package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts.map +1 -1
  53. package/libs/feature/dataviz/src/lib/service/data.service.d.ts.map +1 -1
  54. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.d.ts +21 -0
  55. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.d.ts.map +1 -0
  56. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.d.ts +1 -0
  57. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.d.ts.map +1 -1
  58. package/libs/feature/editor/src/lib/fields.config.d.ts.map +1 -1
  59. package/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.d.ts +10 -5
  60. package/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.d.ts.map +1 -1
  61. package/libs/feature/map/src/lib/map-context/map-context.model.d.ts +7 -0
  62. package/libs/feature/map/src/lib/map-context/map-context.model.d.ts.map +1 -1
  63. package/libs/feature/map/src/lib/map-context/map-context.service.d.ts +1 -1
  64. package/libs/feature/map/src/lib/map-context/map-context.service.d.ts.map +1 -1
  65. package/libs/feature/map/src/lib/utils/map-utils.service.d.ts.map +1 -1
  66. package/libs/feature/record/src/lib/map-view/map-view.component.d.ts.map +1 -1
  67. package/libs/feature/record/src/lib/state/mdview.reducer.d.ts.map +1 -1
  68. package/libs/feature/search/src/index.d.ts +1 -0
  69. package/libs/feature/search/src/index.d.ts.map +1 -1
  70. package/libs/feature/search/src/lib/utils/service/fields.service.d.ts +3 -3
  71. package/libs/feature/search/src/lib/utils/service/fields.service.d.ts.map +1 -1
  72. package/libs/ui/elements/src/index.d.ts +1 -1
  73. package/libs/ui/elements/src/index.d.ts.map +1 -1
  74. package/libs/ui/elements/src/lib/api-card/api-card.component.d.ts.map +1 -1
  75. package/libs/ui/elements/src/lib/error/error.component.d.ts +16 -0
  76. package/libs/ui/elements/src/lib/error/error.component.d.ts.map +1 -0
  77. package/libs/ui/elements/src/lib/record-api-form/record-api-form.component.d.ts +22 -4
  78. package/libs/ui/elements/src/lib/record-api-form/record-api-form.component.d.ts.map +1 -1
  79. package/libs/ui/elements/src/lib/ui-elements.module.d.ts +2 -2
  80. package/libs/ui/elements/src/lib/ui-elements.module.d.ts.map +1 -1
  81. package/libs/ui/elements/src/lib/user-feedback-item/user-feedback-item.component.d.ts +1 -2
  82. package/libs/ui/elements/src/lib/user-feedback-item/user-feedback-item.component.d.ts.map +1 -1
  83. package/libs/ui/inputs/src/lib/check-toggle/check-toggle.component.d.ts +1 -1
  84. package/libs/ui/inputs/src/lib/check-toggle/check-toggle.component.d.ts.map +1 -1
  85. package/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.d.ts +2 -1
  86. package/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.d.ts.map +1 -1
  87. package/libs/ui/inputs/src/lib/text-input/text-input.component.d.ts +2 -1
  88. package/libs/ui/inputs/src/lib/text-input/text-input.component.d.ts.map +1 -1
  89. package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts +27 -27
  90. package/libs/util/app-config/src/lib/app-config.d.ts.map +1 -1
  91. package/libs/util/app-config/src/lib/fixtures.d.ts.map +1 -1
  92. package/libs/util/app-config/src/lib/model.d.ts +1 -0
  93. package/libs/util/app-config/src/lib/model.d.ts.map +1 -1
  94. package/package.json +2 -2
  95. package/src/libs/api/metadata-converter/src/lib/iso19139/read-parts.ts +1 -1
  96. package/src/libs/api/metadata-converter/src/lib/iso19139/write-parts.ts +1 -4
  97. package/src/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.ts +16 -10
  98. package/src/libs/common/fixtures/src/lib/link.fixtures.ts +8 -0
  99. package/src/libs/feature/dataviz/src/lib/service/data.service.ts +4 -21
  100. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.css +0 -0
  101. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.html +14 -0
  102. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.ts +143 -0
  103. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.html +5 -0
  104. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.ts +5 -0
  105. package/src/libs/feature/editor/src/lib/fields.config.ts +7 -0
  106. package/src/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.css +7 -0
  107. package/src/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.html +32 -18
  108. package/src/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.ts +72 -17
  109. package/src/libs/feature/map/src/lib/map-context/map-context.model.ts +7 -0
  110. package/src/libs/feature/map/src/lib/map-context/map-context.service.ts +57 -17
  111. package/src/libs/feature/map/src/lib/utils/map-utils.service.ts +5 -1
  112. package/src/libs/feature/record/src/lib/map-view/map-view.component.ts +4 -4
  113. package/src/libs/feature/record/src/lib/state/mdview.reducer.ts +0 -2
  114. package/src/libs/feature/search/src/index.ts +1 -0
  115. package/src/libs/feature/search/src/lib/results-list/results-list.container.component.html +4 -4
  116. package/src/libs/feature/search/src/lib/utils/service/fields.service.ts +2 -2
  117. package/src/libs/ui/elements/src/index.ts +1 -1
  118. package/src/libs/ui/elements/src/lib/api-card/api-card.component.ts +2 -1
  119. package/src/libs/ui/elements/src/lib/downloads-list/downloads-list.component.ts +1 -1
  120. package/src/libs/ui/elements/src/lib/{search-results-error/search-results-error.component.html → error/error.component.html} +18 -3
  121. package/src/libs/ui/elements/src/lib/{search-results-error/search-results-error.component.ts → error/error.component.ts} +5 -4
  122. package/src/libs/ui/elements/src/lib/record-api-form/record-api-form.component.html +25 -9
  123. package/src/libs/ui/elements/src/lib/record-api-form/record-api-form.component.ts +116 -57
  124. package/src/libs/ui/elements/src/lib/ui-elements.module.ts +3 -4
  125. package/src/libs/ui/elements/src/lib/user-feedback-item/user-feedback-item.component.html +1 -1
  126. package/src/libs/ui/elements/src/lib/user-feedback-item/user-feedback-item.component.ts +0 -1
  127. package/src/libs/ui/inputs/src/lib/check-toggle/check-toggle.component.ts +3 -0
  128. package/src/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.html +1 -0
  129. package/src/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.ts +1 -0
  130. package/src/libs/ui/inputs/src/lib/text-input/text-input.component.html +1 -0
  131. package/src/libs/ui/inputs/src/lib/text-input/text-input.component.ts +1 -0
  132. package/src/libs/ui/inputs/src/lib/ui-inputs.module.ts +1 -1
  133. package/src/libs/ui/layout/src/lib/carousel/carousel.component.css +1 -0
  134. package/src/libs/util/app-config/src/lib/app-config.ts +2 -0
  135. package/src/libs/util/app-config/src/lib/fixtures.ts +1 -0
  136. package/src/libs/util/app-config/src/lib/model.ts +1 -0
  137. package/translations/de.json +12 -14
  138. package/translations/en.json +12 -14
  139. package/translations/es.json +12 -14
  140. package/translations/fr.json +12 -14
  141. package/translations/it.json +12 -14
  142. package/translations/nl.json +12 -14
  143. package/translations/pt.json +12 -14
  144. package/translations/sk.json +12 -14
  145. package/esm2022/libs/ui/elements/src/lib/search-results-error/search-results-error.component.mjs +0 -29
  146. package/libs/ui/elements/src/lib/search-results-error/search-results-error.component.d.ts +0 -15
  147. package/libs/ui/elements/src/lib/search-results-error/search-results-error.component.d.ts.map +0 -1
  148. /package/src/libs/ui/elements/src/lib/{search-results-error/search-results-error.component.css → error/error.component.css} +0 -0
@@ -17,9 +17,9 @@ export * from './lib/pagination-buttons/pagination-buttons.component';
17
17
  export * from './lib/pagination/pagination.component';
18
18
  export * from './lib/record-api-form/record-api-form.component';
19
19
  export * from './lib/related-record-card/related-record-card.component';
20
- export * from './lib/search-results-error/search-results-error.component';
20
+ export * from './lib/error/error.component';
21
21
  export * from './lib/thumbnail/thumbnail.component';
22
22
  export * from './lib/ui-elements.module';
23
23
  export * from './lib/user-preview/user-preview.component';
24
24
  export * from './lib/notification/notification.component';
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2VsZW1lbnRzL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG1DQUFtQyxDQUFBO0FBQ2pELGNBQWMsK0JBQStCLENBQUE7QUFDN0MsY0FBYyw2Q0FBNkMsQ0FBQTtBQUMzRCxjQUFjLDZDQUE2QyxDQUFBO0FBQzNELGNBQWMsK0NBQStDLENBQUE7QUFDN0QsY0FBYyw2REFBNkQsQ0FBQTtBQUMzRSxjQUFjLHFDQUFxQyxDQUFBO0FBQ25ELGNBQWMsaURBQWlELENBQUE7QUFDL0QsY0FBYyxpREFBaUQsQ0FBQTtBQUMvRCxjQUFjLHFDQUFxQyxDQUFBO0FBQ25ELGNBQWMsbURBQW1ELENBQUE7QUFDakUsY0FBYyxtREFBbUQsQ0FBQTtBQUNqRSxjQUFjLDZDQUE2QyxDQUFBO0FBQzNELGNBQWMsNkRBQTZELENBQUE7QUFDM0UsY0FBYyxtREFBbUQsQ0FBQTtBQUNqRSxjQUFjLHVEQUF1RCxDQUFBO0FBQ3JFLGNBQWMsdUNBQXVDLENBQUE7QUFDckQsY0FBYyxpREFBaUQsQ0FBQTtBQUMvRCxjQUFjLHlEQUF5RCxDQUFBO0FBQ3ZFLGNBQWMsMkRBQTJELENBQUE7QUFDekUsY0FBYyxxQ0FBcUMsQ0FBQTtBQUNuRCxjQUFjLDBCQUEwQixDQUFBO0FBQ3hDLGNBQWMsMkNBQTJDLENBQUE7QUFDekQsY0FBYywyQ0FBMkMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS1jYXJkL2FwaS1jYXJkLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2F2YXRhci9hdmF0YXIuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29udGVudC1naG9zdC9jb250ZW50LWdob3N0LmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Rvd25sb2FkLWl0ZW0vZG93bmxvYWQtaXRlbS5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kb3dubG9hZHMtbGlzdC9kb3dubG9hZHMtbGlzdC5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbWFnZS1vdmVybGF5LXByZXZpZXcvaW1hZ2Utb3ZlcmxheS1wcmV2aWV3LmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2xpbmstY2FyZC9saW5rLWNhcmQuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbWFya2Rvd24tZWRpdG9yL21hcmtkb3duLWVkaXRvci5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tYXJrZG93bi1wYXJzZXIvbWFya2Rvd24tcGFyc2VyLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL21heC1saW5lcy9tYXgtbGluZXMuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbWV0YWRhdGEtY2F0YWxvZy9tZXRhZGF0YS1jYXRhbG9nLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL21ldGFkYXRhLWNvbnRhY3QvbWV0YWRhdGEtY29udGFjdC5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tZXRhZGF0YS1pbmZvL21ldGFkYXRhLWluZm8uY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbWV0YWRhdGEtcXVhbGl0eS1pdGVtL21ldGFkYXRhLXF1YWxpdHktaXRlbS5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tZXRhZGF0YS1xdWFsaXR5L21ldGFkYXRhLXF1YWxpdHkuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcGFnaW5hdGlvbi1idXR0b25zL3BhZ2luYXRpb24tYnV0dG9ucy5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9wYWdpbmF0aW9uL3BhZ2luYXRpb24uY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcmVjb3JkLWFwaS1mb3JtL3JlY29yZC1hcGktZm9ybS5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9yZWxhdGVkLXJlY29yZC1jYXJkL3JlbGF0ZWQtcmVjb3JkLWNhcmQuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VhcmNoLXJlc3VsdHMtZXJyb3Ivc2VhcmNoLXJlc3VsdHMtZXJyb3IuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdGh1bWJuYWlsL3RodW1ibmFpbC5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi91aS1lbGVtZW50cy5tb2R1bGUnXG5leHBvcnQgKiBmcm9tICcuL2xpYi91c2VyLXByZXZpZXcvdXNlci1wcmV2aWV3LmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL25vdGlmaWNhdGlvbi9ub3RpZmljYXRpb24uY29tcG9uZW50J1xuIl19
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2VsZW1lbnRzL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG1DQUFtQyxDQUFBO0FBQ2pELGNBQWMsK0JBQStCLENBQUE7QUFDN0MsY0FBYyw2Q0FBNkMsQ0FBQTtBQUMzRCxjQUFjLDZDQUE2QyxDQUFBO0FBQzNELGNBQWMsK0NBQStDLENBQUE7QUFDN0QsY0FBYyw2REFBNkQsQ0FBQTtBQUMzRSxjQUFjLHFDQUFxQyxDQUFBO0FBQ25ELGNBQWMsaURBQWlELENBQUE7QUFDL0QsY0FBYyxpREFBaUQsQ0FBQTtBQUMvRCxjQUFjLHFDQUFxQyxDQUFBO0FBQ25ELGNBQWMsbURBQW1ELENBQUE7QUFDakUsY0FBYyxtREFBbUQsQ0FBQTtBQUNqRSxjQUFjLDZDQUE2QyxDQUFBO0FBQzNELGNBQWMsNkRBQTZELENBQUE7QUFDM0UsY0FBYyxtREFBbUQsQ0FBQTtBQUNqRSxjQUFjLHVEQUF1RCxDQUFBO0FBQ3JFLGNBQWMsdUNBQXVDLENBQUE7QUFDckQsY0FBYyxpREFBaUQsQ0FBQTtBQUMvRCxjQUFjLHlEQUF5RCxDQUFBO0FBQ3ZFLGNBQWMsNkJBQTZCLENBQUE7QUFDM0MsY0FBYyxxQ0FBcUMsQ0FBQTtBQUNuRCxjQUFjLDBCQUEwQixDQUFBO0FBQ3hDLGNBQWMsMkNBQTJDLENBQUE7QUFDekQsY0FBYywyQ0FBMkMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS1jYXJkL2FwaS1jYXJkLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2F2YXRhci9hdmF0YXIuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29udGVudC1naG9zdC9jb250ZW50LWdob3N0LmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Rvd25sb2FkLWl0ZW0vZG93bmxvYWQtaXRlbS5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kb3dubG9hZHMtbGlzdC9kb3dubG9hZHMtbGlzdC5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbWFnZS1vdmVybGF5LXByZXZpZXcvaW1hZ2Utb3ZlcmxheS1wcmV2aWV3LmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2xpbmstY2FyZC9saW5rLWNhcmQuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbWFya2Rvd24tZWRpdG9yL21hcmtkb3duLWVkaXRvci5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tYXJrZG93bi1wYXJzZXIvbWFya2Rvd24tcGFyc2VyLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL21heC1saW5lcy9tYXgtbGluZXMuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbWV0YWRhdGEtY2F0YWxvZy9tZXRhZGF0YS1jYXRhbG9nLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL21ldGFkYXRhLWNvbnRhY3QvbWV0YWRhdGEtY29udGFjdC5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tZXRhZGF0YS1pbmZvL21ldGFkYXRhLWluZm8uY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbWV0YWRhdGEtcXVhbGl0eS1pdGVtL21ldGFkYXRhLXF1YWxpdHktaXRlbS5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tZXRhZGF0YS1xdWFsaXR5L21ldGFkYXRhLXF1YWxpdHkuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcGFnaW5hdGlvbi1idXR0b25zL3BhZ2luYXRpb24tYnV0dG9ucy5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9wYWdpbmF0aW9uL3BhZ2luYXRpb24uY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcmVjb3JkLWFwaS1mb3JtL3JlY29yZC1hcGktZm9ybS5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9yZWxhdGVkLXJlY29yZC1jYXJkL3JlbGF0ZWQtcmVjb3JkLWNhcmQuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZXJyb3IvZXJyb3IuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdGh1bWJuYWlsL3RodW1ibmFpbC5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi91aS1lbGVtZW50cy5tb2R1bGUnXG5leHBvcnQgKiBmcm9tICcuL2xpYi91c2VyLXByZXZpZXcvdXNlci1wcmV2aWV3LmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL25vdGlmaWNhdGlvbi9ub3RpZmljYXRpb24uY29tcG9uZW50J1xuIl19
@@ -12,7 +12,8 @@ export class ApiCardComponent {
12
12
  }
13
13
  ngOnInit() {
14
14
  this.displayApiFormButton =
15
- this.link.accessServiceProtocol === 'ogcFeatures' ? true : false;
15
+ this.link.accessServiceProtocol === 'ogcFeatures' ||
16
+ this.link.accessServiceProtocol === 'wfs';
16
17
  }
17
18
  ngOnChanges(changes) {
18
19
  this.currentlyActive =
@@ -37,4 +38,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImpor
37
38
  }], openRecordApiForm: [{
38
39
  type: Output
39
40
  }] } });
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLWNhcmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9lbGVtZW50cy9zcmMvbGliL2FwaS1jYXJkL2FwaS1jYXJkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi9hcGktY2FyZC9hcGktY2FyZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sR0FFUCxNQUFNLGVBQWUsQ0FBQTs7Ozs7OztBQVF0QixNQUFNLE9BQU8sZ0JBQWdCO0lBTjdCO1FBVUUsb0JBQWUsR0FBRyxLQUFLLENBQUE7UUFDYixzQkFBaUIsR0FDekIsSUFBSSxZQUFZLEVBQThCLENBQUE7S0FrQmpEO0lBaEJDLFFBQVE7UUFDTixJQUFJLENBQUMsb0JBQW9CO1lBQ3ZCLElBQUksQ0FBQyxJQUFJLENBQUMscUJBQXFCLEtBQUssYUFBYSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQTtJQUNwRSxDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksQ0FBQyxlQUFlO1lBQ2xCLE9BQU8sQ0FBQyxXQUFXLENBQUMsWUFBWSxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFBO0lBQ2pFLENBQUM7SUFFRCxzQkFBc0I7UUFDcEIsSUFBSSxJQUFJLENBQUMsb0JBQW9CLEVBQUU7WUFDN0IsSUFBSSxDQUFDLGVBQWUsR0FBRyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUE7WUFDNUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQTtTQUMxRTtJQUNILENBQUM7OEdBdkJVLGdCQUFnQjtrR0FBaEIsZ0JBQWdCLHNMQ2xCN0IsNjBEQW1EQTs7MkZEakNhLGdCQUFnQjtrQkFONUIsU0FBUzsrQkFDRSxnQkFBZ0IsbUJBR1QsdUJBQXVCLENBQUMsTUFBTTs4QkFHdEMsSUFBSTtzQkFBWixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBR0ksaUJBQWlCO3NCQUExQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGF0YXNldFNlcnZpY2VEaXN0cmlidXRpb24gfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9tb2RlbC9yZWNvcmQnXG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBTaW1wbGVDaGFuZ2VzLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS1hcGktY2FyZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9hcGktY2FyZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2FwaS1jYXJkLmNvbXBvbmVudC5jc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEFwaUNhcmRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG4gIEBJbnB1dCgpIGxpbms6IERhdGFzZXRTZXJ2aWNlRGlzdHJpYnV0aW9uXG4gIEBJbnB1dCgpIGN1cnJlbnRMaW5rOiBEYXRhc2V0U2VydmljZURpc3RyaWJ1dGlvblxuICBkaXNwbGF5QXBpRm9ybUJ1dHRvbjogYm9vbGVhblxuICBjdXJyZW50bHlBY3RpdmUgPSBmYWxzZVxuICBAT3V0cHV0KCkgb3BlblJlY29yZEFwaUZvcm06IEV2ZW50RW1pdHRlcjxEYXRhc2V0U2VydmljZURpc3RyaWJ1dGlvbj4gPVxuICAgIG5ldyBFdmVudEVtaXR0ZXI8RGF0YXNldFNlcnZpY2VEaXN0cmlidXRpb24+KClcblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmRpc3BsYXlBcGlGb3JtQnV0dG9uID1cbiAgICAgIHRoaXMubGluay5hY2Nlc3NTZXJ2aWNlUHJvdG9jb2wgPT09ICdvZ2NGZWF0dXJlcycgPyB0cnVlIDogZmFsc2VcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICB0aGlzLmN1cnJlbnRseUFjdGl2ZSA9XG4gICAgICBjaGFuZ2VzLmN1cnJlbnRMaW5rLmN1cnJlbnRWYWx1ZSA9PT0gdGhpcy5saW5rID8gdHJ1ZSA6IGZhbHNlXG4gIH1cblxuICBvcGVuUmVjb3JkQXBpRm9ybVBhbmVsKCkge1xuICAgIGlmICh0aGlzLmRpc3BsYXlBcGlGb3JtQnV0dG9uKSB7XG4gICAgICB0aGlzLmN1cnJlbnRseUFjdGl2ZSA9ICF0aGlzLmN1cnJlbnRseUFjdGl2ZVxuICAgICAgdGhpcy5vcGVuUmVjb3JkQXBpRm9ybS5lbWl0KHRoaXMuY3VycmVudGx5QWN0aXZlID8gdGhpcy5saW5rIDogdW5kZWZpbmVkKVxuICAgIH1cbiAgfVxufVxuIiwiPGRpdlxuICBjbGFzcz1cImdyb3VwIGZsZXggZmxleC1jb2wganVzdGlmeS1iZXR3ZWVuIGgtNDAgcHQtNSBwYi02IHB4LTcgcm91bmRlZCBmaWx0ZXIgb3ZlcmZsb3ctaGlkZGVuXCJcbiAgW25nQ2xhc3NdPVwieyAnY3Vyc29yLXBvaW50ZXInOiBkaXNwbGF5QXBpRm9ybUJ1dHRvbiB9XCJcbiAgKGNsaWNrKT1cIm9wZW5SZWNvcmRBcGlGb3JtUGFuZWwoKVwiXG4+XG4gIDxkaXZcbiAgICBjbGFzcz1cImZvbnQtdGl0bGUgZm9udC1tZWRpdW0gdGV4dC0yMSB0ZXh0LWJsYWNrIHRleHQtZWxsaXBzaXMgb3ZlcmZsb3ctaGlkZGVuIGJyZWFrLXdvcmRzIHBiLTUgaC1bNC41cmVtXVwiXG4gID5cbiAgICB7eyBsaW5rLm5hbWUgfHwgbGluay5kZXNjcmlwdGlvbiB9fVxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cIlwiPlxuICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtcm93IGp1c3RpZnktYmV0d2VlblwiPlxuICAgICAgPHNwYW5cbiAgICAgICAgY2xhc3M9XCJiZy1wcmltYXJ5LW9wYWNpdHktNTAgdXBwZXJjYXNlIGlubGluZS1mbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciBweC0yIHB5LTEgdGV4dC0xMyBmb250LW1lZGl1bSBsZWFkaW5nLW5vbmUgdGV4dC13aGl0ZSByb3VuZGVkIHRleHQtcHJpbWFyeS1saWdodGVzdCBncm91cC1ob3ZlcjpiZy1wcmltYXJ5IHRyYW5zaXRpb24tY29sb3JzXCJcbiAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICchYmctcHJpbWFyeSc6IGN1cnJlbnRseUFjdGl2ZVxuICAgICAgICB9XCJcbiAgICAgICAgPnt7IGxpbmsuYWNjZXNzU2VydmljZVByb3RvY29sIH19PC9zcGFuXG4gICAgICA+XG4gICAgICA8Z24tdWktY29weS10ZXh0LWJ1dHRvblxuICAgICAgICAqbmdJZj1cIiFkaXNwbGF5QXBpRm9ybUJ1dHRvblwiXG4gICAgICAgIFt0ZXh0XT1cImxpbmsudXJsLnRvU3RyaW5nKClcIlxuICAgICAgICBbdG9vbHRpcFRleHRdPVwiJ3Rvb2x0aXAudXJsLmNvcHknIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgW2Rpc3BsYXlUZXh0XT1cImZhbHNlXCJcbiAgICAgID48L2duLXVpLWNvcHktdGV4dC1idXR0b24+XG4gICAgICA8YnV0dG9uXG4gICAgICAgICpuZ0lmPVwiZGlzcGxheUFwaUZvcm1CdXR0b25cIlxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICdweS0yIHB4LTQgcm91bmRlZC1yLW1kIGJnLWdyYXktNDAwIGhvdmVyOmJnLWdyYXktNjAwIGZvY3VzOmJnLWdyYXktODAwIHRleHQtd2hpdGUnOlxuICAgICAgICAgICAgZGlzcGxheVRleHRcbiAgICAgICAgfVwiXG4gICAgICAgIG1hdC1yYWlzZWQtYnV0dG9uXG4gICAgICAgIFttYXRUb29sdGlwXT1cIlxuICAgICAgICAgICFjdXJyZW50bHlBY3RpdmVcbiAgICAgICAgICAgID8gKCdyZWNvcmQubWV0YWRhdGEuYXBpLmZvcm0ub3BlbkZvcm0nIHwgdHJhbnNsYXRlKVxuICAgICAgICAgICAgOiAoJ3JlY29yZC5tZXRhZGF0YS5hcGkuZm9ybS5jbG9zZUZvcm0nIHwgdHJhbnNsYXRlKVxuICAgICAgICBcIlxuICAgICAgICBtYXRUb29sdGlwUG9zaXRpb249XCJhYm92ZVwiXG4gICAgICA+XG4gICAgICAgIDxtYXQtaWNvblxuICAgICAgICAgIGNsYXNzPVwibWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZCBwb2ludGVyLWV2ZW50cy1ub25lIGFsaWduLW1pZGRsZSBjYXJkLWljb25cIlxuICAgICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAgICd0ZXh0LXNlY29uZGFyeSBvcGFjaXR5LTEwMCc6IGN1cnJlbnRseUFjdGl2ZVxuICAgICAgICAgIH1cIlxuICAgICAgICAgID5tb3JlX2hvcml6PC9tYXQtaWNvblxuICAgICAgICA+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLWNhcmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9lbGVtZW50cy9zcmMvbGliL2FwaS1jYXJkL2FwaS1jYXJkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi9hcGktY2FyZC9hcGktY2FyZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sR0FFUCxNQUFNLGVBQWUsQ0FBQTs7Ozs7OztBQVF0QixNQUFNLE9BQU8sZ0JBQWdCO0lBTjdCO1FBVUUsb0JBQWUsR0FBRyxLQUFLLENBQUE7UUFDYixzQkFBaUIsR0FDekIsSUFBSSxZQUFZLEVBQThCLENBQUE7S0FtQmpEO0lBakJDLFFBQVE7UUFDTixJQUFJLENBQUMsb0JBQW9CO1lBQ3ZCLElBQUksQ0FBQyxJQUFJLENBQUMscUJBQXFCLEtBQUssYUFBYTtnQkFDakQsSUFBSSxDQUFDLElBQUksQ0FBQyxxQkFBcUIsS0FBSyxLQUFLLENBQUE7SUFDN0MsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLENBQUMsZUFBZTtZQUNsQixPQUFPLENBQUMsV0FBVyxDQUFDLFlBQVksS0FBSyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQTtJQUNqRSxDQUFDO0lBRUQsc0JBQXNCO1FBQ3BCLElBQUksSUFBSSxDQUFDLG9CQUFvQixFQUFFO1lBQzdCLElBQUksQ0FBQyxlQUFlLEdBQUcsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFBO1lBQzVDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUE7U0FDMUU7SUFDSCxDQUFDOzhHQXhCVSxnQkFBZ0I7a0dBQWhCLGdCQUFnQixzTENsQjdCLDYwREFtREE7OzJGRGpDYSxnQkFBZ0I7a0JBTjVCLFNBQVM7K0JBQ0UsZ0JBQWdCLG1CQUdULHVCQUF1QixDQUFDLE1BQU07OEJBR3RDLElBQUk7c0JBQVosS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUdJLGlCQUFpQjtzQkFBMUIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERhdGFzZXRTZXJ2aWNlRGlzdHJpYnV0aW9uIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvcmVjb3JkJ1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgU2ltcGxlQ2hhbmdlcyxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktYXBpLWNhcmQnLFxuICB0ZW1wbGF0ZVVybDogJy4vYXBpLWNhcmQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9hcGktY2FyZC5jb21wb25lbnQuY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBBcGlDYXJkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICBASW5wdXQoKSBsaW5rOiBEYXRhc2V0U2VydmljZURpc3RyaWJ1dGlvblxuICBASW5wdXQoKSBjdXJyZW50TGluazogRGF0YXNldFNlcnZpY2VEaXN0cmlidXRpb25cbiAgZGlzcGxheUFwaUZvcm1CdXR0b246IGJvb2xlYW5cbiAgY3VycmVudGx5QWN0aXZlID0gZmFsc2VcbiAgQE91dHB1dCgpIG9wZW5SZWNvcmRBcGlGb3JtOiBFdmVudEVtaXR0ZXI8RGF0YXNldFNlcnZpY2VEaXN0cmlidXRpb24+ID1cbiAgICBuZXcgRXZlbnRFbWl0dGVyPERhdGFzZXRTZXJ2aWNlRGlzdHJpYnV0aW9uPigpXG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5kaXNwbGF5QXBpRm9ybUJ1dHRvbiA9XG4gICAgICB0aGlzLmxpbmsuYWNjZXNzU2VydmljZVByb3RvY29sID09PSAnb2djRmVhdHVyZXMnIHx8XG4gICAgICB0aGlzLmxpbmsuYWNjZXNzU2VydmljZVByb3RvY29sID09PSAnd2ZzJ1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIHRoaXMuY3VycmVudGx5QWN0aXZlID1cbiAgICAgIGNoYW5nZXMuY3VycmVudExpbmsuY3VycmVudFZhbHVlID09PSB0aGlzLmxpbmsgPyB0cnVlIDogZmFsc2VcbiAgfVxuXG4gIG9wZW5SZWNvcmRBcGlGb3JtUGFuZWwoKSB7XG4gICAgaWYgKHRoaXMuZGlzcGxheUFwaUZvcm1CdXR0b24pIHtcbiAgICAgIHRoaXMuY3VycmVudGx5QWN0aXZlID0gIXRoaXMuY3VycmVudGx5QWN0aXZlXG4gICAgICB0aGlzLm9wZW5SZWNvcmRBcGlGb3JtLmVtaXQodGhpcy5jdXJyZW50bHlBY3RpdmUgPyB0aGlzLmxpbmsgOiB1bmRlZmluZWQpXG4gICAgfVxuICB9XG59XG4iLCI8ZGl2XG4gIGNsYXNzPVwiZ3JvdXAgZmxleCBmbGV4LWNvbCBqdXN0aWZ5LWJldHdlZW4gaC00MCBwdC01IHBiLTYgcHgtNyByb3VuZGVkIGZpbHRlciBvdmVyZmxvdy1oaWRkZW5cIlxuICBbbmdDbGFzc109XCJ7ICdjdXJzb3ItcG9pbnRlcic6IGRpc3BsYXlBcGlGb3JtQnV0dG9uIH1cIlxuICAoY2xpY2spPVwib3BlblJlY29yZEFwaUZvcm1QYW5lbCgpXCJcbj5cbiAgPGRpdlxuICAgIGNsYXNzPVwiZm9udC10aXRsZSBmb250LW1lZGl1bSB0ZXh0LTIxIHRleHQtYmxhY2sgdGV4dC1lbGxpcHNpcyBvdmVyZmxvdy1oaWRkZW4gYnJlYWstd29yZHMgcGItNSBoLVs0LjVyZW1dXCJcbiAgPlxuICAgIHt7IGxpbmsubmFtZSB8fCBsaW5rLmRlc2NyaXB0aW9uIH19XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiXCI+XG4gICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1yb3cganVzdGlmeS1iZXR3ZWVuXCI+XG4gICAgICA8c3BhblxuICAgICAgICBjbGFzcz1cImJnLXByaW1hcnktb3BhY2l0eS01MCB1cHBlcmNhc2UgaW5saW5lLWZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIHB4LTIgcHktMSB0ZXh0LTEzIGZvbnQtbWVkaXVtIGxlYWRpbmctbm9uZSB0ZXh0LXdoaXRlIHJvdW5kZWQgdGV4dC1wcmltYXJ5LWxpZ2h0ZXN0IGdyb3VwLWhvdmVyOmJnLXByaW1hcnkgdHJhbnNpdGlvbi1jb2xvcnNcIlxuICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgJyFiZy1wcmltYXJ5JzogY3VycmVudGx5QWN0aXZlXG4gICAgICAgIH1cIlxuICAgICAgICA+e3sgbGluay5hY2Nlc3NTZXJ2aWNlUHJvdG9jb2wgfX08L3NwYW5cbiAgICAgID5cbiAgICAgIDxnbi11aS1jb3B5LXRleHQtYnV0dG9uXG4gICAgICAgICpuZ0lmPVwiIWRpc3BsYXlBcGlGb3JtQnV0dG9uXCJcbiAgICAgICAgW3RleHRdPVwibGluay51cmwudG9TdHJpbmcoKVwiXG4gICAgICAgIFt0b29sdGlwVGV4dF09XCIndG9vbHRpcC51cmwuY29weScgfCB0cmFuc2xhdGVcIlxuICAgICAgICBbZGlzcGxheVRleHRdPVwiZmFsc2VcIlxuICAgICAgPjwvZ24tdWktY29weS10ZXh0LWJ1dHRvbj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgKm5nSWY9XCJkaXNwbGF5QXBpRm9ybUJ1dHRvblwiXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgJ3B5LTIgcHgtNCByb3VuZGVkLXItbWQgYmctZ3JheS00MDAgaG92ZXI6YmctZ3JheS02MDAgZm9jdXM6YmctZ3JheS04MDAgdGV4dC13aGl0ZSc6XG4gICAgICAgICAgICBkaXNwbGF5VGV4dFxuICAgICAgICB9XCJcbiAgICAgICAgbWF0LXJhaXNlZC1idXR0b25cbiAgICAgICAgW21hdFRvb2x0aXBdPVwiXG4gICAgICAgICAgIWN1cnJlbnRseUFjdGl2ZVxuICAgICAgICAgICAgPyAoJ3JlY29yZC5tZXRhZGF0YS5hcGkuZm9ybS5vcGVuRm9ybScgfCB0cmFuc2xhdGUpXG4gICAgICAgICAgICA6ICgncmVjb3JkLm1ldGFkYXRhLmFwaS5mb3JtLmNsb3NlRm9ybScgfCB0cmFuc2xhdGUpXG4gICAgICAgIFwiXG4gICAgICAgIG1hdFRvb2x0aXBQb3NpdGlvbj1cImFib3ZlXCJcbiAgICAgID5cbiAgICAgICAgPG1hdC1pY29uXG4gICAgICAgICAgY2xhc3M9XCJtYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkIHBvaW50ZXItZXZlbnRzLW5vbmUgYWxpZ24tbWlkZGxlIGNhcmQtaWNvblwiXG4gICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgJ3RleHQtc2Vjb25kYXJ5IG9wYWNpdHktMTAwJzogY3VycmVudGx5QWN0aXZlXG4gICAgICAgICAgfVwiXG4gICAgICAgICAgPm1vcmVfaG9yaXo8L21hdC1pY29uXG4gICAgICAgID5cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -68,7 +68,7 @@ export class DownloadsListComponent {
68
68
  return getBadgeColor(getFileFormat(link));
69
69
  }
70
70
  isFromWfs(link) {
71
- return link.type === 'service' && link.accessServiceProtocol === 'wfs';
71
+ return link.type === 'download' && link.accessServiceProtocol === 'wfs';
72
72
  }
73
73
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: DownloadsListComponent, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
74
74
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: DownloadsListComponent, selector: "gn-ui-downloads-list", inputs: { links: "links" }, ngImport: i0, template: "<div\n class=\"flex flex-wrap justify-between mt-8 mb-6 sm:mt-12 sm:mb-2\"\n *ngIf=\"links && links.length > 0\"\n>\n <p\n class=\"font-title text-[28px] text-title font-medium mr-4 pb-4 text-center sm:text-left\"\n translate\n >\n record.metadata.download\n </p>\n <div\n class=\"flex flex-wrap justify-start sm:justify-end sm:pb-4\"\n data-cy=\"download-format-filters\"\n >\n <gn-ui-button\n class=\"m-1 format-filter\"\n [extraClass]=\"\n '!px-[12px] !py-[8px] !text-[15px]' +\n (isFilterActive(format) ? ' opacity-100' : ' opacity-50')\n \"\n (buttonClick)=\"toggleFilterFormat(format)\"\n [attr.data-format]=\"format\"\n *ngFor=\"let format of visibleFormats\"\n >\n {{ getFilterFormatTitle(format) }}\n </gn-ui-button>\n </div>\n</div>\n<div class=\"mb-2 sm:mb-3\" *ngFor=\"let link of filteredLinks\">\n <gn-ui-download-item\n [link]=\"link\"\n [color]=\"getLinkColor(link)\"\n [format]=\"getLinkFormat(link)\"\n [isFromWfs]=\"isFromWfs(link)\"\n ></gn-ui-download-item>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i3.ButtonComponent, selector: "gn-ui-button", inputs: ["type", "disabled", "extraClass"], outputs: ["buttonClick"] }, { kind: "component", type: i4.DownloadItemComponent, selector: "gn-ui-download-item", inputs: ["link", "color", "format", "isFromWfs"], outputs: ["exportUrl"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
@@ -79,4 +79,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImpor
79
79
  }], ctorParameters: function () { return [{ type: i1.TranslateService }]; }, propDecorators: { links: [{
80
80
  type: Input
81
81
  }] } });
82
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG93bmxvYWRzLWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9lbGVtZW50cy9zcmMvbGliL2Rvd25sb2Fkcy1saXN0L2Rvd25sb2Fkcy1saXN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi9kb3dubG9hZHMtbGlzdC9kb3dubG9hZHMtbGlzdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUN6RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUN0RCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0seUNBQXlDLENBQUE7QUFDaEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxhQUFhLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQTs7Ozs7O0FBR3JGLE1BQU0sQ0FBQywyQkFBMkIsQ0FBQyxDQUFBO0FBQ25DLE1BQU0sQ0FBQyw4QkFBOEIsQ0FBQyxDQUFBO0FBRXRDLE1BQU0sY0FBYyxHQUFHLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxRQUFRLENBQVUsQ0FBQTtBQVNoRixNQUFNLE9BQU8sc0JBQXNCO0lBQ2pDLFlBQW9CLGdCQUFrQztRQUFsQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBSXRELHdCQUFtQixHQUFtQixDQUFDLEtBQUssQ0FBQyxDQUFBO0lBSlksQ0FBQztJQU0xRCxJQUFJLGFBQWE7UUFDZixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FDaEMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxDQUFDLE1B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SyxTQUFTLElBQUksSUFBSSxDQUFDLHFCQUFxQixLQUFLLEtBQUssQ0FBQTtJQUN4RSxDQUFDOzhHQWhGVSxzQkFBc0I7a0dBQXRCLHNCQUFzQix3RkNsQm5DLDZqQ0FvQ0E7OzJGRGxCYSxzQkFBc0I7a0JBTmxDLFNBQVM7K0JBQ0Usc0JBQXNCLG1CQUdmLHVCQUF1QixDQUFDLE1BQU07dUdBS3RDLEtBQUs7c0JBQWIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJ1xuaW1wb3J0IHsgbWFya2VyIH0gZnJvbSAnQGJpZXNiamVyZy9uZ3gtdHJhbnNsYXRlLWV4dHJhY3QtbWFya2VyJ1xuaW1wb3J0IHsgZ2V0QmFkZ2VDb2xvciwgZ2V0RmlsZUZvcm1hdCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdXRpbC9zaGFyZWQvc3JjJ1xuaW1wb3J0IHsgRGF0YXNldERpc3RyaWJ1dGlvbiB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL21vZGVsL3JlY29yZCdcblxubWFya2VyKCdkYXRhaHViLnNlYXJjaC5maWx0ZXIuYWxsJylcbm1hcmtlcignZGF0YWh1Yi5zZWFyY2guZmlsdGVyLm90aGVycycpXG5cbmNvbnN0IEZJTFRFUl9GT1JNQVRTID0gWydhbGwnLCAnY3N2JywgJ2V4Y2VsJywgJ2pzb24nLCAnc2hwJywgJ290aGVycyddIGFzIGNvbnN0XG50eXBlIEZpbHRlckZvcm1hdCA9IHR5cGVvZiBGSUxURVJfRk9STUFUU1tudW1iZXJdXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2duLXVpLWRvd25sb2Fkcy1saXN0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Rvd25sb2Fkcy1saXN0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZG93bmxvYWRzLWxpc3QuY29tcG9uZW50LmNzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgRG93bmxvYWRzTGlzdENvbXBvbmVudCB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSkge31cblxuICBASW5wdXQoKSBsaW5rczogRGF0YXNldERpc3RyaWJ1dGlvbltdXG5cbiAgYWN0aXZlRmlsdGVyRm9ybWF0czogRmlsdGVyRm9ybWF0W10gPSBbJ2FsbCddXG5cbiAgZ2V0IGZpbHRlcmVkTGlua3MoKTogRGF0YXNldERpc3RyaWJ1dGlvbltdIHtcbiAgICByZXR1cm4gdGhpcy5saW5rcy5maWx0ZXIoKGxpbmspID0+XG4gICAgICB0aGlzLmFjdGl2ZUZpbHRlckZvcm1hdHMuc29tZSgoZm9ybWF0KSA9PlxuICAgICAgICB0aGlzLmlzTGlua09mRm9ybWF0KGxpbmssIGZvcm1hdClcbiAgICAgIClcbiAgICApXG4gIH1cblxuICBnZXQgdmlzaWJsZUZvcm1hdHMoKTogRmlsdGVyRm9ybWF0W10ge1xuICAgIHJldHVybiBGSUxURVJfRk9STUFUUy5maWx0ZXIoKGZvcm1hdCkgPT5cbiAgICAgIHRoaXMubGlua3Muc29tZSgobGluaykgPT4gdGhpcy5pc0xpbmtPZkZvcm1hdChsaW5rLCBmb3JtYXQpKVxuICAgIClcbiAgfVxuXG4gIHRvZ2dsZUZpbHRlckZvcm1hdChmb3JtYXQ6IEZpbHRlckZvcm1hdCk6IHZvaWQge1xuICAgIGlmIChmb3JtYXQgPT09ICdhbGwnKSB7XG4gICAgICB0aGlzLmFjdGl2ZUZpbHRlckZvcm1hdHMgPSBbJ2FsbCddXG4gICAgICByZXR1cm5cbiAgICB9XG4gICAgaWYgKHRoaXMuaXNGaWx0ZXJBY3RpdmUoZm9ybWF0KSkge1xuICAgICAgdGhpcy5hY3RpdmVGaWx0ZXJGb3JtYXRzID0gdGhpcy5hY3RpdmVGaWx0ZXJGb3JtYXRzLmZpbHRlcihcbiAgICAgICAgKGY6IHN0cmluZykgPT4gZm9ybWF0ICE9PSBmXG4gICAgICApXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuYWN0aXZlRmlsdGVyRm9ybWF0cyA9IFtcbiAgICAgICAgLi4udGhpcy5hY3RpdmVGaWx0ZXJGb3JtYXRzLmZpbHRlcigoZikgPT4gZiAhPT0gJ2FsbCcpLFxuICAgICAgICBmb3JtYXQsXG4gICAgICBdXG4gICAgfVxuICAgIGlmICh0aGlzLmFjdGl2ZUZpbHRlckZvcm1hdHMubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aGlzLmFjdGl2ZUZpbHRlckZvcm1hdHMgPSBbJ2FsbCddXG4gICAgfVxuICB9XG5cbiAgaXNGaWx0ZXJBY3RpdmUoZmlsdGVyOiBGaWx0ZXJGb3JtYXQpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5hY3RpdmVGaWx0ZXJGb3JtYXRzLmluY2x1ZGVzKGZpbHRlcilcbiAgfVxuXG4gIGdldEZpbHRlckZvcm1hdFRpdGxlKGZvcm1hdDogRmlsdGVyRm9ybWF0KSB7XG4gICAgaWYgKGZvcm1hdCA9PT0gJ2FsbCcgfHwgZm9ybWF0ID09PSAnb3RoZXJzJykge1xuICAgICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KGBkYXRhaHViLnNlYXJjaC5maWx0ZXIuJHtmb3JtYXR9YClcbiAgICB9XG4gICAgcmV0dXJuIGZvcm1hdFxuICB9XG5cbiAgaXNMaW5rT2ZGb3JtYXQobGluazogRGF0YXNldERpc3RyaWJ1dGlvbiwgZm9ybWF0OiBGaWx0ZXJGb3JtYXQpOiBib29sZWFuIHtcbiAgICBpZiAoZm9ybWF0ID09PSAnYWxsJykge1xuICAgICAgcmV0dXJuIHRydWVcbiAgICB9XG4gICAgaWYgKGdldEZpbGVGb3JtYXQobGluaykgPT09IG51bGwpIHtcbiAgICAgIHJldHVybiBmb3JtYXQgPT09ICdvdGhlcnMnXG4gICAgfVxuICAgIGlmIChmb3JtYXQgPT09ICdvdGhlcnMnKSB7XG4gICAgICBjb25zdCBrbm93bkZvcm1hdHMgPSBGSUxURVJfRk9STUFUUy5maWx0ZXIoXG4gICAgICAgIChmb3JtYXQpID0+IGZvcm1hdCAhPT0gJ2FsbCcgJiYgZm9ybWF0ICE9PSAnb3RoZXJzJ1xuICAgICAgKVxuICAgICAgcmV0dXJuIGtub3duRm9ybWF0cy5ldmVyeShcbiAgICAgICAgKGtub3duRm9ybWF0KSA9PiAhZ2V0RmlsZUZvcm1hdChsaW5rKS5pbmNsdWRlcyhrbm93bkZvcm1hdClcbiAgICAgIClcbiAgICB9XG4gICAgcmV0dXJuIGdldEZpbGVGb3JtYXQobGluaykuaW5jbHVkZXMoZm9ybWF0KVxuICB9XG5cbiAgZ2V0TGlua0Zvcm1hdChsaW5rOiBEYXRhc2V0RGlzdHJpYnV0aW9uKSB7XG4gICAgcmV0dXJuIGdldEZpbGVGb3JtYXQobGluaylcbiAgfVxuXG4gIGdldExpbmtDb2xvcihsaW5rOiBEYXRhc2V0RGlzdHJpYnV0aW9uKSB7XG4gICAgcmV0dXJuIGdldEJhZGdlQ29sb3IoZ2V0RmlsZUZvcm1hdChsaW5rKSlcbiAgfVxuXG4gIGlzRnJvbVdmcyhsaW5rOiBEYXRhc2V0RGlzdHJpYnV0aW9uKSB7XG4gICAgcmV0dXJuIGxpbmsudHlwZSA9PT0gJ3NlcnZpY2UnICYmIGxpbmsuYWNjZXNzU2VydmljZVByb3RvY29sID09PSAnd2ZzJ1xuICB9XG59XG4iLCI8ZGl2XG4gIGNsYXNzPVwiZmxleCBmbGV4LXdyYXAganVzdGlmeS1iZXR3ZWVuIG10LTggbWItNiBzbTptdC0xMiBzbTptYi0yXCJcbiAgKm5nSWY9XCJsaW5rcyAmJiBsaW5rcy5sZW5ndGggPiAwXCJcbj5cbiAgPHBcbiAgICBjbGFzcz1cImZvbnQtdGl0bGUgdGV4dC1bMjhweF0gdGV4dC10aXRsZSBmb250LW1lZGl1bSBtci00IHBiLTQgdGV4dC1jZW50ZXIgc206dGV4dC1sZWZ0XCJcbiAgICB0cmFuc2xhdGVcbiAgPlxuICAgIHJlY29yZC5tZXRhZGF0YS5kb3dubG9hZFxuICA8L3A+XG4gIDxkaXZcbiAgICBjbGFzcz1cImZsZXggZmxleC13cmFwIGp1c3RpZnktc3RhcnQgc206anVzdGlmeS1lbmQgc206cGItNFwiXG4gICAgZGF0YS1jeT1cImRvd25sb2FkLWZvcm1hdC1maWx0ZXJzXCJcbiAgPlxuICAgIDxnbi11aS1idXR0b25cbiAgICAgIGNsYXNzPVwibS0xIGZvcm1hdC1maWx0ZXJcIlxuICAgICAgW2V4dHJhQ2xhc3NdPVwiXG4gICAgICAgICchcHgtWzEycHhdICFweS1bOHB4XSAhdGV4dC1bMTVweF0nICtcbiAgICAgICAgKGlzRmlsdGVyQWN0aXZlKGZvcm1hdCkgPyAnIG9wYWNpdHktMTAwJyA6ICcgb3BhY2l0eS01MCcpXG4gICAgICBcIlxuICAgICAgKGJ1dHRvbkNsaWNrKT1cInRvZ2dsZUZpbHRlckZvcm1hdChmb3JtYXQpXCJcbiAgICAgIFthdHRyLmRhdGEtZm9ybWF0XT1cImZvcm1hdFwiXG4gICAgICAqbmdGb3I9XCJsZXQgZm9ybWF0IG9mIHZpc2libGVGb3JtYXRzXCJcbiAgICA+XG4gICAgICB7eyBnZXRGaWx0ZXJGb3JtYXRUaXRsZShmb3JtYXQpIH19XG4gICAgPC9nbi11aS1idXR0b24+XG4gIDwvZGl2PlxuPC9kaXY+XG48ZGl2IGNsYXNzPVwibWItMiBzbTptYi0zXCIgKm5nRm9yPVwibGV0IGxpbmsgb2YgZmlsdGVyZWRMaW5rc1wiPlxuICA8Z24tdWktZG93bmxvYWQtaXRlbVxuICAgIFtsaW5rXT1cImxpbmtcIlxuICAgIFtjb2xvcl09XCJnZXRMaW5rQ29sb3IobGluaylcIlxuICAgIFtmb3JtYXRdPVwiZ2V0TGlua0Zvcm1hdChsaW5rKVwiXG4gICAgW2lzRnJvbVdmc109XCJpc0Zyb21XZnMobGluaylcIlxuICA+PC9nbi11aS1kb3dubG9hZC1pdGVtPlxuPC9kaXY+XG4iXX0=
82
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG93bmxvYWRzLWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9lbGVtZW50cy9zcmMvbGliL2Rvd25sb2Fkcy1saXN0L2Rvd25sb2Fkcy1saXN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi9kb3dubG9hZHMtbGlzdC9kb3dubG9hZHMtbGlzdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUN6RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUN0RCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0seUNBQXlDLENBQUE7QUFDaEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxhQUFhLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQTs7Ozs7O0FBR3JGLE1BQU0sQ0FBQywyQkFBMkIsQ0FBQyxDQUFBO0FBQ25DLE1BQU0sQ0FBQyw4QkFBOEIsQ0FBQyxDQUFBO0FBRXRDLE1BQU0sY0FBYyxHQUFHLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxRQUFRLENBQVUsQ0FBQTtBQVNoRixNQUFNLE9BQU8sc0JBQXNCO0lBQ2pDLFlBQW9CLGdCQUFrQztRQUFsQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBSXRELHdCQUFtQixHQUFtQixDQUFDLEtBQUssQ0FBQyxDQUFBO0lBSlksQ0FBQztJQU0xRCxJQUFJLGFBQWE7UUFDZixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FDaEMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxDQUFDLE1B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SyxVQUFVLElBQUksSUFBSSxDQUFDLHFCQUFxQixLQUFLLEtBQUssQ0FBQTtJQUN6RSxDQUFDOzhHQWhGVSxzQkFBc0I7a0dBQXRCLHNCQUFzQix3RkNsQm5DLDZqQ0FvQ0E7OzJGRGxCYSxzQkFBc0I7a0JBTmxDLFNBQVM7K0JBQ0Usc0JBQXNCLG1CQUdmLHVCQUF1QixDQUFDLE1BQU07dUdBS3RDLEtBQUs7c0JBQWIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJ1xuaW1wb3J0IHsgbWFya2VyIH0gZnJvbSAnQGJpZXNiamVyZy9uZ3gtdHJhbnNsYXRlLWV4dHJhY3QtbWFya2VyJ1xuaW1wb3J0IHsgZ2V0QmFkZ2VDb2xvciwgZ2V0RmlsZUZvcm1hdCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdXRpbC9zaGFyZWQvc3JjJ1xuaW1wb3J0IHsgRGF0YXNldERpc3RyaWJ1dGlvbiB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL21vZGVsL3JlY29yZCdcblxubWFya2VyKCdkYXRhaHViLnNlYXJjaC5maWx0ZXIuYWxsJylcbm1hcmtlcignZGF0YWh1Yi5zZWFyY2guZmlsdGVyLm90aGVycycpXG5cbmNvbnN0IEZJTFRFUl9GT1JNQVRTID0gWydhbGwnLCAnY3N2JywgJ2V4Y2VsJywgJ2pzb24nLCAnc2hwJywgJ290aGVycyddIGFzIGNvbnN0XG50eXBlIEZpbHRlckZvcm1hdCA9IHR5cGVvZiBGSUxURVJfRk9STUFUU1tudW1iZXJdXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2duLXVpLWRvd25sb2Fkcy1saXN0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Rvd25sb2Fkcy1saXN0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZG93bmxvYWRzLWxpc3QuY29tcG9uZW50LmNzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgRG93bmxvYWRzTGlzdENvbXBvbmVudCB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSkge31cblxuICBASW5wdXQoKSBsaW5rczogRGF0YXNldERpc3RyaWJ1dGlvbltdXG5cbiAgYWN0aXZlRmlsdGVyRm9ybWF0czogRmlsdGVyRm9ybWF0W10gPSBbJ2FsbCddXG5cbiAgZ2V0IGZpbHRlcmVkTGlua3MoKTogRGF0YXNldERpc3RyaWJ1dGlvbltdIHtcbiAgICByZXR1cm4gdGhpcy5saW5rcy5maWx0ZXIoKGxpbmspID0+XG4gICAgICB0aGlzLmFjdGl2ZUZpbHRlckZvcm1hdHMuc29tZSgoZm9ybWF0KSA9PlxuICAgICAgICB0aGlzLmlzTGlua09mRm9ybWF0KGxpbmssIGZvcm1hdClcbiAgICAgIClcbiAgICApXG4gIH1cblxuICBnZXQgdmlzaWJsZUZvcm1hdHMoKTogRmlsdGVyRm9ybWF0W10ge1xuICAgIHJldHVybiBGSUxURVJfRk9STUFUUy5maWx0ZXIoKGZvcm1hdCkgPT5cbiAgICAgIHRoaXMubGlua3Muc29tZSgobGluaykgPT4gdGhpcy5pc0xpbmtPZkZvcm1hdChsaW5rLCBmb3JtYXQpKVxuICAgIClcbiAgfVxuXG4gIHRvZ2dsZUZpbHRlckZvcm1hdChmb3JtYXQ6IEZpbHRlckZvcm1hdCk6IHZvaWQge1xuICAgIGlmIChmb3JtYXQgPT09ICdhbGwnKSB7XG4gICAgICB0aGlzLmFjdGl2ZUZpbHRlckZvcm1hdHMgPSBbJ2FsbCddXG4gICAgICByZXR1cm5cbiAgICB9XG4gICAgaWYgKHRoaXMuaXNGaWx0ZXJBY3RpdmUoZm9ybWF0KSkge1xuICAgICAgdGhpcy5hY3RpdmVGaWx0ZXJGb3JtYXRzID0gdGhpcy5hY3RpdmVGaWx0ZXJGb3JtYXRzLmZpbHRlcihcbiAgICAgICAgKGY6IHN0cmluZykgPT4gZm9ybWF0ICE9PSBmXG4gICAgICApXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuYWN0aXZlRmlsdGVyRm9ybWF0cyA9IFtcbiAgICAgICAgLi4udGhpcy5hY3RpdmVGaWx0ZXJGb3JtYXRzLmZpbHRlcigoZikgPT4gZiAhPT0gJ2FsbCcpLFxuICAgICAgICBmb3JtYXQsXG4gICAgICBdXG4gICAgfVxuICAgIGlmICh0aGlzLmFjdGl2ZUZpbHRlckZvcm1hdHMubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aGlzLmFjdGl2ZUZpbHRlckZvcm1hdHMgPSBbJ2FsbCddXG4gICAgfVxuICB9XG5cbiAgaXNGaWx0ZXJBY3RpdmUoZmlsdGVyOiBGaWx0ZXJGb3JtYXQpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5hY3RpdmVGaWx0ZXJGb3JtYXRzLmluY2x1ZGVzKGZpbHRlcilcbiAgfVxuXG4gIGdldEZpbHRlckZvcm1hdFRpdGxlKGZvcm1hdDogRmlsdGVyRm9ybWF0KSB7XG4gICAgaWYgKGZvcm1hdCA9PT0gJ2FsbCcgfHwgZm9ybWF0ID09PSAnb3RoZXJzJykge1xuICAgICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KGBkYXRhaHViLnNlYXJjaC5maWx0ZXIuJHtmb3JtYXR9YClcbiAgICB9XG4gICAgcmV0dXJuIGZvcm1hdFxuICB9XG5cbiAgaXNMaW5rT2ZGb3JtYXQobGluazogRGF0YXNldERpc3RyaWJ1dGlvbiwgZm9ybWF0OiBGaWx0ZXJGb3JtYXQpOiBib29sZWFuIHtcbiAgICBpZiAoZm9ybWF0ID09PSAnYWxsJykge1xuICAgICAgcmV0dXJuIHRydWVcbiAgICB9XG4gICAgaWYgKGdldEZpbGVGb3JtYXQobGluaykgPT09IG51bGwpIHtcbiAgICAgIHJldHVybiBmb3JtYXQgPT09ICdvdGhlcnMnXG4gICAgfVxuICAgIGlmIChmb3JtYXQgPT09ICdvdGhlcnMnKSB7XG4gICAgICBjb25zdCBrbm93bkZvcm1hdHMgPSBGSUxURVJfRk9STUFUUy5maWx0ZXIoXG4gICAgICAgIChmb3JtYXQpID0+IGZvcm1hdCAhPT0gJ2FsbCcgJiYgZm9ybWF0ICE9PSAnb3RoZXJzJ1xuICAgICAgKVxuICAgICAgcmV0dXJuIGtub3duRm9ybWF0cy5ldmVyeShcbiAgICAgICAgKGtub3duRm9ybWF0KSA9PiAhZ2V0RmlsZUZvcm1hdChsaW5rKS5pbmNsdWRlcyhrbm93bkZvcm1hdClcbiAgICAgIClcbiAgICB9XG4gICAgcmV0dXJuIGdldEZpbGVGb3JtYXQobGluaykuaW5jbHVkZXMoZm9ybWF0KVxuICB9XG5cbiAgZ2V0TGlua0Zvcm1hdChsaW5rOiBEYXRhc2V0RGlzdHJpYnV0aW9uKSB7XG4gICAgcmV0dXJuIGdldEZpbGVGb3JtYXQobGluaylcbiAgfVxuXG4gIGdldExpbmtDb2xvcihsaW5rOiBEYXRhc2V0RGlzdHJpYnV0aW9uKSB7XG4gICAgcmV0dXJuIGdldEJhZGdlQ29sb3IoZ2V0RmlsZUZvcm1hdChsaW5rKSlcbiAgfVxuXG4gIGlzRnJvbVdmcyhsaW5rOiBEYXRhc2V0RGlzdHJpYnV0aW9uKSB7XG4gICAgcmV0dXJuIGxpbmsudHlwZSA9PT0gJ2Rvd25sb2FkJyAmJiBsaW5rLmFjY2Vzc1NlcnZpY2VQcm90b2NvbCA9PT0gJ3dmcydcbiAgfVxufVxuIiwiPGRpdlxuICBjbGFzcz1cImZsZXggZmxleC13cmFwIGp1c3RpZnktYmV0d2VlbiBtdC04IG1iLTYgc206bXQtMTIgc206bWItMlwiXG4gICpuZ0lmPVwibGlua3MgJiYgbGlua3MubGVuZ3RoID4gMFwiXG4+XG4gIDxwXG4gICAgY2xhc3M9XCJmb250LXRpdGxlIHRleHQtWzI4cHhdIHRleHQtdGl0bGUgZm9udC1tZWRpdW0gbXItNCBwYi00IHRleHQtY2VudGVyIHNtOnRleHQtbGVmdFwiXG4gICAgdHJhbnNsYXRlXG4gID5cbiAgICByZWNvcmQubWV0YWRhdGEuZG93bmxvYWRcbiAgPC9wPlxuICA8ZGl2XG4gICAgY2xhc3M9XCJmbGV4IGZsZXgtd3JhcCBqdXN0aWZ5LXN0YXJ0IHNtOmp1c3RpZnktZW5kIHNtOnBiLTRcIlxuICAgIGRhdGEtY3k9XCJkb3dubG9hZC1mb3JtYXQtZmlsdGVyc1wiXG4gID5cbiAgICA8Z24tdWktYnV0dG9uXG4gICAgICBjbGFzcz1cIm0tMSBmb3JtYXQtZmlsdGVyXCJcbiAgICAgIFtleHRyYUNsYXNzXT1cIlxuICAgICAgICAnIXB4LVsxMnB4XSAhcHktWzhweF0gIXRleHQtWzE1cHhdJyArXG4gICAgICAgIChpc0ZpbHRlckFjdGl2ZShmb3JtYXQpID8gJyBvcGFjaXR5LTEwMCcgOiAnIG9wYWNpdHktNTAnKVxuICAgICAgXCJcbiAgICAgIChidXR0b25DbGljayk9XCJ0b2dnbGVGaWx0ZXJGb3JtYXQoZm9ybWF0KVwiXG4gICAgICBbYXR0ci5kYXRhLWZvcm1hdF09XCJmb3JtYXRcIlxuICAgICAgKm5nRm9yPVwibGV0IGZvcm1hdCBvZiB2aXNpYmxlRm9ybWF0c1wiXG4gICAgPlxuICAgICAge3sgZ2V0RmlsdGVyRm9ybWF0VGl0bGUoZm9ybWF0KSB9fVxuICAgIDwvZ24tdWktYnV0dG9uPlxuICA8L2Rpdj5cbjwvZGl2PlxuPGRpdiBjbGFzcz1cIm1iLTIgc206bWItM1wiICpuZ0Zvcj1cImxldCBsaW5rIG9mIGZpbHRlcmVkTGlua3NcIj5cbiAgPGduLXVpLWRvd25sb2FkLWl0ZW1cbiAgICBbbGlua109XCJsaW5rXCJcbiAgICBbY29sb3JdPVwiZ2V0TGlua0NvbG9yKGxpbmspXCJcbiAgICBbZm9ybWF0XT1cImdldExpbmtGb3JtYXQobGluaylcIlxuICAgIFtpc0Zyb21XZnNdPVwiaXNGcm9tV2ZzKGxpbmspXCJcbiAgPjwvZ24tdWktZG93bmxvYWQtaXRlbT5cbjwvZGl2PlxuIl19
@@ -0,0 +1,30 @@
1
+ import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/common";
4
+ import * as i2 from "@angular/material/icon";
5
+ import * as i3 from "@ngx-translate/core";
6
+ export var ErrorType;
7
+ (function (ErrorType) {
8
+ ErrorType[ErrorType["COULD_NOT_REACH_API"] = 0] = "COULD_NOT_REACH_API";
9
+ ErrorType[ErrorType["RECEIVED_ERROR"] = 1] = "RECEIVED_ERROR";
10
+ ErrorType[ErrorType["RECORD_NOT_FOUND"] = 2] = "RECORD_NOT_FOUND";
11
+ ErrorType[ErrorType["DATASET_HAS_NO_LINK"] = 3] = "DATASET_HAS_NO_LINK";
12
+ })(ErrorType || (ErrorType = {}));
13
+ export class ErrorComponent {
14
+ constructor() {
15
+ this.types = ErrorType;
16
+ }
17
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: ErrorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
18
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: ErrorComponent, selector: "gn-ui-error", inputs: { type: "type", error: "error", recordId: "recordId" }, ngImport: i0, template: "<div\n class=\"p-[1.7em] bg-red-50 text-red-800 text-[1.5em] text-center rounded-lg\"\n>\n <div\n *ngIf=\"type === types.COULD_NOT_REACH_API\"\n data-test=\"could-not-reach-api-error\"\n >\n <div class=\"relative opacity-40\">\n <mat-icon class=\"material-symbols-outlined face\">face</mat-icon>\n <mat-icon class=\"material-symbols-outlined question-mark1\"\n >question_mark</mat-icon\n >\n <mat-icon class=\"material-symbols-outlined question-mark2\"\n >question_mark</mat-icon\n >\n </div>\n <div translate>search.error.couldNotReachApi</div>\n </div>\n <div\n *ngIf=\"type === types.DATASET_HAS_NO_LINK\"\n data-test=\"dataset-has-no-link-error\"\n >\n <div class=\"relative opacity-40\">\n <mat-icon class=\"material-symbols-outlined face\">computer</mat-icon>\n </div>\n <div translate>search.error.recordHasnolink</div>\n </div>\n <div *ngIf=\"type === types.RECEIVED_ERROR\" data-test=\"received-error-error\">\n <div class=\"relative opacity-40\">\n <mat-icon class=\"material-symbols-outlined face\">mood_bad</mat-icon>\n </div>\n <div translate>search.error.receivedError</div>\n <div *ngIf=\"error\">{{ error }}</div>\n </div>\n <div\n *ngIf=\"type === types.RECORD_NOT_FOUND\"\n data-test=\"record-not-found-error\"\n >\n <div class=\"relative opacity-40\">\n <mat-icon class=\"material-symbols-outlined computer\">computer</mat-icon>\n <mat-icon class=\"material-symbols-outlined computer-question-mark\"\n >question_mark</mat-icon\n >\n </div>\n <div translate [translateParams]=\"{ id: recordId }\">\n search.error.recordNotFound\n </div>\n <div *ngIf=\"error\">{{ error }}</div>\n </div>\n</div>\n", styles: ["mat-icon{width:auto;height:auto}mat-icon.face{font-size:3em}mat-icon.question-mark1{position:absolute;bottom:1.1em;left:calc(50% + .7em);font-size:1.7em}mat-icon.question-mark2{position:absolute;bottom:1.6em;left:calc(50% + 1.6em);font-size:1.4em}.computer{font-size:3em}.computer-question-mark{position:absolute;top:.6em;left:calc(50% - .5em);font-size:1.2em}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i3.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
19
+ }
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: ErrorComponent, decorators: [{
21
+ type: Component,
22
+ args: [{ selector: 'gn-ui-error', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n class=\"p-[1.7em] bg-red-50 text-red-800 text-[1.5em] text-center rounded-lg\"\n>\n <div\n *ngIf=\"type === types.COULD_NOT_REACH_API\"\n data-test=\"could-not-reach-api-error\"\n >\n <div class=\"relative opacity-40\">\n <mat-icon class=\"material-symbols-outlined face\">face</mat-icon>\n <mat-icon class=\"material-symbols-outlined question-mark1\"\n >question_mark</mat-icon\n >\n <mat-icon class=\"material-symbols-outlined question-mark2\"\n >question_mark</mat-icon\n >\n </div>\n <div translate>search.error.couldNotReachApi</div>\n </div>\n <div\n *ngIf=\"type === types.DATASET_HAS_NO_LINK\"\n data-test=\"dataset-has-no-link-error\"\n >\n <div class=\"relative opacity-40\">\n <mat-icon class=\"material-symbols-outlined face\">computer</mat-icon>\n </div>\n <div translate>search.error.recordHasnolink</div>\n </div>\n <div *ngIf=\"type === types.RECEIVED_ERROR\" data-test=\"received-error-error\">\n <div class=\"relative opacity-40\">\n <mat-icon class=\"material-symbols-outlined face\">mood_bad</mat-icon>\n </div>\n <div translate>search.error.receivedError</div>\n <div *ngIf=\"error\">{{ error }}</div>\n </div>\n <div\n *ngIf=\"type === types.RECORD_NOT_FOUND\"\n data-test=\"record-not-found-error\"\n >\n <div class=\"relative opacity-40\">\n <mat-icon class=\"material-symbols-outlined computer\">computer</mat-icon>\n <mat-icon class=\"material-symbols-outlined computer-question-mark\"\n >question_mark</mat-icon\n >\n </div>\n <div translate [translateParams]=\"{ id: recordId }\">\n search.error.recordNotFound\n </div>\n <div *ngIf=\"error\">{{ error }}</div>\n </div>\n</div>\n", styles: ["mat-icon{width:auto;height:auto}mat-icon.face{font-size:3em}mat-icon.question-mark1{position:absolute;bottom:1.1em;left:calc(50% + .7em);font-size:1.7em}mat-icon.question-mark2{position:absolute;bottom:1.6em;left:calc(50% + 1.6em);font-size:1.4em}.computer{font-size:3em}.computer-question-mark{position:absolute;top:.6em;left:calc(50% - .5em);font-size:1.2em}\n"] }]
23
+ }], propDecorators: { type: [{
24
+ type: Input
25
+ }], error: [{
26
+ type: Input
27
+ }], recordId: [{
28
+ type: Input
29
+ }] } });
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9lbGVtZW50cy9zcmMvbGliL2Vycm9yL2Vycm9yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi9lcnJvci9lcnJvci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQTs7Ozs7QUFFekUsTUFBTSxDQUFOLElBQVksU0FLWDtBQUxELFdBQVksU0FBUztJQUNuQix1RUFBbUIsQ0FBQTtJQUNuQiw2REFBYyxDQUFBO0lBQ2QsaUVBQWdCLENBQUE7SUFDaEIsdUVBQW1CLENBQUE7QUFDckIsQ0FBQyxFQUxXLFNBQVMsS0FBVCxTQUFTLFFBS3BCO0FBUUQsTUFBTSxPQUFPLGNBQWM7SUFOM0I7UUFVRSxVQUFLLEdBQUcsU0FBUyxDQUFBO0tBQ2xCOzhHQUxZLGNBQWM7a0dBQWQsY0FBYyxtSENmM0IsdXVEQWtEQTs7MkZEbkNhLGNBQWM7a0JBTjFCLFNBQVM7K0JBQ0UsYUFBYSxtQkFHTix1QkFBdUIsQ0FBQyxNQUFNOzhCQUd0QyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5cbmV4cG9ydCBlbnVtIEVycm9yVHlwZSB7XG4gIENPVUxEX05PVF9SRUFDSF9BUEksXG4gIFJFQ0VJVkVEX0VSUk9SLFxuICBSRUNPUkRfTk9UX0ZPVU5ELFxuICBEQVRBU0VUX0hBU19OT19MSU5LLFxufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS1lcnJvcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9lcnJvci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2Vycm9yLmNvbXBvbmVudC5jc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEVycm9yQ29tcG9uZW50IHtcbiAgQElucHV0KCkgdHlwZSE6IEVycm9yVHlwZVxuICBASW5wdXQoKSBlcnJvcj86IHN0cmluZ1xuICBASW5wdXQoKSByZWNvcmRJZD86IHN0cmluZ1xuICB0eXBlcyA9IEVycm9yVHlwZVxufVxuIiwiPGRpdlxuICBjbGFzcz1cInAtWzEuN2VtXSBiZy1yZWQtNTAgdGV4dC1yZWQtODAwIHRleHQtWzEuNWVtXSB0ZXh0LWNlbnRlciByb3VuZGVkLWxnXCJcbj5cbiAgPGRpdlxuICAgICpuZ0lmPVwidHlwZSA9PT0gdHlwZXMuQ09VTERfTk9UX1JFQUNIX0FQSVwiXG4gICAgZGF0YS10ZXN0PVwiY291bGQtbm90LXJlYWNoLWFwaS1lcnJvclwiXG4gID5cbiAgICA8ZGl2IGNsYXNzPVwicmVsYXRpdmUgb3BhY2l0eS00MFwiPlxuICAgICAgPG1hdC1pY29uIGNsYXNzPVwibWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZCBmYWNlXCI+ZmFjZTwvbWF0LWljb24+XG4gICAgICA8bWF0LWljb24gY2xhc3M9XCJtYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkIHF1ZXN0aW9uLW1hcmsxXCJcbiAgICAgICAgPnF1ZXN0aW9uX21hcms8L21hdC1pY29uXG4gICAgICA+XG4gICAgICA8bWF0LWljb24gY2xhc3M9XCJtYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkIHF1ZXN0aW9uLW1hcmsyXCJcbiAgICAgICAgPnF1ZXN0aW9uX21hcms8L21hdC1pY29uXG4gICAgICA+XG4gICAgPC9kaXY+XG4gICAgPGRpdiB0cmFuc2xhdGU+c2VhcmNoLmVycm9yLmNvdWxkTm90UmVhY2hBcGk8L2Rpdj5cbiAgPC9kaXY+XG4gIDxkaXZcbiAgICAqbmdJZj1cInR5cGUgPT09IHR5cGVzLkRBVEFTRVRfSEFTX05PX0xJTktcIlxuICAgIGRhdGEtdGVzdD1cImRhdGFzZXQtaGFzLW5vLWxpbmstZXJyb3JcIlxuICA+XG4gICAgPGRpdiBjbGFzcz1cInJlbGF0aXZlIG9wYWNpdHktNDBcIj5cbiAgICAgIDxtYXQtaWNvbiBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQgZmFjZVwiPmNvbXB1dGVyPC9tYXQtaWNvbj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IHRyYW5zbGF0ZT5zZWFyY2guZXJyb3IucmVjb3JkSGFzbm9saW5rPC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwidHlwZSA9PT0gdHlwZXMuUkVDRUlWRURfRVJST1JcIiBkYXRhLXRlc3Q9XCJyZWNlaXZlZC1lcnJvci1lcnJvclwiPlxuICAgIDxkaXYgY2xhc3M9XCJyZWxhdGl2ZSBvcGFjaXR5LTQwXCI+XG4gICAgICA8bWF0LWljb24gY2xhc3M9XCJtYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkIGZhY2VcIj5tb29kX2JhZDwvbWF0LWljb24+XG4gICAgPC9kaXY+XG4gICAgPGRpdiB0cmFuc2xhdGU+c2VhcmNoLmVycm9yLnJlY2VpdmVkRXJyb3I8L2Rpdj5cbiAgICA8ZGl2ICpuZ0lmPVwiZXJyb3JcIj57eyBlcnJvciB9fTwvZGl2PlxuICA8L2Rpdj5cbiAgPGRpdlxuICAgICpuZ0lmPVwidHlwZSA9PT0gdHlwZXMuUkVDT1JEX05PVF9GT1VORFwiXG4gICAgZGF0YS10ZXN0PVwicmVjb3JkLW5vdC1mb3VuZC1lcnJvclwiXG4gID5cbiAgICA8ZGl2IGNsYXNzPVwicmVsYXRpdmUgb3BhY2l0eS00MFwiPlxuICAgICAgPG1hdC1pY29uIGNsYXNzPVwibWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZCBjb21wdXRlclwiPmNvbXB1dGVyPC9tYXQtaWNvbj5cbiAgICAgIDxtYXQtaWNvbiBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQgY29tcHV0ZXItcXVlc3Rpb24tbWFya1wiXG4gICAgICAgID5xdWVzdGlvbl9tYXJrPC9tYXQtaWNvblxuICAgICAgPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgdHJhbnNsYXRlIFt0cmFuc2xhdGVQYXJhbXNdPVwieyBpZDogcmVjb3JkSWQgfVwiPlxuICAgICAgc2VhcmNoLmVycm9yLnJlY29yZE5vdEZvdW5kXG4gICAgPC9kaXY+XG4gICAgPGRpdiAqbmdJZj1cImVycm9yXCI+e3sgZXJyb3IgfX08L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
@@ -1,13 +1,14 @@
1
1
  import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
2
- import { OgcApiEndpoint } from '@camptocamp/ogc-client';
2
+ import { OgcApiEndpoint, WfsEndpoint } from '@camptocamp/ogc-client';
3
3
  import { mimeTypeToFormat } from '../../../../../../libs/util/shared/src';
4
- import { BehaviorSubject, combineLatest, map } from 'rxjs';
4
+ import { BehaviorSubject, combineLatest, filter, map, switchMap } from 'rxjs';
5
5
  import * as i0 from "@angular/core";
6
- import * as i1 from "@ngx-translate/core";
7
- import * as i2 from "../../../../inputs/src/lib/dropdown-selector/dropdown-selector.component";
8
- import * as i3 from "../../../../inputs/src/lib/text-input/text-input.component";
9
- import * as i4 from "../../../../inputs/src/lib/copy-text-button/copy-text-button.component";
10
- import * as i5 from "@angular/common";
6
+ import * as i1 from "@angular/common";
7
+ import * as i2 from "@angular/material/tooltip";
8
+ import * as i3 from "@ngx-translate/core";
9
+ import * as i4 from "../../../../inputs/src/lib/dropdown-selector/dropdown-selector.component";
10
+ import * as i5 from "../../../../inputs/src/lib/text-input/text-input.component";
11
+ import * as i6 from "../../../../inputs/src/lib/copy-text-button/copy-text-button.component";
11
12
  const DEFAULT_PARAMS = {
12
13
  OFFSET: '',
13
14
  LIMIT: '-1',
@@ -15,42 +16,37 @@ const DEFAULT_PARAMS = {
15
16
  };
16
17
  export class RecordApiFormComponent {
17
18
  constructor() {
18
- this.offset$ = new BehaviorSubject('');
19
- this.limit$ = new BehaviorSubject('');
20
- this.format$ = new BehaviorSubject('');
19
+ this.offset$ = new BehaviorSubject(DEFAULT_PARAMS.OFFSET);
20
+ this.limit$ = new BehaviorSubject(DEFAULT_PARAMS.LIMIT);
21
+ this.format$ = new BehaviorSubject(DEFAULT_PARAMS.FORMAT);
22
+ this.endpoint$ = new BehaviorSubject(undefined);
23
+ this.supportOffset = true;
21
24
  this.outputFormats = [{ value: 'json', label: 'JSON' }];
22
- this.apiQueryUrl$ = combineLatest([this.offset$, this.limit$, this.format$]).pipe(map(([offset, limit, format]) => {
23
- let outputUrl;
24
- if (this.apiBaseUrl) {
25
- const url = new URL(this.apiBaseUrl);
26
- const params = { offset: offset, limit: limit, f: format };
27
- for (const [key, value] of Object.entries(params)) {
28
- if (value && value !== '0') {
29
- url.searchParams.set(key, value);
30
- }
31
- else {
32
- url.searchParams.delete(key);
33
- }
34
- }
35
- outputUrl = url.toString();
36
- }
37
- return outputUrl;
38
- }));
25
+ this.apiQueryUrl$ = combineLatest([
26
+ this.offset$,
27
+ this.limit$,
28
+ this.format$,
29
+ // only compute the url if the endpoint was created
30
+ this.endpoint$.pipe(filter((endpoint) => !!endpoint)),
31
+ ]).pipe(switchMap(([offset, limit, format]) => this.generateApiQueryUrl(offset, limit, format)));
39
32
  this.noLimitChecked$ = this.limit$.pipe(map((limit) => limit === '-1' || limit === ''));
40
33
  this.displayLimit$ = this.limit$.pipe(map((limit) => (limit !== '-1' ? limit : '')));
41
34
  }
42
35
  set apiLink(value) {
43
- this.apiBaseUrl = value ? value.url.href : undefined;
44
36
  this.outputFormats = [{ value: 'json', label: 'JSON' }];
45
- this.parseOutputFormats();
37
+ this.accessServiceProtocol = value ? value.accessServiceProtocol : undefined;
38
+ this.apiFeatureType = value ? value.name : undefined;
39
+ if (value) {
40
+ this.apiBaseUrl = value.url.href;
41
+ this.createEndpoint().then(() => this.parseOutputFormats());
42
+ }
46
43
  this.resetUrl();
47
44
  }
48
45
  setOffset(value) {
49
46
  this.offset$.next(value);
50
47
  }
51
48
  setLimit(value) {
52
- const newLimit = value === '' ? '-1' : value;
53
- this.limit$.next(newLimit);
49
+ this.limit$.next(value === '' ? '-1' : value);
54
50
  }
55
51
  setFormat(value) {
56
52
  this.format$.next(String(value));
@@ -60,39 +56,78 @@ export class RecordApiFormComponent {
60
56
  this.limit$.next(DEFAULT_PARAMS.LIMIT);
61
57
  this.format$.next(DEFAULT_PARAMS.FORMAT);
62
58
  }
63
- parseOutputFormats() {
64
- const apiUrl = this.apiBaseUrl.slice(-1) === '?'
59
+ async parseOutputFormats() {
60
+ if (!this.endpoint)
61
+ return;
62
+ const apiUrl = this.apiBaseUrl.endsWith('?')
65
63
  ? this.apiBaseUrl.slice(0, -1)
66
64
  : this.apiBaseUrl;
67
- this.getOutputFormats(apiUrl).then((outputFormats) => {
68
- const formatsList = outputFormats.itemFormats.map((format) => {
69
- const normalizedFormat = mimeTypeToFormat(format);
70
- if (normalizedFormat) {
71
- return {
72
- label: normalizedFormat?.toUpperCase(),
73
- value: normalizedFormat,
74
- };
75
- }
76
- return null;
77
- });
78
- this.outputFormats = this.outputFormats.concat(formatsList.filter(Boolean));
79
- this.outputFormats = this.outputFormats
80
- .filter((format, index, self) => index === self.findIndex((t) => t.value === format.value))
81
- .sort((a, b) => a.label.localeCompare(b.label));
65
+ const outputFormats = await this.getOutputFormats(apiUrl);
66
+ const formatsList = outputFormats.itemFormats
67
+ ? this.mapFormats(outputFormats.itemFormats)
68
+ : this.mapFormats(outputFormats.outputFormats || []);
69
+ this.outputFormats = this.outputFormats
70
+ .concat(formatsList.filter(Boolean))
71
+ .filter((format, index, self) => index === self.findIndex((t) => t.value === format.value))
72
+ .sort((a, b) => a.label.localeCompare(b.label));
73
+ }
74
+ mapFormats(formats) {
75
+ return formats.map((format) => {
76
+ const normalizedFormat = mimeTypeToFormat(format);
77
+ return normalizedFormat
78
+ ? { label: normalizedFormat.toUpperCase(), value: normalizedFormat }
79
+ : null;
82
80
  });
83
81
  }
84
82
  async getOutputFormats(url) {
85
- const endpoint = await new OgcApiEndpoint(url);
86
- const firstCollection = (await endpoint.featureCollections)[0];
87
- return endpoint.getCollectionInfo(firstCollection);
83
+ if (!this.endpoint)
84
+ return {};
85
+ if (this.endpoint instanceof WfsEndpoint) {
86
+ this.supportOffset = this.endpoint.supportsStartIndex();
87
+ return this.endpoint.getServiceInfo();
88
+ }
89
+ else {
90
+ return (await this.endpoint.getCollectionInfo(this.firstCollection));
91
+ }
92
+ }
93
+ async createEndpoint() {
94
+ if (!this.apiBaseUrl || !this.accessServiceProtocol)
95
+ return;
96
+ if (this.accessServiceProtocol === 'wfs') {
97
+ this.endpoint = new WfsEndpoint(this.apiBaseUrl);
98
+ await this.endpoint.isReady();
99
+ }
100
+ else {
101
+ this.endpoint = new OgcApiEndpoint(this.apiBaseUrl);
102
+ this.firstCollection = (await this.endpoint.allCollections)[0].name;
103
+ }
104
+ this.endpoint$.next(this.endpoint);
105
+ }
106
+ async generateApiQueryUrl(offset, limit, format) {
107
+ if (!this.apiBaseUrl || !this.endpoint || !this.apiFeatureType)
108
+ return '';
109
+ const options = {
110
+ outputFormat: format,
111
+ startIndex: offset ? Number(offset) : undefined,
112
+ maxFeatures: limit !== '-1' ? Number(limit) : undefined,
113
+ limit: limit !== '-1' ? Number(limit) : limit === '-1' ? -1 : undefined,
114
+ offset: offset !== '' ? Number(offset) : undefined,
115
+ };
116
+ if (this.endpoint instanceof WfsEndpoint) {
117
+ options.maxFeatures = limit !== '-1' ? Number(limit) : undefined;
118
+ return this.endpoint.getFeatureUrl(this.apiFeatureType, options);
119
+ }
120
+ else {
121
+ return await this.endpoint.getCollectionItemsUrl(this.firstCollection, options);
122
+ }
88
123
  }
89
124
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: RecordApiFormComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
90
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: RecordApiFormComponent, selector: "gn-ui-record-api-form", inputs: { apiLink: "apiLink" }, ngImport: i0, template: "<div class=\"flex flex-col gap-8\">\n <div class=\"flex flex-col bg-white p-8 ng-star-inserted shadow-xl gap-8\">\n <div class=\"flex flex-row\">\n <div class=\"text-[16px] text-black truncate font-title w-11/12\" translate>\n record.metadata.api.form.create\n </div>\n <button\n (click)=\"resetUrl()\"\n class=\"bg-primary-opacity-50 inline-flex items-center justify-center px-2 py-1 text-13 font-medium leading-none text-white rounded capitalize text-primary-lightest hover:bg-primary transition-colors\"\n >\n <p class=\"text-[13px] uppercase\" translate>\n record.metadata.api.form.reset\n </p>\n </button>\n </div>\n <div class=\"flex flex-row flex-wrap justify-between grow gap-5\">\n <div class=\"flex flex-col gap-3\">\n <p class=\"text-[14px]\" translate>record.metadata.api.form.limit</p>\n <div class=\"flex flex-row items-center gap-2\">\n <gn-ui-text-input\n class=\"mr-2 w-20\"\n (valueChange)=\"setLimit($event)\"\n [value]=\"displayLimit$ | async\"\n hint=\"\"\n >\n </gn-ui-text-input>\n <div class=\"flex items-center\">\n <input\n class=\"mr-2 cursor-pointer\"\n type=\"checkbox\"\n [checked]=\"noLimitChecked$ | async\"\n (change)=\"setLimit('-1')\"\n />\n <span class=\"text-sm\" translate\n >record.metadata.api.form.limit.all</span\n >\n </div>\n </div>\n </div>\n <div class=\"flex flex-col gap-3\">\n <p class=\"text-sm\" translate>record.metadata.api.form.offset</p>\n <gn-ui-text-input\n class=\"w-20\"\n [value]=\"offset$ | async\"\n (valueChange)=\"setOffset($event)\"\n hint=\"\"\n >\n </gn-ui-text-input>\n </div>\n <div class=\"flex flex-col gap-3\">\n <p class=\"text-sm\" translate>record.metadata.api.form.type</p>\n <gn-ui-dropdown-selector\n #dropdown\n [title]=\"''\"\n extraBtnClass=\"secondary min-w-full !w-40 !text-black\"\n [showTitle]=\"false\"\n class=\"text-black\"\n [choices]=\"outputFormats\"\n (selectValue)=\"setFormat($event)\"\n [selected]=\"format$ | async\"\n ></gn-ui-dropdown-selector>\n </div>\n </div>\n </div>\n <div class=\"flex flex-col gap-3 mb-3\">\n <div class=\"text-sm text-black truncate font-title w-11/12\" translate>\n record.metadata.api.form.customUrl\n </div>\n <div class=\"bg-white rounded-lg\">\n <gn-ui-copy-text-button\n [text]=\"apiQueryUrl$ | async\"\n ></gn-ui-copy-text-button>\n </div>\n </div>\n</div>\n", styles: [":host ::ng-deep input{color:#000;opacity:1}:host ::ng-deep gn-ui-copy-text-button input[type=text]{color:#000;background-color:#fff}:host ::ng-deep gn-ui-copy-text-button button,host ::ng-deep gn-ui-copy-text-button button:hover{background-color:var(--color-secondary)!important}:host ::ng-deep gn-ui-copy-text-button button mat-icon{color:#fff!important;opacity:1!important}:host ::ng-deep gn-ui-copy-text-button button:hover mat-icon{color:#d3d3d3!important}\n"], dependencies: [{ kind: "directive", type: i1.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i2.DropdownSelectorComponent, selector: "gn-ui-dropdown-selector", inputs: ["title", "showTitle", "ariaName", "choices", "selected", "maxRows", "extraBtnClass", "minWidth"], outputs: ["selectValue"] }, { kind: "component", type: i3.TextInputComponent, selector: "gn-ui-text-input", inputs: ["value", "extraClass", "hint", "required"], outputs: ["valueChange"] }, { kind: "component", type: i4.CopyTextButtonComponent, selector: "gn-ui-copy-text-button", inputs: ["text", "tooltipText", "displayText", "rows"] }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
125
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: RecordApiFormComponent, selector: "gn-ui-record-api-form", inputs: { apiLink: "apiLink" }, ngImport: i0, template: "<div class=\"flex flex-col gap-8\">\n <div class=\"flex flex-col bg-white p-8 ng-star-inserted shadow-xl gap-8\">\n <div class=\"flex flex-row\">\n <div class=\"text-[16px] text-black truncate font-title w-11/12\" translate>\n record.metadata.api.form.create\n </div>\n <button\n (click)=\"resetUrl()\"\n class=\"bg-primary-opacity-50 inline-flex items-center justify-center px-2 py-1 text-13 font-medium leading-none text-white rounded capitalize text-primary-lightest hover:bg-primary transition-colors\"\n >\n <p class=\"text-[13px] uppercase\" translate>\n record.metadata.api.form.reset\n </p>\n </button>\n </div>\n <div class=\"flex flex-row flex-wrap justify-between grow gap-5\">\n <div class=\"flex flex-col gap-3\">\n <p class=\"text-[14px]\" translate>record.metadata.api.form.limit</p>\n <div class=\"flex flex-row items-center gap-2\">\n <gn-ui-text-input\n class=\"mr-2 w-20\"\n (valueChange)=\"setLimit($event)\"\n [value]=\"displayLimit$ | async\"\n hint=\"\"\n >\n </gn-ui-text-input>\n <div class=\"flex items-center\">\n <input\n class=\"mr-2 cursor-pointer\"\n type=\"checkbox\"\n [checked]=\"noLimitChecked$ | async\"\n (change)=\"setLimit('-1')\"\n />\n <span class=\"text-sm\" translate\n >record.metadata.api.form.limit.all</span\n >\n </div>\n </div>\n </div>\n <div class=\"flex flex-col gap-3 relative\">\n <p class=\"text-sm\" [class.text-gray-600]=\"!supportOffset\" translate>\n record.metadata.api.form.offset\n </p>\n <div class=\"flex items-center\">\n <gn-ui-text-input\n class=\"w-20\"\n [value]=\"offset$ | async\"\n [disabled]=\"!supportOffset\"\n (valueChange)=\"supportOffset ? setOffset($event) : null\"\n hint=\"\"\n >\n </gn-ui-text-input>\n <div\n *ngIf=\"!supportOffset\"\n class=\"flex items-center gap-2 text-orange-500 z-10 ml-3\"\n >\n <span\n class=\"material-symbols-outlined\"\n matTooltip=\"Not supported on this service\"\n >\n warning\n </span>\n </div>\n </div>\n </div>\n <div class=\"flex flex-col gap-3\">\n <p class=\"text-sm\" translate>record.metadata.api.form.type</p>\n <gn-ui-dropdown-selector\n #dropdown\n [title]=\"''\"\n extraBtnClass=\"secondary min-w-full !w-40 !text-black\"\n [showTitle]=\"false\"\n class=\"text-black\"\n [choices]=\"outputFormats\"\n (selectValue)=\"setFormat($event)\"\n [selected]=\"format$ | async\"\n ></gn-ui-dropdown-selector>\n </div>\n </div>\n </div>\n <div class=\"flex flex-col gap-3 mb-3\">\n <div class=\"text-sm text-black truncate font-title w-11/12\" translate>\n record.metadata.api.form.customUrl\n </div>\n <div class=\"bg-white rounded-lg\">\n <gn-ui-copy-text-button\n [text]=\"apiQueryUrl$ | async\"\n ></gn-ui-copy-text-button>\n </div>\n </div>\n</div>\n", styles: [":host ::ng-deep input{color:#000;opacity:1}:host ::ng-deep gn-ui-copy-text-button input[type=text]{color:#000;background-color:#fff}:host ::ng-deep gn-ui-copy-text-button button,host ::ng-deep gn-ui-copy-text-button button:hover{background-color:var(--color-secondary)!important}:host ::ng-deep gn-ui-copy-text-button button mat-icon{color:#fff!important;opacity:1!important}:host ::ng-deep gn-ui-copy-text-button button:hover mat-icon{color:#d3d3d3!important}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "directive", type: i3.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i4.DropdownSelectorComponent, selector: "gn-ui-dropdown-selector", inputs: ["title", "showTitle", "ariaName", "choices", "selected", "maxRows", "extraBtnClass", "minWidth", "disabled"], outputs: ["selectValue"] }, { kind: "component", type: i5.TextInputComponent, selector: "gn-ui-text-input", inputs: ["value", "extraClass", "hint", "required", "disabled"], outputs: ["valueChange"] }, { kind: "component", type: i6.CopyTextButtonComponent, selector: "gn-ui-copy-text-button", inputs: ["text", "tooltipText", "displayText", "rows"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
91
126
  }
92
127
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: RecordApiFormComponent, decorators: [{
93
128
  type: Component,
94
- args: [{ selector: 'gn-ui-record-api-form', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"flex flex-col gap-8\">\n <div class=\"flex flex-col bg-white p-8 ng-star-inserted shadow-xl gap-8\">\n <div class=\"flex flex-row\">\n <div class=\"text-[16px] text-black truncate font-title w-11/12\" translate>\n record.metadata.api.form.create\n </div>\n <button\n (click)=\"resetUrl()\"\n class=\"bg-primary-opacity-50 inline-flex items-center justify-center px-2 py-1 text-13 font-medium leading-none text-white rounded capitalize text-primary-lightest hover:bg-primary transition-colors\"\n >\n <p class=\"text-[13px] uppercase\" translate>\n record.metadata.api.form.reset\n </p>\n </button>\n </div>\n <div class=\"flex flex-row flex-wrap justify-between grow gap-5\">\n <div class=\"flex flex-col gap-3\">\n <p class=\"text-[14px]\" translate>record.metadata.api.form.limit</p>\n <div class=\"flex flex-row items-center gap-2\">\n <gn-ui-text-input\n class=\"mr-2 w-20\"\n (valueChange)=\"setLimit($event)\"\n [value]=\"displayLimit$ | async\"\n hint=\"\"\n >\n </gn-ui-text-input>\n <div class=\"flex items-center\">\n <input\n class=\"mr-2 cursor-pointer\"\n type=\"checkbox\"\n [checked]=\"noLimitChecked$ | async\"\n (change)=\"setLimit('-1')\"\n />\n <span class=\"text-sm\" translate\n >record.metadata.api.form.limit.all</span\n >\n </div>\n </div>\n </div>\n <div class=\"flex flex-col gap-3\">\n <p class=\"text-sm\" translate>record.metadata.api.form.offset</p>\n <gn-ui-text-input\n class=\"w-20\"\n [value]=\"offset$ | async\"\n (valueChange)=\"setOffset($event)\"\n hint=\"\"\n >\n </gn-ui-text-input>\n </div>\n <div class=\"flex flex-col gap-3\">\n <p class=\"text-sm\" translate>record.metadata.api.form.type</p>\n <gn-ui-dropdown-selector\n #dropdown\n [title]=\"''\"\n extraBtnClass=\"secondary min-w-full !w-40 !text-black\"\n [showTitle]=\"false\"\n class=\"text-black\"\n [choices]=\"outputFormats\"\n (selectValue)=\"setFormat($event)\"\n [selected]=\"format$ | async\"\n ></gn-ui-dropdown-selector>\n </div>\n </div>\n </div>\n <div class=\"flex flex-col gap-3 mb-3\">\n <div class=\"text-sm text-black truncate font-title w-11/12\" translate>\n record.metadata.api.form.customUrl\n </div>\n <div class=\"bg-white rounded-lg\">\n <gn-ui-copy-text-button\n [text]=\"apiQueryUrl$ | async\"\n ></gn-ui-copy-text-button>\n </div>\n </div>\n</div>\n", styles: [":host ::ng-deep input{color:#000;opacity:1}:host ::ng-deep gn-ui-copy-text-button input[type=text]{color:#000;background-color:#fff}:host ::ng-deep gn-ui-copy-text-button button,host ::ng-deep gn-ui-copy-text-button button:hover{background-color:var(--color-secondary)!important}:host ::ng-deep gn-ui-copy-text-button button mat-icon{color:#fff!important;opacity:1!important}:host ::ng-deep gn-ui-copy-text-button button:hover mat-icon{color:#d3d3d3!important}\n"] }]
129
+ args: [{ selector: 'gn-ui-record-api-form', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"flex flex-col gap-8\">\n <div class=\"flex flex-col bg-white p-8 ng-star-inserted shadow-xl gap-8\">\n <div class=\"flex flex-row\">\n <div class=\"text-[16px] text-black truncate font-title w-11/12\" translate>\n record.metadata.api.form.create\n </div>\n <button\n (click)=\"resetUrl()\"\n class=\"bg-primary-opacity-50 inline-flex items-center justify-center px-2 py-1 text-13 font-medium leading-none text-white rounded capitalize text-primary-lightest hover:bg-primary transition-colors\"\n >\n <p class=\"text-[13px] uppercase\" translate>\n record.metadata.api.form.reset\n </p>\n </button>\n </div>\n <div class=\"flex flex-row flex-wrap justify-between grow gap-5\">\n <div class=\"flex flex-col gap-3\">\n <p class=\"text-[14px]\" translate>record.metadata.api.form.limit</p>\n <div class=\"flex flex-row items-center gap-2\">\n <gn-ui-text-input\n class=\"mr-2 w-20\"\n (valueChange)=\"setLimit($event)\"\n [value]=\"displayLimit$ | async\"\n hint=\"\"\n >\n </gn-ui-text-input>\n <div class=\"flex items-center\">\n <input\n class=\"mr-2 cursor-pointer\"\n type=\"checkbox\"\n [checked]=\"noLimitChecked$ | async\"\n (change)=\"setLimit('-1')\"\n />\n <span class=\"text-sm\" translate\n >record.metadata.api.form.limit.all</span\n >\n </div>\n </div>\n </div>\n <div class=\"flex flex-col gap-3 relative\">\n <p class=\"text-sm\" [class.text-gray-600]=\"!supportOffset\" translate>\n record.metadata.api.form.offset\n </p>\n <div class=\"flex items-center\">\n <gn-ui-text-input\n class=\"w-20\"\n [value]=\"offset$ | async\"\n [disabled]=\"!supportOffset\"\n (valueChange)=\"supportOffset ? setOffset($event) : null\"\n hint=\"\"\n >\n </gn-ui-text-input>\n <div\n *ngIf=\"!supportOffset\"\n class=\"flex items-center gap-2 text-orange-500 z-10 ml-3\"\n >\n <span\n class=\"material-symbols-outlined\"\n matTooltip=\"Not supported on this service\"\n >\n warning\n </span>\n </div>\n </div>\n </div>\n <div class=\"flex flex-col gap-3\">\n <p class=\"text-sm\" translate>record.metadata.api.form.type</p>\n <gn-ui-dropdown-selector\n #dropdown\n [title]=\"''\"\n extraBtnClass=\"secondary min-w-full !w-40 !text-black\"\n [showTitle]=\"false\"\n class=\"text-black\"\n [choices]=\"outputFormats\"\n (selectValue)=\"setFormat($event)\"\n [selected]=\"format$ | async\"\n ></gn-ui-dropdown-selector>\n </div>\n </div>\n </div>\n <div class=\"flex flex-col gap-3 mb-3\">\n <div class=\"text-sm text-black truncate font-title w-11/12\" translate>\n record.metadata.api.form.customUrl\n </div>\n <div class=\"bg-white rounded-lg\">\n <gn-ui-copy-text-button\n [text]=\"apiQueryUrl$ | async\"\n ></gn-ui-copy-text-button>\n </div>\n </div>\n</div>\n", styles: [":host ::ng-deep input{color:#000;opacity:1}:host ::ng-deep gn-ui-copy-text-button input[type=text]{color:#000;background-color:#fff}:host ::ng-deep gn-ui-copy-text-button button,host ::ng-deep gn-ui-copy-text-button button:hover{background-color:var(--color-secondary)!important}:host ::ng-deep gn-ui-copy-text-button button mat-icon{color:#fff!important;opacity:1!important}:host ::ng-deep gn-ui-copy-text-button button:hover mat-icon{color:#d3d3d3!important}\n"] }]
95
130
  }], propDecorators: { apiLink: [{
96
131
  type: Input
97
132
  }] } });
98
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjb3JkLWFwaS1mb3JtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi9yZWNvcmQtYXBpLWZvcm0vcmVjb3JkLWFwaS1mb3JtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi9yZWNvcmQtYXBpLWZvcm0vcmVjb3JkLWFwaS1mb3JtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ3pFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTtBQUV2RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQTtBQUN6RSxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUE7Ozs7Ozs7QUFFMUQsTUFBTSxjQUFjLEdBQUc7SUFDckIsTUFBTSxFQUFFLEVBQUU7SUFDVixLQUFLLEVBQUUsSUFBSTtJQUNYLE1BQU0sRUFBRSxNQUFNO0NBQ2YsQ0FBQTtBQU9ELE1BQU0sT0FBTyxzQkFBc0I7SUFObkM7UUFhRSxZQUFPLEdBQUcsSUFBSSxlQUFlLENBQUMsRUFBRSxDQUFDLENBQUE7UUFDakMsV0FBTSxHQUFHLElBQUksZUFBZSxDQUFDLEVBQUUsQ0FBQyxDQUFBO1FBQ2hDLFlBQU8sR0FBRyxJQUFJLGVBQWUsQ0FBQyxFQUFFLENBQUMsQ0FBQTtRQUVqQyxrQkFBYSxHQUFHLENBQUMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFBO1FBQ2xELGlCQUFZLEdBQUcsYUFBYSxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxJ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QUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFBO1FBQ25ELENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUVELEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHO1FBQ3hCLE1BQU0sUUFBUSxHQUFHLE1BQU0sSUFBSSxjQUFjLENBQUMsR0FBRyxDQUFDLENBQUE7UUFDOUMsTUFBTSxlQUFlLEdBQUcsQ0FBQyxNQUFNLFFBQVEsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBQzlELE9BQU8sUUFBUSxDQUFDLGlCQUFpQixDQUFDLGVBQWUsQ0FBQyxDQUFBO0lBQ3BELENBQUM7OEdBMUZVLHNCQUFzQjtrR0FBdEIsc0JBQXNCLDZGQ2pCbkMsK3ZGQTJFQTs7MkZEMURhLHNCQUFzQjtrQkFObEMsU0FBUzsrQkFDRSx1QkFBdUIsbUJBR2hCLHVCQUF1QixDQUFDLE1BQU07OEJBR2xDLE9BQU87c0JBQW5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBPZ2NBcGlFbmRwb2ludCB9IGZyb20gJ0BjYW1wdG9jYW1wL29nYy1jbGllbnQnXG5pbXBvcnQgeyBEYXRhc2V0U2VydmljZURpc3RyaWJ1dGlvbiB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL21vZGVsL3JlY29yZCdcbmltcG9ydCB7IG1pbWVUeXBlVG9Gb3JtYXQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvc2hhcmVkL3NyYydcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgbWFwIH0gZnJvbSAncnhqcydcblxuY29uc3QgREVGQVVMVF9QQVJBTVMgPSB7XG4gIE9GRlNFVDogJycsXG4gIExJTUlUOiAnLTEnLFxuICBGT1JNQVQ6ICdqc29uJyxcbn1cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2duLXVpLXJlY29yZC1hcGktZm9ybScsXG4gIHRlbXBsYXRlVXJsOiAnLi9yZWNvcmQtYXBpLWZvcm0uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9yZWNvcmQtYXBpLWZvcm0uY29tcG9uZW50LmNzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgUmVjb3JkQXBpRm9ybUNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIHNldCBhcGlMaW5rKHZhbHVlOiBEYXRhc2V0U2VydmljZURpc3RyaWJ1dGlvbikge1xuICAgIHRoaXMuYXBpQmFzZVVybCA9IHZhbHVlID8gdmFsdWUudXJsLmhyZWYgOiB1bmRlZmluZWRcbiAgICB0aGlzLm91dHB1dEZvcm1hdHMgPSBbeyB2YWx1ZTogJ2pzb24nLCBsYWJlbDogJ0pTT04nIH1dXG4gICAgdGhpcy5wYXJzZU91dHB1dEZvcm1hdHMoKVxuICAgIHRoaXMucmVzZXRVcmwoKVxuICB9XG4gIG9mZnNldCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KCcnKVxuICBsaW1pdCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KCcnKVxuICBmb3JtYXQkID0gbmV3IEJlaGF2aW9yU3ViamVjdCgnJylcbiAgYXBpQmFzZVVybDogc3RyaW5nXG4gIG91dHB1dEZvcm1hdHMgPSBbeyB2YWx1ZTogJ2pzb24nLCBsYWJlbDogJ0pTT04nIH1dXG4gIGFwaVF1ZXJ5VXJsJCA9IGNvbWJpbmVMYXRlc3QoW3RoaXMub2Zmc2V0JCwgdGhpcy5saW1pdCQsIHRoaXMuZm9ybWF0JF0pLnBpcGUoXG4gICAgbWFwKChbb2Zmc2V0LCBsaW1pdCwgZm9ybWF0XSkgPT4ge1xuICAgICAgbGV0IG91dHB1dFVybFxuICAgICAgaWYgKHRoaXMuYXBpQmFzZVVybCkge1xuICAgICAgICBjb25zdCB1cmwgPSBuZXcgVVJMKHRoaXMuYXBpQmFzZVVybClcbiAgICAgICAgY29uc3QgcGFyYW1zID0geyBvZmZzZXQ6IG9mZnNldCwgbGltaXQ6IGxpbWl0LCBmOiBmb3JtYXQgfVxuICAgICAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiBPYmplY3QuZW50cmllcyhwYXJhbXMpKSB7XG4gICAgICAgICAgaWYgKHZhbHVlICYmIHZhbHVlICE9PSAnMCcpIHtcbiAgICAgICAgICAgIHVybC5zZWFyY2hQYXJhbXMuc2V0KGtleSwgdmFsdWUpXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHVybC5zZWFyY2hQYXJhbXMuZGVsZXRlKGtleSlcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgb3V0cHV0VXJsID0gdXJsLnRvU3RyaW5nKClcbiAgICAgIH1cbiAgICAgIHJldHVybiBvdXRwdXRVcmxcbiAgICB9KVxuICApXG4gIG5vTGltaXRDaGVja2VkJCA9IHRoaXMubGltaXQkLnBpcGUoXG4gICAgbWFwKChsaW1pdCkgPT4gbGltaXQgPT09ICctMScgfHwgbGltaXQgPT09ICcnKVxuICApXG5cbiAgZGlzcGxheUxpbWl0JCA9IHRoaXMubGltaXQkLnBpcGUoXG4gICAgbWFwKChsaW1pdCkgPT4gKGxpbWl0ICE9PSAnLTEnID8gbGltaXQgOiAnJykpXG4gIClcblxuICBzZXRPZmZzZXQodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMub2Zmc2V0JC5uZXh0KHZhbHVlKVxuICB9XG5cbiAgc2V0TGltaXQodmFsdWU6IHN0cmluZykge1xuICAgIGNvbnN0IG5ld0xpbWl0ID0gdmFsdWUgPT09ICcnID8gJy0xJyA6IHZhbHVlXG4gICAgdGhpcy5saW1pdCQubmV4dChuZXdMaW1pdClcbiAgfVxuXG4gIHNldEZvcm1hdCh2YWx1ZTogc3RyaW5nIHwgdW5rbm93bikge1xuICAgIHRoaXMuZm9ybWF0JC5uZXh0KFN0cmluZyh2YWx1ZSkpXG4gIH1cblxuICByZXNldFVybCgpIHtcbiAgICB0aGlzLm9mZnNldCQubmV4dChERUZBVUxUX1BBUkFNUy5PRkZTRVQpXG4gICAgdGhpcy5saW1pdCQubmV4dChERUZBVUxUX1BBUkFNUy5MSU1JVClcbiAgICB0aGlzLmZvcm1hdCQubmV4dChERUZBVUxUX1BBUkFNUy5GT1JNQVQpXG4gIH1cblxuICBwYXJzZU91dHB1dEZvcm1hdHMoKSB7XG4gICAgY29uc3QgYXBpVXJsID1cbiAgICAgIHRoaXMuYXBpQmFzZVVybC5zbGljZSgtMSkgPT09ICc/J1xuICAgICAgICA/IHRoaXMuYXBpQmFzZVVybC5zbGljZSgwLCAtMSlcbiAgICAgICAgOiB0aGlzLmFwaUJhc2VVcmxcblxuICAgIHRoaXMuZ2V0T3V0cHV0Rm9ybWF0cyhhcGlVcmwpLnRoZW4oKG91dHB1dEZvcm1hdHMpID0+IHtcbiAgICAgIGNvbnN0IGZvcm1hdHNMaXN0ID0gb3V0cHV0Rm9ybWF0cy5pdGVtRm9ybWF0cy5tYXAoKGZvcm1hdCkgPT4ge1xuICAgICAgICBjb25zdCBub3JtYWxpemVkRm9ybWF0ID0gbWltZVR5cGVUb0Zvcm1hdChmb3JtYXQpXG4gICAgICAgIGlmIChub3JtYWxpemVkRm9ybWF0KSB7XG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGxhYmVsOiBub3JtYWxpemVkRm9ybWF0Py50b1VwcGVyQ2FzZSgpLFxuICAgICAgICAgICAgdmFsdWU6IG5vcm1hbGl6ZWRGb3JtYXQsXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBudWxsXG4gICAgICB9KVxuICAgICAgdGhpcy5vdXRwdXRGb3JtYXRzID0gdGhpcy5vdXRwdXRGb3JtYXRzLmNvbmNhdChcbiAgICAgICAgZm9ybWF0c0xpc3QuZmlsdGVyKEJvb2xlYW4pXG4gICAgICApXG4gICAgICB0aGlzLm91dHB1dEZvcm1hdHMgPSB0aGlzLm91dHB1dEZvcm1hdHNcbiAgICAgICAgLmZpbHRlcihcbiAgICAgICAgICAoZm9ybWF0LCBpbmRleCwgc2VsZikgPT5cbiAgICAgICAgICAgIGluZGV4ID09PSBzZWxmLmZpbmRJbmRleCgodCkgPT4gdC52YWx1ZSA9PT0gZm9ybWF0LnZhbHVlKVxuICAgICAgICApXG4gICAgICAgIC5zb3J0KChhLCBiKSA9PiBhLmxhYmVsLmxvY2FsZUNvbXBhcmUoYi5sYWJlbCkpXG4gICAgfSlcbiAgfVxuXG4gIGFzeW5jIGdldE91dHB1dEZvcm1hdHModXJsKSB7XG4gICAgY29uc3QgZW5kcG9pbnQgPSBhd2FpdCBuZXcgT2djQXBpRW5kcG9pbnQodXJsKVxuICAgIGNvbnN0IGZpcnN0Q29sbGVjdGlvbiA9IChhd2FpdCBlbmRwb2ludC5mZWF0dXJlQ29sbGVjdGlvbnMpWzBdXG4gICAgcmV0dXJuIGVuZHBvaW50LmdldENvbGxlY3Rpb25JbmZvKGZpcnN0Q29sbGVjdGlvbilcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgZ2FwLThcIj5cbiAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgYmctd2hpdGUgcC04IG5nLXN0YXItaW5zZXJ0ZWQgc2hhZG93LXhsIGdhcC04XCI+XG4gICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1yb3dcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LVsxNnB4XSB0ZXh0LWJsYWNrIHRydW5jYXRlIGZvbnQtdGl0bGUgdy0xMS8xMlwiIHRyYW5zbGF0ZT5cbiAgICAgICAgcmVjb3JkLm1ldGFkYXRhLmFwaS5mb3JtLmNyZWF0ZVxuICAgICAgPC9kaXY+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIChjbGljayk9XCJyZXNldFVybCgpXCJcbiAgICAgICAgY2xhc3M9XCJiZy1wcmltYXJ5LW9wYWNpdHktNTAgaW5saW5lLWZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIHB4LTIgcHktMSB0ZXh0LTEzIGZvbnQtbWVkaXVtIGxlYWRpbmctbm9uZSB0ZXh0LXdoaXRlIHJvdW5kZWQgY2FwaXRhbGl6ZSB0ZXh0LXByaW1hcnktbGlnaHRlc3QgaG92ZXI6YmctcHJpbWFyeSB0cmFuc2l0aW9uLWNvbG9yc1wiXG4gICAgICA+XG4gICAgICAgIDxwIGNsYXNzPVwidGV4dC1bMTNweF0gdXBwZXJjYXNlXCIgdHJhbnNsYXRlPlxuICAgICAgICAgIHJlY29yZC5tZXRhZGF0YS5hcGkuZm9ybS5yZXNldFxuICAgICAgICA8L3A+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LXJvdyBmbGV4LXdyYXAganVzdGlmeS1iZXR3ZWVuIGdyb3cgZ2FwLTVcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIGdhcC0zXCI+XG4gICAgICAgIDxwIGNsYXNzPVwidGV4dC1bMTRweF1cIiB0cmFuc2xhdGU+cmVjb3JkLm1ldGFkYXRhLmFwaS5mb3JtLmxpbWl0PC9wPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LXJvdyBpdGVtcy1jZW50ZXIgZ2FwLTJcIj5cbiAgICAgICAgICA8Z24tdWktdGV4dC1pbnB1dFxuICAgICAgICAgICAgY2xhc3M9XCJtci0yIHctMjBcIlxuICAgICAgICAgICAgKHZhbHVlQ2hhbmdlKT1cInNldExpbWl0KCRldmVudClcIlxuICAgICAgICAgICAgW3ZhbHVlXT1cImRpc3BsYXlMaW1pdCQgfCBhc3luY1wiXG4gICAgICAgICAgICBoaW50PVwiXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgPC9nbi11aS10ZXh0LWlucHV0PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgIGNsYXNzPVwibXItMiBjdXJzb3ItcG9pbnRlclwiXG4gICAgICAgICAgICAgIHR5cGU9XCJjaGVja2JveFwiXG4gICAgICAgICAgICAgIFtjaGVja2VkXT1cIm5vTGltaXRDaGVja2VkJCB8IGFzeW5jXCJcbiAgICAgICAgICAgICAgKGNoYW5nZSk9XCJzZXRMaW1pdCgnLTEnKVwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXNtXCIgdHJhbnNsYXRlXG4gICAgICAgICAgICAgID5yZWNvcmQubWV0YWRhdGEuYXBpLmZvcm0ubGltaXQuYWxsPC9zcGFuXG4gICAgICAgICAgICA+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBnYXAtM1wiPlxuICAgICAgICA8cCBjbGFzcz1cInRleHQtc21cIiB0cmFuc2xhdGU+cmVjb3JkLm1ldGFkYXRhLmFwaS5mb3JtLm9mZnNldDwvcD5cbiAgICAgICAgPGduLXVpLXRleHQtaW5wdXRcbiAgICAgICAgICBjbGFzcz1cInctMjBcIlxuICAgICAgICAgIFt2YWx1ZV09XCJvZmZzZXQkIHwgYXN5bmNcIlxuICAgICAgICAgICh2YWx1ZUNoYW5nZSk9XCJzZXRPZmZzZXQoJGV2ZW50KVwiXG4gICAgICAgICAgaGludD1cIlwiXG4gICAgICAgID5cbiAgICAgICAgPC9nbi11aS10ZXh0LWlucHV0PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBnYXAtM1wiPlxuICAgICAgICA8cCBjbGFzcz1cInRleHQtc21cIiB0cmFuc2xhdGU+cmVjb3JkLm1ldGFkYXRhLmFwaS5mb3JtLnR5cGU8L3A+XG4gICAgICAgIDxnbi11aS1kcm9wZG93bi1zZWxlY3RvclxuICAgICAgICAgICNkcm9wZG93blxuICAgICAgICAgIFt0aXRsZV09XCInJ1wiXG4gICAgICAgICAgZXh0cmFCdG5DbGFzcz1cInNlY29uZGFyeSBtaW4tdy1mdWxsICF3LTQwICF0ZXh0LWJsYWNrXCJcbiAgICAgICAgICBbc2hvd1RpdGxlXT1cImZhbHNlXCJcbiAgICAgICAgICBjbGFzcz1cInRleHQtYmxhY2tcIlxuICAgICAgICAgIFtjaG9pY2VzXT1cIm91dHB1dEZvcm1hdHNcIlxuICAgICAgICAgIChzZWxlY3RWYWx1ZSk9XCJzZXRGb3JtYXQoJGV2ZW50KVwiXG4gICAgICAgICAgW3NlbGVjdGVkXT1cImZvcm1hdCQgfCBhc3luY1wiXG4gICAgICAgID48L2duLXVpLWRyb3Bkb3duLXNlbGVjdG9yPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBnYXAtMyBtYi0zXCI+XG4gICAgPGRpdiBjbGFzcz1cInRleHQtc20gdGV4dC1ibGFjayB0cnVuY2F0ZSBmb250LXRpdGxlIHctMTEvMTJcIiB0cmFuc2xhdGU+XG4gICAgICByZWNvcmQubWV0YWRhdGEuYXBpLmZvcm0uY3VzdG9tVXJsXG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImJnLXdoaXRlIHJvdW5kZWQtbGdcIj5cbiAgICAgIDxnbi11aS1jb3B5LXRleHQtYnV0dG9uXG4gICAgICAgIFt0ZXh0XT1cImFwaVF1ZXJ5VXJsJCB8IGFzeW5jXCJcbiAgICAgID48L2duLXVpLWNvcHktdGV4dC1idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
133
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjb3JkLWFwaS1mb3JtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi9yZWNvcmQtYXBpLWZvcm0vcmVjb3JkLWFwaS1mb3JtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjL2xpYi9yZWNvcmQtYXBpLWZvcm0vcmVjb3JkLWFwaS1mb3JtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ3pFLE9BQU8sRUFBRSxjQUFjLEVBQUUsV0FBVyxFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFLcEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0NBQXdDLENBQUE7QUFDekUsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUE7Ozs7Ozs7O0FBRTdFLE1BQU0sY0FBYyxHQUFHO0lBQ3JCLE1BQU0sRUFBRSxFQUFFO0lBQ1YsS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsTUFBTTtDQUNmLENBQUE7QUFhRCxNQUFNLE9BQU8sc0JBQXNCO0lBTm5DO1FBa0JFLFlBQU8sR0FBRyxJQUFJLGVBQWUsQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUE7UUFDcEQsV0FBTSxHQUFHLElBQUksZUFBZSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUNsRCxZQUFPLEdBQUcsSUFBSSxlQUFlLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFBO1FBQ3BELGNBQVMsR0FBRyxJQUFJLGVBQWUsQ0FDN0IsU0FBUyxDQUNWLENBQUE7UUFHRCxrQkFBYSxHQUFHLElBQUks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LE9BQU8sQ0FBQyxDQUFBO1NBQ2pFO2FBQU07WUFDTCxPQUFPLE1BQU0sSUFBSSxDQUFDLFFBQVEsQ0FBQyxxQkFBcUIsQ0FDOUMsSUFBSSxDQUFDLGVBQWUsRUFDcEIsT0FBTyxDQUNSLENBQUE7U0FDRjtJQUNILENBQUM7OEdBNUlVLHNCQUFzQjtrR0FBdEIsc0JBQXNCLDZGQzFCbkMsNnlHQTJGQTs7MkZEakVhLHNCQUFzQjtrQkFObEMsU0FBUzsrQkFDRSx1QkFBdUIsbUJBR2hCLHVCQUF1QixDQUFDLE1BQU07OEJBR2xDLE9BQU87c0JBQW5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBPZ2NBcGlFbmRwb2ludCwgV2ZzRW5kcG9pbnQgfSBmcm9tICdAY2FtcHRvY2FtcC9vZ2MtY2xpZW50J1xuaW1wb3J0IHtcbiAgRGF0YXNldFNlcnZpY2VEaXN0cmlidXRpb24sXG4gIFNlcnZpY2VQcm90b2NvbCxcbn0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvcmVjb3JkJ1xuaW1wb3J0IHsgbWltZVR5cGVUb0Zvcm1hdCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdXRpbC9zaGFyZWQvc3JjJ1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBmaWx0ZXIsIG1hcCwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcydcblxuY29uc3QgREVGQVVMVF9QQVJBTVMgPSB7XG4gIE9GRlNFVDogJycsXG4gIExJTUlUOiAnLTEnLFxuICBGT1JNQVQ6ICdqc29uJyxcbn1cblxuaW50ZXJmYWNlIE91dHB1dEZvcm1hdHMge1xuICBpdGVtRm9ybWF0cz86IGFueVtdXG4gIG91dHB1dEZvcm1hdHM/OiBhbnlbXVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS1yZWNvcmQtYXBpLWZvcm0nLFxuICB0ZW1wbGF0ZVVybDogJy4vcmVjb3JkLWFwaS1mb3JtLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcmVjb3JkLWFwaS1mb3JtLmNvbXBvbmVudC5jc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFJlY29yZEFwaUZvcm1Db21wb25lbnQge1xuICBASW5wdXQoKSBzZXQgYXBpTGluayh2YWx1ZTogRGF0YXNldFNlcnZpY2VEaXN0cmlidXRpb24pIHtcbiAgICB0aGlzLm91dHB1dEZvcm1hdHMgPSBbeyB2YWx1ZTogJ2pzb24nLCBsYWJlbDogJ0pTT04nIH1dXG4gICAgdGhpcy5hY2Nlc3NTZXJ2aWNlUHJvdG9jb2wgPSB2YWx1ZSA/IHZhbHVlLmFjY2Vzc1NlcnZpY2VQcm90b2NvbCA6IHVuZGVmaW5lZFxuICAgIHRoaXMuYXBpRmVhdHVyZVR5cGUgPSB2YWx1ZSA/IHZhbHVlLm5hbWUgOiB1bmRlZmluZWRcbiAgICBpZiAodmFsdWUpIHtcbiAgICAgIHRoaXMuYXBpQmFzZVVybCA9IHZhbHVlLnVybC5ocmVmXG4gICAgICB0aGlzLmNyZWF0ZUVuZHBvaW50KCkudGhlbigoKSA9PiB0aGlzLnBhcnNlT3V0cHV0Rm9ybWF0cygpKVxuICAgIH1cbiAgICB0aGlzLnJlc2V0VXJsKClcbiAgfVxuXG4gIG9mZnNldCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KERFRkFVTFRfUEFSQU1TLk9GRlNFVClcbiAgbGltaXQkID0gbmV3IEJlaGF2aW9yU3ViamVjdChERUZBVUxUX1BBUkFNUy5MSU1JVClcbiAgZm9ybWF0JCA9IG5ldyBCZWhhdmlvclN1YmplY3QoREVGQVVMVF9QQVJBTVMuRk9STUFUKVxuICBlbmRwb2ludCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFdmc0VuZHBvaW50IHwgT2djQXBpRW5kcG9pbnQgfCB1bmRlZmluZWQ+KFxuICAgIHVuZGVmaW5lZFxuICApXG4gIGFwaUJhc2VVcmw6IHN0cmluZ1xuICBhcGlGZWF0dXJlVHlwZTogc3RyaW5nXG4gIHN1cHBvcnRPZmZzZXQgPSB0cnVlXG4gIGFjY2Vzc1NlcnZpY2VQcm90b2NvbDogU2VydmljZVByb3RvY29sIHwgdW5kZWZpbmVkXG4gIG91dHB1dEZvcm1hdHMgPSBbeyB2YWx1ZTogJ2pzb24nLCBsYWJlbDogJ0pTT04nIH1dXG4gIGVuZHBvaW50OiBXZnNFbmRwb2ludCB8IE9nY0FwaUVuZHBvaW50IHwgdW5kZWZpbmVkXG4gIGZpcnN0Q29sbGVjdGlvbjogc3RyaW5nIHwgdW5kZWZpbmVkXG5cbiAgYXBpUXVlcnlVcmwkID0gY29tYmluZUxhdGVzdChbXG4gICAgdGhpcy5vZmZzZXQkLFxuICAgIHRoaXMubGltaXQkLFxuICAgIHRoaXMuZm9ybWF0JCxcbiAgICAvLyBvbmx5IGNvbXB1dGUgdGhlIHVybCBpZiB0aGUgZW5kcG9pbnQgd2FzIGNyZWF0ZWRcbiAgICB0aGlzLmVuZHBvaW50JC5waXBlKGZpbHRlcigoZW5kcG9pbnQpID0+ICEhZW5kcG9pbnQpKSxcbiAgXSkucGlwZShcbiAgICBzd2l0Y2hNYXAoKFtvZmZzZXQsIGxpbWl0LCBmb3JtYXRdKSA9PlxuICAgICAgdGhpcy5nZW5lcmF0ZUFwaVF1ZXJ5VXJsKG9mZnNldCwgbGltaXQsIGZvcm1hdClcbiAgICApXG4gIClcblxuICBub0xpbWl0Q2hlY2tlZCQgPSB0aGlzLmxpbWl0JC5waXBlKFxuICAgIG1hcCgobGltaXQpID0+IGxpbWl0ID09PSAnLTEnIHx8IGxpbWl0ID09PSAnJylcbiAgKVxuICBkaXNwbGF5TGltaXQkID0gdGhpcy5saW1pdCQucGlwZShcbiAgICBtYXAoKGxpbWl0KSA9PiAobGltaXQgIT09ICctMScgPyBsaW1pdCA6ICcnKSlcbiAgKVxuXG4gIHNldE9mZnNldCh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5vZmZzZXQkLm5leHQodmFsdWUpXG4gIH1cblxuICBzZXRMaW1pdCh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5saW1pdCQubmV4dCh2YWx1ZSA9PT0gJycgPyAnLTEnIDogdmFsdWUpXG4gIH1cblxuICBzZXRGb3JtYXQodmFsdWU6IHN0cmluZyB8IHVua25vd24pIHtcbiAgICB0aGlzLmZvcm1hdCQubmV4dChTdHJpbmcodmFsdWUpKVxuICB9XG5cbiAgcmVzZXRVcmwoKSB7XG4gICAgdGhpcy5vZmZzZXQkLm5leHQoREVGQVVMVF9QQVJBTVMuT0ZGU0VUKVxuICAgIHRoaXMubGltaXQkLm5leHQoREVGQVVMVF9QQVJBTVMuTElNSVQpXG4gICAgdGhpcy5mb3JtYXQkLm5leHQoREVGQVVMVF9QQVJBTVMuRk9STUFUKVxuICB9XG5cbiAgYXN5bmMgcGFyc2VPdXRwdXRGb3JtYXRzKCkge1xuICAgIGlmICghdGhpcy5lbmRwb2ludCkgcmV0dXJuXG4gICAgY29uc3QgYXBpVXJsID0gdGhpcy5hcGlCYXNlVXJsLmVuZHNXaXRoKCc/JylcbiAgICAgID8gdGhpcy5hcGlCYXNlVXJsLnNsaWNlKDAsIC0xKVxuICAgICAgOiB0aGlzLmFwaUJhc2VVcmxcbiAgICBjb25zdCBvdXRwdXRGb3JtYXRzID0gYXdhaXQgdGhpcy5nZXRPdXRwdXRGb3JtYXRzKGFwaVVybClcblxuICAgIGNvbnN0IGZvcm1hdHNMaXN0ID0gb3V0cHV0Rm9ybWF0cy5pdGVtRm9ybWF0c1xuICAgICAgPyB0aGlzLm1hcEZvcm1hdHMob3V0cHV0Rm9ybWF0cy5pdGVtRm9ybWF0cylcbiAgICAgIDogdGhpcy5tYXBGb3JtYXRzKG91dHB1dEZvcm1hdHMub3V0cHV0Rm9ybWF0cyB8fCBbXSlcblxuICAgIHRoaXMub3V0cHV0Rm9ybWF0cyA9IHRoaXMub3V0cHV0Rm9ybWF0c1xuICAgICAgLmNvbmNhdChmb3JtYXRzTGlzdC5maWx0ZXIoQm9vbGVhbikpXG4gICAgICAuZmlsdGVyKFxuICAgICAgICAoZm9ybWF0LCBpbmRleCwgc2VsZikgPT5cbiAgICAgICAgICBpbmRleCA9PT0gc2VsZi5maW5kSW5kZXgoKHQpID0+IHQudmFsdWUgPT09IGZvcm1hdC52YWx1ZSlcbiAgICAgIClcbiAgICAgIC5zb3J0KChhLCBiKSA9PiBhLmxhYmVsLmxvY2FsZUNvbXBhcmUoYi5sYWJlbCkpXG4gIH1cblxuICBtYXBGb3JtYXRzKGZvcm1hdHM6IGFueVtdKSB7XG4gICAgcmV0dXJuIGZvcm1hdHMubWFwKChmb3JtYXQpID0+IHtcbiAgICAgIGNvbnN0IG5vcm1hbGl6ZWRGb3JtYXQgPSBtaW1lVHlwZVRvRm9ybWF0KGZvcm1hdClcbiAgICAgIHJldHVybiBub3JtYWxpemVkRm9ybWF0XG4gICAgICAgID8geyBsYWJlbDogbm9ybWFsaXplZEZvcm1hdC50b1VwcGVyQ2FzZSgpLCB2YWx1ZTogbm9ybWFsaXplZEZvcm1hdCB9XG4gICAgICAgIDogbnVsbFxuICAgIH0pXG4gIH1cblxuICBhc3luYyBnZXRPdXRwdXRGb3JtYXRzKHVybDogc3RyaW5nKTogUHJvbWlzZTxPdXRwdXRGb3JtYXRzPiB7XG4gICAgaWYgKCF0aGlzLmVuZHBvaW50KSByZXR1cm4ge31cbiAgICBpZiAodGhpcy5lbmRwb2ludCBpbnN0YW5jZW9mIFdmc0VuZHBvaW50KSB7XG4gICAgICB0aGlzLnN1cHBvcnRPZmZzZXQgPSB0aGlzLmVuZHBvaW50LnN1cHBvcnRzU3RhcnRJbmRleCgpXG4gICAgICByZXR1cm4gdGhpcy5lbmRwb2ludC5nZXRTZXJ2aWNlSW5mbygpIGFzIE91dHB1dEZvcm1hdHNcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIChhd2FpdCB0aGlzLmVuZHBvaW50LmdldENvbGxlY3Rpb25JbmZvKFxuICAgICAgICB0aGlzLmZpcnN0Q29sbGVjdGlvblxuICAgICAgKSkgYXMgT3V0cHV0Rm9ybWF0c1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIGNyZWF0ZUVuZHBvaW50KCkge1xuICAgIGlmICghdGhpcy5hcGlCYXNlVXJsIHx8ICF0aGlzLmFjY2Vzc1NlcnZpY2VQcm90b2NvbCkgcmV0dXJuXG4gICAgaWYgKHRoaXMuYWNjZXNzU2VydmljZVByb3RvY29sID09PSAnd2ZzJykge1xuICAgICAgdGhpcy5lbmRwb2ludCA9IG5ldyBXZnNFbmRwb2ludCh0aGlzLmFwaUJhc2VVcmwpXG4gICAgICBhd2FpdCAodGhpcy5lbmRwb2ludCBhcyBXZnNFbmRwb2ludCkuaXNSZWFkeSgpXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZW5kcG9pbnQgPSBuZXcgT2djQXBpRW5kcG9pbnQodGhpcy5hcGlCYXNlVXJsKVxuICAgICAgdGhpcy5maXJzdENvbGxlY3Rpb24gPSAoYXdhaXQgdGhpcy5lbmRwb2ludC5hbGxDb2xsZWN0aW9ucylbMF0ubmFtZVxuICAgIH1cbiAgICB0aGlzLmVuZHBvaW50JC5uZXh0KHRoaXMuZW5kcG9pbnQpXG4gIH1cblxuICBhc3luYyBnZW5lcmF0ZUFwaVF1ZXJ5VXJsKFxuICAgIG9mZnNldDogc3RyaW5nLFxuICAgIGxpbWl0OiBzdHJpbmcsXG4gICAgZm9ybWF0OiBzdHJpbmdcbiAgKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICBpZiAoIXRoaXMuYXBpQmFzZVVybCB8fCAhdGhpcy5lbmRwb2ludCB8fCAhdGhpcy5hcGlGZWF0dXJlVHlwZSkgcmV0dXJuICcnXG5cbiAgICBjb25zdCBvcHRpb25zID0ge1xuICAgICAgb3V0cHV0Rm9ybWF0OiBmb3JtYXQsXG4gICAgICBzdGFydEluZGV4OiBvZmZzZXQgPyBOdW1iZXIob2Zmc2V0KSA6IHVuZGVmaW5lZCxcbiAgICAgIG1heEZlYXR1cmVzOiBsaW1pdCAhPT0gJy0xJyA/IE51bWJlcihsaW1pdCkgOiB1bmRlZmluZWQsXG4gICAgICBsaW1pdDogbGltaXQgIT09ICctMScgPyBOdW1iZXIobGltaXQpIDogbGltaXQgPT09ICctMScgPyAtMSA6IHVuZGVmaW5lZCxcbiAgICAgIG9mZnNldDogb2Zmc2V0ICE9PSAnJyA/IE51bWJlcihvZmZzZXQpIDogdW5kZWZpbmVkLFxuICAgIH1cblxuICAgIGlmICh0aGlzLmVuZHBvaW50IGluc3RhbmNlb2YgV2ZzRW5kcG9pbnQpIHtcbiAgICAgIG9wdGlvbnMubWF4RmVhdHVyZXMgPSBsaW1pdCAhPT0gJy0xJyA/IE51bWJlcihsaW1pdCkgOiB1bmRlZmluZWRcbiAgICAgIHJldHVybiB0aGlzLmVuZHBvaW50LmdldEZlYXR1cmVVcmwodGhpcy5hcGlGZWF0dXJlVHlwZSwgb3B0aW9ucylcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGF3YWl0IHRoaXMuZW5kcG9pbnQuZ2V0Q29sbGVjdGlvbkl0ZW1zVXJsKFxuICAgICAgICB0aGlzLmZpcnN0Q29sbGVjdGlvbixcbiAgICAgICAgb3B0aW9uc1xuICAgICAgKVxuICAgIH1cbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgZ2FwLThcIj5cbiAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgYmctd2hpdGUgcC04IG5nLXN0YXItaW5zZXJ0ZWQgc2hhZG93LXhsIGdhcC04XCI+XG4gICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1yb3dcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LVsxNnB4XSB0ZXh0LWJsYWNrIHRydW5jYXRlIGZvbnQtdGl0bGUgdy0xMS8xMlwiIHRyYW5zbGF0ZT5cbiAgICAgICAgcmVjb3JkLm1ldGFkYXRhLmFwaS5mb3JtLmNyZWF0ZVxuICAgICAgPC9kaXY+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIChjbGljayk9XCJyZXNldFVybCgpXCJcbiAgICAgICAgY2xhc3M9XCJiZy1wcmltYXJ5LW9wYWNpdHktNTAgaW5saW5lLWZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIHB4LTIgcHktMSB0ZXh0LTEzIGZvbnQtbWVkaXVtIGxlYWRpbmctbm9uZSB0ZXh0LXdoaXRlIHJvdW5kZWQgY2FwaXRhbGl6ZSB0ZXh0LXByaW1hcnktbGlnaHRlc3QgaG92ZXI6YmctcHJpbWFyeSB0cmFuc2l0aW9uLWNvbG9yc1wiXG4gICAgICA+XG4gICAgICAgIDxwIGNsYXNzPVwidGV4dC1bMTNweF0gdXBwZXJjYXNlXCIgdHJhbnNsYXRlPlxuICAgICAgICAgIHJlY29yZC5tZXRhZGF0YS5hcGkuZm9ybS5yZXNldFxuICAgICAgICA8L3A+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LXJvdyBmbGV4LXdyYXAganVzdGlmeS1iZXR3ZWVuIGdyb3cgZ2FwLTVcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIGdhcC0zXCI+XG4gICAgICAgIDxwIGNsYXNzPVwidGV4dC1bMTRweF1cIiB0cmFuc2xhdGU+cmVjb3JkLm1ldGFkYXRhLmFwaS5mb3JtLmxpbWl0PC9wPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LXJvdyBpdGVtcy1jZW50ZXIgZ2FwLTJcIj5cbiAgICAgICAgICA8Z24tdWktdGV4dC1pbnB1dFxuICAgICAgICAgICAgY2xhc3M9XCJtci0yIHctMjBcIlxuICAgICAgICAgICAgKHZhbHVlQ2hhbmdlKT1cInNldExpbWl0KCRldmVudClcIlxuICAgICAgICAgICAgW3ZhbHVlXT1cImRpc3BsYXlMaW1pdCQgfCBhc3luY1wiXG4gICAgICAgICAgICBoaW50PVwiXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgPC9nbi11aS10ZXh0LWlucHV0PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgIGNsYXNzPVwibXItMiBjdXJzb3ItcG9pbnRlclwiXG4gICAgICAgICAgICAgIHR5cGU9XCJjaGVja2JveFwiXG4gICAgICAgICAgICAgIFtjaGVja2VkXT1cIm5vTGltaXRDaGVja2VkJCB8IGFzeW5jXCJcbiAgICAgICAgICAgICAgKGNoYW5nZSk9XCJzZXRMaW1pdCgnLTEnKVwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXNtXCIgdHJhbnNsYXRlXG4gICAgICAgICAgICAgID5yZWNvcmQubWV0YWRhdGEuYXBpLmZvcm0ubGltaXQuYWxsPC9zcGFuXG4gICAgICAgICAgICA+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBnYXAtMyByZWxhdGl2ZVwiPlxuICAgICAgICA8cCBjbGFzcz1cInRleHQtc21cIiBbY2xhc3MudGV4dC1ncmF5LTYwMF09XCIhc3VwcG9ydE9mZnNldFwiIHRyYW5zbGF0ZT5cbiAgICAgICAgICByZWNvcmQubWV0YWRhdGEuYXBpLmZvcm0ub2Zmc2V0XG4gICAgICAgIDwvcD5cbiAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgPGduLXVpLXRleHQtaW5wdXRcbiAgICAgICAgICAgIGNsYXNzPVwidy0yMFwiXG4gICAgICAgICAgICBbdmFsdWVdPVwib2Zmc2V0JCB8IGFzeW5jXCJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhc3VwcG9ydE9mZnNldFwiXG4gICAgICAgICAgICAodmFsdWVDaGFuZ2UpPVwic3VwcG9ydE9mZnNldCA/IHNldE9mZnNldCgkZXZlbnQpIDogbnVsbFwiXG4gICAgICAgICAgICBoaW50PVwiXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgPC9nbi11aS10ZXh0LWlucHV0PlxuICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICpuZ0lmPVwiIXN1cHBvcnRPZmZzZXRcIlxuICAgICAgICAgICAgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlciBnYXAtMiB0ZXh0LW9yYW5nZS01MDAgei0xMCBtbC0zXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWRcIlxuICAgICAgICAgICAgICBtYXRUb29sdGlwPVwiTm90IHN1cHBvcnRlZCBvbiB0aGlzIHNlcnZpY2VcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB3YXJuaW5nXG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBnYXAtM1wiPlxuICAgICAgICA8cCBjbGFzcz1cInRleHQtc21cIiB0cmFuc2xhdGU+cmVjb3JkLm1ldGFkYXRhLmFwaS5mb3JtLnR5cGU8L3A+XG4gICAgICAgIDxnbi11aS1kcm9wZG93bi1zZWxlY3RvclxuICAgICAgICAgICNkcm9wZG93blxuICAgICAgICAgIFt0aXRsZV09XCInJ1wiXG4gICAgICAgICAgZXh0cmFCdG5DbGFzcz1cInNlY29uZGFyeSBtaW4tdy1mdWxsICF3LTQwICF0ZXh0LWJsYWNrXCJcbiAgICAgICAgICBbc2hvd1RpdGxlXT1cImZhbHNlXCJcbiAgICAgICAgICBjbGFzcz1cInRleHQtYmxhY2tcIlxuICAgICAgICAgIFtjaG9pY2VzXT1cIm91dHB1dEZvcm1hdHNcIlxuICAgICAgICAgIChzZWxlY3RWYWx1ZSk9XCJzZXRGb3JtYXQoJGV2ZW50KVwiXG4gICAgICAgICAgW3NlbGVjdGVkXT1cImZvcm1hdCQgfCBhc3luY1wiXG4gICAgICAgID48L2duLXVpLWRyb3Bkb3duLXNlbGVjdG9yPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBnYXAtMyBtYi0zXCI+XG4gICAgPGRpdiBjbGFzcz1cInRleHQtc20gdGV4dC1ibGFjayB0cnVuY2F0ZSBmb250LXRpdGxlIHctMTEvMTJcIiB0cmFuc2xhdGU+XG4gICAgICByZWNvcmQubWV0YWRhdGEuYXBpLmZvcm0uY3VzdG9tVXJsXG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImJnLXdoaXRlIHJvdW5kZWQtbGdcIj5cbiAgICAgIDxnbi11aS1jb3B5LXRleHQtYnV0dG9uXG4gICAgICAgIFt0ZXh0XT1cImFwaVF1ZXJ5VXJsJCB8IGFzeW5jXCJcbiAgICAgID48L2duLXVpLWNvcHktdGV4dC1idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -17,7 +17,7 @@ import { MetadataContactComponent } from './metadata-contact/metadata-contact.co
17
17
  import { MetadataCatalogComponent } from './metadata-catalog/metadata-catalog.component';
18
18
  import { MetadataQualityComponent } from './metadata-quality/metadata-quality.component';
19
19
  import { MetadataQualityItemComponent } from './metadata-quality-item/metadata-quality-item.component';
20
- import { SearchResultsErrorComponent } from './search-results-error/search-results-error.component';
20
+ import { ErrorComponent } from './error/error.component';
21
21
  import { PaginationComponent } from './pagination/pagination.component';
22
22
  import { ThumbnailComponent } from './thumbnail/thumbnail.component';
23
23
  import { UiInputsModule } from '../../../../../libs/ui/inputs/src';
@@ -46,7 +46,7 @@ export class UiElementsModule {
46
46
  MetadataCatalogComponent,
47
47
  MetadataQualityComponent,
48
48
  MetadataQualityItemComponent,
49
- SearchResultsErrorComponent,
49
+ ErrorComponent,
50
50
  PaginationComponent,
51
51
  AvatarComponent,
52
52
  UserPreviewComponent,
@@ -76,7 +76,7 @@ export class UiElementsModule {
76
76
  MetadataCatalogComponent,
77
77
  MetadataQualityComponent,
78
78
  MetadataQualityItemComponent,
79
- SearchResultsErrorComponent,
79
+ ErrorComponent,
80
80
  PaginationComponent,
81
81
  ThumbnailComponent,
82
82
  AvatarComponent,
@@ -129,7 +129,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImpor
129
129
  MetadataCatalogComponent,
130
130
  MetadataQualityComponent,
131
131
  MetadataQualityItemComponent,
132
- SearchResultsErrorComponent,
132
+ ErrorComponent,
133
133
  PaginationComponent,
134
134
  AvatarComponent,
135
135
  UserPreviewComponent,
@@ -151,7 +151,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImpor
151
151
  MetadataCatalogComponent,
152
152
  MetadataQualityComponent,
153
153
  MetadataQualityItemComponent,
154
- SearchResultsErrorComponent,
154
+ ErrorComponent,
155
155
  PaginationComponent,
156
156
  ThumbnailComponent,
157
157
  AvatarComponent,
@@ -165,4 +165,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImpor
165
165
  ],
166
166
  }]
167
167
  }] });
168
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktZWxlbWVudHMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9lbGVtZW50cy9zcmMvbGliL3VpLWVsZW1lbnRzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ3hDLE9BQU8sRUFBRSxZQUFZLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUNoRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBQ3RELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFBO0FBQzVELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFBO0FBQ3RFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFBO0FBQy9FLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFBO0FBQy9FLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFBO0FBQy9FLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFBO0FBQ2xGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLCtCQUErQixDQUFBO0FBQ2hFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQTtBQUNwRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUNBQW1DLENBQUE7QUFDbEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBRXJELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHFEQUFxRCxDQUFBO0FBQ2hHLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLCtDQUErQyxDQUFBO0FBQ3hGLE9BQU8sRUFBRSx3QkFB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QzFCLGdCQUFnQjt3QkFDaEIsWUFBWTt3QkFDWixjQUFjO3dCQUNkLFdBQVc7d0JBQ1gsZ0JBQWdCO3dCQUNoQix1QkFBdUI7d0JBQ3ZCLGtCQUFrQjt3QkFDbEIsYUFBYTtxQkFDZDtvQkFDRCxZQUFZLEVBQUU7d0JBQ1oscUJBQXFCO3dCQUNyQixxQkFBcUI7d0JBQ3JCLHFCQUFxQjt3QkFDckIsc0JBQXNCO3dCQUN0QixnQkFBZ0I7d0JBQ2hCLDBCQUEwQjt3QkFDMUIsd0JBQXdCO3dCQUN4Qix3QkFBd0I7d0JBQ3hCLHdCQUF3Qjt3QkFDeEIsNEJBQTRCO3dCQUM1QiwyQkFBMkI7d0JBQzNCLG1CQUFtQjt3QkFDbkIsZUFBZTt3QkFDZixvQkFBb0I7d0JBQ3BCLG9CQUFvQjt3QkFDcEIsMEJBQTBCO3dCQUMxQixpQkFBaUI7d0JBQ2pCLHNCQUFzQjt3QkFDdEIseUJBQXlCO3dCQUN6Qiw0QkFBNEI7cUJBQzdCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxxQkFBcUI7d0JBQ3JCLHFCQUFxQjt3QkFDckIscUJBQXFCO3dCQUNyQixzQkFBc0I7d0JBQ3RCLGdCQUFnQjt3QkFDaEIsMEJBQTBCO3dCQUMxQix3QkFBd0I7d0JBQ3hCLHdCQUF3Qjt3QkFDeEIsd0JBQXdCO3dCQUN4Qiw0QkFBNEI7d0JBQzVCLDJCQUEyQjt3QkFDM0IsbUJBQW1CO3dCQUNuQixrQkFBa0I7d0JBQ2xCLGVBQWU7d0JBQ2Ysb0JBQW9CO3dCQUNwQiwwQkFBMEI7d0JBQzFCLGlCQUFpQjt3QkFDakIsc0JBQXNCO3dCQUN0Qix1QkFBdUI7d0JBQ3ZCLHlCQUF5Qjt3QkFDekIsNEJBQTRCO3FCQUM3QjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IENvbW1vbk1vZHVsZSwgTmdPcHRpbWl6ZWRJbWFnZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcbmltcG9ydCB7IFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcidcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJ1xuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnXG5pbXBvcnQgeyBVdGlsU2hhcmVkTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbGlicy91dGlsL3NoYXJlZC9zcmMnXG5pbXBvcnQgeyBNZXRhZGF0YUluZm9Db21wb25lbnQgfSBmcm9tICcuL21ldGFkYXRhLWluZm8vbWV0YWRhdGEtaW5mby5jb21wb25lbnQnXG5pbXBvcnQgeyBDb250ZW50R2hvc3RDb21wb25lbnQgfSBmcm9tICcuL2NvbnRlbnQtZ2hvc3QvY29udGVudC1naG9zdC5jb21wb25lbnQnXG5pbXBvcnQgeyBEb3dubG9hZEl0ZW1Db21wb25lbnQgfSBmcm9tICcuL2Rvd25sb2FkLWl0ZW0vZG93bmxvYWQtaXRlbS5jb21wb25lbnQnXG5pbXBvcnQgeyBEb3dubG9hZHNMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi9kb3dubG9hZHMtbGlzdC9kb3dubG9hZHMtbGlzdC5jb21wb25lbnQnXG5pbXBvcnQgeyBBcGlDYXJkQ29tcG9uZW50IH0gZnJvbSAnLi9hcGktY2FyZC9hcGktY2FyZC5jb21wb25lbnQnXG5pbXBvcnQgeyBVaVdpZGdldHNNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9saWJzL3VpL3dpZGdldHMvc3JjJ1xuaW1wb3J0IHsgVWlMYXlvdXRNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9saWJzL3VpL2xheW91dC9zcmMnXG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJ1xuaW1wb3J0IHsgTGlua0NhcmRDb21wb25lbnQgfSBmcm9tICcuL2xpbmstY2FyZC9saW5rLWNhcmQuY29tcG9uZW50J1xuaW1wb3J0IHsgUmVsYXRlZFJlY29yZENhcmRDb21wb25lbnQgfSBmcm9tICcuL3JlbGF0ZWQtcmVjb3JkLWNhcmQvcmVsYXRlZC1yZWNvcmQtY2FyZC5jb21wb25lbnQnXG5pbXBvcnQgeyBNZXRhZGF0YUNvbnRhY3RDb21wb25lbnQgfSBmcm9tICcuL21ldGFkYXRhLWNvbnRhY3QvbWV0YWRhdGEtY29udGFjdC5jb21wb25lbnQnXG5pbXBvcnQgeyBNZXRhZGF0YUNhdGFsb2dDb21wb25lbnQgfSBmcm9tICcuL21ldGFkYXRhLWNhdGFsb2cvbWV0YWRhdGEtY2F0YWxvZy5jb21wb25lbnQnXG5pbXBvcnQgeyBNZXRhZGF0YVF1YWxpdHlDb21wb25lbnQgfSBmcm9tICcuL21ldGFkYXRhLXF1YWxpdHkvbWV0YWRhdGEtcXVhbGl0eS5jb21wb25lbnQnXG5pbXBvcnQgeyBNZXRhZGF0YVF1YWxpdHlJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9tZXRhZGF0YS1xdWFsaXR5LWl0ZW0vbWV0YWRhdGEtcXVhbGl0eS1pdGVtLmNvbXBvbmVudCdcbmltcG9ydCB7IFNlYXJjaFJlc3VsdHNFcnJvckNvbXBvbmVudCB9IGZyb20gJy4vc2VhcmNoLXJlc3VsdHMtZXJyb3Ivc2VhcmNoLXJlc3VsdHMtZXJyb3IuY29tcG9uZW50J1xuaW1wb3J0IHsgUGFnaW5hdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vcGFnaW5hdGlvbi9wYWdpbmF0aW9uLmNvbXBvbmVudCdcbmltcG9ydCB7IFRodW1ibmFpbENvbXBvbmVudCB9IGZyb20gJy4vdGh1bWJuYWlsL3RodW1ibmFpbC5jb21wb25lbnQnXG5pbXBvcnQgeyBVaUlucHV0c01vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvaW5wdXRzL3NyYydcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnXG5pbXBvcnQgeyBBdmF0YXJDb21wb25lbnQgfSBmcm9tICcuL2F2YXRhci9hdmF0YXIuY29tcG9uZW50J1xuaW1wb3J0IHsgVXNlclByZXZpZXdDb21wb25lbnQgfSBmcm9tICcuL3VzZXItcHJldmlldy91c2VyLXByZXZpZXcuY29tcG9uZW50J1xuaW1wb3J0IHsgR25VaUxpbmtpZnlEaXJlY3RpdmUgfSBmcm9tICcuL21ldGFkYXRhLWluZm8vbGlua2lmeS5kaXJlY3RpdmUnXG5pbXBvcnQgeyBQYWdpbmF0aW9uQnV0dG9uc0NvbXBvbmVudCB9IGZyb20gJy4vcGFnaW5hdGlvbi1idXR0b25zL3BhZ2luYXRpb24tYnV0dG9ucy5jb21wb25lbnQnXG5pbXBvcnQgeyBNYXhMaW5lc0NvbXBvbmVudCB9IGZyb20gJy4vbWF4LWxpbmVzL21heC1saW5lcy5jb21wb25lbnQnXG5pbXBvcnQgeyBSZWNvcmRBcGlGb3JtQ29tcG9uZW50IH0gZnJvbSAnLi9yZWNvcmQtYXBpLWZvcm0vcmVjb3JkLWFwaS1mb3JtLmNvbXBvbmVudCdcbmltcG9ydCB7IE1hcmtkb3duUGFyc2VyQ29tcG9uZW50IH0gZnJvbSAnLi9tYXJrZG93bi1wYXJzZXIvbWFya2Rvd24tcGFyc2VyLmNvbXBvbmVudCdcbmltcG9ydCB7IEltYWdlT3ZlcmxheVByZXZpZXdDb21wb25lbnQgfSBmcm9tICcuL2ltYWdlLW92ZXJsYXktcHJldmlldy9pbWFnZS1vdmVybGF5LXByZXZpZXcuY29tcG9uZW50J1xuaW1wb3J0IHsgVXNlckZlZWRiYWNrSXRlbUNvbXBvbmVudCB9IGZyb20gJy4vdXNlci1mZWVkYmFjay1pdGVtL3VzZXItZmVlZGJhY2staXRlbS5jb21wb25lbnQnXG5pbXBvcnQgeyBUaW1lU2luY2VQaXBlIH0gZnJvbSAnLi91c2VyLWZlZWRiYWNrLWl0ZW0vdGltZS1zaW5jZS5waXBlJ1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgTWF0VG9vbHRpcE1vZHVsZSxcbiAgICBVaVdpZGdldHNNb2R1bGUsXG4gICAgVWlMYXlvdXRNb2R1bGUsXG4gICAgVHJhbnNsYXRlTW9kdWxlLmZvckNoaWxkKCksXG4gICAgVXRpbFNoYXJlZE1vZHVsZSxcbiAgICBSb3V0ZXJNb2R1bGUsXG4gICAgVWlJbnB1dHNNb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgTmdPcHRpbWl6ZWRJbWFnZSxcbiAgICBNYXJrZG93blBhcnNlckNvbXBvbmVudCxcbiAgICBUaHVtYm5haWxDb21wb25lbnQsXG4gICAgVGltZVNpbmNlUGlwZSxcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgTWV0YWRhdGFJbmZvQ29tcG9uZW50LFxuICAgIENvbnRlbnRHaG9zdENvbXBvbmVudCxcbiAgICBEb3dubG9hZEl0ZW1Db21wb25lbnQsXG4gICAgRG93bmxvYWRzTGlzdENvbXBvbmVudCxcbiAgICBBcGlDYXJkQ29tcG9uZW50LFxuICAgIFJlbGF0ZWRSZWNvcmRDYXJkQ29tcG9uZW50LFxuICAgIE1ldGFkYXRhQ29udGFjdENvbXBvbmVudCxcbiAgICBNZXRhZGF0YUNhdGFsb2dDb21wb25lbnQsXG4gICAgTWV0YWRhdGFRdWFsaXR5Q29tcG9uZW50LFxuICAgIE1ldGFkYXRhUXVhbGl0eUl0ZW1Db21wb25lbnQsXG4gICAgU2VhcmNoUmVzdWx0c0Vycm9yQ29tcG9uZW50LFxuICAgIFBhZ2luYXRpb25Db21wb25lbnQsXG4gICAgQXZhdGFyQ29tcG9uZW50LFxuICAgIFVzZXJQcmV2aWV3Q29tcG9uZW50LFxuICAgIEduVWlMaW5raWZ5RGlyZWN0aXZlLFxuICAgIFBhZ2luYXRpb25CdXR0b25zQ29tcG9uZW50LFxuICAgIE1heExpbmVzQ29tcG9uZW50LFxuICAgIFJlY29yZEFwaUZvcm1Db21wb25lbnQsXG4gICAgVXNlckZlZWRiYWNrSXRlbUNvbXBvbmVudCxcbiAgICBJbWFnZU92ZXJsYXlQcmV2aWV3Q29tcG9uZW50LFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgTWV0YWRhdGFJbmZvQ29tcG9uZW50LFxuICAgIENvbnRlbnRHaG9zdENvbXBvbmVudCxcbiAgICBEb3dubG9hZEl0ZW1Db21wb25lbnQsXG4gICAgRG93bmxvYWRzTGlzdENvbXBvbmVudCxcbiAgICBBcGlDYXJkQ29tcG9uZW50LFxuICAgIFJlbGF0ZWRSZWNvcmRDYXJkQ29tcG9uZW50LFxuICAgIE1ldGFkYXRhQ29udGFjdENvbXBvbmVudCxcbiAgICBNZXRhZGF0YUNhdGFsb2dDb21wb25lbnQsXG4gICAgTWV0YWRhdGFRdWFsaXR5Q29tcG9uZW50LFxuICAgIE1ldGFkYXRhUXVhbGl0eUl0ZW1Db21wb25lbnQsXG4gICAgU2VhcmNoUmVzdWx0c0Vycm9yQ29tcG9uZW50LFxuICAgIFBhZ2luYXRpb25Db21wb25lbnQsXG4gICAgVGh1bWJuYWlsQ29tcG9uZW50LFxuICAgIEF2YXRhckNvbXBvbmVudCxcbiAgICBVc2VyUHJldmlld0NvbXBvbmVudCxcbiAgICBQYWdpbmF0aW9uQnV0dG9uc0NvbXBvbmVudCxcbiAgICBNYXhMaW5lc0NvbXBvbmVudCxcbiAgICBSZWNvcmRBcGlGb3JtQ29tcG9uZW50LFxuICAgIE1hcmtkb3duUGFyc2VyQ29tcG9uZW50LFxuICAgIFVzZXJGZWVkYmFja0l0ZW1Db21wb25lbnQsXG4gICAgSW1hZ2VPdmVybGF5UHJldmlld0NvbXBvbmVudCxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVWlFbGVtZW50c01vZHVsZSB7fVxuIl19
168
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktZWxlbWVudHMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9lbGVtZW50cy9zcmMvbGliL3VpLWVsZW1lbnRzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ3hDLE9BQU8sRUFBRSxZQUFZLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUNoRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBQ3RELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFBO0FBQzVELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFBO0FBQ3RFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFBO0FBQy9FLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFBO0FBQy9FLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFBO0FBQy9FLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFBO0FBQ2xGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLCtCQUErQixDQUFBO0FBQ2hFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQTtBQUNwRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUNBQW1DLENBQUE7QUFDbEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQ3JELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHFEQUFxRCxDQUFBO0FBQ2hHLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLCtDQUErQyxDQUFBO0FBQ3hGLE9BQU8sRUFBRSx3QkFB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Z0I7d0JBQ2hCLFlBQVk7d0JBQ1osY0FBYzt3QkFDZCxXQUFXO3dCQUNYLGdCQUFnQjt3QkFDaEIsdUJBQXVCO3dCQUN2QixrQkFBa0I7d0JBQ2xCLGFBQWE7cUJBQ2Q7b0JBQ0QsWUFBWSxFQUFFO3dCQUNaLHFCQUFxQjt3QkFDckIscUJBQXFCO3dCQUNyQixxQkFBcUI7d0JBQ3JCLHNCQUFzQjt3QkFDdEIsZ0JBQWdCO3dCQUNoQiwwQkFBMEI7d0JBQzFCLHdCQUF3Qjt3QkFDeEIsd0JBQXdCO3dCQUN4Qix3QkFBd0I7d0JBQ3hCLDRCQUE0Qjt3QkFDNUIsY0FBYzt3QkFDZCxtQkFBbUI7d0JBQ25CLGVBQWU7d0JBQ2Ysb0JBQW9CO3dCQUNwQixvQkFBb0I7d0JBQ3BCLDBCQUEwQjt3QkFDMUIsaUJBQWlCO3dCQUNqQixzQkFBc0I7d0JBQ3RCLHlCQUF5Qjt3QkFDekIsNEJBQTRCO3FCQUM3QjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AscUJBQXFCO3dCQUNyQixxQkFBcUI7d0JBQ3JCLHFCQUFxQjt3QkFDckIsc0JBQXNCO3dCQUN0QixnQkFBZ0I7d0JBQ2hCLDBCQUEwQjt3QkFDMUIsd0JBQXdCO3dCQUN4Qix3QkFBd0I7d0JBQ3hCLHdCQUF3Qjt3QkFDeEIsNEJBQTRCO3dCQUM1QixjQUFjO3dCQUNkLG1CQUFtQjt3QkFDbkIsa0JBQWtCO3dCQUNsQixlQUFlO3dCQUNmLG9CQUFvQjt3QkFDcEIsMEJBQTBCO3dCQUMxQixpQkFBaUI7d0JBQ2pCLHNCQUFzQjt3QkFDdEIsdUJBQXVCO3dCQUN2Qix5QkFBeUI7d0JBQ3pCLDRCQUE0QjtxQkFDN0I7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUsIE5nT3B0aW1pemVkSW1hZ2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBSb3V0ZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbidcbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJ1xuaW1wb3J0IHsgVXRpbFNoYXJlZE1vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2xpYnMvdXRpbC9zaGFyZWQvc3JjJ1xuaW1wb3J0IHsgTWV0YWRhdGFJbmZvQ29tcG9uZW50IH0gZnJvbSAnLi9tZXRhZGF0YS1pbmZvL21ldGFkYXRhLWluZm8uY29tcG9uZW50J1xuaW1wb3J0IHsgQ29udGVudEdob3N0Q29tcG9uZW50IH0gZnJvbSAnLi9jb250ZW50LWdob3N0L2NvbnRlbnQtZ2hvc3QuY29tcG9uZW50J1xuaW1wb3J0IHsgRG93bmxvYWRJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9kb3dubG9hZC1pdGVtL2Rvd25sb2FkLWl0ZW0uY29tcG9uZW50J1xuaW1wb3J0IHsgRG93bmxvYWRzTGlzdENvbXBvbmVudCB9IGZyb20gJy4vZG93bmxvYWRzLWxpc3QvZG93bmxvYWRzLWxpc3QuY29tcG9uZW50J1xuaW1wb3J0IHsgQXBpQ2FyZENvbXBvbmVudCB9IGZyb20gJy4vYXBpLWNhcmQvYXBpLWNhcmQuY29tcG9uZW50J1xuaW1wb3J0IHsgVWlXaWRnZXRzTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbGlicy91aS93aWRnZXRzL3NyYydcbmltcG9ydCB7IFVpTGF5b3V0TW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbGlicy91aS9sYXlvdXQvc3JjJ1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcbmltcG9ydCB7IFJlbGF0ZWRSZWNvcmRDYXJkQ29tcG9uZW50IH0gZnJvbSAnLi9yZWxhdGVkLXJlY29yZC1jYXJkL3JlbGF0ZWQtcmVjb3JkLWNhcmQuY29tcG9uZW50J1xuaW1wb3J0IHsgTWV0YWRhdGFDb250YWN0Q29tcG9uZW50IH0gZnJvbSAnLi9tZXRhZGF0YS1jb250YWN0L21ldGFkYXRhLWNvbnRhY3QuY29tcG9uZW50J1xuaW1wb3J0IHsgTWV0YWRhdGFDYXRhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi9tZXRhZGF0YS1jYXRhbG9nL21ldGFkYXRhLWNhdGFsb2cuY29tcG9uZW50J1xuaW1wb3J0IHsgTWV0YWRhdGFRdWFsaXR5Q29tcG9uZW50IH0gZnJvbSAnLi9tZXRhZGF0YS1xdWFsaXR5L21ldGFkYXRhLXF1YWxpdHkuY29tcG9uZW50J1xuaW1wb3J0IHsgTWV0YWRhdGFRdWFsaXR5SXRlbUNvbXBvbmVudCB9IGZyb20gJy4vbWV0YWRhdGEtcXVhbGl0eS1pdGVtL21ldGFkYXRhLXF1YWxpdHktaXRlbS5jb21wb25lbnQnXG5pbXBvcnQgeyBFcnJvckNvbXBvbmVudCB9IGZyb20gJy4vZXJyb3IvZXJyb3IuY29tcG9uZW50J1xuaW1wb3J0IHsgUGFnaW5hdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vcGFnaW5hdGlvbi9wYWdpbmF0aW9uLmNvbXBvbmVudCdcbmltcG9ydCB7IFRodW1ibmFpbENvbXBvbmVudCB9IGZyb20gJy4vdGh1bWJuYWlsL3RodW1ibmFpbC5jb21wb25lbnQnXG5pbXBvcnQgeyBVaUlucHV0c01vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvaW5wdXRzL3NyYydcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnXG5pbXBvcnQgeyBBdmF0YXJDb21wb25lbnQgfSBmcm9tICcuL2F2YXRhci9hdmF0YXIuY29tcG9uZW50J1xuaW1wb3J0IHsgVXNlclByZXZpZXdDb21wb25lbnQgfSBmcm9tICcuL3VzZXItcHJldmlldy91c2VyLXByZXZpZXcuY29tcG9uZW50J1xuaW1wb3J0IHsgR25VaUxpbmtpZnlEaXJlY3RpdmUgfSBmcm9tICcuL21ldGFkYXRhLWluZm8vbGlua2lmeS5kaXJlY3RpdmUnXG5pbXBvcnQgeyBQYWdpbmF0aW9uQnV0dG9uc0NvbXBvbmVudCB9IGZyb20gJy4vcGFnaW5hdGlvbi1idXR0b25zL3BhZ2luYXRpb24tYnV0dG9ucy5jb21wb25lbnQnXG5pbXBvcnQgeyBNYXhMaW5lc0NvbXBvbmVudCB9IGZyb20gJy4vbWF4LWxpbmVzL21heC1saW5lcy5jb21wb25lbnQnXG5pbXBvcnQgeyBSZWNvcmRBcGlGb3JtQ29tcG9uZW50IH0gZnJvbSAnLi9yZWNvcmQtYXBpLWZvcm0vcmVjb3JkLWFwaS1mb3JtLmNvbXBvbmVudCdcbmltcG9ydCB7IE1hcmtkb3duUGFyc2VyQ29tcG9uZW50IH0gZnJvbSAnLi9tYXJrZG93bi1wYXJzZXIvbWFya2Rvd24tcGFyc2VyLmNvbXBvbmVudCdcbmltcG9ydCB7IEltYWdlT3ZlcmxheVByZXZpZXdDb21wb25lbnQgfSBmcm9tICcuL2ltYWdlLW92ZXJsYXktcHJldmlldy9pbWFnZS1vdmVybGF5LXByZXZpZXcuY29tcG9uZW50J1xuaW1wb3J0IHsgVXNlckZlZWRiYWNrSXRlbUNvbXBvbmVudCB9IGZyb20gJy4vdXNlci1mZWVkYmFjay1pdGVtL3VzZXItZmVlZGJhY2staXRlbS5jb21wb25lbnQnXG5pbXBvcnQgeyBUaW1lU2luY2VQaXBlIH0gZnJvbSAnLi91c2VyLWZlZWRiYWNrLWl0ZW0vdGltZS1zaW5jZS5waXBlJ1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgTWF0VG9vbHRpcE1vZHVsZSxcbiAgICBVaVdpZGdldHNNb2R1bGUsXG4gICAgVWlMYXlvdXRNb2R1bGUsXG4gICAgVHJhbnNsYXRlTW9kdWxlLmZvckNoaWxkKCksXG4gICAgVXRpbFNoYXJlZE1vZHVsZSxcbiAgICBSb3V0ZXJNb2R1bGUsXG4gICAgVWlJbnB1dHNNb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgTmdPcHRpbWl6ZWRJbWFnZSxcbiAgICBNYXJrZG93blBhcnNlckNvbXBvbmVudCxcbiAgICBUaHVtYm5haWxDb21wb25lbnQsXG4gICAgVGltZVNpbmNlUGlwZSxcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgTWV0YWRhdGFJbmZvQ29tcG9uZW50LFxuICAgIENvbnRlbnRHaG9zdENvbXBvbmVudCxcbiAgICBEb3dubG9hZEl0ZW1Db21wb25lbnQsXG4gICAgRG93bmxvYWRzTGlzdENvbXBvbmVudCxcbiAgICBBcGlDYXJkQ29tcG9uZW50LFxuICAgIFJlbGF0ZWRSZWNvcmRDYXJkQ29tcG9uZW50LFxuICAgIE1ldGFkYXRhQ29udGFjdENvbXBvbmVudCxcbiAgICBNZXRhZGF0YUNhdGFsb2dDb21wb25lbnQsXG4gICAgTWV0YWRhdGFRdWFsaXR5Q29tcG9uZW50LFxuICAgIE1ldGFkYXRhUXVhbGl0eUl0ZW1Db21wb25lbnQsXG4gICAgRXJyb3JDb21wb25lbnQsXG4gICAgUGFnaW5hdGlvbkNvbXBvbmVudCxcbiAgICBBdmF0YXJDb21wb25lbnQsXG4gICAgVXNlclByZXZpZXdDb21wb25lbnQsXG4gICAgR25VaUxpbmtpZnlEaXJlY3RpdmUsXG4gICAgUGFnaW5hdGlvbkJ1dHRvbnNDb21wb25lbnQsXG4gICAgTWF4TGluZXNDb21wb25lbnQsXG4gICAgUmVjb3JkQXBpRm9ybUNvbXBvbmVudCxcbiAgICBVc2VyRmVlZGJhY2tJdGVtQ29tcG9uZW50LFxuICAgIEltYWdlT3ZlcmxheVByZXZpZXdDb21wb25lbnQsXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBNZXRhZGF0YUluZm9Db21wb25lbnQsXG4gICAgQ29udGVudEdob3N0Q29tcG9uZW50LFxuICAgIERvd25sb2FkSXRlbUNvbXBvbmVudCxcbiAgICBEb3dubG9hZHNMaXN0Q29tcG9uZW50LFxuICAgIEFwaUNhcmRDb21wb25lbnQsXG4gICAgUmVsYXRlZFJlY29yZENhcmRDb21wb25lbnQsXG4gICAgTWV0YWRhdGFDb250YWN0Q29tcG9uZW50LFxuICAgIE1ldGFkYXRhQ2F0YWxvZ0NvbXBvbmVudCxcbiAgICBNZXRhZGF0YVF1YWxpdHlDb21wb25lbnQsXG4gICAgTWV0YWRhdGFRdWFsaXR5SXRlbUNvbXBvbmVudCxcbiAgICBFcnJvckNvbXBvbmVudCxcbiAgICBQYWdpbmF0aW9uQ29tcG9uZW50LFxuICAgIFRodW1ibmFpbENvbXBvbmVudCxcbiAgICBBdmF0YXJDb21wb25lbnQsXG4gICAgVXNlclByZXZpZXdDb21wb25lbnQsXG4gICAgUGFnaW5hdGlvbkJ1dHRvbnNDb21wb25lbnQsXG4gICAgTWF4TGluZXNDb21wb25lbnQsXG4gICAgUmVjb3JkQXBpRm9ybUNvbXBvbmVudCxcbiAgICBNYXJrZG93blBhcnNlckNvbXBvbmVudCxcbiAgICBVc2VyRmVlZGJhY2tJdGVtQ29tcG9uZW50LFxuICAgIEltYWdlT3ZlcmxheVByZXZpZXdDb21wb25lbnQsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFVpRWxlbWVudHNNb2R1bGUge31cbiJdfQ==