@zanichelli/albe-web-components 16.0.0-rc3 → 16.1.0

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 (160) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/dist/cjs/{index-597156d1.js → index-066b8da0.js} +2 -2
  3. package/dist/cjs/{index-597156d1.js.map → index-066b8da0.js.map} +1 -1
  4. package/dist/cjs/{index-4592ad31.js → index-5cc0f0ca.js} +3 -4
  5. package/dist/cjs/index-5cc0f0ca.js.map +1 -0
  6. package/dist/cjs/{index-ca821253.js → index-98822eac.js} +3 -3
  7. package/dist/cjs/{index-ca821253.js.map → index-98822eac.js.map} +1 -1
  8. package/dist/cjs/index-bab7a651.js.map +1 -1
  9. package/dist/cjs/loader.cjs.js +1 -1
  10. package/dist/cjs/web-components-library.cjs.js +1 -1
  11. package/dist/cjs/z-app-header_12.cjs.entry.js +4 -5
  12. package/dist/cjs/z-app-header_12.cjs.entry.js.map +1 -1
  13. package/dist/cjs/z-card.cjs.entry.js +5 -5
  14. package/dist/cjs/z-card.cjs.entry.js.map +1 -1
  15. package/dist/cjs/z-select.cjs.entry.js +4 -4
  16. package/dist/cjs/z-select.cjs.entry.js.map +1 -1
  17. package/dist/cjs/z-table.cjs.entry.js +3 -3
  18. package/dist/cjs/z-td.cjs.entry.js +1 -1
  19. package/dist/cjs/z-th.cjs.entry.js +1 -1
  20. package/dist/cjs/z-tr.cjs.entry.js +3 -3
  21. package/dist/collection/beans/index.js.map +1 -1
  22. package/dist/collection/components/table/cells/z-td/index.js +2 -27
  23. package/dist/collection/components/table/cells/z-td/index.js.map +1 -1
  24. package/dist/collection/components/table/cells/z-td/styles.css +0 -4
  25. package/dist/collection/components/table/cells/z-th/styles.css +0 -4
  26. package/dist/collection/components/z-card/index.js +5 -5
  27. package/dist/collection/components/z-card/index.js.map +1 -1
  28. package/dist/collection/components/z-card/index.spec.js +26 -7
  29. package/dist/collection/components/z-card/index.spec.js.map +1 -1
  30. package/dist/collection/components/z-card/index.stories.js +17 -6
  31. package/dist/collection/components/z-card/index.stories.js.map +1 -1
  32. package/dist/collection/components/z-card/styles.css +10 -2
  33. package/dist/collection/components/z-searchbar/index.js +3 -22
  34. package/dist/collection/components/z-searchbar/index.js.map +1 -1
  35. package/dist/collection/components/z-searchbar/index.spec.js +1 -5
  36. package/dist/collection/components/z-searchbar/index.spec.js.map +1 -1
  37. package/dist/collection/components/z-searchbar/index.stories.js +131 -4
  38. package/dist/collection/components/z-searchbar/index.stories.js.map +1 -1
  39. package/dist/collection/components/z-searchbar/styles.css +94 -11
  40. package/dist/collection/components/z-searchbar/test.e2e.js +90 -0
  41. package/dist/collection/components/z-searchbar/test.e2e.js.map +1 -0
  42. package/dist/collection/components/z-select/index.js +3 -3
  43. package/dist/collection/components/z-select/index.js.map +1 -1
  44. package/dist/collection/components/z-select/index.spec.js +71 -0
  45. package/dist/collection/components/z-select/index.spec.js.map +1 -1
  46. package/dist/collection/components/z-select/styles.css +5 -0
  47. package/dist/collection/components/z-tag/styles.css +4 -0
  48. package/dist/components/index2.js.map +1 -1
  49. package/dist/components/index23.js +3 -5
  50. package/dist/components/index23.js.map +1 -1
  51. package/dist/components/index24.js +1 -1
  52. package/dist/components/index24.js.map +1 -1
  53. package/dist/components/z-card.js +5 -5
  54. package/dist/components/z-card.js.map +1 -1
  55. package/dist/components/z-select.js +24 -18
  56. package/dist/components/z-select.js.map +1 -1
  57. package/dist/components/z-td.js +3 -5
  58. package/dist/components/z-td.js.map +1 -1
  59. package/dist/components/z-th.js +1 -1
  60. package/dist/components/z-th.js.map +1 -1
  61. package/dist/esm/{index-7a28ff39.js → index-18018bb5.js} +2 -2
  62. package/dist/esm/{index-7a28ff39.js.map → index-18018bb5.js.map} +1 -1
  63. package/dist/esm/{index-b147cad9.js → index-292b4dd2.js} +4 -5
  64. package/dist/esm/index-292b4dd2.js.map +1 -0
  65. package/dist/esm/{index-8dab69a7.js → index-50bbb22e.js} +3 -3
  66. package/dist/esm/{index-8dab69a7.js.map → index-50bbb22e.js.map} +1 -1
  67. package/dist/esm/index-b7dbacb4.js.map +1 -1
  68. package/dist/esm/loader.js +1 -1
  69. package/dist/esm/web-components-library.js +1 -1
  70. package/dist/esm/z-app-header_12.entry.js +4 -5
  71. package/dist/esm/z-app-header_12.entry.js.map +1 -1
  72. package/dist/esm/z-card.entry.js +5 -5
  73. package/dist/esm/z-card.entry.js.map +1 -1
  74. package/dist/esm/z-select.entry.js +4 -4
  75. package/dist/esm/z-select.entry.js.map +1 -1
  76. package/dist/esm/z-table.entry.js +3 -3
  77. package/dist/esm/z-td.entry.js +1 -1
  78. package/dist/esm/z-th.entry.js +1 -1
  79. package/dist/esm/z-tr.entry.js +3 -3
  80. package/dist/types/beans/index.d.ts +1 -0
  81. package/dist/types/components/table/cells/z-td/index.d.ts +1 -5
  82. package/dist/types/components/z-card/index.d.ts +3 -3
  83. package/dist/types/components/z-card/index.stories.d.ts +6 -1
  84. package/dist/types/components/z-searchbar/index.d.ts +0 -2
  85. package/dist/types/components/z-searchbar/index.stories.d.ts +64 -1
  86. package/dist/types/components.d.ts +2 -18
  87. package/dist/web-components-library/p-088a31dc.entry.js +2 -0
  88. package/dist/web-components-library/p-088a31dc.entry.js.map +1 -0
  89. package/dist/web-components-library/p-1edbac5f.entry.js +2 -0
  90. package/dist/web-components-library/{p-83eff308.entry.js → p-3f745628.entry.js} +2 -2
  91. package/dist/web-components-library/p-3f745628.entry.js.map +1 -0
  92. package/dist/web-components-library/p-57ecb5a7.entry.js +2 -0
  93. package/dist/web-components-library/p-57ecb5a7.entry.js.map +1 -0
  94. package/dist/web-components-library/p-6037cdf3.js.map +1 -1
  95. package/dist/web-components-library/p-8de7ea6e.js +2 -0
  96. package/{www/build/p-26b5c84d.js.map → dist/web-components-library/p-8de7ea6e.js.map} +1 -1
  97. package/dist/web-components-library/p-9f2a7cf0.js +2 -0
  98. package/dist/web-components-library/p-9f2a7cf0.js.map +1 -0
  99. package/dist/web-components-library/{p-738670e2.js → p-ae94e377.js} +2 -2
  100. package/dist/web-components-library/p-bf2a057d.entry.js +2 -0
  101. package/dist/web-components-library/{p-64c7c4c1.entry.js → p-c6b269ce.entry.js} +2 -2
  102. package/dist/web-components-library/p-e0323da3.entry.js +2 -0
  103. package/dist/web-components-library/web-components-library.esm.js +1 -1
  104. package/dist/web-components-library/web-components-library.esm.js.map +1 -1
  105. package/package.json +1 -1
  106. package/www/build/p-088a31dc.entry.js +2 -0
  107. package/www/build/p-088a31dc.entry.js.map +1 -0
  108. package/www/build/p-1e4269d3.js +2 -0
  109. package/www/build/p-1edbac5f.entry.js +2 -0
  110. package/www/build/{p-83eff308.entry.js → p-3f745628.entry.js} +2 -2
  111. package/www/build/p-3f745628.entry.js.map +1 -0
  112. package/www/build/p-57ecb5a7.entry.js +2 -0
  113. package/www/build/p-57ecb5a7.entry.js.map +1 -0
  114. package/www/build/p-6037cdf3.js.map +1 -1
  115. package/www/build/p-8de7ea6e.js +2 -0
  116. package/{dist/web-components-library/p-26b5c84d.js.map → www/build/p-8de7ea6e.js.map} +1 -1
  117. package/www/build/p-9f2a7cf0.js +2 -0
  118. package/www/build/p-9f2a7cf0.js.map +1 -0
  119. package/www/build/{p-738670e2.js → p-ae94e377.js} +2 -2
  120. package/www/build/p-bf2a057d.entry.js +2 -0
  121. package/www/build/{p-64c7c4c1.entry.js → p-c6b269ce.entry.js} +2 -2
  122. package/www/build/p-e0323da3.entry.js +2 -0
  123. package/www/build/web-components-library.esm.js +1 -1
  124. package/www/build/web-components-library.esm.js.map +1 -1
  125. package/www/index.html +1 -1
  126. package/dist/cjs/index-4592ad31.js.map +0 -1
  127. package/dist/esm/index-b147cad9.js.map +0 -1
  128. package/dist/web-components-library/p-18690383.entry.js +0 -2
  129. package/dist/web-components-library/p-18690383.entry.js.map +0 -1
  130. package/dist/web-components-library/p-26b5c84d.js +0 -2
  131. package/dist/web-components-library/p-5a5481be.entry.js +0 -2
  132. package/dist/web-components-library/p-5a5481be.entry.js.map +0 -1
  133. package/dist/web-components-library/p-83eff308.entry.js.map +0 -1
  134. package/dist/web-components-library/p-888c6510.entry.js +0 -2
  135. package/dist/web-components-library/p-8e9ecc01.entry.js +0 -2
  136. package/dist/web-components-library/p-d6b4833b.js +0 -2
  137. package/dist/web-components-library/p-d6b4833b.js.map +0 -1
  138. package/dist/web-components-library/p-ed2c8484.entry.js +0 -2
  139. package/www/build/p-18690383.entry.js +0 -2
  140. package/www/build/p-18690383.entry.js.map +0 -1
  141. package/www/build/p-26b5c84d.js +0 -2
  142. package/www/build/p-5a5481be.entry.js +0 -2
  143. package/www/build/p-5a5481be.entry.js.map +0 -1
  144. package/www/build/p-83eff308.entry.js.map +0 -1
  145. package/www/build/p-888c6510.entry.js +0 -2
  146. package/www/build/p-8e9ecc01.entry.js +0 -2
  147. package/www/build/p-ac892fb6.js +0 -2
  148. package/www/build/p-d6b4833b.js +0 -2
  149. package/www/build/p-d6b4833b.js.map +0 -1
  150. package/www/build/p-ed2c8484.entry.js +0 -2
  151. /package/dist/web-components-library/{p-888c6510.entry.js.map → p-1edbac5f.entry.js.map} +0 -0
  152. /package/dist/web-components-library/{p-738670e2.js.map → p-ae94e377.js.map} +0 -0
  153. /package/dist/web-components-library/{p-8e9ecc01.entry.js.map → p-bf2a057d.entry.js.map} +0 -0
  154. /package/dist/web-components-library/{p-64c7c4c1.entry.js.map → p-c6b269ce.entry.js.map} +0 -0
  155. /package/dist/web-components-library/{p-ed2c8484.entry.js.map → p-e0323da3.entry.js.map} +0 -0
  156. /package/www/build/{p-888c6510.entry.js.map → p-1edbac5f.entry.js.map} +0 -0
  157. /package/www/build/{p-738670e2.js.map → p-ae94e377.js.map} +0 -0
  158. /package/www/build/{p-8e9ecc01.entry.js.map → p-bf2a057d.entry.js.map} +0 -0
  159. /package/www/build/{p-64c7c4c1.entry.js.map → p-c6b269ce.entry.js.map} +0 -0
  160. /package/www/build/{p-ed2c8484.entry.js.map → p-e0323da3.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"index.spec.js","sourceRoot":"","sources":["../../../../src/components/z-searchbar/index.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,uBAAuB,CAAC;AAElD,OAAO,EAAC,UAAU,EAAC,MAAM,SAAS,CAAC;AAEnC,MAAM,CAAC,cAAc,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,EAAE,CAAC,CAAC;IAC1D,OAAO,EAAE,IAAI,CAAC,EAAE,EAAE;IAClB,SAAS,EAAE,IAAI,CAAC,EAAE,EAAE;IACpB,UAAU,EAAE,IAAI,CAAC,EAAE,EAAE;CACtB,CAAC,CAAC,CAAC;AAEJ,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;IACrC,EAAE,CAAC,kBAAkB,EAAE,KAAK,IAAI,EAAE;QAChC,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,UAAU,CAAC;YACxB,IAAI,EAAE,sEAAsE;SAC7E,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;;;;;;;;;KAS7B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uCAAuC,EAAE,KAAK,IAAI,EAAE;QACrD,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,UAAU,CAAC;YACxB,IAAI,EAAE,sFAAsF;SAC7F,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;;;;;;;;KAQ7B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kEAAkE,EAAE,KAAK,IAAI,EAAE;QAChF,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,UAAU,CAAC;YACxB,IAAI,EAAE;;;yBAGa,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;;sBAE7B;SACjB,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;;;;;yBAKT,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;;;;;;;;;;KAU9C,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oEAAoE,EAAE,KAAK,IAAI,EAAE;QAClF,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,UAAU,CAAC;YACxB,IAAI,EAAE;;;yBAGa,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;;sBAE7B;SACjB,CAAC,CAAC;QACH,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,WAAW,GAAG,IAAI,CAAC;QACrC,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAC5B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;;;;;yBAKT,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;;;;;;;;;oBAS/B,YAAY,EAAE;oBACd,YAAY,EAAE;;;;;;;;KAQ7B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4EAA4E,EAAE,KAAK,IAAI,EAAE;QAC1F,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,UAAU,CAAC;YACxB,IAAI,EAAE;;;yBAGa,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;;;sBAG7B;SACjB,CAAC,CAAC;QACH,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,WAAW,GAAG,IAAI,CAAC;QACrC,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAC5B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;;;;;yBAKT,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;;;;;;;;;;oBAU/B,YAAY,EAAE;;;;;;;;;;;;;;;;;oBAiBd,cAAc,EAAE;;;;;;;;KAQ/B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uFAAuF,EAAE,KAAK,IAAI,EAAE;QACrG,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,UAAU,CAAC;YACxB,IAAI,EAAE;;;yBAGa,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;;sBAE7B;SACjB,CAAC,CAAC;QACH,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,WAAW,GAAG,IAAI,CAAC;QACrC,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,CAAC,CAAC;QACvC,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAC5B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;;;;;yBAKT,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;;;;;;;;;oBAS/B,YAAY,EAAE;oBACd,YAAY,EAAE;;;;;;;;KAQ7B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0EAA0E,EAAE,KAAK,IAAI,EAAE;QACxF,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,UAAU,CAAC;YACxB,IAAI,EAAE;;;;;sBAKU;SACjB,CAAC,CAAC;QACH,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,WAAW,GAAG,IAAI,CAAC;QACrC,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,CAAC,CAAC;QACvC,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAC5B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA4B7B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uEAAuE,EAAE,KAAK,IAAI,EAAE;QACrF,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,UAAU,CAAC;YACxB,IAAI,EAAE;;;;;sBAKU;SACjB,CAAC,CAAC;QACH,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,WAAW,GAAG,IAAI,CAAC;QACrC,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,CAAC,CAAC;QACvC,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAC5B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;;;;;;;;;;;;;;oBAcd,YAAY,CAAC,KAAK,CAAC;;;;;;;;KAQlC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8BAA8B,EAAE,KAAK,IAAI,EAAE;QAC5C,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,UAAU,CAAC;YACxB,IAAI,EAAE,mFAAmF;SAC1F,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;;;;;;;;;KAS7B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wCAAwC,EAAE,KAAK,IAAI,EAAE;QACtD,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,UAAU,CAAC;YACxB,IAAI,EAAE,0FAA0F;SACjG,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;;;;;;;;;KAS7B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;QACjD,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,UAAU,CAAC;YACxB,IAAI,EAAE,qGAAqG;SAC5G,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;;;;;;;;;KAS7B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,CAAC,EAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAC,EAAE,EAAC,KAAK,EAAE,QAAQ,EAAC,EAAE,EAAC,KAAK,EAAE,QAAQ,EAAC,CAAC,CAAC;AAEnG,MAAM,YAAY,GAAG,GAAG,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAyCT,CAAC;AAEnB,MAAM,YAAY,GAAG,CAAC,UAAmB,IAAI,EAAE,EAAE,CAAC;;;;MAI5C,OAAO,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,EAAE;;;;;;;;;CAS3C,CAAC;AAEF,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC;;;;;;;;;;CAU5B,CAAC","sourcesContent":["import {newSpecPage} from \"@stencil/core/testing\";\n\nimport {ZSearchbar} from \"./index\";\n\nglobal.ResizeObserver = jest.fn().mockImplementation(() => ({\n observe: jest.fn(),\n unobserve: jest.fn(),\n disconnect: jest.fn(),\n}));\n\ndescribe(\"Suite test ZSearchbar\", () => {\n it(\"Simple searchbar\", async () => {\n const page = await newSpecPage({\n components: [ZSearchbar],\n html: `<z-searchbar htmlid=\"my-id\" show-search-button=\"true\"></z-searchbar>`,\n });\n expect(page.root).toEqualHtml(`\n <z-searchbar class=\"has-submit\" htmlid=\"my-id\" show-search-button=\"true\">\n <mock:shadow-root>\n <div class=\"input-container\">\n <z-input size=\"big\"></z-input>\n </div>\n <z-button size=\"big\" variant=\"primary\">CERCA</z-button>\n </mock:shadow-root>\n </z-searchbar>\n `);\n });\n\n it(\"Autocomplete searchbar without search\", async () => {\n const page = await newSpecPage({\n components: [ZSearchbar],\n html: `<z-searchbar htmlid=\"my-id\" autocomplete=\"true\" prevent-submit=\"true\"></z-searchbar>`,\n });\n expect(page.root).toEqualHtml(`\n <z-searchbar class=\"has-results\" htmlid=\"my-id\" autocomplete=\"true\" prevent-submit=\"true\">\n <mock:shadow-root>\n <div class=\"input-container\">\n <z-input size=\"big\"></z-input>\n </div>\n </mock:shadow-root>\n </z-searchbar>\n `);\n });\n\n it(\"Autocomplete searchbar with search and results - no input search\", async () => {\n const page = await newSpecPage({\n components: [ZSearchbar],\n html: `<z-searchbar\n htmlid=\"my-id\"\n autocomplete=\"true\"\n results-items='${JSON.stringify(getItems())}'\n show-search-button=\"true\"\n ></z-searchbar>`,\n });\n expect(page.root).toEqualHtml(`\n <z-searchbar\n class=\"has-submit has-results\"\n htmlid=\"my-id\"\n autocomplete=\"true\"\n results-items='${JSON.stringify(getItems())}'\n show-search-button=\"true\"\n >\n <mock:shadow-root>\n <div class=\"input-container\">\n <z-input size=\"big\"></z-input>\n </div>\n <z-button size=\"big\" variant=\"primary\">CERCA</z-button>\n </mock:shadow-root>\n </z-searchbar>\n `);\n });\n\n it(\"Autocomplete searchbar with search and results - with input search\", async () => {\n const page = await newSpecPage({\n components: [ZSearchbar],\n html: `<z-searchbar\n htmlid=\"my-id\"\n autocomplete=\"true\"\n results-items='${JSON.stringify(getItems())}'\n show-search-button=\"true\"\n ></z-searchbar>`,\n });\n page.rootInstance.searchString = \"item\";\n page.rootInstance.showResults = true;\n await page.waitForChanges();\n expect(page.root).toEqualHtml(`\n <z-searchbar\n class=\"has-submit has-results\"\n htmlid=\"my-id\"\n autocomplete=\"true\"\n results-items='${JSON.stringify(getItems())}'\n show-search-button=\"true\"\n >\n <mock:shadow-root>\n <div class=\"input-container\">\n <z-input size=\"big\"></z-input>\n <div class=\"results-wrapper\">\n <div class=\"results\">\n <z-list role=\"listbox\" id=\"list-my-id\">\n ${searchHelper()}\n ${resultsItems()}\n </z-list>\n </div>\n </div>\n </div>\n <z-button size=\"big\" variant=\"primary\">CERCA</z-button>\n </mock:shadow-root>\n </z-searchbar>\n `);\n });\n\n it(\"Autocomplete searchbar with search and limited results - with input search\", async () => {\n const page = await newSpecPage({\n components: [ZSearchbar],\n html: `<z-searchbar\n htmlid=\"my-id\"\n autocomplete=\"true\"\n results-items='${JSON.stringify(getItems())}'\n results-count=\"1\"\n show-search-button=\"true\"\n ></z-searchbar>`,\n });\n page.rootInstance.searchString = \"item\";\n page.rootInstance.showResults = true;\n await page.waitForChanges();\n expect(page.root).toEqualHtml(`\n <z-searchbar\n class=\"has-submit has-results\"\n htmlid=\"my-id\"\n autocomplete=\"true\"\n results-items='${JSON.stringify(getItems())}'\n results-count=\"1\"\n show-search-button=\"true\"\n >\n <mock:shadow-root>\n <div class=\"input-container\">\n <z-input size=\"big\"></z-input>\n <div class=\"results-wrapper\">\n <div class=\"results\">\n <z-list role=\"listbox\" id=\"list-my-id\">\n ${searchHelper()}\n <z-list-group divider-type=\"element\">\n <z-list-element\n id=\"list-item-my-id-0\"\n role=\"option\"\n tabindex=\"0\"\n dividerType=\"element\"\n clickable\n >\n <div class=\"list-element\">\n <span class=\"item ellipsis\">\n <z-icon class=\"item-icon\" name=\"download\"></z-icon>\n <span class=\"item-label\" title=\"item 1\"><mark>item</mark> 1</span>\n </span>\n </div>\n </z-list-element>\n </z-list-group>\n ${showAllResults()}\n </z-list>\n </div>\n </div>\n </div>\n <z-button size=\"big\" variant=\"primary\">CERCA</z-button>\n </mock:shadow-root>\n </z-searchbar>\n `);\n });\n\n it(\"Autocomplete searchbar with search and limited results (show all) - with input search\", async () => {\n const page = await newSpecPage({\n components: [ZSearchbar],\n html: `<z-searchbar\n htmlid=\"my-id\"\n autocomplete=\"true\"\n results-items='${JSON.stringify(getItems())}'\n show-search-button=\"true\"\n ></z-searchbar>`,\n });\n page.rootInstance.searchString = \"item\";\n page.rootInstance.showResults = true;\n page.rootInstance.currResultsCount = 0;\n await page.waitForChanges();\n expect(page.root).toEqualHtml(`\n <z-searchbar\n class=\"has-submit has-results\"\n htmlid=\"my-id\"\n autocomplete=\"true\"\n results-items='${JSON.stringify(getItems())}'\n show-search-button=\"true\"\n >\n <mock:shadow-root>\n <div class=\"input-container\">\n <z-input size=\"big\"></z-input>\n <div class=\"results-wrapper\">\n <div class=\"results\">\n <z-list role=\"listbox\" id=\"list-my-id\">\n ${searchHelper()}\n ${resultsItems()}\n </z-list>\n </div>\n </div>\n </div>\n <z-button size=\"big\" variant=\"primary\">CERCA</z-button>\n </mock:shadow-root>\n </z-searchbar>\n `);\n });\n\n it(\"Autocomplete searchbar without search and no results - with input search\", async () => {\n const page = await newSpecPage({\n components: [ZSearchbar],\n html: `<z-searchbar\n htmlid=\"my-id\"\n autocomplete=\"true\"\n prevent-submit=\"true\"\n results-items='[]'\n ></z-searchbar>`,\n });\n page.rootInstance.searchString = \"item\";\n page.rootInstance.showResults = true;\n page.rootInstance.currResultsCount = 0;\n await page.waitForChanges();\n expect(page.root).toEqualHtml(`\n <z-searchbar\n class=\"has-results\"\n htmlid=\"my-id\"\n autocomplete=\"true\"\n prevent-submit=\"true\"\n results-items=\"[]\"\n >\n <mock:shadow-root>\n <div class=\"input-container\">\n <z-input size=\"big\"></z-input>\n <div class=\"results-wrapper\">\n <div class=\"results\">\n <span class=\"item item-no-results\">\n Non abbiamo trovato risultati per <b>item</b>\n <br /><br />\n Cosa puoi fare?\n <ul>\n <li>Verificare di aver scritto bene</li>\n <li>Provare a cercare un'altra parola</li>\n <li>Provare a cercare qualcosa di più generico</li>\n </ul>\n </span>\n </div>\n </div>\n </div>\n </mock:shadow-root>\n </z-searchbar>\n `);\n });\n\n it(\"Autocomplete searchbar with search and no results - with input search\", async () => {\n const page = await newSpecPage({\n components: [ZSearchbar],\n html: `<z-searchbar\n htmlid=\"my-id\"\n autocomplete=\"true\"\n results-items='[]'\n show-search-button=\"true\"\n ></z-searchbar>`,\n });\n page.rootInstance.searchString = \"item\";\n page.rootInstance.showResults = true;\n page.rootInstance.currResultsCount = 0;\n await page.waitForChanges();\n expect(page.root).toEqualHtml(`\n <z-searchbar\n class=\"has-submit has-results\"\n htmlid=\"my-id\"\n autocomplete=\"true\"\n results-items='[]'\n show-search-button=\"true\"\n >\n <mock:shadow-root>\n <div class=\"input-container\">\n <z-input size=\"big\"></z-input>\n <div class=\"results-wrapper\">\n <div class=\"results\">\n <z-list role=\"listbox\" id=\"list-my-id\">\n ${searchHelper(false)}\n </z-list>\n </div>\n </div>\n </div>\n <z-button size=\"big\" variant=\"primary\">CERCA</z-button>\n </mock:shadow-root>\n </z-searchbar>\n `);\n });\n\n it(\"Simple searchbar change size\", async () => {\n const page = await newSpecPage({\n components: [ZSearchbar],\n html: `<z-searchbar htmlid=\"my-id\" show-search-button=\"true\" size=\"small\"></z-searchbar>`,\n });\n expect(page.root).toEqualHtml(`\n <z-searchbar class=\"has-submit\" htmlid=\"my-id\" show-search-button=\"true\" size=\"small\">\n <mock:shadow-root>\n <div class=\"input-container\">\n <z-input size=\"small\"></z-input>\n </div>\n <z-button size=\"small\" variant=\"primary\">CERCA</z-button>\n </mock:shadow-root>\n </z-searchbar>\n `);\n });\n\n it(\"Simple searchbar change button variant\", async () => {\n const page = await newSpecPage({\n components: [ZSearchbar],\n html: `<z-searchbar htmlid=\"my-id\" show-search-button=\"true\" variant=\"secondary\"></z-searchbar>`,\n });\n expect(page.root).toEqualHtml(`\n <z-searchbar class=\"has-submit\" htmlid=\"my-id\" show-search-button=\"true\" variant=\"secondary\">\n <mock:shadow-root>\n <div class=\"input-container\">\n <z-input size=\"big\"></z-input>\n </div>\n <z-button size=\"big\" variant=\"secondary\">CERCA</z-button>\n </mock:shadow-root>\n </z-searchbar>\n `);\n });\n\n it(\"Simple searchbar only icon button\", async () => {\n const page = await newSpecPage({\n components: [ZSearchbar],\n html: `<z-searchbar htmlid=\"my-id\" show-search-button=\"true\" search-button-icon-only=\"true\"></z-searchbar>`,\n });\n expect(page.root).toEqualHtml(`\n <z-searchbar class=\"has-submit\" htmlid=\"my-id\" show-search-button=\"true\" search-button-icon-only=\"true\">\n <mock:shadow-root>\n <div class=\"input-container\">\n <z-input size=\"big\"></z-input>\n </div>\n <z-button icon=\"search\" size=\"big\" variant=\"primary\"></z-button>\n </mock:shadow-root>\n </z-searchbar>\n `);\n });\n});\n\nconst getItems = () => [{label: \"item 1\", icon: \"download\"}, {label: \"item 2\"}, {label: \"item 3\"}];\n\nconst resultsItems = () => `\n <z-list-group divider-type=\"element\">\n <z-list-element\n id=\"list-item-my-id-0\"\n role=\"option\"\n tabindex=\"0\"\n dividerType=\"element\"\n clickable\n >\n <div class=\"list-element\">\n <span class=\"item ellipsis\">\n <z-icon class=\"item-icon\" name=\"download\"></z-icon>\n <span class=\"item-label\" title=\"item 1\"><mark>item</mark> 1</span>\n </span>\n </div>\n </z-list-element>\n <z-list-element\n id=\"list-item-my-id-1\"\n role=\"option\"\n tabindex=\"0\"\n dividerType=\"element\"\n clickable\n >\n <div class=\"list-element\">\n <span class=\"item ellipsis\">\n <span class=\"item-label\" title=\"item 2\"><mark>item</mark> 2</span>\n </span>\n </div>\n </z-list-element>\n <z-list-element\n id=\"list-item-my-id-2\"\n role=\"option\"\n tabindex=\"0\"\n clickable\n >\n <div class=\"list-element\">\n <span class=\"item ellipsis\">\n <span class=\"item-label\" title=\"item 3\"><mark>item</mark> 3</span>\n </span>\n </div>\n </z-list-element>\n </z-list-group>`;\n\nconst searchHelper = (divider: boolean = true) => `\n <z-list-element\n role=\"option\"\n tabindex=\"0\"\n ${divider ? `dividerType=\"element\"` : ``}\n id=\"list-item-my-id-search\"\n clickable\n >\n <span class=\"item item-search\">\n <z-icon class=\"search-icon\" name=\"left-magnifying-glass\"></z-icon>\n <span class=\"item-label\">Cerca <mark>item</mark></span>\n </span>\n </z-list-element>\n`;\n\nconst showAllResults = () => `\n <z-list-element\n role=\"option\"\n tabindex=\"0\"\n id=\"list-item-my-id-show-all\"\n clickable\n color=\"color-primary01\"\n >\n <div class=\"item-show-all\">Vedi tutti i risultati</div>\n </z-list-element>\n`;\n"]}
1
+ {"version":3,"file":"index.spec.js","sourceRoot":"","sources":["../../../../src/components/z-searchbar/index.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,uBAAuB,CAAC;AAElD,OAAO,EAAC,UAAU,EAAC,MAAM,SAAS,CAAC;AAEnC,MAAM,CAAC,cAAc,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,EAAE,CAAC,CAAC;IAC1D,OAAO,EAAE,IAAI,CAAC,EAAE,EAAE;IAClB,SAAS,EAAE,IAAI,CAAC,EAAE,EAAE;IACpB,UAAU,EAAE,IAAI,CAAC,EAAE,EAAE;CACtB,CAAC,CAAC,CAAC;AAEJ,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;IACrC,EAAE,CAAC,kBAAkB,EAAE,KAAK,IAAI,EAAE;QAChC,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,UAAU,CAAC;YACxB,IAAI,EAAE,sEAAsE;SAC7E,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;;;;;;;;;KAS7B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uCAAuC,EAAE,KAAK,IAAI,EAAE;QACrD,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,UAAU,CAAC;YACxB,IAAI,EAAE,sFAAsF;SAC7F,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;;;;;;;;KAQ7B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kEAAkE,EAAE,KAAK,IAAI,EAAE;QAChF,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,UAAU,CAAC;YACxB,IAAI,EAAE;;;yBAGa,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;;sBAE7B;SACjB,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;;;;;yBAKT,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;;;;;;;;;;KAU9C,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oEAAoE,EAAE,KAAK,IAAI,EAAE;QAClF,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,UAAU,CAAC;YACxB,IAAI,EAAE;;;yBAGa,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;;sBAE7B;SACjB,CAAC,CAAC;QACH,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,WAAW,GAAG,IAAI,CAAC;QACrC,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAC5B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;;;;;yBAKT,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;;;;;;;;;oBAS/B,YAAY,EAAE;oBACd,YAAY,EAAE;;;;;;;;KAQ7B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4EAA4E,EAAE,KAAK,IAAI,EAAE;QAC1F,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,UAAU,CAAC;YACxB,IAAI,EAAE;;;yBAGa,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;;;sBAG7B;SACjB,CAAC,CAAC;QACH,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,WAAW,GAAG,IAAI,CAAC;QACrC,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAC5B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;;;;;yBAKT,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;;;;;;;;;;oBAU/B,YAAY,EAAE;;;;;;;;;;;;;;;;oBAgBd,cAAc,EAAE;;;;;;;;KAQ/B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uFAAuF,EAAE,KAAK,IAAI,EAAE;QACrG,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,UAAU,CAAC;YACxB,IAAI,EAAE;;;yBAGa,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;;sBAE7B;SACjB,CAAC,CAAC;QACH,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,WAAW,GAAG,IAAI,CAAC;QACrC,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,CAAC,CAAC;QACvC,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAC5B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;;;;;yBAKT,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;;;;;;;;;oBAS/B,YAAY,EAAE;oBACd,YAAY,EAAE;;;;;;;;KAQ7B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0EAA0E,EAAE,KAAK,IAAI,EAAE;QACxF,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,UAAU,CAAC;YACxB,IAAI,EAAE;;;;;sBAKU;SACjB,CAAC,CAAC;QACH,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,WAAW,GAAG,IAAI,CAAC;QACrC,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,CAAC,CAAC;QACvC,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAC5B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA4B7B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uEAAuE,EAAE,KAAK,IAAI,EAAE;QACrF,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,UAAU,CAAC;YACxB,IAAI,EAAE;;;;;sBAKU;SACjB,CAAC,CAAC;QACH,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,WAAW,GAAG,IAAI,CAAC;QACrC,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,CAAC,CAAC;QACvC,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAC5B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;;;;;;;;;;;;;;oBAcd,YAAY,CAAC,KAAK,CAAC;;;;;;;;KAQlC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8BAA8B,EAAE,KAAK,IAAI,EAAE;QAC5C,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,UAAU,CAAC;YACxB,IAAI,EAAE,mFAAmF;SAC1F,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;;;;;;;;;KAS7B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wCAAwC,EAAE,KAAK,IAAI,EAAE;QACtD,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,UAAU,CAAC;YACxB,IAAI,EAAE,0FAA0F;SACjG,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;;;;;;;;;KAS7B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;QACjD,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,UAAU,CAAC;YACxB,IAAI,EAAE,qGAAqG;SAC5G,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;;;;;;;;;KAS7B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,CAAC,EAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAC,EAAE,EAAC,KAAK,EAAE,QAAQ,EAAC,EAAE,EAAC,KAAK,EAAE,QAAQ,EAAC,CAAC,CAAC;AAEnG,MAAM,YAAY,GAAG,GAAG,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAsCT,CAAC;AAEnB,MAAM,YAAY,GAAG,CAAC,UAAmB,IAAI,EAAE,EAAE,CAAC;;;;MAI5C,OAAO,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,EAAE;;;;;;;;;CAS3C,CAAC;AAEF,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC;;;;;;;;;;CAU5B,CAAC","sourcesContent":["import {newSpecPage} from \"@stencil/core/testing\";\n\nimport {ZSearchbar} from \"./index\";\n\nglobal.ResizeObserver = jest.fn().mockImplementation(() => ({\n observe: jest.fn(),\n unobserve: jest.fn(),\n disconnect: jest.fn(),\n}));\n\ndescribe(\"Suite test ZSearchbar\", () => {\n it(\"Simple searchbar\", async () => {\n const page = await newSpecPage({\n components: [ZSearchbar],\n html: `<z-searchbar htmlid=\"my-id\" show-search-button=\"true\"></z-searchbar>`,\n });\n expect(page.root).toEqualHtml(`\n <z-searchbar class=\"has-submit\" htmlid=\"my-id\" show-search-button=\"true\">\n <mock:shadow-root>\n <div class=\"input-container\">\n <z-input size=\"big\"></z-input>\n </div>\n <z-button size=\"big\" variant=\"primary\">CERCA</z-button>\n </mock:shadow-root>\n </z-searchbar>\n `);\n });\n\n it(\"Autocomplete searchbar without search\", async () => {\n const page = await newSpecPage({\n components: [ZSearchbar],\n html: `<z-searchbar htmlid=\"my-id\" autocomplete=\"true\" prevent-submit=\"true\"></z-searchbar>`,\n });\n expect(page.root).toEqualHtml(`\n <z-searchbar class=\"has-results\" htmlid=\"my-id\" autocomplete=\"true\" prevent-submit=\"true\">\n <mock:shadow-root>\n <div class=\"input-container\">\n <z-input size=\"big\"></z-input>\n </div>\n </mock:shadow-root>\n </z-searchbar>\n `);\n });\n\n it(\"Autocomplete searchbar with search and results - no input search\", async () => {\n const page = await newSpecPage({\n components: [ZSearchbar],\n html: `<z-searchbar\n htmlid=\"my-id\"\n autocomplete=\"true\"\n results-items='${JSON.stringify(getItems())}'\n show-search-button=\"true\"\n ></z-searchbar>`,\n });\n expect(page.root).toEqualHtml(`\n <z-searchbar\n class=\"has-submit has-results\"\n htmlid=\"my-id\"\n autocomplete=\"true\"\n results-items='${JSON.stringify(getItems())}'\n show-search-button=\"true\"\n >\n <mock:shadow-root>\n <div class=\"input-container\">\n <z-input size=\"big\"></z-input>\n </div>\n <z-button size=\"big\" variant=\"primary\">CERCA</z-button>\n </mock:shadow-root>\n </z-searchbar>\n `);\n });\n\n it(\"Autocomplete searchbar with search and results - with input search\", async () => {\n const page = await newSpecPage({\n components: [ZSearchbar],\n html: `<z-searchbar\n htmlid=\"my-id\"\n autocomplete=\"true\"\n results-items='${JSON.stringify(getItems())}'\n show-search-button=\"true\"\n ></z-searchbar>`,\n });\n page.rootInstance.searchString = \"item\";\n page.rootInstance.showResults = true;\n await page.waitForChanges();\n expect(page.root).toEqualHtml(`\n <z-searchbar\n class=\"has-submit has-results\"\n htmlid=\"my-id\"\n autocomplete=\"true\"\n results-items='${JSON.stringify(getItems())}'\n show-search-button=\"true\"\n >\n <mock:shadow-root>\n <div class=\"input-container\">\n <z-input size=\"big\"></z-input>\n <div class=\"results-wrapper\">\n <div class=\"results\">\n <z-list role=\"listbox\" id=\"list-my-id\">\n ${searchHelper()}\n ${resultsItems()}\n </z-list>\n </div>\n </div>\n </div>\n <z-button size=\"big\" variant=\"primary\">CERCA</z-button>\n </mock:shadow-root>\n </z-searchbar>\n `);\n });\n\n it(\"Autocomplete searchbar with search and limited results - with input search\", async () => {\n const page = await newSpecPage({\n components: [ZSearchbar],\n html: `<z-searchbar\n htmlid=\"my-id\"\n autocomplete=\"true\"\n results-items='${JSON.stringify(getItems())}'\n results-count=\"1\"\n show-search-button=\"true\"\n ></z-searchbar>`,\n });\n page.rootInstance.searchString = \"item\";\n page.rootInstance.showResults = true;\n await page.waitForChanges();\n expect(page.root).toEqualHtml(`\n <z-searchbar\n class=\"has-submit has-results\"\n htmlid=\"my-id\"\n autocomplete=\"true\"\n results-items='${JSON.stringify(getItems())}'\n results-count=\"1\"\n show-search-button=\"true\"\n >\n <mock:shadow-root>\n <div class=\"input-container\">\n <z-input size=\"big\"></z-input>\n <div class=\"results-wrapper\">\n <div class=\"results\">\n <z-list role=\"listbox\" id=\"list-my-id\">\n ${searchHelper()}\n <z-list-group divider-type=\"element\">\n <z-list-element\n id=\"list-item-my-id-0\"\n role=\"option\"\n tabindex=\"0\"\n dividerType=\"element\"\n >\n <div class=\"list-element\">\n <span class=\"item ellipsis\">\n <z-icon class=\"item-icon\" name=\"download\"></z-icon>\n <span class=\"item-label\" title=\"item 1\"><mark>item</mark> 1</span>\n </span>\n </div>\n </z-list-element>\n </z-list-group>\n ${showAllResults()}\n </z-list>\n </div>\n </div>\n </div>\n <z-button size=\"big\" variant=\"primary\">CERCA</z-button>\n </mock:shadow-root>\n </z-searchbar>\n `);\n });\n\n it(\"Autocomplete searchbar with search and limited results (show all) - with input search\", async () => {\n const page = await newSpecPage({\n components: [ZSearchbar],\n html: `<z-searchbar\n htmlid=\"my-id\"\n autocomplete=\"true\"\n results-items='${JSON.stringify(getItems())}'\n show-search-button=\"true\"\n ></z-searchbar>`,\n });\n page.rootInstance.searchString = \"item\";\n page.rootInstance.showResults = true;\n page.rootInstance.currResultsCount = 0;\n await page.waitForChanges();\n expect(page.root).toEqualHtml(`\n <z-searchbar\n class=\"has-submit has-results\"\n htmlid=\"my-id\"\n autocomplete=\"true\"\n results-items='${JSON.stringify(getItems())}'\n show-search-button=\"true\"\n >\n <mock:shadow-root>\n <div class=\"input-container\">\n <z-input size=\"big\"></z-input>\n <div class=\"results-wrapper\">\n <div class=\"results\">\n <z-list role=\"listbox\" id=\"list-my-id\">\n ${searchHelper()}\n ${resultsItems()}\n </z-list>\n </div>\n </div>\n </div>\n <z-button size=\"big\" variant=\"primary\">CERCA</z-button>\n </mock:shadow-root>\n </z-searchbar>\n `);\n });\n\n it(\"Autocomplete searchbar without search and no results - with input search\", async () => {\n const page = await newSpecPage({\n components: [ZSearchbar],\n html: `<z-searchbar\n htmlid=\"my-id\"\n autocomplete=\"true\"\n prevent-submit=\"true\"\n results-items='[]'\n ></z-searchbar>`,\n });\n page.rootInstance.searchString = \"item\";\n page.rootInstance.showResults = true;\n page.rootInstance.currResultsCount = 0;\n await page.waitForChanges();\n expect(page.root).toEqualHtml(`\n <z-searchbar\n class=\"has-results\"\n htmlid=\"my-id\"\n autocomplete=\"true\"\n prevent-submit=\"true\"\n results-items=\"[]\"\n >\n <mock:shadow-root>\n <div class=\"input-container\">\n <z-input size=\"big\"></z-input>\n <div class=\"results-wrapper\">\n <div class=\"results\">\n <span class=\"item item-no-results\">\n Non abbiamo trovato risultati per <b>item</b>\n <br /><br />\n Cosa puoi fare?\n <ul>\n <li>Verificare di aver scritto bene</li>\n <li>Provare a cercare un'altra parola</li>\n <li>Provare a cercare qualcosa di più generico</li>\n </ul>\n </span>\n </div>\n </div>\n </div>\n </mock:shadow-root>\n </z-searchbar>\n `);\n });\n\n it(\"Autocomplete searchbar with search and no results - with input search\", async () => {\n const page = await newSpecPage({\n components: [ZSearchbar],\n html: `<z-searchbar\n htmlid=\"my-id\"\n autocomplete=\"true\"\n results-items='[]'\n show-search-button=\"true\"\n ></z-searchbar>`,\n });\n page.rootInstance.searchString = \"item\";\n page.rootInstance.showResults = true;\n page.rootInstance.currResultsCount = 0;\n await page.waitForChanges();\n expect(page.root).toEqualHtml(`\n <z-searchbar\n class=\"has-submit has-results\"\n htmlid=\"my-id\"\n autocomplete=\"true\"\n results-items='[]'\n show-search-button=\"true\"\n >\n <mock:shadow-root>\n <div class=\"input-container\">\n <z-input size=\"big\"></z-input>\n <div class=\"results-wrapper\">\n <div class=\"results\">\n <z-list role=\"listbox\" id=\"list-my-id\">\n ${searchHelper(false)}\n </z-list>\n </div>\n </div>\n </div>\n <z-button size=\"big\" variant=\"primary\">CERCA</z-button>\n </mock:shadow-root>\n </z-searchbar>\n `);\n });\n\n it(\"Simple searchbar change size\", async () => {\n const page = await newSpecPage({\n components: [ZSearchbar],\n html: `<z-searchbar htmlid=\"my-id\" show-search-button=\"true\" size=\"small\"></z-searchbar>`,\n });\n expect(page.root).toEqualHtml(`\n <z-searchbar class=\"has-submit\" htmlid=\"my-id\" show-search-button=\"true\" size=\"small\">\n <mock:shadow-root>\n <div class=\"input-container\">\n <z-input size=\"small\"></z-input>\n </div>\n <z-button size=\"small\" variant=\"primary\">CERCA</z-button>\n </mock:shadow-root>\n </z-searchbar>\n `);\n });\n\n it(\"Simple searchbar change button variant\", async () => {\n const page = await newSpecPage({\n components: [ZSearchbar],\n html: `<z-searchbar htmlid=\"my-id\" show-search-button=\"true\" variant=\"secondary\"></z-searchbar>`,\n });\n expect(page.root).toEqualHtml(`\n <z-searchbar class=\"has-submit\" htmlid=\"my-id\" show-search-button=\"true\" variant=\"secondary\">\n <mock:shadow-root>\n <div class=\"input-container\">\n <z-input size=\"big\"></z-input>\n </div>\n <z-button size=\"big\" variant=\"secondary\">CERCA</z-button>\n </mock:shadow-root>\n </z-searchbar>\n `);\n });\n\n it(\"Simple searchbar only icon button\", async () => {\n const page = await newSpecPage({\n components: [ZSearchbar],\n html: `<z-searchbar htmlid=\"my-id\" show-search-button=\"true\" search-button-icon-only=\"true\"></z-searchbar>`,\n });\n expect(page.root).toEqualHtml(`\n <z-searchbar class=\"has-submit\" htmlid=\"my-id\" show-search-button=\"true\" search-button-icon-only=\"true\">\n <mock:shadow-root>\n <div class=\"input-container\">\n <z-input size=\"big\"></z-input>\n </div>\n <z-button icon=\"search\" size=\"big\" variant=\"primary\"></z-button>\n </mock:shadow-root>\n </z-searchbar>\n `);\n });\n});\n\nconst getItems = () => [{label: \"item 1\", icon: \"download\"}, {label: \"item 2\"}, {label: \"item 3\"}];\n\nconst resultsItems = () => `\n <z-list-group divider-type=\"element\">\n <z-list-element\n id=\"list-item-my-id-0\"\n role=\"option\"\n tabindex=\"0\"\n dividerType=\"element\"\n >\n <div class=\"list-element\">\n <span class=\"item ellipsis\">\n <z-icon class=\"item-icon\" name=\"download\"></z-icon>\n <span class=\"item-label\" title=\"item 1\"><mark>item</mark> 1</span>\n </span>\n </div>\n </z-list-element>\n <z-list-element\n id=\"list-item-my-id-1\"\n role=\"option\"\n tabindex=\"0\"\n dividerType=\"element\"\n >\n <div class=\"list-element\">\n <span class=\"item ellipsis\">\n <span class=\"item-label\" title=\"item 2\"><mark>item</mark> 2</span>\n </span>\n </div>\n </z-list-element>\n <z-list-element\n id=\"list-item-my-id-2\"\n role=\"option\"\n tabindex=\"0\"\n >\n <div class=\"list-element\">\n <span class=\"item ellipsis\">\n <span class=\"item-label\" title=\"item 3\"><mark>item</mark> 3</span>\n </span>\n </div>\n </z-list-element>\n </z-list-group>`;\n\nconst searchHelper = (divider: boolean = true) => `\n <z-list-element\n role=\"option\"\n tabindex=\"0\"\n ${divider ? `dividerType=\"element\"` : ``}\n id=\"list-item-my-id-search\"\n clickable\n >\n <span class=\"item item-search\">\n <z-icon class=\"search-icon\" name=\"left-magnifying-glass\"></z-icon>\n <span class=\"item-label\">Cerca <mark>item</mark></span>\n </span>\n </z-list-element>\n`;\n\nconst showAllResults = () => `\n <z-list-element\n role=\"option\"\n tabindex=\"0\"\n id=\"list-item-my-id-show-all\"\n color=\"color-primary01\"\n clickable\n >\n <div class=\"item-show-all\">Vedi tutti i risultati</div>\n </z-list-element>\n`;\n"]}
@@ -25,7 +25,6 @@ const StoryMeta = {
25
25
  "autocomplete": false,
26
26
  "autocompleteMinChars": 3,
27
27
  "resultsCount": null,
28
- "resultsEllipsis": true,
29
28
  "searchHelperLabel": "Cerca {searchString}",
30
29
  "resultsItems": [
31
30
  {
@@ -62,7 +61,6 @@ export const Default = {
62
61
  autocomplete=${args.autocomplete}
63
62
  autocomplete-min-chars=${args.autocompleteMinChars}
64
63
  results-count=${args.resultsCount}
65
- results-ellipsis=${args.resultsEllipsis}
66
64
  search-helper-label=${args.searchHelperLabel}
67
65
  results-items=${JSON.stringify(args.resultsItems)}
68
66
  sort-results-items=${JSON.stringify(args.sortResultsItems)}
@@ -112,7 +110,6 @@ export const Autocomplete = {
112
110
  autocomplete=${args.autocomplete}
113
111
  autocomplete-min-chars=${args.autocompleteMinChars}
114
112
  results-count=${args.resultsCount}
115
- results-ellipsis=${args.resultsEllipsis}
116
113
  search-helper-label=${args.searchHelperLabel}
117
114
  results-items=${JSON.stringify(args.resultsItems)}
118
115
  sort-results-items=${JSON.stringify(args.sortResultsItems)}
@@ -182,7 +179,137 @@ export const AutocompleteWithComplexItems = {
182
179
  autocomplete=${args.autocomplete}
183
180
  autocomplete-min-chars=${args.autocompleteMinChars}
184
181
  results-count=${args.resultsCount}
185
- results-ellipsis=${args.resultsEllipsis}
182
+ search-helper-label=${args.searchHelperLabel}
183
+ results-items=${JSON.stringify(args.resultsItems)}
184
+ sort-results-items=${JSON.stringify(args.sortResultsItems)}
185
+ value=${args.value}
186
+ placeholder=${args.placeholder}
187
+ htmlid=${args.htmlid}
188
+ style="--z-searchbar-results-height: ${args["--z-searchbar-results-height"]}; --z-searchbar-tag-text-color: ${args["--z-searchbar-tag-text-color"]}; --z-searchbar-tag-bg: ${args["--z-searchbar-tag-bg"]}"
189
+ size=${args.size}
190
+ variant=${args.variant}
191
+ ></z-searchbar>
192
+ `,
193
+ };
194
+ export const AutocompleteWithComplexTreeItems = {
195
+ args: {
196
+ autocomplete: true,
197
+ htmlid: "myIdGroupedAutocomplete",
198
+ showSearchButton: false,
199
+ searchButtonIconOnly: false,
200
+ resultsItems: [
201
+ {
202
+ label: "first item",
203
+ icon: "download",
204
+ tag: {
205
+ text: "Riservato all'insegnante",
206
+ icon: "teacher",
207
+ },
208
+ category: "Category A",
209
+ subcategory: "Subcategory A1",
210
+ children: [
211
+ {
212
+ label: "first item - first child",
213
+ icon: "download",
214
+ tag: {
215
+ text: "Riservato all'insegnante",
216
+ icon: "teacher",
217
+ },
218
+ children: [
219
+ {
220
+ label: "first item - first child - first child lunghissssssssssssssss sssssssssssssssssss ssssssssssssssssssssssssssssss ssssssssssssssssssssssssssssssssssssssssssssssssssssimo",
221
+ icon: "download",
222
+ tag: {
223
+ text: "Riservato all'insegnante",
224
+ icon: "teacher",
225
+ },
226
+ },
227
+ {
228
+ label: "first item - first child - second child",
229
+ icon: "download",
230
+ tag: {
231
+ text: "Riservato all'insegnante",
232
+ icon: "teacher",
233
+ },
234
+ },
235
+ {
236
+ label: "first item - first child - third child",
237
+ icon: "download",
238
+ tag: {
239
+ text: "Riservato all'insegnante",
240
+ icon: "teacher",
241
+ },
242
+ },
243
+ ],
244
+ },
245
+ {
246
+ label: "first item - second child",
247
+ icon: "download",
248
+ tag: {
249
+ text: "Riservato all'insegnante",
250
+ icon: "teacher",
251
+ },
252
+ },
253
+ ],
254
+ },
255
+ {
256
+ label: "second item",
257
+ icon: "collezioni",
258
+ category: "Category B",
259
+ subcategory: "Subcategory B1",
260
+ },
261
+ {
262
+ label: "third item",
263
+ icon: "dictonary",
264
+ category: "Category A",
265
+ subcategory: "Subcategory A2",
266
+ },
267
+ {
268
+ label: "fourth item",
269
+ icon: "exercises-online",
270
+ category: "Category A",
271
+ subcategory: "Subcategory A1",
272
+ },
273
+ {
274
+ label: "fifth item",
275
+ icon: "interactives-maps",
276
+ category: "Category A",
277
+ subcategory: "Subcategory A1",
278
+ children: [
279
+ {
280
+ label: "fifth item - first child",
281
+ icon: "download",
282
+ tag: {
283
+ text: "Riservato all'insegnante",
284
+ icon: "teacher",
285
+ },
286
+ },
287
+ {
288
+ label: "fifth item - second child",
289
+ icon: "download",
290
+ tag: {
291
+ text: "Riservato all'insegnante",
292
+ icon: "teacher",
293
+ },
294
+ },
295
+ ],
296
+ },
297
+ {
298
+ label: "sixth item",
299
+ icon: "textual-analysis",
300
+ category: "Category B",
301
+ subcategory: "Subcategory B1",
302
+ },
303
+ ],
304
+ },
305
+ render: (args) => html `
306
+ <z-searchbar
307
+ prevent-submit=${args.preventSubmit}
308
+ show-search-button=${args.showSearchButton}
309
+ search-button-icon-only=${args.searchButtonIconOnly}
310
+ autocomplete=${args.autocomplete}
311
+ autocomplete-min-chars=${args.autocompleteMinChars}
312
+ results-count=${args.resultsCount}
186
313
  search-helper-label=${args.searchHelperLabel}
187
314
  results-items=${JSON.stringify(args.resultsItems)}
188
315
  sort-results-items=${JSON.stringify(args.sortResultsItems)}
@@ -1 +1 @@
1
- {"version":3,"file":"index.stories.js","sourceRoot":"","sources":["../../../../src/components/z-searchbar/index.stories.ts"],"names":[],"mappings":"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","sourcesContent":["import {Meta, StoryObj} from \"@storybook/web-components\";\nimport {html} from \"lit\";\nimport {type ZSearchbar} from \".\";\nimport {ButtonVariant, ControlSize} from \"../../beans\";\nimport {CSSVarsArguments} from \"../../utils/storybook-utils\";\nimport \"./index\";\n\ntype ZSearchbarStoriesArgs = ZSearchbar &\n CSSVarsArguments<\"--z-searchbar-results-height\" | \"--z-searchbar-tag-text-color\" | \"--z-searchbar-tag-bg\">;\n\nconst StoryMeta = {\n title: \"ZSearchbar\",\n component: \"z-searchbar\",\n argTypes: {\n size: {\n control: {\n type: \"inline-radio\",\n },\n options: Object.values(ControlSize),\n },\n variant: {\n control: {\n type: \"inline-radio\",\n },\n options: Object.values(ButtonVariant),\n },\n },\n args: {\n \"preventSubmit\": false,\n \"showSearchButton\": false,\n \"searchButtonIconOnly\": false,\n \"autocomplete\": false,\n \"autocompleteMinChars\": 3,\n \"resultsCount\": null,\n \"resultsEllipsis\": true,\n \"searchHelperLabel\": \"Cerca {searchString}\",\n \"resultsItems\": [\n {\n label: \"first item\",\n },\n {\n label: \"second item\",\n },\n {\n label: \"third item\",\n },\n {\n label: \"fourth item\",\n },\n ],\n \"sortResultsItems\": false,\n \"htmlid\": \"myId\",\n \"placeholder\": \"my placeholder\",\n \"value\": \"\",\n \"--z-searchbar-results-height\": \"\",\n \"--z-searchbar-tag-text-color\": \"var(--color-primary03)\",\n \"--z-searchbar-tag-bg\": \"var(--color-hover-primary)\",\n \"size\": ControlSize.BIG,\n \"variant\": ButtonVariant.PRIMARY,\n },\n} satisfies Meta<ZSearchbarStoriesArgs>;\n\nexport default StoryMeta;\n\ntype Story = StoryObj<ZSearchbarStoriesArgs>;\n\nexport const Default = {\n render: (args) => html`\n <z-searchbar\n prevent-submit=${args.preventSubmit}\n show-search-button=${args.showSearchButton}\n search-button-icon-only=${args.searchButtonIconOnly}\n autocomplete=${args.autocomplete}\n autocomplete-min-chars=${args.autocompleteMinChars}\n results-count=${args.resultsCount}\n results-ellipsis=${args.resultsEllipsis}\n search-helper-label=${args.searchHelperLabel}\n results-items=${JSON.stringify(args.resultsItems)}\n sort-results-items=${JSON.stringify(args.sortResultsItems)}\n value=${args.value}\n placeholder=${args.placeholder}\n htmlid=${args.htmlid}\n style=\"--z-searchbar-results-height: ${args[\"--z-searchbar-results-height\"]}\"\n size=${args.size}\n variant=${args.variant}\n ></z-searchbar>\n `,\n} satisfies Story;\n\nexport const SimpleSearch = {\n parameters: {\n controls: {\n include: [\"value\", \"placeholder\", \"htmlid\", \"size\"],\n },\n },\n args: {\n htmlid: \"myIdSimple\",\n },\n render: (args) => html`\n <z-searchbar\n prevent-submit=\"false\"\n show-search-button=${args.showSearchButton}\n search-button-icon-only=${args.searchButtonIconOnly}\n autcomplete=\"false\"\n value=${args.value}\n placeholder=${args.placeholder}\n htmlid=${args.htmlid}\n size=${args.size}\n ></z-searchbar>\n `,\n} satisfies Story;\n\nexport const Autocomplete = {\n args: {\n autocomplete: true,\n htmlid: \"myIdAutocomplete\",\n showSearchButton: false,\n searchButtonIconOnly: false,\n },\n render: (args) => html`\n <z-searchbar\n prevent-submit=${args.preventSubmit}\n show-search-button=${args.showSearchButton}\n search-button-icon-only=${args.searchButtonIconOnly}\n autocomplete=${args.autocomplete}\n autocomplete-min-chars=${args.autocompleteMinChars}\n results-count=${args.resultsCount}\n results-ellipsis=${args.resultsEllipsis}\n search-helper-label=${args.searchHelperLabel}\n results-items=${JSON.stringify(args.resultsItems)}\n sort-results-items=${JSON.stringify(args.sortResultsItems)}\n value=${args.value}\n placeholder=${args.placeholder}\n htmlid=${args.htmlid}\n style=\"--z-searchbar-results-height: ${args[\"--z-searchbar-results-height\"]}\"\n size=${args.size}\n variant=${args.variant}\n ></z-searchbar>\n `,\n} satisfies Story;\n\nexport const AutocompleteWithComplexItems = {\n args: {\n autocomplete: true,\n htmlid: \"myIdGroupedAutocomplete\",\n showSearchButton: false,\n searchButtonIconOnly: false,\n resultsItems: [\n {\n label: \"first item\",\n icon: \"download\",\n tag: {\n text: \"Riservato all'insegnante\",\n icon: \"teacher\",\n },\n category: \"Category A\",\n subcategory: \"Subcategory A1\",\n },\n {\n label: \"second item\",\n icon: \"collezioni\",\n category: \"Category B\",\n subcategory: \"Subcategory B1\",\n },\n {\n label: \"third item\",\n icon: \"dictonary\",\n category: \"Category A\",\n subcategory: \"Subcategory A2\",\n },\n {\n label: \"fourth item\",\n icon: \"exercises-online\",\n category: \"Category A\",\n subcategory: \"Subcategory A1\",\n },\n {\n label: \"fifth item\",\n icon: \"interactives-maps\",\n category: \"Category A\",\n subcategory: \"Subcategory A1\",\n },\n {\n label: \"sixth item\",\n icon: \"textual-analysis\",\n category: \"Category B\",\n subcategory: \"Subcategory B1\",\n },\n ],\n },\n render: (args) => html`\n <z-searchbar\n prevent-submit=${args.preventSubmit}\n show-search-button=${args.showSearchButton}\n search-button-icon-only=${args.searchButtonIconOnly}\n autocomplete=${args.autocomplete}\n autocomplete-min-chars=${args.autocompleteMinChars}\n results-count=${args.resultsCount}\n results-ellipsis=${args.resultsEllipsis}\n search-helper-label=${args.searchHelperLabel}\n results-items=${JSON.stringify(args.resultsItems)}\n sort-results-items=${JSON.stringify(args.sortResultsItems)}\n value=${args.value}\n placeholder=${args.placeholder}\n htmlid=${args.htmlid}\n style=\"--z-searchbar-results-height: ${args[\n \"--z-searchbar-results-height\"\n ]}; --z-searchbar-tag-text-color: ${args[\"--z-searchbar-tag-text-color\"]}; --z-searchbar-tag-bg: ${args[\n \"--z-searchbar-tag-bg\"\n ]}\"\n size=${args.size}\n variant=${args.variant}\n ></z-searchbar>\n `,\n} satisfies Story;\n"]}
1
+ {"version":3,"file":"index.stories.js","sourceRoot":"","sources":["../../../../src/components/z-searchbar/index.stories.ts"],"names":[],"mappings":"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","sourcesContent":["import {Meta, StoryObj} from \"@storybook/web-components\";\nimport {html} from \"lit\";\nimport {type ZSearchbar} from \".\";\nimport {ButtonVariant, ControlSize} from \"../../beans\";\nimport {CSSVarsArguments} from \"../../utils/storybook-utils\";\nimport \"./index\";\n\ntype ZSearchbarStoriesArgs = ZSearchbar &\n CSSVarsArguments<\"--z-searchbar-results-height\" | \"--z-searchbar-tag-text-color\" | \"--z-searchbar-tag-bg\">;\n\nconst StoryMeta = {\n title: \"ZSearchbar\",\n component: \"z-searchbar\",\n argTypes: {\n size: {\n control: {\n type: \"inline-radio\",\n },\n options: Object.values(ControlSize),\n },\n variant: {\n control: {\n type: \"inline-radio\",\n },\n options: Object.values(ButtonVariant),\n },\n },\n args: {\n \"preventSubmit\": false,\n \"showSearchButton\": false,\n \"searchButtonIconOnly\": false,\n \"autocomplete\": false,\n \"autocompleteMinChars\": 3,\n \"resultsCount\": null,\n \"searchHelperLabel\": \"Cerca {searchString}\",\n \"resultsItems\": [\n {\n label: \"first item\",\n },\n {\n label: \"second item\",\n },\n {\n label: \"third item\",\n },\n {\n label: \"fourth item\",\n },\n ],\n \"sortResultsItems\": false,\n \"htmlid\": \"myId\",\n \"placeholder\": \"my placeholder\",\n \"value\": \"\",\n \"--z-searchbar-results-height\": \"\",\n \"--z-searchbar-tag-text-color\": \"var(--color-primary03)\",\n \"--z-searchbar-tag-bg\": \"var(--color-hover-primary)\",\n \"size\": ControlSize.BIG,\n \"variant\": ButtonVariant.PRIMARY,\n },\n} satisfies Meta<ZSearchbarStoriesArgs>;\n\nexport default StoryMeta;\n\ntype Story = StoryObj<ZSearchbarStoriesArgs>;\n\nexport const Default = {\n render: (args) => html`\n <z-searchbar\n prevent-submit=${args.preventSubmit}\n show-search-button=${args.showSearchButton}\n search-button-icon-only=${args.searchButtonIconOnly}\n autocomplete=${args.autocomplete}\n autocomplete-min-chars=${args.autocompleteMinChars}\n results-count=${args.resultsCount}\n search-helper-label=${args.searchHelperLabel}\n results-items=${JSON.stringify(args.resultsItems)}\n sort-results-items=${JSON.stringify(args.sortResultsItems)}\n value=${args.value}\n placeholder=${args.placeholder}\n htmlid=${args.htmlid}\n style=\"--z-searchbar-results-height: ${args[\"--z-searchbar-results-height\"]}\"\n size=${args.size}\n variant=${args.variant}\n ></z-searchbar>\n `,\n} satisfies Story;\n\nexport const SimpleSearch = {\n parameters: {\n controls: {\n include: [\"value\", \"placeholder\", \"htmlid\", \"size\"],\n },\n },\n args: {\n htmlid: \"myIdSimple\",\n },\n render: (args) => html`\n <z-searchbar\n prevent-submit=\"false\"\n show-search-button=${args.showSearchButton}\n search-button-icon-only=${args.searchButtonIconOnly}\n autcomplete=\"false\"\n value=${args.value}\n placeholder=${args.placeholder}\n htmlid=${args.htmlid}\n size=${args.size}\n ></z-searchbar>\n `,\n} satisfies Story;\n\nexport const Autocomplete = {\n args: {\n autocomplete: true,\n htmlid: \"myIdAutocomplete\",\n showSearchButton: false,\n searchButtonIconOnly: false,\n },\n render: (args) => html`\n <z-searchbar\n prevent-submit=${args.preventSubmit}\n show-search-button=${args.showSearchButton}\n search-button-icon-only=${args.searchButtonIconOnly}\n autocomplete=${args.autocomplete}\n autocomplete-min-chars=${args.autocompleteMinChars}\n results-count=${args.resultsCount}\n search-helper-label=${args.searchHelperLabel}\n results-items=${JSON.stringify(args.resultsItems)}\n sort-results-items=${JSON.stringify(args.sortResultsItems)}\n value=${args.value}\n placeholder=${args.placeholder}\n htmlid=${args.htmlid}\n style=\"--z-searchbar-results-height: ${args[\"--z-searchbar-results-height\"]}\"\n size=${args.size}\n variant=${args.variant}\n ></z-searchbar>\n `,\n} satisfies Story;\n\nexport const AutocompleteWithComplexItems = {\n args: {\n autocomplete: true,\n htmlid: \"myIdGroupedAutocomplete\",\n showSearchButton: false,\n searchButtonIconOnly: false,\n resultsItems: [\n {\n label: \"first item\",\n icon: \"download\",\n tag: {\n text: \"Riservato all'insegnante\",\n icon: \"teacher\",\n },\n category: \"Category A\",\n subcategory: \"Subcategory A1\",\n },\n {\n label: \"second item\",\n icon: \"collezioni\",\n category: \"Category B\",\n subcategory: \"Subcategory B1\",\n },\n {\n label: \"third item\",\n icon: \"dictonary\",\n category: \"Category A\",\n subcategory: \"Subcategory A2\",\n },\n {\n label: \"fourth item\",\n icon: \"exercises-online\",\n category: \"Category A\",\n subcategory: \"Subcategory A1\",\n },\n {\n label: \"fifth item\",\n icon: \"interactives-maps\",\n category: \"Category A\",\n subcategory: \"Subcategory A1\",\n },\n {\n label: \"sixth item\",\n icon: \"textual-analysis\",\n category: \"Category B\",\n subcategory: \"Subcategory B1\",\n },\n ],\n },\n render: (args) => html`\n <z-searchbar\n prevent-submit=${args.preventSubmit}\n show-search-button=${args.showSearchButton}\n search-button-icon-only=${args.searchButtonIconOnly}\n autocomplete=${args.autocomplete}\n autocomplete-min-chars=${args.autocompleteMinChars}\n results-count=${args.resultsCount}\n search-helper-label=${args.searchHelperLabel}\n results-items=${JSON.stringify(args.resultsItems)}\n sort-results-items=${JSON.stringify(args.sortResultsItems)}\n value=${args.value}\n placeholder=${args.placeholder}\n htmlid=${args.htmlid}\n style=\"--z-searchbar-results-height: ${args[\n \"--z-searchbar-results-height\"\n ]}; --z-searchbar-tag-text-color: ${args[\"--z-searchbar-tag-text-color\"]}; --z-searchbar-tag-bg: ${args[\n \"--z-searchbar-tag-bg\"\n ]}\"\n size=${args.size}\n variant=${args.variant}\n ></z-searchbar>\n `,\n} satisfies Story;\n\nexport const AutocompleteWithComplexTreeItems = {\n args: {\n autocomplete: true,\n htmlid: \"myIdGroupedAutocomplete\",\n showSearchButton: false,\n searchButtonIconOnly: false,\n resultsItems: [\n {\n label: \"first item\",\n icon: \"download\",\n tag: {\n text: \"Riservato all'insegnante\",\n icon: \"teacher\",\n },\n category: \"Category A\",\n subcategory: \"Subcategory A1\",\n children: [\n {\n label: \"first item - first child\",\n icon: \"download\",\n tag: {\n text: \"Riservato all'insegnante\",\n icon: \"teacher\",\n },\n children: [\n {\n label:\n \"first item - first child - first child lunghissssssssssssssss sssssssssssssssssss ssssssssssssssssssssssssssssss ssssssssssssssssssssssssssssssssssssssssssssssssssssimo\",\n icon: \"download\",\n tag: {\n text: \"Riservato all'insegnante\",\n icon: \"teacher\",\n },\n },\n {\n label: \"first item - first child - second child\",\n icon: \"download\",\n tag: {\n text: \"Riservato all'insegnante\",\n icon: \"teacher\",\n },\n },\n {\n label: \"first item - first child - third child\",\n icon: \"download\",\n tag: {\n text: \"Riservato all'insegnante\",\n icon: \"teacher\",\n },\n },\n ],\n },\n {\n label: \"first item - second child\",\n icon: \"download\",\n tag: {\n text: \"Riservato all'insegnante\",\n icon: \"teacher\",\n },\n },\n ],\n },\n {\n label: \"second item\",\n icon: \"collezioni\",\n category: \"Category B\",\n subcategory: \"Subcategory B1\",\n },\n {\n label: \"third item\",\n icon: \"dictonary\",\n category: \"Category A\",\n subcategory: \"Subcategory A2\",\n },\n {\n label: \"fourth item\",\n icon: \"exercises-online\",\n category: \"Category A\",\n subcategory: \"Subcategory A1\",\n },\n {\n label: \"fifth item\",\n icon: \"interactives-maps\",\n category: \"Category A\",\n subcategory: \"Subcategory A1\",\n children: [\n {\n label: \"fifth item - first child\",\n icon: \"download\",\n tag: {\n text: \"Riservato all'insegnante\",\n icon: \"teacher\",\n },\n },\n {\n label: \"fifth item - second child\",\n icon: \"download\",\n tag: {\n text: \"Riservato all'insegnante\",\n icon: \"teacher\",\n },\n },\n ],\n },\n {\n label: \"sixth item\",\n icon: \"textual-analysis\",\n category: \"Category B\",\n subcategory: \"Subcategory B1\",\n },\n ],\n },\n render: (args) => html`\n <z-searchbar\n prevent-submit=${args.preventSubmit}\n show-search-button=${args.showSearchButton}\n search-button-icon-only=${args.searchButtonIconOnly}\n autocomplete=${args.autocomplete}\n autocomplete-min-chars=${args.autocompleteMinChars}\n results-count=${args.resultsCount}\n search-helper-label=${args.searchHelperLabel}\n results-items=${JSON.stringify(args.resultsItems)}\n sort-results-items=${JSON.stringify(args.sortResultsItems)}\n value=${args.value}\n placeholder=${args.placeholder}\n htmlid=${args.htmlid}\n style=\"--z-searchbar-results-height: ${args[\n \"--z-searchbar-results-height\"\n ]}; --z-searchbar-tag-text-color: ${args[\"--z-searchbar-tag-text-color\"]}; --z-searchbar-tag-bg: ${args[\n \"--z-searchbar-tag-bg\"\n ]}\"\n size=${args.size}\n variant=${args.variant}\n ></z-searchbar>\n `,\n} satisfies Story;\n"]}
@@ -1,6 +1,7 @@
1
1
  :host {
2
2
  --z-searchbar-tag-text-color: var(--color-primary03);
3
3
  --z-searchbar-tag-bg: var(--color-hover-primary);
4
+ --z-searchbar-item-height: 44px;
4
5
 
5
6
  z-index: 15;
6
7
  display: flex;
@@ -14,6 +15,12 @@
14
15
  box-sizing: border-box;
15
16
  }
16
17
 
18
+ :host::part(list-item-container) {
19
+ display: block;
20
+ min-height: unset;
21
+ padding: 0;
22
+ }
23
+
17
24
  .input-container {
18
25
  position: relative;
19
26
  display: flex;
@@ -78,12 +85,80 @@
78
85
  }
79
86
 
80
87
  .results z-list-element {
88
+ position: relative;
81
89
  display: block;
82
90
  }
83
91
 
92
+ z-list-element > .item-search {
93
+ padding: var(--space-unit) 0;
94
+ }
95
+
96
+ z-list z-list-element::before {
97
+ position: absolute;
98
+ z-index: 100;
99
+ top: 5px;
100
+ left: -20px;
101
+ width: 8px;
102
+ height: 1em;
103
+ border-bottom: 1px solid var(--color-disabled01-icon);
104
+ border-left: 1px solid var(--color-disabled01-icon);
105
+ content: "";
106
+ cursor: pointer;
107
+ }
108
+
109
+ z-list z-list-element::after {
110
+ position: absolute;
111
+ z-index: 100;
112
+ top: 5px;
113
+ left: -20px;
114
+ width: 8px;
115
+ height: 100%;
116
+ border-left: 1px solid var(--color-disabled01-icon);
117
+ content: "";
118
+ cursor: pointer;
119
+ }
120
+
121
+ z-list z-list-element:last-child::after {
122
+ display: none;
123
+ }
124
+
125
+ z-list > z-list-element::before,
126
+ z-list > z-list-element::after,
127
+ z-list > z-list-group > z-list-element::before,
128
+ z-list > z-list-group > z-list-element::after {
129
+ display: none;
130
+ }
131
+
132
+ z-list > div.children-node {
133
+ padding-left: calc(var(--space-unit) * 3);
134
+ }
135
+
84
136
  .results z-list-element > .list-element {
85
137
  display: flex;
86
138
  justify-content: space-between;
139
+ padding: calc(var(--space-unit) * 1.25) 0;
140
+ cursor: pointer;
141
+ }
142
+
143
+ .results z-list-element > .list-element .item.ellipsis {
144
+ overflow: hidden;
145
+ }
146
+
147
+ .results z-list-element .list-element::after {
148
+ position: absolute;
149
+ top: 0;
150
+ right: 0;
151
+ display: block;
152
+ width: 100%;
153
+ height: 44px;
154
+ content: "";
155
+ transform: translateX(-100%);
156
+ }
157
+
158
+ .results z-list-element > .list-element:hover,
159
+ .results z-list-element > .list-element:hover::after {
160
+ background-color: var(--color-surface02);
161
+ cursor: pointer;
87
162
  }
88
163
 
89
164
  .results z-list-element > .list-element > z-tag {
@@ -107,7 +182,7 @@
107
182
  column-gap: calc(var(--space-unit) * 1.5);
108
183
  fill: var(--color-default-icon);
109
184
  font-size: var(--font-size-2);
110
- line-height: var(--font-size-3);
185
+ line-height: var(--font-size-6);
111
186
  }
112
187
 
113
188
  .results .item.ellipsis > .item-label {
@@ -120,10 +195,6 @@
120
195
  background: var(--color-primary03);
121
196
  }
122
197
 
123
- .results .item.has-category {
124
- padding-left: calc(var(--space-unit) * 3);
125
- }
126
-
127
198
  .results .item.item-search {
128
199
  --z-icon-height: 16px;
129
200
  --z-icon-width: 16px;
@@ -165,6 +236,10 @@
165
236
  .results .item.ellipsis > .item-label {
166
237
  height: 24px;
167
238
  }
239
+
240
+ .results z-list-element > .list-element > z-tag {
241
+ min-width: max-content;
242
+ }
168
243
  }
169
244
 
170
245
  /* Desktop breakpoint */
@@ -191,12 +266,20 @@
191
266
  --z-icon-width: 16px;
192
267
  }
193
268
 
194
- :host([size="small"])::part(list-item-container) {
195
- min-height: calc(var(--space-unit) * 4.5);
196
- padding: 0;
269
+ :host([size="small"]) z-list-element > .list-element,
270
+ :host([size="small"]) z-list-element > .item-search {
271
+ padding: calc(var(--space-unit) * 0.75) 0;
197
272
  }
198
273
 
199
- :host([size="x-small"])::part(list-item-container) {
200
- min-height: calc(var(--space-unit) * 4);
201
- padding: 0;
274
+ :host([size="x-small"]) z-list-element > .list-element,
275
+ :host([size="x-small"]) z-list-element > .item-search {
276
+ padding: calc(var(--space-unit) / 2) 0;
277
+ }
278
+
279
+ :host([size="small"]) z-list-element .list-element::after {
280
+ height: 36px;
281
+ }
282
+
283
+ :host([size="x-small"]) z-list-element .list-element::after {
284
+ height: 32px;
202
285
  }
@@ -0,0 +1,90 @@
1
+ import { newE2EPage } from "@stencil/core/testing";
2
+ describe("z-searchbar test end2end", () => {
3
+ it("Emit searchTyping event", async () => {
4
+ const page = await newE2EPage();
5
+ await page.setContent(`
6
+ <z-searchbar placeholder="Cerca" search-button-label="Cerca"></z-searchbar>
7
+ `);
8
+ const searchbar = await page.find("z-searchbar");
9
+ const input = await page.find("z-searchbar >>> z-input div input");
10
+ const searchTypingEvent = await page.spyOnEvent("searchTyping");
11
+ expect(searchbar).not.toBeNull();
12
+ expect(input).not.toBeNull();
13
+ await input.type("A");
14
+ await page.waitForChanges();
15
+ await page.waitForEvent("searchTyping");
16
+ expect(searchTypingEvent).toHaveReceivedEvent();
17
+ });
18
+ it("Emit searchSubmit event", async () => {
19
+ const page = await newE2EPage();
20
+ await page.setContent(`
21
+ <z-searchbar placeholder="Cerca" show-search-button="true"></z-searchbar>
22
+ `);
23
+ const searchbar = await page.find("z-searchbar");
24
+ const input = await page.find("z-searchbar >>> z-input div input");
25
+ const button = await page.find("z-searchbar >>> z-button");
26
+ const searchSubmitEvent = await page.spyOnEvent("searchSubmit");
27
+ expect(searchbar).not.toBeNull();
28
+ expect(input).not.toBeNull();
29
+ await input.type("Test");
30
+ await page.waitForChanges();
31
+ await button.click();
32
+ await page.waitForChanges();
33
+ expect(searchSubmitEvent).toHaveReceivedEvent();
34
+ });
35
+ it("Emit searchItemClick event with basic items structure", async () => {
36
+ const page = await newE2EPage();
37
+ const items = JSON.stringify([
38
+ {
39
+ label: "first item",
40
+ },
41
+ {
42
+ label: "second item",
43
+ },
44
+ {
45
+ label: "third item",
46
+ },
47
+ {
48
+ label: "fourth item",
49
+ },
50
+ ]);
51
+ await page.setContent(`
52
+ <z-searchbar
53
+ prevent-submit="false"
54
+ show-search-button="false"
55
+ search-button-icon-only="false"
56
+ autocomplete="true"
57
+ autocomplete-min-chars="3"
58
+ results-count=""
59
+ results-items='${items}'
60
+ results-ellipsis="true"
61
+ search-helper-label="Cerca {searchString}"
62
+ sort-results-items="false"
63
+ value=""
64
+ placeholder="my placeholder"
65
+ htmlid="myIdAutocomplete"
66
+ style="
67
+ --z-searchbar-results-height: ;
68
+ --z-searchbar-tag-text-color: var(--color-primary03);
69
+ --z-searchbar-tag-bg: var(--color-hover-primary);
70
+ "
71
+ size="big"
72
+ variant="primary"
73
+ ></z-searchbar>
74
+ `);
75
+ const searchbar = await page.find("z-searchbar");
76
+ const input = await page.find("z-searchbar >>> z-input div input");
77
+ const searchItemClickEvent = await page.spyOnEvent("searchItemClick");
78
+ expect(searchbar).not.toBeNull();
79
+ expect(input).not.toBeNull();
80
+ await input.type("Test");
81
+ await page.waitForChanges();
82
+ await page.waitForEvent("searchTyping");
83
+ const item = await page.find("z-searchbar >>> #list-item-myIdAutocomplete-0");
84
+ expect(item).not.toBeNull();
85
+ await item.click();
86
+ await page.waitForChanges();
87
+ expect(searchItemClickEvent).toHaveReceivedEvent();
88
+ });
89
+ });
90
+ //# sourceMappingURL=test.e2e.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test.e2e.js","sourceRoot":"","sources":["../../../../src/components/z-searchbar/test.e2e.ts"],"names":[],"mappings":"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","sourcesContent":["import {newE2EPage} from \"@stencil/core/testing\";\n\ndescribe(\"z-searchbar test end2end\", () => {\n it(\"Emit searchTyping event\", async () => {\n const page = await newE2EPage();\n await page.setContent(`\n <z-searchbar placeholder=\"Cerca\" search-button-label=\"Cerca\"></z-searchbar>\n `);\n const searchbar = await page.find(\"z-searchbar\");\n const input = await page.find(\"z-searchbar >>> z-input div input\");\n const searchTypingEvent = await page.spyOnEvent(\"searchTyping\");\n\n expect(searchbar).not.toBeNull();\n expect(input).not.toBeNull();\n\n await input.type(\"A\");\n await page.waitForChanges();\n await page.waitForEvent(\"searchTyping\");\n\n expect(searchTypingEvent).toHaveReceivedEvent();\n });\n\n it(\"Emit searchSubmit event\", async () => {\n const page = await newE2EPage();\n await page.setContent(`\n <z-searchbar placeholder=\"Cerca\" show-search-button=\"true\"></z-searchbar>\n `);\n const searchbar = await page.find(\"z-searchbar\");\n const input = await page.find(\"z-searchbar >>> z-input div input\");\n const button = await page.find(\"z-searchbar >>> z-button\");\n const searchSubmitEvent = await page.spyOnEvent(\"searchSubmit\");\n\n expect(searchbar).not.toBeNull();\n expect(input).not.toBeNull();\n\n await input.type(\"Test\");\n await page.waitForChanges();\n\n await button.click();\n await page.waitForChanges();\n\n expect(searchSubmitEvent).toHaveReceivedEvent();\n });\n\n it(\"Emit searchItemClick event with basic items structure\", async () => {\n const page = await newE2EPage();\n const items = JSON.stringify([\n {\n label: \"first item\",\n },\n {\n label: \"second item\",\n },\n {\n label: \"third item\",\n },\n {\n label: \"fourth item\",\n },\n ]);\n await page.setContent(`\n <z-searchbar\n prevent-submit=\"false\"\n show-search-button=\"false\"\n search-button-icon-only=\"false\"\n autocomplete=\"true\"\n autocomplete-min-chars=\"3\"\n results-count=\"\"\n results-items='${items}'\n results-ellipsis=\"true\"\n search-helper-label=\"Cerca {searchString}\"\n sort-results-items=\"false\"\n value=\"\"\n placeholder=\"my placeholder\"\n htmlid=\"myIdAutocomplete\"\n style=\"\n --z-searchbar-results-height: ;\n --z-searchbar-tag-text-color: var(--color-primary03);\n --z-searchbar-tag-bg: var(--color-hover-primary);\n \"\n size=\"big\"\n variant=\"primary\"\n ></z-searchbar>\n `);\n const searchbar = await page.find(\"z-searchbar\");\n const input = await page.find(\"z-searchbar >>> z-input div input\");\n const searchItemClickEvent = await page.spyOnEvent(\"searchItemClick\");\n\n expect(searchbar).not.toBeNull();\n expect(input).not.toBeNull();\n\n await input.type(\"Test\");\n await page.waitForChanges();\n await page.waitForEvent(\"searchTyping\");\n\n const item = await page.find(\"z-searchbar >>> #list-item-myIdAutocomplete-0\");\n expect(item).not.toBeNull();\n\n await item.click();\n await page.waitForChanges();\n\n expect(searchItemClickEvent).toHaveReceivedEvent();\n });\n});\n"]}
@@ -265,10 +265,10 @@ export class ZSelect {
265
265
  }, onKeyDown: (e) => this.arrowsSelectNav(e, 0) }, h("div", { class: "reset-item-content" }, h("z-icon", { name: "multiply-circled" }), h("span", null, this.resetItem))));
266
266
  }
267
267
  renderItem(item, key, lastItem) {
268
- return (h("z-list-element", { clickable: !item.disabled, disabled: item.disabled, dividerType: lastItem ? ListDividerType.HEADER : ListDividerType.ELEMENT, role: "option", tabindex: item.disabled || !this.isOpen ? -1 : 0, "aria-selected": item.selected ? "true" : "false", id: `${this.htmlid}_${key}`, size: this.listSizeType(), onClickItem: () => this.selectItem(item, true), onKeyDown: (e) => this.arrowsSelectNav(e, key) }, h("div", { class: "list-element-container" }, item.icon && h("z-icon", { name: item.icon }), h("span", { class: {
268
+ return (h("z-list-element", { clickable: !item.disabled, disabled: item.disabled, dividerType: lastItem ? ListDividerType.HEADER : ListDividerType.ELEMENT, role: "option", tabindex: item.disabled || !this.isOpen ? -1 : 0, "aria-selected": item.selected ? "true" : "false", id: `${this.htmlid}_${key}`, size: this.listSizeType(), onClickItem: () => this.selectItem(item, true), onKeyDown: (e) => this.arrowsSelectNav(e, key) }, h("div", { class: "list-element-container" }, h("span", { class: {
269
269
  "selected": !!item.selected,
270
270
  "list-element-content": true,
271
- }, innerHTML: item.name }))));
271
+ }, innerHTML: item.name }), item.icon && h("z-tag", { icon: item.icon }))));
272
272
  }
273
273
  listSizeType() {
274
274
  if (this.size === ControlSize.SMALL || this.size === ControlSize.X_SMALL) {
@@ -314,7 +314,7 @@ export class ZSelect {
314
314
  return (h("z-input-message", { message: boolean(this.message) === true ? undefined : this.message, status: this.status, class: this.size }));
315
315
  }
316
316
  render() {
317
- return (h("div", { key: '7cff5f68badfbedf3c8f6e9a5d8bbdaa89ed8a98', class: "select-wrapper" }, this.renderInput(), this.renderSelectUl(), this.renderMessage()));
317
+ return (h("div", { key: '16a8b264460cb21cd19258694e04f7c58ca5bc26', class: "select-wrapper" }, this.renderInput(), this.renderSelectUl(), this.renderMessage()));
318
318
  }
319
319
  static get is() { return "z-select"; }
320
320
  static get encapsulation() { return "scoped"; }