@zanichelli/albe-web-components 3.2.2 → 4.0.2

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 (269) hide show
  1. package/CHANGELOG.md +1708 -0
  2. package/dist/cjs/{index-b1289f95.js → index-6b6a3299.js} +27 -29
  3. package/dist/cjs/index.cjs.js +2 -2
  4. package/dist/cjs/loader.cjs.js +1 -1
  5. package/dist/cjs/{utils-33df2456.js → utils-8cc414c9.js} +28 -2
  6. package/dist/cjs/web-components-library.cjs.js +1 -1
  7. package/dist/cjs/z-app-switcher_12.cjs.entry.js +1 -1
  8. package/dist/cjs/z-aria-alert.cjs.entry.js +1 -1
  9. package/dist/cjs/z-avatar.cjs.entry.js +1 -1
  10. package/dist/cjs/z-button-filter.cjs.entry.js +49 -0
  11. package/dist/cjs/z-chip.cjs.entry.js +2 -2
  12. package/dist/cjs/z-combobox.cjs.entry.js +5 -5
  13. package/dist/cjs/z-contextual-menu.cjs.entry.js +1 -1
  14. package/dist/cjs/z-cookiebar.cjs.entry.js +1 -1
  15. package/dist/cjs/z-date-picker.cjs.entry.js +2 -2
  16. package/dist/cjs/z-dragdrop-area_2.cjs.entry.js +0 -1
  17. package/dist/cjs/z-file-upload.cjs.entry.js +2 -2
  18. package/dist/cjs/z-file.cjs.entry.js +1 -2
  19. package/dist/cjs/z-footer.cjs.entry.js +1 -1
  20. package/dist/cjs/z-input-deprecated.cjs.entry.js +271 -0
  21. package/dist/cjs/z-input-label_2.cjs.entry.js +272 -0
  22. package/dist/cjs/z-input_2.cjs.entry.js +228 -0
  23. package/dist/cjs/z-list-group.cjs.entry.js +54 -0
  24. package/dist/cjs/{z-list_3.cjs.entry.js → z-list_2.cjs.entry.js} +5 -52
  25. package/dist/cjs/z-menu-dropdown_2.cjs.entry.js +4 -4
  26. package/dist/cjs/z-messages-pocket.cjs.entry.js +1 -1
  27. package/dist/cjs/z-modal-login.cjs.entry.js +1 -1
  28. package/dist/cjs/z-myz-card-alert.cjs.entry.js +1 -1
  29. package/dist/cjs/z-myz-card-dictionary.cjs.entry.js +1 -1
  30. package/dist/cjs/z-myz-card-footer.cjs.entry.js +1 -1
  31. package/dist/cjs/z-myz-card-info.cjs.entry.js +2 -2
  32. package/dist/cjs/z-myz-card_4.cjs.entry.js +1 -1
  33. package/dist/cjs/z-myz-list-item.cjs.entry.js +2 -2
  34. package/dist/cjs/z-myz-topbar.cjs.entry.js +1 -1
  35. package/dist/cjs/z-navigation-tab-link.cjs.entry.js +1 -1
  36. package/dist/cjs/z-navigation-tab.cjs.entry.js +1 -1
  37. package/dist/cjs/z-navigation-tabs.cjs.entry.js +1 -1
  38. package/dist/cjs/z-otp.cjs.entry.js +1 -1
  39. package/dist/cjs/z-pagination-bar.cjs.entry.js +2 -2
  40. package/dist/cjs/z-pagination.cjs.entry.js +2 -2
  41. package/dist/cjs/z-pocket_3.cjs.entry.js +2 -2
  42. package/dist/cjs/z-popover.cjs.entry.js +2 -2
  43. package/dist/cjs/z-section-title.cjs.entry.js +1 -1
  44. package/dist/cjs/z-skip-to-content.cjs.entry.js +4 -4
  45. package/dist/cjs/z-slideshow.cjs.entry.js +2 -2
  46. package/dist/cjs/z-status-tag.cjs.entry.js +1 -1
  47. package/dist/cjs/z-table-cell.cjs.entry.js +1 -1
  48. package/dist/cjs/z-table-header.cjs.entry.js +2 -2
  49. package/dist/cjs/z-table-row.cjs.entry.js +1 -1
  50. package/dist/cjs/z-table.cjs.entry.js +1 -1
  51. package/dist/cjs/z-toast-notification-list.cjs.entry.js +1 -1
  52. package/dist/cjs/z-toast-notification.cjs.entry.js +1 -1
  53. package/dist/cjs/z-toggle-switch.cjs.entry.js +3 -3
  54. package/dist/cjs/z-tooltip.cjs.entry.js +1 -1
  55. package/dist/collection/beans/index.js +27 -29
  56. package/dist/collection/collection-manifest.json +2 -1
  57. package/dist/collection/components/buttons/z-toggle-switch/index.js +6 -6
  58. package/dist/collection/components/file-upload/z-dragdrop-area/index.js +0 -1
  59. package/dist/collection/components/file-upload/z-file/index.js +0 -1
  60. package/dist/collection/components/inputs/z-combobox/index.js +4 -4
  61. package/dist/collection/components/inputs/z-input/index.js +58 -234
  62. package/dist/collection/components/inputs/z-input/styles.css +61 -34
  63. package/dist/collection/components/inputs/z-input-message/index.js +1 -1
  64. package/dist/collection/components/inputs/z-select/index.js +69 -134
  65. package/dist/collection/components/inputs/z-select/styles.css +16 -58
  66. package/dist/collection/components/modal/z-modal-login/index.js +1 -1
  67. package/dist/collection/components/navigation/z-menu-dropdown/index.js +4 -4
  68. package/dist/collection/components/z-date-picker/index.js +1 -1
  69. package/dist/collection/components/z-pagination/index.js +2 -2
  70. package/dist/collection/components/z-skip-to-content/index.js +1 -1
  71. package/dist/collection/components/z-skip-to-content/styles.css +1 -1
  72. package/dist/collection/deprecated/z-input-deprecated/index.js +824 -0
  73. package/dist/collection/deprecated/z-input-deprecated/styles.css +296 -0
  74. package/dist/collection/{components/inputs → deprecated}/z-input-label/index.js +0 -0
  75. package/dist/collection/{components/inputs → deprecated}/z-input-label/styles.css +0 -0
  76. package/dist/collection/snowflakes/myz/z-otp/index.js +1 -1
  77. package/dist/collection/utils/utils.js +27 -2
  78. package/dist/esm/{index-7424c64c.js → index-46ca649a.js} +28 -30
  79. package/dist/esm/index.js +2 -2
  80. package/dist/esm/loader.js +1 -1
  81. package/dist/esm/{utils-93d2b922.js → utils-5d5963ef.js} +28 -3
  82. package/dist/esm/web-components-library.js +1 -1
  83. package/dist/esm/z-app-switcher_12.entry.js +1 -1
  84. package/dist/esm/z-aria-alert.entry.js +1 -1
  85. package/dist/esm/z-avatar.entry.js +1 -1
  86. package/dist/esm/z-button-filter.entry.js +45 -0
  87. package/dist/esm/z-chip.entry.js +2 -2
  88. package/dist/esm/z-combobox.entry.js +5 -5
  89. package/dist/esm/z-contextual-menu.entry.js +1 -1
  90. package/dist/esm/z-cookiebar.entry.js +1 -1
  91. package/dist/esm/z-date-picker.entry.js +2 -2
  92. package/dist/esm/z-dragdrop-area_2.entry.js +0 -1
  93. package/dist/esm/z-file-upload.entry.js +2 -2
  94. package/dist/esm/z-file.entry.js +1 -2
  95. package/dist/esm/z-footer.entry.js +1 -1
  96. package/dist/esm/z-input-deprecated.entry.js +267 -0
  97. package/dist/esm/z-input-label_2.entry.js +267 -0
  98. package/dist/esm/z-input_2.entry.js +223 -0
  99. package/dist/esm/z-list-group.entry.js +50 -0
  100. package/dist/esm/z-list_2.entry.js +174 -0
  101. package/dist/esm/z-menu-dropdown_2.entry.js +4 -4
  102. package/dist/esm/z-messages-pocket.entry.js +1 -1
  103. package/dist/esm/z-modal-login.entry.js +1 -1
  104. package/dist/esm/z-myz-card-alert.entry.js +1 -1
  105. package/dist/esm/z-myz-card-dictionary.entry.js +1 -1
  106. package/dist/esm/z-myz-card-footer.entry.js +1 -1
  107. package/dist/esm/z-myz-card-info.entry.js +2 -2
  108. package/dist/esm/z-myz-card_4.entry.js +1 -1
  109. package/dist/esm/z-myz-list-item.entry.js +2 -2
  110. package/dist/esm/z-myz-topbar.entry.js +1 -1
  111. package/dist/esm/z-navigation-tab-link.entry.js +1 -1
  112. package/dist/esm/z-navigation-tab.entry.js +1 -1
  113. package/dist/esm/z-navigation-tabs.entry.js +1 -1
  114. package/dist/esm/z-otp.entry.js +1 -1
  115. package/dist/esm/z-pagination-bar.entry.js +2 -2
  116. package/dist/esm/z-pagination.entry.js +2 -2
  117. package/dist/esm/z-pocket_3.entry.js +2 -2
  118. package/dist/esm/z-popover.entry.js +2 -2
  119. package/dist/esm/z-section-title.entry.js +1 -1
  120. package/dist/esm/z-skip-to-content.entry.js +4 -4
  121. package/dist/esm/z-slideshow.entry.js +2 -2
  122. package/dist/esm/z-status-tag.entry.js +1 -1
  123. package/dist/esm/z-table-cell.entry.js +1 -1
  124. package/dist/esm/z-table-header.entry.js +2 -2
  125. package/dist/esm/z-table-row.entry.js +1 -1
  126. package/dist/esm/z-table.entry.js +1 -1
  127. package/dist/esm/z-toast-notification-list.entry.js +1 -1
  128. package/dist/esm/z-toast-notification.entry.js +1 -1
  129. package/dist/esm/z-toggle-switch.entry.js +3 -3
  130. package/dist/esm/z-tooltip.entry.js +1 -1
  131. package/dist/types/beans/index.d.ts +6 -7
  132. package/dist/types/components/buttons/z-toggle-switch/index.d.ts +2 -2
  133. package/dist/types/components/inputs/z-input/index.d.ts +16 -29
  134. package/dist/types/components/inputs/z-select/index.d.ts +11 -17
  135. package/dist/types/components.d.ts +191 -30
  136. package/dist/types/deprecated/z-input-deprecated/index.d.ts +102 -0
  137. package/dist/types/{components/inputs → deprecated}/z-input-label/index.d.ts +0 -0
  138. package/dist/types/utils/utils.d.ts +5 -0
  139. package/dist/web-components-library/index.esm.js +1 -1
  140. package/{www/build/p-e9b90127.entry.js → dist/web-components-library/p-02ea7e49.entry.js} +1 -1
  141. package/{www/build/p-e4b4b2e4.entry.js → dist/web-components-library/p-0a0aee35.entry.js} +1 -1
  142. package/dist/web-components-library/{p-2e510e79.entry.js → p-0d29d851.entry.js} +1 -1
  143. package/dist/web-components-library/p-0e408871.entry.js +1 -0
  144. package/dist/web-components-library/{p-b0ea8c0e.entry.js → p-0ef6c549.entry.js} +1 -1
  145. package/dist/web-components-library/{p-4c282f06.entry.js → p-0f17db30.entry.js} +1 -1
  146. package/dist/web-components-library/{p-a391566a.entry.js → p-12af8652.entry.js} +1 -1
  147. package/dist/web-components-library/{p-3184d969.entry.js → p-1727c1c8.entry.js} +1 -1
  148. package/dist/web-components-library/{p-e7aadd3d.entry.js → p-20d62443.entry.js} +1 -1
  149. package/dist/web-components-library/{p-cd2ca92b.entry.js → p-3252be36.entry.js} +1 -1
  150. package/dist/web-components-library/{p-1b973c72.entry.js → p-3c111c2a.entry.js} +1 -1
  151. package/dist/web-components-library/{p-9721e132.entry.js → p-43329b81.entry.js} +1 -1
  152. package/dist/web-components-library/{p-9935973a.entry.js → p-4af112a7.entry.js} +1 -1
  153. package/dist/web-components-library/{p-03de95f1.entry.js → p-51cdabeb.entry.js} +1 -1
  154. package/dist/web-components-library/p-562e2d52.entry.js +1 -0
  155. package/dist/web-components-library/{p-709ab23c.entry.js → p-57d1acdc.entry.js} +1 -1
  156. package/dist/web-components-library/{p-0398165f.entry.js → p-5be162d5.entry.js} +1 -1
  157. package/{www/build/p-7e71d9b0.entry.js → dist/web-components-library/p-5eacbfc7.entry.js} +1 -1
  158. package/dist/web-components-library/{p-223bec2f.entry.js → p-63ccb013.entry.js} +1 -1
  159. package/dist/web-components-library/p-69ef6ddc.entry.js +1 -0
  160. package/dist/web-components-library/p-71accd8e.entry.js +1 -0
  161. package/dist/web-components-library/{p-56437e20.entry.js → p-7c6d4440.entry.js} +1 -1
  162. package/dist/web-components-library/p-99d7ab2f.entry.js +1 -0
  163. package/dist/web-components-library/{p-2ff952a3.entry.js → p-9aa5d36c.entry.js} +1 -1
  164. package/dist/web-components-library/p-9f5d707a.js +1 -0
  165. package/dist/web-components-library/{p-2711bc32.entry.js → p-9f9e4266.entry.js} +1 -1
  166. package/dist/web-components-library/{p-cce20009.entry.js → p-a851af81.entry.js} +1 -1
  167. package/dist/web-components-library/{p-d9d9d834.entry.js → p-a8875b97.entry.js} +2 -2
  168. package/dist/web-components-library/{p-adad78fc.entry.js → p-ae60bbdf.entry.js} +1 -1
  169. package/dist/web-components-library/p-b15efba3.entry.js +1 -0
  170. package/dist/web-components-library/p-b574d5f6.entry.js +1 -0
  171. package/dist/web-components-library/p-b9da171f.js +1 -0
  172. package/dist/web-components-library/{p-aae632ef.entry.js → p-ba29bc12.entry.js} +1 -1
  173. package/dist/web-components-library/p-bd886dd5.entry.js +1 -0
  174. package/dist/web-components-library/{p-542b3702.entry.js → p-bfe5693d.entry.js} +1 -1
  175. package/dist/web-components-library/{p-2b8975b1.entry.js → p-c9cdf4ee.entry.js} +1 -1
  176. package/dist/web-components-library/{p-dfc18671.entry.js → p-ccdebe3f.entry.js} +1 -1
  177. package/{www/build/p-8a637cae.entry.js → dist/web-components-library/p-cd8950d2.entry.js} +1 -1
  178. package/dist/web-components-library/{p-c787ea21.entry.js → p-d33fea26.entry.js} +1 -1
  179. package/dist/web-components-library/{p-f3080685.entry.js → p-d97a2db9.entry.js} +1 -1
  180. package/dist/web-components-library/{p-1eef76bb.entry.js → p-d995d9dc.entry.js} +1 -1
  181. package/dist/web-components-library/{p-895f636e.entry.js → p-de25c7f0.entry.js} +1 -1
  182. package/dist/web-components-library/{p-66fbe5b8.entry.js → p-df4e963b.entry.js} +1 -1
  183. package/dist/web-components-library/p-e2102da3.entry.js +1 -0
  184. package/dist/web-components-library/{p-459dab30.entry.js → p-e84d6807.entry.js} +1 -1
  185. package/dist/web-components-library/p-edb8d2ab.entry.js +1 -0
  186. package/dist/web-components-library/{p-0b590426.entry.js → p-f322c5f0.entry.js} +1 -1
  187. package/dist/web-components-library/{p-da7760a3.entry.js → p-f7c3e9c3.entry.js} +1 -1
  188. package/{www/build/p-dcf4d1b6.entry.js → dist/web-components-library/p-fa925198.entry.js} +1 -1
  189. package/dist/web-components-library/{p-2c823f4c.entry.js → p-fe927bf4.entry.js} +1 -1
  190. package/dist/web-components-library/web-components-library.esm.js +1 -1
  191. package/package.json +1 -1
  192. package/react/components.d.ts +1 -0
  193. package/react/components.js +4 -3
  194. package/react/components.js.map +1 -1
  195. package/src-react/index.ts +1 -0
  196. package/www/build/index.esm.js +1 -1
  197. package/{dist/web-components-library/p-e9b90127.entry.js → www/build/p-02ea7e49.entry.js} +1 -1
  198. package/{dist/web-components-library/p-e4b4b2e4.entry.js → www/build/p-0a0aee35.entry.js} +1 -1
  199. package/www/build/{p-2e510e79.entry.js → p-0d29d851.entry.js} +1 -1
  200. package/www/build/p-0e408871.entry.js +1 -0
  201. package/www/build/{p-b0ea8c0e.entry.js → p-0ef6c549.entry.js} +1 -1
  202. package/www/build/{p-4c282f06.entry.js → p-0f17db30.entry.js} +1 -1
  203. package/www/build/{p-a391566a.entry.js → p-12af8652.entry.js} +1 -1
  204. package/www/build/{p-3184d969.entry.js → p-1727c1c8.entry.js} +1 -1
  205. package/www/build/{p-e7aadd3d.entry.js → p-20d62443.entry.js} +1 -1
  206. package/www/build/{p-cd2ca92b.entry.js → p-3252be36.entry.js} +1 -1
  207. package/www/build/{p-1b973c72.entry.js → p-3c111c2a.entry.js} +1 -1
  208. package/www/build/{p-9721e132.entry.js → p-43329b81.entry.js} +1 -1
  209. package/www/build/{p-9935973a.entry.js → p-4af112a7.entry.js} +1 -1
  210. package/www/build/{p-03de95f1.entry.js → p-51cdabeb.entry.js} +1 -1
  211. package/www/build/p-562e2d52.entry.js +1 -0
  212. package/www/build/{p-709ab23c.entry.js → p-57d1acdc.entry.js} +1 -1
  213. package/www/build/{p-0398165f.entry.js → p-5be162d5.entry.js} +1 -1
  214. package/{dist/web-components-library/p-7e71d9b0.entry.js → www/build/p-5eacbfc7.entry.js} +1 -1
  215. package/www/build/p-623ae6b9.js +1 -0
  216. package/www/build/{p-223bec2f.entry.js → p-63ccb013.entry.js} +1 -1
  217. package/www/build/p-69ef6ddc.entry.js +1 -0
  218. package/www/build/p-71accd8e.entry.js +1 -0
  219. package/www/build/{p-56437e20.entry.js → p-7c6d4440.entry.js} +1 -1
  220. package/www/build/p-99d7ab2f.entry.js +1 -0
  221. package/www/build/{p-2ff952a3.entry.js → p-9aa5d36c.entry.js} +1 -1
  222. package/www/build/p-9f5d707a.js +1 -0
  223. package/www/build/{p-2711bc32.entry.js → p-9f9e4266.entry.js} +1 -1
  224. package/www/build/{p-cce20009.entry.js → p-a851af81.entry.js} +1 -1
  225. package/www/build/{p-d9d9d834.entry.js → p-a8875b97.entry.js} +2 -2
  226. package/www/build/{p-adad78fc.entry.js → p-ae60bbdf.entry.js} +1 -1
  227. package/www/build/p-b15efba3.entry.js +1 -0
  228. package/www/build/p-b574d5f6.entry.js +1 -0
  229. package/www/build/p-b9da171f.js +1 -0
  230. package/www/build/{p-aae632ef.entry.js → p-ba29bc12.entry.js} +1 -1
  231. package/www/build/p-bd886dd5.entry.js +1 -0
  232. package/www/build/{p-542b3702.entry.js → p-bfe5693d.entry.js} +1 -1
  233. package/www/build/{p-2b8975b1.entry.js → p-c9cdf4ee.entry.js} +1 -1
  234. package/www/build/{p-dfc18671.entry.js → p-ccdebe3f.entry.js} +1 -1
  235. package/{dist/web-components-library/p-8a637cae.entry.js → www/build/p-cd8950d2.entry.js} +1 -1
  236. package/www/build/{p-c787ea21.entry.js → p-d33fea26.entry.js} +1 -1
  237. package/www/build/{p-f3080685.entry.js → p-d97a2db9.entry.js} +1 -1
  238. package/www/build/{p-1eef76bb.entry.js → p-d995d9dc.entry.js} +1 -1
  239. package/www/build/{p-895f636e.entry.js → p-de25c7f0.entry.js} +1 -1
  240. package/www/build/{p-66fbe5b8.entry.js → p-df4e963b.entry.js} +1 -1
  241. package/www/build/p-e2102da3.entry.js +1 -0
  242. package/www/build/{p-459dab30.entry.js → p-e84d6807.entry.js} +1 -1
  243. package/www/build/p-edb8d2ab.entry.js +1 -0
  244. package/www/build/{p-0b590426.entry.js → p-f322c5f0.entry.js} +1 -1
  245. package/www/build/{p-da7760a3.entry.js → p-f7c3e9c3.entry.js} +1 -1
  246. package/{dist/web-components-library/p-dcf4d1b6.entry.js → www/build/p-fa925198.entry.js} +1 -1
  247. package/www/build/{p-2c823f4c.entry.js → p-fe927bf4.entry.js} +1 -1
  248. package/www/build/web-components-library.esm.js +1 -1
  249. package/www/index.html +1 -1
  250. package/dist/cjs/z-button-filter_5.cjs.entry.js +0 -620
  251. package/dist/esm/z-button-filter_5.entry.js +0 -612
  252. package/dist/esm/z-list_3.entry.js +0 -220
  253. package/dist/web-components-library/p-14c9344f.entry.js +0 -1
  254. package/dist/web-components-library/p-21b9a94f.entry.js +0 -1
  255. package/dist/web-components-library/p-57270965.entry.js +0 -1
  256. package/dist/web-components-library/p-70be81b6.entry.js +0 -1
  257. package/dist/web-components-library/p-80369bb8.entry.js +0 -1
  258. package/dist/web-components-library/p-80a3e18a.js +0 -1
  259. package/dist/web-components-library/p-a785ff38.entry.js +0 -1
  260. package/dist/web-components-library/p-fea5b98f.js +0 -1
  261. package/www/build/p-14c9344f.entry.js +0 -1
  262. package/www/build/p-21b9a94f.entry.js +0 -1
  263. package/www/build/p-57270965.entry.js +0 -1
  264. package/www/build/p-70be81b6.entry.js +0 -1
  265. package/www/build/p-80369bb8.entry.js +0 -1
  266. package/www/build/p-80a3e18a.js +0 -1
  267. package/www/build/p-a785ff38.entry.js +0 -1
  268. package/www/build/p-b058084c.js +0 -1
  269. package/www/build/p-fea5b98f.js +0 -1
