@skyux/layout 7.0.0-beta.0 → 7.0.0-beta.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (96) hide show
  1. package/documentation.json +1849 -1017
  2. package/esm2020/index.mjs +2 -2
  3. package/esm2020/lib/modules/action-button/action-button-adapter-service.mjs +22 -18
  4. package/esm2020/lib/modules/action-button/action-button-container.component.mjs +62 -54
  5. package/esm2020/lib/modules/action-button/action-button-icon.component.mjs +9 -6
  6. package/esm2020/lib/modules/action-button/action-button.component.mjs +10 -6
  7. package/esm2020/lib/modules/back-to-top/back-to-top-adapter.service.mjs +19 -15
  8. package/esm2020/lib/modules/back-to-top/back-to-top.component.mjs +8 -5
  9. package/esm2020/lib/modules/back-to-top/back-to-top.directive.mjs +68 -63
  10. package/esm2020/lib/modules/box/box.component.mjs +1 -1
  11. package/esm2020/lib/modules/card/card.component.mjs +38 -11
  12. package/esm2020/lib/modules/definition-list/definition-list-label.component.mjs +1 -1
  13. package/esm2020/lib/modules/definition-list/definition-list-value.component.mjs +3 -3
  14. package/esm2020/lib/modules/definition-list/definition-list.component.mjs +1 -1
  15. package/esm2020/lib/modules/definition-list/definition-list.service.mjs +1 -1
  16. package/esm2020/lib/modules/description-list/description-list-adapter-service.mjs +26 -22
  17. package/esm2020/lib/modules/description-list/description-list-content.component.mjs +2 -2
  18. package/esm2020/lib/modules/description-list/description-list-description.component.mjs +16 -11
  19. package/esm2020/lib/modules/description-list/description-list-term.component.mjs +1 -1
  20. package/esm2020/lib/modules/description-list/description-list.component.mjs +25 -16
  21. package/esm2020/lib/modules/fluid-grid/column.component.mjs +19 -1
  22. package/esm2020/lib/modules/fluid-grid/fluid-grid.component.mjs +15 -35
  23. package/esm2020/lib/modules/fluid-grid/row.component.mjs +1 -1
  24. package/esm2020/lib/modules/fluid-grid/types/fluid-grid-gutter-size-type.mjs +1 -1
  25. package/esm2020/lib/modules/format/format.component.mjs +34 -26
  26. package/esm2020/lib/modules/inline-delete/inline-delete-adapter.service.mjs +91 -83
  27. package/esm2020/lib/modules/inline-delete/inline-delete.component.mjs +15 -9
  28. package/esm2020/lib/modules/page/page-layout-type.mjs +2 -0
  29. package/esm2020/lib/modules/page/page-theme-adapter.service.mjs +23 -11
  30. package/esm2020/lib/modules/page/page.component.mjs +28 -9
  31. package/esm2020/lib/modules/page/page.module.mjs +5 -3
  32. package/esm2020/lib/modules/page-summary/page-summary-adapter.service.mjs +1 -1
  33. package/esm2020/lib/modules/page-summary/page-summary.component.mjs +40 -16
  34. package/esm2020/lib/modules/text-expand/text-expand-adapter.service.mjs +8 -10
  35. package/esm2020/lib/modules/text-expand/text-expand-modal-context-token.mjs +6 -0
  36. package/esm2020/lib/modules/text-expand/text-expand-modal-context.mjs +2 -6
  37. package/esm2020/lib/modules/text-expand/text-expand-modal.component.mjs +12 -10
  38. package/esm2020/lib/modules/text-expand/text-expand.component.mjs +188 -127
  39. package/esm2020/lib/modules/text-expand-repeater/text-expand-repeater-adapter.service.mjs +10 -12
  40. package/esm2020/lib/modules/text-expand-repeater/text-expand-repeater.component.mjs +139 -95
  41. package/esm2020/lib/modules/toolbar/toolbar.component.mjs +4 -4
  42. package/esm2020/testing/action-button-fixture.mjs +12 -6
  43. package/esm2020/testing/card-fixture.mjs +19 -16
  44. package/esm2020/testing/page-summary-fixture.mjs +9 -5
  45. package/fesm2015/skyux-layout-testing.mjs +35 -24
  46. package/fesm2015/skyux-layout-testing.mjs.map +1 -1
  47. package/fesm2015/skyux-layout.mjs +897 -682
  48. package/fesm2015/skyux-layout.mjs.map +1 -1
  49. package/fesm2020/skyux-layout-testing.mjs +35 -24
  50. package/fesm2020/skyux-layout-testing.mjs.map +1 -1
  51. package/fesm2020/skyux-layout.mjs +890 -682
  52. package/fesm2020/skyux-layout.mjs.map +1 -1
  53. package/index.d.ts +1 -1
  54. package/lib/modules/action-button/action-button-adapter-service.d.ts +1 -2
  55. package/lib/modules/action-button/action-button-container.component.d.ts +6 -17
  56. package/lib/modules/action-button/action-button-icon.component.d.ts +2 -3
  57. package/lib/modules/action-button/action-button.component.d.ts +3 -3
  58. package/lib/modules/back-to-top/back-to-top-adapter.service.d.ts +1 -4
  59. package/lib/modules/back-to-top/back-to-top.component.d.ts +1 -1
  60. package/lib/modules/back-to-top/back-to-top.directive.d.ts +4 -16
  61. package/lib/modules/box/box.component.d.ts +3 -3
  62. package/lib/modules/card/card.component.d.ts +7 -6
  63. package/lib/modules/definition-list/definition-list-label.component.d.ts +1 -1
  64. package/lib/modules/definition-list/definition-list-value.component.d.ts +1 -1
  65. package/lib/modules/definition-list/definition-list.component.d.ts +2 -2
  66. package/lib/modules/definition-list/definition-list.service.d.ts +2 -2
  67. package/lib/modules/description-list/description-list-adapter-service.d.ts +1 -2
  68. package/lib/modules/description-list/description-list-content.component.d.ts +2 -2
  69. package/lib/modules/description-list/description-list-description.component.d.ts +5 -7
  70. package/lib/modules/description-list/description-list-term.component.d.ts +1 -1
  71. package/lib/modules/description-list/description-list.component.d.ts +6 -7
  72. package/lib/modules/fluid-grid/column.component.d.ts +7 -5
  73. package/lib/modules/fluid-grid/fluid-grid.component.d.ts +3 -9
  74. package/lib/modules/fluid-grid/row.component.d.ts +1 -1
  75. package/lib/modules/fluid-grid/types/fluid-grid-gutter-size-type.d.ts +1 -1
  76. package/lib/modules/format/format.component.d.ts +5 -7
  77. package/lib/modules/inline-delete/inline-delete-adapter.service.d.ts +1 -11
  78. package/lib/modules/inline-delete/inline-delete.component.d.ts +3 -5
  79. package/lib/modules/page/page-layout-type.d.ts +1 -0
  80. package/lib/modules/page/page-theme-adapter.service.d.ts +2 -1
  81. package/lib/modules/page/page.component.d.ts +11 -3
  82. package/lib/modules/page/page.module.d.ts +2 -1
  83. package/lib/modules/page-summary/page-summary.component.d.ts +8 -9
  84. package/lib/modules/text-expand/text-expand-adapter.service.d.ts +3 -4
  85. package/lib/modules/text-expand/text-expand-modal-context-token.d.ts +6 -0
  86. package/lib/modules/text-expand/text-expand-modal-context.d.ts +1 -1
  87. package/lib/modules/text-expand/text-expand.component.d.ts +18 -25
  88. package/lib/modules/text-expand-repeater/text-expand-repeater-adapter.service.d.ts +4 -5
  89. package/lib/modules/text-expand-repeater/text-expand-repeater.component.d.ts +13 -21
  90. package/lib/modules/toolbar/toolbar.component.d.ts +4 -4
  91. package/package.json +9 -9
  92. package/testing/action-button-fixture.d.ts +4 -4
  93. package/testing/card-fixture.d.ts +3 -5
  94. package/testing/page-summary-fixture.d.ts +4 -4
  95. package/esm2020/lib/modules/fluid-grid/fluid-grid-gutter-size.mjs +0 -20
  96. package/lib/modules/fluid-grid/fluid-grid-gutter-size.d.ts +0 -18
@@ -1,9 +1,26 @@
1
+ var _SkyColumnComponent__screenXSmall;
2
+ import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
1
3
  import { Component, HostBinding, Input, ViewEncapsulation, } from '@angular/core';
2
4
  import * as i0 from "@angular/core";
3
5
  /**
4
6
  * Displays a column within a row of the fluid grid.
5
7
  */
6
8
  export class SkyColumnComponent {
9
+ constructor() {
10
+ _SkyColumnComponent__screenXSmall.set(this, 12);
11
+ }
12
+ /**
13
+ * Specifies the number of columns (1-12) to use on extra-small screens
14
+ * (less than 768px). If you do not specify a value, the fluid grid displays
15
+ * the column at the full width of the screen.
16
+ * @default 12
17
+ */
18
+ set screenXSmall(value) {
19
+ __classPrivateFieldSet(this, _SkyColumnComponent__screenXSmall, value ?? 12, "f");
20
+ }
21
+ get screenXSmall() {
22
+ return __classPrivateFieldGet(this, _SkyColumnComponent__screenXSmall, "f");
23
+ }
7
24
  ngOnChanges(changes) {
8
25
  /* istanbul ignore else */
9
26
  if (changes.screenXSmall ||
@@ -33,6 +50,7 @@ export class SkyColumnComponent {
33
50
  this.classnames = this.getClassNames();
34
51
  }
35
52
  }
53
+ _SkyColumnComponent__screenXSmall = new WeakMap();
36
54
  SkyColumnComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyColumnComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
37
55
  SkyColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: SkyColumnComponent, selector: "sky-column", inputs: { screenXSmall: "screenXSmall", screenSmall: "screenSmall", screenMedium: "screenMedium", screenLarge: "screenLarge" }, host: { properties: { "class": "this.classnames" } }, usesOnChanges: true, ngImport: i0, template: "<ng-content></ng-content>\n", styles: ["sky-column.sky-column{padding-right:15px;padding-left:15px;width:100%;min-height:1px}.sky-theme-modern sky-column.sky-column{padding-right:30px;padding-left:30px}.sky-fluid-grid-gutter-size-small sky-column.sky-column{padding-right:5px;padding-left:5px}.sky-fluid-grid-gutter-size-medium sky-column.sky-column{padding-right:10px;padding-left:10px}.sky-theme-modern .sky-fluid-grid-gutter-size-small sky-column.sky-column{padding-right:10px;padding-left:10px}.sky-theme-modern .sky-fluid-grid-gutter-size-medium sky-column.sky-column{padding-right:15px;padding-left:15px}sky-column.sky-column-xs-1{width:calc(1 / 12 * 100%)}sky-column.sky-column-xs-2{width:calc(2 / 12 * 100%)}sky-column.sky-column-xs-3{width:25%}sky-column.sky-column-xs-4{width:calc(4 / 12 * 100%)}sky-column.sky-column-xs-5{width:calc(5 / 12 * 100%)}sky-column.sky-column-xs-6{width:50%}sky-column.sky-column-xs-7{width:calc(7 / 12 * 100%)}sky-column.sky-column-xs-8{width:calc(8 / 12 * 100%)}sky-column.sky-column-xs-9{width:75%}sky-column.sky-column-xs-10{width:calc(10 / 12 * 100%)}sky-column.sky-column-xs-11{width:calc(11 / 12 * 100%)}sky-column.sky-column-xs-12{width:100%}sky-column:not([class*=sky-column-xs-]){width:100%}.sky-responsive-container-xs sky-column.sky-column-xs-1,.sky-responsive-container-sm sky-column.sky-column-xs-1,.sky-responsive-container-md sky-column.sky-column-xs-1,.sky-responsive-container-lg sky-column.sky-column-xs-1{width:calc(1 / 12 * 100%)}.sky-responsive-container-xs sky-column.sky-column-xs-2,.sky-responsive-container-sm sky-column.sky-column-xs-2,.sky-responsive-container-md sky-column.sky-column-xs-2,.sky-responsive-container-lg sky-column.sky-column-xs-2{width:calc(2 / 12 * 100%)}.sky-responsive-container-xs sky-column.sky-column-xs-3,.sky-responsive-container-sm sky-column.sky-column-xs-3,.sky-responsive-container-md sky-column.sky-column-xs-3,.sky-responsive-container-lg sky-column.sky-column-xs-3{width:25%}.sky-responsive-container-xs sky-column.sky-column-xs-4,.sky-responsive-container-sm sky-column.sky-column-xs-4,.sky-responsive-container-md sky-column.sky-column-xs-4,.sky-responsive-container-lg sky-column.sky-column-xs-4{width:calc(4 / 12 * 100%)}.sky-responsive-container-xs sky-column.sky-column-xs-5,.sky-responsive-container-sm sky-column.sky-column-xs-5,.sky-responsive-container-md sky-column.sky-column-xs-5,.sky-responsive-container-lg sky-column.sky-column-xs-5{width:calc(5 / 12 * 100%)}.sky-responsive-container-xs sky-column.sky-column-xs-6,.sky-responsive-container-sm sky-column.sky-column-xs-6,.sky-responsive-container-md sky-column.sky-column-xs-6,.sky-responsive-container-lg sky-column.sky-column-xs-6{width:50%}.sky-responsive-container-xs sky-column.sky-column-xs-7,.sky-responsive-container-sm sky-column.sky-column-xs-7,.sky-responsive-container-md sky-column.sky-column-xs-7,.sky-responsive-container-lg sky-column.sky-column-xs-7{width:calc(7 / 12 * 100%)}.sky-responsive-container-xs sky-column.sky-column-xs-8,.sky-responsive-container-sm sky-column.sky-column-xs-8,.sky-responsive-container-md sky-column.sky-column-xs-8,.sky-responsive-container-lg sky-column.sky-column-xs-8{width:calc(8 / 12 * 100%)}.sky-responsive-container-xs sky-column.sky-column-xs-9,.sky-responsive-container-sm sky-column.sky-column-xs-9,.sky-responsive-container-md sky-column.sky-column-xs-9,.sky-responsive-container-lg sky-column.sky-column-xs-9{width:75%}.sky-responsive-container-xs sky-column.sky-column-xs-10,.sky-responsive-container-sm sky-column.sky-column-xs-10,.sky-responsive-container-md sky-column.sky-column-xs-10,.sky-responsive-container-lg sky-column.sky-column-xs-10{width:calc(10 / 12 * 100%)}.sky-responsive-container-xs sky-column.sky-column-xs-11,.sky-responsive-container-sm sky-column.sky-column-xs-11,.sky-responsive-container-md sky-column.sky-column-xs-11,.sky-responsive-container-lg sky-column.sky-column-xs-11{width:calc(11 / 12 * 100%)}.sky-responsive-container-xs sky-column.sky-column-xs-12,.sky-responsive-container-sm sky-column.sky-column-xs-12,.sky-responsive-container-md sky-column.sky-column-xs-12,.sky-responsive-container-lg sky-column.sky-column-xs-12{width:100%}.sky-responsive-container-xs sky-column:not([class*=sky-column-xs-]),.sky-responsive-container-sm sky-column:not([class*=sky-column-xs-]),.sky-responsive-container-md sky-column:not([class*=sky-column-xs-]),.sky-responsive-container-lg sky-column:not([class*=sky-column-xs-]){width:100%}@media (min-width: 768px){sky-column.sky-column-sm-1{width:calc(1 / 12 * 100%)}sky-column.sky-column-sm-2{width:calc(2 / 12 * 100%)}sky-column.sky-column-sm-3{width:25%}sky-column.sky-column-sm-4{width:calc(4 / 12 * 100%)}sky-column.sky-column-sm-5{width:calc(5 / 12 * 100%)}sky-column.sky-column-sm-6{width:50%}sky-column.sky-column-sm-7{width:calc(7 / 12 * 100%)}sky-column.sky-column-sm-8{width:calc(8 / 12 * 100%)}sky-column.sky-column-sm-9{width:75%}sky-column.sky-column-sm-10{width:calc(10 / 12 * 100%)}sky-column.sky-column-sm-11{width:calc(11 / 12 * 100%)}sky-column.sky-column-sm-12{width:100%}}.sky-responsive-container-sm sky-column.sky-column-sm-1,.sky-responsive-container-md sky-column.sky-column-sm-1,.sky-responsive-container-lg sky-column.sky-column-sm-1{width:calc(1 / 12 * 100%)}.sky-responsive-container-sm sky-column.sky-column-sm-2,.sky-responsive-container-md sky-column.sky-column-sm-2,.sky-responsive-container-lg sky-column.sky-column-sm-2{width:calc(2 / 12 * 100%)}.sky-responsive-container-sm sky-column.sky-column-sm-3,.sky-responsive-container-md sky-column.sky-column-sm-3,.sky-responsive-container-lg sky-column.sky-column-sm-3{width:25%}.sky-responsive-container-sm sky-column.sky-column-sm-4,.sky-responsive-container-md sky-column.sky-column-sm-4,.sky-responsive-container-lg sky-column.sky-column-sm-4{width:calc(4 / 12 * 100%)}.sky-responsive-container-sm sky-column.sky-column-sm-5,.sky-responsive-container-md sky-column.sky-column-sm-5,.sky-responsive-container-lg sky-column.sky-column-sm-5{width:calc(5 / 12 * 100%)}.sky-responsive-container-sm sky-column.sky-column-sm-6,.sky-responsive-container-md sky-column.sky-column-sm-6,.sky-responsive-container-lg sky-column.sky-column-sm-6{width:50%}.sky-responsive-container-sm sky-column.sky-column-sm-7,.sky-responsive-container-md sky-column.sky-column-sm-7,.sky-responsive-container-lg sky-column.sky-column-sm-7{width:calc(7 / 12 * 100%)}.sky-responsive-container-sm sky-column.sky-column-sm-8,.sky-responsive-container-md sky-column.sky-column-sm-8,.sky-responsive-container-lg sky-column.sky-column-sm-8{width:calc(8 / 12 * 100%)}.sky-responsive-container-sm sky-column.sky-column-sm-9,.sky-responsive-container-md sky-column.sky-column-sm-9,.sky-responsive-container-lg sky-column.sky-column-sm-9{width:75%}.sky-responsive-container-sm sky-column.sky-column-sm-10,.sky-responsive-container-md sky-column.sky-column-sm-10,.sky-responsive-container-lg sky-column.sky-column-sm-10{width:calc(10 / 12 * 100%)}.sky-responsive-container-sm sky-column.sky-column-sm-11,.sky-responsive-container-md sky-column.sky-column-sm-11,.sky-responsive-container-lg sky-column.sky-column-sm-11{width:calc(11 / 12 * 100%)}.sky-responsive-container-sm sky-column.sky-column-sm-12,.sky-responsive-container-md sky-column.sky-column-sm-12,.sky-responsive-container-lg sky-column.sky-column-sm-12{width:100%}@media (min-width: 992px){sky-column.sky-column-md-1{width:calc(1 / 12 * 100%)}sky-column.sky-column-md-2{width:calc(2 / 12 * 100%)}sky-column.sky-column-md-3{width:25%}sky-column.sky-column-md-4{width:calc(4 / 12 * 100%)}sky-column.sky-column-md-5{width:calc(5 / 12 * 100%)}sky-column.sky-column-md-6{width:50%}sky-column.sky-column-md-7{width:calc(7 / 12 * 100%)}sky-column.sky-column-md-8{width:calc(8 / 12 * 100%)}sky-column.sky-column-md-9{width:75%}sky-column.sky-column-md-10{width:calc(10 / 12 * 100%)}sky-column.sky-column-md-11{width:calc(11 / 12 * 100%)}sky-column.sky-column-md-12{width:100%}}.sky-responsive-container-md sky-column.sky-column-md-1,.sky-responsive-container-lg sky-column.sky-column-md-1{width:calc(1 / 12 * 100%)}.sky-responsive-container-md sky-column.sky-column-md-2,.sky-responsive-container-lg sky-column.sky-column-md-2{width:calc(2 / 12 * 100%)}.sky-responsive-container-md sky-column.sky-column-md-3,.sky-responsive-container-lg sky-column.sky-column-md-3{width:25%}.sky-responsive-container-md sky-column.sky-column-md-4,.sky-responsive-container-lg sky-column.sky-column-md-4{width:calc(4 / 12 * 100%)}.sky-responsive-container-md sky-column.sky-column-md-5,.sky-responsive-container-lg sky-column.sky-column-md-5{width:calc(5 / 12 * 100%)}.sky-responsive-container-md sky-column.sky-column-md-6,.sky-responsive-container-lg sky-column.sky-column-md-6{width:50%}.sky-responsive-container-md sky-column.sky-column-md-7,.sky-responsive-container-lg sky-column.sky-column-md-7{width:calc(7 / 12 * 100%)}.sky-responsive-container-md sky-column.sky-column-md-8,.sky-responsive-container-lg sky-column.sky-column-md-8{width:calc(8 / 12 * 100%)}.sky-responsive-container-md sky-column.sky-column-md-9,.sky-responsive-container-lg sky-column.sky-column-md-9{width:75%}.sky-responsive-container-md sky-column.sky-column-md-10,.sky-responsive-container-lg sky-column.sky-column-md-10{width:calc(10 / 12 * 100%)}.sky-responsive-container-md sky-column.sky-column-md-11,.sky-responsive-container-lg sky-column.sky-column-md-11{width:calc(11 / 12 * 100%)}.sky-responsive-container-md sky-column.sky-column-md-12,.sky-responsive-container-lg sky-column.sky-column-md-12{width:100%}@media (min-width: 1200px){sky-column.sky-column-lg-1{width:calc(1 / 12 * 100%)}sky-column.sky-column-lg-2{width:calc(2 / 12 * 100%)}sky-column.sky-column-lg-3{width:25%}sky-column.sky-column-lg-4{width:calc(4 / 12 * 100%)}sky-column.sky-column-lg-5{width:calc(5 / 12 * 100%)}sky-column.sky-column-lg-6{width:50%}sky-column.sky-column-lg-7{width:calc(7 / 12 * 100%)}sky-column.sky-column-lg-8{width:calc(8 / 12 * 100%)}sky-column.sky-column-lg-9{width:75%}sky-column.sky-column-lg-10{width:calc(10 / 12 * 100%)}sky-column.sky-column-lg-11{width:calc(11 / 12 * 100%)}sky-column.sky-column-lg-12{width:100%}}.sky-responsive-container-lg sky-column.sky-column-lg-1{width:calc(1 / 12 * 100%)}.sky-responsive-container-lg sky-column.sky-column-lg-2{width:calc(2 / 12 * 100%)}.sky-responsive-container-lg sky-column.sky-column-lg-3{width:25%}.sky-responsive-container-lg sky-column.sky-column-lg-4{width:calc(4 / 12 * 100%)}.sky-responsive-container-lg sky-column.sky-column-lg-5{width:calc(5 / 12 * 100%)}.sky-responsive-container-lg sky-column.sky-column-lg-6{width:50%}.sky-responsive-container-lg sky-column.sky-column-lg-7{width:calc(7 / 12 * 100%)}.sky-responsive-container-lg sky-column.sky-column-lg-8{width:calc(8 / 12 * 100%)}.sky-responsive-container-lg sky-column.sky-column-lg-9{width:75%}.sky-responsive-container-lg sky-column.sky-column-lg-10{width:calc(10 / 12 * 100%)}.sky-responsive-container-lg sky-column.sky-column-lg-11{width:calc(11 / 12 * 100%)}.sky-responsive-container-lg sky-column.sky-column-lg-12{width:100%}\n"], encapsulation: i0.ViewEncapsulation.None });
