@progressio_resources/gravity-design-system 3.9.3 → 4.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (274) hide show
  1. package/README.md +1 -1
  2. package/fesm2022/progressio_resources-gravity-design-system.mjs +1289 -1169
  3. package/fesm2022/progressio_resources-gravity-design-system.mjs.map +1 -1
  4. package/package.json +10 -12
  5. package/src/lib/styles/_functions.scss +4 -2
  6. package/src/lib/styles/_responsive.scss +12 -11
  7. package/src/lib/styles/components/_card_highlight.scss +5 -5
  8. package/src/lib/styles/components/_datepicker-v2.scss +2 -2
  9. package/src/lib/styles/components/_datepicker.scss +16 -15
  10. package/src/lib/styles/components/_offcanvas.scss +4 -4
  11. package/src/lib/styles/components/_tables.scss +9 -9
  12. package/src/lib/styles/foundations/colors/themes/_hero.theme.scss +1 -1
  13. package/src/lib/styles/foundations/colors/tokens/_hero.tokens.scss +3 -3
  14. package/src/lib/styles/foundations/spacing/_spacing.scss +3 -1
  15. package/src/lib/styles/gravity-design-system.scss +17 -17
  16. package/src/lib/styles/overwrite/bootstrap/_bootstrap-export.scss +2 -2
  17. package/src/lib/styles/overwrite/bootstrap/_modal.scss +5 -5
  18. package/src/lib/styles/themes/_hero.scss +4 -4
  19. package/src/lib/vendor/gravity-tooltip/gravity-tooltip.component.html +10 -7
  20. package/src/lib/vendor/gravity-tooltip/gravity-tooltip.component.sass +92 -52
  21. package/src/lib/vendor/gravity-tooltip/gravity-tooltip.component.ts +7 -3
  22. package/src/lib/vendor/gravity-tooltip/gravity-tooltip.directive.ts +46 -17
  23. package/src/lib/vendor/gravity-tooltip/gravity-tooltip.module.ts +7 -12
  24. package/types/progressio_resources-gravity-design-system.d.ts +2671 -0
  25. package/esm2022/lib/components/gravity-attach-file/gravity-attach-file.component.mjs +0 -82
  26. package/esm2022/lib/components/gravity-avatar-stack/gravity-avatar-stack.component.mjs +0 -86
  27. package/esm2022/lib/components/gravity-backdrop/gravity-backdrop.component.mjs +0 -17
  28. package/esm2022/lib/components/gravity-badge/gravity-badge.component.mjs +0 -36
  29. package/esm2022/lib/components/gravity-button/gravity-button.component.mjs +0 -58
  30. package/esm2022/lib/components/gravity-calendar-v2/datepicker/base/bs-datepicker-container.mjs +0 -77
  31. package/esm2022/lib/components/gravity-calendar-v2/datepicker/bs-datepicker-inline.component.mjs +0 -129
  32. package/esm2022/lib/components/gravity-calendar-v2/datepicker/bs-datepicker-inline.config.mjs +0 -14
  33. package/esm2022/lib/components/gravity-calendar-v2/datepicker/bs-datepicker.callbacks.mjs +0 -13
  34. package/esm2022/lib/components/gravity-calendar-v2/datepicker/bs-datepicker.component.mjs +0 -211
  35. package/esm2022/lib/components/gravity-calendar-v2/datepicker/bs-datepicker.config.mjs +0 -46
  36. package/esm2022/lib/components/gravity-calendar-v2/datepicker/bs-daterangepicker-inline.component.mjs +0 -130
  37. package/esm2022/lib/components/gravity-calendar-v2/datepicker/bs-daterangepicker-inline.config.mjs +0 -18
  38. package/esm2022/lib/components/gravity-calendar-v2/datepicker/bs-daterangepicker.component.mjs +0 -218
  39. package/esm2022/lib/components/gravity-calendar-v2/datepicker/bs-daterangepicker.config.mjs +0 -18
  40. package/esm2022/lib/components/gravity-calendar-v2/datepicker/components/bs-datepicker-container.component.mjs +0 -137
  41. package/esm2022/lib/components/gravity-calendar-v2/datepicker/components/bs-datepicker-inline-container.component.mjs +0 -35
  42. package/esm2022/lib/components/gravity-calendar-v2/datepicker/components/bs-datepicker-navigation-view/bs-datepicker-navigation-view.component.mjs +0 -69
  43. package/esm2022/lib/components/gravity-calendar-v2/datepicker/components/bs-daterangepicker-container.component.mjs +0 -193
  44. package/esm2022/lib/components/gravity-calendar-v2/datepicker/components/bs-daterangepicker-inline-container.component.mjs +0 -35
  45. package/esm2022/lib/components/gravity-calendar-v2/datepicker/components/bs-days-calendar-view/bs-datepicker-day-decorator.directive.mjs +0 -30
  46. package/esm2022/lib/components/gravity-calendar-v2/datepicker/components/bs-days-calendar-view/bs-days-calendar-view.component.mjs +0 -57
  47. package/esm2022/lib/components/gravity-calendar-v2/datepicker/components/bs-months-calendar-view/bs-months-calendar-view.component.mjs +0 -57
  48. package/esm2022/lib/components/gravity-calendar-v2/datepicker/components/bs-years-calendar-view/bs-years-calendar-view.component.mjs +0 -57
  49. package/esm2022/lib/components/gravity-calendar-v2/datepicker/datepicker-animations.mjs +0 -16
  50. package/esm2022/lib/components/gravity-calendar-v2/datepicker/engine/calc-days-calendar.mjs +0 -16
  51. package/esm2022/lib/components/gravity-calendar-v2/datepicker/engine/flag-days-calendar.mjs +0 -53
  52. package/esm2022/lib/components/gravity-calendar-v2/datepicker/engine/flag-months-calendar.mjs +0 -39
  53. package/esm2022/lib/components/gravity-calendar-v2/datepicker/engine/flag-years-calendar.mjs +0 -36
  54. package/esm2022/lib/components/gravity-calendar-v2/datepicker/engine/format-days-calendar.mjs +0 -23
  55. package/esm2022/lib/components/gravity-calendar-v2/datepicker/engine/format-months-calendar.mjs +0 -23
  56. package/esm2022/lib/components/gravity-calendar-v2/datepicker/engine/format-years-calendar.mjs +0 -43
  57. package/esm2022/lib/components/gravity-calendar-v2/datepicker/engine/view-mode.mjs +0 -4
  58. package/esm2022/lib/components/gravity-calendar-v2/datepicker/models/index.mjs +0 -7
  59. package/esm2022/lib/components/gravity-calendar-v2/datepicker/reducer/_defaults.mjs +0 -6
  60. package/esm2022/lib/components/gravity-calendar-v2/datepicker/reducer/bs-datepicker.actions.mjs +0 -64
  61. package/esm2022/lib/components/gravity-calendar-v2/datepicker/reducer/bs-datepicker.effects.mjs +0 -128
  62. package/esm2022/lib/components/gravity-calendar-v2/datepicker/reducer/bs-datepicker.reducer.mjs +0 -301
  63. package/esm2022/lib/components/gravity-calendar-v2/datepicker/reducer/bs-datepicker.state.mjs +0 -16
  64. package/esm2022/lib/components/gravity-calendar-v2/datepicker/reducer/bs-datepicker.store.mjs +0 -20
  65. package/esm2022/lib/components/gravity-calendar-v2/datepicker/services/header-type.service.mjs +0 -28
  66. package/esm2022/lib/components/gravity-calendar-v2/datepicker/utils/bs-calendar-utils.mjs +0 -74
  67. package/esm2022/lib/components/gravity-calendar-v2/datepicker/utils/date-abbreviation.pipe.mjs +0 -74
  68. package/esm2022/lib/components/gravity-calendar-v2/datepicker/utils/matrix-utils.mjs +0 -14
  69. package/esm2022/lib/components/gravity-calendar-v2/gravity-calendar-v2.component.mjs +0 -259
  70. package/esm2022/lib/components/gravity-card-button/gravity-card-button.component.mjs +0 -41
  71. package/esm2022/lib/components/gravity-checkbox/gravity-checkbox.component.mjs +0 -52
  72. package/esm2022/lib/components/gravity-chip-group/gravity-chip-group.component.mjs +0 -45
  73. package/esm2022/lib/components/gravity-currency/gravity-currency.component.mjs +0 -26
  74. package/esm2022/lib/components/gravity-currency-display-v2/gravity-currency-display-v2.component.mjs +0 -26
  75. package/esm2022/lib/components/gravity-currency-dropdown-short/gravity-currency-dropdown-short.component.mjs +0 -79
  76. package/esm2022/lib/components/gravity-data-views-v2/gravity-data-views-v2.component.mjs +0 -48
  77. package/esm2022/lib/components/gravity-date-picker/components/day-calendar/day-calendar.component.mjs +0 -273
  78. package/esm2022/lib/components/gravity-date-picker/components/day-calendar/range-days-calendar.utils.mjs +0 -241
  79. package/esm2022/lib/components/gravity-date-picker/components/month-calendar/month-calendar.component.mjs +0 -109
  80. package/esm2022/lib/components/gravity-date-picker/components/year-calendar/year-calendar.component.mjs +0 -105
  81. package/esm2022/lib/components/gravity-date-picker/gravity-date-picker.component.mjs +0 -84
  82. package/esm2022/lib/components/gravity-date-picker/shared/date-picker.constants.mjs +0 -61
  83. package/esm2022/lib/components/gravity-date-picker/shared/date-picker.modal.mjs +0 -2
  84. package/esm2022/lib/components/gravity-date-picker/shared/date-picker.utils.mjs +0 -110
  85. package/esm2022/lib/components/gravity-detail-container/gravity-detail-container.component.mjs +0 -93
  86. package/esm2022/lib/components/gravity-dialog/gravity-dialog.component.mjs +0 -26
  87. package/esm2022/lib/components/gravity-dropdown-label/gravity-dropdown-label.component.mjs +0 -65
  88. package/esm2022/lib/components/gravity-dropdown-list/filter-by.pipe.mjs +0 -44
  89. package/esm2022/lib/components/gravity-dropdown-list/gravity-dropdown-list.component.mjs +0 -542
  90. package/esm2022/lib/components/gravity-dropdown-list-display/display-currency-items.mjs +0 -2
  91. package/esm2022/lib/components/gravity-dropdown-list-display/gravity-dropdown-list-display.component.mjs +0 -203
  92. package/esm2022/lib/components/gravity-editable-input/gravity-editable-input.component.mjs +0 -52
  93. package/esm2022/lib/components/gravity-generic-avatar/gravity-generic-avatar.component.mjs +0 -33
  94. package/esm2022/lib/components/gravity-generic-avatar-secondary/gravity-generic-avatar-secondary.component.mjs +0 -28
  95. package/esm2022/lib/components/gravity-icon/gravity-icon.component.mjs +0 -120
  96. package/esm2022/lib/components/gravity-icon-button/gravity-icon-button.component.mjs +0 -54
  97. package/esm2022/lib/components/gravity-link/gravity-link.component.mjs +0 -39
  98. package/esm2022/lib/components/gravity-modal/gravity-modal.component.mjs +0 -44
  99. package/esm2022/lib/components/gravity-modal/gravity-modal.model.mjs +0 -2
  100. package/esm2022/lib/components/gravity-multi-language/gravity-multi-language.component.mjs +0 -31
  101. package/esm2022/lib/components/gravity-navigation-card/gravity-navigation-card.component.mjs +0 -54
  102. package/esm2022/lib/components/gravity-network-pill/gravity-network-pill.component.mjs +0 -33
  103. package/esm2022/lib/components/gravity-notification/gravity-notification-content.interface.mjs +0 -2
  104. package/esm2022/lib/components/gravity-notification/gravity-notification.component.mjs +0 -33
  105. package/esm2022/lib/components/gravity-notification-instant/gravity-notification-instant-container.component.mjs +0 -32
  106. package/esm2022/lib/components/gravity-pagination/gravity-pagination.component.mjs +0 -113
  107. package/esm2022/lib/components/gravity-push-notifications/gravity-push-notifications.component.mjs +0 -55
  108. package/esm2022/lib/components/gravity-radio-button/gravity-radio-button.component.mjs +0 -34
  109. package/esm2022/lib/components/gravity-segmented-button/gravity-segmented-button.component.mjs +0 -85
  110. package/esm2022/lib/components/gravity-status-indicator/gravity-status-indicator.component.mjs +0 -38
  111. package/esm2022/lib/components/gravity-stepper/gravity-stepper.component.mjs +0 -37
  112. package/esm2022/lib/components/gravity-switch/gravity-switch.component.mjs +0 -56
  113. package/esm2022/lib/components/gravity-tab-primary/gravity-tab-primary.component.mjs +0 -34
  114. package/esm2022/lib/components/gravity-tab-secondary/gravity-tab-secondary.component.mjs +0 -36
  115. package/esm2022/lib/components/gravity-table/gravity-table.component.mjs +0 -212
  116. package/esm2022/lib/components/gravity-tables-v2/gravity-tables-v2.component.mjs +0 -18
  117. package/esm2022/lib/components/gravity-text-field/gravity-text-field.component.mjs +0 -294
  118. package/esm2022/lib/components/gravity-text-field-amount-only/gravity-text-field-amount-only.component.mjs +0 -160
  119. package/esm2022/lib/components/gravity-text-field-number-only/gravity-text-field-number-only.component.mjs +0 -126
  120. package/esm2022/lib/components/gravity-tooltip-container/gravity-tooltip-container.component.mjs +0 -44
  121. package/esm2022/lib/components/gravity-tree-view/gravity-tree-view.component.mjs +0 -69
  122. package/esm2022/lib/components/gravity-tree-view/models/node-item.mjs +0 -2
  123. package/esm2022/lib/components/gravity-tree-view/models/node-selected-state.mjs +0 -7
  124. package/esm2022/lib/components/gravity-tree-view/models/node-state.mjs +0 -2
  125. package/esm2022/lib/components/gravity-tree-view/models/tree-callbacks.mjs +0 -2
  126. package/esm2022/lib/components/gravity-tree-view/node/node-checkbox/node-checkbox.component.mjs +0 -26
  127. package/esm2022/lib/components/gravity-tree-view/node/node-name/node-name.component.mjs +0 -13
  128. package/esm2022/lib/components/gravity-tree-view/node/node-toggle/node-toggle.component.mjs +0 -15
  129. package/esm2022/lib/components/gravity-tree-view/node/node.component.mjs +0 -17
  130. package/esm2022/lib/components/gravity-tree-view/service/tree-service.mjs +0 -242
  131. package/esm2022/lib/gravity-design-system.module.mjs +0 -370
  132. package/esm2022/lib/layout/gravity-header/gravity-header.component.mjs +0 -72
  133. package/esm2022/lib/layout/gravity-menu/gravity-menu.component.mjs +0 -232
  134. package/esm2022/lib/model/gravity-menu-items.model.mjs +0 -5
  135. package/esm2022/lib/model/gravity-push-notifications.model.mjs +0 -2
  136. package/esm2022/lib/services/gravity-dialog-manager.service.mjs +0 -48
  137. package/esm2022/lib/services/gravity-dropdown-manager.service.mjs +0 -21
  138. package/esm2022/lib/services/gravity-instant-notifications.service.mjs +0 -23
  139. package/esm2022/lib/services/gravity-push-notifications-service.service.mjs +0 -70
  140. package/esm2022/lib/services/gravity-responsive.service.mjs +0 -47
  141. package/esm2022/lib/vendor/gravity-tooltip/gravity-tooltip.component.mjs +0 -249
  142. package/esm2022/lib/vendor/gravity-tooltip/gravity-tooltip.directive.mjs +0 -494
  143. package/esm2022/lib/vendor/gravity-tooltip/gravity-tooltip.module.mjs +0 -41
  144. package/esm2022/lib/vendor/gravity-tooltip/index.mjs +0 -4
  145. package/esm2022/lib/vendor/gravity-tooltip/options.interface.mjs +0 -2
  146. package/esm2022/lib/vendor/gravity-tooltip/options.mjs +0 -38
  147. package/esm2022/lib/vendor/gravity-tooltip/options.service.mjs +0 -7
  148. package/esm2022/progressio_resources-gravity-design-system.mjs +0 -5
  149. package/esm2022/public-api.mjs +0 -62
  150. package/index.d.ts +0 -5
  151. package/lib/components/gravity-attach-file/gravity-attach-file.component.d.ts +0 -22
  152. package/lib/components/gravity-avatar-stack/gravity-avatar-stack.component.d.ts +0 -22
  153. package/lib/components/gravity-backdrop/gravity-backdrop.component.d.ts +0 -6
  154. package/lib/components/gravity-badge/gravity-badge.component.d.ts +0 -12
  155. package/lib/components/gravity-button/gravity-button.component.d.ts +0 -17
  156. package/lib/components/gravity-calendar-v2/datepicker/base/bs-datepicker-container.d.ts +0 -42
  157. package/lib/components/gravity-calendar-v2/datepicker/bs-datepicker-inline.component.d.ts +0 -40
  158. package/lib/components/gravity-calendar-v2/datepicker/bs-datepicker-inline.config.d.ts +0 -6
  159. package/lib/components/gravity-calendar-v2/datepicker/bs-datepicker.callbacks.d.ts +0 -6
  160. package/lib/components/gravity-calendar-v2/datepicker/bs-datepicker.component.d.ts +0 -66
  161. package/lib/components/gravity-calendar-v2/datepicker/bs-datepicker.config.d.ts +0 -53
  162. package/lib/components/gravity-calendar-v2/datepicker/bs-daterangepicker-inline.component.d.ts +0 -37
  163. package/lib/components/gravity-calendar-v2/datepicker/bs-daterangepicker-inline.config.d.ts +0 -7
  164. package/lib/components/gravity-calendar-v2/datepicker/bs-daterangepicker.component.d.ts +0 -61
  165. package/lib/components/gravity-calendar-v2/datepicker/bs-daterangepicker.config.d.ts +0 -7
  166. package/lib/components/gravity-calendar-v2/datepicker/components/bs-datepicker-container.component.d.ts +0 -36
  167. package/lib/components/gravity-calendar-v2/datepicker/components/bs-datepicker-inline-container.component.d.ts +0 -15
  168. package/lib/components/gravity-calendar-v2/datepicker/components/bs-datepicker-navigation-view/bs-datepicker-navigation-view.component.d.ts +0 -26
  169. package/lib/components/gravity-calendar-v2/datepicker/components/bs-daterangepicker-container.component.d.ts +0 -42
  170. package/lib/components/gravity-calendar-v2/datepicker/components/bs-daterangepicker-inline-container.component.d.ts +0 -15
  171. package/lib/components/gravity-calendar-v2/datepicker/components/bs-days-calendar-view/bs-datepicker-day-decorator.directive.d.ts +0 -7
  172. package/lib/components/gravity-calendar-v2/datepicker/components/bs-days-calendar-view/bs-days-calendar-view.component.d.ts +0 -25
  173. package/lib/components/gravity-calendar-v2/datepicker/components/bs-months-calendar-view/bs-months-calendar-view.component.d.ts +0 -23
  174. package/lib/components/gravity-calendar-v2/datepicker/components/bs-years-calendar-view/bs-years-calendar-view.component.d.ts +0 -22
  175. package/lib/components/gravity-calendar-v2/datepicker/datepicker-animations.d.ts +0 -3
  176. package/lib/components/gravity-calendar-v2/datepicker/engine/calc-days-calendar.d.ts +0 -2
  177. package/lib/components/gravity-calendar-v2/datepicker/engine/flag-days-calendar.d.ts +0 -12
  178. package/lib/components/gravity-calendar-v2/datepicker/engine/flag-months-calendar.d.ts +0 -12
  179. package/lib/components/gravity-calendar-v2/datepicker/engine/flag-years-calendar.d.ts +0 -13
  180. package/lib/components/gravity-calendar-v2/datepicker/engine/format-days-calendar.d.ts +0 -2
  181. package/lib/components/gravity-calendar-v2/datepicker/engine/format-months-calendar.d.ts +0 -2
  182. package/lib/components/gravity-calendar-v2/datepicker/engine/format-years-calendar.d.ts +0 -4
  183. package/lib/components/gravity-calendar-v2/datepicker/engine/view-mode.d.ts +0 -2
  184. package/lib/components/gravity-calendar-v2/datepicker/models/index.d.ts +0 -86
  185. package/lib/components/gravity-calendar-v2/datepicker/reducer/_defaults.d.ts +0 -3
  186. package/lib/components/gravity-calendar-v2/datepicker/reducer/bs-datepicker.actions.d.ts +0 -34
  187. package/lib/components/gravity-calendar-v2/datepicker/reducer/bs-datepicker.effects.d.ts +0 -34
  188. package/lib/components/gravity-calendar-v2/datepicker/reducer/bs-datepicker.reducer.d.ts +0 -3
  189. package/lib/components/gravity-calendar-v2/datepicker/reducer/bs-datepicker.state.d.ts +0 -34
  190. package/lib/components/gravity-calendar-v2/datepicker/reducer/bs-datepicker.store.d.ts +0 -8
  191. package/lib/components/gravity-calendar-v2/datepicker/services/header-type.service.d.ts +0 -17
  192. package/lib/components/gravity-calendar-v2/datepicker/utils/bs-calendar-utils.d.ts +0 -13
  193. package/lib/components/gravity-calendar-v2/datepicker/utils/date-abbreviation.pipe.d.ts +0 -13
  194. package/lib/components/gravity-calendar-v2/datepicker/utils/matrix-utils.d.ts +0 -9
  195. package/lib/components/gravity-calendar-v2/gravity-calendar-v2.component.d.ts +0 -57
  196. package/lib/components/gravity-card-button/gravity-card-button.component.d.ts +0 -15
  197. package/lib/components/gravity-checkbox/gravity-checkbox.component.d.ts +0 -21
  198. package/lib/components/gravity-chip-group/gravity-chip-group.component.d.ts +0 -19
  199. package/lib/components/gravity-currency/gravity-currency.component.d.ts +0 -13
  200. package/lib/components/gravity-currency-display-v2/gravity-currency-display-v2.component.d.ts +0 -16
  201. package/lib/components/gravity-currency-dropdown-short/gravity-currency-dropdown-short.component.d.ts +0 -32
  202. package/lib/components/gravity-data-views-v2/gravity-data-views-v2.component.d.ts +0 -22
  203. package/lib/components/gravity-date-picker/components/day-calendar/day-calendar.component.d.ts +0 -105
  204. package/lib/components/gravity-date-picker/components/day-calendar/range-days-calendar.utils.d.ts +0 -12
  205. package/lib/components/gravity-date-picker/components/month-calendar/month-calendar.component.d.ts +0 -71
  206. package/lib/components/gravity-date-picker/components/year-calendar/year-calendar.component.d.ts +0 -70
  207. package/lib/components/gravity-date-picker/gravity-date-picker.component.d.ts +0 -64
  208. package/lib/components/gravity-date-picker/shared/date-picker.constants.d.ts +0 -52
  209. package/lib/components/gravity-date-picker/shared/date-picker.modal.d.ts +0 -25
  210. package/lib/components/gravity-date-picker/shared/date-picker.utils.d.ts +0 -10
  211. package/lib/components/gravity-detail-container/gravity-detail-container.component.d.ts +0 -28
  212. package/lib/components/gravity-dialog/gravity-dialog.component.d.ts +0 -22
  213. package/lib/components/gravity-dropdown-label/gravity-dropdown-label.component.d.ts +0 -19
  214. package/lib/components/gravity-dropdown-list/filter-by.pipe.d.ts +0 -10
  215. package/lib/components/gravity-dropdown-list/gravity-dropdown-list.component.d.ts +0 -84
  216. package/lib/components/gravity-dropdown-list-display/display-currency-items.d.ts +0 -12
  217. package/lib/components/gravity-dropdown-list-display/gravity-dropdown-list-display.component.d.ts +0 -52
  218. package/lib/components/gravity-editable-input/gravity-editable-input.component.d.ts +0 -19
  219. package/lib/components/gravity-generic-avatar/gravity-generic-avatar.component.d.ts +0 -11
  220. package/lib/components/gravity-generic-avatar-secondary/gravity-generic-avatar-secondary.component.d.ts +0 -11
  221. package/lib/components/gravity-icon/gravity-icon.component.d.ts +0 -85
  222. package/lib/components/gravity-icon-button/gravity-icon-button.component.d.ts +0 -22
  223. package/lib/components/gravity-link/gravity-link.component.d.ts +0 -14
  224. package/lib/components/gravity-modal/gravity-modal.component.d.ts +0 -19
  225. package/lib/components/gravity-modal/gravity-modal.model.d.ts +0 -17
  226. package/lib/components/gravity-multi-language/gravity-multi-language.component.d.ts +0 -12
  227. package/lib/components/gravity-navigation-card/gravity-navigation-card.component.d.ts +0 -24
  228. package/lib/components/gravity-network-pill/gravity-network-pill.component.d.ts +0 -14
  229. package/lib/components/gravity-notification/gravity-notification-content.interface.d.ts +0 -7
  230. package/lib/components/gravity-notification/gravity-notification.component.d.ts +0 -12
  231. package/lib/components/gravity-notification-instant/gravity-notification-instant-container.component.d.ts +0 -10
  232. package/lib/components/gravity-pagination/gravity-pagination.component.d.ts +0 -24
  233. package/lib/components/gravity-push-notifications/gravity-push-notifications.component.d.ts +0 -21
  234. package/lib/components/gravity-radio-button/gravity-radio-button.component.d.ts +0 -14
  235. package/lib/components/gravity-segmented-button/gravity-segmented-button.component.d.ts +0 -33
  236. package/lib/components/gravity-status-indicator/gravity-status-indicator.component.d.ts +0 -14
  237. package/lib/components/gravity-stepper/gravity-stepper.component.d.ts +0 -13
  238. package/lib/components/gravity-switch/gravity-switch.component.d.ts +0 -24
  239. package/lib/components/gravity-tab-primary/gravity-tab-primary.component.d.ts +0 -16
  240. package/lib/components/gravity-tab-secondary/gravity-tab-secondary.component.d.ts +0 -17
  241. package/lib/components/gravity-table/gravity-table.component.d.ts +0 -25
  242. package/lib/components/gravity-tables-v2/gravity-tables-v2.component.d.ts +0 -7
  243. package/lib/components/gravity-text-field/gravity-text-field.component.d.ts +0 -62
  244. package/lib/components/gravity-text-field-amount-only/gravity-text-field-amount-only.component.d.ts +0 -43
  245. package/lib/components/gravity-text-field-number-only/gravity-text-field-number-only.component.d.ts +0 -30
  246. package/lib/components/gravity-tooltip-container/gravity-tooltip-container.component.d.ts +0 -40
  247. package/lib/components/gravity-tree-view/gravity-tree-view.component.d.ts +0 -21
  248. package/lib/components/gravity-tree-view/models/node-item.d.ts +0 -10
  249. package/lib/components/gravity-tree-view/models/node-selected-state.d.ts +0 -5
  250. package/lib/components/gravity-tree-view/models/node-state.d.ts +0 -14
  251. package/lib/components/gravity-tree-view/models/tree-callbacks.d.ts +0 -9
  252. package/lib/components/gravity-tree-view/node/node-checkbox/node-checkbox.component.d.ts +0 -11
  253. package/lib/components/gravity-tree-view/node/node-name/node-name.component.d.ts +0 -7
  254. package/lib/components/gravity-tree-view/node/node-toggle/node-toggle.component.d.ts +0 -7
  255. package/lib/components/gravity-tree-view/node/node.component.d.ts +0 -7
  256. package/lib/components/gravity-tree-view/service/tree-service.d.ts +0 -42
  257. package/lib/gravity-design-system.module.d.ts +0 -85
  258. package/lib/layout/gravity-header/gravity-header.component.d.ts +0 -36
  259. package/lib/layout/gravity-menu/gravity-menu.component.d.ts +0 -53
  260. package/lib/model/gravity-menu-items.model.d.ts +0 -31
  261. package/lib/model/gravity-push-notifications.model.d.ts +0 -22
  262. package/lib/services/gravity-dialog-manager.service.d.ts +0 -17
  263. package/lib/services/gravity-dropdown-manager.service.d.ts +0 -12
  264. package/lib/services/gravity-instant-notifications.service.d.ts +0 -10
  265. package/lib/services/gravity-push-notifications-service.service.d.ts +0 -14
  266. package/lib/services/gravity-responsive.service.d.ts +0 -11
  267. package/lib/vendor/gravity-tooltip/gravity-tooltip.component.d.ts +0 -44
  268. package/lib/vendor/gravity-tooltip/gravity-tooltip.directive.d.ts +0 -113
  269. package/lib/vendor/gravity-tooltip/gravity-tooltip.module.d.ts +0 -12
  270. package/lib/vendor/gravity-tooltip/index.d.ts +0 -3
  271. package/lib/vendor/gravity-tooltip/options.d.ts +0 -24
  272. package/lib/vendor/gravity-tooltip/options.interface.d.ts +0 -42
  273. package/lib/vendor/gravity-tooltip/options.service.d.ts +0 -7
  274. package/public-api.d.ts +0 -53
