@skyux/inline-form 5.0.0 → 5.0.1

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.
@@ -1,8 +1,8 @@
1
1
  (function (global, factory) {
2
2
  typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/common'), require('@angular/core'), require('rxjs'), require('rxjs/operators'), require('@angular/animations'), require('@skyux/i18n'), require('@skyux/core')) :
3
3
  typeof define === 'function' && define.amd ? define('@skyux/inline-form', ['exports', '@angular/common', '@angular/core', 'rxjs', 'rxjs/operators', '@angular/animations', '@skyux/i18n', '@skyux/core'], factory) :
4
- (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global.skyux = global.skyux || {}, global.skyux['inline-form'] = {}), global.ng.common, global.ng.core, global.rxjs, global.rxjs.operators, global.ng.animations, global.i2, global.i3));
5
- }(this, (function (exports, i4, i0, rxjs, operators, animations, i2, i3) { 'use strict';
4
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global.skyux = global.skyux || {}, global.skyux["inline-form"] = {}), global.ng.common, global.ng.core, global.rxjs, global.rxjs.operators, global.ng.animations, global.i2, global.i3));
5
+ })(this, (function (exports, i4, i0, rxjs, operators, animations, i2, i3) { 'use strict';
6
6
 
7
7
  function _interopNamespace(e) {
8
8
  if (e && e.__esModule) return e;
@@ -13,14 +13,12 @@
13
13
  var d = Object.getOwnPropertyDescriptor(e, k);
14
14
  Object.defineProperty(n, k, d.get ? d : {
15
15
  enumerable: true,
16
- get: function () {
17
- return e[k];
18
- }
16
+ get: function () { return e[k]; }
19
17
  });
20
18
  }
21
19
  });
22
20
  }
23
- n['default'] = e;
21
+ n["default"] = e;
24
22
  return Object.freeze(n);
25
23
  }
26
24
 
@@ -34,28 +32,24 @@
34
32
  // Expand animations
35
33
  animations.query('.sky-slide-dissolve-last:enter', [
36
34
  animations.style({ height: 0, opacity: 0 }),
37
- animations.animate('200ms ease-in', animations.style({ height: '*', opacity: 0 }))
35
+ animations.animate('200ms ease-in', animations.style({ height: '*', opacity: 0 })),
38
36
  ], { optional: true }),
39
37
  animations.query('.sky-slide-dissolve-last:enter', [
40
38
  animations.style({ opacity: 0 }),
41
- animations.animate('200ms ease-in', animations.style({ opacity: 1 }))
39
+ animations.animate('200ms ease-in', animations.style({ opacity: 1 })),
42
40
  ], { optional: true }),
43
41
  // Collapse animations
44
42
  // The expanded content should fade out immediately to prevent
45
43
  // any overlap with the read-only content that's returning to the screen.
46
- animations.query('.sky-slide-dissolve-last:leave', [
47
- animations.animate('0ms', animations.style({ opacity: 0 }))
48
- ], { optional: true }),
44
+ animations.query('.sky-slide-dissolve-last:leave', [animations.animate('0ms', animations.style({ opacity: 0 }))], { optional: true }),
49
45
  animations.group([
50
46
  animations.query('.sky-slide-dissolve-first:enter', [
51
47
  animations.style({ opacity: 0, height: 0 }),
52
- animations.animate('100ms ease-in', animations.style({ opacity: 1, height: '*' }))
48
+ animations.animate('100ms ease-in', animations.style({ opacity: 1, height: '*' })),
53
49
  ], { optional: true }),
54
- animations.query('.sky-slide-dissolve-last:leave', [
55
- animations.animate('200ms ease-in', animations.style({ height: 0 }))
56
- ], { optional: true })
57
- ])
58
- ])
50
+ animations.query('.sky-slide-dissolve-last:leave', [animations.animate('200ms ease-in', animations.style({ height: 0 }))], { optional: true }),
51
+ ]),
52
+ ]),
59
53
  ]);
60
54
 
61
55
  exports.SkyInlineFormButtonLayout = void 0;
@@ -71,15 +65,15 @@
71
65
  var SKY_TABBABLE_SELECTOR = [
72
66
  'a[href]',
73
67
  'area[href]',
74
- 'input:not([disabled]):not([tabindex=\'-1\'])',
75
- 'button:not([disabled]):not([tabindex=\'-1\'])',
76
- 'select:not([disabled]):not([tabindex=\'-1\'])',
77
- 'textarea:not([disabled]):not([tabindex=\'-1\'])',
68
+ "input:not([disabled]):not([tabindex='-1'])",
69
+ "button:not([disabled]):not([tabindex='-1'])",
70
+ "select:not([disabled]):not([tabindex='-1'])",
71
+ "textarea:not([disabled]):not([tabindex='-1'])",
78
72
  'iframe',
79
73
  'object',
80
74
  'embed',
81
- '*[tabindex]:not([tabindex=\'-1\'])',
82
- '*[contenteditable=true]'
75
+ "*[tabindex]:not([tabindex='-1'])",
76
+ '*[contenteditable=true]',
83
77
  ].join(', ');
84
78
  /* tslint:enable */
85
79
  /**
@@ -125,9 +119,9 @@
125
119
  };
126
120
  return SkyInlineFormAdapterService;
127
121
  }());
128
- SkyInlineFormAdapterService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0__namespace, type: SkyInlineFormAdapterService, deps: [], target: i0__namespace.ɵɵFactoryTarget.Injectable });
129
- SkyInlineFormAdapterService.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0__namespace, type: SkyInlineFormAdapterService });
130
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0__namespace, type: SkyInlineFormAdapterService, decorators: [{
122
+ SkyInlineFormAdapterService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyInlineFormAdapterService, deps: [], target: i0__namespace.ɵɵFactoryTarget.Injectable });
123
+ SkyInlineFormAdapterService.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyInlineFormAdapterService });
124
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyInlineFormAdapterService, decorators: [{
131
125
  type: i0.Injectable
132
126
  }] });
133
127
 
@@ -196,7 +190,7 @@
196
190
  };
197
191
  SkyInlineFormComponent.prototype.closeInlineForm = function (event) {
198
192
  var args = {
199
- reason: event.action
193
+ reason: event.action,
200
194
  };
201
195
  this.close.emit(args);
202
196
  };
@@ -213,7 +207,9 @@
213
207
  });
214
208
  };
215
209
  SkyInlineFormComponent.prototype.getPresetButtons = function () {
216
- var buttonType = this.config ? this.config.buttonLayout : exports.SkyInlineFormButtonLayout.DoneCancel;
210
+ var buttonType = this.config
211
+ ? this.config.buttonLayout
212
+ : exports.SkyInlineFormButtonLayout.DoneCancel;
217
213
  var promise;
218
214
  switch (buttonType) {
219
215
  /* istanbul ignore next */
