@sitecore-jss/sitecore-jss-angular 21.5.2 → 21.5.3-canary.2

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 (66) hide show
  1. package/LICENSE.txt +202 -202
  2. package/README.md +7 -7
  3. package/angular.json +48 -48
  4. package/dist/README.md +7 -7
  5. package/dist/components/data-resolver-factory.d.ts +13 -13
  6. package/dist/components/date.directive.d.ts +20 -20
  7. package/dist/components/editframe.component.d.ts +22 -22
  8. package/dist/components/file.directive.d.ts +17 -17
  9. package/dist/components/generic-link.directive.d.ts +20 -20
  10. package/dist/components/guard-resolver-factory.d.ts +11 -11
  11. package/dist/components/hidden-rendering.component.d.ts +7 -7
  12. package/dist/components/image.directive.d.ts +35 -35
  13. package/dist/components/link.directive.d.ts +26 -26
  14. package/dist/components/missing-component.component.d.ts +7 -7
  15. package/dist/components/placeholder-loading.directive.d.ts +8 -8
  16. package/dist/components/placeholder.component.d.ts +59 -59
  17. package/dist/components/placeholder.token.d.ts +64 -64
  18. package/dist/components/raw.component.d.ts +12 -12
  19. package/dist/components/render-component.component.d.ts +33 -33
  20. package/dist/components/render-each.directive.d.ts +8 -8
  21. package/dist/components/render-empty.directive.d.ts +8 -8
  22. package/dist/components/rendering-field.d.ts +41 -41
  23. package/dist/components/rendering.d.ts +5 -5
  24. package/dist/components/rich-text.directive.d.ts +18 -18
  25. package/dist/components/router-link.directive.d.ts +19 -19
  26. package/dist/components/text.directive.d.ts +16 -16
  27. package/dist/esm2020/components/data-resolver-factory.mjs +58 -58
  28. package/dist/esm2020/components/date.directive.mjs +59 -59
  29. package/dist/esm2020/components/editframe.component.mjs +65 -65
  30. package/dist/esm2020/components/file.directive.mjs +44 -44
  31. package/dist/esm2020/components/generic-link.directive.mjs +64 -64
  32. package/dist/esm2020/components/guard-resolver-factory.mjs +85 -85
  33. package/dist/esm2020/components/hidden-rendering.component.mjs +20 -20
  34. package/dist/esm2020/components/image.directive.mjs +137 -137
  35. package/dist/esm2020/components/link.directive.mjs +117 -117
  36. package/dist/esm2020/components/missing-component.component.mjs +15 -15
  37. package/dist/esm2020/components/placeholder-loading.directive.mjs +15 -15
  38. package/dist/esm2020/components/placeholder.component.mjs +250 -250
  39. package/dist/esm2020/components/placeholder.token.mjs +23 -23
  40. package/dist/esm2020/components/raw.component.mjs +35 -35
  41. package/dist/esm2020/components/render-component.component.mjs +90 -90
  42. package/dist/esm2020/components/render-each.directive.mjs +15 -15
  43. package/dist/esm2020/components/render-empty.directive.mjs +15 -15
  44. package/dist/esm2020/components/rendering-field.mjs +1 -1
  45. package/dist/esm2020/components/rendering.mjs +7 -7
  46. package/dist/esm2020/components/rich-text.directive.mjs +62 -62
  47. package/dist/esm2020/components/router-link.directive.mjs +47 -47
  48. package/dist/esm2020/components/text.directive.mjs +57 -57
  49. package/dist/esm2020/jss-component-factory.service.mjs +82 -82
  50. package/dist/esm2020/lib.module.mjs +161 -161
  51. package/dist/esm2020/public_api.mjs +24 -24
  52. package/dist/esm2020/sitecore-jss-sitecore-jss-angular.mjs +4 -4
  53. package/dist/esm2020/utils.mjs +16 -16
  54. package/dist/fesm2015/sitecore-jss-sitecore-jss-angular.mjs +1406 -1406
  55. package/dist/fesm2020/sitecore-jss-sitecore-jss-angular.mjs +1413 -1413
  56. package/dist/index.d.ts +5 -5
  57. package/dist/jss-component-factory.service.d.ts +25 -25
  58. package/dist/lib.module.d.ts +46 -46
  59. package/dist/package.json +2 -2
  60. package/dist/public_api.d.ts +25 -25
  61. package/dist/utils.d.ts +7 -7
  62. package/ng-package.json +13 -13
  63. package/package.json +3 -3
  64. package/tsconfig.json +9 -9
  65. package/tsconfig.spec.json +16 -16
  66. package/typings/README.md +2 -2
