@spicainternational/ngx-sds-components 5.10.4 → 5.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. package/esm2020/public-api.mjs +3 -1
  2. package/esm2020/src/lib/highlight-text/directives/highlight-text.directive.mjs +60 -0
  3. package/esm2020/src/lib/highlight-text/directives/index.mjs +2 -0
  4. package/esm2020/src/lib/highlight-text/highlight-text.module.mjs +31 -0
  5. package/esm2020/src/lib/highlight-text/pipes/highlight-text.pipe.mjs +29 -0
  6. package/esm2020/src/lib/highlight-text/pipes/index.mjs +2 -0
  7. package/esm2020/src/lib/highlight-text/public-api.mjs +4 -0
  8. package/esm2020/src/lib/highlight-text/spicainternational-ngx-sds-components-src-lib-highlight-text.mjs +5 -0
  9. package/esm2020/src/lib/highlight-text/utils/highlight-text.utils.mjs +97 -0
  10. package/esm2020/src/lib/highlight-text/utils/index.mjs +2 -0
  11. package/esm2020/src/lib/message/message.component.mjs +41 -0
  12. package/esm2020/src/lib/message/message.module.mjs +30 -0
  13. package/esm2020/src/lib/message/public-api.mjs +3 -0
  14. package/esm2020/src/lib/message/spicainternational-ngx-sds-components-src-lib-message.mjs +5 -0
  15. package/esm2020/src/lib/modal/dialog/dialog.component.mjs +8 -3
  16. package/esm2020/src/lib/modal/modal.component.mjs +6 -2
  17. package/esm2020/src/lib/navigation/navigation-user-profile/navigation-user-profile.component.mjs +50 -0
  18. package/esm2020/src/lib/navigation/navigation.module.mjs +22 -8
  19. package/esm2020/src/lib/navigation/public-api.mjs +2 -1
  20. package/fesm2015/spicainternational-ngx-sds-components-src-lib-highlight-text.mjs +217 -0
  21. package/fesm2015/spicainternational-ngx-sds-components-src-lib-highlight-text.mjs.map +1 -0
  22. package/fesm2015/spicainternational-ngx-sds-components-src-lib-message.mjs +75 -0
  23. package/fesm2015/spicainternational-ngx-sds-components-src-lib-message.mjs.map +1 -0
  24. package/fesm2015/spicainternational-ngx-sds-components-src-lib-modal.mjs +12 -3
  25. package/fesm2015/spicainternational-ngx-sds-components-src-lib-modal.mjs.map +1 -1
  26. package/fesm2015/spicainternational-ngx-sds-components-src-lib-navigation.mjs +69 -9
  27. package/fesm2015/spicainternational-ngx-sds-components-src-lib-navigation.mjs.map +1 -1
  28. package/fesm2015/spicainternational-ngx-sds-components.mjs +2 -0
  29. package/fesm2015/spicainternational-ngx-sds-components.mjs.map +1 -1
  30. package/fesm2020/spicainternational-ngx-sds-components-src-lib-highlight-text.mjs +214 -0
  31. package/fesm2020/spicainternational-ngx-sds-components-src-lib-highlight-text.mjs.map +1 -0
  32. package/fesm2020/spicainternational-ngx-sds-components-src-lib-message.mjs +75 -0
  33. package/fesm2020/spicainternational-ngx-sds-components-src-lib-message.mjs.map +1 -0
  34. package/fesm2020/spicainternational-ngx-sds-components-src-lib-modal.mjs +12 -3
  35. package/fesm2020/spicainternational-ngx-sds-components-src-lib-modal.mjs.map +1 -1
  36. package/fesm2020/spicainternational-ngx-sds-components-src-lib-navigation.mjs +69 -9
  37. package/fesm2020/spicainternational-ngx-sds-components-src-lib-navigation.mjs.map +1 -1
  38. package/fesm2020/spicainternational-ngx-sds-components.mjs +2 -0
  39. package/fesm2020/spicainternational-ngx-sds-components.mjs.map +1 -1
  40. package/package.json +20 -4
  41. package/public-api.d.ts +2 -0
  42. package/src/lib/highlight-text/directives/highlight-text.directive.d.ts +33 -0
  43. package/src/lib/highlight-text/directives/index.d.ts +1 -0
  44. package/src/lib/highlight-text/highlight-text.module.d.ts +9 -0
  45. package/src/lib/highlight-text/package.json +10 -0
  46. package/src/lib/highlight-text/pipes/highlight-text.pipe.d.ts +11 -0
  47. package/src/lib/highlight-text/pipes/index.d.ts +1 -0
  48. package/src/lib/highlight-text/public-api.d.ts +3 -0
  49. package/src/lib/highlight-text/spicainternational-ngx-sds-components-src-lib-highlight-text.d.ts +5 -0
  50. package/src/lib/highlight-text/utils/highlight-text.utils.d.ts +23 -0
  51. package/src/lib/highlight-text/utils/index.d.ts +1 -0
  52. package/src/lib/message/message.component.d.ts +18 -0
  53. package/src/lib/message/message.module.d.ts +9 -0
  54. package/src/lib/message/package.json +10 -0
  55. package/src/lib/message/public-api.d.ts +2 -0
  56. package/src/lib/message/spicainternational-ngx-sds-components-src-lib-message.d.ts +5 -0
  57. package/src/lib/modal/dialog/dialog.component.d.ts +1 -0
  58. package/src/lib/modal/modal.component.d.ts +2 -1
  59. package/src/lib/navigation/navigation-user-profile/navigation-user-profile.component.d.ts +19 -0
  60. package/src/lib/navigation/navigation.module.d.ts +8 -5
  61. package/src/lib/navigation/public-api.d.ts +1 -0
@@ -11,7 +11,9 @@ export * from '@spicainternational/ngx-sds-components/src/lib/date-picker';
11
11
  export * from '@spicainternational/ngx-sds-components/src/lib/date-pipes';
12
12
  export * from '@spicainternational/ngx-sds-components/src/lib/duration-pipe';
13
13
  export * from '@spicainternational/ngx-sds-components/src/lib/duration-box';
14
+ export * from '@spicainternational/ngx-sds-components/src/lib/highlight-text';
14
15
  export * from '@spicainternational/ngx-sds-components/src/lib/layout';
16
+ export * from '@spicainternational/ngx-sds-components/src/lib/message';
15
17
  export * from '@spicainternational/ngx-sds-components/src/lib/modal';
16
18
  export * from '@spicainternational/ngx-sds-components/src/lib/navigation';
17
19
  export * from '@spicainternational/ngx-sds-components/src/lib/page-header';
@@ -20,4 +22,4 @@ export * from '@spicainternational/ngx-sds-components/src/lib/quick-info';
20
22
  export * from '@spicainternational/ngx-sds-components/src/lib/segmented-control';
21
23
  export * from '@spicainternational/ngx-sds-components/src/lib/side-bar';