@@ -227,13 +223,13 @@
227
223
  {
228
224
  text: values[0],
229
225
  styleType: 'primary',
230
- action: 'done'
226
+ action: 'done',
231
227
  },
232
228
  {
233
229
  text: values[1],
234
230
  styleType: 'link',
235
- action: 'cancel'
236
- }
231
+ action: 'cancel',
232
+ },
237
233
  ]);
238
234
  });
239
235
  });
@@ -247,13 +243,13 @@
247
243
  {
248
244
  text: values[0],
249
245
  styleType: 'primary',
250
- action: 'save'
246
+ action: 'save',
251
247
  },
252
248
  {
253
249
  text: values[1],
254
250
  styleType: 'link',
255
- action: 'cancel'
256
- }
251
+ action: 'cancel',
252
+ },
257
253
  ]);
258
254
  });
259
255
  });
@@ -267,18 +263,18 @@
267
263
  {
268
264
  text: values[0],
269
265
  styleType: 'primary',
270
- action: 'done'
266
+ action: 'done',
271
267
  },
272
268
  {
273
269
  text: values[1],
274
270
  styleType: 'default',
275
- action: 'delete'
271
+ action: 'delete',
276
272
  },
277
273
  {
278
274
  text: values[2],
279
275
  styleType: 'link',
280
- action: 'cancel'
281
- }
276
+ action: 'cancel',
277
+ },
282
278
  ]);
283
279
  });
284
280
  });
@@ -292,18 +288,18 @@
292
288
  {
293
289
  text: values[0],
294
290
  styleType: 'primary',
295
- action: 'save'
291
+ action: 'save',
296
292
  },
297
293
  {
298
294
  text: values[1],
299
295
  styleType: 'default',
300
- action: 'delete'
296
+ action: 'delete',
301
297
  },
302
298
  {
303
299
  text: values[2],
304
300
  styleType: 'link',
305
- action: 'cancel'
306
- }
301
+ action: 'cancel',
302
+ },
307
303
  ]);
308
304
  });
309
305
  });
@@ -320,7 +316,7 @@
320
316
  action: config.action,
321
317
  disabled: config.disabled,
322
318
  styleType: styleType,
323
- text: config.text
319
+ text: config.text,
324
320
  });
325
321
  });
326
322
  return buttons;
@@ -332,21 +328,17 @@
332
328
  };
333
329
  return SkyInlineFormComponent;
334
330
  }());
