@skyux/core 11.31.0 → 12.0.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (141) hide show
  1. package/documentation.json +520 -516
  2. package/fesm2022/skyux-core-testing.mjs +26 -26
  3. package/fesm2022/skyux-core-testing.mjs.map +1 -1
  4. package/fesm2022/skyux-core.mjs +180 -174
  5. package/fesm2022/skyux-core.mjs.map +1 -1
  6. package/package.json +8 -12
  7. package/esm2022/index.mjs +0 -67
  8. package/esm2022/lib/modules/adapter-service/adapter.module.mjs +0 -16
  9. package/esm2022/lib/modules/adapter-service/adapter.service.mjs +0 -205
  10. package/esm2022/lib/modules/adapter-service/focusable-children-options.mjs +0 -2
  11. package/esm2022/lib/modules/affix/affix-auto-fit-context.mjs +0 -12
  12. package/esm2022/lib/modules/affix/affix-config.mjs +0 -2
  13. package/esm2022/lib/modules/affix/affix-horizontal-alignment.mjs +0 -2
  14. package/esm2022/lib/modules/affix/affix-offset-change.mjs +0 -2
  15. package/esm2022/lib/modules/affix/affix-offset.mjs +0 -2
  16. package/esm2022/lib/modules/affix/affix-placement-change.mjs +0 -2
  17. package/esm2022/lib/modules/affix/affix-placement.mjs +0 -2
  18. package/esm2022/lib/modules/affix/affix-position.mjs +0 -2
  19. package/esm2022/lib/modules/affix/affix-rect.mjs +0 -2
  20. package/esm2022/lib/modules/affix/affix-utils.mjs +0 -18
  21. package/esm2022/lib/modules/affix/affix-vertical-alignment.mjs +0 -2
  22. package/esm2022/lib/modules/affix/affix.directive.mjs +0 -116
  23. package/esm2022/lib/modules/affix/affix.module.mjs +0 -18
  24. package/esm2022/lib/modules/affix/affix.service.mjs +0 -48
  25. package/esm2022/lib/modules/affix/affixer.mjs +0 -426
  26. package/esm2022/lib/modules/affix/dom-utils.mjs +0 -126
  27. package/esm2022/lib/modules/breakpoint-observer/breakpoint-observer.mjs +0 -2
  28. package/esm2022/lib/modules/breakpoint-observer/breakpoint-observer.token.mjs +0 -7
  29. package/esm2022/lib/modules/breakpoint-observer/breakpoint-utils.mjs +0 -38
  30. package/esm2022/lib/modules/breakpoint-observer/breakpoint.mjs +0 -6
  31. package/esm2022/lib/modules/breakpoint-observer/container-breakpoint-observer.mjs +0 -64
  32. package/esm2022/lib/modules/breakpoint-observer/media-breakpoint-observer.mjs +0 -58
  33. package/esm2022/lib/modules/breakpoint-observer/provide-breakpoint-observer.mjs +0 -24
  34. package/esm2022/lib/modules/breakpoint-observer/responsive-host.directive.mjs +0 -55
  35. package/esm2022/lib/modules/content-info-provider/content-info-descriptor.mjs +0 -2
  36. package/esm2022/lib/modules/content-info-provider/content-info-provider.mjs +0 -24
  37. package/esm2022/lib/modules/content-info-provider/content-info.mjs +0 -2
  38. package/esm2022/lib/modules/default-input-provider/default-input-provider.mjs +0 -26
  39. package/esm2022/lib/modules/dock/dock-dom-adapter.service.mjs +0 -81
  40. package/esm2022/lib/modules/dock/dock-insert-component-config.mjs +0 -2
  41. package/esm2022/lib/modules/dock/dock-item-config.mjs +0 -2
  42. package/esm2022/lib/modules/dock/dock-item-reference.mjs +0 -2
  43. package/esm2022/lib/modules/dock/dock-item.mjs +0 -31
  44. package/esm2022/lib/modules/dock/dock-location.mjs +0 -19
  45. package/esm2022/lib/modules/dock/dock-options.mjs +0 -2
  46. package/esm2022/lib/modules/dock/dock.component.mjs +0 -101
  47. package/esm2022/lib/modules/dock/dock.module.mjs +0 -15
  48. package/esm2022/lib/modules/dock/dock.service.mjs +0 -95
  49. package/esm2022/lib/modules/dock/sort-by-stack-order.mjs +0 -13
  50. package/esm2022/lib/modules/dynamic-component/dynamic-component-location.mjs +0 -27
  51. package/esm2022/lib/modules/dynamic-component/dynamic-component-options.mjs +0 -2
  52. package/esm2022/lib/modules/dynamic-component/dynamic-component.module.mjs +0 -17
  53. package/esm2022/lib/modules/dynamic-component/dynamic-component.service.mjs +0 -113
  54. package/esm2022/lib/modules/file-reader/file-reader.service.mjs +0 -32
  55. package/esm2022/lib/modules/format/app-format.mjs +0 -18
  56. package/esm2022/lib/modules/help/help-global-options-token.mjs +0 -6
  57. package/esm2022/lib/modules/help/help-global-options.mjs +0 -2
  58. package/esm2022/lib/modules/help/help-open-args.mjs +0 -2
  59. package/esm2022/lib/modules/help/help-update-args.mjs +0 -2
  60. package/esm2022/lib/modules/help/help.service.mjs +0 -20
  61. package/esm2022/lib/modules/id/id.directive.mjs +0 -31
  62. package/esm2022/lib/modules/id/id.module.mjs +0 -16
  63. package/esm2022/lib/modules/id/id.service.mjs +0 -24
  64. package/esm2022/lib/modules/layout-host/layout-host-for-child-args.mjs +0 -2
  65. package/esm2022/lib/modules/layout-host/layout-host.service.mjs +0 -22
  66. package/esm2022/lib/modules/live-announcer/live-announcer.service.mjs +0 -81
  67. package/esm2022/lib/modules/live-announcer/types/live-announcer-args.mjs +0 -2
  68. package/esm2022/lib/modules/live-announcer/types/live-announcer-politeness.mjs +0 -2
  69. package/esm2022/lib/modules/log/log.module.mjs +0 -16
  70. package/esm2022/lib/modules/log/log.service.mjs +0 -148
  71. package/esm2022/lib/modules/log/types/log-deprecation-args.mjs +0 -2
  72. package/esm2022/lib/modules/log/types/log-level-token.mjs +0 -6
  73. package/esm2022/lib/modules/log/types/log-level.mjs +0 -10
  74. package/esm2022/lib/modules/media-query/media-breakpoints.mjs +0 -24
  75. package/esm2022/lib/modules/media-query/media-query-listener.mjs +0 -2
  76. package/esm2022/lib/modules/media-query/media-query.module.mjs +0 -16
  77. package/esm2022/lib/modules/media-query/media-query.service.mjs +0 -82
  78. package/esm2022/lib/modules/mutation/mutation-observer-service.mjs +0 -19
  79. package/esm2022/lib/modules/numeric/numeric-symbol.mjs +0 -2
  80. package/esm2022/lib/modules/numeric/numeric.module.mjs +0 -19
  81. package/esm2022/lib/modules/numeric/numeric.options.mjs +0 -24
  82. package/esm2022/lib/modules/numeric/numeric.pipe.mjs +0 -84
  83. package/esm2022/lib/modules/numeric/numeric.service.mjs +0 -200
  84. package/esm2022/lib/modules/overlay/overlay-adapter.service.mjs +0 -74
  85. package/esm2022/lib/modules/overlay/overlay-config.mjs +0 -2
  86. package/esm2022/lib/modules/overlay/overlay-context.mjs +0 -10
  87. package/esm2022/lib/modules/overlay/overlay-instance.mjs +0 -62
  88. package/esm2022/lib/modules/overlay/overlay-position.mjs +0 -2
  89. package/esm2022/lib/modules/overlay/overlay.component.mjs +0 -203
  90. package/esm2022/lib/modules/overlay/overlay.module.mjs +0 -15
  91. package/esm2022/lib/modules/overlay/overlay.service.mjs +0 -134
  92. package/esm2022/lib/modules/percent-pipe/percent-pipe.module.mjs +0 -19
  93. package/esm2022/lib/modules/percent-pipe/percent.pipe.mjs +0 -56
  94. package/esm2022/lib/modules/resize-observer/resize-observer-media-query.service.mjs +0 -153
  95. package/esm2022/lib/modules/resize-observer/resize-observer.service.mjs +0 -115
  96. package/esm2022/lib/modules/screen-reader-label/screen-reader-label.directive.mjs +0 -66
  97. package/esm2022/lib/modules/scroll-shadow/scroll-shadow-event-args.mjs +0 -2
  98. package/esm2022/lib/modules/scroll-shadow/scroll-shadow.directive.mjs +0 -123
  99. package/esm2022/lib/modules/scrollable-host/scrollable-host.service.mjs +0 -223
  100. package/esm2022/lib/modules/shared/number-format/number-format-utility.mjs +0 -72
  101. package/esm2022/lib/modules/shared/sky-core-resources.module.mjs +0 -34
  102. package/esm2022/lib/modules/stacking-context/stacking-context-token.mjs +0 -6
  103. package/esm2022/lib/modules/stacking-context/stacking-context.mjs +0 -2
  104. package/esm2022/lib/modules/title/set-title-args.mjs +0 -2
  105. package/esm2022/lib/modules/title/title.service.mjs +0 -31
  106. package/esm2022/lib/modules/trim/trim.directive.mjs +0 -64
  107. package/esm2022/lib/modules/trim/trim.module.mjs +0 -16
  108. package/esm2022/lib/modules/ui-config/ui-config.service.mjs +0 -21
  109. package/esm2022/lib/modules/viewkeeper/viewkeeper-boundary-info.mjs +0 -2
  110. package/esm2022/lib/modules/viewkeeper/viewkeeper-fixed-styles.mjs +0 -2
  111. package/esm2022/lib/modules/viewkeeper/viewkeeper-host-options.mjs +0 -10
  112. package/esm2022/lib/modules/viewkeeper/viewkeeper-offset.mjs +0 -2
  113. package/esm2022/lib/modules/viewkeeper/viewkeeper-options.mjs +0 -2
  114. package/esm2022/lib/modules/viewkeeper/viewkeeper.directive.mjs +0 -131
  115. package/esm2022/lib/modules/viewkeeper/viewkeeper.mjs +0 -296
  116. package/esm2022/lib/modules/viewkeeper/viewkeeper.module.mjs +0 -16
  117. package/esm2022/lib/modules/viewkeeper/viewkeeper.service.mjs +0 -39
  118. package/esm2022/lib/modules/window/window-ref.mjs +0 -30
  119. package/esm2022/skyux-core.mjs +0 -5
  120. package/esm2022/testing/legacy/core-testing.module.mjs +0 -32
  121. package/esm2022/testing/legacy/mock-media-query.service.mjs +0 -47
  122. package/esm2022/testing/legacy/mock-ui-config.service.mjs +0 -62
  123. package/esm2022/testing/legacy/resize-observer-mock.mjs +0 -50
  124. package/esm2022/testing/modules/file-reader/file-reader-testing.service.mjs +0 -19
  125. package/esm2022/testing/modules/file-reader/provide-file-reader-testing.mjs +0 -22
  126. package/esm2022/testing/modules/help/help-testing-controller.mjs +0 -28
  127. package/esm2022/testing/modules/help/help-testing.module.mjs +0 -32
  128. package/esm2022/testing/modules/help/help-testing.service.mjs +0 -37
  129. package/esm2022/testing/modules/media-query/breakpoint-observer-testing.mjs +0 -26
  130. package/esm2022/testing/modules/media-query/media-query-testing-controller.mjs +0 -22
  131. package/esm2022/testing/modules/media-query/provide-media-query-testing.mjs +0 -26
  132. package/esm2022/testing/modules/overlay/overlay-harness-filters.mjs +0 -2
  133. package/esm2022/testing/modules/overlay/overlay-harness.mjs +0 -20
  134. package/esm2022/testing/public-api.mjs +0 -15
  135. package/esm2022/testing/shared/component-harness.mjs +0 -13
  136. package/esm2022/testing/shared/harness-filters.mjs +0 -2
  137. package/esm2022/testing/shared/harness-utility.mjs +0 -7
  138. package/esm2022/testing/shared/input-harness.mjs +0 -63
  139. package/esm2022/testing/shared/queryable-component-harness.mjs +0 -43
  140. package/esm2022/testing/skyux-core-testing.mjs +0 -5
  141. package/esm2022/version.mjs +0 -19
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@skyux/core",
3
- "version": "11.31.0",
3
+ "version": "12.0.0-alpha.0",
4
4
  "author": "Blackbaud, Inc.",
