@sme.up/ketchup 4.0.0 → 4.2.0-SNAPSHOT

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 (295) hide show
  1. package/README.md +3 -3
  2. package/dist/cjs/cell-utils-1d44a3f0.js +168 -0
  3. package/dist/cjs/f-button-a5788453.js +105 -0
  4. package/dist/cjs/f-cell-eba6f39e.js +727 -0
  5. package/dist/cjs/f-chip-ce69b7d2.js +141 -0
  6. package/dist/cjs/{f-image-5f4f29ca.js → f-image-e03842eb.js} +4 -5
  7. package/dist/cjs/{index-3c471303.js → index-0416afab.js} +73 -64
  8. package/dist/cjs/ketchup.cjs.js +3 -3
  9. package/dist/cjs/kup-accordion.cjs.entry.js +6 -8
  10. package/dist/cjs/{kup-autocomplete_29.cjs.entry.js → kup-autocomplete_28.cjs.entry.js} +1678 -2558
  11. package/dist/cjs/kup-calendar.cjs.entry.js +30 -30
  12. package/dist/cjs/kup-cell.cjs.entry.js +201 -0
  13. package/dist/cjs/kup-dash-list.cjs.entry.js +15 -7
  14. package/dist/cjs/kup-dash_2.cjs.entry.js +104 -62
  15. package/dist/cjs/kup-drawer.cjs.entry.js +4 -6
  16. package/dist/cjs/kup-field.cjs.entry.js +3 -5
  17. package/dist/cjs/kup-iframe.cjs.entry.js +3 -4
  18. package/dist/cjs/kup-lazy.cjs.entry.js +4 -6
  19. package/dist/cjs/kup-magic-box.cjs.entry.js +21 -31
  20. package/dist/cjs/kup-manager-75f1a2cd.js +5794 -0
  21. package/dist/cjs/kup-nav-bar.cjs.entry.js +4 -6
  22. package/dist/cjs/kup-probe.cjs.entry.js +3 -4
  23. package/dist/cjs/kup-qlik.cjs.entry.js +2 -3
  24. package/dist/cjs/kup-snackbar.cjs.entry.js +152 -0
  25. package/dist/cjs/loader.cjs.js +3 -3
  26. package/dist/cjs/{utils-2af73538.js → utils-b3ec89fe.js} +18 -26
  27. package/dist/collection/assets/cell.js +51 -0
  28. package/dist/collection/assets/data-table.js +518 -45
  29. package/dist/collection/assets/index.js +8 -0
  30. package/dist/collection/assets/snackbar.js +32 -0
  31. package/dist/collection/collection-manifest.json +6 -6
  32. package/dist/collection/components/kup-accordion/kup-accordion.css +0 -213
  33. package/dist/collection/components/kup-accordion/kup-accordion.js +15 -16
  34. package/dist/collection/components/kup-autocomplete/kup-autocomplete-declarations.js +2 -2
  35. package/dist/collection/components/kup-autocomplete/kup-autocomplete.css +5 -2381
  36. package/dist/collection/components/kup-autocomplete/kup-autocomplete.js +83 -111
  37. package/dist/collection/components/kup-badge/kup-badge.css +1 -35
  38. package/dist/collection/components/kup-badge/kup-badge.js +13 -14
  39. package/dist/collection/components/kup-box/kup-box.css +47 -780
  40. package/dist/collection/components/kup-box/kup-box.js +240 -366
  41. package/dist/collection/components/kup-button/kup-button.css +0 -333
  42. package/dist/collection/components/kup-button/kup-button.js +27 -28
  43. package/dist/collection/components/kup-button-list/kup-button-list.css +0 -332
  44. package/dist/collection/components/kup-button-list/kup-button-list.js +19 -20
  45. package/dist/collection/components/kup-calendar/kup-calendar.css +0 -517
  46. package/dist/collection/components/kup-calendar/kup-calendar.js +47 -45
  47. package/dist/collection/components/kup-card/dialog/kup-card-dialog.js +18 -0
  48. package/dist/collection/components/kup-card/kup-card-helper.js +19 -1
  49. package/dist/collection/components/kup-card/kup-card.css +147 -216
  50. package/dist/collection/components/kup-card/kup-card.js +80 -29
  51. package/dist/collection/components/kup-card/standard/kup-card-standard.js +75 -0
  52. package/dist/collection/components/kup-cell/kup-cell-declarations.js +11 -0
  53. package/dist/collection/components/kup-cell/kup-cell.css +20 -0
  54. package/dist/collection/components/kup-cell/kup-cell.js +413 -0
  55. package/dist/collection/components/kup-chart/kup-chart.js +41 -42
  56. package/dist/collection/components/kup-checkbox/kup-checkbox.css +0 -214
  57. package/dist/collection/components/kup-checkbox/kup-checkbox.js +19 -20
  58. package/dist/collection/components/kup-chip/kup-chip.css +0 -217
  59. package/dist/collection/components/kup-chip/kup-chip.js +15 -16
  60. package/dist/collection/components/kup-color-picker/kup-color-picker.css +7 -2380
  61. package/dist/collection/components/kup-color-picker/kup-color-picker.js +41 -41
  62. package/dist/collection/components/kup-combobox/kup-combobox-declarations.js +1 -0
  63. package/dist/collection/components/kup-combobox/kup-combobox.css +5 -2381
  64. package/dist/collection/components/kup-combobox/kup-combobox.js +68 -28
  65. package/dist/collection/components/kup-dash-list/kup-dash-list.js +13 -4
  66. package/dist/collection/components/kup-data-table/kup-data-table-declarations.js +3 -1
  67. package/dist/collection/components/kup-data-table/kup-data-table-helper.js +61 -102
  68. package/dist/collection/components/kup-data-table/kup-data-table-state.js +1 -1
  69. package/dist/collection/components/kup-data-table/kup-data-table.css +127 -3203
  70. package/dist/collection/components/kup-data-table/kup-data-table.js +568 -1085
  71. package/dist/collection/components/kup-date-picker/kup-date-picker.css +6 -8
  72. package/dist/collection/components/kup-date-picker/kup-date-picker.js +77 -106
  73. package/dist/collection/components/kup-drawer/kup-drawer.js +9 -10
  74. package/dist/collection/components/kup-dropdown-button/kup-dropdown-button.css +12 -340
  75. package/dist/collection/components/kup-dropdown-button/kup-dropdown-button.js +56 -45
  76. package/dist/collection/components/kup-field/kup-field.js +21 -22
  77. package/dist/collection/components/kup-gauge/kup-gauge.js +17 -18
  78. package/dist/collection/components/kup-grid/kup-grid.css +2 -1
  79. package/dist/collection/components/kup-grid/kup-grid.js +13 -14
  80. package/dist/collection/components/kup-iframe/kup-iframe.js +4 -4
  81. package/dist/collection/components/kup-image/assets/svg/ketchup.svg +74 -0
  82. package/dist/collection/components/kup-image/assets/svg/smeup.svg +59 -0
  83. package/dist/collection/components/kup-image/kup-image.css +0 -32
  84. package/dist/collection/components/kup-image/kup-image.js +25 -26
  85. package/dist/collection/components/kup-lazy/kup-lazy.js +17 -18
  86. package/dist/collection/components/kup-list/kup-list-declarations.js +1 -1
  87. package/dist/collection/components/kup-list/kup-list.css +4 -260
  88. package/dist/collection/components/kup-list/kup-list.js +39 -49
  89. package/dist/collection/components/kup-magic-box/kup-magic-box.css +13 -39
  90. package/dist/collection/components/kup-magic-box/kup-magic-box.js +29 -38
  91. package/dist/collection/components/kup-nav-bar/kup-nav-bar.js +11 -12
  92. package/dist/collection/components/kup-paginator/kup-paginator.css +0 -332
  93. package/dist/collection/components/kup-paginator/kup-paginator.js +44 -12
  94. package/dist/collection/components/kup-probe/kup-probe.js +9 -9
  95. package/dist/collection/components/kup-progress-bar/kup-progress-bar.js +21 -22
  96. package/dist/collection/components/kup-radio/kup-radio.js +17 -18
  97. package/dist/collection/components/kup-rating/kup-rating.js +15 -16
  98. package/dist/collection/components/kup-snackbar/kup-snackbar-declarations.js +13 -0
  99. package/dist/collection/components/kup-snackbar/kup-snackbar.css +75 -0
  100. package/dist/collection/components/kup-snackbar/kup-snackbar.js +390 -0
  101. package/dist/collection/components/kup-spinner/kup-spinner.js +23 -24
  102. package/dist/collection/components/kup-switch/kup-switch.css +0 -156
  103. package/dist/collection/components/kup-switch/kup-switch.js +17 -18
  104. package/dist/collection/components/kup-tab-bar/kup-tab-bar.css +0 -199
  105. package/dist/collection/components/kup-tab-bar/kup-tab-bar.js +13 -14
  106. package/dist/collection/components/kup-text-field/kup-text-field-declarations.js +1 -0
  107. package/dist/collection/components/kup-text-field/kup-text-field.css +3 -2371
  108. package/dist/collection/components/kup-text-field/kup-text-field.js +77 -51
  109. package/dist/collection/components/kup-time-picker/kup-time-picker.css +6 -0
  110. package/dist/collection/components/kup-time-picker/kup-time-picker.js +55 -85
  111. package/dist/collection/components/kup-tooltip/kup-tooltip.js +24 -14
  112. package/dist/collection/components/kup-tree/kup-tree.css +27 -371
  113. package/dist/collection/components/kup-tree/kup-tree.js +158 -383
  114. package/dist/collection/f-components/f-button/f-button.js +4 -2
  115. package/dist/collection/f-components/f-cell/f-cell-declarations.js +143 -0
  116. package/dist/collection/f-components/f-cell/f-cell.js +467 -0
  117. package/dist/collection/f-components/f-checkbox/f-checkbox.js +1 -1
  118. package/dist/collection/f-components/f-chip/f-chip.js +2 -2
  119. package/dist/collection/f-components/f-image/f-image.js +2 -3
  120. package/dist/collection/f-components/f-switch/f-switch.js +1 -1
  121. package/dist/collection/f-components/f-text-field/f-text-field-mdc.js +1 -1
  122. package/dist/collection/f-components/f-text-field/f-text-field.js +25 -21
  123. package/dist/collection/utils/cell-utils.js +18 -222
  124. package/dist/collection/utils/filters/filters.js +31 -37
  125. package/dist/collection/utils/kup-column-menu/kup-column-menu.js +15 -3
  126. package/dist/collection/utils/kup-dates/kup-dates.js +14 -2
  127. package/dist/collection/utils/kup-debug/kup-debug-browser-utils.js +3 -3
  128. package/dist/collection/utils/kup-debug/kup-debug.js +57 -29
  129. package/dist/collection/utils/kup-dynamic-position/kup-dynamic-position.js +5 -7
  130. package/dist/collection/utils/kup-interact/kup-interact-declarations.js +48 -0
  131. package/dist/collection/utils/kup-interact/kup-interact.js +379 -0
  132. package/dist/collection/utils/kup-language/kup-language-declarations.js +2 -0
  133. package/dist/collection/utils/kup-language/kup-language.js +1 -1
  134. package/dist/collection/utils/kup-manager/kup-manager.js +47 -10
  135. package/dist/collection/utils/kup-objects/kup-objects.js +9 -33
  136. package/dist/collection/utils/kup-scroll-on-hover/kup-scroll-on-hover.js +60 -62
  137. package/dist/collection/utils/kup-search/kup-search-declarations.js +1 -0
  138. package/dist/collection/utils/kup-search/kup-search.js +76 -0
  139. package/dist/collection/utils/kup-theme/kup-theme-declarations.js +1 -0
  140. package/dist/collection/utils/kup-theme/kup-theme.js +4 -3
  141. package/dist/collection/utils/kup-toolbar/kup-toolbar.js +16 -18
  142. package/dist/collection/utils/utils.js +15 -23
  143. package/dist/esm/cell-utils-9a2914fc.js +160 -0
  144. package/dist/esm/f-button-55a9ed88.js +103 -0
  145. package/dist/esm/f-cell-ac520cb2.js +723 -0
  146. package/dist/esm/f-chip-babf1740.js +139 -0
  147. package/dist/esm/{f-image-68b34fab.js → f-image-70ca9dfe.js} +4 -5
  148. package/dist/esm/{index-bf2824a6.js → index-e0e67c23.js} +74 -65
  149. package/dist/esm/ketchup.js +3 -3
  150. package/dist/esm/kup-accordion.entry.js +6 -8
  151. package/dist/esm/{kup-autocomplete_29.entry.js → kup-autocomplete_28.entry.js} +1451 -2330
  152. package/dist/esm/kup-calendar.entry.js +10 -10
  153. package/dist/esm/kup-cell.entry.js +197 -0
  154. package/dist/esm/kup-dash-list.entry.js +15 -7
  155. package/dist/esm/kup-dash_2.entry.js +104 -62
  156. package/dist/esm/kup-drawer.entry.js +4 -6
  157. package/dist/esm/kup-field.entry.js +3 -5
  158. package/dist/esm/kup-iframe.entry.js +3 -4
  159. package/dist/esm/kup-lazy.entry.js +4 -6
  160. package/dist/esm/kup-magic-box.entry.js +21 -31
  161. package/dist/esm/kup-manager-bba32828.js +5781 -0
  162. package/dist/esm/kup-nav-bar.entry.js +4 -6
  163. package/dist/esm/kup-probe.entry.js +3 -4
  164. package/dist/esm/kup-qlik.entry.js +2 -3
  165. package/dist/esm/kup-snackbar.entry.js +148 -0
  166. package/dist/esm/loader.js +3 -3
  167. package/dist/esm/{utils-13dd007a.js → utils-cfcbe33f.js} +16 -23
  168. package/dist/ketchup/assets/svg/ketchup.svg +74 -0
  169. package/dist/ketchup/assets/svg/smeup.svg +59 -0
  170. package/dist/ketchup/ketchup.esm.js +1 -1
  171. package/dist/ketchup/p-03ae1be9.entry.js +1 -0
  172. package/dist/ketchup/p-06c209a5.js +1 -0
  173. package/dist/ketchup/p-1ce9a037.js +1 -0
  174. package/dist/ketchup/p-1e2c3497.js +1 -0
  175. package/dist/ketchup/p-40df35de.entry.js +1 -0
  176. package/dist/ketchup/{p-c7ee1fbc.js → p-4748be4b.js} +2 -2
  177. package/dist/ketchup/p-52038ccb.js +1 -0
  178. package/dist/ketchup/p-5db41fae.entry.js +45 -0
  179. package/dist/ketchup/p-5faf7715.entry.js +1 -0
  180. package/dist/ketchup/p-62208488.entry.js +1 -0
  181. package/dist/ketchup/p-69a705ae.entry.js +1 -0
  182. package/dist/ketchup/p-6cc8264d.entry.js +1 -0
  183. package/dist/ketchup/p-74259992.entry.js +1 -0
  184. package/dist/ketchup/p-756aa8b1.entry.js +1 -0
  185. package/dist/ketchup/p-a7687c0e.entry.js +27 -0
  186. package/dist/ketchup/p-cb5f4994.js +1 -0
  187. package/dist/ketchup/p-d58dbf0e.js +1 -0
  188. package/dist/ketchup/p-d6ce1ac6.entry.js +1 -0
  189. package/dist/ketchup/p-daf03877.entry.js +1 -0
  190. package/dist/ketchup/p-e90934b5.entry.js +1 -0
  191. package/dist/ketchup/p-ea387b49.entry.js +1 -0
  192. package/dist/ketchup/p-f6bff949.js +1 -0
  193. package/dist/ketchup/p-ff7d590e.entry.js +1 -0
  194. package/dist/types/components/kup-autocomplete/kup-autocomplete-declarations.d.ts +2 -6
  195. package/dist/types/components/kup-autocomplete/kup-autocomplete.d.ts +7 -13
  196. package/dist/types/components/kup-box/kup-box-declarations.d.ts +13 -4
  197. package/dist/types/components/kup-box/kup-box.d.ts +13 -6
  198. package/dist/types/components/kup-card/dialog/kup-card-dialog.d.ts +6 -0
  199. package/dist/types/components/kup-card/kup-card.d.ts +9 -0
  200. package/dist/types/components/kup-card/standard/kup-card-standard.d.ts +6 -0
  201. package/dist/types/components/kup-cell/kup-cell-declarations.d.ts +10 -0
  202. package/dist/types/components/kup-cell/kup-cell.d.ts +67 -0
  203. package/dist/types/components/kup-color-picker/kup-color-picker.d.ts +1 -1
  204. package/dist/types/components/kup-combobox/kup-combobox-declarations.d.ts +3 -2
  205. package/dist/types/components/kup-combobox/kup-combobox.d.ts +5 -0
  206. package/dist/types/components/kup-dash-list/kup-dash-list.d.ts +4 -0
  207. package/dist/types/components/kup-data-table/kup-data-table-declarations.d.ts +21 -32
  208. package/dist/types/components/kup-data-table/kup-data-table-helper.d.ts +1 -15
  209. package/dist/types/components/kup-data-table/kup-data-table-state.d.ts +1 -1
  210. package/dist/types/components/kup-data-table/kup-data-table.d.ts +32 -81
  211. package/dist/types/components/kup-date-picker/kup-date-picker.d.ts +12 -14
  212. package/dist/types/components/kup-dropdown-button/kup-dropdown-button.d.ts +1 -4
  213. package/dist/types/components/kup-list/kup-list-declarations.d.ts +1 -1
  214. package/dist/types/components/kup-list/kup-list.d.ts +2 -3
  215. package/dist/types/components/kup-magic-box/kup-magic-box.d.ts +1 -0
  216. package/dist/types/components/kup-paginator/kup-paginator.d.ts +6 -0
  217. package/dist/types/components/kup-snackbar/kup-snackbar-declarations.d.ts +12 -0
  218. package/dist/types/components/kup-snackbar/kup-snackbar.d.ts +79 -0
  219. package/dist/types/components/kup-text-field/kup-text-field-declarations.d.ts +2 -1
  220. package/dist/types/components/kup-text-field/kup-text-field.d.ts +5 -0
  221. package/dist/types/components/kup-time-picker/kup-time-picker.d.ts +8 -11
  222. package/dist/types/components/kup-tooltip/kup-tooltip.d.ts +1 -0
  223. package/dist/types/components/kup-tree/kup-tree-declarations.d.ts +4 -4
  224. package/dist/types/components/kup-tree/kup-tree.d.ts +12 -23
  225. package/dist/types/components.d.ts +346 -174
  226. package/dist/types/f-components/f-cell/f-cell-declarations.d.ts +153 -0
  227. package/dist/types/f-components/f-cell/f-cell.d.ts +3 -0
  228. package/dist/types/f-components/f-text-field/f-text-field-declarations.d.ts +1 -0
  229. package/dist/types/f-components/f-text-field/f-text-field-mdc.d.ts +1 -1
  230. package/dist/types/utils/cell-utils.d.ts +0 -19
  231. package/dist/types/utils/kup-column-menu/kup-column-menu.d.ts +2 -0
  232. package/dist/types/utils/kup-dates/kup-dates.d.ts +9 -4
  233. package/dist/types/utils/kup-debug/kup-debug.d.ts +1 -1
  234. package/dist/types/utils/kup-dynamic-position/kup-dynamic-position-declarations.d.ts +1 -1
  235. package/dist/types/utils/kup-dynamic-position/kup-dynamic-position.d.ts +2 -2
  236. package/dist/types/utils/kup-interact/kup-interact-declarations.d.ts +127 -0
  237. package/dist/types/utils/kup-interact/kup-interact.d.ts +93 -0
  238. package/dist/types/utils/kup-language/kup-language-declarations.d.ts +2 -0
  239. package/dist/types/utils/kup-language/kup-language.d.ts +1 -1
  240. package/dist/types/utils/kup-manager/kup-manager-declarations.d.ts +28 -8
  241. package/dist/types/utils/kup-manager/kup-manager.d.ts +18 -5
  242. package/dist/types/utils/kup-objects/kup-objects.d.ts +1 -7
  243. package/dist/types/utils/kup-search/kup-search-declarations.d.ts +7 -0
  244. package/dist/types/utils/kup-search/kup-search.d.ts +20 -0
  245. package/dist/types/utils/kup-theme/kup-theme-declarations.d.ts +2 -0
  246. package/dist/types/utils/kup-theme/kup-theme.d.ts +2 -2
  247. package/dist/types/utils/utils.d.ts +0 -1
  248. package/package.json +4 -6
  249. package/dist/cjs/cell-utils-1f89a299.js +0 -1527
  250. package/dist/cjs/drag-and-drop-4787ff6f.js +0 -281
  251. package/dist/cjs/f-chip-2d58c8f7.js +0 -239
  252. package/dist/cjs/kup-grid.cjs.entry.js +0 -130
  253. package/dist/cjs/kup-manager-59ad8bdc.js +0 -4845
  254. package/dist/cjs/kup-objects-59ea949c.js +0 -717
  255. package/dist/collection/assets/images/drag-multiple.js +0 -1
  256. package/dist/collection/components/kup-editor/kup-editor.css +0 -5
  257. package/dist/collection/components/kup-editor/kup-editor.js +0 -59
  258. package/dist/collection/components/kup-layout/kup-layout.css +0 -53
  259. package/dist/collection/components/kup-layout/kup-layout.js +0 -156
  260. package/dist/collection/utils/drag-and-drop.js +0 -109
  261. package/dist/collection/utils/kup-dialog/kup-dialog-declarations.js +0 -36
  262. package/dist/collection/utils/kup-dialog/kup-dialog.js +0 -310
  263. package/dist/esm/cell-utils-cb612463.js +0 -1510
  264. package/dist/esm/drag-and-drop-321cb4ca.js +0 -265
  265. package/dist/esm/f-chip-125d5dd6.js +0 -236
  266. package/dist/esm/kup-grid.entry.js +0 -126
  267. package/dist/esm/kup-manager-e7d7b353.js +0 -4842
  268. package/dist/esm/kup-objects-d38d2fa2.js +0 -711
  269. package/dist/ketchup/p-00fe1e3e.js +0 -1
  270. package/dist/ketchup/p-0320e24e.entry.js +0 -1
  271. package/dist/ketchup/p-08c7a092.js +0 -1
  272. package/dist/ketchup/p-1165f4ea.entry.js +0 -1
  273. package/dist/ketchup/p-170d3cba.js +0 -1
  274. package/dist/ketchup/p-18cb3ba3.js +0 -1
  275. package/dist/ketchup/p-23541a97.entry.js +0 -45
  276. package/dist/ketchup/p-64ea7e37.entry.js +0 -1
  277. package/dist/ketchup/p-7896031c.entry.js +0 -1
  278. package/dist/ketchup/p-876da4c2.entry.js +0 -1
  279. package/dist/ketchup/p-8fb9d9b2.entry.js +0 -1
  280. package/dist/ketchup/p-940ab57a.entry.js +0 -1
  281. package/dist/ketchup/p-9c858a38.entry.js +0 -1
  282. package/dist/ketchup/p-a12a5690.entry.js +0 -1
  283. package/dist/ketchup/p-a5424073.js +0 -1
  284. package/dist/ketchup/p-b0724035.entry.js +0 -1
  285. package/dist/ketchup/p-b14e77f0.js +0 -1
  286. package/dist/ketchup/p-d24cfdea.entry.js +0 -1
  287. package/dist/ketchup/p-ee89966f.entry.js +0 -27
  288. package/dist/ketchup/p-fcd2fd8f.js +0 -1
  289. package/dist/ketchup/p-fce3b9d8.entry.js +0 -1
  290. package/dist/types/assets/images/drag-multiple.d.ts +0 -1
  291. package/dist/types/components/kup-editor/kup-editor.d.ts +0 -16
  292. package/dist/types/components/kup-layout/kup-layout.d.ts +0 -25
  293. package/dist/types/utils/drag-and-drop.d.ts +0 -53
  294. package/dist/types/utils/kup-dialog/kup-dialog-declarations.d.ts +0 -43
  295. package/dist/types/utils/kup-dialog/kup-dialog.d.ts +0 -50
