@skyux/inline-form 8.6.0 → 9.0.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/documentation.json +6 -6
- package/esm2022/lib/modules/inline-form/inline-form-adapter.service.mjs +60 -0
- package/esm2022/lib/modules/inline-form/inline-form.component.mjs +226 -0
- package/{esm2020 → esm2022}/lib/modules/inline-form/inline-form.module.mjs +5 -5
- package/esm2022/lib/modules/shared/sky-inline-form-resources.module.mjs +50 -0
- package/fesm2022/skyux-inline-form.mjs +400 -0
- package/{fesm2020 → fesm2022}/skyux-inline-form.mjs.map +1 -1
- package/lib/modules/inline-form/inline-form.component.d.ts +1 -1
- package/package.json +10 -16
- package/esm2020/lib/modules/inline-form/inline-form-adapter.service.mjs +0 -63
- package/esm2020/lib/modules/inline-form/inline-form.component.mjs +0 -224
- package/esm2020/lib/modules/shared/sky-inline-form-resources.module.mjs +0 -50
- package/fesm2015/skyux-inline-form.mjs +0 -400
- package/fesm2015/skyux-inline-form.mjs.map +0 -1
- package/fesm2020/skyux-inline-form.mjs +0 -400
- /package/{esm2020 → esm2022}/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/modules/inline-form/animations/slide-dissolve.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/modules/inline-form/types/inline-form-button-action.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/modules/inline-form/types/inline-form-button-config.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/modules/inline-form/types/inline-form-button-layout.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/modules/inline-form/types/inline-form-close-args.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/modules/inline-form/types/inline-form-config.mjs +0 -0
- /package/{esm2020 → esm2022}/skyux-inline-form.mjs +0 -0
package/documentation.json
CHANGED
|
@@ -1062,7 +1062,7 @@
|
|
|
1062
1062
|
{
|
|
1063
1063
|
"fileName": "inline-form-demo.component.html",
|
|
1064
1064
|
"filePath": "/projects/inline-form/documentation/code-examples/inline-form/basic/inline-form-demo.component.html",
|
|
1065
|
-
"rawContents": "<sky-inline-form\n [config]=\"inlineFormConfig\"\n [showForm]=\"showForm\"\n [template]=\"inlineFormTemplate\"\n (close)=\"onInlineFormClose($event)\"\n>\n <table>\n <tr>\n <th>First name:</th>\n <td>\n {{ firstName }}\n </td>\n <td>\n <button\n aria-label=\"Edit\"\n class=\"sky-btn sky-btn-icon-borderless\"\n (click)=\"onInlineFormOpen()\"\n >\n <sky-icon icon=\"pencil\"></sky-icon>\n </button>\n </td>\n </tr>\n </table>\n</sky-inline-form>\n\n<ng-template #inlineFormTemplate>\n <form novalidate [formGroup]=\"myForm\">\n <div class=\"sky-form-group\">\n <sky-input-box
|
|
1065
|
+
"rawContents": "<sky-inline-form\n [config]=\"inlineFormConfig\"\n [showForm]=\"showForm\"\n [template]=\"inlineFormTemplate\"\n (close)=\"onInlineFormClose($event)\"\n>\n <table>\n <tr>\n <th>First name:</th>\n <td>\n {{ firstName }}\n </td>\n <td>\n <button\n aria-label=\"Edit\"\n class=\"sky-btn sky-btn-icon-borderless\"\n (click)=\"onInlineFormOpen()\"\n >\n <sky-icon icon=\"pencil\"></sky-icon>\n </button>\n </td>\n </tr>\n </table>\n</sky-inline-form>\n\n<ng-template #inlineFormTemplate>\n <form novalidate [formGroup]=\"myForm\">\n <div class=\"sky-form-group\">\n <sky-input-box labelText=\"First name\">\n <input formControlName=\"myFirstName\" type=\"text\" />\n </sky-input-box>\n </div>\n </form>\n</ng-template>\n"
|
|
1066
1066
|
},
|
|
1067
1067
|
{
|
|
1068
1068
|
"fileName": "inline-form-demo.component.ts",
|
|
@@ -1072,12 +1072,12 @@
|
|
|
1072
1072
|
{
|
|
1073
1073
|
"fileName": "inline-form-demo.module.ts",
|
|
1074
1074
|
"filePath": "/projects/inline-form/documentation/code-examples/inline-form/basic/inline-form-demo.module.ts",
|
|
1075
|
-
"rawContents": "import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport {
|
|
1075
|
+
"rawContents": "import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { SkyInputBoxModule } from '@skyux/forms';\nimport { SkyIconModule } from '@skyux/indicators';\nimport { SkyInlineFormModule } from '@skyux/inline-form';\n\nimport { InlineFormDemoComponent } from './inline-form-demo.component';\n\n@NgModule({\n imports: [\n CommonModule,\n ReactiveFormsModule,\n SkyIconModule,\n SkyInlineFormModule,\n SkyInputBoxModule,\n ],\n exports: [InlineFormDemoComponent],\n declarations: [InlineFormDemoComponent],\n})\nexport class InlineFormDemoModule {}\n"
|
|
1076
1076
|
},
|
|
1077
1077
|
{
|
|
1078
1078
|
"fileName": "inline-form-demo.component.html",
|
|
1079
1079
|
"filePath": "/projects/inline-form/documentation/code-examples/inline-form/custom-buttons/inline-form-demo.component.html",
|
|
1080
|
-
"rawContents": "<sky-inline-form\n [config]=\"inlineFormConfig\"\n [showForm]=\"showForm\"\n [template]=\"inlineFormTemplate\"\n (close)=\"onInlineFormClose($event)\"\n>\n <table>\n <tr>\n <th>First name:</th>\n <td>\n {{ firstName }}\n </td>\n <td>\n <button\n aria-label=\"Edit\"\n class=\"sky-btn sky-btn-icon-borderless\"\n (click)=\"onInlineFormOpen()\"\n >\n <sky-icon icon=\"pencil\"></sky-icon>\n </button>\n </td>\n </tr>\n </table>\n</sky-inline-form>\n\n<ng-template #inlineFormTemplate>\n <form novalidate [formGroup]=\"myForm\">\n <div class=\"sky-form-group\">\n <sky-input-box
|
|
1080
|
+
"rawContents": "<sky-inline-form\n [config]=\"inlineFormConfig\"\n [showForm]=\"showForm\"\n [template]=\"inlineFormTemplate\"\n (close)=\"onInlineFormClose($event)\"\n>\n <table>\n <tr>\n <th>First name:</th>\n <td>\n {{ firstName }}\n </td>\n <td>\n <button\n aria-label=\"Edit\"\n class=\"sky-btn sky-btn-icon-borderless\"\n (click)=\"onInlineFormOpen()\"\n >\n <sky-icon icon=\"pencil\"></sky-icon>\n </button>\n </td>\n </tr>\n </table>\n</sky-inline-form>\n\n<ng-template #inlineFormTemplate>\n <form novalidate [formGroup]=\"myForm\">\n <div class=\"sky-form-group\">\n <sky-input-box labelText=\"First name\">\n <input formControlName=\"myFirstName\" required type=\"text\" />\n </sky-input-box>\n </div>\n </form>\n</ng-template>\n"
|
|
1081
1081
|
},
|
|
1082
1082
|
{
|
|
1083
1083
|
"fileName": "inline-form-demo.component.ts",
|
|
@@ -1087,7 +1087,7 @@
|
|
|
1087
1087
|
{
|
|
1088
1088
|
"fileName": "inline-form-demo.module.ts",
|
|
1089
1089
|
"filePath": "/projects/inline-form/documentation/code-examples/inline-form/custom-buttons/inline-form-demo.module.ts",
|
|
1090
|
-
"rawContents": "import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport {
|
|
1090
|
+
"rawContents": "import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { SkyInputBoxModule } from '@skyux/forms';\nimport { SkyIconModule } from '@skyux/indicators';\nimport { SkyInlineFormModule } from '@skyux/inline-form';\n\nimport { InlineFormDemoComponent } from './inline-form-demo.component';\n\n@NgModule({\n imports: [\n CommonModule,\n ReactiveFormsModule,\n SkyIconModule,\n SkyInlineFormModule,\n SkyInputBoxModule,\n ],\n exports: [InlineFormDemoComponent],\n declarations: [InlineFormDemoComponent],\n})\nexport class InlineFormDemoModule {}\n"
|
|
1091
1091
|
},
|
|
1092
1092
|
{
|
|
1093
1093
|
"fileName": "inline-form-demo-item.ts",
|
|
@@ -1097,7 +1097,7 @@
|
|
|
1097
1097
|
{
|
|
1098
1098
|
"fileName": "inline-form-demo.component.html",
|
|
1099
1099
|
"filePath": "/projects/inline-form/documentation/code-examples/inline-form/repeaters/inline-form-demo.component.html",
|
|
1100
|
-
"rawContents": "<sky-repeater>\n <sky-repeater-item\n *ngFor=\"let item of items\"\n [inlineFormConfig]=\"inlineFormConfig\"\n [inlineFormTemplate]=\"inlineFormTemplate\"\n [showInlineForm]=\"activeInlineFormId === item.id\"\n (inlineFormClose)=\"onInlineFormClose($event)\"\n >\n <sky-repeater-item-title>\n <div class=\"sky-font-emphasized\">\n {{ item.title }}\n </div>\n </sky-repeater-item-title>\n <sky-repeater-item-context-menu>\n <button\n aria-label=\"Edit\"\n class=\"sky-btn sky-btn-icon-borderless\"\n type=\"button\"\n (click)=\"showInlineForm(item)\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"pencil\"></sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"edit\"\n iconType=\"skyux\"\n ></sky-icon>\n </button>\n </sky-repeater-item-context-menu>\n\n <sky-repeater-item-content>\n {{ item.note }}\n </sky-repeater-item-content>\n </sky-repeater-item>\n</sky-repeater>\n\n<ng-template #inlineFormTemplate>\n <form novalidate [formGroup]=\"myForm\">\n <
|
|
1100
|
+
"rawContents": "<sky-repeater>\n <sky-repeater-item\n *ngFor=\"let item of items\"\n [inlineFormConfig]=\"inlineFormConfig\"\n [inlineFormTemplate]=\"inlineFormTemplate\"\n [showInlineForm]=\"activeInlineFormId === item.id\"\n (inlineFormClose)=\"onInlineFormClose($event)\"\n >\n <sky-repeater-item-title>\n <div class=\"sky-font-emphasized\">\n {{ item.title }}\n </div>\n </sky-repeater-item-title>\n <sky-repeater-item-context-menu>\n <button\n aria-label=\"Edit\"\n class=\"sky-btn sky-btn-icon-borderless\"\n type=\"button\"\n (click)=\"showInlineForm(item)\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"pencil\"></sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"edit\"\n iconType=\"skyux\"\n ></sky-icon>\n </button>\n </sky-repeater-item-context-menu>\n\n <sky-repeater-item-content>\n {{ item.note }}\n </sky-repeater-item-content>\n </sky-repeater-item>\n</sky-repeater>\n\n<ng-template #inlineFormTemplate>\n <form novalidate [formGroup]=\"myForm\">\n <sky-input-box labelTex=\"Title\" stacked=\"true\">\n <input formControlName=\"title\" type=\"text\" />\n </sky-input-box>\n <sky-input-box labelText=\"Note\">\n <input formControlName=\"note\" type=\"text\" />\n </sky-input-box>\n </form>\n</ng-template>\n"
|
|
1101
1101
|
},
|
|
1102
1102
|
{
|
|
1103
1103
|
"fileName": "inline-form-demo.component.ts",
|
|
@@ -1107,7 +1107,7 @@
|
|
|
1107
1107
|
{
|
|
1108
1108
|
"fileName": "inline-form-demo.module.ts",
|
|
1109
1109
|
"filePath": "/projects/inline-form/documentation/code-examples/inline-form/repeaters/inline-form-demo.module.ts",
|
|
1110
|
-
"rawContents": "import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport {
|
|
1110
|
+
"rawContents": "import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { SkyInputBoxModule } from '@skyux/forms';\nimport { SkyIconModule } from '@skyux/indicators';\nimport { SkyInlineFormModule } from '@skyux/inline-form';\nimport { SkyRepeaterModule } from '@skyux/lists';\nimport { SkyThemeModule } from '@skyux/theme';\n\nimport { InlineFormDemoComponent } from './inline-form-demo.component';\n\n@NgModule({\n imports: [\n CommonModule,\n ReactiveFormsModule,\n SkyIconModule,\n SkyInlineFormModule,\n SkyInputBoxModule,\n SkyRepeaterModule,\n SkyThemeModule,\n ],\n exports: [InlineFormDemoComponent],\n declarations: [InlineFormDemoComponent],\n})\nexport class InlineFormDemoModule {}\n"
|
|
1111
1111
|
}
|
|
1112
1112
|
]
|
|
1113
1113
|
}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
const SKY_TABBABLE_SELECTOR = [
|
|
4
|
+
'a[href]',
|
|
5
|
+
'area[href]',
|
|
6
|
+
"input:not([disabled]):not([tabindex='-1'])",
|
|
7
|
+
"button:not([disabled]):not([tabindex='-1'])",
|
|
8
|
+
"select:not([disabled]):not([tabindex='-1'])",
|
|
9
|
+
"textarea:not([disabled]):not([tabindex='-1'])",
|
|
10
|
+
'iframe',
|
|
11
|
+
'object',
|
|
12
|
+
'embed',
|
|
13
|
+
"*[tabindex]:not([tabindex='-1'])",
|
|
14
|
+
'*[contenteditable=true]',
|
|
15
|
+
].join(', ');
|
|
16
|
+
/**
|
|
17
|
+
* @internal
|
|
18
|
+
*/
|
|
19
|
+
export class SkyInlineFormAdapterService {
|
|
20
|
+
applyAutofocus(inlineFormElementRef) {
|
|
21
|
+
const inputWithAutofocus = inlineFormElementRef.nativeElement.querySelector('[autofocus]');
|
|
22
|
+
if (inputWithAutofocus) {
|
|
23
|
+
inputWithAutofocus.focus();
|
|
24
|
+
}
|
|
25
|
+
else {
|
|
26
|
+
const focusEl = inlineFormElementRef.nativeElement.querySelector('.sky-inline-form-content');
|
|
27
|
+
const focusableChildren = this.#loadFocusableChildren(focusEl);
|
|
28
|
+
this.#focusFirstElement(focusableChildren);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
#loadFocusableChildren(elem) {
|
|
32
|
+
const elements = Array.prototype.slice.call(elem.querySelectorAll(SKY_TABBABLE_SELECTOR));
|
|
33
|
+
return elements.filter((element) => {
|
|
34
|
+
return this.#isVisible(element);
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
#isVisible(element) {
|
|
38
|
+
const style = window.getComputedStyle(element);
|
|
39
|
+
const isHidden = style.display === 'none' || style.visibility === 'hidden';
|
|
40
|
+
if (isHidden) {
|
|
41
|
+
return false;
|
|
42
|
+
}
|
|
43
|
+
/* istanbul ignore next */
|
|
44
|
+
const hasBounds = !!(element.offsetWidth ||
|
|
45
|
+
element.offsetHeight ||
|
|
46
|
+
element.getClientRects().length);
|
|
47
|
+
return hasBounds;
|
|
48
|
+
}
|
|
49
|
+
#focusFirstElement(list) {
|
|
50
|
+
if (list.length > 0) {
|
|
51
|
+
list[0].focus();
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyInlineFormAdapterService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
55
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyInlineFormAdapterService }); }
|
|
56
|
+
}
|
|
57
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyInlineFormAdapterService, decorators: [{
|
|
58
|
+
type: Injectable
|
|
59
|
+
}] });
|
|
60
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5saW5lLWZvcm0tYWRhcHRlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2lubGluZS1mb3JtL3NyYy9saWIvbW9kdWxlcy9pbmxpbmUtZm9ybS9pbmxpbmUtZm9ybS1hZGFwdGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFjLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFFdkQsTUFBTSxxQkFBcUIsR0FBRztJQUM1QixTQUFTO0lBQ1QsWUFBWTtJQUNaLDRDQUE0QztJQUM1Qyw2Q0FBNkM7SUFDN0MsNkNBQTZDO0lBQzdDLCtDQUErQztJQUMvQyxRQUFRO0lBQ1IsUUFBUTtJQUNSLE9BQU87SUFDUCxrQ0FBa0M7SUFDbEMseUJBQXlCO0NBQzFCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0FBRWI7O0dBRUc7QUFFSCxNQUFNLE9BQU8sMkJBQTJCO0lBQy9CLGNBQWMsQ0FBQyxvQkFBZ0M7UUFDcEQsTUFBTSxrQkFBa0IsR0FDdEIsb0JBQW9CLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUVsRSxJQUFJLGtCQUFrQixFQUFFO1lBQ3RCLGtCQUFrQixDQUFDLEtBQUssRUFBRSxDQUFDO1NBQzVCO2FBQU07WUFDTCxNQUFNLE9BQU8sR0FDWCxvQkFBb0IsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUM5QywwQkFBMEIsQ0FDM0IsQ0FBQztZQUNKLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxDQUFDLHNCQUFzQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBRS9ELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1NBQzVDO0lBQ0gsQ0FBQztJQUVELHNCQUFzQixDQUFDLElBQWlCO1FBQ3RDLE1BQU0sUUFBUSxHQUF1QixLQUFLLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQzdELElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxxQkFBcUIsQ0FBQyxDQUM3QyxDQUFDO1FBRUYsT0FBTyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDakMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2xDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFVBQVUsQ0FBQyxPQUFvQjtRQUM3QixNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDL0MsTUFBTSxRQUFRLEdBQUcsS0FBSyxDQUFDLE9BQU8sS0FBSyxNQUFNLElBQUksS0FBSyxDQUFDLFVBQVUsS0FBSyxRQUFRLENBQUM7UUFDM0UsSUFBSSxRQUFRLEVBQUU7WUFDWixPQUFPLEtBQUssQ0FBQztTQUNkO1FBRUQsMEJBQTBCO1FBQzFCLE1BQU0sU0FBUyxHQUFHLENBQUMsQ0FBQyxDQUNsQixPQUFPLENBQUMsV0FBVztZQUNuQixPQUFPLENBQUMsWUFBWTtZQUNwQixPQUFPLENBQUMsY0FBYyxFQUFFLENBQUMsTUFBTSxDQUNoQyxDQUFDO1FBQ0YsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztJQUVELGtCQUFrQixDQUFDLElBQXdCO1FBQ3pDLElBQUksSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDbkIsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO1NBQ2pCO0lBQ0gsQ0FBQzs4R0FoRFUsMkJBQTJCO2tIQUEzQiwyQkFBMkI7OzJGQUEzQiwyQkFBMkI7a0JBRHZDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFbGVtZW50UmVmLCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmNvbnN0IFNLWV9UQUJCQUJMRV9TRUxFQ1RPUiA9IFtcbiAgJ2FbaHJlZl0nLFxuICAnYXJlYVtocmVmXScsXG4gIFwiaW5wdXQ6bm90KFtkaXNhYmxlZF0pOm5vdChbdGFiaW5kZXg9Jy0xJ10pXCIsXG4gIFwiYnV0dG9uOm5vdChbZGlzYWJsZWRdKTpub3QoW3RhYmluZGV4PSctMSddKVwiLFxuICBcInNlbGVjdDpub3QoW2Rpc2FibGVkXSk6bm90KFt0YWJpbmRleD0nLTEnXSlcIixcbiAgXCJ0ZXh0YXJlYTpub3QoW2Rpc2FibGVkXSk6bm90KFt0YWJpbmRleD0nLTEnXSlcIixcbiAgJ2lmcmFtZScsXG4gICdvYmplY3QnLFxuICAnZW1iZWQnLFxuICBcIipbdGFiaW5kZXhdOm5vdChbdGFiaW5kZXg9Jy0xJ10pXCIsXG4gICcqW2NvbnRlbnRlZGl0YWJsZT10cnVlXScsXG5dLmpvaW4oJywgJyk7XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBTa3lJbmxpbmVGb3JtQWRhcHRlclNlcnZpY2Uge1xuICBwdWJsaWMgYXBwbHlBdXRvZm9jdXMoaW5saW5lRm9ybUVsZW1lbnRSZWY6IEVsZW1lbnRSZWYpOiB2b2lkIHtcbiAgICBjb25zdCBpbnB1dFdpdGhBdXRvZm9jdXMgPVxuICAgICAgaW5saW5lRm9ybUVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCdbYXV0b2ZvY3VzXScpO1xuXG4gICAgaWYgKGlucHV0V2l0aEF1dG9mb2N1cykge1xuICAgICAgaW5wdXRXaXRoQXV0b2ZvY3VzLmZvY3VzKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IGZvY3VzRWw6IEhUTUxFbGVtZW50ID1cbiAgICAgICAgaW5saW5lRm9ybUVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKFxuICAgICAgICAgICcuc2t5LWlubGluZS1mb3JtLWNvbnRlbnQnXG4gICAgICAgICk7XG4gICAgICBjb25zdCBmb2N1c2FibGVDaGlsZHJlbiA9IHRoaXMuI2xvYWRGb2N1c2FibGVDaGlsZHJlbihmb2N1c0VsKTtcblxuICAgICAgdGhpcy4jZm9jdXNGaXJzdEVsZW1lbnQoZm9jdXNhYmxlQ2hpbGRyZW4pO1xuICAgIH1cbiAgfVxuXG4gICNsb2FkRm9jdXNhYmxlQ2hpbGRyZW4oZWxlbTogSFRNTEVsZW1lbnQpOiBIVE1MRWxlbWVudFtdIHtcbiAgICBjb25zdCBlbGVtZW50czogQXJyYXk8SFRNTEVsZW1lbnQ+ID0gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoXG4gICAgICBlbGVtLnF1ZXJ5U2VsZWN0b3JBbGwoU0tZX1RBQkJBQkxFX1NFTEVDVE9SKVxuICAgICk7XG5cbiAgICByZXR1cm4gZWxlbWVudHMuZmlsdGVyKChlbGVtZW50KSA9PiB7XG4gICAgICByZXR1cm4gdGhpcy4jaXNWaXNpYmxlKGVsZW1lbnQpO1xuICAgIH0pO1xuICB9XG5cbiAgI2lzVmlzaWJsZShlbGVtZW50OiBIVE1MRWxlbWVudCk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IHN0eWxlID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUoZWxlbWVudCk7XG4gICAgY29uc3QgaXNIaWRkZW4gPSBzdHlsZS5kaXNwbGF5ID09PSAnbm9uZScgfHwgc3R5bGUudmlzaWJpbGl0eSA9PT0gJ2hpZGRlbic7XG4gICAgaWYgKGlzSGlkZGVuKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgICBjb25zdCBoYXNCb3VuZHMgPSAhIShcbiAgICAgIGVsZW1lbnQub2Zmc2V0V2lkdGggfHxcbiAgICAgIGVsZW1lbnQub2Zmc2V0SGVpZ2h0IHx8XG4gICAgICBlbGVtZW50LmdldENsaWVudFJlY3RzKCkubGVuZ3RoXG4gICAgKTtcbiAgICByZXR1cm4gaGFzQm91bmRzO1xuICB9XG5cbiAgI2ZvY3VzRmlyc3RFbGVtZW50KGxpc3Q6IEFycmF5PEhUTUxFbGVtZW50Pik6IHZvaWQge1xuICAgIGlmIChsaXN0Lmxlbmd0aCA+IDApIHtcbiAgICAgIGxpc3RbMF0uZm9jdXMoKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,226 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, } from '@angular/core';
|
|
2
|
+
import { ReplaySubject, Subject, zip as observableZip } from 'rxjs';
|
|
3
|
+
import { takeUntil } from 'rxjs/operators';
|
|
4
|
+
import { skySlideDissolve } from './animations/slide-dissolve';
|
|
5
|
+
import { SkyInlineFormAdapterService } from './inline-form-adapter.service';
|
|
6
|
+
import { SkyInlineFormButtonLayout } from './types/inline-form-button-layout';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
import * as i1 from "./inline-form-adapter.service";
|
|
9
|
+
import * as i2 from "@skyux/i18n";
|
|
10
|
+
import * as i3 from "@skyux/core";
|
|
11
|
+
import * as i4 from "@angular/common";
|
|
12
|
+
/**
|
|
13
|
+
* Renders form content in the current view instead of a separate modal.
|
|
14
|
+
*/
|
|
15
|
+
export class SkyInlineFormComponent {
|
|
16
|
+
/**
|
|
17
|
+
* Configuration options for the buttons to display with the inline form.
|
|
18
|
+
* @required
|
|
19
|
+
*/
|
|
20
|
+
set config(value) {
|
|
21
|
+
if (value !== this.#_config && !!value) {
|
|
22
|
+
this.#_config = value;
|
|
23
|
+
this.#setupButtons();
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
get config() {
|
|
27
|
+
return this.#_config;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Whether to display the inline form. Users can toggle between displaying
|
|
31
|
+
* and hiding the inline form.
|
|
32
|
+
* @default false
|
|
33
|
+
*/
|
|
34
|
+
set showForm(value) {
|
|
35
|
+
this.#_showForm = value;
|
|
36
|
+
/* istanbul ignore else */
|
|
37
|
+
if (value) {
|
|
38
|
+
// setTimeout() prevents applyAutofocus() from firing
|
|
39
|
+
// until after *ngIf has added the form element to the DOM.
|
|
40
|
+
this.#skyAppWindowRef.nativeWindow.setTimeout(() => {
|
|
41
|
+
this.#adapter.applyAutofocus(this.#elementRef);
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
get showForm() {
|
|
46
|
+
return this.#_showForm;
|
|
47
|
+
}
|
|
48
|
+
#_config;
|
|
49
|
+
#_showForm;
|
|
50
|
+
#ngUnsubscribe;
|
|
51
|
+
#adapter;
|
|
52
|
+
#elementRef;
|
|
53
|
+
#resourcesService;
|
|
54
|
+
#skyAppWindowRef;
|
|
55
|
+
#changeDetectorRef;
|
|
56
|
+
constructor(adapter, elementRef, resourcesService, skyAppWindowRef, changeDetectorRef) {
|
|
57
|
+
/**
|
|
58
|
+
* Fires when users close the inline form.
|
|
59
|
+
*/
|
|
60
|
+
this.close = new EventEmitter();
|
|
61
|
+
this.#_showForm = false;
|
|
62
|
+
this.#ngUnsubscribe = new Subject();
|
|
63
|
+
this.#adapter = adapter;
|
|
64
|
+
this.#elementRef = elementRef;
|
|
65
|
+
this.#resourcesService = resourcesService;
|
|
66
|
+
this.#skyAppWindowRef = skyAppWindowRef;
|
|
67
|
+
this.#changeDetectorRef = changeDetectorRef;
|
|
68
|
+
}
|
|
69
|
+
ngOnInit() {
|
|
70
|
+
this.#setupButtons();
|
|
71
|
+
}
|
|
72
|
+
ngOnDestroy() {
|
|
73
|
+
this.#ngUnsubscribe.next();
|
|
74
|
+
this.#ngUnsubscribe.complete();
|
|
75
|
+
this.close.complete();
|
|
76
|
+
}
|
|
77
|
+
closeInlineForm(event) {
|
|
78
|
+
const args = {
|
|
79
|
+
reason: event.action,
|
|
80
|
+
};
|
|
81
|
+
this.close.emit(args);
|
|
82
|
+
}
|
|
83
|
+
#setupButtons() {
|
|
84
|
+
if (this.#isValidCustomConfig(this.config) &&
|
|
85
|
+
this.config &&
|
|
86
|
+
this.config.buttons) {
|
|
87
|
+
this.buttons = this.#getCustomButtons(this.config.buttons);
|
|
88
|
+
this.#changeDetectorRef.markForCheck();
|
|
89
|
+
return;
|
|
90
|
+
}
|
|
91
|
+
this.#getPresetButtons()
|
|
92
|
+
.pipe(takeUntil(this.#ngUnsubscribe))
|
|
93
|
+
.subscribe((buttons) => {
|
|
94
|
+
this.buttons = buttons;
|
|
95
|
+
this.#changeDetectorRef.markForCheck();
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
#getPresetButtons() {
|
|
99
|
+
const emitter = new ReplaySubject(1);
|
|
100
|
+
const buttonType = this.config
|
|
101
|
+
? this.config.buttonLayout
|
|
102
|
+
: SkyInlineFormButtonLayout.DoneCancel;
|
|
103
|
+
switch (buttonType) {
|
|
104
|
+
/* istanbul ignore next */
|
|
105
|
+
default:
|
|
106
|
+
case SkyInlineFormButtonLayout.DoneCancel:
|
|
107
|
+
observableZip(this.#resourcesService.getString('skyux_inline_form_button_done'), this.#resourcesService.getString('skyux_inline_form_button_cancel'))
|
|
108
|
+
.pipe(takeUntil(this.#ngUnsubscribe))
|
|
109
|
+
.subscribe((values) => {
|
|
110
|
+
emitter.next([
|
|
111
|
+
{
|
|
112
|
+
text: values[0],
|
|
113
|
+
styleType: 'primary',
|
|
114
|
+
action: 'done',
|
|
115
|
+
},
|
|
116
|
+
{
|
|
117
|
+
text: values[1],
|
|
118
|
+
styleType: 'link',
|
|
119
|
+
action: 'cancel',
|
|
120
|
+
},
|
|
121
|
+
]);
|
|
122
|
+
});
|
|
123
|
+
break;
|
|
124
|
+
case SkyInlineFormButtonLayout.SaveCancel:
|
|
125
|
+
observableZip(this.#resourcesService.getString('skyux_inline_form_button_save'), this.#resourcesService.getString('skyux_inline_form_button_cancel'))
|
|
126
|
+
.pipe(takeUntil(this.#ngUnsubscribe))
|
|
127
|
+
.subscribe((values) => {
|
|
128
|
+
emitter.next([
|
|
129
|
+
{
|
|
130
|
+
text: values[0],
|
|
131
|
+
styleType: 'primary',
|
|
132
|
+
action: 'save',
|
|
133
|
+
},
|
|
134
|
+
{
|
|
135
|
+
text: values[1],
|
|
136
|
+
styleType: 'link',
|
|
137
|
+
action: 'cancel',
|
|
138
|
+
},
|
|
139
|
+
]);
|
|
140
|
+
});
|
|
141
|
+
break;
|
|
142
|
+
case SkyInlineFormButtonLayout.DoneDeleteCancel:
|
|
143
|
+
observableZip(this.#resourcesService.getString('skyux_inline_form_button_done'), this.#resourcesService.getString('skyux_inline_form_button_delete'), this.#resourcesService.getString('skyux_inline_form_button_cancel'))
|
|
144
|
+
.pipe(takeUntil(this.#ngUnsubscribe))
|
|
145
|
+
.subscribe((values) => {
|
|
146
|
+
emitter.next([
|
|
147
|
+
{
|
|
148
|
+
text: values[0],
|
|
149
|
+
styleType: 'primary',
|
|
150
|
+
action: 'done',
|
|
151
|
+
},
|
|
152
|
+
{
|
|
153
|
+
text: values[1],
|
|
154
|
+
styleType: 'default',
|
|
155
|
+
action: 'delete',
|
|
156
|
+
},
|
|
157
|
+
{
|
|
158
|
+
text: values[2],
|
|
159
|
+
styleType: 'link',
|
|
160
|
+
action: 'cancel',
|
|
161
|
+
},
|
|
162
|
+
]);
|
|
163
|
+
});
|
|
164
|
+
break;
|
|
165
|
+
case SkyInlineFormButtonLayout.SaveDeleteCancel:
|
|
166
|
+
observableZip(this.#resourcesService.getString('skyux_inline_form_button_save'), this.#resourcesService.getString('skyux_inline_form_button_delete'), this.#resourcesService.getString('skyux_inline_form_button_cancel'))
|
|
167
|
+
.pipe(takeUntil(this.#ngUnsubscribe))
|
|
168
|
+
.subscribe((values) => {
|
|
169
|
+
emitter.next([
|
|
170
|
+
{
|
|
171
|
+
text: values[0],
|
|
172
|
+
styleType: 'primary',
|
|
173
|
+
action: 'save',
|
|
174
|
+
},
|
|
175
|
+
{
|
|
176
|
+
text: values[1],
|
|
177
|
+
styleType: 'default',
|
|
178
|
+
action: 'delete',
|
|
179
|
+
},
|
|
180
|
+
{
|
|
181
|
+
text: values[2],
|
|
182
|
+
styleType: 'link',
|
|
183
|
+
action: 'cancel',
|
|
184
|
+
},
|
|
185
|
+
]);
|
|
186
|
+
});
|
|
187
|
+
break;
|
|
188
|
+
}
|
|
189
|
+
return emitter.asObservable();
|
|
190
|
+
}
|
|
191
|
+
#getCustomButtons(buttonConfigs) {
|
|
192
|
+
const buttons = [];
|
|
193
|
+
buttonConfigs.forEach((config) => {
|
|
194
|
+
/* istanbul ignore next */
|
|
195
|
+
const styleType = config.styleType || 'default';
|
|
196
|
+
buttons.push({
|
|
197
|
+
action: config.action,
|
|
198
|
+
disabled: config.disabled,
|
|
199
|
+
styleType: styleType,
|
|
200
|
+
text: config.text,
|
|
201
|
+
});
|
|
202
|
+
});
|
|
203
|
+
return buttons;
|
|
204
|
+
}
|
|
205
|
+
#isValidCustomConfig(config) {
|
|
206
|
+
return (!!config &&
|
|
207
|
+
!!config.buttons &&
|
|
208
|
+
config.buttons.length > 0 &&
|
|
209
|
+
config.buttonLayout === SkyInlineFormButtonLayout.Custom);
|
|
210
|
+
}
|
|
211
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyInlineFormComponent, deps: [{ token: i1.SkyInlineFormAdapterService }, { token: i0.ElementRef }, { token: i2.SkyLibResourcesService }, { token: i3.SkyAppWindowRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
212
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: SkyInlineFormComponent, selector: "sky-inline-form", inputs: { config: "config", template: "template", showForm: "showForm" }, outputs: { close: "close" }, providers: [SkyInlineFormAdapterService], ngImport: i0, template: "<div [@skySlideDissolve]=\"showForm\">\n <div *ngIf=\"!showForm\" class=\"sky-slide-dissolve-first\">\n <ng-content></ng-content>\n </div>\n\n <div *ngIf=\"template && showForm\" class=\"sky-slide-dissolve-last\">\n <div class=\"sky-inline-form sky-shadow sky-box sky-elevation-3\">\n <div class=\"sky-inline-form-content\">\n <ng-container [ngTemplateOutlet]=\"template\"> </ng-container>\n </div>\n <div class=\"sky-inline-form-footer\">\n <button\n *ngFor=\"let button of buttons\"\n class=\"sky-btn {{ 'sky-btn-' + button.styleType }}\"\n type=\"button\"\n [disabled]=\"button.disabled ? true : null\"\n [ngClass]=\"{ 'sky-btn-disabled': button.disabled }\"\n (click)=\"closeInlineForm(button)\"\n >\n {{ button.text }}\n </button>\n </div>\n </div>\n </div>\n</div>\n", styles: [".sky-inline-form{background:#eeeeef;border:1px solid #cdcfd2;padding:10px;width:100%}.sky-inline-form .sky-inline-form-footer{margin-top:20px}.sky-inline-form .sky-inline-form-footer button{margin:0 5px 0 0}:host-context(.sky-theme-modern) .sky-inline-form{background-color:#fff;border:none;padding:15px}:host-context(.sky-theme-modern) .sky-inline-form .sky-inline-form-footer{margin-top:30px}:host-context(.sky-theme-modern) .sky-inline-form .sky-inline-form-footer button{margin-right:10px}.sky-theme-modern .sky-inline-form{background-color:#fff;border:none;padding:15px}.sky-theme-modern .sky-inline-form .sky-inline-form-footer{margin-top:30px}.sky-theme-modern .sky-inline-form .sky-inline-form-footer button{margin-right:10px}:host-context(.sky-theme-modern.sky-theme-mode-dark) .sky-inline-form{background-color:#232427}.sky-theme-modern.sky-theme-mode-dark .sky-inline-form{background-color:#232427}\n"], dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], animations: [skySlideDissolve], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
213
|
+
}
|
|
214
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyInlineFormComponent, decorators: [{
|
|
215
|
+
type: Component,
|
|
216
|
+
args: [{ selector: 'sky-inline-form', changeDetection: ChangeDetectionStrategy.OnPush, providers: [SkyInlineFormAdapterService], animations: [skySlideDissolve], template: "<div [@skySlideDissolve]=\"showForm\">\n <div *ngIf=\"!showForm\" class=\"sky-slide-dissolve-first\">\n <ng-content></ng-content>\n </div>\n\n <div *ngIf=\"template && showForm\" class=\"sky-slide-dissolve-last\">\n <div class=\"sky-inline-form sky-shadow sky-box sky-elevation-3\">\n <div class=\"sky-inline-form-content\">\n <ng-container [ngTemplateOutlet]=\"template\"> </ng-container>\n </div>\n <div class=\"sky-inline-form-footer\">\n <button\n *ngFor=\"let button of buttons\"\n class=\"sky-btn {{ 'sky-btn-' + button.styleType }}\"\n type=\"button\"\n [disabled]=\"button.disabled ? true : null\"\n [ngClass]=\"{ 'sky-btn-disabled': button.disabled }\"\n (click)=\"closeInlineForm(button)\"\n >\n {{ button.text }}\n </button>\n </div>\n </div>\n </div>\n</div>\n", styles: [".sky-inline-form{background:#eeeeef;border:1px solid #cdcfd2;padding:10px;width:100%}.sky-inline-form .sky-inline-form-footer{margin-top:20px}.sky-inline-form .sky-inline-form-footer button{margin:0 5px 0 0}:host-context(.sky-theme-modern) .sky-inline-form{background-color:#fff;border:none;padding:15px}:host-context(.sky-theme-modern) .sky-inline-form .sky-inline-form-footer{margin-top:30px}:host-context(.sky-theme-modern) .sky-inline-form .sky-inline-form-footer button{margin-right:10px}.sky-theme-modern .sky-inline-form{background-color:#fff;border:none;padding:15px}.sky-theme-modern .sky-inline-form .sky-inline-form-footer{margin-top:30px}.sky-theme-modern .sky-inline-form .sky-inline-form-footer button{margin-right:10px}:host-context(.sky-theme-modern.sky-theme-mode-dark) .sky-inline-form{background-color:#232427}.sky-theme-modern.sky-theme-mode-dark .sky-inline-form{background-color:#232427}\n"] }]
|
|
217
|
+
}], ctorParameters: function () { return [{ type: i1.SkyInlineFormAdapterService }, { type: i0.ElementRef }, { type: i2.SkyLibResourcesService }, { type: i3.SkyAppWindowRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { config: [{
|
|
218
|
+
type: Input
|
|
219
|
+
}], template: [{
|
|
220
|
+
type: Input
|
|
221
|
+
}], showForm: [{
|
|
222
|
+
type: Input
|
|
223
|
+
}], close: [{
|
|
224
|
+
type: Output
|
|
225
|
+
}] } });
|
|
226
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5saW5lLWZvcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2lubGluZS1mb3JtL3NyYy9saWIvbW9kdWxlcy9pbmxpbmUtZm9ybS9pbmxpbmUtZm9ybS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvaW5saW5lLWZvcm0vc3JjL2xpYi9tb2R1bGVzL2lubGluZS1mb3JtL2lubGluZS1mb3JtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUVULFlBQVksRUFDWixLQUFLLEVBR0wsTUFBTSxHQUVQLE1BQU0sZUFBZSxDQUFDO0FBSXZCLE9BQU8sRUFBYyxhQUFhLEVBQUUsT0FBTyxFQUFFLEdBQUcsSUFBSSxhQUFhLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDaEYsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTNDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQy9ELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBRTVFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOzs7Ozs7QUFJOUU7O0dBRUc7QUFTSCxNQUFNLE9BQU8sc0JBQXNCO0lBQ2pDOzs7T0FHRztJQUNILElBQ1csTUFBTSxDQUFDLEtBQXNDO1FBQ3RELElBQUksS0FBSyxLQUFLLElBQUksQ0FBQyxRQUFRLElBQUksQ0FBQyxDQUFDLEtBQUssRUFBRTtZQUN0QyxJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztZQUN0QixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7U0FDdEI7SUFDSCxDQUFDO0lBRUQsSUFBVyxNQUFNO1FBQ2YsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3ZCLENBQUM7SUFTRDs7OztPQUlHO0lBQ0gsSUFDVyxRQUFRLENBQUMsS0FBMEI7UUFDNUMsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7UUFFeEIsMEJBQTBCO1FBQzFCLElBQUksS0FBSyxFQUFFO1lBQ1QscURBQXFEO1lBQ3JELDJEQUEyRDtZQUMzRCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUU7Z0JBQ2pELElBQUksQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUNqRCxDQUFDLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQztJQUVELElBQVcsUUFBUTtRQUNqQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUM7SUFDekIsQ0FBQztJQVlELFFBQVEsQ0FBa0M7SUFFMUMsVUFBVSxDQUE4QjtJQUV4QyxjQUFjLENBQXVCO0lBRXJDLFFBQVEsQ0FBOEI7SUFDdEMsV0FBVyxDQUFhO0lBQ3hCLGlCQUFpQixDQUF5QjtJQUMxQyxnQkFBZ0IsQ0FBa0I7SUFDbEMsa0JBQWtCLENBQW9CO0lBRXRDLFlBQ0UsT0FBb0MsRUFDcEMsVUFBc0IsRUFDdEIsZ0JBQXdDLEVBQ3hDLGVBQWdDLEVBQ2hDLGlCQUFvQztRQTNCdEM7O1dBRUc7UUFHSSxVQUFLLEdBQUcsSUFBSSxZQUFZLEVBQTBCLENBQUM7UUFPMUQsZUFBVSxHQUF3QixLQUFLLENBQUM7UUFFeEMsbUJBQWMsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBZW5DLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxXQUFXLEdBQUcsVUFBVSxDQUFDO1FBQzlCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxnQkFBZ0IsQ0FBQztRQUMxQyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsZUFBZSxDQUFDO1FBQ3hDLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxpQkFBaUIsQ0FBQztJQUM5QyxDQUFDO0lBRU0sUUFBUTtRQUNiLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQzNCLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxFQUFFLENBQUM7UUFFL0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRU0sZUFBZSxDQUFDLEtBQWdDO1FBQ3JELE1BQU0sSUFBSSxHQUEyQjtZQUNuQyxNQUFNLEVBQUUsS0FBSyxDQUFDLE1BQU07U0FDckIsQ0FBQztRQUNGLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxhQUFhO1FBQ1gsSUFDRSxJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztZQUN0QyxJQUFJLENBQUMsTUFBTTtZQUNYLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUNuQjtZQUNBLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDM0QsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3ZDLE9BQU87U0FDUjtRQUVELElBQUksQ0FBQyxpQkFBaUIsRUFBRTthQUNyQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQzthQUNwQyxTQUFTLENBQUMsQ0FBQyxPQUFvQyxFQUFFLEVBQUU7WUFDbEQsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7WUFDdkIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3pDLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELGlCQUFpQjtRQUNmLE1BQU0sT0FBTyxHQUFHLElBQUksYUFBYSxDQUE4QixDQUFDLENBQUMsQ0FBQztRQUVsRSxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsTUFBTTtZQUM1QixDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZO1lBQzFCLENBQUMsQ0FBQyx5QkFBeUIsQ0FBQyxVQUFVLENBQUM7UUFFekMsUUFBUSxVQUFVLEVBQUU7WUFDbEIsMEJBQTBCO1lBQzFCLFFBQVE7WUFDUixLQUFLLHlCQUF5QixDQUFDLFVBQVU7Z0JBQ3ZDLGFBQWEsQ0FDWCxJQUFJLENBQUMsaUJBQWlCLENBQUMsU0FBUyxDQUFDLCtCQUErQixDQUFDLEVBQ2pFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLENBQUMsaUNBQWlDLENBQUMsQ0FDcEU7cUJBQ0UsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7cUJBQ3BDLFNBQVMsQ0FBQyxDQUFDLE1BQWdCLEVBQUUsRUFBRTtvQkFDOUIsT0FBTyxDQUFDLElBQUksQ0FBQzt3QkFDWDs0QkFDRSxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQzs0QkFDZixTQUFTLEVBQUUsU0FBUzs0QkFDcEIsTUFBTSxFQUFFLE1BQU07eUJBQ2Y7d0JBQ0Q7NEJBQ0UsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUM7NEJBQ2YsU0FBUyxFQUFFLE1BQU07NEJBQ2pCLE1BQU0sRUFBRSxRQUFRO3lCQUNqQjtxQkFDRixDQUFDLENBQUM7Z0JBQ0wsQ0FBQyxDQUFDLENBQUM7Z0JBQ0wsTUFBTTtZQUVSLEtBQUsseUJBQXlCLENBQUMsVUFBVTtnQkFDdkMsYUFBYSxDQUNYLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLENBQUMsK0JBQStCLENBQUMsRUFDakUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxpQ0FBaUMsQ0FBQyxDQUNwRTtxQkFDRSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztxQkFDcEMsU0FBUyxDQUFDLENBQUMsTUFBZ0IsRUFBRSxFQUFFO29CQUM5QixPQUFPLENBQUMsSUFBSSxDQUFDO3dCQUNYOzRCQUNFLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDOzRCQUNmLFNBQVMsRUFBRSxTQUFTOzRCQUNwQixNQUFNLEVBQUUsTUFBTTt5QkFDZjt3QkFDRDs0QkFDRSxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQzs0QkFDZixTQUFTLEVBQUUsTUFBTTs0QkFDakIsTUFBTSxFQUFFLFFBQVE7eUJBQ2pCO3FCQUNGLENBQUMsQ0FBQztnQkFDTCxDQUFDLENBQUMsQ0FBQztnQkFDTCxNQUFNO1lBRVIsS0FBSyx5QkFBeUIsQ0FBQyxnQkFBZ0I7Z0JBQzdDLGFBQWEsQ0FDWCxJQUFJLENBQUMsaUJBQWlCLENBQUMsU0FBUyxDQUFDLCtCQUErQixDQUFDLEVBQ2pFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLENBQUMsaUNBQWlDLENBQUMsRUFDbkUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxpQ0FBaUMsQ0FBQyxDQUNwRTtxQkFDRSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztxQkFDcEMsU0FBUyxDQUFDLENBQUMsTUFBZ0IsRUFBRSxFQUFFO29CQUM5QixPQUFPLENBQUMsSUFBSSxDQUFDO3dCQUNYOzRCQUNFLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDOzRCQUNmLFNBQVMsRUFBRSxTQUFTOzRCQUNwQixNQUFNLEVBQUUsTUFBTTt5QkFDZjt3QkFDRDs0QkFDRSxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQzs0QkFDZixTQUFTLEVBQUUsU0FBUzs0QkFDcEIsTUFBTSxFQUFFLFFBQVE7eUJBQ2pCO3dCQUNEOzRCQUNFLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDOzRCQUNmLFNBQVMsRUFBRSxNQUFNOzRCQUNqQixNQUFNLEVBQUUsUUFBUTt5QkFDakI7cUJBQ0YsQ0FBQyxDQUFDO2dCQUNMLENBQUMsQ0FBQyxDQUFDO2dCQUNMLE1BQU07WUFFUixLQUFLLHlCQUF5QixDQUFDLGdCQUFnQjtnQkFDN0MsYUFBYSxDQUNYLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLENBQUMsK0JBQStCLENBQUMsRUFDakUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxpQ0FBaUMsQ0FBQyxFQUNuRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsU0FBUyxDQUFDLGlDQUFpQyxDQUFDLENBQ3BFO3FCQUNFLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO3FCQUNwQyxTQUFTLENBQUMsQ0FBQyxNQUFnQixFQUFFLEVBQUU7b0JBQzlCLE9BQU8sQ0FBQyxJQUFJLENBQUM7d0JBQ1g7NEJBQ0UsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUM7NEJBQ2YsU0FBUyxFQUFFLFNBQVM7NEJBQ3BCLE1BQU0sRUFBRSxNQUFNO3lCQUNmO3dCQUNEOzRCQUNFLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDOzRCQUNmLFNBQVMsRUFBRSxTQUFTOzRCQUNwQixNQUFNLEVBQUUsUUFBUTt5QkFDakI7d0JBQ0Q7NEJBQ0UsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUM7NEJBQ2YsU0FBUyxFQUFFLE1BQU07NEJBQ2pCLE1BQU0sRUFBRSxRQUFRO3lCQUNqQjtxQkFDRixDQUFDLENBQUM7Z0JBQ0wsQ0FBQyxDQUFDLENBQUM7Z0JBQ0wsTUFBTTtTQUNUO1FBRUQsT0FBTyxPQUFPLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDaEMsQ0FBQztJQUVELGlCQUFpQixDQUNmLGFBQTBDO1FBRTFDLE1BQU0sT0FBTyxHQUFnQyxFQUFFLENBQUM7UUFFaEQsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQWlDLEVBQUUsRUFBRTtZQUMxRCwwQkFBMEI7WUFDMUIsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLFNBQVMsSUFBSSxTQUFTLENBQUM7WUFFaEQsT0FBTyxDQUFDLElBQUksQ0FBQztnQkFDWCxNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU07Z0JBQ3JCLFFBQVEsRUFBRSxNQUFNLENBQUMsUUFBUTtnQkFDekIsU0FBUyxFQUFFLFNBQVM7Z0JBQ3BCLElBQUksRUFBRSxNQUFNLENBQUMsSUFBSTthQUNXLENBQUMsQ0FBQztRQUNsQyxDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxNQUF1QztRQUMxRCxPQUFPLENBQ0wsQ0FBQyxDQUFDLE1BQU07WUFDUixDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU87WUFDaEIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEdBQUcsQ0FBQztZQUN6QixNQUFNLENBQUMsWUFBWSxLQUFLLHlCQUF5QixDQUFDLE1BQU0sQ0FDekQsQ0FBQztJQUNKLENBQUM7OEdBclFVLHNCQUFzQjtrR0FBdEIsc0JBQXNCLGlKQUh0QixDQUFDLDJCQUEyQixDQUFDLDBCQ2pDMUMsazRCQXlCQSxpNkNEU2MsQ0FBQyxnQkFBZ0IsQ0FBQzs7MkZBRW5CLHNCQUFzQjtrQkFSbEMsU0FBUzsrQkFDRSxpQkFBaUIsbUJBR1YsdUJBQXVCLENBQUMsTUFBTSxhQUNwQyxDQUFDLDJCQUEyQixDQUFDLGNBQzVCLENBQUMsZ0JBQWdCLENBQUM7OE9BUW5CLE1BQU07c0JBRGhCLEtBQUs7Z0JBaUJDLFFBQVE7c0JBRGQsS0FBSztnQkFTSyxRQUFRO3NCQURsQixLQUFLO2dCQXVCQyxLQUFLO3NCQUZYLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgVGVtcGxhdGVSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2t5QXBwV2luZG93UmVmIH0gZnJvbSAnQHNreXV4L2NvcmUnO1xuaW1wb3J0IHsgU2t5TGliUmVzb3VyY2VzU2VydmljZSB9IGZyb20gJ0Bza3l1eC9pMThuJztcblxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgUmVwbGF5U3ViamVjdCwgU3ViamVjdCwgemlwIGFzIG9ic2VydmFibGVaaXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgc2t5U2xpZGVEaXNzb2x2ZSB9IGZyb20gJy4vYW5pbWF0aW9ucy9zbGlkZS1kaXNzb2x2ZSc7XG5pbXBvcnQgeyBTa3lJbmxpbmVGb3JtQWRhcHRlclNlcnZpY2UgfSBmcm9tICcuL2lubGluZS1mb3JtLWFkYXB0ZXIuc2VydmljZSc7XG5pbXBvcnQgeyBTa3lJbmxpbmVGb3JtQnV0dG9uQ29uZmlnIH0gZnJvbSAnLi90eXBlcy9pbmxpbmUtZm9ybS1idXR0b24tY29uZmlnJztcbmltcG9ydCB7IFNreUlubGluZUZvcm1CdXR0b25MYXlvdXQgfSBmcm9tICcuL3R5cGVzL2lubGluZS1mb3JtLWJ1dHRvbi1sYXlvdXQnO1xuaW1wb3J0IHsgU2t5SW5saW5lRm9ybUNsb3NlQXJncyB9IGZyb20gJy4vdHlwZXMvaW5saW5lLWZvcm0tY2xvc2UtYXJncyc7XG5pbXBvcnQgeyBTa3lJbmxpbmVGb3JtQ29uZmlnIH0gZnJvbSAnLi90eXBlcy9pbmxpbmUtZm9ybS1jb25maWcnO1xuXG4vKipcbiAqIFJlbmRlcnMgZm9ybSBjb250ZW50IGluIHRoZSBjdXJyZW50IHZpZXcgaW5zdGVhZCBvZiBhIHNlcGFyYXRlIG1vZGFsLlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdza3ktaW5saW5lLWZvcm0nLFxuICB0ZW1wbGF0ZVVybDogJy4vaW5saW5lLWZvcm0uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9pbmxpbmUtZm9ybS5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgcHJvdmlkZXJzOiBbU2t5SW5saW5lRm9ybUFkYXB0ZXJTZXJ2aWNlXSxcbiAgYW5pbWF0aW9uczogW3NreVNsaWRlRGlzc29sdmVdLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lJbmxpbmVGb3JtQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAvKipcbiAgICogQ29uZmlndXJhdGlvbiBvcHRpb25zIGZvciB0aGUgYnV0dG9ucyB0byBkaXNwbGF5IHdpdGggdGhlIGlubGluZSBmb3JtLlxuICAgKiBAcmVxdWlyZWRcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgY29uZmlnKHZhbHVlOiBTa3lJbmxpbmVGb3JtQ29uZmlnIHwgdW5kZWZpbmVkKSB7XG4gICAgaWYgKHZhbHVlICE9PSB0aGlzLiNfY29uZmlnICYmICEhdmFsdWUpIHtcbiAgICAgIHRoaXMuI19jb25maWcgPSB2YWx1ZTtcbiAgICAgIHRoaXMuI3NldHVwQnV0dG9ucygpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXQgY29uZmlnKCk6IFNreUlubGluZUZvcm1Db25maWcgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLiNfY29uZmlnO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSB0ZW1wbGF0ZSB0byBpbnN0YW50aWF0ZSB0aGUgaW5saW5lIGZvcm0uXG4gICAqIEByZXF1aXJlZFxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjx1bmtub3duPiB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogV2hldGhlciB0byBkaXNwbGF5IHRoZSBpbmxpbmUgZm9ybS4gVXNlcnMgY2FuIHRvZ2dsZSBiZXR3ZWVuIGRpc3BsYXlpbmdcbiAgICogYW5kIGhpZGluZyB0aGUgaW5saW5lIGZvcm0uXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IHNob3dGb3JtKHZhbHVlOiBib29sZWFuIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy4jX3Nob3dGb3JtID0gdmFsdWU7XG5cbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgIGlmICh2YWx1ZSkge1xuICAgICAgLy8gc2V0VGltZW91dCgpIHByZXZlbnRzIGFwcGx5QXV0b2ZvY3VzKCkgZnJvbSBmaXJpbmdcbiAgICAgIC8vIHVudGlsIGFmdGVyICpuZ0lmIGhhcyBhZGRlZCB0aGUgZm9ybSBlbGVtZW50IHRvIHRoZSBET00uXG4gICAgICB0aGlzLiNza3lBcHBXaW5kb3dSZWYubmF0aXZlV2luZG93LnNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLiNhZGFwdGVyLmFwcGx5QXV0b2ZvY3VzKHRoaXMuI2VsZW1lbnRSZWYpO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldCBzaG93Rm9ybSgpOiBib29sZWFuIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy4jX3Nob3dGb3JtO1xuICB9XG5cbiAgLyoqXG4gICAqIEZpcmVzIHdoZW4gdXNlcnMgY2xvc2UgdGhlIGlubGluZSBmb3JtLlxuICAgKi9cbiAgQE91dHB1dCgpXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8tb3V0cHV0LW5hdGl2ZVxuICBwdWJsaWMgY2xvc2UgPSBuZXcgRXZlbnRFbWl0dGVyPFNreUlubGluZUZvcm1DbG9zZUFyZ3M+KCk7XG5cbiAgLy8gVE9ETzogaGFuZGxlIGJ1dHRvbnMgYmVpbmcgc2V0IGFzeW5jaHJvbm91c2x5IChcInwgdW5kZWZpbmVkXCIpIHdoZW4gc2V0dGluZyBhdXRvZm9jdXNcbiAgcHVibGljIGJ1dHRvbnMhOiBTa3lJbmxpbmVGb3JtQnV0dG9uQ29uZmlnW107XG5cbiAgI19jb25maWc6IFNreUlubGluZUZvcm1Db25maWcgfCB1bmRlZmluZWQ7XG5cbiAgI19zaG93Rm9ybTogYm9vbGVhbiB8IHVuZGVmaW5lZCA9IGZhbHNlO1xuXG4gICNuZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAjYWRhcHRlcjogU2t5SW5saW5lRm9ybUFkYXB0ZXJTZXJ2aWNlO1xuICAjZWxlbWVudFJlZjogRWxlbWVudFJlZjtcbiAgI3Jlc291cmNlc1NlcnZpY2U6IFNreUxpYlJlc291cmNlc1NlcnZpY2U7XG4gICNza3lBcHBXaW5kb3dSZWY6IFNreUFwcFdpbmRvd1JlZjtcbiAgI2NoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBhZGFwdGVyOiBTa3lJbmxpbmVGb3JtQWRhcHRlclNlcnZpY2UsXG4gICAgZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICByZXNvdXJjZXNTZXJ2aWNlOiBTa3lMaWJSZXNvdXJjZXNTZXJ2aWNlLFxuICAgIHNreUFwcFdpbmRvd1JlZjogU2t5QXBwV2luZG93UmVmLFxuICAgIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZlxuICApIHtcbiAgICB0aGlzLiNhZGFwdGVyID0gYWRhcHRlcjtcbiAgICB0aGlzLiNlbGVtZW50UmVmID0gZWxlbWVudFJlZjtcbiAgICB0aGlzLiNyZXNvdXJjZXNTZXJ2aWNlID0gcmVzb3VyY2VzU2VydmljZTtcbiAgICB0aGlzLiNza3lBcHBXaW5kb3dSZWYgPSBza3lBcHBXaW5kb3dSZWY7XG4gICAgdGhpcy4jY2hhbmdlRGV0ZWN0b3JSZWYgPSBjaGFuZ2VEZXRlY3RvclJlZjtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLiNzZXR1cEJ1dHRvbnMoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLiNuZ1Vuc3Vic2NyaWJlLm5leHQoKTtcbiAgICB0aGlzLiNuZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKCk7XG5cbiAgICB0aGlzLmNsb3NlLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwdWJsaWMgY2xvc2VJbmxpbmVGb3JtKGV2ZW50OiBTa3lJbmxpbmVGb3JtQnV0dG9uQ29uZmlnKTogdm9pZCB7XG4gICAgY29uc3QgYXJnczogU2t5SW5saW5lRm9ybUNsb3NlQXJncyA9IHtcbiAgICAgIHJlYXNvbjogZXZlbnQuYWN0aW9uLFxuICAgIH07XG4gICAgdGhpcy5jbG9zZS5lbWl0KGFyZ3MpO1xuICB9XG5cbiAgI3NldHVwQnV0dG9ucygpOiB2b2lkIHtcbiAgICBpZiAoXG4gICAgICB0aGlzLiNpc1ZhbGlkQ3VzdG9tQ29uZmlnKHRoaXMuY29uZmlnKSAmJlxuICAgICAgdGhpcy5jb25maWcgJiZcbiAgICAgIHRoaXMuY29uZmlnLmJ1dHRvbnNcbiAgICApIHtcbiAgICAgIHRoaXMuYnV0dG9ucyA9IHRoaXMuI2dldEN1c3RvbUJ1dHRvbnModGhpcy5jb25maWcuYnV0dG9ucyk7XG4gICAgICB0aGlzLiNjaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLiNnZXRQcmVzZXRCdXR0b25zKClcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLiNuZ1Vuc3Vic2NyaWJlKSlcbiAgICAgIC5zdWJzY3JpYmUoKGJ1dHRvbnM6IFNreUlubGluZUZvcm1CdXR0b25Db25maWdbXSkgPT4ge1xuICAgICAgICB0aGlzLmJ1dHRvbnMgPSBidXR0b25zO1xuICAgICAgICB0aGlzLiNjaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgI2dldFByZXNldEJ1dHRvbnMoKTogT2JzZXJ2YWJsZTxTa3lJbmxpbmVGb3JtQnV0dG9uQ29uZmlnW10+IHtcbiAgICBjb25zdCBlbWl0dGVyID0gbmV3IFJlcGxheVN1YmplY3Q8U2t5SW5saW5lRm9ybUJ1dHRvbkNvbmZpZ1tdPigxKTtcblxuICAgIGNvbnN0IGJ1dHRvblR5cGUgPSB0aGlzLmNvbmZpZ1xuICAgICAgPyB0aGlzLmNvbmZpZy5idXR0b25MYXlvdXRcbiAgICAgIDogU2t5SW5saW5lRm9ybUJ1dHRvbkxheW91dC5Eb25lQ2FuY2VsO1xuXG4gICAgc3dpdGNoIChidXR0b25UeXBlKSB7XG4gICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICAgICAgZGVmYXVsdDpcbiAgICAgIGNhc2UgU2t5SW5saW5lRm9ybUJ1dHRvbkxheW91dC5Eb25lQ2FuY2VsOlxuICAgICAgICBvYnNlcnZhYmxlWmlwKFxuICAgICAgICAgIHRoaXMuI3Jlc291cmNlc1NlcnZpY2UuZ2V0U3RyaW5nKCdza3l1eF9pbmxpbmVfZm9ybV9idXR0b25fZG9uZScpLFxuICAgICAgICAgIHRoaXMuI3Jlc291cmNlc1NlcnZpY2UuZ2V0U3RyaW5nKCdza3l1eF9pbmxpbmVfZm9ybV9idXR0b25fY2FuY2VsJylcbiAgICAgICAgKVxuICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLiNuZ1Vuc3Vic2NyaWJlKSlcbiAgICAgICAgICAuc3Vic2NyaWJlKCh2YWx1ZXM6IHN0cmluZ1tdKSA9PiB7XG4gICAgICAgICAgICBlbWl0dGVyLm5leHQoW1xuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgdGV4dDogdmFsdWVzWzBdLFxuICAgICAgICAgICAgICAgIHN0eWxlVHlwZTogJ3ByaW1hcnknLFxuICAgICAgICAgICAgICAgIGFjdGlvbjogJ2RvbmUnLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgdGV4dDogdmFsdWVzWzFdLFxuICAgICAgICAgICAgICAgIHN0eWxlVHlwZTogJ2xpbmsnLFxuICAgICAgICAgICAgICAgIGFjdGlvbjogJ2NhbmNlbCcsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBdKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgU2t5SW5saW5lRm9ybUJ1dHRvbkxheW91dC5TYXZlQ2FuY2VsOlxuICAgICAgICBvYnNlcnZhYmxlWmlwKFxuICAgICAgICAgIHRoaXMuI3Jlc291cmNlc1NlcnZpY2UuZ2V0U3RyaW5nKCdza3l1eF9pbmxpbmVfZm9ybV9idXR0b25fc2F2ZScpLFxuICAgICAgICAgIHRoaXMuI3Jlc291cmNlc1NlcnZpY2UuZ2V0U3RyaW5nKCdza3l1eF9pbmxpbmVfZm9ybV9idXR0b25fY2FuY2VsJylcbiAgICAgICAgKVxuICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLiNuZ1Vuc3Vic2NyaWJlKSlcbiAgICAgICAgICAuc3Vic2NyaWJlKCh2YWx1ZXM6IHN0cmluZ1tdKSA9PiB7XG4gICAgICAgICAgICBlbWl0dGVyLm5leHQoW1xuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgdGV4dDogdmFsdWVzWzBdLFxuICAgICAgICAgICAgICAgIHN0eWxlVHlwZTogJ3ByaW1hcnknLFxuICAgICAgICAgICAgICAgIGFjdGlvbjogJ3NhdmUnLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgdGV4dDogdmFsdWVzWzFdLFxuICAgICAgICAgICAgICAgIHN0eWxlVHlwZTogJ2xpbmsnLFxuICAgICAgICAgICAgICAgIGFjdGlvbjogJ2NhbmNlbCcsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBdKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgU2t5SW5saW5lRm9ybUJ1dHRvbkxheW91dC5Eb25lRGVsZXRlQ2FuY2VsOlxuICAgICAgICBvYnNlcnZhYmxlWmlwKFxuICAgICAgICAgIHRoaXMuI3Jlc291cmNlc1NlcnZpY2UuZ2V0U3RyaW5nKCdza3l1eF9pbmxpbmVfZm9ybV9idXR0b25fZG9uZScpLFxuICAgICAgICAgIHRoaXMuI3Jlc291cmNlc1NlcnZpY2UuZ2V0U3RyaW5nKCdza3l1eF9pbmxpbmVfZm9ybV9idXR0b25fZGVsZXRlJyksXG4gICAgICAgICAgdGhpcy4jcmVzb3VyY2VzU2VydmljZS5nZXRTdHJpbmcoJ3NreXV4X2lubGluZV9mb3JtX2J1dHRvbl9jYW5jZWwnKVxuICAgICAgICApXG4gICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKVxuICAgICAgICAgIC5zdWJzY3JpYmUoKHZhbHVlczogc3RyaW5nW10pID0+IHtcbiAgICAgICAgICAgIGVtaXR0ZXIubmV4dChbXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB0ZXh0OiB2YWx1ZXNbMF0sXG4gICAgICAgICAgICAgICAgc3R5bGVUeXBlOiAncHJpbWFyeScsXG4gICAgICAgICAgICAgICAgYWN0aW9uOiAnZG9uZScsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB0ZXh0OiB2YWx1ZXNbMV0sXG4gICAgICAgICAgICAgICAgc3R5bGVUeXBlOiAnZGVmYXVsdCcsXG4gICAgICAgICAgICAgICAgYWN0aW9uOiAnZGVsZXRlJyxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHRleHQ6IHZhbHVlc1syXSxcbiAgICAgICAgICAgICAgICBzdHlsZVR5cGU6ICdsaW5rJyxcbiAgICAgICAgICAgICAgICBhY3Rpb246ICdjYW5jZWwnLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgXSk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlIFNreUlubGluZUZvcm1CdXR0b25MYXlvdXQuU2F2ZURlbGV0ZUNhbmNlbDpcbiAgICAgICAgb2JzZXJ2YWJsZVppcChcbiAgICAgICAgICB0aGlzLiNyZXNvdXJjZXNTZXJ2aWNlLmdldFN0cmluZygnc2t5dXhfaW5saW5lX2Zvcm1fYnV0dG9uX3NhdmUnKSxcbiAgICAgICAgICB0aGlzLiNyZXNvdXJjZXNTZXJ2aWNlLmdldFN0cmluZygnc2t5dXhfaW5saW5lX2Zvcm1fYnV0dG9uX2RlbGV0ZScpLFxuICAgICAgICAgIHRoaXMuI3Jlc291cmNlc1NlcnZpY2UuZ2V0U3RyaW5nKCdza3l1eF9pbmxpbmVfZm9ybV9idXR0b25fY2FuY2VsJylcbiAgICAgICAgKVxuICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLiNuZ1Vuc3Vic2NyaWJlKSlcbiAgICAgICAgICAuc3Vic2NyaWJlKCh2YWx1ZXM6IHN0cmluZ1tdKSA9PiB7XG4gICAgICAgICAgICBlbWl0dGVyLm5leHQoW1xuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgdGV4dDogdmFsdWVzWzBdLFxuICAgICAgICAgICAgICAgIHN0eWxlVHlwZTogJ3ByaW1hcnknLFxuICAgICAgICAgICAgICAgIGFjdGlvbjogJ3NhdmUnLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgdGV4dDogdmFsdWVzWzFdLFxuICAgICAgICAgICAgICAgIHN0eWxlVHlwZTogJ2RlZmF1bHQnLFxuICAgICAgICAgICAgICAgIGFjdGlvbjogJ2RlbGV0ZScsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB0ZXh0OiB2YWx1ZXNbMl0sXG4gICAgICAgICAgICAgICAgc3R5bGVUeXBlOiAnbGluaycsXG4gICAgICAgICAgICAgICAgYWN0aW9uOiAnY2FuY2VsJyxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIF0pO1xuICAgICAgICAgIH0pO1xuICAgICAgICBicmVhaztcbiAgICB9XG5cbiAgICByZXR1cm4gZW1pdHRlci5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gICNnZXRDdXN0b21CdXR0b25zKFxuICAgIGJ1dHRvbkNvbmZpZ3M6IFNreUlubGluZUZvcm1CdXR0b25Db25maWdbXVxuICApOiBTa3lJbmxpbmVGb3JtQnV0dG9uQ29uZmlnW10ge1xuICAgIGNvbnN0IGJ1dHRvbnM6IFNreUlubGluZUZvcm1CdXR0b25Db25maWdbXSA9IFtdO1xuXG4gICAgYnV0dG9uQ29uZmlncy5mb3JFYWNoKChjb25maWc6IFNreUlubGluZUZvcm1CdXR0b25Db25maWcpID0+IHtcbiAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgICBjb25zdCBzdHlsZVR5cGUgPSBjb25maWcuc3R5bGVUeXBlIHx8ICdkZWZhdWx0JztcblxuICAgICAgYnV0dG9ucy5wdXNoKHtcbiAgICAgICAgYWN0aW9uOiBjb25maWcuYWN0aW9uLFxuICAgICAgICBkaXNhYmxlZDogY29uZmlnLmRpc2FibGVkLFxuICAgICAgICBzdHlsZVR5cGU6IHN0eWxlVHlwZSxcbiAgICAgICAgdGV4dDogY29uZmlnLnRleHQsXG4gICAgICB9IGFzIFNreUlubGluZUZvcm1CdXR0b25Db25maWcpO1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIGJ1dHRvbnM7XG4gIH1cblxuICAjaXNWYWxpZEN1c3RvbUNvbmZpZyhjb25maWc6IFNreUlubGluZUZvcm1Db25maWcgfCB1bmRlZmluZWQpOiBib29sZWFuIHtcbiAgICByZXR1cm4gKFxuICAgICAgISFjb25maWcgJiZcbiAgICAgICEhY29uZmlnLmJ1dHRvbnMgJiZcbiAgICAgIGNvbmZpZy5idXR0b25zLmxlbmd0aCA+IDAgJiZcbiAgICAgIGNvbmZpZy5idXR0b25MYXlvdXQgPT09IFNreUlubGluZUZvcm1CdXR0b25MYXlvdXQuQ3VzdG9tXG4gICAgKTtcbiAgfVxufVxuIiwiPGRpdiBbQHNreVNsaWRlRGlzc29sdmVdPVwic2hvd0Zvcm1cIj5cbiAgPGRpdiAqbmdJZj1cIiFzaG93Rm9ybVwiIGNsYXNzPVwic2t5LXNsaWRlLWRpc3NvbHZlLWZpcnN0XCI+XG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICA8L2Rpdj5cblxuICA8ZGl2ICpuZ0lmPVwidGVtcGxhdGUgJiYgc2hvd0Zvcm1cIiBjbGFzcz1cInNreS1zbGlkZS1kaXNzb2x2ZS1sYXN0XCI+XG4gICAgPGRpdiBjbGFzcz1cInNreS1pbmxpbmUtZm9ybSBza3ktc2hhZG93IHNreS1ib3ggc2t5LWVsZXZhdGlvbi0zXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwic2t5LWlubGluZS1mb3JtLWNvbnRlbnRcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJ0ZW1wbGF0ZVwiPiA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cInNreS1pbmxpbmUtZm9ybS1mb290ZXJcIj5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICpuZ0Zvcj1cImxldCBidXR0b24gb2YgYnV0dG9uc1wiXG4gICAgICAgICAgY2xhc3M9XCJza3ktYnRuIHt7ICdza3ktYnRuLScgKyBidXR0b24uc3R5bGVUeXBlIH19XCJcbiAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwiYnV0dG9uLmRpc2FibGVkID8gdHJ1ZSA6IG51bGxcIlxuICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ3NreS1idG4tZGlzYWJsZWQnOiBidXR0b24uZGlzYWJsZWQgfVwiXG4gICAgICAgICAgKGNsaWNrKT1cImNsb3NlSW5saW5lRm9ybShidXR0b24pXCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7IGJ1dHRvbi50ZXh0IH19XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
@@ -4,11 +4,11 @@ import { SkyInlineFormResourcesModule } from '../shared/sky-inline-form-resource
|
|
|
4
4
|
import { SkyInlineFormComponent } from './inline-form.component';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
export class SkyInlineFormModule {
|
|
7
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyInlineFormModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
8
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.7", ngImport: i0, type: SkyInlineFormModule, declarations: [SkyInlineFormComponent], imports: [CommonModule, SkyInlineFormResourcesModule], exports: [SkyInlineFormComponent] }); }
|
|
9
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyInlineFormModule, imports: [CommonModule, SkyInlineFormResourcesModule] }); }
|
|
7
10
|
}
|
|
8
|
-
|
|
9
|
-
SkyInlineFormModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: SkyInlineFormModule, declarations: [SkyInlineFormComponent], imports: [CommonModule, SkyInlineFormResourcesModule], exports: [SkyInlineFormComponent] });
|
|
10
|
-
SkyInlineFormModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyInlineFormModule, imports: [CommonModule, SkyInlineFormResourcesModule] });
|
|
11
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyInlineFormModule, decorators: [{
|
|
11
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyInlineFormModule, decorators: [{
|
|
12
12
|
type: NgModule,
|
|
13
13
|
args: [{
|
|
14
14
|
declarations: [SkyInlineFormComponent],
|
|
@@ -16,4 +16,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
|
|
|
16
16
|
exports: [SkyInlineFormComponent],
|
|
17
17
|
}]
|
|
18
18
|
}] });
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5saW5lLWZvcm0ubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2lubGluZS1mb3JtL3NyYy9saWIvbW9kdWxlcy9pbmxpbmUtZm9ybS9pbmxpbmUtZm9ybS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFekMsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFFMUYsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0seUJBQXlCLENBQUM7O0FBT2pFLE1BQU0sT0FBTyxtQkFBbUI7OEdBQW5CLG1CQUFtQjsrR0FBbkIsbUJBQW1CLGlCQUpmLHNCQUFzQixhQUMzQixZQUFZLEVBQUUsNEJBQTRCLGFBQzFDLHNCQUFzQjsrR0FFckIsbUJBQW1CLFlBSHBCLFlBQVksRUFBRSw0QkFBNEI7OzJGQUd6QyxtQkFBbUI7a0JBTC9CLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsc0JBQXNCLENBQUM7b0JBQ3RDLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSw0QkFBNEIsQ0FBQztvQkFDckQsT0FBTyxFQUFFLENBQUMsc0JBQXNCLENBQUM7aUJBQ2xDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFNreUlubGluZUZvcm1SZXNvdXJjZXNNb2R1bGUgfSBmcm9tICcuLi9zaGFyZWQvc2t5LWlubGluZS1mb3JtLXJlc291cmNlcy5tb2R1bGUnO1xuXG5pbXBvcnQgeyBTa3lJbmxpbmVGb3JtQ29tcG9uZW50IH0gZnJvbSAnLi9pbmxpbmUtZm9ybS5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtTa3lJbmxpbmVGb3JtQ29tcG9uZW50XSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgU2t5SW5saW5lRm9ybVJlc291cmNlc01vZHVsZV0sXG4gIGV4cG9ydHM6IFtTa3lJbmxpbmVGb3JtQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgU2t5SW5saW5lRm9ybU1vZHVsZSB7fVxuIl19
|
|
@@ -0,0 +1,50 @@
|
|
|
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-inline-form' 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_inline_form_button_cancel: { message: 'Cancel' },
|
|
13
|
+
skyux_inline_form_button_delete: { message: 'Delete' },
|
|
14
|
+
skyux_inline_form_button_done: { message: 'Done' },
|
|
15
|
+
skyux_inline_form_button_save: { message: 'Save' },
|
|
16
|
+
},
|
|
17
|
+
};
|
|
18
|
+
export class SkyInlineFormResourcesProvider {
|
|
19
|
+
getString(localeInfo, name) {
|
|
20
|
+
return getLibStringForLocale(RESOURCES, localeInfo.locale, name);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Import into any component library module that needs to use resource strings.
|
|
25
|
+
*/
|
|
26
|
+
export class SkyInlineFormResourcesModule {
|
|
27
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyInlineFormResourcesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
28
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.7", ngImport: i0, type: SkyInlineFormResourcesModule, exports: [SkyI18nModule] }); }
|
|
29
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyInlineFormResourcesModule, providers: [
|
|
30
|
+
{
|
|
31
|
+
provide: SKY_LIB_RESOURCES_PROVIDERS,
|
|
32
|
+
useClass: SkyInlineFormResourcesProvider,
|
|
33
|
+
multi: true,
|
|
34
|
+
},
|
|
35
|
+
], imports: [SkyI18nModule] }); }
|
|
36
|
+
}
|
|
37
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyInlineFormResourcesModule, decorators: [{
|
|
38
|
+
type: NgModule,
|
|
39
|
+
args: [{
|
|
40
|
+
exports: [SkyI18nModule],
|
|
41
|
+
providers: [
|
|
42
|
+
{
|
|
43
|
+
provide: SKY_LIB_RESOURCES_PROVIDERS,
|
|
44
|
+
useClass: SkyInlineFormResourcesProvider,
|
|
45
|
+
multi: true,
|
|
46
|
+
},
|
|
47
|
+
],
|
|
48
|
+
}]
|
|
49
|
+
}] });
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2t5LWlubGluZS1mb3JtLXJlc291cmNlcy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvaW5saW5lLWZvcm0vc3JjL2xpYi9tb2R1bGVzL3NoYXJlZC9za3ktaW5saW5lLWZvcm0tcmVzb3VyY2VzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7R0FLRztBQUNILE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUNMLDJCQUEyQixFQUUzQixhQUFhLEVBR2IscUJBQXFCLEdBQ3RCLE1BQU0sYUFBYSxDQUFDOztBQUVyQixNQUFNLFNBQVMsR0FBMEM7SUFDdkQsT0FBTyxFQUFFO1FBQ1AsK0JBQStCLEVBQUUsRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFO1FBQ3RELCtCQUErQixFQUFFLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRTtRQUN0RCw2QkFBNkIsRUFBRSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUU7UUFDbEQsNkJBQTZCLEVBQUUsRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFO0tBQ25EO0NBQ0YsQ0FBQztBQUVGLE1BQU0sT0FBTyw4QkFBOEI7SUFDbEMsU0FBUyxDQUNkLFVBQTRCLEVBQzVCLElBQVk7UUFFWixPQUFPLHFCQUFxQixDQUFDLFNBQVMsRUFBRSxVQUFVLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ25FLENBQUM7Q0FDRjtBQUVEOztHQUVHO0FBV0gsTUFBTSxPQUFPLDRCQUE0Qjs4R0FBNUIsNEJBQTRCOytHQUE1Qiw0QkFBNEIsWUFUN0IsYUFBYTsrR0FTWiw0QkFBNEIsYUFSNUI7WUFDVDtnQkFDRSxPQUFPLEVBQUUsMkJBQTJCO2dCQUNwQyxRQUFRLEVBQUUsOEJBQThCO2dCQUN4QyxLQUFLLEVBQUUsSUFBSTthQUNaO1NBQ0YsWUFQUyxhQUFhOzsyRkFTWiw0QkFBNEI7a0JBVnhDLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsYUFBYSxDQUFDO29CQUN4QixTQUFTLEVBQUU7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLDJCQUEyQjs0QkFDcEMsUUFBUSxFQUFFLDhCQUE4Qjs0QkFDeEMsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0Y7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIE5PVElDRTogRE8gTk9UIE1PRElGWSBUSElTIEZJTEUhXG4gKiBUaGUgY29udGVudHMgb2YgdGhpcyBmaWxlIHdlcmUgYXV0b21hdGljYWxseSBnZW5lcmF0ZWQgYnlcbiAqIHRoZSAnbmcgZ2VuZXJhdGUgQHNreXV4L2kxOG46bGliLXJlc291cmNlcy1tb2R1bGUgbGliL21vZHVsZXMvc2hhcmVkL3NreS1pbmxpbmUtZm9ybScgc2NoZW1hdGljLlxuICogVG8gdXBkYXRlIHRoaXMgZmlsZSwgc2ltcGx5IHJlcnVuIHRoZSBjb21tYW5kLlxuICovXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgU0tZX0xJQl9SRVNPVVJDRVNfUFJPVklERVJTLFxuICBTa3lBcHBMb2NhbGVJbmZvLFxuICBTa3lJMThuTW9kdWxlLFxuICBTa3lMaWJSZXNvdXJjZXMsXG4gIFNreUxpYlJlc291cmNlc1Byb3ZpZGVyLFxuICBnZXRMaWJTdHJpbmdGb3JMb2NhbGUsXG59IGZyb20gJ0Bza3l1eC9pMThuJztcblxuY29uc3QgUkVTT1VSQ0VTOiB7IFtsb2NhbGU6IHN0cmluZ106IFNreUxpYlJlc291cmNlcyB9ID0ge1xuICAnRU4tVVMnOiB7XG4gICAgc2t5dXhfaW5saW5lX2Zvcm1fYnV0dG9uX2NhbmNlbDogeyBtZXNzYWdlOiAnQ2FuY2VsJyB9LFxuICAgIHNreXV4X2lubGluZV9mb3JtX2J1dHRvbl9kZWxldGU6IHsgbWVzc2FnZTogJ0RlbGV0ZScgfSxcbiAgICBza3l1eF9pbmxpbmVfZm9ybV9idXR0b25fZG9uZTogeyBtZXNzYWdlOiAnRG9uZScgfSxcbiAgICBza3l1eF9pbmxpbmVfZm9ybV9idXR0b25fc2F2ZTogeyBtZXNzYWdlOiAnU2F2ZScgfSxcbiAgfSxcbn07XG5cbmV4cG9ydCBjbGFzcyBTa3lJbmxpbmVGb3JtUmVzb3VyY2VzUHJvdmlkZXIgaW1wbGVtZW50cyBTa3lMaWJSZXNvdXJjZXNQcm92aWRlciB7XG4gIHB1YmxpYyBnZXRTdHJpbmcoXG4gICAgbG9jYWxlSW5mbzogU2t5QXBwTG9jYWxlSW5mbyxcbiAgICBuYW1lOiBzdHJpbmdcbiAgKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gZ2V0TGliU3RyaW5nRm9yTG9jYWxlKFJFU09VUkNFUywgbG9jYWxlSW5mby5sb2NhbGUsIG5hbWUpO1xuICB9XG59XG5cbi8qKlxuICogSW1wb3J0IGludG8gYW55IGNvbXBvbmVudCBsaWJyYXJ5IG1vZHVsZSB0aGF0IG5lZWRzIHRvIHVzZSByZXNvdXJjZSBzdHJpbmdzLlxuICovXG5ATmdNb2R1bGUoe1xuICBleHBvcnRzOiBbU2t5STE4bk1vZHVsZV0sXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IFNLWV9MSUJfUkVTT1VSQ0VTX1BST1ZJREVSUyxcbiAgICAgIHVzZUNsYXNzOiBTa3lJbmxpbmVGb3JtUmVzb3VyY2VzUHJvdmlkZXIsXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lJbmxpbmVGb3JtUmVzb3VyY2VzTW9kdWxlIHt9XG4iXX0=
|