38
56
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyColumnComponent, decorators: [{
@@ -50,4 +68,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImpor
50
68
  type: HostBinding,
51
69
  args: ['class']
52
70
  }] } });
53
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9sYXlvdXQvc3JjL2xpYi9tb2R1bGVzL2ZsdWlkLWdyaWQvY29sdW1uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9sYXlvdXQvc3JjL2xpYi9tb2R1bGVzL2ZsdWlkLWdyaWQvY29sdW1uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsV0FBVyxFQUNYLEtBQUssRUFJTCxpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7O0FBRXZCOztHQUVHO0FBT0gsTUFBTSxPQUFPLGtCQUFrQjtJQXFDdEIsV0FBVyxDQUFDLE9BQXNCO1FBQ3ZDLDBCQUEwQjtRQUMxQixJQUNFLE9BQU8sQ0FBQyxZQUFZO1lBQ3BCLE9BQU8sQ0FBQyxXQUFXO1lBQ25CLE9BQU8sQ0FBQyxZQUFZO1lBQ3BCLE9BQU8sQ0FBQyxXQUFXLEVBQ25CO1lBQ0EsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7U0FDeEM7SUFDSCxDQUFDO0lBRU0sYUFBYTtRQUNsQixNQUFNLFVBQVUsR0FBRyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBRWxDLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRTtZQUNyQixVQUFVLENBQUMsSUFBSSxDQUFDLGlCQUFpQixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQztTQUN2RDtRQUVELElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNwQixVQUFVLENBQUMsSUFBSSxDQUFDLGlCQUFpQixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztTQUN0RDtRQUVELElBQUksSUFBSSxDQUFDLFlBQVksRUFBRTtZQUNyQixVQUFVLENBQUMsSUFBSSxDQUFDLGlCQUFpQixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQztTQUN2RDtRQUVELElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNwQixVQUFVLENBQUMsSUFBSSxDQUFDLGlCQUFpQixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztTQUN0RDtRQUVELE9BQU8sVUFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRU0sUUFBUTtRQUNiLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3pDLENBQUM7OytHQXpFVSxrQkFBa0I7bUdBQWxCLGtCQUFrQiw2UENuQi9CLDZCQUNBOzJGRGtCYSxrQkFBa0I7a0JBTjlCLFNBQVM7K0JBQ0UsWUFBWSxpQkFHUCxpQkFBaUIsQ0FBQyxJQUFJOzhCQVU5QixZQUFZO3NCQURsQixLQUFLO2dCQVNDLFdBQVc7c0JBRGpCLEtBQUs7Z0JBU0MsWUFBWTtzQkFEbEIsS0FBSztnQkFTQyxXQUFXO3NCQURqQixLQUFLO2dCQUlDLFVBQVU7c0JBRGhCLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgSG9zdEJpbmRpbmcsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uSW5pdCxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG4vKipcbiAqIERpc3BsYXlzIGEgY29sdW1uIHdpdGhpbiBhIHJvdyBvZiB0aGUgZmx1aWQgZ3JpZC5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2t5LWNvbHVtbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9jb2x1bW4uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jb2x1bW4uY29tcG9uZW50LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG5leHBvcnQgY2xhc3MgU2t5Q29sdW1uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBudW1iZXIgb2YgY29sdW1ucyAoMS0xMikgdG8gdXNlIG9uIGV4dHJhLXNtYWxsIHNjcmVlbnNcbiAgICogKGxlc3MgdGhhbiA3NjhweCkuIElmIHlvdSBkbyBub3Qgc3BlY2lmeSBhIHZhbHVlLCB0aGUgZmx1aWQgZ3JpZCBkaXNwbGF5c1xuICAgKiB0aGUgY29sdW1uIGF0IHRoZSBmdWxsIHdpZHRoIG9mIHRoZSBzY3JlZW4uXG4gICAqIEBkZWZhdWx0IDEyXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2NyZWVuWFNtYWxsOiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgKDEtMTIpIHRvIHVzZSBvbiBzbWFsbCBzY3JlZW5zXG4gICAqICg3NjgtOTkxcHgpLiBJZiB5b3UgZG8gbm90IHNwZWNpZnkgYSB2YWx1ZSwgdGhlIGNvbHVtbiBpbmhlcml0c1xuICAgKiB0aGUgYHNjcmVlblhTbWFsbGAgdmFsdWUuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2NyZWVuU21hbGw6IG51bWJlcjtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBudW1iZXIgb2YgY29sdW1ucyAoMS0xMikgdG8gdXNlIG9uIG1lZGl1bSBzY3JlZW5zXG4gICAqICg5OTItMTE5OXB4KS4gSWYgeW91IGRvIG5vdCBzcGVjaWZ5IGEgdmFsdWUsIHRoZSBjb2x1bW4gaW5oZXJpdHNcbiAgICogdGhlIGBzY3JlZW5TbWFsbGAgdmFsdWUuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2NyZWVuTWVkaXVtOiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgKDEtMTIpIHRvIHVzZSBvbiBsYXJnZSBzY3JlZW5zXG4gICAqIChtb3JlIHRoYW4gMTIwMHB4KS4gSWYgeW91IGRvIG5vdCBzcGVjaWZ5IGEgdmFsdWUsIHRoZSBjb2x1bW5cbiAgICogaW5oZXJpdHMgdGhlIGBzY3JlZW5NZWRpdW1gIHZhbHVlLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNjcmVlbkxhcmdlOiBudW1iZXI7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gIHB1YmxpYyBjbGFzc25hbWVzOiBzdHJpbmc7XG5cbiAgcHVibGljIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgIGlmIChcbiAgICAgIGNoYW5nZXMuc2NyZWVuWFNtYWxsIHx8XG4gICAgICBjaGFuZ2VzLnNjcmVlblNtYWxsIHx8XG4gICAgICBjaGFuZ2VzLnNjcmVlbk1lZGl1bSB8fFxuICAgICAgY2hhbmdlcy5zY3JlZW5MYXJnZVxuICAgICkge1xuICAgICAgdGhpcy5jbGFzc25hbWVzID0gdGhpcy5nZXRDbGFzc05hbWVzKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldENsYXNzTmFtZXMoKTogc3RyaW5nIHtcbiAgICBjb25zdCBjbGFzc25hbWVzID0gWydza3ktY29sdW1uJ107XG5cbiAgICBpZiAodGhpcy5zY3JlZW5YU21hbGwpIHtcbiAgICAgIGNsYXNzbmFtZXMucHVzaChgc2t5LWNvbHVtbi14cy0ke3RoaXMuc2NyZWVuWFNtYWxsfWApO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnNjcmVlblNtYWxsKSB7XG4gICAgICBjbGFzc25hbWVzLnB1c2goYHNreS1jb2x1bW4tc20tJHt0aGlzLnNjcmVlblNtYWxsfWApO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnNjcmVlbk1lZGl1bSkge1xuICAgICAgY2xhc3NuYW1lcy5wdXNoKGBza3ktY29sdW1uLW1kLSR7dGhpcy5zY3JlZW5NZWRpdW19YCk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuc2NyZWVuTGFyZ2UpIHtcbiAgICAgIGNsYXNzbmFtZXMucHVzaChgc2t5LWNvbHVtbi1sZy0ke3RoaXMuc2NyZWVuTGFyZ2V9YCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGNsYXNzbmFtZXMuam9pbignICcpO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY2xhc3NuYW1lcyA9IHRoaXMuZ2V0Q2xhc3NOYW1lcygpO1xuICB9XG59XG4iLCI8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4iXX0=
71
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9sYXlvdXQvc3JjL2xpYi9tb2R1bGVzL2ZsdWlkLWdyaWQvY29sdW1uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9sYXlvdXQvc3JjL2xpYi9tb2R1bGVzL2ZsdWlkLWdyaWQvY29sdW1uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxXQUFXLEVBQ1gsS0FBSyxFQUlMLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQzs7QUFFdkI7O0dBRUc7QUFPSCxNQUFNLE9BQU8sa0JBQWtCO0lBTi9CO1FBaURFLDRDQUFpQixFQUFFLEVBQUM7S0F1Q3JCO0lBakZDOzs7OztPQUtHO0lBQ0gsSUFDVyxZQUFZLENBQUMsS0FBeUI7UUFDL0MsdUJBQUEsSUFBSSxxQ0FBa0IsS0FBSyxJQUFJLEVBQUUsTUFBQSxDQUFDO0lBQ3BDLENBQUM7SUFFRCxJQUFXLFlBQVk7UUFDckIsT0FBTyx1QkFBQSxJQUFJLHlDQUFlLENBQUM7SUFDN0IsQ0FBQztJQStCTSxXQUFXLENBQUMsT0FBc0I7UUFDdkMsMEJBQTBCO1FBQzFCLElBQ0UsT0FBTyxDQUFDLFlBQVk7WUFDcEIsT0FBTyxDQUFDLFdBQVc7WUFDbkIsT0FBTyxDQUFDLFlBQVk7WUFDcEIsT0FBTyxDQUFDLFdBQVcsRUFDbkI7WUFDQSxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztTQUN4QztJQUNILENBQUM7SUFFTSxhQUFhO1FBQ2xCLE1BQU0sVUFBVSxHQUFHLENBQUMsWUFBWSxDQUFDLENBQUM7UUFFbEMsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ3JCLFVBQVUsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDO1NBQ3ZEO1FBRUQsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ3BCLFVBQVUsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO1NBQ3REO1FBRUQsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ3JCLFVBQVUsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDO1NBQ3ZEO1FBRUQsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ3BCLFVBQVUsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO1NBQ3REO1FBRUQsT0FBTyxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFTSxRQUFRO1FBQ2IsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDekMsQ0FBQzs7OytHQWpGVSxrQkFBa0I7bUdBQWxCLGtCQUFrQiw2UENuQi9CLDZCQUNBOzJGRGtCYSxrQkFBa0I7a0JBTjlCLFNBQVM7K0JBQ0UsWUFBWSxpQkFHUCxpQkFBaUIsQ0FBQyxJQUFJOzhCQVUxQixZQUFZO3NCQUR0QixLQUFLO2dCQWVDLFdBQVc7c0JBRGpCLEtBQUs7Z0JBU0MsWUFBWTtzQkFEbEIsS0FBSztnQkFTQyxXQUFXO3NCQURqQixLQUFLO2dCQUlDLFVBQVU7c0JBRGhCLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgSG9zdEJpbmRpbmcsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uSW5pdCxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG4vKipcbiAqIERpc3BsYXlzIGEgY29sdW1uIHdpdGhpbiBhIHJvdyBvZiB0aGUgZmx1aWQgZ3JpZC5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2t5LWNvbHVtbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9jb2x1bW4uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jb2x1bW4uY29tcG9uZW50LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG5leHBvcnQgY2xhc3MgU2t5Q29sdW1uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBudW1iZXIgb2YgY29sdW1ucyAoMS0xMikgdG8gdXNlIG9uIGV4dHJhLXNtYWxsIHNjcmVlbnNcbiAgICogKGxlc3MgdGhhbiA3NjhweCkuIElmIHlvdSBkbyBub3Qgc3BlY2lmeSBhIHZhbHVlLCB0aGUgZmx1aWQgZ3JpZCBkaXNwbGF5c1xuICAgKiB0aGUgY29sdW1uIGF0IHRoZSBmdWxsIHdpZHRoIG9mIHRoZSBzY3JlZW4uXG4gICAqIEBkZWZhdWx0IDEyXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IHNjcmVlblhTbWFsbCh2YWx1ZTogbnVtYmVyIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy4jX3NjcmVlblhTbWFsbCA9IHZhbHVlID8/IDEyO1xuICB9XG5cbiAgcHVibGljIGdldCBzY3JlZW5YU21hbGwoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy4jX3NjcmVlblhTbWFsbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIG51bWJlciBvZiBjb2x1bW5zICgxLTEyKSB0byB1c2Ugb24gc21hbGwgc2NyZWVuc1xuICAgKiAoNzY4LTk5MXB4KS4gSWYgeW91IGRvIG5vdCBzcGVjaWZ5IGEgdmFsdWUsIHRoZSBjb2x1bW4gaW5oZXJpdHNcbiAgICogdGhlIGBzY3JlZW5YU21hbGxgIHZhbHVlLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNjcmVlblNtYWxsOiBudW1iZXIgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgKDEtMTIpIHRvIHVzZSBvbiBtZWRpdW0gc2NyZWVuc1xuICAgKiAoOTkyLTExOTlweCkuIElmIHlvdSBkbyBub3Qgc3BlY2lmeSBhIHZhbHVlLCB0aGUgY29sdW1uIGluaGVyaXRzXG4gICAqIHRoZSBgc2NyZWVuU21hbGxgIHZhbHVlLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNjcmVlbk1lZGl1bTogbnVtYmVyIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIG51bWJlciBvZiBjb2x1bW5zICgxLTEyKSB0byB1c2Ugb24gbGFyZ2Ugc2NyZWVuc1xuICAgKiAobW9yZSB0aGFuIDEyMDBweCkuIElmIHlvdSBkbyBub3Qgc3BlY2lmeSBhIHZhbHVlLCB0aGUgY29sdW1uXG4gICAqIGluaGVyaXRzIHRoZSBgc2NyZWVuTWVkaXVtYCB2YWx1ZS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzY3JlZW5MYXJnZTogbnVtYmVyIHwgdW5kZWZpbmVkO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICBwdWJsaWMgY2xhc3NuYW1lczogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gICNfc2NyZWVuWFNtYWxsID0gMTI7XG5cbiAgcHVibGljIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgIGlmIChcbiAgICAgIGNoYW5nZXMuc2NyZWVuWFNtYWxsIHx8XG4gICAgICBjaGFuZ2VzLnNjcmVlblNtYWxsIHx8XG4gICAgICBjaGFuZ2VzLnNjcmVlbk1lZGl1bSB8fFxuICAgICAgY2hhbmdlcy5zY3JlZW5MYXJnZVxuICAgICkge1xuICAgICAgdGhpcy5jbGFzc25hbWVzID0gdGhpcy5nZXRDbGFzc05hbWVzKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldENsYXNzTmFtZXMoKTogc3RyaW5nIHtcbiAgICBjb25zdCBjbGFzc25hbWVzID0gWydza3ktY29sdW1uJ107XG5cbiAgICBpZiAodGhpcy5zY3JlZW5YU21hbGwpIHtcbiAgICAgIGNsYXNzbmFtZXMucHVzaChgc2t5LWNvbHVtbi14cy0ke3RoaXMuc2NyZWVuWFNtYWxsfWApO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnNjcmVlblNtYWxsKSB7XG4gICAgICBjbGFzc25hbWVzLnB1c2goYHNreS1jb2x1bW4tc20tJHt0aGlzLnNjcmVlblNtYWxsfWApO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnNjcmVlbk1lZGl1bSkge1xuICAgICAgY2xhc3NuYW1lcy5wdXNoKGBza3ktY29sdW1uLW1kLSR7dGhpcy5zY3JlZW5NZWRpdW19YCk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuc2NyZWVuTGFyZ2UpIHtcbiAgICAgIGNsYXNzbmFtZXMucHVzaChgc2t5LWNvbHVtbi1sZy0ke3RoaXMuc2NyZWVuTGFyZ2V9YCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGNsYXNzbmFtZXMuam9pbignICcpO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY2xhc3NuYW1lcyA9IHRoaXMuZ2V0Q2xhc3NOYW1lcygpO1xuICB9XG59XG4iLCI8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4iXX0=
@@ -1,5 +1,6 @@
1
+ var _SkyFluidGridComponent__gutterSize;
2
+ import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
1
3
  import { Component, Input } from '@angular/core';
