@energycap/components 0.42.4-esbuild.20250131-1219 → 0.42.4-esbuild.20250131-1256

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 (324) hide show
  1. package/esm2022/energycap-components.mjs +5 -0
  2. package/esm2022/lib/components.module.mjs +423 -0
  3. package/esm2022/lib/controls/banner/banner.component.mjs +109 -0
  4. package/esm2022/lib/controls/button/button.component.mjs +106 -0
  5. package/esm2022/lib/controls/button/copy-button-base.directive.mjs +67 -0
  6. package/esm2022/lib/controls/button/copy-button.directive.mjs +28 -0
  7. package/esm2022/lib/controls/button/copy-table-button.directive.mjs +43 -0
  8. package/esm2022/lib/controls/calendar/calendar-item.component.mjs +91 -0
  9. package/esm2022/lib/controls/calendar/calendar.component.mjs +248 -0
  10. package/esm2022/lib/controls/calendar/calendar.types.mjs +2 -0
  11. package/esm2022/lib/controls/checkbox/checkbox.component.mjs +140 -0
  12. package/esm2022/lib/controls/collapsible-toggle/collapsible-toggle.component.mjs +38 -0
  13. package/esm2022/lib/controls/combobox/combobox.component.mjs +879 -0
  14. package/esm2022/lib/controls/date-input/date-input-selection-strategies/date-input-selection-strategy-base.mjs +57 -0
  15. package/esm2022/lib/controls/date-input/date-input-selection-strategies/day-selection-strategy.mjs +62 -0
  16. package/esm2022/lib/controls/date-input/date-input-selection-strategies/last-28-days-selection-strategy.mjs +100 -0
  17. package/esm2022/lib/controls/date-input/date-input-selection-strategies/last-7-days-selection-strategy.mjs +101 -0
  18. package/esm2022/lib/controls/date-input/date-input-selection-strategies/month-selection-strategy.mjs +76 -0
  19. package/esm2022/lib/controls/date-input/date-input-selection-strategies/quarter-selection-strategy.mjs +79 -0
  20. package/esm2022/lib/controls/date-input/date-input-selection-strategies/range-selection-strategy.mjs +210 -0
  21. package/esm2022/lib/controls/date-input/date-input-selection-strategies/year-selection-strategy.mjs +81 -0
  22. package/esm2022/lib/controls/date-input/date-input.component.mjs +464 -0
  23. package/esm2022/lib/controls/date-input/date-input.types.mjs +44 -0
  24. package/esm2022/lib/controls/dropdown/dropdown.component.mjs +243 -0
  25. package/esm2022/lib/controls/file-upload/file-upload.component.mjs +261 -0
  26. package/esm2022/lib/controls/form-control/form-control.component.mjs +98 -0
  27. package/esm2022/lib/controls/form-control-base.mjs +151 -0
  28. package/esm2022/lib/controls/form-control-label/form-control-label.component.mjs +136 -0
  29. package/esm2022/lib/controls/form-group/form-group.component.mjs +261 -0
  30. package/esm2022/lib/controls/help-popover/help-popover.component.mjs +31 -0
  31. package/esm2022/lib/controls/item-picker/item-picker.component.mjs +329 -0
  32. package/esm2022/lib/controls/link-button/link-button.component.mjs +11 -0
  33. package/esm2022/lib/controls/menu/menu.component.mjs +485 -0
  34. package/esm2022/lib/controls/navigation/link-item.mjs +2 -0
  35. package/esm2022/lib/controls/navigation/nav-group.mjs +39 -0
  36. package/esm2022/lib/controls/navigation/nav-item-active.directive.mjs +92 -0
  37. package/esm2022/lib/controls/navigation/nav-item.mjs +2 -0
  38. package/esm2022/lib/controls/numericbox/numericbox.component.mjs +372 -0
  39. package/esm2022/lib/controls/popover/popover.component.mjs +117 -0
  40. package/esm2022/lib/controls/radio-button/radio-button-option.mjs +3 -0
  41. package/esm2022/lib/controls/radio-button/radio-button.component.mjs +82 -0
  42. package/esm2022/lib/controls/select/select.component.mjs +88 -0
  43. package/esm2022/lib/controls/tabs/tabs.component.mjs +47 -0
  44. package/esm2022/lib/controls/textbox/textbox.component.mjs +155 -0
  45. package/esm2022/lib/core/cache.service.mjs +105 -0
  46. package/esm2022/lib/core/custom-validators.mjs +29 -0
  47. package/esm2022/lib/core/date-time-helper.mjs +228 -0
  48. package/esm2022/lib/core/error.service.mjs +61 -0
  49. package/esm2022/lib/core/router-helper.service.mjs +111 -0
  50. package/esm2022/lib/core/scroll.service.mjs +89 -0
  51. package/esm2022/lib/core/telemetry-tracker.service.mjs +16 -0
  52. package/esm2022/lib/core/telemetry.service.mjs +38 -0
  53. package/esm2022/lib/core/validation-message.service.mjs +185 -0
  54. package/esm2022/lib/core/validation-patterns.mjs +31 -0
  55. package/esm2022/lib/core/window.service.mjs +186 -0
  56. package/esm2022/lib/display/app-bar/app-bar.component.mjs +46 -0
  57. package/esm2022/lib/display/avatar/avatar.component.mjs +67 -0
  58. package/esm2022/lib/display/avatar/avatar.service.mjs +64 -0
  59. package/esm2022/lib/display/confirm/confirm.component.mjs +168 -0
  60. package/esm2022/lib/display/dialog/dialog-content.mjs +2 -0
  61. package/esm2022/lib/display/dialog/dialog-group/dialog-group.component.mjs +63 -0
  62. package/esm2022/lib/display/dialog/dialog-types.mjs +77 -0
  63. package/esm2022/lib/display/dialog/dialog.component.mjs +281 -0
  64. package/esm2022/lib/display/dialog/dialog.service.mjs +71 -0
  65. package/esm2022/lib/display/help/help-types.mjs +2 -0
  66. package/esm2022/lib/display/hierarchy/hierarchy-base.mjs +111 -0
  67. package/esm2022/lib/display/hierarchy/hierarchy-mocks.spec.mjs +54 -0
  68. package/esm2022/lib/display/hierarchy/hierarchy-tree/hierarchy-tree.component.mjs +61 -0
  69. package/esm2022/lib/display/item-display/item-display.component.mjs +81 -0
  70. package/esm2022/lib/display/json-display/json-display.component.mjs +47 -0
  71. package/esm2022/lib/display/resizable/resizable-base.mjs +120 -0
  72. package/esm2022/lib/display/resizable/resizable.component.mjs +57 -0
  73. package/esm2022/lib/display/spinner/spinner.component.mjs +12 -0
  74. package/esm2022/lib/display/splash/splash.component.mjs +42 -0
  75. package/esm2022/lib/display/splash/splash.service.mjs +35 -0
  76. package/esm2022/lib/display/table/resizable-column.component.mjs +20 -0
  77. package/esm2022/lib/display/table/resizable-table.directive.mjs +227 -0
  78. package/esm2022/lib/display/table/searchable-table.component.mjs +342 -0
  79. package/esm2022/lib/display/table/table-detail-row.component.mjs +28 -0
  80. package/esm2022/lib/display/table/table-locked-column.component.mjs +58 -0
  81. package/esm2022/lib/display/table/table-master-header-row.component.mjs +14 -0
  82. package/esm2022/lib/display/table/table-master-row.component.mjs +163 -0
  83. package/esm2022/lib/display/table/table-pagination.component.mjs +155 -0
  84. package/esm2022/lib/display/table/table-selectable-row.component.mjs +235 -0
  85. package/esm2022/lib/display/table/table.component.mjs +249 -0
  86. package/esm2022/lib/display/tags/tag.mjs +18 -0
  87. package/esm2022/lib/display/tags/tags.component.mjs +77 -0
  88. package/esm2022/lib/display/toast/toast/toast.component.mjs +77 -0
  89. package/esm2022/lib/display/toast/toast-types.mjs +8 -0
  90. package/esm2022/lib/display/toast/toast.service.mjs +35 -0
  91. package/esm2022/lib/display/toast/toaster/toaster.component.mjs +114 -0
  92. package/esm2022/lib/display/tooltip/tooltip.component.mjs +28 -0
  93. package/esm2022/lib/display/tooltip/tooltip.service.mjs +78 -0
  94. package/esm2022/lib/display/tooltip-directive/tooltip.directive.mjs +173 -0
  95. package/esm2022/lib/display/tour/tour-types.mjs +34 -0
  96. package/esm2022/lib/display/tour/tour.component.mjs +398 -0
  97. package/esm2022/lib/display/tour/tour.service.mjs +75 -0
  98. package/esm2022/lib/display/tree/tree.component.mjs +135 -0
  99. package/esm2022/lib/display/view-overlay/view-overlay.component.mjs +58 -0
  100. package/esm2022/lib/shared/directives/click-area-for/click-area-for.directive.mjs +32 -0
  101. package/esm2022/lib/shared/directives/if-viewport-width/if-viewport-width.directive.mjs +111 -0
  102. package/esm2022/lib/shared/directives/keyboard-nav-container/keyboard-nav-container.directive.mjs +100 -0
  103. package/esm2022/lib/shared/directives/popup/popup-container.directive.mjs +166 -0
  104. package/esm2022/lib/shared/display/pipes/date-display.pipe.mjs +50 -0
  105. package/esm2022/lib/shared/display/pipes/highlight-text.pipe.mjs +30 -0
  106. package/esm2022/lib/shared/display/pipes/relative-date.pipe.mjs +62 -0
  107. package/esm2022/lib/shared/display/pipes/row-count.pipe.mjs +48 -0
  108. package/esm2022/lib/shared/display/pipes/time-display.pipe.mjs +41 -0
  109. package/esm2022/lib/shared/display.mjs +6 -0
  110. package/esm2022/lib/shared/form-group.helper.mjs +67 -0
  111. package/esm2022/lib/shared/json-helper.mjs +19 -0
  112. package/esm2022/lib/shared/lodash-helper.mjs +52 -0
  113. package/esm2022/lib/shared/page/page-base/page-base.component.mjs +387 -0
  114. package/esm2022/lib/shared/page/page-statuses.mjs +23 -0
  115. package/esm2022/lib/shared/page/page-title/page-title.component.mjs +23 -0
  116. package/esm2022/lib/shared/page/page-view/page-view.component.mjs +147 -0
  117. package/esm2022/lib/shared/testing/copy-button-base-test-injector-factory.spec.mjs +17 -0
  118. package/esm2022/lib/shared/testing/hierarchy-base-test-injector-factory.spec.mjs +17 -0
  119. package/esm2022/lib/shared/testing/page-base-component-test-helper.spec.mjs +38 -0
  120. package/esm2022/lib/shared/testing/page-base-component-test-injector-factory.spec.mjs +98 -0
  121. package/esm2022/lib/shared/testing/public-mocks.spec.mjs +148 -0
  122. package/esm2022/lib/shared/testing/spy-factory.spec.mjs +40 -0
  123. package/esm2022/lib/shared/testing/translation-mocks.spec.mjs +57 -0
  124. package/esm2022/lib/shared/user-preference.service.mjs +17 -0
  125. package/esm2022/lib/shared/wizard/wizard-base/wizard-base.component.mjs +246 -0
  126. package/esm2022/lib/shared/wizard/wizard-buttons/wizard-buttons.component.mjs +68 -0
  127. package/esm2022/lib/shared/wizard/wizard-progress/wizard-progress.component.mjs +18 -0
  128. package/esm2022/public-api.mjs +117 -0
  129. package/fesm2022/energycap-components.mjs +13219 -0
  130. package/fesm2022/energycap-components.mjs.map +1 -0
  131. package/index.d.ts +5 -0
  132. package/lib/components.module.d.ts +92 -0
  133. package/lib/controls/banner/banner.component.d.ts +50 -0
  134. package/lib/controls/button/button.component.d.ts +78 -0
  135. package/lib/controls/button/copy-button-base.directive.d.ts +20 -0
  136. package/lib/controls/button/copy-button.directive.d.ts +14 -0
  137. package/lib/controls/button/copy-table-button.directive.d.ts +19 -0
  138. package/lib/controls/calendar/calendar-item.component.d.ts +22 -0
  139. package/lib/controls/calendar/calendar.component.d.ts +52 -0
  140. package/lib/controls/calendar/calendar.types.d.ts +11 -0
  141. package/lib/controls/checkbox/checkbox.component.d.ts +65 -0
  142. package/lib/controls/collapsible-toggle/collapsible-toggle.component.d.ts +25 -0
  143. package/lib/controls/combobox/combobox.component.d.ts +418 -0
  144. package/lib/controls/date-input/date-input-selection-strategies/date-input-selection-strategy-base.d.ts +42 -0
  145. package/lib/controls/date-input/date-input-selection-strategies/day-selection-strategy.d.ts +21 -0
  146. package/lib/controls/date-input/date-input-selection-strategies/last-28-days-selection-strategy.d.ts +21 -0
  147. package/lib/controls/date-input/date-input-selection-strategies/last-7-days-selection-strategy.d.ts +21 -0
  148. package/lib/controls/date-input/date-input-selection-strategies/month-selection-strategy.d.ts +18 -0
  149. package/lib/controls/date-input/date-input-selection-strategies/quarter-selection-strategy.d.ts +18 -0
  150. package/lib/controls/date-input/date-input-selection-strategies/range-selection-strategy.d.ts +21 -0
  151. package/lib/controls/date-input/date-input-selection-strategies/year-selection-strategy.d.ts +20 -0
  152. package/lib/controls/date-input/date-input.component.d.ts +115 -0
  153. package/lib/controls/date-input/date-input.types.d.ts +62 -0
  154. package/lib/controls/dropdown/dropdown.component.d.ts +161 -0
  155. package/lib/controls/file-upload/file-upload.component.d.ts +124 -0
  156. package/lib/controls/form-control/form-control.component.d.ts +28 -0
  157. package/lib/controls/form-control-base.d.ts +110 -0
  158. package/lib/controls/form-control-label/form-control-label.component.d.ts +73 -0
  159. package/lib/controls/form-group/form-group.component.d.ts +105 -0
  160. package/lib/controls/help-popover/help-popover.component.d.ts +11 -0
  161. package/lib/controls/item-picker/item-picker.component.d.ts +164 -0
  162. package/lib/controls/link-button/link-button.component.d.ts +5 -0
  163. package/lib/controls/menu/menu.component.d.ts +255 -0
  164. package/lib/controls/navigation/link-item.d.ts +32 -0
  165. package/lib/controls/navigation/nav-group.d.ts +18 -0
  166. package/lib/controls/navigation/nav-item-active.directive.d.ts +42 -0
  167. package/lib/controls/navigation/nav-item.d.ts +31 -0
  168. package/lib/controls/numericbox/numericbox.component.d.ts +148 -0
  169. package/lib/controls/popover/popover.component.d.ts +51 -0
  170. package/lib/controls/radio-button/radio-button-option.d.ts +19 -0
  171. package/lib/controls/radio-button/radio-button.component.d.ts +53 -0
  172. package/lib/controls/select/select.component.d.ts +44 -0
  173. package/lib/controls/tabs/tabs.component.d.ts +30 -0
  174. package/lib/controls/textbox/textbox.component.d.ts +107 -0
  175. package/lib/core/cache.service.d.ts +33 -0
  176. package/lib/core/custom-validators.d.ts +20 -0
  177. package/lib/core/date-time-helper.d.ts +101 -0
  178. package/lib/core/error.service.d.ts +20 -0
  179. package/lib/core/router-helper.service.d.ts +48 -0
  180. package/lib/core/scroll.service.d.ts +36 -0
  181. package/lib/core/telemetry-tracker.service.d.ts +13 -0
  182. package/lib/core/telemetry.service.d.ts +31 -0
  183. package/lib/core/validation-message.service.d.ts +26 -0
  184. package/lib/core/validation-patterns.d.ts +22 -0
  185. package/lib/core/window.service.d.ts +116 -0
  186. package/lib/display/app-bar/app-bar.component.d.ts +20 -0
  187. package/lib/display/avatar/avatar.component.d.ts +35 -0
  188. package/lib/display/avatar/avatar.service.d.ts +24 -0
  189. package/lib/display/confirm/confirm.component.d.ts +123 -0
  190. package/lib/display/dialog/dialog-content.d.ts +19 -0
  191. package/lib/display/dialog/dialog-group/dialog-group.component.d.ts +32 -0
  192. package/lib/display/dialog/dialog-types.d.ts +130 -0
  193. package/lib/display/dialog/dialog.component.d.ts +120 -0
  194. package/lib/display/dialog/dialog.service.d.ts +48 -0
  195. package/lib/display/help/help-types.d.ts +33 -0
  196. package/lib/display/hierarchy/hierarchy-base.d.ts +97 -0
  197. package/lib/display/hierarchy/hierarchy-mocks.spec.d.ts +53 -0
  198. package/lib/display/hierarchy/hierarchy-tree/hierarchy-tree.component.d.ts +34 -0
  199. package/lib/display/item-display/item-display.component.d.ts +43 -0
  200. package/lib/display/json-display/json-display.component.d.ts +16 -0
  201. package/lib/display/resizable/resizable-base.d.ts +67 -0
  202. package/lib/display/resizable/resizable.component.d.ts +31 -0
  203. package/lib/display/spinner/spinner.component.d.ts +5 -0
  204. package/lib/display/splash/splash.component.d.ts +16 -0
  205. package/lib/display/splash/splash.service.d.ts +22 -0
  206. package/lib/display/table/resizable-column.component.d.ts +10 -0
  207. package/lib/display/table/resizable-table.directive.d.ts +93 -0
  208. package/lib/display/table/searchable-table.component.d.ts +206 -0
  209. package/lib/display/table/table-detail-row.component.d.ts +8 -0
  210. package/lib/display/table/table-locked-column.component.d.ts +20 -0
  211. package/lib/display/table/table-master-header-row.component.d.ts +9 -0
  212. package/lib/display/table/table-master-row.component.d.ts +113 -0
  213. package/lib/display/table/table-pagination.component.d.ts +91 -0
  214. package/lib/display/table/table-selectable-row.component.d.ts +102 -0
  215. package/lib/display/table/table.component.d.ts +121 -0
  216. package/lib/display/tags/tag.d.ts +18 -0
  217. package/lib/display/tags/tags.component.d.ts +48 -0
  218. package/lib/display/toast/toast/toast.component.d.ts +23 -0
  219. package/lib/display/toast/toast-types.d.ts +24 -0
  220. package/lib/display/toast/toast.service.d.ts +20 -0
  221. package/lib/display/toast/toaster/toaster.component.d.ts +35 -0
  222. package/lib/display/tooltip/tooltip.component.d.ts +70 -0
  223. package/lib/display/tooltip/tooltip.service.d.ts +16 -0
  224. package/lib/display/tooltip-directive/tooltip.directive.d.ts +44 -0
  225. package/lib/display/tour/tour-types.d.ts +70 -0
  226. package/lib/display/tour/tour.component.d.ts +147 -0
  227. package/lib/display/tour/tour.service.d.ts +38 -0
  228. package/lib/display/tree/tree.component.d.ts +75 -0
  229. package/lib/display/view-overlay/view-overlay.component.d.ts +38 -0
  230. package/lib/shared/directives/click-area-for/click-area-for.directive.d.ts +14 -0
  231. package/lib/shared/directives/if-viewport-width/if-viewport-width.directive.d.ts +60 -0
  232. package/lib/shared/directives/keyboard-nav-container/keyboard-nav-container.directive.d.ts +23 -0
  233. package/lib/shared/directives/popup/popup-container.directive.d.ts +101 -0
  234. package/lib/shared/display/pipes/date-display.pipe.d.ts +21 -0
  235. package/lib/shared/display/pipes/highlight-text.pipe.d.ts +9 -0
  236. package/lib/shared/display/pipes/relative-date.pipe.d.ts +36 -0
  237. package/lib/shared/display/pipes/row-count.pipe.d.ts +23 -0
  238. package/lib/shared/display/pipes/time-display.pipe.d.ts +18 -0
  239. package/lib/shared/display.d.ts +42 -0
  240. package/lib/shared/form-group.helper.d.ts +31 -0
  241. package/lib/shared/json-helper.d.ts +7 -0
  242. package/lib/shared/lodash-helper.d.ts +18 -0
  243. package/lib/shared/page/page-base/page-base.component.d.ts +259 -0
  244. package/lib/shared/page/page-statuses.d.ts +13 -0
  245. package/lib/shared/page/page-title/page-title.component.d.ts +9 -0
  246. package/lib/shared/page/page-view/page-view.component.d.ts +102 -0
  247. package/lib/shared/testing/copy-button-base-test-injector-factory.spec.d.ts +4 -0
  248. package/lib/shared/testing/hierarchy-base-test-injector-factory.spec.d.ts +4 -0
  249. package/lib/shared/testing/page-base-component-test-helper.spec.d.ts +30 -0
  250. package/lib/shared/testing/page-base-component-test-injector-factory.spec.d.ts +28 -0
  251. package/lib/shared/testing/public-mocks.spec.d.ts +90 -0
  252. package/lib/shared/testing/spy-factory.spec.d.ts +27 -0
  253. package/lib/shared/testing/translation-mocks.spec.d.ts +30 -0
  254. package/lib/shared/user-preference.service.d.ts +13 -0
  255. package/lib/shared/wizard/wizard-base/wizard-base.component.d.ts +134 -0
  256. package/lib/shared/wizard/wizard-buttons/wizard-buttons.component.d.ts +27 -0
  257. package/lib/shared/wizard/wizard-progress/wizard-progress.component.d.ts +10 -0
  258. package/package.json +1 -5
  259. package/public-api.d.ts +113 -0
  260. package/schematics/collection.json +10 -0
  261. package/schematics/rxjs-7-upgrade/index.d.ts +3 -0
  262. package/schematics/rxjs-7-upgrade/index.js +68 -0
  263. package/schematics/rxjs-7-upgrade/index.js.map +1 -0
  264. package/schematics/rxjs-7-upgrade/schema.d.ts +4 -0
  265. package/schematics/rxjs-7-upgrade/schema.js +3 -0
  266. package/schematics/rxjs-7-upgrade/schema.js.map +1 -0
  267. package/schematics/rxjs-7-upgrade/schema.json +14 -0
  268. package/schematics/utilities/typescript.d.ts +7 -0
  269. package/schematics/utilities/typescript.js +42 -0
  270. package/schematics/utilities/typescript.js.map +1 -0
  271. package/schematics/utilities/workspace.d.ts +8 -0
  272. package/schematics/utilities/workspace.js +72 -0
  273. package/schematics/utilities/workspace.js.map +1 -0
  274. package/src/assets/images/email-icon.png +0 -0
  275. package/src/assets/images/email-logo.png +0 -0
  276. package/src/assets/images/favicon-ech.svg +7 -0
  277. package/src/assets/images/favicon-esa.svg +6 -0
  278. package/src/assets/images/favicon-eum.svg +6 -0
  279. package/src/assets/images/favicon.svg +5 -0
  280. package/src/assets/images/icon-carbonhub.svg +10 -0
  281. package/src/assets/images/icon-eum.svg +5 -0
  282. package/src/assets/images/icon-ucp.svg +5 -0
  283. package/src/assets/images/icon-wattics.svg +5 -0
  284. package/src/assets/images/icon.svg +4 -0
  285. package/src/assets/images/logo.svg +3 -0
  286. package/src/assets/images/splash.gif +0 -0
  287. package/src/assets/locales/en_US.json +59 -0
  288. package/src/assets/scripts/unsupported-browser.js +17 -0
  289. package/src/styles/_base.scss +38 -0
  290. package/src/styles/_colors.scss +96 -0
  291. package/src/styles/_core.scss +4 -0
  292. package/src/styles/_functions.scss +114 -0
  293. package/src/styles/_global-variables.scss +232 -0
  294. package/src/styles/_icons.scss +24 -0
  295. package/src/styles/bootstrap/_grid.scss +34 -0
  296. package/src/styles/bootstrap/_reboot.scss +323 -0
  297. package/src/styles/components/_card.scss +21 -0
  298. package/src/styles/components/_link-icons.scss +38 -0
  299. package/src/styles/components/_splash.scss +57 -0
  300. package/src/styles/components/_unsupported-browsers.scss +24 -0
  301. package/src/styles/email/_email-base.scss +228 -0
  302. package/src/styles/email/email.scss +43 -0
  303. package/src/styles/index.scss +27 -0
  304. package/src/styles/mixins/_animations.scss +18 -0
  305. package/src/styles/mixins/_button-base.scss +185 -0
  306. package/src/styles/mixins/_card-base.scss +40 -0
  307. package/src/styles/mixins/_common.scss +52 -0
  308. package/src/styles/mixins/_dialog-base.scss +96 -0
  309. package/src/styles/mixins/_form-control-base.scss +641 -0
  310. package/src/styles/mixins/_login.scss +74 -0
  311. package/src/styles/mixins/_menu-base.scss +153 -0
  312. package/src/styles/mixins/_overlay-base.scss +33 -0
  313. package/src/styles/mixins/_resizable-base.scss +57 -0
  314. package/src/styles/mixins/_spinner-base.scss +34 -0
  315. package/src/styles/mixins/_table-base.scss +298 -0
  316. package/src/styles/mixins/_tabs-base.scss +110 -0
  317. package/src/styles/mixins/_tags-base.scss +116 -0
  318. package/src/styles/mixins/_text.scss +89 -0
  319. package/src/styles/mixins.scss +15 -0
  320. package/src/styles/utilities/_borders.scss +30 -0
  321. package/src/styles/utilities/_common.scss +49 -0
  322. package/src/styles/utilities/_layout.scss +116 -0
  323. package/src/styles/utilities/_spacing.scss +65 -0
  324. package/src/styles/utilities/_text.scss +139 -0