@@ -3,13 +3,6 @@
3
3
  font-size: var(--kup-font-size);
4
4
  }
5
5
 
6
- #date-picker-div {
7
- display: none;
8
- }
9
- #date-picker-div.visible {
10
- display: block;
11
- }
12
-
13
6
  #date-picker-div {
14
7
  outline: none;
15
8
  pointer-events: all;
@@ -20,11 +13,12 @@
20
13
  overflow: hidden;
21
14
  padding: 10px;
22
15
  box-sizing: border-box;
23
- position: relative;
24
16
  flex-direction: column;
25
17
  justify-content: center;
26
18
  height: 22em;
27
19
  width: 22em;
20
+ position: absolute;
21
+ z-index: 1;
28
22
  }
29
23
  #date-picker-div.visible {
30
24
  display: block;
@@ -91,6 +85,10 @@
91
85
  text-transform: capitalize;
92
86
  }
93
87
 
88
+ .f-text-field {
89
+ position: relative;
90
+ }
91
+
94
92
  /*-------------------------------------------------*/
95
93
  /* C o m p o n e n t C l a s s e s */
96
94
  /*-------------------------------------------------*/
@@ -1,5 +1,4 @@
1
1
  import { Component, Element, Event, forceUpdate, h, Host, Listen, Method, Prop, State, Watch, } from '@stencil/core';