5
5
  "keywords": [
6
6
  "blackbaud",
@@ -21,14 +21,10 @@
21
21
  },
22
22
  ".": {
23
23
  "types": "./index.d.ts",
24
- "esm2022": "./esm2022/skyux-core.mjs",
25
- "esm": "./esm2022/skyux-core.mjs",
26
24
  "default": "./fesm2022/skyux-core.mjs"
27
25
  },
28
26
  "./testing": {
29
27
  "types": "./testing/index.d.ts",
30
- "esm2022": "./esm2022/testing/skyux-core-testing.mjs",
31
- "esm": "./esm2022/testing/skyux-core-testing.mjs",
32
28
  "default": "./fesm2022/skyux-core-testing.mjs"
33
29
  },
34
30
  "./documentation.json": {
@@ -36,15 +32,15 @@
36
32
  }
37
33
  },
38
34
  "peerDependencies": {
39
- "@angular/cdk": "^18.2.14",
40
- "@angular/common": "^18.2.13",
41
- "@angular/core": "^18.2.13",
42
- "@angular/platform-browser": "^18.2.13",
43
- "@angular/router": "^18.2.13",
44
- "@skyux/i18n": "11.31.0"
35
+ "@angular/cdk": "^19.0.4",
36
+ "@angular/common": "^19.0.5",
37
+ "@angular/core": "^19.0.5",
38
+ "@angular/platform-browser": "^19.0.5",
39
+ "@angular/router": "^19.0.5",
40
+ "@skyux/i18n": "12.0.0-alpha.0"
45
41
  },
46
42
  "dependencies": {
47
- "tslib": "^2.6.3"
43
+ "tslib": "^2.8.1"
48
44
  },
49
45
  "module": "fesm2022/skyux-core.mjs",
50
46
  "typings": "index.d.ts",