335
- SkyInlineFormComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0__namespace, type: SkyInlineFormComponent, deps: [{ token: SkyInlineFormAdapterService }, { token: i0__namespace.ElementRef }, { token: i2__namespace.SkyLibResourcesService }, { token: i3__namespace.SkyAppWindowRef }, { token: i0__namespace.ChangeDetectorRef }], target: i0__namespace.ɵɵFactoryTarget.Component });
336
- SkyInlineFormComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.7", type: SkyInlineFormComponent, selector: "sky-inline-form", inputs: { config: "config", template: "template", showForm: "showForm" }, outputs: { close: "close" }, providers: [
337
- SkyInlineFormAdapterService
338
- ], ngImport: i0__namespace, template: "<div\n [@skySlideDissolve]=\"showForm\"\n>\n\n <div *ngIf=\"!showForm\"\n class=\"sky-slide-dissolve-first\"\n >\n <ng-content></ng-content>\n </div>\n\n <div *ngIf=\"template && showForm\"\n class=\"sky-slide-dissolve-last\"\n >\n <div\n class=\"sky-inline-form sky-shadow sky-box sky-elevation-3\"\n >\n <div\n class=\"sky-inline-form-content\"\n >\n <ng-container\n [ngTemplateOutlet]=\"template\"\n >\n </ng-container>\n </div>\n <div\n class=\"sky-inline-form-footer\"\n >\n <button *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\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"], directives: [{ type: i4__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4__namespace.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i4__namespace.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4__namespace.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], animations: [skySlideDissolve], changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush });
339
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0__namespace, type: SkyInlineFormComponent, decorators: [{
331
+ SkyInlineFormComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyInlineFormComponent, deps: [{ token: SkyInlineFormAdapterService }, { token: i0__namespace.ElementRef }, { token: i2__namespace.SkyLibResourcesService }, { token: i3__namespace.SkyAppWindowRef }, { token: i0__namespace.ChangeDetectorRef }], target: i0__namespace.ɵɵFactoryTarget.Component });
332
+ SkyInlineFormComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: SkyInlineFormComponent, selector: "sky-inline-form", inputs: { config: "config", template: "template", showForm: "showForm" }, outputs: { close: "close" }, providers: [SkyInlineFormAdapterService], ngImport: i0__namespace, 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"], directives: [{ type: i4__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4__namespace.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i4__namespace.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4__namespace.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], animations: [skySlideDissolve], changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush });
333
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyInlineFormComponent, decorators: [{
340
334
  type: i0.Component,
341
335
  args: [{
342
336
  selector: 'sky-inline-form',
343
- templateUrl: './inline-form.component.html',
344
- styleUrls: ['./inline-form.component.scss'],
337
+ template: "template",
338
+ 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"],
345
339
  changeDetection: i0.ChangeDetectionStrategy.OnPush,
346
- providers: [
347
- SkyInlineFormAdapterService
348
- ],
349
- animations: [skySlideDissolve]
340
+ providers: [SkyInlineFormAdapterService],
341
+ animations: [skySlideDissolve],
350
342
  }]
351
343
  }], ctorParameters: function () { return [{ type: SkyInlineFormAdapterService }, { type: i0__namespace.ElementRef }, { type: i2__namespace.SkyLibResourcesService }, { type: i3__namespace.SkyAppWindowRef }, { type: i0__namespace.ChangeDetectorRef }]; }, propDecorators: { config: [{
352
344
  type: i0.Input
@@ -365,7 +357,12 @@
365
357
  * To update this file, simply rerun the command.
366
358
  */
367
359
  var RESOURCES = {
368
- 'EN-US': { "skyux_inline_form_button_cancel": { "message": "Cancel" }, "skyux_inline_form_button_delete": { "message": "Delete" }, "skyux_inline_form_button_done": { "message": "Done" }, "skyux_inline_form_button_save": { "message": "Save" } },
360
+ 'EN-US': {
361
+ skyux_inline_form_button_cancel: { message: 'Cancel' },
362
+ skyux_inline_form_button_delete: { message: 'Delete' },
363
+ skyux_inline_form_button_done: { message: 'Done' },
364
+ skyux_inline_form_button_save: { message: 'Save' },
365
+ },
369
366
  };
370
367
  var SkyInlineFormResourcesProvider = /** @class */ (function () {
371
368
  function SkyInlineFormResourcesProvider() {
@@ -383,22 +380,26 @@
383
380
  }
384
381
  return SkyInlineFormResourcesModule;
385
382
  }());
386
- SkyInlineFormResourcesModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0__namespace, type: SkyInlineFormResourcesModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
387
- SkyInlineFormResourcesModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0__namespace, type: SkyInlineFormResourcesModule, exports: [i2.SkyI18nModule] });
388
- SkyInlineFormResourcesModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0__namespace, type: SkyInlineFormResourcesModule, providers: [{
383
+ SkyInlineFormResourcesModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyInlineFormResourcesModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
384
+ SkyInlineFormResourcesModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyInlineFormResourcesModule, exports: [i2.SkyI18nModule] });
385
+ SkyInlineFormResourcesModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyInlineFormResourcesModule, providers: [
386
+ {
389
387
  provide: i2.SKY_LIB_RESOURCES_PROVIDERS,
390
388
  useClass: SkyInlineFormResourcesProvider,
391
- multi: true
392
- }], imports: [i2.SkyI18nModule] });
393
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0__namespace, type: SkyInlineFormResourcesModule, decorators: [{
389
+ multi: true,
390
+ },
391
+ ], imports: [i2.SkyI18nModule] });
392
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyInlineFormResourcesModule, decorators: [{
394
393
  type: i0.NgModule,
395
394
  args: [{
396
395
  exports: [i2.SkyI18nModule],
397
- providers: [{
396
+ providers: [
397
+ {
398
398
  provide: i2.SKY_LIB_RESOURCES_PROVIDERS,
399
399
  useClass: SkyInlineFormResourcesProvider,
400
- multi: true
401
- }]
400
+ multi: true,
401
+ },
402
+ ],
402
403
  }]
403
404
  }] });
404
405
 
@@ -407,26 +408,15 @@
407
408
  }
408
409
  return SkyInlineFormModule;
409
410
  }());
410
- SkyInlineFormModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0__namespace, type: SkyInlineFormModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
411
- SkyInlineFormModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0__namespace, type: SkyInlineFormModule, declarations: [SkyInlineFormComponent], imports: [i4.CommonModule,
412
- SkyInlineFormResourcesModule], exports: [SkyInlineFormComponent] });
413
- SkyInlineFormModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0__namespace, type: SkyInlineFormModule, imports: [[
414
- i4.CommonModule,
415
- SkyInlineFormResourcesModule
416
- ]] });
417
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0__namespace, type: SkyInlineFormModule, decorators: [{
411
+ SkyInlineFormModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyInlineFormModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
412
+ SkyInlineFormModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyInlineFormModule, declarations: [SkyInlineFormComponent], imports: [i4.CommonModule, SkyInlineFormResourcesModule], exports: [SkyInlineFormComponent] });
413
+ SkyInlineFormModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyInlineFormModule, imports: [[i4.CommonModule, SkyInlineFormResourcesModule]] });
414
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyInlineFormModule, decorators: [{
418
415
  type: i0.NgModule,
419
416
  args: [{
420
- declarations: [
421
- SkyInlineFormComponent
422
- ],
423
- imports: [
424
- i4.CommonModule,
425
- SkyInlineFormResourcesModule
426
- ],
427
- exports: [
428
- SkyInlineFormComponent
429
- ]
417
+ declarations: [SkyInlineFormComponent],
418
+ imports: [i4.CommonModule, SkyInlineFormResourcesModule],
419
+ exports: [SkyInlineFormComponent],
430
420
  }]
431
421
  }] });
432
422
 
@@ -435,9 +425,9 @@
435
425
  */
436
426
 
437
427
  exports.SkyInlineFormModule = SkyInlineFormModule;
438
- exports.λ1 = SkyInlineFormComponent;
428
+ exports["λ1"] = SkyInlineFormComponent;
439
429
 
440
430
  Object.defineProperty(exports, '__esModule', { value: true });
441
431
 