@@ -0,0 +1,418 @@
1
+ import { EventEmitter, OnInit, OnChanges, SimpleChanges, AfterViewInit, TemplateRef } from '@angular/core';
2
+ import { UntypedFormControl } from "@angular/forms";
3
+ import { TranslateService } from "@ngx-translate/core";
4
+ import { FormControlBase } from '../form-control-base';
5
+ import { Observable } from 'rxjs';
6
+ import { TextboxComponent } from '../textbox/textbox.component';
7
+ import { ValidationMessageService } from '../../core/validation-message.service';
8
+ import { FormGroupHelper } from '../../shared/form-group.helper';
9
+ import { MenuItem, MenuTemplateType, MenuHostElementClasses } from '../menu/menu.component';
10
+ import { PopupStatus } from '../../shared/directives/popup/popup-container.directive';
11
+ import { ScrollService } from '../../core/scroll.service';
12
+ import * as i0 from "@angular/core";
13
+ /**
14
+ * Position of the menu relative to the input
15
+ */
16
+ export type ComboboxMenuPosition = "top_right" | "top_left" | "bottom_left" | "bottom_right";
17
+ /**
18
+ * The type of add new implementation. Static displays a simple static button while dynamic updates
19
+ * the label of the button with value of the textbox
20
+ */
21
+ type AddNewType = "dynamic" | "static" | boolean;
22
+ /**
23
+ * Options for configuring the "Add new" button when in static mode
24
+ */
25
+ type AddNewOptions = {
26
+ label?: string; /** A custom label to display in place of the default "Add new..." */
27
+ classList?: string; /** A string of space-separated utility classes we'll apply to the label */
28
+ icon?: string; /** A custom icon to display in place of the default 'icon-add' */
29
+ };
30
+ /**
31
+ * Select box (select, autocomplete, combobox)
32
+ *
33
+ * NOTE: Min/max length validation is implemented on the internal ec-textbox.
34
+ * Values passed in via input properties (@see maxlength , @see minlength )
35
+ * are used to create validators on the textbox. When the validation on the
36
+ * textbox fails, the validation error(s) get passed up to the {@see formModel }.
37
+ * When setting up this component's {@see FormControl }, you do NOT need to set the
38
+ * Validators.minLength or Validators.maxLength validators.
39
+ *
40
+ * Required is also passed via input property, but you SHOULD also set up the
41
+ * Validators.required validator on this component's FormControl.
42
+ *
43
+ * @export
44
+ */
45
+ export declare class ComboboxComponent extends FormControlBase implements OnInit, OnChanges, AfterViewInit {
46
+ protected validationMessageService: ValidationMessageService;
47
+ protected formGroupHelper: FormGroupHelper;
48
+ protected translate: TranslateService;
49
+ protected scrollService: ScrollService;
50
+ /**
51
+ * Close the popup menu on resize so the width and positioning can be recalculated
52
+ * correctly. Cannot be placed on the popupDirective because of a bug where
53
+ * HostListeners for global events don't fire
54
+ * @see https://github.com/angular/angular/issues/14191
55
+ */
56
+ onResize(): void;
57
+ /**
58
+ * Show the add new button in the popup
59
+ */
60
+ addNew?: AddNewType;
61
+ /** Configure the addNew button label & icon when addNew is true and set to static
62
+ * Default is set to: { label: 'All new...', icon: 'icon-add'}
63
+ * @see AddNewOptions
64
+ * @memberof ComboboxComponent
65
+ * @example
66
+ * <ec-combobox [addNew]="true"
67
+ * [addNewOptions]="{
68
+ * label: 'Help me choose...',
69
+ * icon: 'icon-search',
70
+ * classList: 'text-body-2 text-link' }">
71
+ * </ec-combobox>
72
+ */
73
+ addNewOptions?: AddNewOptions;
74
+ /**
75
+ * The maximum number of characters allowed in the input.
76
+ *
77
+ * @memberof TextboxComponent
78
+ */
79
+ maxlength?: number;
80
+ /**
81
+ * Position of the menu relative to the text box
82
+ * @default 'bottom_right'
83
+ * @memberof ComboboxComponent
84
+ */
85
+ menuPosition?: ComboboxMenuPosition;
86
+ /**
87
+ * The minimum number of characters allowed in the input
88
+ *
89
+ * @memberof TextboxComponent
90
+ */
91
+ minlength?: number;
92
+ /**
93
+ * Items to show in combobox menu
94
+ *
95
+ * @memberof ComboboxComponent
96
+ */
97
+ options: Array<MenuItem>;
98
+ /**
99
+ * Display template for menu items
100
+ *
101
+ * @memberof ComboboxComponent
102
+ */
103
+ templateType: MenuTemplateType;
104
+ /**
105
+ * Optional custom template for the menu items. Must declare a template
106
+ * input variable called "item" like so: <ng-template #templateName let-item>,
107
+ * where item represents the menuItem.
108
+ * Will override the choice for templateType if provided.
109
+ *
110
+ * @memberof ComboboxComponent
111
+ */
112
+ customMenuTemplate?: TemplateRef<any>;
113
+ /**
114
+ * When true, the menu items will preserve the icon space when there is no icon
115
+ */
116
+ preserveIconSpace: boolean;
117
+ /**
118
+ * Position the menu as fixed, ideal when comboboxes are inside dialogs
119
+ * Defaulting to true so all menus will be at least the width of the
120
+ * textbox + button, but can grow wider if the inner elements need it
121
+ */
122
+ popupFixed: boolean;
123
+ /**
124
+ * The total number of records from the datasource
125
+ */
126
+ totalRecords?: number;
127
+ /**
128
+ * If set to true, we will upperCase the text box and apply the class on the add box
129
+ */
130
+ upperCase: boolean;
131
+ /**The placeholder to show in the combobox. Leave empty to use default behavior determined
132
+ * by whether Add New is enabled
133
+ */
134
+ placeholder: string;
135
+ /** Observable to subscribe to when the combobox menu is opened for the first time */
136
+ loadOnOpenObservable?: Observable<MenuItem[]> | undefined;
137
+ /** Do not display the toggle button when true */
138
+ hideToggleButton: boolean;
139
+ /**
140
+ * Always show the menu when the formModel has a value. Sets
141
+ * hideToggleButton to true and menuStatus to visible as well.
142
+ */
143
+ alwaysOpen: boolean;
144
+ /**
145
+ * Additonal classes to apply to the ec-menu element
146
+ */
147
+ menuElementClasses: MenuHostElementClasses | string[];
148
+ /**
149
+ * Additional classes to apply to the .textbox-group element
150
+ */
151
+ textboxElementClasses: string[];
152
+ /** Hide 'No matches' message when true */
153
+ hideNoMatches: boolean;
154
+ /**
155
+ * Text to show when the menu is empty. "No matches" is the default.
156
+ */
157
+ noMatchesText: string;
158
+ /**
159
+ * Truncate menu items when true
160
+ */
161
+ truncateItems: boolean;
162
+ /**
163
+ * Notify the parent that the add new button was clicked
164
+ * @todo discuss if we need to send along the value or should
165
+ * the parent get it from the formModel
166
+ * (lwf 2017.07.13): I think we might as well send the value along and
167
+ * leave it up to the parent to decide how to handle it.
168
+ */
169
+ addNewClick: EventEmitter<string>;
170
+ /**
171
+ * Notify parent when text typed into textbox
172
+ */
173
+ search: EventEmitter<string>;
174
+ textbox: TextboxComponent;
175
+ /**
176
+ * Access to the menu's component via the {@link PopupContainerDirective}
177
+ */
178
+ private popup?;
179
+ /**
180
+ * Reference the add-new button element
181
+ */
182
+ private addNewButton;
183
+ /**
184
+ * Filtered Items to show in combobox menu
185
+ */
186
+ filteredOptions: Array<MenuItem>;
187
+ /**
188
+ * Tracks if the menu is open or hidden
189
+ */
190
+ menuStatus: PopupStatus;
191
+ /**
192
+ * Placeholder to assign to textbox
193
+ */
194
+ effectivePlaceholder: string;
195
+ /**
196
+ * Reference to the currently-selected menu item
197
+ */
198
+ selectedItem: MenuItem | null;
199
+ /**
200
+ * FormControl for the textbox
201
+ */
202
+ textboxFormModel: UntypedFormControl;
203
+ /**
204
+ * Tracks whether the add new button is selected
205
+ */
206
+ addNewSelected: boolean;
207
+ /**
208
+ * Tracks whether the textboxFormModel value matches an item in the filteredOptions
209
+ */
210
+ foundMatch: boolean;
211
+ /**
212
+ * Number of filtered options to display in the footer. Excludes headings.
213
+ */
214
+ filteredOptionCount: number;
215
+ /**
216
+ * Flat list of selectable items in the combobox.
217
+ * Does not include headings or divider-section items.
218
+ */
219
+ private selectableItems;
220
+ /**
221
+ * Index of the currently-selected options
222
+ */
223
+ private selectedItemIndex;
224
+ /** Placeholder text for 'Choose or Add...' */
225
+ private chooseOrAddPlaceholder;
226
+ /** Placeholder text for 'Choose' */
227
+ private choosePlaceholder;
228
+ private hasDataBeenLoadedOnOpen;
229
+ constructor(validationMessageService: ValidationMessageService, formGroupHelper: FormGroupHelper, translate: TranslateService, scrollService: ScrollService);
230
+ /**
231
+ * The angular onChanges lifecycle event
232
+ * @see https://angular.io/guide/lifecycle-hooks
233
+ */
234
+ ngOnChanges(changes: SimpleChanges): void;
235
+ /**
236
+ * The angular onInit lifecycle hook
237
+ * @see https://angular.io/guide/lifecycle-hooks
238
+ */
239
+ ngOnInit(): void;
240
+ /**
241
+ * The angular afterViewInit lifecycle hook
242
+ * @see https://angular.io/guide/lifecycle-hooks
243
+ */
244
+ ngAfterViewInit(): void;
245
+ /**
246
+ * Set errors on the textboxFormModel, which will then set errors on the
247
+ * formModel. Also mark the formModel as touched to display any errors.
248
+ * @param errors key(s) of ValidationMessageService errors to display or remove
249
+ * @memberof ComoboboxComponent
250
+ */
251
+ setErrors(errors: {
252
+ [key: string]: boolean;
253
+ }): void;
254
+ /**
255
+ * Unfilter options and update the selectedItem and selectedItemIndex
256
+ * @memberof ComboboxComponent
257
+ */
258
+ resetOptions(options?: MenuItem[]): void;
259
+ /**
260
+ * Listen to the selected changed event from {@link MenuComponent} and update the form
261
+ * model and close menu
262
+ */
263
+ selectedChanged(item: MenuItem): void;
264
+ /**
265
+ * Show and hide the popup menu
266
+ *
267
+ * @memberof ComboboxComponent
268
+ */
269
+ toggleMenu(event?: Event): void;
270
+ onBlur(): void;
271
+ /**
272
+ * Control the menu with keyboard navigation
273
+ *
274
+ * @see {@link https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/key#Example | KeyboardEvent.key}
275
+ * @see {@link https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/key/Key_Values | Key Values}
276
+ *
277
+ * @memberof ComboboxComponent
278
+ */
279
+ keyNavigate(event: KeyboardEvent): void;
280
+ /**
281
+ * Facilitates adding items to a combobox
282
+ *
283
+ * @param addFn Function from parent that should make an API request to add a new item to the combobox's options
284
+ * @memberof ComboboxComponent
285
+ */
286
+ addNewItem(addFn: () => Promise<void>): Promise<void>;
287
+ /**
288
+ * Figure out whether they are adding new or have an item selected, and commit it to the form model
289
+ */
290
+ private commitSelection;
291
+ /**
292
+ * Send the current value of the textbox to the parent when the add new button is
293
+ * clicked
294
+ *
295
+ * @param event Add new button click or enter key event
296
+ * @memberof ComboboxComponent
297
+ */
298
+ onAddNew(event: Event): void;
299
+ /**
300
+ * Navigate the dropdown menu using up and down arrow keys
301
+ *
302
+ * @param event Up or down arrow keydown event
303
+ * @memberof ComboboxComponent
304
+ */
305
+ private onArrowDownUp;
306
+ /**
307
+
308
+ * Filter array of options by label or caption (contains)
309
+ *
310
+ * @param filterText The value of textbox that we will filter our options by
311
+ *
312
+ * @memberof ComboboxComponent
313
+ */
314
+ private filterOptionsArray;
315
+ /**
316
+ * Find a given item's index in the filtered items array.
317
+ *
318
+ * Returns -1 if not found
319
+ * @param item The matching item to find in the
320
+ * filterdOptions array. Will use the selectedItem if nothing is passed.
321
+ * @memberof ComboboxComponent
322
+ */
323
+ private findSelectedItemIndex;
324
+ /**
325
+ * React to our formModel changing
326
+ *
327
+ * The formModel represents the currently selected ModelItem
328
+ * When changed, set the value of the TextboxComponent and
329
+ * find index of item in options list.
330
+ *
331
+ * @memberof ComboboxComponent
332
+ */
333
+ private formModelChanged;
334
+ /**
335
+ * Scroll the menu if the current selectedItemIndex is out of view
336
+ *
337
+ * @memberof ComboboxComponent
338
+ */
339
+ private scrollMenu;
340
+ /**
341
+ * Search/Filter based on textbox input
342
+ * NOTE: so as not to receive a notification on every key event, we suggest you debounce your
343
+ * subscription
344
+ * @see {@link http://reactivex.io/rxjs/class/es6/Observable.js~Observable.html#instance-method-debounceTime | Observable.debounceTime}
345
+ *
346
+ * @memberof ComboboxComponent
347
+ */
348
+ private searchAndFilter;
349
+ /**
350
+ * Set {@link formModel }'s validation errors equal to the internal textbox's.
351
+ *
352
+ * When the internal textbox is invalid, need to set this control's
353
+ * errors because we are using our own label, not TextboxControl's.
354
+ * We use our own label so label text will wrap at the end of the button,
355
+ * not at the end of the textbox.
356
+ *
357
+ * @memberof ComboboxComponent
358
+ */
359
+ private setFormModelValidationErrors;
360
+ /**
361
+ * Update the form model value with the selected item or reset form model value if item is null
362
+ *
363
+ * @memberof ComboboxComponent
364
+ */
365
+ private setFormModelValue;
366
+ /**
367
+ * Set validators on the {@see textboxFormModel }
368
+ *
369
+ * Validators are currently set based on the {@see maxlength },
370
+ * {@see minlength }, and {@see required } inputs. This works well
371
+ * with {@see TextboxComponent }, which needs these inputs to apply
372
+ * the proper attributes to its inputs.
373
+ *
374
+ * A future release of Angular will supposedly add these attributes
375
+ * for you, which will eliminate the need for TextboxComponent to have
376
+ * such inputs. This component, however, will still need these inputs
377
+ * as there is no current way to know which validators are applied to it
378
+ * from its parent View Component.
379
+ *
380
+ *
381
+ * @memberof ComboboxComponent
382
+ */
383
+ private setTextboxFormModelValidators;
384
+ /**
385
+ * Keep textbox's disabled status in-sync with combobox's
386
+ *
387
+ * {@link TextboxComponent} gets its disabled status from its {@link FormControl}
388
+ *
389
+ * @memberof ComboboxComponent
390
+ */
391
+ private synchronizeDisabledAttributes;
392
+ /**
393
+ * If the formModel value and textbox value do not match, reset the textbox and selectedItem to
394
+ * the formModle value. If there is no formModel value, make sure we clear the textbox. Reset the
395
+ * filteredOptions to the full list and update the selectedItemIndex
396
+ *
397
+ */
398
+ private syncModelValues;
399
+ /**
400
+ * Search and filter the options list when the value of the textbox input changes. If addNew is
401
+ * set also check for matches in our filteredOptions to conditionally show and hide the add new
402
+ * button
403
+ *
404
+ * @see https://developer.mozilla.org/en-US/docs/Web/Events/input
405
+ */
406
+ textboxValueChanged(event: Event): void;
407
+ private clearSelectedItem;
408
+ /**Recompute what the placeholder should be based on whether the user provided one and the current state of the addNew input */
409
+ private updatePlaceholderText;
410
+ /**Find the option we want to be the default selection. If there is an exact match, use that
411
+ * otherwise if there are items, return zero to indicate the first item. Otherwise return -1
412
+ * to indicate no selection
413
+ */
414
+ private findDefaultSelectionIndex;
415
+ static ɵfac: i0.ɵɵFactoryDeclaration<ComboboxComponent, never>;
416
+ static ɵcmp: i0.ɵɵComponentDeclaration<ComboboxComponent, "ec-combobox", never, { "addNew": { "alias": "addNew"; "required": false; }; "addNewOptions": { "alias": "addNewOptions"; "required": false; }; "maxlength": { "alias": "maxlength"; "required": false; }; "menuPosition": { "alias": "menuPosition"; "required": false; }; "minlength": { "alias": "minlength"; "required": false; }; "options": { "alias": "options"; "required": false; }; "templateType": { "alias": "templateType"; "required": false; }; "customMenuTemplate": { "alias": "customMenuTemplate"; "required": false; }; "preserveIconSpace": { "alias": "preserveIconSpace"; "required": false; }; "popupFixed": { "alias": "popupFixed"; "required": false; }; "totalRecords": { "alias": "totalRecords"; "required": false; }; "upperCase": { "alias": "upperCase"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "loadOnOpenObservable": { "alias": "loadOnOpenObservable"; "required": false; }; "hideToggleButton": { "alias": "hideToggleButton"; "required": false; }; "alwaysOpen": { "alias": "alwaysOpen"; "required": false; }; "menuElementClasses": { "alias": "menuElementClasses"; "required": false; }; "textboxElementClasses": { "alias": "textboxElementClasses"; "required": false; }; "hideNoMatches": { "alias": "hideNoMatches"; "required": false; }; "noMatchesText": { "alias": "noMatchesText"; "required": false; }; "truncateItems": { "alias": "truncateItems"; "required": false; }; }, { "addNewClick": "addNewClick"; "search": "search"; }, never, never, false, never>;
417
+ }
418
+ export {};
@@ -0,0 +1,42 @@
1
+ import { Calendar } from "../../calendar/calendar.types";
2
+ import { DateInput } from "../date-input.types";
3
+ /**
4
+ * Contains the logic for selecting, formatting, and parsing date dates for a specific selection mode.
5
+ */
6
+ export declare abstract class DateInputSelectionStrategyBase {
7
+ /** The calendar view mode where selections occur for this mode. This is used to zoom the calendar into the selection */
8
+ abstract readonly selectionViewMode: Calendar.ViewMode;
9
+ /** The list of view modes that are accessible by this selection mode. Used to determine whether the calendar view needs to be changed or not on selection change. */
10
+ abstract readonly validViewModes: Calendar.ViewMode[];
11
+ /** Whether the secondary textbox should be shown for this selection mode */
12
+ abstract readonly showSecondaryTextbox: boolean;
13
+ /** Whether the secondary calendar should be shown for this selection mode */
14
+ abstract readonly showSecondaryCalendar: boolean;
15
+ /** Parses the string into a date using the provided parse formats. */
16
+ parseString(value: string | null | undefined, parseFormats: string[], opts?: DateInput.ParsingOptions): Date | null;
17
+ /** Formats a date input selection into values to be displayed in the date input's textboxes. */
18
+ abstract formatSelection(selection?: DateInput.Selection | null): DateInput.TextboxGroup['value'];
19
+ /**
20
+ * Parses the date input's values into a date selection to display in the calendars.
21
+ * `parseFromEnd` controls whether the fixed range modes (last7days, last28days) will key off the end date instead of the start date.
22
+ * This is used when the user is typing in the end date textbox.
23
+ */
24
+ abstract parseTextboxValues(value: DateInput.TextboxGroup['value'], parseFormats: string[], opts?: DateInput.ParsingOptions): DateInput.Selection | null;
25
+ /** Returns a selection given a date and an existing selection (in the case of date ranges). Called when a date is clicked in the calendars. */
26
+ abstract getSelectionFromDate(date: Date, existingSelection?: DateInput.Selection | null): DateInput.Selection | null;
27
+ /** Returns a new selection that best matches the given previous selection from a different selection mode */
28
+ abstract getNewSelectionFromExisting(previousSelection?: DateInput.Selection | null): DateInput.Selection | null;
29
+ /** Returns a new selection for the provided date. */
30
+ getSelectionForQuickSelectDate(date: Date, existingSelection?: DateInput.Selection | null): DateInput.Selection | null;
31
+ /** Returns the next selection. Called by the date input steppers to move the range. */
32
+ abstract getNextSelection(selection: DateInput.Selection | null): DateInput.Selection | null;
33
+ /** Returns the previous selection. Called by the date input steppers to move the range. */
34
+ abstract getPreviousSelection(selection: DateInput.Selection | null): DateInput.Selection | null;
35
+ /** Returns the view for the primary calendar for the selection and selection mode */
36
+ getPrimaryCalendarView(selection: DateInput.Selection | null, minDate: Date, maxDate: Date, currentView: Calendar.View): Calendar.View;
37
+ /**
38
+ * Returns the view for the secondary calendar for the selection and selection mode.
39
+ * This is is only used by the range selection strategy. All others just return the current date.
40
+ */
41
+ getSecondaryCalendarView(selection: DateInput.Selection | null, minDate: Date, maxDate: Date, currentView: Calendar.View): Calendar.View;
42
+ }
@@ -0,0 +1,21 @@
1
+ import { DateDisplayPipe } from "../../../shared/display/pipes/date-display.pipe";
2
+ import { Calendar } from "../../calendar/calendar.types";
3
+ import { DateInput } from "../date-input.types";
4
+ import { DateInputSelectionStrategyBase } from "./date-input-selection-strategy-base";
5
+ /**
6
+ * Selection strategy for the 'day' selection mode.
7
+ */
8
+ export declare class DaySelectionStrategy extends DateInputSelectionStrategyBase {
9
+ private dateDisplayPipe;
10
+ readonly selectionViewMode: Calendar.ViewMode;
11
+ readonly validViewModes: Calendar.ViewMode[];
12
+ readonly showSecondaryTextbox = false;
13
+ readonly showSecondaryCalendar = false;
14
+ constructor(dateDisplayPipe: DateDisplayPipe);
15
+ formatSelection(selection?: DateInput.Selection | null): DateInput.TextboxGroup['value'];
16
+ parseTextboxValues(value: DateInput.TextboxGroup['value'], parseFormats: string[], opts?: DateInput.ParsingOptions): DateInput.Selection | null;
17
+ getSelectionFromDate(date: Date): DateInput.Selection | null;
18
+ getNewSelectionFromExisting(previousSelection?: DateInput.Selection | null): DateInput.Selection | null;
19
+ getNextSelection(selection: DateInput.Selection | null): DateInput.Selection | null;
20
+ getPreviousSelection(selection: DateInput.Selection | null): DateInput.Selection | null;
21
+ }
@@ -0,0 +1,21 @@
1
+ import { Calendar } from "../../calendar/calendar.types";
2
+ import { DateInput } from "../date-input.types";
3
+ import { DateInputSelectionStrategyBase } from "./date-input-selection-strategy-base";
4
+ import { RangeSelectionStrategy } from "./range-selection-strategy";
5
+ /**
6
+ * Selection strategy for the 'last 28 days' selection mode.
7
+ */
8
+ export declare class Last28DaysSelectionStrategy extends DateInputSelectionStrategyBase {
9
+ private rangeStrategy;
10
+ readonly selectionViewMode: Calendar.ViewMode;
11
+ readonly validViewModes: Calendar.ViewMode[];
12
+ readonly showSecondaryTextbox = true;
13
+ readonly showSecondaryCalendar = false;
14
+ constructor(rangeStrategy: RangeSelectionStrategy);
15
+ formatSelection(value?: DateInput.Selection | null): DateInput.TextboxGroup['value'];
16
+ parseTextboxValues(value: DateInput.TextboxGroup['value'], parseFormats: string[], opts?: DateInput.ParsingOptions): DateInput.Selection | null;
17
+ getSelectionFromDate(date: Date): DateInput.Selection | null;
18
+ getNewSelectionFromExisting(previousSelection?: DateInput.Selection): DateInput.Selection | null;
19
+ getNextSelection(selection: DateInput.Selection | null): DateInput.Selection | null;
20
+ getPreviousSelection(selection: DateInput.Selection | null): DateInput.Selection | null;
21
+ }
@@ -0,0 +1,21 @@
1
+ import { Calendar } from "../../calendar/calendar.types";
2
+ import { DateInput } from "../date-input.types";
3
+ import { DateInputSelectionStrategyBase } from "./date-input-selection-strategy-base";
4
+ import { RangeSelectionStrategy } from "./range-selection-strategy";
5
+ /**
6
+ * Selection strategy for the 'last 7 days' selection mode.
7
+ */
8
+ export declare class Last7DaysSelectionStrategy extends DateInputSelectionStrategyBase {
9
+ private rangeStrategy;
10
+ readonly selectionViewMode: Calendar.ViewMode;
11
+ readonly validViewModes: Calendar.ViewMode[];
12
+ readonly showSecondaryTextbox = true;
13
+ readonly showSecondaryCalendar = false;
14
+ constructor(rangeStrategy: RangeSelectionStrategy);
15
+ formatSelection(value?: DateInput.Selection | null): DateInput.TextboxGroup['value'];
16
+ parseTextboxValues(value: DateInput.TextboxGroup['value'], parseFormats: string[], opts?: DateInput.ParsingOptions): DateInput.Selection | null;
17
+ getSelectionFromDate(date: Date): DateInput.Selection | null;
18
+ getNewSelectionFromExisting(previousSelection?: DateInput.Selection | null): DateInput.Selection | null;
19
+ getNextSelection(selection: DateInput.Selection | null): DateInput.Selection | null;
20
+ getPreviousSelection(selection: DateInput.Selection | null): DateInput.Selection | null;
21
+ }
@@ -0,0 +1,18 @@
1
+ import { Calendar } from "../../calendar/calendar.types";
2
+ import { DateInput } from "../date-input.types";
3
+ import { DateInputSelectionStrategyBase } from "./date-input-selection-strategy-base";
4
+ /**
5
+ * Selection strategy for the 'month' selection mode.
6
+ */
7
+ export declare class MonthSelectionStrategy extends DateInputSelectionStrategyBase {
8
+ readonly selectionViewMode: Calendar.ViewMode;
9
+ readonly validViewModes: Calendar.ViewMode[];
10
+ readonly showSecondaryTextbox = false;
11
+ readonly showSecondaryCalendar = false;
12
+ formatSelection(selection?: DateInput.Selection | null): DateInput.TextboxGroup['value'];
13
+ parseTextboxValues(value: DateInput.TextboxGroup['value'], parseFormats: string[], opts?: DateInput.ParsingOptions): DateInput.Selection | null;
14
+ getSelectionFromDate(date: Date): DateInput.Selection | null;
15
+ getNewSelectionFromExisting(previousSelection?: DateInput.Selection): DateInput.Selection | null;
16
+ getNextSelection(selection: DateInput.Selection | null): DateInput.Selection | null;
17
+ getPreviousSelection(selection: DateInput.Selection | null): DateInput.Selection | null;
18
+ }
@@ -0,0 +1,18 @@
1
+ import { Calendar } from "../../calendar/calendar.types";
2
+ import { DateInput } from "../date-input.types";
3
+ import { DateInputSelectionStrategyBase } from "./date-input-selection-strategy-base";
4
+ /**
5
+ * Selection strategy for the 'month' selection mode.
6
+ */
7
+ export declare class QuarterSelectionStrategy extends DateInputSelectionStrategyBase {
8
+ readonly selectionViewMode: Calendar.ViewMode;
9
+ readonly validViewModes: Calendar.ViewMode[];
10
+ readonly showSecondaryTextbox = false;
11
+ readonly showSecondaryCalendar = false;
12
+ formatSelection(selection?: DateInput.Selection | null): DateInput.TextboxGroup['value'];
13
+ parseTextboxValues(value: DateInput.TextboxGroup['value'], parseFormats: string[], opts?: DateInput.ParsingOptions): DateInput.Selection | null;
14
+ getSelectionFromDate(date: Date): DateInput.Selection | null;
15
+ getNewSelectionFromExisting(previousSelection?: DateInput.Selection): DateInput.Selection | null;
16
+ getNextSelection(selection: DateInput.Selection | null): DateInput.Selection | null;
17
+ getPreviousSelection(selection: DateInput.Selection | null): DateInput.Selection | null;
18
+ }
@@ -0,0 +1,21 @@
1
+ import { Calendar } from "../../calendar/calendar.types";
2
+ import { DateInput } from "../date-input.types";
3
+ import { DateInputSelectionStrategyBase } from "./date-input-selection-strategy-base";
4
+ /**
5
+ * Selection strategy for the 'range' selection mode.
6
+ */
7
+ export declare class RangeSelectionStrategy extends DateInputSelectionStrategyBase {
8
+ readonly selectionViewMode: Calendar.ViewMode;
9
+ readonly validViewModes: Calendar.ViewMode[];
10
+ readonly showSecondaryTextbox = true;
11
+ readonly showSecondaryCalendar = true;
12
+ formatSelection(selection?: DateInput.Selection | null): DateInput.TextboxGroup['value'];
13
+ parseTextboxValues(value: DateInput.TextboxGroup['value'], parseFormats: string[], opts?: DateInput.ParsingOptions): DateInput.Selection | null;
14
+ getSelectionFromDate(date: Date, existingSelection: DateInput.Selection | null): DateInput.Selection | null;
15
+ getNewSelectionFromExisting(previousSelection?: DateInput.Selection): DateInput.Selection | null;
16
+ getSelectionForQuickSelectDate(date: Date, existingSelection?: DateInput.Selection | null): DateInput.Selection | null;
17
+ getNextSelection(selection: DateInput.Selection | null): DateInput.Selection | null;
18
+ getPreviousSelection(selection: DateInput.Selection | null): DateInput.Selection | null;
19
+ getPrimaryCalendarView(selection: DateInput.Selection | null, minDate: Date, maxDate: Date, currentView: Calendar.View): Calendar.View;
20
+ getSecondaryCalendarView(selection: DateInput.Selection | null, minDate: Date, maxDate: Date, currentView: Calendar.View): Calendar.View;
21
+ }
@@ -0,0 +1,20 @@
1
+ import { Calendar } from "../../calendar/calendar.types";
2
+ import { DateInput } from "../date-input.types";
3
+ import { DateInputSelectionStrategyBase } from "./date-input-selection-strategy-base";
4
+ /**
5
+ * Selection strategy for the 'year' selection mode.
6
+ */
7
+ export declare class YearSelectionStrategy extends DateInputSelectionStrategyBase {
8
+ readonly selectionViewMode: Calendar.ViewMode;
9
+ readonly validViewModes: Calendar.ViewMode[];
10
+ readonly showSecondaryTextbox = false;
11
+ readonly showSecondaryCalendar = false;
12
+ formatSelection(selection?: DateInput.Selection | null): DateInput.TextboxGroup['value'];
13
+ parseString(value: string | null | undefined, parseFormats: string[], opts?: DateInput.ParsingOptions): Date | null;
14
+ parseTextboxValues(value: DateInput.TextboxGroup['value'], parseFormats: string[], opts?: DateInput.ParsingOptions): DateInput.Selection | null;
15
+ getSelectionFromDate(date: Date): DateInput.Selection | null;
16
+ getNewSelectionFromExisting(previousSelection?: DateInput.Selection): DateInput.Selection | null;
17
+ getSelectionForQuickSelectDate(date: Date): DateInput.Selection | null;
18
+ getNextSelection(selection: DateInput.Selection): DateInput.Selection | null;
19
+ getPreviousSelection(selection: DateInput.Selection): DateInput.Selection | null;
20
+ }