2
- import { kupDynamicPositionAttribute, } from '../../utils/kup-dynamic-position/kup-dynamic-position-declarations';
3
2
  import { kupManagerInstance, } from '../../utils/kup-manager/kup-manager';
4
3
  import { getMonthsAsStringByLocale, getDaysOfWeekAsStringByLocale, fillString, DateTimeFormatOptionsMonth, } from '../../utils/utils';
5
4
  import { KupDatePickerProps, SourceEvent, } from './kup-date-picker-declarations';
@@ -7,6 +6,8 @@ import { FButtonStyling } from '../../f-components/f-button/f-button-declaration
7
6
  import { KupDebugCategory } from '../../utils/kup-debug/kup-debug-declarations';
8
7
  import { componentWrapperId } from '../../variables/GenericVariables';
9
8
  import { KupDatesFormats, KupDatesNormalize, } from '../../utils/kup-dates/kup-dates-declarations';
9
+ import { FTextField } from '../../f-components/f-text-field/f-text-field';
10
+ import { FTextFieldMDC } from '../../f-components/f-text-field/f-text-field-mdc';
10
11
  export class KupDatePicker {
11
12
  constructor() {
12
13
  /*-------------------------------------------------*/
@@ -52,16 +53,16 @@ export class KupDatePicker {
52
53
  */
53
54
  this.kupManager = kupManagerInstance();
54
55
  this.calendarView = SourceEvent.DATE;
55
- this.textfieldEl = undefined;
56
- this.pickerContainerEl = undefined;
56
+ this.textfieldEl = null;
57
+ this.pickerContainerEl = null;
57
58
  this.pickerEl = {
58
59
  value: new Date().toISOString(),
59
60
  date: new Date(),
60
61
  };
61
62
  this.pickerOpened = false;
63
+ this.clickCb = null;
62
64
  }
63
- onKupDatePickerItemClick(e, value) {
64
- e.stopPropagation();
65
+ onKupDatePickerItemClick(value) {
65
66
  this.setPickerValueSelected(value);
66
67
  this.kupChange.emit({
67
68
  comp: this,
@@ -74,8 +75,7 @@ export class KupDatePicker {
74
75
  value: this.value,
75
76
  });
76
77
  }
77
- onKupClearIconClick(e) {
78
- e.stopPropagation();
78
+ onKupClearIconClick() {
79
79
  this.setPickerValueSelected('');
80
80
  this.kupChange.emit({
81
81
  comp: this,
@@ -87,8 +87,7 @@ export class KupDatePicker {
87
87
  id: this.rootElement.id,
88
88
  });
89
89
  }
90
- onKupDatePickerMonthYearItemClick(e, value) {
91
- e.stopPropagation();
90
+ onKupDatePickerMonthYearItemClick(value) {
92
91
  switch (this.calendarView) {
93
92
  case SourceEvent.MONTH: {
94
93
  this.calendarView = SourceEvent.DATE;
@@ -102,7 +101,6 @@ export class KupDatePicker {
102
101
  this.refreshPickerComponentValue(value);
103
102
  }
104
103
  onKupBlur() {
105
- this.closePicker();
106
104
  this.kupBlur.emit({
107
105
  id: this.rootElement.id,
108
106
  value: this.value,
@@ -110,19 +108,16 @@ export class KupDatePicker {
110
108
  });
111
109
  }
112
110
  onKupChange(e) {
113
- e.stopPropagation();
114
- this.refreshPickerValue(e.detail.value, this.kupChange);
111
+ this.refreshPickerValue(e.target.value, this.kupChange);
115
112
  }
116
- onKupClick(e) {
117
- e.stopPropagation();
113
+ onKupClick() {
118
114
  this.kupClick.emit({
119
115
  comp: this,
120
116
  id: this.rootElement.id,
121
117
  value: this.value,
122
118
  });
123
119
  }
124
- onKupFocus(e) {
125
- e.stopPropagation();
120
+ onKupFocus() {
126
121
  this.kupFocus.emit({
127
122
  comp: this,
128
123
  id: this.rootElement.id,
@@ -130,15 +125,14 @@ export class KupDatePicker {
130
125
  });
131
126
  }
132
127
  onKupInput(e) {
133
- e.stopPropagation();
134
- this.refreshPickerValue(e.detail.value, this.kupInput, true);
128
+ this.refreshPickerValue(e.target.value, this.kupInput, true);
135
129
  }
136
130
  onkupTextFieldSubmit(e) {
137
- e.stopPropagation();
138
- this.refreshPickerValue(e.detail.value, this.kupTextFieldSubmit);
131
+ if (e.key === 'Enter') {
132
+ this.refreshPickerValue(e.target.value, this.kupTextFieldSubmit);
133
+ }
139
134
  }
140
- onKupIconClick(e) {
141
- e.stopPropagation();
135
+ onKupIconClick() {
142
136
  if (this.isPickerOpened()) {
143
137
  this.closePicker();
144
138
  }
@@ -160,7 +154,6 @@ export class KupDatePicker {
160
154
  this.closePicker();
161
155
  }
162
156
  if (e.key === 'Enter') {
163
- e.stopPropagation();
164
157
  this.setPickerValueSelected();
165
158
  }
166
159
  }
@@ -216,7 +209,7 @@ export class KupDatePicker {
216
209
  */
217
210
  async setFocus() {
218
211
  if (this.textfieldEl != null) {
219
- this.textfieldEl.setFocus();
212
+ this.textfieldEl.focus();
220
213
  }
221
214
  }
222
215
  /**
@@ -225,14 +218,12 @@ export class KupDatePicker {
225
218
  */
226
219
  async setValue(value) {
227
220
  this.value = value;
228
- this.setTextFieldInitalValue(this.getDateForOutput());
229
221
  }
230
222
  /*-------------------------------------------------*/
231
223
  /* P r i v a t e M e t h o d s */
232
224
  /*-------------------------------------------------*/
233
225
  refreshPickerValue(eventDetailValue, eventToRaise, isOnInputEvent) {
234
226
  let newValue = eventDetailValue;
235
- let dayJs = this.kupManager.dates.normalize(eventDetailValue, KupDatesNormalize.DATE);
236
227
  if (this.kupManager.dates.isValid(eventDetailValue)) {
237
228
  newValue = this.kupManager.dates.format(this.kupManager.dates.normalize(eventDetailValue, KupDatesNormalize.DATE), KupDatesFormats.ISO_DATE);
238
229
  this.refreshPickerComponentValue(newValue);
@@ -280,11 +271,6 @@ export class KupDatePicker {
280
271
  getPickerValueSelected() {
281
272
  return this.pickerEl.value;
282
273
  }
283
- setTextFieldInitalValue(value) {
284
- if (this.textfieldEl !== undefined) {
285
- this.textfieldEl.setValue(value);
286
- }
287
- }
288
274
  getValueForPickerComponent() {
289
275
  return this.value;
290
276
  }
@@ -294,24 +280,27 @@ export class KupDatePicker {
294
280
  let containerEl = this.pickerContainerEl;
295
281
  this.pickerOpened = true;
296
282
  this.refreshPickerComponentValue(this.getValueForPickerComponent());
297
- let textFieldWidth = null;
298
283
  if (textfieldEl != null) {
299
- textFieldWidth =
300
- textfieldEl.shadowRoot.querySelector('.mdc-text-field').clientWidth;
301
284
  textfieldEl.classList.add('toggled');
302
- textfieldEl.emitSubmitEventOnEnter = false;
303
285
  }
304
286
  if (containerEl != null) {
305
- this.kupManager.dynamicPosition.start(containerEl);
306
287
  containerEl.classList.add('visible');
307
- let elStyle = containerEl.style;
288
+ const elStyle = containerEl.style;
308
289
  elStyle.height = 'auto';
309
- if (textFieldWidth != null) {
310
- elStyle.minWidth = textFieldWidth + 'px';
311
- }
290
+ elStyle.minWidth = textfieldEl.clientWidth + 'px';
291
+ }
292
+ if (!this.clickCb) {
293
+ this.clickCb = {
294
+ cb: () => {
295
+ this.closePicker();
296
+ },
297
+ el: this.pickerContainerEl,
298
+ };
312
299
  }
300
+ this.kupManager.addClickCallback(this.clickCb, true);
313
301
  }
314
302
  closePicker() {
303
+ this.kupManager.removeClickCallback(this.clickCb);
315
304
  if (!this.isPickerOpened()) {
316
305
  return;
317
306
  }
@@ -320,10 +309,8 @@ export class KupDatePicker {
320
309
  this.pickerOpened = false;
321
310
  if (textfieldEl != null) {
322
311
  textfieldEl.classList.remove('toggled');
323
- textfieldEl.emitSubmitEventOnEnter = true;
324
312
  }
325
313
  if (containerEl != null) {
326
- this.kupManager.dynamicPosition.stop(containerEl);
327
314
  containerEl.classList.remove('visible');
328
315
  }
329
316
  }
@@ -333,19 +320,15 @@ export class KupDatePicker {
333
320
  getTextFieldId() {
334
321
  return this.textfieldEl.id;
335
322
  }
336
- prepDateTextfield() {
337
- return this.prepTextfield(this.getDateForOutput());
338
- }
339
323
  prepTextfield(initialValue) {
340
- let textfieldData = Object.assign({}, this.data['kup-text-field']);
341
- if (!textfieldData['icon']) {
342
- textfieldData['icon'] = 'calendar';
324
+ const textfieldData = Object.assign({}, this.data['kup-text-field']);
325
+ if (!textfieldData.icon) {
326
+ textfieldData.icon = 'calendar';
343
327
  }
344
- if (textfieldData['icon']) {
345
- textfieldData['trailingIcon'] = true;
328
+ if (textfieldData.icon) {
329
+ textfieldData.trailingIcon = true;
346
330
  }
347
- let comp = (h("kup-text-field", Object.assign({}, textfieldData, { disabled: this.disabled, id: this.rootElement.id + '_text-field', initialValue: initialValue, "onkup-textfield-change": (e) => this.onKupChange(e), "onkup-textfield-click": (e) => this.onKupClick(e), "onkup-textfield-focus": (e) => this.onKupFocus(e), "onkup-textfield-input": (e) => this.onKupInput(e), "onkup-textfield-iconclick": (e) => this.onKupIconClick(e), "onkup-textfield-submit": (e) => this.onkupTextFieldSubmit(e), "onkup-textfield-cleariconclick": (e) => this.onKupClearIconClick(e), ref: (el) => (this.textfieldEl = el) })));
348
- return comp;
331
+ return (h(FTextField, Object.assign({}, textfieldData, { disabled: this.disabled, id: this.rootElement.id + '_text-field', value: initialValue, onBlur: () => this.onKupBlur(), onChange: (e) => this.onKupChange(e), onClearIconClick: () => this.onKupClearIconClick(), onClick: () => this.onKupClick(), onFocus: () => this.onKupFocus(), onIconClick: () => this.onKupIconClick(), onKeyDown: (e) => this.onkupTextFieldSubmit(e), onInput: (e) => this.onKupInput(e) }), this.prepDatePicker()));
349
332
  }
350
333
  getInitEndYear(curYear) {
351
334
  let initYear = curYear - (curYear % 10);
@@ -392,17 +375,13 @@ export class KupDatePicker {
392
375
  }
393
376
  let prevButtonComp = null;
394
377
  let nextButtonComp = null;
395
- prevButtonComp = (h("kup-button", { id: "prev-page", icon: "chevron_left", "onkup-button-click": (e) => this.prevPage(e) }));
396
- nextButtonComp = (h("kup-button", { id: "next-page", icon: "chevron_right", "onkup-button-click": (e) => this.nextPage(e) }));
397
- return (h("div", { tabindex: "0", id: "date-picker-div", ref: (el) => (this.pickerContainerEl = el), onBlur: (e) => {
398
- if (!this.isRelatedTargetInThisComponent(e)) {
399
- this.onKupBlur();
400
- }
401
- } },
378
+ prevButtonComp = (h("kup-button", { id: "prev-page", icon: "chevron_left", "onkup-button-click": () => this.prevPage() }));
379
+ nextButtonComp = (h("kup-button", { id: "next-page", icon: "chevron_right", "onkup-button-click": () => this.nextPage() }));
380
+ return (h("div", { id: "date-picker-div", ref: (el) => (this.pickerContainerEl = el) },
402
381
  h("div", { class: "section-1" },
403
382
  h("div", { class: "sub-1 nav" },
404
383
  prevButtonComp,
405
- h("kup-button", { customStyle: "#kup-component button {text-transform:capitalize}", id: "change-view-button", styling: FButtonStyling.FLAT, label: changeViewButtonLabel, "onkup-button-click": (e) => this.changeView(e) }),
384
+ h("kup-button", { customStyle: "#kup-component button {text-transform:capitalize}", id: "change-view-button", styling: FButtonStyling.FLAT, label: changeViewButtonLabel, "onkup-button-click": () => this.changeView() }),
406
385
  nextButtonComp)),
407
386
  h("div", { class: "section-2" }, this.createCalendar())));
408
387
  }
@@ -464,8 +443,8 @@ export class KupDatePicker {
464
443
  dayClass += ' selected';
465
444
  }
466
445
  row.push(h("td", { class: dayClass },
467
- h("span", Object.assign({}, dataIndex, { class: "item-number", onClick: (e) => {
468
- this.onKupDatePickerItemClick(e, dataIndex['data-index']);
446
+ h("span", Object.assign({}, dataIndex, { class: "item-number", onClick: () => {
447
+ this.onKupDatePickerItemClick(dataIndex['data-index']);
469
448
  } }), dayCount)));
470
449
  dayCount++;
471
450
  if (dayCount > lastMonthDay.getDate()) {
@@ -510,8 +489,8 @@ export class KupDatePicker {
510
489
  monthClass += ' selected';
511
490
  }
512
491
  row.push(h("td", { class: monthClass },
513
- h("span", Object.assign({}, dataIndex, { class: "item-number", onClick: (e) => {
514
- this.onKupDatePickerMonthYearItemClick(e, dataIndex['data-index']);
492
+ h("span", Object.assign({}, dataIndex, { class: "item-number", onClick: () => {
493
+ this.onKupDatePickerMonthYearItemClick(dataIndex['data-index']);
515
494
  } }), months[monthCount])));
516
495
  monthCount++;
517
496
  }
@@ -553,8 +532,8 @@ export class KupDatePicker {
553
532
  yearClass += ' selected';
554
533
  }
555
534
  row.push(h("td", { class: yearClass },
556
- h("span", Object.assign({}, dataIndex, { class: "item-number", onClick: (e) => {
557
- this.onKupDatePickerMonthYearItemClick(e, dataIndex['data-index']);
535
+ h("span", Object.assign({}, dataIndex, { class: "item-number", onClick: () => {
536
+ this.onKupDatePickerMonthYearItemClick(dataIndex['data-index']);
558
537
  } }), yearCount)));
559
538
  yearCount++;
560
539
  }
@@ -566,8 +545,7 @@ export class KupDatePicker {
566
545
  return (h("table", { id: "calendar" },
567
546
  h("tbody", null, tbody)));
568
547
  }
569
- changeView(e) {
570
- e.stopPropagation();
548
+ changeView() {
571
549
  switch (this.calendarView) {
572
550
  case SourceEvent.DATE: {
573
551
  this.calendarView = SourceEvent.MONTH;
@@ -583,8 +561,7 @@ export class KupDatePicker {
583
561
  }
584
562
  this.refresh();
585
563
  }
586
- prevPage(e) {
587
- e.stopPropagation();
564
+ prevPage() {
588
565
  let date = this.pickerEl.date;
589
566
  let yy = date.getFullYear();
590
567
  let mm = date.getMonth();
@@ -610,8 +587,7 @@ export class KupDatePicker {
610
587
  this.pickerEl.date = date;
611
588
  this.refresh();
612
589
  }
613
- nextPage(e) {
614
- e.stopPropagation();
590
+ nextPage() {
615
591
  let date = this.pickerEl.date;
616
592
  let yy = date.getFullYear();
617
593
  let mm = date.getMonth();
@@ -644,11 +620,6 @@ export class KupDatePicker {
644
620
  let v1 = this.kupManager.dates.format(this.value);
645
621
  return v1;
646
622
  }
647
- recalcPosition() {
648
- if (this.pickerContainerEl != null && this.textfieldEl != null) {
649
- this.kupManager.dynamicPosition.register(this.pickerContainerEl, this.textfieldEl);
650
- }
651
- }
652
623
  /*-------------------------------------------------*/
653
624
  /* L i f e c y c l e H o o k s */
654
625
  /*-------------------------------------------------*/
@@ -670,11 +641,18 @@ export class KupDatePicker {
670
641
  this.kupManager.debug.logRender(this, false);
671
642
  }
672
643
  componentDidRender() {
673
- this.recalcPosition();
644
+ const root = this.rootElement.shadowRoot;
645
+ if (root) {
646
+ const f = root.querySelector('.f-text-field');
647
+ if (f) {
648
+ this.textfieldEl = f.querySelector('input');
649
+ FTextFieldMDC(f);
650
+ }
651
+ }
674
652
  this.kupManager.debug.logRender(this, true);
675
653
  }
676
654
  render() {
677
- let hostClass = {};
655
+ const hostClass = {};
678
656
  if (this.data &&
679
657
  this.data['kup-text-field'] &&
680
658
  this.data['kup-text-field']['className'] &&
@@ -686,19 +664,12 @@ export class KupDatePicker {
686
664
  this.data['kup-text-field']['fullWidth']) {
687
665
  hostClass['kup-full-width'] = true;
688
666
  }
689
- const customStyle = this.kupManager.theme.setCustomStyle(this.rootElement);
690
- return (h(Host, { class: hostClass, onBlur: () => this.onKupBlur() },
691
- customStyle ? h("style", null, customStyle) : null,
692
- h("div", { id: componentWrapperId },
693
- this.prepDateTextfield(),
694
- this.prepDatePicker())));
667
+ return (h(Host, { class: hostClass },
668
+ h("style", null, this.kupManager.theme.setKupStyle(this.rootElement)),
669
+ h("div", { id: componentWrapperId }, this.prepTextfield(this.getDateForOutput()))));
695
670
  }
696
671
  disconnectedCallback() {
697
672
  this.kupManager.theme.unregister(this);
698
- const dynamicPositionElements = this.rootElement.shadowRoot.querySelectorAll('[' + kupDynamicPositionAttribute + ']');
699
- if (dynamicPositionElements.length > 0) {
700
- this.kupManager.dynamicPosition.unregister(Array.prototype.slice.call(dynamicPositionElements));
701
- }
702
673
  }
703
674
  static get is() { return "kup-date-picker"; }
704
675
  static get encapsulation() { return "shadow"; }
@@ -721,11 +692,11 @@ export class KupDatePicker {
721
692
  "optional": false,
722
693
  "docs": {
723
694
  "tags": [{
724
- "text": "\"\"",
725
- "name": "default"
695
+ "name": "default",
696
+ "text": "\"\""
726
697
  }, {
727
- "text": "https ://ketchup.smeup.com/ketchup-showcase/#/customization",
728
- "name": "see"
698
+ "name": "see",
699
+ "text": "https://ketchup.smeup.com/ketchup-showcase/#/customization"
729
700
  }],
730
701
  "text": "Custom style of the component."
731
702
  },
@@ -749,8 +720,8 @@ export class KupDatePicker {
749
720
  "optional": false,
750
721
  "docs": {
751
722
  "tags": [{
752
- "text": "null",
753
- "name": "default"
723
+ "name": "default",
724
+ "text": "null"
754
725
  }],
755
726
  "text": "Props of the sub-components."
756
727
  },
@@ -768,8 +739,8 @@ export class KupDatePicker {
768
739
  "optional": false,
769
740
  "docs": {
770
741
  "tags": [{
771
- "text": "false",
772
- "name": "default"
742
+ "name": "default",
743
+ "text": "false"
773
744
  }],
774
745
  "text": "Defaults at false. When set to true, the component is disabled."
775
746
  },
@@ -789,8 +760,8 @@ export class KupDatePicker {
789
760
  "optional": false,
790
761
  "docs": {
791
762
  "tags": [{
792
- "text": "1",
793
- "name": "default"
763
+ "name": "default",
764
+ "text": "1"
794
765
  }],
795
766
  "text": "First day number (0 - sunday, 1 - monday, ...)\nTODO: manage with kupDates.locale, remove prop"
796
767
  },
@@ -810,8 +781,8 @@ export class KupDatePicker {
810
781
  "optional": false,
811
782
  "docs": {
812
783
  "tags": [{
813
- "text": "\"\"",
814
- "name": "default"
784
+ "name": "default",
785
+ "text": "\"\""
815
786
  }],
816
787
  "text": "Sets the initial value of the component"
817
788
  },
@@ -1030,8 +1001,8 @@ export class KupDatePicker {
1030
1001
  "signature": "(descriptions?: boolean) => Promise<GenericObject>",
1031
1002
  "parameters": [{
1032
1003
  "tags": [{
1033
- "text": "descriptions - When provided and true, the result will be the list of props with their description.",
1034
- "name": "param"
1004
+ "name": "param",
1005
+ "text": "descriptions - When provided and true, the result will be the list of props with their description."
1035
1006
  }],
1036
1007
  "text": "- When provided and true, the result will be the list of props with their description."
1037
1008
  }],
@@ -1094,8 +1065,8 @@ export class KupDatePicker {
1094
1065
  "signature": "(value: string) => Promise<void>",
1095
1066
  "parameters": [{
1096
1067
  "tags": [{
1097
- "text": "value - Value to be set.",
1098
- "name": "param"
1068
+ "name": "param",
1069
+ "text": "value - Value to be set."
1099
1070
  }],
1100
1071
  "text": "- Value to be set."
1101
1072
  }],
@@ -1123,7 +1094,7 @@ export class KupDatePicker {
1123
1094
  static get listeners() { return [{
1124
1095
  "name": "keyup",
1125
1096
  "method": "listenKeyup",
1126
- "target": "document",
1097
+ "target": undefined,
1127
1098
  "capture": false,
1128
1099
  "passive": false
1129
1100
  }]; }
@@ -123,9 +123,8 @@ export class KupDrawer {
123
123
  this.kupManager.debug.logRender(this, true);
124
124
  }
125
125
  render() {
126
- const customStyle = this.kupManager.theme.setCustomStyle(this.rootElement);
127
126
  return (h(Host, { "kup-opened": this.opened },
128
- customStyle ? h("style", null, customStyle) : null,
127
+ h("style", null, this.kupManager.theme.setKupStyle(this.rootElement)),
129
128
  h("div", { class: "backdrop", onPointerDown: () => this.close() }),
130
129
  h("div", { id: componentWrapperId },
131
130
  h("div", { class: drawerClass }, this.content()))));
@@ -154,11 +153,11 @@ export class KupDrawer {
154
153
  "optional": false,
155
154
  "docs": {
156
155
  "tags": [{
157
- "text": "\"\"",
158
- "name": "default"
156
+ "name": "default",
157
+ "text": "\"\""
159
158
  }, {
160
- "text": "https ://ketchup.smeup.com/ketchup-showcase/#/customization",
161
- "name": "see"
159
+ "name": "see",
160
+ "text": "https://ketchup.smeup.com/ketchup-showcase/#/customization"
162
161
  }],
163
162
  "text": "Custom style of the component."
164
163
  },
@@ -253,8 +252,8 @@ export class KupDrawer {
253
252
  "signature": "(descriptions?: boolean) => Promise<GenericObject>",
254
253
  "parameters": [{
255
254
  "tags": [{
256
- "text": "descriptions - When provided and true, the result will be the list of props with their description.",
257
- "name": "param"
255
+ "name": "param",
256
+ "text": "descriptions - When provided and true, the result will be the list of props with their description."
258
257
  }],
259
258
  "text": "- When provided and true, the result will be the list of props with their description."
260
259
  }],
@@ -336,8 +335,8 @@ export class KupDrawer {
336
335
  "signature": "(props: GenericObject) => Promise<void>",
337
336
  "parameters": [{
338
337
  "tags": [{
339
- "text": "props - Object containing props that will be set to the component.",
340
- "name": "param"
338
+ "name": "param",
339
+ "text": "props - Object containing props that will be set to the component."
341
340
  }],
342
341
  "text": "- Object containing props that will be set to the component."
343
342
  }],