2
- import { SkyFluidGridGutterSize } from './fluid-grid-gutter-size';
3
4
  import * as i0 from "@angular/core";
4
5
  import * as i1 from "@angular/common";
5
6
  /**
@@ -7,15 +8,13 @@ import * as i1 from "@angular/common";
7
8
  * alignment, padding, and margins do not behave as expected.
8
9
  */
9
10
  export class SkyFluidGridComponent {
10
- /**
11
- * Disables the outer left and right margin of the fluid grid container.
12
- * @default false
13
- */
14
- set disableMargin(value) {
15
- this._disableMargin = value;
16
- }
17
- get disableMargin() {
18
- return this._disableMargin || false;
11
+ constructor() {
12
+ /**
13
+ * Disables the outer left and right margin of the fluid grid container.
14
+ * @default false
15
+ */
16
+ this.disableMargin = false;
17
+ _SkyFluidGridComponent__gutterSize.set(this, 'large');
19
18
  }
20
19
  /**
21
20
  * Specifies a `SkyFluidGridGutterSizeType` to define the size of the padding
@@ -23,40 +22,21 @@ export class SkyFluidGridComponent {
23
22
  * @default "large"
24
23
  */
25
24
  set gutterSize(value) {
26
- this._gutterSize = value;
25
+ __classPrivateFieldSet(this, _SkyFluidGridComponent__gutterSize, value ?? 'large', "f");
27
26
  }
28
27
  get gutterSize() {
29
- return this._gutterSize === undefined ? 'large' : this._gutterSize;
30
- }
31
- /**
32
- * @internal
33
- */
34
- get gutterSizeResolved() {
35
- // Before this change, the template did a `==` comparison, implicitly converting numerical
36
- // string values to their numeric values before comparing them. Checking for the numerical
37
- // string value in addition to the values allowed by the type maintains this behavior.
38
- switch (this.gutterSize) {
39
- case 'medium':
40
- case SkyFluidGridGutterSize.Medium:
41
- case SkyFluidGridGutterSize.Medium.toString():
42
- return 'medium';
43
- case 'small':
44
- case SkyFluidGridGutterSize.Small:
45
- case SkyFluidGridGutterSize.Small.toString():
46
- return 'small';
47
- default:
48
- return 'large';
49
- }
28
+ return __classPrivateFieldGet(this, _SkyFluidGridComponent__gutterSize, "f");
50
29
  }
51
30
  }
31
+ _SkyFluidGridComponent__gutterSize = new WeakMap();
52
32
  SkyFluidGridComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyFluidGridComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
53
- SkyFluidGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: SkyFluidGridComponent, selector: "sky-fluid-grid", inputs: { disableMargin: "disableMargin", gutterSize: "gutterSize" }, ngImport: i0, template: "<div\n class=\"sky-fluid-grid\"\n [ngClass]=\"{\n 'sky-fluid-grid-gutter-size-small': gutterSizeResolved === 'small',\n 'sky-fluid-grid-gutter-size-medium': gutterSizeResolved === 'medium',\n 'sky-fluid-grid-gutter-size-large': gutterSizeResolved === 'large',\n 'sky-fluid-grid-no-margin': disableMargin\n }\"\n>\n <ng-content></ng-content>\n</div>\n", styles: [".sky-fluid-grid-gutter-size-small{padding-left:5px;padding-right:5px}.sky-fluid-grid-gutter-size-medium{padding-left:10px;padding-right:10px}.sky-fluid-grid-gutter-size-large{padding-left:15px;padding-right:15px}:host-context(.sky-theme-modern) .sky-fluid-grid-gutter-size-small{padding-left:10px;padding-right:10px}:host-context(.sky-theme-modern) .sky-fluid-grid-gutter-size-medium{padding-left:15px;padding-right:15px}:host-context(.sky-theme-modern) .sky-fluid-grid-gutter-size-large{padding-left:30px;padding-right:30px}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
33
+ SkyFluidGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: SkyFluidGridComponent, selector: "sky-fluid-grid", inputs: { disableMargin: "disableMargin", gutterSize: "gutterSize" }, ngImport: i0, template: "<div\n class=\"sky-fluid-grid\"\n [ngClass]=\"{\n 'sky-fluid-grid-gutter-size-small': gutterSize === 'small',\n 'sky-fluid-grid-gutter-size-medium': gutterSize === 'medium',\n 'sky-fluid-grid-gutter-size-large': gutterSize === 'large',\n 'sky-fluid-grid-no-margin': disableMargin\n }\"\n>\n <ng-content></ng-content>\n</div>\n", styles: [".sky-fluid-grid-gutter-size-small{padding-left:5px;padding-right:5px}.sky-fluid-grid-gutter-size-medium{padding-left:10px;padding-right:10px}.sky-fluid-grid-gutter-size-large{padding-left:15px;padding-right:15px}:host-context(.sky-theme-modern) .sky-fluid-grid-gutter-size-small{padding-left:10px;padding-right:10px}:host-context(.sky-theme-modern) .sky-fluid-grid-gutter-size-medium{padding-left:15px;padding-right:15px}:host-context(.sky-theme-modern) .sky-fluid-grid-gutter-size-large{padding-left:30px;padding-right:30px}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
54
34
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyFluidGridComponent, decorators: [{
55
35
  type: Component,
56
- args: [{ selector: 'sky-fluid-grid', template: "<div\n class=\"sky-fluid-grid\"\n [ngClass]=\"{\n 'sky-fluid-grid-gutter-size-small': gutterSizeResolved === 'small',\n 'sky-fluid-grid-gutter-size-medium': gutterSizeResolved === 'medium',\n 'sky-fluid-grid-gutter-size-large': gutterSizeResolved === 'large',\n 'sky-fluid-grid-no-margin': disableMargin\n }\"\n>\n <ng-content></ng-content>\n</div>\n", styles: [".sky-fluid-grid-gutter-size-small{padding-left:5px;padding-right:5px}.sky-fluid-grid-gutter-size-medium{padding-left:10px;padding-right:10px}.sky-fluid-grid-gutter-size-large{padding-left:15px;padding-right:15px}:host-context(.sky-theme-modern) .sky-fluid-grid-gutter-size-small{padding-left:10px;padding-right:10px}:host-context(.sky-theme-modern) .sky-fluid-grid-gutter-size-medium{padding-left:15px;padding-right:15px}:host-context(.sky-theme-modern) .sky-fluid-grid-gutter-size-large{padding-left:30px;padding-right:30px}\n"] }]
36
+ args: [{ selector: 'sky-fluid-grid', template: "<div\n class=\"sky-fluid-grid\"\n [ngClass]=\"{\n 'sky-fluid-grid-gutter-size-small': gutterSize === 'small',\n 'sky-fluid-grid-gutter-size-medium': gutterSize === 'medium',\n 'sky-fluid-grid-gutter-size-large': gutterSize === 'large',\n 'sky-fluid-grid-no-margin': disableMargin\n }\"\n>\n <ng-content></ng-content>\n</div>\n", styles: [".sky-fluid-grid-gutter-size-small{padding-left:5px;padding-right:5px}.sky-fluid-grid-gutter-size-medium{padding-left:10px;padding-right:10px}.sky-fluid-grid-gutter-size-large{padding-left:15px;padding-right:15px}:host-context(.sky-theme-modern) .sky-fluid-grid-gutter-size-small{padding-left:10px;padding-right:10px}:host-context(.sky-theme-modern) .sky-fluid-grid-gutter-size-medium{padding-left:15px;padding-right:15px}:host-context(.sky-theme-modern) .sky-fluid-grid-gutter-size-large{padding-left:30px;padding-right:30px}\n"] }]
57
37
  }], propDecorators: { disableMargin: [{
58
38
  type: Input
59
39
  }], gutterSize: [{
60
40
  type: Input
61
41
  }] } });
62
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmx1aWQtZ3JpZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvbGF5b3V0L3NyYy9saWIvbW9kdWxlcy9mbHVpZC1ncmlkL2ZsdWlkLWdyaWQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2xheW91dC9zcmMvbGliL21vZHVsZXMvZmx1aWQtZ3JpZC9mbHVpZC1ncmlkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWpELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7QUFHbEU7OztHQUdHO0FBTUgsTUFBTSxPQUFPLHFCQUFxQjtJQUNoQzs7O09BR0c7SUFDSCxJQUNXLGFBQWEsQ0FBQyxLQUFjO1FBQ3JDLElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDO0lBQzlCLENBQUM7SUFFRCxJQUFXLGFBQWE7UUFDdEIsT0FBTyxJQUFJLENBQUMsY0FBYyxJQUFJLEtBQUssQ0FBQztJQUN0QyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILElBQ1csVUFBVSxDQUFDLEtBQWlDO1FBQ3JELElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO0lBQzNCLENBQUM7SUFFRCxJQUFXLFVBQVU7UUFDbkIsT0FBTyxJQUFJLENBQUMsV0FBVyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQ3JFLENBQUM7SUFFRDs7T0FFRztJQUNILElBQVcsa0JBQWtCO1FBQzNCLDBGQUEwRjtRQUMxRiwwRkFBMEY7UUFDMUYsc0ZBQXNGO1FBQ3RGLFFBQVEsSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUN2QixLQUFLLFFBQVEsQ0FBQztZQUNkLEtBQUssc0JBQXNCLENBQUMsTUFBTSxDQUFDO1lBQ25DLEtBQUssc0JBQXNCLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRTtnQkFDM0MsT0FBTyxRQUFRLENBQUM7WUFDbEIsS0FBSyxPQUFPLENBQUM7WUFDYixLQUFLLHNCQUFzQixDQUFDLEtBQUssQ0FBQztZQUNsQyxLQUFLLHNCQUFzQixDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUU7Z0JBQzFDLE9BQU8sT0FBTyxDQUFDO1lBQ2pCO2dCQUNFLE9BQU8sT0FBTyxDQUFDO1NBQ2xCO0lBQ0gsQ0FBQzs7a0hBL0NVLHFCQUFxQjtzR0FBckIscUJBQXFCLDRIQ2RsQyxnWEFXQTsyRkRHYSxxQkFBcUI7a0JBTGpDLFNBQVM7K0JBQ0UsZ0JBQWdCOzhCQVVmLGFBQWE7c0JBRHZCLEtBQUs7Z0JBZUssVUFBVTtzQkFEcEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgU2t5Rmx1aWRHcmlkR3V0dGVyU2l6ZSB9IGZyb20gJy4vZmx1aWQtZ3JpZC1ndXR0ZXItc2l6ZSc7XG5pbXBvcnQgeyBTa3lGbHVpZEdyaWRHdXR0ZXJTaXplVHlwZSB9IGZyb20gJy4vdHlwZXMvZmx1aWQtZ3JpZC1ndXR0ZXItc2l6ZS10eXBlJztcblxuLyoqXG4gKiBXcmFwcyB0aGUgZmx1aWQgZ3JpZCB0byBlbnN1cmUgcHJvcGVyIHNwYWNpbmcuIFdpdGhvdXQgdGhlIHdyYXBwZXIsIHRoZVxuICogYWxpZ25tZW50LCBwYWRkaW5nLCBhbmQgbWFyZ2lucyBkbyBub3QgYmVoYXZlIGFzIGV4cGVjdGVkLlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdza3ktZmx1aWQtZ3JpZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9mbHVpZC1ncmlkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZmx1aWQtZ3JpZC5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lGbHVpZEdyaWRDb21wb25lbnQge1xuICAvKipcbiAgICogRGlzYWJsZXMgdGhlIG91dGVyIGxlZnQgYW5kIHJpZ2h0IG1hcmdpbiBvZiB0aGUgZmx1aWQgZ3JpZCBjb250YWluZXIuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGRpc2FibGVNYXJnaW4odmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9kaXNhYmxlTWFyZ2luID0gdmFsdWU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGRpc2FibGVNYXJnaW4oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVNYXJnaW4gfHwgZmFsc2U7XG4gIH1cblxuICAvKipcbiAgICogU3BlY2lmaWVzIGEgYFNreUZsdWlkR3JpZEd1dHRlclNpemVUeXBlYCB0byBkZWZpbmUgdGhlIHNpemUgb2YgdGhlIHBhZGRpbmdcbiAgICogYmV0d2VlbiBjb2x1bW5zLlxuICAgKiBAZGVmYXVsdCBcImxhcmdlXCJcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZ3V0dGVyU2l6ZSh2YWx1ZTogU2t5Rmx1aWRHcmlkR3V0dGVyU2l6ZVR5cGUpIHtcbiAgICB0aGlzLl9ndXR0ZXJTaXplID0gdmFsdWU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGd1dHRlclNpemUoKTogU2t5Rmx1aWRHcmlkR3V0dGVyU2l6ZVR5cGUge1xuICAgIHJldHVybiB0aGlzLl9ndXR0ZXJTaXplID09PSB1bmRlZmluZWQgPyAnbGFyZ2UnIDogdGhpcy5fZ3V0dGVyU2l6ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHB1YmxpYyBnZXQgZ3V0dGVyU2l6ZVJlc29sdmVkKCk6IFNreUZsdWlkR3JpZEd1dHRlclNpemVUeXBlIHtcbiAgICAvLyBCZWZvcmUgdGhpcyBjaGFuZ2UsIHRoZSB0ZW1wbGF0ZSBkaWQgYSBgPT1gIGNvbXBhcmlzb24sIGltcGxpY2l0bHkgY29udmVydGluZyBudW1lcmljYWxcbiAgICAvLyBzdHJpbmcgdmFsdWVzIHRvIHRoZWlyIG51bWVyaWMgdmFsdWVzIGJlZm9yZSBjb21wYXJpbmcgdGhlbS4gQ2hlY2tpbmcgZm9yIHRoZSBudW1lcmljYWxcbiAgICAvLyBzdHJpbmcgdmFsdWUgaW4gYWRkaXRpb24gdG8gdGhlIHZhbHVlcyBhbGxvd2VkIGJ5IHRoZSB0eXBlIG1haW50YWlucyB0aGlzIGJlaGF2aW9yLlxuICAgIHN3aXRjaCAodGhpcy5ndXR0ZXJTaXplKSB7XG4gICAgICBjYXNlICdtZWRpdW0nOlxuICAgICAgY2FzZSBTa3lGbHVpZEdyaWRHdXR0ZXJTaXplLk1lZGl1bTpcbiAgICAgIGNhc2UgU2t5Rmx1aWRHcmlkR3V0dGVyU2l6ZS5NZWRpdW0udG9TdHJpbmcoKTpcbiAgICAgICAgcmV0dXJuICdtZWRpdW0nO1xuICAgICAgY2FzZSAnc21hbGwnOlxuICAgICAgY2FzZSBTa3lGbHVpZEdyaWRHdXR0ZXJTaXplLlNtYWxsOlxuICAgICAgY2FzZSBTa3lGbHVpZEdyaWRHdXR0ZXJTaXplLlNtYWxsLnRvU3RyaW5nKCk6XG4gICAgICAgIHJldHVybiAnc21hbGwnO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuICdsYXJnZSc7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfZGlzYWJsZU1hcmdpbjogYm9vbGVhbjtcblxuICBwcml2YXRlIF9ndXR0ZXJTaXplOiBTa3lGbHVpZEdyaWRHdXR0ZXJTaXplVHlwZTtcbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJza3ktZmx1aWQtZ3JpZFwiXG4gIFtuZ0NsYXNzXT1cIntcbiAgICAnc2t5LWZsdWlkLWdyaWQtZ3V0dGVyLXNpemUtc21hbGwnOiBndXR0ZXJTaXplUmVzb2x2ZWQgPT09ICdzbWFsbCcsXG4gICAgJ3NreS1mbHVpZC1ncmlkLWd1dHRlci1zaXplLW1lZGl1bSc6IGd1dHRlclNpemVSZXNvbHZlZCA9PT0gJ21lZGl1bScsXG4gICAgJ3NreS1mbHVpZC1ncmlkLWd1dHRlci1zaXplLWxhcmdlJzogZ3V0dGVyU2l6ZVJlc29sdmVkID09PSAnbGFyZ2UnLFxuICAgICdza3ktZmx1aWQtZ3JpZC1uby1tYXJnaW4nOiBkaXNhYmxlTWFyZ2luXG4gIH1cIlxuPlxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L2Rpdj5cbiJdfQ==
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmx1aWQtZ3JpZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvbGF5b3V0L3NyYy9saWIvbW9kdWxlcy9mbHVpZC1ncmlkL2ZsdWlkLWdyaWQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2xheW91dC9zcmMvbGliL21vZHVsZXMvZmx1aWQtZ3JpZC9mbHVpZC1ncmlkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQUlqRDs7O0dBR0c7QUFNSCxNQUFNLE9BQU8scUJBQXFCO0lBTGxDO1FBTUU7OztXQUdHO1FBRUksa0JBQWEsR0FBd0IsS0FBSyxDQUFDO1FBZ0JsRCw2Q0FBMkMsT0FBTyxFQUFDO0tBQ3BEO0lBZkM7Ozs7T0FJRztJQUNILElBQ1csVUFBVSxDQUFDLEtBQTZDO1FBQ2pFLHVCQUFBLElBQUksc0NBQWdCLEtBQUssSUFBSSxPQUFPLE1BQUEsQ0FBQztJQUN2QyxDQUFDO0lBRUQsSUFBVyxVQUFVO1FBQ25CLE9BQU8sdUJBQUEsSUFBSSwwQ0FBYSxDQUFDO0lBQzNCLENBQUM7OztrSEFwQlUscUJBQXFCO3NHQUFyQixxQkFBcUIsNEhDYmxDLHdWQVdBOzJGREVhLHFCQUFxQjtrQkFMakMsU0FBUzsrQkFDRSxnQkFBZ0I7OEJBVW5CLGFBQWE7c0JBRG5CLEtBQUs7Z0JBU0ssVUFBVTtzQkFEcEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgU2t5Rmx1aWRHcmlkR3V0dGVyU2l6ZVR5cGUgfSBmcm9tICcuL3R5cGVzL2ZsdWlkLWdyaWQtZ3V0dGVyLXNpemUtdHlwZSc7XG5cbi8qKlxuICogV3JhcHMgdGhlIGZsdWlkIGdyaWQgdG8gZW5zdXJlIHByb3BlciBzcGFjaW5nLiBXaXRob3V0IHRoZSB3cmFwcGVyLCB0aGVcbiAqIGFsaWdubWVudCwgcGFkZGluZywgYW5kIG1hcmdpbnMgZG8gbm90IGJlaGF2ZSBhcyBleHBlY3RlZC5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2t5LWZsdWlkLWdyaWQnLFxuICB0ZW1wbGF0ZVVybDogJy4vZmx1aWQtZ3JpZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZsdWlkLWdyaWQuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgU2t5Rmx1aWRHcmlkQ29tcG9uZW50IHtcbiAgLyoqXG4gICAqIERpc2FibGVzIHRoZSBvdXRlciBsZWZ0IGFuZCByaWdodCBtYXJnaW4gb2YgdGhlIGZsdWlkIGdyaWQgY29udGFpbmVyLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGRpc2FibGVNYXJnaW46IGJvb2xlYW4gfCB1bmRlZmluZWQgPSBmYWxzZTtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIGEgYFNreUZsdWlkR3JpZEd1dHRlclNpemVUeXBlYCB0byBkZWZpbmUgdGhlIHNpemUgb2YgdGhlIHBhZGRpbmdcbiAgICogYmV0d2VlbiBjb2x1bW5zLlxuICAgKiBAZGVmYXVsdCBcImxhcmdlXCJcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZ3V0dGVyU2l6ZSh2YWx1ZTogU2t5Rmx1aWRHcmlkR3V0dGVyU2l6ZVR5cGUgfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLiNfZ3V0dGVyU2l6ZSA9IHZhbHVlID8/ICdsYXJnZSc7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGd1dHRlclNpemUoKTogU2t5Rmx1aWRHcmlkR3V0dGVyU2l6ZVR5cGUge1xuICAgIHJldHVybiB0aGlzLiNfZ3V0dGVyU2l6ZTtcbiAgfVxuXG4gICNfZ3V0dGVyU2l6ZTogU2t5Rmx1aWRHcmlkR3V0dGVyU2l6ZVR5cGUgPSAnbGFyZ2UnO1xufVxuIiwiPGRpdlxuICBjbGFzcz1cInNreS1mbHVpZC1ncmlkXCJcbiAgW25nQ2xhc3NdPVwie1xuICAgICdza3ktZmx1aWQtZ3JpZC1ndXR0ZXItc2l6ZS1zbWFsbCc6IGd1dHRlclNpemUgPT09ICdzbWFsbCcsXG4gICAgJ3NreS1mbHVpZC1ncmlkLWd1dHRlci1zaXplLW1lZGl1bSc6IGd1dHRlclNpemUgPT09ICdtZWRpdW0nLFxuICAgICdza3ktZmx1aWQtZ3JpZC1ndXR0ZXItc2l6ZS1sYXJnZSc6IGd1dHRlclNpemUgPT09ICdsYXJnZScsXG4gICAgJ3NreS1mbHVpZC1ncmlkLW5vLW1hcmdpbic6IGRpc2FibGVNYXJnaW5cbiAgfVwiXG4+XG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvZGl2PlxuIl19
@@ -22,4 +22,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImpor
22
22
  }], propDecorators: { reverseColumnOrder: [{
23
23
  type: Input
24
24
  }] } });
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm93LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9sYXlvdXQvc3JjL2xpYi9tb2R1bGVzL2ZsdWlkLWdyaWQvcm93LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9sYXlvdXQvc3JjL2xpYi9tb2R1bGVzL2ZsdWlkLWdyaWQvcm93LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFFakQ7OztHQUdHO0FBTUgsTUFBTSxPQUFPLGVBQWU7SUFMNUI7UUFNRTs7O1dBR0c7UUFFSSx1QkFBa0IsR0FBRyxLQUFLLENBQUM7S0FDbkM7OzRHQVBZLGVBQWU7Z0dBQWYsZUFBZSxxR0NYNUIsd0hBR0E7MkZEUWEsZUFBZTtrQkFMM0IsU0FBUzsrQkFDRSxTQUFTOzhCQVVaLGtCQUFrQjtzQkFEeEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBEaXNwbGF5cyBhIHJvdyB3aXRoaW4gdGhlIGBza3ktZmx1aWQtZ3JpZGAgd3JhcHBlci4gUHJldmlvdXNseSwgeW91IGNvdWxkIGRpc3BsYXkgYSByb3dcbiAqIHdpdGhvdXQgYSB3cmFwcGVyLCBidXQgd2Ugbm8gbG9uZ2VyIG9mZmljaWFsbHkgc3VwcG9ydCB0aGF0IG9wdGlvbi5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2t5LXJvdycsXG4gIHRlbXBsYXRlVXJsOiAnLi9yb3cuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9yb3cuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgU2t5Um93Q29tcG9uZW50IHtcbiAgLyoqXG4gICAqIEluZGljYXRlcyB3aGV0aGVyIHRvIHJldmVyc2UgdGhlIGRpc3BsYXkgb3JkZXIgZm9yIGNvbHVtbnMgaW4gdGhlIHJvdy5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyByZXZlcnNlQ29sdW1uT3JkZXIgPSBmYWxzZTtcbn1cbiIsIjxkaXYgY2xhc3M9XCJza3ktcm93XCIgW25nQ2xhc3NdPVwieyAnc2t5LXJvdy1yZXZlcnNlJzogcmV2ZXJzZUNvbHVtbk9yZGVyIH1cIj5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9kaXY+XG4iXX0=
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm93LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9sYXlvdXQvc3JjL2xpYi9tb2R1bGVzL2ZsdWlkLWdyaWQvcm93LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9sYXlvdXQvc3JjL2xpYi9tb2R1bGVzL2ZsdWlkLWdyaWQvcm93LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFFakQ7OztHQUdHO0FBTUgsTUFBTSxPQUFPLGVBQWU7SUFMNUI7UUFNRTs7O1dBR0c7UUFFSSx1QkFBa0IsR0FBd0IsS0FBSyxDQUFDO0tBQ3hEOzs0R0FQWSxlQUFlO2dHQUFmLGVBQWUscUdDWDVCLHdIQUdBOzJGRFFhLGVBQWU7a0JBTDNCLFNBQVM7K0JBQ0UsU0FBUzs4QkFVWixrQkFBa0I7c0JBRHhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8qKlxuICogRGlzcGxheXMgYSByb3cgd2l0aGluIHRoZSBgc2t5LWZsdWlkLWdyaWRgIHdyYXBwZXIuIFByZXZpb3VzbHksIHlvdSBjb3VsZCBkaXNwbGF5IGEgcm93XG4gKiB3aXRob3V0IGEgd3JhcHBlciwgYnV0IHdlIG5vIGxvbmdlciBvZmZpY2lhbGx5IHN1cHBvcnQgdGhhdCBvcHRpb24uXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NreS1yb3cnLFxuICB0ZW1wbGF0ZVVybDogJy4vcm93LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcm93LmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNreVJvd0NvbXBvbmVudCB7XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgd2hldGhlciB0byByZXZlcnNlIHRoZSBkaXNwbGF5IG9yZGVyIGZvciBjb2x1bW5zIGluIHRoZSByb3cuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgcmV2ZXJzZUNvbHVtbk9yZGVyOiBib29sZWFuIHwgdW5kZWZpbmVkID0gZmFsc2U7XG59XG4iLCI8ZGl2IGNsYXNzPVwic2t5LXJvd1wiIFtuZ0NsYXNzXT1cInsgJ3NreS1yb3ctcmV2ZXJzZSc6IHJldmVyc2VDb2x1bW5PcmRlciB9XCI+XG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvZGl2PlxuIl19
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmx1aWQtZ3JpZC1ndXR0ZXItc2l6ZS10eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2xheW91dC9zcmMvbGliL21vZHVsZXMvZmx1aWQtZ3JpZC90eXBlcy9mbHVpZC1ncmlkLWd1dHRlci1zaXplLXR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIFNreUZsdWlkR3JpZEd1dHRlclNpemVUeXBlID1cbiAgfCAwXG4gIHwgMVxuICB8IDJcbiAgfCAnc21hbGwnXG4gIHwgJ21lZGl1bSdcbiAgfCAnbGFyZ2UnO1xuIl19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmx1aWQtZ3JpZC1ndXR0ZXItc2l6ZS10eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2xheW91dC9zcmMvbGliL21vZHVsZXMvZmx1aWQtZ3JpZC90eXBlcy9mbHVpZC1ncmlkLWd1dHRlci1zaXplLXR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIFNreUZsdWlkR3JpZEd1dHRlclNpemVUeXBlID0gJ3NtYWxsJyB8ICdtZWRpdW0nIHwgJ2xhcmdlJztcbiJdfQ==
@@ -1,59 +1,67 @@
1
+ var _SkyFormatComponent_instances, _SkyFormatComponent__text, _SkyFormatComponent__args, _SkyFormatComponent_updateItemsForDisplay;
2
+ import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
1
3
  import { ChangeDetectionStrategy, Component, Input, } from '@angular/core';
