@zanichelli/albe-web-components 17.0.2 → 17.0.4

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 (219) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/dist/cjs/loader.cjs.js +1 -1
  3. package/dist/cjs/web-components-library.cjs.js +1 -1
  4. package/dist/cjs/z-anchor-navigation.cjs.entry.js +1 -1
  5. package/dist/cjs/z-anchor-navigation.cjs.entry.js.map +1 -1
  6. package/dist/cjs/z-app-header_12.cjs.entry.js +13 -14
  7. package/dist/cjs/z-app-header_12.cjs.entry.js.map +1 -1
  8. package/dist/cjs/z-book-card-app.cjs.entry.js +1 -1
  9. package/dist/cjs/z-book-card-app.cjs.entry.js.map +1 -1
  10. package/dist/cjs/z-book-card.cjs.entry.js +2 -2
  11. package/dist/cjs/z-book-card.cjs.entry.js.map +1 -1
  12. package/dist/cjs/z-date-picker.cjs.entry.js +5 -3
  13. package/dist/cjs/z-date-picker.cjs.entry.js.map +1 -1
  14. package/dist/cjs/z-pagination.cjs.entry.js +1 -1
  15. package/dist/cjs/z-pagination.cjs.entry.js.map +1 -1
  16. package/dist/cjs/z-select.cjs.entry.js +27 -35
  17. package/dist/cjs/z-select.cjs.entry.js.map +1 -1
  18. package/dist/collection/components/book-card/z-book-card/index.js +1 -1
  19. package/dist/collection/components/book-card/z-book-card/index.js.map +1 -1
  20. package/dist/collection/components/book-card/z-book-card/styles.css +3 -0
  21. package/dist/collection/components/book-card/z-book-card-app/styles.css +1 -0
  22. package/dist/collection/components/date-picker/z-date-picker/index.js +41 -3
  23. package/dist/collection/components/date-picker/z-date-picker/index.js.map +1 -1
  24. package/dist/collection/components/date-picker/z-date-picker/index.stories.js +17 -5
  25. package/dist/collection/components/date-picker/z-date-picker/index.stories.js.map +1 -1
  26. package/dist/collection/components/z-anchor-navigation/index.stories.js +16 -4
  27. package/dist/collection/components/z-anchor-navigation/index.stories.js.map +1 -1
  28. package/dist/collection/components/z-anchor-navigation/styles.css +7 -4
  29. package/dist/collection/components/z-app-header/styles.css +1 -0
  30. package/dist/collection/components/z-input/index.js +9 -11
  31. package/dist/collection/components/z-input/index.js.map +1 -1
  32. package/dist/collection/components/z-input/index.stories.js +21 -21
  33. package/dist/collection/components/z-input/index.stories.js.map +1 -1
  34. package/dist/collection/components/z-input/styles.css +97 -75
  35. package/dist/collection/components/z-input-message/index.js +19 -1
  36. package/dist/collection/components/z-input-message/index.js.map +1 -1
  37. package/dist/collection/components/z-input-message/styles.css +9 -4
  38. package/dist/collection/components/z-pagination/styles.css +7 -11
  39. package/dist/collection/components/z-select/index.js +27 -35
  40. package/dist/collection/components/z-select/index.js.map +1 -1
  41. package/dist/collection/components/z-select/styles.css +18 -17
  42. package/dist/components/index11.js +10 -12
  43. package/dist/components/index11.js.map +1 -1
  44. package/dist/components/index12.js +4 -2
  45. package/dist/components/index12.js.map +1 -1
  46. package/dist/components/utils.js +1 -1
  47. package/dist/components/z-anchor-navigation.js +1 -1
  48. package/dist/components/z-anchor-navigation.js.map +1 -1
  49. package/dist/components/z-app-header.js +1 -1
  50. package/dist/components/z-app-header.js.map +1 -1
  51. package/dist/components/z-book-card-app.js +1 -1
  52. package/dist/components/z-book-card-app.js.map +1 -1
  53. package/dist/components/z-book-card.js +2 -2
  54. package/dist/components/z-book-card.js.map +1 -1
  55. package/dist/components/z-date-picker.js +7 -3
  56. package/dist/components/z-date-picker.js.map +1 -1
  57. package/dist/components/z-pagination.js +1 -1
  58. package/dist/components/z-pagination.js.map +1 -1
  59. package/dist/components/z-select.js +28 -36
  60. package/dist/components/z-select.js.map +1 -1
  61. package/dist/components/z-skip-to-content.js +1 -1
  62. package/dist/esm/{index-8df19678.js → index-092fc7cc.js} +2 -2
  63. package/dist/esm/{index-8df19678.js.map → index-092fc7cc.js.map} +1 -1
  64. package/dist/esm/index.js +1 -1
  65. package/dist/esm/loader.js +1 -1
  66. package/dist/esm/{utils-ed82ce58.js → utils-b924649f.js} +2 -2
  67. package/dist/esm/{utils-ed82ce58.js.map → utils-b924649f.js.map} +1 -1
  68. package/dist/esm/web-components-library.js +1 -1
  69. package/dist/esm/z-anchor-navigation.entry.js +1 -1
  70. package/dist/esm/z-anchor-navigation.entry.js.map +1 -1
  71. package/dist/esm/z-app-header_12.entry.js +14 -15
  72. package/dist/esm/z-app-header_12.entry.js.map +1 -1
  73. package/dist/esm/z-book-card-app.entry.js +1 -1
  74. package/dist/esm/z-book-card-app.entry.js.map +1 -1
  75. package/dist/esm/z-book-card-deprecated.entry.js +1 -1
  76. package/dist/esm/z-book-card.entry.js +2 -2
  77. package/dist/esm/z-book-card.entry.js.map +1 -1
  78. package/dist/esm/z-breadcrumb.entry.js +1 -1
  79. package/dist/esm/z-combobox.entry.js +1 -1
  80. package/dist/esm/z-date-picker.entry.js +5 -3
  81. package/dist/esm/z-date-picker.entry.js.map +1 -1
  82. package/dist/esm/z-menu.entry.js +1 -1
  83. package/dist/esm/z-myz-card-info.entry.js +1 -1
  84. package/dist/esm/z-myz-list-item.entry.js +1 -1
  85. package/dist/esm/z-pagination.entry.js +1 -1
  86. package/dist/esm/z-pagination.entry.js.map +1 -1
  87. package/dist/esm/z-select.entry.js +28 -36
  88. package/dist/esm/z-select.entry.js.map +1 -1
  89. package/dist/esm/z-skip-to-content.entry.js +1 -1
  90. package/dist/esm/z-slideshow.entry.js +1 -1
  91. package/dist/esm/z-table.entry.js +2 -2
  92. package/dist/esm/z-toggle-switch.entry.js +1 -1
  93. package/dist/esm/z-tr.entry.js +2 -2
  94. package/dist/types/components/date-picker/z-date-picker/index.d.ts +4 -0
  95. package/dist/types/components/z-input-message/index.d.ts +2 -0
  96. package/dist/types/components/z-select/index.d.ts +1 -1
  97. package/dist/types/components.d.ts +24 -0
  98. package/dist/web-components-library/index.esm.js +1 -1
  99. package/dist/web-components-library/p-0378c12a.entry.js +2 -0
  100. package/dist/web-components-library/p-0378c12a.entry.js.map +1 -0
  101. package/dist/web-components-library/p-1e3ff105.entry.js +2 -0
  102. package/dist/web-components-library/p-1e3ff105.entry.js.map +1 -0
  103. package/dist/web-components-library/{p-caccf490.entry.js → p-22e32e11.entry.js} +2 -2
  104. package/{www/build/p-caccf490.entry.js.map → dist/web-components-library/p-22e32e11.entry.js.map} +1 -1
  105. package/dist/web-components-library/{p-20b628e7.entry.js → p-2fa0042e.entry.js} +2 -2
  106. package/dist/web-components-library/p-4a3fedbf.entry.js +2 -0
  107. package/dist/web-components-library/p-4a3fedbf.entry.js.map +1 -0
  108. package/dist/web-components-library/{p-4fedcbc2.entry.js → p-5387e6f3.entry.js} +2 -2
  109. package/{www/build/p-0565f1b2.entry.js → dist/web-components-library/p-758333dc.entry.js} +2 -2
  110. package/{www/build/p-605f6780.entry.js → dist/web-components-library/p-7af33b00.entry.js} +2 -2
  111. package/{www/build/p-b309bd71.entry.js → dist/web-components-library/p-7f370d17.entry.js} +2 -2
  112. package/dist/web-components-library/{p-65f1b68b.entry.js → p-9c4b7a51.entry.js} +2 -2
  113. package/dist/web-components-library/{p-037c59b3.js → p-bba6129f.js} +2 -2
  114. package/dist/web-components-library/{p-cc8186a9.entry.js → p-bd571858.entry.js} +2 -2
  115. package/dist/web-components-library/p-c29a520b.entry.js +2 -0
  116. package/{www/build/p-34f4f441.entry.js.map → dist/web-components-library/p-c29a520b.entry.js.map} +1 -1
  117. package/dist/web-components-library/p-ce0d5448.entry.js +2 -0
  118. package/dist/web-components-library/p-ce0d5448.entry.js.map +1 -0
  119. package/dist/web-components-library/{p-9f0a3d88.entry.js → p-cf7b7e73.entry.js} +2 -2
  120. package/dist/web-components-library/p-d1cca5ea.entry.js +2 -0
  121. package/dist/web-components-library/p-d1cca5ea.entry.js.map +1 -0
  122. package/dist/web-components-library/p-d6a2b1c6.entry.js +2 -0
  123. package/dist/web-components-library/p-d6a2b1c6.entry.js.map +1 -0
  124. package/dist/web-components-library/p-e185545c.entry.js +2 -0
  125. package/dist/web-components-library/{p-10607a39.js → p-e691c0b8.js} +2 -2
  126. package/{www/build/p-3bf02cab.entry.js → dist/web-components-library/p-e78353d6.entry.js} +2 -2
  127. package/dist/web-components-library/web-components-library.css +125 -72
  128. package/dist/web-components-library/web-components-library.esm.js +1 -1
  129. package/dist/web-components-library/web-components-library.esm.js.map +1 -1
  130. package/package.json +1 -1
  131. package/www/build/index.esm.js +1 -1
  132. package/www/build/p-01994cd6.js +2 -0
  133. package/www/build/p-0378c12a.entry.js +2 -0
  134. package/www/build/p-0378c12a.entry.js.map +1 -0
  135. package/www/build/p-1e3ff105.entry.js +2 -0
  136. package/www/build/p-1e3ff105.entry.js.map +1 -0
  137. package/www/build/{p-caccf490.entry.js → p-22e32e11.entry.js} +2 -2
  138. package/{dist/web-components-library/p-caccf490.entry.js.map → www/build/p-22e32e11.entry.js.map} +1 -1
  139. package/www/build/{p-20b628e7.entry.js → p-2fa0042e.entry.js} +2 -2
  140. package/www/build/p-4a3fedbf.entry.js +2 -0
  141. package/www/build/p-4a3fedbf.entry.js.map +1 -0
  142. package/www/build/{p-4fedcbc2.entry.js → p-5387e6f3.entry.js} +2 -2
  143. package/{dist/web-components-library/p-0565f1b2.entry.js → www/build/p-758333dc.entry.js} +2 -2
  144. package/{dist/web-components-library/p-605f6780.entry.js → www/build/p-7af33b00.entry.js} +2 -2
  145. package/{dist/web-components-library/p-b309bd71.entry.js → www/build/p-7f370d17.entry.js} +2 -2
  146. package/www/build/{p-65f1b68b.entry.js → p-9c4b7a51.entry.js} +2 -2
  147. package/www/build/{p-4c358c38.css → p-a35437c8.css} +125 -72
  148. package/www/build/{p-037c59b3.js → p-bba6129f.js} +2 -2
  149. package/www/build/{p-cc8186a9.entry.js → p-bd571858.entry.js} +2 -2
  150. package/www/build/p-c29a520b.entry.js +2 -0
  151. package/{dist/web-components-library/p-34f4f441.entry.js.map → www/build/p-c29a520b.entry.js.map} +1 -1
  152. package/www/build/p-ce0d5448.entry.js +2 -0
  153. package/www/build/p-ce0d5448.entry.js.map +1 -0
  154. package/www/build/{p-9f0a3d88.entry.js → p-cf7b7e73.entry.js} +2 -2
  155. package/www/build/p-d1cca5ea.entry.js +2 -0
  156. package/www/build/p-d1cca5ea.entry.js.map +1 -0
  157. package/www/build/p-d6a2b1c6.entry.js +2 -0
  158. package/www/build/p-d6a2b1c6.entry.js.map +1 -0
  159. package/www/build/p-e185545c.entry.js +2 -0
  160. package/www/build/{p-10607a39.js → p-e691c0b8.js} +2 -2
  161. package/{dist/web-components-library/p-3bf02cab.entry.js → www/build/p-e78353d6.entry.js} +2 -2
  162. package/www/build/web-components-library.css +125 -72
  163. package/www/build/web-components-library.esm.js +1 -1
  164. package/www/build/web-components-library.esm.js.map +1 -1
  165. package/www/index.html +1 -1
  166. package/www/pages/book-cards.html +20 -14
  167. package/dist/web-components-library/p-015621c8.entry.js +0 -2
  168. package/dist/web-components-library/p-015621c8.entry.js.map +0 -1
  169. package/dist/web-components-library/p-34f4f441.entry.js +0 -2
  170. package/dist/web-components-library/p-38e8c15d.entry.js +0 -2
  171. package/dist/web-components-library/p-38e8c15d.entry.js.map +0 -1
  172. package/dist/web-components-library/p-54a70792.entry.js +0 -2
  173. package/dist/web-components-library/p-54a70792.entry.js.map +0 -1
  174. package/dist/web-components-library/p-60a9cb8b.entry.js +0 -2
  175. package/dist/web-components-library/p-60a9cb8b.entry.js.map +0 -1
  176. package/dist/web-components-library/p-972098a5.entry.js +0 -2
  177. package/dist/web-components-library/p-972098a5.entry.js.map +0 -1
  178. package/dist/web-components-library/p-a90027c2.entry.js +0 -2
  179. package/dist/web-components-library/p-a90027c2.entry.js.map +0 -1
  180. package/dist/web-components-library/p-deb86b5c.entry.js +0 -2
  181. package/www/build/p-015621c8.entry.js +0 -2
  182. package/www/build/p-015621c8.entry.js.map +0 -1
  183. package/www/build/p-34f4f441.entry.js +0 -2
  184. package/www/build/p-38e8c15d.entry.js +0 -2
  185. package/www/build/p-38e8c15d.entry.js.map +0 -1
  186. package/www/build/p-45f04bb4.js +0 -2
  187. package/www/build/p-54a70792.entry.js +0 -2
  188. package/www/build/p-54a70792.entry.js.map +0 -1
  189. package/www/build/p-60a9cb8b.entry.js +0 -2
  190. package/www/build/p-60a9cb8b.entry.js.map +0 -1
  191. package/www/build/p-972098a5.entry.js +0 -2
  192. package/www/build/p-972098a5.entry.js.map +0 -1
  193. package/www/build/p-a90027c2.entry.js +0 -2
  194. package/www/build/p-a90027c2.entry.js.map +0 -1
  195. package/www/build/p-deb86b5c.entry.js +0 -2
  196. /package/dist/web-components-library/{p-20b628e7.entry.js.map → p-2fa0042e.entry.js.map} +0 -0
  197. /package/dist/web-components-library/{p-4fedcbc2.entry.js.map → p-5387e6f3.entry.js.map} +0 -0
  198. /package/dist/web-components-library/{p-0565f1b2.entry.js.map → p-758333dc.entry.js.map} +0 -0
  199. /package/dist/web-components-library/{p-605f6780.entry.js.map → p-7af33b00.entry.js.map} +0 -0
  200. /package/dist/web-components-library/{p-b309bd71.entry.js.map → p-7f370d17.entry.js.map} +0 -0
  201. /package/dist/web-components-library/{p-65f1b68b.entry.js.map → p-9c4b7a51.entry.js.map} +0 -0
  202. /package/dist/web-components-library/{p-037c59b3.js.map → p-bba6129f.js.map} +0 -0
  203. /package/dist/web-components-library/{p-cc8186a9.entry.js.map → p-bd571858.entry.js.map} +0 -0
  204. /package/dist/web-components-library/{p-9f0a3d88.entry.js.map → p-cf7b7e73.entry.js.map} +0 -0
  205. /package/dist/web-components-library/{p-deb86b5c.entry.js.map → p-e185545c.entry.js.map} +0 -0
  206. /package/dist/web-components-library/{p-10607a39.js.map → p-e691c0b8.js.map} +0 -0
  207. /package/dist/web-components-library/{p-3bf02cab.entry.js.map → p-e78353d6.entry.js.map} +0 -0
  208. /package/www/build/{p-20b628e7.entry.js.map → p-2fa0042e.entry.js.map} +0 -0
  209. /package/www/build/{p-4fedcbc2.entry.js.map → p-5387e6f3.entry.js.map} +0 -0
  210. /package/www/build/{p-0565f1b2.entry.js.map → p-758333dc.entry.js.map} +0 -0
  211. /package/www/build/{p-605f6780.entry.js.map → p-7af33b00.entry.js.map} +0 -0
  212. /package/www/build/{p-b309bd71.entry.js.map → p-7f370d17.entry.js.map} +0 -0
  213. /package/www/build/{p-65f1b68b.entry.js.map → p-9c4b7a51.entry.js.map} +0 -0
  214. /package/www/build/{p-037c59b3.js.map → p-bba6129f.js.map} +0 -0
  215. /package/www/build/{p-cc8186a9.entry.js.map → p-bd571858.entry.js.map} +0 -0
  216. /package/www/build/{p-9f0a3d88.entry.js.map → p-cf7b7e73.entry.js.map} +0 -0
  217. /package/www/build/{p-deb86b5c.entry.js.map → p-e185545c.entry.js.map} +0 -0
  218. /package/www/build/{p-10607a39.js.map → p-e691c0b8.js.map} +0 -0
  219. /package/www/build/{p-3bf02cab.entry.js.map → p-e78353d6.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"names":["global","factory","module","exports","this","__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","monthToStr","monthNumber","shorthand","locale","months","clearNode","node","firstChild","removeChild","getEventTarget","event","composedPath","path","target","error","defaultConfig","dateFormat","altFormat","theme","monthSelectPlugin","pluginConfig","config","fp","self","monthsContainer","clearUnnecessaryDOMElements","rContainer","index","monthElements","element","parentNode","build","_createElement","tabIndex","buildMonths","appendChild","calendarContainer","classList","add","frag","document","createDocumentFragment","month","createDay","Date","currentYear","dateObj","getMonth","getFullYear","textContent","l10n","addEventListener","selectMonth","minDate","prevMonthNav","remove","maxDate","nextMonthNav","bindEvents","_bind","e","preventDefault","stopPropagation","changeYear","selectYear","mode","onMouseOver","setCurrentlySelected","selectedDates","currentlySelected","querySelectorAll","targetMonth","querySelector","selectedDate","setFullYear","currentYearElement","value","String","forEach","eventTarget","Element","contains","setMonth","closeOnSelect","single","range","close","date","getDate","push","concat","sort","a","b","getTime","setDate","shifts","onKeyDown","_","__","___","shouldMove","keyCode","undefined","Array","indexOf","children","activeElement","firstElementChild","focus","$i","closeHook","_a","clear","stubCurrentMonth","_stubbedCurrentMonth","_initialDate","currentMonth","unstubCurrentMonth","destroyPluginInstance","removeEventListener","onParseConfig","enableTime","onValueUpdate","onReady","onClose","loadedPlugins","onDestroy","filter","hook","stylesCss","ZDatePickerStyle0","ZDatePicker","ZDatePickerMode","DATE","ZDatePickerPosition","BOTTOM","emitDateSelect","dateSelect","emit","handleKeyDown","ev","key","picker","hasChildren","_b","open","isCrossIconEntered","inputError","_c","isPrevArrowEntered","isNextArrowEntered","arrowPressed","MONTHS","_d","_e","calendar","getElementsByClassName","setAttribute","innerHTML","from","curMonth","curYear","_f","changeMonth","_g","componentWillLoad","customToggle","componentDidLoad","setupPickers","classToAppend","datePickerId","flatpickr","appendTo","DATE_TIME","Italian","allowInput","ariaDateFormat","minuteIncrement","time_24hr","onChange","_selectedDates","dateStr","onOpen","setAriaOptions","flatpickrPosition","setFlatpickrPosition","wrap","plugins","trim","charAt","formatDate","onStopTyping","text","detail","englishData","split","time","englishParsedData","join","isValidDate","validateDate","renderSlottedContent","h","class","name","renderZInput","ariaLabel","label","type","InputType","TEXT","icon","message","tabindex","onStartTyping","render"],"sources":["node_modules/flatpickr/dist/plugins/monthSelect/index.js","src/components/date-picker/styles.css?tag=z-date-picker","src/components/date-picker/z-date-picker/index.tsx"],"sourcesContent":["(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\n typeof define === 'function' && define.amd ? define(factory) :\n (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.monthSelectPlugin = factory());\n}(this, (function () { 'use strict';\n\n /*! *****************************************************************************\r\n Copyright (c) Microsoft Corporation.\r\n\r\n Permission to use, copy, modify, and/or distribute this software for any\r\n purpose with or without fee is hereby granted.\r\n\r\n THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\n REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\n AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\n INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\n LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\n OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\n PERFORMANCE OF THIS SOFTWARE.\r\n ***************************************************************************** */\r\n\r\n var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n };\r\n return __assign.apply(this, arguments);\r\n };\n\n var monthToStr = function (monthNumber, shorthand, locale) { return locale.months[shorthand ? \"shorthand\" : \"longhand\"][monthNumber]; };\n\n function clearNode(node) {\n while (node.firstChild)\n node.removeChild(node.firstChild);\n }\n function getEventTarget(event) {\n try {\n if (typeof event.composedPath === \"function\") {\n var path = event.composedPath();\n return path[0];\n }\n return event.target;\n }\n catch (error) {\n return event.target;\n }\n }\n\n var defaultConfig = {\n shorthand: false,\n dateFormat: \"F Y\",\n altFormat: \"F Y\",\n theme: \"light\",\n };\n function monthSelectPlugin(pluginConfig) {\n var config = __assign(__assign({}, defaultConfig), pluginConfig);\n return function (fp) {\n fp.config.dateFormat = config.dateFormat;\n fp.config.altFormat = config.altFormat;\n var self = { monthsContainer: null };\n function clearUnnecessaryDOMElements() {\n if (!fp.rContainer)\n return;\n clearNode(fp.rContainer);\n for (var index = 0; index < fp.monthElements.length; index++) {\n var element = fp.monthElements[index];\n if (!element.parentNode)\n continue;\n element.parentNode.removeChild(element);\n }\n }\n function build() {\n if (!fp.rContainer)\n return;\n self.monthsContainer = fp._createElement(\"div\", \"flatpickr-monthSelect-months\");\n self.monthsContainer.tabIndex = -1;\n buildMonths();\n fp.rContainer.appendChild(self.monthsContainer);\n fp.calendarContainer.classList.add(\"flatpickr-monthSelect-theme-\" + config.theme);\n }\n function buildMonths() {\n if (!self.monthsContainer)\n return;\n clearNode(self.monthsContainer);\n var frag = document.createDocumentFragment();\n for (var i = 0; i < 12; i++) {\n var month = fp.createDay(\"flatpickr-monthSelect-month\", new Date(fp.currentYear, i), 0, i);\n if (month.dateObj.getMonth() === new Date().getMonth() &&\n month.dateObj.getFullYear() === new Date().getFullYear())\n month.classList.add(\"today\");\n month.textContent = monthToStr(i, config.shorthand, fp.l10n);\n month.addEventListener(\"click\", selectMonth);\n frag.appendChild(month);\n }\n self.monthsContainer.appendChild(frag);\n if (fp.config.minDate &&\n fp.currentYear === fp.config.minDate.getFullYear())\n fp.prevMonthNav.classList.add(\"flatpickr-disabled\");\n else\n fp.prevMonthNav.classList.remove(\"flatpickr-disabled\");\n if (fp.config.maxDate &&\n fp.currentYear === fp.config.maxDate.getFullYear())\n fp.nextMonthNav.classList.add(\"flatpickr-disabled\");\n else\n fp.nextMonthNav.classList.remove(\"flatpickr-disabled\");\n }\n function bindEvents() {\n fp._bind(fp.prevMonthNav, \"click\", function (e) {\n e.preventDefault();\n e.stopPropagation();\n fp.changeYear(fp.currentYear - 1);\n selectYear();\n buildMonths();\n });\n fp._bind(fp.nextMonthNav, \"click\", function (e) {\n e.preventDefault();\n e.stopPropagation();\n fp.changeYear(fp.currentYear + 1);\n selectYear();\n buildMonths();\n });\n fp._bind(self.monthsContainer, \"mouseover\", function (e) {\n if (fp.config.mode === \"range\")\n fp.onMouseOver(getEventTarget(e), \"flatpickr-monthSelect-month\");\n });\n }\n function setCurrentlySelected() {\n if (!fp.rContainer)\n return;\n if (!fp.selectedDates.length)\n return;\n var currentlySelected = fp.rContainer.querySelectorAll(\".flatpickr-monthSelect-month.selected\");\n for (var index = 0; index < currentlySelected.length; index++) {\n currentlySelected[index].classList.remove(\"selected\");\n }\n var targetMonth = fp.selectedDates[0].getMonth();\n var month = fp.rContainer.querySelector(\".flatpickr-monthSelect-month:nth-child(\" + (targetMonth + 1) + \")\");\n if (month) {\n month.classList.add(\"selected\");\n }\n }\n function selectYear() {\n var selectedDate = fp.selectedDates[0];\n if (selectedDate) {\n selectedDate = new Date(selectedDate);\n selectedDate.setFullYear(fp.currentYear);\n if (fp.config.minDate && selectedDate < fp.config.minDate) {\n selectedDate = fp.config.minDate;\n }\n if (fp.config.maxDate && selectedDate > fp.config.maxDate) {\n selectedDate = fp.config.maxDate;\n }\n fp.currentYear = selectedDate.getFullYear();\n }\n fp.currentYearElement.value = String(fp.currentYear);\n if (fp.rContainer) {\n var months = fp.rContainer.querySelectorAll(\".flatpickr-monthSelect-month\");\n months.forEach(function (month) {\n month.dateObj.setFullYear(fp.currentYear);\n if ((fp.config.minDate && month.dateObj < fp.config.minDate) ||\n (fp.config.maxDate && month.dateObj > fp.config.maxDate)) {\n month.classList.add(\"flatpickr-disabled\");\n }\n else {\n month.classList.remove(\"flatpickr-disabled\");\n }\n });\n }\n setCurrentlySelected();\n }\n function selectMonth(e) {\n e.preventDefault();\n e.stopPropagation();\n var eventTarget = getEventTarget(e);\n if (!(eventTarget instanceof Element))\n return;\n if (eventTarget.classList.contains(\"flatpickr-disabled\"))\n return;\n if (eventTarget.classList.contains(\"notAllowed\"))\n return; // necessary??\n setMonth(eventTarget.dateObj);\n if (fp.config.closeOnSelect) {\n var single = fp.config.mode === \"single\";\n var range = fp.config.mode === \"range\" && fp.selectedDates.length === 2;\n if (single || range)\n fp.close();\n }\n }\n function setMonth(date) {\n var selectedDate = new Date(fp.currentYear, date.getMonth(), date.getDate());\n var selectedDates = [];\n switch (fp.config.mode) {\n case \"single\":\n selectedDates = [selectedDate];\n break;\n case \"multiple\":\n selectedDates.push(selectedDate);\n break;\n case \"range\":\n if (fp.selectedDates.length === 2) {\n selectedDates = [selectedDate];\n }\n else {\n selectedDates = fp.selectedDates.concat([selectedDate]);\n selectedDates.sort(function (a, b) { return a.getTime() - b.getTime(); });\n }\n break;\n }\n fp.setDate(selectedDates, true);\n setCurrentlySelected();\n }\n var shifts = {\n 37: -1,\n 39: 1,\n 40: 3,\n 38: -3,\n };\n function onKeyDown(_, __, ___, e) {\n var shouldMove = shifts[e.keyCode] !== undefined;\n if (!shouldMove && e.keyCode !== 13) {\n return;\n }\n if (!fp.rContainer || !self.monthsContainer)\n return;\n var currentlySelected = fp.rContainer.querySelector(\".flatpickr-monthSelect-month.selected\");\n var index = Array.prototype.indexOf.call(self.monthsContainer.children, document.activeElement);\n if (index === -1) {\n var target = currentlySelected || self.monthsContainer.firstElementChild;\n target.focus();\n index = target.$i;\n }\n if (shouldMove) {\n self.monthsContainer.children[(12 + index + shifts[e.keyCode]) % 12].focus();\n }\n else if (e.keyCode === 13 &&\n self.monthsContainer.contains(document.activeElement)) {\n setMonth(document.activeElement.dateObj);\n }\n }\n function closeHook() {\n var _a;\n if (((_a = fp.config) === null || _a === void 0 ? void 0 : _a.mode) === \"range\" && fp.selectedDates.length === 1)\n fp.clear(false);\n if (!fp.selectedDates.length)\n buildMonths();\n }\n // Help the prev/next year nav honor config.minDate (see 3fa5a69)\n function stubCurrentMonth() {\n config._stubbedCurrentMonth = fp._initialDate.getMonth();\n fp._initialDate.setMonth(config._stubbedCurrentMonth);\n fp.currentMonth = config._stubbedCurrentMonth;\n }\n function unstubCurrentMonth() {\n if (!config._stubbedCurrentMonth)\n return;\n fp._initialDate.setMonth(config._stubbedCurrentMonth);\n fp.currentMonth = config._stubbedCurrentMonth;\n delete config._stubbedCurrentMonth;\n }\n function destroyPluginInstance() {\n if (self.monthsContainer !== null) {\n var months = self.monthsContainer.querySelectorAll(\".flatpickr-monthSelect-month\");\n for (var index = 0; index < months.length; index++) {\n months[index].removeEventListener(\"click\", selectMonth);\n }\n }\n }\n return {\n onParseConfig: function () {\n fp.config.enableTime = false;\n },\n onValueUpdate: setCurrentlySelected,\n onKeyDown: onKeyDown,\n onReady: [\n stubCurrentMonth,\n clearUnnecessaryDOMElements,\n build,\n bindEvents,\n setCurrentlySelected,\n function () {\n fp.config.onClose.push(closeHook);\n fp.loadedPlugins.push(\"monthSelect\");\n },\n ],\n onDestroy: [\n unstubCurrentMonth,\n destroyPluginInstance,\n function () {\n fp.config.onClose = fp.config.onClose.filter(function (hook) { return hook !== closeHook; });\n },\n ],\n };\n };\n }\n\n return monthSelectPlugin;\n\n})));\n","@import \"~flatpickr/dist/flatpickr.min.css\";\n@import \"~flatpickr/dist/plugins/monthSelect/style.css\";\n\n/* stylelint-disable selector-class-pattern -- we have no control over flatpickr css classes naming */\n\n:host {\n font-family: var(--font-family-sans);\n font-weight: var(--font-rg);\n\n --z-range-picker--toggle-height: 0;\n}\n\nz-date-picker {\n position: relative;\n}\n\nz-date-picker > div > * {\n cursor: pointer !important;\n}\n\nz-range-picker {\n position: relative;\n}\n\n.flatpickr-toggle-container {\n width: fit-content;\n}\n\n.range-pickers-container > div {\n position: relative;\n}\n\n.hidden-input {\n position: absolute;\n bottom: 0;\n width: 0;\n height: 0;\n visibility: hidden !important;\n}\n\n/* Calendar container selectors */\n.flatpickr-calendar::before,\n.flatpickr-calendar::after {\n display: none;\n}\n\n.flatpickr-calendar {\n position: absolute !important;\n top: var(--z-range-picker--toggle-height) !important;\n left: 0 !important;\n padding-top: calc(var(--space-unit) * 2);\n border-radius: 2px;\n box-shadow: var(--shadow-2);\n font-family: var(--font-family-sans) !important;\n}\n\n.months.top > .flatpickr-calendar {\n top: -288px !important;\n}\n\n.date.top > .flatpickr-calendar,\n.date.top > div > .flatpickr-calendar {\n top: -401px !important;\n}\n\n.date-time.top > .flatpickr-calendar,\n.date-time.top > div > .flatpickr-calendar {\n top: -523px !important;\n}\n\n.flatpickr-calendar,\n.flatpickr-innerContainer,\n.flatpickr-days,\n.dayContainer,\n.flatpickr-rContainer,\n.flatpickr-monthSelect-months {\n width: calc(var(--space-unit) * 42) !important;\n max-width: calc(var(--space-unit) * 42) !important;\n}\n\n.flatpickr-monthSelect-months {\n box-sizing: border-box;\n padding: 0 !important;\n margin: calc(var(--space-unit) * 2) 0 !important;\n}\n\n/* Months and year row containers selectors */\n.flatpickr-months {\n position: relative;\n height: calc(var(--space-unit) * 6) !important;\n align-items: center;\n margin-bottom: var(--space-unit) 0 !important;\n}\n\n.flatpickr-month {\n overflow: visible !important;\n height: calc(var(--space-unit) * 6) !important;\n}\n\n.flatpickr-current-month {\n left: 0 !important;\n display: flex !important;\n width: fill-available;\n height: calc(var(--space-unit) * 6);\n align-items: baseline;\n justify-content: space-evenly;\n padding-top: 0;\n}\n\n/* Months arrows selectors */\n.flatpickr-next-month,\n.flatpickr-prev-month {\n position: static !important;\n display: flex;\n width: calc(var(--space-unit) * 4) !important;\n height: calc(var(--space-unit) * 4) !important;\n align-items: center;\n justify-content: center;\n padding: 0 !important;\n}\n\n.flatpickr-prev-month {\n margin-left: var(--space-unit);\n}\n\n.flatpickr-next-month {\n margin-right: var(--space-unit);\n}\n\n.flatpickr-next-month > svg,\n.flatpickr-prev-month > svg {\n width: calc(var(--space-unit) * 2) !important;\n height: calc(var(--space-unit) * 2) !important;\n fill: var(--color-primary01);\n}\n\n.flatpickr-next-month:hover,\n.flatpickr-prev-month:hover,\n.flatpickr-next-month:focus,\n.flatpickr-prev-month:focus {\n border: none !important;\n border-color: var(--color-primary03) !important;\n background-color: var(--color-primary03) !important;\n border-radius: var(--border-radius);\n color: var(--color-hover-primary) !important;\n outline: none !important;\n}\n\n.flatpickr-next-month:hover svg,\n.flatpickr-prev-month:hover svg {\n fill: var(--color-hover-primary) !important;\n}\n\n.flatpickr-next-month:active,\n.flatpickr-prev-month:active {\n border-color: var(--color-surface01) !important;\n background-color: var(--color-surface01) !important;\n border-radius: var(--border-radius);\n box-shadow: var(--shadow-2) !important;\n color: var(--color-primary01) !important;\n}\n\n.flatpickr-next-month:focus svg,\n.flatpickr-prev-month:focus svg {\n fill: var(--color-primary01) !important;\n}\n\n/* Months dropdown selectors */\n.flatpickr-monthDropdown-months {\n width: 108px !important;\n height: calc(var(--space-unit) * 5.5) !important;\n padding-left: var(--space-unit) !important;\n background: var(--color-surface01) !important;\n color: var(--color-default-text) !important;\n font-size: var(--font-size-3) !important;\n font-weight: var(--font-rg) !important;\n outline: 1px solid black !important;\n}\n\n.flatpickr-monthDropdown-months:hover,\n.flatpickr-monthDropdown-months:focus {\n outline: 1px solid var(--color-primary01) !important;\n}\n\n/* Year toggle selectors */\n.flatpickr-current-month > .numInputWrapper {\n display: flex;\n width: calc(var(--space-unit) * 10);\n height: calc(var(--space-unit) * 5.5) !important;\n background: var(--color-surface01) !important;\n color: var(--color-default-text);\n outline: 1px solid black !important;\n}\n\n.flatpickr-current-month > .numInputWrapper:hover,\n.flatpickr-current-month > .numInputWrapper:focus-within {\n outline: 1px solid var(--color-primary01) !important;\n}\n\n.flatpickr-current-month > .numInputWrapper > input {\n padding: 0 calc(var(--space-unit) * 3) 0 var(--space-unit);\n font-size: var(--font-size-3) !important;\n font-weight: var(--font-rg) !important;\n text-align: center;\n}\n\n/* Weekdays selectors */\n.flatpickr-weekdays {\n height: calc(var(--space-unit) * 6);\n border-bottom: 1px solid var(--color-surface03);\n}\n\n.flatpickr-weekday {\n font-size: var(--font-size-3) !important;\n font-weight: var(--font-rg) !important;\n}\n\n/* Calendar days and months selectors */\n.flatpickr-day,\n.flatpickr-monthSelect-month {\n width: calc(var(--space-unit) * 6) !important;\n max-width: 100% !important;\n height: calc(var(--space-unit) * 6) !important;\n border: none;\n margin: 0 !important;\n border-radius: 0 !important;\n box-shadow: none !important;\n font-size: var(--font-size-3) !important;\n line-height: calc(var(--space-unit) * 6) !important;\n}\n\n.flatpickr-day {\n width: calc(var(--space-unit) * 6) !important;\n border: none;\n line-height: calc(var(--space-unit) * 6) !important;\n}\n\n.flatpickr-monthSelect-month {\n width: calc(var(--space-unit) * 14) !important;\n padding: 0 !important;\n border: 2px solid var(--color-surface01) !important;\n line-height: calc(var(--space-unit) * 5) !important;\n}\n\n.flatpickr-day:not(.flatpickr-disabled):hover,\n.flatpickr-day:not(.flatpickr-disabled):active,\n.flatpickr-day:not(.flatpickr-disabled):focus,\n.flatpickr-day:not(.flatpickr-disabled).prevMonthDay:hover,\n.flatpickr-day:not(.flatpickr-disabled).prevMonthDay:active,\n.flatpickr-day:not(.flatpickr-disabled).prevMonthDay:focus,\n.flatpickr-day:not(.flatpickr-disabled).selected:hover,\n.flatpickr-day:not(.flatpickr-disabled).selected:active,\n.flatpickr-day:not(.flatpickr-disabled).selected:focus,\n.flatpickr-monthSelect-month:hover,\n.flatpickr-monthSelect-month:active,\n.flatpickr-monthSelect-month:focus {\n border-color: var(--color-hover-primary) !important;\n background-color: var(--color-hover-primary) !important;\n color: var(--color-text-inverse) !important;\n}\n\n.flatpickr-day.today,\n.flatpickr-monthSelect-month.today {\n border: 2px solid var(--color-hover-primary) !important;\n}\n\n.flatpickr-day.selected:not(.flatpickr-disabled),\n.flatpickr-monthSelect-month.selected:not(.flatpickr-disabled) {\n border-color: var(--color-primary01) !important;\n background-color: var(--color-primary01) !important;\n}\n\n.flatpickr-weekday:nth-child(6),\n.flatpickr-weekday:nth-child(7),\n.flatpickr-day:nth-child(7n + 6),\n.flatpickr-day:nth-child(7n + 7) {\n font-weight: var(--font-sb) !important;\n}\n\n/* Date and time selectors */\n.flatpickr-time {\n display: block;\n height: 90px !important;\n max-height: 90px !important;\n text-align: left;\n}\n\n.flatpickr-time::before {\n display: block;\n width: 100%;\n padding-left: var(--space-unit);\n color: var(--color-default-text) !important;\n content: \"Orario\";\n font-size: var(--font-size-1);\n font-weight: var(--font-sb);\n text-transform: uppercase;\n}\n\n.flatpickr-time.time24hr {\n margin: calc(var(--space-unit) * 2) !important;\n}\n\n.flatpickr-time.time24hr > .numInputWrapper > input:hover,\n.flatpickr-time.time24hr > .numInputWrapper > input:focus,\n.flatpickr-time.time24hr > .numInputWrapper:hover {\n background-color: var(--color-surface01) !important;\n}\n\n.flatpickr-time.time24hr > div {\n width: calc(var(--space-unit) * 10) !important;\n height: calc(var(--space-unit) * 5.5) !important;\n margin-right: var(--space-unit) !important;\n margin-left: var(--space-unit) !important;\n}\n\n.flatpickr-time-separator {\n display: flex;\n height: calc(var(--space-unit) * 5.5) !important;\n align-items: center;\n justify-content: center;\n font-weight: unset !important;\n}\n\n.flatpickr-minute,\n.flatpickr-hour {\n font-size: var(--font-size-3) !important;\n font-weight: var(--font-rg) !important;\n outline: 1px solid black !important;\n}\n\n.numInputWrapper:hover .flatpickr-minute,\n.numInputWrapper:hover .flatpickr-hour,\n.flatpickr-minute:focus,\n.flatpickr-hour:focus {\n outline: 1px solid var(--color-primary01) !important;\n}\n\n/* toggle arrows selectors */\n.arrowUp,\n.arrowDown {\n width: calc(var(--space-unit) * 2) !important;\n height: calc(var(--space-unit) * 2) !important;\n padding: 0 !important;\n border: none !important;\n opacity: 1 !important;\n}\n\n.arrowUp {\n margin-top: calc(var(--space-unit) / 2) !important;\n margin-right: calc(var(--space-unit) / 2) !important;\n}\n\n.arrowDown {\n top: auto !important;\n margin-top: calc(var(--space-unit) * 3) !important;\n margin-right: calc(var(--space-unit) / 2) !important;\n}\n\n.arrowUp:hover,\n.arrowDown:hover {\n border-color: var(--color-primary03) !important;\n background-color: var(--color-primary03) !important;\n border-radius: var(--border-radius);\n color: var(--color-hover-primary) !important;\n}\n\n.arrowUp:active,\n.arrowDown:active {\n border-color: var(--color-surface01) !important;\n background-color: var(--color-surface01) !important;\n border-radius: var(--border-radius);\n box-shadow: var(--shadow-2) !important;\n color: var(--color-primary01) !important;\n}\n\n.arrowUp::after,\n.arrowDown::after {\n padding: 2.5px !important;\n border: solid var(--color-primary01) !important;\n border-width: 0 1px 1px 0 !important;\n}\n\n.arrowUp::after {\n top: 0 !important;\n margin-top: 6px !important;\n margin-left: 5.5px !important;\n transform: rotate(-135deg);\n}\n\n.arrowDown::after {\n top: 0 !important;\n left: 5.5px !important;\n margin-top: 4px !important;\n transform: rotate(45deg);\n}\n\n/* range-date-picker selectors */\n\n.flatpickr-day:not(.flatpickr-disabled).inRange:hover,\n.flatpickr-day:not(.flatpickr-disabled).today.inRange:hover,\n.flatpickr-day.prevMonthDay:not(.flatpickr-disabled).inRange:hover,\n.flatpickr-monthSelect-month:not(.flatpickr-disabled).inRange:hover {\n border-color: var(--color-hover-primary) !important;\n background-color: var(--color-hover-primary) !important;\n}\n\n.flatpickr-day:not(.flatpickr-disabled).inRange,\n.flatpickr-day:not(.flatpickr-disabled).today.inRange,\n.flatpickr-day:not(.flatpickr-disabled).prevMonthDay.inRange,\n.flatpickr-monthSelect-month:not(.flatpickr-disabled).inRange {\n border-color: var(--color-primary03);\n background-color: var(--color-primary03);\n}\n\n.flatpickr-day:not(.flatpickr-disabled).startRange,\n.flatpickr-day:not(.flatpickr-disabled).endRange,\n.flatpickr-monthSelect-month:not(.flatpickr-disabled).startRange,\n.flatpickr-monthSelect-month:not(.flatpickr-disabled).endRange {\n border-color: var(--color-primary01) !important;\n background-color: var(--color-primary01) !important;\n}\n\n.flatpickr-day:not(.flatpickr-disabled).prevMonthDay.selected.startRange,\n.flatpickr-day:not(.flatpickr-disabled).prevMonthDay.selected.endRange {\n border-color: var(--color-primary01) !important;\n background-color: var(--color-primary01) !important;\n}\n\n.flatpickr-range.second-input {\n cursor: pointer;\n}\n\n.range-pickers-container {\n display: flex;\n gap: 16px;\n}\n","import {Component, Element, Event, EventEmitter, Listen, Prop, State, Watch, h} from \"@stencil/core\";\n\nimport flatpickr from \"flatpickr\";\nimport {Italian} from \"flatpickr/dist/l10n/it.js\";\nimport monthSelectPlugin from \"flatpickr/dist/plugins/monthSelect\";\nimport {InputType, ZDatePickerMode, ZDatePickerPosition} from \"../../../beans\";\nimport {setAriaOptions, setFlatpickrPosition, validateDate} from \"../utils\";\n\n@Component({\n tag: \"z-date-picker\",\n styleUrl: \"../styles.css\",\n shadow: false,\n})\nexport class ZDatePicker {\n @Element() element: HTMLZDatePickerElement;\n\n /** unique id */\n @Prop()\n datePickerId: string;\n\n /** z-input aria label */\n @Prop()\n ariaLabel = \"\";\n\n /** z-input label */\n @Prop()\n label?: string;\n\n /** [Optional] datepicker mode: date, datetime, only months */\n @Prop()\n mode: ZDatePickerMode = ZDatePickerMode.DATE;\n\n @State()\n flatpickrPosition: ZDatePickerPosition = ZDatePickerPosition.BOTTOM;\n\n @State()\n inputError = false;\n\n private picker;\n\n private hasChildren: boolean;\n\n /** emitted when date changes, returns selected date */\n @Event()\n dateSelect: EventEmitter;\n\n private emitDateSelect(date): void {\n this.dateSelect.emit(date);\n }\n\n @Listen(\"keydown\", {target: \"body\", capture: true})\n handleKeyDown(ev: KeyboardEvent): void {\n if (ev.key === \"Escape\") {\n this.picker?.close();\n }\n\n if (ev.key === \"Enter\" || ev.key === \" \") {\n !this.hasChildren && this.picker?.open();\n\n const isCrossIconEntered = document.activeElement.classList.contains(\"reset-icon\");\n\n if (isCrossIconEntered) {\n this.inputError = false;\n this.picker?.setDate([]);\n this.dateSelect.emit(null);\n }\n\n const flatpickrDayPressed = document.activeElement.classList.contains(\"flatpickr-day\");\n if (flatpickrDayPressed) {\n //Sistemare il toggle\n }\n const isPrevArrowEntered = document.activeElement.classList.contains(\"flatpickr-prev-month\");\n const isNextArrowEntered = document.activeElement.classList.contains(\"flatpickr-next-month\");\n const arrowPressed = isPrevArrowEntered || isNextArrowEntered;\n\n arrowPressed && ev.key === \" \" && ev.preventDefault();\n\n if (this.mode === ZDatePickerMode.MONTHS) {\n isPrevArrowEntered && this.picker?.changeYear(this.picker.currentYear - 1);\n\n isNextArrowEntered && this.picker?.changeYear(this.picker.currentYear + 1);\n\n if (arrowPressed) {\n const calendar = this.element.getElementsByClassName(\"flatpickr-calendar\")[0];\n const months = calendar?.querySelectorAll(\".flatpickr-monthSelect-month\");\n months?.forEach((element) => {\n element.setAttribute(\"aria-label\", `${element.innerHTML} ${this.picker?.currentYear}`);\n });\n\n //Force check of the current day\n months &&\n Array.from(months).forEach((element, index) => {\n const curMonth = new Date().getMonth();\n const curYear = new Date().getFullYear();\n\n if (index === curMonth) {\n if (this.picker?.currentYear === curYear) {\n element.setAttribute(\"class\", \"flatpickr-monthSelect-month today\");\n } else {\n element.setAttribute(\"class\", \"flatpickr-monthSelect-month\");\n }\n }\n });\n }\n } else {\n isPrevArrowEntered && this.picker?.changeMonth(-1);\n isNextArrowEntered && this.picker?.changeMonth(1);\n }\n }\n }\n\n componentWillLoad(): void {\n const customToggle = this.element.querySelector(\"[slot=toggle]\");\n this.hasChildren = !!customToggle;\n this.hasChildren && customToggle.setAttribute(\"data-toggle\", \"data-toggle\");\n }\n\n componentDidLoad(): void {\n this.setupPickers();\n }\n\n @Watch(\"mode\")\n setupPickers(): void {\n const classToAppend = this.hasChildren ? `${this.datePickerId}-hidden` : `${this.datePickerId}-container`;\n\n this.picker = flatpickr(`.${classToAppend}`, {\n appendTo: this.element.children[0] as HTMLElement,\n enableTime: this.mode === ZDatePickerMode.DATE_TIME,\n locale: Italian,\n allowInput: true,\n dateFormat: this.mode === ZDatePickerMode.DATE_TIME ? \"d-m-Y - H:i\" : \"d-m-Y\",\n ariaDateFormat: this.mode === ZDatePickerMode.MONTHS ? \"F Y\" : \"d F Y\",\n minuteIncrement: 1,\n // eslint-disable-next-line @typescript-eslint/naming-convention\n time_24hr: true,\n onChange: (_selectedDates, dateStr) => {\n this.emitDateSelect(dateStr);\n },\n onOpen: () => {\n setAriaOptions(this.element as HTMLElement, this.mode);\n this.flatpickrPosition = setFlatpickrPosition(this.element as HTMLElement, this.mode);\n },\n onKeyDown: () => {\n setAriaOptions(this.element as HTMLElement, this.mode);\n },\n wrap: true,\n plugins: this.mode === ZDatePickerMode.MONTHS && [\n monthSelectPlugin({\n dateFormat: \"m-Y\",\n altFormat: \"m-Y\",\n }),\n ],\n });\n\n this.element.querySelectorAll(\".flatpickr-weekday\").forEach((element) => {\n element.innerHTML = element.innerHTML.trim().charAt(0);\n });\n }\n\n private formatDate(date): string {\n if (this.mode === ZDatePickerMode.DATE) {\n return `${flatpickr.formatDate(date, \"d-m-Y\")}`;\n } else if (this.mode === ZDatePickerMode.MONTHS) {\n return `${flatpickr.formatDate(date, \"m-Y\")}`;\n }\n\n return `${flatpickr.formatDate(date, \"d-m-Y - H:i\")}`;\n }\n\n private onStopTyping(value): void {\n let text = value.detail.value;\n\n if (this.mode === ZDatePickerMode.MONTHS) {\n text = \"01-\".concat(value.detail.value);\n }\n\n const englishData = text.split(\"-\");\n const time = this.mode === ZDatePickerMode.DATE_TIME ? `T${englishData[3]}:00` : \"\";\n const englishParsedData = `${englishData[2]}-${englishData[1]}-${englishData[0]}${time}`.split(\" \").join(\"\");\n\n const isValidDate = validateDate(englishParsedData, this.mode === ZDatePickerMode.DATE_TIME);\n\n if (text === \"\") {\n this.inputError = false;\n this.picker.setDate([]);\n this.dateSelect.emit(null);\n } else if (!isValidDate) {\n this.inputError = true;\n this.dateSelect.emit(null);\n } else if (isValidDate) {\n this.inputError = false;\n this.picker.setDate([value.detail.value]);\n this.dateSelect.emit(this.formatDate(new Date(englishParsedData)));\n }\n }\n\n private renderSlottedContent(): HTMLDivElement {\n return (\n <div class={`${this.datePickerId}-hidden`}>\n <input\n class=\"hidden-input\"\n data-input\n ></input>\n <slot name=\"toggle\"></slot>\n </div>\n );\n }\n\n private renderZInput(): HTMLDivElement {\n return (\n <div class={`${this.datePickerId}-container`}>\n <z-input\n data-input=\"data-input\"\n ariaLabel={this.ariaLabel}\n label={this.label}\n class={this.datePickerId}\n type={InputType.TEXT}\n icon=\"event\"\n message={false}\n tabindex=\"0\"\n value=\"\"\n onStopTyping={(value) => {\n this.onStopTyping(value);\n }}\n onStartTyping={() => {\n this.inputError = false;\n }}\n ></z-input>\n </div>\n );\n }\n\n render(): HTMLDivElement {\n return (\n <div\n class={{\n \"flatpickr-toggle-container\": true,\n [this.flatpickrPosition]: true,\n [this.mode]: true,\n }}\n >\n {this.hasChildren ? this.renderSlottedContent() : this.renderZInput()}\n </div>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["global","factory","module","exports","this","__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","monthToStr","monthNumber","shorthand","locale","months","clearNode","node","firstChild","removeChild","getEventTarget","event","composedPath","path","target","error","defaultConfig","dateFormat","altFormat","theme","monthSelectPlugin","pluginConfig","config","fp","self","monthsContainer","clearUnnecessaryDOMElements","rContainer","index","monthElements","element","parentNode","build","_createElement","tabIndex","buildMonths","appendChild","calendarContainer","classList","add","frag","document","createDocumentFragment","month","createDay","Date","currentYear","dateObj","getMonth","getFullYear","textContent","l10n","addEventListener","selectMonth","minDate","prevMonthNav","remove","maxDate","nextMonthNav","bindEvents","_bind","e","preventDefault","stopPropagation","changeYear","selectYear","mode","onMouseOver","setCurrentlySelected","selectedDates","currentlySelected","querySelectorAll","targetMonth","querySelector","selectedDate","setFullYear","currentYearElement","value","String","forEach","eventTarget","Element","contains","setMonth","closeOnSelect","single","range","close","date","getDate","push","concat","sort","a","b","getTime","setDate","shifts","onKeyDown","_","__","___","shouldMove","keyCode","undefined","Array","indexOf","children","activeElement","firstElementChild","focus","$i","closeHook","_a","clear","stubCurrentMonth","_stubbedCurrentMonth","_initialDate","currentMonth","unstubCurrentMonth","destroyPluginInstance","removeEventListener","onParseConfig","enableTime","onValueUpdate","onReady","onClose","loadedPlugins","onDestroy","filter","hook","stylesCss","ZDatePickerStyle0","ZDatePicker","ZDatePickerMode","DATE","ZDatePickerPosition","BOTTOM","emitDateSelect","dateSelect","emit","handleKeyDown","ev","key","picker","hasChildren","_b","open","isCrossIconEntered","inputError","_c","isPrevArrowEntered","isNextArrowEntered","arrowPressed","MONTHS","_d","_e","calendar","getElementsByClassName","setAttribute","innerHTML","from","curMonth","curYear","_f","changeMonth","_g","componentWillLoad","customToggle","componentDidLoad","setupPickers","classToAppend","datePickerId","flatpickr","appendTo","DATE_TIME","Italian","allowInput","ariaDateFormat","minuteIncrement","time_24hr","onChange","_selectedDates","dateStr","onOpen","setAriaOptions","flatpickrPosition","setFlatpickrPosition","wrap","plugins","trim","charAt","formatDate","onStopTyping","text","detail","englishData","split","time","englishParsedData","join","isValidDate","validateDate","renderSlottedContent","h","class","name","renderZInput","ariaLabel","label","type","InputType","TEXT","icon","message","tabindex","onStartTyping","render"],"sources":["node_modules/flatpickr/dist/plugins/monthSelect/index.js","src/components/date-picker/styles.css?tag=z-date-picker","src/components/date-picker/z-date-picker/index.tsx"],"sourcesContent":["(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\n typeof define === 'function' && define.amd ? define(factory) :\n (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.monthSelectPlugin = factory());\n}(this, (function () { 'use strict';\n\n /*! *****************************************************************************\r\n Copyright (c) Microsoft Corporation.\r\n\r\n Permission to use, copy, modify, and/or distribute this software for any\r\n purpose with or without fee is hereby granted.\r\n\r\n THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\n REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\n AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\n INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\n LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\n OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\n PERFORMANCE OF THIS SOFTWARE.\r\n ***************************************************************************** */\r\n\r\n var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n };\r\n return __assign.apply(this, arguments);\r\n };\n\n var monthToStr = function (monthNumber, shorthand, locale) { return locale.months[shorthand ? \"shorthand\" : \"longhand\"][monthNumber]; };\n\n function clearNode(node) {\n while (node.firstChild)\n node.removeChild(node.firstChild);\n }\n function getEventTarget(event) {\n try {\n if (typeof event.composedPath === \"function\") {\n var path = event.composedPath();\n return path[0];\n }\n return event.target;\n }\n catch (error) {\n return event.target;\n }\n }\n\n var defaultConfig = {\n shorthand: false,\n dateFormat: \"F Y\",\n altFormat: \"F Y\",\n theme: \"light\",\n };\n function monthSelectPlugin(pluginConfig) {\n var config = __assign(__assign({}, defaultConfig), pluginConfig);\n return function (fp) {\n fp.config.dateFormat = config.dateFormat;\n fp.config.altFormat = config.altFormat;\n var self = { monthsContainer: null };\n function clearUnnecessaryDOMElements() {\n if (!fp.rContainer)\n return;\n clearNode(fp.rContainer);\n for (var index = 0; index < fp.monthElements.length; index++) {\n var element = fp.monthElements[index];\n if (!element.parentNode)\n continue;\n element.parentNode.removeChild(element);\n }\n }\n function build() {\n if (!fp.rContainer)\n return;\n self.monthsContainer = fp._createElement(\"div\", \"flatpickr-monthSelect-months\");\n self.monthsContainer.tabIndex = -1;\n buildMonths();\n fp.rContainer.appendChild(self.monthsContainer);\n fp.calendarContainer.classList.add(\"flatpickr-monthSelect-theme-\" + config.theme);\n }\n function buildMonths() {\n if (!self.monthsContainer)\n return;\n clearNode(self.monthsContainer);\n var frag = document.createDocumentFragment();\n for (var i = 0; i < 12; i++) {\n var month = fp.createDay(\"flatpickr-monthSelect-month\", new Date(fp.currentYear, i), 0, i);\n if (month.dateObj.getMonth() === new Date().getMonth() &&\n month.dateObj.getFullYear() === new Date().getFullYear())\n month.classList.add(\"today\");\n month.textContent = monthToStr(i, config.shorthand, fp.l10n);\n month.addEventListener(\"click\", selectMonth);\n frag.appendChild(month);\n }\n self.monthsContainer.appendChild(frag);\n if (fp.config.minDate &&\n fp.currentYear === fp.config.minDate.getFullYear())\n fp.prevMonthNav.classList.add(\"flatpickr-disabled\");\n else\n fp.prevMonthNav.classList.remove(\"flatpickr-disabled\");\n if (fp.config.maxDate &&\n fp.currentYear === fp.config.maxDate.getFullYear())\n fp.nextMonthNav.classList.add(\"flatpickr-disabled\");\n else\n fp.nextMonthNav.classList.remove(\"flatpickr-disabled\");\n }\n function bindEvents() {\n fp._bind(fp.prevMonthNav, \"click\", function (e) {\n e.preventDefault();\n e.stopPropagation();\n fp.changeYear(fp.currentYear - 1);\n selectYear();\n buildMonths();\n });\n fp._bind(fp.nextMonthNav, \"click\", function (e) {\n e.preventDefault();\n e.stopPropagation();\n fp.changeYear(fp.currentYear + 1);\n selectYear();\n buildMonths();\n });\n fp._bind(self.monthsContainer, \"mouseover\", function (e) {\n if (fp.config.mode === \"range\")\n fp.onMouseOver(getEventTarget(e), \"flatpickr-monthSelect-month\");\n });\n }\n function setCurrentlySelected() {\n if (!fp.rContainer)\n return;\n if (!fp.selectedDates.length)\n return;\n var currentlySelected = fp.rContainer.querySelectorAll(\".flatpickr-monthSelect-month.selected\");\n for (var index = 0; index < currentlySelected.length; index++) {\n currentlySelected[index].classList.remove(\"selected\");\n }\n var targetMonth = fp.selectedDates[0].getMonth();\n var month = fp.rContainer.querySelector(\".flatpickr-monthSelect-month:nth-child(\" + (targetMonth + 1) + \")\");\n if (month) {\n month.classList.add(\"selected\");\n }\n }\n function selectYear() {\n var selectedDate = fp.selectedDates[0];\n if (selectedDate) {\n selectedDate = new Date(selectedDate);\n selectedDate.setFullYear(fp.currentYear);\n if (fp.config.minDate && selectedDate < fp.config.minDate) {\n selectedDate = fp.config.minDate;\n }\n if (fp.config.maxDate && selectedDate > fp.config.maxDate) {\n selectedDate = fp.config.maxDate;\n }\n fp.currentYear = selectedDate.getFullYear();\n }\n fp.currentYearElement.value = String(fp.currentYear);\n if (fp.rContainer) {\n var months = fp.rContainer.querySelectorAll(\".flatpickr-monthSelect-month\");\n months.forEach(function (month) {\n month.dateObj.setFullYear(fp.currentYear);\n if ((fp.config.minDate && month.dateObj < fp.config.minDate) ||\n (fp.config.maxDate && month.dateObj > fp.config.maxDate)) {\n month.classList.add(\"flatpickr-disabled\");\n }\n else {\n month.classList.remove(\"flatpickr-disabled\");\n }\n });\n }\n setCurrentlySelected();\n }\n function selectMonth(e) {\n e.preventDefault();\n e.stopPropagation();\n var eventTarget = getEventTarget(e);\n if (!(eventTarget instanceof Element))\n return;\n if (eventTarget.classList.contains(\"flatpickr-disabled\"))\n return;\n if (eventTarget.classList.contains(\"notAllowed\"))\n return; // necessary??\n setMonth(eventTarget.dateObj);\n if (fp.config.closeOnSelect) {\n var single = fp.config.mode === \"single\";\n var range = fp.config.mode === \"range\" && fp.selectedDates.length === 2;\n if (single || range)\n fp.close();\n }\n }\n function setMonth(date) {\n var selectedDate = new Date(fp.currentYear, date.getMonth(), date.getDate());\n var selectedDates = [];\n switch (fp.config.mode) {\n case \"single\":\n selectedDates = [selectedDate];\n break;\n case \"multiple\":\n selectedDates.push(selectedDate);\n break;\n case \"range\":\n if (fp.selectedDates.length === 2) {\n selectedDates = [selectedDate];\n }\n else {\n selectedDates = fp.selectedDates.concat([selectedDate]);\n selectedDates.sort(function (a, b) { return a.getTime() - b.getTime(); });\n }\n break;\n }\n fp.setDate(selectedDates, true);\n setCurrentlySelected();\n }\n var shifts = {\n 37: -1,\n 39: 1,\n 40: 3,\n 38: -3,\n };\n function onKeyDown(_, __, ___, e) {\n var shouldMove = shifts[e.keyCode] !== undefined;\n if (!shouldMove && e.keyCode !== 13) {\n return;\n }\n if (!fp.rContainer || !self.monthsContainer)\n return;\n var currentlySelected = fp.rContainer.querySelector(\".flatpickr-monthSelect-month.selected\");\n var index = Array.prototype.indexOf.call(self.monthsContainer.children, document.activeElement);\n if (index === -1) {\n var target = currentlySelected || self.monthsContainer.firstElementChild;\n target.focus();\n index = target.$i;\n }\n if (shouldMove) {\n self.monthsContainer.children[(12 + index + shifts[e.keyCode]) % 12].focus();\n }\n else if (e.keyCode === 13 &&\n self.monthsContainer.contains(document.activeElement)) {\n setMonth(document.activeElement.dateObj);\n }\n }\n function closeHook() {\n var _a;\n if (((_a = fp.config) === null || _a === void 0 ? void 0 : _a.mode) === \"range\" && fp.selectedDates.length === 1)\n fp.clear(false);\n if (!fp.selectedDates.length)\n buildMonths();\n }\n // Help the prev/next year nav honor config.minDate (see 3fa5a69)\n function stubCurrentMonth() {\n config._stubbedCurrentMonth = fp._initialDate.getMonth();\n fp._initialDate.setMonth(config._stubbedCurrentMonth);\n fp.currentMonth = config._stubbedCurrentMonth;\n }\n function unstubCurrentMonth() {\n if (!config._stubbedCurrentMonth)\n return;\n fp._initialDate.setMonth(config._stubbedCurrentMonth);\n fp.currentMonth = config._stubbedCurrentMonth;\n delete config._stubbedCurrentMonth;\n }\n function destroyPluginInstance() {\n if (self.monthsContainer !== null) {\n var months = self.monthsContainer.querySelectorAll(\".flatpickr-monthSelect-month\");\n for (var index = 0; index < months.length; index++) {\n months[index].removeEventListener(\"click\", selectMonth);\n }\n }\n }\n return {\n onParseConfig: function () {\n fp.config.enableTime = false;\n },\n onValueUpdate: setCurrentlySelected,\n onKeyDown: onKeyDown,\n onReady: [\n stubCurrentMonth,\n clearUnnecessaryDOMElements,\n build,\n bindEvents,\n setCurrentlySelected,\n function () {\n fp.config.onClose.push(closeHook);\n fp.loadedPlugins.push(\"monthSelect\");\n },\n ],\n onDestroy: [\n unstubCurrentMonth,\n destroyPluginInstance,\n function () {\n fp.config.onClose = fp.config.onClose.filter(function (hook) { return hook !== closeHook; });\n },\n ],\n };\n };\n }\n\n return monthSelectPlugin;\n\n})));\n","@import \"~flatpickr/dist/flatpickr.min.css\";\n@import \"~flatpickr/dist/plugins/monthSelect/style.css\";\n\n/* stylelint-disable selector-class-pattern -- we have no control over flatpickr css classes naming */\n\n:host {\n font-family: var(--font-family-sans);\n font-weight: var(--font-rg);\n\n --z-range-picker--toggle-height: 0;\n}\n\nz-date-picker {\n position: relative;\n}\n\nz-date-picker > div > * {\n cursor: pointer !important;\n}\n\nz-range-picker {\n position: relative;\n}\n\n.flatpickr-toggle-container {\n width: fit-content;\n}\n\n.range-pickers-container > div {\n position: relative;\n}\n\n.hidden-input {\n position: absolute;\n bottom: 0;\n width: 0;\n height: 0;\n visibility: hidden !important;\n}\n\n/* Calendar container selectors */\n.flatpickr-calendar::before,\n.flatpickr-calendar::after {\n display: none;\n}\n\n.flatpickr-calendar {\n position: absolute !important;\n top: var(--z-range-picker--toggle-height) !important;\n left: 0 !important;\n padding-top: calc(var(--space-unit) * 2);\n border-radius: 2px;\n box-shadow: var(--shadow-2);\n font-family: var(--font-family-sans) !important;\n}\n\n.months.top > .flatpickr-calendar {\n top: -288px !important;\n}\n\n.date.top > .flatpickr-calendar,\n.date.top > div > .flatpickr-calendar {\n top: -401px !important;\n}\n\n.date-time.top > .flatpickr-calendar,\n.date-time.top > div > .flatpickr-calendar {\n top: -523px !important;\n}\n\n.flatpickr-calendar,\n.flatpickr-innerContainer,\n.flatpickr-days,\n.dayContainer,\n.flatpickr-rContainer,\n.flatpickr-monthSelect-months {\n width: calc(var(--space-unit) * 42) !important;\n max-width: calc(var(--space-unit) * 42) !important;\n}\n\n.flatpickr-monthSelect-months {\n box-sizing: border-box;\n padding: 0 !important;\n margin: calc(var(--space-unit) * 2) 0 !important;\n}\n\n/* Months and year row containers selectors */\n.flatpickr-months {\n position: relative;\n height: calc(var(--space-unit) * 6) !important;\n align-items: center;\n margin-bottom: var(--space-unit) 0 !important;\n}\n\n.flatpickr-month {\n overflow: visible !important;\n height: calc(var(--space-unit) * 6) !important;\n}\n\n.flatpickr-current-month {\n left: 0 !important;\n display: flex !important;\n width: fill-available;\n height: calc(var(--space-unit) * 6);\n align-items: baseline;\n justify-content: space-evenly;\n padding-top: 0;\n}\n\n/* Months arrows selectors */\n.flatpickr-next-month,\n.flatpickr-prev-month {\n position: static !important;\n display: flex;\n width: calc(var(--space-unit) * 4) !important;\n height: calc(var(--space-unit) * 4) !important;\n align-items: center;\n justify-content: center;\n padding: 0 !important;\n}\n\n.flatpickr-prev-month {\n margin-left: var(--space-unit);\n}\n\n.flatpickr-next-month {\n margin-right: var(--space-unit);\n}\n\n.flatpickr-next-month > svg,\n.flatpickr-prev-month > svg {\n width: calc(var(--space-unit) * 2) !important;\n height: calc(var(--space-unit) * 2) !important;\n fill: var(--color-primary01);\n}\n\n.flatpickr-next-month:hover,\n.flatpickr-prev-month:hover,\n.flatpickr-next-month:focus,\n.flatpickr-prev-month:focus {\n border: none !important;\n border-color: var(--color-primary03) !important;\n background-color: var(--color-primary03) !important;\n border-radius: var(--border-radius);\n color: var(--color-hover-primary) !important;\n outline: none !important;\n}\n\n.flatpickr-next-month:hover svg,\n.flatpickr-prev-month:hover svg {\n fill: var(--color-hover-primary) !important;\n}\n\n.flatpickr-next-month:active,\n.flatpickr-prev-month:active {\n border-color: var(--color-surface01) !important;\n background-color: var(--color-surface01) !important;\n border-radius: var(--border-radius);\n box-shadow: var(--shadow-2) !important;\n color: var(--color-primary01) !important;\n}\n\n.flatpickr-next-month:focus svg,\n.flatpickr-prev-month:focus svg {\n fill: var(--color-primary01) !important;\n}\n\n/* Months dropdown selectors */\n.flatpickr-monthDropdown-months {\n width: 108px !important;\n height: calc(var(--space-unit) * 5.5) !important;\n padding-left: var(--space-unit) !important;\n background: var(--color-surface01) !important;\n color: var(--color-default-text) !important;\n font-size: var(--font-size-3) !important;\n font-weight: var(--font-rg) !important;\n outline: 1px solid black !important;\n}\n\n.flatpickr-monthDropdown-months:hover,\n.flatpickr-monthDropdown-months:focus {\n outline: 1px solid var(--color-primary01) !important;\n}\n\n/* Year toggle selectors */\n.flatpickr-current-month > .numInputWrapper {\n display: flex;\n width: calc(var(--space-unit) * 10);\n height: calc(var(--space-unit) * 5.5) !important;\n background: var(--color-surface01) !important;\n color: var(--color-default-text);\n outline: 1px solid black !important;\n}\n\n.flatpickr-current-month > .numInputWrapper:hover,\n.flatpickr-current-month > .numInputWrapper:focus-within {\n outline: 1px solid var(--color-primary01) !important;\n}\n\n.flatpickr-current-month > .numInputWrapper > input {\n padding: 0 calc(var(--space-unit) * 3) 0 var(--space-unit);\n font-size: var(--font-size-3) !important;\n font-weight: var(--font-rg) !important;\n text-align: center;\n}\n\n/* Weekdays selectors */\n.flatpickr-weekdays {\n height: calc(var(--space-unit) * 6);\n border-bottom: 1px solid var(--color-surface03);\n}\n\n.flatpickr-weekday {\n font-size: var(--font-size-3) !important;\n font-weight: var(--font-rg) !important;\n}\n\n/* Calendar days and months selectors */\n.flatpickr-day,\n.flatpickr-monthSelect-month {\n width: calc(var(--space-unit) * 6) !important;\n max-width: 100% !important;\n height: calc(var(--space-unit) * 6) !important;\n border: none;\n margin: 0 !important;\n border-radius: 0 !important;\n box-shadow: none !important;\n font-size: var(--font-size-3) !important;\n line-height: calc(var(--space-unit) * 6) !important;\n}\n\n.flatpickr-day {\n width: calc(var(--space-unit) * 6) !important;\n border: none;\n line-height: calc(var(--space-unit) * 6) !important;\n}\n\n.flatpickr-monthSelect-month {\n width: calc(var(--space-unit) * 14) !important;\n padding: 0 !important;\n border: 2px solid var(--color-surface01) !important;\n line-height: calc(var(--space-unit) * 5) !important;\n}\n\n.flatpickr-day:not(.flatpickr-disabled):hover,\n.flatpickr-day:not(.flatpickr-disabled):active,\n.flatpickr-day:not(.flatpickr-disabled):focus,\n.flatpickr-day:not(.flatpickr-disabled).prevMonthDay:hover,\n.flatpickr-day:not(.flatpickr-disabled).prevMonthDay:active,\n.flatpickr-day:not(.flatpickr-disabled).prevMonthDay:focus,\n.flatpickr-day:not(.flatpickr-disabled).selected:hover,\n.flatpickr-day:not(.flatpickr-disabled).selected:active,\n.flatpickr-day:not(.flatpickr-disabled).selected:focus,\n.flatpickr-monthSelect-month:hover,\n.flatpickr-monthSelect-month:active,\n.flatpickr-monthSelect-month:focus {\n border-color: var(--color-hover-primary) !important;\n background-color: var(--color-hover-primary) !important;\n color: var(--color-text-inverse) !important;\n}\n\n.flatpickr-day.today,\n.flatpickr-monthSelect-month.today {\n border: 2px solid var(--color-hover-primary) !important;\n}\n\n.flatpickr-day.selected:not(.flatpickr-disabled),\n.flatpickr-monthSelect-month.selected:not(.flatpickr-disabled) {\n border-color: var(--color-primary01) !important;\n background-color: var(--color-primary01) !important;\n}\n\n.flatpickr-weekday:nth-child(6),\n.flatpickr-weekday:nth-child(7),\n.flatpickr-day:nth-child(7n + 6),\n.flatpickr-day:nth-child(7n + 7) {\n font-weight: var(--font-sb) !important;\n}\n\n/* Date and time selectors */\n.flatpickr-time {\n display: block;\n height: 90px !important;\n max-height: 90px !important;\n text-align: left;\n}\n\n.flatpickr-time::before {\n display: block;\n width: 100%;\n padding-left: var(--space-unit);\n color: var(--color-default-text) !important;\n content: \"Orario\";\n font-size: var(--font-size-1);\n font-weight: var(--font-sb);\n text-transform: uppercase;\n}\n\n.flatpickr-time.time24hr {\n margin: calc(var(--space-unit) * 2) !important;\n}\n\n.flatpickr-time.time24hr > .numInputWrapper > input:hover,\n.flatpickr-time.time24hr > .numInputWrapper > input:focus,\n.flatpickr-time.time24hr > .numInputWrapper:hover {\n background-color: var(--color-surface01) !important;\n}\n\n.flatpickr-time.time24hr > div {\n width: calc(var(--space-unit) * 10) !important;\n height: calc(var(--space-unit) * 5.5) !important;\n margin-right: var(--space-unit) !important;\n margin-left: var(--space-unit) !important;\n}\n\n.flatpickr-time-separator {\n display: flex;\n height: calc(var(--space-unit) * 5.5) !important;\n align-items: center;\n justify-content: center;\n font-weight: unset !important;\n}\n\n.flatpickr-minute,\n.flatpickr-hour {\n font-size: var(--font-size-3) !important;\n font-weight: var(--font-rg) !important;\n outline: 1px solid black !important;\n}\n\n.numInputWrapper:hover .flatpickr-minute,\n.numInputWrapper:hover .flatpickr-hour,\n.flatpickr-minute:focus,\n.flatpickr-hour:focus {\n outline: 1px solid var(--color-primary01) !important;\n}\n\n/* toggle arrows selectors */\n.arrowUp,\n.arrowDown {\n width: calc(var(--space-unit) * 2) !important;\n height: calc(var(--space-unit) * 2) !important;\n padding: 0 !important;\n border: none !important;\n opacity: 1 !important;\n}\n\n.arrowUp {\n margin-top: calc(var(--space-unit) / 2) !important;\n margin-right: calc(var(--space-unit) / 2) !important;\n}\n\n.arrowDown {\n top: auto !important;\n margin-top: calc(var(--space-unit) * 3) !important;\n margin-right: calc(var(--space-unit) / 2) !important;\n}\n\n.arrowUp:hover,\n.arrowDown:hover {\n border-color: var(--color-primary03) !important;\n background-color: var(--color-primary03) !important;\n border-radius: var(--border-radius);\n color: var(--color-hover-primary) !important;\n}\n\n.arrowUp:active,\n.arrowDown:active {\n border-color: var(--color-surface01) !important;\n background-color: var(--color-surface01) !important;\n border-radius: var(--border-radius);\n box-shadow: var(--shadow-2) !important;\n color: var(--color-primary01) !important;\n}\n\n.arrowUp::after,\n.arrowDown::after {\n padding: 2.5px !important;\n border: solid var(--color-primary01) !important;\n border-width: 0 1px 1px 0 !important;\n}\n\n.arrowUp::after {\n top: 0 !important;\n margin-top: 6px !important;\n margin-left: 5.5px !important;\n transform: rotate(-135deg);\n}\n\n.arrowDown::after {\n top: 0 !important;\n left: 5.5px !important;\n margin-top: 4px !important;\n transform: rotate(45deg);\n}\n\n/* range-date-picker selectors */\n\n.flatpickr-day:not(.flatpickr-disabled).inRange:hover,\n.flatpickr-day:not(.flatpickr-disabled).today.inRange:hover,\n.flatpickr-day.prevMonthDay:not(.flatpickr-disabled).inRange:hover,\n.flatpickr-monthSelect-month:not(.flatpickr-disabled).inRange:hover {\n border-color: var(--color-hover-primary) !important;\n background-color: var(--color-hover-primary) !important;\n}\n\n.flatpickr-day:not(.flatpickr-disabled).inRange,\n.flatpickr-day:not(.flatpickr-disabled).today.inRange,\n.flatpickr-day:not(.flatpickr-disabled).prevMonthDay.inRange,\n.flatpickr-monthSelect-month:not(.flatpickr-disabled).inRange {\n border-color: var(--color-primary03);\n background-color: var(--color-primary03);\n}\n\n.flatpickr-day:not(.flatpickr-disabled).startRange,\n.flatpickr-day:not(.flatpickr-disabled).endRange,\n.flatpickr-monthSelect-month:not(.flatpickr-disabled).startRange,\n.flatpickr-monthSelect-month:not(.flatpickr-disabled).endRange {\n border-color: var(--color-primary01) !important;\n background-color: var(--color-primary01) !important;\n}\n\n.flatpickr-day:not(.flatpickr-disabled).prevMonthDay.selected.startRange,\n.flatpickr-day:not(.flatpickr-disabled).prevMonthDay.selected.endRange {\n border-color: var(--color-primary01) !important;\n background-color: var(--color-primary01) !important;\n}\n\n.flatpickr-range.second-input {\n cursor: pointer;\n}\n\n.range-pickers-container {\n display: flex;\n gap: 16px;\n}\n","import {Component, Element, Event, EventEmitter, Listen, Prop, State, Watch, h} from \"@stencil/core\";\n\nimport flatpickr from \"flatpickr\";\nimport {Italian} from \"flatpickr/dist/l10n/it.js\";\nimport monthSelectPlugin from \"flatpickr/dist/plugins/monthSelect\";\nimport {InputType, ZDatePickerMode, ZDatePickerPosition} from \"../../../beans\";\nimport {setAriaOptions, setFlatpickrPosition, validateDate} from \"../utils\";\n\n@Component({\n tag: \"z-date-picker\",\n styleUrl: \"../styles.css\",\n shadow: false,\n})\nexport class ZDatePicker {\n @Element() element: HTMLZDatePickerElement;\n\n /** unique id */\n @Prop()\n datePickerId: string;\n\n /** z-input aria label */\n @Prop()\n ariaLabel = \"\";\n\n /** z-input label */\n @Prop()\n label?: string;\n\n /** [Optional] datepicker mode: date, datetime, only months */\n @Prop()\n mode: ZDatePickerMode = ZDatePickerMode.DATE;\n\n /** [Optional] the datepicker input name */\n @Prop()\n name?: string = undefined;\n\n /** [Optional] the datepicker input value */\n @Prop()\n value?: string = undefined;\n\n @State()\n flatpickrPosition: ZDatePickerPosition = ZDatePickerPosition.BOTTOM;\n\n @State()\n inputError = false;\n\n private picker;\n\n private hasChildren: boolean;\n\n /** emitted when date changes, returns selected date */\n @Event()\n dateSelect: EventEmitter;\n\n private emitDateSelect(date): void {\n this.dateSelect.emit(date);\n }\n\n @Listen(\"keydown\", {target: \"body\", capture: true})\n handleKeyDown(ev: KeyboardEvent): void {\n if (ev.key === \"Escape\") {\n this.picker?.close();\n }\n\n if (ev.key === \"Enter\" || ev.key === \" \") {\n !this.hasChildren && this.picker?.open();\n\n const isCrossIconEntered = document.activeElement.classList.contains(\"reset-icon\");\n\n if (isCrossIconEntered) {\n this.inputError = false;\n this.picker?.setDate([]);\n this.dateSelect.emit(null);\n }\n\n const flatpickrDayPressed = document.activeElement.classList.contains(\"flatpickr-day\");\n if (flatpickrDayPressed) {\n //Sistemare il toggle\n }\n const isPrevArrowEntered = document.activeElement.classList.contains(\"flatpickr-prev-month\");\n const isNextArrowEntered = document.activeElement.classList.contains(\"flatpickr-next-month\");\n const arrowPressed = isPrevArrowEntered || isNextArrowEntered;\n\n arrowPressed && ev.key === \" \" && ev.preventDefault();\n\n if (this.mode === ZDatePickerMode.MONTHS) {\n isPrevArrowEntered && this.picker?.changeYear(this.picker.currentYear - 1);\n\n isNextArrowEntered && this.picker?.changeYear(this.picker.currentYear + 1);\n\n if (arrowPressed) {\n const calendar = this.element.getElementsByClassName(\"flatpickr-calendar\")[0];\n const months = calendar?.querySelectorAll(\".flatpickr-monthSelect-month\");\n months?.forEach((element) => {\n element.setAttribute(\"aria-label\", `${element.innerHTML} ${this.picker?.currentYear}`);\n });\n\n //Force check of the current day\n months &&\n Array.from(months).forEach((element, index) => {\n const curMonth = new Date().getMonth();\n const curYear = new Date().getFullYear();\n\n if (index === curMonth) {\n if (this.picker?.currentYear === curYear) {\n element.setAttribute(\"class\", \"flatpickr-monthSelect-month today\");\n } else {\n element.setAttribute(\"class\", \"flatpickr-monthSelect-month\");\n }\n }\n });\n }\n } else {\n isPrevArrowEntered && this.picker?.changeMonth(-1);\n isNextArrowEntered && this.picker?.changeMonth(1);\n }\n }\n }\n\n componentWillLoad(): void {\n const customToggle = this.element.querySelector(\"[slot=toggle]\");\n this.hasChildren = !!customToggle;\n this.hasChildren && customToggle.setAttribute(\"data-toggle\", \"data-toggle\");\n }\n\n componentDidLoad(): void {\n this.setupPickers();\n }\n\n @Watch(\"mode\")\n setupPickers(): void {\n const classToAppend = this.hasChildren ? `${this.datePickerId}-hidden` : `${this.datePickerId}-container`;\n\n this.picker = flatpickr(`.${classToAppend}`, {\n appendTo: this.element.children[0] as HTMLElement,\n enableTime: this.mode === ZDatePickerMode.DATE_TIME,\n locale: Italian,\n allowInput: true,\n dateFormat: this.mode === ZDatePickerMode.DATE_TIME ? \"d-m-Y - H:i\" : \"d-m-Y\",\n ariaDateFormat: this.mode === ZDatePickerMode.MONTHS ? \"F Y\" : \"d F Y\",\n minuteIncrement: 1,\n // eslint-disable-next-line @typescript-eslint/naming-convention\n time_24hr: true,\n onChange: (_selectedDates, dateStr) => {\n this.emitDateSelect(dateStr);\n },\n onOpen: () => {\n setAriaOptions(this.element as HTMLElement, this.mode);\n this.flatpickrPosition = setFlatpickrPosition(this.element as HTMLElement, this.mode);\n },\n onKeyDown: () => {\n setAriaOptions(this.element as HTMLElement, this.mode);\n },\n wrap: true,\n plugins: this.mode === ZDatePickerMode.MONTHS && [\n monthSelectPlugin({\n dateFormat: \"m-Y\",\n altFormat: \"m-Y\",\n }),\n ],\n });\n\n this.element.querySelectorAll(\".flatpickr-weekday\").forEach((element) => {\n element.innerHTML = element.innerHTML.trim().charAt(0);\n });\n }\n\n private formatDate(date): string {\n if (this.mode === ZDatePickerMode.DATE) {\n return `${flatpickr.formatDate(date, \"d-m-Y\")}`;\n } else if (this.mode === ZDatePickerMode.MONTHS) {\n return `${flatpickr.formatDate(date, \"m-Y\")}`;\n }\n\n return `${flatpickr.formatDate(date, \"d-m-Y - H:i\")}`;\n }\n\n private onStopTyping(value): void {\n let text = value.detail.value;\n\n if (this.mode === ZDatePickerMode.MONTHS) {\n text = \"01-\".concat(value.detail.value);\n }\n\n const englishData = text.split(\"-\");\n const time = this.mode === ZDatePickerMode.DATE_TIME ? `T${englishData[3]}:00` : \"\";\n const englishParsedData = `${englishData[2]}-${englishData[1]}-${englishData[0]}${time}`.split(\" \").join(\"\");\n\n const isValidDate = validateDate(englishParsedData, this.mode === ZDatePickerMode.DATE_TIME);\n\n if (text === \"\") {\n this.inputError = false;\n this.picker.setDate([]);\n this.dateSelect.emit(null);\n } else if (!isValidDate) {\n this.inputError = true;\n this.dateSelect.emit(null);\n } else if (isValidDate) {\n this.inputError = false;\n this.picker.setDate([value.detail.value]);\n this.dateSelect.emit(this.formatDate(new Date(englishParsedData)));\n }\n }\n\n private renderSlottedContent(): HTMLDivElement {\n return (\n <div class={`${this.datePickerId}-hidden`}>\n <input\n class=\"hidden-input\"\n data-input\n name={this.name}\n value={this.value}\n ></input>\n <slot name=\"toggle\"></slot>\n </div>\n );\n }\n\n private renderZInput(): HTMLDivElement {\n return (\n <div class={`${this.datePickerId}-container`}>\n <z-input\n data-input=\"data-input\"\n ariaLabel={this.ariaLabel}\n label={this.label}\n class={this.datePickerId}\n type={InputType.TEXT}\n icon=\"event\"\n message={false}\n name={this.name}\n tabindex=\"0\"\n value={this.value}\n onStopTyping={(value) => {\n this.onStopTyping(value);\n }}\n onStartTyping={() => {\n this.inputError = false;\n }}\n ></z-input>\n </div>\n );\n }\n\n render(): HTMLDivElement {\n return (\n <div\n class={{\n \"flatpickr-toggle-container\": true,\n [this.flatpickrPosition]: true,\n [this.mode]: true,\n }}\n >\n {this.hasChildren ? this.renderSlottedContent() : this.renderZInput()}\n </div>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,2 +1,2 @@
1
- import{r as t,c as i,h as e,g as s}from"./p-75c4a726.js";import{I as o,e as r,i as a,g as n,l as h}from"./p-b34993de.js";import{r as d,d as l}from"./p-10607a39.js";import"./p-5145a606.js";const c=':host{display:block;font-family:var(--font-family-sans)}:host>div.fixed{position:relative}:host>div>.header{position:relative;z-index:10;display:flex;min-height:42px;align-items:center;justify-content:space-between;padding:0 calc(var(--space-unit) * 1.5);border:var(--border-size-small) solid var(--color-surface04);margin:0;background-color:var(--color-form-background);border-radius:var(--border-radius-small);cursor:pointer}:host([size="small"])>div>.header{min-height:34px;font-size:var(--font-size-2)}:host([size="x-small"])>div>.header{min-height:30px;font-size:var(--font-size-2)}:host([size="x-small"])>div>.header p.body-3{padding:calc(var(--space-unit) * 0.5) 0}:host>div>.header:hover{outline:var(--border-size-medium) solid var(--color-surface04);outline-offset:-2px}:host>div>div.header:focus:focus-visible{z-index:16;box-shadow:var(--shadow-focus-primary);outline:none}:host>div>.header>p.body-3{padding:var(--space-unit) 0;margin:0;color:var(--color-default-text)}:host>div>.header>p.body-3>span{font-weight:var(--font-sb)}:host>div>.header>z-icon{fill:var(--color-default-icon);transform:rotate(360deg);transition:all 200ms linear}:host>div>.header>z-icon.small,:host>div>.header>z-icon.x-small{--z-icon-width:16px;--z-icon-height:16px}:host>div.open>.header{border:var(--border-size-small) solid var(--color-primary01);border-radius:var(--border-radius-small) var(--border-radius-small) 0 0}:host>div.disabled{pointer-events:none}:host>div.disabled .header{border-color:var(--color-disabled01);fill:var(--color-disabled01)}:host>div.disabled .header>p.body-3{color:var(--color-disabled03)}:host>div.disabled .header>z-icon:last-child{fill:var(--color-disabled01)}:host>div.open>.header>z-icon{fill:var(--color-default-icon);transform:rotate(180deg);transition:all 200ms linear}:host>div.open>div.open-combo-data{position:relative;z-index:12;padding:var(--space-unit) calc(var(--space-unit) * 2);border:var(--border-size-small) solid var(--gray200);border-top:0;background-color:var(--color-form-background);border-radius:0}:host>div.open>div.open-combo-data>div>div{overflow:auto;max-height:235px;padding:0;scrollbar-color:var(--color-primary01) transparent}:host>div.open>div.open-combo-data>z-input{width:100%;margin-bottom:calc(var(--space-unit) * 2)}:host>div.open>div.open-combo-data>div>div>ul{max-height:235px;padding:0 3px;margin:0}::-webkit-scrollbar{width:10px;background:linear-gradient(to right, transparent 0 3px, var(--gray200) 3px 7px, transparent 7px 10px);border-radius:var(--border-radius)}::-webkit-scrollbar-thumb{width:10px;background-color:var(--color-primary01)}:host>div.open>z-input{position:relative;z-index:1;width:238px;margin:0 calc(var(--space-unit) * 2);color:var(--color-primary01)}:host>div.open>div.open-combo-data>div>div.search{overflow:hidden;max-height:auto;margin-top:0;box-shadow:1px 1px 4px 2px rgb(217 222 227 / 50%)}:host>div.open>div.open-combo-data>div>div.search>ul{overflow:auto;max-height:180px;padding:var(--space-unit) calc(var(--space-unit) * 2);scrollbar-color:var(--color-primary01) transparent}:host>div.open>div.open-combo-data>div>div.search>div{display:flex;justify-content:center}:host>div.open>div.open-combo-data>div>div.search>div>a{display:inline-block;height:44px;color:var(--color-primary01);cursor:pointer;font-size:14px;font-weight:var(--font-sb);line-height:44px;text-align:center;text-transform:uppercase}:host>div.open>div.open-combo-data>div>div.search>div>a:focus:focus-visible{box-shadow:var(--shadow-focus-primary);outline:none}:host>div.open>div.open-combo-data>div>div.check-all-wrapper{padding:calc(var(--space-unit) * 2) calc(var(--space-unit) * 0.5);border-bottom:var(--border-size-small) solid var(--gray800);margin-bottom:var(--space-unit);text-align:left}:host([size="small"])>div.open>div.open-combo-data>div>div.check-all-wrapper{padding:calc(var(--space-unit) * 1.5) calc(var(--space-unit) * 0.5)}:host([size="x-small"])>div.open>div.open-combo-data>div>div.check-all-wrapper{padding:var(--space-unit) calc(var(--space-unit) * 0.5)}';const p=c;const u=class{watchItems(){this.itemsList=typeof this.items==="string"?JSON.parse(this.items):this.items;this.selectedCounter=this.itemsList.filter((t=>t.checked)).length;this.updateRenderItemsList()}watchSearchValue(){this.filterItems(this.searchValue)}watchCheckboxes(){this.checkboxes.forEach(((t,i)=>t.setAttribute("tabindex",i===0?"0":"-1")))}emitComboboxChange(){this.comboboxChange.emit({id:this.inputid,items:this.itemsList})}constructor(e){t(this,e);this.comboboxChange=i(this,"comboboxChange",7);this.itemsList=[];this.inputType=o.TEXT;this.inputid=`combo-${d()}`;this.items=undefined;this.label=undefined;this.disabled=false;this.hassearch=false;this.searchlabel=undefined;this.searchplaceholder=undefined;this.searchtitle=undefined;this.noresultslabel="Nessun risultato";this.isopen=false;this.isfixed=false;this.closesearchtext="Chiudi";this.hascheckall=false;this.checkalltext="Seleziona tutti";this.uncheckalltext="Deseleziona tutti";this.maxcheckableitems=0;this.hasgroupitems=undefined;this.size=r.BIG;this.searchValue=undefined;this.selectedCounter=undefined;this.renderItemsList=[];this.focusedItemId=undefined;this.checkboxes=[];this.toggleComboBox=this.toggleComboBox.bind(this);this.closeFilterItems=this.closeFilterItems.bind(this)}componentWillLoad(){this.watchItems()}componentWillRender(){this.selectedCounter=this.itemsList.filter((t=>t.checked)).length}componentDidRender(){const t=this.getAllCheckboxes();if(JSON.stringify(t)!==JSON.stringify(this.checkboxes)){this.checkboxes=t}}getItemId(t){return`combo-checkbox-${this.inputid}-${t.id}`}getCheckboxClass(){return`combo-item-checkbox-input-${this.inputid}`}getAllCheckboxes(){return Array.from(this.element.shadowRoot.querySelectorAll(`.${this.getCheckboxClass()} input:not([disabled])`))}getControlToListSize(){switch(this.size){case r.X_SMALL:return a.SMALL;case r.SMALL:return a.MEDIUM;default:return a.LARGE}}handleSelectArrowsNavigation(t,i){if(![n.ARROW_DOWN,n.ARROW_UP].includes(t.key)||!this.isopen){return}t.preventDefault();t.stopPropagation();const e=this.element.shadowRoot.querySelector(`#${i}`);if(!e){return}const s=this.checkboxes;if(!s.length){return}const o=s.indexOf(e);const r=0;const a=s.length-1;let h=null;if(t.key===n.ARROW_DOWN){h=o===a?s[r]:s[o+1]}else if(t.key===n.ARROW_UP){h=o===r?s[a]:s[o-1]}this.focusComboboxItem(h)}handleHeaderKeyboardEvent(t){if(t.key===n.SPACE){t.preventDefault()}if(t.key===n.ARROW_DOWN&&!this.isopen||t.key===n.ARROW_UP&&this.isopen){this.toggleComboBox()}}handleCheckboxFocus(t){this.focusedItemId=t}focusComboboxItem(t){this.checkboxes.forEach((function(t){t.setAttribute("tabindex","-1")}));t.setAttribute("tabindex","0");t.focus()}updateRenderItemsList(){if(this.searchValue){this.filterItems(this.searchValue)}else{this.resetRenderItemsList()}}resetRenderItemsList(){const t=[];this.itemsList.forEach((i=>{t.push(Object.assign({},i))}));this.renderItemsList=t}filterItems(t){if(!t){return this.closeFilterItems()}this.resetRenderItemsList();this.renderItemsList=this.renderItemsList.filter((i=>{const e=i.name.toUpperCase().indexOf(t.toUpperCase());const s=e+t.length;const o=i.name.substring(0,e)+"<strong>"+i.name.substring(e,s)+"</strong>"+i.name.substring(s,i.name.length);i.name=o;return e>=0}))}checkAll(t=true){this.itemsList=this.itemsList.map((i=>Object.assign(Object.assign({},i),{checked:t})));this.resetRenderItemsList();this.emitComboboxChange()}closeFilterItems(){this.searchValue="";this.resetRenderItemsList()}toggleComboBox(){this.isopen=!this.isopen}getComboboxA11yAttributes(){return{role:"combobox","aria-label":this.label,"aria-expanded":this.isopen?"true":"false","aria-activedescendant":this.isopen?this.focusedItemId:"","aria-controls":`${this.inputid}_list`}}renderHeader(){return e("div",{class:"header",onClick:()=>this.toggleComboBox(),onKeyDown:t=>{this.handleHeaderKeyboardEvent(t)},onKeyUp:t=>l(t,this.toggleComboBox),role:"button",tabindex:0,"aria-expanded":this.isopen?"true":"false"},e("p",{class:"body-3"},this.label,e("span",null,this.selectedCounter>0&&` (${this.selectedCounter})`)),e("z-icon",{name:"caret-down",class:this.size}))}renderContent(){if(!this.isopen){return}return e("div",{class:"open-combo-data"},this.hassearch&&this.renderSearchInput(),!this.hassearch?e("span",Object.assign({},this.getComboboxA11yAttributes())):null,e("div",{role:"listbox","aria-label":this.label,"aria-multiselectable":true,id:`${this.inputid}_list`,"aria-owns":`${this.checkboxes.map((t=>t.id)).join(" ")}`},this.hascheckall&&this.renderCheckAll(),this.renderItems()))}renderItems(){return e("div",{class:this.searchValue&&"search"},this.renderList(this.renderItemsList),this.searchValue&&this.renderCloseButton())}renderItem(t,i,s){return e("z-list-element",{id:t.id,htmlTabindex:null,dividerType:i!==s-1?h.ELEMENT:h.NONE,size:this.getControlToListSize()},e("z-input",{type:o.CHECKBOX,checked:t.checked,htmlid:this.getItemId(t),label:t.name,class:this.getCheckboxClass(),disabled:!t.checked&&this.maxcheckableitems&&this.selectedCounter>=this.maxcheckableitems,size:this.size===r.X_SMALL?r.SMALL:this.size,role:"option","aria-selected":t.checked?"true":"false",onKeyDown:i=>this.handleSelectArrowsNavigation(i,this.getItemId(t)),onInputCheck:i=>{this.itemsList=this.itemsList.map((e=>{if(t.id===e.id){e.checked=i.detail.checked}return e}));this.updateRenderItemsList();this.emitComboboxChange()},onInputFocus:t=>this.handleCheckboxFocus(t.detail.id)}))}renderList(t){if(!t){return}if(!t.length&&this.searchValue){return this.renderNoSearchResults()}if(this.hasgroupitems){return this.renderGroups(t)}return e("ul",{role:"none"},t.map(((i,e)=>this.renderItem(i,e,t.length))))}renderGroups(t){const i=t.reduce(((i,e,s)=>{var o;const{category:r}=e;const a=this.renderItem(e,s,t.length);i[r]=(o=i[r])!==null&&o!==void 0?o:[];i[r].push(a);return i}),{});const s=Object.entries(i).map((([t,i])=>e("z-list-group",{"divider-type":h.ELEMENT},e("span",{class:"body-3-sb z-list-group-title",slot:"header-title"},t),i.map((t=>t)))));return e("ul",{role:"none"},s)}renderNoSearchResults(){return e("ul",{role:"none"},e("z-myz-list-item",{id:"no-results",text:this.noresultslabel,listitemid:"no-results",icon:"multiply-circle",class:this.size}))}renderCloseButton(){return e("div",null,e("a",{onClick:()=>this.closeFilterItems(),onKeyUp:t=>l(t,this.closeFilterItems),role:"button",tabindex:0},this.closesearchtext))}renderSearchInput(){return e("z-input",Object.assign({htmlid:`${this.inputid}_search`,label:this.searchlabel,placeholder:this.searchplaceholder,htmltitle:this.searchtitle,type:this.inputType,value:this.searchValue,message:false,size:this.size,"aria-autocomplete":"list"},this.getComboboxA11yAttributes(),{onKeyUp:t=>{if(t.key===n.ESC){this.closeFilterItems()}},onInputChange:t=>{this.searchValue=t.detail.value}}))}renderCheckAll(){if(this.searchValue){return}const t=`combo-checkbox-${this.inputid}-check-all`;const i=this.selectedCounter===this.itemsList.length;return e("div",{class:"check-all-wrapper"},e("z-input",{type:o.CHECKBOX,checked:i,htmlid:t,class:this.getCheckboxClass(),label:i?this.uncheckalltext:this.checkalltext,disabled:this.maxcheckableitems&&this.maxcheckableitems<this.itemsList.length,size:this.size===r.X_SMALL?r.SMALL:this.size,role:"option","aria-selected":i?"true":"false",onKeyDown:i=>this.handleSelectArrowsNavigation(i,t),onInputCheck:t=>this.checkAll(t.detail.checked),onInputFocus:t=>this.handleCheckboxFocus(t.detail.id)}))}render(){return e("div",{key:"69b13355a675561cb0748a743e7509f8b944615e","data-action":`combo-${this.inputid}`,class:{open:this.isopen,fixed:this.isfixed,disabled:this.disabled},id:this.inputid},this.renderHeader(),!this.disabled&&this.renderContent())}get element(){return s(this)}static get watchers(){return{items:["watchItems"],searchValue:["watchSearchValue"],checkboxes:["watchCheckboxes"]}}};u.style=p;export{u as z_combobox};
2
- //# sourceMappingURL=p-20b628e7.entry.js.map
1
+ import{r as t,c as i,h as e,g as s}from"./p-75c4a726.js";import{I as o,e as r,i as a,g as n,l as h}from"./p-b34993de.js";import{r as d,d as l}from"./p-e691c0b8.js";import"./p-5145a606.js";const c=':host{display:block;font-family:var(--font-family-sans)}:host>div.fixed{position:relative}:host>div>.header{position:relative;z-index:10;display:flex;min-height:42px;align-items:center;justify-content:space-between;padding:0 calc(var(--space-unit) * 1.5);border:var(--border-size-small) solid var(--color-surface04);margin:0;background-color:var(--color-form-background);border-radius:var(--border-radius-small);cursor:pointer}:host([size="small"])>div>.header{min-height:34px;font-size:var(--font-size-2)}:host([size="x-small"])>div>.header{min-height:30px;font-size:var(--font-size-2)}:host([size="x-small"])>div>.header p.body-3{padding:calc(var(--space-unit) * 0.5) 0}:host>div>.header:hover{outline:var(--border-size-medium) solid var(--color-surface04);outline-offset:-2px}:host>div>div.header:focus:focus-visible{z-index:16;box-shadow:var(--shadow-focus-primary);outline:none}:host>div>.header>p.body-3{padding:var(--space-unit) 0;margin:0;color:var(--color-default-text)}:host>div>.header>p.body-3>span{font-weight:var(--font-sb)}:host>div>.header>z-icon{fill:var(--color-default-icon);transform:rotate(360deg);transition:all 200ms linear}:host>div>.header>z-icon.small,:host>div>.header>z-icon.x-small{--z-icon-width:16px;--z-icon-height:16px}:host>div.open>.header{border:var(--border-size-small) solid var(--color-primary01);border-radius:var(--border-radius-small) var(--border-radius-small) 0 0}:host>div.disabled{pointer-events:none}:host>div.disabled .header{border-color:var(--color-disabled01);fill:var(--color-disabled01)}:host>div.disabled .header>p.body-3{color:var(--color-disabled03)}:host>div.disabled .header>z-icon:last-child{fill:var(--color-disabled01)}:host>div.open>.header>z-icon{fill:var(--color-default-icon);transform:rotate(180deg);transition:all 200ms linear}:host>div.open>div.open-combo-data{position:relative;z-index:12;padding:var(--space-unit) calc(var(--space-unit) * 2);border:var(--border-size-small) solid var(--gray200);border-top:0;background-color:var(--color-form-background);border-radius:0}:host>div.open>div.open-combo-data>div>div{overflow:auto;max-height:235px;padding:0;scrollbar-color:var(--color-primary01) transparent}:host>div.open>div.open-combo-data>z-input{width:100%;margin-bottom:calc(var(--space-unit) * 2)}:host>div.open>div.open-combo-data>div>div>ul{max-height:235px;padding:0 3px;margin:0}::-webkit-scrollbar{width:10px;background:linear-gradient(to right, transparent 0 3px, var(--gray200) 3px 7px, transparent 7px 10px);border-radius:var(--border-radius)}::-webkit-scrollbar-thumb{width:10px;background-color:var(--color-primary01)}:host>div.open>z-input{position:relative;z-index:1;width:238px;margin:0 calc(var(--space-unit) * 2);color:var(--color-primary01)}:host>div.open>div.open-combo-data>div>div.search{overflow:hidden;max-height:auto;margin-top:0;box-shadow:1px 1px 4px 2px rgb(217 222 227 / 50%)}:host>div.open>div.open-combo-data>div>div.search>ul{overflow:auto;max-height:180px;padding:var(--space-unit) calc(var(--space-unit) * 2);scrollbar-color:var(--color-primary01) transparent}:host>div.open>div.open-combo-data>div>div.search>div{display:flex;justify-content:center}:host>div.open>div.open-combo-data>div>div.search>div>a{display:inline-block;height:44px;color:var(--color-primary01);cursor:pointer;font-size:14px;font-weight:var(--font-sb);line-height:44px;text-align:center;text-transform:uppercase}:host>div.open>div.open-combo-data>div>div.search>div>a:focus:focus-visible{box-shadow:var(--shadow-focus-primary);outline:none}:host>div.open>div.open-combo-data>div>div.check-all-wrapper{padding:calc(var(--space-unit) * 2) calc(var(--space-unit) * 0.5);border-bottom:var(--border-size-small) solid var(--gray800);margin-bottom:var(--space-unit);text-align:left}:host([size="small"])>div.open>div.open-combo-data>div>div.check-all-wrapper{padding:calc(var(--space-unit) * 1.5) calc(var(--space-unit) * 0.5)}:host([size="x-small"])>div.open>div.open-combo-data>div>div.check-all-wrapper{padding:var(--space-unit) calc(var(--space-unit) * 0.5)}';const p=c;const u=class{watchItems(){this.itemsList=typeof this.items==="string"?JSON.parse(this.items):this.items;this.selectedCounter=this.itemsList.filter((t=>t.checked)).length;this.updateRenderItemsList()}watchSearchValue(){this.filterItems(this.searchValue)}watchCheckboxes(){this.checkboxes.forEach(((t,i)=>t.setAttribute("tabindex",i===0?"0":"-1")))}emitComboboxChange(){this.comboboxChange.emit({id:this.inputid,items:this.itemsList})}constructor(e){t(this,e);this.comboboxChange=i(this,"comboboxChange",7);this.itemsList=[];this.inputType=o.TEXT;this.inputid=`combo-${d()}`;this.items=undefined;this.label=undefined;this.disabled=false;this.hassearch=false;this.searchlabel=undefined;this.searchplaceholder=undefined;this.searchtitle=undefined;this.noresultslabel="Nessun risultato";this.isopen=false;this.isfixed=false;this.closesearchtext="Chiudi";this.hascheckall=false;this.checkalltext="Seleziona tutti";this.uncheckalltext="Deseleziona tutti";this.maxcheckableitems=0;this.hasgroupitems=undefined;this.size=r.BIG;this.searchValue=undefined;this.selectedCounter=undefined;this.renderItemsList=[];this.focusedItemId=undefined;this.checkboxes=[];this.toggleComboBox=this.toggleComboBox.bind(this);this.closeFilterItems=this.closeFilterItems.bind(this)}componentWillLoad(){this.watchItems()}componentWillRender(){this.selectedCounter=this.itemsList.filter((t=>t.checked)).length}componentDidRender(){const t=this.getAllCheckboxes();if(JSON.stringify(t)!==JSON.stringify(this.checkboxes)){this.checkboxes=t}}getItemId(t){return`combo-checkbox-${this.inputid}-${t.id}`}getCheckboxClass(){return`combo-item-checkbox-input-${this.inputid}`}getAllCheckboxes(){return Array.from(this.element.shadowRoot.querySelectorAll(`.${this.getCheckboxClass()} input:not([disabled])`))}getControlToListSize(){switch(this.size){case r.X_SMALL:return a.SMALL;case r.SMALL:return a.MEDIUM;default:return a.LARGE}}handleSelectArrowsNavigation(t,i){if(![n.ARROW_DOWN,n.ARROW_UP].includes(t.key)||!this.isopen){return}t.preventDefault();t.stopPropagation();const e=this.element.shadowRoot.querySelector(`#${i}`);if(!e){return}const s=this.checkboxes;if(!s.length){return}const o=s.indexOf(e);const r=0;const a=s.length-1;let h=null;if(t.key===n.ARROW_DOWN){h=o===a?s[r]:s[o+1]}else if(t.key===n.ARROW_UP){h=o===r?s[a]:s[o-1]}this.focusComboboxItem(h)}handleHeaderKeyboardEvent(t){if(t.key===n.SPACE){t.preventDefault()}if(t.key===n.ARROW_DOWN&&!this.isopen||t.key===n.ARROW_UP&&this.isopen){this.toggleComboBox()}}handleCheckboxFocus(t){this.focusedItemId=t}focusComboboxItem(t){this.checkboxes.forEach((function(t){t.setAttribute("tabindex","-1")}));t.setAttribute("tabindex","0");t.focus()}updateRenderItemsList(){if(this.searchValue){this.filterItems(this.searchValue)}else{this.resetRenderItemsList()}}resetRenderItemsList(){const t=[];this.itemsList.forEach((i=>{t.push(Object.assign({},i))}));this.renderItemsList=t}filterItems(t){if(!t){return this.closeFilterItems()}this.resetRenderItemsList();this.renderItemsList=this.renderItemsList.filter((i=>{const e=i.name.toUpperCase().indexOf(t.toUpperCase());const s=e+t.length;const o=i.name.substring(0,e)+"<strong>"+i.name.substring(e,s)+"</strong>"+i.name.substring(s,i.name.length);i.name=o;return e>=0}))}checkAll(t=true){this.itemsList=this.itemsList.map((i=>Object.assign(Object.assign({},i),{checked:t})));this.resetRenderItemsList();this.emitComboboxChange()}closeFilterItems(){this.searchValue="";this.resetRenderItemsList()}toggleComboBox(){this.isopen=!this.isopen}getComboboxA11yAttributes(){return{role:"combobox","aria-label":this.label,"aria-expanded":this.isopen?"true":"false","aria-activedescendant":this.isopen?this.focusedItemId:"","aria-controls":`${this.inputid}_list`}}renderHeader(){return e("div",{class:"header",onClick:()=>this.toggleComboBox(),onKeyDown:t=>{this.handleHeaderKeyboardEvent(t)},onKeyUp:t=>l(t,this.toggleComboBox),role:"button",tabindex:0,"aria-expanded":this.isopen?"true":"false"},e("p",{class:"body-3"},this.label,e("span",null,this.selectedCounter>0&&` (${this.selectedCounter})`)),e("z-icon",{name:"caret-down",class:this.size}))}renderContent(){if(!this.isopen){return}return e("div",{class:"open-combo-data"},this.hassearch&&this.renderSearchInput(),!this.hassearch?e("span",Object.assign({},this.getComboboxA11yAttributes())):null,e("div",{role:"listbox","aria-label":this.label,"aria-multiselectable":true,id:`${this.inputid}_list`,"aria-owns":`${this.checkboxes.map((t=>t.id)).join(" ")}`},this.hascheckall&&this.renderCheckAll(),this.renderItems()))}renderItems(){return e("div",{class:this.searchValue&&"search"},this.renderList(this.renderItemsList),this.searchValue&&this.renderCloseButton())}renderItem(t,i,s){return e("z-list-element",{id:t.id,htmlTabindex:null,dividerType:i!==s-1?h.ELEMENT:h.NONE,size:this.getControlToListSize()},e("z-input",{type:o.CHECKBOX,checked:t.checked,htmlid:this.getItemId(t),label:t.name,class:this.getCheckboxClass(),disabled:!t.checked&&this.maxcheckableitems&&this.selectedCounter>=this.maxcheckableitems,size:this.size===r.X_SMALL?r.SMALL:this.size,role:"option","aria-selected":t.checked?"true":"false",onKeyDown:i=>this.handleSelectArrowsNavigation(i,this.getItemId(t)),onInputCheck:i=>{this.itemsList=this.itemsList.map((e=>{if(t.id===e.id){e.checked=i.detail.checked}return e}));this.updateRenderItemsList();this.emitComboboxChange()},onInputFocus:t=>this.handleCheckboxFocus(t.detail.id)}))}renderList(t){if(!t){return}if(!t.length&&this.searchValue){return this.renderNoSearchResults()}if(this.hasgroupitems){return this.renderGroups(t)}return e("ul",{role:"none"},t.map(((i,e)=>this.renderItem(i,e,t.length))))}renderGroups(t){const i=t.reduce(((i,e,s)=>{var o;const{category:r}=e;const a=this.renderItem(e,s,t.length);i[r]=(o=i[r])!==null&&o!==void 0?o:[];i[r].push(a);return i}),{});const s=Object.entries(i).map((([t,i])=>e("z-list-group",{"divider-type":h.ELEMENT},e("span",{class:"body-3-sb z-list-group-title",slot:"header-title"},t),i.map((t=>t)))));return e("ul",{role:"none"},s)}renderNoSearchResults(){return e("ul",{role:"none"},e("z-myz-list-item",{id:"no-results",text:this.noresultslabel,listitemid:"no-results",icon:"multiply-circle",class:this.size}))}renderCloseButton(){return e("div",null,e("a",{onClick:()=>this.closeFilterItems(),onKeyUp:t=>l(t,this.closeFilterItems),role:"button",tabindex:0},this.closesearchtext))}renderSearchInput(){return e("z-input",Object.assign({htmlid:`${this.inputid}_search`,label:this.searchlabel,placeholder:this.searchplaceholder,htmltitle:this.searchtitle,type:this.inputType,value:this.searchValue,message:false,size:this.size,"aria-autocomplete":"list"},this.getComboboxA11yAttributes(),{onKeyUp:t=>{if(t.key===n.ESC){this.closeFilterItems()}},onInputChange:t=>{this.searchValue=t.detail.value}}))}renderCheckAll(){if(this.searchValue){return}const t=`combo-checkbox-${this.inputid}-check-all`;const i=this.selectedCounter===this.itemsList.length;return e("div",{class:"check-all-wrapper"},e("z-input",{type:o.CHECKBOX,checked:i,htmlid:t,class:this.getCheckboxClass(),label:i?this.uncheckalltext:this.checkalltext,disabled:this.maxcheckableitems&&this.maxcheckableitems<this.itemsList.length,size:this.size===r.X_SMALL?r.SMALL:this.size,role:"option","aria-selected":i?"true":"false",onKeyDown:i=>this.handleSelectArrowsNavigation(i,t),onInputCheck:t=>this.checkAll(t.detail.checked),onInputFocus:t=>this.handleCheckboxFocus(t.detail.id)}))}render(){return e("div",{key:"69b13355a675561cb0748a743e7509f8b944615e","data-action":`combo-${this.inputid}`,class:{open:this.isopen,fixed:this.isfixed,disabled:this.disabled},id:this.inputid},this.renderHeader(),!this.disabled&&this.renderContent())}get element(){return s(this)}static get watchers(){return{items:["watchItems"],searchValue:["watchSearchValue"],checkboxes:["watchCheckboxes"]}}};u.style=p;export{u as z_combobox};
2
+ //# sourceMappingURL=p-2fa0042e.entry.js.map