@@ -1,24 +1,24 @@
1
- import { InjectionToken } from '@angular/core';
2
- /** Registers a statically loaded component */
3
- export class ComponentNameAndType {
4
- }
5
- /**
6
- * @param {unknown} object
7
- */
8
- export function instanceOfComponentNameAndType(object) {
9
- return typeof object === 'object' && object !== null && 'type' in object;
10
- }
11
- /**
12
- * @param {unknown} object
13
- */
14
- export function instanceOfComponentNameAndModule(object) {
15
- return typeof object === 'object' && object !== null && 'module' in object;
16
- }
17
- export const PLACEHOLDER_COMPONENTS = new InjectionToken('Sc.placeholder.components');
18
- export const PLACEHOLDER_LAZY_COMPONENTS = new InjectionToken('Sc.placeholder.lazyComponents');
19
- export const PLACEHOLDER_MISSING_COMPONENT_COMPONENT = new InjectionToken('Sc.placeholder.missingComponentComponent');
20
- export const PLACEHOLDER_HIDDEN_RENDERING_COMPONENT = new InjectionToken('Sc.placeholder.hiddenRenderingComponent');
21
- export const DYNAMIC_COMPONENT = new InjectionToken('Sc.placeholder.dynamicComponent');
22
- export const GUARD_RESOLVER = new InjectionToken('Sc.placeholder.guardResolver');
23
- export const DATA_RESOLVER = new InjectionToken('Sc.placeholder.dataResolver');
1
+ import { InjectionToken } from '@angular/core';
2
+ /** Registers a statically loaded component */
3
+ export class ComponentNameAndType {
4
+ }
5
+ /**
6
+ * @param {unknown} object
7
+ */
8
+ export function instanceOfComponentNameAndType(object) {
9
+ return typeof object === 'object' && object !== null && 'type' in object;
10
+ }
11
+ /**
12
+ * @param {unknown} object
13
+ */
14
+ export function instanceOfComponentNameAndModule(object) {
15
+ return typeof object === 'object' && object !== null && 'module' in object;
16
+ }
17
+ export const PLACEHOLDER_COMPONENTS = new InjectionToken('Sc.placeholder.components');
18
+ export const PLACEHOLDER_LAZY_COMPONENTS = new InjectionToken('Sc.placeholder.lazyComponents');
19
+ export const PLACEHOLDER_MISSING_COMPONENT_COMPONENT = new InjectionToken('Sc.placeholder.missingComponentComponent');
20
+ export const PLACEHOLDER_HIDDEN_RENDERING_COMPONENT = new InjectionToken('Sc.placeholder.hiddenRenderingComponent');
21
+ export const DYNAMIC_COMPONENT = new InjectionToken('Sc.placeholder.dynamicComponent');
22
+ export const GUARD_RESOLVER = new InjectionToken('Sc.placeholder.guardResolver');
23
+ export const DATA_RESOLVER = new InjectionToken('Sc.placeholder.dataResolver');
24
24
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhY2Vob2xkZXIudG9rZW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9wbGFjZWhvbGRlci50b2tlbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFRLE1BQU0sZUFBZSxDQUFDO0FBTXJELDhDQUE4QztBQUM5QyxNQUFNLE9BQU8sb0JBQW9CO0NBVWhDO0FBbUJEOztHQUVHO0FBQ0gsTUFBTSxVQUFVLDhCQUE4QixDQUFDLE1BQWU7SUFDNUQsT0FBTyxPQUFPLE1BQU0sS0FBSyxRQUFRLElBQUksTUFBTSxLQUFLLElBQUksSUFBSSxNQUFNLElBQUksTUFBTSxDQUFDO0FBQzNFLENBQUM7QUFFRDs7R0FFRztBQUNILE1BQU0sVUFBVSxnQ0FBZ0MsQ0FDOUMsTUFBZTtJQUVmLE9BQU8sT0FBTyxNQUFNLEtBQUssUUFBUSxJQUFJLE1BQU0sS0FBSyxJQUFJLElBQUksUUFBUSxJQUFJLE1BQU0sQ0FBQztBQUM3RSxDQUFDO0FBRUQsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUcsSUFBSSxjQUFjLENBQ3RELDJCQUEyQixDQUM1QixDQUFDO0FBQ0YsTUFBTSxDQUFDLE1BQU0sMkJBQTJCLEdBQUcsSUFBSSxjQUFjLENBQzNELCtCQUErQixDQUNoQyxDQUFDO0FBQ0YsTUFBTSxDQUFDLE1BQU0sdUNBQXVDLEdBQUcsSUFBSSxjQUFjLENBQ3ZFLDBDQUEwQyxDQUMzQyxDQUFDO0FBQ0YsTUFBTSxDQUFDLE1BQU0sc0NBQXNDLEdBQUcsSUFBSSxjQUFjLENBQ3RFLHlDQUF5QyxDQUMxQyxDQUFDO0FBQ0YsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxjQUFjLENBQ2pELGlDQUFpQyxDQUNsQyxDQUFDO0FBSUYsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLElBQUksY0FBYyxDQUFnQiw4QkFBOEIsQ0FBQyxDQUFDO0FBTWhHLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxJQUFJLGNBQWMsQ0FBZSw2QkFBNkIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4sIFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgRGF0YSwgUm91dGVyU3RhdGVTbmFwc2hvdCwgVXJsVHJlZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQ29tcG9uZW50RmFjdG9yeVJlc3VsdCB9IGZyb20gJy4uL2pzcy1jb21wb25lbnQtZmFjdG9yeS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQ29tcG9uZW50UmVuZGVyaW5nIH0gZnJvbSAnLi4vcHVibGljX2FwaSc7XHJcblxyXG4vKiogUmVnaXN0ZXJzIGEgc3RhdGljYWxseSBsb2FkZWQgY29tcG9uZW50ICovXHJcbmV4cG9ydCBjbGFzcyBDb21wb25lbnROYW1lQW5kVHlwZSB7XHJcbiAgbmFtZTogc3RyaW5nO1xyXG4gIHR5cGU6IFR5cGU8dW5rbm93bj47XHJcblxyXG4gIGNhbkFjdGl2YXRlPzpcclxuICAgIHwgSnNzQ2FuQWN0aXZhdGVcclxuICAgIHwgVHlwZTxKc3NDYW5BY3RpdmF0ZT5cclxuICAgIHwgSnNzQ2FuQWN0aXZhdGVGblxyXG4gICAgfCBBcnJheTxKc3NDYW5BY3RpdmF0ZSB8IEpzc0NhbkFjdGl2YXRlRm4gfCBUeXBlPEpzc0NhbkFjdGl2YXRlPj47XHJcbiAgcmVzb2x2ZT86IHsgW2tleTogc3RyaW5nXTogSnNzUmVzb2x2ZTx1bmtub3duPiB8IFR5cGU8SnNzUmVzb2x2ZTx1bmtub3duPj4gfTtcclxufVxyXG5cclxuLyoqIFJlZ2lzdGVycyBhIGxhemlseSBsb2FkZWQgY29tcG9uZW50IGJ5IG5hbWUgYW5kIG1vZHVsZSB0byBsYXp5IGxvYWQgd2hlbiBpdCdzIG5lZWRlZCAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIENvbXBvbmVudE5hbWVBbmRNb2R1bGUge1xyXG4gIC8qKiBOYW1lIG9mIHRoZSBjb21wb25lbnQgKi9cclxuICBwYXRoOiBzdHJpbmc7XHJcbiAgLyoqXHJcbiAgICogRHluYW1pYyBpbXBvcnQgb2YgdGhlIGNvbXBvbmVudCxcclxuICAgKiBlLmcuICgpID0+IGltcG9ydCgnLi9wYXRoL3RvL2xhenlsb2FkZWRjb21wb25lbnQubW9kdWxlJykudGhlbihtID0+IG0uTGF6eUxvYWRlZENvbXBvbmVudE1vZHVsZUV4cG9ydE5hbWUpXHJcbiAgICovXHJcbiAgbG9hZENoaWxkcmVuOiAoKSA9PiBQcm9taXNlPFR5cGU8dW5rbm93bj4+O1xyXG4gIGNhbkFjdGl2YXRlPzpcclxuICAgIHwgSnNzQ2FuQWN0aXZhdGVcclxuICAgIHwgSnNzQ2FuQWN0aXZhdGVGblxyXG4gICAgfCBUeXBlPEpzc0NhbkFjdGl2YXRlPlxyXG4gICAgfCBBcnJheTxKc3NDYW5BY3RpdmF0ZSB8IEpzc0NhbkFjdGl2YXRlRm4gfCBUeXBlPEpzc0NhbkFjdGl2YXRlPj47XHJcbiAgcmVzb2x2ZT86IHsgW2tleTogc3RyaW5nXTogSnNzUmVzb2x2ZTx1bmtub3duPiB8IFR5cGU8SnNzUmVzb2x2ZTx1bmtub3duPj4gfTtcclxufVxyXG5cclxuLyoqXHJcbiAqIEBwYXJhbSB7dW5rbm93bn0gb2JqZWN0XHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gaW5zdGFuY2VPZkNvbXBvbmVudE5hbWVBbmRUeXBlKG9iamVjdDogdW5rbm93bik6IG9iamVjdCBpcyBDb21wb25lbnROYW1lQW5kVHlwZSB7XHJcbiAgcmV0dXJuIHR5cGVvZiBvYmplY3QgPT09ICdvYmplY3QnICYmIG9iamVjdCAhPT0gbnVsbCAmJiAndHlwZScgaW4gb2JqZWN0O1xyXG59XHJcblxyXG4vKipcclxuICogQHBhcmFtIHt1bmtub3dufSBvYmplY3RcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBpbnN0YW5jZU9mQ29tcG9uZW50TmFtZUFuZE1vZHVsZShcclxuICBvYmplY3Q6IHVua25vd25cclxuKTogb2JqZWN0IGlzIENvbXBvbmVudE5hbWVBbmRNb2R1bGUge1xyXG4gIHJldHVybiB0eXBlb2Ygb2JqZWN0ID09PSAnb2JqZWN0JyAmJiBvYmplY3QgIT09IG51bGwgJiYgJ21vZHVsZScgaW4gb2JqZWN0O1xyXG59XHJcblxyXG5leHBvcnQgY29uc3QgUExBQ0VIT0xERVJfQ09NUE9ORU5UUyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxDb21wb25lbnROYW1lQW5kVHlwZVtdPihcclxuICAnU2MucGxhY2Vob2xkZXIuY29tcG9uZW50cydcclxuKTtcclxuZXhwb3J0IGNvbnN0IFBMQUNFSE9MREVSX0xBWllfQ09NUE9ORU5UUyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxDb21wb25lbnROYW1lQW5kVHlwZVtdPihcclxuICAnU2MucGxhY2Vob2xkZXIubGF6eUNvbXBvbmVudHMnXHJcbik7XHJcbmV4cG9ydCBjb25zdCBQTEFDRUhPTERFUl9NSVNTSU5HX0NPTVBPTkVOVF9DT01QT05FTlQgPSBuZXcgSW5qZWN0aW9uVG9rZW48VHlwZTx1bmtub3duPj4oXHJcbiAgJ1NjLnBsYWNlaG9sZGVyLm1pc3NpbmdDb21wb25lbnRDb21wb25lbnQnXHJcbik7XHJcbmV4cG9ydCBjb25zdCBQTEFDRUhPTERFUl9ISURERU5fUkVOREVSSU5HX0NPTVBPTkVOVCA9IG5ldyBJbmplY3Rpb25Ub2tlbjxUeXBlPHVua25vd24+PihcclxuICAnU2MucGxhY2Vob2xkZXIuaGlkZGVuUmVuZGVyaW5nQ29tcG9uZW50J1xyXG4pO1xyXG5leHBvcnQgY29uc3QgRFlOQU1JQ19DT01QT05FTlQgPSBuZXcgSW5qZWN0aW9uVG9rZW48VHlwZTx1bmtub3duPiB8IHsgW3M6IHN0cmluZ106IHVua25vd24gfT4oXHJcbiAgJ1NjLnBsYWNlaG9sZGVyLmR5bmFtaWNDb21wb25lbnQnXHJcbik7XHJcblxyXG5leHBvcnQgdHlwZSBHdWFyZFJlc29sdmVyID0gKHJlc3VsdDogQ29tcG9uZW50RmFjdG9yeVJlc3VsdFtdKSA9PiBQcm9taXNlPENvbXBvbmVudEZhY3RvcnlSZXN1bHRbXT47XHJcblxyXG5leHBvcnQgY29uc3QgR1VBUkRfUkVTT0xWRVIgPSBuZXcgSW5qZWN0aW9uVG9rZW48R3VhcmRSZXNvbHZlcj4oJ1NjLnBsYWNlaG9sZGVyLmd1YXJkUmVzb2x2ZXInKTtcclxuXHJcbmV4cG9ydCB0eXBlIERhdGFSZXNvbHZlciA9IChcclxuICByZXN1bHQ6IENvbXBvbmVudEZhY3RvcnlSZXN1bHRbXVxyXG4pID0+IFByb21pc2U8QXJyYXk8eyBmYWN0b3J5OiBDb21wb25lbnRGYWN0b3J5UmVzdWx0OyBkYXRhOiBEYXRhIH0+PjtcclxuXHJcbmV4cG9ydCBjb25zdCBEQVRBX1JFU09MVkVSID0gbmV3IEluamVjdGlvblRva2VuPERhdGFSZXNvbHZlcj4oJ1NjLnBsYWNlaG9sZGVyLmRhdGFSZXNvbHZlcicpO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBHdWFyZElucHV0IHtcclxuICBhY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdDtcclxuICByb3V0ZXJTdGF0ZTogUm91dGVyU3RhdGVTbmFwc2hvdDtcclxuICByZW5kZXJpbmc6IENvbXBvbmVudFJlbmRlcmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBKc3NDYW5BY3RpdmF0ZUZuIHtcclxuICAoaW5wdXQ6IEd1YXJkSW5wdXQpOlxyXG4gICAgfCBPYnNlcnZhYmxlPGJvb2xlYW4gfCBVcmxUcmVlIHwgc3RyaW5nIHwgc3RyaW5nW10+XHJcbiAgICB8IFByb21pc2U8Ym9vbGVhbiB8IFVybFRyZWUgfCBzdHJpbmcgfCBzdHJpbmdbXT5cclxuICAgIHwgYm9vbGVhblxyXG4gICAgfCBVcmxUcmVlXHJcbiAgICB8IHN0cmluZ1xyXG4gICAgfCBzdHJpbmdbXTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBKc3NDYW5BY3RpdmF0ZSB7XHJcbiAgY2FuQWN0aXZhdGU6IEpzc0NhbkFjdGl2YXRlRm47XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSnNzUmVzb2x2ZTxUPiB7XHJcbiAgcmVzb2x2ZShpbnB1dDogR3VhcmRJbnB1dCk6IE9ic2VydmFibGU8VD4gfCBQcm9taXNlPFQ+IHwgVDtcclxufVxyXG4iXX0=
@@ -1,36 +1,36 @@
1
- import { Component, Input } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class RawComponent {
4
- constructor(renderer, elementRef) {
5
- this.renderer = renderer;
6
- this.elementRef = elementRef;
7
- }
8
- ngOnInit() {
9
- const el = this.renderer.createElement(this.rendering.name);
10
- const contents = this.renderer.createText(this.rendering.contents || '');
11
- const attributes = this.rendering.attributes;
12
- for (const attr in attributes) {
13
- // eslint-disable-next-line no-prototype-builtins
14
- if (attributes.hasOwnProperty(attr)) {
15
- const value = attributes[attr];
16
- this.renderer.setAttribute(el, attr, value || '');
17
- }
18
- }
19
- this.renderer.appendChild(el, contents);
20
- const parentNode = this.renderer.parentNode(this.elementRef.nativeElement);
21
- this.renderer.insertBefore(parentNode, el, this.elementRef.nativeElement);
22
- parentNode.removeChild(this.elementRef.nativeElement);
23
- }
24
- }
25
- RawComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RawComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
26
- RawComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: RawComponent, selector: "sc-raw", inputs: { rendering: "rendering" }, ngImport: i0, template: '', isInline: true });
27
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RawComponent, decorators: [{
28
- type: Component,
29
- args: [{
30
- selector: 'sc-raw',
31
- template: '',
32
- }]
33
- }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }]; }, propDecorators: { rendering: [{
34
- type: Input
35
- }] } });
1
+ import { Component, Input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class RawComponent {
4
+ constructor(renderer, elementRef) {
5
+ this.renderer = renderer;
6
+ this.elementRef = elementRef;
7
+ }
8
+ ngOnInit() {
9
+ const el = this.renderer.createElement(this.rendering.name);
10
+ const contents = this.renderer.createText(this.rendering.contents || '');
11
+ const attributes = this.rendering.attributes;
12
+ for (const attr in attributes) {
13
+ // eslint-disable-next-line no-prototype-builtins
14
+ if (attributes.hasOwnProperty(attr)) {
15
+ const value = attributes[attr];
16
+ this.renderer.setAttribute(el, attr, value || '');
17
+ }
18
+ }
19
+ this.renderer.appendChild(el, contents);
20
+ const parentNode = this.renderer.parentNode(this.elementRef.nativeElement);
21
+ this.renderer.insertBefore(parentNode, el, this.elementRef.nativeElement);
22
+ parentNode.removeChild(this.elementRef.nativeElement);
23
+ }
24
+ }
25
+ RawComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RawComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
26
+ RawComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: RawComponent, selector: "sc-raw", inputs: { rendering: "rendering" }, ngImport: i0, template: '', isInline: true });
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RawComponent, decorators: [{
28
+ type: Component,
29
+ args: [{
30
+ selector: 'sc-raw',
31
+ template: '',
32
+ }]
33
+ }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }]; }, propDecorators: { rendering: [{
34
+ type: Input
35
+ }] } });
36
36
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmF3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3Jhdy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxLQUFLLEVBQXFCLE1BQU0sZUFBZSxDQUFDOztBQU9oRixNQUFNLE9BQU8sWUFBWTtJQUd2QixZQUFvQixRQUFtQixFQUFVLFVBQXNCO1FBQW5ELGFBQVEsR0FBUixRQUFRLENBQVc7UUFBVSxlQUFVLEdBQVYsVUFBVSxDQUFZO0lBQUcsQ0FBQztJQUUzRSxRQUFRO1FBQ04sTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM1RCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUN6RSxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQztRQUM3QyxLQUFLLE1BQU0sSUFBSSxJQUFJLFVBQVUsRUFBRTtZQUM3QixpREFBaUQ7WUFDakQsSUFBSSxVQUFVLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUNuQyxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQy9CLElBQUksQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLEVBQUUsRUFBRSxJQUFJLEVBQUUsS0FBSyxJQUFJLEVBQUUsQ0FBQyxDQUFDO2FBQ25EO1NBQ0Y7UUFFRCxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxFQUFFLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDeEMsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUMzRSxJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxVQUFVLEVBQUUsRUFBRSxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDMUUsVUFBVSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ3hELENBQUM7O3lHQXJCVSxZQUFZOzZGQUFaLFlBQVksa0ZBRmIsRUFBRTsyRkFFRCxZQUFZO2tCQUp4QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxRQUFRO29CQUNsQixRQUFRLEVBQUUsRUFBRTtpQkFDYjt5SEFFVSxTQUFTO3NCQUFqQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbnB1dCwgT25Jbml0LCBSZW5kZXJlcjIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgSHRtbEVsZW1lbnRSZW5kZXJpbmcgfSBmcm9tICdAc2l0ZWNvcmUtanNzL3NpdGVjb3JlLWpzcy9sYXlvdXQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzYy1yYXcnLFxyXG4gIHRlbXBsYXRlOiAnJyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFJhd0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgQElucHV0KCkgcmVuZGVyaW5nOiBIdG1sRWxlbWVudFJlbmRlcmluZztcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLCBwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYpIHt9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgY29uc3QgZWwgPSB0aGlzLnJlbmRlcmVyLmNyZWF0ZUVsZW1lbnQodGhpcy5yZW5kZXJpbmcubmFtZSk7XHJcbiAgICBjb25zdCBjb250ZW50cyA9IHRoaXMucmVuZGVyZXIuY3JlYXRlVGV4dCh0aGlzLnJlbmRlcmluZy5jb250ZW50cyB8fCAnJyk7XHJcbiAgICBjb25zdCBhdHRyaWJ1dGVzID0gdGhpcy5yZW5kZXJpbmcuYXR0cmlidXRlcztcclxuICAgIGZvciAoY29uc3QgYXR0ciBpbiBhdHRyaWJ1dGVzKSB7XHJcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1wcm90b3R5cGUtYnVpbHRpbnNcclxuICAgICAgaWYgKGF0dHJpYnV0ZXMuaGFzT3duUHJvcGVydHkoYXR0cikpIHtcclxuICAgICAgICBjb25zdCB2YWx1ZSA9IGF0dHJpYnV0ZXNbYXR0cl07XHJcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUoZWwsIGF0dHIsIHZhbHVlIHx8ICcnKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHRoaXMucmVuZGVyZXIuYXBwZW5kQ2hpbGQoZWwsIGNvbnRlbnRzKTtcclxuICAgIGNvbnN0IHBhcmVudE5vZGUgPSB0aGlzLnJlbmRlcmVyLnBhcmVudE5vZGUodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQpO1xyXG4gICAgdGhpcy5yZW5kZXJlci5pbnNlcnRCZWZvcmUocGFyZW50Tm9kZSwgZWwsIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KTtcclxuICAgIHBhcmVudE5vZGUucmVtb3ZlQ2hpbGQodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQpO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,98 +1,98 @@
1
- import { Component, Inject, Input, ViewChild, ViewContainerRef, } from '@angular/core';
2
- import { Observable } from 'rxjs';
3
- import { takeWhile } from 'rxjs/operators';
4
- import { PLACEHOLDER_MISSING_COMPONENT_COMPONENT } from './placeholder.token';
5
- import { RawComponent } from './raw.component';
6
- import { isRawRendering } from './rendering';
7
- import * as i0 from "@angular/core";
8
- import * as i1 from "../jss-component-factory.service";
9
- /**
10
- * Renders a single JSS component given a rendering definition.
11
- * Useful inside templated placeholders.
12
- */
13
- export class RenderComponentComponent {
14
- constructor(differs, componentFactory, missingComponentComponent) {
15
- this.differs = differs;
16
- this.componentFactory = componentFactory;
17
- this.missingComponentComponent = missingComponentComponent;
18
- this.destroyed = false;
19
- }
20
- set inputs(value) {
21
- this._inputs = value;
22
- if (!this._differ && value) {
23
- this._differ = this.differs.find(value).create();
24
- }
25
- }
26
- ngOnChanges(changes) {
27
- if (changes.rendering) {
28
- this._render();
29
- }
30
- }
31
- _setComponentInputs(componentInstance, inputs) {
32
- Object.entries(inputs).forEach(([input, inputValue]) => (componentInstance[input] = inputValue));
33
- }
34
- _subscribeComponentOutputs(componentInstance, outputs) {
35
- Object.keys(outputs)
36
- .filter((output) => componentInstance[output] && componentInstance[output] instanceof Observable)
37
- .forEach((output) => componentInstance[output]
38
- .pipe(takeWhile(() => !this.destroyed))
39
- .subscribe(outputs[output]));
40
- }
41
- _render() {
42
- this.view.clear();
43
- if (!this.rendering) {
44
- return;
45
- }
46
- const resolveComponent = isRawRendering(this.rendering)
47
- ? Promise.resolve({
48
- componentImplementation: RawComponent,
49
- componentDefinition: this.rendering,
50
- })
51
- : this.componentFactory.getComponent(this.rendering);
52
- resolveComponent.then((rendering) => {
53
- if (!rendering.componentImplementation) {
54
- const componentName = rendering.componentDefinition.componentName;
1
+ import { Component, Inject, Input, ViewChild, ViewContainerRef, } from '@angular/core';
2
+ import { Observable } from 'rxjs';
3
+ import { takeWhile } from 'rxjs/operators';
4
+ import { PLACEHOLDER_MISSING_COMPONENT_COMPONENT } from './placeholder.token';
5
+ import { RawComponent } from './raw.component';
6
+ import { isRawRendering } from './rendering';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "../jss-component-factory.service";
9
+ /**
10
+ * Renders a single JSS component given a rendering definition.
11
+ * Useful inside templated placeholders.
12
+ */
13
+ export class RenderComponentComponent {
14
+ constructor(differs, componentFactory, missingComponentComponent) {
15
+ this.differs = differs;
16
+ this.componentFactory = componentFactory;
17
+ this.missingComponentComponent = missingComponentComponent;
18
+ this.destroyed = false;
19
+ }
20
+ set inputs(value) {
21
+ this._inputs = value;
22
+ if (!this._differ && value) {
23
+ this._differ = this.differs.find(value).create();
24
+ }
25
+ }
26
+ ngOnChanges(changes) {
27
+ if (changes.rendering) {
28
+ this._render();
29
+ }
30
+ }
31
+ _setComponentInputs(componentInstance, inputs) {
32
+ Object.entries(inputs).forEach(([input, inputValue]) => (componentInstance[input] = inputValue));
33
+ }
34
+ _subscribeComponentOutputs(componentInstance, outputs) {
35
+ Object.keys(outputs)
36
+ .filter((output) => componentInstance[output] && componentInstance[output] instanceof Observable)
37
+ .forEach((output) => componentInstance[output]
38
+ .pipe(takeWhile(() => !this.destroyed))
39
+ .subscribe(outputs[output]));
40
+ }
41
+ _render() {
42
+ this.view.clear();
43
+ if (!this.rendering) {
44
+ return;
45
+ }
46
+ const resolveComponent = isRawRendering(this.rendering)
47
+ ? Promise.resolve({
48
+ componentImplementation: RawComponent,
49
+ componentDefinition: this.rendering,
50
+ })
51
+ : this.componentFactory.getComponent(this.rendering);
52
+ resolveComponent.then((rendering) => {
53
+ if (!rendering.componentImplementation) {
54
+ const componentName = rendering.componentDefinition.componentName;
55
55
  console.error(`Attempted to render unknown component ${componentName}.`, `Ensure component is mapped, like:
56
56
  JssModule.withComponents([
57
57
  { name: '${componentName}', type: ${componentName}Component }
58
- ])`);
59
- rendering.componentImplementation = this.missingComponentComponent;
60
- }
61
- const componentInstance = this.view.createComponent(rendering.componentImplementation)
62
- .instance;
63
- componentInstance.rendering = rendering.componentDefinition;
64
- if (this._inputs) {
65
- this._setComponentInputs(componentInstance, this._inputs);
66
- }
67
- if (this.outputs) {
68
- this._subscribeComponentOutputs(componentInstance, this.outputs);
69
- }
70
- });
71
- }
72
- }
73
- RenderComponentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RenderComponentComponent, deps: [{ token: i0.KeyValueDiffers }, { token: i1.JssComponentFactoryService }, { token: PLACEHOLDER_MISSING_COMPONENT_COMPONENT }], target: i0.ɵɵFactoryTarget.Component });
58
+ ])`);
59
+ rendering.componentImplementation = this.missingComponentComponent;
60
+ }
61
+ const componentInstance = this.view.createComponent(rendering.componentImplementation)
62
+ .instance;
63
+ componentInstance.rendering = rendering.componentDefinition;
64
+ if (this._inputs) {
65
+ this._setComponentInputs(componentInstance, this._inputs);
66
+ }
67
+ if (this.outputs) {
68
+ this._subscribeComponentOutputs(componentInstance, this.outputs);
69
+ }
70
+ });
71
+ }
72
+ }
73
+ RenderComponentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RenderComponentComponent, deps: [{ token: i0.KeyValueDiffers }, { token: i1.JssComponentFactoryService }, { token: PLACEHOLDER_MISSING_COMPONENT_COMPONENT }], target: i0.ɵɵFactoryTarget.Component });
74
74
  RenderComponentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: RenderComponentComponent, selector: "sc-render-component", inputs: { rendering: "rendering", outputs: "outputs", inputs: "inputs" }, viewQueries: [{ propertyName: "view", first: true, predicate: ["view"], descendants: true, read: ViewContainerRef, static: true }], usesOnChanges: true, ngImport: i0, template: `
75
75
  <ng-template #view></ng-template>
76
- `, isInline: true });
77
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RenderComponentComponent, decorators: [{
78
- type: Component,
79
- args: [{
80
- selector: 'sc-render-component',
76
+ `, isInline: true });
77
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RenderComponentComponent, decorators: [{
78
+ type: Component,
79
+ args: [{
80
+ selector: 'sc-render-component',
81
81
  template: `
82
82
  <ng-template #view></ng-template>
83
- `,
84
- }]
85
- }], ctorParameters: function () { return [{ type: i0.KeyValueDiffers }, { type: i1.JssComponentFactoryService }, { type: i0.Type, decorators: [{
86
- type: Inject,
87
- args: [PLACEHOLDER_MISSING_COMPONENT_COMPONENT]
88
- }] }]; }, propDecorators: { rendering: [{
89
- type: Input
90
- }], outputs: [{
91
- type: Input
92
- }], view: [{
93
- type: ViewChild,
94
- args: ['view', { read: ViewContainerRef, static: true }]
95
- }], inputs: [{
96
- type: Input
97
- }] } });
83
+ `,
84
+ }]
85
+ }], ctorParameters: function () { return [{ type: i0.KeyValueDiffers }, { type: i1.JssComponentFactoryService }, { type: i0.Type, decorators: [{
86
+ type: Inject,
87
+ args: [PLACEHOLDER_MISSING_COMPONENT_COMPONENT]
88
+ }] }]; }, propDecorators: { rendering: [{
89
+ type: Input
90
+ }], outputs: [{
91
+ type: Input
92
+ }], view: [{
93
+ type: ViewChild,
94
+ args: ['view', { read: ViewContainerRef, static: true }]
95
+ }], inputs: [{
96
+ type: Input
97
+ }] } });
98
98
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVuZGVyLWNvbXBvbmVudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9yZW5kZXItY29tcG9uZW50LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULE1BQU0sRUFDTixLQUFLLEVBTUwsU0FBUyxFQUNULGdCQUFnQixHQUNqQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2xDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUszQyxPQUFPLEVBQUUsdUNBQXVDLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM5RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7O0FBRTdDOzs7R0FHRztBQU9ILE1BQU0sT0FBTyx3QkFBd0I7SUFTbkMsWUFDVSxPQUF3QixFQUN4QixnQkFBNEMsRUFFNUMseUJBQTJEO1FBSDNELFlBQU8sR0FBUCxPQUFPLENBQWlCO1FBQ3hCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBNEI7UUFFNUMsOEJBQXlCLEdBQXpCLHlCQUF5QixDQUFrQztRQU43RCxjQUFTLEdBQUcsS0FBSyxDQUFDO0lBT3ZCLENBQUM7SUFFSixJQUNJLE1BQU0sQ0FBQyxLQUFpQztRQUMxQyxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztRQUNyQixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sSUFBSSxLQUFLLEVBQUU7WUFDMUIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztTQUNsRDtJQUNILENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxPQUFPLENBQUMsU0FBUyxFQUFFO1lBQ3JCLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztTQUNoQjtJQUNILENBQUM7SUFFTyxtQkFBbUIsQ0FDekIsaUJBQTZDLEVBQzdDLE1BQWtDO1FBRWxDLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsT0FBTyxDQUM1QixDQUFDLENBQUMsS0FBSyxFQUFFLFVBQVUsQ0FBQyxFQUFFLEVBQUUsQ0FDdEIsQ0FBRSxpQkFBaUQsQ0FBQyxLQUFLLENBQUMsR0FBRyxVQUFVLENBQUMsQ0FDM0UsQ0FBQztJQUNKLENBQUM7SUFFTywwQkFBMEIsQ0FDaEMsaUJBQTZDLEVBQzdDLE9BQXNEO1FBRXRELE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO2FBQ2pCLE1BQU0sQ0FDTCxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDLElBQUksaUJBQWlCLENBQUMsTUFBTSxDQUFDLFlBQVksVUFBVSxDQUN6RjthQUNBLE9BQU8sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQ2pCLGlCQUFpQixDQUFDLE1BQU0sQ0FBeUI7YUFDL0MsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQzthQUN0QyxTQUFTLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQzlCLENBQUM7SUFDTixDQUFDO0lBRU8sT0FBTztRQUNiLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFFbEIsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDbkIsT0FBTztTQUNSO1FBRUQsTUFBTSxnQkFBZ0IsR0FBb0MsY0FBYyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7WUFDdEYsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUM7Z0JBQ2QsdUJBQXVCLEVBQUUsWUFBWTtnQkFDckMsbUJBQW1CLEVBQUUsSUFBSSxDQUFDLFNBQVM7YUFDcEMsQ0FBQztZQUNKLENBQUMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUV2RCxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRTtZQUNsQyxJQUFJLENBQUMsU0FBUyxDQUFDLHVCQUF1QixFQUFFO2dCQUN0QyxNQUFNLGFBQWEsR0FBSSxTQUFTLENBQUMsbUJBQTBDLENBQUMsYUFBYSxDQUFDO2dCQUMxRixPQUFPLENBQUMsS0FBSyxDQUNYLHlDQUF5QyxhQUFhLEdBQUcsRUFDekQ7O3VCQUVhLGFBQWEsWUFBWSxhQUFhO2FBQ2hELENBQ0osQ0FBQztnQkFFRixTQUFTLENBQUMsdUJBQXVCLEdBQUcsSUFBSSxDQUFDLHlCQUF5QixDQUFDO2FBQ3BFO1lBRUQsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsdUJBQXVCLENBQUM7aUJBQ25GLFFBQVEsQ0FBQztZQUNaLGlCQUFpQixDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUMsbUJBQW1CLENBQUM7WUFDNUQsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO2dCQUNoQixJQUFJLENBQUMsbUJBQW1CLENBQUMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2FBQzNEO1lBQ0QsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO2dCQUNoQixJQUFJLENBQUMsMEJBQTBCLENBQUMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2FBQ2xFO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOztxSEE3RlUsd0JBQXdCLDJGQVl6Qix1Q0FBdUM7eUdBWnRDLHdCQUF3Qiw4TUFHUixnQkFBZ0IsZ0VBUGpDOztHQUVUOzJGQUVVLHdCQUF3QjtrQkFOcEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUscUJBQXFCO29CQUMvQixRQUFRLEVBQUU7O0dBRVQ7aUJBQ0Y7OzBCQWFJLE1BQU07MkJBQUMsdUNBQXVDOzRDQVh4QyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDK0QsSUFBSTtzQkFBeEUsU0FBUzt1QkFBQyxNQUFNLEVBQUUsRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFjdkQsTUFBTTtzQkFEVCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgSW5qZWN0LFxyXG4gIElucHV0LFxyXG4gIEtleVZhbHVlRGlmZmVyLFxyXG4gIEtleVZhbHVlRGlmZmVycyxcclxuICBPbkNoYW5nZXMsXHJcbiAgU2ltcGxlQ2hhbmdlcyxcclxuICBUeXBlLFxyXG4gIFZpZXdDaGlsZCxcclxuICBWaWV3Q29udGFpbmVyUmVmLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21wb25lbnRSZW5kZXJpbmcsIEh0bWxFbGVtZW50UmVuZGVyaW5nIH0gZnJvbSAnQHNpdGVjb3JlLWpzcy9zaXRlY29yZS1qc3MvbGF5b3V0JztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyB0YWtlV2hpbGUgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7XHJcbiAgQ29tcG9uZW50RmFjdG9yeVJlc3VsdCxcclxuICBKc3NDb21wb25lbnRGYWN0b3J5U2VydmljZSxcclxufSBmcm9tICcuLi9qc3MtY29tcG9uZW50LWZhY3Rvcnkuc2VydmljZSc7XHJcbmltcG9ydCB7IFBMQUNFSE9MREVSX01JU1NJTkdfQ09NUE9ORU5UX0NPTVBPTkVOVCB9IGZyb20gJy4vcGxhY2Vob2xkZXIudG9rZW4nO1xyXG5pbXBvcnQgeyBSYXdDb21wb25lbnQgfSBmcm9tICcuL3Jhdy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBpc1Jhd1JlbmRlcmluZyB9IGZyb20gJy4vcmVuZGVyaW5nJztcclxuXHJcbi8qKlxyXG4gKiBSZW5kZXJzIGEgc2luZ2xlIEpTUyBjb21wb25lbnQgZ2l2ZW4gYSByZW5kZXJpbmcgZGVmaW5pdGlvbi5cclxuICogVXNlZnVsIGluc2lkZSB0ZW1wbGF0ZWQgcGxhY2Vob2xkZXJzLlxyXG4gKi9cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzYy1yZW5kZXItY29tcG9uZW50JyxcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPG5nLXRlbXBsYXRlICN2aWV3PjwvbmctdGVtcGxhdGU+XHJcbiAgYCxcclxufSlcclxuZXhwb3J0IGNsYXNzIFJlbmRlckNvbXBvbmVudENvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XHJcbiAgQElucHV0KCkgcmVuZGVyaW5nOiBDb21wb25lbnRSZW5kZXJpbmcgfCBIdG1sRWxlbWVudFJlbmRlcmluZztcclxuICBASW5wdXQoKSBvdXRwdXRzOiB7IFtrOiBzdHJpbmddOiAoZXZlbnRUeXBlOiB1bmtub3duKSA9PiB2b2lkIH07XHJcbiAgQFZpZXdDaGlsZCgndmlldycsIHsgcmVhZDogVmlld0NvbnRhaW5lclJlZiwgc3RhdGljOiB0cnVlIH0pIHByaXZhdGUgdmlldzogVmlld0NvbnRhaW5lclJlZjtcclxuXHJcbiAgcHJpdmF0ZSBfaW5wdXRzOiB7IFtrZXk6IHN0cmluZ106IHVua25vd24gfTtcclxuICBwcml2YXRlIF9kaWZmZXI6IEtleVZhbHVlRGlmZmVyPHN0cmluZywgdW5rbm93bj47XHJcbiAgcHJpdmF0ZSBkZXN0cm95ZWQgPSBmYWxzZTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGRpZmZlcnM6IEtleVZhbHVlRGlmZmVycyxcclxuICAgIHByaXZhdGUgY29tcG9uZW50RmFjdG9yeTogSnNzQ29tcG9uZW50RmFjdG9yeVNlcnZpY2UsXHJcbiAgICBASW5qZWN0KFBMQUNFSE9MREVSX01JU1NJTkdfQ09NUE9ORU5UX0NPTVBPTkVOVClcclxuICAgIHByaXZhdGUgbWlzc2luZ0NvbXBvbmVudENvbXBvbmVudDogVHlwZTx7IFtrZXk6IHN0cmluZ106IHVua25vd24gfT5cclxuICApIHt9XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgc2V0IGlucHV0cyh2YWx1ZTogeyBba2V5OiBzdHJpbmddOiB1bmtub3duIH0pIHtcclxuICAgIHRoaXMuX2lucHV0cyA9IHZhbHVlO1xyXG4gICAgaWYgKCF0aGlzLl9kaWZmZXIgJiYgdmFsdWUpIHtcclxuICAgICAgdGhpcy5fZGlmZmVyID0gdGhpcy5kaWZmZXJzLmZpbmQodmFsdWUpLmNyZWF0ZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xyXG4gICAgaWYgKGNoYW5nZXMucmVuZGVyaW5nKSB7XHJcbiAgICAgIHRoaXMuX3JlbmRlcigpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfc2V0Q29tcG9uZW50SW5wdXRzKFxyXG4gICAgY29tcG9uZW50SW5zdGFuY2U6IHsgW2tleTogc3RyaW5nXTogdW5rbm93biB9LFxyXG4gICAgaW5wdXRzOiB7IFtrZXk6IHN0cmluZ106IHVua25vd24gfVxyXG4gICkge1xyXG4gICAgT2JqZWN0LmVudHJpZXMoaW5wdXRzKS5mb3JFYWNoKFxyXG4gICAgICAoW2lucHV0LCBpbnB1dFZhbHVlXSkgPT5cclxuICAgICAgICAoKGNvbXBvbmVudEluc3RhbmNlIGFzIHsgW3Byb3A6IHN0cmluZ106IHVua25vd24gfSlbaW5wdXRdID0gaW5wdXRWYWx1ZSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9zdWJzY3JpYmVDb21wb25lbnRPdXRwdXRzKFxyXG4gICAgY29tcG9uZW50SW5zdGFuY2U6IHsgW2tleTogc3RyaW5nXTogdW5rbm93biB9LFxyXG4gICAgb3V0cHV0czogeyBbazogc3RyaW5nXTogKGV2ZW50VHlwZTogdW5rbm93bikgPT4gdm9pZCB9XHJcbiAgKSB7XHJcbiAgICBPYmplY3Qua2V5cyhvdXRwdXRzKVxyXG4gICAgICAuZmlsdGVyKFxyXG4gICAgICAgIChvdXRwdXQpID0+IGNvbXBvbmVudEluc3RhbmNlW291dHB1dF0gJiYgY29tcG9uZW50SW5zdGFuY2Vbb3V0cHV0XSBpbnN0YW5jZW9mIE9ic2VydmFibGVcclxuICAgICAgKVxyXG4gICAgICAuZm9yRWFjaCgob3V0cHV0KSA9PlxyXG4gICAgICAgIChjb21wb25lbnRJbnN0YW5jZVtvdXRwdXRdIGFzIE9ic2VydmFibGU8dW5rbm93bj4pXHJcbiAgICAgICAgICAucGlwZSh0YWtlV2hpbGUoKCkgPT4gIXRoaXMuZGVzdHJveWVkKSlcclxuICAgICAgICAgIC5zdWJzY3JpYmUob3V0cHV0c1tvdXRwdXRdKVxyXG4gICAgICApO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfcmVuZGVyKCkge1xyXG4gICAgdGhpcy52aWV3LmNsZWFyKCk7XHJcblxyXG4gICAgaWYgKCF0aGlzLnJlbmRlcmluZykge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgcmVzb2x2ZUNvbXBvbmVudDogUHJvbWlzZTxDb21wb25lbnRGYWN0b3J5UmVzdWx0PiA9IGlzUmF3UmVuZGVyaW5nKHRoaXMucmVuZGVyaW5nKVxyXG4gICAgICA/IFByb21pc2UucmVzb2x2ZSh7XHJcbiAgICAgICAgICBjb21wb25lbnRJbXBsZW1lbnRhdGlvbjogUmF3Q29tcG9uZW50LFxyXG4gICAgICAgICAgY29tcG9uZW50RGVmaW5pdGlvbjogdGhpcy5yZW5kZXJpbmcsXHJcbiAgICAgICAgfSlcclxuICAgICAgOiB0aGlzLmNvbXBvbmVudEZhY3RvcnkuZ2V0Q29tcG9uZW50KHRoaXMucmVuZGVyaW5nKTtcclxuXHJcbiAgICByZXNvbHZlQ29tcG9uZW50LnRoZW4oKHJlbmRlcmluZykgPT4ge1xyXG4gICAgICBpZiAoIXJlbmRlcmluZy5jb21wb25lbnRJbXBsZW1lbnRhdGlvbikge1xyXG4gICAgICAgIGNvbnN0IGNvbXBvbmVudE5hbWUgPSAocmVuZGVyaW5nLmNvbXBvbmVudERlZmluaXRpb24gYXMgQ29tcG9uZW50UmVuZGVyaW5nKS5jb21wb25lbnROYW1lO1xyXG4gICAgICAgIGNvbnNvbGUuZXJyb3IoXHJcbiAgICAgICAgICBgQXR0ZW1wdGVkIHRvIHJlbmRlciB1bmtub3duIGNvbXBvbmVudCAke2NvbXBvbmVudE5hbWV9LmAsXHJcbiAgICAgICAgICBgRW5zdXJlIGNvbXBvbmVudCBpcyBtYXBwZWQsIGxpa2U6XHJcbiAgICAgICAgICBKc3NNb2R1bGUud2l0aENvbXBvbmVudHMoW1xyXG4gICAgICAgICAgICB7IG5hbWU6ICcke2NvbXBvbmVudE5hbWV9JywgdHlwZTogJHtjb21wb25lbnROYW1lfUNvbXBvbmVudCB9XHJcbiAgICAgICAgICBdKWBcclxuICAgICAgICApO1xyXG5cclxuICAgICAgICByZW5kZXJpbmcuY29tcG9uZW50SW1wbGVtZW50YXRpb24gPSB0aGlzLm1pc3NpbmdDb21wb25lbnRDb21wb25lbnQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGNvbnN0IGNvbXBvbmVudEluc3RhbmNlID0gdGhpcy52aWV3LmNyZWF0ZUNvbXBvbmVudChyZW5kZXJpbmcuY29tcG9uZW50SW1wbGVtZW50YXRpb24pXHJcbiAgICAgICAgLmluc3RhbmNlO1xyXG4gICAgICBjb21wb25lbnRJbnN0YW5jZS5yZW5kZXJpbmcgPSByZW5kZXJpbmcuY29tcG9uZW50RGVmaW5pdGlvbjtcclxuICAgICAgaWYgKHRoaXMuX2lucHV0cykge1xyXG4gICAgICAgIHRoaXMuX3NldENvbXBvbmVudElucHV0cyhjb21wb25lbnRJbnN0YW5jZSwgdGhpcy5faW5wdXRzKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5vdXRwdXRzKSB7XHJcbiAgICAgICAgdGhpcy5fc3Vic2NyaWJlQ29tcG9uZW50T3V0cHV0cyhjb21wb25lbnRJbnN0YW5jZSwgdGhpcy5vdXRwdXRzKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -1,16 +1,16 @@
1
- import { Directive } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class RenderEachDirective {
4
- constructor(templateRef) {
5
- this.templateRef = templateRef;
6
- }
7
- }
8
- RenderEachDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RenderEachDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
9
- RenderEachDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: RenderEachDirective, selector: "[renderEach]", ngImport: i0 });
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RenderEachDirective, decorators: [{
11
- type: Directive,
12
- args: [{
13
- selector: '[renderEach]',
14
- }]
15
- }], ctorParameters: function () { return [{ type: i0.TemplateRef }]; } });
1
+ import { Directive } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class RenderEachDirective {
4
+ constructor(templateRef) {
5
+ this.templateRef = templateRef;
6
+ }
7
+ }
8
+ RenderEachDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RenderEachDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
9
+ RenderEachDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: RenderEachDirective, selector: "[renderEach]", ngImport: i0 });
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RenderEachDirective, decorators: [{
11
+ type: Directive,
12
+ args: [{
13
+ selector: '[renderEach]',
14
+ }]
15
+ }], ctorParameters: function () { return [{ type: i0.TemplateRef }]; } });
16
16
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVuZGVyLWVhY2guZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvcmVuZGVyLWVhY2guZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWUsTUFBTSxlQUFlLENBQUM7O0FBS3ZELE1BQU0sT0FBTyxtQkFBbUI7SUFDOUIsWUFBbUIsV0FBaUM7UUFBakMsZ0JBQVcsR0FBWCxXQUFXLENBQXNCO0lBQUcsQ0FBQzs7Z0hBRDdDLG1CQUFtQjtvR0FBbkIsbUJBQW1COzJGQUFuQixtQkFBbUI7a0JBSC9CLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGNBQWM7aUJBQ3pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6ICdbcmVuZGVyRWFjaF0nLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgUmVuZGVyRWFjaERpcmVjdGl2ZSB7XHJcbiAgY29uc3RydWN0b3IocHVibGljIHRlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjx1bmtub3duPikge31cclxufVxyXG4iXX0=
@@ -1,16 +1,16 @@
1
- import { Directive } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class RenderEmptyDirective {
4
- constructor(templateRef) {
5
- this.templateRef = templateRef;
6
- }
7
- }
8
- RenderEmptyDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RenderEmptyDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
9
- RenderEmptyDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: RenderEmptyDirective, selector: "[renderEmpty]", ngImport: i0 });
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RenderEmptyDirective, decorators: [{
11
- type: Directive,
12
- args: [{
13
- selector: '[renderEmpty]',
14
- }]
15
- }], ctorParameters: function () { return [{ type: i0.TemplateRef }]; } });
1
+ import { Directive } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class RenderEmptyDirective {
4
+ constructor(templateRef) {
5
+ this.templateRef = templateRef;
6
+ }
7
+ }
8
+ RenderEmptyDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RenderEmptyDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
9
+ RenderEmptyDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: RenderEmptyDirective, selector: "[renderEmpty]", ngImport: i0 });
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RenderEmptyDirective, decorators: [{
11
+ type: Directive,
12
+ args: [{
13
+ selector: '[renderEmpty]',
14
+ }]
15
+ }], ctorParameters: function () { return [{ type: i0.TemplateRef }]; } });
16
16
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVuZGVyLWVtcHR5LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3JlbmRlci1lbXB0eS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBZSxNQUFNLGVBQWUsQ0FBQzs7QUFLdkQsTUFBTSxPQUFPLG9CQUFvQjtJQUMvQixZQUFtQixXQUFpQztRQUFqQyxnQkFBVyxHQUFYLFdBQVcsQ0FBc0I7SUFBRyxDQUFDOztpSEFEN0Msb0JBQW9CO3FHQUFwQixvQkFBb0I7MkZBQXBCLG9CQUFvQjtrQkFIaEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsZUFBZTtpQkFDMUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ1tyZW5kZXJFbXB0eV0nLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgUmVuZGVyRW1wdHlEaXJlY3RpdmUge1xyXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8dW5rbm93bj4pIHt9XHJcbn1cclxuIl19
@@ -1,2 +1,2 @@
1
- export {};
1
+ export {};
2
2
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVuZGVyaW5nLWZpZWxkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvcmVuZGVyaW5nLWZpZWxkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktaW50ZXJmYWNlICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgUmVuZGVyaW5nRmllbGQ8ViA9IHVua25vd24+IHtcclxuICB2YWx1ZT86IFY7XHJcbiAgZWRpdGFibGU/OiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRGF0ZUZpZWxkIHtcclxuICB2YWx1ZT86IHN0cmluZyB8IG51bWJlciB8IERhdGU7XHJcbiAgZWRpdGFibGU/OiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRmlsZUZpZWxkVmFsdWUge1xyXG4gIHNyYz86IHN0cmluZztcclxuICB0aXRsZT86IHN0cmluZztcclxuICBkaXNwbGF5TmFtZT86IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBGaWxlRmllbGQgZXh0ZW5kcyBGaWxlRmllbGRWYWx1ZSwgUmVuZGVyaW5nRmllbGQge1xyXG4gIHZhbHVlPzogRmlsZUZpZWxkVmFsdWU7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSW1hZ2VGaWVsZFZhbHVlIHtcclxuICBba2V5OiBzdHJpbmddOiB1bmtub3duO1xyXG4gIHNyYz86IHN0cmluZztcclxuICBzcmNTZXQ/OiB7XHJcbiAgICBba2V5OiBzdHJpbmddOiBzdHJpbmcgfCBudW1iZXIgfCB1bmRlZmluZWQ7XHJcbiAgfVtdO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEltYWdlRmllbGQgZXh0ZW5kcyBJbWFnZUZpZWxkVmFsdWUsIFJlbmRlcmluZ0ZpZWxkIHtcclxuICB2YWx1ZT86IEltYWdlRmllbGRWYWx1ZTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBMaW5rRmllbGRWYWx1ZSB7XHJcbiAgW2tleTogc3RyaW5nXTogdW5rbm93bjtcclxuICBocmVmPzogc3RyaW5nO1xyXG4gIHRleHQ/OiBzdHJpbmc7XHJcbiAgYW5jaG9yPzogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIExpbmtGaWVsZCBleHRlbmRzIExpbmtGaWVsZFZhbHVlLCBSZW5kZXJpbmdGaWVsZCB7XHJcbiAgdmFsdWU/OiBMaW5rRmllbGRWYWx1ZTtcclxuICBlZGl0YWJsZUZpcnN0UGFydD86IHN0cmluZztcclxuICBlZGl0YWJsZUxhc3RQYXJ0Pzogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFJpY2hUZXh0RmllbGQgZXh0ZW5kcyBSZW5kZXJpbmdGaWVsZDxzdHJpbmc+IHt9XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFRleHRGaWVsZCBleHRlbmRzIFJlbmRlcmluZ0ZpZWxkPHN0cmluZz4ge31cclxuIl19
@@ -1,8 +1,8 @@
1
- /**
2
- * @param {HtmlElementRendering | ComponentRendering} rendering
3
- */
4
- export function isRawRendering(rendering) {
5
- return (!rendering.componentName &&
6
- rendering.name !== undefined);
7
- }
1
+ /**
2
+ * @param {HtmlElementRendering | ComponentRendering} rendering
3
+ */
4
+ export function isRawRendering(rendering) {
5
+ return (!rendering.componentName &&
6
+ rendering.name !== undefined);
7
+ }
8
8
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVuZGVyaW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvcmVuZGVyaW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBOztHQUVHO0FBQ0gsTUFBTSxVQUFVLGNBQWMsQ0FDNUIsU0FBb0Q7SUFFcEQsT0FBTyxDQUNMLENBQUUsU0FBZ0MsQ0FBQyxhQUFhO1FBQy9DLFNBQWtDLENBQUMsSUFBSSxLQUFLLFNBQVMsQ0FDdkQsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnRSZW5kZXJpbmcsIEh0bWxFbGVtZW50UmVuZGVyaW5nIH0gZnJvbSAnQHNpdGVjb3JlLWpzcy9zaXRlY29yZS1qc3MvbGF5b3V0JztcclxuXHJcbi8qKlxyXG4gKiBAcGFyYW0ge0h0bWxFbGVtZW50UmVuZGVyaW5nIHwgQ29tcG9uZW50UmVuZGVyaW5nfSByZW5kZXJpbmdcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBpc1Jhd1JlbmRlcmluZyhcclxuICByZW5kZXJpbmc6IEh0bWxFbGVtZW50UmVuZGVyaW5nIHwgQ29tcG9uZW50UmVuZGVyaW5nXHJcbik6IHJlbmRlcmluZyBpcyBIdG1sRWxlbWVudFJlbmRlcmluZyB7XHJcbiAgcmV0dXJuIChcclxuICAgICEocmVuZGVyaW5nIGFzIENvbXBvbmVudFJlbmRlcmluZykuY29tcG9uZW50TmFtZSAmJlxyXG4gICAgKHJlbmRlcmluZyBhcyBIdG1sRWxlbWVudFJlbmRlcmluZykubmFtZSAhPT0gdW5kZWZpbmVkXHJcbiAgKTtcclxufVxyXG4iXX0=
@@ -1,63 +1,63 @@
1
- import { Directive, Input, } from '@angular/core';
2
- import { isAbsoluteUrl } from '@sitecore-jss/sitecore-jss/utils';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@angular/router";
5
- export class RichTextDirective {
6
- constructor(viewContainer, templateRef, renderer, router) {
7
- this.viewContainer = viewContainer;
8
- this.templateRef = templateRef;
9
- this.renderer = renderer;
10
- this.router = router;
11
- this.editable = true;
12
- }
13
- ngOnChanges(changes) {
14
- if (changes.field || changes.editable) {
15
- if (!this.viewRef) {
16
- this.viewContainer.clear();
17
- this.viewRef = this.viewContainer.createEmbeddedView(this.templateRef);
18
- }
19
- this.updateView();
20
- }
21
- }
22
- updateView() {
23
- const field = this.field;
24
- if (!field || (!field.editable && !field.value)) {
25
- return;
26
- }
27
- const html = field.editable && this.editable ? field.editable : field.value;
28
- this.viewRef.rootNodes.forEach((node) => {
29
- node.innerHTML = html;
30
- if (!node.querySelectorAll) {
31
- return;
32
- }
33
- const links = node.querySelectorAll('a[href]');
34
- const linksArray = [].slice.call(links);
35
- linksArray.forEach((link) => {
36
- const href = link.getAttribute('href');
37
- const target = link.getAttribute('target');
38
- if (!href || isAbsoluteUrl(href) || target === '_blank' || target === '_top') {
39
- return;
40
- }
41
- this.renderer.listen(link, 'click', (event) => {
42
- this.router.navigateByUrl(href);
43
- event.preventDefault();
44
- });
45
- });
46
- });
47
- }
48
- }
49
- RichTextDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RichTextDirective, deps: [{ token: i0.ViewContainerRef }, { token: i0.TemplateRef }, { token: i0.Renderer2 }, { token: i1.Router }], target: i0.ɵɵFactoryTarget.Directive });
50
- RichTextDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: RichTextDirective, selector: "[scRichText]", inputs: { editable: ["scRichTextEditable", "editable"], field: ["scRichText", "field"] }, usesOnChanges: true, ngImport: i0 });
51
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RichTextDirective, decorators: [{
52
- type: Directive,
53
- args: [{
54
- selector: '[scRichText]',
55
- }]
56
- }], ctorParameters: function () { return [{ type: i0.ViewContainerRef }, { type: i0.TemplateRef }, { type: i0.Renderer2 }, { type: i1.Router }]; }, propDecorators: { editable: [{
57
- type: Input,
58
- args: ['scRichTextEditable']
59
- }], field: [{
60
- type: Input,
61
- args: ['scRichText']
62
- }] } });
1
+ import { Directive, Input, } from '@angular/core';
2
+ import { isAbsoluteUrl } from '@sitecore-jss/sitecore-jss/utils';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/router";
5
+ export class RichTextDirective {
6
+ constructor(viewContainer, templateRef, renderer, router) {
7
+ this.viewContainer = viewContainer;
8
+ this.templateRef = templateRef;
9
+ this.renderer = renderer;
10
+ this.router = router;
11
+ this.editable = true;
12
+ }
13
+ ngOnChanges(changes) {
14
+ if (changes.field || changes.editable) {
15
+ if (!this.viewRef) {
16
+ this.viewContainer.clear();
17
+ this.viewRef = this.viewContainer.createEmbeddedView(this.templateRef);
18
+ }
19
+ this.updateView();
20
+ }
21
+ }
22
+ updateView() {
23
+ const field = this.field;
24
+ if (!field || (!field.editable && !field.value)) {
25
+ return;
26
+ }
27
+ const html = field.editable && this.editable ? field.editable : field.value;
28
+ this.viewRef.rootNodes.forEach((node) => {
29
+ node.innerHTML = html;
30
+ if (!node.querySelectorAll) {
31
+ return;
32
+ }
33
+ const links = node.querySelectorAll('a[href]');
34
+ const linksArray = [].slice.call(links);
35
+ linksArray.forEach((link) => {
36
+ const href = link.getAttribute('href');
37
+ const target = link.getAttribute('target');
38
+ if (!href || isAbsoluteUrl(href) || target === '_blank' || target === '_top') {
39
+ return;
40
+ }
41
+ this.renderer.listen(link, 'click', (event) => {
42
+ this.router.navigateByUrl(href);
43
+ event.preventDefault();
44
+ });
45
+ });
46
+ });
47
+ }
48
+ }
49
+ RichTextDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RichTextDirective, deps: [{ token: i0.ViewContainerRef }, { token: i0.TemplateRef }, { token: i0.Renderer2 }, { token: i1.Router }], target: i0.ɵɵFactoryTarget.Directive });
50
+ RichTextDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: RichTextDirective, selector: "[scRichText]", inputs: { editable: ["scRichTextEditable", "editable"], field: ["scRichText", "field"] }, usesOnChanges: true, ngImport: i0 });
51
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RichTextDirective, decorators: [{
52
+ type: Directive,
53
+ args: [{
54
+ selector: '[scRichText]',
55
+ }]
56
+ }], ctorParameters: function () { return [{ type: i0.ViewContainerRef }, { type: i0.TemplateRef }, { type: i0.Renderer2 }, { type: i1.Router }]; }, propDecorators: { editable: [{
57
+ type: Input,
58
+ args: ['scRichTextEditable']
59
+ }], field: [{
60
+ type: Input,
61
+ args: ['scRichText']
62
+ }] } });
63
63
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmljaC10ZXh0LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3JpY2gtdGV4dC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxLQUFLLEdBTU4sTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7QUFNakUsTUFBTSxPQUFPLGlCQUFpQjtJQU81QixZQUNVLGFBQStCLEVBQy9CLFdBQWlDLEVBQ2pDLFFBQW1CLEVBQ25CLE1BQWM7UUFIZCxrQkFBYSxHQUFiLGFBQWEsQ0FBa0I7UUFDL0IsZ0JBQVcsR0FBWCxXQUFXLENBQXNCO1FBQ2pDLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDbkIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQVZLLGFBQVEsR0FBRyxJQUFJLENBQUM7SUFXMUMsQ0FBQztJQUVKLFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLE9BQU8sQ0FBQyxLQUFLLElBQUksT0FBTyxDQUFDLFFBQVEsRUFBRTtZQUNyQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtnQkFDakIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDM0IsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQzthQUN4RTtZQUVELElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztTQUNuQjtJQUNILENBQUM7SUFFTyxVQUFVO1FBQ2hCLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7UUFDekIsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUMvQyxPQUFPO1NBQ1I7UUFFRCxNQUFNLElBQUksR0FBRyxLQUFLLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUM7UUFDNUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDdEMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7WUFFdEIsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtnQkFDMUIsT0FBTzthQUNSO1lBRUQsTUFBTSxLQUFLLEdBQWdDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUM1RSxNQUFNLFVBQVUsR0FBMkIsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFFaEUsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO2dCQUMxQixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUN2QyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUUzQyxJQUFJLENBQUMsSUFBSSxJQUFJLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxNQUFNLEtBQUssUUFBUSxJQUFJLE1BQU0sS0FBSyxNQUFNLEVBQUU7b0JBQzVFLE9BQU87aUJBQ1I7Z0JBRUQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFO29CQUM1QyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztvQkFDaEMsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO2dCQUN6QixDQUFDLENBQUMsQ0FBQztZQUNMLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzs4R0F4RFUsaUJBQWlCO2tHQUFqQixpQkFBaUI7MkZBQWpCLGlCQUFpQjtrQkFIN0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsY0FBYztpQkFDekI7OEtBRThCLFFBQVE7c0JBQXBDLEtBQUs7dUJBQUMsb0JBQW9CO2dCQUVOLEtBQUs7c0JBQXpCLEtBQUs7dUJBQUMsWUFBWSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgRGlyZWN0aXZlLFxyXG4gIEVtYmVkZGVkVmlld1JlZixcclxuICBJbnB1dCxcclxuICBPbkNoYW5nZXMsXHJcbiAgU2ltcGxlQ2hhbmdlcyxcclxuICBUZW1wbGF0ZVJlZixcclxuICBWaWV3Q29udGFpbmVyUmVmLFxyXG4gIFJlbmRlcmVyMixcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgaXNBYnNvbHV0ZVVybCB9IGZyb20gJ0BzaXRlY29yZS1qc3Mvc2l0ZWNvcmUtanNzL3V0aWxzJztcclxuaW1wb3J0IHsgUmljaFRleHRGaWVsZCB9IGZyb20gJy4vcmVuZGVyaW5nLWZpZWxkJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnW3NjUmljaFRleHRdJyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFJpY2hUZXh0RGlyZWN0aXZlIGltcGxlbWVudHMgT25DaGFuZ2VzIHtcclxuICBASW5wdXQoJ3NjUmljaFRleHRFZGl0YWJsZScpIGVkaXRhYmxlID0gdHJ1ZTtcclxuXHJcbiAgQElucHV0KCdzY1JpY2hUZXh0JykgZmllbGQ6IFJpY2hUZXh0RmllbGQ7XHJcblxyXG4gIHByaXZhdGUgdmlld1JlZjogRW1iZWRkZWRWaWV3UmVmPHVua25vd24+O1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgdmlld0NvbnRhaW5lcjogVmlld0NvbnRhaW5lclJlZixcclxuICAgIHByaXZhdGUgdGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPHVua25vd24+LFxyXG4gICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxyXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlclxyXG4gICkge31cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xyXG4gICAgaWYgKGNoYW5nZXMuZmllbGQgfHwgY2hhbmdlcy5lZGl0YWJsZSkge1xyXG4gICAgICBpZiAoIXRoaXMudmlld1JlZikge1xyXG4gICAgICAgIHRoaXMudmlld0NvbnRhaW5lci5jbGVhcigpO1xyXG4gICAgICAgIHRoaXMudmlld1JlZiA9IHRoaXMudmlld0NvbnRhaW5lci5jcmVhdGVFbWJlZGRlZFZpZXcodGhpcy50ZW1wbGF0ZVJlZik7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMudXBkYXRlVmlldygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSB1cGRhdGVWaWV3KCkge1xyXG4gICAgY29uc3QgZmllbGQgPSB0aGlzLmZpZWxkO1xyXG4gICAgaWYgKCFmaWVsZCB8fCAoIWZpZWxkLmVkaXRhYmxlICYmICFmaWVsZC52YWx1ZSkpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IGh0bWwgPSBmaWVsZC5lZGl0YWJsZSAmJiB0aGlzLmVkaXRhYmxlID8gZmllbGQuZWRpdGFibGUgOiBmaWVsZC52YWx1ZTtcclxuICAgIHRoaXMudmlld1JlZi5yb290Tm9kZXMuZm9yRWFjaCgobm9kZSkgPT4ge1xyXG4gICAgICBub2RlLmlubmVySFRNTCA9IGh0bWw7XHJcblxyXG4gICAgICBpZiAoIW5vZGUucXVlcnlTZWxlY3RvckFsbCkge1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG5cclxuICAgICAgY29uc3QgbGlua3M6IE5vZGVMaXN0T2Y8SFRNTExpbmtFbGVtZW50PiA9IG5vZGUucXVlcnlTZWxlY3RvckFsbCgnYVtocmVmXScpO1xyXG4gICAgICBjb25zdCBsaW5rc0FycmF5OiBBcnJheTxIVE1MTGlua0VsZW1lbnQ+ID0gW10uc2xpY2UuY2FsbChsaW5rcyk7XHJcblxyXG4gICAgICBsaW5rc0FycmF5LmZvckVhY2goKGxpbmspID0+IHtcclxuICAgICAgICBjb25zdCBocmVmID0gbGluay5nZXRBdHRyaWJ1dGUoJ2hyZWYnKTtcclxuICAgICAgICBjb25zdCB0YXJnZXQgPSBsaW5rLmdldEF0dHJpYnV0ZSgndGFyZ2V0Jyk7XHJcblxyXG4gICAgICAgIGlmICghaHJlZiB8fCBpc0Fic29sdXRlVXJsKGhyZWYpIHx8IHRhcmdldCA9PT0gJ19ibGFuaycgfHwgdGFyZ2V0ID09PSAnX3RvcCcpIHtcclxuICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMucmVuZGVyZXIubGlzdGVuKGxpbmssICdjbGljaycsIChldmVudCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGVCeVVybChocmVmKTtcclxuICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==