2
4
  import * as i0 from "@angular/core";
3
5
  import * as i1 from "@angular/common";
4
6
  const tokenRegex = /(\{\d+\})/;
5
7
  export class SkyFormatComponent {
8
+ constructor() {
9
+ _SkyFormatComponent_instances.add(this);
10
+ this.itemsForDisplay = [];
11
+ _SkyFormatComponent__text.set(this, void 0);
12
+ _SkyFormatComponent__args.set(this, void 0);
13
+ }
6
14
  /**
7
15
  * The tokenized string that represents the template. Tokens use the `{n}` notation
8
16
  * where `n` is the ordinal of the item to replace the token.
9
17
  */
10
18
  set text(value) {
11
- this._text = value;
12
- this.updateItemsForDisplay();
19
+ __classPrivateFieldSet(this, _SkyFormatComponent__text, value, "f");
20
+ __classPrivateFieldGet(this, _SkyFormatComponent_instances, "m", _SkyFormatComponent_updateItemsForDisplay).call(this);
13
21
  }
14
22
  get text() {
15
- return this._text;
23
+ return __classPrivateFieldGet(this, _SkyFormatComponent__text, "f");
16
24
  }
17
25
  /**
18
26
  * An array of `TemplateRef` objects to be placed in the template, where the `nth`
19
27
  * item is placed at the `{n}` location in the template.
20
28
  */
21
29
  set args(value) {
22
- this._args = value;
23
- this.updateItemsForDisplay();
30
+ __classPrivateFieldSet(this, _SkyFormatComponent__args, value, "f");
31
+ __classPrivateFieldGet(this, _SkyFormatComponent_instances, "m", _SkyFormatComponent_updateItemsForDisplay).call(this);
24
32
  }
25
33
  get args() {
26
- return this._args;
34
+ return __classPrivateFieldGet(this, _SkyFormatComponent__args, "f");
27
35
  }
28
- updateItemsForDisplay() {
29
- this.itemsForDisplay = [];
30
- if (this.text && this.args) {
31
- const textParts = this.text.split(tokenRegex);
32
- for (const textPart of textParts) {
33
- // Disregard empty strings.
34
- if (textPart) {
35
- const item = {};
36
- if (tokenRegex.test(textPart)) {
37
- const valueIndex = +textPart.substring(1, textPart.length - 1);
38
- item.templateRef = this.args[valueIndex];
39
- }
40
- else {
41
- item.text = textPart;
42
- }
43
- this.itemsForDisplay.push(item);
36
+ }
37
+ _SkyFormatComponent__text = new WeakMap(), _SkyFormatComponent__args = new WeakMap(), _SkyFormatComponent_instances = new WeakSet(), _SkyFormatComponent_updateItemsForDisplay = function _SkyFormatComponent_updateItemsForDisplay() {
38
+ this.itemsForDisplay = [];
39
+ if (this.text && this.args) {
40
+ const textParts = this.text.split(tokenRegex);
41
+ for (const textPart of textParts) {
42
+ // Disregard empty strings.
43
+ if (textPart) {
44
+ const item = {};
45
+ if (tokenRegex.test(textPart)) {
46
+ const valueIndex = +textPart.substring(1, textPart.length - 1);
47
+ item.templateRef = this.args[valueIndex];
48
+ }
49
+ else {
50
+ item.text = textPart;
44
51
  }
52
+ this.itemsForDisplay.push(item);
45
53
  }
46
54
  }
47
55
  }
48
- }
56
+ };
49
57
  SkyFormatComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyFormatComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
50
- SkyFormatComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: SkyFormatComponent, selector: "sky-format", inputs: { text: "text", args: "args" }, ngImport: i0, template: "<ng-container *ngFor=\"let item of itemsForDisplay\">\n <!--\n The following ng-container must be on one line so no extra whitespace is introduced.\n -->\n <ng-container *ngIf=\"item.text; else item.templateRef\">{{\n item.text\n }}</ng-container>\n</ng-container>\n", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
58
+ SkyFormatComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: SkyFormatComponent, selector: "sky-format", inputs: { text: "text", args: "args" }, ngImport: i0, template: "<ng-container *ngFor=\"let item of itemsForDisplay\">\n <ng-container *ngIf=\"item.text\">{{ item.text }}</ng-container>\n <ng-container *ngIf=\"!item.text && item.templateRef\">\n <ng-container *ngTemplateOutlet=\"item.templateRef\"></ng-container>\n </ng-container>\n</ng-container>\n", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
51
59
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyFormatComponent, decorators: [{
52
60
  type: Component,
53
- args: [{ selector: 'sky-format', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngFor=\"let item of itemsForDisplay\">\n <!--\n The following ng-container must be on one line so no extra whitespace is introduced.\n -->\n <ng-container *ngIf=\"item.text; else item.templateRef\">{{\n item.text\n }}</ng-container>\n</ng-container>\n" }]
61
+ args: [{ selector: 'sky-format', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngFor=\"let item of itemsForDisplay\">\n <ng-container *ngIf=\"item.text\">{{ item.text }}</ng-container>\n <ng-container *ngIf=\"!item.text && item.templateRef\">\n <ng-container *ngTemplateOutlet=\"item.templateRef\"></ng-container>\n </ng-container>\n</ng-container>\n" }]
54
62
  }], propDecorators: { text: [{
55
63
  type: Input
56
64
  }], args: [{
57
65
  type: Input
58
66
  }] } });
59
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9sYXlvdXQvc3JjL2xpYi9tb2R1bGVzL2Zvcm1hdC9mb3JtYXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2xheW91dC9zcmMvbGliL21vZHVsZXMvZm9ybWF0L2Zvcm1hdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxLQUFLLEdBRU4sTUFBTSxlQUFlLENBQUM7OztBQUl2QixNQUFNLFVBQVUsR0FBRyxXQUFXLENBQUM7QUFPL0IsTUFBTSxPQUFPLGtCQUFrQjtJQUc3Qjs7O09BR0c7SUFDSCxJQUNXLElBQUksQ0FBQyxLQUFhO1FBQzNCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO0lBQy9CLENBQUM7SUFFRCxJQUFXLElBQUk7UUFDYixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUVEOzs7T0FHRztJQUNILElBQ1csSUFBSSxDQUFDLEtBQXlCO1FBQ3ZDLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO0lBQy9CLENBQUM7SUFFRCxJQUFXLElBQUk7UUFDYixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQU1PLHFCQUFxQjtRQUMzQixJQUFJLENBQUMsZUFBZSxHQUFHLEVBQUUsQ0FBQztRQUUxQixJQUFJLElBQUksQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLElBQUksRUFBRTtZQUMxQixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUU5QyxLQUFLLE1BQU0sUUFBUSxJQUFJLFNBQVMsRUFBRTtnQkFDaEMsMkJBQTJCO2dCQUMzQixJQUFJLFFBQVEsRUFBRTtvQkFDWixNQUFNLElBQUksR0FBa0IsRUFBRSxDQUFDO29CQUUvQixJQUFJLFVBQVUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUU7d0JBQzdCLE1BQU0sVUFBVSxHQUFHLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQzt3QkFFL0QsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO3FCQUMxQzt5QkFBTTt3QkFDTCxJQUFJLENBQUMsSUFBSSxHQUFHLFFBQVEsQ0FBQztxQkFDdEI7b0JBRUQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7aUJBQ2pDO2FBQ0Y7U0FDRjtJQUNILENBQUM7OytHQTFEVSxrQkFBa0I7bUdBQWxCLGtCQUFrQiwwRkNoQi9CLHNSQVFBOzJGRFFhLGtCQUFrQjtrQkFMOUIsU0FBUzsrQkFDRSxZQUFZLG1CQUVMLHVCQUF1QixDQUFDLE1BQU07OEJBVXBDLElBQUk7c0JBRGQsS0FBSztnQkFlSyxJQUFJO3NCQURkLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgVGVtcGxhdGVSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBTa3lGb3JtYXRJdGVtIH0gZnJvbSAnLi9mb3JtYXQtaXRlbSc7XG5cbmNvbnN0IHRva2VuUmVnZXggPSAvKFxce1xcZCtcXH0pLztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2t5LWZvcm1hdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9mb3JtYXQuY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgU2t5Rm9ybWF0Q29tcG9uZW50IHtcbiAgcHVibGljIGl0ZW1zRm9yRGlzcGxheTogU2t5Rm9ybWF0SXRlbVtdO1xuXG4gIC8qKlxuICAgKiBUaGUgdG9rZW5pemVkIHN0cmluZyB0aGF0IHJlcHJlc2VudHMgdGhlIHRlbXBsYXRlLiBUb2tlbnMgdXNlIHRoZSBge259YCBub3RhdGlvblxuICAgKiB3aGVyZSBgbmAgaXMgdGhlIG9yZGluYWwgb2YgdGhlIGl0ZW0gdG8gcmVwbGFjZSB0aGUgdG9rZW4uXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IHRleHQodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMuX3RleHQgPSB2YWx1ZTtcbiAgICB0aGlzLnVwZGF0ZUl0ZW1zRm9yRGlzcGxheSgpO1xuICB9XG5cbiAgcHVibGljIGdldCB0ZXh0KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3RleHQ7XG4gIH1cblxuICAvKipcbiAgICogQW4gYXJyYXkgb2YgYFRlbXBsYXRlUmVmYCBvYmplY3RzIHRvIGJlIHBsYWNlZCBpbiB0aGUgdGVtcGxhdGUsIHdoZXJlIHRoZSBgbnRoYFxuICAgKiBpdGVtIGlzIHBsYWNlZCBhdCB0aGUgYHtufWAgbG9jYXRpb24gaW4gdGhlIHRlbXBsYXRlLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBhcmdzKHZhbHVlOiBUZW1wbGF0ZVJlZjxhbnk+W10pIHtcbiAgICB0aGlzLl9hcmdzID0gdmFsdWU7XG4gICAgdGhpcy51cGRhdGVJdGVtc0ZvckRpc3BsYXkoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgYXJncygpOiBUZW1wbGF0ZVJlZjxhbnk+W10ge1xuICAgIHJldHVybiB0aGlzLl9hcmdzO1xuICB9XG5cbiAgcHJpdmF0ZSBfdGV4dDogc3RyaW5nO1xuXG4gIHByaXZhdGUgX2FyZ3M6IFRlbXBsYXRlUmVmPGFueT5bXTtcblxuICBwcml2YXRlIHVwZGF0ZUl0ZW1zRm9yRGlzcGxheSgpOiB2b2lkIHtcbiAgICB0aGlzLml0ZW1zRm9yRGlzcGxheSA9IFtdO1xuXG4gICAgaWYgKHRoaXMudGV4dCAmJiB0aGlzLmFyZ3MpIHtcbiAgICAgIGNvbnN0IHRleHRQYXJ0cyA9IHRoaXMudGV4dC5zcGxpdCh0b2tlblJlZ2V4KTtcblxuICAgICAgZm9yIChjb25zdCB0ZXh0UGFydCBvZiB0ZXh0UGFydHMpIHtcbiAgICAgICAgLy8gRGlzcmVnYXJkIGVtcHR5IHN0cmluZ3MuXG4gICAgICAgIGlmICh0ZXh0UGFydCkge1xuICAgICAgICAgIGNvbnN0IGl0ZW06IFNreUZvcm1hdEl0ZW0gPSB7fTtcblxuICAgICAgICAgIGlmICh0b2tlblJlZ2V4LnRlc3QodGV4dFBhcnQpKSB7XG4gICAgICAgICAgICBjb25zdCB2YWx1ZUluZGV4ID0gK3RleHRQYXJ0LnN1YnN0cmluZygxLCB0ZXh0UGFydC5sZW5ndGggLSAxKTtcblxuICAgICAgICAgICAgaXRlbS50ZW1wbGF0ZVJlZiA9IHRoaXMuYXJnc1t2YWx1ZUluZGV4XTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaXRlbS50ZXh0ID0gdGV4dFBhcnQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdGhpcy5pdGVtc0ZvckRpc3BsYXkucHVzaChpdGVtKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiBpdGVtc0ZvckRpc3BsYXlcIj5cbiAgPCEtLVxuICAgIFRoZSBmb2xsb3dpbmcgbmctY29udGFpbmVyIG11c3QgYmUgb24gb25lIGxpbmUgc28gbm8gZXh0cmEgd2hpdGVzcGFjZSBpcyBpbnRyb2R1Y2VkLlxuICAtLT5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIml0ZW0udGV4dDsgZWxzZSBpdGVtLnRlbXBsYXRlUmVmXCI+e3tcbiAgICBpdGVtLnRleHRcbiAgfX08L25nLWNvbnRhaW5lcj5cbjwvbmctY29udGFpbmVyPlxuIl19
67
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9sYXlvdXQvc3JjL2xpYi9tb2R1bGVzL2Zvcm1hdC9mb3JtYXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2xheW91dC9zcmMvbGliL21vZHVsZXMvZm9ybWF0L2Zvcm1hdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULEtBQUssR0FFTixNQUFNLGVBQWUsQ0FBQzs7O0FBSXZCLE1BQU0sVUFBVSxHQUFHLFdBQVcsQ0FBQztBQU8vQixNQUFNLE9BQU8sa0JBQWtCO0lBTC9COztRQU1TLG9CQUFlLEdBQW9CLEVBQUUsQ0FBQztRQThCN0MsNENBQTJCO1FBRTNCLDRDQUF1QztLQTBCeEM7SUF4REM7OztPQUdHO0lBQ0gsSUFDVyxJQUFJLENBQUMsS0FBeUI7UUFDdkMsdUJBQUEsSUFBSSw2QkFBVSxLQUFLLE1BQUEsQ0FBQztRQUNwQix1QkFBQSxJQUFJLGdGQUF1QixNQUEzQixJQUFJLENBQXlCLENBQUM7SUFDaEMsQ0FBQztJQUVELElBQVcsSUFBSTtRQUNiLE9BQU8sdUJBQUEsSUFBSSxpQ0FBTyxDQUFDO0lBQ3JCLENBQUM7SUFFRDs7O09BR0c7SUFDSCxJQUNXLElBQUksQ0FBQyxLQUFxQztRQUNuRCx1QkFBQSxJQUFJLDZCQUFVLEtBQUssTUFBQSxDQUFDO1FBQ3BCLHVCQUFBLElBQUksZ0ZBQXVCLE1BQTNCLElBQUksQ0FBeUIsQ0FBQztJQUNoQyxDQUFDO0lBRUQsSUFBVyxJQUFJO1FBQ2IsT0FBTyx1QkFBQSxJQUFJLGlDQUFPLENBQUM7SUFDckIsQ0FBQzs7O0lBT0MsSUFBSSxDQUFDLGVBQWUsR0FBRyxFQUFFLENBQUM7SUFFMUIsSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUU7UUFDMUIsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFOUMsS0FBSyxNQUFNLFFBQVEsSUFBSSxTQUFTLEVBQUU7WUFDaEMsMkJBQTJCO1lBQzNCLElBQUksUUFBUSxFQUFFO2dCQUNaLE1BQU0sSUFBSSxHQUFrQixFQUFFLENBQUM7Z0JBRS9CLElBQUksVUFBVSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRTtvQkFDN0IsTUFBTSxVQUFVLEdBQUcsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO29CQUUvRCxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7aUJBQzFDO3FCQUFNO29CQUNMLElBQUksQ0FBQyxJQUFJLEdBQUcsUUFBUSxDQUFDO2lCQUN0QjtnQkFFRCxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUNqQztTQUNGO0tBQ0Y7QUFDSCxDQUFDOytHQTFEVSxrQkFBa0I7bUdBQWxCLGtCQUFrQiwwRkNoQi9CLHNTQU1BOzJGRFVhLGtCQUFrQjtrQkFMOUIsU0FBUzsrQkFDRSxZQUFZLG1CQUVMLHVCQUF1QixDQUFDLE1BQU07OEJBVXBDLElBQUk7c0JBRGQsS0FBSztnQkFlSyxJQUFJO3NCQURkLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgVGVtcGxhdGVSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBTa3lGb3JtYXRJdGVtIH0gZnJvbSAnLi9mb3JtYXQtaXRlbSc7XG5cbmNvbnN0IHRva2VuUmVnZXggPSAvKFxce1xcZCtcXH0pLztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2t5LWZvcm1hdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9mb3JtYXQuY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgU2t5Rm9ybWF0Q29tcG9uZW50IHtcbiAgcHVibGljIGl0ZW1zRm9yRGlzcGxheTogU2t5Rm9ybWF0SXRlbVtdID0gW107XG5cbiAgLyoqXG4gICAqIFRoZSB0b2tlbml6ZWQgc3RyaW5nIHRoYXQgcmVwcmVzZW50cyB0aGUgdGVtcGxhdGUuIFRva2VucyB1c2UgdGhlIGB7bn1gIG5vdGF0aW9uXG4gICAqIHdoZXJlIGBuYCBpcyB0aGUgb3JkaW5hbCBvZiB0aGUgaXRlbSB0byByZXBsYWNlIHRoZSB0b2tlbi5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgdGV4dCh2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy4jX3RleHQgPSB2YWx1ZTtcbiAgICB0aGlzLiN1cGRhdGVJdGVtc0ZvckRpc3BsYXkoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdGV4dCgpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLiNfdGV4dDtcbiAgfVxuXG4gIC8qKlxuICAgKiBBbiBhcnJheSBvZiBgVGVtcGxhdGVSZWZgIG9iamVjdHMgdG8gYmUgcGxhY2VkIGluIHRoZSB0ZW1wbGF0ZSwgd2hlcmUgdGhlIGBudGhgXG4gICAqIGl0ZW0gaXMgcGxhY2VkIGF0IHRoZSBge259YCBsb2NhdGlvbiBpbiB0aGUgdGVtcGxhdGUuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGFyZ3ModmFsdWU6IFRlbXBsYXRlUmVmPGFueT5bXSB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMuI19hcmdzID0gdmFsdWU7XG4gICAgdGhpcy4jdXBkYXRlSXRlbXNGb3JEaXNwbGF5KCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGFyZ3MoKTogVGVtcGxhdGVSZWY8YW55PltdIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy4jX2FyZ3M7XG4gIH1cblxuICAjX3RleHQ6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICAjX2FyZ3M6IFRlbXBsYXRlUmVmPGFueT5bXSB8IHVuZGVmaW5lZDtcblxuICAjdXBkYXRlSXRlbXNGb3JEaXNwbGF5KCk6IHZvaWQge1xuICAgIHRoaXMuaXRlbXNGb3JEaXNwbGF5ID0gW107XG5cbiAgICBpZiAodGhpcy50ZXh0ICYmIHRoaXMuYXJncykge1xuICAgICAgY29uc3QgdGV4dFBhcnRzID0gdGhpcy50ZXh0LnNwbGl0KHRva2VuUmVnZXgpO1xuXG4gICAgICBmb3IgKGNvbnN0IHRleHRQYXJ0IG9mIHRleHRQYXJ0cykge1xuICAgICAgICAvLyBEaXNyZWdhcmQgZW1wdHkgc3RyaW5ncy5cbiAgICAgICAgaWYgKHRleHRQYXJ0KSB7XG4gICAgICAgICAgY29uc3QgaXRlbTogU2t5Rm9ybWF0SXRlbSA9IHt9O1xuXG4gICAgICAgICAgaWYgKHRva2VuUmVnZXgudGVzdCh0ZXh0UGFydCkpIHtcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlSW5kZXggPSArdGV4dFBhcnQuc3Vic3RyaW5nKDEsIHRleHRQYXJ0Lmxlbmd0aCAtIDEpO1xuXG4gICAgICAgICAgICBpdGVtLnRlbXBsYXRlUmVmID0gdGhpcy5hcmdzW3ZhbHVlSW5kZXhdO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBpdGVtLnRleHQgPSB0ZXh0UGFydDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICB0aGlzLml0ZW1zRm9yRGlzcGxheS5wdXNoKGl0ZW0pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIGl0ZW1zRm9yRGlzcGxheVwiPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXRlbS50ZXh0XCI+e3sgaXRlbS50ZXh0IH19PC9uZy1jb250YWluZXI+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXRlbS50ZXh0ICYmIGl0ZW0udGVtcGxhdGVSZWZcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiaXRlbS50ZW1wbGF0ZVJlZlwiPjwvbmctY29udGFpbmVyPlxuICA8L25nLWNvbnRhaW5lcj5cbjwvbmctY29udGFpbmVyPlxuIl19
@@ -1,3 +1,5 @@
1
+ var _SkyInlineDeleteAdapterService_instances, _SkyInlineDeleteAdapterService_element, _SkyInlineDeleteAdapterService_focusableElements, _SkyInlineDeleteAdapterService_parentEl, _SkyInlineDeleteAdapterService_parentElUnlistenFn, _SkyInlineDeleteAdapterService_renderer, _SkyInlineDeleteAdapterService_coreAdapterService, _SkyInlineDeleteAdapterService_focusNextElement, _SkyInlineDeleteAdapterService_getFocusableElements, _SkyInlineDeleteAdapterService_isElementHiddenOrCovered, _SkyInlineDeleteAdapterService_isElementHidden, _SkyInlineDeleteAdapterService_isShift;
2
+ import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
1
3
  import { Injectable, RendererFactory2 } from '@angular/core';
2
4
  import { SkyCoreAdapterService } from '@skyux/core';
3
5
  import * as i0 from "@angular/core";
@@ -7,109 +9,115 @@ import * as i1 from "@skyux/core";
7
9
  */
8
10
  export class SkyInlineDeleteAdapterService {
9
11
  constructor(coreAdapterService, rendererFactory) {
10
- this.coreAdapterService = coreAdapterService;
11
- this.renderer = rendererFactory.createRenderer(undefined, undefined);
12
+ _SkyInlineDeleteAdapterService_instances.add(this);
13
+ _SkyInlineDeleteAdapterService_element.set(this, void 0);
14
+ _SkyInlineDeleteAdapterService_focusableElements.set(this, void 0);
15
+ _SkyInlineDeleteAdapterService_parentEl.set(this, void 0);
16
+ _SkyInlineDeleteAdapterService_parentElUnlistenFn.set(this, void 0);
17
+ _SkyInlineDeleteAdapterService_renderer.set(this, void 0);
18
+ _SkyInlineDeleteAdapterService_coreAdapterService.set(this, void 0);
19
+ __classPrivateFieldSet(this, _SkyInlineDeleteAdapterService_coreAdapterService, coreAdapterService, "f");
20
+ __classPrivateFieldSet(this, _SkyInlineDeleteAdapterService_renderer, rendererFactory.createRenderer(undefined, null), "f");
12
21
  }
13
22
  clearListeners() {
14
23
  /* istanbul ignore else */
15
- if (this.parentElUnlistenFn) {
16
- this.parentElUnlistenFn();
24
+ if (__classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_parentElUnlistenFn, "f")) {
25
+ __classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_parentElUnlistenFn, "f").call(this);
17
26
  }
18
27
  }
19
28
  setEl(element) {
20
- this.element = element;
21
- this.parentEl = element.parentElement;
29
+ __classPrivateFieldSet(this, _SkyInlineDeleteAdapterService_element, element, "f");
30
+ __classPrivateFieldSet(this, _SkyInlineDeleteAdapterService_parentEl, element.parentElement, "f");
22
31
  /* istanbul ignore else */
23
- if (this.parentEl) {
24
- this.parentElUnlistenFn = this.renderer.listen(this.parentEl, 'focusin', (event) => {
25
- const target = event.target;
26
- if (!this.element.contains(target) && this.parentEl !== target) {
27
- event.preventDefault();
28
- event.stopPropagation();
29
- event.stopImmediatePropagation();
30
- target.blur();
31
- this.focusNextElement(target, this.isShift(event), this.parentEl);
32
+ if (__classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_parentEl, "f")) {
33
+ __classPrivateFieldSet(this, _SkyInlineDeleteAdapterService_parentElUnlistenFn, __classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_renderer, "f").listen(__classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_parentEl, "f"), 'focusin', (event) => {
34
+ if (__classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_element, "f")) {
35
+ const target = event.target;
36
+ if (!__classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_element, "f").contains(target) && __classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_parentEl, "f") !== target) {
37
+ event.preventDefault();
38
+ event.stopPropagation();
39
+ event.stopImmediatePropagation();
40
+ target.blur();
41
+ __classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_instances, "m", _SkyInlineDeleteAdapterService_focusNextElement).call(this, target, __classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_instances, "m", _SkyInlineDeleteAdapterService_isShift).call(this, event));
42
+ }
32
43
  }
33
- });
44
+ }), "f");
34
45
  }