22
24
  export * from '@spicainternational/ngx-sds-components/src/lib/tooltip';
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25neC1zZHMtY29tcG9uZW50cy9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsNkRBQTZELENBQUM7QUFDNUUsY0FBYyx1REFBdUQsQ0FBQztBQUN0RSxjQUFjLHNEQUFzRCxDQUFDO0FBQ3JFLGNBQWMsd0RBQXdELENBQUM7QUFDdkUsY0FBYyw2REFBNkQsQ0FBQztBQUM1RSxjQUFjLGdFQUFnRSxDQUFDO0FBQy9FLGNBQWMsNERBQTRELENBQUM7QUFDM0UsY0FBYywyREFBMkQsQ0FBQztBQUMxRSxjQUFjLDhEQUE4RCxDQUFDO0FBQzdFLGNBQWMsNkRBQTZELENBQUM7QUFDNUUsY0FBYyx1REFBdUQsQ0FBQztBQUN0RSxjQUFjLHNEQUFzRCxDQUFDO0FBQ3JFLGNBQWMsMkRBQTJELENBQUM7QUFDMUUsY0FBYyw0REFBNEQsQ0FBQztBQUMzRSxjQUFjLHFEQUFxRCxDQUFDO0FBQ3BFLGNBQWMsMkRBQTJELENBQUM7QUFDMUUsY0FBYyxrRUFBa0UsQ0FBQztBQUNqRixjQUFjLHlEQUF5RCxDQUFDO0FBQ3hFLGNBQWMsd0RBQXdELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2Ygbmd4LXNkcy1jb21wb25lbnRzXHJcbiAqL1xyXG5cclxuZXhwb3J0ICogZnJvbSAnQHNwaWNhaW50ZXJuYXRpb25hbC9uZ3gtc2RzLWNvbXBvbmVudHMvc3JjL2xpYi9hcHAtc3dpdGNoZXInO1xyXG5leHBvcnQgKiBmcm9tICdAc3BpY2FpbnRlcm5hdGlvbmFsL25neC1zZHMtY29tcG9uZW50cy9zcmMvbGliL2F2YXRhcic7XHJcbmV4cG9ydCAqIGZyb20gJ0BzcGljYWludGVybmF0aW9uYWwvbmd4LXNkcy1jb21wb25lbnRzL3NyYy9saWIvYmFkZ2UnO1xyXG5leHBvcnQgKiBmcm9tICdAc3BpY2FpbnRlcm5hdGlvbmFsL25neC1zZHMtY29tcG9uZW50cy9zcmMvbGliL2NhbGxvdXQnO1xyXG5leHBvcnQgKiBmcm9tICdAc3BpY2FpbnRlcm5hdGlvbmFsL25neC1zZHMtY29tcG9uZW50cy9zcmMvbGliL2NvbG9yLXBpY2tlcic7XHJcbmV4cG9ydCAqIGZyb20gJ0BzcGljYWludGVybmF0aW9uYWwvbmd4LXNkcy1jb21wb25lbnRzL3NyYy9saWIvZXhwYW5zaW9uLXBhbmVsJztcclxuZXhwb3J0ICogZnJvbSAnQHNwaWNhaW50ZXJuYXRpb25hbC9uZ3gtc2RzLWNvbXBvbmVudHMvc3JjL2xpYi9kYXRlLXBpY2tlcic7XHJcbmV4cG9ydCAqIGZyb20gJ0BzcGljYWludGVybmF0aW9uYWwvbmd4LXNkcy1jb21wb25lbnRzL3NyYy9saWIvZGF0ZS1waXBlcyc7XHJcbmV4cG9ydCAqIGZyb20gJ0BzcGljYWludGVybmF0aW9uYWwvbmd4LXNkcy1jb21wb25lbnRzL3NyYy9saWIvZHVyYXRpb24tcGlwZSc7XHJcbmV4cG9ydCAqIGZyb20gJ0BzcGljYWludGVybmF0aW9uYWwvbmd4LXNkcy1jb21wb25lbnRzL3NyYy9saWIvZHVyYXRpb24tYm94JztcclxuZXhwb3J0ICogZnJvbSAnQHNwaWNhaW50ZXJuYXRpb25hbC9uZ3gtc2RzLWNvbXBvbmVudHMvc3JjL2xpYi9sYXlvdXQnO1xyXG5leHBvcnQgKiBmcm9tICdAc3BpY2FpbnRlcm5hdGlvbmFsL25neC1zZHMtY29tcG9uZW50cy9zcmMvbGliL21vZGFsJztcclxuZXhwb3J0ICogZnJvbSAnQHNwaWNhaW50ZXJuYXRpb25hbC9uZ3gtc2RzLWNvbXBvbmVudHMvc3JjL2xpYi9uYXZpZ2F0aW9uJztcclxuZXhwb3J0ICogZnJvbSAnQHNwaWNhaW50ZXJuYXRpb25hbC9uZ3gtc2RzLWNvbXBvbmVudHMvc3JjL2xpYi9wYWdlLWhlYWRlcic7XHJcbmV4cG9ydCAqIGZyb20gJ0BzcGljYWludGVybmF0aW9uYWwvbmd4LXNkcy1jb21wb25lbnRzL3NyYy9saWIvcGFuZSc7XHJcbmV4cG9ydCAqIGZyb20gJ0BzcGljYWludGVybmF0aW9uYWwvbmd4LXNkcy1jb21wb25lbnRzL3NyYy9saWIvcXVpY2staW5mbyc7XHJcbmV4cG9ydCAqIGZyb20gJ0BzcGljYWludGVybmF0aW9uYWwvbmd4LXNkcy1jb21wb25lbnRzL3NyYy9saWIvc2VnbWVudGVkLWNvbnRyb2wnO1xyXG5leHBvcnQgKiBmcm9tICdAc3BpY2FpbnRlcm5hdGlvbmFsL25neC1zZHMtY29tcG9uZW50cy9zcmMvbGliL3NpZGUtYmFyJztcclxuZXhwb3J0ICogZnJvbSAnQHNwaWNhaW50ZXJuYXRpb25hbC9uZ3gtc2RzLWNvbXBvbmVudHMvc3JjL2xpYi90b29sdGlwJztcclxuIl19
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25neC1zZHMtY29tcG9uZW50cy9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsNkRBQTZELENBQUM7QUFDNUUsY0FBYyx1REFBdUQsQ0FBQztBQUN0RSxjQUFjLHNEQUFzRCxDQUFDO0FBQ3JFLGNBQWMsd0RBQXdELENBQUM7QUFDdkUsY0FBYyw2REFBNkQsQ0FBQztBQUM1RSxjQUFjLGdFQUFnRSxDQUFDO0FBQy9FLGNBQWMsNERBQTRELENBQUM7QUFDM0UsY0FBYywyREFBMkQsQ0FBQztBQUMxRSxjQUFjLDhEQUE4RCxDQUFDO0FBQzdFLGNBQWMsNkRBQTZELENBQUM7QUFDNUUsY0FBYywrREFBK0QsQ0FBQztBQUM5RSxjQUFjLHVEQUF1RCxDQUFDO0FBQ3RFLGNBQWMsd0RBQXdELENBQUM7QUFDdkUsY0FBYyxzREFBc0QsQ0FBQztBQUNyRSxjQUFjLDJEQUEyRCxDQUFDO0FBQzFFLGNBQWMsNERBQTRELENBQUM7QUFDM0UsY0FBYyxxREFBcUQsQ0FBQztBQUNwRSxjQUFjLDJEQUEyRCxDQUFDO0FBQzFFLGNBQWMsa0VBQWtFLENBQUM7QUFDakYsY0FBYyx5REFBeUQsQ0FBQztBQUN4RSxjQUFjLHdEQUF3RCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIG5neC1zZHMtY29tcG9uZW50c1xyXG4gKi9cclxuXHJcbmV4cG9ydCAqIGZyb20gJ0BzcGljYWludGVybmF0aW9uYWwvbmd4LXNkcy1jb21wb25lbnRzL3NyYy9saWIvYXBwLXN3aXRjaGVyJztcclxuZXhwb3J0ICogZnJvbSAnQHNwaWNhaW50ZXJuYXRpb25hbC9uZ3gtc2RzLWNvbXBvbmVudHMvc3JjL2xpYi9hdmF0YXInO1xyXG5leHBvcnQgKiBmcm9tICdAc3BpY2FpbnRlcm5hdGlvbmFsL25neC1zZHMtY29tcG9uZW50cy9zcmMvbGliL2JhZGdlJztcclxuZXhwb3J0ICogZnJvbSAnQHNwaWNhaW50ZXJuYXRpb25hbC9uZ3gtc2RzLWNvbXBvbmVudHMvc3JjL2xpYi9jYWxsb3V0JztcclxuZXhwb3J0ICogZnJvbSAnQHNwaWNhaW50ZXJuYXRpb25hbC9uZ3gtc2RzLWNvbXBvbmVudHMvc3JjL2xpYi9jb2xvci1waWNrZXInO1xyXG5leHBvcnQgKiBmcm9tICdAc3BpY2FpbnRlcm5hdGlvbmFsL25neC1zZHMtY29tcG9uZW50cy9zcmMvbGliL2V4cGFuc2lvbi1wYW5lbCc7XHJcbmV4cG9ydCAqIGZyb20gJ0BzcGljYWludGVybmF0aW9uYWwvbmd4LXNkcy1jb21wb25lbnRzL3NyYy9saWIvZGF0ZS1waWNrZXInO1xyXG5leHBvcnQgKiBmcm9tICdAc3BpY2FpbnRlcm5hdGlvbmFsL25neC1zZHMtY29tcG9uZW50cy9zcmMvbGliL2RhdGUtcGlwZXMnO1xyXG5leHBvcnQgKiBmcm9tICdAc3BpY2FpbnRlcm5hdGlvbmFsL25neC1zZHMtY29tcG9uZW50cy9zcmMvbGliL2R1cmF0aW9uLXBpcGUnO1xyXG5leHBvcnQgKiBmcm9tICdAc3BpY2FpbnRlcm5hdGlvbmFsL25neC1zZHMtY29tcG9uZW50cy9zcmMvbGliL2R1cmF0aW9uLWJveCc7XHJcbmV4cG9ydCAqIGZyb20gJ0BzcGljYWludGVybmF0aW9uYWwvbmd4LXNkcy1jb21wb25lbnRzL3NyYy9saWIvaGlnaGxpZ2h0LXRleHQnO1xyXG5leHBvcnQgKiBmcm9tICdAc3BpY2FpbnRlcm5hdGlvbmFsL25neC1zZHMtY29tcG9uZW50cy9zcmMvbGliL2xheW91dCc7XHJcbmV4cG9ydCAqIGZyb20gJ0BzcGljYWludGVybmF0aW9uYWwvbmd4LXNkcy1jb21wb25lbnRzL3NyYy9saWIvbWVzc2FnZSc7XHJcbmV4cG9ydCAqIGZyb20gJ0BzcGljYWludGVybmF0aW9uYWwvbmd4LXNkcy1jb21wb25lbnRzL3NyYy9saWIvbW9kYWwnO1xyXG5leHBvcnQgKiBmcm9tICdAc3BpY2FpbnRlcm5hdGlvbmFsL25neC1zZHMtY29tcG9uZW50cy9zcmMvbGliL25hdmlnYXRpb24nO1xyXG5leHBvcnQgKiBmcm9tICdAc3BpY2FpbnRlcm5hdGlvbmFsL25neC1zZHMtY29tcG9uZW50cy9zcmMvbGliL3BhZ2UtaGVhZGVyJztcclxuZXhwb3J0ICogZnJvbSAnQHNwaWNhaW50ZXJuYXRpb25hbC9uZ3gtc2RzLWNvbXBvbmVudHMvc3JjL2xpYi9wYW5lJztcclxuZXhwb3J0ICogZnJvbSAnQHNwaWNhaW50ZXJuYXRpb25hbC9uZ3gtc2RzLWNvbXBvbmVudHMvc3JjL2xpYi9xdWljay1pbmZvJztcclxuZXhwb3J0ICogZnJvbSAnQHNwaWNhaW50ZXJuYXRpb25hbC9uZ3gtc2RzLWNvbXBvbmVudHMvc3JjL2xpYi9zZWdtZW50ZWQtY29udHJvbCc7XHJcbmV4cG9ydCAqIGZyb20gJ0BzcGljYWludGVybmF0aW9uYWwvbmd4LXNkcy1jb21wb25lbnRzL3NyYy9saWIvc2lkZS1iYXInO1xyXG5leHBvcnQgKiBmcm9tICdAc3BpY2FpbnRlcm5hdGlvbmFsL25neC1zZHMtY29tcG9uZW50cy9zcmMvbGliL3Rvb2x0aXAnO1xyXG4iXX0=
@@ -0,0 +1,60 @@
1
+ import { Directive, HostBinding, Input } from '@angular/core';
2
+ import { highlightSearchedText } from '../utils';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/platform-browser";
5
+ export class HighlightTextDirective {
6
+ constructor(_elementRef, _sanitizer) {
7
+ this._elementRef = _elementRef;
8
+ this._sanitizer = _sanitizer;
9
+ /**
10
+ * INPUTS
11
+ */
12
+ /**
13
+ * CSS classes to be appended to the marked text
14
+ */
15
+ this.additionalClasses = '';
16
+ /**
17
+ * Search term that should be found
18
+ */
19
+ this._search = '';
20
+ /**
21
+ * For now make this case insensitive. We might change this to
22
+ * input latter if needed
23
+ */
24
+ this.caseSensitive = false;
25
+ }
26
+ get highlightText() {
27
+ return this._search;
28
+ }
29
+ set highlightText(value) {
30
+ this._search = value;
31
+ // Now process the search value
32
+ this.markSearchedText(value);
33
+ }
34
+ markSearchedText(highlightText) {
35
+ // Make sure that native element is present
36
+ if (this._elementRef?.nativeElement) {
37
+ const currentHtmlContent = this._elementRef.nativeElement
38
+ .innerHTML;
39
+ const text = this._elementRef.nativeElement.textContent ?? '';
40
+ const highlightedText = highlightSearchedText(highlightText, text, currentHtmlContent, this._sanitizer, this.additionalClasses);
41
+ this.content = highlightedText;
42
+ }
43
+ }
44
+ }
45
+ HighlightTextDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: HighlightTextDirective, deps: [{ token: i0.ElementRef }, { token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Directive });
46
+ HighlightTextDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.1", type: HighlightTextDirective, selector: "[highlightText]", inputs: { additionalClasses: "additionalClasses", highlightText: "highlightText" }, host: { properties: { "innerHtml": "this.content" } }, ngImport: i0 });
47
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: HighlightTextDirective, decorators: [{
48
+ type: Directive,
49
+ args: [{
50
+ selector: '[highlightText]'
51
+ }]
52
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.DomSanitizer }]; }, propDecorators: { additionalClasses: [{
53
+ type: Input
54
+ }], highlightText: [{
55
+ type: Input
56
+ }], content: [{
57
+ type: HostBinding,
58
+ args: ['innerHtml']
59
+ }] } });
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlnaGxpZ2h0LXRleHQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNkcy1jb21wb25lbnRzL3NyYy9saWIvaGlnaGxpZ2h0LXRleHQvZGlyZWN0aXZlcy9oaWdobGlnaHQtdGV4dC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTFFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLFVBQVUsQ0FBQzs7O0FBS2pELE1BQU0sT0FBTyxzQkFBc0I7SUFvQ2pDLFlBQ21CLFdBQXVCLEVBQ3ZCLFVBQXdCO1FBRHhCLGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBQ3ZCLGVBQVUsR0FBVixVQUFVLENBQWM7UUFyQzdDOzthQUVLO1FBQ0g7O1dBRUc7UUFDTSxzQkFBaUIsR0FBVyxFQUFFLENBQUM7UUFFeEM7O1dBRUc7UUFDSyxZQUFPLEdBQVcsRUFBRSxDQUFDO1FBa0I3Qjs7O1dBR0c7UUFDTyxrQkFBYSxHQUFZLEtBQUssQ0FBQztJQUt0QyxDQUFDO0lBMUJKLElBQ0ksYUFBYTtRQUNmLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN0QixDQUFDO0lBQ0QsSUFBSSxhQUFhLENBQUMsS0FBYTtRQUM3QixJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztRQUVyQiwrQkFBK0I7UUFDL0IsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFtQlMsZ0JBQWdCLENBQUMsYUFBcUI7UUFDOUMsMkNBQTJDO1FBQzNDLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRSxhQUFhLEVBQUU7WUFDbkMsTUFBTSxrQkFBa0IsR0FBSSxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQTZCO2lCQUN2RSxTQUFTLENBQUM7WUFFYixNQUFNLElBQUksR0FDUCxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQTZCLENBQUMsV0FBVyxJQUFJLEVBQUUsQ0FBQztZQUVwRSxNQUFNLGVBQWUsR0FBRyxxQkFBcUIsQ0FDM0MsYUFBYSxFQUNiLElBQUksRUFDSixrQkFBa0IsRUFDbEIsSUFBSSxDQUFDLFVBQVUsRUFDZixJQUFJLENBQUMsaUJBQWlCLENBQ3ZCLENBQUM7WUFFRixJQUFJLENBQUMsT0FBTyxHQUFHLGVBQWUsQ0FBQztTQUNoQztJQUNILENBQUM7O21IQTVEVSxzQkFBc0I7dUdBQXRCLHNCQUFzQjsyRkFBdEIsc0JBQXNCO2tCQUhsQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxpQkFBaUI7aUJBQzVCOzRIQVFVLGlCQUFpQjtzQkFBekIsS0FBSztnQkFPRixhQUFhO3NCQURoQixLQUFLO2dCQWVOLE9BQU87c0JBRE4sV0FBVzt1QkFBQyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBIb3N0QmluZGluZywgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRG9tU2FuaXRpemVyIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XHJcbmltcG9ydCB7IGhpZ2hsaWdodFNlYXJjaGVkVGV4dCB9IGZyb20gJy4uL3V0aWxzJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnW2hpZ2hsaWdodFRleHRdJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgSGlnaGxpZ2h0VGV4dERpcmVjdGl2ZSB7XHJcbi8qKlxyXG4gICAqIElOUFVUU1xyXG4gICAqL1xyXG4gIC8qKlxyXG4gICAqIENTUyBjbGFzc2VzIHRvIGJlIGFwcGVuZGVkIHRvIHRoZSBtYXJrZWQgdGV4dFxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGFkZGl0aW9uYWxDbGFzc2VzOiBzdHJpbmcgPSAnJztcclxuXHJcbiAgLyoqXHJcbiAgICogU2VhcmNoIHRlcm0gdGhhdCBzaG91bGQgYmUgZm91bmRcclxuICAgKi9cclxuICBwcml2YXRlIF9zZWFyY2g6IHN0cmluZyA9ICcnO1xyXG4gIEBJbnB1dCgpXHJcbiAgZ2V0IGhpZ2hsaWdodFRleHQoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLl9zZWFyY2g7XHJcbiAgfVxyXG4gIHNldCBoaWdobGlnaHRUZXh0KHZhbHVlOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuX3NlYXJjaCA9IHZhbHVlO1xyXG5cclxuICAgIC8vIE5vdyBwcm9jZXNzIHRoZSBzZWFyY2ggdmFsdWVcclxuICAgIHRoaXMubWFya1NlYXJjaGVkVGV4dCh2YWx1ZSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBPVEhFUiBQUk9QU1xyXG4gICAqL1xyXG4gIEBIb3N0QmluZGluZygnaW5uZXJIdG1sJylcclxuICBjb250ZW50ITogc3RyaW5nO1xyXG5cclxuICAvKipcclxuICAgKiBGb3Igbm93IG1ha2UgdGhpcyBjYXNlIGluc2Vuc2l0aXZlLiBXZSBtaWdodCBjaGFuZ2UgdGhpcyB0b1xyXG4gICAqIGlucHV0IGxhdHRlciBpZiBuZWVkZWRcclxuICAgKi9cclxuICBwcm90ZWN0ZWQgY2FzZVNlbnNpdGl2ZTogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9zYW5pdGl6ZXI6IERvbVNhbml0aXplclxyXG4gICkge31cclxuXHJcbiAgcHJvdGVjdGVkIG1hcmtTZWFyY2hlZFRleHQoaGlnaGxpZ2h0VGV4dDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICAvLyBNYWtlIHN1cmUgdGhhdCBuYXRpdmUgZWxlbWVudCBpcyBwcmVzZW50XHJcbiAgICBpZiAodGhpcy5fZWxlbWVudFJlZj8ubmF0aXZlRWxlbWVudCkge1xyXG4gICAgICBjb25zdCBjdXJyZW50SHRtbENvbnRlbnQgPSAodGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50KVxyXG4gICAgICAgIC5pbm5lckhUTUw7XHJcblxyXG4gICAgICBjb25zdCB0ZXh0ID1cclxuICAgICAgICAodGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50KS50ZXh0Q29udGVudCA/PyAnJztcclxuXHJcbiAgICAgIGNvbnN0IGhpZ2hsaWdodGVkVGV4dCA9IGhpZ2hsaWdodFNlYXJjaGVkVGV4dChcclxuICAgICAgICBoaWdobGlnaHRUZXh0LFxyXG4gICAgICAgIHRleHQsXHJcbiAgICAgICAgY3VycmVudEh0bWxDb250ZW50LFxyXG4gICAgICAgIHRoaXMuX3Nhbml0aXplcixcclxuICAgICAgICB0aGlzLmFkZGl0aW9uYWxDbGFzc2VzXHJcbiAgICAgICk7XHJcblxyXG4gICAgICB0aGlzLmNvbnRlbnQgPSBoaWdobGlnaHRlZFRleHQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export * from './highlight-text.directive';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2RzLWNvbXBvbmVudHMvc3JjL2xpYi9oaWdobGlnaHQtdGV4dC9kaXJlY3RpdmVzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsNEJBQTRCLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2hpZ2hsaWdodC10ZXh0LmRpcmVjdGl2ZSdcclxuIl19
@@ -0,0 +1,31 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { HighlightTextDirective } from './directives';
4
+ import { HighlightTextPipe } from './pipes';
5
+ import * as i0 from "@angular/core";
6
+ export class SdsHighlightTextModule {
7
+ }
8
+ SdsHighlightTextModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SdsHighlightTextModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
+ SdsHighlightTextModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SdsHighlightTextModule, declarations: [HighlightTextDirective,
10
+ HighlightTextPipe], imports: [CommonModule], exports: [HighlightTextDirective,
11
+ HighlightTextPipe] });
12
+ SdsHighlightTextModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SdsHighlightTextModule, imports: [[
13
+ CommonModule
14
+ ]] });
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SdsHighlightTextModule, decorators: [{
16
+ type: NgModule,
17
+ args: [{
18
+ declarations: [
19
+ HighlightTextDirective,
20
+ HighlightTextPipe
21
+ ],
22
+ exports: [
23
+ HighlightTextDirective,
24
+ HighlightTextPipe
25
+ ],
26
+ imports: [
27
+ CommonModule
28
+ ]
29
+ }]
30
+ }] });
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlnaGxpZ2h0LXRleHQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNkcy1jb21wb25lbnRzL3NyYy9saWIvaGlnaGxpZ2h0LXRleHQvaGlnaGxpZ2h0LXRleHQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN0RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxTQUFTLENBQUM7O0FBaUI1QyxNQUFNLE9BQU8sc0JBQXNCOzttSEFBdEIsc0JBQXNCO29IQUF0QixzQkFBc0IsaUJBWC9CLHNCQUFzQjtRQUN0QixpQkFBaUIsYUFPakIsWUFBWSxhQUpaLHNCQUFzQjtRQUN0QixpQkFBaUI7b0hBTVIsc0JBQXNCLFlBSnhCO1lBQ1AsWUFBWTtTQUNiOzJGQUVVLHNCQUFzQjtrQkFibEMsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osc0JBQXNCO3dCQUN0QixpQkFBaUI7cUJBQ2xCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxzQkFBc0I7d0JBQ3RCLGlCQUFpQjtxQkFDbEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFlBQVk7cUJBQ2I7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBIaWdobGlnaHRUZXh0RGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzJztcclxuaW1wb3J0IHsgSGlnaGxpZ2h0VGV4dFBpcGUgfSBmcm9tICcuL3BpcGVzJztcclxuXHJcblxyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFtcclxuICAgIEhpZ2hsaWdodFRleHREaXJlY3RpdmUsXHJcbiAgICBIaWdobGlnaHRUZXh0UGlwZVxyXG4gIF0sXHJcbiAgZXhwb3J0czogW1xyXG4gICAgSGlnaGxpZ2h0VGV4dERpcmVjdGl2ZSxcclxuICAgIEhpZ2hsaWdodFRleHRQaXBlXHJcbiAgXSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGVcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTZHNIaWdobGlnaHRUZXh0TW9kdWxlIHsgfVxyXG4iXX0=
@@ -0,0 +1,29 @@
1
+ import { Pipe } from '@angular/core';
2
+ import { highlightSearchedText } from '../utils';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/platform-browser";
5
+ export class HighlightTextPipe {
6
+ constructor(_elementRef, _sanitizer) {
7
+ this._elementRef = _elementRef;
8
+ this._sanitizer = _sanitizer;
9
+ }
10
+ transform(highlightText, stringToBeChecked, additionalClasses) {
11
+ // Make sure that native element is present
12
+ if (this._elementRef?.nativeElement) {
13
+ const currentHtmlContent = this._elementRef.nativeElement
14
+ .innerHTML;
15
+ const highlightedText = highlightSearchedText(highlightText, stringToBeChecked, currentHtmlContent, this._sanitizer, additionalClasses);
16
+ return highlightedText;
17
+ }
18
+ return stringToBeChecked;
19
+ }
20
+ }
21
+ HighlightTextPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: HighlightTextPipe, deps: [{ token: i0.ElementRef }, { token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Pipe });
22
+ HighlightTextPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: HighlightTextPipe, name: "highlightText" });
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: HighlightTextPipe, decorators: [{
24
+ type: Pipe,
25
+ args: [{
26
+ name: 'highlightText'
27
+ }]
28
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.DomSanitizer }]; } });
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlnaGxpZ2h0LXRleHQucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zZHMtY29tcG9uZW50cy9zcmMvbGliL2hpZ2hsaWdodC10ZXh0L3BpcGVzL2hpZ2hsaWdodC10ZXh0LnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFjLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFFaEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sVUFBVSxDQUFDOzs7QUFLakQsTUFBTSxPQUFPLGlCQUFpQjtJQUMxQixZQUNxQixXQUF1QixFQUN2QixVQUF3QjtRQUR4QixnQkFBVyxHQUFYLFdBQVcsQ0FBWTtRQUN2QixlQUFVLEdBQVYsVUFBVSxDQUFjO0lBQzFDLENBQUM7SUFFSixTQUFTLENBQ0wsYUFBcUIsRUFDckIsaUJBQXlCLEVBQ3pCLGlCQUEwQjtRQUUxQiwyQ0FBMkM7UUFDM0MsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFLGFBQWEsRUFBRTtZQUNuQyxNQUFNLGtCQUFrQixHQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBNkI7aUJBQ3ZFLFNBQVMsQ0FBQztZQUViLE1BQU0sZUFBZSxHQUFHLHFCQUFxQixDQUMzQyxhQUFhLEVBQ2IsaUJBQWlCLEVBQ2pCLGtCQUFrQixFQUNsQixJQUFJLENBQUMsVUFBVSxFQUNmLGlCQUFpQixDQUNsQixDQUFDO1lBRUYsT0FBTyxlQUFlLENBQUM7U0FDeEI7UUFFRCxPQUFPLGlCQUFpQixDQUFDO0lBQzNCLENBQUM7OzhHQTVCTSxpQkFBaUI7NEdBQWpCLGlCQUFpQjsyRkFBakIsaUJBQWlCO2tCQUg3QixJQUFJO21CQUFDO29CQUNKLElBQUksRUFBRSxlQUFlO2lCQUN0QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVsZW1lbnRSZWYsIFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRG9tU2FuaXRpemVyIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XHJcbmltcG9ydCB7IGhpZ2hsaWdodFNlYXJjaGVkVGV4dCB9IGZyb20gJy4uL3V0aWxzJztcclxuXHJcbkBQaXBlKHtcclxuICBuYW1lOiAnaGlnaGxpZ2h0VGV4dCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEhpZ2hsaWdodFRleHRQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IF9lbGVtZW50UmVmOiBFbGVtZW50UmVmLFxyXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgX3Nhbml0aXplcjogRG9tU2FuaXRpemVyXHJcbiAgICApIHt9XHJcblxyXG4gICAgdHJhbnNmb3JtKFxyXG4gICAgICAgIGhpZ2hsaWdodFRleHQ6IHN0cmluZyxcclxuICAgICAgICBzdHJpbmdUb0JlQ2hlY2tlZDogc3RyaW5nLFxyXG4gICAgICAgIGFkZGl0aW9uYWxDbGFzc2VzPzogc3RyaW5nXHJcbiAgICAgICk6IHN0cmluZyB7XHJcbiAgICAgICAgLy8gTWFrZSBzdXJlIHRoYXQgbmF0aXZlIGVsZW1lbnQgaXMgcHJlc2VudFxyXG4gICAgICAgIGlmICh0aGlzLl9lbGVtZW50UmVmPy5uYXRpdmVFbGVtZW50KSB7XHJcbiAgICAgICAgICBjb25zdCBjdXJyZW50SHRtbENvbnRlbnQgPSAodGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50KVxyXG4gICAgICAgICAgICAuaW5uZXJIVE1MO1xyXG5cclxuICAgICAgICAgIGNvbnN0IGhpZ2hsaWdodGVkVGV4dCA9IGhpZ2hsaWdodFNlYXJjaGVkVGV4dChcclxuICAgICAgICAgICAgaGlnaGxpZ2h0VGV4dCxcclxuICAgICAgICAgICAgc3RyaW5nVG9CZUNoZWNrZWQsXHJcbiAgICAgICAgICAgIGN1cnJlbnRIdG1sQ29udGVudCxcclxuICAgICAgICAgICAgdGhpcy5fc2FuaXRpemVyLFxyXG4gICAgICAgICAgICBhZGRpdGlvbmFsQ2xhc3Nlc1xyXG4gICAgICAgICAgKTtcclxuXHJcbiAgICAgICAgICByZXR1cm4gaGlnaGxpZ2h0ZWRUZXh0O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIHN0cmluZ1RvQmVDaGVja2VkO1xyXG4gICAgICB9XHJcblxyXG59XHJcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export * from './highlight-text.pipe';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2RzLWNvbXBvbmVudHMvc3JjL2xpYi9oaWdobGlnaHQtdGV4dC9waXBlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHVCQUF1QixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9oaWdobGlnaHQtdGV4dC5waXBlJ1xyXG4iXX0=
@@ -0,0 +1,4 @@
1
+ export * from './highlight-text.module';
2
+ export * from './directives';
3
+ export * from './pipes';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zZHMtY29tcG9uZW50cy9zcmMvbGliL2hpZ2hsaWdodC10ZXh0L3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vaGlnaGxpZ2h0LXRleHQubW9kdWxlJztcclxuZXhwb3J0ICogZnJvbSAnLi9kaXJlY3RpdmVzJztcclxuZXhwb3J0ICogZnJvbSAnLi9waXBlcyc7XHJcbiJdfQ==
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BpY2FpbnRlcm5hdGlvbmFsLW5neC1zZHMtY29tcG9uZW50cy1zcmMtbGliLWhpZ2hsaWdodC10ZXh0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNkcy1jb21wb25lbnRzL3NyYy9saWIvaGlnaGxpZ2h0LXRleHQvc3BpY2FpbnRlcm5hdGlvbmFsLW5neC1zZHMtY29tcG9uZW50cy1zcmMtbGliLWhpZ2hsaWdodC10ZXh0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0=
@@ -0,0 +1,97 @@
1
+ import { SecurityContext } from '@angular/core';
2
+ /**
3
+ * @public @function escapeRegex
4
+ * @description
5
+ * Function responsible for substitution of chars that are a no-go for regex
6
+ * @param { string } phrase
7
+ * @returns { string }
8
+ */
9
+ export const escapeRegex = (phrase) => {
10
+ return phrase.replace(/[-\/\\^$*+?.()|[\]{}]/g, '\\$&');
11
+ };
12
+ /**
13
+ * @public @function highlightSearchedText
14
+ * @description
15
+ * Function responsible for returning html string
16
+ * with included marker that contains string that matches
17
+ * provided search phrase
18
+ * @param { string } highlightText
19
+ * @param { string } stringToBeChecked
20
+ * @param { string } existingHtmlContent
21
+ * @param { string } additionalClasses
22
+ * @param { string } sanitizer
23
+ * @returns { string }
24
+ */
25
+ export const highlightSearchedText = (highlightText, stringToBeChecked, existingHtmlContent, sanitizer, additionalClasses) => {
26
+ // If search is empty just return current content
27
+ if (highlightText === '') {
28
+ return stringToBeChecked;
29
+ }
30
+ // Split search string into words
31
+ const splittedValue = highlightText.split(' ');
32
+ if (!splittedValue || splittedValue.length === 0) {
33
+ return stringToBeChecked;
34
+ }
35
+ const splittedStringToBeChecked = stringToBeChecked
36
+ ? stringToBeChecked.split(' ')
37
+ : [];
38
+ const searchPhrases = splittedValue.filter(phrase => phrase.length > 0);
39
+ const markedWords = [];
40
+ // Go through search phrases and validate each string
41
+ const newContent = splittedStringToBeChecked
42
+ .map((wordToBeChecked) => {
43
+ const searchMarkRawResult = searchPhrases
44
+ .map(phrase => {
45
+ const safeString = escapeRegex(phrase);
46
+ const searchRegEx = new RegExp(safeString, 'i');
47
+ const testResult = searchRegEx.test(wordToBeChecked);
48
+ if (!testResult) {
49
+ return wordToBeChecked;
50
+ }
51
+ // Prevent text duplication when user enters same word multiple times
52
+ const wordIsAlreadyMarked = markedWords.some(alreadyMarkedWord => alreadyMarkedWord === wordToBeChecked);
53
+ if (wordIsAlreadyMarked) {
54
+ return wordToBeChecked;
55
+ }
56
+ markedWords.push(wordToBeChecked);
57
+ // Prepare content to be replaced with mark text
58
+ const markedContent = wordToBeChecked.replace(searchRegEx, (match) => {
59
+ return `<mark class='bg-primary text-white p-0 ${additionalClasses ?? ''}'>${match}</mark>`;
60
+ });
61
+ return markedContent;
62
+ })
63
+ .reduce((accumulator, currentItem) => {
64
+ const itemAlreadyExists = accumulator.some(item => item === currentItem);
65
+ if (!itemAlreadyExists) {
66
+ accumulator.push(currentItem);
67
+ }
68
+ return accumulator;
69
+ }, []);
70
+ /**
71
+ * At this point we have correctly marker content, however there can be
72
+ * duplicate words in the array. E.g. we have text First Client and user
73
+ * types Client First. This will give us two array. First one would be:
74
+ * ['First', '<mark class='highlighted-text '>First</mark>']
75
+ * Second one would be:
76
+ * ['<mark class='highlighted-text '>Client</mark>', 'Client']
77
+ * We have to filter out those plain values that are marked
78
+ */
79
+ const sanitizedMarkedContent = searchMarkRawResult.filter(markedContentItem => {
80
+ const wordIsAlsoMarked = markedWords.some(word => word === markedContentItem);
81
+ if (wordIsAlsoMarked) {
82
+ return false;
83
+ }
84
+ return true;
85
+ });
86
+ return sanitizedMarkedContent;
87
+ })
88
+ .join(' ');
89
+ /**
90
+ * We want to sanitize this before pushing to DOM.
91
+ * Just to be on the safe side. Fallback to existing value if
92
+ * sanitize returns null
93
+ */
94
+ const sanitizedContent = sanitizer.sanitize(SecurityContext.HTML, newContent) ?? existingHtmlContent;
95
+ return sanitizedContent;
96
+ };
97
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlnaGxpZ2h0LXRleHQudXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2RzLWNvbXBvbmVudHMvc3JjL2xpYi9oaWdobGlnaHQtdGV4dC91dGlscy9oaWdobGlnaHQtdGV4dC51dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR2hEOzs7Ozs7R0FNRztBQUNILE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxDQUFDLE1BQWMsRUFBVSxFQUFFO0lBQ2xELE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyx3QkFBd0IsRUFBRSxNQUFNLENBQUMsQ0FBQztBQUM1RCxDQUFDLENBQUM7QUFFRjs7Ozs7Ozs7Ozs7O0dBWUc7QUFDSCxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxDQUNqQyxhQUFxQixFQUNyQixpQkFBeUIsRUFDekIsbUJBQTJCLEVBQzNCLFNBQXVCLEVBQ3ZCLGlCQUEwQixFQUNsQixFQUFFO0lBQ1YsaURBQWlEO0lBQ2pELElBQUksYUFBYSxLQUFLLEVBQUUsRUFBRTtRQUN4QixPQUFPLGlCQUFpQixDQUFDO0tBQzFCO0lBRUQsaUNBQWlDO0lBQ2pDLE1BQU0sYUFBYSxHQUFHLGFBQWEsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7SUFFL0MsSUFBSSxDQUFDLGFBQWEsSUFBSSxhQUFhLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtRQUNoRCxPQUFPLGlCQUFpQixDQUFDO0tBQzFCO0lBRUQsTUFBTSx5QkFBeUIsR0FBYSxpQkFBaUI7UUFDM0QsQ0FBQyxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUM7UUFDOUIsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUVQLE1BQU0sYUFBYSxHQUFhLGFBQWEsQ0FBQyxNQUFNLENBQ2xELE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQzVCLENBQUM7SUFFRixNQUFNLFdBQVcsR0FBYSxFQUFFLENBQUM7SUFFakMscURBQXFEO0lBQ3JELE1BQU0sVUFBVSxHQUFHLHlCQUF5QjtTQUN6QyxHQUFHLENBQUMsQ0FBQyxlQUF1QixFQUFFLEVBQUU7UUFDL0IsTUFBTSxtQkFBbUIsR0FBRyxhQUFhO2FBQ3RDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUNaLE1BQU0sVUFBVSxHQUFHLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUV2QyxNQUFNLFdBQVcsR0FBRyxJQUFJLE1BQU0sQ0FBQyxVQUFVLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFFaEQsTUFBTSxVQUFVLEdBQVksV0FBVyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztZQUU5RCxJQUFJLENBQUMsVUFBVSxFQUFFO2dCQUNmLE9BQU8sZUFBZSxDQUFDO2FBQ3hCO1lBRUQscUVBQXFFO1lBQ3JFLE1BQU0sbUJBQW1CLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsaUJBQWlCLEtBQUssZUFBZSxDQUFDLENBQUE7WUFFeEcsSUFBSSxtQkFBbUIsRUFBRTtnQkFDckIsT0FBTyxlQUFlLENBQUM7YUFDMUI7WUFFRCxXQUFXLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1lBRWxDLGdEQUFnRDtZQUNoRCxNQUFNLGFBQWEsR0FBRyxlQUFlLENBQUMsT0FBTyxDQUMzQyxXQUFXLEVBQ1gsQ0FBQyxLQUFhLEVBQUUsRUFBRTtnQkFDaEIsT0FBTywwQ0FDTCxpQkFBaUIsSUFBSSxFQUN2QixLQUFLLEtBQUssU0FBUyxDQUFDO1lBQ3RCLENBQUMsQ0FDRixDQUFDO1lBQ0YsT0FBTyxhQUFhLENBQUM7UUFDdkIsQ0FBQyxDQUFDO2FBQ0QsTUFBTSxDQUFDLENBQUMsV0FBcUIsRUFBRSxXQUFtQixFQUFFLEVBQUU7WUFDckQsTUFBTSxpQkFBaUIsR0FBRyxXQUFXLENBQUMsSUFBSSxDQUN4QyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksS0FBSyxXQUFXLENBQzdCLENBQUM7WUFFRixJQUFJLENBQUMsaUJBQWlCLEVBQUU7Z0JBQ3RCLFdBQVcsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7YUFDL0I7WUFFRCxPQUFPLFdBQVcsQ0FBQztRQUNyQixDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFVDs7Ozs7Ozs7V0FRRztRQUNILE1BQU0sc0JBQXNCLEdBQUcsbUJBQW1CLENBQUMsTUFBTSxDQUN2RCxpQkFBaUIsQ0FBQyxFQUFFO1lBQ2xCLE1BQU0sZ0JBQWdCLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FDdkMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEtBQUssaUJBQWlCLENBQ25DLENBQUM7WUFFRixJQUFJLGdCQUFnQixFQUFFO2dCQUNwQixPQUFPLEtBQUssQ0FBQzthQUNkO1lBQ0QsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDLENBQ0YsQ0FBQztRQUVGLE9BQU8sc0JBQXNCLENBQUM7SUFDaEMsQ0FBQyxDQUFDO1NBQ0QsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBRWI7Ozs7T0FJRztJQUNILE1BQU0sZ0JBQWdCLEdBQ3BCLFNBQVMsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsSUFBSSxtQkFBbUIsQ0FBQztJQUU5RSxPQUFPLGdCQUFnQixDQUFDO0FBQzVCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNlY3VyaXR5Q29udGV4dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcclxuXHJcbi8qKlxyXG4gKiBAcHVibGljIEBmdW5jdGlvbiBlc2NhcGVSZWdleFxyXG4gKiBAZGVzY3JpcHRpb25cclxuICogRnVuY3Rpb24gcmVzcG9uc2libGUgZm9yIHN1YnN0aXR1dGlvbiBvZiBjaGFycyB0aGF0IGFyZSBhIG5vLWdvIGZvciByZWdleFxyXG4gKiBAcGFyYW0geyBzdHJpbmcgfSBwaHJhc2VcclxuICogQHJldHVybnMgeyBzdHJpbmcgfVxyXG4gKi9cclxuZXhwb3J0IGNvbnN0IGVzY2FwZVJlZ2V4ID0gKHBocmFzZTogc3RyaW5nKTogc3RyaW5nID0+IHtcclxuICAgIHJldHVybiBwaHJhc2UucmVwbGFjZSgvWy1cXC9cXFxcXiQqKz8uKCl8W1xcXXt9XS9nLCAnXFxcXCQmJyk7XHJcbn07XHJcblxyXG4vKipcclxuICogQHB1YmxpYyBAZnVuY3Rpb24gaGlnaGxpZ2h0U2VhcmNoZWRUZXh0XHJcbiAqIEBkZXNjcmlwdGlvblxyXG4gKiBGdW5jdGlvbiByZXNwb25zaWJsZSBmb3IgcmV0dXJuaW5nIGh0bWwgc3RyaW5nXHJcbiAqIHdpdGggaW5jbHVkZWQgbWFya2VyIHRoYXQgY29udGFpbnMgc3RyaW5nIHRoYXQgbWF0Y2hlc1xyXG4gKiBwcm92aWRlZCBzZWFyY2ggcGhyYXNlXHJcbiAqIEBwYXJhbSB7IHN0cmluZyB9IGhpZ2hsaWdodFRleHRcclxuICogQHBhcmFtIHsgc3RyaW5nIH0gc3RyaW5nVG9CZUNoZWNrZWRcclxuICogQHBhcmFtIHsgc3RyaW5nIH0gZXhpc3RpbmdIdG1sQ29udGVudFxyXG4gKiBAcGFyYW0geyBzdHJpbmcgfSBhZGRpdGlvbmFsQ2xhc3Nlc1xyXG4gKiBAcGFyYW0geyBzdHJpbmcgfSBzYW5pdGl6ZXJcclxuICogQHJldHVybnMgeyBzdHJpbmcgfVxyXG4gKi9cclxuZXhwb3J0IGNvbnN0IGhpZ2hsaWdodFNlYXJjaGVkVGV4dCA9IChcclxuICAgIGhpZ2hsaWdodFRleHQ6IHN0cmluZyxcclxuICAgIHN0cmluZ1RvQmVDaGVja2VkOiBzdHJpbmcsXHJcbiAgICBleGlzdGluZ0h0bWxDb250ZW50OiBzdHJpbmcsXHJcbiAgICBzYW5pdGl6ZXI6IERvbVNhbml0aXplcixcclxuICAgIGFkZGl0aW9uYWxDbGFzc2VzPzogc3RyaW5nXHJcbiAgKTogc3RyaW5nID0+IHtcclxuICAgIC8vIElmIHNlYXJjaCBpcyBlbXB0eSBqdXN0IHJldHVybiBjdXJyZW50IGNvbnRlbnRcclxuICAgIGlmIChoaWdobGlnaHRUZXh0ID09PSAnJykge1xyXG4gICAgICByZXR1cm4gc3RyaW5nVG9CZUNoZWNrZWQ7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gU3BsaXQgc2VhcmNoIHN0cmluZyBpbnRvIHdvcmRzXHJcbiAgICBjb25zdCBzcGxpdHRlZFZhbHVlID0gaGlnaGxpZ2h0VGV4dC5zcGxpdCgnICcpO1xyXG5cclxuICAgIGlmICghc3BsaXR0ZWRWYWx1ZSB8fCBzcGxpdHRlZFZhbHVlLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICByZXR1cm4gc3RyaW5nVG9CZUNoZWNrZWQ7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3Qgc3BsaXR0ZWRTdHJpbmdUb0JlQ2hlY2tlZDogc3RyaW5nW10gPSBzdHJpbmdUb0JlQ2hlY2tlZFxyXG4gICAgICA/IHN0cmluZ1RvQmVDaGVja2VkLnNwbGl0KCcgJylcclxuICAgICAgOiBbXTtcclxuXHJcbiAgICBjb25zdCBzZWFyY2hQaHJhc2VzOiBzdHJpbmdbXSA9IHNwbGl0dGVkVmFsdWUuZmlsdGVyKFxyXG4gICAgICBwaHJhc2UgPT4gcGhyYXNlLmxlbmd0aCA+IDBcclxuICAgICk7XHJcblxyXG4gICAgY29uc3QgbWFya2VkV29yZHM6IHN0cmluZ1tdID0gW107XHJcblxyXG4gICAgLy8gR28gdGhyb3VnaCBzZWFyY2ggcGhyYXNlcyBhbmQgdmFsaWRhdGUgZWFjaCBzdHJpbmdcclxuICAgIGNvbnN0IG5ld0NvbnRlbnQgPSBzcGxpdHRlZFN0cmluZ1RvQmVDaGVja2VkXHJcbiAgICAgIC5tYXAoKHdvcmRUb0JlQ2hlY2tlZDogc3RyaW5nKSA9PiB7XHJcbiAgICAgICAgY29uc3Qgc2VhcmNoTWFya1Jhd1Jlc3VsdCA9IHNlYXJjaFBocmFzZXNcclxuICAgICAgICAgIC5tYXAocGhyYXNlID0+IHtcclxuICAgICAgICAgICAgY29uc3Qgc2FmZVN0cmluZyA9IGVzY2FwZVJlZ2V4KHBocmFzZSk7XHJcblxyXG4gICAgICAgICAgICBjb25zdCBzZWFyY2hSZWdFeCA9IG5ldyBSZWdFeHAoc2FmZVN0cmluZywgJ2knKTtcclxuXHJcbiAgICAgICAgICAgIGNvbnN0IHRlc3RSZXN1bHQ6IGJvb2xlYW4gPSBzZWFyY2hSZWdFeC50ZXN0KHdvcmRUb0JlQ2hlY2tlZCk7XHJcblxyXG4gICAgICAgICAgICBpZiAoIXRlc3RSZXN1bHQpIHtcclxuICAgICAgICAgICAgICByZXR1cm4gd29yZFRvQmVDaGVja2VkO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAvLyBQcmV2ZW50IHRleHQgZHVwbGljYXRpb24gd2hlbiB1c2VyIGVudGVycyBzYW1lIHdvcmQgbXVsdGlwbGUgdGltZXNcclxuICAgICAgICAgICAgY29uc3Qgd29yZElzQWxyZWFkeU1hcmtlZCA9IG1hcmtlZFdvcmRzLnNvbWUoYWxyZWFkeU1hcmtlZFdvcmQgPT4gYWxyZWFkeU1hcmtlZFdvcmQgPT09IHdvcmRUb0JlQ2hlY2tlZClcclxuXHJcbiAgICAgICAgICAgIGlmICh3b3JkSXNBbHJlYWR5TWFya2VkKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gd29yZFRvQmVDaGVja2VkO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBtYXJrZWRXb3Jkcy5wdXNoKHdvcmRUb0JlQ2hlY2tlZCk7XHJcblxyXG4gICAgICAgICAgICAvLyBQcmVwYXJlIGNvbnRlbnQgdG8gYmUgcmVwbGFjZWQgd2l0aCBtYXJrIHRleHRcclxuICAgICAgICAgICAgY29uc3QgbWFya2VkQ29udGVudCA9IHdvcmRUb0JlQ2hlY2tlZC5yZXBsYWNlKFxyXG4gICAgICAgICAgICAgIHNlYXJjaFJlZ0V4LFxyXG4gICAgICAgICAgICAgIChtYXRjaDogc3RyaW5nKSA9PiB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gYDxtYXJrIGNsYXNzPSdiZy1wcmltYXJ5IHRleHQtd2hpdGUgcC0wICR7XHJcbiAgICAgICAgICAgICAgICAgIGFkZGl0aW9uYWxDbGFzc2VzID8/ICcnXHJcbiAgICAgICAgICAgICAgICB9Jz4ke21hdGNofTwvbWFyaz5gO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgcmV0dXJuIG1hcmtlZENvbnRlbnQ7XHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgICAgLnJlZHVjZSgoYWNjdW11bGF0b3I6IHN0cmluZ1tdLCBjdXJyZW50SXRlbTogc3RyaW5nKSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IGl0ZW1BbHJlYWR5RXhpc3RzID0gYWNjdW11bGF0b3Iuc29tZShcclxuICAgICAgICAgICAgICBpdGVtID0+IGl0ZW0gPT09IGN1cnJlbnRJdGVtXHJcbiAgICAgICAgICAgICk7XHJcblxyXG4gICAgICAgICAgICBpZiAoIWl0ZW1BbHJlYWR5RXhpc3RzKSB7XHJcbiAgICAgICAgICAgICAgYWNjdW11bGF0b3IucHVzaChjdXJyZW50SXRlbSk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHJldHVybiBhY2N1bXVsYXRvcjtcclxuICAgICAgICAgIH0sIFtdKTtcclxuXHJcbiAgICAgICAgLyoqXHJcbiAgICAgICAgICogQXQgdGhpcyBwb2ludCB3ZSBoYXZlIGNvcnJlY3RseSBtYXJrZXIgY29udGVudCwgaG93ZXZlciB0aGVyZSBjYW4gYmVcclxuICAgICAgICAgKiBkdXBsaWNhdGUgd29yZHMgaW4gdGhlIGFycmF5LiBFLmcuIHdlIGhhdmUgdGV4dCBGaXJzdCBDbGllbnQgYW5kIHVzZXJcclxuICAgICAgICAgKiB0eXBlcyBDbGllbnQgRmlyc3QuIFRoaXMgd2lsbCBnaXZlIHVzIHR3byBhcnJheS4gRmlyc3Qgb25lIHdvdWxkIGJlOlxyXG4gICAgICAgICAqIFsnRmlyc3QnLCAnPG1hcmsgY2xhc3M9J2hpZ2hsaWdodGVkLXRleHQgJz5GaXJzdDwvbWFyaz4nXVxyXG4gICAgICAgICAqIFNlY29uZCBvbmUgd291bGQgYmU6XHJcbiAgICAgICAgICogWyc8bWFyayBjbGFzcz0naGlnaGxpZ2h0ZWQtdGV4dCAnPkNsaWVudDwvbWFyaz4nLCAnQ2xpZW50J11cclxuICAgICAgICAgKiBXZSBoYXZlIHRvIGZpbHRlciBvdXQgdGhvc2UgcGxhaW4gdmFsdWVzIHRoYXQgYXJlIG1hcmtlZFxyXG4gICAgICAgICAqL1xyXG4gICAgICAgIGNvbnN0IHNhbml0aXplZE1hcmtlZENvbnRlbnQgPSBzZWFyY2hNYXJrUmF3UmVzdWx0LmZpbHRlcihcclxuICAgICAgICAgIG1hcmtlZENvbnRlbnRJdGVtID0+IHtcclxuICAgICAgICAgICAgY29uc3Qgd29yZElzQWxzb01hcmtlZCA9IG1hcmtlZFdvcmRzLnNvbWUoXHJcbiAgICAgICAgICAgICAgd29yZCA9PiB3b3JkID09PSBtYXJrZWRDb250ZW50SXRlbVxyXG4gICAgICAgICAgICApO1xyXG5cclxuICAgICAgICAgICAgaWYgKHdvcmRJc0Fsc29NYXJrZWQpIHtcclxuICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgKTtcclxuXHJcbiAgICAgICAgcmV0dXJuIHNhbml0aXplZE1hcmtlZENvbnRlbnQ7XHJcbiAgICAgIH0pXHJcbiAgICAgIC5qb2luKCcgJyk7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBXZSB3YW50IHRvIHNhbml0aXplIHRoaXMgYmVmb3JlIHB1c2hpbmcgdG8gRE9NLlxyXG4gICAgICogSnVzdCB0byBiZSBvbiB0aGUgc2FmZSBzaWRlLiBGYWxsYmFjayB0byBleGlzdGluZyB2YWx1ZSBpZlxyXG4gICAgICogc2FuaXRpemUgcmV0dXJucyBudWxsXHJcbiAgICAgKi9cclxuICAgIGNvbnN0IHNhbml0aXplZENvbnRlbnQgPVxyXG4gICAgICBzYW5pdGl6ZXIuc2FuaXRpemUoU2VjdXJpdHlDb250ZXh0LkhUTUwsIG5ld0NvbnRlbnQpID8/IGV4aXN0aW5nSHRtbENvbnRlbnQ7XHJcblxyXG4gICAgcmV0dXJuIHNhbml0aXplZENvbnRlbnQ7XHJcbn07XHJcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export * from './highlight-text.utils';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2RzLWNvbXBvbmVudHMvc3JjL2xpYi9oaWdobGlnaHQtdGV4dC91dGlscy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHdCQUF3QixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9oaWdobGlnaHQtdGV4dC51dGlscydcclxuIl19
@@ -0,0 +1,41 @@
1
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@fortawesome/angular-fontawesome";
4
+ import * as i2 from "@angular/common";
5
+ export class SdsMessageComponent {
6
+ constructor() {
7
+ this.text = '';
8
+ this.showCloseButton = false;
9
+ this.close = new EventEmitter();
10
+ this.showLearnMoreLink = false;
11
+ this.learnMoreLinkText = 'Learn more';
12
+ this.learnMoreLinkUrl = '';
13
+ this.showMessage = true;
14
+ }
15
+ ngOnInit() { }
16
+ onCloseButtonClick() {
17
+ this.showMessage = false;
18
+ this.close.emit();
19
+ }
20
+ }
21
+ SdsMessageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SdsMessageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
22
+ SdsMessageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.1", type: SdsMessageComponent, selector: "sds-message", inputs: { icon: "icon", text: "text", showCloseButton: "showCloseButton", showLearnMoreLink: "showLearnMoreLink", learnMoreLinkText: "learnMoreLinkText", learnMoreLinkUrl: "learnMoreLinkUrl" }, outputs: { close: "close" }, ngImport: i0, template: "<div \r\n *ngIf=\"showMessage\"\r\n class=\"px-3 py-2 bg-gray-300 d-flex rounded\"\r\n >\r\n\r\n <fa-icon \r\n *ngIf=\"icon\"\r\n [icon]=\"icon\"\r\n class=\"mr-2\"\r\n >\r\n </fa-icon>\r\n\r\n <div class=\"flex-grow-1\">\r\n <div class=\"\">\r\n <span>\r\n {{text}}\r\n </span>\r\n <span \r\n *ngIf=\"showLearnMoreLink\"\r\n >\r\n <a \r\n class=\"\"\r\n [href]=\"learnMoreLinkUrl\"\r\n target=\"_learnmore\"\r\n >\r\n {{learnMoreLinkText}}\r\n </a>\r\n </span>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"showCloseButton\">\r\n <button \r\n class=\"close rounded ml-2\" \r\n (click)=\"onCloseButtonClick()\"\r\n >\r\n <fa-icon \r\n [icon]=\"['far', 'times']\"\r\n size=\"xs\"\r\n >\r\n </fa-icon>\r\n </button>\r\n </div>\r\n\r\n</div>\r\n", styles: [""], components: [{ type: i1.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SdsMessageComponent, decorators: [{
24
+ type: Component,
25
+ args: [{ selector: 'sds-message', template: "<div \r\n *ngIf=\"showMessage\"\r\n class=\"px-3 py-2 bg-gray-300 d-flex rounded\"\r\n >\r\n\r\n <fa-icon \r\n *ngIf=\"icon\"\r\n [icon]=\"icon\"\r\n class=\"mr-2\"\r\n >\r\n </fa-icon>\r\n\r\n <div class=\"flex-grow-1\">\r\n <div class=\"\">\r\n <span>\r\n {{text}}\r\n </span>\r\n <span \r\n *ngIf=\"showLearnMoreLink\"\r\n >\r\n <a \r\n class=\"\"\r\n [href]=\"learnMoreLinkUrl\"\r\n target=\"_learnmore\"\r\n >\r\n {{learnMoreLinkText}}\r\n </a>\r\n </span>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"showCloseButton\">\r\n <button \r\n class=\"close rounded ml-2\" \r\n (click)=\"onCloseButtonClick()\"\r\n >\r\n <fa-icon \r\n [icon]=\"['far', 'times']\"\r\n size=\"xs\"\r\n >\r\n </fa-icon>\r\n </button>\r\n </div>\r\n\r\n</div>\r\n", styles: [""] }]
26
+ }], ctorParameters: function () { return []; }, propDecorators: { icon: [{
27
+ type: Input
28
+ }], text: [{
29
+ type: Input
30
+ }], showCloseButton: [{
31
+ type: Input
32
+ }], close: [{
33
+ type: Output
34
+ }], showLearnMoreLink: [{
35
+ type: Input
36
+ }], learnMoreLinkText: [{
37
+ type: Input
38
+ }], learnMoreLinkUrl: [{
39
+ type: Input
40
+ }] } });
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2RzLWNvbXBvbmVudHMvc3JjL2xpYi9tZXNzYWdlL21lc3NhZ2UuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNkcy1jb21wb25lbnRzL3NyYy9saWIvbWVzc2FnZS9tZXNzYWdlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7QUFRL0UsTUFBTSxPQUFPLG1CQUFtQjtJQWM1QjtRQVhnQixTQUFJLEdBQVcsRUFBRSxDQUFDO1FBQ2xCLG9CQUFlLEdBQVksS0FBSyxDQUFDO1FBRWhDLFVBQUssR0FBdUIsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUVoRCxzQkFBaUIsR0FBWSxLQUFLLENBQUM7UUFDbkMsc0JBQWlCLEdBQVcsWUFBWSxDQUFDO1FBQ3pDLHFCQUFnQixHQUFXLEVBQUUsQ0FBQztRQUV2QyxnQkFBVyxHQUFZLElBQUksQ0FBQztJQUVwQixDQUFDO0lBRWhCLFFBQVEsS0FBVSxDQUFDO0lBRVosa0JBQWtCO1FBQ3JCLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDdEIsQ0FBQzs7Z0hBckJRLG1CQUFtQjtvR0FBbkIsbUJBQW1CLGtSQ1JoQyw4bUNBNkNBOzJGRHJDYSxtQkFBbUI7a0JBTC9CLFNBQVM7K0JBQ0ksYUFBYTswRUFNUCxJQUFJO3NCQUFuQixLQUFLO2dCQUNVLElBQUk7c0JBQW5CLEtBQUs7Z0JBQ1UsZUFBZTtzQkFBOUIsS0FBSztnQkFFVyxLQUFLO3NCQUFyQixNQUFNO2dCQUVTLGlCQUFpQjtzQkFBaEMsS0FBSztnQkFDVSxpQkFBaUI7c0JBQWhDLEtBQUs7Z0JBQ1UsZ0JBQWdCO3NCQUEvQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBJY29uUHJvcCB9IGZyb20gJ0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1zdmctY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnc2RzLW1lc3NhZ2UnLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL21lc3NhZ2UuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vbWVzc2FnZS5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2RzTWVzc2FnZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gICAgQElucHV0KCkgcHVibGljIGljb24/OiBJY29uUHJvcDtcclxuICAgIEBJbnB1dCgpIHB1YmxpYyB0ZXh0OiBzdHJpbmcgPSAnJztcclxuICAgIEBJbnB1dCgpIHB1YmxpYyBzaG93Q2xvc2VCdXR0b246IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgICBAT3V0cHV0KCkgcHVibGljIGNsb3NlOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gICAgQElucHV0KCkgcHVibGljIHNob3dMZWFybk1vcmVMaW5rOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBASW5wdXQoKSBwdWJsaWMgbGVhcm5Nb3JlTGlua1RleHQ6IHN0cmluZyA9ICdMZWFybiBtb3JlJztcclxuICAgIEBJbnB1dCgpIHB1YmxpYyBsZWFybk1vcmVMaW5rVXJsOiBzdHJpbmcgPSAnJztcclxuXHJcbiAgICBwdWJsaWMgc2hvd01lc3NhZ2U6IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKCkge31cclxuXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHt9XHJcblxyXG4gICAgcHVibGljIG9uQ2xvc2VCdXR0b25DbGljaygpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLnNob3dNZXNzYWdlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5jbG9zZS5lbWl0KCk7XHJcbiAgICB9XHJcblxyXG59XHJcbiIsIjxkaXYgXHJcbiAgICAqbmdJZj1cInNob3dNZXNzYWdlXCJcclxuICAgIGNsYXNzPVwicHgtMyBweS0yIGJnLWdyYXktMzAwIGQtZmxleCByb3VuZGVkXCJcclxuICAgID5cclxuXHJcbiAgICA8ZmEtaWNvbiBcclxuICAgICAgICAqbmdJZj1cImljb25cIlxyXG4gICAgICAgIFtpY29uXT1cImljb25cIlxyXG4gICAgICAgIGNsYXNzPVwibXItMlwiXHJcbiAgICAgICAgPlxyXG4gICAgPC9mYS1pY29uPlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJmbGV4LWdyb3ctMVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJcIj5cclxuICAgICAgICAgICAgPHNwYW4+XHJcbiAgICAgICAgICAgICAgICB7e3RleHR9fVxyXG4gICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgIDxzcGFuIFxyXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJzaG93TGVhcm5Nb3JlTGlua1wiXHJcbiAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDxhIFxyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiXCJcclxuICAgICAgICAgICAgICAgICAgICBbaHJlZl09XCJsZWFybk1vcmVMaW5rVXJsXCJcclxuICAgICAgICAgICAgICAgICAgICB0YXJnZXQ9XCJfbGVhcm5tb3JlXCJcclxuICAgICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAge3tsZWFybk1vcmVMaW5rVGV4dH19XHJcbiAgICAgICAgICAgICAgICA8L2E+XHJcbiAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDxkaXYgKm5nSWY9XCJzaG93Q2xvc2VCdXR0b25cIj5cclxuICAgICAgICA8YnV0dG9uIFxyXG4gICAgICAgICAgICBjbGFzcz1cImNsb3NlIHJvdW5kZWQgbWwtMlwiIFxyXG4gICAgICAgICAgICAoY2xpY2spPVwib25DbG9zZUJ1dHRvbkNsaWNrKClcIlxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDxmYS1pY29uIFxyXG4gICAgICAgICAgICAgICAgW2ljb25dPVwiWydmYXInLCAndGltZXMnXVwiXHJcbiAgICAgICAgICAgICAgICBzaXplPVwieHNcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICA8L2ZhLWljb24+XHJcbiAgICAgICAgPC9idXR0b24+XHJcbiAgICA8L2Rpdj5cclxuXHJcbjwvZGl2PlxyXG4iXX0=
@@ -0,0 +1,30 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { SdsMessageComponent } from './message.component';
4
+ import { FontAwesomeModule } from '@fortawesome/angular-fontawesome';
5
+ import * as i0 from "@angular/core";
6
+ export class SdsMessageModule {
7
+ }
8
+ SdsMessageModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SdsMessageModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
+ SdsMessageModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SdsMessageModule, declarations: [SdsMessageComponent], imports: [CommonModule,
10
+ FontAwesomeModule], exports: [SdsMessageComponent] });
11
+ SdsMessageModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SdsMessageModule, imports: [[
12
+ CommonModule,
13
+ FontAwesomeModule
14
+ ]] });
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SdsMessageModule, decorators: [{
16
+ type: NgModule,
17
+ args: [{
18
+ declarations: [
19
+ SdsMessageComponent
20
+ ],
21
+ imports: [
22
+ CommonModule,
23
+ FontAwesomeModule
24
+ ],
25
+ exports: [
26
+ SdsMessageComponent
27
+ ]
28
+ }]
29
+ }] });
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2RzLWNvbXBvbmVudHMvc3JjL2xpYi9tZXNzYWdlL21lc3NhZ2UubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzFELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOztBQWNyRSxNQUFNLE9BQU8sZ0JBQWdCOzs2R0FBaEIsZ0JBQWdCOzhHQUFoQixnQkFBZ0IsaUJBVnJCLG1CQUFtQixhQUduQixZQUFZO1FBQ1osaUJBQWlCLGFBR2pCLG1CQUFtQjs4R0FHZCxnQkFBZ0IsWUFSaEI7WUFDTCxZQUFZO1lBQ1osaUJBQWlCO1NBQ3BCOzJGQUtRLGdCQUFnQjtrQkFaNUIsUUFBUTttQkFBQztvQkFDTixZQUFZLEVBQUU7d0JBQ1YsbUJBQW1CO3FCQUN0QjtvQkFDRCxPQUFPLEVBQUU7d0JBQ0wsWUFBWTt3QkFDWixpQkFBaUI7cUJBQ3BCO29CQUNELE9BQU8sRUFBRTt3QkFDTCxtQkFBbUI7cUJBQ3RCO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgU2RzTWVzc2FnZUNvbXBvbmVudCB9IGZyb20gJy4vbWVzc2FnZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBGb250QXdlc29tZU1vZHVsZSB9IGZyb20gJ0Bmb3J0YXdlc29tZS9hbmd1bGFyLWZvbnRhd2Vzb21lJztcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgICBkZWNsYXJhdGlvbnM6IFtcclxuICAgICAgICBTZHNNZXNzYWdlQ29tcG9uZW50XHJcbiAgICBdLFxyXG4gICAgaW1wb3J0czogW1xyXG4gICAgICAgIENvbW1vbk1vZHVsZSxcclxuICAgICAgICBGb250QXdlc29tZU1vZHVsZVxyXG4gICAgXSxcclxuICAgIGV4cG9ydHM6IFtcclxuICAgICAgICBTZHNNZXNzYWdlQ29tcG9uZW50XHJcbiAgICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTZHNNZXNzYWdlTW9kdWxlIHt9XHJcbiJdfQ==
@@ -0,0 +1,3 @@
1
+ export * from './message.module';
2
+ export * from './message.component';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zZHMtY29tcG9uZW50cy9zcmMvbGliL21lc3NhZ2UvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMscUJBQXFCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL21lc3NhZ2UubW9kdWxlJztcclxuZXhwb3J0ICogZnJvbSAnLi9tZXNzYWdlLmNvbXBvbmVudCc7Il19
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BpY2FpbnRlcm5hdGlvbmFsLW5neC1zZHMtY29tcG9uZW50cy1zcmMtbGliLW1lc3NhZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2RzLWNvbXBvbmVudHMvc3JjL2xpYi9tZXNzYWdlL3NwaWNhaW50ZXJuYXRpb25hbC1uZ3gtc2RzLWNvbXBvbmVudHMtc3JjLWxpYi1tZXNzYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0=
@@ -65,6 +65,11 @@ export class SdsDialogComponent {
65
65
  this._callback('close', this._callbackData);
66
66
  }
