@sankhyalabs/ezui 0.0.0-bugfix-dev-KB-86600.1 → 0.0.0-bugfix-dev-KB-86904.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 (262) hide show
  1. package/dist/cjs/{types-6a5df0c7.js → FormLayout-18853e70.js} +6 -0
  2. package/dist/cjs/ez-actions-button.cjs.entry.js +3 -4
  3. package/dist/cjs/ez-alert-list.cjs.entry.js +1 -1
  4. package/dist/cjs/ez-alert.cjs.entry.js +1 -1
  5. package/dist/cjs/ez-application.cjs.entry.js +1 -1
  6. package/dist/cjs/ez-avatar.cjs.entry.js +50 -0
  7. package/dist/cjs/ez-badge.cjs.entry.js +1 -1
  8. package/dist/cjs/ez-breadcrumb.cjs.entry.js +1 -1
  9. package/dist/cjs/ez-button.cjs.entry.js +2 -2
  10. package/dist/cjs/ez-calendar.cjs.entry.js +1 -1
  11. package/dist/cjs/ez-card-item_2.cjs.entry.js +13 -16
  12. package/dist/cjs/ez-chart.cjs.entry.js +1 -1
  13. package/dist/cjs/ez-check.cjs.entry.js +2 -2
  14. package/dist/cjs/ez-chip.cjs.entry.js +1 -1
  15. package/dist/cjs/ez-collapsible-box.cjs.entry.js +3 -4
  16. package/dist/cjs/ez-combo-box-list_3.cjs.entry.js +4 -5
  17. package/dist/cjs/ez-combo-box.cjs.entry.js +7 -8
  18. package/dist/cjs/ez-date-input.cjs.entry.js +1 -1
  19. package/dist/cjs/ez-date-time-input.cjs.entry.js +1 -1
  20. package/dist/cjs/ez-dialog.cjs.entry.js +1 -1
  21. package/dist/cjs/ez-double-list.cjs.entry.js +1 -1
  22. package/dist/cjs/ez-dropdown.cjs.entry.js +2 -2
  23. package/dist/cjs/ez-file-item.cjs.entry.js +1 -1
  24. package/dist/cjs/ez-filter-input.cjs.entry.js +1 -1
  25. package/dist/cjs/ez-form-view.cjs.entry.js +1 -1
  26. package/dist/cjs/ez-form.cjs.entry.js +61 -6
  27. package/dist/cjs/ez-grid.cjs.entry.js +80 -17
  28. package/dist/cjs/ez-guide-navigator.cjs.entry.js +1 -1
  29. package/dist/cjs/ez-icon.cjs.entry.js +12 -6
  30. package/dist/cjs/ez-list.cjs.entry.js +2 -2
  31. package/dist/cjs/ez-loading-bar.cjs.entry.js +1 -1
  32. package/dist/cjs/ez-modal-container.cjs.entry.js +2 -2
  33. package/dist/cjs/ez-modal.cjs.entry.js +1 -1
  34. package/dist/cjs/ez-multi-selection-list.cjs.entry.js +1 -1
  35. package/dist/cjs/ez-number-input.cjs.entry.js +1 -1
  36. package/dist/cjs/ez-popover-plus_3.cjs.entry.js +32 -3
  37. package/dist/cjs/ez-popover.cjs.entry.js +1 -1
  38. package/dist/cjs/ez-popup.cjs.entry.js +1 -1
  39. package/dist/cjs/ez-radio-button.cjs.entry.js +1 -1
  40. package/dist/cjs/ez-scroller_2.cjs.entry.js +1 -1
  41. package/dist/cjs/ez-search-plus.cjs.entry.js +5 -6
  42. package/dist/cjs/ez-search-result-list.cjs.entry.js +1 -1
  43. package/dist/cjs/ez-search.cjs.entry.js +14 -4
  44. package/dist/cjs/ez-sidebar-navigator.cjs.entry.js +1 -1
  45. package/dist/cjs/ez-skeleton.cjs.entry.js +119 -37
  46. package/dist/cjs/ez-split-button.cjs.entry.js +16 -7
  47. package/dist/cjs/ez-split-item.cjs.entry.js +2 -3
  48. package/dist/cjs/ez-split-panel.cjs.entry.js +1 -1
  49. package/dist/cjs/ez-tabselector.cjs.entry.js +1 -1
  50. package/dist/cjs/ez-text-area.cjs.entry.js +1 -1
  51. package/dist/cjs/ez-text-input.cjs.entry.js +17 -3
  52. package/dist/cjs/ez-time-input.cjs.entry.js +1 -1
  53. package/dist/cjs/ez-toast.cjs.entry.js +1 -1
  54. package/dist/cjs/ez-tooltip.cjs.entry.js +3 -3
  55. package/dist/cjs/ez-tree.cjs.entry.js +1 -1
  56. package/dist/cjs/ez-upload.cjs.entry.js +1 -1
  57. package/dist/cjs/ez-view-stack.cjs.entry.js +1 -1
  58. package/dist/cjs/ezui.cjs.js +2 -2
  59. package/dist/cjs/filter-column.cjs.entry.js +1 -2
  60. package/dist/cjs/{index-a7b0c73d.js → index-9e5554cb.js} +7 -0
  61. package/dist/cjs/loader.cjs.js +2 -2
  62. package/dist/cjs/{DataBinder-b9973a19.js → search-column-1d3c9fa5.js} +31 -0
  63. package/dist/collection/collection-manifest.json +1 -0
  64. package/dist/collection/components/ez-actions-button/ez-actions-button.css +2 -0
  65. package/dist/collection/components/ez-avatar/ez-avatar.css +139 -0
  66. package/dist/collection/components/ez-avatar/ez-avatar.js +143 -0
  67. package/dist/collection/components/ez-button/ez-button.css +2 -2
  68. package/dist/collection/components/ez-check/ez-check.css +1 -1
  69. package/dist/collection/components/ez-collapsible-box/ez-collapsible-box.css +2 -1
  70. package/dist/collection/components/ez-combo-box/ez-combo-box.js +5 -5
  71. package/dist/collection/components/ez-dropdown/ez-dropdown.js +1 -1
  72. package/dist/collection/components/ez-form/ez-form.js +95 -2
  73. package/dist/collection/components/ez-grid/controller/ag-grid/AgGridController.js +25 -2
  74. package/dist/collection/components/ez-grid/ez-grid.css +8 -0
  75. package/dist/collection/components/ez-grid/ez-grid.js +84 -6
  76. package/dist/collection/components/ez-grid/subcomponents/filter-column.js +0 -1
  77. package/dist/collection/components/ez-icon/ez-icon.js +28 -5
  78. package/dist/collection/components/ez-list/ez-list.css +1 -0
  79. package/dist/collection/components/ez-modal-container/ez-modal-container.css +2 -1
  80. package/dist/collection/components/ez-popover-plus/subcomponent/ez-popover-core.js +12 -15
  81. package/dist/collection/components/ez-search/ez-search.js +12 -1
  82. package/dist/collection/components/ez-search/subcomponent/search-list/search-list.js +31 -2
  83. package/dist/collection/components/ez-search-plus/ez-search-plus.js +16 -40
  84. package/dist/collection/components/ez-skeleton/ez-skeleton.constants.js +25 -1
  85. package/dist/collection/components/ez-skeleton/ez-skeleton.css +122 -80
  86. package/dist/collection/components/ez-skeleton/ez-skeleton.js +210 -46
  87. package/dist/collection/components/ez-split-button/ez-split-button.css +1 -1
  88. package/dist/collection/components/ez-split-button/ez-split-button.js +87 -10
  89. package/dist/collection/components/ez-text-input/ez-text-input.css +7 -0
  90. package/dist/collection/components/ez-text-input/ez-text-input.js +15 -1
  91. package/dist/collection/components/ez-tooltip/ez-tooltip.css +1 -0
  92. package/dist/collection/components/ez-tooltip/ez-tooltip.js +2 -2
  93. package/dist/collection/utils/index.js +1 -0
  94. package/dist/collection/utils/searchColumn/search-column.js +35 -0
  95. package/dist/custom-elements/index.d.ts +6 -0
  96. package/dist/custom-elements/index.js +434 -98
  97. package/dist/esm/{types-6f6b2650.js → FormLayout-071d324c.js} +7 -1
  98. package/dist/esm/ez-actions-button.entry.js +3 -4
  99. package/dist/esm/ez-alert-list.entry.js +1 -1
  100. package/dist/esm/ez-alert.entry.js +1 -1
  101. package/dist/esm/ez-application.entry.js +1 -1
  102. package/dist/esm/ez-avatar.entry.js +46 -0
  103. package/dist/esm/ez-badge.entry.js +1 -1
  104. package/dist/esm/ez-breadcrumb.entry.js +1 -1
  105. package/dist/esm/ez-button.entry.js +2 -2
  106. package/dist/esm/ez-calendar.entry.js +1 -1
  107. package/dist/esm/ez-card-item_2.entry.js +13 -16
  108. package/dist/esm/ez-chart.entry.js +1 -1
  109. package/dist/esm/ez-check.entry.js +2 -2
  110. package/dist/esm/ez-chip.entry.js +1 -1
  111. package/dist/esm/ez-collapsible-box.entry.js +3 -4
  112. package/dist/esm/ez-combo-box-list_3.entry.js +3 -4
  113. package/dist/esm/ez-combo-box.entry.js +7 -8
  114. package/dist/esm/ez-date-input.entry.js +1 -1
  115. package/dist/esm/ez-date-time-input.entry.js +1 -1
  116. package/dist/esm/ez-dialog.entry.js +1 -1
  117. package/dist/esm/ez-double-list.entry.js +1 -1
  118. package/dist/esm/ez-dropdown.entry.js +2 -2
  119. package/dist/esm/ez-file-item.entry.js +1 -1
  120. package/dist/esm/ez-filter-input.entry.js +1 -1
  121. package/dist/esm/ez-form-view.entry.js +1 -1
  122. package/dist/esm/ez-form.entry.js +60 -5
  123. package/dist/esm/ez-grid.entry.js +75 -12
  124. package/dist/esm/ez-guide-navigator.entry.js +1 -1
  125. package/dist/esm/ez-icon.entry.js +12 -6
  126. package/dist/esm/ez-list.entry.js +2 -2
  127. package/dist/esm/ez-loading-bar.entry.js +1 -1
  128. package/dist/esm/ez-modal-container.entry.js +2 -2
  129. package/dist/esm/ez-modal.entry.js +1 -1
  130. package/dist/esm/ez-multi-selection-list.entry.js +1 -1
  131. package/dist/esm/ez-number-input.entry.js +1 -1
  132. package/dist/esm/ez-popover-plus_3.entry.js +32 -3
  133. package/dist/esm/ez-popover.entry.js +1 -1
  134. package/dist/esm/ez-popup.entry.js +1 -1
  135. package/dist/esm/ez-radio-button.entry.js +1 -1
  136. package/dist/esm/ez-scroller_2.entry.js +1 -1
  137. package/dist/esm/ez-search-plus.entry.js +2 -3
  138. package/dist/esm/ez-search-result-list.entry.js +1 -1
  139. package/dist/esm/ez-search.entry.js +14 -4
  140. package/dist/esm/ez-sidebar-navigator.entry.js +1 -1
  141. package/dist/esm/ez-skeleton.entry.js +119 -37
  142. package/dist/esm/ez-split-button.entry.js +16 -7
  143. package/dist/esm/ez-split-item.entry.js +2 -3
  144. package/dist/esm/ez-split-panel.entry.js +1 -1
  145. package/dist/esm/ez-tabselector.entry.js +1 -1
  146. package/dist/esm/ez-text-area.entry.js +1 -1
  147. package/dist/esm/ez-text-input.entry.js +17 -3
  148. package/dist/esm/ez-time-input.entry.js +1 -1
  149. package/dist/esm/ez-toast.entry.js +1 -1
  150. package/dist/esm/ez-tooltip.entry.js +3 -3
  151. package/dist/esm/ez-tree.entry.js +1 -1
  152. package/dist/esm/ez-upload.entry.js +1 -1
  153. package/dist/esm/ez-view-stack.entry.js +1 -1
  154. package/dist/esm/ezui.js +3 -3
  155. package/dist/esm/filter-column.entry.js +1 -2
  156. package/dist/esm/{index-baa5e267.js → index-5a720e56.js} +7 -1
  157. package/dist/esm/loader.js +3 -3
  158. package/dist/esm/{DataBinder-1035e36f.js → search-column-35f4ad93.js} +26 -1
  159. package/dist/ezui/ezui.esm.js +1 -1
  160. package/dist/ezui/{p-e75c7a23.entry.js → p-000159dc.entry.js} +1 -1
  161. package/dist/ezui/p-01b72d7e.entry.js +1 -0
  162. package/dist/ezui/{p-44caad9a.entry.js → p-0378416a.entry.js} +1 -1
  163. package/dist/ezui/{p-288631d1.entry.js → p-06f1b8e4.entry.js} +1 -1
  164. package/dist/ezui/{p-d47dabdf.entry.js → p-07594da0.entry.js} +1 -1
  165. package/dist/ezui/{p-77a4bd35.entry.js → p-11bfeca3.entry.js} +1 -1
  166. package/dist/ezui/p-15d9cd15.entry.js +1 -0
  167. package/dist/ezui/p-175154a0.js +1 -0
  168. package/dist/ezui/{p-9c5cd3b2.entry.js → p-18e71523.entry.js} +1 -1
  169. package/dist/ezui/{p-2b4df33d.entry.js → p-1fefb37a.entry.js} +1 -1
  170. package/dist/ezui/{p-7e677b7b.entry.js → p-2069c78a.entry.js} +1 -1
  171. package/dist/ezui/p-28987410.entry.js +1 -0
  172. package/dist/ezui/p-2d10bb18.entry.js +1 -0
  173. package/dist/ezui/{p-e06a9886.entry.js → p-2f351332.entry.js} +1 -1
  174. package/dist/ezui/p-30ffb9ed.js +1 -0
  175. package/dist/ezui/{p-fa6732f2.entry.js → p-44b39e81.entry.js} +1 -1
  176. package/dist/ezui/p-4a876b8b.entry.js +1 -0
  177. package/dist/ezui/{p-03c106f6.entry.js → p-4e66eaeb.entry.js} +1 -1
  178. package/dist/ezui/{p-574b9e72.entry.js → p-682931aa.entry.js} +46 -46
  179. package/dist/ezui/p-6b2cc9b8.entry.js +1 -0
  180. package/dist/ezui/{p-496f7832.entry.js → p-6b3fddee.entry.js} +1 -1
  181. package/dist/ezui/{p-1f50fa05.entry.js → p-6b51c9cc.entry.js} +1 -1
  182. package/dist/ezui/p-6ec40dec.entry.js +1 -0
  183. package/dist/ezui/{p-5ed81457.entry.js → p-6fc26622.entry.js} +1 -1
  184. package/dist/ezui/p-700c1320.entry.js +1 -0
  185. package/dist/ezui/{p-da1b4a38.entry.js → p-708b196e.entry.js} +1 -1
  186. package/dist/ezui/{p-555c9018.entry.js → p-7567ccdd.entry.js} +1 -1
  187. package/dist/ezui/p-769632d5.entry.js +1 -0
  188. package/dist/ezui/{p-0bffeffc.entry.js → p-7ec3f335.entry.js} +1 -1
  189. package/dist/ezui/{p-1e7a8633.entry.js → p-81461d2f.entry.js} +1 -1
  190. package/dist/ezui/{p-8df1ca33.entry.js → p-82fa4b09.entry.js} +1 -1
  191. package/dist/ezui/{p-2872fd16.entry.js → p-87f5a060.entry.js} +1 -1
  192. package/dist/ezui/p-90c90351.entry.js +1 -0
  193. package/dist/ezui/{p-4bd6dd6a.entry.js → p-90e91173.entry.js} +1 -1
  194. package/dist/ezui/{p-09de35a2.entry.js → p-91ccae0c.entry.js} +1 -1
  195. package/dist/ezui/{p-bac0f920.entry.js → p-926a0bde.entry.js} +1 -1
  196. package/dist/ezui/{p-c0d9c4f8.entry.js → p-92748142.entry.js} +1 -1
  197. package/dist/ezui/{p-3ba9565c.entry.js → p-97d94ef3.entry.js} +1 -1
  198. package/dist/ezui/{p-e6a9041d.entry.js → p-9e95bfeb.entry.js} +1 -1
  199. package/dist/ezui/{p-cb75eb46.entry.js → p-a11827ca.entry.js} +1 -1
  200. package/dist/ezui/{p-bf9dec89.entry.js → p-b3b3c99a.entry.js} +1 -1
  201. package/dist/ezui/{p-9f5fa3f9.entry.js → p-c2b20f78.entry.js} +1 -1
  202. package/dist/ezui/{p-dc73e1fe.entry.js → p-c7035d65.entry.js} +1 -1
  203. package/dist/ezui/p-c8e6204f.entry.js +1 -0
  204. package/dist/ezui/{p-20c024f7.entry.js → p-cf33bc48.entry.js} +1 -1
  205. package/dist/ezui/{p-7019f782.entry.js → p-d2290004.entry.js} +1 -1
  206. package/dist/ezui/p-d4d6d5fe.entry.js +1 -0
  207. package/dist/ezui/p-da66838e.entry.js +1 -0
  208. package/dist/ezui/p-dd7d305a.entry.js +1 -0
  209. package/dist/ezui/{p-9567b31a.entry.js → p-ddb22a70.entry.js} +1 -1
  210. package/dist/ezui/p-ddd0bd61.entry.js +1 -0
  211. package/dist/ezui/{p-a80b1287.entry.js → p-dfca5946.entry.js} +1 -1
  212. package/dist/ezui/{p-b81881ac.entry.js → p-e195eaad.entry.js} +1 -1
  213. package/dist/ezui/p-e4ae4ddb.entry.js +1 -0
  214. package/dist/ezui/{p-23a36bb6.js → p-e4c7eb39.js} +2 -2
  215. package/dist/ezui/p-e4ead194.entry.js +1 -0
  216. package/dist/ezui/{p-0306dff7.entry.js → p-e6b38ade.entry.js} +1 -1
  217. package/dist/ezui/{p-6825bdc7.entry.js → p-ea053063.entry.js} +1 -1
  218. package/dist/ezui/{p-9478b13b.entry.js → p-ed48a632.entry.js} +1 -1
  219. package/dist/ezui/{p-6e429cff.entry.js → p-fc194825.entry.js} +1 -1
  220. package/dist/types/components/ez-avatar/ez-avatar.d.ts +24 -0
  221. package/dist/types/components/ez-dropdown/structure/DropdownItem.d.ts +4 -4
  222. package/dist/types/components/ez-form/ez-form.d.ts +18 -0
  223. package/dist/types/components/ez-grid/controller/EzGridController.d.ts +9 -1
  224. package/dist/types/components/ez-grid/controller/ag-grid/AgGridController.d.ts +3 -1
  225. package/dist/types/components/ez-grid/ez-grid.d.ts +12 -0
  226. package/dist/types/components/ez-icon/ez-icon.d.ts +5 -0
  227. package/dist/types/components/ez-popover-plus/subcomponent/ez-popover-core.d.ts +1 -3
  228. package/dist/types/components/ez-search/ez-search.d.ts +1 -0
  229. package/dist/types/components/ez-search/subcomponent/search-list/search-list.d.ts +6 -0
  230. package/dist/types/components/ez-search-plus/ez-search-plus.d.ts +8 -8
  231. package/dist/types/components/ez-skeleton/ez-skeleton.constants.d.ts +55 -1
  232. package/dist/types/components/ez-skeleton/ez-skeleton.d.ts +50 -22
  233. package/dist/types/components/ez-split-button/ez-split-button.d.ts +14 -2
  234. package/dist/types/components/ez-text-input/ez-text-input.d.ts +2 -0
  235. package/dist/types/components.d.ts +182 -24
  236. package/dist/types/utils/index.d.ts +1 -0
  237. package/dist/types/utils/searchColumn/search-column.d.ts +9 -0
  238. package/package.json +5 -4
  239. package/react/components.d.ts +1 -0
  240. package/react/components.js +1 -0
  241. package/react/components.js.map +1 -1
  242. package/dist/cjs/FormLayout-c2451c7f.js +0 -7
  243. package/dist/esm/FormLayout-54092963.js +0 -7
  244. package/dist/ezui/p-15ea0c98.js +0 -1
  245. package/dist/ezui/p-173f68ea.js +0 -1
  246. package/dist/ezui/p-4cf0aaeb.entry.js +0 -1
  247. package/dist/ezui/p-56fe5341.entry.js +0 -1
  248. package/dist/ezui/p-5895e687.js +0 -1
  249. package/dist/ezui/p-5a14f506.entry.js +0 -1
  250. package/dist/ezui/p-5ec0ae79.entry.js +0 -1
  251. package/dist/ezui/p-629d15ed.entry.js +0 -1
  252. package/dist/ezui/p-6754489a.entry.js +0 -1
  253. package/dist/ezui/p-6f4681f8.entry.js +0 -1
  254. package/dist/ezui/p-7742802c.entry.js +0 -1
  255. package/dist/ezui/p-a4cee65d.entry.js +0 -1
  256. package/dist/ezui/p-bc2f844e.entry.js +0 -1
  257. package/dist/ezui/p-c00df4be.entry.js +0 -1
  258. package/dist/ezui/p-ebd23857.entry.js +0 -1
  259. package/dist/ezui/p-ecaac11f.entry.js +0 -1
  260. package/dist/ezui/p-f4861c6a.entry.js +0 -1
  261. package/dist/ezui/p-f5a30e35.entry.js +0 -1
  262. package/dist/ezui/p-f6316720.entry.js +0 -1