@@ -1,6 +1,6 @@
1
1
  import { Component, Prop, State, h, Method, Event, Element, Listen, } from "@stencil/core";
2
- import { InputTypeEnum, } from "../../../beans";
3
- import { randomId } from "../../../utils/utils";
2
+ import { InputTypeEnum, LabelPositions, } from "../../../beans";
3
+ import { boolean, randomId } from "../../../utils/utils";
4
4
  export class ZInput {
5
5
  constructor() {
6
6
  /** the id of the input element */
@@ -13,20 +13,15 @@ export class ZInput {
13
13
  this.required = false;
14
14
  /** checked: available for checkbox, radio */
15
15
  this.checked = false;
16
- /** show input helper message (optional): available for text, password, number, email, textarea, select */
17
- this.hasmessage = true;
16
+ /** input helper message (optional): available for text, password, number, email, textarea - if set to `false` message won't be displayed */
17
+ this.message = true;
18
18
  /** the input label position: available for checkbox, radio */
19
- this.labelafter = true;
20
- /** timeout setting before trigger `inputChange` event (optional): available for text, textarea */
21
- this.typingtimeout = 300;
22
- /** multiple options can be selected (optional): available for select */
23
- this.multiple = false;
19
+ this.labelPosition = LabelPositions.right;
24
20
  /** render clear icon when typing (optional): available for text */
25
21
  this.hasclearicon = true;
26
22
  this.isTyping = false;
27
- this.textareaWrapperHover = "";
28
- this.textareaWrapperFocus = "";
29
23
  this.passwordHidden = true;
24
+ this.typingtimeout = 300;
30
25
  }
31
26
  inputCheckListener(e) {
32
27
  const data = e.detail;
@@ -41,27 +36,6 @@ export class ZInput {
41
36
  return;
42
37
  }
43
38
  }
44
- /** get the input value */
45
- async getValue() {
46
- switch (this.type) {
47
- case InputTypeEnum.select:
48
- return this.selectElem.getValue();
49
- default:
50
- return this.value;
51
- }
52
- }
53
- /** set the input value */
54
- async setValue(value) {
55
- switch (this.type) {
56
- case InputTypeEnum.select:
57
- this.selectElem.setValue(value);
58
- break;
59
- default:
60
- if (typeof value === "string")
61
- this.value = value;
62
- break;
63
- }
64
- }
65
39
  /** get checked status */
66
40
  async isChecked() {
67
41
  switch (this.type) {
@@ -69,13 +43,13 @@ export class ZInput {
69
43
  case InputTypeEnum.radio:
70
44
  return this.checked;
71
45
  default:
46
+ console.warn("`isChecked` method is only available for type `checkbox` and `radio`");
72
47
  return false;
73
48
  }
74
49
  }
75
- emitInputChange(value, keycode) {
76
- if (!this.isTyping) {
50
+ emitInputChange(value) {
51
+ if (!this.isTyping)
77
52
  this.emitStartTyping();
78
- }
79
53
  let validity = {};
80
54
  if (this.type === InputTypeEnum.textarea) {
81
55
  validity = this.getValidity("textarea");
@@ -84,7 +58,7 @@ export class ZInput {
84
58
  validity = this.getValidity("input");
85
59
  }
86
60
  this.value = value;
87
- this.inputChange.emit({ value, keycode, validity });
61
+ this.inputChange.emit({ value, validity });
88
62
  clearTimeout(this.timer);
89
63
  this.timer = setTimeout(() => {
90
64
  this.emitStopTyping(this.value, validity);
@@ -117,7 +91,7 @@ export class ZInput {
117
91
  }
118
92
  /* START text/password/email/number */
119
93
  getTextAttributes() {
120
- const attr = {
94
+ return {
121
95
  id: this.htmlid,
122
96
  name: this.name,
123
97
  placeholder: this.placeholder,
@@ -126,27 +100,21 @@ export class ZInput {
126
100
  readonly: this.readonly,
127
101
  required: this.required,
128
102
  title: this.htmltitle,
129
- class: [
130
- `input_${this.status || "default"}`,
131
- this.isTyping && "istyping",
132
- !this.isTyping && this.value && "filled",
133
- ]
134
- .filter(Boolean)
135
- .join(" "),
136
- onInput: (e) => this.emitInputChange(e.target.value, e.keyCode),
103
+ class: {
104
+ [`input_${this.status || "default"}`]: true,
105
+ filled: !!this.value,
106
+ },
107
+ autocomplete: this.autocomplete,
108
+ onInput: (e) => this.emitInputChange(e.target.value),
137
109
  };
138
- if (this.autocomplete) {
139
- attr["autocomplete"] = this.autocomplete;
140
- }
141
- return attr;
142
110
  }
143
111
  renderInputText(type = InputTypeEnum.text) {
144
112
  const attr = this.getTextAttributes();
145
113
  if (this.icon || type === InputTypeEnum.password) {
146
- attr.class += " hasIcon";
114
+ attr.class = Object.assign(Object.assign({}, attr.class), { hasIcon: true });
147
115
  }
148
116
  if (this.hasclearicon) {
149
- attr.class += " hasClearIcon";
117
+ attr.class = Object.assign(Object.assign({}, attr.class), { hasClearIcon: true });
150
118
  }
151
119
  return (h("div", { class: "textWrapper" },
152
120
  this.renderLabel(),
@@ -160,13 +128,10 @@ export class ZInput {
160
128
  renderLabel() {
161
129
  if (!this.label)
162
130
  return;
163
- return (h("z-input-label", { htmlfor: this.htmlid, value: this.label, disabled: this.disabled, "aria-label": this.label, id: `${this.htmlid}_label` }));
131
+ return (h("label", { class: "inputLabel body-5-sb", id: `${this.htmlid}_label`, htmlFor: this.htmlid, "aria-label": this.label }, this.label));
164
132
  }
165
133
  renderIcons() {
166
- return (h("span", { class: {
167
- iconsWrapper: true,
168
- disabled: this.disabled,
169
- } },
134
+ return (h("span", { class: "iconsWrapper" },
170
135
  this.renderResetIcon(),
171
136
  this.renderIcon()));
172
137
  }
@@ -176,20 +141,23 @@ export class ZInput {
176
141
  }
177
142
  if (!this.icon)
178
143
  return;
179
- return h("z-icon", { class: "inputIcon", name: this.icon });
144
+ return (h("button", { type: "button", class: "iconButton inputIcon", tabIndex: -1 },
145
+ h("z-icon", { name: this.icon })));
180
146
  }
181
147
  renderResetIcon() {
182
148
  if (!this.hasclearicon || !this.value || this.disabled || this.readonly)
183
149
  return;
184
- return (h("z-icon", { class: "resetIcon", name: "multiply", onClick: (e) => this.emitInputChange("", e.keyCode) }));
150
+ return (h("button", { type: "button", class: "iconButton resetIcon", "aria-label": "cancella il contenuto dell'input", onClick: () => this.emitInputChange("") },
151
+ h("z-icon", { name: "multiply" })));
185
152
  }
186
153
  renderShowHidePassword() {
187
- return (h("z-icon", { class: "showHidePasswordIcon", name: this.passwordHidden ? "view-filled" : "view-off-filled", onClick: () => (this.passwordHidden = !this.passwordHidden) }));
154
+ return (h("button", { type: "button", class: "iconButton showHidePasswordIcon", disabled: this.disabled, "aria-label": this.passwordHidden ? "mostra password" : "nascondi password", onClick: () => (this.passwordHidden = !this.passwordHidden) },
155
+ h("z-icon", { name: this.passwordHidden ? "view-filled" : "view-off-filled" })));
188
156
  }
189
157
  renderMessage() {
190
- if (!this.hasmessage)
158
+ if (boolean(this.message) === false)
191
159
  return;
192
- return h("z-input-message", { message: this.message, status: this.status });
160
+ return (h("z-input-message", { message: boolean(this.message) === true ? undefined : this.message, status: this.status }));
193
161
  }
194
162
  /* END text/password/email/number */
195
163
  /* START textarea */
@@ -197,18 +165,8 @@ export class ZInput {
197
165
  const attributes = this.getTextAttributes();
198
166
  return (h("div", { class: "textWrapper" },
199
167
  this.renderLabel(),
200
- h("div", { class: [
201
- "textareaWrapper",
202
- attributes.class,
203
- attributes.disabled && "disabled",
204
- attributes.readonly && "readonly",
205
- this.isTyping && "istyping",
206
- this.textareaWrapperFocus,
207
- this.textareaWrapperHover,
208
- ]
209
- .filter(Boolean)
210
- .join(" ") },
211
- h("textarea", Object.assign({}, attributes, { onFocus: () => (this.textareaWrapperFocus = "focus"), onBlur: () => (this.textareaWrapperFocus = ""), onMouseOver: () => (this.textareaWrapperHover = "hover"), onMouseOut: () => (this.textareaWrapperHover = ""), "aria-label": this.ariaLabel || this.label }))),
168
+ h("div", { class: Object.assign(Object.assign({}, attributes.class), { textareaWrapper: true, readonly: attributes.readonly }) },
169
+ h("textarea", Object.assign({}, attributes, { "aria-label": this.ariaLabel || this.label }))),
212
170
  this.renderMessage()));
213
171
  }
214
172
  /* END textarea */
@@ -222,8 +180,8 @@ export class ZInput {
222
180
  h("input", { id: this.htmlid, type: "checkbox", name: this.name, checked: this.checked, disabled: this.disabled, readonly: this.readonly, required: this.required, onChange: this.handleCheck.bind(this), value: this.value }),
223
181
  h("label", { htmlFor: this.htmlid, class: {
224
182
  checkboxLabel: true,
225
- after: this.labelafter,
226
- before: !this.labelafter,
183
+ after: this.labelPosition === LabelPositions.right,
184
+ before: this.labelPosition === LabelPositions.left,
227
185
  } },
228
186
  h("z-icon", { name: this.checked ? "checkbox-checked" : "checkbox", "aria-hidden": "true" }),
229
187
  this.label && h("span", { innerHTML: this.label }))));
@@ -235,35 +193,23 @@ export class ZInput {
235
193
  h("input", { id: this.htmlid, type: "radio", name: this.name, checked: this.checked, disabled: this.disabled, readonly: this.readonly, onChange: this.handleCheck.bind(this), value: this.value }),
236
194
  h("label", { htmlFor: this.htmlid, class: {
237
195
  radioLabel: true,
238
- after: this.labelafter,
239
- before: !this.labelafter,
196
+ after: this.labelPosition === LabelPositions.right,
197
+ before: this.labelPosition === LabelPositions.left,
240
198
  } },
241
199
  h("z-icon", { name: this.checked ? "radio-button-checked" : "radio-button", "aria-hidden": "true" }),
242
200
  this.label && h("span", { innerHTML: this.label }))));
243
201
  }
244
202
  /* END radio */
245
- /* START select */
246
- renderSelect() {
247
- return (h("z-select", { htmlid: this.htmlid, items: this.items, name: this.name, label: this.label, "aria-label": this.ariaLabel, disabled: this.disabled, readonly: this.readonly, placeholder: this.placeholder, htmltitle: this.htmltitle, status: this.status, hasmessage: this.hasmessage, message: this.message, autocomplete: this.autocomplete, multiple: this.multiple, ref: (el) => (this.selectElem = el) }));
248
- }
249
- /* END select */
250
203
  render() {
251
204
  switch (this.type) {
252
- case InputTypeEnum.text:
253
- case InputTypeEnum.password:
254
- case InputTypeEnum.number:
255
- case InputTypeEnum.email:
256
- return this.renderInputText(this.type);
257
205
  case InputTypeEnum.textarea:
258
206
  return this.renderTextarea();
259
207
  case InputTypeEnum.checkbox:
260
208
  return this.renderCheckbox();
261
209
  case InputTypeEnum.radio:
262
210
  return this.renderRadio();
263
- case InputTypeEnum.select:
264
- return this.renderSelect();
265
211
  default:
266
- return this.renderInputText();
212
+ return this.renderInputText(this.type);
267
213
  }
268
214
  }
269
215
  static get is() { return "z-input"; }
@@ -298,7 +244,7 @@ export class ZInput {
298
244
  "mutable": false,
299
245
  "complexType": {
300
246
  "original": "InputTypeBean",
301
- "resolved": "\"checkbox\" | \"email\" | \"number\" | \"password\" | \"radio\" | \"select\" | \"text\" | \"textarea\"",
247
+ "resolved": "\"checkbox\" | \"email\" | \"number\" | \"password\" | \"radio\" | \"text\" | \"textarea\"",
302
248
  "references": {
303
249
  "InputTypeBean": {
304
250
  "location": "import",
@@ -398,7 +344,7 @@ export class ZInput {
398
344
  "text": "the input is disabled"
399
345
  },
400
346
  "attribute": "disabled",
401
- "reflect": false,
347
+ "reflect": true,
402
348
  "defaultValue": "false"
403
349
  },
404
350
  "readonly": {
@@ -494,7 +440,7 @@ export class ZInput {
494
440
  "mutable": false,
495
441
  "complexType": {
496
442
  "original": "InputStatusBean",
497
- "resolved": "\"error\" | \"selecting\" | \"success\" | \"warning\"",
443
+ "resolved": "\"error\" | \"success\" | \"warning\"",
498
444
  "references": {
499
445
  "InputStatusBean": {
500
446
  "location": "import",
@@ -506,90 +452,37 @@ export class ZInput {
506
452
  "optional": true,
507
453
  "docs": {
508
454
  "tags": [],
509
- "text": "the input status (optional): available for text, password, number, email, textarea, select"
455
+ "text": "the input status (optional): available for text, password, number, email, textarea"
510
456
  },
511
457
  "attribute": "status",
512
458
  "reflect": false
513
459
  },
514
- "hasmessage": {
515
- "type": "boolean",
516
- "mutable": false,
517
- "complexType": {
518
- "original": "boolean",
519
- "resolved": "boolean",
520
- "references": {}
521
- },
522
- "required": false,
523
- "optional": true,
524
- "docs": {
525
- "tags": [],
526
- "text": "show input helper message (optional): available for text, password, number, email, textarea, select"
527
- },
528
- "attribute": "hasmessage",
529
- "reflect": false,
530
- "defaultValue": "true"
531
- },
532
460
  "message": {
533
- "type": "string",
461
+ "type": "any",
534
462
  "mutable": false,
535
463
  "complexType": {
536
- "original": "string",
537
- "resolved": "string",
464
+ "original": "string | boolean",
465
+ "resolved": "boolean | string",
538
466
  "references": {}
539
467
  },
540
468
  "required": false,
541
469
  "optional": true,
542
470
  "docs": {
543
471
  "tags": [],
544
- "text": "input helper message (optional): available for text, password, number, email, textarea, select"
472
+ "text": "input helper message (optional): available for text, password, number, email, textarea - if set to `false` message won't be displayed"
545
473
  },
546
474
  "attribute": "message",
547
- "reflect": false
548
- },
549
- "labelafter": {
550
- "type": "boolean",
551
- "mutable": false,
552
- "complexType": {
553
- "original": "boolean",
554
- "resolved": "boolean",
555
- "references": {}
556
- },
557
- "required": false,
558
- "optional": true,
559
- "docs": {
560
- "tags": [],
561
- "text": "the input label position: available for checkbox, radio"
562
- },
563
- "attribute": "labelafter",
564
475
  "reflect": false,
565
476
  "defaultValue": "true"
566
477
  },
567
- "typingtimeout": {
568
- "type": "number",
569
- "mutable": false,
570
- "complexType": {
571
- "original": "number",
572
- "resolved": "number",
573
- "references": {}
574
- },
575
- "required": false,
576
- "optional": true,
577
- "docs": {
578
- "tags": [],
579
- "text": "timeout setting before trigger `inputChange` event (optional): available for text, textarea"
580
- },
581
- "attribute": "typingtimeout",
582
- "reflect": false,
583
- "defaultValue": "300"
584
- },
585
- "items": {
478
+ "labelPosition": {
586
479
  "type": "string",
587
480
  "mutable": false,
588
481
  "complexType": {
589
- "original": "SelectItemBean[] | string",
590
- "resolved": "SelectItemBean[] | string",
482
+ "original": "LabelPosition",
483
+ "resolved": "\"left\" | \"right\"",
591
484
  "references": {
592
- "SelectItemBean": {
485
+ "LabelPosition": {
593
486
  "location": "import",
594
487
  "path": "../../../beans"
595
488
  }
@@ -599,46 +492,29 @@ export class ZInput {
599
492
  "optional": true,
600
493
  "docs": {
601
494
  "tags": [],
602
- "text": "items (optional): available for select"
495
+ "text": "the input label position: available for checkbox, radio"
603
496
  },
604
- "attribute": "items",
605
- "reflect": false
497
+ "attribute": "label-position",
498
+ "reflect": false,
499
+ "defaultValue": "LabelPositions.right"
606
500
  },
607
501
  "autocomplete": {
608
- "type": "any",
502
+ "type": "string",
609
503
  "mutable": false,
610
504
  "complexType": {
611
- "original": "boolean | string",
612
- "resolved": "boolean | string",
505
+ "original": "string",
506
+ "resolved": "string",
613
507
  "references": {}
614
508
  },
615
509
  "required": false,
616
510
  "optional": true,
617
511
  "docs": {
618
512
  "tags": [],
619
- "text": "the input has autocomplete option (optional): available for select, input"
513
+ "text": "the input has autocomplete option (optional): available for text, password, number, email"
620
514
  },
621
515
  "attribute": "autocomplete",
622
516
  "reflect": false
623
517
  },
624
- "multiple": {
625
- "type": "boolean",
626
- "mutable": false,
627
- "complexType": {
628
- "original": "boolean",
629
- "resolved": "boolean",
630
- "references": {}
631
- },
632
- "required": false,
633
- "optional": true,
634
- "docs": {
635
- "tags": [],
636
- "text": "multiple options can be selected (optional): available for select"
637
- },
638
- "attribute": "multiple",
639
- "reflect": false,
640
- "defaultValue": "false"
641
- },
642
518
  "hasclearicon": {
643
519
  "type": "boolean",
644
520
  "mutable": false,
@@ -669,7 +545,7 @@ export class ZInput {
669
545
  "optional": true,
670
546
  "docs": {
671
547
  "tags": [],
672
- "text": "render icon (optional): available for text, select"
548
+ "text": "render icon (optional): available for text"
673
549
  },
674
550
  "attribute": "icon",
675
551
  "reflect": false
@@ -677,8 +553,6 @@ export class ZInput {
677
553
  }; }
678
554
  static get states() { return {
679
555
  "isTyping": {},
680
- "textareaWrapperHover": {},
681
- "textareaWrapperFocus": {},
682
556
  "passwordHidden": {}
683
557
  }; }
684
558
  static get events() { return [{
@@ -689,7 +563,7 @@ export class ZInput {
689
563
  "composed": true,
690
564
  "docs": {
691
565
  "tags": [],
692
- "text": "Emitted on input value change, returns value, keycode, validity"
566
+ "text": "Emitted on input value change, returns value, validity"
693
567
  },
694
568
  "complexType": {
695
569
  "original": "any",
@@ -741,58 +615,8 @@ export class ZInput {
741
615
  "resolved": "any",
742
616
  "references": {}
743
617
  }
744
- }, {
745
- "method": "optionSelect",
746
- "name": "optionSelect",
747
- "bubbles": true,
748
- "cancelable": true,
749
- "composed": true,
750
- "docs": {
751
- "tags": [],
752
- "text": "Emitted on select option selection, returns select id, selected item id (or array of selected items ids if multiple)"
753
- },
754
- "complexType": {
755
- "original": "any",
756
- "resolved": "any",
757
- "references": {}
758
- }
759
618
  }]; }
760
619
  static get methods() { return {
761
- "getValue": {
762
- "complexType": {
763
- "signature": "() => Promise<string | string[]>",
764
- "parameters": [],
765
- "references": {
766
- "Promise": {
767
- "location": "global"
768
- }
769
- },
770
- "return": "Promise<string | string[]>"
771
- },
772
- "docs": {
773
- "text": "get the input value",
774
- "tags": []
775
- }
776
- },
777
- "setValue": {
778
- "complexType": {
779
- "signature": "(value: string | string[]) => Promise<void>",
780
- "parameters": [{
781
- "tags": [],
782
- "text": ""
783
- }],
784
- "references": {
785
- "Promise": {
786
- "location": "global"
787
- }
788
- },
789
- "return": "Promise<void>"
790
- },
791
- "docs": {
792
- "text": "set the input value",
793
- "tags": []
794
- }
795
- },
796
620
  "isChecked": {
797
621
  "complexType": {
798
622
  "signature": "() => Promise<boolean>",