@@ -1,47 +0,0 @@
1
- import { HostListener, Injectable } from "@angular/core";
2
- import * as i0 from "@angular/core";
3
- export class GravityResponsiveService {
4
- constructor() {
5
- this.breakpoints = {
6
- xs: 0,
7
- sm: 576,
8
- md: 992,
9
- lg: 1440,
10
- xl: 1920
11
- };
12
- this.onResize();
13
- }
14
- getResolution() {
15
- if (this.currentResolutionWidth <= this.breakpoints.xs) {
16
- return 'xs';
17
- }
18
- else if (this.currentResolutionWidth > this.breakpoints.xs && this.currentResolutionWidth <= this.breakpoints.sm) {
19
- return 'sm';
20
- }
21
- else if (this.currentResolutionWidth > this.breakpoints.sm && this.currentResolutionWidth <= this.breakpoints.md) {
22
- return 'md';
23
- }
24
- else if (this.currentResolutionWidth > this.breakpoints.md && this.currentResolutionWidth <= this.breakpoints.lg) {
25
- return 'lg';
26
- }
27
- else {
28
- return 'xl';
29
- }
30
- }
31
- onResize() {
32
- this.currentResolutionWidth = window.innerWidth;
33
- }
34
- isMobile() {
35
- return this.getResolution() == 'md' || this.getResolution() == 'sm';
36
- }
37
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GravityResponsiveService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
38
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GravityResponsiveService, providedIn: 'root' }); }
39
- }
40
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GravityResponsiveService, decorators: [{
41
- type: Injectable,
42
- args: [{ providedIn: 'root' }]
43
- }], ctorParameters: function () { return []; }, propDecorators: { onResize: [{
44
- type: HostListener,
45
- args: ['window:resize', ['$event']]
46
- }] } });
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3Jhdml0eS1yZXNwb25zaXZlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ncmF2aXR5LWRlc2lnbi1zeXN0ZW0vc3JjL2xpYi9zZXJ2aWNlcy9ncmF2aXR5LXJlc3BvbnNpdmUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsWUFBWSxFQUFFLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQzs7QUFHdkQsTUFBTSxPQUFPLHdCQUF3QjtJQVVuQztRQVJRLGdCQUFXLEdBQUc7WUFDcEIsRUFBRSxFQUFFLENBQUM7WUFDTCxFQUFFLEVBQUUsR0FBRztZQUNQLEVBQUUsRUFBRSxHQUFHO1lBQ1AsRUFBRSxFQUFFLElBQUk7WUFDUixFQUFFLEVBQUUsSUFBSTtTQUNULENBQUE7UUFHQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDbEIsQ0FBQztJQUVNLGFBQWE7UUFDbEIsSUFBSSxJQUFJLENBQUMsc0JBQXNCLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxFQUFFLEVBQUU7WUFDdEQsT0FBTyxJQUFJLENBQUM7U0FDYjthQUFNLElBQUksSUFBSSxDQUFDLHNCQUFzQixHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxJQUFJLElBQUksQ0FBQyxzQkFBc0IsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLEVBQUUsRUFBRTtZQUNsSCxPQUFPLElBQUksQ0FBQztTQUNiO2FBQU0sSUFBSSxJQUFJLENBQUMsc0JBQXNCLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxFQUFFLElBQUksSUFBSSxDQUFDLHNCQUFzQixJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxFQUFFO1lBQ2xILE9BQU8sSUFBSSxDQUFDO1NBQ2I7YUFBTSxJQUFJLElBQUksQ0FBQyxzQkFBc0IsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEVBQUUsSUFBSSxJQUFJLENBQUMsc0JBQXNCLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxFQUFFLEVBQUU7WUFDbEgsT0FBTyxJQUFJLENBQUM7U0FDYjthQUFNO1lBQ0wsT0FBTyxJQUFJLENBQUM7U0FDYjtJQUNILENBQUM7SUFHTyxRQUFRO1FBQ2QsSUFBSSxDQUFDLHNCQUFzQixHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUM7SUFDbEQsQ0FBQztJQUVNLFFBQVE7UUFDYixPQUFPLElBQUksQ0FBQyxhQUFhLEVBQUUsSUFBSSxJQUFJLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRSxJQUFJLElBQUksQ0FBQztJQUN0RSxDQUFDOytHQW5DVSx3QkFBd0I7bUhBQXhCLHdCQUF3QixjQURaLE1BQU07OzRGQUNsQix3QkFBd0I7a0JBRHBDLFVBQVU7bUJBQUMsRUFBQyxVQUFVLEVBQUUsTUFBTSxFQUFDOzBFQThCdEIsUUFBUTtzQkFEZixZQUFZO3VCQUFDLGVBQWUsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SG9zdExpc3RlbmVyLCBJbmplY3RhYmxlfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuXG5ASW5qZWN0YWJsZSh7cHJvdmlkZWRJbjogJ3Jvb3QnfSlcbmV4cG9ydCBjbGFzcyBHcmF2aXR5UmVzcG9uc2l2ZVNlcnZpY2Uge1xuICBwdWJsaWMgY3VycmVudFJlc29sdXRpb25XaWR0aDogbnVtYmVyO1xuICBwcml2YXRlIGJyZWFrcG9pbnRzID0ge1xuICAgIHhzOiAwLFxuICAgIHNtOiA1NzYsXG4gICAgbWQ6IDk5MixcbiAgICBsZzogMTQ0MCxcbiAgICB4bDogMTkyMFxuICB9XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5vblJlc2l6ZSgpO1xuICB9XG5cbiAgcHVibGljIGdldFJlc29sdXRpb24oKTogJ3hzJyB8ICdzbScgfCAnbWQnIHwgJ2xnJyB8ICd4bCcge1xuICAgIGlmICh0aGlzLmN1cnJlbnRSZXNvbHV0aW9uV2lkdGggPD0gdGhpcy5icmVha3BvaW50cy54cykge1xuICAgICAgcmV0dXJuICd4cyc7XG4gICAgfSBlbHNlIGlmICh0aGlzLmN1cnJlbnRSZXNvbHV0aW9uV2lkdGggPiB0aGlzLmJyZWFrcG9pbnRzLnhzICYmIHRoaXMuY3VycmVudFJlc29sdXRpb25XaWR0aCA8PSB0aGlzLmJyZWFrcG9pbnRzLnNtKSB7XG4gICAgICByZXR1cm4gJ3NtJztcbiAgICB9IGVsc2UgaWYgKHRoaXMuY3VycmVudFJlc29sdXRpb25XaWR0aCA+IHRoaXMuYnJlYWtwb2ludHMuc20gJiYgdGhpcy5jdXJyZW50UmVzb2x1dGlvbldpZHRoIDw9IHRoaXMuYnJlYWtwb2ludHMubWQpIHtcbiAgICAgIHJldHVybiAnbWQnO1xuICAgIH0gZWxzZSBpZiAodGhpcy5jdXJyZW50UmVzb2x1dGlvbldpZHRoID4gdGhpcy5icmVha3BvaW50cy5tZCAmJiB0aGlzLmN1cnJlbnRSZXNvbHV0aW9uV2lkdGggPD0gdGhpcy5icmVha3BvaW50cy5sZykge1xuICAgICAgcmV0dXJuICdsZyc7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiAneGwnO1xuICAgIH1cbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnLCBbJyRldmVudCddKVxuICBwcml2YXRlIG9uUmVzaXplKCk6IHZvaWQge1xuICAgIHRoaXMuY3VycmVudFJlc29sdXRpb25XaWR0aCA9IHdpbmRvdy5pbm5lcldpZHRoO1xuICB9XG5cbiAgcHVibGljIGlzTW9iaWxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmdldFJlc29sdXRpb24oKSA9PSAnbWQnIHx8IHRoaXMuZ2V0UmVzb2x1dGlvbigpID09ICdzbSc7XG4gIH1cbn1cbiJdfQ==
@@ -1,249 +0,0 @@
1
- import { Component, EventEmitter, HostBinding, HostListener, Input } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "@angular/common";
4
- export class GravityTooltipComponent {
5
- transitionEnd() {
6
- if (this.show) {
7
- this.events.emit({
8
- type: 'shown'
9
- });
10
- }
11
- }
12
- set show(value) {
13
- if (value) {
14
- this.setPosition();
15
- }
16
- this._show = this.hostClassShow = value;
17
- }
18
- get show() {
19
- return this._show;
20
- }
21
- get placement() {
22
- return this.data.options.placement;
23
- }
24
- get autoPlacement() {
25
- return this.data.options.autoPlacement;
26
- }
27
- get element() {
28
- return this.data.element;
29
- }
30
- get elementPosition() {
31
- return this.data.elementPosition;
32
- }
33
- get options() {
34
- return this.data.options;
35
- }
36
- get value() {
37
- return this.data.value;
38
- }
39
- get tooltipOffset() {
40
- const base = Number(this.data.options.offset);
41
- if (this.options['persistent']) {
42
- return base + 18;
43
- }
44
- return base;
45
- }
46
- get isThemeLight() {
47
- return this.options['theme'] === 'light';
48
- }
49
- constructor(elementRef, renderer) {
50
- this.elementRef = elementRef;
51
- this.renderer = renderer;
52
- this._show = false;
53
- this.events = new EventEmitter();
54
- }
55
- ngOnInit() {
56
- this.setCustomClass();
57
- this.setStyles();
58
- }
59
- setPosition() {
60
- if (this.setHostStyle(this.placement)) {
61
- this.setPlacementClass(this.placement);
62
- return;
63
- }
64
- else {
65
- /* Is tooltip outside the visible area */
66
- const placements = ['top', 'top-left', 'top-right', 'right', 'right-top', 'right-bottom', 'bottom', 'bottom-right', 'bottom-left', 'left', 'left-top', 'left-bottom'];
67
- let isPlacementSet;
68
- for (const placement of placements) {
69
- if (this.setHostStyle(placement)) {
70
- this.setPlacementClass(placement);
71
- isPlacementSet = true;
72
- return;
73
- }
74
- }
75
- /* Set original placement */
76
- if (!isPlacementSet) {
77
- this.setHostStyle(this.placement, true);
78
- this.setPlacementClass(this.placement);
79
- }
80
- }
81
- }
82
- setPlacementClass(placement) {
83
- this.renderer.addClass(this.elementRef.nativeElement, 'tooltip-' + placement);
84
- }
85
- setHostStyle(placement, disableAutoPlacement = false) {
86
- const isSvg = this.element instanceof SVGElement;
87
- const tooltip = this.elementRef.nativeElement;
88
- const isCustomPosition = !this.elementPosition.right;
89
- let elementHeight = isSvg ? this.element.getBoundingClientRect().height : this.element.offsetHeight;
90
- let elementWidth = isSvg ? this.element.getBoundingClientRect().width : this.element.offsetWidth;
91
- const tooltipHeight = tooltip.clientHeight;
92
- const tooltipWidth = tooltip.clientWidth;
93
- const scrollY = window.pageYOffset;
94
- if (isCustomPosition) {
95
- elementHeight = 0;
96
- elementWidth = 0;
97
- }
98
- let topStyle;
99
- let leftStyle;
100
- switch (placement) {
101
- case 'top':
102
- topStyle = (this.elementPosition.top + scrollY) - (tooltipHeight + this.tooltipOffset);
103
- leftStyle = (this.elementPosition.left + elementWidth / 2) - tooltipWidth / 2;
104
- break;
105
- case 'top-left':
106
- topStyle = (this.elementPosition.top + scrollY) - (tooltipHeight + this.tooltipOffset);
107
- leftStyle = (this.elementPosition.left + elementWidth / 2) - (tooltipWidth * 0.1);
108
- break;
109
- case 'top-right':
110
- topStyle = (this.elementPosition.top + scrollY) - (tooltipHeight + this.tooltipOffset);
111
- leftStyle = (this.elementPosition.left + elementWidth / 2) - (tooltipWidth * 0.9);
112
- break;
113
- case 'bottom':
114
- topStyle = (this.elementPosition.top + scrollY) + elementHeight + this.tooltipOffset;
115
- leftStyle = (this.elementPosition.left + elementWidth / 2) - tooltipWidth / 2;
116
- break;
117
- case 'bottom-left':
118
- topStyle = (this.elementPosition.top + scrollY) + elementHeight + this.tooltipOffset;
119
- leftStyle = (this.elementPosition.left + elementWidth / 2) - (tooltipWidth * 0.1);
120
- break;
121
- case 'bottom-right':
122
- topStyle = (this.elementPosition.top + scrollY) + elementHeight + this.tooltipOffset;
123
- leftStyle = (this.elementPosition.left + elementWidth / 2) - (tooltipWidth * 0.9);
124
- break;
125
- case 'left':
126
- leftStyle = this.elementPosition.left - tooltipWidth - this.tooltipOffset;
127
- topStyle = (this.elementPosition.top + scrollY) + elementHeight / 2 - tooltipHeight / 2;
128
- break;
129
- case 'left-top':
130
- leftStyle = this.elementPosition.left - tooltipWidth - this.tooltipOffset;
131
- topStyle = (this.elementPosition.top + scrollY + elementHeight / 2) - (tooltipHeight * 0.1);
132
- break;
133
- case 'left-bottom':
134
- leftStyle = this.elementPosition.left - tooltipWidth - this.tooltipOffset;
135
- topStyle = (this.elementPosition.top + scrollY + elementHeight / 2) - (tooltipHeight * 0.9);
136
- break;
137
- case 'right':
138
- leftStyle = this.elementPosition.left + elementWidth + this.tooltipOffset;
139
- topStyle = (this.elementPosition.top + scrollY) + elementHeight / 2 - tooltipHeight / 2;
140
- break;
141
- case 'right-top':
142
- leftStyle = this.elementPosition.left + elementWidth + this.tooltipOffset;
143
- topStyle = (this.elementPosition.top + scrollY + elementHeight / 2) - (tooltipHeight * 0.1);
144
- break;
145
- case 'right-bottom':
146
- leftStyle = this.elementPosition.left + elementWidth + this.tooltipOffset;
147
- topStyle = (this.elementPosition.top + scrollY + elementHeight / 2) - (tooltipHeight * 0.9);
148
- break;
149
- default:
150
- return false;
151
- }
152
- /* Is tooltip outside the visible area */
153
- if (this.autoPlacement && !disableAutoPlacement) {
154
- const topEdge = topStyle;
155
- const bottomEdge = topStyle + tooltipHeight;
156
- const leftEdge = leftStyle;
157
- const rightEdge = leftStyle + tooltipWidth;
158
- const bodyHeight = window.innerHeight + scrollY;
159
- const bodyWidth = document.body.clientWidth;
160
- if (topEdge < 0 || bottomEdge > bodyHeight || leftEdge < 0 || rightEdge > bodyWidth) {
161
- return false;
162
- }
163
- }
164
- this.hostStyleTop = topStyle + 'px';
165
- this.hostStyleLeft = leftStyle + 'px';
166
- return true;
167
- }
168
- setZIndex() {
169
- if (this.options['zIndex'] !== 0) {
170
- this.hostStyleZIndex = this.options['zIndex'];
171
- }
172
- }
173
- setCustomClass() {
174
- if (this.options['tooltipClass']) {
175
- this.options['tooltipClass'].split(' ').forEach((className) => {
176
- this.renderer.addClass(this.elementRef.nativeElement, className);
177
- });
178
- }
179
- }
180
- setAnimationDuration() {
181
- if (Number(this.options['animationDuration']) != this.options['animationDurationDefault']) {
182
- this.hostStyleTransition = 'opacity ' + this.options['animationDuration'] + 'ms';
183
- }
184
- }
185
- setStyles() {
186
- this.setZIndex();
187
- this.setAnimationDuration();
188
- this.hostClassShadow = this.options['shadow'];
189
- this.hostClassLight = this.isThemeLight;
190
- this.hostStyleMaxWidth = this.options['maxWidth'];
191
- this.hostStyleWidth = this.options['width'] ? this.options['width'] : '';
192
- this.hostClassNoPointer = !this.options['persistent'];
193
- this.hostClassPersistent = !!this.options['persistent'];
194
- }
195
- closeTooltip() {
196
- this.show = false;
197
- this.events.emit({ type: 'hide', position: this.data.elementPosition });
198
- }
199
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GravityTooltipComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }
200
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: GravityTooltipComponent, selector: "tooltip", inputs: { data: "data", show: "show" }, host: { listeners: { "transitionend": "transitionEnd($event)" }, properties: { "style.top": "this.hostStyleTop", "style.left": "this.hostStyleLeft", "style.z-index": "this.hostStyleZIndex", "style.transition": "this.hostStyleTransition", "style.width": "this.hostStyleWidth", "style.max-width": "this.hostStyleMaxWidth", "style.pointer-events": "this.hostStylePointerEvents", "class.tooltip-show": "this.hostClassShow", "class.tooltip-shadow": "this.hostClassShadow", "class.tooltip-light": "this.hostClassLight", "class.tooltip-no-pointer": "this.hostClassNoPointer", "class.tooltip-persistent": "this.hostClassPersistent" }, classAttribute: "tooltip" }, ngImport: i0, template: "<div *ngIf=\"isThemeLight\" class=\"tooltip-arrow\"></div>\n\n<!--Si el contentType es template, se usa el ngTemplate sino usa el htmlOrStringTemplate-->\n<div *ngIf=\"options['contentType'] === 'template' else htmlOrStringTemplate\">\n <ng-container *ngTemplateOutlet=\"value\"></ng-container>\n</div>\n\n<ng-template #htmlOrStringTemplate>\n <div [innerHTML]=\"value\"></div>\n</ng-template>\n", styles: [":host{position:absolute;z-index:5;display:block;opacity:0;transition:opacity .3s;top:0;left:0;border-radius:5px}:host.tooltip-show{opacity:1}:host.tooltip-shadow{box-shadow:0 4px 10px #151c2938}:host.tooltip-light.tooltip-shadow{box-shadow:0 4px 10px #151c2938}:host.tooltip-no-pointer{pointer-events:none}:host.tooltip:after{content:\"\";position:absolute;border-style:solid}:host.tooltip-top:after{top:100%;left:50%;margin-left:-5px;border-width:5px;border-color:var(--bg-tooltip-primary) transparent transparent transparent}:host.tooltip-top-left:after{top:100%;left:10%;margin-left:-5px;border-width:5px;border-color:var(--bg-tooltip-primary) transparent transparent transparent}:host.tooltip-top-right:after{top:100%;left:90%;margin-left:-5px;border-width:5px;border-color:var(--bg-tooltip-primary) transparent transparent transparent}:host.tooltip-bottom:after{bottom:100%;left:50%;margin-left:-5px;border-width:5px;border-color:transparent transparent var(--bg-tooltip-primary) transparent}:host.tooltip-bottom-left:after{bottom:100%;left:10%;margin-left:-5px;border-width:5px;border-color:transparent transparent var(--bg-tooltip-primary) transparent}:host.tooltip-bottom-right:after{bottom:100%;left:90%;margin-left:-5px;border-width:5px;border-color:transparent transparent var(--bg-tooltip-primary) transparent}:host.tooltip-left:after{top:50%;left:100%;margin-top:-5px;border-width:5px;border-color:transparent transparent transparent var(--bg-tooltip-primary)}:host.tooltip-left-top:after{top:10%;left:100%;margin-top:-5px;border-width:5px;border-color:transparent transparent transparent var(--bg-tooltip-primary)}:host.tooltip-left-bottom:after{top:90%;left:100%;margin-top:-5px;border-width:5px;border-color:transparent transparent transparent var(--bg-tooltip-primary)}:host.tooltip-right:after{top:50%;right:100%;margin-top:-5px;border-width:5px;border-color:transparent var(--bg-tooltip-primary) transparent transparent}:host.tooltip-right-top:after{top:10%;right:100%;margin-top:-5px;border-width:5px;border-color:transparent var(--bg-tooltip-primary) transparent transparent}:host.tooltip-right-bottom:after{top:90%;right:100%;margin-top:-5px;border-width:5px;border-color:transparent var(--bg-tooltip-primary) transparent transparent}:host.tooltip-light:after{display:none}:host.tooltip-light{border:1px solid rgba(0,0,0,.06);background-color:#fff;color:#000}:host.tooltip-light .tooltip-arrow{position:absolute;width:10px;height:10px;transform:rotate(135deg);background-color:#00000012}:host.tooltip-light .tooltip-arrow:after{background-color:#fff;content:\"\";display:block;position:absolute;width:10px;height:10px}:host.tooltip-top.tooltip-light{margin-top:-2px}:host.tooltip-top.tooltip-light .tooltip-arrow{top:100%;left:50%;margin-top:-4px;margin-left:-5px;background:linear-gradient(to bottom left,rgba(0,0,0,.07) 50%,transparent 50%)}:host.tooltip-top.tooltip-light .tooltip-arrow:after{top:1px;right:1px}:host.tooltip-bottom.tooltip-light .tooltip-arrow{bottom:100%;left:50%;margin-bottom:-4px;margin-left:-5px;background:linear-gradient(to top right,rgba(0,0,0,.1) 50%,transparent 50%)}:host.tooltip-bottom.tooltip-light .tooltip-arrow:after{top:-1px;right:-1px}:host.tooltip-left.tooltip-light .tooltip-arrow{top:50%;left:100%;margin-top:-5px;margin-left:-4px;background:linear-gradient(to bottom right,rgba(0,0,0,.07) 50%,transparent 50%)}:host.tooltip-left.tooltip-light .tooltip-arrow:after{top:1px;right:-1px}:host.tooltip-right.tooltip-light .tooltip-arrow{top:50%;right:100%;margin-top:-5px;margin-right:-4px;background:linear-gradient(to top left,rgba(0,0,0,.07) 50%,transparent 50%)}:host.tooltip-right.tooltip-light .tooltip-arrow:after{top:-1px;right:1px}:host.tooltip-persistent.tooltip:after{border-width:24px}:host.tooltip-persistent.tooltip-top:after,:host.tooltip-persistent.tooltip-bottom:after{margin-left:-24px}:host.tooltip-persistent.tooltip-left:after,:host.tooltip-persistent.tooltip-right:after{margin-top:-24px}:host.tooltip-persistent.tooltip-top-right:after{left:85%;margin-left:-24px}:host.tooltip-persistent.tooltip-bottom-right:after{left:85%;margin-left:-24px}:host.tooltip-persistent.tooltip-right-bottom:after{top:85%;margin-top:-24px}:host.tooltip-persistent.tooltip-left-bottom:after{top:85%;margin-top:-24px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] }); }
201
- }
202
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GravityTooltipComponent, decorators: [{
203
- type: Component,
204
- args: [{ selector: 'tooltip', host: { 'class': 'tooltip' }, template: "<div *ngIf=\"isThemeLight\" class=\"tooltip-arrow\"></div>\n\n<!--Si el contentType es template, se usa el ngTemplate sino usa el htmlOrStringTemplate-->\n<div *ngIf=\"options['contentType'] === 'template' else htmlOrStringTemplate\">\n <ng-container *ngTemplateOutlet=\"value\"></ng-container>\n</div>\n\n<ng-template #htmlOrStringTemplate>\n <div [innerHTML]=\"value\"></div>\n</ng-template>\n", styles: [":host{position:absolute;z-index:5;display:block;opacity:0;transition:opacity .3s;top:0;left:0;border-radius:5px}:host.tooltip-show{opacity:1}:host.tooltip-shadow{box-shadow:0 4px 10px #151c2938}:host.tooltip-light.tooltip-shadow{box-shadow:0 4px 10px #151c2938}:host.tooltip-no-pointer{pointer-events:none}:host.tooltip:after{content:\"\";position:absolute;border-style:solid}:host.tooltip-top:after{top:100%;left:50%;margin-left:-5px;border-width:5px;border-color:var(--bg-tooltip-primary) transparent transparent transparent}:host.tooltip-top-left:after{top:100%;left:10%;margin-left:-5px;border-width:5px;border-color:var(--bg-tooltip-primary) transparent transparent transparent}:host.tooltip-top-right:after{top:100%;left:90%;margin-left:-5px;border-width:5px;border-color:var(--bg-tooltip-primary) transparent transparent transparent}:host.tooltip-bottom:after{bottom:100%;left:50%;margin-left:-5px;border-width:5px;border-color:transparent transparent var(--bg-tooltip-primary) transparent}:host.tooltip-bottom-left:after{bottom:100%;left:10%;margin-left:-5px;border-width:5px;border-color:transparent transparent var(--bg-tooltip-primary) transparent}:host.tooltip-bottom-right:after{bottom:100%;left:90%;margin-left:-5px;border-width:5px;border-color:transparent transparent var(--bg-tooltip-primary) transparent}:host.tooltip-left:after{top:50%;left:100%;margin-top:-5px;border-width:5px;border-color:transparent transparent transparent var(--bg-tooltip-primary)}:host.tooltip-left-top:after{top:10%;left:100%;margin-top:-5px;border-width:5px;border-color:transparent transparent transparent var(--bg-tooltip-primary)}:host.tooltip-left-bottom:after{top:90%;left:100%;margin-top:-5px;border-width:5px;border-color:transparent transparent transparent var(--bg-tooltip-primary)}:host.tooltip-right:after{top:50%;right:100%;margin-top:-5px;border-width:5px;border-color:transparent var(--bg-tooltip-primary) transparent transparent}:host.tooltip-right-top:after{top:10%;right:100%;margin-top:-5px;border-width:5px;border-color:transparent var(--bg-tooltip-primary) transparent transparent}:host.tooltip-right-bottom:after{top:90%;right:100%;margin-top:-5px;border-width:5px;border-color:transparent var(--bg-tooltip-primary) transparent transparent}:host.tooltip-light:after{display:none}:host.tooltip-light{border:1px solid rgba(0,0,0,.06);background-color:#fff;color:#000}:host.tooltip-light .tooltip-arrow{position:absolute;width:10px;height:10px;transform:rotate(135deg);background-color:#00000012}:host.tooltip-light .tooltip-arrow:after{background-color:#fff;content:\"\";display:block;position:absolute;width:10px;height:10px}:host.tooltip-top.tooltip-light{margin-top:-2px}:host.tooltip-top.tooltip-light .tooltip-arrow{top:100%;left:50%;margin-top:-4px;margin-left:-5px;background:linear-gradient(to bottom left,rgba(0,0,0,.07) 50%,transparent 50%)}:host.tooltip-top.tooltip-light .tooltip-arrow:after{top:1px;right:1px}:host.tooltip-bottom.tooltip-light .tooltip-arrow{bottom:100%;left:50%;margin-bottom:-4px;margin-left:-5px;background:linear-gradient(to top right,rgba(0,0,0,.1) 50%,transparent 50%)}:host.tooltip-bottom.tooltip-light .tooltip-arrow:after{top:-1px;right:-1px}:host.tooltip-left.tooltip-light .tooltip-arrow{top:50%;left:100%;margin-top:-5px;margin-left:-4px;background:linear-gradient(to bottom right,rgba(0,0,0,.07) 50%,transparent 50%)}:host.tooltip-left.tooltip-light .tooltip-arrow:after{top:1px;right:-1px}:host.tooltip-right.tooltip-light .tooltip-arrow{top:50%;right:100%;margin-top:-5px;margin-right:-4px;background:linear-gradient(to top left,rgba(0,0,0,.07) 50%,transparent 50%)}:host.tooltip-right.tooltip-light .tooltip-arrow:after{top:-1px;right:1px}:host.tooltip-persistent.tooltip:after{border-width:24px}:host.tooltip-persistent.tooltip-top:after,:host.tooltip-persistent.tooltip-bottom:after{margin-left:-24px}:host.tooltip-persistent.tooltip-left:after,:host.tooltip-persistent.tooltip-right:after{margin-top:-24px}:host.tooltip-persistent.tooltip-top-right:after{left:85%;margin-left:-24px}:host.tooltip-persistent.tooltip-bottom-right:after{left:85%;margin-left:-24px}:host.tooltip-persistent.tooltip-right-bottom:after{top:85%;margin-top:-24px}:host.tooltip-persistent.tooltip-left-bottom:after{top:85%;margin-top:-24px}\n"] }]
205
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }]; }, propDecorators: { data: [{
206
- type: Input
207
- }], hostStyleTop: [{
208
- type: HostBinding,
209
- args: ['style.top']
210
- }], hostStyleLeft: [{
211
- type: HostBinding,
212
- args: ['style.left']
213
- }], hostStyleZIndex: [{
214
- type: HostBinding,
215
- args: ['style.z-index']
216
- }], hostStyleTransition: [{
217
- type: HostBinding,
218
- args: ['style.transition']
219
- }], hostStyleWidth: [{
220
- type: HostBinding,
221
- args: ['style.width']
222
- }], hostStyleMaxWidth: [{
223
- type: HostBinding,
224
- args: ['style.max-width']
225
- }], hostStylePointerEvents: [{
226
- type: HostBinding,
227
- args: ['style.pointer-events']
228
- }], hostClassShow: [{
229
- type: HostBinding,
230
- args: ['class.tooltip-show']
231
- }], hostClassShadow: [{
232
- type: HostBinding,
233
- args: ['class.tooltip-shadow']
234
- }], hostClassLight: [{
235
- type: HostBinding,
236
- args: ['class.tooltip-light']
237
- }], hostClassNoPointer: [{
238
- type: HostBinding,
239
- args: ['class.tooltip-no-pointer']
240
- }], hostClassPersistent: [{
241
- type: HostBinding,
242
- args: ['class.tooltip-persistent']
243
- }], transitionEnd: [{
244
- type: HostListener,
245
- args: ['transitionend', ['$event']]
246
- }], show: [{
247
- type: Input
248
- }] } });
249
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3Jhdml0eS10b29sdGlwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2dyYXZpdHktZGVzaWduLXN5c3RlbS9zcmMvbGliL3ZlbmRvci9ncmF2aXR5LXRvb2x0aXAvZ3Jhdml0eS10b29sdGlwLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2dyYXZpdHktZGVzaWduLXN5c3RlbS9zcmMvbGliL3ZlbmRvci9ncmF2aXR5LXRvb2x0aXAvZ3Jhdml0eS10b29sdGlwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQWMsWUFBWSxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFvQixNQUFNLGVBQWUsQ0FBQzs7O0FBU3ZILE1BQU0sT0FBTyx1QkFBdUI7SUFvQmxDLGFBQWE7UUFDWCxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDYixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztnQkFDZixJQUFJLEVBQUUsT0FBTzthQUNkLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQztJQUVELElBQWEsSUFBSSxDQUFDLEtBQWM7UUFDOUIsSUFBSSxLQUFLLEVBQUU7WUFDVCxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDcEI7UUFDRCxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDO0lBQzFDLENBQUM7SUFFRCxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUVELElBQUksU0FBUztRQUNYLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDO0lBQ3JDLENBQUM7SUFFRCxJQUFJLGFBQWE7UUFDZixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEs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V0FBVzt1QkFBQyxhQUFhO2dCQUNNLGlCQUFpQjtzQkFBaEQsV0FBVzt1QkFBQyxpQkFBaUI7Z0JBQ08sc0JBQXNCO3NCQUExRCxXQUFXO3VCQUFDLHNCQUFzQjtnQkFDQSxhQUFhO3NCQUEvQyxXQUFXO3VCQUFDLG9CQUFvQjtnQkFDSSxlQUFlO3NCQUFuRCxXQUFXO3VCQUFDLHNCQUFzQjtnQkFDQyxjQUFjO3NCQUFqRCxXQUFXO3VCQUFDLHFCQUFxQjtnQkFDTyxrQkFBa0I7c0JBQTFELFdBQVc7dUJBQUMsMEJBQTBCO2dCQUNFLG1CQUFtQjtzQkFBM0QsV0FBVzt1QkFBQywwQkFBMEI7Z0JBR3ZDLGFBQWE7c0JBRFosWUFBWTt1QkFBQyxlQUFlLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBUzVCLElBQUk7c0JBQWhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSG9zdExpc3RlbmVyLCBJbnB1dCwgT25Jbml0LCBSZW5kZXJlcjJ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0b29sdGlwJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2dyYXZpdHktdG9vbHRpcC5jb21wb25lbnQuaHRtbCcsXG4gIGhvc3Q6IHsnY2xhc3MnOiAndG9vbHRpcCd9LFxuICBzdHlsZVVybHM6IFsnLi9ncmF2aXR5LXRvb2x0aXAuY29tcG9uZW50LnNhc3MnXVxufSlcblxuZXhwb3J0IGNsYXNzIEdyYXZpdHlUb29sdGlwQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgX3Nob3c6IGJvb2xlYW4gPSBmYWxzZTtcbiAgZXZlbnRzID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIEBJbnB1dCgpIGRhdGE6IGFueTtcblxuICBASG9zdEJpbmRpbmcoJ3N0eWxlLnRvcCcpIGhvc3RTdHlsZVRvcCE6IHN0cmluZztcbiAgQEhvc3RCaW5kaW5nKCdzdHlsZS5sZWZ0JykgaG9zdFN0eWxlTGVmdCE6IHN0cmluZztcbiAgQEhvc3RCaW5kaW5nKCdzdHlsZS56LWluZGV4JykgaG9zdFN0eWxlWkluZGV4ITogbnVtYmVyO1xuICBASG9zdEJpbmRpbmcoJ3N0eWxlLnRyYW5zaXRpb24nKSBob3N0U3R5bGVUcmFuc2l0aW9uITogc3RyaW5nO1xuICBASG9zdEJpbmRpbmcoJ3N0eWxlLndpZHRoJykgaG9zdFN0eWxlV2lkdGghOiBzdHJpbmc7XG4gIEBIb3N0QmluZGluZygnc3R5bGUubWF4LXdpZHRoJykgaG9zdFN0eWxlTWF4V2lkdGghOiBzdHJpbmc7XG4gIEBIb3N0QmluZGluZygnc3R5bGUucG9pbnRlci1ldmVudHMnKSBob3N0U3R5bGVQb2ludGVyRXZlbnRzITogc3RyaW5nO1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzLnRvb2x0aXAtc2hvdycpIGhvc3RDbGFzc1Nob3chOiBib29sZWFuO1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzLnRvb2x0aXAtc2hhZG93JykgaG9zdENsYXNzU2hhZG93ITogYm9vbGVhbjtcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy50b29sdGlwLWxpZ2h0JykgaG9zdENsYXNzTGlnaHQhOiBib29sZWFuO1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzLnRvb2x0aXAtbm8tcG9pbnRlcicpIGhvc3RDbGFzc05vUG9pbnRlciE6IGJvb2xlYW47XG4gIEBIb3N0QmluZGluZygnY2xhc3MudG9vbHRpcC1wZXJzaXN0ZW50JykgaG9zdENsYXNzUGVyc2lzdGVudCE6IGJvb2xlYW47XG5cbiAgQEhvc3RMaXN0ZW5lcigndHJhbnNpdGlvbmVuZCcsIFsnJGV2ZW50J10pXG4gIHRyYW5zaXRpb25FbmQoKSB7XG4gICAgaWYgKHRoaXMuc2hvdykge1xuICAgICAgdGhpcy5ldmVudHMuZW1pdCh7XG4gICAgICAgIHR5cGU6ICdzaG93bidcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIEBJbnB1dCgpIHNldCBzaG93KHZhbHVlOiBib29sZWFuKSB7XG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICB0aGlzLnNldFBvc2l0aW9uKCk7XG4gICAgfVxuICAgIHRoaXMuX3Nob3cgPSB0aGlzLmhvc3RDbGFzc1Nob3cgPSB2YWx1ZTtcbiAgfVxuXG4gIGdldCBzaG93KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9zaG93O1xuICB9XG5cbiAgZ2V0IHBsYWNlbWVudCgpIHtcbiAgICByZXR1cm4gdGhpcy5kYXRhLm9wdGlvbnMucGxhY2VtZW50O1xuICB9XG5cbiAgZ2V0IGF1dG9QbGFjZW1lbnQoKSB7XG4gICAgcmV0dXJuIHRoaXMuZGF0YS5vcHRpb25zLmF1dG9QbGFjZW1lbnQ7XG4gIH1cblxuICBnZXQgZWxlbWVudCgpIHtcbiAgICByZXR1cm4gdGhpcy5kYXRhLmVsZW1lbnQ7XG4gIH1cblxuICBnZXQgZWxlbWVudFBvc2l0aW9uKCkge1xuICAgIHJldHVybiB0aGlzLmRhdGEuZWxlbWVudFBvc2l0aW9uO1xuICB9XG5cbiAgZ2V0IG9wdGlvbnMoKSB7XG4gICAgcmV0dXJuIHRoaXMuZGF0YS5vcHRpb25zO1xuICB9XG5cbiAgZ2V0IHZhbHVlKCkge1xuICAgIHJldHVybiB0aGlzLmRhdGEudmFsdWU7XG4gIH1cblxuICBnZXQgdG9vbHRpcE9mZnNldCgpOiBudW1iZXIge1xuICAgIGNvbnN0IGJhc2UgPSBOdW1iZXIodGhpcy5kYXRhLm9wdGlvbnMub2Zmc2V0KTtcblxuICAgIGlmICh0aGlzLm9wdGlvbnNbJ3BlcnNpc3RlbnQnXSkge1xuICAgICAgcmV0dXJuIGJhc2UgKyAxODtcbiAgICB9XG5cbiAgICByZXR1cm4gYmFzZTtcbiAgfVxuXG5cbiAgZ2V0IGlzVGhlbWVMaWdodCgpIHtcbiAgICByZXR1cm4gdGhpcy5vcHRpb25zWyd0aGVtZSddID09PSAnbGlnaHQnO1xuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmLCBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIpIHtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuc2V0Q3VzdG9tQ2xhc3MoKTtcbiAgICB0aGlzLnNldFN0eWxlcygpO1xuICB9XG5cbiAgc2V0UG9zaXRpb24oKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc2V0SG9zdFN0eWxlKHRoaXMucGxhY2VtZW50KSkge1xuICAgICAgdGhpcy5zZXRQbGFjZW1lbnRDbGFzcyh0aGlzLnBsYWNlbWVudCk7XG4gICAgICByZXR1cm47XG4gICAgfSBlbHNlIHtcbiAgICAgIC8qIElzIHRvb2x0aXAgb3V0c2lkZSB0aGUgdmlzaWJsZSBhcmVhICovXG4gICAgICBjb25zdCBwbGFjZW1lbnRzID0gWyd0b3AnLCAndG9wLWxlZnQnLCAndG9wLXJpZ2h0JywgJ3JpZ2h0JywgJ3JpZ2h0LXRvcCcsICdyaWdodC1ib3R0b20nLCAnYm90dG9tJywgJ2JvdHRvbS1yaWdodCcsICdib3R0b20tbGVmdCcsICdsZWZ0JywgJ2xlZnQtdG9wJywgJ2xlZnQtYm90dG9tJ107XG4gICAgICBsZXQgaXNQbGFjZW1lbnRTZXQ7XG5cbiAgICAgIGZvciAoY29uc3QgcGxhY2VtZW50IG9mIHBsYWNlbWVudHMpIHtcbiAgICAgICAgaWYgKHRoaXMuc2V0SG9zdFN0eWxlKHBsYWNlbWVudCkpIHtcbiAgICAgICAgICB0aGlzLnNldFBsYWNlbWVudENsYXNzKHBsYWNlbWVudCk7XG4gICAgICAgICAgaXNQbGFjZW1lbnRTZXQgPSB0cnVlO1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvKiBTZXQgb3JpZ2luYWwgcGxhY2VtZW50ICovXG4gICAgICBpZiAoIWlzUGxhY2VtZW50U2V0KSB7XG4gICAgICAgIHRoaXMuc2V0SG9zdFN0eWxlKHRoaXMucGxhY2VtZW50LCB0cnVlKTtcbiAgICAgICAgdGhpcy5zZXRQbGFjZW1lbnRDbGFzcyh0aGlzLnBsYWNlbWVudCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cblxuICBzZXRQbGFjZW1lbnRDbGFzcyhwbGFjZW1lbnQ6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICd0b29sdGlwLScgKyBwbGFjZW1lbnQpO1xuICB9XG5cbiAgc2V0SG9zdFN0eWxlKHBsYWNlbWVudDogc3RyaW5nLCBkaXNhYmxlQXV0b1BsYWNlbWVudDogYm9vbGVhbiA9IGZhbHNlKTogYm9vbGVhbiB7XG4gICAgY29uc3QgaXNTdmcgPSB0aGlzLmVsZW1lbnQgaW5zdGFuY2VvZiBTVkdFbGVtZW50O1xuICAgIGNvbnN0IHRvb2x0aXAgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgICBjb25zdCBpc0N1c3RvbVBvc2l0aW9uID0gIXRoaXMuZWxlbWVudFBvc2l0aW9uLnJpZ2h0O1xuXG4gICAgbGV0IGVsZW1lbnRIZWlnaHQgPSBpc1N2ZyA/IHRoaXMuZWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQgOiB0aGlzLmVsZW1lbnQub2Zmc2V0SGVpZ2h0O1xuICAgIGxldCBlbGVtZW50V2lkdGggPSBpc1N2ZyA/IHRoaXMuZWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aCA6IHRoaXMuZWxlbWVudC5vZmZzZXRXaWR0aDtcbiAgICBjb25zdCB0b29sdGlwSGVpZ2h0ID0gdG9vbHRpcC5jbGllbnRIZWlnaHQ7XG4gICAgY29uc3QgdG9vbHRpcFdpZHRoID0gdG9vbHRpcC5jbGllbnRXaWR0aDtcbiAgICBjb25zdCBzY3JvbGxZID0gd2luZG93LnBhZ2VZT2Zmc2V0O1xuXG4gICAgaWYgKGlzQ3VzdG9tUG9zaXRpb24pIHtcbiAgICAgIGVsZW1lbnRIZWlnaHQgPSAwO1xuICAgICAgZWxlbWVudFdpZHRoID0gMDtcbiAgICB9XG5cbiAgICBsZXQgdG9wU3R5bGU7XG4gICAgbGV0IGxlZnRTdHlsZTtcblxuICAgIHN3aXRjaCAocGxhY2VtZW50KSB7XG4gICAgICBjYXNlICd0b3AnOlxuICAgICAgICB0b3BTdHlsZSA9ICh0aGlzLmVsZW1lbnRQb3NpdGlvbi50b3AgKyBzY3JvbGxZKSAtICh0b29sdGlwSGVpZ2h0ICsgdGhpcy50b29sdGlwT2Zmc2V0KTtcbiAgICAgICAgbGVmdFN0eWxlID0gKHRoaXMuZWxlbWVudFBvc2l0aW9uLmxlZnQgKyBlbGVtZW50V2lkdGggLyAyKSAtIHRvb2x0aXBXaWR0aCAvIDI7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAndG9wLWxlZnQnOlxuICAgICAgICB0b3BTdHlsZSA9ICh0aGlzLmVsZW1lbnRQb3NpdGlvbi50b3AgKyBzY3JvbGxZKSAtICh0b29sdGlwSGVpZ2h0ICsgdGhpcy50b29sdGlwT2Zmc2V0KTtcbiAgICAgICAgbGVmdFN0eWxlID0gKHRoaXMuZWxlbWVudFBvc2l0aW9uLmxlZnQgKyBlbGVtZW50V2lkdGggLyAyKSAtICh0b29sdGlwV2lkdGggKiAwLjEpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ3RvcC1yaWdodCc6XG4gICAgICAgIHRvcFN0eWxlID0gKHRoaXMuZWxlbWVudFBvc2l0aW9uLnRvcCArIHNjcm9sbFkpIC0gKHRvb2x0aXBIZWlnaHQgKyB0aGlzLnRvb2x0aXBPZmZzZXQpO1xuICAgICAgICBsZWZ0U3R5bGUgPSAodGhpcy5lbGVtZW50UG9zaXRpb24ubGVmdCArIGVsZW1lbnRXaWR0aCAvIDIpIC0gKHRvb2x0aXBXaWR0aCAqIDAuOSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnYm90dG9tJzpcbiAgICAgICAgdG9wU3R5bGUgPSAodGhpcy5lbGVtZW50UG9zaXRpb24udG9wICsgc2Nyb2xsWSkgKyBlbGVtZW50SGVpZ2h0ICsgdGhpcy50b29sdGlwT2Zmc2V0O1xuICAgICAgICBsZWZ0U3R5bGUgPSAodGhpcy5lbGVtZW50UG9zaXRpb24ubGVmdCArIGVsZW1lbnRXaWR0aCAvIDIpIC0gdG9vbHRpcFdpZHRoIC8gMjtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdib3R0b20tbGVmdCc6XG4gICAgICAgIHRvcFN0eWxlID0gKHRoaXMuZWxlbWVudFBvc2l0aW9uLnRvcCArIHNjcm9sbFkpICsgZWxlbWVudEhlaWdodCArIHRoaXMudG9vbHRpcE9mZnNldDtcbiAgICAgICAgbGVmdFN0eWxlID0gKHRoaXMuZWxlbWVudFBvc2l0aW9uLmxlZnQgKyBlbGVtZW50V2lkdGggLyAyKSAtICh0b29sdGlwV2lkdGggKiAwLjEpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ2JvdHRvbS1yaWdodCc6XG4gICAgICAgIHRvcFN0eWxlID0gKHRoaXMuZWxlbWVudFBvc2l0aW9uLnRvcCArIHNjcm9sbFkpICsgZWxlbWVudEhlaWdodCArIHRoaXMudG9vbHRpcE9mZnNldDtcbiAgICAgICAgbGVmdFN0eWxlID0gKHRoaXMuZWxlbWVudFBvc2l0aW9uLmxlZnQgKyBlbGVtZW50V2lkdGggLyAyKSAtICh0b29sdGlwV2lkdGggKiAwLjkpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ2xlZnQnOlxuICAgICAgICBsZWZ0U3R5bGUgPSB0aGlzLmVsZW1lbnRQb3NpdGlvbi5sZWZ0IC0gdG9vbHRpcFdpZHRoIC0gdGhpcy50b29sdGlwT2Zmc2V0O1xuICAgICAgICB0b3BTdHlsZSA9ICh0aGlzLmVsZW1lbnRQb3NpdGlvbi50b3AgKyBzY3JvbGxZKSArIGVsZW1lbnRIZWlnaHQgLyAyIC0gdG9vbHRpcEhlaWdodCAvIDI7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnbGVmdC10b3AnOlxuICAgICAgICBsZWZ0U3R5bGUgPSB0aGlzLmVsZW1lbnRQb3NpdGlvbi5sZWZ0IC0gdG9vbHRpcFdpZHRoIC0gdGhpcy50b29sdGlwT2Zmc2V0O1xuICAgICAgICB0b3BTdHlsZSA9ICh0aGlzLmVsZW1lbnRQb3NpdGlvbi50b3AgKyBzY3JvbGxZICsgZWxlbWVudEhlaWdodCAvIDIpIC0gKHRvb2x0aXBIZWlnaHQgKiAwLjEpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ2xlZnQtYm90dG9tJzpcbiAgICAgICAgbGVmdFN0eWxlID0gdGhpcy5lbGVtZW50UG9zaXRpb24ubGVmdCAtIHRvb2x0aXBXaWR0aCAtIHRoaXMudG9vbHRpcE9mZnNldDtcbiAgICAgICAgdG9wU3R5bGUgPSAodGhpcy5lbGVtZW50UG9zaXRpb24udG9wICsgc2Nyb2xsWSArIGVsZW1lbnRIZWlnaHQgLyAyKSAtICh0b29sdGlwSGVpZ2h0ICogMC45KTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdyaWdodCc6XG4gICAgICAgIGxlZnRTdHlsZSA9IHRoaXMuZWxlbWVudFBvc2l0aW9uLmxlZnQgKyBlbGVtZW50V2lkdGggKyB0aGlzLnRvb2x0aXBPZmZzZXQ7XG4gICAgICAgIHRvcFN0eWxlID0gKHRoaXMuZWxlbWVudFBvc2l0aW9uLnRvcCArIHNjcm9sbFkpICsgZWxlbWVudEhlaWdodCAvIDIgLSB0b29sdGlwSGVpZ2h0IC8gMjtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdyaWdodC10b3AnOlxuICAgICAgICBsZWZ0U3R5bGUgPSB0aGlzLmVsZW1lbnRQb3NpdGlvbi5sZWZ0ICsgZWxlbWVudFdpZHRoICsgdGhpcy50b29sdGlwT2Zmc2V0O1xuICAgICAgICB0b3BTdHlsZSA9ICh0aGlzLmVsZW1lbnRQb3NpdGlvbi50b3AgKyBzY3JvbGxZICsgZWxlbWVudEhlaWdodCAvIDIpIC0gKHRvb2x0aXBIZWlnaHQgKiAwLjEpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ3JpZ2h0LWJvdHRvbSc6XG4gICAgICAgIGxlZnRTdHlsZSA9IHRoaXMuZWxlbWVudFBvc2l0aW9uLmxlZnQgKyBlbGVtZW50V2lkdGggKyB0aGlzLnRvb2x0aXBPZmZzZXQ7XG4gICAgICAgIHRvcFN0eWxlID0gKHRoaXMuZWxlbWVudFBvc2l0aW9uLnRvcCArIHNjcm9sbFkgKyBlbGVtZW50SGVpZ2h0IC8gMikgLSAodG9vbHRpcEhlaWdodCAqIDAuOSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIC8qIElzIHRvb2x0aXAgb3V0c2lkZSB0aGUgdmlzaWJsZSBhcmVhICovXG4gICAgaWYgKHRoaXMuYXV0b1BsYWNlbWVudCAmJiAhZGlzYWJsZUF1dG9QbGFjZW1lbnQpIHtcbiAgICAgIGNvbnN0IHRvcEVkZ2UgPSB0b3BTdHlsZTtcbiAgICAgIGNvbnN0IGJvdHRvbUVkZ2UgPSB0b3BTdHlsZSArIHRvb2x0aXBIZWlnaHQ7XG4gICAgICBjb25zdCBsZWZ0RWRnZSA9IGxlZnRTdHlsZTtcbiAgICAgIGNvbnN0IHJpZ2h0RWRnZSA9IGxlZnRTdHlsZSArIHRvb2x0aXBXaWR0aDtcbiAgICAgIGNvbnN0IGJvZHlIZWlnaHQgPSB3aW5kb3cuaW5uZXJIZWlnaHQgKyBzY3JvbGxZO1xuICAgICAgY29uc3QgYm9keVdpZHRoID0gZG9jdW1lbnQuYm9keS5jbGllbnRXaWR0aDtcblxuICAgICAgaWYgKHRvcEVkZ2UgPCAwIHx8IGJvdHRvbUVkZ2UgPiBib2R5SGVpZ2h0IHx8IGxlZnRFZGdlIDwgMCB8fCByaWdodEVkZ2UgPiBib2R5V2lkdGgpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMuaG9zdFN0eWxlVG9wID0gdG9wU3R5bGUgKyAncHgnO1xuICAgIHRoaXMuaG9zdFN0eWxlTGVmdCA9IGxlZnRTdHlsZSArICdweCc7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICBzZXRaSW5kZXgoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMub3B0aW9uc1snekluZGV4J10gIT09IDApIHtcbiAgICAgIHRoaXMuaG9zdFN0eWxlWkluZGV4ID0gdGhpcy5vcHRpb25zWyd6SW5kZXgnXTtcbiAgICB9XG4gIH1cblxuICBzZXRDdXN0b21DbGFzcygpIHtcbiAgICBpZiAodGhpcy5vcHRpb25zWyd0b29sdGlwQ2xhc3MnXSkge1xuICAgICAgdGhpcy5vcHRpb25zWyd0b29sdGlwQ2xhc3MnXS5zcGxpdCgnICcpLmZvckVhY2goKGNsYXNzTmFtZTogYW55KSA9PiB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsIGNsYXNzTmFtZSk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBzZXRBbmltYXRpb25EdXJhdGlvbigpIHtcbiAgICBpZiAoTnVtYmVyKHRoaXMub3B0aW9uc1snYW5pbWF0aW9uRHVyYXRpb24nXSkgIT0gdGhpcy5vcHRpb25zWydhbmltYXRpb25EdXJhdGlvbkRlZmF1bHQnXSkge1xuICAgICAgdGhpcy5ob3N0U3R5bGVUcmFuc2l0aW9uID0gJ29wYWNpdHkgJyArIHRoaXMub3B0aW9uc1snYW5pbWF0aW9uRHVyYXRpb24nXSArICdtcyc7XG4gICAgfVxuICB9XG5cbiAgc2V0U3R5bGVzKCkge1xuICAgIHRoaXMuc2V0WkluZGV4KCk7XG4gICAgdGhpcy5zZXRBbmltYXRpb25EdXJhdGlvbigpO1xuXG4gICAgdGhpcy5ob3N0Q2xhc3NTaGFkb3cgPSB0aGlzLm9wdGlvbnNbJ3NoYWRvdyddO1xuICAgIHRoaXMuaG9zdENsYXNzTGlnaHQgPSB0aGlzLmlzVGhlbWVMaWdodDtcbiAgICB0aGlzLmhvc3RTdHlsZU1heFdpZHRoID0gdGhpcy5vcHRpb25zWydtYXhXaWR0aCddO1xuICAgIHRoaXMuaG9zdFN0eWxlV2lkdGggPSB0aGlzLm9wdGlvbnNbJ3dpZHRoJ10gPyB0aGlzLm9wdGlvbnNbJ3dpZHRoJ10gOiAnJztcbiAgICB0aGlzLmhvc3RDbGFzc05vUG9pbnRlciA9ICF0aGlzLm9wdGlvbnNbJ3BlcnNpc3RlbnQnXTtcbiAgICB0aGlzLmhvc3RDbGFzc1BlcnNpc3RlbnQgPSAhIXRoaXMub3B0aW9uc1sncGVyc2lzdGVudCddO1xuICB9XG5cbiAgY2xvc2VUb29sdGlwKCkge1xuICAgIHRoaXMuc2hvdyA9IGZhbHNlO1xuICAgIHRoaXMuZXZlbnRzLmVtaXQoeyB0eXBlOiAnaGlkZScsIHBvc2l0aW9uOiB0aGlzLmRhdGEuZWxlbWVudFBvc2l0aW9uIH0pO1xuICB9XG59XG4iLCI8ZGl2ICpuZ0lmPVwiaXNUaGVtZUxpZ2h0XCIgY2xhc3M9XCJ0b29sdGlwLWFycm93XCI+PC9kaXY+XG5cbjwhLS1TaSBlbCBjb250ZW50VHlwZSBlcyB0ZW1wbGF0ZSwgc2UgdXNhIGVsIG5nVGVtcGxhdGUgc2lubyB1c2EgZWwgaHRtbE9yU3RyaW5nVGVtcGxhdGUtLT5cbjxkaXYgKm5nSWY9XCJvcHRpb25zWydjb250ZW50VHlwZSddID09PSAndGVtcGxhdGUnIGVsc2UgaHRtbE9yU3RyaW5nVGVtcGxhdGVcIj5cbiAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInZhbHVlXCI+PC9uZy1jb250YWluZXI+XG48L2Rpdj5cblxuPG5nLXRlbXBsYXRlICNodG1sT3JTdHJpbmdUZW1wbGF0ZT5cbiAgPGRpdiBbaW5uZXJIVE1MXT1cInZhbHVlXCI+PC9kaXY+XG48L25nLXRlbXBsYXRlPlxuIl19