package/esm2022/index.mjs DELETED
@@ -1,67 +0,0 @@
1
- export { SkyCoreAdapterModule } from './lib/modules/adapter-service/adapter.module';
2
- export { SkyCoreAdapterService } from './lib/modules/adapter-service/adapter.service';
3
- export { SkyAffixAutoFitContext } from './lib/modules/affix/affix-auto-fit-context';
4
- export { SkyAffixModule } from './lib/modules/affix/affix.module';
5
- export { SkyAffixService } from './lib/modules/affix/affix.service';
6
- export { SkyAffixer } from './lib/modules/affix/affixer';
7
- export { SkyContentInfoProvider } from './lib/modules/content-info-provider/content-info-provider';
8
- export { SkyDefaultInputProvider } from './lib/modules/default-input-provider/default-input-provider';
9
- export { SkyDockItem } from './lib/modules/dock/dock-item';
10
- export { SkyDockLocation } from './lib/modules/dock/dock-location';
11
- export { SkyDockModule } from './lib/modules/dock/dock.module';
12
- export { SkyDockService } from './lib/modules/dock/dock.service';
13
- export { SkyDynamicComponentLocation } from './lib/modules/dynamic-component/dynamic-component-location';
14
- export { SkyDynamicComponentModule } from './lib/modules/dynamic-component/dynamic-component.module';
15
- export { SkyDynamicComponentLegacyService, SkyDynamicComponentService, } from './lib/modules/dynamic-component/dynamic-component.service';
16
- export { SkyFileReaderService } from './lib/modules/file-reader/file-reader.service';
17
- export { SkyAppFormat } from './lib/modules/format/app-format';
18
- export { SKY_HELP_GLOBAL_OPTIONS } from './lib/modules/help/help-global-options-token';
19
- export { SkyHelpService } from './lib/modules/help/help.service';
20
- export { SkyIdModule } from './lib/modules/id/id.module';
21
- export { SkyIdService } from './lib/modules/id/id.service';
22
- export { SkyLayoutHostService } from './lib/modules/layout-host/layout-host.service';
23
- export { SkyLiveAnnouncerService } from './lib/modules/live-announcer/live-announcer.service';
24
- export { SkyLogModule } from './lib/modules/log/log.module';
25
- export { SkyLogService } from './lib/modules/log/log.service';
26
- export { SkyLogLevel } from './lib/modules/log/types/log-level';
27
- export { SKY_LOG_LEVEL } from './lib/modules/log/types/log-level-token';
28
- export { SKY_BREAKPOINTS } from './lib/modules/breakpoint-observer/breakpoint';
29
- export { SKY_BREAKPOINT_OBSERVER } from './lib/modules/breakpoint-observer/breakpoint-observer.token';
30
- export { SkyContainerBreakpointObserver } from './lib/modules/breakpoint-observer/container-breakpoint-observer';
31
- export { SkyMediaBreakpointObserver } from './lib/modules/breakpoint-observer/media-breakpoint-observer';
32
- export { provideSkyBreakpointObserver } from './lib/modules/breakpoint-observer/provide-breakpoint-observer';
33
- export { SkyResponsiveHostDirective } from './lib/modules/breakpoint-observer/responsive-host.directive';
34
- export { SkyMediaBreakpoints } from './lib/modules/media-query/media-breakpoints';
35
- export { SkyMediaQueryModule } from './lib/modules/media-query/media-query.module';
36
- export { SkyMediaQueryService } from './lib/modules/media-query/media-query.service';
37
- export { SkyMutationObserverService } from './lib/modules/mutation/mutation-observer-service';
38
- export { SkyNumericModule } from './lib/modules/numeric/numeric.module';
39
- export { NumericOptions, } from './lib/modules/numeric/numeric.options';
40
- export { SkyNumericPipe } from './lib/modules/numeric/numeric.pipe';
41
- export { SkyNumericService } from './lib/modules/numeric/numeric.service';
42
- export { SkyOverlayInstance } from './lib/modules/overlay/overlay-instance';
43
- export { SkyOverlayModule } from './lib/modules/overlay/overlay.module';
44
- export { SkyOverlayLegacyService, SkyOverlayService, } from './lib/modules/overlay/overlay.service';
45
- export { SkyPercentPipeModule } from './lib/modules/percent-pipe/percent-pipe.module';
46
- export { SkyPercentPipe } from './lib/modules/percent-pipe/percent.pipe';
47
- export { SkyResizeObserverMediaQueryService } from './lib/modules/resize-observer/resize-observer-media-query.service';
48
- export { SkyResizeObserverService } from './lib/modules/resize-observer/resize-observer.service';
49
- export { SkyScreenReaderLabelDirective } from './lib/modules/screen-reader-label/screen-reader-label.directive';
50
- export { SkyScrollShadowDirective } from './lib/modules/scroll-shadow/scroll-shadow.directive';
51
- export { SkyScrollableHostService } from './lib/modules/scrollable-host/scrollable-host.service';
52
- export { SKY_STACKING_CONTEXT } from './lib/modules/stacking-context/stacking-context-token';
53
- export { SkyAppTitleService } from './lib/modules/title/title.service';
54
- export { SkyTrimModule } from './lib/modules/trim/trim.module';
55
- export { SkyUIConfigService } from './lib/modules/ui-config/ui-config.service';
56
- export { SkyViewkeeperHostOptions } from './lib/modules/viewkeeper/viewkeeper-host-options';
57
- export { SkyViewkeeperModule } from './lib/modules/viewkeeper/viewkeeper.module';
58
- export { SkyViewkeeperService } from './lib/modules/viewkeeper/viewkeeper.service';
59
- export { SkyAppWindowRef } from './lib/modules/window/window-ref';
60
- export { VERSION } from './version';
61
- // Components and directives must be exported to support Angular's "partial" Ivy compiler.
62
- // Obscure names are used to indicate types are not part of the public API.
63
- export { SkyAffixDirective as λ1 } from './lib/modules/affix/affix.directive';
64
- export { SkyIdDirective as λ2 } from './lib/modules/id/id.directive';
65
- export { SkyTrimDirective as λ4 } from './lib/modules/trim/trim.directive';
66
- export { SkyViewkeeperDirective as λ3 } from './lib/modules/viewkeeper/viewkeeper.directive';
67
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvY29yZS9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDcEYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFHdEYsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFTcEYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNwRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFJekQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sMkRBQTJELENBQUM7QUFFbkcsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sNkRBQTZELENBQUM7QUFHdEcsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRTNELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUVuRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDL0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRWpFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDREQUE0RCxDQUFDO0FBRXpHLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDBEQUEwRCxDQUFDO0FBQ3JHLE9BQU8sRUFDTCxnQ0FBZ0MsRUFDaEMsMEJBQTBCLEdBQzNCLE1BQU0sMkRBQTJELENBQUM7QUFFbkUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFFckYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRy9E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LG9CQUFvQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFFbkYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRWxFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFcEMsMEZBQTBGO0FBQzFGLDJFQUEyRTtBQUMzRSxPQUFPLEVBQUUsaUJBQWlCLElBQUksRUFBRSxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDOUUsT0FBTyxFQUFFLGNBQWMsSUFBSSxFQUFFLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNyRSxPQUFPLEVBQUUsZ0JBQWdCLElBQUksRUFBRSxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDM0UsT0FBTyxFQUFFLHNCQUFzQixJQUFJLEVBQUUsRUFBRSxNQUFNLCtDQUErQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgU2t5Q29yZUFkYXB0ZXJNb2R1bGUgfSBmcm9tICcuL2xpYi9tb2R1bGVzL2FkYXB0ZXItc2VydmljZS9hZGFwdGVyLm1vZHVsZSc7XG5leHBvcnQgeyBTa3lDb3JlQWRhcHRlclNlcnZpY2UgfSBmcm9tICcuL2xpYi9tb2R1bGVzL2FkYXB0ZXItc2VydmljZS9hZGFwdGVyLnNlcnZpY2UnO1xuZXhwb3J0IHsgU2t5Rm9jdXNhYmxlQ2hpbGRyZW5PcHRpb25zIH0gZnJvbSAnLi9saWIvbW9kdWxlcy9hZGFwdGVyLXNlcnZpY2UvZm9jdXNhYmxlLWNoaWxkcmVuLW9wdGlvbnMnO1xuXG5leHBvcnQgeyBTa3lBZmZpeEF1dG9GaXRDb250ZXh0IH0gZnJvbSAnLi9saWIvbW9kdWxlcy9hZmZpeC9hZmZpeC1hdXRvLWZpdC1jb250ZXh0JztcbmV4cG9ydCB7IFNreUFmZml4Q29uZmlnIH0gZnJvbSAnLi9saWIvbW9kdWxlcy9hZmZpeC9hZmZpeC1jb25maWcnO1xuZXhwb3J0IHsgU2t5QWZmaXhIb3Jpem9udGFsQWxpZ25tZW50IH0gZnJvbSAnLi9saWIvbW9kdWxlcy9hZmZpeC9hZmZpeC1ob3Jpem9udGFsLWFsaWdubWVudCc7XG5leHBvcnQgeyBTa3lBZmZpeE9mZnNldCB9IGZyb20gJy4vbGliL21vZHVsZXMvYWZmaXgvYWZmaXgtb2Zmc2V0JztcbmV4cG9ydCB7IFNreUFmZml4T2Zmc2V0Q2hhbmdlIH0gZnJvbSAnLi9saWIvbW9kdWxlcy9hZmZpeC9hZmZpeC1vZmZzZXQtY2hhbmdlJztcbmV4cG9ydCB7IFNreUFmZml4UGxhY2VtZW50IH0gZnJvbSAnLi9saWIvbW9kdWxlcy9hZmZpeC9hZmZpeC1wbGFjZW1lbnQnO1xuZXhwb3J0IHsgU2t5QWZmaXhQbGFjZW1lbnRDaGFuZ2UgfSBmcm9tICcuL2xpYi9tb2R1bGVzL2FmZml4L2FmZml4LXBsYWNlbWVudC1jaGFuZ2UnO1xuZXhwb3J0IHsgU2t5QWZmaXhQb3NpdGlvbiB9IGZyb20gJy4vbGliL21vZHVsZXMvYWZmaXgvYWZmaXgtcG9zaXRpb24nO1xuZXhwb3J0IHsgU2t5QWZmaXhWZXJ0aWNhbEFsaWdubWVudCB9IGZyb20gJy4vbGliL21vZHVsZXMvYWZmaXgvYWZmaXgtdmVydGljYWwtYWxpZ25tZW50JztcbmV4cG9ydCB7IFNreUFmZml4TW9kdWxlIH0gZnJvbSAnLi9saWIvbW9kdWxlcy9hZmZpeC9hZmZpeC5tb2R1bGUnO1xuZXhwb3J0IHsgU2t5QWZmaXhTZXJ2aWNlIH0gZnJvbSAnLi9saWIvbW9kdWxlcy9hZmZpeC9hZmZpeC5zZXJ2aWNlJztcbmV4cG9ydCB7IFNreUFmZml4ZXIgfSBmcm9tICcuL2xpYi9tb2R1bGVzL2FmZml4L2FmZml4ZXInO1xuXG5leHBvcnQgeyBTa3lDb250ZW50SW5mbyB9IGZyb20gJy4vbGliL21vZHVsZXMvY29udGVudC1pbmZvLXByb3ZpZGVyL2NvbnRlbnQtaW5mbyc7XG5leHBvcnQgeyBTa3lDb250ZW50SW5mb0Rlc2NyaXB0b3IgfSBmcm9tICcuL2xpYi9tb2R1bGVzL2NvbnRlbnQtaW5mby1wcm92aWRlci9jb250ZW50LWluZm8tZGVzY3JpcHRvcic7XG5leHBvcnQgeyBTa3lDb250ZW50SW5mb1Byb3ZpZGVyIH0gZnJvbSAnLi9saWIvbW9kdWxlcy9jb250ZW50LWluZm8tcHJvdmlkZXIvY29udGVudC1pbmZvLXByb3ZpZGVyJztcblxuZXhwb3J0IHsgU2t5RGVmYXVsdElucHV0UHJvdmlkZXIgfSBmcm9tICcuL2xpYi9tb2R1bGVzL2RlZmF1bHQtaW5wdXQtcHJvdmlkZXIvZGVmYXVsdC1pbnB1dC1wcm92aWRlcic7XG5cbmV4cG9ydCB7IFNreURvY2tJbnNlcnRDb21wb25lbnRDb25maWcgfSBmcm9tICcuL2xpYi9tb2R1bGVzL2RvY2svZG9jay1pbnNlcnQtY29tcG9uZW50LWNvbmZpZyc7XG5leHBvcnQgeyBTa3lEb2NrSXRlbSB9IGZyb20gJy4vbGliL21vZHVsZXMvZG9jay9kb2NrLWl0ZW0nO1xuZXhwb3J0IHsgU2t5RG9ja0l0ZW1Db25maWcgfSBmcm9tICcuL2xpYi9tb2R1bGVzL2RvY2svZG9jay1pdGVtLWNvbmZpZyc7XG5leHBvcnQgeyBTa3lEb2NrTG9jYXRpb24gfSBmcm9tICcuL2xpYi9tb2R1bGVzL2RvY2svZG9jay1sb2NhdGlvbic7XG5leHBvcnQgeyBTa3lEb2NrT3B0aW9ucyB9IGZyb20gJy4vbGliL21vZHVsZXMvZG9jay9kb2NrLW9wdGlvbnMnO1xuZXhwb3J0IHsgU2t5RG9ja01vZHVsZSB9IGZyb20gJy4vbGliL21vZHVsZXMvZG9jay9kb2NrLm1vZHVsZSc7XG5leHBvcnQgeyBTa3lEb2NrU2VydmljZSB9IGZyb20gJy4vbGliL21vZHVsZXMvZG9jay9kb2NrLnNlcnZpY2UnO1xuXG5leHBvcnQgeyBTa3lEeW5hbWljQ29tcG9uZW50TG9jYXRpb24gfSBmcm9tICcuL2xpYi9tb2R1bGVzL2R5bmFtaWMtY29tcG9uZW50L2R5bmFtaWMtY29tcG9uZW50LWxvY2F0aW9uJztcbmV4cG9ydCB7IFNreUR5bmFtaWNDb21wb25lbnRPcHRpb25zIH0gZnJvbSAnLi9saWIvbW9kdWxlcy9keW5hbWljLWNvbXBvbmVudC9keW5hbWljLWNvbXBvbmVudC1vcHRpb25zJztcbmV4cG9ydCB7IFNreUR5bmFtaWNDb21wb25lbnRNb2R1bGUgfSBmcm9tICcuL2xpYi9tb2R1bGVzL2R5bmFtaWMtY29tcG9uZW50L2R5bmFtaWMtY29tcG9uZW50Lm1vZHVsZSc7XG5leHBvcnQge1xuICBTa3lEeW5hbWljQ29tcG9uZW50TGVnYWN5U2VydmljZSxcbiAgU2t5RHluYW1pY0NvbXBvbmVudFNlcnZpY2UsXG59IGZyb20gJy4vbGliL21vZHVsZXMvZHluYW1pYy1jb21wb25lbnQvZHluYW1pYy1jb21wb25lbnQuc2VydmljZSc7XG5cbmV4cG9ydCB7IFNreUZpbGVSZWFkZXJTZXJ2aWNlIH0gZnJvbSAnLi9saWIvbW9kdWxlcy9maWxlLXJlYWRlci9maWxlLXJlYWRlci5zZXJ2aWNlJztcblxuZXhwb3J0IHsgU2t5QXBwRm9ybWF0IH0gZnJvbSAnLi9saWIvbW9kdWxlcy9mb3JtYXQvYXBwLWZvcm1hdCc7XG5cbmV4cG9ydCB7IFNreUhlbHBHbG9iYWxPcHRpb25zIH0gZnJvbSAnLi9saWIvbW9kdWxlcy9oZWxwL2hlbHAtZ2xvYmFsLW9wdGlvbnMnO1xuZXhwb3J0IHsgU0tZX0hFTFBfR0xPQkFMX09QVElPTlMgfSBmcm9tICcuL2xpYi9tb2R1bGVzL2hlbHAvaGVscC1nbG9iYWwtb3B0aW9ucy10b2tlbic7XG5leHBvcnQgeyBTa3lIZWxwT3BlbkFyZ3MgfSBmcm9tICcuL2xpYi9tb2R1bGVzL2hlbHAvaGVscC1vcGVuLWFyZ3MnO1xuZXhwb3J0IHsgU2t5SGVscFVwZGF0ZUFyZ3MgfSBmcm9tICcuL2xpYi9tb2R1bGVzL2hlbHAvaGVscC11cGRhdGUtYXJncyc7XG5leHBvcnQgeyBTa3lIZWxwU2VydmljZSB9IGZyb20gJy4vbGliL21vZHVsZXMvaGVscC9oZWxwLnNlcnZpY2UnO1xuXG5leHBvcnQgeyBTa3lJZE1vZHVsZSB9IGZyb20gJy4vbGliL21vZHVsZXMvaWQvaWQubW9kdWxlJztcbmV4cG9ydCB7IFNreUlkU2VydmljZSB9IGZyb20gJy4vbGliL21vZHVsZXMvaWQvaWQuc2VydmljZSc7XG5cbmV4cG9ydCB7IFNreUxheW91dEhvc3RGb3JDaGlsZEFyZ3MgfSBmcm9tICcuL2xpYi9tb2R1bGVzL2xheW91dC1ob3N0L2xheW91dC1ob3N0LWZvci1jaGlsZC1hcmdzJztcbmV4cG9ydCB7IFNreUxheW91dEhvc3RTZXJ2aWNlIH0gZnJvbSAnLi9saWIvbW9kdWxlcy9sYXlvdXQtaG9zdC9sYXlvdXQtaG9zdC5zZXJ2aWNlJztcblxuZXhwb3J0IHsgU2t5TGl2ZUFubm91bmNlclNlcnZpY2UgfSBmcm9tICcuL2xpYi9tb2R1bGVzL2xpdmUtYW5ub3VuY2VyL2xpdmUtYW5ub3VuY2VyLnNlcnZpY2UnO1xuZXhwb3J0IHsgU2t5TGl2ZUFubm91bmNlckFyZ3MgfSBmcm9tICcuL2xpYi9tb2R1bGVzL2xpdmUtYW5ub3VuY2VyL3R5cGVzL2xpdmUtYW5ub3VuY2VyLWFyZ3MnO1xuZXhwb3J0IHsgU2t5TGl2ZUFubm91bmNlclBvbGl0ZW5lc3MgfSBmcm9tICcuL2xpYi9tb2R1bGVzL2xpdmUtYW5ub3VuY2VyL3R5cGVzL2xpdmUtYW5ub3VuY2VyLXBvbGl0ZW5lc3MnO1xuXG5leHBvcnQgeyBTa3lMb2dNb2R1bGUgfSBmcm9tICcuL2xpYi9tb2R1bGVzL2xvZy9sb2cubW9kdWxlJztcbmV4cG9ydCB7IFNreUxvZ1NlcnZpY2UgfSBmcm9tICcuL2xpYi9tb2R1bGVzL2xvZy9sb2cuc2VydmljZSc7XG5leHBvcnQgeyBTa3lMb2dMZXZlbCB9IGZyb20gJy4vbGliL21vZHVsZXMvbG9nL3R5cGVzL2xvZy1sZXZlbCc7XG5leHBvcnQgeyBTS1lfTE9HX0xFVkVMIH0gZnJvbSAnLi9saWIvbW9kdWxlcy9sb2cvdHlwZXMvbG9nLWxldmVsLXRva2VuJztcblxuZXhwb3J0IHsgU0tZX0JSRUFLUE9JTlRTIH0gZnJvbSAnLi9saWIvbW9kdWxlcy9icmVha3BvaW50LW9ic2VydmVyL2JyZWFrcG9pbnQnO1xuZXhwb3J0IHsgU2t5QnJlYWtwb2ludCB9IGZyb20gJy4vbGliL21vZHVsZXMvYnJlYWtwb2ludC1vYnNlcnZlci9icmVha3BvaW50JztcbmV4cG9ydCB7IFNreUJyZWFrcG9pbnRPYnNlcnZlciB9IGZyb20gJy4vbGliL21vZHVsZXMvYnJlYWtwb2ludC1vYnNlcnZlci9icmVha3BvaW50LW9ic2VydmVyJztcbmV4cG9ydCB7IFNLWV9CUkVBS1BPSU5UX09CU0VSVkVSIH0gZnJvbSAnLi9saWIvbW9kdWxlcy9icmVha3BvaW50LW9ic2VydmVyL2JyZWFrcG9pbnQtb2JzZXJ2ZXIudG9rZW4nO1xuZXhwb3J0IHsgU2t5Q29udGFpbmVyQnJlYWtwb2ludE9ic2VydmVyIH0gZnJvbSAnLi9saWIvbW9kdWxlcy9icmVha3BvaW50LW9ic2VydmVyL2NvbnRhaW5lci1icmVha3BvaW50LW9ic2VydmVyJztcbmV4cG9ydCB7IFNreU1lZGlhQnJlYWtwb2ludE9ic2VydmVyIH0gZnJvbSAnLi9saWIvbW9kdWxlcy9icmVha3BvaW50LW9ic2VydmVyL21lZGlhLWJyZWFrcG9pbnQtb2JzZXJ2ZXInO1xuZXhwb3J0IHsgcHJvdmlkZVNreUJyZWFrcG9pbnRPYnNlcnZlciB9IGZyb20gJy4vbGliL21vZHVsZXMvYnJlYWtwb2ludC1vYnNlcnZlci9wcm92aWRlLWJyZWFrcG9pbnQtb2JzZXJ2ZXInO1xuZXhwb3J0IHsgU2t5UmVzcG9uc2l2ZUhvc3REaXJlY3RpdmUgfSBmcm9tICcuL2xpYi9tb2R1bGVzL2JyZWFrcG9pbnQtb2JzZXJ2ZXIvcmVzcG9uc2l2ZS1ob3N0LmRpcmVjdGl2ZSc7XG5leHBvcnQgeyBTa3lNZWRpYUJyZWFrcG9pbnRzIH0gZnJvbSAnLi9saWIvbW9kdWxlcy9tZWRpYS1xdWVyeS9tZWRpYS1icmVha3BvaW50cyc7XG5leHBvcnQgeyBTa3lNZWRpYVF1ZXJ5TGlzdGVuZXIgfSBmcm9tICcuL2xpYi9tb2R1bGVzL21lZGlhLXF1ZXJ5L21lZGlhLXF1ZXJ5LWxpc3RlbmVyJztcbmV4cG9ydCB7IFNreU1lZGlhUXVlcnlNb2R1bGUgfSBmcm9tICcuL2xpYi9tb2R1bGVzL21lZGlhLXF1ZXJ5L21lZGlhLXF1ZXJ5Lm1vZHVsZSc7XG5leHBvcnQgeyBTa3lNZWRpYVF1ZXJ5U2VydmljZSB9IGZyb20gJy4vbGliL21vZHVsZXMvbWVkaWEtcXVlcnkvbWVkaWEtcXVlcnkuc2VydmljZSc7XG5cbmV4cG9ydCB7IFNreU11dGF0aW9uT2JzZXJ2ZXJTZXJ2aWNlIH0gZnJvbSAnLi9saWIvbW9kdWxlcy9tdXRhdGlvbi9tdXRhdGlvbi1vYnNlcnZlci1zZXJ2aWNlJztcblxuZXhwb3J0IHsgU2t5TnVtZXJpY1N5bWJvbCB9IGZyb20gJy4vbGliL21vZHVsZXMvbnVtZXJpYy9udW1lcmljLXN5bWJvbCc7XG5leHBvcnQgeyBTa3lOdW1lcmljTW9kdWxlIH0gZnJvbSAnLi9saWIvbW9kdWxlcy9udW1lcmljL251bWVyaWMubW9kdWxlJztcbmV4cG9ydCB7XG4gIE51bWVyaWNPcHRpb25zLFxuICBTa3lOdW1lcmljT3B0aW9ucyxcbn0gZnJvbSAnLi9saWIvbW9kdWxlcy9udW1lcmljL251bWVyaWMub3B0aW9ucyc7XG5leHBvcnQgeyBTa3lOdW1lcmljUGlwZSB9IGZyb20gJy4vbGliL21vZHVsZXMvbnVtZXJpYy9udW1lcmljLnBpcGUnO1xuZXhwb3J0IHsgU2t5TnVtZXJpY1NlcnZpY2UgfSBmcm9tICcuL2xpYi9tb2R1bGVzL251bWVyaWMvbnVtZXJpYy5zZXJ2aWNlJztcblxuZXhwb3J0IHsgU2t5T3ZlcmxheUNvbmZpZyB9IGZyb20gJy4vbGliL21vZHVsZXMvb3ZlcmxheS9vdmVybGF5LWNvbmZpZyc7XG5leHBvcnQgeyBTa3lPdmVybGF5SW5zdGFuY2UgfSBmcm9tICcuL2xpYi9tb2R1bGVzL292ZXJsYXkvb3ZlcmxheS1pbnN0YW5jZSc7XG5leHBvcnQgeyBTa3lPdmVybGF5UG9zaXRpb24gfSBmcm9tICcuL2xpYi9tb2R1bGVzL292ZXJsYXkvb3ZlcmxheS1wb3NpdGlvbic7XG5leHBvcnQgeyBTa3lPdmVybGF5TW9kdWxlIH0gZnJvbSAnLi9saWIvbW9kdWxlcy9vdmVybGF5L292ZXJsYXkubW9kdWxlJztcbmV4cG9ydCB7XG4gIFNreU92ZXJsYXlMZWdhY3lTZXJ2aWNlLFxuICBTa3lPdmVybGF5U2VydmljZSxcbn0gZnJvbSAnLi9saWIvbW9kdWxlcy9vdmVybGF5L292ZXJsYXkuc2VydmljZSc7XG5cbmV4cG9ydCB7IFNreVBlcmNlbnRQaXBlTW9kdWxlIH0gZnJvbSAnLi9saWIvbW9kdWxlcy9wZXJjZW50LXBpcGUvcGVyY2VudC1waXBlLm1vZHVsZSc7XG5leHBvcnQgeyBTa3lQZXJjZW50UGlwZSB9IGZyb20gJy4vbGliL21vZHVsZXMvcGVyY2VudC1waXBlL3BlcmNlbnQucGlwZSc7XG5cbmV4cG9ydCB7IFNreVJlc2l6ZU9ic2VydmVyTWVkaWFRdWVyeVNlcnZpY2UgfSBmcm9tICcuL2xpYi9tb2R1bGVzL3Jlc2l6ZS1vYnNlcnZlci9yZXNpemUtb2JzZXJ2ZXItbWVkaWEtcXVlcnkuc2VydmljZSc7XG5leHBvcnQgeyBTa3lSZXNpemVPYnNlcnZlclNlcnZpY2UgfSBmcm9tICcuL2xpYi9tb2R1bGVzL3Jlc2l6ZS1vYnNlcnZlci9yZXNpemUtb2JzZXJ2ZXIuc2VydmljZSc7XG5cbmV4cG9ydCB7IFNreVNjcmVlblJlYWRlckxhYmVsRGlyZWN0aXZlIH0gZnJvbSAnLi9saWIvbW9kdWxlcy9zY3JlZW4tcmVhZGVyLWxhYmVsL3NjcmVlbi1yZWFkZXItbGFiZWwuZGlyZWN0aXZlJztcblxuZXhwb3J0IHsgU2t5U2Nyb2xsU2hhZG93RXZlbnRBcmdzIH0gZnJvbSAnLi9saWIvbW9kdWxlcy9zY3JvbGwtc2hhZG93L3Njcm9sbC1zaGFkb3ctZXZlbnQtYXJncyc7XG5leHBvcnQgeyBTa3lTY3JvbGxTaGFkb3dEaXJlY3RpdmUgfSBmcm9tICcuL2xpYi9tb2R1bGVzL3Njcm9sbC1zaGFkb3cvc2Nyb2xsLXNoYWRvdy5kaXJlY3RpdmUnO1xuXG5leHBvcnQgeyBTa3lTY3JvbGxhYmxlSG9zdFNlcnZpY2UgfSBmcm9tICcuL2xpYi9tb2R1bGVzL3Njcm9sbGFibGUtaG9zdC9zY3JvbGxhYmxlLWhvc3Quc2VydmljZSc7XG5cbmV4cG9ydCB7IFNreVN0YWNraW5nQ29udGV4dCB9IGZyb20gJy4vbGliL21vZHVsZXMvc3RhY2tpbmctY29udGV4dC9zdGFja2luZy1jb250ZXh0JztcbmV4cG9ydCB7IFNLWV9TVEFDS0lOR19DT05URVhUIH0gZnJvbSAnLi9saWIvbW9kdWxlcy9zdGFja2luZy1jb250ZXh0L3N0YWNraW5nLWNvbnRleHQtdG9rZW4nO1xuXG5leHBvcnQgeyBTa3lBcHBTZXRUaXRsZUFyZ3MgfSBmcm9tICcuL2xpYi9tb2R1bGVzL3RpdGxlL3NldC10aXRsZS1hcmdzJztcbmV4cG9ydCB7IFNreUFwcFRpdGxlU2VydmljZSB9IGZyb20gJy4vbGliL21vZHVsZXMvdGl0bGUvdGl0bGUuc2VydmljZSc7XG5cbmV4cG9ydCB7IFNreVRyaW1Nb2R1bGUgfSBmcm9tICcuL2xpYi9tb2R1bGVzL3RyaW0vdHJpbS5tb2R1bGUnO1xuXG5leHBvcnQgeyBTa3lVSUNvbmZpZ1NlcnZpY2UgfSBmcm9tICcuL2xpYi9tb2R1bGVzL3VpLWNvbmZpZy91aS1jb25maWcuc2VydmljZSc7XG5cbmV4cG9ydCB7IFNreVZpZXdrZWVwZXJIb3N0T3B0aW9ucyB9IGZyb20gJy4vbGliL21vZHVsZXMvdmlld2tlZXBlci92aWV3a2VlcGVyLWhvc3Qtb3B0aW9ucyc7XG5leHBvcnQgeyBTa3lWaWV3a2VlcGVyT3B0aW9ucyB9IGZyb20gJy4vbGliL21vZHVsZXMvdmlld2tlZXBlci92aWV3a2VlcGVyLW9wdGlvbnMnO1xuZXhwb3J0IHsgU2t5Vmlld2tlZXBlck1vZHVsZSB9IGZyb20gJy4vbGliL21vZHVsZXMvdmlld2tlZXBlci92aWV3a2VlcGVyLm1vZHVsZSc7XG5leHBvcnQgeyBTa3lWaWV3a2VlcGVyU2VydmljZSB9IGZyb20gJy4vbGliL21vZHVsZXMvdmlld2tlZXBlci92aWV3a2VlcGVyLnNlcnZpY2UnO1xuXG5leHBvcnQgeyBTa3lBcHBXaW5kb3dSZWYgfSBmcm9tICcuL2xpYi9tb2R1bGVzL3dpbmRvdy93aW5kb3ctcmVmJztcblxuZXhwb3J0IHsgVkVSU0lPTiB9IGZyb20gJy4vdmVyc2lvbic7XG5cbi8vIENvbXBvbmVudHMgYW5kIGRpcmVjdGl2ZXMgbXVzdCBiZSBleHBvcnRlZCB0byBzdXBwb3J0IEFuZ3VsYXIncyBcInBhcnRpYWxcIiBJdnkgY29tcGlsZXIuXG4vLyBPYnNjdXJlIG5hbWVzIGFyZSB1c2VkIHRvIGluZGljYXRlIHR5cGVzIGFyZSBub3QgcGFydCBvZiB0aGUgcHVibGljIEFQSS5cbmV4cG9ydCB7IFNreUFmZml4RGlyZWN0aXZlIGFzIM67MSB9IGZyb20gJy4vbGliL21vZHVsZXMvYWZmaXgvYWZmaXguZGlyZWN0aXZlJztcbmV4cG9ydCB7IFNreUlkRGlyZWN0aXZlIGFzIM67MiB9IGZyb20gJy4vbGliL21vZHVsZXMvaWQvaWQuZGlyZWN0aXZlJztcbmV4cG9ydCB7IFNreVRyaW1EaXJlY3RpdmUgYXMgzrs0IH0gZnJvbSAnLi9saWIvbW9kdWxlcy90cmltL3RyaW0uZGlyZWN0aXZlJztcbmV4cG9ydCB7IFNreVZpZXdrZWVwZXJEaXJlY3RpdmUgYXMgzrszIH0gZnJvbSAnLi9saWIvbW9kdWxlcy92aWV3a2VlcGVyL3ZpZXdrZWVwZXIuZGlyZWN0aXZlJztcbiJdfQ==
@@ -1,16 +0,0 @@
1
- import { NgModule } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- /**
4
- * @deprecated The `SkyCoreAdapterService` no longer needs the `SkyCoreAdapterModule`.
5
- * The `SkyCoreAdapterModule` can be removed from your project.
6
- */
7
- export class SkyCoreAdapterModule {
8
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyCoreAdapterModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
9
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: SkyCoreAdapterModule }); }
10
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyCoreAdapterModule }); }
11
- }
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyCoreAdapterModule, decorators: [{
13
- type: NgModule,
14
- args: [{}]
15
- }] });
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRhcHRlci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvY29yZS9zcmMvbGliL21vZHVsZXMvYWRhcHRlci1zZXJ2aWNlL2FkYXB0ZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRXpDOzs7R0FHRztBQUVILE1BQU0sT0FBTyxvQkFBb0I7K0dBQXBCLG9CQUFvQjtnSEFBcEIsb0JBQW9CO2dIQUFwQixvQkFBb0I7OzRGQUFwQixvQkFBb0I7a0JBRGhDLFFBQVE7bUJBQUMsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8qKlxuICogQGRlcHJlY2F0ZWQgVGhlIGBTa3lDb3JlQWRhcHRlclNlcnZpY2VgIG5vIGxvbmdlciBuZWVkcyB0aGUgYFNreUNvcmVBZGFwdGVyTW9kdWxlYC5cbiAqIFRoZSBgU2t5Q29yZUFkYXB0ZXJNb2R1bGVgIGNhbiBiZSByZW1vdmVkIGZyb20geW91ciBwcm9qZWN0LlxuICovXG5ATmdNb2R1bGUoe30pXG5leHBvcnQgY2xhc3MgU2t5Q29yZUFkYXB0ZXJNb2R1bGUge31cbiJdfQ==
@@ -1,205 +0,0 @@
1
- import { Injectable, } from '@angular/core';
2
- import { SKY_BREAKPOINTS, } from '../breakpoint-observer/breakpoint';
3
- import { isSkyBreakpoint, toSkyBreakpoint, } from '../breakpoint-observer/breakpoint-utils';
4
- import * as i0 from "@angular/core";
5
- const SKY_TABBABLE_SELECTOR = [
6
- 'a[href]',
7
- 'area[href]',
8
- 'input:not([disabled])',
9
- 'button:not([disabled])',
10
- 'select:not([disabled])',
11
- 'textarea:not([disabled])',
12
- 'iframe',
13
- 'object',
14
- 'embed',
15
- '*[contenteditable=true]:not([disabled])',
16
- '*[tabindex]:not([disabled])',
17
- ].join(', ');
18
- export class SkyCoreAdapterService {
19
- #renderer;
20
- constructor(rendererFactory) {
21
- this.#renderer = rendererFactory.createRenderer(undefined, null);
22
- }
23
- /**
24
- * Set the responsive container CSS class for a given element.
25
- *
26
- * @param elementRef - The element that will receive the new CSS class.
27
- * @param breakpoint - The breakpoint to determine which class gets set.
28
- * For example a breakpoint of "xs" will set a CSS class of "sky-responsive-container-xs".
29
- * @deprecated Use the `SkyResponsiveHostDirective` instead.
30
- */
31
- setResponsiveContainerClass(elementRef, breakpoint) {
32
- const nativeEl = elementRef.nativeElement;
33
- for (const breakpointType of SKY_BREAKPOINTS) {
34
- this.#renderer.removeClass(nativeEl, `sky-responsive-container-${breakpointType}`);
35
- }
36
- if (!isSkyBreakpoint(breakpoint)) {
37
- breakpoint = toSkyBreakpoint(breakpoint);
38
- }
39
- this.#renderer.addClass(nativeEl, `sky-responsive-container-${breakpoint}`);
40
- }
41
- /**
42
- * This method temporarily enables/disables pointer events.
43
- * This is helpful to prevent iFrames from interfering with drag events.
44
- *
45
- * @param enable - Set to `true` to enable pointer events. Set to `false` to disable.
46
- */
47
- toggleIframePointerEvents(enable) {
48
- const iframes = Array.from(document.querySelectorAll('iframe'));
49
- for (const iframe of iframes) {
50
- this.#renderer.setStyle(iframe, 'pointer-events', enable ? '' : 'none');
51
- }
52
- }
53
- /**
54
- * Focuses on the first element found with an `autofocus` attribute inside the supplied `elementRef`.
55
- *
56
- * @param elementRef - The element to search within.
57
- * @return Returns `true` if a child element with autofocus is found.
58
- */
59
- applyAutoFocus(elementRef) {
60
- if (!elementRef) {
61
- return false;
62
- }
63
- const elementWithAutoFocus = elementRef.nativeElement.querySelector('[autofocus]');
64
- // Child was found with the autofocus property. Set focus and return true.
65
- if (elementWithAutoFocus) {
66
- elementWithAutoFocus.focus();
67
- return true;
68
- }
69
- // No children were found with autofocus property. Return false.
70
- return false;
71
- }
72
- /**
73
- * Sets focus on the first focusable child of the `elementRef` parameter.
74
- * If no focusable children are found, and `focusOnContainerIfNoChildrenFound` is `true`,
75
- * focus will be set on the container element.
76
- *
77
- * @param elementRef - The element to search within.
78
- * @param containerSelector - A CSS selector indicating the container that should
79
- * receive focus if no focusable children are found.
80
- * @param focusOnContainerIfNoChildrenFound - It set to `true`, the container will
81
- * receive focus if no focusable children are found.
82
- */
83
- getFocusableChildrenAndApplyFocus(elementRef, containerSelector, focusOnContainerIfNoChildrenFound = false) {
84
- const containerElement = elementRef.nativeElement.querySelector(containerSelector);
85
- if (containerElement) {
86
- const focusableChildren = this.getFocusableChildren(containerElement);
87
- // Focus first focusable child if available. Otherwise, set focus on container.
88
- if (!this.#focusFirstElement(focusableChildren) &&
89
- focusOnContainerIfNoChildrenFound) {
90
- containerElement.focus();
91
- }
92
- }
93
- }
94
- /**
95
- * Returns an array of all focusable children of provided `element`.
96
- *
97
- * @param element - The HTMLElement to search within.
98
- * @param options - Options for getting focusable children.
99
- */
100
- getFocusableChildren(element, options) {
101
- if (!element) {
102
- return [];
103
- }
104
- let elements = Array.prototype.slice.call(element.querySelectorAll(SKY_TABBABLE_SELECTOR));
105
- // Unless ignoreTabIndex = true, filter out elements with tabindex = -1.
106
- if (!options || !options.ignoreTabIndex) {
107
- elements = elements.filter((el) => {
108
- return el.tabIndex !== -1;
109
- });
110
- }
111
- // Unless ignoreVisibility = true, filter out elements that are not visible.
112
- if (!options || !options.ignoreVisibility) {
113
- elements = elements.filter((el) => {
114
- return this.#isVisible(el);
115
- });
116
- }
117
- return elements;
118
- }
119
- /**
120
- * Returns the clientWidth of the provided elementRef.
121
- * @param elementRef - The element to calculate width from.
122
- */
123
- getWidth(elementRef) {
124
- return elementRef.nativeElement.clientWidth;
125
- }
126
- /**
127
- * Checks if an event target has a higher z-index than a given element.
128
- * @param target The event target element.
129
- * @param element The element to test against. A z-index must be explicitly set for this element.
130
- */
131
- isTargetAboveElement(target, element) {
132
- const zIndex = getComputedStyle(element).zIndex;
133
- let el = target;
134
- while (el) {
135
- // Getting the computed style only works for elements that exist in the DOM.
136
- // In certain scenarios, an element is removed after a click event; by the time the event
137
- // bubbles up to other elements, however, the element has been removed and the computed style returns empty.
138
- // In this case, we'll need to check the z-index directly, via the style property.
139
- const targetZIndex = getComputedStyle(el).zIndex || el.style.zIndex;
140
- if (targetZIndex !== '' &&
141
- targetZIndex !== 'auto' &&
142
- +targetZIndex > +zIndex) {
143
- return true;
144
- }
145
- el = el.parentElement;
146
- }
147
- return false;
148
- }
149
- /**
150
- * Remove inline height styles from the provided elements.
151
- * @param elementRef - The element to search within.
152
- * @param selector - The CSS selector to use when finding elements for removing height.
153
- */
154
- resetHeight(elementRef, selector) {
155
- const children = Array.from(elementRef.nativeElement.querySelectorAll(selector));
156
- for (const child of children) {
157
- this.#renderer.removeStyle(child, 'height');
158
- }
159
- }
160
- /**
161
- * Sets all element heights to match the height of the tallest element.
162
- * @param elementRef - The element to search within.
163
- * @param selector - The CSS selector to use when finding elements for syncing height.
164
- */
165
- syncMaxHeight(elementRef, selector) {
166
- const children = Array.from(elementRef.nativeElement.querySelectorAll(selector));
167
- /* istanbul ignore else */
168
- if (children.length > 0) {
169
- let maxHeight = 0;
170
- for (const child of children) {
171
- maxHeight = Math.max(maxHeight, child.offsetHeight);
172
- }
173
- for (const child of children) {
174
- this.#renderer.setStyle(child, 'height', `${maxHeight}px`);
175
- }
176
- }
177
- }
178
- #focusFirstElement(list) {
179
- if (list.length > 0) {
180
- list[0].focus();
181
- return true;
182
- }
183
- return false;
184
- }
185
- #isVisible(element) {
186
- const style = window.getComputedStyle(element);
187
- const isHidden = style.display === 'none' || style.visibility === 'hidden';
188
- if (isHidden) {
189
- return false;
190
- }
191
- const hasBounds = !!(element.offsetWidth ||
192
- element.offsetHeight ||
193
- element.getClientRects().length);
194
- return hasBounds;
195
- }
196
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyCoreAdapterService, deps: [{ token: i0.RendererFactory2 }], target: i0.ɵɵFactoryTarget.Injectable }); }
197
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyCoreAdapterService, providedIn: 'root' }); }
198
- }
199
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyCoreAdapterService, decorators: [{
200
- type: Injectable,
201
- args: [{
202
- providedIn: 'root',
203
- }]
204
- }], ctorParameters: () => [{ type: i0.RendererFactory2 }] });
205
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRhcHRlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2NvcmUvc3JjL2xpYi9tb2R1bGVzL2FkYXB0ZXItc2VydmljZS9hZGFwdGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFVBQVUsR0FHWCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQ0wsZUFBZSxHQUVoQixNQUFNLG1DQUFtQyxDQUFDO0FBQzNDLE9BQU8sRUFDTCxlQUFlLEVBQ2YsZUFBZSxHQUNoQixNQUFNLHlDQUF5QyxDQUFDOztBQUtqRCxNQUFNLHFCQUFxQixHQUFHO0lBQzVCLFNBQVM7SUFDVCxZQUFZO0lBQ1osdUJBQXVCO0lBQ3ZCLHdCQUF3QjtJQUN4Qix3QkFBd0I7SUFDeEIsMEJBQTBCO0lBQzFCLFFBQVE7SUFDUixRQUFRO0lBQ1IsT0FBTztJQUNQLHlDQUF5QztJQUN6Qyw2QkFBNkI7Q0FDOUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7QUFLYixNQUFNLE9BQU8scUJBQXFCO0lBQ2hDLFNBQVMsQ0FBWTtJQUVyQixZQUFZLGVBQWlDO1FBQzNDLElBQUksQ0FBQyxTQUFTLEdBQUcsZUFBZSxDQUFDLGNBQWMsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDbkUsQ0FBQztJQUVEOzs7Ozs7O09BT0c7SUFDSSwyQkFBMkIsQ0FDaEMsVUFBc0IsRUFDdEIsVUFBK0M7UUFFL0MsTUFBTSxRQUFRLEdBQUcsVUFBVSxDQUFDLGFBQWEsQ0FBQztRQUUxQyxLQUFLLE1BQU0sY0FBYyxJQUFJLGVBQWUsRUFBRSxDQUFDO1lBQzdDLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUN4QixRQUFRLEVBQ1IsNEJBQTRCLGNBQWMsRUFBRSxDQUM3QyxDQUFDO1FBQ0osQ0FBQztRQUVELElBQUksQ0FBQyxlQUFlLENBQUMsVUFB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V0FBVztZQUNuQixPQUFPLENBQUMsWUFBWTtZQUNwQixPQUFPLENBQUMsY0FBYyxFQUFFLENBQUMsTUFBTSxDQUNoQyxDQUFDO1FBQ0YsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQzsrR0E5T1UscUJBQXFCO21IQUFyQixxQkFBcUIsY0FGcEIsTUFBTTs7NEZBRVAscUJBQXFCO2tCQUhqQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEVsZW1lbnRSZWYsXG4gIEluamVjdGFibGUsXG4gIFJlbmRlcmVyMixcbiAgUmVuZGVyZXJGYWN0b3J5Mixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7XG4gIFNLWV9CUkVBS1BPSU5UUyxcbiAgU2t5QnJlYWtwb2ludCxcbn0gZnJvbSAnLi4vYnJlYWtwb2ludC1vYnNlcnZlci9icmVha3BvaW50JztcbmltcG9ydCB7XG4gIGlzU2t5QnJlYWtwb2ludCxcbiAgdG9Ta3lCcmVha3BvaW50LFxufSBmcm9tICcuLi9icmVha3BvaW50LW9ic2VydmVyL2JyZWFrcG9pbnQtdXRpbHMnO1xuaW1wb3J0IHsgU2t5TWVkaWFCcmVha3BvaW50cyB9IGZyb20gJy4uL21lZGlhLXF1ZXJ5L21lZGlhLWJyZWFrcG9pbnRzJztcblxuaW1wb3J0IHsgU2t5Rm9jdXNhYmxlQ2hpbGRyZW5PcHRpb25zIH0gZnJvbSAnLi9mb2N1c2FibGUtY2hpbGRyZW4tb3B0aW9ucyc7XG5cbmNvbnN0IFNLWV9UQUJCQUJMRV9TRUxFQ1RPUiA9IFtcbiAgJ2FbaHJlZl0nLFxuICAnYXJlYVtocmVmXScsXG4gICdpbnB1dDpub3QoW2Rpc2FibGVkXSknLFxuICAnYnV0dG9uOm5vdChbZGlzYWJsZWRdKScsXG4gICdzZWxlY3Q6bm90KFtkaXNhYmxlZF0pJyxcbiAgJ3RleHRhcmVhOm5vdChbZGlzYWJsZWRdKScsXG4gICdpZnJhbWUnLFxuICAnb2JqZWN0JyxcbiAgJ2VtYmVkJyxcbiAgJypbY29udGVudGVkaXRhYmxlPXRydWVdOm5vdChbZGlzYWJsZWRdKScsXG4gICcqW3RhYmluZGV4XTpub3QoW2Rpc2FibGVkXSknLFxuXS5qb2luKCcsICcpO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgU2t5Q29yZUFkYXB0ZXJTZXJ2aWNlIHtcbiAgI3JlbmRlcmVyOiBSZW5kZXJlcjI7XG5cbiAgY29uc3RydWN0b3IocmVuZGVyZXJGYWN0b3J5OiBSZW5kZXJlckZhY3RvcnkyKSB7XG4gICAgdGhpcy4jcmVuZGVyZXIgPSByZW5kZXJlckZhY3RvcnkuY3JlYXRlUmVuZGVyZXIodW5kZWZpbmVkLCBudWxsKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIHJlc3BvbnNpdmUgY29udGFpbmVyIENTUyBjbGFzcyBmb3IgYSBnaXZlbiBlbGVtZW50LlxuICAgKlxuICAgKiBAcGFyYW0gZWxlbWVudFJlZiAtIFRoZSBlbGVtZW50IHRoYXQgd2lsbCByZWNlaXZlIHRoZSBuZXcgQ1NTIGNsYXNzLlxuICAgKiBAcGFyYW0gYnJlYWtwb2ludCAtIFRoZSBicmVha3BvaW50IHRvIGRldGVybWluZSB3aGljaCBjbGFzcyBnZXRzIHNldC5cbiAgICogRm9yIGV4YW1wbGUgYSBicmVha3BvaW50IG9mIFwieHNcIiB3aWxsIHNldCBhIENTUyBjbGFzcyBvZiBcInNreS1yZXNwb25zaXZlLWNvbnRhaW5lci14c1wiLlxuICAgKiBAZGVwcmVjYXRlZCBVc2UgdGhlIGBTa3lSZXNwb25zaXZlSG9zdERpcmVjdGl2ZWAgaW5zdGVhZC5cbiAgICovXG4gIHB1YmxpYyBzZXRSZXNwb25zaXZlQ29udGFpbmVyQ2xhc3MoXG4gICAgZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICBicmVha3BvaW50OiBTa3lCcmVha3BvaW50IHwgU2t5TWVkaWFCcmVha3BvaW50cyxcbiAgKTogdm9pZCB7XG4gICAgY29uc3QgbmF0aXZlRWwgPSBlbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG5cbiAgICBmb3IgKGNvbnN0IGJyZWFrcG9pbnRUeXBlIG9mIFNLWV9CUkVBS1BPSU5UUykge1xuICAgICAgdGhpcy4jcmVuZGVyZXIucmVtb3ZlQ2xhc3MoXG4gICAgICAgIG5hdGl2ZUVsLFxuICAgICAgICBgc2t5LXJlc3BvbnNpdmUtY29udGFpbmVyLSR7YnJlYWtwb2ludFR5cGV9YCxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKCFpc1NreUJyZWFrcG9pbnQoYnJlYWtwb2ludCkpIHtcbiAgICAgIGJyZWFrcG9pbnQgPSB0b1NreUJyZWFrcG9pbnQoYnJlYWtwb2ludCk7XG4gICAgfVxuXG4gICAgdGhpcy4jcmVuZGVyZXIuYWRkQ2xhc3MobmF0aXZlRWwsIGBza3ktcmVzcG9uc2l2ZS1jb250YWluZXItJHticmVha3BvaW50fWApO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoaXMgbWV0aG9kIHRlbXBvcmFyaWx5IGVuYWJsZXMvZGlzYWJsZXMgcG9pbnRlciBldmVudHMuXG4gICAqIFRoaXMgaXMgaGVscGZ1bCB0byBwcmV2ZW50IGlGcmFtZXMgZnJvbSBpbnRlcmZlcmluZyB3aXRoIGRyYWcgZXZlbnRzLlxuICAgKlxuICAgKiBAcGFyYW0gZW5hYmxlIC0gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgcG9pbnRlciBldmVudHMuIFNldCB0byBgZmFsc2VgIHRvIGRpc2FibGUuXG4gICAqL1xuICBwdWJsaWMgdG9nZ2xlSWZyYW1lUG9pbnRlckV2ZW50cyhlbmFibGU6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICBjb25zdCBpZnJhbWVzID0gQXJyYXkuZnJvbTxIVE1MRWxlbWVudD4oXG4gICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCdpZnJhbWUnKSxcbiAgICApO1xuICAgIGZvciAoY29uc3QgaWZyYW1lIG9mIGlmcmFtZXMpIHtcbiAgICAgIHRoaXMuI3JlbmRlcmVyLnNldFN0eWxlKGlmcmFtZSwgJ3BvaW50ZXItZXZlbnRzJywgZW5hYmxlID8gJycgOiAnbm9uZScpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBGb2N1c2VzIG9uIHRoZSBmaXJzdCBlbGVtZW50IGZvdW5kIHdpdGggYW4gYGF1dG9mb2N1c2AgYXR0cmlidXRlIGluc2lkZSB0aGUgc3VwcGxpZWQgYGVsZW1lbnRSZWZgLlxuICAgKlxuICAgKiBAcGFyYW0gZWxlbWVudFJlZiAtIFRoZSBlbGVtZW50IHRvIHNlYXJjaCB3aXRoaW4uXG4gICAqIEByZXR1cm4gUmV0dXJucyBgdHJ1ZWAgaWYgYSBjaGlsZCBlbGVtZW50IHdpdGggYXV0b2ZvY3VzIGlzIGZvdW5kLlxuICAgKi9cbiAgcHVibGljIGFwcGx5QXV0b0ZvY3VzKGVsZW1lbnRSZWY/OiBFbGVtZW50UmVmKTogYm9vbGVhbiB7XG4gICAgaWYgKCFlbGVtZW50UmVmKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgY29uc3QgZWxlbWVudFdpdGhBdXRvRm9jdXMgPVxuICAgICAgZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJ1thdXRvZm9jdXNdJyk7XG5cbiAgICAvLyBDaGlsZCB3YXMgZm91bmQgd2l0aCB0aGUgYXV0b2ZvY3VzIHByb3BlcnR5LiBTZXQgZm9jdXMgYW5kIHJldHVybiB0cnVlLlxuICAgIGlmIChlbGVtZW50V2l0aEF1dG9Gb2N1cykge1xuICAgICAgZWxlbWVudFdpdGhBdXRvRm9jdXMuZm9jdXMoKTtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cblxuICAgIC8vIE5vIGNoaWxkcmVuIHdlcmUgZm91bmQgd2l0aCBhdXRvZm9jdXMgcHJvcGVydHkuIFJldHVybiBmYWxzZS5cbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyBmb2N1cyBvbiB0aGUgZmlyc3QgZm9jdXNhYmxlIGNoaWxkIG9mIHRoZSBgZWxlbWVudFJlZmAgcGFyYW1ldGVyLlxuICAgKiBJZiBubyBmb2N1c2FibGUgY2hpbGRyZW4gYXJlIGZvdW5kLCBhbmQgYGZvY3VzT25Db250YWluZXJJZk5vQ2hpbGRyZW5Gb3VuZGAgaXMgYHRydWVgLFxuICAgKiBmb2N1cyB3aWxsIGJlIHNldCBvbiB0aGUgY29udGFpbmVyIGVsZW1lbnQuXG4gICAqXG4gICAqIEBwYXJhbSBlbGVtZW50UmVmIC0gVGhlIGVsZW1lbnQgdG8gc2VhcmNoIHdpdGhpbi5cbiAgICogQHBhcmFtIGNvbnRhaW5lclNlbGVjdG9yIC0gQSBDU1Mgc2VsZWN0b3IgaW5kaWNhdGluZyB0aGUgY29udGFpbmVyIHRoYXQgc2hvdWxkXG4gICAqIHJlY2VpdmUgZm9jdXMgaWYgbm8gZm9jdXNhYmxlIGNoaWxkcmVuIGFyZSBmb3VuZC5cbiAgICogQHBhcmFtIGZvY3VzT25Db250YWluZXJJZk5vQ2hpbGRyZW5Gb3VuZCAtIEl0IHNldCB0byBgdHJ1ZWAsIHRoZSBjb250YWluZXIgd2lsbFxuICAgKiByZWNlaXZlIGZvY3VzIGlmIG5vIGZvY3VzYWJsZSBjaGlsZHJlbiBhcmUgZm91bmQuXG4gICAqL1xuICBwdWJsaWMgZ2V0Rm9jdXNhYmxlQ2hpbGRyZW5BbmRBcHBseUZvY3VzKFxuICAgIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgY29udGFpbmVyU2VsZWN0b3I/OiBzdHJpbmcsXG4gICAgZm9jdXNPbkNvbnRhaW5lcklmTm9DaGlsZHJlbkZvdW5kID0gZmFsc2UsXG4gICk6IHZvaWQge1xuICAgIGNvbnN0IGNvbnRhaW5lckVsZW1lbnQgPVxuICAgICAgZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoY29udGFpbmVyU2VsZWN0b3IpO1xuXG4gICAgaWYgKGNvbnRhaW5lckVsZW1lbnQpIHtcbiAgICAgIGNvbnN0IGZvY3VzYWJsZUNoaWxkcmVuID0gdGhpcy5nZXRGb2N1c2FibGVDaGlsZHJlbihjb250YWluZXJFbGVtZW50KTtcblxuICAgICAgLy8gRm9jdXMgZmlyc3QgZm9jdXNhYmxlIGNoaWxkIGlmIGF2YWlsYWJsZS4gT3RoZXJ3aXNlLCBzZXQgZm9jdXMgb24gY29udGFpbmVyLlxuICAgICAgaWYgKFxuICAgICAgICAhdGhpcy4jZm9jdXNGaXJzdEVsZW1lbnQoZm9jdXNhYmxlQ2hpbGRyZW4pICYmXG4gICAgICAgIGZvY3VzT25Db250YWluZXJJZk5vQ2hpbGRyZW5Gb3VuZFxuICAgICAgKSB7XG4gICAgICAgIGNvbnRhaW5lckVsZW1lbnQuZm9jdXMoKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyBhbiBhcnJheSBvZiBhbGwgZm9jdXNhYmxlIGNoaWxkcmVuIG9mIHByb3ZpZGVkIGBlbGVtZW50YC5cbiAgICpcbiAgICogQHBhcmFtIGVsZW1lbnQgLSBUaGUgSFRNTEVsZW1lbnQgdG8gc2VhcmNoIHdpdGhpbi5cbiAgICogQHBhcmFtIG9wdGlvbnMgLSBPcHRpb25zIGZvciBnZXR0aW5nIGZvY3VzYWJsZSBjaGlsZHJlbi5cbiAgICovXG4gIHB1YmxpYyBnZXRGb2N1c2FibGVDaGlsZHJlbihcbiAgICBlbGVtZW50PzogSFRNTEVsZW1lbnQsXG4gICAgb3B0aW9ucz86IFNreUZvY3VzYWJsZUNoaWxkcmVuT3B0aW9ucyxcbiAgKTogSFRNTEVsZW1lbnRbXSB7XG4gICAgaWYgKCFlbGVtZW50KSB7XG4gICAgICByZXR1cm4gW107XG4gICAgfVxuXG4gICAgbGV0IGVsZW1lbnRzID0gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoXG4gICAgICBlbGVtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoU0tZX1RBQkJBQkxFX1NFTEVDVE9SKSxcbiAgICApO1xuXG4gICAgLy8gVW5sZXNzIGlnbm9yZVRhYkluZGV4ID0gdHJ1ZSwgZmlsdGVyIG91dCBlbGVtZW50cyB3aXRoIHRhYmluZGV4ID0gLTEuXG4gICAgaWYgKCFvcHRpb25zIHx8ICFvcHRpb25zLmlnbm9yZVRhYkluZGV4KSB7XG4gICAgICBlbGVtZW50cyA9IGVsZW1lbnRzLmZpbHRlcigoZWw6IEhUTUxFbGVtZW50KSA9PiB7XG4gICAgICAgIHJldHVybiBlbC50YWJJbmRleCAhPT0gLTE7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICAvLyBVbmxlc3MgaWdub3JlVmlzaWJpbGl0eSA9IHRydWUsIGZpbHRlciBvdXQgZWxlbWVudHMgdGhhdCBhcmUgbm90IHZpc2libGUuXG4gICAgaWYgKCFvcHRpb25zIHx8ICFvcHRpb25zLmlnbm9yZVZpc2liaWxpdHkpIHtcbiAgICAgIGVsZW1lbnRzID0gZWxlbWVudHMuZmlsdGVyKChlbDogSFRNTEVsZW1lbnQpID0+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuI2lzVmlzaWJsZShlbCk7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gZWxlbWVudHM7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgY2xpZW50V2lkdGggb2YgdGhlIHByb3ZpZGVkIGVsZW1lbnRSZWYuXG4gICAqIEBwYXJhbSBlbGVtZW50UmVmIC0gVGhlIGVsZW1lbnQgdG8gY2FsY3VsYXRlIHdpZHRoIGZyb20uXG4gICAqL1xuICBwdWJsaWMgZ2V0V2lkdGgoZWxlbWVudFJlZjogRWxlbWVudFJlZik6IG51bWJlciB7XG4gICAgcmV0dXJuIGVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jbGllbnRXaWR0aDtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVja3MgaWYgYW4gZXZlbnQgdGFyZ2V0IGhhcyBhIGhpZ2hlciB6LWluZGV4IHRoYW4gYSBnaXZlbiBlbGVtZW50LlxuICAgKiBAcGFyYW0gdGFyZ2V0IFRoZSBldmVudCB0YXJnZXQgZWxlbWVudC5cbiAgICogQHBhcmFtIGVsZW1lbnQgVGhlIGVsZW1lbnQgdG8gdGVzdCBhZ2FpbnN0LiBBIHotaW5kZXggbXVzdCBiZSBleHBsaWNpdGx5IHNldCBmb3IgdGhpcyBlbGVtZW50LlxuICAgKi9cbiAgcHVibGljIGlzVGFyZ2V0QWJvdmVFbGVtZW50KFxuICAgIHRhcmdldDogRXZlbnRUYXJnZXQsXG4gICAgZWxlbWVudDogSFRNTEVsZW1lbnQsXG4gICk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IHpJbmRleCA9IGdldENvbXB1dGVkU3R5bGUoZWxlbWVudCkuekluZGV4O1xuXG4gICAgbGV0IGVsID0gdGFyZ2V0IGFzIEhUTUxFbGVtZW50O1xuXG4gICAgd2hpbGUgKGVsKSB7XG4gICAgICAvLyBHZXR0aW5nIHRoZSBjb21wdXRlZCBzdHlsZSBvbmx5IHdvcmtzIGZvciBlbGVtZW50cyB0aGF0IGV4aXN0IGluIHRoZSBET00uXG4gICAgICAvLyBJbiBjZXJ0YWluIHNjZW5hcmlvcywgYW4gZWxlbWVudCBpcyByZW1vdmVkIGFmdGVyIGEgY2xpY2sgZXZlbnQ7IGJ5IHRoZSB0aW1lIHRoZSBldmVudFxuICAgICAgLy8gYnViYmxlcyB1cCB0byBvdGhlciBlbGVtZW50cywgaG93ZXZlciwgdGhlIGVsZW1lbnQgaGFzIGJlZW4gcmVtb3ZlZCBhbmQgdGhlIGNvbXB1dGVkIHN0eWxlIHJldHVybnMgZW1wdHkuXG4gICAgICAvLyBJbiB0aGlzIGNhc2UsIHdlJ2xsIG5lZWQgdG8gY2hlY2sgdGhlIHotaW5kZXggZGlyZWN0bHksIHZpYSB0aGUgc3R5bGUgcHJvcGVydHkuXG4gICAgICBjb25zdCB0YXJnZXRaSW5kZXggPSBnZXRDb21wdXRlZFN0eWxlKGVsKS56SW5kZXggfHwgZWwuc3R5bGUuekluZGV4O1xuICAgICAgaWYgKFxuICAgICAgICB0YXJnZXRaSW5kZXggIT09ICcnICYmXG4gICAgICAgIHRhcmdldFpJbmRleCAhPT0gJ2F1dG8nICYmXG4gICAgICAgICt0YXJnZXRaSW5kZXggPiArekluZGV4XG4gICAgICApIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG5cbiAgICAgIGVsID0gZWwucGFyZW50RWxlbWVudCBhcyBIVE1MRWxlbWVudDtcbiAgICB9XG5cbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICAvKipcbiAgICogUmVtb3ZlIGlubGluZSBoZWlnaHQgc3R5bGVzIGZyb20gdGhlIHByb3ZpZGVkIGVsZW1lbnRzLlxuICAgKiBAcGFyYW0gZWxlbWVudFJlZiAtIFRoZSBlbGVtZW50IHRvIHNlYXJjaCB3aXRoaW4uXG4gICAqIEBwYXJhbSBzZWxlY3RvciAtIFRoZSBDU1Mgc2VsZWN0b3IgdG8gdXNlIHdoZW4gZmluZGluZyBlbGVtZW50cyBmb3IgcmVtb3ZpbmcgaGVpZ2h0LlxuICAgKi9cbiAgcHVibGljIHJlc2V0SGVpZ2h0KGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsIHNlbGVjdG9yOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCBjaGlsZHJlbiA9IEFycmF5LmZyb208SFRNTEVsZW1lbnQ+KFxuICAgICAgZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoc2VsZWN0b3IpLFxuICAgICk7XG4gICAgZm9yIChjb25zdCBjaGlsZCBvZiBjaGlsZHJlbikge1xuICAgICAgdGhpcy4jcmVuZGVyZXIucmVtb3ZlU3R5bGUoY2hpbGQsICdoZWlnaHQnKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogU2V0cyBhbGwgZWxlbWVudCBoZWlnaHRzIHRvIG1hdGNoIHRoZSBoZWlnaHQgb2YgdGhlIHRhbGxlc3QgZWxlbWVudC5cbiAgICogQHBhcmFtIGVsZW1lbnRSZWYgLSBUaGUgZWxlbWVudCB0byBzZWFyY2ggd2l0aGluLlxuICAgKiBAcGFyYW0gc2VsZWN0b3IgLSBUaGUgQ1NTIHNlbGVjdG9yIHRvIHVzZSB3aGVuIGZpbmRpbmcgZWxlbWVudHMgZm9yIHN5bmNpbmcgaGVpZ2h0LlxuICAgKi9cbiAgcHVibGljIHN5bmNNYXhIZWlnaHQoZWxlbWVudFJlZjogRWxlbWVudFJlZiwgc2VsZWN0b3I6IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IGNoaWxkcmVuID0gQXJyYXkuZnJvbTxIVE1MRWxlbWVudD4oXG4gICAgICBlbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvckFsbChzZWxlY3RvciksXG4gICAgKTtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgIGlmIChjaGlsZHJlbi5sZW5ndGggPiAwKSB7XG4gICAgICBsZXQgbWF4SGVpZ2h0ID0gMDtcbiAgICAgIGZvciAoY29uc3QgY2hpbGQgb2YgY2hpbGRyZW4pIHtcbiAgICAgICAgbWF4SGVpZ2h0ID0gTWF0aC5tYXgobWF4SGVpZ2h0LCBjaGlsZC5vZmZzZXRIZWlnaHQpO1xuICAgICAgfVxuICAgICAgZm9yIChjb25zdCBjaGlsZCBvZiBjaGlsZHJlbikge1xuICAgICAgICB0aGlzLiNyZW5kZXJlci5zZXRTdHlsZShjaGlsZCwgJ2hlaWdodCcsIGAke21heEhlaWdodH1weGApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICNmb2N1c0ZpcnN0RWxlbWVudChsaXN0OiBIVE1MRWxlbWVudFtdKTogYm9vbGVhbiB7XG4gICAgaWYgKGxpc3QubGVuZ3RoID4gMCkge1xuICAgICAgbGlzdFswXS5mb2N1cygpO1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gICNpc1Zpc2libGUoZWxlbWVudDogSFRNTEVsZW1lbnQpOiBib29sZWFuIHtcbiAgICBjb25zdCBzdHlsZSA9IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGVsZW1lbnQpO1xuICAgIGNvbnN0IGlzSGlkZGVuID0gc3R5bGUuZGlzcGxheSA9PT0gJ25vbmUnIHx8IHN0eWxlLnZpc2liaWxpdHkgPT09ICdoaWRkZW4nO1xuICAgIGlmIChpc0hpZGRlbikge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIGNvbnN0IGhhc0JvdW5kcyA9ICEhKFxuICAgICAgZWxlbWVudC5vZmZzZXRXaWR0aCB8fFxuICAgICAgZWxlbWVudC5vZmZzZXRIZWlnaHQgfHxcbiAgICAgIGVsZW1lbnQuZ2V0Q2xpZW50UmVjdHMoKS5sZW5ndGhcbiAgICApO1xuICAgIHJldHVybiBoYXNCb3VuZHM7XG4gIH1cbn1cbiJdfQ==
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9jdXNhYmxlLWNoaWxkcmVuLW9wdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvY29yZS9zcmMvbGliL21vZHVsZXMvYWRhcHRlci1zZXJ2aWNlL2ZvY3VzYWJsZS1jaGlsZHJlbi1vcHRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIE9wdGlvbnMgZm9yIGdldHRpbmcgZm9jdXNhYmxlIGNoaWxkcmVuLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNreUZvY3VzYWJsZUNoaWxkcmVuT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBCeSBkZWZhdWx0LCB0aGUgYGdldEZvY3VzYWJsZUNoaWxkcmVuKClgIGZ1bmN0aW9uIHdpbGwgZmlsdGVyIG91dCBlbGVtZW50cyB3aXRoXG4gICAqIGEgYHRhYkluZGV4YCBvZiBgLTFgLiBTZXR0aW5nIGBpZ25vcmVUYWJJbmRleCA9IHRydWVgIHdpbGwgaWdub3JlIHRoaXMgZmlsdGVyLlxuICAgKi9cbiAgaWdub3JlVGFiSW5kZXg/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBCeSBkZWZhdWx0LCB0aGUgYGdldEZvY3VzYWJsZUNoaWxkcmVuKClgIGZ1bmN0aW9uIHdpbGwgb25seSByZXR1cm4gdmlzaWJsZSBlbGVtZW50cy5cbiAgICogU2V0dGluZyBgaWdub3JlVmlzaWJpbGl0eSA9IHRydWVgIHdpbGwgaWdub3JlIHRoaXMgZmlsdGVyLlxuICAgKi9cbiAgaWdub3JlVmlzaWJpbGl0eT86IGJvb2xlYW47XG59XG4iXX0=
@@ -1,12 +0,0 @@
1
- export var SkyAffixAutoFitContext;
2
- (function (SkyAffixAutoFitContext) {
3
- /**
4
- * Auto-fit functionality will respect the nearest overflow parent element's dimensions.
5
- */
6
- SkyAffixAutoFitContext[SkyAffixAutoFitContext["OverflowParent"] = 0] = "OverflowParent";
7
- /**
8
- * Auto-fit functionality will respect the browser viewport dimensions.
9
- */
10
- SkyAffixAutoFitContext[SkyAffixAutoFitContext["Viewport"] = 1] = "Viewport";
11
- })(SkyAffixAutoFitContext || (SkyAffixAutoFitContext = {}));
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWZmaXgtYXV0by1maXQtY29udGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9jb3JlL3NyYy9saWIvbW9kdWxlcy9hZmZpeC9hZmZpeC1hdXRvLWZpdC1jb250ZXh0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLHNCQVVYO0FBVkQsV0FBWSxzQkFBc0I7SUFDaEM7O09BRUc7SUFDSCx1RkFBa0IsQ0FBQTtJQUVsQjs7T0FFRztJQUNILDJFQUFZLENBQUE7QUFDZCxDQUFDLEVBVlcsc0JBQXNCLEtBQXRCLHNCQUFzQixRQVVqQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIFNreUFmZml4QXV0b0ZpdENvbnRleHQge1xuICAvKipcbiAgICogQXV0by1maXQgZnVuY3Rpb25hbGl0eSB3aWxsIHJlc3BlY3QgdGhlIG5lYXJlc3Qgb3ZlcmZsb3cgcGFyZW50IGVsZW1lbnQncyBkaW1lbnNpb25zLlxuICAgKi9cbiAgT3ZlcmZsb3dQYXJlbnQgPSAwLFxuXG4gIC8qKlxuICAgKiBBdXRvLWZpdCBmdW5jdGlvbmFsaXR5IHdpbGwgcmVzcGVjdCB0aGUgYnJvd3NlciB2aWV3cG9ydCBkaW1lbnNpb25zLlxuICAgKi9cbiAgVmlld3BvcnQgPSAxLFxufVxuIl19
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWZmaXgtY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2NvcmUvc3JjL2xpYi9tb2R1bGVzL2FmZml4L2FmZml4LWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2t5QWZmaXhBdXRvRml0Q29udGV4dCB9IGZyb20gJy4vYWZmaXgtYXV0by1maXQtY29udGV4dCc7XG5pbXBvcnQgeyBTa3lBZmZpeEhvcml6b250YWxBbGlnbm1lbnQgfSBmcm9tICcuL2FmZml4LWhvcml6b250YWwtYWxpZ25tZW50JztcbmltcG9ydCB7IFNreUFmZml4T2Zmc2V0IH0gZnJvbSAnLi9hZmZpeC1vZmZzZXQnO1xuaW1wb3J0IHsgU2t5QWZmaXhQbGFjZW1lbnQgfSBmcm9tICcuL2FmZml4LXBsYWNlbWVudCc7XG5pbXBvcnQgeyBTa3lBZmZpeFBvc2l0aW9uIH0gZnJvbSAnLi9hZmZpeC1wb3NpdGlvbic7XG5pbXBvcnQgeyBTa3lBZmZpeFZlcnRpY2FsQWxpZ25tZW50IH0gZnJvbSAnLi9hZmZpeC12ZXJ0aWNhbC1hbGlnbm1lbnQnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFNreUFmZml4Q29uZmlnIHtcbiAgLyoqXG4gICAqIFdoaWNoIHBhcmVudCBlbGVtZW50IGlzIHVzZWQgYnkgdGhlIGF1dG8tZml0IGZ1bmN0aW9uYWxpdHkuXG4gICAqL1xuICBhdXRvRml0Q29udGV4dD86IFNreUFmZml4QXV0b0ZpdENvbnRleHQ7XG5cbiAgLyoqXG4gICAqIFRoaXMgb3B0aW9uYWwgb2Zmc2V0IGlzIGFkZGVkIHRvIChvciBzdWJ0cmFjdGVkIGZyb20pIHRoZSBbW1NreUFmZml4QXV0b0ZpdENvbnRleHRdXSBlbGVtZW50J3NcbiAgICogb2Zmc2V0IGR1cmluZyBhbiBhdXRvLWZpdCBwbGFjZW1lbnQgY2FsY3VsYXRpb24uIFRoaXMgdmFsdWUgaXMgdXNlZnVsIGlmIHlvdSBuZWVkIHRvIGNvbnNpZGVyXG4gICAqIGFub3RoZXIgYHBvc2l0aW9uOiBmaXhlZGAgZWxlbWVudCBvbiB0aGUgcGFnZSAoc3VjaCBhcyBhIG5hdmJhcikgd2hlbiB0aGUgYXV0by1maXRcbiAgICogZnVuY3Rpb25hbGl0eSBhdHRlbXB0cyB0byBmaW5kIHRoZSBiZXN0IHBvc3NpYmxlIHBsYWNlbWVudC5cbiAgICogKEluIHRoZSBjYXNlIG9mIGEgbmF2YmFyLCB5b3Ugd291bGQgYWRkIGEgYHRvcGAgdmFsdWUgZXF1YWwgdG8gdGhlIG5hdmJhcidzIGhlaWdodCBpbiBwaXhlbHMuKVxuICAgKi9cbiAgYXV0b0ZpdE92ZXJmbG93T2Zmc2V0PzogU2t5QWZmaXhPZmZzZXQ7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIGFmZml4IHNlcnZpY2UgdHJpZXMgdG8gZmluZCB0aGUgYmVzdCBwbGFjZW1lbnQgZm9yIHRoZSBhZmZpeGVkIGVsZW1lbnRcbiAgICogaWYgdGhlIGVsZW1lbnQgd291bGQgYmUgaGlkZGVuIG90aGVyd2lzZS4gSWYgdGhpcyBzZXR0aW5nIGlzIGRpc2FibGVkLCB0aGUgYWZmaXggc2VydmljZVxuICAgKiBmb3JjZXMgdGhlIHBsYWNlbWVudCBvZiB0aGUgYWZmaXhlZCBlbGVtZW50LlxuICAgKi9cbiAgZW5hYmxlQXV0b0ZpdD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFRoZSBob3Jpem9udGFsIGFsaWdubWVudCBvZiB0aGUgYWZmaXhlZCBlbGVtZW50IHRvIHRoZSBiYXNlIGVsZW1lbnQuXG4gICAqL1xuICBob3Jpem9udGFsQWxpZ25tZW50PzogU2t5QWZmaXhIb3Jpem9udGFsQWxpZ25tZW50O1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBhZmZpeGVkIGVsZW1lbnQgcmVtYWlucyBhZmZpeGVkIHRvIHRoZSBiYXNlIGVsZW1lbnQgd2hlbiB0aGUgd2luZG93IGlzIHNjcm9sbGVkIG9yIHJlc2l6ZWQuXG4gICAqL1xuICBpc1N0aWNreT86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFRoZSBwbGFjZW1lbnQgb2YgdGhlIGFmZml4ZWQgZWxlbWVudCBhcm91bmQgdGhlIGJhc2UgZWxlbWVudC5cbiAgICovXG4gIHBsYWNlbWVudD86IFNreUFmZml4UGxhY2VtZW50O1xuXG4gIC8qKlxuICAgKiBUaGUgdmVydGljYWwgYWxpZ25tZW50IG9mIHRoZSBhZmZpeGVkIGVsZW1lbnQgdG8gdGhlIGJhc2UgZWxlbWVudC5cbiAgICovXG4gIHZlcnRpY2FsQWxpZ25tZW50PzogU2t5QWZmaXhWZXJ0aWNhbEFsaWdubWVudDtcblxuICAvKipcbiAgICogVGhlIHBvc2l0aW9uIG9mIHRoZSBlbGVtZW50IGJlaW5nIGFmZml4ZWQuXG4gICAqL1xuICBwb3NpdGlvbj86IFNreUFmZml4UG9zaXRpb247XG59XG4iXX0=
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWZmaXgtaG9yaXpvbnRhbC1hbGlnbm1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvY29yZS9zcmMvbGliL21vZHVsZXMvYWZmaXgvYWZmaXgtaG9yaXpvbnRhbC1hbGlnbm1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogVGhlIGhvcml6b250YWwgYWxpZ25tZW50IG9mIHRoZSBhZmZpeGVkIGVsZW1lbnQgdG8gdGhlIGJhc2UgZWxlbWVudC5cbiAqL1xuZXhwb3J0IHR5cGUgU2t5QWZmaXhIb3Jpem9udGFsQWxpZ25tZW50ID0gJ2xlZnQnIHwgJ2NlbnRlcicgfCAncmlnaHQnO1xuIl19
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWZmaXgtb2Zmc2V0LWNoYW5nZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9jb3JlL3NyYy9saWIvbW9kdWxlcy9hZmZpeC9hZmZpeC1vZmZzZXQtY2hhbmdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTa3lBZmZpeE9mZnNldCB9IGZyb20gJy4vYWZmaXgtb2Zmc2V0JztcblxuLyoqXG4gKiBUaGUgYXJndW1lbnRzIHN1cHBsaWVkIHRvIHRoZSBhZmZpeCBvZmZzZXQgY2hhbmdlIGV2ZW50IGxpc3RlbmVyLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNreUFmZml4T2Zmc2V0Q2hhbmdlIHtcbiAgb2Zmc2V0PzogU2t5QWZmaXhPZmZzZXQ7XG59XG4iXX0=
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWZmaXgtb2Zmc2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2NvcmUvc3JjL2xpYi9tb2R1bGVzL2FmZml4L2FmZml4LW9mZnNldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBPZmZzZXQgdmFsdWVzIHVzZWQgYnkgdGhlIGFmZml4ZXIuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2t5QWZmaXhPZmZzZXQge1xuICBib3R0b20/OiBudW1iZXI7XG5cbiAgbGVmdD86IG51bWJlcjtcblxuICByaWdodD86IG51bWJlcjtcblxuICB0b3A/OiBudW1iZXI7XG59XG4iXX0=
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWZmaXgtcGxhY2VtZW50LWNoYW5nZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9jb3JlL3NyYy9saWIvbW9kdWxlcy9hZmZpeC9hZmZpeC1wbGFjZW1lbnQtY2hhbmdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTa3lBZmZpeFBsYWNlbWVudCB9IGZyb20gJy4vYWZmaXgtcGxhY2VtZW50JztcblxuZXhwb3J0IGludGVyZmFjZSBTa3lBZmZpeFBsYWNlbWVudENoYW5nZSB7XG4gIC8qKlxuICAgKiBUaGUgY2hhbmdlZCBwbGFjZW1lbnQgdmFsdWUuXG4gICAqL1xuICBwbGFjZW1lbnQ6IFNreUFmZml4UGxhY2VtZW50IHwgbnVsbDtcbn1cbiJdfQ==
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWZmaXgtcGxhY2VtZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2NvcmUvc3JjL2xpYi9tb2R1bGVzL2FmZml4L2FmZml4LXBsYWNlbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBUaGUgcGxhY2VtZW50IG9mIHRoZSBhZmZpeGVkIGVsZW1lbnQgYXJvdW5kIHRoZSBiYXNlIGVsZW1lbnQuXG4gKi9cbmV4cG9ydCB0eXBlIFNreUFmZml4UGxhY2VtZW50ID0gJ2Fib3ZlJyB8ICdiZWxvdycgfCAnbGVmdCcgfCAncmlnaHQnO1xuIl19
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWZmaXgtcG9zaXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvY29yZS9zcmMvbGliL21vZHVsZXMvYWZmaXgvYWZmaXgtcG9zaXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIFNreUFmZml4UG9zaXRpb24gPSAnYWJzb2x1dGUnIHwgJ2ZpeGVkJztcbiJdfQ==
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWZmaXgtcmVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9jb3JlL3NyYy9saWIvbW9kdWxlcy9hZmZpeC9hZmZpeC1yZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgaW50ZXJmYWNlIEFmZml4UmVjdCB7XG4gIGJvdHRvbTogbnVtYmVyO1xuICB0b3A6IG51bWJlcjtcbiAgbGVmdDogbnVtYmVyO1xuICByaWdodDogbnVtYmVyO1xuICB3aWR0aDogbnVtYmVyO1xuICBoZWlnaHQ6IG51bWJlcjtcbn1cbiJdfQ==
@@ -1,18 +0,0 @@
1
- export function getNextPlacement(placement) {
2
- const placements = ['above', 'right', 'below', 'left'];
3
- let index = placements.indexOf(placement) + 1;
4
- if (index >= placements.length) {
5
- index = 0;
6
- }
7
- return placements[index];
8
- }
9
- export function getInversePlacement(placement) {
10
- const pairings = {
11
- above: 'below',
12
- below: 'above',
13
- right: 'left',
14
- left: 'right',
15
- };
16
- return pairings[placement];
17
- }
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWZmaXgtdXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvY29yZS9zcmMvbGliL21vZHVsZXMvYWZmaXgvYWZmaXgtdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxVQUFVLGdCQUFnQixDQUM5QixTQUE0QjtJQUU1QixNQUFNLFVBQVUsR0FBd0IsQ0FBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQztJQUU1RSxJQUFJLEtBQUssR0FBRyxVQUFVLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUM5QyxJQUFJLEtBQUssSUFBSSxVQUFVLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDL0IsS0FBSyxHQUFHLENBQUMsQ0FBQztJQUNaLENBQUM7SUFFRCxPQUFPLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUMzQixDQUFDO0FBRUQsTUFBTSxVQUFVLG1CQUFtQixDQUNqQyxTQUE0QjtJQUU1QixNQUFNLFFBQVEsR0FBc0M7UUFDbEQsS0FBSyxFQUFFLE9BQU87UUFDZCxLQUFLLEVBQUUsT0FBTztRQUNkLEtBQUssRUFBRSxNQUFNO1FBQ2IsSUFBSSxFQUFFLE9BQU87S0FDZCxDQUFDO0lBRUYsT0FBTyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUM7QUFDN0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNreUFmZml4UGxhY2VtZW50IH0gZnJvbSAnLi9hZmZpeC1wbGFjZW1lbnQnO1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0TmV4dFBsYWNlbWVudChcbiAgcGxhY2VtZW50OiBTa3lBZmZpeFBsYWNlbWVudCxcbik6IFNreUFmZml4UGxhY2VtZW50IHtcbiAgY29uc3QgcGxhY2VtZW50czogU2t5QWZmaXhQbGFjZW1lbnRbXSA9IFsnYWJvdmUnLCAncmlnaHQnLCAnYmVsb3cnLCAnbGVmdCddO1xuXG4gIGxldCBpbmRleCA9IHBsYWNlbWVudHMuaW5kZXhPZihwbGFjZW1lbnQpICsgMTtcbiAgaWYgKGluZGV4ID49IHBsYWNlbWVudHMubGVuZ3RoKSB7XG4gICAgaW5kZXggPSAwO1xuICB9XG5cbiAgcmV0dXJuIHBsYWNlbWVudHNbaW5kZXhdO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0SW52ZXJzZVBsYWNlbWVudChcbiAgcGxhY2VtZW50OiBTa3lBZmZpeFBsYWNlbWVudCxcbik6IFNreUFmZml4UGxhY2VtZW50IHtcbiAgY29uc3QgcGFpcmluZ3M6IFJlY29yZDxzdHJpbmcsIFNreUFmZml4UGxhY2VtZW50PiA9IHtcbiAgICBhYm92ZTogJ2JlbG93JyxcbiAgICBiZWxvdzogJ2Fib3ZlJyxcbiAgICByaWdodDogJ2xlZnQnLFxuICAgIGxlZnQ6ICdyaWdodCcsXG4gIH07XG5cbiAgcmV0dXJuIHBhaXJpbmdzW3BsYWNlbWVudF07XG59XG4iXX0=
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWZmaXgtdmVydGljYWwtYWxpZ25tZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2NvcmUvc3JjL2xpYi9tb2R1bGVzL2FmZml4L2FmZml4LXZlcnRpY2FsLWFsaWdubWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBUaGUgdmVydGljYWwgYWxpZ25tZW50IG9mIHRoZSBhZmZpeGVkIGVsZW1lbnQgdG8gdGhlIGJhc2UgZWxlbWVudC5cbiAqL1xuZXhwb3J0IHR5cGUgU2t5QWZmaXhWZXJ0aWNhbEFsaWdubWVudCA9ICd0b3AnIHwgJ21pZGRsZScgfCAnYm90dG9tJztcbiJdfQ==