67
67
  }
68
+ onCloseEscapeKeypress() {
69
+ if (this._callback) {
70
+ this._callback('close', this._callbackData);
71
+ }
72
+ }
68
73
  onModalClose() {
69
74
  this.dialogClose.emit();
70
75
  }
@@ -86,10 +91,10 @@ export class SdsDialogComponent {
86
91
  }
87
92
  }
88
93
  SdsDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SdsDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
89
- SdsDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.1", type: SdsDialogComponent, selector: "sds-dialog", inputs: { title: "title", closeText: "closeText", size: "size", primaryButtonText: "primaryButtonText", primaryButtonClass: "primaryButtonClass", primaryButtonType: "primaryButtonType", secondaryButtonText: "secondaryButtonText", secondaryButtonClass: "secondaryButtonClass", secondaryButtonType: "secondaryButtonType", closeOnEscape: "closeOnEscape", showHeader: "showHeader", showCloseButton: "showCloseButton", showPrimaryButton: "showPrimaryButton", showSecondaryButton: "showSecondaryButton", autofocusElement: "autofocusElement", modalDialogId: "modalDialogId" }, outputs: { dialogOpen: "dialogOpen", dialogClose: "dialogClose" }, viewQueries: [{ propertyName: "_modal", first: true, predicate: ["modal"], descendants: true, static: true }, { propertyName: "_content", first: true, predicate: ["content"], descendants: true, read: ElementRef, static: true }, { propertyName: "_primaryButton", first: true, predicate: ["primaryButton"], descendants: true, read: ElementRef }, { propertyName: "_secondaryButton", first: true, predicate: ["secondaryButton"], descendants: true, read: ElementRef }], ngImport: i0, template: "<sds-modal\r\n #modal\r\n [modalTitle]=\"title\"\r\n [size]=\"size\"\r\n [modalDialogId]=\"modalDialogId\"\r\n [showCloseButton]=\"showCloseButton\"\r\n [showHeader]=\"showHeader\"\r\n [translations]=\"{ close: closeText}\"\r\n [autoFocusCloseButton]=\"autofocusElement === 'close'\"\r\n [closeOnEscape]=\"closeOnEscape\"\r\n (closeClick)=\"onCloseClick()\"\r\n (modalClose)=\"onModalClose()\"\r\n (modalOpen)=\"onModalOpen()\"\r\n>\r\n\r\n <div #content [attr.tabindex]=\"autofocusElement === 'content' ? 0 : undefined\" >\r\n <ng-content></ng-content>\r\n </div>\r\n <ng-container #footer ngProjectAs='footer'>\r\n <button\r\n #secondaryButton\r\n *ngIf=\"showSecondaryButton\"\r\n class=\"btn\"\r\n [class]=\"secondaryButtonClass\"\r\n (click)=\"onSecondaryClick()\"\r\n >{{secondaryButtonText}}</button>\r\n <button\r\n #primaryButton\r\n *ngIf=\"showPrimaryButton\"\r\n class=\"btn\"\r\n [class]=\"primaryButtonClass\"\r\n (click)=\"onPrimaryClick()\"\r\n >{{primaryButtonText}}</button>\r\n </ng-container>\r\n</sds-modal>\r\n", styles: [""], components: [{ type: i1.SdsModalComponent, selector: "sds-modal", inputs: ["modalTitle", "showHeader", "showFooter", "size", "modalDialogId", "showCloseButton", "autoFocusCloseButton", "translations", "isScrollable", "closeOnEscape"], outputs: ["modalOpen", "modalClose", "closeClick"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
94
+ SdsDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.1", type: SdsDialogComponent, selector: "sds-dialog", inputs: { title: "title", closeText: "closeText", size: "size", primaryButtonText: "primaryButtonText", primaryButtonClass: "primaryButtonClass", primaryButtonType: "primaryButtonType", secondaryButtonText: "secondaryButtonText", secondaryButtonClass: "secondaryButtonClass", secondaryButtonType: "secondaryButtonType", closeOnEscape: "closeOnEscape", showHeader: "showHeader", showCloseButton: "showCloseButton", showPrimaryButton: "showPrimaryButton", showSecondaryButton: "showSecondaryButton", autofocusElement: "autofocusElement", modalDialogId: "modalDialogId" }, outputs: { dialogOpen: "dialogOpen", dialogClose: "dialogClose" }, viewQueries: [{ propertyName: "_modal", first: true, predicate: ["modal"], descendants: true, static: true }, { propertyName: "_content", first: true, predicate: ["content"], descendants: true, read: ElementRef, static: true }, { propertyName: "_primaryButton", first: true, predicate: ["primaryButton"], descendants: true, read: ElementRef }, { propertyName: "_secondaryButton", first: true, predicate: ["secondaryButton"], descendants: true, read: ElementRef }], ngImport: i0, template: "<sds-modal\r\n #modal\r\n [modalTitle]=\"title\"\r\n [size]=\"size\"\r\n [modalDialogId]=\"modalDialogId\"\r\n [showCloseButton]=\"showCloseButton\"\r\n [showHeader]=\"showHeader\"\r\n [translations]=\"{ close: closeText}\"\r\n [autoFocusCloseButton]=\"autofocusElement === 'close'\"\r\n [closeOnEscape]=\"closeOnEscape\"\r\n (closeClick)=\"onCloseClick()\"\r\n (closeEscapeKeypress)=\"onCloseEscapeKeypress()\"\r\n (modalClose)=\"onModalClose()\"\r\n (modalOpen)=\"onModalOpen()\"\r\n>\r\n\r\n <div #content [attr.tabindex]=\"autofocusElement === 'content' ? 0 : undefined\" >\r\n <ng-content></ng-content>\r\n </div>\r\n <ng-container #footer ngProjectAs='footer'>\r\n <button\r\n #secondaryButton\r\n *ngIf=\"showSecondaryButton\"\r\n class=\"btn\"\r\n [class]=\"secondaryButtonClass\"\r\n (click)=\"onSecondaryClick()\"\r\n >{{secondaryButtonText}}</button>\r\n <button\r\n #primaryButton\r\n *ngIf=\"showPrimaryButton\"\r\n class=\"btn\"\r\n [class]=\"primaryButtonClass\"\r\n (click)=\"onPrimaryClick()\"\r\n >{{primaryButtonText}}</button>\r\n </ng-container>\r\n</sds-modal>\r\n", styles: [""], components: [{ type: i1.SdsModalComponent, selector: "sds-modal", inputs: ["modalTitle", "showHeader", "showFooter", "size", "modalDialogId", "showCloseButton", "autoFocusCloseButton", "translations", "isScrollable", "closeOnEscape"], outputs: ["modalOpen", "modalClose", "closeClick", "closeEscapeKeypress"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
90
95
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SdsDialogComponent, decorators: [{
91
96
  type: Component,
92
- args: [{ selector: 'sds-dialog', template: "<sds-modal\r\n #modal\r\n [modalTitle]=\"title\"\r\n [size]=\"size\"\r\n [modalDialogId]=\"modalDialogId\"\r\n [showCloseButton]=\"showCloseButton\"\r\n [showHeader]=\"showHeader\"\r\n [translations]=\"{ close: closeText}\"\r\n [autoFocusCloseButton]=\"autofocusElement === 'close'\"\r\n [closeOnEscape]=\"closeOnEscape\"\r\n (closeClick)=\"onCloseClick()\"\r\n (modalClose)=\"onModalClose()\"\r\n (modalOpen)=\"onModalOpen()\"\r\n>\r\n\r\n <div #content [attr.tabindex]=\"autofocusElement === 'content' ? 0 : undefined\" >\r\n <ng-content></ng-content>\r\n </div>\r\n <ng-container #footer ngProjectAs='footer'>\r\n <button\r\n #secondaryButton\r\n *ngIf=\"showSecondaryButton\"\r\n class=\"btn\"\r\n [class]=\"secondaryButtonClass\"\r\n (click)=\"onSecondaryClick()\"\r\n >{{secondaryButtonText}}</button>\r\n <button\r\n #primaryButton\r\n *ngIf=\"showPrimaryButton\"\r\n class=\"btn\"\r\n [class]=\"primaryButtonClass\"\r\n (click)=\"onPrimaryClick()\"\r\n >{{primaryButtonText}}</button>\r\n </ng-container>\r\n</sds-modal>\r\n", styles: [""] }]
97
+ args: [{ selector: 'sds-dialog', template: "<sds-modal\r\n #modal\r\n [modalTitle]=\"title\"\r\n [size]=\"size\"\r\n [modalDialogId]=\"modalDialogId\"\r\n [showCloseButton]=\"showCloseButton\"\r\n [showHeader]=\"showHeader\"\r\n [translations]=\"{ close: closeText}\"\r\n [autoFocusCloseButton]=\"autofocusElement === 'close'\"\r\n [closeOnEscape]=\"closeOnEscape\"\r\n (closeClick)=\"onCloseClick()\"\r\n (closeEscapeKeypress)=\"onCloseEscapeKeypress()\"\r\n (modalClose)=\"onModalClose()\"\r\n (modalOpen)=\"onModalOpen()\"\r\n>\r\n\r\n <div #content [attr.tabindex]=\"autofocusElement === 'content' ? 0 : undefined\" >\r\n <ng-content></ng-content>\r\n </div>\r\n <ng-container #footer ngProjectAs='footer'>\r\n <button\r\n #secondaryButton\r\n *ngIf=\"showSecondaryButton\"\r\n class=\"btn\"\r\n [class]=\"secondaryButtonClass\"\r\n (click)=\"onSecondaryClick()\"\r\n >{{secondaryButtonText}}</button>\r\n <button\r\n #primaryButton\r\n *ngIf=\"showPrimaryButton\"\r\n class=\"btn\"\r\n [class]=\"primaryButtonClass\"\r\n (click)=\"onPrimaryClick()\"\r\n >{{primaryButtonText}}</button>\r\n </ng-container>\r\n</sds-modal>\r\n", styles: [""] }]
93
98
  }], ctorParameters: function () { return []; }, propDecorators: { title: [{
94
99
  type: Input
95
100
  }], closeText: [{
@@ -139,4 +144,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImpor
139
144
  type: ViewChild,
140
145
  args: ['secondaryButton', { read: ElementRef, static: false }]
141
146
  }] } });
