@skyux/modals 5.7.2 → 6.0.0-beta.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 (119) hide show
  1. package/documentation.json +4 -4
  2. package/esm2020/index.mjs +26 -0
  3. package/esm2020/lib/modules/confirm/confirm-button-action.mjs +2 -0
  4. package/esm2020/lib/modules/confirm/confirm-button-config.mjs +2 -0
  5. package/esm2020/lib/modules/confirm/confirm-button.mjs +2 -0
  6. package/esm2020/lib/modules/confirm/confirm-closed-event-args.mjs +2 -0
  7. package/esm2020/lib/modules/confirm/confirm-config.mjs +2 -0
  8. package/esm2020/lib/modules/confirm/confirm-instance.mjs +12 -0
  9. package/esm2020/lib/modules/confirm/confirm-modal-context.mjs +4 -0
  10. package/esm2020/lib/modules/confirm/confirm-type.mjs +25 -0
  11. package/esm2020/lib/modules/confirm/confirm.component.mjs +123 -0
  12. package/esm2020/lib/modules/confirm/confirm.module.mjs +34 -0
  13. package/esm2020/lib/modules/confirm/confirm.service.mjs +55 -0
  14. package/esm2020/lib/modules/modal/modal-adapter.service.mjs +47 -0
  15. package/esm2020/lib/modules/modal/modal-before-close-handler.mjs +7 -0
  16. package/esm2020/lib/modules/modal/modal-close-args.mjs +3 -0
  17. package/esm2020/lib/modules/modal/modal-component-adapter.service.mjs +98 -0
  18. package/esm2020/lib/modules/modal/modal-configuration.mjs +19 -0
  19. package/esm2020/lib/modules/modal/modal-content.component.mjs +14 -0
  20. package/esm2020/lib/modules/modal/modal-footer.component.mjs +14 -0
  21. package/esm2020/lib/modules/modal/modal-header.component.mjs +15 -0
  22. package/esm2020/lib/modules/modal/modal-host.component.mjs +96 -0
  23. package/esm2020/lib/modules/modal/modal-host.service.mjs +55 -0
  24. package/esm2020/lib/modules/modal/modal-instance.mjs +105 -0
  25. package/esm2020/lib/modules/modal/modal-scroll-shadow-event-args.mjs +2 -0
  26. package/esm2020/lib/modules/modal/modal-scroll-shadow.directive.mjs +122 -0
  27. package/esm2020/lib/modules/modal/modal-state-animation.mjs +8 -0
  28. package/esm2020/lib/modules/modal/modal.component.mjs +178 -0
  29. package/esm2020/lib/modules/modal/modal.interface.mjs +4 -0
  30. package/esm2020/lib/modules/modal/modal.module.mjs +63 -0
  31. package/esm2020/lib/modules/modal/modal.service.mjs +85 -0
  32. package/esm2020/lib/modules/shared/sky-modals-resources.module.mjs +54 -0
  33. package/esm2020/skyux-modals.mjs +5 -0
  34. package/esm2020/testing/modal-fixture.mjs +168 -0
  35. package/esm2020/testing/public-api.mjs +2 -0
  36. package/esm2020/testing/skyux-modals-testing.mjs +5 -0
  37. package/fesm2015/{skyux-modals-testing.js → skyux-modals-testing.mjs} +1 -1
  38. package/fesm2015/skyux-modals-testing.mjs.map +1 -0
  39. package/fesm2015/skyux-modals.mjs +1159 -0
  40. package/fesm2015/skyux-modals.mjs.map +1 -0
  41. package/{esm2015/testing/modal-fixture.js → fesm2020/skyux-modals-testing.mjs} +8 -2
  42. package/fesm2020/skyux-modals-testing.mjs.map +1 -0
  43. package/{fesm2015/skyux-modals.js → fesm2020/skyux-modals.mjs} +58 -88
  44. package/fesm2020/skyux-modals.mjs.map +1 -0
  45. package/package.json +39 -15
  46. package/testing/package.json +5 -5
  47. package/bundles/skyux-modals-testing.umd.js +0 -538
  48. package/bundles/skyux-modals.umd.js +0 -1356
  49. package/esm2015/index.js +0 -26
  50. package/esm2015/index.js.map +0 -1
  51. package/esm2015/lib/modules/confirm/confirm-button-action.js +0 -2
  52. package/esm2015/lib/modules/confirm/confirm-button-action.js.map +0 -1
  53. package/esm2015/lib/modules/confirm/confirm-button-config.js +0 -2
  54. package/esm2015/lib/modules/confirm/confirm-button-config.js.map +0 -1
  55. package/esm2015/lib/modules/confirm/confirm-button.js +0 -2
  56. package/esm2015/lib/modules/confirm/confirm-button.js.map +0 -1
  57. package/esm2015/lib/modules/confirm/confirm-closed-event-args.js +0 -2
  58. package/esm2015/lib/modules/confirm/confirm-closed-event-args.js.map +0 -1
  59. package/esm2015/lib/modules/confirm/confirm-config.js +0 -2
  60. package/esm2015/lib/modules/confirm/confirm-config.js.map +0 -1
  61. package/esm2015/lib/modules/confirm/confirm-instance.js +0 -12
  62. package/esm2015/lib/modules/confirm/confirm-instance.js.map +0 -1
  63. package/esm2015/lib/modules/confirm/confirm-modal-context.js +0 -4
  64. package/esm2015/lib/modules/confirm/confirm-modal-context.js.map +0 -1
  65. package/esm2015/lib/modules/confirm/confirm-type.js +0 -25
  66. package/esm2015/lib/modules/confirm/confirm-type.js.map +0 -1
  67. package/esm2015/lib/modules/confirm/confirm.component.js +0 -127
  68. package/esm2015/lib/modules/confirm/confirm.component.js.map +0 -1
  69. package/esm2015/lib/modules/confirm/confirm.module.js +0 -35
  70. package/esm2015/lib/modules/confirm/confirm.module.js.map +0 -1
  71. package/esm2015/lib/modules/confirm/confirm.service.js +0 -55
  72. package/esm2015/lib/modules/confirm/confirm.service.js.map +0 -1
  73. package/esm2015/lib/modules/modal/modal-adapter.service.js +0 -47
  74. package/esm2015/lib/modules/modal/modal-adapter.service.js.map +0 -1
  75. package/esm2015/lib/modules/modal/modal-before-close-handler.js +0 -7
  76. package/esm2015/lib/modules/modal/modal-before-close-handler.js.map +0 -1
  77. package/esm2015/lib/modules/modal/modal-close-args.js +0 -3
  78. package/esm2015/lib/modules/modal/modal-close-args.js.map +0 -1
  79. package/esm2015/lib/modules/modal/modal-component-adapter.service.js +0 -98
  80. package/esm2015/lib/modules/modal/modal-component-adapter.service.js.map +0 -1
  81. package/esm2015/lib/modules/modal/modal-configuration.js +0 -19
  82. package/esm2015/lib/modules/modal/modal-configuration.js.map +0 -1
  83. package/esm2015/lib/modules/modal/modal-content.component.js +0 -19
  84. package/esm2015/lib/modules/modal/modal-content.component.js.map +0 -1
  85. package/esm2015/lib/modules/modal/modal-footer.component.js +0 -18
  86. package/esm2015/lib/modules/modal/modal-footer.component.js.map +0 -1
  87. package/esm2015/lib/modules/modal/modal-header.component.js +0 -19
  88. package/esm2015/lib/modules/modal/modal-header.component.js.map +0 -1
  89. package/esm2015/lib/modules/modal/modal-host.component.js +0 -101
  90. package/esm2015/lib/modules/modal/modal-host.component.js.map +0 -1
  91. package/esm2015/lib/modules/modal/modal-host.service.js +0 -55
  92. package/esm2015/lib/modules/modal/modal-host.service.js.map +0 -1
  93. package/esm2015/lib/modules/modal/modal-instance.js +0 -105
  94. package/esm2015/lib/modules/modal/modal-instance.js.map +0 -1
  95. package/esm2015/lib/modules/modal/modal-scroll-shadow-event-args.js +0 -2
  96. package/esm2015/lib/modules/modal/modal-scroll-shadow-event-args.js.map +0 -1
  97. package/esm2015/lib/modules/modal/modal-scroll-shadow.directive.js +0 -122
  98. package/esm2015/lib/modules/modal/modal-scroll-shadow.directive.js.map +0 -1
  99. package/esm2015/lib/modules/modal/modal-state-animation.js +0 -8
  100. package/esm2015/lib/modules/modal/modal-state-animation.js.map +0 -1
  101. package/esm2015/lib/modules/modal/modal.component.js +0 -184
  102. package/esm2015/lib/modules/modal/modal.component.js.map +0 -1
  103. package/esm2015/lib/modules/modal/modal.interface.js +0 -4
  104. package/esm2015/lib/modules/modal/modal.interface.js.map +0 -1
  105. package/esm2015/lib/modules/modal/modal.module.js +0 -64
  106. package/esm2015/lib/modules/modal/modal.module.js.map +0 -1
  107. package/esm2015/lib/modules/modal/modal.service.js +0 -85
  108. package/esm2015/lib/modules/modal/modal.service.js.map +0 -1
  109. package/esm2015/lib/modules/shared/sky-modals-resources.module.js +0 -54
  110. package/esm2015/lib/modules/shared/sky-modals-resources.module.js.map +0 -1
  111. package/esm2015/skyux-modals.js +0 -5
  112. package/esm2015/skyux-modals.js.map +0 -1
  113. package/esm2015/testing/modal-fixture.js.map +0 -1
  114. package/esm2015/testing/public-api.js +0 -2
  115. package/esm2015/testing/public-api.js.map +0 -1
  116. package/esm2015/testing/skyux-modals-testing.js +0 -5
  117. package/esm2015/testing/skyux-modals-testing.js.map +0 -1
  118. package/fesm2015/skyux-modals-testing.js.map +0 -1
  119. package/fesm2015/skyux-modals.js.map +0 -1
