@bootkit/ng0 0.0.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (136) hide show
  1. package/README.md +2 -0
  2. package/accordion/accordion-item.component.d.ts +13 -0
  3. package/accordion/accordion.component.d.ts +13 -0
  4. package/accordion/accordion.module.d.ts +8 -0
  5. package/accordion/index.d.ts +5 -0
  6. package/accordion/public-api.d.ts +3 -0
  7. package/collapse/collapse.component.d.ts +18 -0
  8. package/collapse/collapse.directive.d.ts +32 -0
  9. package/collapse/collapse.module.d.ts +8 -0
  10. package/collapse/index.d.ts +5 -0
  11. package/collapse/public-api.d.ts +3 -0
  12. package/common/index.d.ts +5 -0
  13. package/common/public-api.d.ts +2 -0
  14. package/common/types.d.ts +4 -0
  15. package/common/utils.d.ts +3 -0
  16. package/esm2022/accordion/accordion-item.component.mjs +34 -0
  17. package/esm2022/accordion/accordion.component.mjs +25 -0
  18. package/esm2022/accordion/accordion.module.mjs +25 -0
  19. package/esm2022/accordion/bootkit-ng0-accordion.mjs +5 -0
  20. package/esm2022/accordion/public-api.mjs +4 -0
  21. package/esm2022/bootkit-ng0.mjs +5 -0
  22. package/esm2022/collapse/bootkit-ng0-collapse.mjs +5 -0
  23. package/esm2022/collapse/collapse.component.mjs +46 -0
  24. package/esm2022/collapse/collapse.directive.mjs +94 -0
  25. package/esm2022/collapse/collapse.module.mjs +23 -0
  26. package/esm2022/collapse/public-api.mjs +4 -0
  27. package/esm2022/common/bootkit-ng0-common.mjs +5 -0
  28. package/esm2022/common/public-api.mjs +3 -0
  29. package/esm2022/common/types.mjs +3 -0
  30. package/esm2022/common/utils.mjs +16 -0
  31. package/esm2022/lib/index.mjs +3 -0
  32. package/esm2022/lib/types.mjs +2 -0
  33. package/esm2022/modal/bootkit-ng0-modal.mjs +5 -0
  34. package/esm2022/modal/modal.component.mjs +44 -0
  35. package/esm2022/modal/modal.module.mjs +20 -0
  36. package/esm2022/modal/public-api.mjs +3 -0
  37. package/esm2022/modal/types.mjs +3 -0
  38. package/esm2022/nav/bootkit-ng0-nav.mjs +5 -0
  39. package/esm2022/nav/nav-item.directive.mjs +26 -0
  40. package/esm2022/nav/nav-link.directive.mjs +45 -0
  41. package/esm2022/nav/nav.directive.mjs +23 -0
  42. package/esm2022/nav/nav.module.mjs +35 -0
  43. package/esm2022/nav/public-api.mjs +7 -0
  44. package/esm2022/nav/tab-content.component.mjs +29 -0
  45. package/esm2022/nav/tab-pane.directive.mjs +20 -0
  46. package/esm2022/offcanvas/bootkit-ng0-offcanvas.mjs +5 -0
  47. package/esm2022/offcanvas/offcanvas.directive.mjs +118 -0
  48. package/esm2022/offcanvas/offcanvas.module.mjs +19 -0
  49. package/esm2022/offcanvas/public-api.mjs +3 -0
  50. package/esm2022/overlay/bootkit-ng0-overlay.mjs +5 -0
  51. package/esm2022/overlay/overlay.directive.mjs +111 -0
  52. package/esm2022/overlay/overlay.module.mjs +22 -0
  53. package/esm2022/overlay/private/utils.mjs +58 -0
  54. package/esm2022/overlay/public-api.mjs +3 -0
  55. package/esm2022/popover/bootkit-ng0-popover.mjs +5 -0
  56. package/esm2022/popover/popover-wrapper/popover-wrapper.component.mjs +29 -0
  57. package/esm2022/popover/popover.directive.mjs +140 -0
  58. package/esm2022/popover/public-api.mjs +2 -0
  59. package/esm2022/popover/types.mjs +2 -0
  60. package/esm2022/public-api.mjs +5 -0
  61. package/esm2022/toast/bootkit-ng0-toast.mjs +5 -0
  62. package/esm2022/toast/public-api.mjs +4 -0
  63. package/esm2022/toast/toast-ref.mjs +27 -0
  64. package/esm2022/toast/toast.component.mjs +68 -0
  65. package/esm2022/toast/toast.service.mjs +93 -0
  66. package/esm2022/toast/types.mjs +2 -0
  67. package/esm2022/tooltip/bootkit-ng0-tooltip.mjs +5 -0
  68. package/esm2022/tooltip/public-api.mjs +3 -0
  69. package/esm2022/tooltip/tooltip-wrapper/tooltip-wrapper.component.mjs +44 -0
  70. package/esm2022/tooltip/tooltip.directive.mjs +93 -0
  71. package/esm2022/tooltip/types.mjs +2 -0
  72. package/fesm2022/bootkit-ng0-accordion.mjs +83 -0
  73. package/fesm2022/bootkit-ng0-accordion.mjs.map +1 -0
  74. package/fesm2022/bootkit-ng0-collapse.mjs +163 -0
  75. package/fesm2022/bootkit-ng0-collapse.mjs.map +1 -0
  76. package/fesm2022/bootkit-ng0-common.mjs +26 -0
  77. package/fesm2022/bootkit-ng0-common.mjs.map +1 -0
  78. package/fesm2022/bootkit-ng0-modal.mjs +68 -0
  79. package/fesm2022/bootkit-ng0-modal.mjs.map +1 -0
  80. package/fesm2022/bootkit-ng0-nav.mjs +166 -0
  81. package/fesm2022/bootkit-ng0-nav.mjs.map +1 -0
  82. package/fesm2022/bootkit-ng0-offcanvas.mjs +141 -0
  83. package/fesm2022/bootkit-ng0-offcanvas.mjs.map +1 -0
  84. package/fesm2022/bootkit-ng0-overlay.mjs +194 -0
  85. package/fesm2022/bootkit-ng0-overlay.mjs.map +1 -0
  86. package/fesm2022/bootkit-ng0-popover.mjs +173 -0
  87. package/fesm2022/bootkit-ng0-popover.mjs.map +1 -0
  88. package/fesm2022/bootkit-ng0-toast.mjs +191 -0
  89. package/fesm2022/bootkit-ng0-toast.mjs.map +1 -0
  90. package/fesm2022/bootkit-ng0-tooltip.mjs +141 -0
  91. package/fesm2022/bootkit-ng0-tooltip.mjs.map +1 -0
  92. package/fesm2022/bootkit-ng0.mjs +12 -0
  93. package/fesm2022/bootkit-ng0.mjs.map +1 -0
  94. package/index.d.ts +5 -0
  95. package/lib/index.d.ts +2 -0
  96. package/lib/types.d.ts +1 -0
  97. package/modal/index.d.ts +5 -0
  98. package/modal/modal.component.d.ts +18 -0
  99. package/modal/modal.module.d.ts +7 -0
  100. package/modal/public-api.d.ts +2 -0
  101. package/modal/types.d.ts +2 -0
  102. package/nav/index.d.ts +5 -0
  103. package/nav/nav-item.directive.d.ts +13 -0
  104. package/nav/nav-link.directive.d.ts +16 -0
  105. package/nav/nav.directive.d.ts +11 -0
  106. package/nav/nav.module.d.ts +11 -0
  107. package/nav/public-api.d.ts +6 -0
  108. package/nav/tab-content.component.d.ts +15 -0
  109. package/nav/tab-pane.directive.d.ts +9 -0
  110. package/offcanvas/index.d.ts +5 -0
  111. package/offcanvas/offcanvas.directive.d.ts +24 -0
  112. package/offcanvas/offcanvas.module.d.ts +7 -0
  113. package/offcanvas/public-api.d.ts +2 -0
  114. package/overlay/index.d.ts +5 -0
  115. package/overlay/overlay.directive.d.ts +50 -0
  116. package/overlay/overlay.module.d.ts +10 -0
  117. package/overlay/private/utils.d.ts +10 -0
  118. package/overlay/public-api.d.ts +2 -0
  119. package/package.json +101 -0
  120. package/popover/index.d.ts +5 -0
  121. package/popover/popover-wrapper/popover-wrapper.component.d.ts +15 -0
  122. package/popover/popover.directive.d.ts +30 -0
  123. package/popover/public-api.d.ts +1 -0
  124. package/popover/types.d.ts +4 -0
  125. package/public-api.d.ts +1 -0
  126. package/toast/index.d.ts +5 -0
  127. package/toast/public-api.d.ts +3 -0
  128. package/toast/toast-ref.d.ts +12 -0
  129. package/toast/toast.component.d.ts +19 -0
  130. package/toast/toast.service.d.ts +43 -0
  131. package/toast/types.d.ts +44 -0
  132. package/tooltip/index.d.ts +5 -0
  133. package/tooltip/public-api.d.ts +2 -0
  134. package/tooltip/tooltip-wrapper/tooltip-wrapper.component.d.ts +19 -0
  135. package/tooltip/tooltip.directive.d.ts +24 -0
  136. package/tooltip/types.d.ts +3 -0