142
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zZHMtY29tcG9uZW50cy9zcmMvbGliL21vZGFsL2RpYWxvZy9kaWFsb2cuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNkcy1jb21wb25lbnRzL3NyYy9saWIvbW9kYWwvZGlhbG9nL2RpYWxvZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQWlCLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7OztBQVdoSSxNQUFNLE9BQU8sa0JBQWtCO0lBb0MzQjtRQW5DZ0IsVUFBSyxHQUFXLEVBQUUsQ0FBQztRQUNuQixjQUFTLEdBQVksT0FBTyxDQUFDO1FBQzdCLFNBQUksR0FBOEIsSUFBSSxDQUFDO1FBRXZDLHNCQUFpQixHQUFXLElBQUksQ0FBQztRQUNqQyx1QkFBa0IsR0FBVyxhQUFhLENBQUM7UUFDM0Msc0JBQWlCLEdBQWUsUUFBUSxDQUFDO1FBRXpDLHdCQUFtQixHQUFXLFFBQVEsQ0FBQztRQUN2Qyx5QkFBb0IsR0FBVyxlQUFlLENBQUM7UUFDL0Msd0JBQW1CLEdBQWUsUUFBUSxDQUFDO1FBRTNDLGtCQUFhLEdBQVksSUFBSSxDQUFDO1FBQzlCLGVBQVUsR0FBWSxJQUFJLENBQUM7UUFDM0Isb0JBQWUsR0FBWSxJQUFJLENBQUM7UUFDaEMsc0JBQWlCLEdBQVksSUFBSSxDQUFDO1FBQ2xDLHdCQUFtQixHQUFZLElBQUksQ0FBQztRQUNwQyxxQkFBZ0IsR0FBbUQsU0FBUyxDQUFDO1FBSzVFLGVBQVUsR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUMxRCxnQkFBVyxHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO1FBVXJFLFdB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QyxLQUFLO2dCQUNVLGtCQUFrQjtzQkFBakMsS0FBSztnQkFDVSxpQkFBaUI7c0JBQWhDLEtBQUs7Z0JBRVUsbUJBQW1CO3NCQUFsQyxLQUFLO2dCQUNVLG9CQUFvQjtzQkFBbkMsS0FBSztnQkFDVSxtQkFBbUI7c0JBQWxDLEtBQUs7Z0JBRVUsYUFBYTtzQkFBNUIsS0FBSztnQkFDVSxVQUFVO3NCQUF6QixLQUFLO2dCQUNVLGVBQWU7c0JBQTlCLEtBQUs7Z0JBQ1UsaUJBQWlCO3NCQUFoQyxLQUFLO2dCQUNVLG1CQUFtQjtzQkFBbEMsS0FBSztnQkFDVSxnQkFBZ0I7c0JBQS9CLEtBQUs7Z0JBRVUsYUFBYTtzQkFBNUIsS0FBSztnQkFHVyxVQUFVO3NCQUExQixNQUFNO2dCQUNVLFdBQVc7c0JBQTNCLE1BQU07Z0JBRXVDLE1BQU07c0JBQW5ELFNBQVM7dUJBQUMsT0FBTyxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFDOEIsUUFBUTtzQkFBekUsU0FBUzt1QkFBQyxTQUFTLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBQ2lCLGNBQWM7c0JBQXRGLFNBQVM7dUJBQUMsZUFBZSxFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQUNZLGdCQUFnQjtzQkFBMUYsU0FBUzt1QkFBQyxpQkFBaUIsRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPbkluaXQsIE91dHB1dCwgU2ltcGxlQ2hhbmdlcywgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFNkc01vZGFsQ29tcG9uZW50IH0gZnJvbSAnLi4vbW9kYWwuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQnV0dG9uVHlwZSB9IGZyb20gJy4vZGlhbG9nLnR5cGVzJztcclxuXHJcbnR5cGUgbW9kYWxCdXR0b24gPSAncHJpbWFyeScgfCAnc2Vjb25kYXJ5JyB8ICdjbG9zZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnc2RzLWRpYWxvZycsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vZGlhbG9nLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL2RpYWxvZy5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2RzRGlhbG9nQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICAgIEBJbnB1dCgpIHB1YmxpYyB0aXRsZTogc3RyaW5nID0gJyc7XHJcbiAgICBASW5wdXQoKSBwdWJsaWMgY2xvc2VUZXh0Pzogc3RyaW5nID0gJ2Nsb3NlJztcclxuICAgIEBJbnB1dCgpIHB1YmxpYyBzaXplOiAnc20nIHwgJ21kJyB8ICdsZycgfCAneGwnID0gJ21kJztcclxuXHJcbiAgICBASW5wdXQoKSBwdWJsaWMgcHJpbWFyeUJ1dHRvblRleHQ6IHN0cmluZyA9ICdPayc7XHJcbiAgICBASW5wdXQoKSBwdWJsaWMgcHJpbWFyeUJ1dHRvbkNsYXNzOiBzdHJpbmcgPSAnYnRuLXByaW1hcnknO1xyXG4gICAgQElucHV0KCkgcHVibGljIHByaW1hcnlCdXR0b25UeXBlOiBCdXR0b25UeXBlID0gJ2J1dHRvbic7XHJcbiAgICBcclxuICAgIEBJbnB1dCgpIHB1YmxpYyBzZWNvbmRhcnlCdXR0b25UZXh0OiBzdHJpbmcgPSAnQ2FuY2VsJzsgICAgIFxyXG4gICAgQElucHV0KCkgcHVibGljIHNlY29uZGFyeUJ1dHRvbkNsYXNzOiBzdHJpbmcgPSAnYnRuLXNlY29uZGFyeSc7XHJcbiAgICBASW5wdXQoKSBwdWJsaWMgc2Vjb25kYXJ5QnV0dG9uVHlwZTogQnV0dG9uVHlwZSA9ICdidXR0b24nO1xyXG5cclxuICAgIEBJbnB1dCgpIHB1YmxpYyBjbG9zZU9uRXNjYXBlOiBib29sZWFuID0gdHJ1ZTtcclxuICAgIEBJbnB1dCgpIHB1YmxpYyBzaG93SGVhZGVyOiBib29sZWFuID0gdHJ1ZTtcclxuICAgIEBJbnB1dCgpIHB1YmxpYyBzaG93Q2xvc2VCdXR0b246IGJvb2xlYW4gPSB0cnVlO1xyXG4gICAgQElucHV0KCkgcHVibGljIHNob3dQcmltYXJ5QnV0dG9uOiBib29sZWFuID0gdHJ1ZTtcclxuICAgIEBJbnB1dCgpIHB1YmxpYyBzaG93U2Vjb25kYXJ5QnV0dG9uOiBib29sZWFuID0gdHJ1ZTtcclxuICAgIEBJbnB1dCgpIHB1YmxpYyBhdXRvZm9jdXNFbGVtZW50OiAgJ3ByaW1hcnknIHwgJ3NlY29uZGFyeScgfCAnY2xvc2UnIHwgJ2NvbnRlbnQnID0gJ3ByaW1hcnknO1xyXG5cclxuICAgIEBJbnB1dCgpIHB1YmxpYyBtb2RhbERpYWxvZ0lkPzogc3RyaW5nO1xyXG5cclxuXHJcbiAgICBAT3V0cHV0KCkgcHVibGljIGRpYWxvZ09wZW46IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuICAgIEBPdXRwdXQoKSBwdWJsaWMgZGlhbG9nQ2xvc2U6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuXHJcbiAgICBAVmlld0NoaWxkKCdtb2RhbCcsIHsgc3RhdGljOiB0cnVlIH0pIHByaXZhdGUgX21vZGFsOiBTZHNNb2RhbENvbXBvbmVudCB8IHVuZGVmaW5lZDtcclxuICAgIEBWaWV3Q2hpbGQoJ2NvbnRlbnQnLCB7IHJlYWQ6IEVsZW1lbnRSZWYsIHN0YXRpYzogdHJ1ZSB9KSBwcml2YXRlIF9jb250ZW50PzogRWxlbWVudFJlZjtcclxuICAgIEBWaWV3Q2hpbGQoJ3ByaW1hcnlCdXR0b24nLCB7IHJlYWQ6IEVsZW1lbnRSZWYsIHN0YXRpYzogZmFsc2UgfSkgcHJpdmF0ZSBfcHJpbWFyeUJ1dHRvbj86IEVsZW1lbnRSZWY7XHJcbiAgICBAVmlld0NoaWxkKCdzZWNvbmRhcnlCdXR0b24nLCB7IHJlYWQ6IEVsZW1lbnRSZWYsIHN0YXRpYzogZmFsc2UgfSkgcHJpdmF0ZSBfc2Vjb25kYXJ5QnV0dG9uPzogRWxlbWVudFJlZjtcclxuXHJcbiAgICBwcml2YXRlIF9jYWxsYmFjaz86IEZ1bmN0aW9uO1xyXG4gICAgcHJpdmF0ZSBfY2FsbGJhY2tEYXRhOiBhbnk7XHJcblxyXG4gICAgcHVibGljIGlzT3BlbjogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKCkge31cclxuXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy5hdXRvZm9jdXNFbGVtZW50ID09ICdwcmltYXJ5JyAmJiAhdGhpcy5zaG93UHJpbWFyeUJ1dHRvbikge1xyXG4gICAgICAgICAgICB0aGlzLmF1dG9mb2N1c0VsZW1lbnQgPSAnc2Vjb25kYXJ5JztcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHRoaXMuYXV0b2ZvY3VzRWxlbWVudCA9PSAnc2Vjb25kYXJ5JyAmJiAhdGhpcy5zaG93U2Vjb25kYXJ5QnV0dG9uKSB7XHJcbiAgICAgICAgICAgIHRoaXMuYXV0b2ZvY3VzRWxlbWVudCA9ICdjbG9zZSc7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICh0aGlzLmF1dG9mb2N1c0VsZW1lbnQgPT0gJ2Nsb3NlJyAmJiAhdGhpcy5zaG93Q2xvc2VCdXR0b24pIHtcclxuICAgICAgICAgICAgdGhpcy5hdXRvZm9jdXNFbGVtZW50ID0gJ2NvbnRlbnQnO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgb3BlbihjYWxsYmFjaz86IChidXR0b246IG1vZGFsQnV0dG9uLCBkYXRhOiBhbnkpID0+IHZvaWQsIGRhdGE/OiBhbnkpOiB2b2lke1xyXG4gICAgICAgIHRoaXMuX2NhbGxiYWNrID0gY2FsbGJhY2s7XHJcbiAgICAgICAgdGhpcy5fY2FsbGJhY2tEYXRhID0gZGF0YTtcclxuXHJcbiAgICAgICAgaWYgKHRoaXMuX21vZGFsICE9IHVuZGVmaW5lZCkge1xyXG4gICAgICAgICAgICB0aGlzLmlzT3BlbiA9IHRydWU7XHJcbiAgICAgICAgICAgIHRoaXMuX21vZGFsLm9wZW4oKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBjbG9zZSgpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy5fbW9kYWwgIT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgICAgIHRoaXMuaXNPcGVuID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMuX21vZGFsLmNsb3NlKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBvblNlY29uZGFyeUNsaWNrKCk6IHZvaWQge1xyXG4gICAgICAgIGlmICh0aGlzLl9jYWxsYmFjaykge1xyXG4gICAgICAgICAgICB0aGlzLl9jYWxsYmFjaygnc2Vjb25kYXJ5JywgdGhpcy5fY2FsbGJhY2tEYXRhKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5jbG9zZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBvblByaW1hcnlDbGljaygpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy5fY2FsbGJhY2spIHtcclxuICAgICAgICAgICAgdGhpcy5fY2FsbGJhY2soJ3ByaW1hcnknLCB0aGlzLl9jYWxsYmFja0RhdGEpO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmNsb3NlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIG9uQ2xvc2VDbGljaygpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy5fY2FsbGJhY2spIHtcclxuICAgICAgICAgICAgdGhpcy5fY2FsbGJhY2soJ2Nsb3NlJywgdGhpcy5fY2FsbGJhY2tEYXRhKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIG9uTW9kYWxDbG9zZSgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmRpYWxvZ0Nsb3NlLmVtaXQoKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgb25Nb2RhbE9wZW4oKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5kaWFsb2dPcGVuLmVtaXQoKTtcclxuICAgICAgICBzd2l0Y2ggKHRoaXMuYXV0b2ZvY3VzRWxlbWVudCkge1xyXG4gICAgICAgICAgICBjYXNlICdwcmltYXJ5JzpcclxuICAgICAgICAgICAgICAgIHRoaXMuX3ByaW1hcnlCdXR0b24/Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcclxuICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICBjYXNlICdzZWNvbmRhcnknOlxyXG4gICAgICAgICAgICAgICAgdGhpcy5fc2Vjb25kYXJ5QnV0dG9uPy5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XHJcbiAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgY2FzZSAnY29udGVudCc6XHJcbiAgICAgICAgICAgICAgICB0aGlzLl9jb250ZW50Py5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XHJcbiAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIH1cclxuICAgIH0gICAgXHJcblxyXG59XHJcblxyXG5cclxuXHJcbiIsIjxzZHMtbW9kYWxcclxuICAgICNtb2RhbFxyXG4gICAgW21vZGFsVGl0bGVdPVwidGl0bGVcIlxyXG4gICAgW3NpemVdPVwic2l6ZVwiXHJcbiAgICBbbW9kYWxEaWFsb2dJZF09XCJtb2RhbERpYWxvZ0lkXCJcclxuICAgIFtzaG93Q2xvc2VCdXR0b25dPVwic2hvd0Nsb3NlQnV0dG9uXCJcclxuICAgIFtzaG93SGVhZGVyXT1cInNob3dIZWFkZXJcIlxyXG4gICAgW3RyYW5zbGF0aW9uc109XCJ7IGNsb3NlOiBjbG9zZVRleHR9XCJcclxuICAgIFthdXRvRm9jdXNDbG9zZUJ1dHRvbl09XCJhdXRvZm9jdXNFbGVtZW50ID09PSAnY2xvc2UnXCJcclxuICAgIFtjbG9zZU9uRXNjYXBlXT1cImNsb3NlT25Fc2NhcGVcIlxyXG4gICAgKGNsb3NlQ2xpY2spPVwib25DbG9zZUNsaWNrKClcIlxyXG4gICAgKG1vZGFsQ2xvc2UpPVwib25Nb2RhbENsb3NlKClcIlxyXG4gICAgKG1vZGFsT3Blbik9XCJvbk1vZGFsT3BlbigpXCJcclxuPlxyXG5cclxuICAgIDxkaXYgI2NvbnRlbnQgW2F0dHIudGFiaW5kZXhdPVwiYXV0b2ZvY3VzRWxlbWVudCA9PT0gJ2NvbnRlbnQnID8gMCA6IHVuZGVmaW5lZFwiID5cclxuICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxuZy1jb250YWluZXIgI2Zvb3RlciBuZ1Byb2plY3RBcz0nZm9vdGVyJz5cclxuICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICAgICNzZWNvbmRhcnlCdXR0b25cclxuICAgICAgICAgICAgKm5nSWY9XCJzaG93U2Vjb25kYXJ5QnV0dG9uXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJidG5cIlxyXG4gICAgICAgICAgICBbY2xhc3NdPVwic2Vjb25kYXJ5QnV0dG9uQ2xhc3NcIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwib25TZWNvbmRhcnlDbGljaygpXCJcclxuICAgICAgICA+e3tzZWNvbmRhcnlCdXR0b25UZXh0fX08L2J1dHRvbj5cclxuICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICAgICNwcmltYXJ5QnV0dG9uXHJcbiAgICAgICAgICAgICpuZ0lmPVwic2hvd1ByaW1hcnlCdXR0b25cIlxyXG4gICAgICAgICAgICBjbGFzcz1cImJ0blwiXHJcbiAgICAgICAgICAgIFtjbGFzc109XCJwcmltYXJ5QnV0dG9uQ2xhc3NcIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwib25QcmltYXJ5Q2xpY2soKVwiXHJcbiAgICAgICAgPnt7cHJpbWFyeUJ1dHRvblRleHR9fTwvYnV0dG9uPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbjwvc2RzLW1vZGFsPlxyXG4iXX0=
147
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zZHMtY29tcG9uZW50cy9zcmMvbGliL21vZGFsL2RpYWxvZy9kaWFsb2cuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNkcy1jb21wb25lbnRzL3NyYy9saWIvbW9kYWwvZGlhbG9nL2RpYWxvZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQWlCLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7OztBQVdoSSxNQUFNLE9BQU8sa0JBQWtCO0lBb0MzQjtRQW5DZ0IsVUFBSyxHQUFXLEVBQUUsQ0FBQztRQUNuQixjQUFTLEdBQVksT0FBTyxDQUFDO1FBQzdCLFNBQUksR0FBOEIsSUFBSSxDQUFDO1FBRXZDLHNCQUFpQixHQUFXLElBQUksQ0FBQztRQUNqQyx1QkFBa0IsR0FBVyxhQUFhLENBQUM7UUFDM0Msc0JBQWlCLEdBQWUsUUFBUSxDQUFDO1FBRXpDLHdCQUFtQixHQUFXLFFBQVEsQ0FBQztRQUN2Qyx5QkFBb0IsR0FBVyxlQUFlLENBQUM7UUFDL0Msd0JBQW1CLEdBQWUsUUFBUSxDQUFDO1FBRTNDLGtCQUFhLEdBQVksSUFBSSxDQUFDO1FBQzlCLGVBQVUsR0FBWSxJQUFJLENBQUM7UUFDM0Isb0JBQWUsR0FBWSxJQUFJLENBQUM7UUFDaEMsc0JBQWlCLEdBQVksSUFBSSxDQUFDO1FBQ2xDLHdCQUFtQixHQUFZLElBQUksQ0FBQztRQUNwQyxxQkFBZ0IsR0FBbUQsU0FBUyxDQUFDO1FBSzVFLGVBQVUsR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUMxRCxnQkFBVyxHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO1FBVXJFLFdB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QmEsa0JBQWtCO2tCQUw5QixTQUFTOytCQUNJLFlBQVk7MEVBS04sS0FBSztzQkFBcEIsS0FBSztnQkFDVSxTQUFTO3NCQUF4QixLQUFLO2dCQUNVLElBQUk7c0JBQW5CLEtBQUs7Z0JBRVUsaUJBQWlCO3NCQUFoQyxLQUFLO2dCQUNVLGtCQUFrQjtzQkFBakMsS0FBSztnQkFDVSxpQkFBaUI7c0JBQWhDLEtBQUs7Z0JBRVUsbUJBQW1CO3NCQUFsQyxLQUFLO2dCQUNVLG9CQUFvQjtzQkFBbkMsS0FBSztnQkFDVSxtQkFBbUI7c0JBQWxDLEtBQUs7Z0JBRVUsYUFBYTtzQkFBNUIsS0FBSztnQkFDVSxVQUFVO3NCQUF6QixLQUFLO2dCQUNVLGVBQWU7c0JBQTlCLEtBQUs7Z0JBQ1UsaUJBQWlCO3NCQUFoQyxLQUFLO2dCQUNVLG1CQUFtQjtzQkFBbEMsS0FBSztnQkFDVSxnQkFBZ0I7c0JBQS9CLEtBQUs7Z0JBRVUsYUFBYTtzQkFBNUIsS0FBSztnQkFHVyxVQUFVO3NCQUExQixNQUFNO2dCQUNVLFdBQVc7c0JBQTNCLE1BQU07Z0JBRXVDLE1BQU07c0JBQW5ELFNBQVM7dUJBQUMsT0FBTyxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFDOEIsUUFBUTtzQkFBekUsU0FBUzt1QkFBQyxTQUFTLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBQ2lCLGNBQWM7c0JBQXRGLFNBQVM7dUJBQUMsZUFBZSxFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQUNZLGdCQUFnQjtzQkFBMUYsU0FBUzt1QkFBQyxpQkFBaUIsRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPbkluaXQsIE91dHB1dCwgU2ltcGxlQ2hhbmdlcywgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFNkc01vZGFsQ29tcG9uZW50IH0gZnJvbSAnLi4vbW9kYWwuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQnV0dG9uVHlwZSB9IGZyb20gJy4vZGlhbG9nLnR5cGVzJztcclxuXHJcbnR5cGUgbW9kYWxCdXR0b24gPSAncHJpbWFyeScgfCAnc2Vjb25kYXJ5JyB8ICdjbG9zZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnc2RzLWRpYWxvZycsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vZGlhbG9nLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL2RpYWxvZy5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2RzRGlhbG9nQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICAgIEBJbnB1dCgpIHB1YmxpYyB0aXRsZTogc3RyaW5nID0gJyc7XHJcbiAgICBASW5wdXQoKSBwdWJsaWMgY2xvc2VUZXh0Pzogc3RyaW5nID0gJ2Nsb3NlJztcclxuICAgIEBJbnB1dCgpIHB1YmxpYyBzaXplOiAnc20nIHwgJ21kJyB8ICdsZycgfCAneGwnID0gJ21kJztcclxuXHJcbiAgICBASW5wdXQoKSBwdWJsaWMgcHJpbWFyeUJ1dHRvblRleHQ6IHN0cmluZyA9ICdPayc7XHJcbiAgICBASW5wdXQoKSBwdWJsaWMgcHJpbWFyeUJ1dHRvbkNsYXNzOiBzdHJpbmcgPSAnYnRuLXByaW1hcnknO1xyXG4gICAgQElucHV0KCkgcHVibGljIHByaW1hcnlCdXR0b25UeXBlOiBCdXR0b25UeXBlID0gJ2J1dHRvbic7XHJcbiAgICBcclxuICAgIEBJbnB1dCgpIHB1YmxpYyBzZWNvbmRhcnlCdXR0b25UZXh0OiBzdHJpbmcgPSAnQ2FuY2VsJzsgICAgIFxyXG4gICAgQElucHV0KCkgcHVibGljIHNlY29uZGFyeUJ1dHRvbkNsYXNzOiBzdHJpbmcgPSAnYnRuLXNlY29uZGFyeSc7XHJcbiAgICBASW5wdXQoKSBwdWJsaWMgc2Vjb25kYXJ5QnV0dG9uVHlwZTogQnV0dG9uVHlwZSA9ICdidXR0b24nO1xyXG5cclxuICAgIEBJbnB1dCgpIHB1YmxpYyBjbG9zZU9uRXNjYXBlOiBib29sZWFuID0gdHJ1ZTtcclxuICAgIEBJbnB1dCgpIHB1YmxpYyBzaG93SGVhZGVyOiBib29sZWFuID0gdHJ1ZTtcclxuICAgIEBJbnB1dCgpIHB1YmxpYyBzaG93Q2xvc2VCdXR0b246IGJvb2xlYW4gPSB0cnVlO1xyXG4gICAgQElucHV0KCkgcHVibGljIHNob3dQcmltYXJ5QnV0dG9uOiBib29sZWFuID0gdHJ1ZTtcclxuICAgIEBJbnB1dCgpIHB1YmxpYyBzaG93U2Vjb25kYXJ5QnV0dG9uOiBib29sZWFuID0gdHJ1ZTtcclxuICAgIEBJbnB1dCgpIHB1YmxpYyBhdXRvZm9jdXNFbGVtZW50OiAgJ3ByaW1hcnknIHwgJ3NlY29uZGFyeScgfCAnY2xvc2UnIHwgJ2NvbnRlbnQnID0gJ3ByaW1hcnknO1xyXG5cclxuICAgIEBJbnB1dCgpIHB1YmxpYyBtb2RhbERpYWxvZ0lkPzogc3RyaW5nO1xyXG5cclxuXHJcbiAgICBAT3V0cHV0KCkgcHVibGljIGRpYWxvZ09wZW46IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuICAgIEBPdXRwdXQoKSBwdWJsaWMgZGlhbG9nQ2xvc2U6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuXHJcbiAgICBAVmlld0NoaWxkKCdtb2RhbCcsIHsgc3RhdGljOiB0cnVlIH0pIHByaXZhdGUgX21vZGFsOiBTZHNNb2RhbENvbXBvbmVudCB8IHVuZGVmaW5lZDtcclxuICAgIEBWaWV3Q2hpbGQoJ2NvbnRlbnQnLCB7IHJlYWQ6IEVsZW1lbnRSZWYsIHN0YXRpYzogdHJ1ZSB9KSBwcml2YXRlIF9jb250ZW50PzogRWxlbWVudFJlZjtcclxuICAgIEBWaWV3Q2hpbGQoJ3ByaW1hcnlCdXR0b24nLCB7IHJlYWQ6IEVsZW1lbnRSZWYsIHN0YXRpYzogZmFsc2UgfSkgcHJpdmF0ZSBfcHJpbWFyeUJ1dHRvbj86IEVsZW1lbnRSZWY7XHJcbiAgICBAVmlld0NoaWxkKCdzZWNvbmRhcnlCdXR0b24nLCB7IHJlYWQ6IEVsZW1lbnRSZWYsIHN0YXRpYzogZmFsc2UgfSkgcHJpdmF0ZSBfc2Vjb25kYXJ5QnV0dG9uPzogRWxlbWVudFJlZjtcclxuXHJcbiAgICBwcml2YXRlIF9jYWxsYmFjaz86IEZ1bmN0aW9uO1xyXG4gICAgcHJpdmF0ZSBfY2FsbGJhY2tEYXRhOiBhbnk7XHJcblxyXG4gICAgcHVibGljIGlzT3BlbjogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKCkge31cclxuXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy5hdXRvZm9jdXNFbGVtZW50ID09ICdwcmltYXJ5JyAmJiAhdGhpcy5zaG93UHJpbWFyeUJ1dHRvbikge1xyXG4gICAgICAgICAgICB0aGlzLmF1dG9mb2N1c0VsZW1lbnQgPSAnc2Vjb25kYXJ5JztcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHRoaXMuYXV0b2ZvY3VzRWxlbWVudCA9PSAnc2Vjb25kYXJ5JyAmJiAhdGhpcy5zaG93U2Vjb25kYXJ5QnV0dG9uKSB7XHJcbiAgICAgICAgICAgIHRoaXMuYXV0b2ZvY3VzRWxlbWVudCA9ICdjbG9zZSc7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICh0aGlzLmF1dG9mb2N1c0VsZW1lbnQgPT0gJ2Nsb3NlJyAmJiAhdGhpcy5zaG93Q2xvc2VCdXR0b24pIHtcclxuICAgICAgICAgICAgdGhpcy5hdXRvZm9jdXNFbGVtZW50ID0gJ2NvbnRlbnQnO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgb3BlbihjYWxsYmFjaz86IChidXR0b246IG1vZGFsQnV0dG9uLCBkYXRhOiBhbnkpID0+IHZvaWQsIGRhdGE/OiBhbnkpOiB2b2lke1xyXG4gICAgICAgIHRoaXMuX2NhbGxiYWNrID0gY2FsbGJhY2s7XHJcbiAgICAgICAgdGhpcy5fY2FsbGJhY2tEYXRhID0gZGF0YTtcclxuXHJcbiAgICAgICAgaWYgKHRoaXMuX21vZGFsICE9IHVuZGVmaW5lZCkge1xyXG4gICAgICAgICAgICB0aGlzLmlzT3BlbiA9IHRydWU7XHJcbiAgICAgICAgICAgIHRoaXMuX21vZGFsLm9wZW4oKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBjbG9zZSgpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy5fbW9kYWwgIT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgICAgIHRoaXMuaXNPcGVuID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMuX21vZGFsLmNsb3NlKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBvblNlY29uZGFyeUNsaWNrKCk6IHZvaWQge1xyXG4gICAgICAgIGlmICh0aGlzLl9jYWxsYmFjaykge1xyXG4gICAgICAgICAgICB0aGlzLl9jYWxsYmFjaygnc2Vjb25kYXJ5JywgdGhpcy5fY2FsbGJhY2tEYXRhKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5jbG9zZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBvblByaW1hcnlDbGljaygpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy5fY2FsbGJhY2spIHtcclxuICAgICAgICAgICAgdGhpcy5fY2FsbGJhY2soJ3ByaW1hcnknLCB0aGlzLl9jYWxsYmFja0RhdGEpO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmNsb3NlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIG9uQ2xvc2VDbGljaygpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy5fY2FsbGJhY2spIHtcclxuICAgICAgICAgICAgdGhpcy5fY2FsbGJhY2soJ2Nsb3NlJywgdGhpcy5fY2FsbGJhY2tEYXRhKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIG9uQ2xvc2VFc2NhcGVLZXlwcmVzcygpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy5fY2FsbGJhY2spIHtcclxuICAgICAgICAgICAgdGhpcy5fY2FsbGJhY2soJ2Nsb3NlJywgdGhpcy5fY2FsbGJhY2tEYXRhKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIG9uTW9kYWxDbG9zZSgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmRpYWxvZ0Nsb3NlLmVtaXQoKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgb25Nb2RhbE9wZW4oKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5kaWFsb2dPcGVuLmVtaXQoKTtcclxuICAgICAgICBzd2l0Y2ggKHRoaXMuYXV0b2ZvY3VzRWxlbWVudCkge1xyXG4gICAgICAgICAgICBjYXNlICdwcmltYXJ5JzpcclxuICAgICAgICAgICAgICAgIHRoaXMuX3ByaW1hcnlCdXR0b24/Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcclxuICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICBjYXNlICdzZWNvbmRhcnknOlxyXG4gICAgICAgICAgICAgICAgdGhpcy5fc2Vjb25kYXJ5QnV0dG9uPy5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XHJcbiAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgY2FzZSAnY29udGVudCc6XHJcbiAgICAgICAgICAgICAgICB0aGlzLl9jb250ZW50Py5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XHJcbiAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIH1cclxuICAgIH0gICAgXHJcblxyXG59XHJcblxyXG5cclxuXHJcbiIsIjxzZHMtbW9kYWxcclxuICAgICNtb2RhbFxyXG4gICAgW21vZGFsVGl0bGVdPVwidGl0bGVcIlxyXG4gICAgW3NpemVdPVwic2l6ZVwiXHJcbiAgICBbbW9kYWxEaWFsb2dJZF09XCJtb2RhbERpYWxvZ0lkXCJcclxuICAgIFtzaG93Q2xvc2VCdXR0b25dPVwic2hvd0Nsb3NlQnV0dG9uXCJcclxuICAgIFtzaG93SGVhZGVyXT1cInNob3dIZWFkZXJcIlxyXG4gICAgW3RyYW5zbGF0aW9uc109XCJ7IGNsb3NlOiBjbG9zZVRleHR9XCJcclxuICAgIFthdXRvRm9jdXNDbG9zZUJ1dHRvbl09XCJhdXRvZm9jdXNFbGVtZW50ID09PSAnY2xvc2UnXCJcclxuICAgIFtjbG9zZU9uRXNjYXBlXT1cImNsb3NlT25Fc2NhcGVcIlxyXG4gICAgKGNsb3NlQ2xpY2spPVwib25DbG9zZUNsaWNrKClcIlxyXG4gICAgKGNsb3NlRXNjYXBlS2V5cHJlc3MpPVwib25DbG9zZUVzY2FwZUtleXByZXNzKClcIlxyXG4gICAgKG1vZGFsQ2xvc2UpPVwib25Nb2RhbENsb3NlKClcIlxyXG4gICAgKG1vZGFsT3Blbik9XCJvbk1vZGFsT3BlbigpXCJcclxuPlxyXG5cclxuICAgIDxkaXYgI2NvbnRlbnQgW2F0dHIudGFiaW5kZXhdPVwiYXV0b2ZvY3VzRWxlbWVudCA9PT0gJ2NvbnRlbnQnID8gMCA6IHVuZGVmaW5lZFwiID5cclxuICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxuZy1jb250YWluZXIgI2Zvb3RlciBuZ1Byb2plY3RBcz0nZm9vdGVyJz5cclxuICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICAgICNzZWNvbmRhcnlCdXR0b25cclxuICAgICAgICAgICAgKm5nSWY9XCJzaG93U2Vjb25kYXJ5QnV0dG9uXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJidG5cIlxyXG4gICAgICAgICAgICBbY2xhc3NdPVwic2Vjb25kYXJ5QnV0dG9uQ2xhc3NcIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwib25TZWNvbmRhcnlDbGljaygpXCJcclxuICAgICAgICA+e3tzZWNvbmRhcnlCdXR0b25UZXh0fX08L2J1dHRvbj5cclxuICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICAgICNwcmltYXJ5QnV0dG9uXHJcbiAgICAgICAgICAgICpuZ0lmPVwic2hvd1ByaW1hcnlCdXR0b25cIlxyXG4gICAgICAgICAgICBjbGFzcz1cImJ0blwiXHJcbiAgICAgICAgICAgIFtjbGFzc109XCJwcmltYXJ5QnV0dG9uQ2xhc3NcIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwib25QcmltYXJ5Q2xpY2soKVwiXHJcbiAgICAgICAgPnt7cHJpbWFyeUJ1dHRvblRleHR9fTwvYnV0dG9uPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbjwvc2RzLW1vZGFsPlxyXG4iXX0=