@@ -0,0 +1,178 @@
1
+ import { Component, ElementRef, Host, HostBinding, HostListener, Input, ViewChild, } from '@angular/core';
2
+ import { SkyAppWindowRef, SkyCoreAdapterService, SkyDockLocation, SkyDockService, } from '@skyux/core';
3
+ import { SkyModalComponentAdapterService } from './modal-component-adapter.service';
4
+ import { SkyModalConfiguration } from './modal-configuration';
5
+ import { SkyModalHostService } from './modal-host.service';
6
+ import { skyAnimationModalState } from './modal-state-animation';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "./modal-host.service";
9
+ import * as i2 from "./modal-configuration";
10
+ import * as i3 from "@skyux/core";
11
+ import * as i4 from "./modal-component-adapter.service";
12
+ import * as i5 from "@skyux/indicators";
13
+ import * as i6 from "@angular/common";
14
+ import * as i7 from "./modal-scroll-shadow.directive";
15
+ import * as i8 from "@skyux/i18n";
16
+ let skyModalUniqueIdentifier = 0;
17
+ /**
18
+ * Provides a common look-and-feel for modal content with options to display
19
+ * a common modal header, specify body content, and display a common modal footer
20
+ * and buttons. For information about how to test modals in SKY UX, see
21
+ * [write unit tests for modals](https://developer.blackbaud.com/skyux/learn/get-started/advanced/unit-test-modals).
22
+ */
23
+ export class SkyModalComponent {
24
+ constructor(hostService, config, elRef, windowRef, componentAdapter, coreAdapter, dockService) {
25
+ this.hostService = hostService;
26
+ this.config = config;
27
+ this.elRef = elRef;
28
+ this.windowRef = windowRef;
29
+ this.componentAdapter = componentAdapter;
30
+ this.coreAdapter = coreAdapter;
31
+ this.dockService = dockService;
32
+ this.modalState = 'in';
33
+ this.modalContentId = 'sky-modal-content-id-' + skyModalUniqueIdentifier.toString();
34
+ this.modalHeaderId = 'sky-modal-header-id-' + skyModalUniqueIdentifier.toString();
35
+ }
36
+ get wrapperClass() {
37
+ return this.config.wrapperClass;
38
+ }
39
+ /**
40
+ * @internal
41
+ */
42
+ get ariaRole() {
43
+ return this.config.ariaRole || 'dialog';
44
+ }
45
+ set ariaRole(value) {
46
+ this.config.ariaRole = value;
47
+ }
48
+ /**
49
+ * @internal
50
+ */
51
+ set tiledBody(value) {
52
+ this.config.tiledBody = value;
53
+ }
54
+ get modalZIndex() {
55
+ return this.hostService.getModalZIndex();
56
+ }
57
+ get modalFullPage() {
58
+ return this.config.fullPage;
59
+ }
60
+ get isSmallSize() {
61
+ return !this.modalFullPage && this.isSizeEqual(this.config.size, 'small');
62
+ }
63
+ get isMediumSize() {
64
+ return !this.modalFullPage && !(this.isSmallSize || this.isLargeSize);
65
+ }
66
+ get isLargeSize() {
67
+ return !this.modalFullPage && this.isSizeEqual(this.config.size, 'large');
68
+ }
69
+ get isTiledBody() {
70
+ return this.config.tiledBody;
71
+ }
72
+ get ariaDescribedBy() {
73
+ return this.config.ariaDescribedBy || this.modalContentId;
74
+ }
75
+ get ariaLabelledBy() {
76
+ return this.config.ariaLabelledBy || this.modalHeaderId;
77
+ }
78
+ get helpKey() {
79
+ return this.config.helpKey;
80
+ }
81
+ onDocumentKeyUp(event) {
82
+ /* istanbul ignore else */
83
+ /* sanity check */
84
+ if (SkyModalHostService.openModalCount > 0) {
85
+ const topModal = SkyModalHostService.topModal;
86
+ if (topModal && topModal === this.hostService) {
87
+ if (event.which === 27) {
88
+ // Escape key up
89
+ event.preventDefault();
90
+ this.closeButtonClick();
91
+ }
92
+ }
93
+ }
94
+ }
95
+ onDocumentKeyDown(event) {
96
+ /* istanbul ignore else */
97
+ /* sanity check */
98
+ if (SkyModalHostService.openModalCount > 0) {
99
+ const topModal = SkyModalHostService.topModal;
100
+ if (topModal && topModal === this.hostService) {
101
+ if (event.which === 9) {
102
+ // Tab pressed
103
+ let focusChanged = false;
104
+ const focusElementList = this.coreAdapter.getFocusableChildren(this.elRef.nativeElement);
105
+ if (event.shiftKey &&
106
+ (this.componentAdapter.isFocusInFirstItem(event, focusElementList) ||
107
+ this.componentAdapter.isModalFocused(event, this.elRef))) {
108
+ focusChanged =
109
+ this.componentAdapter.focusLastElement(focusElementList);
110
+ }
111
+ else if (!event.shiftKey &&
112
+ this.componentAdapter.isFocusInLastItem(event, focusElementList)) {
113
+ focusChanged =
114
+ this.componentAdapter.focusFirstElement(focusElementList);
115
+ }
116
+ if (focusChanged) {
117
+ event.preventDefault();
118
+ event.stopPropagation();
119
+ }
120
+ }
121
+ }
122
+ }
123
+ }
124
+ ngAfterViewInit() {
125
+ skyModalUniqueIdentifier++;
126
+ this.componentAdapter.handleWindowChange(this.elRef);
127
+ // Adding a timeout to avoid ExpressionChangedAfterItHasBeenCheckedError.
128
+ // https://stackoverflow.com/questions/40562845
129
+ this.windowRef.nativeWindow.setTimeout(() => {
130
+ this.componentAdapter.modalOpened(this.elRef);
131
+ });
132
+ this.dockService.setDockOptions({
133
+ location: SkyDockLocation.ElementBottom,
134
+ referenceEl: this.modalContentWrapperElement.nativeElement,
135
+ zIndex: 5,
136
+ });
137
+ }
138
+ helpButtonClick() {
139
+ this.hostService.onOpenHelp(this.helpKey);
140
+ }
141
+ closeButtonClick() {
142
+ this.hostService.onClose();
143
+ }
144
+ windowResize() {
145
+ this.componentAdapter.handleWindowChange(this.elRef);
146
+ }
147
+ scrollShadowChange(args) {
148
+ this.scrollShadow = args;
149
+ }
150
+ isSizeEqual(actualSize, size) {
151
+ return actualSize && actualSize.toLowerCase() === size;
152
+ }
153
+ }
154
+ SkyModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyModalComponent, deps: [{ token: i1.SkyModalHostService }, { token: i2.SkyModalConfiguration }, { token: i0.ElementRef }, { token: i3.SkyAppWindowRef }, { token: i4.SkyModalComponentAdapterService }, { token: i3.SkyCoreAdapterService }, { token: i3.SkyDockService, host: true }], target: i0.ɵɵFactoryTarget.Component });
155
+ SkyModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SkyModalComponent, selector: "sky-modal", inputs: { ariaRole: "ariaRole", tiledBody: "tiledBody" }, host: { listeners: { "document:keyup": "onDocumentKeyUp($event)", "document:keydown": "onDocumentKeyDown($event)" }, properties: { "class": "this.wrapperClass" } }, providers: [SkyModalComponentAdapterService, SkyDockService], viewQueries: [{ propertyName: "modalContentWrapperElement", first: true, predicate: ["modalContentWrapper"], descendants: true, read: ElementRef }], ngImport: i0, template: "<!--\n Animations are broken in Chrome v52. Angular 2 RC5 will fix it.\n https://github.com/angular/angular/issues/10245\n-->\n<!--<div @modalState=\"modalState\">-->\n\n<div\n class=\"sky-modal-dialog\"\n aria-modal=\"true\"\n [attr.aria-describedby]=\"ariaDescribedBy\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.role]=\"ariaRole\"\n (window:resize)=\"windowResize()\"\n>\n <div\n class=\"sky-modal sky-shadow sky-box sky-elevation-16\"\n tabindex=\"-1\"\n [ngClass]=\"{\n 'sky-modal-full-page': modalFullPage,\n 'sky-modal-small': isSmallSize,\n 'sky-modal-medium': isMediumSize,\n 'sky-modal-large': isLargeSize,\n 'sky-modal-tiled': isTiledBody\n }\"\n [ngStyle]=\"{\n zIndex: modalZIndex\n }\"\n >\n <div\n class=\"sky-modal-header\"\n [hidden]=\"!headerContent || !headerContent.children || headerContent.children.length &lt; 1\"\n [ngStyle]=\"{\n 'box-shadow': scrollShadow?.topShadow\n }\"\n >\n <div\n class=\"sky-modal-header-content\"\n [attr.id]=\"modalHeaderId\"\n [ngClass]=\"{\n 'sky-section-heading': modalFullPage\n }\"\n #headerContent\n >\n <ng-content select=\"sky-modal-header\"></ng-content>\n </div>\n <div class=\"sky-modal-header-buttons\">\n <button\n *ngIf=\"helpKey\"\n class=\"sky-btn sky-modal-btn-help\"\n name=\"help-button\"\n type=\"button\"\n [attr.aria-label]=\"'skyux_modal_open_help' | skyLibResources\"\n (click)=\"helpButtonClick()\"\n >\n <sky-icon icon=\"question-circle\"></sky-icon>\n </button>\n\n <button\n type=\"button\"\n class=\"sky-btn sky-modal-btn-close\"\n [attr.aria-label]=\"'skyux_modal_close' | skyLibResources\"\n (click)=\"closeButtonClick()\"\n >\n <sky-icon icon=\"close\"></sky-icon>\n </button>\n </div>\n </div>\n <div\n class=\"sky-modal-content sky-padding-even-large\"\n role=\"region\"\n tabindex=\"0\"\n [attr.aria-labelledby]=\"modalHeaderId\"\n [attr.id]=\"modalContentId\"\n (skyModalScrollShadow)=\"scrollShadowChange($event)\"\n #modalContentWrapper\n >\n <ng-content select=\"sky-modal-content\"></ng-content>\n </div>\n <div\n class=\"sky-modal-footer\"\n [ngStyle]=\"{\n 'box-shadow': scrollShadow?.bottomShadow\n }\"\n >\n <ng-content select=\"sky-modal-footer\"></ng-content>\n </div>\n </div>\n</div>\n", styles: [".sky-modal{border-top:1px solid #cdcfd2;border-bottom:1px solid #cdcfd2;border-left:1px solid #cdcfd2;border-right:1px solid #cdcfd2;position:fixed;width:auto;left:0;right:0;top:20px;margin:10px;display:flex;flex-direction:column;overflow:hidden}.sky-modal:focus{outline:none}@media (min-width: 768px){.sky-modal:not(.sky-modal-large){margin:0 auto}.sky-modal-small{width:300px}.sky-modal-small .sky-modal-content,.sky-modal-small .sky-modal-header,.sky-modal-small .sky-modal-footer{max-width:300px}.sky-modal-medium{width:600px}.sky-modal-medium .sky-modal-content,.sky-modal-medium .sky-modal-header,.sky-modal-medium .sky-modal-footer{max-width:600px}}@media (min-width: 920px){.sky-modal-large{margin:0 auto;width:900px}.sky-modal-large .sky-modal-content,.sky-modal-large .sky-modal-header,.sky-modal-large .sky-modal-footer{max-width:900px}}.sky-modal-content{background-color:#fff}.sky-modal-content:focus{outline-style:dotted;outline-width:thin;outline-offset:-1px}.sky-modal-tiled .sky-modal-content{background-color:#eeeeef}.sky-modal-tiled .sky-modal-content ::ng-deep .sky-tile-title{font-family:BLKB Sans,Helvetica Neue,Arial,sans-serif;color:#686c73;font-weight:300;font-size:19px}.sky-modal-header{padding:9px 3px 9px 15px;background-color:#fff;display:flex;align-items:baseline;border-bottom:1px solid #e2e3e4}.sky-modal-header-buttons{flex-shrink:.0001}.sky-modal-header-buttons .sky-btn{border:none;color:#cdcfd2;cursor:pointer}.sky-modal-header-buttons .sky-btn:hover{color:#979ba2;transition:color .15s}.sky-modal-header-content{flex-grow:1}.sky-modal-header{flex-shrink:0;z-index:2}.sky-modal-content{overflow-y:auto}.sky-modal-footer{flex-shrink:0;z-index:2}.sky-modal-footer ::ng-deep sky-tabset-nav-button+sky-tabset-nav-button{margin-left:10px}.sky-modal-footer ::ng-deep sky-tabset-nav-button+.sky-btn{margin-left:10px}.sky-modal-footer ::ng-deep .sky-btn+.sky-btn{margin-left:10px}.sky-modal-footer ::ng-deep .sky-btn+.sky-btn-link{margin-left:-2px}.sky-modal-full-page{width:100%;top:0;margin:0}.sky-modal-full-page .sky-modal-header-buttons sky-icon[icon=close]{font-size:20px}.sky-modal-full-page .sky-modal-content{flex-grow:1}:host ::ng-deep .sky-sectioned-form{min-height:460px;margin:-15px}.sky-modal-content>::ng-deep sky-dock{bottom:-15px;margin-left:-15px;margin-bottom:-15px;padding-top:15px;width:calc(100% + 30px)}:host-context(.sky-theme-modern) .sky-modal-header{border:none;padding:20px 30px}:host-context(.sky-theme-modern) .sky-modal-btn-help,:host-context(.sky-theme-modern) .sky-modal-btn-close{display:none}:host-context(.sky-theme-modern) .sky-modal-content{padding:0}:host-context(.sky-theme-modern) .sky-modal-full-page{width:calc(100% - 60px);margin:30px}:host-context(.sky-theme-modern) .sky-modal-content>::ng-deep sky-dock{bottom:0;margin-left:initial;margin-bottom:initial;padding-top:initial;width:100%}.sky-theme-modern .sky-modal-header{border:none;padding:20px 30px}.sky-theme-modern .sky-modal-btn-help,.sky-theme-modern .sky-modal-btn-close{display:none}.sky-theme-modern .sky-modal-content{padding:0}.sky-theme-modern .sky-modal-full-page{width:calc(100% - 60px);margin:30px}.sky-theme-modern .sky-modal-content>::ng-deep sky-dock{bottom:0;margin-left:initial;margin-bottom:initial;padding-top:initial;width:100%}:host-context(.sky-theme-modern.sky-theme-mode-dark) .sky-modal{border-color:#121212}:host-context(.sky-theme-modern.sky-theme-mode-dark) .sky-modal-header{color:#fbfcfe}:host-context(.sky-theme-modern.sky-theme-mode-dark) .sky-modal-header,:host-context(.sky-theme-modern.sky-theme-mode-dark) .sky-modal-content{background-color:transparent}.sky-theme-modern.sky-theme-mode-dark .sky-modal{border-color:#121212}.sky-theme-modern.sky-theme-mode-dark .sky-modal-header{color:#fbfcfe}.sky-theme-modern.sky-theme-mode-dark .sky-modal-header,.sky-theme-modern.sky-theme-mode-dark .sky-modal-content{background-color:transparent}\n"], components: [{ type: i5.λ4, selector: "sky-icon", inputs: ["icon", "iconType", "size", "fixedWidth", "variant"] }], directives: [{ type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i6.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i7.SkyModalScrollShadowDirective, selector: "[skyModalScrollShadow]", outputs: ["skyModalScrollShadow"] }], pipes: { "skyLibResources": i8.SkyLibResourcesPipe }, animations: [skyAnimationModalState] });
156
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyModalComponent, decorators: [{
157
+ type: Component,
158
+ args: [{ selector: 'sky-modal', animations: [skyAnimationModalState], providers: [SkyModalComponentAdapterService, SkyDockService], template: "<!--\n Animations are broken in Chrome v52. Angular 2 RC5 will fix it.\n https://github.com/angular/angular/issues/10245\n-->\n<!--<div @modalState=\"modalState\">-->\n\n<div\n class=\"sky-modal-dialog\"\n aria-modal=\"true\"\n [attr.aria-describedby]=\"ariaDescribedBy\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.role]=\"ariaRole\"\n (window:resize)=\"windowResize()\"\n>\n <div\n class=\"sky-modal sky-shadow sky-box sky-elevation-16\"\n tabindex=\"-1\"\n [ngClass]=\"{\n 'sky-modal-full-page': modalFullPage,\n 'sky-modal-small': isSmallSize,\n 'sky-modal-medium': isMediumSize,\n 'sky-modal-large': isLargeSize,\n 'sky-modal-tiled': isTiledBody\n }\"\n [ngStyle]=\"{\n zIndex: modalZIndex\n }\"\n >\n <div\n class=\"sky-modal-header\"\n [hidden]=\"!headerContent || !headerContent.children || headerContent.children.length &lt; 1\"\n [ngStyle]=\"{\n 'box-shadow': scrollShadow?.topShadow\n }\"\n >\n <div\n class=\"sky-modal-header-content\"\n [attr.id]=\"modalHeaderId\"\n [ngClass]=\"{\n 'sky-section-heading': modalFullPage\n }\"\n #headerContent\n >\n <ng-content select=\"sky-modal-header\"></ng-content>\n </div>\n <div class=\"sky-modal-header-buttons\">\n <button\n *ngIf=\"helpKey\"\n class=\"sky-btn sky-modal-btn-help\"\n name=\"help-button\"\n type=\"button\"\n [attr.aria-label]=\"'skyux_modal_open_help' | skyLibResources\"\n (click)=\"helpButtonClick()\"\n >\n <sky-icon icon=\"question-circle\"></sky-icon>\n </button>\n\n <button\n type=\"button\"\n class=\"sky-btn sky-modal-btn-close\"\n [attr.aria-label]=\"'skyux_modal_close' | skyLibResources\"\n (click)=\"closeButtonClick()\"\n >\n <sky-icon icon=\"close\"></sky-icon>\n </button>\n </div>\n </div>\n <div\n class=\"sky-modal-content sky-padding-even-large\"\n role=\"region\"\n tabindex=\"0\"\n [attr.aria-labelledby]=\"modalHeaderId\"\n [attr.id]=\"modalContentId\"\n (skyModalScrollShadow)=\"scrollShadowChange($event)\"\n #modalContentWrapper\n >\n <ng-content select=\"sky-modal-content\"></ng-content>\n </div>\n <div\n class=\"sky-modal-footer\"\n [ngStyle]=\"{\n 'box-shadow': scrollShadow?.bottomShadow\n }\"\n >\n <ng-content select=\"sky-modal-footer\"></ng-content>\n </div>\n </div>\n</div>\n", styles: [".sky-modal{border-top:1px solid #cdcfd2;border-bottom:1px solid #cdcfd2;border-left:1px solid #cdcfd2;border-right:1px solid #cdcfd2;position:fixed;width:auto;left:0;right:0;top:20px;margin:10px;display:flex;flex-direction:column;overflow:hidden}.sky-modal:focus{outline:none}@media (min-width: 768px){.sky-modal:not(.sky-modal-large){margin:0 auto}.sky-modal-small{width:300px}.sky-modal-small .sky-modal-content,.sky-modal-small .sky-modal-header,.sky-modal-small .sky-modal-footer{max-width:300px}.sky-modal-medium{width:600px}.sky-modal-medium .sky-modal-content,.sky-modal-medium .sky-modal-header,.sky-modal-medium .sky-modal-footer{max-width:600px}}@media (min-width: 920px){.sky-modal-large{margin:0 auto;width:900px}.sky-modal-large .sky-modal-content,.sky-modal-large .sky-modal-header,.sky-modal-large .sky-modal-footer{max-width:900px}}.sky-modal-content{background-color:#fff}.sky-modal-content:focus{outline-style:dotted;outline-width:thin;outline-offset:-1px}.sky-modal-tiled .sky-modal-content{background-color:#eeeeef}.sky-modal-tiled .sky-modal-content ::ng-deep .sky-tile-title{font-family:BLKB Sans,Helvetica Neue,Arial,sans-serif;color:#686c73;font-weight:300;font-size:19px}.sky-modal-header{padding:9px 3px 9px 15px;background-color:#fff;display:flex;align-items:baseline;border-bottom:1px solid #e2e3e4}.sky-modal-header-buttons{flex-shrink:.0001}.sky-modal-header-buttons .sky-btn{border:none;color:#cdcfd2;cursor:pointer}.sky-modal-header-buttons .sky-btn:hover{color:#979ba2;transition:color .15s}.sky-modal-header-content{flex-grow:1}.sky-modal-header{flex-shrink:0;z-index:2}.sky-modal-content{overflow-y:auto}.sky-modal-footer{flex-shrink:0;z-index:2}.sky-modal-footer ::ng-deep sky-tabset-nav-button+sky-tabset-nav-button{margin-left:10px}.sky-modal-footer ::ng-deep sky-tabset-nav-button+.sky-btn{margin-left:10px}.sky-modal-footer ::ng-deep .sky-btn+.sky-btn{margin-left:10px}.sky-modal-footer ::ng-deep .sky-btn+.sky-btn-link{margin-left:-2px}.sky-modal-full-page{width:100%;top:0;margin:0}.sky-modal-full-page .sky-modal-header-buttons sky-icon[icon=close]{font-size:20px}.sky-modal-full-page .sky-modal-content{flex-grow:1}:host ::ng-deep .sky-sectioned-form{min-height:460px;margin:-15px}.sky-modal-content>::ng-deep sky-dock{bottom:-15px;margin-left:-15px;margin-bottom:-15px;padding-top:15px;width:calc(100% + 30px)}:host-context(.sky-theme-modern) .sky-modal-header{border:none;padding:20px 30px}:host-context(.sky-theme-modern) .sky-modal-btn-help,:host-context(.sky-theme-modern) .sky-modal-btn-close{display:none}:host-context(.sky-theme-modern) .sky-modal-content{padding:0}:host-context(.sky-theme-modern) .sky-modal-full-page{width:calc(100% - 60px);margin:30px}:host-context(.sky-theme-modern) .sky-modal-content>::ng-deep sky-dock{bottom:0;margin-left:initial;margin-bottom:initial;padding-top:initial;width:100%}.sky-theme-modern .sky-modal-header{border:none;padding:20px 30px}.sky-theme-modern .sky-modal-btn-help,.sky-theme-modern .sky-modal-btn-close{display:none}.sky-theme-modern .sky-modal-content{padding:0}.sky-theme-modern .sky-modal-full-page{width:calc(100% - 60px);margin:30px}.sky-theme-modern .sky-modal-content>::ng-deep sky-dock{bottom:0;margin-left:initial;margin-bottom:initial;padding-top:initial;width:100%}:host-context(.sky-theme-modern.sky-theme-mode-dark) .sky-modal{border-color:#121212}:host-context(.sky-theme-modern.sky-theme-mode-dark) .sky-modal-header{color:#fbfcfe}:host-context(.sky-theme-modern.sky-theme-mode-dark) .sky-modal-header,:host-context(.sky-theme-modern.sky-theme-mode-dark) .sky-modal-content{background-color:transparent}.sky-theme-modern.sky-theme-mode-dark .sky-modal{border-color:#121212}.sky-theme-modern.sky-theme-mode-dark .sky-modal-header{color:#fbfcfe}.sky-theme-modern.sky-theme-mode-dark .sky-modal-header,.sky-theme-modern.sky-theme-mode-dark .sky-modal-content{background-color:transparent}\n"] }]
159
+ }], ctorParameters: function () { return [{ type: i1.SkyModalHostService }, { type: i2.SkyModalConfiguration }, { type: i0.ElementRef }, { type: i3.SkyAppWindowRef }, { type: i4.SkyModalComponentAdapterService }, { type: i3.SkyCoreAdapterService }, { type: i3.SkyDockService, decorators: [{
160
+ type: Host
161
+ }] }]; }, propDecorators: { wrapperClass: [{
162
+ type: HostBinding,
163
+ args: ['class']
164
+ }], ariaRole: [{
165
+ type: Input
166
+ }], tiledBody: [{
167
+ type: Input
168
+ }], modalContentWrapperElement: [{
169
+ type: ViewChild,
170
+ args: ['modalContentWrapper', { read: ElementRef }]
171
+ }], onDocumentKeyUp: [{
172
+ type: HostListener,
173
+ args: ['document:keyup', ['$event']]
174
+ }], onDocumentKeyDown: [{
175
+ type: HostListener,
176
+ args: ['document:keydown', ['$event']]
177
+ }] } });
178
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL21vZGFscy9zcmMvbGliL21vZHVsZXMvbW9kYWwvbW9kYWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL21vZGFscy9zcmMvbGliL21vZHVsZXMvbW9kYWwvbW9kYWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFDVCxVQUFVLEVBQ1YsSUFBSSxFQUNKLFdBQVcsRUFDWCxZQUFZLEVBQ1osS0FBSyxFQUNMLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0wsZUFBZSxFQUNmLHFCQUFxQixFQUNyQixlQUFlLEVBQ2YsY0FBYyxHQUNmLE1BQU0sYUFBYSxDQUFDO0FBRXJCLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzlELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRTNELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDOzs7Ozs7Ozs7O0FBRWpFLElBQUksd0JBQXdCLEdBQUcsQ0FBQyxDQUFDO0FBRWpDOzs7OztHQUtHO0FBUUgsTUFBTSxPQUFPLGlCQUFpQjtJQTBFNUIsWUFDVSxXQUFnQyxFQUNoQyxNQUE2QixFQUM3QixLQUFpQixFQUNqQixTQUEwQixFQUMxQixnQkFBaUQsRUFDakQsV0FBa0MsRUFDMUIsV0FBMkI7UUFObkMsZ0JBQVcsR0FBWCxXQUFXLENBQXFCO1FBQ2hDLFdBQU0sR0FBTixNQUFNLENBQXVCO1FBQzdCLFVBQUssR0FBTCxLQUFLLENBQVk7UUFDakIsY0FBUyxHQUFULFNBQVMs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RSxXQUFXLGNBR1QsQ0FBQyxzQkFBc0IsQ0FBQyxhQUN6QixDQUFDLCtCQUErQixFQUFFLGNBQWMsQ0FBQzs7MEJBbUZ6RCxJQUFJOzRDQS9FSSxZQUFZO3NCQUR0QixXQUFXO3VCQUFDLE9BQU87Z0JBU1QsUUFBUTtzQkFEbEIsS0FBSztnQkFZSyxTQUFTO3NCQURuQixLQUFLO2dCQW9ERSwwQkFBMEI7c0JBRGpDLFNBQVM7dUJBQUMscUJBQXFCLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFO2dCQWMvQyxlQUFlO3NCQURyQixZQUFZO3VCQUFDLGdCQUFnQixFQUFFLENBQUMsUUFBUSxDQUFDO2dCQWlCbkMsaUJBQWlCO3NCQUR2QixZQUFZO3VCQUFDLGtCQUFrQixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBIb3N0LFxuICBIb3N0QmluZGluZyxcbiAgSG9zdExpc3RlbmVyLFxuICBJbnB1dCxcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIFNreUFwcFdpbmRvd1JlZixcbiAgU2t5Q29yZUFkYXB0ZXJTZXJ2aWNlLFxuICBTa3lEb2NrTG9jYXRpb24sXG4gIFNreURvY2tTZXJ2aWNlLFxufSBmcm9tICdAc2t5dXgvY29yZSc7XG5cbmltcG9ydCB7IFNreU1vZGFsQ29tcG9uZW50QWRhcHRlclNlcnZpY2UgfSBmcm9tICcuL21vZGFsLWNvbXBvbmVudC1hZGFwdGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2t5TW9kYWxDb25maWd1cmF0aW9uIH0gZnJvbSAnLi9tb2RhbC1jb25maWd1cmF0aW9uJztcbmltcG9ydCB7IFNreU1vZGFsSG9zdFNlcnZpY2UgfSBmcm9tICcuL21vZGFsLWhvc3Quc2VydmljZSc7XG5pbXBvcnQgeyBTa3lNb2RhbFNjcm9sbFNoYWRvd0V2ZW50QXJncyB9IGZyb20gJy4vbW9kYWwtc2Nyb2xsLXNoYWRvdy1ldmVudC1hcmdzJztcbmltcG9ydCB7IHNreUFuaW1hdGlvbk1vZGFsU3RhdGUgfSBmcm9tICcuL21vZGFsLXN0YXRlLWFuaW1hdGlvbic7XG5cbmxldCBza3lNb2RhbFVuaXF1ZUlkZW50aWZpZXIgPSAwO1xuXG4vKipcbiAqIFByb3ZpZGVzIGEgY29tbW9uIGxvb2stYW5kLWZlZWwgZm9yIG1vZGFsIGNvbnRlbnQgd2l0aCBvcHRpb25zIHRvIGRpc3BsYXlcbiAqIGEgY29tbW9uIG1vZGFsIGhlYWRlciwgc3BlY2lmeSBib2R5IGNvbnRlbnQsIGFuZCBkaXNwbGF5IGEgY29tbW9uIG1vZGFsIGZvb3RlclxuICogYW5kIGJ1dHRvbnMuIEZvciBpbmZvcm1hdGlvbiBhYm91dCBob3cgdG8gdGVzdCBtb2RhbHMgaW4gU0tZIFVYLCBzZWVcbiAqIFt3cml0ZSB1bml0IHRlc3RzIGZvciBtb2RhbHNdKGh0dHBzOi8vZGV2ZWxvcGVyLmJsYWNrYmF1ZC5jb20vc2t5dXgvbGVhcm4vZ2V0LXN0YXJ0ZWQvYWR2YW5jZWQvdW5pdC10ZXN0LW1vZGFscykuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NreS1tb2RhbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9tb2RhbC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL21vZGFsLmNvbXBvbmVudC5zY3NzJ10sXG4gIGFuaW1hdGlvbnM6IFtza3lBbmltYXRpb25Nb2RhbFN0YXRlXSxcbiAgcHJvdmlkZXJzOiBbU2t5TW9kYWxDb21wb25lbnRBZGFwdGVyU2VydmljZSwgU2t5RG9ja1NlcnZpY2VdLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lNb2RhbENvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgcHVibGljIGdldCB3cmFwcGVyQ2xhc3MoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5jb25maWcud3JhcHBlckNsYXNzO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGdldCBhcmlhUm9sZSgpIHtcbiAgICByZXR1cm4gdGhpcy5jb25maWcuYXJpYVJvbGUgfHwgJ2RpYWxvZyc7XG4gIH1cbiAgcHVibGljIHNldCBhcmlhUm9sZSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5jb25maWcuYXJpYVJvbGUgPSB2YWx1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgdGlsZWRCb2R5KHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5jb25maWcudGlsZWRCb2R5ID0gdmFsdWU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IG1vZGFsWkluZGV4KCkge1xuICAgIHJldHVybiB0aGlzLmhvc3RTZXJ2aWNlLmdldE1vZGFsWkluZGV4KCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IG1vZGFsRnVsbFBhZ2UoKSB7XG4gICAgcmV0dXJuIHRoaXMuY29uZmlnLmZ1bGxQYWdlO1xuICB9XG5cbiAgcHVibGljIGdldCBpc1NtYWxsU2l6ZSgpIHtcbiAgICByZXR1cm4gIXRoaXMubW9kYWxGdWxsUGFnZSAmJiB0aGlzLmlzU2l6ZUVxdWFsKHRoaXMuY29uZmlnLnNpemUsICdzbWFsbCcpO1xuICB9XG5cbiAgcHVibGljIGdldCBpc01lZGl1bVNpemUoKSB7XG4gICAgcmV0dXJuICF0aGlzLm1vZGFsRnVsbFBhZ2UgJiYgISh0aGlzLmlzU21hbGxTaXplIHx8IHRoaXMuaXNMYXJnZVNpemUpO1xuICB9XG5cbiAgcHVibGljIGdldCBpc0xhcmdlU2l6ZSgpIHtcbiAgICByZXR1cm4gIXRoaXMubW9kYWxGdWxsUGFnZSAmJiB0aGlzLmlzU2l6ZUVxdWFsKHRoaXMuY29uZmlnLnNpemUsICdsYXJnZScpO1xuICB9XG5cbiAgcHVibGljIGdldCBpc1RpbGVkQm9keSgpIHtcbiAgICByZXR1cm4gdGhpcy5jb25maWcudGlsZWRCb2R5O1xuICB9XG5cbiAgcHVibGljIGdldCBhcmlhRGVzY3JpYmVkQnkoKSB7XG4gICAgcmV0dXJuIHRoaXMuY29uZmlnLmFyaWFEZXNjcmliZWRCeSB8fCB0aGlzLm1vZGFsQ29udGVudElkO1xuICB9XG5cbiAgcHVibGljIGdldCBhcmlhTGFiZWxsZWRCeSgpIHtcbiAgICByZXR1cm4gdGhpcy5jb25maWcuYXJpYUxhYmVsbGVkQnkgfHwgdGhpcy5tb2RhbEhlYWRlcklkO1xuICB9XG5cbiAgcHVibGljIGdldCBoZWxwS2V5KCkge1xuICAgIHJldHVybiB0aGlzLmNvbmZpZy5oZWxwS2V5O1xuICB9XG5cbiAgcHVibGljIG1vZGFsU3RhdGUgPSAnaW4nO1xuXG4gIHB1YmxpYyBtb2RhbENvbnRlbnRJZDogc3RyaW5nID1cbiAgICAnc2t5LW1vZGFsLWNvbnRlbnQtaWQtJyArIHNreU1vZGFsVW5pcXVlSWRlbnRpZmllci50b1N0cmluZygpO1xuXG4gIHB1YmxpYyBtb2RhbEhlYWRlcklkOiBzdHJpbmcgPVxuICAgICdza3ktbW9kYWwtaGVhZGVyLWlkLScgKyBza3lNb2RhbFVuaXF1ZUlkZW50aWZpZXIudG9TdHJpbmcoKTtcblxuICBwdWJsaWMgc2Nyb2xsU2hhZG93OiBTa3lNb2RhbFNjcm9sbFNoYWRvd0V2ZW50QXJncztcblxuICBAVmlld0NoaWxkKCdtb2RhbENvbnRlbnRXcmFwcGVyJywgeyByZWFkOiBFbGVtZW50UmVmIH0pXG4gIHByaXZhdGUgbW9kYWxDb250ZW50V3JhcHBlckVsZW1lbnQ6IEVsZW1lbnRSZWY7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBob3N0U2VydmljZTogU2t5TW9kYWxIb3N0U2VydmljZSxcbiAgICBwcml2YXRlIGNvbmZpZzogU2t5TW9kYWxDb25maWd1cmF0aW9uLFxuICAgIHByaXZhdGUgZWxSZWY6IEVsZW1lbnRSZWYsXG4gICAgcHJpdmF0ZSB3aW5kb3dSZWY6IFNreUFwcFdpbmRvd1JlZixcbiAgICBwcml2YXRlIGNvbXBvbmVudEFkYXB0ZXI6IFNreU1vZGFsQ29tcG9uZW50QWRhcHRlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjb3JlQWRhcHRlcjogU2t5Q29yZUFkYXB0ZXJTZXJ2aWNlLFxuICAgIEBIb3N0KCkgcHJpdmF0ZSBkb2NrU2VydmljZTogU2t5RG9ja1NlcnZpY2VcbiAgKSB7fVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmtleXVwJywgWyckZXZlbnQnXSlcbiAgcHVibGljIG9uRG9jdW1lbnRLZXlVcChldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgLyogc2FuaXR5IGNoZWNrICovXG4gICAgaWYgKFNreU1vZGFsSG9zdFNlcnZpY2Uub3Blbk1vZGFsQ291bnQgPiAwKSB7XG4gICAgICBjb25zdCB0b3BNb2RhbCA9IFNreU1vZGFsSG9zdFNlcnZpY2UudG9wTW9kYWw7XG4gICAgICBpZiAodG9wTW9kYWwgJiYgdG9wTW9kYWwgPT09IHRoaXMuaG9zdFNlcnZpY2UpIHtcbiAgICAgICAgaWYgKGV2ZW50LndoaWNoID09PSAyNykge1xuICAgICAgICAgIC8vIEVzY2FwZSBrZXkgdXBcbiAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgIHRoaXMuY2xvc2VCdXR0b25DbGljaygpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6a2V5ZG93bicsIFsnJGV2ZW50J10pXG4gIHB1YmxpYyBvbkRvY3VtZW50S2V5RG93bihldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgLyogc2FuaXR5IGNoZWNrICovXG4gICAgaWYgKFNreU1vZGFsSG9zdFNlcnZpY2Uub3Blbk1vZGFsQ291bnQgPiAwKSB7XG4gICAgICBjb25zdCB0b3BNb2RhbCA9IFNreU1vZGFsSG9zdFNlcnZpY2UudG9wTW9kYWw7XG4gICAgICBpZiAodG9wTW9kYWwgJiYgdG9wTW9kYWwgPT09IHRoaXMuaG9zdFNlcnZpY2UpIHtcbiAgICAgICAgaWYgKGV2ZW50LndoaWNoID09PSA5KSB7XG4gICAgICAgICAgLy8gVGFiIHByZXNzZWRcbiAgICAgICAgICBsZXQgZm9jdXNDaGFuZ2VkID0gZmFsc2U7XG5cbiAgICAgICAgICBjb25zdCBmb2N1c0VsZW1lbnRMaXN0ID0gdGhpcy5jb3JlQWRhcHRlci5nZXRGb2N1c2FibGVDaGlsZHJlbihcbiAgICAgICAgICAgIHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudFxuICAgICAgICAgICk7XG5cbiAgICAgICAgICBpZiAoXG4gICAgICAgICAgICBldmVudC5zaGlmdEtleSAmJlxuICAgICAgICAgICAgKHRoaXMuY29tcG9uZW50QWRhcHRlci5pc0ZvY3VzSW5GaXJzdEl0ZW0oXG4gICAgICAgICAgICAgIGV2ZW50LFxuICAgICAgICAgICAgICBmb2N1c0VsZW1lbnRMaXN0XG4gICAgICAgICAgICApIHx8XG4gICAgICAgICAgICAgIHRoaXMuY29tcG9uZW50QWRhcHRlci5pc01vZGFsRm9jdXNlZChldmVudCwgdGhpcy5lbFJlZikpXG4gICAgICAgICAgKSB7XG4gICAgICAgICAgICBmb2N1c0NoYW5nZWQgPVxuICAgICAgICAgICAgICB0aGlzLmNvbXBvbmVudEFkYXB0ZXIuZm9jdXNMYXN0RWxlbWVudChmb2N1c0VsZW1lbnRMaXN0KTtcbiAgICAgICAgICB9IGVsc2UgaWYgKFxuICAgICAgICAgICAgIWV2ZW50LnNoaWZ0S2V5ICYmXG4gICAgICAgICAgICB0aGlzLmNvbXBvbmVudEFkYXB0ZXIuaXNGb2N1c0luTGFzdEl0ZW0oZXZlbnQsIGZvY3VzRWxlbWVudExpc3QpXG4gICAgICAgICAgKSB7XG4gICAgICAgICAgICBmb2N1c0NoYW5nZWQgPVxuICAgICAgICAgICAgICB0aGlzLmNvbXBvbmVudEFkYXB0ZXIuZm9jdXNGaXJzdEVsZW1lbnQoZm9jdXNFbGVtZW50TGlzdCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKGZvY3VzQ2hhbmdlZCkge1xuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgc2t5TW9kYWxVbmlxdWVJZGVudGlmaWVyKys7XG4gICAgdGhpcy5jb21wb25lbnRBZGFwdGVyLmhhbmRsZVdpbmRvd0NoYW5nZSh0aGlzLmVsUmVmKTtcblxuICAgIC8vIEFkZGluZyBhIHRpbWVvdXQgdG8gYXZvaWQgRXhwcmVzc2lvbkNoYW5nZWRBZnRlckl0SGFzQmVlbkNoZWNrZWRFcnJvci5cbiAgICAvLyBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy80MDU2Mjg0NVxuICAgIHRoaXMud2luZG93UmVmLm5hdGl2ZVdpbmRvdy5zZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMuY29tcG9uZW50QWRhcHRlci5tb2RhbE9wZW5lZCh0aGlzLmVsUmVmKTtcbiAgICB9KTtcblxuICAgIHRoaXMuZG9ja1NlcnZpY2Uuc2V0RG9ja09wdGlvbnMoe1xuICAgICAgbG9jYXRpb246IFNreURvY2tMb2NhdGlvbi5FbGVtZW50Qm90dG9tLFxuICAgICAgcmVmZXJlbmNlRWw6IHRoaXMubW9kYWxDb250ZW50V3JhcHBlckVsZW1lbnQubmF0aXZlRWxlbWVudCxcbiAgICAgIHpJbmRleDogNSxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBoZWxwQnV0dG9uQ2xpY2soKSB7XG4gICAgdGhpcy5ob3N0U2VydmljZS5vbk9wZW5IZWxwKHRoaXMuaGVscEtleSk7XG4gIH1cblxuICBwdWJsaWMgY2xvc2VCdXR0b25DbGljaygpIHtcbiAgICB0aGlzLmhvc3RTZXJ2aWNlLm9uQ2xvc2UoKTtcbiAgfVxuXG4gIHB1YmxpYyB3aW5kb3dSZXNpemUoKSB7XG4gICAgdGhpcy5jb21wb25lbnRBZGFwdGVyLmhhbmRsZVdpbmRvd0NoYW5nZSh0aGlzLmVsUmVmKTtcbiAgfVxuXG4gIHB1YmxpYyBzY3JvbGxTaGFkb3dDaGFuZ2UoYXJnczogU2t5TW9kYWxTY3JvbGxTaGFkb3dFdmVudEFyZ3MpOiB2b2lkIHtcbiAgICB0aGlzLnNjcm9sbFNoYWRvdyA9IGFyZ3M7XG4gIH1cblxuICBwcml2YXRlIGlzU2l6ZUVxdWFsKGFjdHVhbFNpemU6IHN0cmluZywgc2l6ZTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIGFjdHVhbFNpemUgJiYgYWN0dWFsU2l6ZS50b0xvd2VyQ2FzZSgpID09PSBzaXplO1xuICB9XG59XG4iLCI8IS0tXG4gIEFuaW1hdGlvbnMgYXJlIGJyb2tlbiBpbiBDaHJvbWUgdjUyLiBBbmd1bGFyIDIgUkM1IHdpbGwgZml4IGl0LlxuICBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyL2lzc3Vlcy8xMDI0NVxuLS0+XG48IS0tPGRpdiBAbW9kYWxTdGF0ZT1cIm1vZGFsU3RhdGVcIj4tLT5cblxuPGRpdlxuICBjbGFzcz1cInNreS1tb2RhbC1kaWFsb2dcIlxuICBhcmlhLW1vZGFsPVwidHJ1ZVwiXG4gIFthdHRyLmFyaWEtZGVzY3JpYmVkYnldPVwiYXJpYURlc2NyaWJlZEJ5XCJcbiAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cImFyaWFMYWJlbGxlZEJ5XCJcbiAgW2F0dHIucm9sZV09XCJhcmlhUm9sZVwiXG4gICh3aW5kb3c6cmVzaXplKT1cIndpbmRvd1Jlc2l6ZSgpXCJcbj5cbiAgPGRpdlxuICAgIGNsYXNzPVwic2t5LW1vZGFsIHNreS1zaGFkb3cgc2t5LWJveCBza3ktZWxldmF0aW9uLTE2XCJcbiAgICB0YWJpbmRleD1cIi0xXCJcbiAgICBbbmdDbGFzc109XCJ7XG4gICAgICAnc2t5LW1vZGFsLWZ1bGwtcGFnZSc6IG1vZGFsRnVsbFBhZ2UsXG4gICAgICAnc2t5LW1vZGFsLXNtYWxsJzogaXNTbWFsbFNpemUsXG4gICAgICAnc2t5LW1vZGFsLW1lZGl1bSc6IGlzTWVkaXVtU2l6ZSxcbiAgICAgICdza3ktbW9kYWwtbGFyZ2UnOiBpc0xhcmdlU2l6ZSxcbiAgICAgICdza3ktbW9kYWwtdGlsZWQnOiBpc1RpbGVkQm9keVxuICAgIH1cIlxuICAgIFtuZ1N0eWxlXT1cIntcbiAgICAgIHpJbmRleDogbW9kYWxaSW5kZXhcbiAgICB9XCJcbiAgPlxuICAgIDxkaXZcbiAgICAgIGNsYXNzPVwic2t5LW1vZGFsLWhlYWRlclwiXG4gICAgICBbaGlkZGVuXT1cIiFoZWFkZXJDb250ZW50IHx8ICFoZWFkZXJDb250ZW50LmNoaWxkcmVuIHx8IGhlYWRlckNvbnRlbnQuY2hpbGRyZW4ubGVuZ3RoICZsdDsgMVwiXG4gICAgICBbbmdTdHlsZV09XCJ7XG4gICAgICAgICdib3gtc2hhZG93Jzogc2Nyb2xsU2hhZG93Py50b3BTaGFkb3dcbiAgICAgIH1cIlxuICAgID5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJza3ktbW9kYWwtaGVhZGVyLWNvbnRlbnRcIlxuICAgICAgICBbYXR0ci5pZF09XCJtb2RhbEhlYWRlcklkXCJcbiAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICdza3ktc2VjdGlvbi1oZWFkaW5nJzogbW9kYWxGdWxsUGFnZVxuICAgICAgICB9XCJcbiAgICAgICAgI2hlYWRlckNvbnRlbnRcbiAgICAgID5cbiAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwic2t5LW1vZGFsLWhlYWRlclwiPjwvbmctY29udGVudD5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cInNreS1tb2RhbC1oZWFkZXItYnV0dG9uc1wiPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgKm5nSWY9XCJoZWxwS2V5XCJcbiAgICAgICAgICBjbGFzcz1cInNreS1idG4gc2t5LW1vZGFsLWJ0bi1oZWxwXCJcbiAgICAgICAgICBuYW1lPVwiaGVscC1idXR0b25cIlxuICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiJ3NreXV4X21vZGFsX29wZW5faGVscCcgfCBza3lMaWJSZXNvdXJjZXNcIlxuICAgICAgICAgIChjbGljayk9XCJoZWxwQnV0dG9uQ2xpY2soKVwiXG4gICAgICAgID5cbiAgICAgICAgICA8c2t5LWljb24gaWNvbj1cInF1ZXN0aW9uLWNpcmNsZVwiPjwvc2t5LWljb24+XG4gICAgICAgIDwvYnV0dG9uPlxuXG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICBjbGFzcz1cInNreS1idG4gc2t5LW1vZGFsLWJ0bi1jbG9zZVwiXG4gICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCInc2t5dXhfbW9kYWxfY2xvc2UnIHwgc2t5TGliUmVzb3VyY2VzXCJcbiAgICAgICAgICAoY2xpY2spPVwiY2xvc2VCdXR0b25DbGljaygpXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxza3ktaWNvbiBpY29uPVwiY2xvc2VcIj48L3NreS1pY29uPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXZcbiAgICAgIGNsYXNzPVwic2t5LW1vZGFsLWNvbnRlbnQgc2t5LXBhZGRpbmctZXZlbi1sYXJnZVwiXG4gICAgICByb2xlPVwicmVnaW9uXCJcbiAgICAgIHRhYmluZGV4PVwiMFwiXG4gICAgICBbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwibW9kYWxIZWFkZXJJZFwiXG4gICAgICBbYXR0ci5pZF09XCJtb2RhbENvbnRlbnRJZFwiXG4gICAgICAoc2t5TW9kYWxTY3JvbGxTaGFkb3cpPVwic2Nyb2xsU2hhZG93Q2hhbmdlKCRldmVudClcIlxuICAgICAgI21vZGFsQ29udGVudFdyYXBwZXJcbiAgICA+XG4gICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJza3ktbW9kYWwtY29udGVudFwiPjwvbmctY29udGVudD5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2XG4gICAgICBjbGFzcz1cInNreS1tb2RhbC1mb290ZXJcIlxuICAgICAgW25nU3R5bGVdPVwie1xuICAgICAgICAnYm94LXNoYWRvdyc6IHNjcm9sbFNoYWRvdz8uYm90dG9tU2hhZG93XG4gICAgICB9XCJcbiAgICA+XG4gICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJza3ktbW9kYWwtZm9vdGVyXCI+PC9uZy1jb250ZW50PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -0,0 +1,4 @@
1
+ // TODO: defaults won't show in the generated docs until this work is done:
2
+ // https://github.com/blackbaud/skyux-docs-tools/issues/38
3
+ export {};
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL21vZGFscy9zcmMvbGliL21vZHVsZXMvbW9kYWwvbW9kYWwuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDJFQUEyRTtBQUMzRSwwREFBMEQiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBUT0RPOiBkZWZhdWx0cyB3b24ndCBzaG93IGluIHRoZSBnZW5lcmF0ZWQgZG9jcyB1bnRpbCB0aGlzIHdvcmsgaXMgZG9uZTpcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9ibGFja2JhdWQvc2t5dXgtZG9jcy10b29scy9pc3N1ZXMvMzhcblxuLyoqXG4gKiBTcGVjaWZpZXMgY29uZmlndXJhdGlvbiBvcHRpb25zIGZvciBjcmVhdGluZyBhIG1vZGFsLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNreU1vZGFsQ29uZmlndXJhdGlvbkludGVyZmFjZSB7XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgd2hldGhlciB0byBkaXNwbGF5IHRoZSBtb2RhbCBmdWxsIHNjcmVlbi5cbiAgICogVGhpcyBwcm9wZXJ0eSBkZWZhdWx0cyB0byBgZmFsc2VgLlxuICAgKi9cbiAgZnVsbFBhZ2U/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgYSBzaXplIGZvciB0aGUgbW9kYWwuIFRoZSB2YWxpZCBvcHRpb25zIGFyZSBgc21hbGxgLCBgbWVkaXVtYCwgYW5kIGBsYXJnZWAuXG4gICAqIFRoaXMgcHJvcGVydHkgZGVmYXVsdHMgdG8gYG1lZGl1bWAuXG4gICAqL1xuICBzaXplPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBbiBhcnJheSBwcm9wZXJ0eSBvZiBgcHJvdmlkZXJzYC5cbiAgICogSW4gQW5ndWxhciwgYSBwcm92aWRlciBpcyBzb21ldGhpbmcgdGhhdCBjYW4gY3JlYXRlIG9yIGRlbGl2ZXIgYSBzZXJ2aWNlLlxuICAgKiBUaGlzIHByb3BlcnR5IGNhbiBiZSB1c2VkIHRvIHBhc3MgY29udGV4dCB2YWx1ZXMgZnJvbSB0aGUgY29tcG9uZW50IHRoYXQgbGF1bmNoZXMgdGhlIG1vZGFsIHRvIHRoZSBtb2RhbCBjb21wb25lbnQuXG4gICAqL1xuICBwcm92aWRlcnM/OiBhbnlbXTtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBIVE1MIGVsZW1lbnQgSUQgKHdpdGhvdXQgdGhlIGxlYWRpbmcgYCNgKSBvZiB0aGUgZWxlbWVudCB0aGF0IGRlc2NyaWJlc1xuICAgKiB0aGUgbW9kYWwuIFRoaXMgc2V0cyB0aGUgbW9kYWwncyBgYXJpYS1kZXNjcmliZWRieWAgYXR0cmlidXRlXG4gICAqIFt0byBzdXBwb3J0IGFjY2Vzc2liaWxpdHldKGh0dHBzOi8vZGV2ZWxvcGVyLmJsYWNrYmF1ZC5jb20vc2t5dXgvbGVhcm4vYWNjZXNzaWJpbGl0eSkuXG4gICAqIFRoZSBkZXNjcmlwdGlvbiB0eXBpY2FsbHkgaW5jbHVkZXMgdGV4dCBvbiB0aGUgbW9kYWwgYnV0IG5vdCBvbiBpdGVtcyB0aGF0IHVzZXJzIGludGVyYWN0XG4gICAqIHdpdGgsIHN1Y2ggYXMgYnV0dG9ucyBhbmQgZm9ybXMuIElmIHlvdSBkbyBub3Qgc3BlY2lmeSBhbiBJRCwgdGhlIGRlZmF1bHQgZGVzY3JpcHRpb24gaXNcbiAgICogdGhlIGNvbnRlbnQgb2YgdGhlIGBza3ktbW9kYWwtY29udGVudGAgY29tcG9uZW50LlxuICAgKi9cbiAgYXJpYURlc2NyaWJlZEJ5Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIEhUTUwgZWxlbWVudCBJRCAod2l0aG91dCB0aGUgbGVhZGluZyBgI2ApIG9mIHRoZSBlbGVtZW50IHRoYXQgbGFiZWxzXG4gICAqIHRoZSBtb2RhbC4gVGhpcyBzZXRzIHRoZSBgYXJpYS1sYWJlbGxlZGJ5YCBhdHRyaWJ1dGUgZm9yIHRoZSBtb2RhbFxuICAgKiBbdG8gc3VwcG9ydCBhY2Nlc3NpYmlsaXR5XShodHRwczovL2RldmVsb3Blci5ibGFja2JhdWQuY29tL3NreXV4L2xlYXJuL2FjY2Vzc2liaWxpdHkpLlxuICAgKiBUaGlzIGlzIHR5cGljYWxseSBhIGhlYWRlciBlbGVtZW50LCBhbmQgaWYgeW91IGRvIG5vdCBzcGVjaWZ5IGFuIElELCB0aGUgZGVmYXVsdCB2YWx1ZVxuICAgKiBpcyB0aGUgY29udGVudCBvZiB0aGUgYHNreS1tb2RhbC1oZWFkZXJgIGNvbXBvbmVudC5cbiAgICovXG4gIGFyaWFMYWJlbGxlZEJ5Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgYW4gQVJJQSByb2xlIGZvciB0aGUgbW9kYWxcbiAgICogW3RvIHN1cHBvcnQgYWNjZXNzaWJpbGl0eV0oaHR0cHM6Ly9kZXZlbG9wZXIuYmxhY2tiYXVkLmNvbS9za3l1eC9sZWFybi9hY2Nlc3NpYmlsaXR5KVxuICAgKiBieSBpbmRpY2F0aW5nIGhvdyB0aGUgbW9kYWwgZnVuY3Rpb25zIGFuZCB3aGF0IGl0IGNvbnRyb2xzLiBGb3IgaW5mb3JtYXRpb24gYWJvdXRcbiAgICogaG93IGFuIEFSSUEgcm9sZSBpbmRpY2F0ZXMgd2hhdCBhbiBpdGVtIHJlcHJlc2VudHMgb24gYSB3ZWIgcGFnZSwgc2VlIHRoZVxuICAgKiBbV0FJLUFSSUEgcm9sZXMgbW9kZWxdKGh0dHA6Ly93d3cudzMub3JnL1dBSS9QRi9hcmlhL3JvbGVzKS4gQnkgZGVmYXVsdCwgbW9kYWxzIHNldFxuICAgKiB0aGUgQVJJQSByb2xlIHRvIGBkaWFsb2dgLlxuICAgKiBAZGVmYXVsdCBcImRpYWxvZ1wiXG4gICAqL1xuICBhcmlhUm9sZT86IHN0cmluZztcblxuICAvKipcbiAgICogSW5kaWNhdGVzIHdoZXRoZXIgdGhlIG1vZGFsIHVzZXMgdGlsZXMuIFdoZW4gc2V0IHRvIGB0cnVlYCwgdGhlIG1vZGFsJ3MgYmFja2dyb3VuZCBzd2l0Y2hlc1xuICAgKiB0byBgJHNreS1iYWNrZ3JvdW5kLWNvbG9yLW5ldXRyYWwtbGlnaHRgIGFuZCB0aWxlIGhlYWRpbmdzIGFyZSBzdHlsZWQgYXMgc3Vic2VjdGlvbiBoZWFkaW5ncy5cbiAgICogVGhpcyBwcm9wZXJ0eSBkZWZhdWx0cyB0byBgZmFsc2VgLlxuICAgKi9cbiAgdGlsZWRCb2R5PzogYm9vbGVhbjtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIGEgYGhlbHBLZXlgIHN0cmluZy4gVGhpcyBwcm9wZXJ0eSBkaXNwYXlzXG4gICAqIHRoZSA8aSBjbGFzcz1cImZhIGZhLXF1ZXN0aW9uLWNpcmNsZVwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPjwvaT4gYnV0dG9uIGluIHRoZSBtb2RhbCBoZWFkZXIuXG4gICAqIFdoZW4gdXNlcnMgY2xpY2sgdGhpcyBidXR0b24sIHRoZSBgaGVscE9wZW5lZGAgZXZlbnQgYnJvYWRjYXN0cyB0aGUgYGhlbHBLZXlgIHBhcmFtZXRlci5cbiAgICogQmxhY2tiYXVkIGRldmVsb3BlcnMgY2FuIHVzZSB0aGUgSGVscCBXaWRnZXQsIHdoaWNoIGlzIGZvciBpbnRlcm5hbCBCbGFja2JhdWQgdXNlIG9ubHksIHRvXG4gICAqIFtkaXNwbGF5IGhlbHAgY29udGVudCBpbiBhIGZseW91dCBwYW5lbF0oaHR0cHM6Ly9kb2NzLmJsYWNrYmF1ZC5jb20vYmItaGVscC1kb2NzL2NvbXBvbmVudHMvbW9kYWwtaGVhZGVyKS5cbiAgICovXG4gIGhlbHBLZXk/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyBhIENTUyBjbGFzcyB0byBhZGQgdG8gdGhlIG1vZGFsLCBzdWNoIGFzIGBhZy1jdXN0b20tY29tcG9uZW50LXBvcHVwYCBmb3JcbiAgICogdXNpbmcgYSBtb2RhbCBhcyBwYXJ0IG9mIGEgY2VsbCBlZGl0b3IgaW4gRGF0YSBFbnRyeSBHcmlkLlxuICAgKi9cbiAgd3JhcHBlckNsYXNzPzogc3RyaW5nO1xufVxuIl19
@@ -0,0 +1,63 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { NgModule } from '@angular/core';
3
+ import { RouterModule } from '@angular/router';
4
+ import { SkyIconModule } from '@skyux/indicators';
5
+ import { SkyThemeModule } from '@skyux/theme';
6
+ import { SkyModalsResourcesModule } from '../shared/sky-modals-resources.module';
7
+ import { SkyModalContentComponent } from './modal-content.component';
8
+ import { SkyModalFooterComponent } from './modal-footer.component';
9
+ import { SkyModalHeaderComponent } from './modal-header.component';
10
+ import { SkyModalHostComponent } from './modal-host.component';
11
+ import { SkyModalScrollShadowDirective } from './modal-scroll-shadow.directive';
12
+ import { SkyModalComponent } from './modal.component';
13
+ import * as i0 from "@angular/core";
14
+ export class SkyModalModule {
15
+ }
16
+ SkyModalModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyModalModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
17
+ SkyModalModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyModalModule, declarations: [SkyModalComponent,
18
+ SkyModalContentComponent,
19
+ SkyModalFooterComponent,
20
+ SkyModalHeaderComponent,
21
+ SkyModalHostComponent,
22
+ SkyModalScrollShadowDirective], imports: [CommonModule,
23
+ RouterModule,
24
+ SkyIconModule,
25
+ SkyModalsResourcesModule,
26
+ SkyThemeModule], exports: [SkyModalComponent,
27
+ SkyModalContentComponent,
28
+ SkyModalFooterComponent,
29
+ SkyModalHeaderComponent] });
30
+ SkyModalModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyModalModule, imports: [[
31
+ CommonModule,
32
+ RouterModule,
33
+ SkyIconModule,
34
+ SkyModalsResourcesModule,
35
+ SkyThemeModule,
36
+ ]] });
37
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyModalModule, decorators: [{
38
+ type: NgModule,
39
+ args: [{
40
+ declarations: [
41
+ SkyModalComponent,
42
+ SkyModalContentComponent,
43
+ SkyModalFooterComponent,
44
+ SkyModalHeaderComponent,
45
+ SkyModalHostComponent,
46
+ SkyModalScrollShadowDirective,
47
+ ],
48
+ imports: [
49
+ CommonModule,
50
+ RouterModule,
51
+ SkyIconModule,
52
+ SkyModalsResourcesModule,
53
+ SkyThemeModule,
54
+ ],
55
+ exports: [
56
+ SkyModalComponent,
57
+ SkyModalContentComponent,
58
+ SkyModalFooterComponent,
59
+ SkyModalHeaderComponent,
60
+ ],
61
+ }]
62
+ }] });
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL21vZGFscy9zcmMvbGliL21vZHVsZXMvbW9kYWwvbW9kYWwubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUU5QyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUVqRixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUMvRCxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNoRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7QUF5QnRELE1BQU0sT0FBTyxjQUFjOzsyR0FBZCxjQUFjOzRHQUFkLGNBQWMsaUJBckJ2QixpQkFBaUI7UUFDakIsd0JBQXdCO1FBQ3hCLHVCQUF1QjtRQUN2Qix1QkFBdUI7UUFDdkIscUJBQXFCO1FBQ3JCLDZCQUE2QixhQUc3QixZQUFZO1FBQ1osWUFBWTtRQUNaLGFBQWE7UUFDYix3QkFBd0I7UUFDeEIsY0FBYyxhQUdkLGlCQUFpQjtRQUNqQix3QkFBd0I7UUFDeEIsdUJBQXVCO1FBQ3ZCLHVCQUF1Qjs0R0FHZCxjQUFjLFlBZGhCO1lBQ1AsWUFBWTtZQUNaLFlBQVk7WUFDWixhQUFhO1lBQ2Isd0JBQXdCO1lBQ3hCLGNBQWM7U0FDZjsyRkFRVSxjQUFjO2tCQXZCMUIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osaUJBQWlCO3dCQUNqQix3QkFBd0I7d0JBQ3hCLHVCQUF1Qjt3QkFDdkIsdUJBQXVCO3dCQUN2QixxQkFBcUI7d0JBQ3JCLDZCQUE2QjtxQkFDOUI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osWUFBWTt3QkFDWixhQUFhO3dCQUNiLHdCQUF3Qjt3QkFDeEIsY0FBYztxQkFDZjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsaUJBQWlCO3dCQUNqQix3QkFBd0I7d0JBQ3hCLHVCQUF1Qjt3QkFDdkIsdUJBQXVCO3FCQUN4QjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IFNreUljb25Nb2R1bGUgfSBmcm9tICdAc2t5dXgvaW5kaWNhdG9ycyc7XG5pbXBvcnQgeyBTa3lUaGVtZU1vZHVsZSB9IGZyb20gJ0Bza3l1eC90aGVtZSc7XG5cbmltcG9ydCB7IFNreU1vZGFsc1Jlc291cmNlc01vZHVsZSB9IGZyb20gJy4uL3NoYXJlZC9za3ktbW9kYWxzLXJlc291cmNlcy5tb2R1bGUnO1xuXG5pbXBvcnQgeyBTa3lNb2RhbENvbnRlbnRDb21wb25lbnQgfSBmcm9tICcuL21vZGFsLWNvbnRlbnQuY29tcG9uZW50JztcbmltcG9ydCB7IFNreU1vZGFsRm9vdGVyQ29tcG9uZW50IH0gZnJvbSAnLi9tb2RhbC1mb290ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFNreU1vZGFsSGVhZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9tb2RhbC1oZWFkZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFNreU1vZGFsSG9zdENvbXBvbmVudCB9IGZyb20gJy4vbW9kYWwtaG9zdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2t5TW9kYWxTY3JvbGxTaGFkb3dEaXJlY3RpdmUgfSBmcm9tICcuL21vZGFsLXNjcm9sbC1zaGFkb3cuZGlyZWN0aXZlJztcbmltcG9ydCB7IFNreU1vZGFsQ29tcG9uZW50IH0gZnJvbSAnLi9tb2RhbC5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBTa3lNb2RhbENvbXBvbmVudCxcbiAgICBTa3lNb2RhbENvbnRlbnRDb21wb25lbnQsXG4gICAgU2t5TW9kYWxGb290ZXJDb21wb25lbnQsXG4gICAgU2t5TW9kYWxIZWFkZXJDb21wb25lbnQsXG4gICAgU2t5TW9kYWxIb3N0Q29tcG9uZW50LFxuICAgIFNreU1vZGFsU2Nyb2xsU2hhZG93RGlyZWN0aXZlLFxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFJvdXRlck1vZHVsZSxcbiAgICBTa3lJY29uTW9kdWxlLFxuICAgIFNreU1vZGFsc1Jlc291cmNlc01vZHVsZSxcbiAgICBTa3lUaGVtZU1vZHVsZSxcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIFNreU1vZGFsQ29tcG9uZW50LFxuICAgIFNreU1vZGFsQ29udGVudENvbXBvbmVudCxcbiAgICBTa3lNb2RhbEZvb3RlckNvbXBvbmVudCxcbiAgICBTa3lNb2RhbEhlYWRlckNvbXBvbmVudCxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgU2t5TW9kYWxNb2R1bGUge31cbiJdfQ==
@@ -0,0 +1,85 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { SkyDynamicComponentService } from '@skyux/core';
3
+ import { SkyModalHostComponent } from './modal-host.component';
4
+ import { SkyModalInstance } from './modal-instance';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@skyux/core";
7
+ /**
8
+ * A service that lauches modals. For information about how to test modals in SKY UX, see
9
+ * [write unit tests for modals](https://developer.blackbaud.com/skyux/learn/get-started/advanced/unit-test-modals).
10
+ * @dynamic
11
+ */
12
+ export class SkyModalService {
13
+ // TODO: In future breaking change - remove extra parameters as they are no longer used.
14
+ /* tslint:disable:no-unused-variable */
15
+ constructor(dynamicComponentService) {
16
+ this.dynamicComponentService = dynamicComponentService;
17
+ }
18
+ /**
19
+ * @private
20
+ * Removes the modal host from the DOM.
21
+ */
22
+ dispose() {
23
+ if (SkyModalService.host) {
24
+ this.dynamicComponentService.removeComponent(SkyModalService.host);
25
+ SkyModalService.host = undefined;
26
+ }
27
+ }
28
+ /**
29
+ * Opens a modal using the specified component.
30
+ * @param component Determines the component to render.
31
+ * @param {SkyModalConfigurationInterface} config Populates the modal based on the `SkyModalConfigurationInterface` object.
32
+ */
33
+ open(component, config) {
34
+ const modalInstance = new SkyModalInstance();
35
+ this.createHostComponent();
36
+ const params = this.getConfigFromParameter(config);
37
+ params.providers.push({
38
+ provide: SkyModalInstance,
39
+ useValue: modalInstance,
40
+ });
41
+ SkyModalService.host.instance.open(modalInstance, component, params);
42
+ return modalInstance;
43
+ }
44
+ getConfigFromParameter(providersOrConfig) {
45
+ const defaultParams = {
46
+ providers: [],
47
+ fullPage: false,
48
+ size: 'medium',
49
+ tiledBody: false,
50
+ };
51
+ let params = undefined;
52
+ let method = undefined;
53
+ // Object Literal Lookup for backwards compatability.
54
+ method = {
55
+ 'providers?': Object.assign({}, defaultParams, {
56
+ providers: providersOrConfig,
57
+ }),
58
+ config: Object.assign({}, defaultParams, providersOrConfig),
59
+ };
60
+ if (Array.isArray(providersOrConfig) === true) {
61
+ params = method['providers?'];
62
+ }
63
+ else {
64
+ params = method['config'];
65
+ }
66
+ return params;
67
+ }
68
+ createHostComponent() {
69
+ if (!SkyModalService.host) {
70
+ SkyModalService.host = this.dynamicComponentService.createComponent(SkyModalHostComponent);
71
+ }
72
+ }
73
+ }
74
+ SkyModalService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyModalService, deps: [{ token: i1.SkyDynamicComponentService }], target: i0.ɵɵFactoryTarget.Injectable });
75
+ SkyModalService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyModalService, providedIn: 'any' });
76
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyModalService, decorators: [{
77
+ type: Injectable,
78
+ args: [{
79
+ // Must be 'any' so that the modal component is created in the context of its module's injector.
80
+ // If set to 'root', the component's dependency injections would only be derived from the root
81
+ // injector and may loose context if the modal was opened from within a lazy-loaded module.
82
+ providedIn: 'any',
83
+ }]
84
+ }], ctorParameters: function () { return [{ type: i1.SkyDynamicComponentService }]; } });
85
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9tb2RhbHMvc3JjL2xpYi9tb2R1bGVzL21vZGFsL21vZGFsLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFnQixVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRXpELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDOzs7QUFHcEQ7Ozs7R0FJRztBQU9ILE1BQU0sT0FBTyxlQUFlO0lBRzFCLHdGQUF3RjtJQUN4Rix1Q0FBdUM7SUFDdkMsWUFBb0IsdUJBQW9EO1FBQXBELDRCQUF1QixHQUF2Qix1QkFBdUIsQ0FBNkI7SUFBRyxDQUFDO0lBRTVFOzs7T0FHRztJQUNJLE9BQU87UUFDWixJQUFJLGVBQWUsQ0FBQyxJQUFJLEVBQUU7WUFDeEIsSUFBSSxDQUFDLHVCQUF1QixDQUFDLGVBQWUsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDbkUsZUFBZSxDQUFDLElBQUksR0FBRyxTQUFTLENBQUM7U0FDbEM7SUFDSCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLElBQUksQ0FDVCxTQUFjLEVBQ2QsTUFBK0M7UUFFL0MsTUFBTSxhQUFhLEdBQUcsSUFBSSxnQkFBZ0IsRUFBRSxDQUFDO1FBQzdDLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1FBQzNCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUVuRCxNQUFNLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQztZQUNwQixPQUFPLEVBQUUsZ0JBQWdCO1lBQ3pCLFFBQVEsRUFBRSxhQUFhO1NBQ3hCLENBQUMsQ0FBQztRQUVILGVBQWUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsU0FBUyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBRXJFLE9BQU8sYUFBYSxDQUFDO0lBQ3ZCLENBQUM7SUFFTyxzQkFBc0IsQ0FDNUIsaUJBQXNCO1FBRXRCLE1BQU0sYUFBYSxHQUFtQztZQUNwRCxTQUFTLEVBQUUsRUFBRTtZQUNiLFFBQVEsRUFBRSxLQUFLO1lBQ2YsSUFBSSxFQUFFLFFBQVE7WUFDZCxTQUFTLEVBQUUsS0FBSztTQUNqQixDQUFDO1FBQ0YsSUFBSSxNQUFNLEdBQW1DLFNBQVMsQ0FBQztRQUN2RCxJQUFJLE1BQU0sR0FBUSxTQUFTLENBQUM7UUFFNUIscURBQXFEO1FBQ3JELE1BQU0sR0FBRztZQUNQLFlBQVksRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxhQUFhLEVBQUU7Z0JBQzdDLFNBQVMsRUFBRSxpQkFBaUI7YUFDN0IsQ0FBQztZQUNGLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxhQUFhLEVBQUUsaUJBQWlCLENBQUM7U0FDNUQsQ0FBQztRQUVGLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLElBQUksRUFBRTtZQUM3QyxNQUFNLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO1NBQy9CO2FBQU07WUFDTCxNQUFNLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1NBQzNCO1FBRUQsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVPLG1CQUFtQjtRQUN6QixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksRUFBRTtZQUN6QixlQUFlLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxlQUFlLENBQ2pFLHFCQUFxQixDQUN0QixDQUFDO1NBQ0g7SUFDSCxDQUFDOzs0R0E1RVUsZUFBZTtnSEFBZixlQUFlLGNBRmQsS0FBSzsyRkFFTixlQUFlO2tCQU4zQixVQUFVO21CQUFDO29CQUNWLGdHQUFnRztvQkFDaEcsOEZBQThGO29CQUM5RiwyRkFBMkY7b0JBQzNGLFVBQVUsRUFBRSxLQUFLO2lCQUNsQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudFJlZiwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2t5RHluYW1pY0NvbXBvbmVudFNlcnZpY2UgfSBmcm9tICdAc2t5dXgvY29yZSc7XG5cbmltcG9ydCB7IFNreU1vZGFsSG9zdENvbXBvbmVudCB9IGZyb20gJy4vbW9kYWwtaG9zdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2t5TW9kYWxJbnN0YW5jZSB9IGZyb20gJy4vbW9kYWwtaW5zdGFuY2UnO1xuaW1wb3J0IHsgU2t5TW9kYWxDb25maWd1cmF0aW9uSW50ZXJmYWNlIH0gZnJvbSAnLi9tb2RhbC5pbnRlcmZhY2UnO1xuXG4vKipcbiAqIEEgc2VydmljZSB0aGF0IGxhdWNoZXMgbW9kYWxzLiBGb3IgaW5mb3JtYXRpb24gYWJvdXQgaG93IHRvIHRlc3QgbW9kYWxzIGluIFNLWSBVWCwgc2VlXG4gKiBbd3JpdGUgdW5pdCB0ZXN0cyBmb3IgbW9kYWxzXShodHRwczovL2RldmVsb3Blci5ibGFja2JhdWQuY29tL3NreXV4L2xlYXJuL2dldC1zdGFydGVkL2FkdmFuY2VkL3VuaXQtdGVzdC1tb2RhbHMpLlxuICogQGR5bmFtaWNcbiAqL1xuQEluamVjdGFibGUoe1xuICAvLyBNdXN0IGJlICdhbnknIHNvIHRoYXQgdGhlIG1vZGFsIGNvbXBvbmVudCBpcyBjcmVhdGVkIGluIHRoZSBjb250ZXh0IG9mIGl0cyBtb2R1bGUncyBpbmplY3Rvci5cbiAgLy8gSWYgc2V0IHRvICdyb290JywgdGhlIGNvbXBvbmVudCdzIGRlcGVuZGVuY3kgaW5qZWN0aW9ucyB3b3VsZCBvbmx5IGJlIGRlcml2ZWQgZnJvbSB0aGUgcm9vdFxuICAvLyBpbmplY3RvciBhbmQgbWF5IGxvb3NlIGNvbnRleHQgaWYgdGhlIG1vZGFsIHdhcyBvcGVuZWQgZnJvbSB3aXRoaW4gYSBsYXp5LWxvYWRlZCBtb2R1bGUuXG4gIHByb3ZpZGVkSW46ICdhbnknLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lNb2RhbFNlcnZpY2Uge1xuICBwcml2YXRlIHN0YXRpYyBob3N0OiBDb21wb25lbnRSZWY8U2t5TW9kYWxIb3N0Q29tcG9uZW50PjtcblxuICAvLyBUT0RPOiBJbiBmdXR1cmUgYnJlYWtpbmcgY2hhbmdlIC0gcmVtb3ZlIGV4dHJhIHBhcmFtZXRlcnMgYXMgdGhleSBhcmUgbm8gbG9uZ2VyIHVzZWQuXG4gIC8qIHRzbGludDpkaXNhYmxlOm5vLXVudXNlZC12YXJpYWJsZSAqL1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGR5bmFtaWNDb21wb25lbnRTZXJ2aWNlPzogU2t5RHluYW1pY0NvbXBvbmVudFNlcnZpY2UpIHt9XG5cbiAgLyoqXG4gICAqIEBwcml2YXRlXG4gICAqIFJlbW92ZXMgdGhlIG1vZGFsIGhvc3QgZnJvbSB0aGUgRE9NLlxuICAgKi9cbiAgcHVibGljIGRpc3Bvc2UoKTogdm9pZCB7XG4gICAgaWYgKFNreU1vZGFsU2VydmljZS5ob3N0KSB7XG4gICAgICB0aGlzLmR5bmFtaWNDb21wb25lbnRTZXJ2aWNlLnJlbW92ZUNvbXBvbmVudChTa3lNb2RhbFNlcnZpY2UuaG9zdCk7XG4gICAgICBTa3lNb2RhbFNlcnZpY2UuaG9zdCA9IHVuZGVmaW5lZDtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogT3BlbnMgYSBtb2RhbCB1c2luZyB0aGUgc3BlY2lmaWVkIGNvbXBvbmVudC5cbiAgICogQHBhcmFtIGNvbXBvbmVudCBEZXRlcm1pbmVzIHRoZSBjb21wb25lbnQgdG8gcmVuZGVyLlxuICAgKiBAcGFyYW0ge1NreU1vZGFsQ29uZmlndXJhdGlvbkludGVyZmFjZX0gY29uZmlnIFBvcHVsYXRlcyB0aGUgbW9kYWwgYmFzZWQgb24gdGhlIGBTa3lNb2RhbENvbmZpZ3VyYXRpb25JbnRlcmZhY2VgIG9iamVjdC5cbiAgICovXG4gIHB1YmxpYyBvcGVuKFxuICAgIGNvbXBvbmVudDogYW55LFxuICAgIGNvbmZpZz86IFNreU1vZGFsQ29uZmlndXJhdGlvbkludGVyZmFjZSB8IGFueVtdXG4gICk6IFNreU1vZGFsSW5zdGFuY2Uge1xuICAgIGNvbnN0IG1vZGFsSW5zdGFuY2UgPSBuZXcgU2t5TW9kYWxJbnN0YW5jZSgpO1xuICAgIHRoaXMuY3JlYXRlSG9zdENvbXBvbmVudCgpO1xuICAgIGNvbnN0IHBhcmFtcyA9IHRoaXMuZ2V0Q29uZmlnRnJvbVBhcmFtZXRlcihjb25maWcpO1xuXG4gICAgcGFyYW1zLnByb3ZpZGVycy5wdXNoKHtcbiAgICAgIHByb3ZpZGU6IFNreU1vZGFsSW5zdGFuY2UsXG4gICAgICB1c2VWYWx1ZTogbW9kYWxJbnN0YW5jZSxcbiAgICB9KTtcblxuICAgIFNreU1vZGFsU2VydmljZS5ob3N0Lmluc3RhbmNlLm9wZW4obW9kYWxJbnN0YW5jZSwgY29tcG9uZW50LCBwYXJhbXMpO1xuXG4gICAgcmV0dXJuIG1vZGFsSW5zdGFuY2U7XG4gIH1cblxuICBwcml2YXRlIGdldENvbmZpZ0Zyb21QYXJhbWV0ZXIoXG4gICAgcHJvdmlkZXJzT3JDb25maWc6IGFueVxuICApOiBTa3lNb2RhbENvbmZpZ3VyYXRpb25JbnRlcmZhY2Uge1xuICAgIGNvbnN0IGRlZmF1bHRQYXJhbXM6IFNreU1vZGFsQ29uZmlndXJhdGlvbkludGVyZmFjZSA9IHtcbiAgICAgIHByb3ZpZGVyczogW10sXG4gICAgICBmdWxsUGFnZTogZmFsc2UsXG4gICAgICBzaXplOiAnbWVkaXVtJyxcbiAgICAgIHRpbGVkQm9keTogZmFsc2UsXG4gICAgfTtcbiAgICBsZXQgcGFyYW1zOiBTa3lNb2RhbENvbmZpZ3VyYXRpb25JbnRlcmZhY2UgPSB1bmRlZmluZWQ7XG4gICAgbGV0IG1ldGhvZDogYW55ID0gdW5kZWZpbmVkO1xuXG4gICAgLy8gT2JqZWN0IExpdGVyYWwgTG9va3VwIGZvciBiYWNrd2FyZHMgY29tcGF0YWJpbGl0eS5cbiAgICBtZXRob2QgPSB7XG4gICAgICAncHJvdmlkZXJzPyc6IE9iamVjdC5hc3NpZ24oe30sIGRlZmF1bHRQYXJhbXMsIHtcbiAgICAgICAgcHJvdmlkZXJzOiBwcm92aWRlcnNPckNvbmZpZyxcbiAgICAgIH0pLFxuICAgICAgY29uZmlnOiBPYmplY3QuYXNzaWduKHt9LCBkZWZhdWx0UGFyYW1zLCBwcm92aWRlcnNPckNvbmZpZyksXG4gICAgfTtcblxuICAgIGlmIChBcnJheS5pc0FycmF5KHByb3ZpZGVyc09yQ29uZmlnKSA9PT0gdHJ1ZSkge1xuICAgICAgcGFyYW1zID0gbWV0aG9kWydwcm92aWRlcnM/J107XG4gICAgfSBlbHNlIHtcbiAgICAgIHBhcmFtcyA9IG1ldGhvZFsnY29uZmlnJ107XG4gICAgfVxuXG4gICAgcmV0dXJuIHBhcmFtcztcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlSG9zdENvbXBvbmVudCgpOiB2b2lkIHtcbiAgICBpZiAoIVNreU1vZGFsU2VydmljZS5ob3N0KSB7XG4gICAgICBTa3lNb2RhbFNlcnZpY2UuaG9zdCA9IHRoaXMuZHluYW1pY0NvbXBvbmVudFNlcnZpY2UuY3JlYXRlQ29tcG9uZW50KFxuICAgICAgICBTa3lNb2RhbEhvc3RDb21wb25lbnRcbiAgICAgICk7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -0,0 +1,54 @@
1
+ /**
2
+ * NOTICE: DO NOT MODIFY THIS FILE!
3
+ * The contents of this file were automatically generated by
4
+ * the 'ng generate @skyux/i18n:lib-resources-module lib/modules/shared/sky-modals' schematic.
5
+ * To update this file, simply rerun the command.
6
+ */
7
+ import { NgModule } from '@angular/core';
8
+ import { SKY_LIB_RESOURCES_PROVIDERS, SkyI18nModule, getLibStringForLocale, } from '@skyux/i18n';
9
+ import * as i0 from "@angular/core";
10
+ const RESOURCES = {
11
+ 'EN-US': {
12
+ skyux_confirm_dialog_default_ok_text: { message: 'OK' },
13
+ skyux_confirm_dialog_default_yes_text: { message: 'Yes' },
14
+ skyux_confirm_dialog_default_no_text: { message: 'No' },
15
+ skyux_confirm_dialog_default_cancel_text: { message: 'Cancel' },
16
+ skyux_modal_close: { message: 'Close modal' },
17
+ skyux_modal_open_help: { message: 'Open Help' },
18
+ skyux_modal_footer_cancel_button: { message: 'Cancel' },
19
+ skyux_modal_footer_primary_button: { message: 'Save' },
20
+ },
21
+ };
22
+ export class SkyModalsResourcesProvider {
23
+ getString(localeInfo, name) {
24
+ return getLibStringForLocale(RESOURCES, localeInfo.locale, name);
25
+ }
26
+ }
27
+ /**
28
+ * Import into any component library module that needs to use resource strings.
29
+ */
30
+ export class SkyModalsResourcesModule {
31
+ }
32
+ SkyModalsResourcesModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyModalsResourcesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
33
+ SkyModalsResourcesModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyModalsResourcesModule, exports: [SkyI18nModule] });
34
+ SkyModalsResourcesModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyModalsResourcesModule, providers: [
35
+ {
36
+ provide: SKY_LIB_RESOURCES_PROVIDERS,
37
+ useClass: SkyModalsResourcesProvider,
38
+ multi: true,
39
+ },
40
+ ], imports: [SkyI18nModule] });
41
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyModalsResourcesModule, decorators: [{
42
+ type: NgModule,
43
+ args: [{
44
+ exports: [SkyI18nModule],
45
+ providers: [
46
+ {
47
+ provide: SKY_LIB_RESOURCES_PROVIDERS,
48
+ useClass: SkyModalsResourcesProvider,
49
+ multi: true,
50
+ },
51
+ ],
52
+ }]
53
+ }] });
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2t5LW1vZGFscy1yZXNvdXJjZXMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL21vZGFscy9zcmMvbGliL21vZHVsZXMvc2hhcmVkL3NreS1tb2RhbHMtcmVzb3VyY2VzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7R0FLRztBQUNILE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUNMLDJCQUEyQixFQUUzQixhQUFhLEVBR2IscUJBQXFCLEdBQ3RCLE1BQU0sYUFBYSxDQUFDOztBQUVyQixNQUFNLFNBQVMsR0FBMEM7SUFDdkQsT0FBTyxFQUFFO1FBQ1Asb0NBQW9DLEVBQUUsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFO1FBQ3ZELHFDQUFxQyxFQUFFLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRTtRQUN6RCxvQ0FBb0MsRUFBRSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUU7UUFDdkQsd0NBQXdDLEVBQUUsRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFO1FBQy9ELGlCQUFpQixFQUFFLEVBQUUsT0FBTyxFQUFFLGFBQWEsRUFBRTtRQUM3QyxxQkFBcUIsRUFBRSxFQUFFLE9BQU8sRUFBRSxXQUFXLEVBQUU7UUFDL0MsZ0NBQWdDLEVBQUUsRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFO1FBQ3ZELGlDQUFpQyxFQUFFLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRTtLQUN2RDtDQUNGLENBQUM7QUFFRixNQUFNLE9BQU8sMEJBQTBCO0lBQzlCLFNBQVMsQ0FDZCxVQUE0QixFQUM1QixJQUFZO1FBRVosT0FBTyxxQkFBcUIsQ0FBQyxTQUFTLEVBQUUsVUFBVSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNuRSxDQUFDO0NBQ0Y7QUFFRDs7R0FFRztBQVdILE1BQU0sT0FBTyx3QkFBd0I7O3FIQUF4Qix3QkFBd0I7c0hBQXhCLHdCQUF3QixZQVR6QixhQUFhO3NIQVNaLHdCQUF3QixhQVJ4QjtRQUNUO1lBQ0UsT0FBTyxFQUFFLDJCQUEyQjtZQUNwQyxRQUFRLEVBQUUsMEJBQTBCO1lBQ3BDLEtBQUssRUFBRSxJQUFJO1NBQ1o7S0FDRixZQVBTLGFBQWE7MkZBU1osd0JBQXdCO2tCQVZwQyxRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLGFBQWEsQ0FBQztvQkFDeEIsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSwyQkFBMkI7NEJBQ3BDLFFBQVEsRUFBRSwwQkFBMEI7NEJBQ3BDLEtBQUssRUFBRSxJQUFJO3lCQUNaO3FCQUNGO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBOT1RJQ0U6IERPIE5PVCBNT0RJRlkgVEhJUyBGSUxFIVxuICogVGhlIGNvbnRlbnRzIG9mIHRoaXMgZmlsZSB3ZXJlIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGJ5XG4gKiB0aGUgJ25nIGdlbmVyYXRlIEBza3l1eC9pMThuOmxpYi1yZXNvdXJjZXMtbW9kdWxlIGxpYi9tb2R1bGVzL3NoYXJlZC9za3ktbW9kYWxzJyBzY2hlbWF0aWMuXG4gKiBUbyB1cGRhdGUgdGhpcyBmaWxlLCBzaW1wbHkgcmVydW4gdGhlIGNvbW1hbmQuXG4gKi9cbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBTS1lfTElCX1JFU09VUkNFU19QUk9WSURFUlMsXG4gIFNreUFwcExvY2FsZUluZm8sXG4gIFNreUkxOG5Nb2R1bGUsXG4gIFNreUxpYlJlc291cmNlcyxcbiAgU2t5TGliUmVzb3VyY2VzUHJvdmlkZXIsXG4gIGdldExpYlN0cmluZ0ZvckxvY2FsZSxcbn0gZnJvbSAnQHNreXV4L2kxOG4nO1xuXG5jb25zdCBSRVNPVVJDRVM6IHsgW2xvY2FsZTogc3RyaW5nXTogU2t5TGliUmVzb3VyY2VzIH0gPSB7XG4gICdFTi1VUyc6IHtcbiAgICBza3l1eF9jb25maXJtX2RpYWxvZ19kZWZhdWx0X29rX3RleHQ6IHsgbWVzc2FnZTogJ09LJyB9LFxuICAgIHNreXV4X2NvbmZpcm1fZGlhbG9nX2RlZmF1bHRfeWVzX3RleHQ6IHsgbWVzc2FnZTogJ1llcycgfSxcbiAgICBza3l1eF9jb25maXJtX2RpYWxvZ19kZWZhdWx0X25vX3RleHQ6IHsgbWVzc2FnZTogJ05vJyB9LFxuICAgIHNreXV4X2NvbmZpcm1fZGlhbG9nX2RlZmF1bHRfY2FuY2VsX3RleHQ6IHsgbWVzc2FnZTogJ0NhbmNlbCcgfSxcbiAgICBza3l1eF9tb2RhbF9jbG9zZTogeyBtZXNzYWdlOiAnQ2xvc2UgbW9kYWwnIH0sXG4gICAgc2t5dXhfbW9kYWxfb3Blbl9oZWxwOiB7IG1lc3NhZ2U6ICdPcGVuIEhlbHAnIH0sXG4gICAgc2t5dXhfbW9kYWxfZm9vdGVyX2NhbmNlbF9idXR0b246IHsgbWVzc2FnZTogJ0NhbmNlbCcgfSxcbiAgICBza3l1eF9tb2RhbF9mb290ZXJfcHJpbWFyeV9idXR0b246IHsgbWVzc2FnZTogJ1NhdmUnIH0sXG4gIH0sXG59O1xuXG5leHBvcnQgY2xhc3MgU2t5TW9kYWxzUmVzb3VyY2VzUHJvdmlkZXIgaW1wbGVtZW50cyBTa3lMaWJSZXNvdXJjZXNQcm92aWRlciB7XG4gIHB1YmxpYyBnZXRTdHJpbmcoXG4gICAgbG9jYWxlSW5mbzogU2t5QXBwTG9jYWxlSW5mbyxcbiAgICBuYW1lOiBzdHJpbmdcbiAgKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gZ2V0TGliU3RyaW5nRm9yTG9jYWxlKFJFU09VUkNFUywgbG9jYWxlSW5mby5sb2NhbGUsIG5hbWUpO1xuICB9XG59XG5cbi8qKlxuICogSW1wb3J0IGludG8gYW55IGNvbXBvbmVudCBsaWJyYXJ5IG1vZHVsZSB0aGF0IG5lZWRzIHRvIHVzZSByZXNvdXJjZSBzdHJpbmdzLlxuICovXG5ATmdNb2R1bGUoe1xuICBleHBvcnRzOiBbU2t5STE4bk1vZHVsZV0sXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IFNLWV9MSUJfUkVTT1VSQ0VTX1BST1ZJREVSUyxcbiAgICAgIHVzZUNsYXNzOiBTa3lNb2RhbHNSZXNvdXJjZXNQcm92aWRlcixcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFNreU1vZGFsc1Jlc291cmNlc01vZHVsZSB7fVxuIl19
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './index';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2t5dXgtbW9kYWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL21vZGFscy9zcmMvc2t5dXgtbW9kYWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19