442
- })));
432
+ }));
443
433
  //# sourceMappingURL=skyux-inline-form.umd.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"skyux-inline-form.umd.js","sources":["../../../projects/inline-form/src/modules/inline-form/animations/slide-dissolve.ts","../../../projects/inline-form/src/modules/inline-form/types/inline-form-button-layout.ts","../../../projects/inline-form/src/modules/inline-form/inline-form-adapter.service.ts","../../../projects/inline-form/src/modules/inline-form/inline-form.component.ts","../../../projects/inline-form/src/modules/inline-form/inline-form.component.html","../../../projects/inline-form/src/modules/shared/sky-inline-form-resources.module.ts","../../../projects/inline-form/src/modules/inline-form/inline-form.module.ts","../../../projects/inline-form/src/skyux-inline-form.ts"],"sourcesContent":["import {\n animate,\n AnimationTriggerMetadata,\n group,\n query,\n style,\n transition,\n trigger\n} from '@angular/animations';\n\nexport const skySlideDissolve: AnimationTriggerMetadata = trigger('skySlideDissolve', [\n transition('* <=> *', [\n\n // Expand animations\n query('.sky-slide-dissolve-last:enter', [\n style({ height: 0, opacity: 0 }),\n animate('200ms ease-in', style({ height: '*', opacity: 0 }))\n ], { optional: true }),\n query('.sky-slide-dissolve-last:enter', [\n style({ opacity: 0 }),\n animate('200ms ease-in', style({ opacity: 1 }))\n ], { optional: true }),\n\n // Collapse animations\n // The expanded content should fade out immediately to prevent\n // any overlap with the read-only content that's returning to the screen.\n query('.sky-slide-dissolve-last:leave', [\n animate('0ms', style({ opacity: 0 }))\n ], { optional: true }),\n\n group([\n query('.sky-slide-dissolve-first:enter', [\n style({ opacity: 0, height: 0 }),\n animate('100ms ease-in', style({ opacity: 1, height: '*' }))\n ], { optional: true }),\n query('.sky-slide-dissolve-last:leave', [\n animate('200ms ease-in', style({ height: 0 }))\n ], { optional: true })\n\n ])\n ])\n]);\n","export enum SkyInlineFormButtonLayout {\n Custom = 0,\n DoneCancel = 1,\n DoneDeleteCancel = 2,\n SaveCancel = 3,\n SaveDeleteCancel = 4\n}\n","import {\n ElementRef,\n Injectable\n} from '@angular/core';\n\n/* tslint:disable */\nconst SKY_TABBABLE_SELECTOR = [\n 'a[href]',\n 'area[href]',\n 'input:not([disabled]):not([tabindex=\\'-1\\'])',\n 'button:not([disabled]):not([tabindex=\\'-1\\'])',\n 'select:not([disabled]):not([tabindex=\\'-1\\'])',\n 'textarea:not([disabled]):not([tabindex=\\'-1\\'])',\n 'iframe',\n 'object',\n 'embed',\n '*[tabindex]:not([tabindex=\\'-1\\'])',\n '*[contenteditable=true]'\n].join(', ');\n/* tslint:enable */\n\n/**\n * @internal\n */\n@Injectable()\nexport class SkyInlineFormAdapterService {\n\n public applyAutofocus(inlineFormElementRef: ElementRef): void {\n const inputWithAutofocus = inlineFormElementRef.nativeElement.querySelector('[autofocus]');\n\n if (inputWithAutofocus) {\n inputWithAutofocus.focus();\n } else {\n let focusEl: HTMLElement = inlineFormElementRef.nativeElement.querySelector('.sky-inline-form-content');\n let focusableChildren = this.loadFocusableChildren(focusEl);\n\n this.focusFirstElement(focusableChildren);\n }\n }\n\n private loadFocusableChildren(elem: HTMLElement): HTMLElement[] {\n const elements: Array<HTMLElement>\n = Array.prototype.slice.call(elem.querySelectorAll(SKY_TABBABLE_SELECTOR));\n\n return elements.filter((element) => {\n return this.isVisible(element);\n });\n }\n\n private isVisible(element: HTMLElement): boolean {\n const style = window.getComputedStyle(element);\n const isHidden = style.display === 'none' || style.visibility === 'hidden';\n if (isHidden) {\n return false;\n }\n\n /* istanbul ignore next */\n const hasBounds = !!(\n element.offsetWidth ||\n element.offsetHeight ||\n element.getClientRects().length\n );\n return hasBounds;\n }\n\n private focusFirstElement(list: Array<HTMLElement>): void {\n if (list.length > 0) {\n list[0].focus();\n }\n }\n}\n","import {\n ChangeDetectorRef,\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n EventEmitter,\n Input,\n OnDestroy,\n OnInit,\n Output,\n TemplateRef\n} from '@angular/core';\n\nimport {\n SkyAppWindowRef\n} from '@skyux/core';\n\nimport {\n SkyLibResourcesService\n} from '@skyux/i18n';\n\nimport {\n zip as observableZip\n} from 'rxjs';\n\nimport {\n take\n} from 'rxjs/operators';\n\nimport {\n skySlideDissolve\n} from './animations/slide-dissolve';\n\nimport {\n SkyInlineFormButtonConfig\n} from './types/inline-form-button-config';\n\nimport {\n SkyInlineFormButtonLayout\n} from './types/inline-form-button-layout';\n\nimport {\n SkyInlineFormCloseArgs\n} from './types/inline-form-close-args';\n\nimport {\n SkyInlineFormConfig\n} from './types/inline-form-config';\n\nimport {\n SkyInlineFormAdapterService\n} from './inline-form-adapter.service';\n\n/**\n * Renders form content in the current view instead of a separate modal.\n */\n@Component({\n selector: 'sky-inline-form',\n templateUrl: './inline-form.component.html',\n styleUrls: ['./inline-form.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n SkyInlineFormAdapterService\n ],\n animations: [ skySlideDissolve ]\n})\nexport class SkyInlineFormComponent implements OnInit, OnDestroy {\n\n /**\n * Specifies configuration options for the buttons to display with the inline form.\n * @required\n */\n @Input()\n public set config(value: SkyInlineFormConfig) {\n if (value !== this._config) {\n this._config = value;\n this.setupButtons();\n }\n }\n\n public get config(): SkyInlineFormConfig {\n return this._config;\n }\n\n /**\n * Specifies a template to use to instantiate the inline form.\n * @required\n */\n @Input()\n public template: TemplateRef<any>;\n\n /**\n * Indicates whether to display the inline form. Users can toggle between displaying\n * and hiding the inline form.\n * @default false\n */\n @Input()\n public set showForm(value: boolean) {\n this._showForm = value;\n\n /* istanbul ignore else */\n if (value) {\n // setTimeout() prevents applyAutofocus() from firing\n // until after *ngIf has added the form element to the DOM.\n this.skyAppWindowRef.nativeWindow.setTimeout(() => {\n this.adapter.applyAutofocus(this.elementRef);\n });\n }\n }\n\n public get showForm() {\n return this._showForm;\n }\n\n /**\n * Fires when users close the inline form.\n */\n @Output()\n public close = new EventEmitter<SkyInlineFormCloseArgs>();\n\n public buttons: SkyInlineFormButtonConfig[];\n\n private _config: SkyInlineFormConfig;\n\n private _showForm: boolean = false;\n\n constructor(\n private adapter: SkyInlineFormAdapterService,\n private elementRef: ElementRef,\n private resourcesService: SkyLibResourcesService,\n private skyAppWindowRef: SkyAppWindowRef,\n private changeDetectorRef: ChangeDetectorRef\n ) {}\n\n public ngOnInit(): void {\n this.setupButtons();\n }\n\n public ngOnDestroy(): void {\n this.close.complete();\n }\n\n public closeInlineForm(event: SkyInlineFormButtonConfig): void {\n const args: SkyInlineFormCloseArgs = {\n reason: event.action\n };\n this.close.emit(args);\n }\n\n private setupButtons(): void {\n if (this.isValidCustomConfig(this.config)) {\n this.buttons = this.getCustomButtons(this.config.buttons);\n this.changeDetectorRef.markForCheck();\n return;\n }\n\n this.getPresetButtons().then((buttons) => {\n this.buttons = buttons;\n this.changeDetectorRef.markForCheck();\n });\n }\n\n private getPresetButtons(): Promise<SkyInlineFormButtonConfig[]> {\n let buttonType =\n this.config ? this.config.buttonLayout : SkyInlineFormButtonLayout.DoneCancel;\n\n let promise: Promise<SkyInlineFormButtonConfig[]>;\n\n switch (buttonType) {\n /* istanbul ignore next */\n default:\n case SkyInlineFormButtonLayout.DoneCancel:\n observableZip(\n this.resourcesService.getString('skyux_inline_form_button_done'),\n this.resourcesService.getString('skyux_inline_form_button_cancel')\n )\n .pipe(take(1))\n .subscribe((values: any) => {\n promise = new Promise<SkyInlineFormButtonConfig[]>((resolve: any) => {\n resolve([\n {\n text: values[0],\n styleType: 'primary',\n action: 'done'\n },\n {\n text: values[1],\n styleType: 'link',\n action: 'cancel'\n }\n ]);\n });\n });\n break;\n\n case SkyInlineFormButtonLayout.SaveCancel:\n observableZip(\n this.resourcesService.getString('skyux_inline_form_button_save'),\n this.resourcesService.getString('skyux_inline_form_button_cancel')\n )\n .pipe(take(1))\n .subscribe((values: any) => {\n promise = new Promise<SkyInlineFormButtonConfig[]>((resolve: any) => {\n resolve([\n {\n text: values[0],\n styleType: 'primary',\n action: 'save'\n },\n {\n text: values[1],\n styleType: 'link',\n action: 'cancel'\n }\n ]);\n });\n });\n break;\n\n case SkyInlineFormButtonLayout.DoneDeleteCancel:\n observableZip(\n this.resourcesService.getString('skyux_inline_form_button_done'),\n this.resourcesService.getString('skyux_inline_form_button_delete'),\n this.resourcesService.getString('skyux_inline_form_button_cancel')\n )\n .pipe(take(1))\n .subscribe((values: any) => {\n promise = new Promise<SkyInlineFormButtonConfig[]>((resolve: any) => {\n resolve([\n {\n text: values[0],\n styleType: 'primary',\n action: 'done'\n },\n {\n text: values[1],\n styleType: 'default',\n action: 'delete'\n },\n {\n text: values[2],\n styleType: 'link',\n action: 'cancel'\n }\n ]);\n });\n });\n break;\n\n case SkyInlineFormButtonLayout.SaveDeleteCancel:\n observableZip(\n this.resourcesService.getString('skyux_inline_form_button_save'),\n this.resourcesService.getString('skyux_inline_form_button_delete'),\n this.resourcesService.getString('skyux_inline_form_button_cancel')\n )\n .pipe(take(1))\n .subscribe((values: any) => {\n promise = new Promise<SkyInlineFormButtonConfig[]>((resolve: any) => {\n resolve([\n {\n text: values[0],\n styleType: 'primary',\n action: 'save'\n },\n {\n text: values[1],\n styleType: 'default',\n action: 'delete'\n },\n {\n text: values[2],\n styleType: 'link',\n action: 'cancel'\n }\n ]);\n });\n });\n break;\n }\n\n return promise;\n }\n\n private getCustomButtons(buttonConfigs: SkyInlineFormButtonConfig[]): SkyInlineFormButtonConfig[] {\n const buttons: SkyInlineFormButtonConfig[] = [];\n\n buttonConfigs.forEach((config: SkyInlineFormButtonConfig) => {\n /* istanbul ignore next */\n const styleType = config.styleType || 'default';\n\n buttons.push({\n action: config.action,\n disabled: config.disabled,\n styleType: styleType,\n text: config.text\n } as SkyInlineFormButtonConfig);\n });\n\n return buttons;\n }\n\n private isValidCustomConfig(config: SkyInlineFormConfig): boolean {\n return (\n config &&\n config.buttonLayout === SkyInlineFormButtonLayout.Custom &&\n config.buttons.length > 0\n );\n }\n\n}\n","<div\n [@skySlideDissolve]=\"showForm\"\n>\n\n <div *ngIf=\"!showForm\"\n class=\"sky-slide-dissolve-first\"\n >\n <ng-content></ng-content>\n </div>\n\n <div *ngIf=\"template && showForm\"\n class=\"sky-slide-dissolve-last\"\n >\n <div\n class=\"sky-inline-form sky-shadow sky-box sky-elevation-3\"\n >\n <div\n class=\"sky-inline-form-content\"\n >\n <ng-container\n [ngTemplateOutlet]=\"template\"\n >\n </ng-container>\n </div>\n <div\n class=\"sky-inline-form-footer\"\n >\n <button *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\n</div>\n","/**\n * NOTICE: DO NOT MODIFY THIS FILE!\n * The contents of this file were automatically generated by\n * the 'ng generate @skyux/i18n:lib-resources-module modules/shared/sky-inline-form' schematic.\n * To update this file, simply rerun the command.\n */\n\nimport { NgModule } from '@angular/core';\nimport {\n getLibStringForLocale,\n SkyAppLocaleInfo,\n SkyI18nModule,\n SkyLibResources,\n SkyLibResourcesProvider,\n SKY_LIB_RESOURCES_PROVIDERS\n} from '@skyux/i18n';\n\nconst RESOURCES: { [locale: string]: SkyLibResources } = {\n 'EN-US': {\"skyux_inline_form_button_cancel\":{\"message\":\"Cancel\"},\"skyux_inline_form_button_delete\":{\"message\":\"Delete\"},\"skyux_inline_form_button_done\":{\"message\":\"Done\"},\"skyux_inline_form_button_save\":{\"message\":\"Save\"}},\n};\n\nexport class SkyInlineFormResourcesProvider implements SkyLibResourcesProvider {\n public getString(localeInfo: SkyAppLocaleInfo, name: string): string {\n return getLibStringForLocale(RESOURCES, localeInfo.locale, name);\n }\n}\n\n/**\n * Import into any component library module that needs to use resource strings.\n */\n@NgModule({\n exports: [SkyI18nModule],\n providers: [{\n provide: SKY_LIB_RESOURCES_PROVIDERS,\n useClass: SkyInlineFormResourcesProvider,\n multi: true\n }]\n})\nexport class SkyInlineFormResourcesModule { }\n","import {\n CommonModule\n} from '@angular/common';\n\nimport {\n NgModule\n} from '@angular/core';\n\nimport {\n SkyInlineFormComponent\n} from './inline-form.component';\n\nimport {\n SkyInlineFormResourcesModule\n} from '../shared/sky-inline-form-resources.module';\n\n@NgModule({\n declarations: [\n SkyInlineFormComponent\n ],\n imports: [\n CommonModule,\n SkyInlineFormResourcesModule\n ],\n exports: [\n SkyInlineFormComponent\n ]\n})\nexport class SkyInlineFormModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["trigger","transition","query","style","animate","group","SkyInlineFormButtonLayout","Injectable","EventEmitter","observableZip","take","Component","ChangeDetectionStrategy","Input","Output","getLibStringForLocale","SkyI18nModule","SKY_LIB_RESOURCES_PROVIDERS","NgModule","CommonModule"],"mappings":"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"}