35
46
  }
36
- focusNextElement(targetElement, shiftKey, busyEl) {
37
- const focussable = this.getFocussableElements();
38
- // If shift tab, go in the other direction
39
- const modifier = shiftKey ? -1 : 1;
40
- // Find the next navigable element that isn't waiting
41
- const startingIndex = focussable.indexOf(targetElement);
42
- let curIndex = startingIndex + modifier;
43
- while (focussable[curIndex] &&
44
- this.isElementHiddenOrCovered(focussable[curIndex])) {
47
+ }
48
+ _SkyInlineDeleteAdapterService_element = new WeakMap(), _SkyInlineDeleteAdapterService_focusableElements = new WeakMap(), _SkyInlineDeleteAdapterService_parentEl = new WeakMap(), _SkyInlineDeleteAdapterService_parentElUnlistenFn = new WeakMap(), _SkyInlineDeleteAdapterService_renderer = new WeakMap(), _SkyInlineDeleteAdapterService_coreAdapterService = new WeakMap(), _SkyInlineDeleteAdapterService_instances = new WeakSet(), _SkyInlineDeleteAdapterService_focusNextElement = function _SkyInlineDeleteAdapterService_focusNextElement(targetElement, shiftKey) {
49
+ const focusable = __classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_instances, "m", _SkyInlineDeleteAdapterService_getFocusableElements).call(this);
50
+ // If shift tab, go in the other direction
51
+ const modifier = shiftKey ? -1 : 1;
52
+ // Find the next navigable element that isn't waiting
53
+ const startingIndex = focusable.indexOf(targetElement);
54
+ let curIndex = startingIndex + modifier;
55
+ while (focusable[curIndex] &&
56
+ __classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_instances, "m", _SkyInlineDeleteAdapterService_isElementHiddenOrCovered).call(this, focusable[curIndex])) {
57
+ curIndex += modifier;
58
+ }
59
+ if (focusable[curIndex] &&
60
+ !__classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_instances, "m", _SkyInlineDeleteAdapterService_isElementHiddenOrCovered).call(this, focusable[curIndex])) {
61
+ focusable[curIndex].focus();
62
+ }
63
+ else {
64
+ // Try wrapping the navigation
65
+ /* istanbul ignore next */
66
+ curIndex = modifier > 0 ? 0 : focusable.length - 1;
67
+ /* istanbul ignore next */
68
+ while (curIndex !== startingIndex &&
69
+ focusable[curIndex] &&
70
+ __classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_instances, "m", _SkyInlineDeleteAdapterService_isElementHiddenOrCovered).call(this, focusable[curIndex])) {
45
71
  curIndex += modifier;
46
72
  }