@@ -1,114 +1,156 @@
1
1
  .skeleton {
2
- background: var(--skeleton-background, #eff1f6) no-repeat;
3
-
4
- border-radius: var(--skeleton-border-radius, 4px);
5
- width: var(--skeleton-width, 100%);
6
- height: var(--skeleton-height, 20px);
7
- display: inline-block;
8
- margin-bottom: var(--skeleton-margin-bottom, 0px);
9
- box-sizing: border-box;
10
- outline: none;
11
- overflow: hidden;
12
- position: relative;
13
- -webkit-will-change: transform;
2
+ background: var(--skeleton-background, #f0f3f7) no-repeat;
3
+ border-radius: var(--skeleton-border-radius, 12px);
4
+ width: var(--skeleton-width, 100%);
5
+ height: var(--skeleton-height, 20px);
6
+ display: inline-block;
7
+ margin-bottom: var(--skeleton-margin-bottom, 0px);
8
+ margin-top: var(--skeleton-margin-top, 0px);
9
+ margin-right: var(--skeleton-margin-right, 0px);
10
+ margin-left: var(--skeleton-margin-left, 0px);
11
+ box-sizing: border-box;
12
+ outline: none;
13
+ overflow: hidden;
14
+ position: relative;
15
+ -webkit-will-change: transform;
14
16
  -moz-will-change: transform;
15
- will-change: transform;
17
+ will-change: transform;
16
18
 
17
- &:after,
18
- &:before {
19
- box-sizing: border-box;
20
- }
19
+ &:after,
20
+ &:before {
21
+ box-sizing: border-box;
22
+ }
21
23
 
22
- &.circle {
23
- width: var(--skeleton-width, 40px);
24
- height: var(--skeleton-height, 40px);
25
- margin-bottom: var(--skeleton-margin-bottom, 5px);
26
- border-radius: var(--skeleton-border-radius, 50%);
27
- }
24
+ &.circle {
25
+ width: var(--skeleton-width, 40px);
26
+ height: var(--skeleton-height, 40px);
27
+ margin-bottom: var(--skeleton-margin-bottom, 0px);
28
+ border-radius: var(--skeleton-border-radius, 50%);
29
+ }
28
30
 
29
- &.rect {
30
- border-radius: var(--skeleton-border-radius, 0px);
31
- }
31
+ &.rect {
32
+ border-radius: var(--skeleton-border-radius, 0px);
33
+ }
32
34
 
33
- &.progress,
34
- &.progress-dark {
35
- -webkit-animation: progress 2s cubic-bezier(0.4, 0, 0.2, 1) infinite;
35
+ &.progress,
36
+ &.progress-dark {
37
+ -webkit-animation: progress 2s cubic-bezier(0.4, 0, 0.2, 1) infinite;
36
38
  -moz-animation: progress 2s cubic-bezier(0.4, 0, 0.2, 1) infinite;
37
39
  -ms-animation: progress 2s cubic-bezier(0.4, 0, 0.2, 1) infinite;
38
- animation: progress 2s cubic-bezier(0.4, 0, 0.2, 1) infinite;
39
- background-size: 200px 100%;
40
- }
40
+ animation: progress 2s cubic-bezier(0.4, 0, 0.2, 1) infinite;
41
+ background-size: 200px 100%;
42
+ }
41
43
 
42
- &.progress {
43
- background-image: -webkit-linear-gradient(90deg, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.6), rgba(255, 255, 255, 0));
44
- background-image: -moz-linear-gradient(90deg, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.6), rgba(255, 255, 255, 0));
45
- background-image: -ms-linear-gradient(90deg, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.6), rgba(255, 255, 255, 0));
46
- background-image: linear-gradient(90deg, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.6), rgba(255, 255, 255, 0));
47
- }
44
+ &.progress {
45
+ background-image: -webkit-linear-gradient(90deg, rgba(255, 255, 255, 0), var(--skeleton-background-image, #e4eaf1), rgba(255, 255, 255, 0));
46
+ background-image: -moz-linear-gradient(90deg, rgba(255, 255, 255, 0), var(--skeleton-background-image, #e4eaf1), rgba(255, 255, 255, 0));
47
+ background-image: -ms-linear-gradient(90deg, rgba(255, 255, 255, 0), var(--skeleton-background-image, #e4eaf1), rgba(255, 255, 255, 0));
48
+ background-image: linear-gradient(90deg, rgba(255, 255, 255, 0), var(--skeleton-background-image, #e4eaf1), rgba(255, 255, 255, 0));
49
+ }
48
50
 
49
- &.progress-dark {
50
- background-image: -webkit-linear-gradient(90deg, transparent, rgba(0, 0, 0, 0.2), transparent);
51
+ &.progress-dark {
52
+ background-image: -webkit-linear-gradient(90deg, transparent, hsla(0, 0%, 0%, 0.2), transparent);
51
53
  background-image: -moz-linear-gradient(90deg, transparent, rgba(0, 0, 0, 0.2), transparent);
52
- background-image: -ms-linear-gradient(90deg, transparent, rgba(0, 0, 0, 0.2), transparent);
53
- background-image: linear-gradient(90deg,transparent,rgba(0, 0, 0, 0.2),transparent);
54
- }
54
+ background-image: -ms-linear-gradient(90deg, transparent, rgba(0, 0, 0, 0.2), transparent);
55
+ background-image: linear-gradient(90deg, transparent, rgba(0, 0, 0, 0.2), transparent);
56
+ }
55
57
 
56
- &.pulse {
57
- -webkit-animation: pulse 1.5s cubic-bezier(0.4, 0, 0.2, 1) infinite;
58
+ &.pulse {
59
+ -webkit-animation: pulse 1.5s cubic-bezier(0.4, 0, 0.2, 1) infinite;
58
60
  -moz-animation: pulse 1.5s cubic-bezier(0.4, 0, 0.2, 1) infinite;
59
61
  -ms-animation: pulse 1.5s cubic-bezier(0.4, 0, 0.2, 1) infinite;
60
- animation: pulse 1.5s cubic-bezier(0.4, 0, 0.2, 1) infinite;
61
- animation-delay: 0.5s;
62
- }
62
+ animation: pulse 1.5s cubic-bezier(0.4, 0, 0.2, 1) infinite;
63
+ animation-delay: 0.5s;
64
+ }
63
65
 
64
- @media (prefers-reduced-motion: reduce) {
65
- &.pulse,
66
- &.progress-dark,
67
- &.progress {
68
- animation: none;
69
- }
66
+ @media (prefers-reduced-motion: reduce) {
67
+ &.pulse,
68
+ &.progress-dark,
69
+ &.progress {
70
+ animation: none;
71
+ }
70
72
 
71
- &.progress,
72
- &.progress-dark {
73
- background-image: none;
74
- }
75
- }
73
+ &.progress,
74
+ &.progress-dark {
75
+ background-image: none;
76
+ }
77
+ }
76
78
  }
77
79
 
78
80
  @-webkit-keyframes progress {
79
- 0% { background-position: -200px 0; }
80
- 100% { background-position: calc(200px + 100%) 0; }
81
+ 0% {
82
+ background-position: -200px 0;
83
+ }
84
+ 100% {
85
+ background-position: calc(200px + 100%) 0;
86
+ }
81
87
  }
82
88
  @-moz-keyframes progress {
83
- 0% { background-position: -200px 0; }
84
- 100% { background-position: calc(200px + 100%) 0; }
89
+ 0% {
90
+ background-position: -200px 0;
91
+ }
92
+ 100% {
93
+ background-position: calc(200px + 100%) 0;
94
+ }
85
95
  }
86
96
  @-ms-keyframes progress {
87
- 0% { background-position: -200px 0; }
88
- 100% { background-position: calc(200px + 100%) 0; }
97
+ 0% {
98
+ background-position: -200px 0;
99
+ }
100
+ 100% {
101
+ background-position: calc(200px + 100%) 0;
102
+ }
89
103
  }
90
104
  @keyframes progress {
91
- 0% { background-position: -200px 0; }
92
- 100% { background-position: calc(200px + 100%) 0; }
105
+ 0% {
106
+ background-position: -200px 0;
107
+ }
108
+ 100% {
109
+ background-position: calc(200px + 100%) 0;
110
+ }
93
111
  }
94
112
 
95
113
  @-webkit-keyframes pulse {
96
- 0% { opacity: 1; }
97
- 50% { opacity: 0.4; }
98
- 100% { opacity: 1; }
114
+ 0% {
115
+ opacity: 1;
116
+ }
117
+ 50% {
118
+ opacity: 0.4;
119
+ }
120
+ 100% {
121
+ opacity: 1;
122
+ }
99
123
  }
100
124
  @-moz-keyframes pulse {
101
- 0% { opacity: 1; }
102
- 50% { opacity: 0.4; }
103
- 100% { opacity: 1; }
125
+ 0% {
126
+ opacity: 1;
127
+ }
128
+ 50% {
129
+ opacity: 0.4;
130
+ }
131
+ 100% {
132
+ opacity: 1;
133
+ }
104
134
  }
105
135
  @-ms-keyframes pulse {
106
- 0% { opacity: 1; }
107
- 50% { opacity: 0.4; }
108
- 100% { opacity: 1; }
136
+ 0% {
137
+ opacity: 1;
138
+ }
139
+ 50% {
140
+ opacity: 0.4;
141
+ }
142
+ 100% {
143
+ opacity: 1;
144
+ }
109
145
  }
110
146
  @keyframes pulse {
111
- 0% { opacity: 1; }
112
- 50% { opacity: 0.4; }
113
- 100% { opacity: 1; }
114
- }
147
+ 0% {
148
+ opacity: 1;
149
+ }
150
+ 50% {
151
+ opacity: 0.4;
152
+ }
153
+ 100% {
154
+ opacity: 1;
155
+ }
156
+ }
@@ -1,56 +1,114 @@
1
- import { h } from "@stencil/core";
2
- import { ALLOWED_ANIMATIONS } from './ez-skeleton.constants';
1
+ import { h } from '@stencil/core';
2
+ import { ALLOWED_ANIMATIONS, ALLOWED_VARIANTS, DEFAULT_VALUES, SKELETON_ARIA, VARIANT_TYPES, ANIMATION_TYPES, } from './ez-skeleton.constants';
3
3
  export class EzSkeleton {
4
4
  constructor() {
5
5
  this.items = [];
6
- this.count = 1;
7
- this.variant = 'text';
6
+ this.template = undefined;
7
+ this.count = DEFAULT_VALUES.COUNT;
8
+ this.variant = DEFAULT_VALUES.VARIANT;
8
9
  this.width = null;
9
10
  this.height = null;
11
+ this.marginTop = null;
12
+ this.marginRight = null;
10
13
  this.marginBottom = null;
11
- this.animation = 'progress';
14
+ this.marginLeft = null;
15
+ this.animation = DEFAULT_VALUES.ANIMATION;
12
16
  }
13
17
  componentWillLoad() {
14
- this.init();
18
+ this.initializeItems();
15
19
  }
16
20
  componentWillUpdate() {
17
- this.init();
21
+ this.initializeItems();
18
22
  }
19
- init() {
20
- this.items.length = this.count;
21
- this.items.fill(1);
22
- if (!ALLOWED_ANIMATIONS.includes(this.animation)) {
23
- this.animation = 'progress';
24
- }
23
+ initializeItems() {
24
+ this.items = Array(this.count).fill(1);
25
25
  }
26
- get style() {
27
- let dimenssionsStyles = {
28
- width: null,
29
- height: null,
30
- marginBottom: null
31
- };
32
- if (this.width) {
33
- dimenssionsStyles.width = this.width;
26
+ getSkeletonConfig(props) {
27
+ if (!props)
28
+ return;
29
+ if ((props === null || props === void 0 ? void 0 : props.variant) == VARIANT_TYPES.CIRCLE) {
30
+ props.width = props.width || 'var(--skeleton-width, 40px)';
31
+ props.height = props.height || 'var(--skeleton-height, 40px)';
34
32
  }
35
- if (this.height) {
36
- dimenssionsStyles.height = this.height;
33
+ else {
34
+ props.width = props.width || 'var(--skeleton-width, 100%)';
37
35
  }
38
- if (this.marginBottom) {
39
- dimenssionsStyles.marginBottom = this.marginBottom;
36
+ const width = (props.marginRight || props.marginLeft) && props.width && props.variant != VARIANT_TYPES.CIRCLE
37
+ ? `calc(${props.width} ${props.marginRight ? `- ${props.marginRight}` : ''} ${props.marginLeft ? `- ${props.marginLeft}` : ''})`
38
+ : props.width;
39
+ return {
40
+ skeletonClasses: {
41
+ skeleton: true,
42
+ circle: props.variant === VARIANT_TYPES.CIRCLE,
43
+ rect: props.variant === VARIANT_TYPES.RECT,
44
+ progress: props.animation === ANIMATION_TYPES.PROGRESS,
45
+ pulse: props.animation === ANIMATION_TYPES.PULSE,
46
+ },
47
+ styles: {
48
+ width,
49
+ height: props.height,
50
+ marginTop: props.marginTop,
51
+ marginRight: props.marginRight,
52
+ marginBottom: props.marginBottom,
53
+ marginLeft: props.marginLeft,
54
+ },
55
+ };
56
+ }
57
+ validateVariant(variant) {
58
+ return ALLOWED_VARIANTS.includes(variant) ? variant : DEFAULT_VALUES.VARIANT;
59
+ }
60
+ validateAnimation(animation) {
61
+ return ALLOWED_ANIMATIONS.includes(animation) ? animation : DEFAULT_VALUES.ANIMATION;
62
+ }
63
+ renderSkeletonTemplate(templateContent) {
64
+ var _a;
65
+ const innerHTMLTemp = ((_a = templateContent['$attrs']) === null || _a === void 0 ? void 0 : _a.innerHTML) || templateContent;
66
+ if (typeof innerHTMLTemp === 'string') {
67
+ const tempDiv = document.createElement('div');
68
+ tempDiv.innerHTML = innerHTMLTemp;
69
+ const elements = (tempDiv === null || tempDiv === void 0 ? void 0 : tempDiv.querySelectorAll(':not(.skeleton) > *')) || [];
70
+ return Array.from(elements).map(element => {
71
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
72
+ if ((_a = element === null || element === void 0 ? void 0 : element.classList) === null || _a === void 0 ? void 0 : _a.contains('skeleton')) {
73
+ const skeletonConfig = this.getSkeletonConfig({
74
+ variant: this.validateVariant(((_b = element.getAttribute('variant')) === null || _b === void 0 ? void 0 : _b.replace(/[{}]/g, '')) || this.variant),
75
+ width: ((_c = element.getAttribute('width')) === null || _c === void 0 ? void 0 : _c.replace(/[{}]/g, '')) || this.width,
76
+ height: ((_d = element.getAttribute('height')) === null || _d === void 0 ? void 0 : _d.replace(/[{}]/g, '')) || this.height,
77
+ marginTop: ((_e = element.getAttribute('marginTop')) === null || _e === void 0 ? void 0 : _e.replace(/[{}]/g, '')) || this.marginTop,
78
+ marginLeft: ((_f = element.getAttribute('marginLeft')) === null || _f === void 0 ? void 0 : _f.replace(/[{}]/g, '')) || this.marginLeft,
79
+ marginRight: ((_g = element.getAttribute('marginRight')) === null || _g === void 0 ? void 0 : _g.replace(/[{}]/g, '')) || this.marginRight,
80
+ marginBottom: ((_h = element.getAttribute('marginBottom')) === null || _h === void 0 ? void 0 : _h.replace(/[{}]/g, '')) || this.marginBottom,
81
+ animation: this.validateAnimation(((_j = element.getAttribute('animation')) === null || _j === void 0 ? void 0 : _j.replace(/[{}]/g, '')) || this.animation),
82
+ });
83
+ const count = Number((_k = element.getAttribute('count')) === null || _k === void 0 ? void 0 : _k.replace(/[{}]/g, '')) || 1;
84
+ return Array(count)
85
+ .fill(1)
86
+ .map((_, index) => this.renderSkeletonItem(index, skeletonConfig));
87
+ }
88
+ return h("div", { innerHTML: element.outerHTML });
89
+ });
40
90
  }
41
- return dimenssionsStyles;
91
+ return templateContent;
92
+ }
93
+ renderSkeletonItem(index, skeletonConfig) {
94
+ const config = skeletonConfig ||
95
+ this.getSkeletonConfig({
96
+ variant: this.validateVariant(this.variant),
97
+ animation: this.validateAnimation(this.animation),
98
+ width: this.width,
99
+ height: this.height,
100
+ marginTop: this.marginTop,
101
+ marginRight: this.marginRight,
102
+ marginBottom: this.marginBottom,
103
+ marginLeft: this.marginLeft,
104
+ });
105
+ return this.renderSkeletonSpan(index, config);
106
+ }
107
+ renderSkeletonSpan(index, config) {
108
+ return (h("span", { key: index, class: config === null || config === void 0 ? void 0 : config.skeletonClasses, style: config === null || config === void 0 ? void 0 : config.styles, "data-busy": SKELETON_ARIA.DATA_BUSY, "data-valuemin": SKELETON_ARIA.DATA_VALUEMIN, "data-valuemax": SKELETON_ARIA.DATA_VALUEMAX, "data-valuetext": SKELETON_ARIA.DATA_VALUETEXT, role: SKELETON_ARIA.ROLE, tabindex: SKELETON_ARIA.TABINDEX }));
42
109
  }
43
110
  render() {
44
- return this.items.map((_, index) => {
45
- return (h("span", { key: index, class: {
46
- circle: this.variant === 'circle',
47
- rect: this.variant === 'rect',
48
- progress: this.animation === 'progress',
49
- 'progress-dark': this.animation === 'progress-dark',
50
- pulse: this.animation === 'pulse',
51
- skeleton: true
52
- }, "data-busy": "true", "data-valuemin": "0", "data-valuemax": "100", "data-valuetext": "Loading...", role: "progressbar", tabindex: "0", style: this.style }));
53
- });
111
+ return !this.template ? this.items.map((_, index) => this.renderSkeletonItem(index)) : this.renderSkeletonTemplate(this.template);
54
112
  }
55
113
  static get is() { return "ez-skeleton"; }
56
114
  static get originalStyleUrls() {
@@ -65,6 +123,30 @@ export class EzSkeleton {
65
123
  }
66
124
  static get properties() {
67
125
  return {
126
+ "template": {
127
+ "type": "string",
128
+ "mutable": false,
129
+ "complexType": {
130
+ "original": "HTMLElement | string",
131
+ "resolved": "HTMLElement | string",
132
+ "references": {
133
+ "HTMLElement": {
134
+ "location": "global"
135
+ }
136
+ }
137
+ },
138
+ "required": false,
139
+ "optional": false,
140
+ "docs": {
141
+ "tags": [{
142
+ "name": "prop",
143
+ "text": "{HTMLElement | string} template - The template to be used for the skeleton."
144
+ }],
145
+ "text": "The template to be used for the skeleton. Can be an HTMLElement or a string."
146
+ },
147
+ "attribute": "template",
148
+ "reflect": false
149
+ },
68
150
  "count": {
69
151
  "type": "number",
70
152
  "mutable": false,
@@ -84,22 +166,27 @@ export class EzSkeleton {
84
166
  },
85
167
  "attribute": "count",
86
168
  "reflect": false,
87
- "defaultValue": "1"
169
+ "defaultValue": "DEFAULT_VALUES.COUNT"
88
170
  },
89
171
  "variant": {
90
172
  "type": "string",
91
173
  "mutable": false,
92
174
  "complexType": {
93
- "original": "'circle' | 'rect' | 'text'",
175
+ "original": "SkeletonVariant",
94
176
  "resolved": "\"circle\" | \"rect\" | \"text\"",
95
- "references": {}
177
+ "references": {
178
+ "SkeletonVariant": {
179
+ "location": "import",
180
+ "path": "./ez-skeleton.constants"
181
+ }
182
+ }
96
183
  },
97
184
  "required": false,
98
185
  "optional": false,
99
186
  "docs": {
100
187
  "tags": [{
101
188
  "name": "type",
102
- "text": "{('circle' | '')}"
189
+ "text": "{('circle' , 'rect', 'text')}"
103
190
  }, {
104
191
  "name": "memberof",
105
192
  "text": "Skeleton"
@@ -108,7 +195,7 @@ export class EzSkeleton {
108
195
  },
109
196
  "attribute": "variant",
110
197
  "reflect": false,
111
- "defaultValue": "'text'"
198
+ "defaultValue": "DEFAULT_VALUES.VARIANT"
112
199
  },
113
200
  "width": {
114
201
  "type": "string",
@@ -158,6 +245,54 @@ export class EzSkeleton {
158
245
  "reflect": false,
159
246
  "defaultValue": "null"
160
247
  },
248
+ "marginTop": {
249
+ "type": "string",
250
+ "mutable": false,
251
+ "complexType": {
252
+ "original": "string",
253
+ "resolved": "string",
254
+ "references": {}
255
+ },
256
+ "required": false,
257
+ "optional": false,
258
+ "docs": {
259
+ "tags": [{
260
+ "name": "type",
261
+ "text": "{string}"
262
+ }, {
263
+ "name": "memberof",
264
+ "text": "Skeleton"
265
+ }],
266
+ "text": "MarginTop of the skeleton ex. 10px, 0 etc."
267
+ },
268
+ "attribute": "margin-top",
269
+ "reflect": false,
270
+ "defaultValue": "null"
271
+ },
272
+ "marginRight": {
273
+ "type": "string",
274
+ "mutable": false,
275
+ "complexType": {
276
+ "original": "string",
277
+ "resolved": "string",
278
+ "references": {}
279
+ },
280
+ "required": false,
281
+ "optional": false,
282
+ "docs": {
283
+ "tags": [{
284
+ "name": "type",
285
+ "text": "{string}"
286
+ }, {
287
+ "name": "memberof",
288
+ "text": "Skeleton"
289
+ }],
290
+ "text": "MarginRight of the skeleton ex. 10px, 0 etc."
291
+ },
292
+ "attribute": "margin-right",
293
+ "reflect": false,
294
+ "defaultValue": "null"
295
+ },
161
296
  "marginBottom": {
162
297
  "type": "string",
163
298
  "mutable": false,
@@ -182,12 +317,12 @@ export class EzSkeleton {
182
317
  "reflect": false,
183
318
  "defaultValue": "null"
184
319
  },
185
- "animation": {
320
+ "marginLeft": {
186
321
  "type": "string",
187
322
  "mutable": false,
188
323
  "complexType": {
189
- "original": "'progress' | 'progress-dark' | 'pulse' | 'false'",
190
- "resolved": "\"false\" | \"progress\" | \"progress-dark\" | \"pulse\"",
324
+ "original": "string",
325
+ "resolved": "string",
191
326
  "references": {}
192
327
  },
193
328
  "required": false,
@@ -195,7 +330,36 @@ export class EzSkeleton {
195
330
  "docs": {
196
331
  "tags": [{
197
332
  "name": "type",
198
- "text": "{('progress' | 'progress-dark' | 'pulse' | 'false')}"
333
+ "text": "{string}"
334
+ }, {
335
+ "name": "memberof",
336
+ "text": "Skeleton"
337
+ }],
338
+ "text": "MarginLeft of the skeleton ex. 10px, 0 etc."
339
+ },
340
+ "attribute": "margin-left",
341
+ "reflect": false,
342
+ "defaultValue": "null"
343
+ },
344
+ "animation": {
345
+ "type": "string",
346
+ "mutable": false,
347
+ "complexType": {
348
+ "original": "SkeletonAnimation",
349
+ "resolved": "\"false\" | \"progress\" | \"pulse\"",
350
+ "references": {
351
+ "SkeletonAnimation": {
352
+ "location": "import",
353
+ "path": "./ez-skeleton.constants"
354
+ }
355
+ }
356
+ },
357
+ "required": false,
358
+ "optional": false,
359
+ "docs": {
360
+ "tags": [{
361
+ "name": "type",
362
+ "text": "{('progress' | 'pulse' | 'false')}"
199
363
  }, {
200
364
  "name": "memberof",
201
365
  "text": "Skeleton"
@@ -204,7 +368,7 @@ export class EzSkeleton {
204
368
  },
205
369
  "attribute": "animation",
206
370
  "reflect": false,
207
- "defaultValue": "'progress'"
371
+ "defaultValue": "DEFAULT_VALUES.ANIMATION"
208
372
  }
209
373
  };
210
374
  }
@@ -258,7 +258,7 @@
258
258
  position: absolute;
259
259
  background-color: #f1f1f1;
260
260
  min-width: 160px;
261
- z-index: --ez-elevation--8;
261
+ z-index: var(--ez-elevation--8);
262
262
  border-radius: var(--ez-split-button--border-radius);
263
263
  }
264
264