1
+ {"version":3,"file":"skyux-inline-form.umd.js","sources":["../../../projects/inline-form/src/modules/inline-form/animations/slide-dissolve.ts","../../../projects/inline-form/src/modules/inline-form/types/inline-form-button-layout.ts","../../../projects/inline-form/src/modules/inline-form/inline-form-adapter.service.ts","../../../projects/inline-form/src/modules/inline-form/inline-form.component.ts","../../../projects/inline-form/src/modules/inline-form/inline-form.component.html","../../../projects/inline-form/src/modules/shared/sky-inline-form-resources.module.ts","../../../projects/inline-form/src/modules/inline-form/inline-form.module.ts","../../../projects/inline-form/src/skyux-inline-form.ts"],"sourcesContent":["import {\n animate,\n AnimationTriggerMetadata,\n group,\n query,\n style,\n transition,\n trigger,\n} from '@angular/animations';\n\nexport const skySlideDissolve: AnimationTriggerMetadata = trigger(\n 'skySlideDissolve',\n [\n transition('* <=> *', [\n // Expand animations\n query(\n '.sky-slide-dissolve-last:enter',\n [\n style({ height: 0, opacity: 0 }),\n animate('200ms ease-in', style({ height: '*', opacity: 0 })),\n ],\n { optional: true }\n ),\n query(\n '.sky-slide-dissolve-last:enter',\n [\n style({ opacity: 0 }),\n animate('200ms ease-in', style({ opacity: 1 })),\n ],\n { optional: true }\n ),\n\n // Collapse animations\n // The expanded content should fade out immediately to prevent\n // any overlap with the read-only content that's returning to the screen.\n query(\n '.sky-slide-dissolve-last:leave',\n [animate('0ms', style({ opacity: 0 }))],\n { optional: true }\n ),\n\n group([\n query(\n '.sky-slide-dissolve-first:enter',\n [\n style({ opacity: 0, height: 0 }),\n animate('100ms ease-in', style({ opacity: 1, height: '*' })),\n ],\n { optional: true }\n ),\n query(\n '.sky-slide-dissolve-last:leave',\n [animate('200ms ease-in', style({ height: 0 }))],\n { optional: true }\n ),\n ]),\n ]),\n ]\n);\n","export enum SkyInlineFormButtonLayout {\n Custom = 0,\n DoneCancel = 1,\n DoneDeleteCancel = 2,\n SaveCancel = 3,\n SaveDeleteCancel = 4,\n}\n","import { ElementRef, Injectable } from '@angular/core';\n\n/* tslint:disable */\nconst SKY_TABBABLE_SELECTOR = [\n 'a[href]',\n 'area[href]',\n \"input:not([disabled]):not([tabindex='-1'])\",\n \"button:not([disabled]):not([tabindex='-1'])\",\n \"select:not([disabled]):not([tabindex='-1'])\",\n \"textarea:not([disabled]):not([tabindex='-1'])\",\n 'iframe',\n 'object',\n 'embed',\n \"*[tabindex]:not([tabindex='-1'])\",\n '*[contenteditable=true]',\n].join(', ');\n/* tslint:enable */\n\n/**\n * @internal\n */\n@Injectable()\nexport class SkyInlineFormAdapterService {\n public applyAutofocus(inlineFormElementRef: ElementRef): void {\n const inputWithAutofocus =\n inlineFormElementRef.nativeElement.querySelector('[autofocus]');\n\n if (inputWithAutofocus) {\n inputWithAutofocus.focus();\n } else {\n let focusEl: HTMLElement =\n inlineFormElementRef.nativeElement.querySelector(\n '.sky-inline-form-content'\n );\n let focusableChildren = this.loadFocusableChildren(focusEl);\n\n this.focusFirstElement(focusableChildren);\n }\n }\n\n private loadFocusableChildren(elem: HTMLElement): HTMLElement[] {\n const elements: Array<HTMLElement> = Array.prototype.slice.call(\n elem.querySelectorAll(SKY_TABBABLE_SELECTOR)\n );\n\n return elements.filter((element) => {\n return this.isVisible(element);\n });\n }\n\n private isVisible(element: HTMLElement): boolean {\n const style = window.getComputedStyle(element);\n const isHidden = style.display === 'none' || style.visibility === 'hidden';\n if (isHidden) {\n return false;\n }\n\n /* istanbul ignore next */\n const hasBounds = !!(\n element.offsetWidth ||\n element.offsetHeight ||\n element.getClientRects().length\n );\n return hasBounds;\n }\n\n private focusFirstElement(list: Array<HTMLElement>): void {\n if (list.length > 0) {\n list[0].focus();\n }\n }\n}\n","import {\n ChangeDetectorRef,\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n EventEmitter,\n Input,\n OnDestroy,\n OnInit,\n Output,\n TemplateRef,\n} from '@angular/core';\n\nimport { SkyAppWindowRef } from '@skyux/core';\n\nimport { SkyLibResourcesService } from '@skyux/i18n';\n\nimport { zip as observableZip } from 'rxjs';\n\nimport { take } from 'rxjs/operators';\n\nimport { skySlideDissolve } from './animations/slide-dissolve';\n\nimport { SkyInlineFormButtonConfig } from './types/inline-form-button-config';\n\nimport { SkyInlineFormButtonLayout } from './types/inline-form-button-layout';\n\nimport { SkyInlineFormCloseArgs } from './types/inline-form-close-args';\n\nimport { SkyInlineFormConfig } from './types/inline-form-config';\n\nimport { SkyInlineFormAdapterService } from './inline-form-adapter.service';\n\n/**\n * Renders form content in the current view instead of a separate modal.\n */\n@Component({\n selector: 'sky-inline-form',\n templateUrl: './inline-form.component.html',\n styleUrls: ['./inline-form.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [SkyInlineFormAdapterService],\n animations: [skySlideDissolve],\n})\nexport class SkyInlineFormComponent implements OnInit, OnDestroy {\n /**\n * Specifies configuration options for the buttons to display with the inline form.\n * @required\n */\n @Input()\n public set config(value: SkyInlineFormConfig) {\n if (value !== this._config) {\n this._config = value;\n this.setupButtons();\n }\n }\n\n public get config(): SkyInlineFormConfig {\n return this._config;\n }\n\n /**\n * Specifies a template to use to instantiate the inline form.\n * @required\n */\n @Input()\n public template: TemplateRef<any>;\n\n /**\n * Indicates whether to display the inline form. Users can toggle between displaying\n * and hiding the inline form.\n * @default false\n */\n @Input()\n public set showForm(value: boolean) {\n this._showForm = value;\n\n /* istanbul ignore else */\n if (value) {\n // setTimeout() prevents applyAutofocus() from firing\n // until after *ngIf has added the form element to the DOM.\n this.skyAppWindowRef.nativeWindow.setTimeout(() => {\n this.adapter.applyAutofocus(this.elementRef);\n });\n }\n }\n\n public get showForm() {\n return this._showForm;\n }\n\n /**\n * Fires when users close the inline form.\n */\n @Output()\n // eslint-disable-next-line @angular-eslint/no-output-native\n public close = new EventEmitter<SkyInlineFormCloseArgs>();\n\n public buttons: SkyInlineFormButtonConfig[];\n\n private _config: SkyInlineFormConfig;\n\n private _showForm: boolean = false;\n\n constructor(\n private adapter: SkyInlineFormAdapterService,\n private elementRef: ElementRef,\n private resourcesService: SkyLibResourcesService,\n private skyAppWindowRef: SkyAppWindowRef,\n private changeDetectorRef: ChangeDetectorRef\n ) {}\n\n public ngOnInit(): void {\n this.setupButtons();\n }\n\n public ngOnDestroy(): void {\n this.close.complete();\n }\n\n public closeInlineForm(event: SkyInlineFormButtonConfig): void {\n const args: SkyInlineFormCloseArgs = {\n reason: event.action,\n };\n this.close.emit(args);\n }\n\n private setupButtons(): void {\n if (this.isValidCustomConfig(this.config)) {\n this.buttons = this.getCustomButtons(this.config.buttons);\n this.changeDetectorRef.markForCheck();\n return;\n }\n\n this.getPresetButtons().then((buttons) => {\n this.buttons = buttons;\n this.changeDetectorRef.markForCheck();\n });\n }\n\n private getPresetButtons(): Promise<SkyInlineFormButtonConfig[]> {\n let buttonType = this.config\n ? this.config.buttonLayout\n : SkyInlineFormButtonLayout.DoneCancel;\n\n let promise: Promise<SkyInlineFormButtonConfig[]>;\n\n switch (buttonType) {\n /* istanbul ignore next */\n default:\n case SkyInlineFormButtonLayout.DoneCancel:\n observableZip(\n this.resourcesService.getString('skyux_inline_form_button_done'),\n this.resourcesService.getString('skyux_inline_form_button_cancel')\n )\n .pipe(take(1))\n .subscribe((values: any) => {\n promise = new Promise<SkyInlineFormButtonConfig[]>(\n (resolve: any) => {\n resolve([\n {\n text: values[0],\n styleType: 'primary',\n action: 'done',\n },\n {\n text: values[1],\n styleType: 'link',\n action: 'cancel',\n },\n ]);\n }\n );\n });\n break;\n\n case SkyInlineFormButtonLayout.SaveCancel:\n observableZip(\n this.resourcesService.getString('skyux_inline_form_button_save'),\n this.resourcesService.getString('skyux_inline_form_button_cancel')\n )\n .pipe(take(1))\n .subscribe((values: any) => {\n promise = new Promise<SkyInlineFormButtonConfig[]>(\n (resolve: any) => {\n resolve([\n {\n text: values[0],\n styleType: 'primary',\n action: 'save',\n },\n {\n text: values[1],\n styleType: 'link',\n action: 'cancel',\n },\n ]);\n }\n );\n });\n break;\n\n case SkyInlineFormButtonLayout.DoneDeleteCancel:\n observableZip(\n this.resourcesService.getString('skyux_inline_form_button_done'),\n this.resourcesService.getString('skyux_inline_form_button_delete'),\n this.resourcesService.getString('skyux_inline_form_button_cancel')\n )\n .pipe(take(1))\n .subscribe((values: any) => {\n promise = new Promise<SkyInlineFormButtonConfig[]>(\n (resolve: any) => {\n resolve([\n {\n text: values[0],\n styleType: 'primary',\n action: 'done',\n },\n {\n text: values[1],\n styleType: 'default',\n action: 'delete',\n },\n {\n text: values[2],\n styleType: 'link',\n action: 'cancel',\n },\n ]);\n }\n );\n });\n break;\n\n case SkyInlineFormButtonLayout.SaveDeleteCancel:\n observableZip(\n this.resourcesService.getString('skyux_inline_form_button_save'),\n this.resourcesService.getString('skyux_inline_form_button_delete'),\n this.resourcesService.getString('skyux_inline_form_button_cancel')\n )\n .pipe(take(1))\n .subscribe((values: any) => {\n promise = new Promise<SkyInlineFormButtonConfig[]>(\n (resolve: any) => {\n resolve([\n {\n text: values[0],\n styleType: 'primary',\n action: 'save',\n },\n {\n text: values[1],\n styleType: 'default',\n action: 'delete',\n },\n {\n text: values[2],\n styleType: 'link',\n action: 'cancel',\n },\n ]);\n }\n );\n });\n break;\n }\n\n return promise;\n }\n\n private getCustomButtons(\n buttonConfigs: SkyInlineFormButtonConfig[]\n ): SkyInlineFormButtonConfig[] {\n const buttons: SkyInlineFormButtonConfig[] = [];\n\n buttonConfigs.forEach((config: SkyInlineFormButtonConfig) => {\n /* istanbul ignore next */\n const styleType = config.styleType || 'default';\n\n buttons.push({\n action: config.action,\n disabled: config.disabled,\n styleType: styleType,\n text: config.text,\n } as SkyInlineFormButtonConfig);\n });\n\n return buttons;\n }\n\n private isValidCustomConfig(config: SkyInlineFormConfig): boolean {\n return (\n config &&\n config.buttonLayout === SkyInlineFormButtonLayout.Custom &&\n config.buttons.length > 0\n );\n }\n}\n","<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","/**\n * NOTICE: DO NOT MODIFY THIS FILE!\n * The contents of this file were automatically generated by\n * the 'ng generate @skyux/i18n:lib-resources-module modules/shared/sky-inline-form' schematic.\n * To update this file, simply rerun the command.\n */\n\nimport { NgModule } from '@angular/core';\nimport {\n getLibStringForLocale,\n SkyAppLocaleInfo,\n SkyI18nModule,\n SkyLibResources,\n SkyLibResourcesProvider,\n SKY_LIB_RESOURCES_PROVIDERS,\n} from '@skyux/i18n';\n\nconst RESOURCES: { [locale: string]: SkyLibResources } = {\n 'EN-US': {\n skyux_inline_form_button_cancel: { message: 'Cancel' },\n skyux_inline_form_button_delete: { message: 'Delete' },\n skyux_inline_form_button_done: { message: 'Done' },\n skyux_inline_form_button_save: { message: 'Save' },\n },\n};\n\nexport class SkyInlineFormResourcesProvider implements SkyLibResourcesProvider {\n public getString(localeInfo: SkyAppLocaleInfo, name: string): string {\n return getLibStringForLocale(RESOURCES, localeInfo.locale, name);\n }\n}\n\n/**\n * Import into any component library module that needs to use resource strings.\n */\n@NgModule({\n exports: [SkyI18nModule],\n providers: [\n {\n provide: SKY_LIB_RESOURCES_PROVIDERS,\n useClass: SkyInlineFormResourcesProvider,\n multi: true,\n },\n ],\n})\nexport class SkyInlineFormResourcesModule {}\n","import { CommonModule } from '@angular/common';\n\nimport { NgModule } from '@angular/core';\n\nimport { SkyInlineFormComponent } from './inline-form.component';\n\nimport { SkyInlineFormResourcesModule } from '../shared/sky-inline-form-resources.module';\n\n@NgModule({\n declarations: [SkyInlineFormComponent],\n imports: [CommonModule, SkyInlineFormResourcesModule],\n exports: [SkyInlineFormComponent],\n})\nexport class SkyInlineFormModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["trigger","transition","query","style","animate","group","SkyInlineFormButtonLayout","Injectable","EventEmitter","observableZip","take","Component","ChangeDetectionStrategy","Input","Output","getLibStringForLocale","SkyI18nModule","SKY_LIB_RESOURCES_PROVIDERS","NgModule","CommonModule"],"mappings":"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"}