47
- if (focussable[curIndex] &&
48
- !this.isElementHiddenOrCovered(focussable[curIndex])) {
49
- focussable[curIndex].focus();
73
+ /* istanbul ignore else */
74
+ /* sanity check */
75
+ if (focusable[curIndex] &&
76
+ !__classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_instances, "m", _SkyInlineDeleteAdapterService_isElementHiddenOrCovered).call(this, focusable[curIndex])) {
77
+ focusable[curIndex].focus();
50
78
  }
51
79
  else {
52
- // Try wrapping the navigation
53
- /* istanbul ignore next */
54
- curIndex = modifier > 0 ? 0 : focussable.length - 1;
55
- /* istanbul ignore next */
56
- while (curIndex !== startingIndex &&
57
- focussable[curIndex] &&
58
- this.isElementHiddenOrCovered(focussable[curIndex])) {
59
- curIndex += modifier;
80
+ // No valid target, wipe focus
81
+ // This should never happen in practice due to the multiple inline delete buttons
82
+ if (document.activeElement && document.activeElement.blur) {
83
+ document.activeElement.blur();
60
84
  }
61
- /* istanbul ignore else */
62
- /* sanity check */
63
- if (focussable[curIndex] &&
64
- !this.isElementHiddenOrCovered(focussable[curIndex])) {
65
- focussable[curIndex].focus();
66
- }
67
- else {
68
- // No valid target, wipe focus
69
- // This should never happen in practice due to the multiple inline delete buttons
70
- if (document.activeElement && document.activeElement.blur) {
71
- document.activeElement.blur();
72
- }
73
- document.body.focus();
74
- }
75
- }
76
- // clear focussableElements list so that if things change between tabbing we know about it
77
- this.focussableElements = undefined;
78
- }
79
- getFocussableElements() {
80
- // Keep this cached so we can reduce querys
81
- if (this.focussableElements) {
82
- return this.focussableElements;
85
+ document.body.focus();
83
86
  }
84
- this.focussableElements = this.coreAdapterService.getFocusableChildren(document.body);
85
- return this.focussableElements;
86
- }
87
- isElementHiddenOrCovered(element) {
88
- // Check if the element is hidden by css, not within the inline delete, or a wait is covering it
89
- return (this.isElementHidden(element) ||
90
- (this.parentEl.contains(element) &&
91
- (!this.element.contains(element) ||
92
- this.parentEl.querySelector('.sky-wait-mask') !== null)));
93
87
  }
94
- isElementHidden(element) {
95
- const style = window.getComputedStyle(element);
96
- return style.display === 'none' || style.visibility === 'hidden';
88
+ // clear focusableElements list so that if things change between tabbing we know about it
89
+ __classPrivateFieldSet(this, _SkyInlineDeleteAdapterService_focusableElements, undefined, "f");
90
+ }, _SkyInlineDeleteAdapterService_getFocusableElements = function _SkyInlineDeleteAdapterService_getFocusableElements() {
91
+ // Keep this cached so we can reduce querys
92
+ if (__classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_focusableElements, "f")) {
93
+ return __classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_focusableElements, "f");
97
94
  }
