@abgov/angular-components 2.0.0-alpha.4 → 2.0.0-alpha.6

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 (82) hide show
  1. package/README.md +3 -45
  2. package/abgov-angular-components.d.ts +1 -0
  3. package/bundles/abgov-angular-components.umd.js +176 -2565
  4. package/bundles/abgov-angular-components.umd.js.map +1 -1
  5. package/esm2015/index.js +3 -27
  6. package/esm2015/lib/angular-components.module.js +16 -94
  7. package/esm2015/lib/value-directive.js +133 -0
  8. package/fesm2015/abgov-angular-components.js +119 -2007
  9. package/fesm2015/abgov-angular-components.js.map +1 -1
  10. package/index.d.ts +2 -26
  11. package/lib/angular-components.module.d.ts +7 -0
  12. package/lib/value-directive.d.ts +34 -0
  13. package/package.json +8 -13
  14. package/abgov-angular-components.metadata.json +0 -1
  15. package/esm2015/experimental/app-version-header/app-version-header.component.js +0 -30
  16. package/esm2015/experimental/badge/badge.component.js +0 -24
  17. package/esm2015/experimental/components.module.js +0 -29
  18. package/esm2015/experimental/index.js +0 -5
  19. package/esm2015/experimental/number-input/number-input.component.js +0 -151
  20. package/esm2015/lib/button/button.component.js +0 -66
  21. package/esm2015/lib/button-link/button-link.component.js +0 -66
  22. package/esm2015/lib/callout/callout.component.js +0 -34
  23. package/esm2015/lib/card/card.component.js +0 -37
  24. package/esm2015/lib/card/content/card-content.component.js +0 -24
  25. package/esm2015/lib/card/footer/card-footer.component.js +0 -24
  26. package/esm2015/lib/card/header/card-header.component.js +0 -24
  27. package/esm2015/lib/card/thumb/card-thumb.component.js +0 -27
  28. package/esm2015/lib/card-group/card.group.component.js +0 -23
  29. package/esm2015/lib/checkbox/checkbox-change.js +0 -3
  30. package/esm2015/lib/checkbox/checkbox.component.js +0 -136
  31. package/esm2015/lib/dropdown/dropdown.component.js +0 -326
  32. package/esm2015/lib/dropdown/option/option.component.js +0 -48
  33. package/esm2015/lib/dropdown/option-group/option-group.component.js +0 -46
  34. package/esm2015/lib/element-load-indicator/element-load-indicator.component.js +0 -63
  35. package/esm2015/lib/header/header.component.js +0 -47
  36. package/esm2015/lib/hero-banner/content/hero-banner-content.component.js +0 -15
  37. package/esm2015/lib/hero-banner/hero-banner.component.js +0 -21
  38. package/esm2015/lib/hero-banner/link/hero-banner-link.component.js +0 -18
  39. package/esm2015/lib/microsite-logo/microsite-logo.component.js +0 -34
  40. package/esm2015/lib/notification/notification.component.js +0 -59
  41. package/esm2015/lib/notification-banner/notification-banner.component.js +0 -32
  42. package/esm2015/lib/page-load-indicator/page-load-indicator.component.js +0 -117
  43. package/esm2015/lib/radio/radio-change.js +0 -3
  44. package/esm2015/lib/radio/radio.component.js +0 -146
  45. package/esm2015/lib/radio/radio.service.js +0 -20
  46. package/esm2015/lib/radio-group/radio-group.component.js +0 -282
  47. package/esm2015/lib/skeleton/skeleton-element.component.js +0 -21
  48. package/esm2015/lib/skeleton/skeleton-image-content.component.js +0 -19
  49. package/experimental/app-version-header/app-version-header.component.d.ts +0 -10
  50. package/experimental/badge/badge.component.d.ts +0 -7
  51. package/experimental/components.module.d.ts +0 -2
  52. package/experimental/index.d.ts +0 -4
  53. package/experimental/number-input/number-input.component.d.ts +0 -66
  54. package/lib/button/button.component.d.ts +0 -37
  55. package/lib/button-link/button-link.component.d.ts +0 -38
  56. package/lib/callout/callout.component.d.ts +0 -20
  57. package/lib/card/card.component.d.ts +0 -23
  58. package/lib/card/content/card-content.component.d.ts +0 -14
  59. package/lib/card/footer/card-footer.component.d.ts +0 -14
  60. package/lib/card/header/card-header.component.d.ts +0 -14
  61. package/lib/card/thumb/card-thumb.component.d.ts +0 -22
  62. package/lib/card-group/card.group.component.d.ts +0 -32
  63. package/lib/checkbox/checkbox-change.d.ts +0 -7
  64. package/lib/checkbox/checkbox.component.d.ts +0 -100
  65. package/lib/dropdown/dropdown.component.d.ts +0 -193
  66. package/lib/dropdown/option/option.component.d.ts +0 -39
  67. package/lib/dropdown/option-group/option-group.component.d.ts +0 -38
  68. package/lib/element-load-indicator/element-load-indicator.component.d.ts +0 -38
  69. package/lib/header/header.component.d.ts +0 -29
  70. package/lib/hero-banner/content/hero-banner-content.component.d.ts +0 -5
  71. package/lib/hero-banner/hero-banner.component.d.ts +0 -9
  72. package/lib/hero-banner/link/hero-banner-link.component.d.ts +0 -6
  73. package/lib/microsite-logo/microsite-logo.component.d.ts +0 -20
  74. package/lib/notification/notification.component.d.ts +0 -43
  75. package/lib/notification-banner/notification-banner.component.d.ts +0 -22
  76. package/lib/page-load-indicator/page-load-indicator.component.d.ts +0 -55
  77. package/lib/radio/radio-change.d.ts +0 -7
  78. package/lib/radio/radio.component.d.ts +0 -119
  79. package/lib/radio/radio.service.d.ts +0 -7
  80. package/lib/radio-group/radio-group.component.d.ts +0 -190
  81. package/lib/skeleton/skeleton-element.component.d.ts +0 -5
  82. package/lib/skeleton/skeleton-image-content.component.d.ts +0 -5