@@ -0,0 +1,58 @@
1
+ /**
2
+ * Get the overlay position based on the provided placement and alignment.
3
+ *
4
+ * @param overlayPlacement - The placement of the overlay (e.g., 'bottom', 'top', 'start', 'end').
5
+ * @param overlayAlignment - The alignment of the overlay (e.g., 'start', 'center', 'end').
6
+ * @returns The connected position for the overlay.
7
+ */
8
+ export function getOverlayPosition(overlayPlacement, overlayAlignment) {
9
+ let p = {};
10
+ switch (overlayPlacement) {
11
+ case 'bottom':
12
+ p.originY = 'bottom';
13
+ p.overlayY = 'top';
14
+ p.originX = overlayAlignment;
15
+ p.overlayX = overlayAlignment;
16
+ break;
17
+ case 'top':
18
+ p.originY = 'top';
19
+ p.overlayY = 'bottom';
20
+ p.originX = overlayAlignment;
21
+ p.overlayX = overlayAlignment;
22
+ break;
23
+ case 'start':
24
+ p.originX = 'start';
25
+ p.overlayX = 'end';
26
+ if (overlayAlignment == 'start') {
27
+ p.originY = 'top';
28
+ p.overlayY = 'top';
29
+ }
30
+ else if (overlayAlignment == 'center') {
31
+ p.originY = 'center';
32
+ p.overlayY = 'center';
33
+ }
34
+ else {
35
+ p.originY = 'bottom';
36
+ p.overlayY = 'bottom';
37
+ }
38
+ break;
39
+ case 'end':
40
+ p.originX = 'end';
41
+ p.overlayX = 'start';
42
+ if (overlayAlignment == 'start') {
43
+ p.originY = 'top';
44
+ p.overlayY = 'top';
45
+ }
46
+ else if (overlayAlignment == 'center') {
47
+ p.originY = 'center';
48
+ p.overlayY = 'center';
49
+ }
50
+ else {
51
+ p.originY = 'bottom';
52
+ p.overlayY = 'bottom';
53
+ }
54
+ break;
55
+ }
56
+ return p;
57
+ }
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZzAvb3ZlcmxheS9wcml2YXRlL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBOzs7Ozs7R0FNRztBQUNILE1BQU0sVUFBVSxrQkFBa0IsQ0FBQyxnQkFBMkIsRUFBRSxnQkFBMkI7SUFDckYsSUFBSSxDQUFDLEdBQUcsRUFBdUIsQ0FBQztJQUNoQyxRQUFRLGdCQUFnQixFQUFFLENBQUM7UUFDckIsS0FBSyxRQUFRO1lBQ1AsQ0FBQyxDQUFDLE9BQU8sR0FBRyxRQUFRLENBQUM7WUFDckIsQ0FBQyxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7WUFDbkIsQ0FBQyxDQUFDLE9BQU8sR0FBRyxnQkFBZ0IsQ0FBQztZQUM3QixDQUFDLENBQUMsUUFBUSxHQUFHLGdCQUFnQixDQUFDO1lBQzlCLE1BQU07UUFDWixLQUFLLEtBQUs7WUFDSixDQUFDLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNsQixDQUFDLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztZQUN0QixDQUFDLENBQUMsT0FBTyxHQUFHLGdCQUFnQixDQUFDO1lBQzdCLENBQUMsQ0FBQyxRQUFRLEdBQUcsZ0JBQWdCLENBQUM7WUFDOUIsTUFBTTtRQUNaLEtBQUssT0FBTztZQUNOLENBQUMsQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1lBQ3BCLENBQUMsQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1lBRW5CLElBQUksZ0JBQWdCLElBQUksT0FBTyxFQUFFLENBQUM7Z0JBQzVCLENBQUMsQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO2dCQUNsQixDQUFDLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztZQUN6QixDQUFDO2lCQUFNLElBQUksZ0JBQWdCLElBQUksUUFBUSxFQUFFLENBQUM7Z0JBQ3BDLENBQUMsQ0FBQyxPQUFPLEdBQUcsUUFBUSxDQUFDO2dCQUNyQixDQUFDLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztZQUM1QixDQUFDO2lCQUFNLENBQUM7Z0JBQ0YsQ0FBQyxDQUFDLE9BQU8sR0FBRyxRQUFRLENBQUM7Z0JBQ3JCLENBQUMsQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO1lBQzVCLENBQUM7WUFDRCxNQUFNO1FBQ1osS0FBSyxLQUFLO1lBQ0osQ0FBQyxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7WUFDbEIsQ0FBQyxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUM7WUFFckIsSUFBSSxnQkFBZ0IsSUFBSSxPQUFPLEVBQUUsQ0FBQztnQkFDNUIsQ0FBQyxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7Z0JBQ2xCLENBQUMsQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1lBQ3pCLENBQUM7aUJBQU0sSUFBSSxnQkFBZ0IsSUFBSSxRQUFRLEVBQUUsQ0FBQztnQkFDcEMsQ0FBQyxDQUFDLE9BQU8sR0FBRyxRQUFRLENBQUM7Z0JBQ3JCLENBQUMsQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO1lBQzVCLENBQUM7aUJBQU0sQ0FBQztnQkFDRixDQUFDLENBQUMsT0FBTyxHQUFHLFFBQVEsQ0FBQztnQkFDckIsQ0FBQyxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7WUFDNUIsQ0FBQztZQUNELE1BQU07SUFDbEIsQ0FBQztJQUVELE9BQU8sQ0FBQyxDQUFDO0FBQ2YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbm5lY3RlZFBvc2l0aW9uIH0gZnJvbSBcIkBhbmd1bGFyL2Nkay9vdmVybGF5XCI7XHJcbmltcG9ydCB7IEFsaWdubWVudCwgUGxhY2VtZW50IH0gZnJvbSBcIkBib290a2l0L25nMC9jb21tb25cIjtcclxuXHJcbi8qKlxyXG4gKiBHZXQgdGhlIG92ZXJsYXkgcG9zaXRpb24gYmFzZWQgb24gdGhlIHByb3ZpZGVkIHBsYWNlbWVudCBhbmQgYWxpZ25tZW50LlxyXG4gKiBcclxuICogQHBhcmFtIG92ZXJsYXlQbGFjZW1lbnQgLSBUaGUgcGxhY2VtZW50IG9mIHRoZSBvdmVybGF5IChlLmcuLCAnYm90dG9tJywgJ3RvcCcsICdzdGFydCcsICdlbmQnKS5cclxuICogQHBhcmFtIG92ZXJsYXlBbGlnbm1lbnQgLSBUaGUgYWxpZ25tZW50IG9mIHRoZSBvdmVybGF5IChlLmcuLCAnc3RhcnQnLCAnY2VudGVyJywgJ2VuZCcpLlxyXG4gKiBAcmV0dXJucyBUaGUgY29ubmVjdGVkIHBvc2l0aW9uIGZvciB0aGUgb3ZlcmxheS5cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRPdmVybGF5UG9zaXRpb24ob3ZlcmxheVBsYWNlbWVudDogUGxhY2VtZW50LCBvdmVybGF5QWxpZ25tZW50OiBBbGlnbm1lbnQpOiBDb25uZWN0ZWRQb3NpdGlvbiB7XHJcbiAgICAgIGxldCBwID0ge30gYXMgQ29ubmVjdGVkUG9zaXRpb247XHJcbiAgICAgIHN3aXRjaCAob3ZlcmxheVBsYWNlbWVudCkge1xyXG4gICAgICAgICAgICBjYXNlICdib3R0b20nOlxyXG4gICAgICAgICAgICAgICAgICBwLm9yaWdpblkgPSAnYm90dG9tJztcclxuICAgICAgICAgICAgICAgICAgcC5vdmVybGF5WSA9ICd0b3AnO1xyXG4gICAgICAgICAgICAgICAgICBwLm9yaWdpblggPSBvdmVybGF5QWxpZ25tZW50O1xyXG4gICAgICAgICAgICAgICAgICBwLm92ZXJsYXlYID0gb3ZlcmxheUFsaWdubWVudDtcclxuICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgIGNhc2UgJ3RvcCc6XHJcbiAgICAgICAgICAgICAgICAgIHAub3JpZ2luWSA9ICd0b3AnO1xyXG4gICAgICAgICAgICAgICAgICBwLm92ZXJsYXlZID0gJ2JvdHRvbSc7XHJcbiAgICAgICAgICAgICAgICAgIHAub3JpZ2luWCA9IG92ZXJsYXlBbGlnbm1lbnQ7XHJcbiAgICAgICAgICAgICAgICAgIHAub3ZlcmxheVggPSBvdmVybGF5QWxpZ25tZW50O1xyXG4gICAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgY2FzZSAnc3RhcnQnOlxyXG4gICAgICAgICAgICAgICAgICBwLm9yaWdpblggPSAnc3RhcnQnO1xyXG4gICAgICAgICAgICAgICAgICBwLm92ZXJsYXlYID0gJ2VuZCc7XHJcblxyXG4gICAgICAgICAgICAgICAgICBpZiAob3ZlcmxheUFsaWdubWVudCA9PSAnc3RhcnQnKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHAub3JpZ2luWSA9ICd0b3AnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwLm92ZXJsYXlZID0gJ3RvcCc7XHJcbiAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAob3ZlcmxheUFsaWdubWVudCA9PSAnY2VudGVyJykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwLm9yaWdpblkgPSAnY2VudGVyJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgcC5vdmVybGF5WSA9ICdjZW50ZXInO1xyXG4gICAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwLm9yaWdpblkgPSAnYm90dG9tJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgcC5vdmVybGF5WSA9ICdib3R0b20nO1xyXG4gICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICBjYXNlICdlbmQnOlxyXG4gICAgICAgICAgICAgICAgICBwLm9yaWdpblggPSAnZW5kJztcclxuICAgICAgICAgICAgICAgICAgcC5vdmVybGF5WCA9ICdzdGFydCc7XHJcblxyXG4gICAgICAgICAgICAgICAgICBpZiAob3ZlcmxheUFsaWdubWVudCA9PSAnc3RhcnQnKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHAub3JpZ2luWSA9ICd0b3AnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwLm92ZXJsYXlZID0gJ3RvcCc7XHJcbiAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAob3ZlcmxheUFsaWdubWVudCA9PSAnY2VudGVyJykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwLm9yaWdpblkgPSAnY2VudGVyJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgcC5vdmVybGF5WSA9ICdjZW50ZXInO1xyXG4gICAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwLm9yaWdpblkgPSAnYm90dG9tJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgcC5vdmVybGF5WSA9ICdib3R0b20nO1xyXG4gICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICB9XHJcblxyXG4gICAgICByZXR1cm4gcDtcclxufVxyXG4iXX0=
@@ -0,0 +1,3 @@
1
+ export * from './overlay.directive';
2
+ export * from './overlay.module';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25nMC9vdmVybGF5L3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLGtCQUFrQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9vdmVybGF5LmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vb3ZlcmxheS5tb2R1bGUnOyJdfQ==
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9vdGtpdC1uZzAtcG9wb3Zlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25nMC9wb3BvdmVyL2Jvb3RraXQtbmcwLXBvcG92ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
@@ -0,0 +1,29 @@
1
+ import { Component, ChangeDetectionStrategy, TemplateRef } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common";
5
+ export class PopoverWrapperComponent {
6
+ _elementRef;
7
+ _renderer;
8
+ placement;
9
+ header;
10
+ content;
11
+ _hasTemplate;
12
+ constructor(_elementRef, _renderer) {
13
+ this._elementRef = _elementRef;
14
+ this._renderer = _renderer;
15
+ }
16
+ ngOnInit() {
17
+ this._hasTemplate = this.content instanceof TemplateRef;
18
+ const e = this._elementRef.nativeElement;
19
+ this._renderer.setAttribute(e, 'role', 'tooltip');
20
+ ['popover', 'fade', 'show', 'bs-popover-' + this.placement].forEach(c => this._renderer.addClass(e, c));
21
+ }
22
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: PopoverWrapperComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
23
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.11", type: PopoverWrapperComponent, isStandalone: true, selector: "jss-popover-wrapper", exportAs: ["jssPopoverWrapper"], ngImport: i0, template: "<div class=\"popover-arrow\"></div>\r\n<h3 class=\"popover-header\" *ngIf=\"header\">{{header}}</h3>\r\n<div class=\"popover-body\">\r\n @if(_hasTemplate) {\r\n <ng-container [ngTemplateOutlet]=\"$any(content)\"></ng-container>\r\n }@else{\r\n {{content}}\r\n }\r\n</div>", styles: [":host{position:relative;margin:var(--bs-popover-arrow-height)}:host .popover-arrow{position:absolute}:host.bs-popover-top .popover-arrow{bottom:calc(-1 * var(--bs-popover-arrow-height));left:calc(50% - var(--bs-popover-arrow-width) / 2)}:host.bs-popover-bottom .popover-arrow{top:calc(-1 * var(--bs-popover-arrow-height));left:calc(50% - var(--bs-popover-arrow-width) / 2)}:host.bs-popover-start .popover-arrow{right:calc(-1 * var(--bs-popover-arrow-height));top:calc(50% - var(--bs-popover-arrow-width) / 2)}:host.bs-popover-end .popover-arrow{left:calc(-1 * var(--bs-popover-arrow-height));top:calc(50% - var(--bs-popover-arrow-width) / 2)}[dir=rtl] :host.bs-popover-start .popover-arrow{right:unset!important;left:calc(-1 * var(--bs-popover-arrow-height));transform:rotate(180deg)}[dir=rtl] :host.bs-popover-end .popover-arrow{left:unset!important;right:calc(-1 * var(--bs-popover-arrow-height));transform:rotate(180deg)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { 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 });
24
+ }
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: PopoverWrapperComponent, decorators: [{
26
+ type: Component,
27
+ args: [{ selector: 'jss-popover-wrapper', exportAs: 'jssPopoverWrapper', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule], template: "<div class=\"popover-arrow\"></div>\r\n<h3 class=\"popover-header\" *ngIf=\"header\">{{header}}</h3>\r\n<div class=\"popover-body\">\r\n @if(_hasTemplate) {\r\n <ng-container [ngTemplateOutlet]=\"$any(content)\"></ng-container>\r\n }@else{\r\n {{content}}\r\n }\r\n</div>", styles: [":host{position:relative;margin:var(--bs-popover-arrow-height)}:host .popover-arrow{position:absolute}:host.bs-popover-top .popover-arrow{bottom:calc(-1 * var(--bs-popover-arrow-height));left:calc(50% - var(--bs-popover-arrow-width) / 2)}:host.bs-popover-bottom .popover-arrow{top:calc(-1 * var(--bs-popover-arrow-height));left:calc(50% - var(--bs-popover-arrow-width) / 2)}:host.bs-popover-start .popover-arrow{right:calc(-1 * var(--bs-popover-arrow-height));top:calc(50% - var(--bs-popover-arrow-width) / 2)}:host.bs-popover-end .popover-arrow{left:calc(-1 * var(--bs-popover-arrow-height));top:calc(50% - var(--bs-popover-arrow-width) / 2)}[dir=rtl] :host.bs-popover-start .popover-arrow{right:unset!important;left:calc(-1 * var(--bs-popover-arrow-height));transform:rotate(180deg)}[dir=rtl] :host.bs-popover-end .popover-arrow{left:unset!important;right:calc(-1 * var(--bs-popover-arrow-height));transform:rotate(180deg)}\n"] }]
28
+ }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }] });
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci13cmFwcGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nMC9wb3BvdmVyL3BvcG92ZXItd3JhcHBlci9wb3BvdmVyLXdyYXBwZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmcwL3BvcG92ZXIvcG9wb3Zlci13cmFwcGVyL3BvcG92ZXItd3JhcHBlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUF5Qix1QkFBdUIsRUFBVSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFL0csT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7QUFXL0MsTUFBTSxPQUFPLHVCQUF1QjtJQU1aO0lBQWlDO0lBTHJELFNBQVMsQ0FBb0I7SUFDN0IsTUFBTSxDQUFVO0lBQ2hCLE9BQU8sQ0FBaUI7SUFDZCxZQUFZLENBQVc7SUFFakMsWUFBb0IsV0FBdUIsRUFBVSxTQUFvQjtRQUFyRCxnQkFBVyxHQUFYLFdBQVcsQ0FBWTtRQUFVLGNBQVMsR0FBVCxTQUFTLENBQVc7SUFDekUsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxPQUFPLFlBQVksV0FBVyxDQUFDO1FBQ3hELE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDO1FBQ3pDLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLENBQUMsRUFBRSxNQUFNLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDbEQsQ0FBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxhQUFhLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzVHLENBQUM7d0dBZFEsdUJBQXVCOzRGQUF2Qix1QkFBdUIsZ0hDYnBDLHdTQVFNLHU5QkRHUSxZQUFZOzs0RkFFYix1QkFBdUI7a0JBVG5DLFNBQVM7K0JBQ0kscUJBQXFCLFlBQ3JCLG1CQUFtQixtQkFHWix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUCxDQUFDLFlBQVksQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgUmVuZGVyZXIyLCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgT25Jbml0LCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBQb3BvdmVyQ29udGVudCwgUG9wb3ZlclBsYWNlbWVudCB9IGZyb20gJy4uL3R5cGVzJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdqc3MtcG9wb3Zlci13cmFwcGVyJyxcclxuICAgIGV4cG9ydEFzOiAnanNzUG9wb3ZlcldyYXBwZXInLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vcG9wb3Zlci13cmFwcGVyLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vcG9wb3Zlci13cmFwcGVyLmNvbXBvbmVudC5odG1sJyxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQb3BvdmVyV3JhcHBlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgICBwbGFjZW1lbnQhOiBQb3BvdmVyUGxhY2VtZW50O1xyXG4gICAgaGVhZGVyPzogc3RyaW5nO1xyXG4gICAgY29udGVudDogUG9wb3ZlckNvbnRlbnQ7XHJcbiAgICBwcm90ZWN0ZWQgX2hhc1RlbXBsYXRlITogYm9vbGVhbjtcclxuXHJcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmLCBwcml2YXRlIF9yZW5kZXJlcjogUmVuZGVyZXIyLCkge1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX2hhc1RlbXBsYXRlID0gdGhpcy5jb250ZW50IGluc3RhbmNlb2YgVGVtcGxhdGVSZWY7XHJcbiAgICAgICAgY29uc3QgZSA9IHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcclxuICAgICAgICB0aGlzLl9yZW5kZXJlci5zZXRBdHRyaWJ1dGUoZSwgJ3JvbGUnLCAndG9vbHRpcCcpO1xyXG4gICAgICAgIFsncG9wb3ZlcicsICdmYWRlJywgJ3Nob3cnLCAnYnMtcG9wb3Zlci0nICsgdGhpcy5wbGFjZW1lbnRdLmZvckVhY2goYyA9PiB0aGlzLl9yZW5kZXJlci5hZGRDbGFzcyhlLCBjKSk7XHJcbiAgICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInBvcG92ZXItYXJyb3dcIj48L2Rpdj5cclxuPGgzIGNsYXNzPVwicG9wb3Zlci1oZWFkZXJcIiAqbmdJZj1cImhlYWRlclwiPnt7aGVhZGVyfX08L2gzPlxyXG48ZGl2IGNsYXNzPVwicG9wb3Zlci1ib2R5XCI+XHJcbiAgICBAaWYoX2hhc1RlbXBsYXRlKSB7XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCIkYW55KGNvbnRlbnQpXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICB9QGVsc2V7XHJcbiAgICAgICAge3tjb250ZW50fX1cclxuICAgIH1cclxuPC9kaXY+Il19
@@ -0,0 +1,140 @@
1
+ import { Directive, HostListener, input } from '@angular/core';
2
+ import { ComponentPortal } from '@angular/cdk/portal';
3
+ import { PopoverWrapperComponent } from './popover-wrapper/popover-wrapper.component';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/cdk/overlay";
6
+ export class PopoverDirective {
7
+ _overlayService;
8
+ _elementRef;
9
+ _viewRef;
10
+ header = input();
11
+ content = input(undefined, { alias: 'ng0Popover' });
12
+ placement = input('bottom');
13
+ triggerBy = input('click');
14
+ _portal;
15
+ _overlayRef;
16
+ constructor(_overlayService, _elementRef, _viewRef) {
17
+ this._overlayService = _overlayService;
18
+ this._elementRef = _elementRef;
19
+ this._viewRef = _viewRef;
20
+ }
21
+ ngOnInit() {
22
+ this._portal = new ComponentPortal(PopoverWrapperComponent, this._viewRef);
23
+ }
24
+ _createOverlay() {
25
+ let wrapperInstance;
26
+ const scrollStrategy = this._overlayService.scrollStrategies.reposition();
27
+ const positionStrategy = this._overlayService.position()
28
+ .flexibleConnectedTo(this._elementRef)
29
+ .withPositions(this._getPositions());
30
+ positionStrategy.positionChanges.subscribe(p => {
31
+ // wrapperInstance.placement = (p.connectionPair as any).key;
32
+ });
33
+ this._overlayRef = this._overlayService.create({ scrollStrategy, positionStrategy });
34
+ wrapperInstance = this._overlayRef.attach(this._portal).instance;
35
+ wrapperInstance.header = this.header();
36
+ wrapperInstance.content = this.content();
37
+ wrapperInstance.placement = this.placement();
38
+ }
39
+ _disposeOverlay() {
40
+ if (this._overlayRef) {
41
+ this._overlayRef.dispose();
42
+ this._overlayRef = undefined;
43
+ }
44
+ }
45
+ _toggleOverlay() {
46
+ if (this._overlayRef) {
47
+ this._disposeOverlay();
48
+ }
49
+ else {
50
+ this._createOverlay();
51
+ }
52
+ }
53
+ _getPositions() {
54
+ const c = 'center', t = 'top', b = 'bottom', s = 'start', e = 'end';
55
+ const top = { key: t, originX: c, originY: t, overlayX: c, overlayY: b, };
56
+ const bottom = { key: b, originX: c, originY: b, overlayX: c, overlayY: t, };
57
+ const start = { key: s, originX: s, originY: c, overlayX: e, overlayY: c, };
58
+ const end = { key: e, originX: e, originY: c, overlayX: s, overlayY: c, };
59
+ let positions;
60
+ switch (this.placement()) {
61
+ case 'bottom':
62
+ positions = [bottom, top];
63
+ break;
64
+ case 'start':
65
+ positions = [start, start];
66
+ break;
67
+ case 'end':
68
+ positions = [end, start];
69
+ break;
70
+ case 'top':
71
+ positions = [top, bottom];
72
+ break;
73
+ default:
74
+ positions = [bottom, top];
75
+ }
76
+ return positions;
77
+ }
78
+ _onClick() {
79
+ if (this.triggerBy() === 'click') {
80
+ this._toggleOverlay();
81
+ }
82
+ }
83
+ _onDblclick() {
84
+ if (this.triggerBy() === 'dblclick') {
85
+ this._toggleOverlay();
86
+ }
87
+ }
88
+ _onMouseEnter() {
89
+ if (this.triggerBy() === 'hover') {
90
+ this._toggleOverlay();
91
+ }
92
+ }
93
+ _onMouseLeave() {
94
+ if (this.triggerBy() === 'hover') {
95
+ this._toggleOverlay();
96
+ }
97
+ }
98
+ _onFocus() {
99
+ if (this.triggerBy() === 'focus') {
100
+ this._toggleOverlay();
101
+ }
102
+ }
103
+ _onFocusout() {
104
+ if (this.triggerBy() === 'focus') {
105
+ this._toggleOverlay();
106
+ }
107
+ }
108
+ ngOnDestroy() {
109
+ this._disposeOverlay();
110
+ }
111
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: PopoverDirective, deps: [{ token: i1.Overlay }, { token: i0.ElementRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
112
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.11", type: PopoverDirective, isStandalone: true, selector: "[ng0Popover]", inputs: { header: { classPropertyName: "header", publicName: "header", isSignal: true, isRequired: false, transformFunction: null }, content: { classPropertyName: "content", publicName: "ng0Popover", isSignal: true, isRequired: false, transformFunction: null }, placement: { classPropertyName: "placement", publicName: "placement", isSignal: true, isRequired: false, transformFunction: null }, triggerBy: { classPropertyName: "triggerBy", publicName: "triggerBy", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "click": "_onClick()", "dblclick": "_onDblclick()", "mouseenter": "_onMouseEnter()", "mouseleave": "_onMouseLeave()", "focus": "_onFocus()", "focusout": "_onFocusout()" } }, exportAs: ["ng0Popover"], ngImport: i0 });
113
+ }
114
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: PopoverDirective, decorators: [{
115
+ type: Directive,
116
+ args: [{
117
+ selector: '[ng0Popover]',
118
+ exportAs: 'ng0Popover',
119
+ standalone: true
120
+ }]
121
+ }], ctorParameters: () => [{ type: i1.Overlay }, { type: i0.ElementRef }, { type: i0.ViewContainerRef }], propDecorators: { _onClick: [{
122
+ type: HostListener,
123
+ args: ['click']
124
+ }], _onDblclick: [{
125
+ type: HostListener,
126
+ args: ['dblclick']
127
+ }], _onMouseEnter: [{
128
+ type: HostListener,
129
+ args: ['mouseenter']
130
+ }], _onMouseLeave: [{
131
+ type: HostListener,
132
+ args: ['mouseleave']
133
+ }], _onFocus: [{
134
+ type: HostListener,
135
+ args: ['focus']
136
+ }], _onFocusout: [{
137
+ type: HostListener,
138
+ args: ['focusout']
139
+ }] } });
140
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZzAvcG9wb3Zlci9wb3BvdmVyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsU0FBUyxFQUF3RCxZQUFZLEVBQzdFLEtBQUssRUFDUixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sNkNBQTZDLENBQUM7OztBQVF0RixNQUFNLE9BQU8sZ0JBQWdCO0lBVWI7SUFDQTtJQUNBO0lBWEwsTUFBTSxHQUFHLEtBQUssRUFBVSxDQUFDO0lBQ3pCLE9BQU8sR0FBRyxLQUFLLENBQWlCLFNBQVMsRUFBRSxFQUFFLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDO0lBQ3BFLFNBQVMsR0FBRyxLQUFLLENBQW1CLFFBQVEsQ0FBQyxDQUFDO0lBQzlDLFNBQVMsR0FBRyxLQUFLLENBQWlCLE9BQU8sQ0FBQyxDQUFDO0lBRTFDLE9BQU8sQ0FBNEM7SUFDbkQsV0FBVyxDQUFjO0lBRWpDLFlBQ1ksZUFBd0IsRUFDeEIsV0FBdUIsRUFDdkIsUUFBMEI7UUFGMUIsb0JBQWUsR0FBZixlQUFlLENBQVM7UUFDeEIsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFDdkIsYUFBUSxHQUFSLFFBQVEsQ0FBa0I7SUFDdEMsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksZUFBZSxDQUFDLHVCQUF1QixFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUMvRSxDQUFDO0lBRU8sY0FBYztRQUNsQixJQUFJLGVBQXdDLENBQUM7UUFFN0MsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxnQkFBZ0IsQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUMxRSxNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxFQUFFO2FBQ25ELG1CQUFtQixDQUFDLElBQUksQ0FBQyxXQUFXLENBQUM7YUFDckMsYUFBYSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDO1FBRXpDLGdCQUFnQixDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDM0MsNkRBQTZEO1FBQ2pFLENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxFQUFFLGNBQWMsRUFBRSxnQkFBZ0IsRUFBRSxDQUFDLENBQUM7UUFFckYsZUFBZSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxRQUFRLENBQUM7UUFDakUsZUFBZSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDdkMsZUFBZSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDekMsZUFBZSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDakQsQ0FBQztJQUVPLGVBQWU7UUFDbkIsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDbkIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUMzQixJQUFJLENBQUMsV0FBVyxHQUFHLFNBQVMsQ0FBQztRQUNqQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGNBQWM7UUFDbEIsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDbkIsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQzNCLENBQUM7YUFBTSxDQUFDO1lBQ0osSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQzFCLENBQUM7SUFDTCxDQUFDO0lBRU8sYUFBYTtRQUNqQixNQUFNLENBQUMsR0FBRyxRQUFRLEVBQUUsQ0FBQyxHQUFHLEtBQUssRUFBRSxDQUFDLEdBQUcsUUFBUSxFQUFFLENBQUMsR0FBRyxPQUFPLEVBQUUsQ0FBQyxHQUFHLEtBQUssQ0FBQztRQUNwRSxNQUFNLEdBQUcsR0FBRyxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLFFBQVEsRUFBRSxDQUFDLEVBQUUsUUFBUSxFQUFFLENBQUMsR0FBRyxDQUFDO1FBQzFFLE1BQU0sTUFBTSxHQUFHLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsUUFBUSxFQUFFLENBQUMsRUFBRSxRQUFRLEVBQUUsQ0FBQyxHQUFHLENBQUM7UUFDN0UsTUFBTSxLQUFLLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxRQUFRLEVBQUUsQ0FBQyxFQUFFLFFBQVEsRUFBRSxDQUFDLEdBQUcsQ0FBQztRQUM1RSxNQUFNLEdBQUcsR0FBRyxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLFFBQVEsRUFBRSxDQUFDLEVBQUUsUUFBUSxFQUFFLENBQUMsR0FBRyxDQUFDO1FBRTFFLElBQUksU0FBcUIsQ0FBQztRQUUxQixRQUFRLElBQUksQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDO1lBQ3ZCLEtBQUssUUFBUTtnQkFDVCxTQUFTLEdBQUcsQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUM7Z0JBQzFCLE1BQU07WUFDVixLQUFLLE9BQU87Z0JBQ1IsU0FBUyxHQUFHLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDO2dCQUMzQixNQUFNO1lBQ1YsS0FBSyxLQUFLO2dCQUNOLFNBQVMsR0FBRyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztnQkFDekIsTUFBTTtZQUNWLEtBQUssS0FBSztnQkFDTixTQUFTLEdBQUcsQ0FBQyxHQUFHLEVBQUUsTUFBTSxDQUFDLENBQUM7Z0JBQzFCLE1BQU07WUFDVjtnQkFDSSxTQUFTLEdBQUcsQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDbEMsQ0FBQztRQUVELE9BQU8sU0FBUyxDQUFDO0lBQ3JCLENBQUM7SUFFOEIsUUFBUTtRQUNuQyxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsS0FBSyxPQUFPLEVBQUUsQ0FBQztZQUMvQixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUE7UUFDekIsQ0FBQztJQUNMLENBQUM7SUFFaUMsV0FBVztRQUN6QyxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsS0FBSyxVQUFVLEVBQUUsQ0FBQztZQUNsQyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUE7UUFDekIsQ0FBQztJQUNMLENBQUM7SUFFbUMsYUFBYTtRQUM3QyxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsS0FBSyxPQUFPLEVBQUUsQ0FBQztZQUMvQixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUE7UUFDekIsQ0FBQztJQUNMLENBQUM7SUFFbUMsYUFBYTtRQUM3QyxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsS0FBSyxPQUFPLEVBQUUsQ0FBQztZQUMvQixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUE7UUFDekIsQ0FBQztJQUNMLENBQUM7SUFFOEIsUUFBUTtRQUNuQyxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsS0FBSyxPQUFPLEVBQUUsQ0FBQztZQUMvQixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUE7UUFDekIsQ0FBQztJQUNMLENBQUM7SUFFaUMsV0FBVztRQUN6QyxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsS0FBSyxPQUFPLEVBQUUsQ0FBQztZQUMvQixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUE7UUFDekIsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXO1FBQ1AsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQzNCLENBQUM7d0dBekhRLGdCQUFnQjs0RkFBaEIsZ0JBQWdCOzs0RkFBaEIsZ0JBQWdCO2tCQUw1QixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxjQUFjO29CQUN4QixRQUFRLEVBQUUsWUFBWTtvQkFDdEIsVUFBVSxFQUFFLElBQUk7aUJBQ25CO29JQW9Ga0MsUUFBUTtzQkFBdEMsWUFBWTt1QkFBQyxPQUFPO2dCQU1hLFdBQVc7c0JBQTVDLFlBQVk7dUJBQUMsVUFBVTtnQkFNWSxhQUFhO3NCQUFoRCxZQUFZO3VCQUFDLFlBQVk7Z0JBTVUsYUFBYTtzQkFBaEQsWUFBWTt1QkFBQyxZQUFZO2dCQU1LLFFBQVE7c0JBQXRDLFlBQVk7dUJBQUMsT0FBTztnQkFNYSxXQUFXO3NCQUE1QyxZQUFZO3VCQUFDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gICAgRGlyZWN0aXZlLCBUZW1wbGF0ZVJlZiwgVmlld0NvbnRhaW5lclJlZiwgT25EZXN0cm95LCBFbGVtZW50UmVmLCBIb3N0TGlzdGVuZXIsIE9uSW5pdCxcclxuICAgIGlucHV0XHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE92ZXJsYXksIE92ZXJsYXlSZWYgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XHJcbmltcG9ydCB7IENvbXBvbmVudFBvcnRhbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xyXG5pbXBvcnQgeyBQb3BvdmVyV3JhcHBlckNvbXBvbmVudCB9IGZyb20gJy4vcG9wb3Zlci13cmFwcGVyL3BvcG92ZXItd3JhcHBlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBQb3BvdmVyQ29udGVudCwgUG9wb3ZlclBsYWNlbWVudCwgUG9wb3ZlclRyaWdnZXIgfSBmcm9tICcuL3R5cGVzJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gICAgc2VsZWN0b3I6ICdbbmcwUG9wb3Zlcl0nLFxyXG4gICAgZXhwb3J0QXM6ICduZzBQb3BvdmVyJyxcclxuICAgIHN0YW5kYWxvbmU6IHRydWVcclxufSlcclxuZXhwb3J0IGNsYXNzIFBvcG92ZXJEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgICBwdWJsaWMgaGVhZGVyID0gaW5wdXQ8c3RyaW5nPigpO1xyXG4gICAgcHVibGljIGNvbnRlbnQgPSBpbnB1dDxQb3BvdmVyQ29udGVudD4odW5kZWZpbmVkLCB7IGFsaWFzOiAnbmcwUG9wb3ZlcicgfSk7XHJcbiAgICBwdWJsaWMgcGxhY2VtZW50ID0gaW5wdXQ8UG9wb3ZlclBsYWNlbWVudD4oJ2JvdHRvbScpO1xyXG4gICAgcHVibGljIHRyaWdnZXJCeSA9IGlucHV0PFBvcG92ZXJUcmlnZ2VyPignY2xpY2snKTtcclxuXHJcbiAgICBwcml2YXRlIF9wb3J0YWwhOiBDb21wb25lbnRQb3J0YWw8UG9wb3ZlcldyYXBwZXJDb21wb25lbnQ+O1xyXG4gICAgcHJpdmF0ZSBfb3ZlcmxheVJlZj86IE92ZXJsYXlSZWY7XHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHJpdmF0ZSBfb3ZlcmxheVNlcnZpY2U6IE92ZXJsYXksXHJcbiAgICAgICAgcHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZixcclxuICAgICAgICBwcml2YXRlIF92aWV3UmVmOiBWaWV3Q29udGFpbmVyUmVmKSB7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fcG9ydGFsID0gbmV3IENvbXBvbmVudFBvcnRhbChQb3BvdmVyV3JhcHBlckNvbXBvbmVudCwgdGhpcy5fdmlld1JlZik7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBfY3JlYXRlT3ZlcmxheSgpOiB2b2lkIHtcclxuICAgICAgICBsZXQgd3JhcHBlckluc3RhbmNlOiBQb3BvdmVyV3JhcHBlckNvbXBvbmVudDtcclxuXHJcbiAgICAgICAgY29uc3Qgc2Nyb2xsU3RyYXRlZ3kgPSB0aGlzLl9vdmVybGF5U2VydmljZS5zY3JvbGxTdHJhdGVnaWVzLnJlcG9zaXRpb24oKTtcclxuICAgICAgICBjb25zdCBwb3NpdGlvblN0cmF0ZWd5ID0gdGhpcy5fb3ZlcmxheVNlcnZpY2UucG9zaXRpb24oKVxyXG4gICAgICAgICAgICAuZmxleGlibGVDb25uZWN0ZWRUbyh0aGlzLl9lbGVtZW50UmVmKVxyXG4gICAgICAgICAgICAud2l0aFBvc2l0aW9ucyh0aGlzLl9nZXRQb3NpdGlvbnMoKSk7XHJcblxyXG4gICAgICAgIHBvc2l0aW9uU3RyYXRlZ3kucG9zaXRpb25DaGFuZ2VzLnN1YnNjcmliZShwID0+IHtcclxuICAgICAgICAgICAgLy8gd3JhcHBlckluc3RhbmNlLnBsYWNlbWVudCA9IChwLmNvbm5lY3Rpb25QYWlyIGFzIGFueSkua2V5O1xyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgICB0aGlzLl9vdmVybGF5UmVmID0gdGhpcy5fb3ZlcmxheVNlcnZpY2UuY3JlYXRlKHsgc2Nyb2xsU3RyYXRlZ3ksIHBvc2l0aW9uU3RyYXRlZ3kgfSk7XHJcblxyXG4gICAgICAgIHdyYXBwZXJJbnN0YW5jZSA9IHRoaXMuX292ZXJsYXlSZWYuYXR0YWNoKHRoaXMuX3BvcnRhbCkuaW5zdGFuY2U7XHJcbiAgICAgICAgd3JhcHBlckluc3RhbmNlLmhlYWRlciA9IHRoaXMuaGVhZGVyKCk7XHJcbiAgICAgICAgd3JhcHBlckluc3RhbmNlLmNvbnRlbnQgPSB0aGlzLmNvbnRlbnQoKTtcclxuICAgICAgICB3cmFwcGVySW5zdGFuY2UucGxhY2VtZW50ID0gdGhpcy5wbGFjZW1lbnQoKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9kaXNwb3NlT3ZlcmxheSgpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy5fb3ZlcmxheVJlZikge1xyXG4gICAgICAgICAgICB0aGlzLl9vdmVybGF5UmVmLmRpc3Bvc2UoKTtcclxuICAgICAgICAgICAgdGhpcy5fb3ZlcmxheVJlZiA9IHVuZGVmaW5lZDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBfdG9nZ2xlT3ZlcmxheSgpIHtcclxuICAgICAgICBpZiAodGhpcy5fb3ZlcmxheVJlZikge1xyXG4gICAgICAgICAgICB0aGlzLl9kaXNwb3NlT3ZlcmxheSgpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMuX2NyZWF0ZU92ZXJsYXkoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBfZ2V0UG9zaXRpb25zKCk6IGFueVtdIHtcclxuICAgICAgICBjb25zdCBjID0gJ2NlbnRlcicsIHQgPSAndG9wJywgYiA9ICdib3R0b20nLCBzID0gJ3N0YXJ0JywgZSA9ICdlbmQnO1xyXG4gICAgICAgIGNvbnN0IHRvcCA9IHsga2V5OiB0LCBvcmlnaW5YOiBjLCBvcmlnaW5ZOiB0LCBvdmVybGF5WDogYywgb3ZlcmxheVk6IGIsIH07XHJcbiAgICAgICAgY29uc3QgYm90dG9tID0geyBrZXk6IGIsIG9yaWdpblg6IGMsIG9yaWdpblk6IGIsIG92ZXJsYXlYOiBjLCBvdmVybGF5WTogdCwgfTtcclxuICAgICAgICBjb25zdCBzdGFydCA9IHsga2V5OiBzLCBvcmlnaW5YOiBzLCBvcmlnaW5ZOiBjLCBvdmVybGF5WDogZSwgb3ZlcmxheVk6IGMsIH07XHJcbiAgICAgICAgY29uc3QgZW5kID0geyBrZXk6IGUsIG9yaWdpblg6IGUsIG9yaWdpblk6IGMsIG92ZXJsYXlYOiBzLCBvdmVybGF5WTogYywgfTtcclxuXHJcbiAgICAgICAgbGV0IHBvc2l0aW9uczogQXJyYXk8YW55PjtcclxuXHJcbiAgICAgICAgc3dpdGNoICh0aGlzLnBsYWNlbWVudCgpKSB7XHJcbiAgICAgICAgICAgIGNhc2UgJ2JvdHRvbSc6XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnMgPSBbYm90dG9tLCB0b3BdO1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgIGNhc2UgJ3N0YXJ0JzpcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9ucyA9IFtzdGFydCwgc3RhcnRdO1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgIGNhc2UgJ2VuZCc6XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnMgPSBbZW5kLCBzdGFydF07XHJcbiAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgY2FzZSAndG9wJzpcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9ucyA9IFt0b3AsIGJvdHRvbV07XHJcbiAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9ucyA9IFtib3R0b20sIHRvcF07XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gcG9zaXRpb25zO1xyXG4gICAgfVxyXG5cclxuICAgIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJykgcHJpdmF0ZSBfb25DbGljaygpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy50cmlnZ2VyQnkoKSA9PT0gJ2NsaWNrJykge1xyXG4gICAgICAgICAgICB0aGlzLl90b2dnbGVPdmVybGF5KClcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQEhvc3RMaXN0ZW5lcignZGJsY2xpY2snKSBwcml2YXRlIF9vbkRibGNsaWNrKCk6IHZvaWQge1xyXG4gICAgICAgIGlmICh0aGlzLnRyaWdnZXJCeSgpID09PSAnZGJsY2xpY2snKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX3RvZ2dsZU92ZXJsYXkoKVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBASG9zdExpc3RlbmVyKCdtb3VzZWVudGVyJykgcHJpdmF0ZSBfb25Nb3VzZUVudGVyKCk6IHZvaWQge1xyXG4gICAgICAgIGlmICh0aGlzLnRyaWdnZXJCeSgpID09PSAnaG92ZXInKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX3RvZ2dsZU92ZXJsYXkoKVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBASG9zdExpc3RlbmVyKCdtb3VzZWxlYXZlJykgcHJpdmF0ZSBfb25Nb3VzZUxlYXZlKCk6IHZvaWQge1xyXG4gICAgICAgIGlmICh0aGlzLnRyaWdnZXJCeSgpID09PSAnaG92ZXInKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX3RvZ2dsZU92ZXJsYXkoKVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBASG9zdExpc3RlbmVyKCdmb2N1cycpIHByaXZhdGUgX29uRm9jdXMoKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHRoaXMudHJpZ2dlckJ5KCkgPT09ICdmb2N1cycpIHtcclxuICAgICAgICAgICAgdGhpcy5fdG9nZ2xlT3ZlcmxheSgpXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBIb3N0TGlzdGVuZXIoJ2ZvY3Vzb3V0JykgcHJpdmF0ZSBfb25Gb2N1c291dCgpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy50cmlnZ2VyQnkoKSA9PT0gJ2ZvY3VzJykge1xyXG4gICAgICAgICAgICB0aGlzLl90b2dnbGVPdmVybGF5KClcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fZGlzcG9zZU92ZXJsYXkoKTtcclxuICAgIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,2 @@
1
+ export * from './popover.directive';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25nMC9wb3BvdmVyL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxxQkFBcUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vcG9wb3Zlci5kaXJlY3RpdmUnOyJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZzAvcG9wb3Zlci90eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGVtcGxhdGVSZWYgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5cclxuZXhwb3J0IHR5cGUgUG9wb3ZlclBsYWNlbWVudCA9ICd0b3AnIHwgJ2JvdHRvbScgfCAnc3RhcnQnIHwgJ2VuZCc7XHJcbmV4cG9ydCB0eXBlIFBvcG92ZXJUcmlnZ2VyID0gJ2NsaWNrJyB8ICdkYmxjbGljaycgfCAnaG92ZXInIHwgJ2ZvY3VzJztcclxuZXhwb3J0IHR5cGUgUG9wb3ZlckNvbnRlbnQgPSBzdHJpbmcgfCBUZW1wbGF0ZVJlZjxhbnk+IHwgdW5kZWZpbmVkIHwgbnVsbDtcclxuIl19
@@ -0,0 +1,5 @@
1
+ /*
2
+ * Public API Surface of bootkit
3
+ */
4
+ export * from './lib';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25nMC9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsT0FBTyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIGJvb3RraXRcclxuICovXHJcblxyXG5leHBvcnQgKiBmcm9tICcuL2xpYic7XHJcbiBcclxuIFxyXG4iXX0=
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9vdGtpdC1uZzAtdG9hc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZzAvdG9hc3QvYm9vdGtpdC1uZzAtdG9hc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
@@ -0,0 +1,4 @@
1
+ export * from './types';
2
+ export * from './toast-ref';
3
+ export * from './toast.service';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25nMC90b2FzdC9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsU0FBUyxDQUFDO0FBQ3hCLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsaUJBQWlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3R5cGVzJztcclxuZXhwb3J0ICogZnJvbSAnLi90b2FzdC1yZWYnO1xyXG5leHBvcnQgKiBmcm9tICcuL3RvYXN0LnNlcnZpY2UnOyJdfQ==
@@ -0,0 +1,27 @@
1
+ import { Subject, timer } from "rxjs";
2
+ export class ToastRef {
3
+ config;
4
+ overlayRef;
5
+ _isOpen = true;
6
+ _closedSubject = new Subject();
7
+ closed = this._closedSubject.asObservable();
8
+ constructor(config, overlayRef) {
9
+ this.config = config;
10
+ this.overlayRef = overlayRef;
11
+ }
12
+ get isOpen() {
13
+ return this._isOpen;
14
+ }
15
+ close() {
16
+ if (this._isOpen) {
17
+ this._closedSubject.next(0);
18
+ this._isOpen = false;
19
+ // Wait to ':leave' animation is done and then dispose the overlay
20
+ timer(100).subscribe(x => {
21
+ this.overlayRef.detach();
22
+ this.overlayRef.dispose();
23
+ });
24
+ }
25
+ }
26
+ }
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3QtcmVmLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmcwL3RvYXN0L3RvYXN0LXJlZi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUd0QyxNQUFNLE9BQU8sUUFBUTtJQUtXO0lBQTZCO0lBSmpELE9BQU8sR0FBRyxJQUFJLENBQUM7SUFDZixjQUFjLEdBQUcsSUFBSSxPQUFPLEVBQU8sQ0FBQztJQUNyQyxNQUFNLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUVuRCxZQUE0QixNQUFtQixFQUFVLFVBQXNCO1FBQW5ELFdBQU0sR0FBTixNQUFNLENBQWE7UUFBVSxlQUFVLEdBQVYsVUFBVSxDQUFZO0lBQy9FLENBQUM7SUFFRCxJQUFXLE1BQU07UUFDYixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDeEIsQ0FBQztJQUVNLEtBQUs7UUFDUixJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNmLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzVCLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1lBRXJCLGtFQUFrRTtZQUNsRSxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFO2dCQUNyQixJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxDQUFDO2dCQUN6QixJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQzlCLENBQUMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQztJQUNMLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE92ZXJsYXlSZWYgfSBmcm9tIFwiQGFuZ3VsYXIvY2RrL292ZXJsYXlcIjtcclxuaW1wb3J0IHsgU3ViamVjdCwgdGltZXIgfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgeyBUb2FzdENvbmZpZyB9IGZyb20gXCIuL3R5cGVzXCI7XHJcblxyXG5leHBvcnQgY2xhc3MgVG9hc3RSZWYge1xyXG4gICAgcHJpdmF0ZSBfaXNPcGVuID0gdHJ1ZTtcclxuICAgIHByaXZhdGUgX2Nsb3NlZFN1YmplY3QgPSBuZXcgU3ViamVjdDxhbnk+KCk7XHJcbiAgICBwdWJsaWMgY2xvc2VkID0gdGhpcy5fY2xvc2VkU3ViamVjdC5hc09ic2VydmFibGUoKTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgcmVhZG9ubHkgY29uZmlnOiBUb2FzdENvbmZpZywgcHJpdmF0ZSBvdmVybGF5UmVmOiBPdmVybGF5UmVmKSB7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGdldCBpc09wZW4oKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2lzT3BlbjtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgY2xvc2UoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuX2lzT3Blbikge1xyXG4gICAgICAgICAgICB0aGlzLl9jbG9zZWRTdWJqZWN0Lm5leHQoMCk7XHJcbiAgICAgICAgICAgIHRoaXMuX2lzT3BlbiA9IGZhbHNlO1xyXG5cclxuICAgICAgICAgICAgLy8gV2FpdCB0byAnOmxlYXZlJyBhbmltYXRpb24gaXMgZG9uZSBhbmQgdGhlbiBkaXNwb3NlIHRoZSBvdmVybGF5XHJcbiAgICAgICAgICAgIHRpbWVyKDEwMCkuc3Vic2NyaWJlKHggPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5vdmVybGF5UmVmLmRldGFjaCgpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5vdmVybGF5UmVmLmRpc3Bvc2UoKTtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,68 @@
1
+ import { trigger, style, transition, animate, state } from '@angular/animations';
2
+ import { Component, ChangeDetectionStrategy, HostBinding, TemplateRef } from '@angular/core';
3
+ import { CommonModule } from '@angular/common';
4
+ import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/common";
7
+ export class ToastComponent {
8
+ _changeDetectorRef;
9
+ _renderer;
10
+ _elementRef;
11
+ _destroyRef;
12
+ toastRef;
13
+ _config;
14
+ _show = true;
15
+ _hasBodyTemplate;
16
+ _hasHeaderTemplate;
17
+ constructor(_changeDetectorRef, _renderer, _elementRef, _destroyRef) {
18
+ this._changeDetectorRef = _changeDetectorRef;
19
+ this._renderer = _renderer;
20
+ this._elementRef = _elementRef;
21
+ this._destroyRef = _destroyRef;
22
+ }
23
+ ngOnInit() {
24
+ this._config = this.toastRef.config;
25
+ this._hasHeaderTemplate = this._config.header instanceof TemplateRef;
26
+ this._hasBodyTemplate = this._config.body instanceof TemplateRef;
27
+ let style = this._config.style ?? 'success';
28
+ ['toast', 'show', `text-bg-${style}`].forEach(x => this._renderer.addClass(this._elementRef.nativeElement, x));
29
+ this.toastRef.closed.pipe(takeUntilDestroyed(this._destroyRef)).subscribe(x => {
30
+ this._show = false;
31
+ this._changeDetectorRef.markForCheck();
32
+ });
33
+ }
34
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: ToastComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.DestroyRef }], target: i0.ɵɵFactoryTarget.Component });
35
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.11", type: ToastComponent, isStandalone: true, selector: "ng0-toast", host: { properties: { "@host": "this._show" } }, exportAs: ["ng0Toast"], ngImport: i0, template: "<div class=\"toast-header\" *ngIf=\"this._config.header\">\r\n @if(_hasHeaderTemplate) {\r\n <ng-container [ngTemplateOutlet]=\"$any(_config.header)\"></ng-container>\r\n }@else {\r\n <span *ngIf=\"_config.icon\" class=\"me-2\" [ngClass]=\"_config.icon\"></span>\r\n <strong class=\"me-auto\">{{this._config.header}}</strong>\r\n <small *ngIf=\"_config.hint\">{{_config.hint}}</small>\r\n <button *ngIf=\"_config?.closeButton == undefined || _config?.closeButton\"\r\n type=\"button\"\r\n class=\"btn-close\"\r\n aria-label=\"Close\"\r\n (click)=\"toastRef.close()\">\r\n </button>\r\n }\r\n</div>\r\n\r\n<div class=\"toast-body\" *ngIf=\"this._config.body\">\r\n @if(_hasBodyTemplate) {\r\n <ng-container [ngTemplateOutlet]=\"$any(_config.body)\"></ng-container>\r\n }@else {\r\n {{this._config.body}}\r\n }\r\n</div>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], animations: [
36
+ trigger('host', [
37
+ transition(':enter', [
38
+ style({ opacity: 0, transform: 'scale(.85)' }),
39
+ animate('.1s', style({ opacity: '1', transform: 'scale(1)' })),
40
+ ]),
41
+ state('false', style({ opacity: 0, transform: 'scale(.85)' })),
42
+ transition('true => false', [
43
+ animate('.1s'),
44
+ ]),
45
+ ]),
46
+ ], changeDetection: i0.ChangeDetectionStrategy.OnPush });
47
+ }
48
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: ToastComponent, decorators: [{
49
+ type: Component,
50
+ args: [{ selector: 'ng0-toast', exportAs: 'ng0Toast', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [
51
+ CommonModule,
52
+ ], animations: [
53
+ trigger('host', [
54
+ transition(':enter', [
55
+ style({ opacity: 0, transform: 'scale(.85)' }),
56
+ animate('.1s', style({ opacity: '1', transform: 'scale(1)' })),
57
+ ]),
58
+ state('false', style({ opacity: 0, transform: 'scale(.85)' })),
59
+ transition('true => false', [
60
+ animate('.1s'),
61
+ ]),
62
+ ]),
63
+ ], template: "<div class=\"toast-header\" *ngIf=\"this._config.header\">\r\n @if(_hasHeaderTemplate) {\r\n <ng-container [ngTemplateOutlet]=\"$any(_config.header)\"></ng-container>\r\n }@else {\r\n <span *ngIf=\"_config.icon\" class=\"me-2\" [ngClass]=\"_config.icon\"></span>\r\n <strong class=\"me-auto\">{{this._config.header}}</strong>\r\n <small *ngIf=\"_config.hint\">{{_config.hint}}</small>\r\n <button *ngIf=\"_config?.closeButton == undefined || _config?.closeButton\"\r\n type=\"button\"\r\n class=\"btn-close\"\r\n aria-label=\"Close\"\r\n (click)=\"toastRef.close()\">\r\n </button>\r\n }\r\n</div>\r\n\r\n<div class=\"toast-body\" *ngIf=\"this._config.body\">\r\n @if(_hasBodyTemplate) {\r\n <ng-container [ngTemplateOutlet]=\"$any(_config.body)\"></ng-container>\r\n }@else {\r\n {{this._config.body}}\r\n }\r\n</div>" }]
64
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i0.DestroyRef }], propDecorators: { _show: [{
65
+ type: HostBinding,
66
+ args: ['@host']
67
+ }] } });
68
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmcwL3RvYXN0L3RvYXN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3Byb2plY3RzL25nMC90b2FzdC90b2FzdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2pGLE9BQU8sRUFBRSxTQUFTLEVBQVUsdUJBQXVCLEVBQWlDLFdBQVcsRUFBeUIsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNKLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7O0FBd0JoRSxNQUFNLE9BQU8sY0FBYztJQVFYO0lBQ0E7SUFDQTtJQUNBO0lBVkwsUUFBUSxDQUFZO0lBQ2pCLE9BQU8sQ0FBZTtJQUNBLEtBQUssR0FBRyxJQUFJLENBQUM7SUFDbkMsZ0JBQWdCLENBQVc7SUFDM0Isa0JBQWtCLENBQVc7SUFFdkMsWUFDWSxrQkFBcUMsRUFDckMsU0FBb0IsRUFDcEIsV0FBdUIsRUFDdkIsV0FBdUI7UUFIdkIsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFtQjtRQUNyQyxjQUFTLEdBQVQsU0FBUyxDQUFXO1FBQ3BCLGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBQ3ZCLGdCQUFXLEdBQVgsV0FBVyxDQUFZO0lBRW5DLENBQUM7SUFFRCxRQUFRO1FBQ0osSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQztRQUNwQyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLFlBQVksV0FBVyxDQUFDO1FBQ3JFLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksWUFBWSxXQUFXLENBQUM7UUFFakUsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLElBQUksU0FBUyxDQUFDO1FBQzVDLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxXQUFXLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMvRyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQzFFLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1lBQ25CLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUMzQyxDQUFDLENBQUMsQ0FBQTtJQUNOLENBQUM7d0dBMUJRLGNBQWM7NEZBQWQsY0FBYyw4SUM3QjNCLDA0QkFzQk0sMkNEUkUsWUFBWSwwWEFFSjtZQUNSLE9BQU8sQ0FBQyxNQUFNLEVBQUU7Z0JBQ1osVUFBVSxDQUFDLFFBQVEsRUFBRTtvQkFDakIsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLENBQUM7b0JBQzlDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBQztpQkFDakUsQ0FBQztnQkFDRixLQUFLLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUM7Z0JBQzlELFVBQVUsQ0FBQyxlQUFlLEVBQUU7b0JBQ3hCLE9BQU8sQ0FBQyxLQUFLLENBQUM7aUJBQ2pCLENBQUM7YUFDTCxDQUFDO1NBQ0w7OzRGQUVRLGNBQWM7a0JBdEIxQixTQUFTOytCQUNJLFdBQVcsWUFDWCxVQUFVLGNBRVIsSUFBSSxtQkFDQyx1QkFBdUIsQ0FBQyxNQUFNLFdBQ3RDO3dCQUNMLFlBQVk7cUJBQ2YsY0FDVzt3QkFDUixPQUFPLENBQUMsTUFBTSxFQUFFOzRCQUNaLFVBQVUsQ0FBQyxRQUFRLEVBQUU7Z0NBQ2pCLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxDQUFDO2dDQUM5QyxPQUFPLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUM7NkJBQ2pFLENBQUM7NEJBQ0YsS0FBSyxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDOzRCQUM5RCxVQUFVLENBQUMsZUFBZSxFQUFFO2dDQUN4QixPQUFPLENBQUMsS0FBSyxDQUFDOzZCQUNqQixDQUFDO3lCQUNMLENBQUM7cUJBQ0w7Z0tBSytCLEtBQUs7c0JBQXBDLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHRyaWdnZXIsIHN0eWxlLCB0cmFuc2l0aW9uLCBhbmltYXRlLCBzdGF0ZSB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIERlc3Ryb3lSZWYsIENoYW5nZURldGVjdG9yUmVmLCBIb3N0QmluZGluZywgUmVuZGVyZXIyLCBFbGVtZW50UmVmLCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBUb2FzdENvbmZpZyB9IGZyb20gJy4vdHlwZXMnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBUb2FzdFJlZiB9IGZyb20gJy4vdG9hc3QtcmVmJztcclxuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ25nMC10b2FzdCcsXHJcbiAgICBleHBvcnRBczogJ25nMFRvYXN0JyxcclxuICAgIHRlbXBsYXRlVXJsOiAndG9hc3QuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gICAgaW1wb3J0czogW1xyXG4gICAgICAgIENvbW1vbk1vZHVsZSxcclxuICAgIF0sXHJcbiAgICBhbmltYXRpb25zOiBbXHJcbiAgICAgICAgdHJpZ2dlcignaG9zdCcsIFtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbignOmVudGVyJywgW1xyXG4gICAgICAgICAgICAgICAgc3R5bGUoeyBvcGFjaXR5OiAwLCB0cmFuc2Zvcm06ICdzY2FsZSguODUpJyB9KSxcclxuICAgICAgICAgICAgICAgIGFuaW1hdGUoJy4xcycsIHN0eWxlKHsgb3BhY2l0eTogJzEnLCB0cmFuc2Zvcm06ICdzY2FsZSgxKScgfSkpLFxyXG4gICAgICAgICAgICBdKSxcclxuICAgICAgICAgICAgc3RhdGUoJ2ZhbHNlJywgc3R5bGUoeyBvcGFjaXR5OiAwLCB0cmFuc2Zvcm06ICdzY2FsZSguODUpJyB9KSksXHJcbiAgICAgICAgICAgIHRyYW5zaXRpb24oJ3RydWUgPT4gZmFsc2UnLCBbXHJcbiAgICAgICAgICAgICAgICBhbmltYXRlKCcuMXMnKSxcclxuICAgICAgICAgICAgXSksXHJcbiAgICAgICAgXSksXHJcbiAgICBdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVG9hc3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gICAgcHVibGljIHRvYXN0UmVmITogVG9hc3RSZWY7XHJcbiAgICBwcm90ZWN0ZWQgX2NvbmZpZyE6IFRvYXN0Q29uZmlnO1xyXG4gICAgQEhvc3RCaW5kaW5nKCdAaG9zdCcpIHByb3RlY3RlZCBfc2hvdyA9IHRydWU7XHJcbiAgICBwcm90ZWN0ZWQgX2hhc0JvZHlUZW1wbGF0ZSE6IGJvb2xlYW47XHJcbiAgICBwcm90ZWN0ZWQgX2hhc0hlYWRlclRlbXBsYXRlITogYm9vbGVhbjtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcml2YXRlIF9jaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICAgICAgcHJpdmF0ZSBfcmVuZGVyZXI6IFJlbmRlcmVyMixcclxuICAgICAgICBwcml2YXRlIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmLFxyXG4gICAgICAgIHByaXZhdGUgX2Rlc3Ryb3lSZWY6IERlc3Ryb3lSZWYpIHtcclxuICAgICAgICAgICAgXHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fY29uZmlnID0gdGhpcy50b2FzdFJlZi5jb25maWc7XHJcbiAgICAgICAgdGhpcy5faGFzSGVhZGVyVGVtcGxhdGUgPSB0aGlzLl9jb25maWcuaGVhZGVyIGluc3RhbmNlb2YgVGVtcGxhdGVSZWY7XHJcbiAgICAgICAgdGhpcy5faGFzQm9keVRlbXBsYXRlID0gdGhpcy5fY29uZmlnLmJvZHkgaW5zdGFuY2VvZiBUZW1wbGF0ZVJlZjtcclxuICAgICAgICBcclxuICAgICAgICBsZXQgc3R5bGUgPSB0aGlzLl9jb25maWcuc3R5bGUgPz8gJ3N1Y2Nlc3MnO1xyXG4gICAgICAgIFsndG9hc3QnLCAnc2hvdycsIGB0ZXh0LWJnLSR7c3R5bGV9YF0uZm9yRWFjaCh4ID0+IHRoaXMuX3JlbmRlcmVyLmFkZENsYXNzKHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgeCkpO1xyXG4gICAgICAgIHRoaXMudG9hc3RSZWYuY2xvc2VkLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKHRoaXMuX2Rlc3Ryb3lSZWYpKS5zdWJzY3JpYmUoeCA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuX3Nob3cgPSBmYWxzZTtcclxuICAgICAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XHJcbiAgICAgICAgfSlcclxuICAgIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwidG9hc3QtaGVhZGVyXCIgKm5nSWY9XCJ0aGlzLl9jb25maWcuaGVhZGVyXCI+XHJcbiAgICBAaWYoX2hhc0hlYWRlclRlbXBsYXRlKSB7XHJcbiAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIiRhbnkoX2NvbmZpZy5oZWFkZXIpXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICB9QGVsc2Uge1xyXG4gICAgPHNwYW4gKm5nSWY9XCJfY29uZmlnLmljb25cIiBjbGFzcz1cIm1lLTJcIiBbbmdDbGFzc109XCJfY29uZmlnLmljb25cIj48L3NwYW4+XHJcbiAgICA8c3Ryb25nIGNsYXNzPVwibWUtYXV0b1wiPnt7dGhpcy5fY29uZmlnLmhlYWRlcn19PC9zdHJvbmc+XHJcbiAgICA8c21hbGwgKm5nSWY9XCJfY29uZmlnLmhpbnRcIj57e19jb25maWcuaGludH19PC9zbWFsbD5cclxuICAgIDxidXR0b24gKm5nSWY9XCJfY29uZmlnPy5jbG9zZUJ1dHRvbiA9PSB1bmRlZmluZWQgfHwgX2NvbmZpZz8uY2xvc2VCdXR0b25cIlxyXG4gICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJidG4tY2xvc2VcIlxyXG4gICAgICAgICAgICBhcmlhLWxhYmVsPVwiQ2xvc2VcIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwidG9hc3RSZWYuY2xvc2UoKVwiPlxyXG4gICAgPC9idXR0b24+XHJcbiAgICB9XHJcbjwvZGl2PlxyXG5cclxuPGRpdiBjbGFzcz1cInRvYXN0LWJvZHlcIiAqbmdJZj1cInRoaXMuX2NvbmZpZy5ib2R5XCI+XHJcbiAgICBAaWYoX2hhc0JvZHlUZW1wbGF0ZSkge1xyXG4gICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCIkYW55KF9jb25maWcuYm9keSlcIj48L25nLWNvbnRhaW5lcj5cclxuICAgIH1AZWxzZSB7XHJcbiAgICB7e3RoaXMuX2NvbmZpZy5ib2R5fX1cclxuICAgIH1cclxuPC9kaXY+Il19
@@ -0,0 +1,93 @@
1
+ import { ComponentPortal } from '@angular/cdk/portal';
2
+ import { Injectable } from '@angular/core';
3
+ import { ToastComponent } from './toast.component';
4
+ import { ToastRef } from './toast-ref';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/cdk/overlay";
7
+ /**
8
+ * Service for displaying toast notifications in the application.
9
+ *
10
+ * The `ToastService` provides methods to open toast messages with customizable content,
11
+ * header, style, position, and duration. It manages the lifecycle of toast notifications,
12
+ * ensuring only one toast is visible at a time.
13
+ *
14
+ * @example
15
+ * // Open a simple toast
16
+ * toastService.open('Message body', 'Header', 'success');
17
+ *
18
+ * @example
19
+ * // Open a toast with configuration
20
+ * toastService.open({
21
+ * body: 'Message body',
22
+ * header: 'Header',
23
+ * style: 'success',
24
+ * verticalPosition: 'bottom',
25
+ * horizontalPosition: 'end',
26
+ * duration: 5000
27
+ * });
28
+ *
29
+ * @remarks
30
+ * - Only one toast can be displayed at a time; opening a new toast closes the previous one.
31
+ * - The toast will automatically close after the specified duration (default: 3000ms).
32
+ *
33
+ * @publicApi
34
+ */
35
+ export class ToastService {
36
+ _overlayService;
37
+ _injector;
38
+ _toastRef;
39
+ constructor(_overlayService, _injector) {
40
+ this._overlayService = _overlayService;
41
+ this._injector = _injector;
42
+ }
43
+ open(p) {
44
+ if (this._toastRef) {
45
+ this._toastRef.close();
46
+ }
47
+ const config = typeof p === 'object' ? p :
48
+ { body: arguments[0], header: arguments[1], style: arguments[2] };
49
+ var portal = new ComponentPortal(ToastComponent, null, this._injector);
50
+ // Position
51
+ var vertical = config.verticalPosition ?? 'top';
52
+ var horizontal = config.horizontalPosition ?? 'center';
53
+ var posStrategy = this._overlayService.position().global();
54
+ const padding = '1rem';
55
+ switch (vertical) {
56
+ case 'top':
57
+ posStrategy = posStrategy.top(padding);
58
+ break;
59
+ case 'bottom':
60
+ posStrategy = posStrategy.bottom(padding);
61
+ break;
62
+ }
63
+ switch (horizontal) {
64
+ case 'center':
65
+ posStrategy = posStrategy.centerHorizontally();
66
+ break;
67
+ case 'end':
68
+ posStrategy = posStrategy.end(padding);
69
+ break;
70
+ case 'start':
71
+ posStrategy = posStrategy.start(padding);
72
+ break;
73
+ }
74
+ var overlayRef = this._overlayService.create({
75
+ positionStrategy: posStrategy,
76
+ });
77
+ var componentRef = overlayRef.attach(portal);
78
+ componentRef.instance.toastRef = this._toastRef = new ToastRef(config, overlayRef);
79
+ setTimeout(() => {
80
+ this._toastRef.close();
81
+ }, config?.duration ?? 3000);
82
+ return this._toastRef;
83
+ }
84
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: ToastService, deps: [{ token: i1.Overlay }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
85
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: ToastService, providedIn: 'root' });
86
+ }
87
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: ToastService, decorators: [{
88
+ type: Injectable,
89
+ args: [{
90
+ providedIn: 'root'
91
+ }]
92
+ }], ctorParameters: () => [{ type: i1.Overlay }, { type: i0.Injector }] });
93
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3Quc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25nMC90b2FzdC90b2FzdC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsVUFBVSxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBQ3JELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUVuRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sYUFBYSxDQUFDOzs7QUFHdkM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTJCRztBQUlILE1BQU0sT0FBTyxZQUFZO0lBR0g7SUFBa0M7SUFGOUMsU0FBUyxDQUFXO0lBRTVCLFlBQW9CLGVBQXdCLEVBQVUsU0FBbUI7UUFBckQsb0JBQWUsR0FBZixlQUFlLENBQVM7UUFBVSxjQUFTLEdBQVQsU0FBUyxDQUFVO0lBQUksQ0FBQztJQUk5RSxJQUFJLENBQUMsQ0FBTTtRQUNULElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ25CLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDekIsQ0FBQztRQUVELE1BQU0sTUFBTSxHQUNWLE9BQU8sQ0FBQyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDekIsRUFBRSxJQUFJLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBaUIsQ0FBQztRQUVyRixJQUFJLE1BQU0sR0FBRyxJQUFJLGVBQWUsQ0FBQyxjQUFjLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUV2RSxXQUFXO1FBQ1gsSUFBSSxRQUFRLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixJQUFJLEtBQUssQ0FBQztRQUNoRCxJQUFJLFVBQVUsR0FBRyxNQUFNLENBQUMsa0JBQWtCLElBQUksUUFBUSxDQUFDO1FBQ3ZELElBQUksV0FBVyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxFQUFFLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDM0QsTUFBTSxPQUFPLEdBQUcsTUFBTSxDQUFDO1FBRXZCLFFBQVEsUUFBUSxFQUFFLENBQUM7WUFDakIsS0FBSyxLQUFLO2dCQUNSLFdBQVcsR0FBRyxXQUFXLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFBO2dCQUN0QyxNQUFNO1lBQ1IsS0FBSyxRQUFRO2dCQUNYLFdBQVcsR0FBRyxXQUFXLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFBO2dCQUN6QyxNQUFNO1FBQ1YsQ0FBQztRQUVELFFBQVEsVUFBVSxFQUFFLENBQUM7WUFDbkIsS0FBSyxRQUFRO2dCQUNYLFdBQVcsR0FBRyxXQUFXLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztnQkFDL0MsTUFBTTtZQUNSLEtBQUssS0FBSztnQkFDUixXQUFXLEdBQUcsV0FBVyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDdkMsTUFBTTtZQUNSLEtBQUssT0FBTztnQkFDVixXQUFXLEdBQUcsV0FBVyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDekMsTUFBTTtRQUNWLENBQUM7UUFFRCxJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQztZQUMzQyxnQkFBZ0IsRUFBRSxXQUFXO1NBQzlCLENBQUMsQ0FBQztRQUVILElBQUksWUFBWSxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDN0MsWUFBWSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLFFBQVEsQ0FBQyxNQUFNLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFFbkYsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDekIsQ0FBQyxFQUFFLE1BQU0sRUFBRSxRQUFRLElBQUksSUFBSSxDQUFDLENBQUM7UUFFN0IsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7d0dBekRVLFlBQVk7NEdBQVosWUFBWSxjQUZYLE1BQU07OzRGQUVQLFlBQVk7a0JBSHhCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT3ZlcmxheSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcclxuaW1wb3J0IHsgQ29tcG9uZW50UG9ydGFsIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XHJcbmltcG9ydCB7IEluamVjdGFibGUsIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFRvYXN0Q29tcG9uZW50IH0gZnJvbSAnLi90b2FzdC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUb2FzdENvbmZpZyB9IGZyb20gJy4vdHlwZXMnO1xyXG5pbXBvcnQgeyBUb2FzdFJlZiB9IGZyb20gJy4vdG9hc3QtcmVmJztcclxuXHJcblxyXG4vKipcclxuICogU2VydmljZSBmb3IgZGlzcGxheWluZyB0b2FzdCBub3RpZmljYXRpb25zIGluIHRoZSBhcHBsaWNhdGlvbi5cclxuICpcclxuICogVGhlIGBUb2FzdFNlcnZpY2VgIHByb3ZpZGVzIG1ldGhvZHMgdG8gb3BlbiB0b2FzdCBtZXNzYWdlcyB3aXRoIGN1c3RvbWl6YWJsZSBjb250ZW50LFxyXG4gKiBoZWFkZXIsIHN0eWxlLCBwb3NpdGlvbiwgYW5kIGR1cmF0aW9uLiBJdCBtYW5hZ2VzIHRoZSBsaWZlY3ljbGUgb2YgdG9hc3Qgbm90aWZpY2F0aW9ucyxcclxuICogZW5zdXJpbmcgb25seSBvbmUgdG9hc3QgaXMgdmlzaWJsZSBhdCBhIHRpbWUuXHJcbiAqXHJcbiAqIEBleGFtcGxlXHJcbiAqIC8vIE9wZW4gYSBzaW1wbGUgdG9hc3RcclxuICogdG9hc3RTZXJ2aWNlLm9wZW4oJ01lc3NhZ2UgYm9keScsICdIZWFkZXInLCAnc3VjY2VzcycpO1xyXG4gKlxyXG4gKiBAZXhhbXBsZVxyXG4gKiAvLyBPcGVuIGEgdG9hc3Qgd2l0aCBjb25maWd1cmF0aW9uXHJcbiAqIHRvYXN0U2VydmljZS5vcGVuKHtcclxuICogICBib2R5OiAnTWVzc2FnZSBib2R5JyxcclxuICogICBoZWFkZXI6ICdIZWFkZXInLFxyXG4gKiAgIHN0eWxlOiAnc3VjY2VzcycsXHJcbiAqICAgdmVydGljYWxQb3NpdGlvbjogJ2JvdHRvbScsXHJcbiAqICAgaG9yaXpvbnRhbFBvc2l0aW9uOiAnZW5kJyxcclxuICogICBkdXJhdGlvbjogNTAwMFxyXG4gKiB9KTtcclxuICpcclxuICogQHJlbWFya3NcclxuICogLSBPbmx5IG9uZSB0b2FzdCBjYW4gYmUgZGlzcGxheWVkIGF0IGEgdGltZTsgb3BlbmluZyBhIG5ldyB0b2FzdCBjbG9zZXMgdGhlIHByZXZpb3VzIG9uZS5cclxuICogLSBUaGUgdG9hc3Qgd2lsbCBhdXRvbWF0aWNhbGx5IGNsb3NlIGFmdGVyIHRoZSBzcGVjaWZpZWQgZHVyYXRpb24gKGRlZmF1bHQ6IDMwMDBtcykuXHJcbiAqXHJcbiAqIEBwdWJsaWNBcGlcclxuICovXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIFRvYXN0U2VydmljZSB7XHJcbiAgcHJpdmF0ZSBfdG9hc3RSZWY6IFRvYXN0UmVmO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9vdmVybGF5U2VydmljZTogT3ZlcmxheSwgcHJpdmF0ZSBfaW5qZWN0b3I6IEluamVjdG9yKSB7IH1cclxuXHJcbiAgb3Blbihib2R5OiBzdHJpbmcsIGhlYWRlcj86IHN0cmluZywgc3R5bGU/OiBzdHJpbmcpOiBUb2FzdFJlZjtcclxuICBvcGVuKGNvbmZpZzogVG9hc3RDb25maWcpOiBUb2FzdFJlZjtcclxuICBvcGVuKHA6IGFueSk6IFRvYXN0UmVmIHtcclxuICAgIGlmICh0aGlzLl90b2FzdFJlZikge1xyXG4gICAgICB0aGlzLl90b2FzdFJlZi5jbG9zZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IGNvbmZpZzogVG9hc3RDb25maWcgPVxyXG4gICAgICB0eXBlb2YgcCA9PT0gJ29iamVjdCcgPyBwIDpcclxuICAgICAgICB7IGJvZHk6IGFyZ3VtZW50c1swXSwgaGVhZGVyOiBhcmd1bWVudHNbMV0sIHN0eWxlOiBhcmd1bWVudHNbMl0gfSBhcyBUb2FzdENvbmZpZztcclxuXHJcbiAgICB2YXIgcG9ydGFsID0gbmV3IENvbXBvbmVudFBvcnRhbChUb2FzdENvbXBvbmVudCwgbnVsbCwgdGhpcy5faW5qZWN0b3IpO1xyXG5cclxuICAgIC8vIFBvc2l0aW9uXHJcbiAgICB2YXIgdmVydGljYWwgPSBjb25maWcudmVydGljYWxQb3NpdGlvbiA/PyAndG9wJztcclxuICAgIHZhciBob3Jpem9udGFsID0gY29uZmlnLmhvcml6b250YWxQb3NpdGlvbiA/PyAnY2VudGVyJztcclxuICAgIHZhciBwb3NTdHJhdGVneSA9IHRoaXMuX292ZXJsYXlTZXJ2aWNlLnBvc2l0aW9uKCkuZ2xvYmFsKCk7XHJcbiAgICBjb25zdCBwYWRkaW5nID0gJzFyZW0nO1xyXG5cclxuICAgIHN3aXRjaCAodmVydGljYWwpIHtcclxuICAgICAgY2FzZSAndG9wJzpcclxuICAgICAgICBwb3NTdHJhdGVneSA9IHBvc1N0cmF0ZWd5LnRvcChwYWRkaW5nKVxyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlICdib3R0b20nOlxyXG4gICAgICAgIHBvc1N0cmF0ZWd5ID0gcG9zU3RyYXRlZ3kuYm90dG9tKHBhZGRpbmcpXHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICB9XHJcblxyXG4gICAgc3dpdGNoIChob3Jpem9udGFsKSB7XHJcbiAgICAgIGNhc2UgJ2NlbnRlcic6XHJcbiAgICAgICAgcG9zU3RyYXRlZ3kgPSBwb3NTdHJhdGVneS5jZW50ZXJIb3Jpem9udGFsbHkoKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSAnZW5kJzpcclxuICAgICAgICBwb3NTdHJhdGVneSA9IHBvc1N0cmF0ZWd5LmVuZChwYWRkaW5nKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSAnc3RhcnQnOlxyXG4gICAgICAgIHBvc1N0cmF0ZWd5ID0gcG9zU3RyYXRlZ3kuc3RhcnQocGFkZGluZyk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICB9XHJcblxyXG4gICAgdmFyIG92ZXJsYXlSZWYgPSB0aGlzLl9vdmVybGF5U2VydmljZS5jcmVhdGUoe1xyXG4gICAgICBwb3NpdGlvblN0cmF0ZWd5OiBwb3NTdHJhdGVneSxcclxuICAgIH0pO1xyXG5cclxuICAgIHZhciBjb21wb25lbnRSZWYgPSBvdmVybGF5UmVmLmF0dGFjaChwb3J0YWwpO1xyXG4gICAgY29tcG9uZW50UmVmLmluc3RhbmNlLnRvYXN0UmVmID0gdGhpcy5fdG9hc3RSZWYgPSBuZXcgVG9hc3RSZWYoY29uZmlnLCBvdmVybGF5UmVmKTtcclxuXHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgdGhpcy5fdG9hc3RSZWYuY2xvc2UoKTtcclxuICAgIH0sIGNvbmZpZz8uZHVyYXRpb24gPz8gMzAwMCk7XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuX3RvYXN0UmVmO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZzAvdG9hc3QvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIlxyXG5pbXBvcnQgeyBUZW1wbGF0ZVJlZiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG5cclxuZXhwb3J0IHR5cGUgVG9hc3RIb3Jpem9udGFsUG9zaXRpb24gPSAnc3RhcnQnIHwgJ2NlbnRlcicgfCAnZW5kJztcclxuXHJcbmV4cG9ydCB0eXBlIFRvYXN0VmVydGljYWxQb3NpdGlvbiA9ICd0b3AnIHwgJ2JvdHRvbSc7XHJcblxyXG4vKipcclxuICogQ29uZmlndXJhdGlvbiBpbnRlcmZhY2UgZm9yIHRvYXN0IG5vdGlmaWNhdGlvbnNcclxuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgVG9hc3RDb25maWcge1xyXG4gICAgLyoqIFxyXG4gICAgICogTWFpbiBjb250ZW50IG9mIHRoZSB0b2FzdC4gQ2FuIGJlIGEgc3RyaW5nLCBudW1iZXIsIGJvb2xlYW4gb3IgdGVtcGxhdGUgcmVmZXJlbmNlXHJcbiAgICAgKi9cclxuICAgIGJvZHk/OiBzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuIHwgVGVtcGxhdGVSZWY8YW55PjtcclxuICAgIFxyXG4gICAgLyoqXHJcbiAgICAgKiBIZWFkZXIgY29udGVudCBvZiB0aGUgdG9hc3QuIENhbiBiZSBhIHN0cmluZywgbnVtYmVyLCBib29sZWFuIG9yIHRlbXBsYXRlIHJlZmVyZW5jZVxyXG4gICAgICovXHJcbiAgICBoZWFkZXI/OiBzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuIHwgVGVtcGxhdGVSZWY8YW55PjtcclxuICAgIFxyXG4gICAgLyoqXHJcbiAgICAgKiBBZGRpdGlvbmFsIGhpbnQgdGV4dCBmb3IgdGhlIHRvYXN0LiBBY2NlcHRzIHN0cmluZywgbnVtYmVyIG9yIGJvb2xlYW5cclxuICAgICAqL1xyXG4gICAgaGludD86IHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW47XHJcbiAgICBcclxuICAgIC8qKlxyXG4gICAgICogSWNvbiB0byBiZSBkaXNwbGF5ZWQgaW4gdGhlIHRvYXN0LiBFeHBlY3RzIGEgc3RyaW5nIHJlZmVyZW5jZSB0byB0aGUgaWNvblxyXG4gICAgICovXHJcbiAgICBpY29uPzogc3RyaW5nO1xyXG4gICAgXHJcbiAgICAvKipcclxuICAgICAqIHRvYXN0IHN0eWxlOiBwcmltYXJ5LCBzZWNvbmRhcnksIGRhbmdlciwgLi4uXHJcbiAgICAgKi9cclxuICAgIHN0eWxlPzogc3RyaW5nO1xyXG4gICAgXHJcbiAgICAvKipcclxuICAgICAqIER1cmF0aW9uIGluIG1pbGxpc2Vjb25kcyBmb3IgaG93IGxvbmcgdGhlIHRvYXN0IHNob3VsZCBiZSBkaXNwbGF5ZWRcclxuICAgICAqL1xyXG4gICAgZHVyYXRpb24/OiBudW1iZXI7XHJcbiAgICBcclxuICAgIC8qKlxyXG4gICAgICogV2hldGhlciB0byBzaG93IGEgY2xvc2UgYnV0dG9uIG9uIHRoZSB0b2FzdFxyXG4gICAgICovXHJcbiAgICBjbG9zZUJ1dHRvbj86IGJvb2xlYW47XHJcbiAgICBcclxuICAgIC8qKlxyXG4gICAgICogSG9yaXpvbnRhbCBhbGlnbm1lbnQgb2YgdGhlIHRvYXN0LiBDYW4gYmUgJ3N0YXJ0JywgJ2NlbnRlcicsIG9yICdlbmQnXHJcbiAgICAgKi9cclxuICAgIGhvcml6b250YWxQb3NpdGlvbj86IFRvYXN0SG9yaXpvbnRhbFBvc2l0aW9uO1xyXG4gICAgXHJcbiAgICAvKipcclxuICAgICAqIFZlcnRpY2FsIGFsaWdubWVudCBvZiB0aGUgdG9hc3QuIENhbiBiZSAndG9wJyBvciAnYm90dG9tJ1xyXG4gICAgICovXHJcbiAgICB2ZXJ0aWNhbFBvc2l0aW9uPzogVG9hc3RWZXJ0aWNhbFBvc2l0aW9uO1xyXG59XHJcblxyXG4iXX0=
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9vdGtpdC1uZzAtdG9vbHRpcC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25nMC90b29sdGlwL2Jvb3RraXQtbmcwLXRvb2x0aXAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
@@ -0,0 +1,3 @@
1
+ export * from './tooltip.directive';
2
+ export * from './types';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25nMC90b29sdGlwL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vdG9vbHRpcC5kaXJlY3RpdmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL3R5cGVzJztcclxuICJdfQ==
@@ -0,0 +1,44 @@
1
+ import { Component, ChangeDetectionStrategy, TemplateRef } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common";
5
+ /**
6
+ * @private
7
+ */
8
+ export class TooltipWrapperComponent {
9
+ elementRef;
10
+ renderer;
11
+ changeDetectorRef;
12
+ placement;
13
+ content;
14
+ hasTemplate;
15
+ constructor(elementRef, renderer, changeDetectorRef) {
16
+ this.elementRef = elementRef;
17
+ this.renderer = renderer;
18
+ this.changeDetectorRef = changeDetectorRef;
19
+ }
20
+ ngOnInit() {
21
+ this.hasTemplate = this.content instanceof TemplateRef;
22
+ const elm = this.elementRef.nativeElement;
23
+ this.renderer.setAttribute(elm, 'role', 'tooltip');
24
+ ['tooltip', 'fade', 'show'].forEach(c => this.renderer.addClass(elm, c));
25
+ }
26
+ set(content, placement) {
27
+ this.content = content;
28
+ this.placement = placement;
29
+ this.hasTemplate = content instanceof TemplateRef;
30
+ this.changeDetectorRef.markForCheck();
31
+ }
32
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: TooltipWrapperComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
33
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.11", type: TooltipWrapperComponent, isStandalone: true, selector: "ng0-tooltip-wrapper", host: { properties: { "class.bs-tooltip-top": "placement == \"top\"", "class.bs-tooltip-bottom": "placement == \"bottom\"", "class.bs-tooltip-start": "placement == \"start\"", "class.bs-tooltip-end": "placement == \"end\"" } }, exportAs: ["ng0TooltipWrapper"], ngImport: i0, template: "<div class=\"tooltip-arrow\"></div>\r\n<div class=\"tooltip-inner\">\r\n @if(hasTemplate) {\r\n <ng-container [ngTemplateOutlet]=\"$any(content)\"></ng-container>\r\n }@else{\r\n {{content}}\r\n }\r\n</div>", styles: [":host{position:relative;padding:var(--bs-tooltip-arrow-height)}:host .tooltip-arrow{position:absolute}:host.bs-tooltip-top .tooltip-arrow{bottom:0;left:calc(50% - var(--bs-tooltip-arrow-width) / 2)}:host.bs-tooltip-bottom .tooltip-arrow{top:0;left:calc(50% - var(--bs-tooltip-arrow-width) / 2)}:host.bs-tooltip-start .tooltip-arrow{right:0;top:calc(50% - var(--bs-tooltip-arrow-width) / 2)}[dir=rtl] :host.bs-tooltip-start .tooltip-arrow{right:unset!important;left:0;transform:rotate(180deg)}:host.bs-tooltip-end .tooltip-arrow{left:0;top:calc(50% - var(--bs-tooltip-arrow-width) / 2)}[dir=rtl] :host.bs-tooltip-end .tooltip-arrow{left:unset!important;right:0;transform:rotate(180deg)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
34
+ }
35
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: TooltipWrapperComponent, decorators: [{
36
+ type: Component,
37
+ args: [{ selector: 'ng0-tooltip-wrapper', exportAs: 'ng0TooltipWrapper', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule], host: {
38
+ '[class.bs-tooltip-top]': 'placement == "top"',
39
+ '[class.bs-tooltip-bottom]': 'placement == "bottom"',
40
+ '[class.bs-tooltip-start]': 'placement == "start"',
41
+ '[class.bs-tooltip-end]': 'placement == "end"',
42
+ }, template: "<div class=\"tooltip-arrow\"></div>\r\n<div class=\"tooltip-inner\">\r\n @if(hasTemplate) {\r\n <ng-container [ngTemplateOutlet]=\"$any(content)\"></ng-container>\r\n }@else{\r\n {{content}}\r\n }\r\n</div>", styles: [":host{position:relative;padding:var(--bs-tooltip-arrow-height)}:host .tooltip-arrow{position:absolute}:host.bs-tooltip-top .tooltip-arrow{bottom:0;left:calc(50% - var(--bs-tooltip-arrow-width) / 2)}:host.bs-tooltip-bottom .tooltip-arrow{top:0;left:calc(50% - var(--bs-tooltip-arrow-width) / 2)}:host.bs-tooltip-start .tooltip-arrow{right:0;top:calc(50% - var(--bs-tooltip-arrow-width) / 2)}[dir=rtl] :host.bs-tooltip-start .tooltip-arrow{right:unset!important;left:0;transform:rotate(180deg)}:host.bs-tooltip-end .tooltip-arrow{left:0;top:calc(50% - var(--bs-tooltip-arrow-width) / 2)}[dir=rtl] :host.bs-tooltip-end .tooltip-arrow{left:unset!important;right:0;transform:rotate(180deg)}\n"] }]
43
+ }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }] });
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC13cmFwcGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nMC90b29sdGlwL3Rvb2x0aXAtd3JhcHBlci90b29sdGlwLXdyYXBwZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmcwL3Rvb2x0aXAvdG9vbHRpcC13cmFwcGVyL3Rvb2x0aXAtd3JhcHBlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUF5Qix1QkFBdUIsRUFBVSxXQUFXLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQ2xJLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7O0FBRy9DOztHQUVHO0FBZ0JILE1BQU0sT0FBTyx1QkFBdUI7SUFNcEI7SUFDQTtJQUNBO0lBUEYsU0FBUyxDQUFvQjtJQUM3QixPQUFPLENBQWtCO0lBQ3pCLFdBQVcsQ0FBVztJQUVoQyxZQUNZLFVBQXNCLEVBQ3RCLFFBQW1CLEVBQ25CLGlCQUFvQztRQUZwQyxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3RCLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDbkIsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtJQUNoRCxDQUFDO0lBRUQsUUFBUTtRQUNKLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLE9BQU8sWUFBWSxXQUFXLENBQUM7UUFDdkQsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUM7UUFDMUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsR0FBRyxFQUFFLE1BQU0sRUFBRSxTQUFTLENBQUMsQ0FBQztRQUNuRCxDQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUVNLEdBQUcsQ0FBQyxPQUFZLEVBQUUsU0FBMkI7UUFDaEQsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7UUFDdkIsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7UUFDM0IsSUFBSSxDQUFDLFdBQVcsR0FBRyxPQUFPLFlBQVksV0FBVyxDQUFDO1FBQ2xELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMxQyxDQUFDO3dHQXZCUSx1QkFBdUI7NEZBQXZCLHVCQUF1QixvVkN0QnBDLCtOQU9NLHd1QkRPUSxZQUFZOzs0RkFRYix1QkFBdUI7a0JBZm5DLFNBQVM7K0JBQ0kscUJBQXFCLFlBQ3JCLG1CQUFtQixtQkFHWix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUCxDQUFDLFlBQVksQ0FBQyxRQUNqQjt3QkFDRix3QkFBd0IsRUFBRSxvQkFBb0I7d0JBQzlDLDJCQUEyQixFQUFFLHVCQUF1Qjt3QkFDcEQsMEJBQTBCLEVBQUUsc0JBQXNCO3dCQUNsRCx3QkFBd0IsRUFBRSxvQkFBb0I7cUJBQ2pEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBSZW5kZXJlcjIsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBPbkluaXQsIFRlbXBsYXRlUmVmLCBDaGFuZ2VEZXRlY3RvclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBUb29sdGlwQ29udGVudCwgVG9vbHRpcFBsYWNlbWVudCB9IGZyb20gJy4uL3R5cGVzJztcclxuXHJcbi8qKlxyXG4gKiBAcHJpdmF0ZVxyXG4gKi9cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ25nMC10b29sdGlwLXdyYXBwZXInLFxyXG4gICAgZXhwb3J0QXM6ICduZzBUb29sdGlwV3JhcHBlcicsXHJcbiAgICBzdHlsZVVybHM6IFsnLi90b29sdGlwLXdyYXBwZXIuY29tcG9uZW50LnNjc3MnXSxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi90b29sdGlwLXdyYXBwZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXHJcbiAgICBob3N0OiB7XHJcbiAgICAgICAgJ1tjbGFzcy5icy10b29sdGlwLXRvcF0nOiAncGxhY2VtZW50ID09IFwidG9wXCInLFxyXG4gICAgICAgICdbY2xhc3MuYnMtdG9vbHRpcC1ib3R0b21dJzogJ3BsYWNlbWVudCA9PSBcImJvdHRvbVwiJyxcclxuICAgICAgICAnW2NsYXNzLmJzLXRvb2x0aXAtc3RhcnRdJzogJ3BsYWNlbWVudCA9PSBcInN0YXJ0XCInLFxyXG4gICAgICAgICdbY2xhc3MuYnMtdG9vbHRpcC1lbmRdJzogJ3BsYWNlbWVudCA9PSBcImVuZFwiJyxcclxuICAgIH1cclxufSlcclxuZXhwb3J0IGNsYXNzIFRvb2x0aXBXcmFwcGVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICAgIHByb3RlY3RlZCBwbGFjZW1lbnQhOiBUb29sdGlwUGxhY2VtZW50O1xyXG4gICAgcHJvdGVjdGVkIGNvbnRlbnQhOiBUb29sdGlwQ29udGVudDtcclxuICAgIHByb3RlY3RlZCBoYXNUZW1wbGF0ZSE6IGJvb2xlYW47XHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxyXG4gICAgICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcclxuICAgICAgICBwcml2YXRlIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZikge1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuaGFzVGVtcGxhdGUgPSB0aGlzLmNvbnRlbnQgaW5zdGFuY2VvZiBUZW1wbGF0ZVJlZjtcclxuICAgICAgICBjb25zdCBlbG0gPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcclxuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShlbG0sICdyb2xlJywgJ3Rvb2x0aXAnKTtcclxuICAgICAgICBbJ3Rvb2x0aXAnLCAnZmFkZScsICdzaG93J10uZm9yRWFjaChjID0+IHRoaXMucmVuZGVyZXIuYWRkQ2xhc3MoZWxtLCBjKSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIHNldChjb250ZW50OiBhbnksIHBsYWNlbWVudDogVG9vbHRpcFBsYWNlbWVudCkge1xyXG4gICAgICAgIHRoaXMuY29udGVudCA9IGNvbnRlbnQ7XHJcbiAgICAgICAgdGhpcy5wbGFjZW1lbnQgPSBwbGFjZW1lbnQ7XHJcbiAgICAgICAgdGhpcy5oYXNUZW1wbGF0ZSA9IGNvbnRlbnQgaW5zdGFuY2VvZiBUZW1wbGF0ZVJlZjtcclxuICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJ0b29sdGlwLWFycm93XCI+PC9kaXY+XHJcbjxkaXYgY2xhc3M9XCJ0b29sdGlwLWlubmVyXCI+XHJcbiAgICBAaWYoaGFzVGVtcGxhdGUpIHtcclxuICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiJGFueShjb250ZW50KVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgfUBlbHNle1xyXG4gICAge3tjb250ZW50fX1cclxuICAgIH1cclxuPC9kaXY+Il19