98
- isShift(event) {
99
- // Determine if shift+tab was used based on element order
100
- const elements = this.getFocussableElements().filter((elem) => !this.isElementHidden(elem));
101
- const previousInd = elements.indexOf(event.relatedTarget);
102
- const currentInd = elements.indexOf(event.target);
103
- /* istanbul ignore next */
104
- return (previousInd === currentInd + 1 ||
105
- (previousInd === 0 && currentInd === elements.length - 1) ||
106
- previousInd > currentInd ||
107
- !event.relatedTarget);
108
- }
109
- }
95
+ __classPrivateFieldSet(this, _SkyInlineDeleteAdapterService_focusableElements, __classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_coreAdapterService, "f").getFocusableChildren(document.body), "f");
96
+ return __classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_focusableElements, "f");
97
+ }, _SkyInlineDeleteAdapterService_isElementHiddenOrCovered = function _SkyInlineDeleteAdapterService_isElementHiddenOrCovered(element) {
98
+ // Check if the element is hidden by css, not within the inline delete, or a wait is covering it
99
+ return (__classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_instances, "m", _SkyInlineDeleteAdapterService_isElementHidden).call(this, element) ||
100
+ (!!__classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_parentEl, "f") &&
101
+ __classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_parentEl, "f").contains(element) &&
102
+ (!__classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_element, "f")?.contains(element) ||
103
+ __classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_parentEl, "f").querySelector('.sky-wait-mask') !== null)));
104
+ }, _SkyInlineDeleteAdapterService_isElementHidden = function _SkyInlineDeleteAdapterService_isElementHidden(element) {
105
+ const style = window.getComputedStyle(element);
106
+ return style.display === 'none' || style.visibility === 'hidden';
107
+ }, _SkyInlineDeleteAdapterService_isShift = function _SkyInlineDeleteAdapterService_isShift(event) {
108
+ // Determine if shift+tab was used based on element order
109
+ const elements = __classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_instances, "m", _SkyInlineDeleteAdapterService_getFocusableElements).call(this).filter((elem) => !__classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_instances, "m", _SkyInlineDeleteAdapterService_isElementHidden).call(this, elem));
110
+ const previousInd = elements.indexOf(event.relatedTarget);
111
+ const currentInd = elements.indexOf(event.target);
112
+ /* istanbul ignore next */
113
+ return (previousInd === currentInd + 1 ||
114
+ (previousInd === 0 && currentInd === elements.length - 1) ||
115
+ previousInd > currentInd ||
116
+ !event.relatedTarget);
117
+ };
110
118
  SkyInlineDeleteAdapterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyInlineDeleteAdapterService, deps: [{ token: i1.SkyCoreAdapterService }, { token: i0.RendererFactory2 }], target: i0.ɵɵFactoryTarget.Injectable });
111
119
  SkyInlineDeleteAdapterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyInlineDeleteAdapterService });
112
120
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyInlineDeleteAdapterService, decorators: [{
113
121
  type: Injectable
114
122
  }], ctorParameters: function () { return [{ type: i1.SkyCoreAdapterService }, { type: i0.RendererFactory2 }]; } });