@@ -1,63 +0,0 @@
1
- import { Component, Input, } from '@angular/core';
2
- /**
3
- * A page load indicator component with Government of Alberta styling.
4
- * selector: goa-element-load-indicator
5
- */
6
- export class GoAElementLoadIndicatorComponent {
7
- constructor() {
8
- /**
9
- * Sets the page loader visibility state.
10
- */
11
- this.visible = true;
12
- /**
13
- * The diameter of the loader in pixels.
14
- */
15
- this.size = 'default';
16
- /**
17
- * The base color of the spinner.
18
- */
19
- this.baseColour = '#c8eef9';
20
- /**
21
- * The spinner color of the spinner.
22
- */
23
- this.spinnerColour = '#0070c4';
24
- this.radius = this.size === 'small' ? 16 : 18;
25
- this.innerRadius = this.radius - 4;
26
- this.diameter = this.radius * 2;
27
- this.dashArray = this.innerRadius * Math.PI * 2;
28
- this.dashOffset = this.innerRadius * Math.PI * 0.5;
29
- this.viewBox = `0 0 ${this.diameter} ${this.diameter}`;
30
- }
31
- /**
32
- * @ignore
33
- */
34
- ngOnChanges(changes) {
35
- if (changes.size) {
36
- this.radius = changes.size.currentValue === 'small' ? 16 : 18;
37
- this.innerRadius = this.radius - 4;
38
- this.diameter = this.radius * 2;
39
- this.viewBox = `0 0 ${this.diameter} ${this.diameter}`;
40
- this.dashArray = this.innerRadius * Math.PI * 2;
41
- this.dashOffset = this.innerRadius * Math.PI * 0.5;
42
- }
43
- }
44
- /**
45
- * @ignore
46
- */
47
- ngOnInit() { }
48
- }
49
- GoAElementLoadIndicatorComponent.decorators = [
50
- { type: Component, args: [{
51
- selector: 'goa-element-load-indicator',
52
- template: "<div *ngIf=\"visible\">\n <svg\n fill=\"none\"\n [attr.viewBox]=\"viewBox\"\n [attr.width]=\"radius\"\n [attr.height]=\"radius\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <circle\n class=\"base-circle\"\n [attr.cx]=\"radius\"\n [attr.cy]=\"radius\"\n [attr.r]=\"innerRadius\"\n [style.stroke]=\"baseColour\"\n />\n <circle\n class=\"rotating-circle\"\n [attr.cx]=\"radius\"\n [style.stroke-dasharray]=\"dashArray\"\n [style.stroke-dashoffset]=\"dashOffset\"\n [attr.cy]=\"radius\"\n [attr.r]=\"innerRadius\"\n [style.stroke]=\"spinnerColour\"\n />\n </svg>\n</div>\n",
53
- styles: [""]
54
- },] }
55
- ];
56
- GoAElementLoadIndicatorComponent.ctorParameters = () => [];
57
- GoAElementLoadIndicatorComponent.propDecorators = {
58
- visible: [{ type: Input }],
59
- size: [{ type: Input }],
60
- baseColour: [{ type: Input }],
61
- spinnerColour: [{ type: Input }]
62
- };
63
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxlbWVudC1sb2FkLWluZGljYXRvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItY29tcG9uZW50cy9zcmMvbGliL2VsZW1lbnQtbG9hZC1pbmRpY2F0b3IvZWxlbWVudC1sb2FkLWluZGljYXRvci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxLQUFLLEdBSU4sTUFBTSxlQUFlLENBQUM7QUFHdkI7OztHQUdHO0FBTUgsTUFBTSxPQUFPLGdDQUFnQztJQUUzQztRQUdBOztXQUVHO1FBQ00sWUFBTyxHQUFHLElBQUksQ0FBQztRQUV4Qjs7VUFFRTtRQUNPLFNBQUksR0FBd0IsU0FBUyxDQUFDO1FBRS9DOztXQUVHO1FBQ00sZUFBVSxHQUFHLFNBQVMsQ0FBQztRQUVoQzs7V0FFRztRQUNNLGtCQUFhLEdBQUcsU0FBUyxDQUFDO1FBRW5DLFdBQU0sR0FBRyxJQUFJLENBQUMsSUFBSSxLQUFLLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFFekMsZ0JBQVcsR0FBRyxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztRQUM5QixhQUFRLEdBQUcsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7UUFDM0IsY0FBUyxHQUFHLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDM0MsZUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLEVBQUUsR0FBRyxHQUFHLENBQUM7UUFDOUMsWUFBTyxHQUFHLE9BQU8sSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7SUE1QmxELENBQUM7SUE4QkQ7O01BRUU7SUFDRixXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxPQUFPLENBQUMsSUFBSSxFQUFFO1lBQ2hCLElBQUksQ0FBQyxNQUFNLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxZQUFZLEtBQUssT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUM5RCxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1lBQ25DLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7WUFDaEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLElBQUksQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3ZELElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztZQUNoRCxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLEVBQUUsR0FBRyxHQUFHLENBQUM7U0FDcEQ7SUFDSCxDQUFDO0lBRUQ7O01BRUU7SUFDRixRQUFRLEtBQVcsQ0FBQzs7O1lBdkRyQixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLDRCQUE0QjtnQkFDdEMsK3BCQUFzRDs7YUFFdkQ7Ozs7c0JBU0UsS0FBSzttQkFLTCxLQUFLO3lCQUtMLEtBQUs7NEJBS0wsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25Jbml0LFxuICBTaW1wbGVDaGFuZ2VzLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IF9fdmFsdWVzIH0gZnJvbSAndHNsaWInO1xuXG4vKipcbiAqIEEgcGFnZSBsb2FkIGluZGljYXRvciBjb21wb25lbnQgd2l0aCBHb3Zlcm5tZW50IG9mIEFsYmVydGEgc3R5bGluZy5cbiAqIHNlbGVjdG9yOiBnb2EtZWxlbWVudC1sb2FkLWluZGljYXRvclxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnb2EtZWxlbWVudC1sb2FkLWluZGljYXRvcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9lbGVtZW50LWxvYWQtaW5kaWNhdG9yLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZWxlbWVudC1sb2FkLWluZGljYXRvci5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBHb0FFbGVtZW50TG9hZEluZGljYXRvckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBwYWdlIGxvYWRlciB2aXNpYmlsaXR5IHN0YXRlLlxuICAgKi9cbiAgQElucHV0KCkgdmlzaWJsZSA9IHRydWU7XG5cbiAgLyoqXG4gICogVGhlIGRpYW1ldGVyIG9mIHRoZSBsb2FkZXIgaW4gcGl4ZWxzLlxuICAqL1xuICBASW5wdXQoKSBzaXplOiAnc21hbGwnIHwgJ2RlZmF1bHQnID0gJ2RlZmF1bHQnO1xuXG4gIC8qKlxuICAgKiBUaGUgYmFzZSBjb2xvciBvZiB0aGUgc3Bpbm5lci5cbiAgICovXG4gIEBJbnB1dCgpIGJhc2VDb2xvdXIgPSAnI2M4ZWVmOSc7XG5cbiAgLyoqXG4gICAqIFRoZSBzcGlubmVyIGNvbG9yIG9mIHRoZSBzcGlubmVyLlxuICAgKi9cbiAgQElucHV0KCkgc3Bpbm5lckNvbG91ciA9ICcjMDA3MGM0JztcblxuICByYWRpdXMgPSB0aGlzLnNpemUgPT09ICdzbWFsbCcgPyAxNiA6IDE4O1xuXG4gIGlubmVyUmFkaXVzID0gdGhpcy5yYWRpdXMgLSA0O1xuICBkaWFtZXRlciA9IHRoaXMucmFkaXVzICogMjtcbiAgZGFzaEFycmF5ID0gdGhpcy5pbm5lclJhZGl1cyAqIE1hdGguUEkgKiAyO1xuICBkYXNoT2Zmc2V0ID0gdGhpcy5pbm5lclJhZGl1cyAqIE1hdGguUEkgKiAwLjU7XG4gIHZpZXdCb3ggPSBgMCAwICR7dGhpcy5kaWFtZXRlcn0gJHt0aGlzLmRpYW1ldGVyfWA7XG5cbiAgLyoqXG4gICogQGlnbm9yZVxuICAqL1xuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKGNoYW5nZXMuc2l6ZSkge1xuICAgICAgdGhpcy5yYWRpdXMgPSBjaGFuZ2VzLnNpemUuY3VycmVudFZhbHVlID09PSAnc21hbGwnID8gMTYgOiAxODtcbiAgICAgIHRoaXMuaW5uZXJSYWRpdXMgPSB0aGlzLnJhZGl1cyAtIDQ7XG4gICAgICB0aGlzLmRpYW1ldGVyID0gdGhpcy5yYWRpdXMgKiAyO1xuICAgICAgdGhpcy52aWV3Qm94ID0gYDAgMCAke3RoaXMuZGlhbWV0ZXJ9ICR7dGhpcy5kaWFtZXRlcn1gO1xuICAgICAgdGhpcy5kYXNoQXJyYXkgPSB0aGlzLmlubmVyUmFkaXVzICogTWF0aC5QSSAqIDI7XG4gICAgICB0aGlzLmRhc2hPZmZzZXQgPSB0aGlzLmlubmVyUmFkaXVzICogTWF0aC5QSSAqIDAuNTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgKiBAaWdub3JlXG4gICovXG4gIG5nT25Jbml0KCk6IHZvaWQgeyB9XG59Il19
@@ -1,47 +0,0 @@
1
- import { Component, Input } from '@angular/core';
2
- /**
3
- * A header component for a Government of Alberta hosted microsite.
4
- * selector: goa-header
5
- */
6
- export class GoAHeaderComponent {
7
- // ServiceLevel = this.ServiceLevel;
8
- constructor() {
9
- /**
10
- * The home page URL of the microsite.
11
- */
12
- this.serviceHome = 'https://www.alberta.ca/index.aspx';
13
- }
14
- /**
15
- * @ignore
16
- */
17
- ngOnInit() {
18
- this.checkRequiredProps('serviceLevel', 'serviceName', 'serviceHome');
19
- }
20
- serviceLevelCssClass() {
21
- return `service-level--${this.serviceLevel.toLowerCase()}`;
22
- }
23
- serviceLevelFormatted() {
24
- return this.serviceLevel.toLowerCase();
25
- }
26
- checkRequiredProps(...props) {
27
- props.forEach(prop => {
28
- if (!this[prop]) {
29
- throw new TypeError(`Input '${prop}' is required.`);
30
- }
31
- });
32
- }
33
- }
34
- GoAHeaderComponent.decorators = [
35
- { type: Component, args: [{
36
- selector: 'goa-header',
37
- template: "<header class=\"goa-header goa-official-site-header\">\n <div>\n <span class=\"service-level\" [ngClass]=\"serviceLevelCssClass()\">\n {{ serviceLevelFormatted() }}\n </span>\n </div>\n <div\n *ngIf=\"serviceLevel === 'live'; else elseNotLive\"\n class=\"site-text\"\n i18n=\"Alberta.ca official site text on header\"\n >\n An official site of the\n <a href=\"https://www.alberta.ca/index.aspx\" class=\"web-link\"\n >Alberta Government</a\n >\n </div>\n <ng-template #elseNotLive>\n <div class=\"site-text\" i18n=\"Alberta.ca site text on header\">\n This is a new\n <a href=\"https://www.alberta.ca/index.aspx\" class=\"web-link\"\n >Alberta Government</a\n >\n service\n </div>\n </ng-template>\n</header>\n<header class=\"goa-header goa-microsite-header\">\n <goa-microsite-logo\n [serviceName]=\"serviceName\"\n [serviceHome]=\"serviceHome\"\n ></goa-microsite-logo>\n <ng-content></ng-content>\n</header>\n",
38
- styles: [""]
39
- },] }
40
- ];
41
- GoAHeaderComponent.ctorParameters = () => [];
42
- GoAHeaderComponent.propDecorators = {
43
- serviceName: [{ type: Input }],
44
- serviceHome: [{ type: Input }],
45
- serviceLevel: [{ type: Input }]
46
- };
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1jb21wb25lbnRzL3NyYy9saWIvaGVhZGVyL2hlYWRlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFJekQ7OztHQUdHO0FBT0gsTUFBTSxPQUFPLGtCQUFrQjtJQWlCN0Isb0NBQW9DO0lBRXBDO1FBWkE7O1dBRUc7UUFDTSxnQkFBVyxHQUFHLG1DQUFtQyxDQUFDO0lBUzNDLENBQUM7SUFFakI7O09BRUc7SUFDSCxRQUFRO1FBQ04sSUFBSSxDQUFDLGtCQUFrQixDQUFDLGNBQWMsRUFBRSxhQUFhLEVBQUUsYUFBYSxDQUFDLENBQUM7SUFDeEUsQ0FBQztJQUVELG9CQUFvQjtRQUNsQixPQUFPLGtCQUFrQixJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUM7SUFDN0QsQ0FBQztJQUVELHFCQUFxQjtRQUNuQixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDekMsQ0FBQztJQUVELGtCQUFrQixDQUFDLEdBQUcsS0FBZTtRQUNuQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ25CLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUU7Z0JBQ2YsTUFBTSxJQUFJLFNBQVMsQ0FBQyxVQUFVLElBQUksZ0JBQWdCLENBQUMsQ0FBQzthQUNyRDtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7O1lBaERGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsWUFBWTtnQkFDdEIsKytCQUFzQzs7YUFFdkM7Ozs7MEJBT0UsS0FBSzswQkFLTCxLQUFLOzJCQUtMLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxudHlwZSBTZXJ2aWNlTGV2ZWwgPSAnYWxwaGEnIHwgJ2JldGEnIHwgJ2xpdmUnXG5cbi8qKlxuICogQSBoZWFkZXIgY29tcG9uZW50IGZvciBhIEdvdmVybm1lbnQgb2YgQWxiZXJ0YSBob3N0ZWQgbWljcm9zaXRlLlxuICogc2VsZWN0b3I6IGdvYS1oZWFkZXJcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ29hLWhlYWRlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9oZWFkZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9oZWFkZXIuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5cbmV4cG9ydCBjbGFzcyBHb0FIZWFkZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSB0byBzaG93IG9uIHRoZSBoZWFkZXIgYXMgdGhlIG1pY3Jvc2l0ZS5cbiAgKi9cbiAgQElucHV0KCkgc2VydmljZU5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGhvbWUgcGFnZSBVUkwgb2YgdGhlIG1pY3Jvc2l0ZS5cbiAgICovXG4gIEBJbnB1dCgpIHNlcnZpY2VIb21lID0gJ2h0dHBzOi8vd3d3LmFsYmVydGEuY2EvaW5kZXguYXNweCc7XG5cbiAgLyoqXG4gICAqIFRoZSBsZXZlbCBhdCB3aGljaCB0aGUgc2VydmljZSBpcyBydW5uaW5nIHdpdGhpbiBbQWxwaGEgfCBCZXRhIHwgTGl2ZV1cbiAgICovXG4gIEBJbnB1dCgpIHNlcnZpY2VMZXZlbDogU2VydmljZUxldmVsO1xuXG4gIC8vIFNlcnZpY2VMZXZlbCA9IHRoaXMuU2VydmljZUxldmVsO1xuXG4gIGNvbnN0cnVjdG9yKCkgeyB9XG5cbiAgLyoqXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuY2hlY2tSZXF1aXJlZFByb3BzKCdzZXJ2aWNlTGV2ZWwnLCAnc2VydmljZU5hbWUnLCAnc2VydmljZUhvbWUnKTtcbiAgfVxuXG4gIHNlcnZpY2VMZXZlbENzc0NsYXNzKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGBzZXJ2aWNlLWxldmVsLS0ke3RoaXMuc2VydmljZUxldmVsLnRvTG93ZXJDYXNlKCl9YDtcbiAgfVxuXG4gIHNlcnZpY2VMZXZlbEZvcm1hdHRlZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnNlcnZpY2VMZXZlbC50b0xvd2VyQ2FzZSgpO1xuICB9XG5cbiAgY2hlY2tSZXF1aXJlZFByb3BzKC4uLnByb3BzOiBzdHJpbmdbXSkge1xuICAgIHByb3BzLmZvckVhY2gocHJvcCA9PiB7XG4gICAgICBpZiAoIXRoaXNbcHJvcF0pIHtcbiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihgSW5wdXQgJyR7cHJvcH0nIGlzIHJlcXVpcmVkLmApO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -1,15 +0,0 @@
1
- import { Component } from '@angular/core';
2
- export class GoAHeroBannerContentComponent {
3
- constructor() { }
4
- ngOnInit() {
5
- }
6
- }
7
- GoAHeroBannerContentComponent.decorators = [
8
- { type: Component, args: [{
9
- selector: 'goa-hero-banner-content',
10
- template: "<ng-container>\n <p class=\"goa-hero-banner-content\" role=\"note\">\n <ng-content></ng-content>\n </p>\n</ng-container>\n",
11
- styles: [""]
12
- },] }
13
- ];
14
- GoAHeroBannerContentComponent.ctorParameters = () => [];
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVyby1iYW5uZXItY29udGVudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItY29tcG9uZW50cy9zcmMvbGliL2hlcm8tYmFubmVyL2NvbnRlbnQvaGVyby1iYW5uZXItY29udGVudC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQU9sRCxNQUFNLE9BQU8sNkJBQTZCO0lBRXhDLGdCQUFnQixDQUFDO0lBRWpCLFFBQVE7SUFDUixDQUFDOzs7WUFWRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLHlCQUF5QjtnQkFDbkMsMklBQW1EOzthQUVwRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2dvYS1oZXJvLWJhbm5lci1jb250ZW50JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2hlcm8tYmFubmVyLWNvbnRlbnQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9oZXJvLWJhbm5lci1jb250ZW50LmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgR29BSGVyb0Jhbm5lckNvbnRlbnRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIGNvbnN0cnVjdG9yKCkgeyB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gIH1cblxufVxuIl19
@@ -1,21 +0,0 @@
1
- import { Component, Input } from '@angular/core';
2
- export * from './content/hero-banner-content.component';
3
- export * from './link/hero-banner-link.component';
4
- export class GoAHeroBannerComponent {
5
- constructor() { }
6
- ngOnInit() {
7
- }
8
- }
9
- GoAHeroBannerComponent.decorators = [
10
- { type: Component, args: [{
11
- selector: 'goa-hero-banner',
12
- template: "<div class=\"goa-hero\"\n style=\"background-image: linear-gradient(rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.40) 40%, rgba(0, 0, 0, 0.6) 100%), url({{backgroundUrl}});\"\n>\n <h1 role=\"heading\">{{ title }}</h1>\n <ng-content select=\"goa-hero-banner-content\"></ng-content>\n <ng-content select=\"goa-hero-banner-link\"></ng-content>\n</div>\n",
13
- styles: [""]
14
- },] }
15
- ];
16
- GoAHeroBannerComponent.ctorParameters = () => [];
17
- GoAHeroBannerComponent.propDecorators = {
18
- title: [{ type: Input }],
19
- backgroundUrl: [{ type: Input }]
20
- };
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVyby1iYW5uZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWNvbXBvbmVudHMvc3JjL2xpYi9oZXJvLWJhbm5lci9oZXJvLWJhbm5lci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFFekQsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLG1DQUFtQyxDQUFDO0FBT2xELE1BQU0sT0FBTyxzQkFBc0I7SUFLakMsZ0JBQWdCLENBQUM7SUFFakIsUUFBUTtJQUNSLENBQUM7OztZQWJGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsaUJBQWlCO2dCQUMzQixxV0FBMkM7O2FBRTVDOzs7O29CQUdFLEtBQUs7NEJBQ0wsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgKiBmcm9tICcuL2NvbnRlbnQvaGVyby1iYW5uZXItY29udGVudC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saW5rL2hlcm8tYmFubmVyLWxpbmsuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ29hLWhlcm8tYmFubmVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2hlcm8tYmFubmVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vaGVyby1iYW5uZXIuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBHb0FIZXJvQmFubmVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBASW5wdXQoKSB0aXRsZTogc3RyaW5nO1xuICBASW5wdXQoKSBiYWNrZ3JvdW5kVXJsOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoKSB7IH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgfVxuXG59XG4iXX0=
@@ -1,18 +0,0 @@
1
- import { Component, Input } from '@angular/core';
2
- export class GoAHeroBannerLinkComponent {
3
- constructor() { }
4
- ngOnInit() {
5
- }
6
- }
7
- GoAHeroBannerLinkComponent.decorators = [
8
- { type: Component, args: [{
9
- selector: 'goa-hero-banner-link',
10
- template: "<ng-container>\n <a class=\"goa-link-button right-arrow\" [href]=\"url\" role=\"link\">\n <ng-content></ng-content>\n </a>\n</ng-container>\n",
11
- styles: [""]
12
- },] }
13
- ];
14
- GoAHeroBannerLinkComponent.ctorParameters = () => [];
15
- GoAHeroBannerLinkComponent.propDecorators = {
16
- url: [{ type: Input }]
17
- };
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVyby1iYW5uZXItbGluay5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItY29tcG9uZW50cy9zcmMvbGliL2hlcm8tYmFubmVyL2xpbmsvaGVyby1iYW5uZXItbGluay5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFPekQsTUFBTSxPQUFPLDBCQUEwQjtJQUlyQyxnQkFBZ0IsQ0FBQztJQUVqQixRQUFRO0lBQ1IsQ0FBQzs7O1lBWkYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxzQkFBc0I7Z0JBQ2hDLDhKQUFnRDs7YUFFakQ7Ozs7a0JBR0UsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnb2EtaGVyby1iYW5uZXItbGluaycsXG4gIHRlbXBsYXRlVXJsOiAnLi9oZXJvLWJhbm5lci1saW5rLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vaGVyby1iYW5uZXItbGluay5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEdvQUhlcm9CYW5uZXJMaW5rQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBASW5wdXQoKSB1cmw6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcigpIHsgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICB9XG5cbn1cbiJdfQ==
@@ -1,34 +0,0 @@
1
- import { Component, Input } from '@angular/core';
2
- /**
3
- * A logo for a Government of Alberta hosted microsite.
4
- * selector: goa-microsite-logo
5
- */
6
- export class GoAMicrositeLogoComponent {
7
- constructor() {
8
- /**
9
- * The home page URL of the microsite.
10
- */
11
- this.serviceHome = 'https://www.alberta.ca/index.aspx';
12
- }
13
- /**
14
- * @ignore
15
- */
16
- ngOnInit() {
17
- if (this.serviceName === undefined || this.serviceName === null) {
18
- throw new TypeError(`Input 'serviceName' is required.`);
19
- }
20
- }
21
- }
22
- GoAMicrositeLogoComponent.decorators = [
23
- { type: Component, args: [{
24
- selector: 'goa-microsite-logo',
25
- template: "<a href=\"{{serviceHome}}\" attr.aria-label=\"{{serviceHome}}\" class=\"microsite-link\">\n <span class=\"image-desktop-tablet\"></span>\n <span class=\"image-mobile\"></span>\n <span class=\"name\">\n {{serviceName}}\n </span>\n</a>\n",
26
- styles: [""]
27
- },] }
28
- ];
29
- GoAMicrositeLogoComponent.ctorParameters = () => [];
30
- GoAMicrositeLogoComponent.propDecorators = {
31
- serviceName: [{ type: Input }],
32
- serviceHome: [{ type: Input }]
33
- };
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWljcm9zaXRlLWxvZ28uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWNvbXBvbmVudHMvc3JjL2xpYi9taWNyb3NpdGUtbG9nby9taWNyb3NpdGUtbG9nby5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBVSxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFdkQ7OztHQUdHO0FBT0gsTUFBTSxPQUFPLHlCQUF5QjtJQVdwQztRQUxBOztXQUVHO1FBQ00sZ0JBQVcsR0FBRyxtQ0FBbUMsQ0FBQztJQUczRCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsV0FBVyxLQUFLLFNBQVMsSUFBSSxJQUFJLENBQUMsV0FBVyxLQUFLLElBQUksRUFBRTtZQUMvRCxNQUFNLElBQUksU0FBUyxDQUFDLGtDQUFrQyxDQUFDLENBQUM7U0FDekQ7SUFDSCxDQUFDOzs7WUEzQkYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxvQkFBb0I7Z0JBQzlCLDhQQUE4Qzs7YUFFL0M7Ozs7MEJBTUUsS0FBSzswQkFLTCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIE9uSW5pdCwgSW5wdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG4vKipcbiAqIEEgbG9nbyBmb3IgYSBHb3Zlcm5tZW50IG9mIEFsYmVydGEgaG9zdGVkIG1pY3Jvc2l0ZS5cbiAqIHNlbGVjdG9yOiBnb2EtbWljcm9zaXRlLWxvZ29cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ29hLW1pY3Jvc2l0ZS1sb2dvJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21pY3Jvc2l0ZS1sb2dvLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbWljcm9zaXRlLWxvZ28uY29tcG9uZW50LnNjc3MnXSxcbn0pXG5cbmV4cG9ydCBjbGFzcyBHb0FNaWNyb3NpdGVMb2dvQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgLyoqXG4gICAqIFRoZSBuYW1lIHRvIHNob3cgb24gdGhlIGhlYWRlci9mb290ZXIgYXMgdGhlIG1pY3Jvc2l0ZS5cbiAgICovXG4gIEBJbnB1dCgpIHNlcnZpY2VOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBob21lIHBhZ2UgVVJMIG9mIHRoZSBtaWNyb3NpdGUuXG4gICAqL1xuICBASW5wdXQoKSBzZXJ2aWNlSG9tZSA9ICdodHRwczovL3d3dy5hbGJlcnRhLmNhL2luZGV4LmFzcHgnO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICB9XG5cbiAgLyoqXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIG5nT25Jbml0KCkge1xuICAgIGlmICh0aGlzLnNlcnZpY2VOYW1lID09PSB1bmRlZmluZWQgfHwgdGhpcy5zZXJ2aWNlTmFtZSA9PT0gbnVsbCkge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihgSW5wdXQgJ3NlcnZpY2VOYW1lJyBpcyByZXF1aXJlZC5gKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -1,59 +0,0 @@
1
- import { Component, Input, Output, EventEmitter, ChangeDetectorRef } from '@angular/core';
2
- /**
3
- * Government of Alberta styled notification, comes in 4 variants: emergency, event, information, important.
4
- * Can set the message and optionally a link url.
5
- * selector: goa-notification
6
- */
7
- export class GoANotificationComponent {
8
- constructor(_changeDetectorRef) {
9
- this._changeDetectorRef = _changeDetectorRef;
10
- /**
11
- * Whether or not the notification has been dismissed.
12
- * @ignore
13
- */
14
- this._isDismissed = false;
15
- /**
16
- * The type of the notification, changes stylings and icons.
17
- */
18
- this.type = 'information';
19
- /**
20
- * Can the notification be dismissed?
21
- */
22
- this.isDismissable = true;
23
- /**
24
- * Event emitted when the notification has been dismissed by the user.
25
- */
26
- this.dismiss = new EventEmitter();
27
- }
28
- /**
29
- * @ignore
30
- */
31
- ngOnInit() {
32
- }
33
- /**
34
- * @ignore
35
- */
36
- dismissClick() {
37
- this._isDismissed = true;
38
- this._changeDetectorRef.detectChanges();
39
- this.dismiss.emit();
40
- }
41
- }
42
- GoANotificationComponent.decorators = [
43
- { type: Component, args: [{
44
- selector: 'goa-notification',
45
- template: "\n<div class=\"goa-notification\"\n [ngClass]=\"{\n 'dismissed': _isDismissed === true,\n 'goa--event': type === 'event',\n 'goa--important': type === 'important',\n 'goa--emergency': type === 'emergency'\n }\">\n <div class=\"content\">\n <a *ngIf=\"notificationUrl\" class=\"message\" href={{notificationUrl}}>{{message}}</a>\n <span *ngIf=\"!notificationUrl\" class=\"message\">{{message}}</span>\n <a *ngIf=\"isDismissable === true\" class=\"close\" i18n-title title=\"Dismiss\" (click)=\"dismissClick()\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"16px\" height=\"16px\" viewBox=\"0 0 16 16\">\n <path d=\"M 15.99 14.54C 15.99 14.54 14.54 15.99 14.54 15.99 14.54 15.99 8 9.45 8 9.45 8 9.45 1.46 15.99 1.46 15.99 1.46 15.99 0.01 14.54 0.01 14.54 0.01 14.54 6.55 8 6.55 8 6.55 8 0.01 1.46 0.01 1.46 0.01 1.46 1.46 0.01 1.46 0.01 1.46 0.01 8 6.55 8 6.55 8 6.55 14.54 0.01 14.54 0.01 14.54 0.01 15.99 1.46 15.99 1.46 15.99 1.46 9.45 8 9.45 8 9.45 8 15.99 14.54 15.99 14.54Z\"/>\n </svg>\n </a>\n </div>\n</div>\n\n",
46
- styles: [""]
47
- },] }
48
- ];
49
- GoANotificationComponent.ctorParameters = () => [
50
- { type: ChangeDetectorRef }
51
- ];
52
- GoANotificationComponent.propDecorators = {
53
- type: [{ type: Input }],
54
- message: [{ type: Input }],
55
- notificationUrl: [{ type: Input }],
56
- isDismissable: [{ type: Input }],
57
- dismiss: [{ type: Output }]
58
- };
59
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1jb21wb25lbnRzL3NyYy9saWIvbm90aWZpY2F0aW9uL25vdGlmaWNhdGlvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxLQUFLLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRzs7OztHQUlHO0FBTUgsTUFBTSxPQUFPLHdCQUF3QjtJQWlDbkMsWUFBb0Isa0JBQXFDO1FBQXJDLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBbUI7UUEvQnpEOzs7V0FHRztRQUNILGlCQUFZLEdBQUcsS0FBSyxDQUFDO1FBRXJCOztXQUVHO1FBQ00sU0FBSSxHQUF3RCxhQUFhLENBQUM7UUFZbkY7O1dBRUc7UUFDTSxrQkFBYSxHQUFHLElBQUksQ0FBQztRQUU3Qjs7VUFFRTtRQUNPLFlBQU8sR0FBc0IsSUFBSSxZQUFZLEVBQU8sQ0FBQztJQUVGLENBQUM7SUFFOUQ7O09BRUc7SUFDSCxRQUFRO0lBQ1IsQ0FBQztJQUVEOztPQUVHO0lBQ0gsWUFBWTtRQUNWLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUV4QyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3RCLENBQUM7OztZQXRERixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGtCQUFrQjtnQkFDNUIsdXFDQUE0Qzs7YUFFN0M7OztZQVZ3RCxpQkFBaUI7OzttQkFzQnZFLEtBQUs7c0JBS0wsS0FBSzs4QkFLTCxLQUFLOzRCQUtMLEtBQUs7c0JBS0wsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbnB1dCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIENoYW5nZURldGVjdG9yUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG4vKipcbiAqIEdvdmVybm1lbnQgb2YgQWxiZXJ0YSBzdHlsZWQgbm90aWZpY2F0aW9uLCBjb21lcyBpbiA0IHZhcmlhbnRzOiBlbWVyZ2VuY3ksIGV2ZW50LCBpbmZvcm1hdGlvbiwgaW1wb3J0YW50LlxuICogQ2FuIHNldCB0aGUgbWVzc2FnZSBhbmQgb3B0aW9uYWxseSBhIGxpbmsgdXJsLlxuICogc2VsZWN0b3I6IGdvYS1ub3RpZmljYXRpb25cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ29hLW5vdGlmaWNhdGlvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9ub3RpZmljYXRpb24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9ub3RpZmljYXRpb24uY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBHb0FOb3RpZmljYXRpb25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIG9yIG5vdCB0aGUgbm90aWZpY2F0aW9uIGhhcyBiZWVuIGRpc21pc3NlZC5cbiAgICogQGlnbm9yZVxuICAgKi9cbiAgX2lzRGlzbWlzc2VkID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFRoZSB0eXBlIG9mIHRoZSBub3RpZmljYXRpb24sIGNoYW5nZXMgc3R5bGluZ3MgYW5kIGljb25zLlxuICAgKi9cbiAgQElucHV0KCkgdHlwZTogJ2ltcG9ydGFudCcgfCAnaW5mb3JtYXRpb24nIHwgJ2V2ZW50JyB8ICdlbWVyZ2VuY3knID0gJ2luZm9ybWF0aW9uJztcblxuICAvKipcbiAgICogTWVzc2FnZSB0byBkaXNwbGF5LlxuICAgKi9cbiAgQElucHV0KCkgbWVzc2FnZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBPcHRpb25hbCBsaW5rIGZvciBub3RpZmljYXRpb24sIGlmIG5vIGxpbmsgaXMgcHJvdmlkZWQgbm90aWZpY2F0aW9uIHdpbGwgbm90IGNvbnRhaW4gYW5jaG9yLlxuICAgKi9cbiAgQElucHV0KCkgbm90aWZpY2F0aW9uVXJsPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBDYW4gdGhlIG5vdGlmaWNhdGlvbiBiZSBkaXNtaXNzZWQ/XG4gICAqL1xuICBASW5wdXQoKSBpc0Rpc21pc3NhYmxlID0gdHJ1ZTtcblxuICAgLyoqXG4gICAqIEV2ZW50IGVtaXR0ZWQgd2hlbiB0aGUgbm90aWZpY2F0aW9uIGhhcyBiZWVuIGRpc21pc3NlZCBieSB0aGUgdXNlci5cbiAgICovXG4gIEBPdXRwdXQoKSBkaXNtaXNzOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX2NoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZikgeyB9XG5cbiAgLyoqXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICB9XG5cbiAgLyoqXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIGRpc21pc3NDbGljaygpIHtcbiAgICB0aGlzLl9pc0Rpc21pc3NlZCA9IHRydWU7XG4gICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuXG4gICAgdGhpcy5kaXNtaXNzLmVtaXQoKTtcbiAgfVxufVxuIl19
@@ -1,32 +0,0 @@
1
- import { Component, Input, ContentChildren, QueryList } from '@angular/core';
2
- import { GoANotificationComponent } from '../notification/notification.component';
3
- /**
4
- * Government of Alberta styled notification banner. Contains one or more notifications.
5
- * selector: goa-notification-banner
6
- */
7
- export class GoANotificationBannerComponent {
8
- constructor() {
9
- /**
10
- * The accessibility title for the notification banner. Is not displayed.
11
- */
12
- this.title = 'Notifications';
13
- }
14
- /**
15
- * @ignore
16
- */
17
- ngOnInit() {
18
- }
19
- }
20
- GoANotificationBannerComponent.decorators = [
21
- { type: Component, args: [{
22
- selector: 'goa-notification-banner',
23
- template: "<div class=\"goa-notifications\">\r\n <h2 class=\"title\">{{title}}</h2>\r\n <ng-content></ng-content>\r\n</div>\r\n\r\n",
24
- styles: [""]
25
- },] }
26
- ];
27
- GoANotificationBannerComponent.ctorParameters = () => [];
28
- GoANotificationBannerComponent.propDecorators = {
29
- title: [{ type: Input }],
30
- _notifications: [{ type: ContentChildren, args: [GoANotificationComponent, { descendants: false },] }]
31
- };
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLWJhbm5lci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItY29tcG9uZW50cy9zcmMvbGliL25vdGlmaWNhdGlvbi1iYW5uZXIvbm90aWZpY2F0aW9uLWJhbm5lci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxLQUFLLEVBQUUsZUFBZSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUVsRjs7O0dBR0c7QUFNSCxNQUFNLE9BQU8sOEJBQThCO0lBYXpDO1FBWEE7O1dBRUc7UUFDTSxVQUFLLEdBQUcsZUFBZSxDQUFDO0lBUWpCLENBQUM7SUFFakI7O09BRUc7SUFDSCxRQUFRO0lBQ1IsQ0FBQzs7O1lBeEJGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUseUJBQXlCO2dCQUNuQywwSUFBbUQ7O2FBRXBEOzs7O29CQU1FLEtBQUs7NkJBTUwsZUFBZSxTQUFDLHdCQUF3QixFQUFFLEVBQUMsV0FBVyxFQUFFLEtBQUssRUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbnB1dCwgQ29udGVudENoaWxkcmVuLCBRdWVyeUxpc3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEdvQU5vdGlmaWNhdGlvbkNvbXBvbmVudCB9IGZyb20gJy4uL25vdGlmaWNhdGlvbi9ub3RpZmljYXRpb24uY29tcG9uZW50JztcblxuLyoqXG4gKiBHb3Zlcm5tZW50IG9mIEFsYmVydGEgc3R5bGVkIG5vdGlmaWNhdGlvbiBiYW5uZXIuICBDb250YWlucyBvbmUgb3IgbW9yZSBub3RpZmljYXRpb25zLlxuICogc2VsZWN0b3I6IGdvYS1ub3RpZmljYXRpb24tYmFubmVyXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2dvYS1ub3RpZmljYXRpb24tYmFubmVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL25vdGlmaWNhdGlvbi1iYW5uZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9ub3RpZmljYXRpb24tYmFubmVyLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgR29BTm90aWZpY2F0aW9uQmFubmVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICAvKipcbiAgICogVGhlIGFjY2Vzc2liaWxpdHkgdGl0bGUgZm9yIHRoZSBub3RpZmljYXRpb24gYmFubmVyLiAgSXMgbm90IGRpc3BsYXllZC5cbiAgICovXG4gIEBJbnB1dCgpIHRpdGxlID0gJ05vdGlmaWNhdGlvbnMnO1xuXG4gIC8qKlxuICAgKiBUaGUgbm90aWZpY2F0aW9ucyBpbiB0aGlzIGJhbm5lci5cbiAgICogQGlnbm9yZVxuICAgKi9cbiAgQENvbnRlbnRDaGlsZHJlbihHb0FOb3RpZmljYXRpb25Db21wb25lbnQsIHtkZXNjZW5kYW50czogZmFsc2V9KSBfbm90aWZpY2F0aW9uczogUXVlcnlMaXN0PEdvQU5vdGlmaWNhdGlvbkNvbXBvbmVudD47XG5cbiAgY29uc3RydWN0b3IoKSB7IH1cblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gIH1cbn1cbiJdfQ==
@@ -1,117 +0,0 @@
1
- import { HostListener } from '@angular/core';
2
- import { Component, Input, } from '@angular/core';
3
- /**
4
- * A page load indicator component with Government of Alberta styling.
5
- * selector: goa-page-load-indicator
6
- */
7
- export class GoAPageLoadIndicatorComponent {
8
- constructor() {
9
- /**
10
- * Sets the page loader visibility state.
11
- */
12
- this.visible = false;
13
- /**
14
- * The type of page loader, deterministic and indeterministic.
15
- */
16
- this.type = 'infinite';
17
- /**
18
- * The message to display while loading.
19
- */
20
- this.message = '';
21
- /**
22
- * Sets the percentage value of the page loader while set to progress type, 0 - 100 percent.
23
- */
24
- this.value = 0;
25
- /**
26
- * Sets the page to locked and does not accept user input. When not set the component
27
- * can be used as a child element without blocking user input.
28
- */
29
- this.pagelock = true;
30
- /**
31
- * Sets the progress indicator display type size.
32
- */
33
- this.displayType = 'large';
34
- /**
35
- * Set defaults
36
- */
37
- this.strokeDashoffsetDefault = 280;
38
- this.progressMaxValue = 283;
39
- this.strokeDashoffset = 0;
40
- }
41
- ngOnInit() {
42
- if (this.type !== 'progress') {
43
- this.strokeDashoffset = this.strokeDashoffsetDefault;
44
- }
45
- }
46
- ngOnChanges(changes) {
47
- if (changes.visible) {
48
- this.blockScrollingToggle(changes.visible.currentValue);
49
- }
50
- if (changes.value) {
51
- if (this.type === 'progress') {
52
- this.setProgress(changes.value.currentValue);
53
- }
54
- }
55
- }
56
- /**
57
- * Toggles the page scrolling based on page load indicator's visibility.
58
- * @param isBlock The flag to enable/disable page scroll.
59
- * @ignore
60
- */
61
- blockScrollingToggle(isBlock) {
62
- if (!isBlock || !this.pagelock) {
63
- document.body.style.removeProperty('height');
64
- document.body.style.removeProperty('overflow');
65
- }
66
- else {
67
- document.body.style.height = '100%';
68
- document.body.style.overflow = 'hidden';
69
- }
70
- }
71
- /**
72
- * Blocks the keyboard input when page load indicator is visible.
73
- * @ignore
74
- */
75
- disableKeyboardInputHandler(event) {
76
- if (this.visible) {
77
- event.returnValue = false;
78
- event.preventDefault();
79
- }
80
- }
81
- ngOnDestroy() {
82
- this.blockScrollingToggle(false);
83
- }
84
- setProgress(progress) {
85
- if (this.type !== 'progress') {
86
- return;
87
- }
88
- ;
89
- if (progress === 0) {
90
- this.strokeDashoffset = this.progressMaxValue;
91
- return;
92
- }
93
- if (progress >= 100) {
94
- return;
95
- }
96
- const value = this.progressMaxValue - Math.round(this.progressMaxValue * progress / 100);
97
- this.strokeDashoffset = value;
98
- }
99
- }
100
- GoAPageLoadIndicatorComponent.decorators = [
101
- { type: Component, args: [{
102
- selector: 'goa-page-load-indicator',
103
- template: "<div *ngIf=\"visible\" class=\"progress-container--{{ displayType }}\">\n <svg\n [ngClass]=\"{\n 'svg': displayType === 'large',\n 'svg--small': displayType === 'small'\n }\"\n fill=\"none\"\n viewBox=\"0 0 100 100\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <circle class=\"base-circle\" cx=\"50\" cy=\"50\" r=\"45\"/>\n <circle\n [ngClass]=\"{\n 'progress-circle--infinite': type === 'infinite',\n 'progress-circle': type === 'progress'\n }\"\n cx=\"50\"\n cy=\"50\"\n r=\"45\"\n [style.stroke-dashoffset]=\"strokeDashoffset\"/>\n </svg>\n\n <span class=\"progress-message--{{ displayType }}\">\n {{ message }}\n </span>\n</div>\n",
104
- styles: [""]
105
- },] }
106
- ];
107
- GoAPageLoadIndicatorComponent.ctorParameters = () => [];
108
- GoAPageLoadIndicatorComponent.propDecorators = {
109
- visible: [{ type: Input }],
110
- type: [{ type: Input }],
111
- message: [{ type: Input }],
112
- value: [{ type: Input }],
113
- pagelock: [{ type: Input }],
114
- displayType: [{ type: Input }],
115
- disableKeyboardInputHandler: [{ type: HostListener, args: ['document:keydown', ['$event'],] }]
116
- };
117
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS1sb2FkLWluZGljYXRvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItY29tcG9uZW50cy9zcmMvbGliL3BhZ2UtbG9hZC1pbmRpY2F0b3IvcGFnZS1sb2FkLWluZGljYXRvci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUV4RCxPQUFPLEVBQ0wsU0FBUyxFQUNULEtBQUssR0FJTixNQUFNLGVBQWUsQ0FBQztBQUd2Qjs7O0dBR0c7QUFNSCxNQUFNLE9BQU8sNkJBQTZCO0lBRXhDO1FBR0E7O1dBRUc7UUFDTSxZQUFPLEdBQUcsS0FBSyxDQUFDO1FBRXpCOztXQUVHO1FBQ00sU0FBSSxHQUE0QixVQUFVLENBQUM7UUFFcEQ7O1VBRUU7UUFDTyxZQUFPLEdBQUcsRUFBRSxDQUFDO1FBRXRCOztXQUVHO1FBQ00sVUFBSyxHQUFHLENBQUMsQ0FBQztRQUVuQjs7O1dBR0c7UUFFSCxhQUFRLEdBQUcsSUFBSSxDQUFDO1FBRWhCOztXQUVHO1FBQ00sZ0JBQVcsR0FBc0IsT0FBTyxDQUFDO1FBRWxEOztXQUVHO1FBQ0gsNEJBQXVCLEdBQUcsR0FBRyxDQUFDO1FBQzlCLHFCQUFnQixHQUFHLEdBQUcsQ0FBQztRQUN2QixxQkFBZ0IsR0FBRyxDQUFDLENBQUM7SUF2Q3JCLENBQUM7SUF5Q0QsUUFBUTtRQUNOLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxVQUFVLEVBQUU7WUFDNUIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyx1QkFBdUIsQ0FBQztTQUN0RDtJQUNILENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxPQUFPLENBQUMsT0FBTyxFQUFFO1lBQ25CLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDO1NBQ3pEO1FBQ0QsSUFBSSxPQUFPLENBQUMsS0FBSyxFQUFFO1lBQ2pCLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxVQUFVLEVBQUU7Z0JBQzVCLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQzthQUM5QztTQUNGO0lBQ0gsQ0FBQztJQUVEOzs7O09BSUc7SUFDSyxvQkFBb0IsQ0FBQyxPQUFnQjtRQUMzQyxJQUFJLENBQUMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUM5QixRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDN0MsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1NBQ2hEO2FBQU07WUFDTCxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1lBQ3BDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7U0FDekM7SUFDSCxDQUFDO0lBRUQ7OztPQUdHO0lBRUgsMkJBQTJCLENBQUMsS0FBb0I7UUFDOUMsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ2hCLEtBQUssQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO1lBQzFCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztTQUN4QjtJQUNILENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFRCxXQUFXLENBQUMsUUFBZ0I7UUFDMUIsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLFVBQVUsRUFBRTtZQUM1QixPQUFPO1NBQ1I7UUFBQSxDQUFDO1FBRUYsSUFBSSxRQUFRLEtBQUssQ0FBQyxFQUFFO1lBQ2xCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7WUFDOUMsT0FBTztTQUNSO1FBRUQsSUFBSSxRQUFRLElBQUksR0FBRyxFQUFFO1lBQ25CLE9BQU87U0FDUjtRQUVELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxRQUFRLEdBQUcsR0FBRyxDQUFDLENBQUM7UUFDekYsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEtBQUssQ0FBQztJQUNoQyxDQUFDOzs7WUFqSEYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSx5QkFBeUI7Z0JBQ25DLHd1QkFBbUQ7O2FBRXBEOzs7O3NCQVNFLEtBQUs7bUJBS0wsS0FBSztzQkFLTCxLQUFLO29CQUtMLEtBQUs7dUJBTUwsS0FBSzswQkFNTCxLQUFLOzBDQTZDTCxZQUFZLFNBQUMsa0JBQWtCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIb3N0TGlzdGVuZXIsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQge1xuICBDb21wb25lbnQsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uSW5pdCxcbiAgU2ltcGxlQ2hhbmdlcyxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBfX3ZhbHVlcyB9IGZyb20gJ3RzbGliJztcblxuLyoqXG4gKiBBIHBhZ2UgbG9hZCBpbmRpY2F0b3IgY29tcG9uZW50IHdpdGggR292ZXJubWVudCBvZiBBbGJlcnRhIHN0eWxpbmcuXG4gKiBzZWxlY3RvcjogZ29hLXBhZ2UtbG9hZC1pbmRpY2F0b3JcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ29hLXBhZ2UtbG9hZC1pbmRpY2F0b3InLFxuICB0ZW1wbGF0ZVVybDogJy4vcGFnZS1sb2FkLWluZGljYXRvci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3BhZ2UtbG9hZC1pbmRpY2F0b3IuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgR29BUGFnZUxvYWRJbmRpY2F0b3JDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBwYWdlIGxvYWRlciB2aXNpYmlsaXR5IHN0YXRlLlxuICAgKi9cbiAgQElucHV0KCkgdmlzaWJsZSA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBUaGUgdHlwZSBvZiBwYWdlIGxvYWRlciwgZGV0ZXJtaW5pc3RpYyBhbmQgaW5kZXRlcm1pbmlzdGljLlxuICAgKi9cbiAgQElucHV0KCkgdHlwZTogJ3Byb2dyZXNzJyB8ICdpbmZpbml0ZScgPSAnaW5maW5pdGUnO1xuXG4gIC8qKlxuICAqIFRoZSBtZXNzYWdlIHRvIGRpc3BsYXkgd2hpbGUgbG9hZGluZy5cbiAgKi9cbiAgQElucHV0KCkgbWVzc2FnZSA9ICcnO1xuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBwZXJjZW50YWdlIHZhbHVlIG9mIHRoZSBwYWdlIGxvYWRlciB3aGlsZSBzZXQgdG8gcHJvZ3Jlc3MgdHlwZSwgMCAtIDEwMCBwZXJjZW50LlxuICAgKi9cbiAgQElucHV0KCkgdmFsdWUgPSAwO1xuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBwYWdlIHRvIGxvY2tlZCBhbmQgZG9lcyBub3QgYWNjZXB0IHVzZXIgaW5wdXQuIFdoZW4gbm90IHNldCB0aGUgY29tcG9uZW50XG4gICAqIGNhbiBiZSB1c2VkIGFzIGEgY2hpbGQgZWxlbWVudCB3aXRob3V0IGJsb2NraW5nIHVzZXIgaW5wdXQuXG4gICAqL1xuICBASW5wdXQoKVxuICBwYWdlbG9jayA9IHRydWU7XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHByb2dyZXNzIGluZGljYXRvciBkaXNwbGF5IHR5cGUgc2l6ZS5cbiAgICovXG4gIEBJbnB1dCgpIGRpc3BsYXlUeXBlOiAnbGFyZ2UnIHwgJ3NtYWxsJyA9ICdsYXJnZSc7XG5cbiAgLyoqXG4gICAqIFNldCBkZWZhdWx0c1xuICAgKi9cbiAgc3Ryb2tlRGFzaG9mZnNldERlZmF1bHQgPSAyODA7XG4gIHByb2dyZXNzTWF4VmFsdWUgPSAyODM7XG4gIHN0cm9rZURhc2hvZmZzZXQgPSAwO1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnR5cGUgIT09ICdwcm9ncmVzcycpIHtcbiAgICAgIHRoaXMuc3Ryb2tlRGFzaG9mZnNldCA9IHRoaXMuc3Ryb2tlRGFzaG9mZnNldERlZmF1bHQ7XG4gICAgfVxuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGlmIChjaGFuZ2VzLnZpc2libGUpIHtcbiAgICAgIHRoaXMuYmxvY2tTY3JvbGxpbmdUb2dnbGUoY2hhbmdlcy52aXNpYmxlLmN1cnJlbnRWYWx1ZSk7XG4gICAgfVxuICAgIGlmIChjaGFuZ2VzLnZhbHVlKSB7XG4gICAgICBpZiAodGhpcy50eXBlID09PSAncHJvZ3Jlc3MnKSB7XG4gICAgICAgIHRoaXMuc2V0UHJvZ3Jlc3MoY2hhbmdlcy52YWx1ZS5jdXJyZW50VmFsdWUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBUb2dnbGVzIHRoZSBwYWdlIHNjcm9sbGluZyBiYXNlZCBvbiBwYWdlIGxvYWQgaW5kaWNhdG9yJ3MgdmlzaWJpbGl0eS5cbiAgICogQHBhcmFtIGlzQmxvY2sgVGhlIGZsYWcgdG8gZW5hYmxlL2Rpc2FibGUgcGFnZSBzY3JvbGwuXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIHByaXZhdGUgYmxvY2tTY3JvbGxpbmdUb2dnbGUoaXNCbG9jazogYm9vbGVhbik6IHZvaWQge1xuICAgIGlmICghaXNCbG9jayB8fCAhdGhpcy5wYWdlbG9jaykge1xuICAgICAgZG9jdW1lbnQuYm9keS5zdHlsZS5yZW1vdmVQcm9wZXJ0eSgnaGVpZ2h0Jyk7XG4gICAgICBkb2N1bWVudC5ib2R5LnN0eWxlLnJlbW92ZVByb3BlcnR5KCdvdmVyZmxvdycpO1xuICAgIH0gZWxzZSB7XG4gICAgICBkb2N1bWVudC5ib2R5LnN0eWxlLmhlaWdodCA9ICcxMDAlJztcbiAgICAgIGRvY3VtZW50LmJvZHkuc3R5bGUub3ZlcmZsb3cgPSAnaGlkZGVuJztcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQmxvY2tzIHRoZSBrZXlib2FyZCBpbnB1dCB3aGVuIHBhZ2UgbG9hZCBpbmRpY2F0b3IgaXMgdmlzaWJsZS5cbiAgICogQGlnbm9yZVxuICAgKi9cbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6a2V5ZG93bicsIFsnJGV2ZW50J10pXG4gIGRpc2FibGVLZXlib2FyZElucHV0SGFuZGxlcihldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgIGlmICh0aGlzLnZpc2libGUpIHtcbiAgICAgIGV2ZW50LnJldHVyblZhbHVlID0gZmFsc2U7XG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuYmxvY2tTY3JvbGxpbmdUb2dnbGUoZmFsc2UpO1xuICB9XG5cbiAgc2V0UHJvZ3Jlc3MocHJvZ3Jlc3M6IG51bWJlcik6IHZvaWQge1xuICAgIGlmICh0aGlzLnR5cGUgIT09ICdwcm9ncmVzcycpIHtcbiAgICAgIHJldHVybjtcbiAgICB9O1xuXG4gICAgaWYgKHByb2dyZXNzID09PSAwKSB7XG4gICAgICB0aGlzLnN0cm9rZURhc2hvZmZzZXQgPSB0aGlzLnByb2dyZXNzTWF4VmFsdWU7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHByb2dyZXNzID49IDEwMCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHZhbHVlID0gdGhpcy5wcm9ncmVzc01heFZhbHVlIC0gTWF0aC5yb3VuZCh0aGlzLnByb2dyZXNzTWF4VmFsdWUgKiBwcm9ncmVzcyAvIDEwMCk7XG4gICAgdGhpcy5zdHJva2VEYXNob2Zmc2V0ID0gdmFsdWU7XG4gIH1cbn1cbiJdfQ==
@@ -1,3 +0,0 @@
1
- export class GoARadioChange {
2
- }
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8tY2hhbmdlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWNvbXBvbmVudHMvc3JjL2xpYi9yYWRpby9yYWRpby1jaGFuZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxPQUFPLGNBQWM7Q0FLeEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBHb0FSYWRpb0NvbXBvbmVudCB9IGZyb20gJy4vcmFkaW8uY29tcG9uZW50JztcblxuZXhwb3J0IGNsYXNzIEdvQVJhZGlvQ2hhbmdlIHtcbiAgICAvKiogVGhlIHNvdXJjZSByYWRpb2J1dHRvbiBvZiB0aGUgZXZlbnQuICovXG4gICAgc291cmNlOiBHb0FSYWRpb0NvbXBvbmVudDtcbiAgICAvKiogVGhlIG5ldyBgY2hlY2tlZGAgdmFsdWUgb2YgdGhlIHJhZGlvYnV0dG9uLiAqL1xuICAgIGNoZWNrZWQ6IGJvb2xlYW47XG4gIH1cbiJdfQ==
@@ -1,146 +0,0 @@
1
- import { Component, ChangeDetectionStrategy, forwardRef, Input, Output, EventEmitter, ChangeDetectorRef } from '@angular/core';
2
- import { NG_VALUE_ACCESSOR } from '@angular/forms';
3
- import { GoARadioService } from './radio.service';
4
- /**
5
- * Control value accessor to use for the component's provider
6
- * @ignore
7
- */
8
- export const GOA_RADIO_CONTROL_VALUE_ACCESSOR = {
9
- provide: NG_VALUE_ACCESSOR,
10
- useExisting: forwardRef(() => GoARadioComponent),
11
- multi: true
12
- };
13
- /**
14
- * Radiobutton component with Government of Alberta styling.
15
- */
16
- export class GoARadioComponent {
17
- constructor(_changeDetector, _radioService) {
18
- this._changeDetector = _changeDetector;
19
- this._radioService = _radioService;
20
- /**
21
- * The position to display the label/text for the radiobutton. Valid values are before and after.
22
- */
23
- this.labelPosition = 'after';
24
- /**
25
- * Event emitted containing the source radiobutton, and whether or not it is checked.
26
- */
27
- this.selectionChange = new EventEmitter();
28
- /**
29
- * @ignore
30
- */
31
- this._propagateChange = (_) => { };
32
- this.uniqueId = `goa-radiobutton-${GoARadioComponent.idNum++}`;
33
- }
34
- /**
35
- * Lifecycle hook OnInit. Used to subscribe to radio change messages from the radioService in order to know whether or not
36
- * this radio should be checked or not.
37
- * @ignore
38
- */
39
- ngOnInit() {
40
- this.radioServiceSubscription = this._radioService.radioChangeMessage.subscribe(rcm => {
41
- if (rcm && rcm.source && rcm.source.name === this.name && rcm.source.uniqueId !== this.uniqueId) {
42
- this.checked = false;
43
- this._changeDetector.detectChanges();
44
- }
45
- });
46
- }
47
- /**
48
- * Lifecycle hook OnDestroy. Used to unsubscribe from the radio change messages.
49
- * @ignore
50
- */
51
- ngOnDestroy() {
52
- this.radioServiceSubscription.unsubscribe();
53
- }
54
- /**
55
- * Boolean indicating if the radiobutton is required and not checked
56
- * @ignore
57
- */
58
- hasError() {
59
- return this.required && !this.checked;
60
- }
61
- /**
62
- * Marks the radio button as needing checking for change detection.
63
- * This method is exposed because the parent radio group will directly
64
- * update bound properties of the radio button.
65
- */
66
- markForCheck() {
67
- // When group value changes, the button will not be notified. Use `markForCheck` to explicitly
68
- // update radio button's status
69
- this._changeDetector.markForCheck();
70
- }
71
- /**
72
- * Implemented as part of ControlValueAccessor.
73
- * @param value The model bound property, i.e. the value of checked
74
- * @ignore
75
- */
76
- writeValue(value) {
77
- if ((value !== undefined) && (value !== null)) {
78
- this.checked = value;
79
- this._changeDetector.detectChanges();
80
- }
81
- }
82
- /**
83
- * Implemented as part of ControlValueAccessor.
84
- * @param fn The function to call on change. Provided by ControlValueAccessor
85
- * @ignore
86
- */
87
- registerOnChange(fn) {
88
- this._propagateChange = fn;
89
- }
90
- /**
91
- * Implemented as part of ControlValueAccessor.
92
- * @param fn The function to call on touch. Provided by ControlValueAccessor
93
- * @ignore
94
- */
95
- registerOnTouched(fn) {
96
- this._onTouchedCallback = fn;
97
- }
98
- ;
99
- /**
100
- * User interaction event on click of the radiobutton or its label to indicate toggling of the current checked status.
101
- * Emits selectionChange to parent components.
102
- * @ignore
103
- */
104
- onClick() {
105
- // flip the checked state of this radio
106
- this.checked = !this.checked;
107
- // emit radio change event for those interested
108
- const radioChange = {
109
- source: this,
110
- checked: this.checked
111
- };
112
- this._propagateChange(this.checked);
113
- this.selectionChange.emit(radioChange);
114
- // notify other radios in group/with same name via radio service so they know to flip their states to not checked
115
- this._radioService.selectRadio(radioChange);
116
- }
117
- }
118
- /**
119
- * Used to generate unique Id for this component
120
- * @ignore
121
- */
122
- GoARadioComponent.idNum = 0;
123
- GoARadioComponent.decorators = [
124
- { type: Component, args: [{
125
- selector: 'goa-radio',
126
- template: "<div\n class=\"goa-radio\"\n [ngClass]=\"{\n 'goa-radio-disabled': disabled,\n 'has-error': hasError(),\n 'goa-radio-label-before': labelPosition === 'before'\n }\"\n>\n <div class=\"goa-radio-inline-block\">\n <label class=\"goa-radio-layout\" [attr.for]=\"uniqueId\">\n <div\n class=\"goa-radio-container\"\n [ngClass]=\"{ 'goa-radio-selected': checked }\"\n >\n <input\n type=\"radio\"\n [id]=\"uniqueId\"\n [(checked)]=\"checked\"\n [disabled]=\"disabled\"\n [required]=\"required\"\n [attr.value]=\"value\"\n [name]=\"name\"\n (change)=\"onClick()\"\n />\n <svg\n *ngIf=\"checked\"\n id=\"radiomark\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"12\"\n height=\"12\"\n viewBox=\"0 0 12 12\"\n >\n <circle\n id=\"Ellipse_128\"\n data-name=\"Ellipse 128\"\n cx=\"6\"\n cy=\"6\"\n r=\"6\"\n fill=\"#fff\"\n />\n </svg>\n </div>\n <span class=\"goa-radio-label\">\n <ng-content></ng-content>\n </span>\n </label>\n </div>\n</div>\n",
127
- //register our custom ControlValueAccessor with angular DI system so angular knows how to get instance of it for ngModel binding
128
- providers: [GOA_RADIO_CONTROL_VALUE_ACCESSOR],
129
- changeDetection: ChangeDetectionStrategy.OnPush,
130
- styles: [""]
131
- },] }
132
- ];
133
- GoARadioComponent.ctorParameters = () => [
134
- { type: ChangeDetectorRef },
135
- { type: GoARadioService }
136
- ];
137
- GoARadioComponent.propDecorators = {
138
- name: [{ type: Input }],
139
- value: [{ type: Input }],
140
- checked: [{ type: Input }],
141
- disabled: [{ type: Input }],
142
- required: [{ type: Input }],
143
- labelPosition: [{ type: Input }],
144
- selectionChange: [{ type: Output }]
145
- };
146
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWNvbXBvbmVudHMvc3JjL2xpYi9yYWRpby9yYWRpby5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCx1QkFBdUIsRUFDdkIsVUFBVSxFQUNWLEtBQUssRUFDTCxNQUFNLEVBQ04sWUFBWSxFQUNaLGlCQUFpQixFQUVsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHekUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRWxEOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLGdDQUFnQyxHQUFHO0lBQzlDLE9BQU8sRUFBRSxpQkFBaUI7SUFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQztJQUNoRCxLQUFLLEVBQUUsSUFBSTtDQUNaLENBQUE7QUFFRDs7R0FFRztBQVNILE1BQU0sT0FBTyxpQkFBaUI7SUFnRTVCLFlBQW9CLGVBQWtDLEVBQ2xDLGFBQThCO1FBRDlCLG9CQUFlLEdBQWYsZUFBZSxDQUFtQjtRQUNsQyxrQkFBYSxHQUFiLGFBQWEsQ0FBaUI7UUFyQmxEOztXQUVHO1FBQ00sa0JBQWEsR0FBdUIsT0FBTyxDQUFDO1FBRXBEOztVQUVFO1FBQ08sb0JBQWUsR0FBaUMsSUFBSSxZQUFZLEVBQWtCLENBQUM7UUFPN0Y7O1dBRUc7UUFDSCxxQkFBZ0IsR0FBRyxDQUFDLENBQU0sRUFBRSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBSWpDLElBQUksQ0FBQyxRQUFRLEdBQUcsbUJBQW1CLGlCQUFpQixDQUFDLEtBQUssRUFBRSxFQUFFLENBQUM7SUFDakUsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxRQUFRO1FBQ04sSUFBSSxDQUFDLHdCQUF3QixHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsa0JBQWtCLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ3BGLElBQUksR0FBRyxJQUFJLEdBQUcsQ0FBQyxNQUFNLElBQUksR0FBRyxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLElBQUksSUFBSSxHQUFHLENBQUMsTUFBTSxDQUFDLFFBQVEsS0FBSyxJQUFJLENBQUMsUUFBUSxFQUFFO2dCQUMvRixJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztnQkFDckIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxhQUFhLEVBQUUsQ0FBQzthQUN0QztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7T0FHRztJQUNILFdBQVc7UUFDVCxJQUFJLENBQUMsd0JBQXdCLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDOUMsQ0FBQztJQUVEOzs7T0FHRztJQUNILFFBQVE7UUFDTixPQUFPLElBQUksQ0FBQyxRQUFRLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3hDLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsWUFBWTtRQUNWLDhGQUE4RjtRQUM5RiwrQkFBK0I7UUFDL0IsSUFBSSxDQUFDLGVBQWUsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN0QyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILFVBQVUsQ0FBQyxLQUFVO1FBQ25CLElBQUksQ0FBQyxLQUFLLEtBQUssU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUU7WUFDN0MsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7WUFDckIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxhQUFhLEVBQUUsQ0FBQztTQUN0QztJQUNILENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsZ0JBQWdCLENBQUMsRUFBTztRQUN0QixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsaUJBQWlCLENBQUMsRUFBTztRQUN2QixJQUFJLENBQUMsa0JBQWtCLEdBQUcsRUFBRSxDQUFDO0lBQy9CLENBQUM7SUFBQSxDQUFDO0lBRUY7Ozs7T0FJRztJQUNILE9BQU87UUFDTCx1Q0FBdUM7UUFDdkMsSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7UUFFN0IsK0NBQStDO1FBQy9DLE1BQU0sV0FBVyxHQUFHO1lBQ2xCLE1BQU0sRUFBRSxJQUFJO1lBQ1osT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPO1NBQ0osQ0FBQztRQUVwQixJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3BDLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBRXZDLGlIQUFpSDtRQUNqSCxJQUFJLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUM5QyxDQUFDOztBQS9KRDs7O0dBR0c7QUFDSSx1QkFBSyxHQUFHLENBQUMsQ0FBQzs7WUFibEIsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxXQUFXO2dCQUNyQiwydUNBQXFDO2dCQUVyQyxnSUFBZ0k7Z0JBQ2hJLFNBQVMsRUFBRSxDQUFDLGdDQUFnQyxDQUFDO2dCQUM3QyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTs7YUFDaEQ7OztZQTVCQyxpQkFBaUI7WUFNVixlQUFlOzs7bUJBNkNyQixLQUFLO29CQUtMLEtBQUs7c0JBS0wsS0FBSzt1QkFLTCxLQUFLO3VCQUtMLEtBQUs7NEJBS0wsS0FBSzs4QkFLTCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBPbkluaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBmb3J3YXJkUmVmLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBFdmVudEVtaXR0ZXIsXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBPbkRlc3Ryb3lcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEdvQVJhZGlvQ2hhbmdlIH0gZnJvbSAnLi9yYWRpby1jaGFuZ2UnO1xuaW1wb3J0IHsgR29BUmFkaW9TZXJ2aWNlIH0gZnJvbSAnLi9yYWRpby5zZXJ2aWNlJztcblxuLyoqXG4gKiBDb250cm9sIHZhbHVlIGFjY2Vzc29yIHRvIHVzZSBmb3IgdGhlIGNvbXBvbmVudCdzIHByb3ZpZGVyXG4gKiBAaWdub3JlXG4gKi9cbmV4cG9ydCBjb25zdCBHT0FfUkFESU9fQ09OVFJPTF9WQUxVRV9BQ0NFU1NPUiA9IHtcbiAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IEdvQVJhZGlvQ29tcG9uZW50KSxcbiAgbXVsdGk6IHRydWVcbn1cblxuLyoqXG4gKiBSYWRpb2J1dHRvbiBjb21wb25lbnQgd2l0aCBHb3Zlcm5tZW50IG9mIEFsYmVydGEgc3R5bGluZy5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ29hLXJhZGlvJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3JhZGlvLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcmFkaW8uY29tcG9uZW50LnNjc3MnXSxcbiAgLy9yZWdpc3RlciBvdXIgY3VzdG9tIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHdpdGggYW5ndWxhciBESSBzeXN0ZW0gc28gYW5ndWxhciBrbm93cyBob3cgdG8gZ2V0IGluc3RhbmNlIG9mIGl0IGZvciBuZ01vZGVsIGJpbmRpbmdcbiAgcHJvdmlkZXJzOiBbR09BX1JBRElPX0NPTlRST0xfVkFMVUVfQUNDRVNTT1JdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBHb0FSYWRpb0NvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBPbkluaXQsIE9uRGVzdHJveSB7XG4gIC8qKlxuICAgKiBVc2VkIHRvIGdlbmVyYXRlIHVuaXF1ZSBJZCBmb3IgdGhpcyBjb21wb25lbnRcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgc3RhdGljIGlkTnVtID0gMDtcblxuICAvKipcbiAgICogVW5pcXVlIElkIGZvciB0aGlzIGNvbXBvbmVudFxuICAgKiBAaWdub3JlXG4gICAqL1xuICB1bmlxdWVJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBSZWZlcmVuY2UgdG8gdGhlIHN1YnNjcmlwdGlvbiB0byB0aGUgcmFkaW8gY2hhbmdlIGV2ZW50cyBzbyBpdCBjYW4gYmUgdW5zdWJzY3JpYmVkIG9uIGRlc3Ryb3lcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgcmFkaW9TZXJ2aWNlU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG5cbiAgLyoqXG4gICAqIEluZGljYXRlcyB0aGUgXCJncm91cFwiIG9yIHNldCBvZiByYWRpb3MgdGhpcyByYWRpbyBiZWxvbmdzIHRvLlxuICAgKi9cbiAgQElucHV0KCkgbmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBWYWx1ZS91bmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIG9iamVjdCB0aGUgcmFkaW9idXR0b24gcmVwcmVzZW50cy5cbiAgICovXG4gIEBJbnB1dCgpIHZhbHVlOiBhbnk7XG5cbiAgLyoqXG4gICAqIEJvb2xlYW4gaW5kaWNhdGluZyB3aGV0aGVyIG9yIG5vdCB0aGUgcmFkaW9idXR0b24gaXMgY2hlY2tlZC9zZWxlY3RlZC5cbiAgICovXG4gIEBJbnB1dCgpIGNoZWNrZWQ6IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEJvb2xlYW4gaW5kaWNhdGluZyB3aGV0aGVyIG9yIG5vdCB0aGUgcmFkaW9idXR0b24gaXMgZGlzYWJsZWQuXG4gICAqL1xuICBASW5wdXQoKSBkaXNhYmxlZDogYm9vbGVhbjtcblxuICAvKipcbiAgICogQm9vbGVhbiBpbmRpY2F0aW5nIHdoZXRoZXIgb3Igbm90IHRoZSByYWRpb2J1dHRvbiBpcyByZXF1aXJlZC5cbiAgICovXG4gIEBJbnB1dCgpIHJlcXVpcmVkOiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBUaGUgcG9zaXRpb24gdG8gZGlzcGxheSB0aGUgbGFiZWwvdGV4dCBmb3IgdGhlIHJhZGlvYnV0dG9uLiAgVmFsaWQgdmFsdWVzIGFyZSBiZWZvcmUgYW5kIGFmdGVyLlxuICAgKi9cbiAgQElucHV0KCkgbGFiZWxQb3NpdGlvbjogJ2JlZm9yZScgfCAnYWZ0ZXInID0gJ2FmdGVyJztcblxuICAgLyoqXG4gICAqIEV2ZW50IGVtaXR0ZWQgY29udGFpbmluZyB0aGUgc291cmNlIHJhZGlvYnV0dG9uLCBhbmQgd2hldGhlciBvciBub3QgaXQgaXMgY2hlY2tlZC5cbiAgICovXG4gIEBPdXRwdXQoKSBzZWxlY3Rpb25DaGFuZ2U6IEV2ZW50RW1pdHRlcjxHb0FSYWRpb0NoYW5nZT4gPSBuZXcgRXZlbnRFbWl0dGVyPEdvQVJhZGlvQ2hhbmdlPigpO1xuXG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBfb25Ub3VjaGVkQ2FsbGJhY2s6ICgpID0+IHZvaWQ7XG5cbiAgLyoqXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIF9wcm9wYWdhdGVDaGFuZ2UgPSAoXzogYW55KSA9PiB7IH07XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICAgICAgICBwcml2YXRlIF9yYWRpb1NlcnZpY2U6IEdvQVJhZGlvU2VydmljZSkge1xuICAgIHRoaXMudW5pcXVlSWQgPSBgZ29hLXJhZGlvYnV0dG9uLSR7R29BUmFkaW9Db21wb25lbnQuaWROdW0rK31gO1xuICB9XG5cbiAgLyoqXG4gICAqIExpZmVjeWNsZSBob29rIE9uSW5pdC4gIFVzZWQgdG8gc3Vic2NyaWJlIHRvIHJhZGlvIGNoYW5nZSBtZXNzYWdlcyBmcm9tIHRoZSByYWRpb1NlcnZpY2UgaW4gb3JkZXIgdG8ga25vdyB3aGV0aGVyIG9yIG5vdFxuICAgKiB0aGlzIHJhZGlvIHNob3VsZCBiZSBjaGVja2VkIG9yIG5vdC5cbiAgICogQGlnbm9yZVxuICAgKi9cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5yYWRpb1NlcnZpY2VTdWJzY3JpcHRpb24gPSB0aGlzLl9yYWRpb1NlcnZpY2UucmFkaW9DaGFuZ2VNZXNzYWdlLnN1YnNjcmliZShyY20gPT4ge1xuICAgICAgaWYgKHJjbSAmJiByY20uc291cmNlICYmIHJjbS5zb3VyY2UubmFtZSA9PT0gdGhpcy5uYW1lICYmIHJjbS5zb3VyY2UudW5pcXVlSWQgIT09IHRoaXMudW5pcXVlSWQpIHtcbiAgICAgICAgdGhpcy5jaGVja2VkID0gZmFsc2U7XG4gICAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMaWZlY3ljbGUgaG9vayBPbkRlc3Ryb3kuICBVc2VkIHRvIHVuc3Vic2NyaWJlIGZyb20gdGhlIHJhZGlvIGNoYW5nZSBtZXNzYWdlcy5cbiAgICogQGlnbm9yZVxuICAgKi9cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5yYWRpb1NlcnZpY2VTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBCb29sZWFuIGluZGljYXRpbmcgaWYgdGhlIHJhZGlvYnV0dG9uIGlzIHJlcXVpcmVkIGFuZCBub3QgY2hlY2tlZFxuICAgKiBAaWdub3JlXG4gICAqL1xuICBoYXNFcnJvcigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5yZXF1aXJlZCAmJiAhdGhpcy5jaGVja2VkO1xuICB9XG5cbiAgLyoqXG4gICAqIE1hcmtzIHRoZSByYWRpbyBidXR0b24gYXMgbmVlZGluZyBjaGVja2luZyBmb3IgY2hhbmdlIGRldGVjdGlvbi5cbiAgICogVGhpcyBtZXRob2QgaXMgZXhwb3NlZCBiZWNhdXNlIHRoZSBwYXJlbnQgcmFkaW8gZ3JvdXAgd2lsbCBkaXJlY3RseVxuICAgKiB1cGRhdGUgYm91bmQgcHJvcGVydGllcyBvZiB0aGUgcmFkaW8gYnV0dG9uLlxuICAgKi9cbiAgbWFya0ZvckNoZWNrKCk6IHZvaWQge1xuICAgIC8vIFdoZW4gZ3JvdXAgdmFsdWUgY2hhbmdlcywgdGhlIGJ1dHRvbiB3aWxsIG5vdCBiZSBub3RpZmllZC4gVXNlIGBtYXJrRm9yQ2hlY2tgIHRvIGV4cGxpY2l0bHlcbiAgICAvLyB1cGRhdGUgcmFkaW8gYnV0dG9uJ3Mgc3RhdHVzXG4gICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICAvKipcbiAgICogSW1wbGVtZW50ZWQgYXMgcGFydCBvZiBDb250cm9sVmFsdWVBY2Nlc3Nvci5cbiAgICogQHBhcmFtIHZhbHVlIFRoZSBtb2RlbCBib3VuZCBwcm9wZXJ0eSwgaS5lLiB0aGUgdmFsdWUgb2YgY2hlY2tlZFxuICAgKiBAaWdub3JlXG4gICAqL1xuICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpIHtcbiAgICBpZiAoKHZhbHVlICE9PSB1bmRlZmluZWQpICYmICh2YWx1ZSAhPT0gbnVsbCkpIHtcbiAgICAgIHRoaXMuY2hlY2tlZCA9IHZhbHVlO1xuICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBJbXBsZW1lbnRlZCBhcyBwYXJ0IG9mIENvbnRyb2xWYWx1ZUFjY2Vzc29yLlxuICAgKiBAcGFyYW0gZm4gVGhlIGZ1bmN0aW9uIHRvIGNhbGwgb24gY2hhbmdlLiAgUHJvdmlkZWQgYnkgQ29udHJvbFZhbHVlQWNjZXNzb3JcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KSB7XG4gICAgdGhpcy5fcHJvcGFnYXRlQ2hhbmdlID0gZm47XG4gIH1cblxuICAvKipcbiAgICogSW1wbGVtZW50ZWQgYXMgcGFydCBvZiBDb250cm9sVmFsdWVBY2Nlc3Nvci5cbiAgICogQHBhcmFtIGZuIFRoZSBmdW5jdGlvbiB0byBjYWxsIG9uIHRvdWNoLiAgUHJvdmlkZWQgYnkgQ29udHJvbFZhbHVlQWNjZXNzb3JcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSkge1xuICAgIHRoaXMuX29uVG91Y2hlZENhbGxiYWNrID0gZm47XG4gIH07XG5cbiAgLyoqXG4gICAqIFVzZXIgaW50ZXJhY3Rpb24gZXZlbnQgb24gY2xpY2sgb2YgdGhlIHJhZGlvYnV0dG9uIG9yIGl0cyBsYWJlbCB0byBpbmRpY2F0ZSB0b2dnbGluZyBvZiB0aGUgY3VycmVudCBjaGVja2VkIHN0YXR1cy5cbiAgICogRW1pdHMgc2VsZWN0aW9uQ2hhbmdlIHRvIHBhcmVudCBjb21wb25lbnRzLlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBvbkNsaWNrKCkge1xuICAgIC8vIGZsaXAgdGhlIGNoZWNrZWQgc3RhdGUgb2YgdGhpcyByYWRpb1xuICAgIHRoaXMuY2hlY2tlZCA9ICF0aGlzLmNoZWNrZWQ7XG5cbiAgICAvLyBlbWl0IHJhZGlvIGNoYW5nZSBldmVudCBmb3IgdGhvc2UgaW50ZXJlc3RlZFxuICAgIGNvbnN0IHJhZGlvQ2hhbmdlID0ge1xuICAgICAgc291cmNlOiB0aGlzLFxuICAgICAgY2hlY2tlZDogdGhpcy5jaGVja2VkXG4gICAgfSBhcyBHb0FSYWRpb0NoYW5nZTtcblxuICAgIHRoaXMuX3Byb3BhZ2F0ZUNoYW5nZSh0aGlzLmNoZWNrZWQpO1xuICAgIHRoaXMuc2VsZWN0aW9uQ2hhbmdlLmVtaXQocmFkaW9DaGFuZ2UpO1xuXG4gICAgLy8gbm90aWZ5IG90aGVyIHJhZGlvcyBpbiBncm91cC93aXRoIHNhbWUgbmFtZSB2aWEgcmFkaW8gc2VydmljZSBzbyB0aGV5IGtub3cgdG8gZmxpcCB0aGVpciBzdGF0ZXMgdG8gbm90IGNoZWNrZWRcbiAgICB0aGlzLl9yYWRpb1NlcnZpY2Uuc2VsZWN0UmFkaW8ocmFkaW9DaGFuZ2UpO1xuICB9XG59XG4iXX0=