115
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5saW5lLWRlbGV0ZS1hZGFwdGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvbGF5b3V0L3NyYy9saWIvbW9kdWxlcy9pbmxpbmUtZGVsZXRlL2lubGluZS1kZWxldGUtYWRhcHRlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQWEsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sYUFBYSxDQUFDOzs7QUFFcEQ7O0dBRUc7QUFFSCxNQUFNLE9BQU8sNkJBQTZCO0lBT3hDLFlBQ1Usa0JBQXlDLEVBQ2pELGVBQWlDO1FBRHpCLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBdUI7UUFHakQsSUFBSSxDQUFDLFFBQVEsR0FBRyxlQUFlLENBQUMsY0FBYyxDQUFDLFNBQVMsRUFBRSxTQUFTLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRU0sY0FBYztRQUNuQiwwQkFBMEI7UUFDMUIsSUFBSSxJQUFJLENBQUMsa0JBQWtCLEVBQUU7WUFDM0IsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7U0FDM0I7SUFDSCxDQUFDO0lBRU0sS0FBSyxDQUFDLE9BQW9CO1FBQy9CLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDLGFBQWEsQ0FBQztRQUV0QywwQkFBMEI7UUFDMUIsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2pCLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FDNUMsSUFBSSxDQUFDLFFBQVEsRUFDYixTQUFTLEVBQ1QsQ0FBQyxLQUFpQixFQUFFLEVBQUU7Z0JBQ3BCLE1BQU0sTUFBTSxHQUFRLEtBQUssQ0FBQyxNQUFNLENBQUM7Z0JB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TUFBTSxHQUFHLENBQUMsQ0FBQztZQUN6RCxXQUFXLEdBQUcsVUFBVTtZQUN4QixDQUFFLEtBQWEsQ0FBQyxhQUFhLENBQzlCLENBQUM7SUFDSixDQUFDOzswSEFySlUsNkJBQTZCOzhIQUE3Qiw2QkFBNkI7MkZBQTdCLDZCQUE2QjtrQkFEekMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIFJlbmRlcmVyMiwgUmVuZGVyZXJGYWN0b3J5MiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2t5Q29yZUFkYXB0ZXJTZXJ2aWNlIH0gZnJvbSAnQHNreXV4L2NvcmUnO1xuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgU2t5SW5saW5lRGVsZXRlQWRhcHRlclNlcnZpY2Uge1xuICBwcml2YXRlIGVsZW1lbnQ6IEhUTUxFbGVtZW50O1xuICBwcml2YXRlIGZvY3Vzc2FibGVFbGVtZW50czogSFRNTEVsZW1lbnRbXTtcbiAgcHJpdmF0ZSBwYXJlbnRFbDogSFRNTEVsZW1lbnQ7XG4gIHByaXZhdGUgcGFyZW50RWxVbmxpc3RlbkZuOiAoKSA9PiB2b2lkO1xuICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjI7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBjb3JlQWRhcHRlclNlcnZpY2U6IFNreUNvcmVBZGFwdGVyU2VydmljZSxcbiAgICByZW5kZXJlckZhY3Rvcnk6IFJlbmRlcmVyRmFjdG9yeTJcbiAgKSB7XG4gICAgdGhpcy5yZW5kZXJlciA9IHJlbmRlcmVyRmFjdG9yeS5jcmVhdGVSZW5kZXJlcih1bmRlZmluZWQsIHVuZGVmaW5lZCk7XG4gIH1cblxuICBwdWJsaWMgY2xlYXJMaXN0ZW5lcnMoKTogdm9pZCB7XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICBpZiAodGhpcy5wYXJlbnRFbFVubGlzdGVuRm4pIHtcbiAgICAgIHRoaXMucGFyZW50RWxVbmxpc3RlbkZuKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHNldEVsKGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogdm9pZCB7XG4gICAgdGhpcy5lbGVtZW50ID0gZWxlbWVudDtcbiAgICB0aGlzLnBhcmVudEVsID0gZWxlbWVudC5wYXJlbnRFbGVtZW50O1xuXG4gICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICBpZiAodGhpcy5wYXJlbnRFbCkge1xuICAgICAgdGhpcy5wYXJlbnRFbFVubGlzdGVuRm4gPSB0aGlzLnJlbmRlcmVyLmxpc3RlbihcbiAgICAgICAgdGhpcy5wYXJlbnRFbCxcbiAgICAgICAgJ2ZvY3VzaW4nLFxuICAgICAgICAoZXZlbnQ6IEZvY3VzRXZlbnQpID0+IHtcbiAgICAgICAgICBjb25zdCB0YXJnZXQ6IGFueSA9IGV2ZW50LnRhcmdldDtcbiAgICAgICAgICBpZiAoIXRoaXMuZWxlbWVudC5jb250YWlucyh0YXJnZXQpICYmIHRoaXMucGFyZW50RWwgIT09IHRhcmdldCkge1xuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgZXZlbnQuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCk7XG5cbiAgICAgICAgICAgIHRhcmdldC5ibHVyKCk7XG4gICAgICAgICAgICB0aGlzLmZvY3VzTmV4dEVsZW1lbnQodGFyZ2V0LCB0aGlzLmlzU2hpZnQoZXZlbnQpLCB0aGlzLnBhcmVudEVsKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBmb2N1c05leHRFbGVtZW50KFxuICAgIHRhcmdldEVsZW1lbnQ6IEhUTUxFbGVtZW50LFxuICAgIHNoaWZ0S2V5OiBib29sZWFuLFxuICAgIGJ1c3lFbDogRWxlbWVudFxuICApOiB2b2lkIHtcbiAgICBjb25zdCBmb2N1c3NhYmxlID0gdGhpcy5nZXRGb2N1c3NhYmxlRWxlbWVudHMoKTtcblxuICAgIC8vIElmIHNoaWZ0IHRhYiwgZ28gaW4gdGhlIG90aGVyIGRpcmVjdGlvblxuICAgIGNvbnN0IG1vZGlmaWVyID0gc2hpZnRLZXkgPyAtMSA6IDE7XG5cbiAgICAvLyBGaW5kIHRoZSBuZXh0IG5hdmlnYWJsZSBlbGVtZW50IHRoYXQgaXNuJ3Qgd2FpdGluZ1xuICAgIGNvbnN0IHN0YXJ0aW5nSW5kZXggPSBmb2N1c3NhYmxlLmluZGV4T2YodGFyZ2V0RWxlbWVudCk7XG4gICAgbGV0IGN1ckluZGV4ID0gc3RhcnRpbmdJbmRleCArIG1vZGlmaWVyO1xuICAgIHdoaWxlIChcbiAgICAgIGZvY3Vzc2FibGVbY3VySW5kZXhdICYmXG4gICAgICB0aGlzLmlzRWxlbWVudEhpZGRlbk9yQ292ZXJlZChmb2N1c3NhYmxlW2N1ckluZGV4XSlcbiAgICApIHtcbiAgICAgIGN1ckluZGV4ICs9IG1vZGlmaWVyO1xuICAgIH1cblxuICAgIGlmIChcbiAgICAgIGZvY3Vzc2FibGVbY3VySW5kZXhdICYmXG4gICAgICAhdGhpcy5pc0VsZW1lbnRIaWRkZW5PckNvdmVyZWQoZm9jdXNzYWJsZVtjdXJJbmRleF0pXG4gICAgKSB7XG4gICAgICBmb2N1c3NhYmxlW2N1ckluZGV4XS5mb2N1cygpO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBUcnkgd3JhcHBpbmcgdGhlIG5hdmlnYXRpb25cbiAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgICBjdXJJbmRleCA9IG1vZGlmaWVyID4gMCA/IDAgOiBmb2N1c3NhYmxlLmxlbmd0aCAtIDE7XG5cbiAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgICB3aGlsZSAoXG4gICAgICAgIGN1ckluZGV4ICE9PSBzdGFydGluZ0luZGV4ICYmXG4gICAgICAgIGZvY3Vzc2FibGVbY3VySW5kZXhdICYmXG4gICAgICAgIHRoaXMuaXNFbGVtZW50SGlkZGVuT3JDb3ZlcmVkKGZvY3Vzc2FibGVbY3VySW5kZXhdKVxuICAgICAgKSB7XG4gICAgICAgIGN1ckluZGV4ICs9IG1vZGlmaWVyO1xuICAgICAgfVxuXG4gICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgLyogc2FuaXR5IGNoZWNrICovXG4gICAgICBpZiAoXG4gICAgICAgIGZvY3Vzc2FibGVbY3VySW5kZXhdICYmXG4gICAgICAgICF0aGlzLmlzRWxlbWVudEhpZGRlbk9yQ292ZXJlZChmb2N1c3NhYmxlW2N1ckluZGV4XSlcbiAgICAgICkge1xuICAgICAgICBmb2N1c3NhYmxlW2N1ckluZGV4XS5mb2N1cygpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8gTm8gdmFsaWQgdGFyZ2V0LCB3aXBlIGZvY3VzXG4gICAgICAgIC8vIFRoaXMgc2hvdWxkIG5ldmVyIGhhcHBlbiBpbiBwcmFjdGljZSBkdWUgdG8gdGhlIG11bHRpcGxlIGlubGluZSBkZWxldGUgYnV0dG9uc1xuICAgICAgICBpZiAoZG9jdW1lbnQuYWN0aXZlRWxlbWVudCAmJiAoZG9jdW1lbnQuYWN0aXZlRWxlbWVudCBhcyBhbnkpLmJsdXIpIHtcbiAgICAgICAgICAoZG9jdW1lbnQuYWN0aXZlRWxlbWVudCBhcyBhbnkpLmJsdXIoKTtcbiAgICAgICAgfVxuICAgICAgICBkb2N1bWVudC5ib2R5LmZvY3VzKCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gY2xlYXIgZm9jdXNzYWJsZUVsZW1lbnRzIGxpc3Qgc28gdGhhdCBpZiB0aGluZ3MgY2hhbmdlIGJldHdlZW4gdGFiYmluZyB3ZSBrbm93IGFib3V0IGl0XG4gICAgdGhpcy5mb2N1c3NhYmxlRWxlbWVudHMgPSB1bmRlZmluZWQ7XG4gIH1cblxuICBwcml2YXRlIGdldEZvY3Vzc2FibGVFbGVtZW50cygpOiBIVE1MRWxlbWVudFtdIHtcbiAgICAvLyBLZWVwIHRoaXMgY2FjaGVkIHNvIHdlIGNhbiByZWR1Y2UgcXVlcnlzXG4gICAgaWYgKHRoaXMuZm9jdXNzYWJsZUVsZW1lbnRzKSB7XG4gICAgICByZXR1cm4gdGhpcy5mb2N1c3NhYmxlRWxlbWVudHM7XG4gICAgfVxuXG4gICAgdGhpcy5mb2N1c3NhYmxlRWxlbWVudHMgPSB0aGlzLmNvcmVBZGFwdGVyU2VydmljZS5nZXRGb2N1c2FibGVDaGlsZHJlbihcbiAgICAgIGRvY3VtZW50LmJvZHlcbiAgICApO1xuXG4gICAgcmV0dXJuIHRoaXMuZm9jdXNzYWJsZUVsZW1lbnRzO1xuICB9XG5cbiAgcHJpdmF0ZSBpc0VsZW1lbnRIaWRkZW5PckNvdmVyZWQoZWxlbWVudDogYW55KTogYm9vbGVhbiB7XG4gICAgLy8gQ2hlY2sgaWYgdGhlIGVsZW1lbnQgaXMgaGlkZGVuIGJ5IGNzcywgbm90IHdpdGhpbiB0aGUgaW5saW5lIGRlbGV0ZSwgb3IgYSB3YWl0IGlzIGNvdmVyaW5nIGl0XG4gICAgcmV0dXJuIChcbiAgICAgIHRoaXMuaXNFbGVtZW50SGlkZGVuKGVsZW1lbnQpIHx8XG4gICAgICAodGhpcy5wYXJlbnRFbC5jb250YWlucyhlbGVtZW50KSAmJlxuICAgICAgICAoIXRoaXMuZWxlbWVudC5jb250YWlucyhlbGVtZW50KSB8fFxuICAgICAgICAgIHRoaXMucGFyZW50RWwucXVlcnlTZWxlY3RvcignLnNreS13YWl0LW1hc2snKSAhPT0gbnVsbCkpXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgaXNFbGVtZW50SGlkZGVuKGVsZW1lbnQ6IGFueSk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IHN0eWxlID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUoZWxlbWVudCk7XG4gICAgcmV0dXJuIHN0eWxlLmRpc3BsYXkgPT09ICdub25lJyB8fCBzdHlsZS52aXNpYmlsaXR5ID09PSAnaGlkZGVuJztcbiAgfVxuXG4gIHByaXZhdGUgaXNTaGlmdChldmVudDogRXZlbnQpOiBib29sZWFuIHtcbiAgICAvLyBEZXRlcm1pbmUgaWYgc2hpZnQrdGFiIHdhcyB1c2VkIGJhc2VkIG9uIGVsZW1lbnQgb3JkZXJcbiAgICBjb25zdCBlbGVtZW50cyA9IHRoaXMuZ2V0Rm9jdXNzYWJsZUVsZW1lbnRzKCkuZmlsdGVyKFxuICAgICAgKGVsZW0pID0+ICF0aGlzLmlzRWxlbWVudEhpZGRlbihlbGVtKVxuICAgICk7XG5cbiAgICBjb25zdCBwcmV2aW91c0luZCA9IGVsZW1lbnRzLmluZGV4T2YoKGV2ZW50IGFzIGFueSkucmVsYXRlZFRhcmdldCk7XG4gICAgY29uc3QgY3VycmVudEluZCA9IGVsZW1lbnRzLmluZGV4T2YoZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50KTtcblxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgcmV0dXJuIChcbiAgICAgIHByZXZpb3VzSW5kID09PSBjdXJyZW50SW5kICsgMSB8fFxuICAgICAgKHByZXZpb3VzSW5kID09PSAwICYmIGN1cnJlbnRJbmQgPT09IGVsZW1lbnRzLmxlbmd0aCAtIDEpIHx8XG4gICAgICBwcmV2aW91c0luZCA+IGN1cnJlbnRJbmQgfHxcbiAgICAgICEoZXZlbnQgYXMgYW55KS5yZWxhdGVkVGFyZ2V0XG4gICAgKTtcbiAgfVxufVxuIl19
123
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5saW5lLWRlbGV0ZS1hZGFwdGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvbGF5b3V0L3NyYy9saWIvbW9kdWxlcy9pbmxpbmUtZGVsZXRlL2lubGluZS1kZWxldGUtYWRhcHRlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBYSxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxhQUFhLENBQUM7OztBQUVwRDs7R0FFRztBQUVILE1BQU0sT0FBTyw2QkFBNkI7SUFTeEMsWUFDRSxrQkFBeUMsRUFDekMsZUFBaUM7O1FBVm5DLHlEQUFrQztRQUNsQyxtRUFBOEM7UUFDOUMsMERBQTBDO1FBQzFDLG9FQUE4QztRQUM5QywwREFBcUI7UUFFckIsb0VBQTJDO1FBTXpDLHVCQUFBLElBQUkscURBQXVCLGtCQUFrQixNQUFBLENBQUM7UUFDOUMsdUJBQUEsSUFBSSwyQ0FBYSxlQUFlLENBQUMsY0FBYyxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsTUFBQSxDQUFDO0lBQ25FLENBQUM7SUFFTSxjQUFjO1FBQ25CLDBCQUEwQjtRQUMxQixJQUFJLHVCQUFBLElBQUkseURBQW9CLEVBQUU7WUFDNUIsdUJBQUEsSUFBSSx5REFBb0IsTUFBeEIsSUFBSSxDQUFzQixDQUFDO1NBQzVCO0lBQ0gsQ0FBQztJQUVNLEtBQUssQ0FBQyxPQUFvQjtRQUMvQix1QkFBQSxJQUFJLDBDQUFZLE9BQU8sTUFBQSxDQUFDO1FBQ3hCLHVCQUFBLElBQUksMkNBQWEsT0FBTyxDQUFDLGFBQWEsTUFBQSxDQUFDO1FBRXZDLDBCQUEwQjtRQUMxQixJQUFJLHVCQUFBLElBQUksK0NBQVUsRUFBRTtZQUNsQix1QkFBQSxJQUFJLHFEQUF1Qix1QkFBQSxJQUFJLCtDQUFVLENB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Q3ZDLENBQUM7SUFFRixNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFFLEtBQWEsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUNuRSxNQUFNLFVBQVUsR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxNQUFxQixDQUFDLENBQUM7SUFFakUsMEJBQTBCO0lBQzFCLE9BQU8sQ0FDTCxXQUFXLEtBQUssVUFBVSxHQUFHLENBQUM7UUFDOUIsQ0FBQyxXQUFXLEtBQUssQ0FBQyxJQUFJLFVBQVUsS0FBSyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztRQUN6RCxXQUFXLEdBQUcsVUFBVTtRQUN4QixDQUFFLEtBQWEsQ0FBQyxhQUFhLENBQzlCLENBQUM7QUFDSixDQUFDOzBIQXZKVSw2QkFBNkI7OEhBQTdCLDZCQUE2QjsyRkFBN0IsNkJBQTZCO2tCQUR6QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgUmVuZGVyZXIyLCBSZW5kZXJlckZhY3RvcnkyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTa3lDb3JlQWRhcHRlclNlcnZpY2UgfSBmcm9tICdAc2t5dXgvY29yZSc7XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBTa3lJbmxpbmVEZWxldGVBZGFwdGVyU2VydmljZSB7XG4gICNlbGVtZW50OiBIVE1MRWxlbWVudCB8IHVuZGVmaW5lZDtcbiAgI2ZvY3VzYWJsZUVsZW1lbnRzOiBIVE1MRWxlbWVudFtdIHwgdW5kZWZpbmVkO1xuICAjcGFyZW50RWw6IEhUTUxFbGVtZW50IHwgbnVsbCB8IHVuZGVmaW5lZDtcbiAgI3BhcmVudEVsVW5saXN0ZW5GbjogKCgpID0+IHZvaWQpIHwgdW5kZWZpbmVkO1xuICAjcmVuZGVyZXI6IFJlbmRlcmVyMjtcblxuICAjY29yZUFkYXB0ZXJTZXJ2aWNlOiBTa3lDb3JlQWRhcHRlclNlcnZpY2U7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgY29yZUFkYXB0ZXJTZXJ2aWNlOiBTa3lDb3JlQWRhcHRlclNlcnZpY2UsXG4gICAgcmVuZGVyZXJGYWN0b3J5OiBSZW5kZXJlckZhY3RvcnkyXG4gICkge1xuICAgIHRoaXMuI2NvcmVBZGFwdGVyU2VydmljZSA9IGNvcmVBZGFwdGVyU2VydmljZTtcbiAgICB0aGlzLiNyZW5kZXJlciA9IHJlbmRlcmVyRmFjdG9yeS5jcmVhdGVSZW5kZXJlcih1bmRlZmluZWQsIG51bGwpO1xuICB9XG5cbiAgcHVibGljIGNsZWFyTGlzdGVuZXJzKCk6IHZvaWQge1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgaWYgKHRoaXMuI3BhcmVudEVsVW5saXN0ZW5Gbikge1xuICAgICAgdGhpcy4jcGFyZW50RWxVbmxpc3RlbkZuKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHNldEVsKGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogdm9pZCB7XG4gICAgdGhpcy4jZWxlbWVudCA9IGVsZW1lbnQ7XG4gICAgdGhpcy4jcGFyZW50RWwgPSBlbGVtZW50LnBhcmVudEVsZW1lbnQ7XG5cbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgIGlmICh0aGlzLiNwYXJlbnRFbCkge1xuICAgICAgdGhpcy4jcGFyZW50RWxVbmxpc3RlbkZuID0gdGhpcy4jcmVuZGVyZXIubGlzdGVuKFxuICAgICAgICB0aGlzLiNwYXJlbnRFbCxcbiAgICAgICAgJ2ZvY3VzaW4nLFxuICAgICAgICAoZXZlbnQ6IEZvY3VzRXZlbnQpID0+IHtcbiAgICAgICAgICBpZiAodGhpcy4jZWxlbWVudCkge1xuICAgICAgICAgICAgY29uc3QgdGFyZ2V0OiBhbnkgPSBldmVudC50YXJnZXQ7XG4gICAgICAgICAgICBpZiAoIXRoaXMuI2VsZW1lbnQuY29udGFpbnModGFyZ2V0KSAmJiB0aGlzLiNwYXJlbnRFbCAhPT0gdGFyZ2V0KSB7XG4gICAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgICBldmVudC5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKTtcblxuICAgICAgICAgICAgICB0YXJnZXQuYmx1cigpO1xuICAgICAgICAgICAgICB0aGlzLiNmb2N1c05leHRFbGVtZW50KHRhcmdldCwgdGhpcy4jaXNTaGlmdChldmVudCkpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICAjZm9jdXNOZXh0RWxlbWVudCh0YXJnZXRFbGVtZW50OiBIVE1MRWxlbWVudCwgc2hpZnRLZXk6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICBjb25zdCBmb2N1c2FibGUgPSB0aGlzLiNnZXRGb2N1c2FibGVFbGVtZW50cygpO1xuXG4gICAgLy8gSWYgc2hpZnQgdGFiLCBnbyBpbiB0aGUgb3RoZXIgZGlyZWN0aW9uXG4gICAgY29uc3QgbW9kaWZpZXIgPSBzaGlmdEtleSA/IC0xIDogMTtcblxuICAgIC8vIEZpbmQgdGhlIG5leHQgbmF2aWdhYmxlIGVsZW1lbnQgdGhhdCBpc24ndCB3YWl0aW5nXG4gICAgY29uc3Qgc3RhcnRpbmdJbmRleCA9IGZvY3VzYWJsZS5pbmRleE9mKHRhcmdldEVsZW1lbnQpO1xuICAgIGxldCBjdXJJbmRleCA9IHN0YXJ0aW5nSW5kZXggKyBtb2RpZmllcjtcbiAgICB3aGlsZSAoXG4gICAgICBmb2N1c2FibGVbY3VySW5kZXhdICYmXG4gICAgICB0aGlzLiNpc0VsZW1lbnRIaWRkZW5PckNvdmVyZWQoZm9jdXNhYmxlW2N1ckluZGV4XSlcbiAgICApIHtcbiAgICAgIGN1ckluZGV4ICs9IG1vZGlmaWVyO1xuICAgIH1cblxuICAgIGlmIChcbiAgICAgIGZvY3VzYWJsZVtjdXJJbmRleF0gJiZcbiAgICAgICF0aGlzLiNpc0VsZW1lbnRIaWRkZW5PckNvdmVyZWQoZm9jdXNhYmxlW2N1ckluZGV4XSlcbiAgICApIHtcbiAgICAgIGZvY3VzYWJsZVtjdXJJbmRleF0uZm9jdXMoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gVHJ5IHdyYXBwaW5nIHRoZSBuYXZpZ2F0aW9uXG4gICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICAgICAgY3VySW5kZXggPSBtb2RpZmllciA+IDAgPyAwIDogZm9jdXNhYmxlLmxlbmd0aCAtIDE7XG5cbiAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgICB3aGlsZSAoXG4gICAgICAgIGN1ckluZGV4ICE9PSBzdGFydGluZ0luZGV4ICYmXG4gICAgICAgIGZvY3VzYWJsZVtjdXJJbmRleF0gJiZcbiAgICAgICAgdGhpcy4jaXNFbGVtZW50SGlkZGVuT3JDb3ZlcmVkKGZvY3VzYWJsZVtjdXJJbmRleF0pXG4gICAgICApIHtcbiAgICAgICAgY3VySW5kZXggKz0gbW9kaWZpZXI7XG4gICAgICB9XG5cbiAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgICAvKiBzYW5pdHkgY2hlY2sgKi9cbiAgICAgIGlmIChcbiAgICAgICAgZm9jdXNhYmxlW2N1ckluZGV4XSAmJlxuICAgICAgICAhdGhpcy4jaXNFbGVtZW50SGlkZGVuT3JDb3ZlcmVkKGZvY3VzYWJsZVtjdXJJbmRleF0pXG4gICAgICApIHtcbiAgICAgICAgZm9jdXNhYmxlW2N1ckluZGV4XS5mb2N1cygpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8gTm8gdmFsaWQgdGFyZ2V0LCB3aXBlIGZvY3VzXG4gICAgICAgIC8vIFRoaXMgc2hvdWxkIG5ldmVyIGhhcHBlbiBpbiBwcmFjdGljZSBkdWUgdG8gdGhlIG11bHRpcGxlIGlubGluZSBkZWxldGUgYnV0dG9uc1xuICAgICAgICBpZiAoZG9jdW1lbnQuYWN0aXZlRWxlbWVudCAmJiAoZG9jdW1lbnQuYWN0aXZlRWxlbWVudCBhcyBhbnkpLmJsdXIpIHtcbiAgICAgICAgICAoZG9jdW1lbnQuYWN0aXZlRWxlbWVudCBhcyBhbnkpLmJsdXIoKTtcbiAgICAgICAgfVxuICAgICAgICBkb2N1bWVudC5ib2R5LmZvY3VzKCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gY2xlYXIgZm9jdXNhYmxlRWxlbWVudHMgbGlzdCBzbyB0aGF0IGlmIHRoaW5ncyBjaGFuZ2UgYmV0d2VlbiB0YWJiaW5nIHdlIGtub3cgYWJvdXQgaXRcbiAgICB0aGlzLiNmb2N1c2FibGVFbGVtZW50cyA9IHVuZGVmaW5lZDtcbiAgfVxuXG4gICNnZXRGb2N1c2FibGVFbGVtZW50cygpOiBIVE1MRWxlbWVudFtdIHtcbiAgICAvLyBLZWVwIHRoaXMgY2FjaGVkIHNvIHdlIGNhbiByZWR1Y2UgcXVlcnlzXG4gICAgaWYgKHRoaXMuI2ZvY3VzYWJsZUVsZW1lbnRzKSB7XG4gICAgICByZXR1cm4gdGhpcy4jZm9jdXNhYmxlRWxlbWVudHM7XG4gICAgfVxuXG4gICAgdGhpcy4jZm9jdXNhYmxlRWxlbWVudHMgPSB0aGlzLiNjb3JlQWRhcHRlclNlcnZpY2UuZ2V0Rm9jdXNhYmxlQ2hpbGRyZW4oXG4gICAgICBkb2N1bWVudC5ib2R5XG4gICAgKTtcblxuICAgIHJldHVybiB0aGlzLiNmb2N1c2FibGVFbGVtZW50cztcbiAgfVxuXG4gICNpc0VsZW1lbnRIaWRkZW5PckNvdmVyZWQoZWxlbWVudDogYW55KTogYm9vbGVhbiB7XG4gICAgLy8gQ2hlY2sgaWYgdGhlIGVsZW1lbnQgaXMgaGlkZGVuIGJ5IGNzcywgbm90IHdpdGhpbiB0aGUgaW5saW5lIGRlbGV0ZSwgb3IgYSB3YWl0IGlzIGNvdmVyaW5nIGl0XG4gICAgcmV0dXJuIChcbiAgICAgIHRoaXMuI2lzRWxlbWVudEhpZGRlbihlbGVtZW50KSB8fFxuICAgICAgKCEhdGhpcy4jcGFyZW50RWwgJiZcbiAgICAgICAgdGhpcy4jcGFyZW50RWwuY29udGFpbnMoZWxlbWVudCkgJiZcbiAgICAgICAgKCF0aGlzLiNlbGVtZW50Py5jb250YWlucyhlbGVtZW50KSB8fFxuICAgICAgICAgIHRoaXMuI3BhcmVudEVsLnF1ZXJ5U2VsZWN0b3IoJy5za3ktd2FpdC1tYXNrJykgIT09IG51bGwpKVxuICAgICk7XG4gIH1cblxuICAjaXNFbGVtZW50SGlkZGVuKGVsZW1lbnQ6IGFueSk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IHN0eWxlID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUoZWxlbWVudCk7XG4gICAgcmV0dXJuIHN0eWxlLmRpc3BsYXkgPT09ICdub25lJyB8fCBzdHlsZS52aXNpYmlsaXR5ID09PSAnaGlkZGVuJztcbiAgfVxuXG4gICNpc1NoaWZ0KGV2ZW50OiBFdmVudCk6IGJvb2xlYW4ge1xuICAgIC8vIERldGVybWluZSBpZiBzaGlmdCt0YWIgd2FzIHVzZWQgYmFzZWQgb24gZWxlbWVudCBvcmRlclxuICAgIGNvbnN0IGVsZW1lbnRzID0gdGhpcy4jZ2V0Rm9jdXNhYmxlRWxlbWVudHMoKS5maWx0ZXIoXG4gICAgICAoZWxlbSkgPT4gIXRoaXMuI2lzRWxlbWVudEhpZGRlbihlbGVtKVxuICAgICk7XG5cbiAgICBjb25zdCBwcmV2aW91c0luZCA9IGVsZW1lbnRzLmluZGV4T2YoKGV2ZW50IGFzIGFueSkucmVsYXRlZFRhcmdldCk7XG4gICAgY29uc3QgY3VycmVudEluZCA9IGVsZW1lbnRzLmluZGV4T2YoZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50KTtcblxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgcmV0dXJuIChcbiAgICAgIHByZXZpb3VzSW5kID09PSBjdXJyZW50SW5kICsgMSB8fFxuICAgICAgKHByZXZpb3VzSW5kID09PSAwICYmIGN1cnJlbnRJbmQgPT09IGVsZW1lbnRzLmxlbmd0aCAtIDEpIHx8XG4gICAgICBwcmV2aW91c0luZCA+IGN1cnJlbnRJbmQgfHxcbiAgICAgICEoZXZlbnQgYXMgYW55KS5yZWxhdGVkVGFyZ2V0XG4gICAgKTtcbiAgfVxufVxuIl19