@web-atoms/web-controls 2.5.39 → 2.5.41

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 (779) hide show
  1. package/dist/basic/DropDownInput.d.ts.map +1 -1
  2. package/dist/basic/DropDownInput.js +1 -0
  3. package/dist/basic/DropDownInput.js.map +1 -1
  4. package/dist/tsconfig.tsbuildinfo +1 -1
  5. package/dist-esm/ArrayLike.d.ts +13 -0
  6. package/dist-esm/ArrayLike.d.ts.map +1 -0
  7. package/dist-esm/ArrayLike.js +16 -0
  8. package/dist-esm/ArrayLike.js.map +1 -0
  9. package/dist-esm/DataAttributes.d.ts +8 -0
  10. package/dist-esm/DataAttributes.d.ts.map +1 -0
  11. package/dist-esm/DataAttributes.js +23 -0
  12. package/dist-esm/DataAttributes.js.map +1 -0
  13. package/dist-esm/Focusable.d.ts +4 -0
  14. package/dist-esm/Focusable.d.ts.map +1 -0
  15. package/dist-esm/Focusable.js +13 -0
  16. package/dist-esm/Focusable.js.map +1 -0
  17. package/dist-esm/ModuleFiles.d.ts +43 -0
  18. package/dist-esm/ModuleFiles.d.ts.map +1 -0
  19. package/dist-esm/ModuleFiles.js +44 -0
  20. package/dist-esm/ModuleFiles.js.map +1 -0
  21. package/dist-esm/NumberFormats.d.ts +15 -0
  22. package/dist-esm/NumberFormats.d.ts.map +1 -0
  23. package/dist-esm/NumberFormats.js +71 -0
  24. package/dist-esm/NumberFormats.js.map +1 -0
  25. package/dist-esm/PageNavigator.d.ts +10 -0
  26. package/dist-esm/PageNavigator.d.ts.map +1 -0
  27. package/dist-esm/PageNavigator.js +37 -0
  28. package/dist-esm/PageNavigator.js.map +1 -0
  29. package/dist-esm/animations/Animations.d.ts +6 -0
  30. package/dist-esm/animations/Animations.d.ts.map +1 -0
  31. package/dist-esm/animations/Animations.js +37 -0
  32. package/dist-esm/animations/Animations.js.map +1 -0
  33. package/dist-esm/auto-complete/AppComboBoxViewModel.d.ts +7 -0
  34. package/dist-esm/auto-complete/AppComboBoxViewModel.d.ts.map +1 -0
  35. package/dist-esm/auto-complete/AppComboBoxViewModel.js +9 -0
  36. package/dist-esm/auto-complete/AppComboBoxViewModel.js.map +1 -0
  37. package/dist-esm/auto-complete/AutoCompleteBox.d.ts +39 -0
  38. package/dist-esm/auto-complete/AutoCompleteBox.d.ts.map +1 -0
  39. package/dist-esm/auto-complete/AutoCompleteBox.js +286 -0
  40. package/dist-esm/auto-complete/AutoCompleteBox.js.map +1 -0
  41. package/dist-esm/auto-complete/AutoCompleteBoxStyle.d.ts +12 -0
  42. package/dist-esm/auto-complete/AutoCompleteBoxStyle.d.ts.map +1 -0
  43. package/dist-esm/auto-complete/AutoCompleteBoxStyle.js +82 -0
  44. package/dist-esm/auto-complete/AutoCompleteBoxStyle.js.map +1 -0
  45. package/dist-esm/auto-complete/ItemHost.d.ts +7 -0
  46. package/dist-esm/auto-complete/ItemHost.d.ts.map +1 -0
  47. package/dist-esm/auto-complete/ItemHost.js +19 -0
  48. package/dist-esm/auto-complete/ItemHost.js.map +1 -0
  49. package/dist-esm/basic/AtomChips.d.ts +46 -0
  50. package/dist-esm/basic/AtomChips.d.ts.map +1 -0
  51. package/dist-esm/basic/AtomChips.js +367 -0
  52. package/dist-esm/basic/AtomChips.js.map +1 -0
  53. package/dist-esm/basic/AtomRepeater.d.ts +129 -0
  54. package/dist-esm/basic/AtomRepeater.d.ts.map +1 -0
  55. package/dist-esm/basic/AtomRepeater.js +1165 -0
  56. package/dist-esm/basic/AtomRepeater.js.map +1 -0
  57. package/dist-esm/basic/AtomSuggestions.d.ts +21 -0
  58. package/dist-esm/basic/AtomSuggestions.d.ts.map +1 -0
  59. package/dist-esm/basic/AtomSuggestions.js +127 -0
  60. package/dist-esm/basic/AtomSuggestions.js.map +1 -0
  61. package/dist-esm/basic/AttachedPopup.d.ts +1 -0
  62. package/dist-esm/basic/AttachedPopup.d.ts.map +1 -0
  63. package/dist-esm/basic/AttachedPopup.js +1 -0
  64. package/dist-esm/basic/AttachedPopup.js.map +1 -0
  65. package/dist-esm/basic/Button.d.ts +20 -0
  66. package/dist-esm/basic/Button.d.ts.map +1 -0
  67. package/dist-esm/basic/Button.js +23 -0
  68. package/dist-esm/basic/Button.js.map +1 -0
  69. package/dist-esm/basic/ButtonBar.d.ts +20 -0
  70. package/dist-esm/basic/ButtonBar.d.ts.map +1 -0
  71. package/dist-esm/basic/ButtonBar.js +83 -0
  72. package/dist-esm/basic/ButtonBar.js.map +1 -0
  73. package/dist-esm/basic/Calendar.d.ts +43 -0
  74. package/dist-esm/basic/Calendar.d.ts.map +1 -0
  75. package/dist-esm/basic/Calendar.js +237 -0
  76. package/dist-esm/basic/Calendar.js.map +1 -0
  77. package/dist-esm/basic/CheckBoxList.d.ts +8 -0
  78. package/dist-esm/basic/CheckBoxList.d.ts.map +1 -0
  79. package/dist-esm/basic/CheckBoxList.js +80 -0
  80. package/dist-esm/basic/CheckBoxList.js.map +1 -0
  81. package/dist-esm/basic/Checkbox.d.ts +8 -0
  82. package/dist-esm/basic/Checkbox.d.ts.map +1 -0
  83. package/dist-esm/basic/Checkbox.js +9 -0
  84. package/dist-esm/basic/Checkbox.js.map +1 -0
  85. package/dist-esm/basic/Chip.d.ts +15 -0
  86. package/dist-esm/basic/Chip.d.ts.map +1 -0
  87. package/dist-esm/basic/Chip.js +13 -0
  88. package/dist-esm/basic/Chip.js.map +1 -0
  89. package/dist-esm/basic/ComboBox.d.ts +11 -0
  90. package/dist-esm/basic/ComboBox.d.ts.map +1 -0
  91. package/dist-esm/basic/ComboBox.js +63 -0
  92. package/dist-esm/basic/ComboBox.js.map +1 -0
  93. package/dist-esm/basic/DataGrid.d.ts +59 -0
  94. package/dist-esm/basic/DataGrid.d.ts.map +1 -0
  95. package/dist-esm/basic/DataGrid.js +290 -0
  96. package/dist-esm/basic/DataGrid.js.map +1 -0
  97. package/dist-esm/basic/DateField.d.ts +18 -0
  98. package/dist-esm/basic/DateField.d.ts.map +1 -0
  99. package/dist-esm/basic/DateField.js +158 -0
  100. package/dist-esm/basic/DateField.js.map +1 -0
  101. package/dist-esm/basic/DropDown.d.ts +22 -0
  102. package/dist-esm/basic/DropDown.d.ts.map +1 -0
  103. package/dist-esm/basic/DropDown.js +122 -0
  104. package/dist-esm/basic/DropDown.js.map +1 -0
  105. package/dist-esm/basic/DropDownInput.d.ts +33 -0
  106. package/dist-esm/basic/DropDownInput.d.ts.map +1 -0
  107. package/dist-esm/basic/DropDownInput.js +140 -0
  108. package/dist-esm/basic/DropDownInput.js.map +1 -0
  109. package/dist-esm/basic/Editable.d.ts +12 -0
  110. package/dist-esm/basic/Editable.d.ts.map +1 -0
  111. package/dist-esm/basic/Editable.js +91 -0
  112. package/dist-esm/basic/Editable.js.map +1 -0
  113. package/dist-esm/basic/Expander.d.ts +12 -0
  114. package/dist-esm/basic/Expander.d.ts.map +1 -0
  115. package/dist-esm/basic/Expander.js +91 -0
  116. package/dist-esm/basic/Expander.js.map +1 -0
  117. package/dist-esm/basic/FilesDragDrop.d.ts +20 -0
  118. package/dist-esm/basic/FilesDragDrop.d.ts.map +1 -0
  119. package/dist-esm/basic/FilesDragDrop.js +90 -0
  120. package/dist-esm/basic/FilesDragDrop.js.map +1 -0
  121. package/dist-esm/basic/Form.d.ts +21 -0
  122. package/dist-esm/basic/Form.d.ts.map +1 -0
  123. package/dist-esm/basic/Form.js +61 -0
  124. package/dist-esm/basic/Form.js.map +1 -0
  125. package/dist-esm/basic/FormField.d.ts +17 -0
  126. package/dist-esm/basic/FormField.d.ts.map +1 -0
  127. package/dist-esm/basic/FormField.js +126 -0
  128. package/dist-esm/basic/FormField.js.map +1 -0
  129. package/dist-esm/basic/IElement.d.ts +14 -0
  130. package/dist-esm/basic/IElement.d.ts.map +1 -0
  131. package/dist-esm/basic/IElement.js +2 -0
  132. package/dist-esm/basic/IElement.js.map +1 -0
  133. package/dist-esm/basic/InlinePopup.d.ts +29 -0
  134. package/dist-esm/basic/InlinePopup.d.ts.map +1 -0
  135. package/dist-esm/basic/InlinePopup.js +258 -0
  136. package/dist-esm/basic/InlinePopup.js.map +1 -0
  137. package/dist-esm/basic/InlinePopupButton.d.ts +13 -0
  138. package/dist-esm/basic/InlinePopupButton.d.ts.map +1 -0
  139. package/dist-esm/basic/InlinePopupButton.js +99 -0
  140. package/dist-esm/basic/InlinePopupButton.js.map +1 -0
  141. package/dist-esm/basic/InlinePopupControl.d.ts +7 -0
  142. package/dist-esm/basic/InlinePopupControl.d.ts.map +1 -0
  143. package/dist-esm/basic/InlinePopupControl.js +25 -0
  144. package/dist-esm/basic/InlinePopupControl.js.map +1 -0
  145. package/dist-esm/basic/ItemPath.d.ts +5 -0
  146. package/dist-esm/basic/ItemPath.d.ts.map +1 -0
  147. package/dist-esm/basic/ItemPath.js +69 -0
  148. package/dist-esm/basic/ItemPath.js.map +1 -0
  149. package/dist-esm/basic/LimitedText.d.ts +8 -0
  150. package/dist-esm/basic/LimitedText.d.ts.map +1 -0
  151. package/dist-esm/basic/LimitedText.js +42 -0
  152. package/dist-esm/basic/LimitedText.js.map +1 -0
  153. package/dist-esm/basic/ListRepeater.d.ts +8 -0
  154. package/dist-esm/basic/ListRepeater.d.ts.map +1 -0
  155. package/dist-esm/basic/ListRepeater.js +16 -0
  156. package/dist-esm/basic/ListRepeater.js.map +1 -0
  157. package/dist-esm/basic/MaskedInput.d.ts +7 -0
  158. package/dist-esm/basic/MaskedInput.d.ts.map +1 -0
  159. package/dist-esm/basic/MaskedInput.js +33 -0
  160. package/dist-esm/basic/MaskedInput.js.map +1 -0
  161. package/dist-esm/basic/MaskedInputDiv.d.ts +6 -0
  162. package/dist-esm/basic/MaskedInputDiv.d.ts.map +1 -0
  163. package/dist-esm/basic/MaskedInputDiv.js +59 -0
  164. package/dist-esm/basic/MaskedInputDiv.js.map +1 -0
  165. package/dist-esm/basic/MergeNode.d.ts +29 -0
  166. package/dist-esm/basic/MergeNode.d.ts.map +1 -0
  167. package/dist-esm/basic/MergeNode.js +42 -0
  168. package/dist-esm/basic/MergeNode.js.map +1 -0
  169. package/dist-esm/basic/PasswordBox.d.ts +8 -0
  170. package/dist-esm/basic/PasswordBox.d.ts.map +1 -0
  171. package/dist-esm/basic/PasswordBox.js +19 -0
  172. package/dist-esm/basic/PasswordBox.js.map +1 -0
  173. package/dist-esm/basic/PinchZoomView.d.ts +20 -0
  174. package/dist-esm/basic/PinchZoomView.d.ts.map +1 -0
  175. package/dist-esm/basic/PinchZoomView.js +222 -0
  176. package/dist-esm/basic/PinchZoomView.js.map +1 -0
  177. package/dist-esm/basic/PopupButton.d.ts +15 -0
  178. package/dist-esm/basic/PopupButton.d.ts.map +1 -0
  179. package/dist-esm/basic/PopupButton.js +21 -0
  180. package/dist-esm/basic/PopupButton.js.map +1 -0
  181. package/dist-esm/basic/PopupMenu.d.ts +4 -0
  182. package/dist-esm/basic/PopupMenu.d.ts.map +1 -0
  183. package/dist-esm/basic/PopupMenu.js +6 -0
  184. package/dist-esm/basic/PopupMenu.js.map +1 -0
  185. package/dist-esm/basic/RadioButtonList.d.ts +6 -0
  186. package/dist-esm/basic/RadioButtonList.d.ts.map +1 -0
  187. package/dist-esm/basic/RadioButtonList.js +28 -0
  188. package/dist-esm/basic/RadioButtonList.js.map +1 -0
  189. package/dist-esm/basic/RefreshLock.d.ts +14 -0
  190. package/dist-esm/basic/RefreshLock.d.ts.map +1 -0
  191. package/dist-esm/basic/RefreshLock.js +48 -0
  192. package/dist-esm/basic/RefreshLock.js.map +1 -0
  193. package/dist-esm/basic/Resizable.d.ts +7 -0
  194. package/dist-esm/basic/Resizable.d.ts.map +1 -0
  195. package/dist-esm/basic/Resizable.js +38 -0
  196. package/dist-esm/basic/Resizable.js.map +1 -0
  197. package/dist-esm/basic/Select.d.ts +9 -0
  198. package/dist-esm/basic/Select.d.ts.map +1 -0
  199. package/dist-esm/basic/Select.js +80 -0
  200. package/dist-esm/basic/Select.js.map +1 -0
  201. package/dist-esm/basic/SortByButton.d.ts +9 -0
  202. package/dist-esm/basic/SortByButton.d.ts.map +1 -0
  203. package/dist-esm/basic/SortByButton.js +34 -0
  204. package/dist-esm/basic/SortByButton.js.map +1 -0
  205. package/dist-esm/basic/Swipe.d.ts +4 -0
  206. package/dist-esm/basic/Swipe.d.ts.map +1 -0
  207. package/dist-esm/basic/Swipe.js +97 -0
  208. package/dist-esm/basic/Swipe.js.map +1 -0
  209. package/dist-esm/basic/Switch.d.ts +9 -0
  210. package/dist-esm/basic/Switch.d.ts.map +1 -0
  211. package/dist-esm/basic/Switch.js +9 -0
  212. package/dist-esm/basic/Switch.js.map +1 -0
  213. package/dist-esm/basic/TableRepeater.d.ts +8 -0
  214. package/dist-esm/basic/TableRepeater.d.ts.map +1 -0
  215. package/dist-esm/basic/TableRepeater.js +37 -0
  216. package/dist-esm/basic/TableRepeater.js.map +1 -0
  217. package/dist-esm/basic/TimeEditor.d.ts +12 -0
  218. package/dist-esm/basic/TimeEditor.d.ts.map +1 -0
  219. package/dist-esm/basic/TimeEditor.js +69 -0
  220. package/dist-esm/basic/TimeEditor.js.map +1 -0
  221. package/dist-esm/basic/TitleEditor.d.ts +12 -0
  222. package/dist-esm/basic/TitleEditor.d.ts.map +1 -0
  223. package/dist-esm/basic/TitleEditor.js +101 -0
  224. package/dist-esm/basic/TitleEditor.js.map +1 -0
  225. package/dist-esm/basic/ToggleButtonBar.d.ts +8 -0
  226. package/dist-esm/basic/ToggleButtonBar.d.ts.map +1 -0
  227. package/dist-esm/basic/ToggleButtonBar.js +30 -0
  228. package/dist-esm/basic/ToggleButtonBar.js.map +1 -0
  229. package/dist-esm/basic/Tooltip.d.ts +6 -0
  230. package/dist-esm/basic/Tooltip.d.ts.map +1 -0
  231. package/dist-esm/basic/Tooltip.js +56 -0
  232. package/dist-esm/basic/Tooltip.js.map +1 -0
  233. package/dist-esm/basic/TypeWriter.d.ts +6 -0
  234. package/dist-esm/basic/TypeWriter.d.ts.map +1 -0
  235. package/dist-esm/basic/TypeWriter.js +50 -0
  236. package/dist-esm/basic/TypeWriter.js.map +1 -0
  237. package/dist-esm/basic/UploadEvent.d.ts +58 -0
  238. package/dist-esm/basic/UploadEvent.d.ts.map +1 -0
  239. package/dist-esm/basic/UploadEvent.js +199 -0
  240. package/dist-esm/basic/UploadEvent.js.map +1 -0
  241. package/dist-esm/basic/ZoomView.d.ts +21 -0
  242. package/dist-esm/basic/ZoomView.d.ts.map +1 -0
  243. package/dist-esm/basic/ZoomView.js +223 -0
  244. package/dist-esm/basic/ZoomView.js.map +1 -0
  245. package/dist-esm/basic/combineClasses.d.ts +2 -0
  246. package/dist-esm/basic/combineClasses.d.ts.map +1 -0
  247. package/dist-esm/basic/combineClasses.js +4 -0
  248. package/dist-esm/basic/combineClasses.js.map +1 -0
  249. package/dist-esm/basic/elements/AtomPopover.d.ts +51 -0
  250. package/dist-esm/basic/elements/AtomPopover.d.ts.map +1 -0
  251. package/dist-esm/basic/elements/AtomPopover.js +290 -0
  252. package/dist-esm/basic/elements/AtomPopover.js.map +1 -0
  253. package/dist-esm/basic/elements/getContainingBlock.d.ts +3 -0
  254. package/dist-esm/basic/elements/getContainingBlock.d.ts.map +1 -0
  255. package/dist-esm/basic/elements/getContainingBlock.js +37 -0
  256. package/dist-esm/basic/elements/getContainingBlock.js.map +1 -0
  257. package/dist-esm/basic/elements/relativeRect.d.ts +10 -0
  258. package/dist-esm/basic/elements/relativeRect.d.ts.map +1 -0
  259. package/dist-esm/basic/elements/relativeRect.js +24 -0
  260. package/dist-esm/basic/elements/relativeRect.js.map +1 -0
  261. package/dist-esm/button-bar/AtomButtonBar.d.ts +8 -0
  262. package/dist-esm/button-bar/AtomButtonBar.d.ts.map +1 -0
  263. package/dist-esm/button-bar/AtomButtonBar.js +24 -0
  264. package/dist-esm/button-bar/AtomButtonBar.js.map +1 -0
  265. package/dist-esm/buttons/AtomPopupButton.d.ts +5 -0
  266. package/dist-esm/buttons/AtomPopupButton.d.ts.map +1 -0
  267. package/dist-esm/buttons/AtomPopupButton.js +9 -0
  268. package/dist-esm/buttons/AtomPopupButton.js.map +1 -0
  269. package/dist-esm/buttons/AtomPopupButtonStyle.d.ts +6 -0
  270. package/dist-esm/buttons/AtomPopupButtonStyle.d.ts.map +1 -0
  271. package/dist-esm/buttons/AtomPopupButtonStyle.js +19 -0
  272. package/dist-esm/buttons/AtomPopupButtonStyle.js.map +1 -0
  273. package/dist-esm/calendar/AtomCalendar.d.ts +18 -0
  274. package/dist-esm/calendar/AtomCalendar.d.ts.map +1 -0
  275. package/dist-esm/calendar/AtomCalendar.js +60 -0
  276. package/dist-esm/calendar/AtomCalendar.js.map +1 -0
  277. package/dist-esm/calendar/AtomCalendarStyle.d.ts +10 -0
  278. package/dist-esm/calendar/AtomCalendarStyle.d.ts.map +1 -0
  279. package/dist-esm/calendar/AtomCalendarStyle.js +180 -0
  280. package/dist-esm/calendar/AtomCalendarStyle.js.map +1 -0
  281. package/dist-esm/calendar/CalendarViewModel.d.ts +31 -0
  282. package/dist-esm/calendar/CalendarViewModel.d.ts.map +1 -0
  283. package/dist-esm/calendar/CalendarViewModel.js +120 -0
  284. package/dist-esm/calendar/CalendarViewModel.js.map +1 -0
  285. package/dist-esm/calendar/res/SRCalendar.d.ts +12 -0
  286. package/dist-esm/calendar/res/SRCalendar.d.ts.map +1 -0
  287. package/dist-esm/calendar/res/SRCalendar.js +37 -0
  288. package/dist-esm/calendar/res/SRCalendar.js.map +1 -0
  289. package/dist-esm/calendar/res/en-US/SRCalendar.d.ts +12 -0
  290. package/dist-esm/calendar/res/en-US/SRCalendar.d.ts.map +1 -0
  291. package/dist-esm/calendar/res/en-US/SRCalendar.js +27 -0
  292. package/dist-esm/calendar/res/en-US/SRCalendar.js.map +1 -0
  293. package/dist-esm/data-grid/AtomColumn.d.ts +15 -0
  294. package/dist-esm/data-grid/AtomColumn.d.ts.map +1 -0
  295. package/dist-esm/data-grid/AtomColumn.js +64 -0
  296. package/dist-esm/data-grid/AtomColumn.js.map +1 -0
  297. package/dist-esm/data-grid/AtomDataGrid.d.ts +9 -0
  298. package/dist-esm/data-grid/AtomDataGrid.d.ts.map +1 -0
  299. package/dist-esm/data-grid/AtomDataGrid.js +50 -0
  300. package/dist-esm/data-grid/AtomDataGrid.js.map +1 -0
  301. package/dist-esm/data-grid/AtomDataGridStyle.d.ts +6 -0
  302. package/dist-esm/data-grid/AtomDataGridStyle.d.ts.map +1 -0
  303. package/dist-esm/data-grid/AtomDataGridStyle.js +43 -0
  304. package/dist-esm/data-grid/AtomDataGridStyle.js.map +1 -0
  305. package/dist-esm/data-grid/AtomDataGridViewModel.d.ts +13 -0
  306. package/dist-esm/data-grid/AtomDataGridViewModel.d.ts.map +1 -0
  307. package/dist-esm/data-grid/AtomDataGridViewModel.js +58 -0
  308. package/dist-esm/data-grid/AtomDataGridViewModel.js.map +1 -0
  309. package/dist-esm/data-grid/GridTemplate.d.ts +9 -0
  310. package/dist-esm/data-grid/GridTemplate.d.ts.map +1 -0
  311. package/dist-esm/data-grid/GridTemplate.js +58 -0
  312. package/dist-esm/data-grid/GridTemplate.js.map +1 -0
  313. package/dist-esm/data-pager/AtomDataPager.d.ts +19 -0
  314. package/dist-esm/data-pager/AtomDataPager.d.ts.map +1 -0
  315. package/dist-esm/data-pager/AtomDataPager.js +83 -0
  316. package/dist-esm/data-pager/AtomDataPager.js.map +1 -0
  317. package/dist-esm/date-field/AtomDateField.d.ts +20 -0
  318. package/dist-esm/date-field/AtomDateField.d.ts.map +1 -0
  319. package/dist-esm/date-field/AtomDateField.js +54 -0
  320. package/dist-esm/date-field/AtomDateField.js.map +1 -0
  321. package/dist-esm/desktop-app/DesktopApp.d.ts +16 -0
  322. package/dist-esm/desktop-app/DesktopApp.d.ts.map +1 -0
  323. package/dist-esm/desktop-app/DesktopApp.js +99 -0
  324. package/dist-esm/desktop-app/DesktopApp.js.map +1 -0
  325. package/dist-esm/desktop-app/MobileDesktopApp.d.ts +16 -0
  326. package/dist-esm/desktop-app/MobileDesktopApp.d.ts.map +1 -0
  327. package/dist-esm/desktop-app/MobileDesktopApp.js +36 -0
  328. package/dist-esm/desktop-app/MobileDesktopApp.js.map +1 -0
  329. package/dist-esm/dev/DevHost.d.ts +36 -0
  330. package/dist-esm/dev/DevHost.d.ts.map +1 -0
  331. package/dist-esm/dev/DevHost.js +113 -0
  332. package/dist-esm/dev/DevHost.js.map +1 -0
  333. package/dist-esm/form/AtomField.d.ts +23 -0
  334. package/dist-esm/form/AtomField.d.ts.map +1 -0
  335. package/dist-esm/form/AtomField.js +121 -0
  336. package/dist-esm/form/AtomField.js.map +1 -0
  337. package/dist-esm/form/AtomForm.d.ts +11 -0
  338. package/dist-esm/form/AtomForm.d.ts.map +1 -0
  339. package/dist-esm/form/AtomForm.js +85 -0
  340. package/dist-esm/form/AtomForm.js.map +1 -0
  341. package/dist-esm/form/AtomFormGroup.d.ts +5 -0
  342. package/dist-esm/form/AtomFormGroup.d.ts.map +1 -0
  343. package/dist-esm/form/AtomFormGroup.js +6 -0
  344. package/dist-esm/form/AtomFormGroup.js.map +1 -0
  345. package/dist-esm/form/AtomFormStyle.d.ts +7 -0
  346. package/dist-esm/form/AtomFormStyle.d.ts.map +1 -0
  347. package/dist-esm/form/AtomFormStyle.js +60 -0
  348. package/dist-esm/form/AtomFormStyle.js.map +1 -0
  349. package/dist-esm/form/HelpPopup.d.ts +5 -0
  350. package/dist-esm/form/HelpPopup.d.ts.map +1 -0
  351. package/dist-esm/form/HelpPopup.js +10 -0
  352. package/dist-esm/form/HelpPopup.js.map +1 -0
  353. package/dist-esm/html-editor/AtomHtmlEditor.d.ts +47 -0
  354. package/dist-esm/html-editor/AtomHtmlEditor.d.ts.map +1 -0
  355. package/dist-esm/html-editor/AtomHtmlEditor.js +349 -0
  356. package/dist-esm/html-editor/AtomHtmlEditor.js.map +1 -0
  357. package/dist-esm/html-editor/HtmlEditorCommands.d.ts +7 -0
  358. package/dist-esm/html-editor/HtmlEditorCommands.d.ts.map +1 -0
  359. package/dist-esm/html-editor/HtmlEditorCommands.js +6 -0
  360. package/dist-esm/html-editor/HtmlEditorCommands.js.map +1 -0
  361. package/dist-esm/html-editor/InlineHtmlEditor.d.ts +41 -0
  362. package/dist-esm/html-editor/InlineHtmlEditor.d.ts.map +1 -0
  363. package/dist-esm/html-editor/InlineHtmlEditor.js +184 -0
  364. package/dist-esm/html-editor/InlineHtmlEditor.js.map +1 -0
  365. package/dist-esm/html-editor/RangeEditor.d.ts +19 -0
  366. package/dist-esm/html-editor/RangeEditor.d.ts.map +1 -0
  367. package/dist-esm/html-editor/RangeEditor.js +61 -0
  368. package/dist-esm/html-editor/RangeEditor.js.map +1 -0
  369. package/dist-esm/html-editor/commands/AddImage.d.ts +7 -0
  370. package/dist-esm/html-editor/commands/AddImage.d.ts.map +1 -0
  371. package/dist-esm/html-editor/commands/AddImage.js +50 -0
  372. package/dist-esm/html-editor/commands/AddImage.js.map +1 -0
  373. package/dist-esm/html-editor/commands/AddLink.d.ts +5 -0
  374. package/dist-esm/html-editor/commands/AddLink.d.ts.map +1 -0
  375. package/dist-esm/html-editor/commands/AddLink.js +71 -0
  376. package/dist-esm/html-editor/commands/AddLink.js.map +1 -0
  377. package/dist-esm/html-editor/commands/Align.d.ts +3 -0
  378. package/dist-esm/html-editor/commands/Align.d.ts.map +1 -0
  379. package/dist-esm/html-editor/commands/Align.js +11 -0
  380. package/dist-esm/html-editor/commands/Align.js.map +1 -0
  381. package/dist-esm/html-editor/commands/AttachFile.d.ts +8 -0
  382. package/dist-esm/html-editor/commands/AttachFile.d.ts.map +1 -0
  383. package/dist-esm/html-editor/commands/AttachFile.js +15 -0
  384. package/dist-esm/html-editor/commands/AttachFile.js.map +1 -0
  385. package/dist-esm/html-editor/commands/AttachImage.d.ts +8 -0
  386. package/dist-esm/html-editor/commands/AttachImage.d.ts.map +1 -0
  387. package/dist-esm/html-editor/commands/AttachImage.js +29 -0
  388. package/dist-esm/html-editor/commands/AttachImage.js.map +1 -0
  389. package/dist-esm/html-editor/commands/Bold.d.ts +3 -0
  390. package/dist-esm/html-editor/commands/Bold.d.ts.map +1 -0
  391. package/dist-esm/html-editor/commands/Bold.js +13 -0
  392. package/dist-esm/html-editor/commands/Bold.js.map +1 -0
  393. package/dist-esm/html-editor/commands/ChangeColor.d.ts +3 -0
  394. package/dist-esm/html-editor/commands/ChangeColor.d.ts.map +1 -0
  395. package/dist-esm/html-editor/commands/ChangeColor.js +116 -0
  396. package/dist-esm/html-editor/commands/ChangeColor.js.map +1 -0
  397. package/dist-esm/html-editor/commands/ChangeFont.d.ts +7 -0
  398. package/dist-esm/html-editor/commands/ChangeFont.d.ts.map +1 -0
  399. package/dist-esm/html-editor/commands/ChangeFont.js +51 -0
  400. package/dist-esm/html-editor/commands/ChangeFont.js.map +1 -0
  401. package/dist-esm/html-editor/commands/ChangeFontSize.d.ts +3 -0
  402. package/dist-esm/html-editor/commands/ChangeFontSize.d.ts.map +1 -0
  403. package/dist-esm/html-editor/commands/ChangeFontSize.js +9 -0
  404. package/dist-esm/html-editor/commands/ChangeFontSize.js.map +1 -0
  405. package/dist-esm/html-editor/commands/Command.d.ts +12 -0
  406. package/dist-esm/html-editor/commands/Command.d.ts.map +1 -0
  407. package/dist-esm/html-editor/commands/Command.js +18 -0
  408. package/dist-esm/html-editor/commands/Command.js.map +1 -0
  409. package/dist-esm/html-editor/commands/CommandButton.d.ts +12 -0
  410. package/dist-esm/html-editor/commands/CommandButton.d.ts.map +1 -0
  411. package/dist-esm/html-editor/commands/CommandButton.js +39 -0
  412. package/dist-esm/html-editor/commands/CommandButton.js.map +1 -0
  413. package/dist-esm/html-editor/commands/Headings.d.ts +2 -0
  414. package/dist-esm/html-editor/commands/Headings.d.ts.map +1 -0
  415. package/dist-esm/html-editor/commands/Headings.js +13 -0
  416. package/dist-esm/html-editor/commands/Headings.js.map +1 -0
  417. package/dist-esm/html-editor/commands/HorizontalRule.d.ts +3 -0
  418. package/dist-esm/html-editor/commands/HorizontalRule.d.ts.map +1 -0
  419. package/dist-esm/html-editor/commands/HorizontalRule.js +12 -0
  420. package/dist-esm/html-editor/commands/HorizontalRule.js.map +1 -0
  421. package/dist-esm/html-editor/commands/HtmlCommands.d.ts +59 -0
  422. package/dist-esm/html-editor/commands/HtmlCommands.d.ts.map +1 -0
  423. package/dist-esm/html-editor/commands/HtmlCommands.js +68 -0
  424. package/dist-esm/html-editor/commands/HtmlCommands.js.map +1 -0
  425. package/dist-esm/html-editor/commands/IndentLess.d.ts +2 -0
  426. package/dist-esm/html-editor/commands/IndentLess.d.ts.map +1 -0
  427. package/dist-esm/html-editor/commands/IndentLess.js +13 -0
  428. package/dist-esm/html-editor/commands/IndentLess.js.map +1 -0
  429. package/dist-esm/html-editor/commands/IndentMore.d.ts +2 -0
  430. package/dist-esm/html-editor/commands/IndentMore.d.ts.map +1 -0
  431. package/dist-esm/html-editor/commands/IndentMore.js +13 -0
  432. package/dist-esm/html-editor/commands/IndentMore.js.map +1 -0
  433. package/dist-esm/html-editor/commands/Italic.d.ts +3 -0
  434. package/dist-esm/html-editor/commands/Italic.d.ts.map +1 -0
  435. package/dist-esm/html-editor/commands/Italic.js +13 -0
  436. package/dist-esm/html-editor/commands/Italic.js.map +1 -0
  437. package/dist-esm/html-editor/commands/NumberedList.d.ts +2 -0
  438. package/dist-esm/html-editor/commands/NumberedList.d.ts.map +1 -0
  439. package/dist-esm/html-editor/commands/NumberedList.js +13 -0
  440. package/dist-esm/html-editor/commands/NumberedList.js.map +1 -0
  441. package/dist-esm/html-editor/commands/Quote.d.ts +2 -0
  442. package/dist-esm/html-editor/commands/Quote.d.ts.map +1 -0
  443. package/dist-esm/html-editor/commands/Quote.js +13 -0
  444. package/dist-esm/html-editor/commands/Quote.js.map +1 -0
  445. package/dist-esm/html-editor/commands/RemoveFormat.d.ts +2 -0
  446. package/dist-esm/html-editor/commands/RemoveFormat.d.ts.map +1 -0
  447. package/dist-esm/html-editor/commands/RemoveFormat.js +13 -0
  448. package/dist-esm/html-editor/commands/RemoveFormat.js.map +1 -0
  449. package/dist-esm/html-editor/commands/Separator.d.ts +3 -0
  450. package/dist-esm/html-editor/commands/Separator.d.ts.map +1 -0
  451. package/dist-esm/html-editor/commands/Separator.js +6 -0
  452. package/dist-esm/html-editor/commands/Separator.js.map +1 -0
  453. package/dist-esm/html-editor/commands/Source.d.ts +8 -0
  454. package/dist-esm/html-editor/commands/Source.d.ts.map +1 -0
  455. package/dist-esm/html-editor/commands/Source.js +37 -0
  456. package/dist-esm/html-editor/commands/Source.js.map +1 -0
  457. package/dist-esm/html-editor/commands/StrikeThrough.d.ts +3 -0
  458. package/dist-esm/html-editor/commands/StrikeThrough.d.ts.map +1 -0
  459. package/dist-esm/html-editor/commands/StrikeThrough.js +13 -0
  460. package/dist-esm/html-editor/commands/StrikeThrough.js.map +1 -0
  461. package/dist-esm/html-editor/commands/Toolbar.d.ts +4 -0
  462. package/dist-esm/html-editor/commands/Toolbar.d.ts.map +1 -0
  463. package/dist-esm/html-editor/commands/Toolbar.js +6 -0
  464. package/dist-esm/html-editor/commands/Toolbar.js.map +1 -0
  465. package/dist-esm/html-editor/commands/Underline.d.ts +3 -0
  466. package/dist-esm/html-editor/commands/Underline.d.ts.map +1 -0
  467. package/dist-esm/html-editor/commands/Underline.js +13 -0
  468. package/dist-esm/html-editor/commands/Underline.js.map +1 -0
  469. package/dist-esm/html-editor/commands/Unlink.d.ts +4 -0
  470. package/dist-esm/html-editor/commands/Unlink.d.ts.map +1 -0
  471. package/dist-esm/html-editor/commands/Unlink.js +11 -0
  472. package/dist-esm/html-editor/commands/Unlink.js.map +1 -0
  473. package/dist-esm/html-editor/commands/UnorderedList.d.ts +2 -0
  474. package/dist-esm/html-editor/commands/UnorderedList.d.ts.map +1 -0
  475. package/dist-esm/html-editor/commands/UnorderedList.js +13 -0
  476. package/dist-esm/html-editor/commands/UnorderedList.js.map +1 -0
  477. package/dist-esm/mobile/pages/AtomPageFrame.d.ts +31 -0
  478. package/dist-esm/mobile/pages/AtomPageFrame.d.ts.map +1 -0
  479. package/dist-esm/mobile/pages/AtomPageFrame.js +191 -0
  480. package/dist-esm/mobile/pages/AtomPageFrame.js.map +1 -0
  481. package/dist-esm/mobile/pages/AtomPageFrameStyle.d.ts +10 -0
  482. package/dist-esm/mobile/pages/AtomPageFrameStyle.d.ts.map +1 -0
  483. package/dist-esm/mobile/pages/AtomPageFrameStyle.js +47 -0
  484. package/dist-esm/mobile/pages/AtomPageFrameStyle.js.map +1 -0
  485. package/dist-esm/mobile/pages/AtomPageFrameTemplate.d.ts +12 -0
  486. package/dist-esm/mobile/pages/AtomPageFrameTemplate.d.ts.map +1 -0
  487. package/dist-esm/mobile/pages/AtomPageFrameTemplate.js +31 -0
  488. package/dist-esm/mobile/pages/AtomPageFrameTemplate.js.map +1 -0
  489. package/dist-esm/mobile/pages/Page.d.ts +12 -0
  490. package/dist-esm/mobile/pages/Page.d.ts.map +1 -0
  491. package/dist-esm/mobile/pages/Page.js +18 -0
  492. package/dist-esm/mobile/pages/Page.js.map +1 -0
  493. package/dist-esm/mobile/pages/PageFrameViewModel.d.ts +17 -0
  494. package/dist-esm/mobile/pages/PageFrameViewModel.d.ts.map +1 -0
  495. package/dist-esm/mobile/pages/PageFrameViewModel.js +123 -0
  496. package/dist-esm/mobile/pages/PageFrameViewModel.js.map +1 -0
  497. package/dist-esm/mobile/pages/TitleTemplate.d.ts +6 -0
  498. package/dist-esm/mobile/pages/TitleTemplate.d.ts.map +1 -0
  499. package/dist-esm/mobile/pages/TitleTemplate.js +15 -0
  500. package/dist-esm/mobile/pages/TitleTemplate.js.map +1 -0
  501. package/dist-esm/mobile-app/BottomPopup.d.ts +33 -0
  502. package/dist-esm/mobile-app/BottomPopup.d.ts.map +1 -0
  503. package/dist-esm/mobile-app/BottomPopup.js +179 -0
  504. package/dist-esm/mobile-app/BottomPopup.js.map +1 -0
  505. package/dist-esm/mobile-app/MasterDetailPage.d.ts +20 -0
  506. package/dist-esm/mobile-app/MasterDetailPage.d.ts.map +1 -0
  507. package/dist-esm/mobile-app/MasterDetailPage.js +164 -0
  508. package/dist-esm/mobile-app/MasterDetailPage.js.map +1 -0
  509. package/dist-esm/mobile-app/MobileApp.d.ts +95 -0
  510. package/dist-esm/mobile-app/MobileApp.d.ts.map +1 -0
  511. package/dist-esm/mobile-app/MobileApp.js +665 -0
  512. package/dist-esm/mobile-app/MobileApp.js.map +1 -0
  513. package/dist-esm/player/AtomVideoPlayer.d.ts +35 -0
  514. package/dist-esm/player/AtomVideoPlayer.d.ts.map +1 -0
  515. package/dist-esm/player/AtomVideoPlayer.js +310 -0
  516. package/dist-esm/player/AtomVideoPlayer.js.map +1 -0
  517. package/dist-esm/player/TrackProgress.d.ts +3 -0
  518. package/dist-esm/player/TrackProgress.d.ts.map +1 -0
  519. package/dist-esm/player/TrackProgress.js +9 -0
  520. package/dist-esm/player/TrackProgress.js.map +1 -0
  521. package/dist-esm/player/input-range-style.d.ts +2 -0
  522. package/dist-esm/player/input-range-style.d.ts.map +1 -0
  523. package/dist-esm/player/input-range-style.js +100 -0
  524. package/dist-esm/player/input-range-style.js.map +1 -0
  525. package/dist-esm/tests/app-test/AppTestApp.d.ts +5 -0
  526. package/dist-esm/tests/app-test/AppTestApp.d.ts.map +1 -0
  527. package/dist-esm/tests/app-test/AppTestApp.js +30 -0
  528. package/dist-esm/tests/app-test/AppTestApp.js.map +1 -0
  529. package/dist-esm/tests/app-test/commands/AppCommands.d.ts +6 -0
  530. package/dist-esm/tests/app-test/commands/AppCommands.d.ts.map +1 -0
  531. package/dist-esm/tests/app-test/commands/AppCommands.js +13 -0
  532. package/dist-esm/tests/app-test/commands/AppCommands.js.map +1 -0
  533. package/dist-esm/tests/app-test/drawer/AppDrawer.d.ts +5 -0
  534. package/dist-esm/tests/app-test/drawer/AppDrawer.d.ts.map +1 -0
  535. package/dist-esm/tests/app-test/drawer/AppDrawer.js +9 -0
  536. package/dist-esm/tests/app-test/drawer/AppDrawer.js.map +1 -0
  537. package/dist-esm/tests/app-test/model/model.d.ts +16 -0
  538. package/dist-esm/tests/app-test/model/model.d.ts.map +1 -0
  539. package/dist-esm/tests/app-test/model/model.js +2 -0
  540. package/dist-esm/tests/app-test/model/model.js.map +1 -0
  541. package/dist-esm/tests/app-test/pages/detail/DetailPage.d.ts +7 -0
  542. package/dist-esm/tests/app-test/pages/detail/DetailPage.d.ts.map +1 -0
  543. package/dist-esm/tests/app-test/pages/detail/DetailPage.js +20 -0
  544. package/dist-esm/tests/app-test/pages/detail/DetailPage.js.map +1 -0
  545. package/dist-esm/tests/app-test/pages/home/HomePage.d.ts +5 -0
  546. package/dist-esm/tests/app-test/pages/home/HomePage.d.ts.map +1 -0
  547. package/dist-esm/tests/app-test/pages/home/HomePage.js +12 -0
  548. package/dist-esm/tests/app-test/pages/home/HomePage.js.map +1 -0
  549. package/dist-esm/tests/app-test/pages/list/ListPage.d.ts +25 -0
  550. package/dist-esm/tests/app-test/pages/list/ListPage.d.ts.map +1 -0
  551. package/dist-esm/tests/app-test/pages/list/ListPage.js +73 -0
  552. package/dist-esm/tests/app-test/pages/list/ListPage.js.map +1 -0
  553. package/dist-esm/tests/basic/PopupTest.d.ts +5 -0
  554. package/dist-esm/tests/basic/PopupTest.d.ts.map +1 -0
  555. package/dist-esm/tests/basic/PopupTest.js +11 -0
  556. package/dist-esm/tests/basic/PopupTest.js.map +1 -0
  557. package/dist-esm/tests/basic/TimeEditorTest.d.ts +5 -0
  558. package/dist-esm/tests/basic/TimeEditorTest.d.ts.map +1 -0
  559. package/dist-esm/tests/basic/TimeEditorTest.js +16 -0
  560. package/dist-esm/tests/basic/TimeEditorTest.js.map +1 -0
  561. package/dist-esm/tests/basic/TimerTest.d.ts +13 -0
  562. package/dist-esm/tests/basic/TimerTest.d.ts.map +1 -0
  563. package/dist-esm/tests/basic/TimerTest.js +50 -0
  564. package/dist-esm/tests/basic/TimerTest.js.map +1 -0
  565. package/dist-esm/tests/basic/basic-form/BasicForm.d.ts +5 -0
  566. package/dist-esm/tests/basic/basic-form/BasicForm.d.ts.map +1 -0
  567. package/dist-esm/tests/basic/basic-form/BasicForm.js +36 -0
  568. package/dist-esm/tests/basic/basic-form/BasicForm.js.map +1 -0
  569. package/dist-esm/tests/basic/calendar/BasicCalendarTest.d.ts +5 -0
  570. package/dist-esm/tests/basic/calendar/BasicCalendarTest.d.ts.map +1 -0
  571. package/dist-esm/tests/basic/calendar/BasicCalendarTest.js +16 -0
  572. package/dist-esm/tests/basic/calendar/BasicCalendarTest.js.map +1 -0
  573. package/dist-esm/tests/basic/chips/ChipsTest.d.ts +9 -0
  574. package/dist-esm/tests/basic/chips/ChipsTest.d.ts.map +1 -0
  575. package/dist-esm/tests/basic/chips/ChipsTest.js +26 -0
  576. package/dist-esm/tests/basic/chips/ChipsTest.js.map +1 -0
  577. package/dist-esm/tests/basic/data-grid/DataGridTest.d.ts +8 -0
  578. package/dist-esm/tests/basic/data-grid/DataGridTest.d.ts.map +1 -0
  579. package/dist-esm/tests/basic/data-grid/DataGridTest.js +70 -0
  580. package/dist-esm/tests/basic/data-grid/DataGridTest.js.map +1 -0
  581. package/dist-esm/tests/basic/date/DateFieldTest.d.ts +5 -0
  582. package/dist-esm/tests/basic/date/DateFieldTest.d.ts.map +1 -0
  583. package/dist-esm/tests/basic/date/DateFieldTest.js +107 -0
  584. package/dist-esm/tests/basic/date/DateFieldTest.js.map +1 -0
  585. package/dist-esm/tests/basic/drop-down/DropDownTest.d.ts +6 -0
  586. package/dist-esm/tests/basic/drop-down/DropDownTest.d.ts.map +1 -0
  587. package/dist-esm/tests/basic/drop-down/DropDownTest.js +29 -0
  588. package/dist-esm/tests/basic/drop-down/DropDownTest.js.map +1 -0
  589. package/dist-esm/tests/basic/drop-down-input/DropDownTest.d.ts +7 -0
  590. package/dist-esm/tests/basic/drop-down-input/DropDownTest.d.ts.map +1 -0
  591. package/dist-esm/tests/basic/drop-down-input/DropDownTest.js +45 -0
  592. package/dist-esm/tests/basic/drop-down-input/DropDownTest.js.map +1 -0
  593. package/dist-esm/tests/basic/expander/ExpanderMenuTest.d.ts +5 -0
  594. package/dist-esm/tests/basic/expander/ExpanderMenuTest.d.ts.map +1 -0
  595. package/dist-esm/tests/basic/expander/ExpanderMenuTest.js +21 -0
  596. package/dist-esm/tests/basic/expander/ExpanderMenuTest.js.map +1 -0
  597. package/dist-esm/tests/basic/expander/ExpanderTest.d.ts +6 -0
  598. package/dist-esm/tests/basic/expander/ExpanderTest.d.ts.map +1 -0
  599. package/dist-esm/tests/basic/expander/ExpanderTest.js +21 -0
  600. package/dist-esm/tests/basic/expander/ExpanderTest.js.map +1 -0
  601. package/dist-esm/tests/basic/form2/Form2Test.d.ts +8 -0
  602. package/dist-esm/tests/basic/form2/Form2Test.d.ts.map +1 -0
  603. package/dist-esm/tests/basic/form2/Form2Test.js +36 -0
  604. package/dist-esm/tests/basic/form2/Form2Test.js.map +1 -0
  605. package/dist-esm/tests/basic/limited-text/LimitedTextTest.d.ts +5 -0
  606. package/dist-esm/tests/basic/limited-text/LimitedTextTest.d.ts.map +1 -0
  607. package/dist-esm/tests/basic/limited-text/LimitedTextTest.js +19 -0
  608. package/dist-esm/tests/basic/limited-text/LimitedTextTest.js.map +1 -0
  609. package/dist-esm/tests/basic/pinch-zoom/PinchZoomViewTest.d.ts +7 -0
  610. package/dist-esm/tests/basic/pinch-zoom/PinchZoomViewTest.d.ts.map +1 -0
  611. package/dist-esm/tests/basic/pinch-zoom/PinchZoomViewTest.js +27 -0
  612. package/dist-esm/tests/basic/pinch-zoom/PinchZoomViewTest.js.map +1 -0
  613. package/dist-esm/tests/basic/repeater/DragDropRepater.d.ts +5 -0
  614. package/dist-esm/tests/basic/repeater/DragDropRepater.d.ts.map +1 -0
  615. package/dist-esm/tests/basic/repeater/DragDropRepater.js +22 -0
  616. package/dist-esm/tests/basic/repeater/DragDropRepater.js.map +1 -0
  617. package/dist-esm/tests/basic/repeater/RepeaterTest.d.ts +8 -0
  618. package/dist-esm/tests/basic/repeater/RepeaterTest.d.ts.map +1 -0
  619. package/dist-esm/tests/basic/repeater/RepeaterTest.js +47 -0
  620. package/dist-esm/tests/basic/repeater/RepeaterTest.js.map +1 -0
  621. package/dist-esm/tests/basic/swipe/SwipeTest.d.ts +6 -0
  622. package/dist-esm/tests/basic/swipe/SwipeTest.d.ts.map +1 -0
  623. package/dist-esm/tests/basic/swipe/SwipeTest.js +22 -0
  624. package/dist-esm/tests/basic/swipe/SwipeTest.js.map +1 -0
  625. package/dist-esm/tests/basic/switch-test/SwitchTest.d.ts +6 -0
  626. package/dist-esm/tests/basic/switch-test/SwitchTest.d.ts.map +1 -0
  627. package/dist-esm/tests/basic/switch-test/SwitchTest.js +19 -0
  628. package/dist-esm/tests/basic/switch-test/SwitchTest.js.map +1 -0
  629. package/dist-esm/tests/basic/title-editor/TitleEditorTest.d.ts +5 -0
  630. package/dist-esm/tests/basic/title-editor/TitleEditorTest.d.ts.map +1 -0
  631. package/dist-esm/tests/basic/title-editor/TitleEditorTest.js +16 -0
  632. package/dist-esm/tests/basic/title-editor/TitleEditorTest.js.map +1 -0
  633. package/dist-esm/tests/basic/tooltip/TooltipTest.d.ts +5 -0
  634. package/dist-esm/tests/basic/tooltip/TooltipTest.d.ts.map +1 -0
  635. package/dist-esm/tests/basic/tooltip/TooltipTest.js +36 -0
  636. package/dist-esm/tests/basic/tooltip/TooltipTest.js.map +1 -0
  637. package/dist-esm/tests/basic/typewriter/TypeWriter.d.ts +5 -0
  638. package/dist-esm/tests/basic/typewriter/TypeWriter.d.ts.map +1 -0
  639. package/dist-esm/tests/basic/typewriter/TypeWriter.js +16 -0
  640. package/dist-esm/tests/basic/typewriter/TypeWriter.js.map +1 -0
  641. package/dist-esm/tests/basic/video/AtomVideoTest.d.ts +6 -0
  642. package/dist-esm/tests/basic/video/AtomVideoTest.d.ts.map +1 -0
  643. package/dist-esm/tests/basic/video/AtomVideoTest.js +18 -0
  644. package/dist-esm/tests/basic/video/AtomVideoTest.js.map +1 -0
  645. package/dist-esm/tests/basic/zoom/ZoomViewTest.d.ts +6 -0
  646. package/dist-esm/tests/basic/zoom/ZoomViewTest.d.ts.map +1 -0
  647. package/dist-esm/tests/basic/zoom/ZoomViewTest.js +25 -0
  648. package/dist-esm/tests/basic/zoom/ZoomViewTest.js.map +1 -0
  649. package/dist-esm/tests/button-bar/ButtonBarTest.d.ts +6 -0
  650. package/dist-esm/tests/button-bar/ButtonBarTest.d.ts.map +1 -0
  651. package/dist-esm/tests/button-bar/ButtonBarTest.js +32 -0
  652. package/dist-esm/tests/button-bar/ButtonBarTest.js.map +1 -0
  653. package/dist-esm/tests/calendar/CalendarTest.d.ts +5 -0
  654. package/dist-esm/tests/calendar/CalendarTest.d.ts.map +1 -0
  655. package/dist-esm/tests/calendar/CalendarTest.js +10 -0
  656. package/dist-esm/tests/calendar/CalendarTest.js.map +1 -0
  657. package/dist-esm/tests/check-box-list/CheckBoxListSample.d.ts +5 -0
  658. package/dist-esm/tests/check-box-list/CheckBoxListSample.d.ts.map +1 -0
  659. package/dist-esm/tests/check-box-list/CheckBoxListSample.js +21 -0
  660. package/dist-esm/tests/check-box-list/CheckBoxListSample.js.map +1 -0
  661. package/dist-esm/tests/data-grid/GridTest.d.ts +5 -0
  662. package/dist-esm/tests/data-grid/GridTest.d.ts.map +1 -0
  663. package/dist-esm/tests/data-grid/GridTest.js +15 -0
  664. package/dist-esm/tests/data-grid/GridTest.js.map +1 -0
  665. package/dist-esm/tests/data-grid/GridTestViewModel.d.ts +16 -0
  666. package/dist-esm/tests/data-grid/GridTestViewModel.d.ts.map +1 -0
  667. package/dist-esm/tests/data-grid/GridTestViewModel.js +226 -0
  668. package/dist-esm/tests/data-grid/GridTestViewModel.js.map +1 -0
  669. package/dist-esm/tests/data-pager/DataPagerTest.d.ts +6 -0
  670. package/dist-esm/tests/data-pager/DataPagerTest.d.ts.map +1 -0
  671. package/dist-esm/tests/data-pager/DataPagerTest.js +22 -0
  672. package/dist-esm/tests/data-pager/DataPagerTest.js.map +1 -0
  673. package/dist-esm/tests/date-field/DateFieldTest.d.ts +5 -0
  674. package/dist-esm/tests/date-field/DateFieldTest.d.ts.map +1 -0
  675. package/dist-esm/tests/date-field/DateFieldTest.js +10 -0
  676. package/dist-esm/tests/date-field/DateFieldTest.js.map +1 -0
  677. package/dist-esm/tests/date-field/PopupTest.d.ts +5 -0
  678. package/dist-esm/tests/date-field/PopupTest.d.ts.map +1 -0
  679. package/dist-esm/tests/date-field/PopupTest.js +15 -0
  680. package/dist-esm/tests/date-field/PopupTest.js.map +1 -0
  681. package/dist-esm/tests/form/CustomHelp.d.ts +5 -0
  682. package/dist-esm/tests/form/CustomHelp.d.ts.map +1 -0
  683. package/dist-esm/tests/form/CustomHelp.js +12 -0
  684. package/dist-esm/tests/form/CustomHelp.js.map +1 -0
  685. package/dist-esm/tests/form/FormTest.d.ts +7 -0
  686. package/dist-esm/tests/form/FormTest.d.ts.map +1 -0
  687. package/dist-esm/tests/form/FormTest.js +26 -0
  688. package/dist-esm/tests/form/FormTest.js.map +1 -0
  689. package/dist-esm/tests/form/FormViewModel.d.ts +12 -0
  690. package/dist-esm/tests/form/FormViewModel.d.ts.map +1 -0
  691. package/dist-esm/tests/form/FormViewModel.js +37 -0
  692. package/dist-esm/tests/form/FormViewModel.js.map +1 -0
  693. package/dist-esm/tests/html-editor/HtmlEditorTest.d.ts +5 -0
  694. package/dist-esm/tests/html-editor/HtmlEditorTest.d.ts.map +1 -0
  695. package/dist-esm/tests/html-editor/HtmlEditorTest.js +76 -0
  696. package/dist-esm/tests/html-editor/HtmlEditorTest.js.map +1 -0
  697. package/dist-esm/tests/html-editor/InlineHtmlEdiorTest.d.ts +5 -0
  698. package/dist-esm/tests/html-editor/InlineHtmlEdiorTest.d.ts.map +1 -0
  699. package/dist-esm/tests/html-editor/InlineHtmlEdiorTest.js +78 -0
  700. package/dist-esm/tests/html-editor/InlineHtmlEdiorTest.js.map +1 -0
  701. package/dist-esm/tests/mask/MaskedInputTest.d.ts +6 -0
  702. package/dist-esm/tests/mask/MaskedInputTest.d.ts.map +1 -0
  703. package/dist-esm/tests/mask/MaskedInputTest.js +21 -0
  704. package/dist-esm/tests/mask/MaskedInputTest.js.map +1 -0
  705. package/dist-esm/tests/mobile-app/DesktopAppTest.d.ts +5 -0
  706. package/dist-esm/tests/mobile-app/DesktopAppTest.d.ts.map +1 -0
  707. package/dist-esm/tests/mobile-app/DesktopAppTest.js +16 -0
  708. package/dist-esm/tests/mobile-app/DesktopAppTest.js.map +1 -0
  709. package/dist-esm/tests/mobile-app/MobileAppTest.d.ts +14 -0
  710. package/dist-esm/tests/mobile-app/MobileAppTest.d.ts.map +1 -0
  711. package/dist-esm/tests/mobile-app/MobileAppTest.js +91 -0
  712. package/dist-esm/tests/mobile-app/MobileAppTest.js.map +1 -0
  713. package/dist-esm/tests/mobile-pages/DetailPage.d.ts +5 -0
  714. package/dist-esm/tests/mobile-pages/DetailPage.d.ts.map +1 -0
  715. package/dist-esm/tests/mobile-pages/DetailPage.js +11 -0
  716. package/dist-esm/tests/mobile-pages/DetailPage.js.map +1 -0
  717. package/dist-esm/tests/mobile-pages/HomePage.d.ts +5 -0
  718. package/dist-esm/tests/mobile-pages/HomePage.d.ts.map +1 -0
  719. package/dist-esm/tests/mobile-pages/HomePage.js +12 -0
  720. package/dist-esm/tests/mobile-pages/HomePage.js.map +1 -0
  721. package/dist-esm/tests/mobile-pages/ListPage.d.ts +5 -0
  722. package/dist-esm/tests/mobile-pages/ListPage.d.ts.map +1 -0
  723. package/dist-esm/tests/mobile-pages/ListPage.js +17 -0
  724. package/dist-esm/tests/mobile-pages/ListPage.js.map +1 -0
  725. package/dist-esm/tests/mobile-pages/ListPageViewModel.d.ts +8 -0
  726. package/dist-esm/tests/mobile-pages/ListPageViewModel.d.ts.map +1 -0
  727. package/dist-esm/tests/mobile-pages/ListPageViewModel.js +19 -0
  728. package/dist-esm/tests/mobile-pages/ListPageViewModel.js.map +1 -0
  729. package/dist-esm/tests/mobile-pages/MenuPage.d.ts +5 -0
  730. package/dist-esm/tests/mobile-pages/MenuPage.d.ts.map +1 -0
  731. package/dist-esm/tests/mobile-pages/MenuPage.js +13 -0
  732. package/dist-esm/tests/mobile-pages/MenuPage.js.map +1 -0
  733. package/dist-esm/tests/mobile-pages/MenuPageViewModel.d.ts +7 -0
  734. package/dist-esm/tests/mobile-pages/MenuPageViewModel.d.ts.map +1 -0
  735. package/dist-esm/tests/mobile-pages/MenuPageViewModel.js +17 -0
  736. package/dist-esm/tests/mobile-pages/MenuPageViewModel.js.map +1 -0
  737. package/dist-esm/tests/mobile-pages/PageApp.d.ts +5 -0
  738. package/dist-esm/tests/mobile-pages/PageApp.d.ts.map +1 -0
  739. package/dist-esm/tests/mobile-pages/PageApp.js +8 -0
  740. package/dist-esm/tests/mobile-pages/PageApp.js.map +1 -0
  741. package/dist-esm/tests/pop-over/PopOverTest.d.ts +6 -0
  742. package/dist-esm/tests/pop-over/PopOverTest.d.ts.map +1 -0
  743. package/dist-esm/tests/pop-over/PopOverTest.js +82 -0
  744. package/dist-esm/tests/pop-over/PopOverTest.js.map +1 -0
  745. package/dist-esm/tests/sample/ListPage.d.ts +5 -0
  746. package/dist-esm/tests/sample/ListPage.d.ts.map +1 -0
  747. package/dist-esm/tests/sample/ListPage.js +17 -0
  748. package/dist-esm/tests/sample/ListPage.js.map +1 -0
  749. package/dist-esm/tests/switch/SwitchTest.d.ts +6 -0
  750. package/dist-esm/tests/switch/SwitchTest.d.ts.map +1 -0
  751. package/dist-esm/tests/switch/SwitchTest.js +14 -0
  752. package/dist-esm/tests/switch/SwitchTest.js.map +1 -0
  753. package/dist-esm/tests/time-field/TimeFieldTest.d.ts +15 -0
  754. package/dist-esm/tests/time-field/TimeFieldTest.d.ts.map +1 -0
  755. package/dist-esm/tests/time-field/TimeFieldTest.js +49 -0
  756. package/dist-esm/tests/time-field/TimeFieldTest.js.map +1 -0
  757. package/dist-esm/tests/toggle-button-bar/ToggleButtonBarTest.d.ts +5 -0
  758. package/dist-esm/tests/toggle-button-bar/ToggleButtonBarTest.d.ts.map +1 -0
  759. package/dist-esm/tests/toggle-button-bar/ToggleButtonBarTest.js +20 -0
  760. package/dist-esm/tests/toggle-button-bar/ToggleButtonBarTest.js.map +1 -0
  761. package/dist-esm/tests/toggle-view/ToggleViewTest.d.ts +6 -0
  762. package/dist-esm/tests/toggle-view/ToggleViewTest.d.ts.map +1 -0
  763. package/dist-esm/tests/toggle-view/ToggleViewTest.js +30 -0
  764. package/dist-esm/tests/toggle-view/ToggleViewTest.js.map +1 -0
  765. package/dist-esm/time-field/AtomTimeField.d.ts +17 -0
  766. package/dist-esm/time-field/AtomTimeField.d.ts.map +1 -0
  767. package/dist-esm/time-field/AtomTimeField.js +76 -0
  768. package/dist-esm/time-field/AtomTimeField.js.map +1 -0
  769. package/dist-esm/time-field/AtomTimeFieldStyle.d.ts +6 -0
  770. package/dist-esm/time-field/AtomTimeFieldStyle.d.ts.map +1 -0
  771. package/dist-esm/time-field/AtomTimeFieldStyle.js +16 -0
  772. package/dist-esm/time-field/AtomTimeFieldStyle.js.map +1 -0
  773. package/dist-esm/toggle-view/AtomToggleView.d.ts +13 -0
  774. package/dist-esm/toggle-view/AtomToggleView.d.ts.map +1 -0
  775. package/dist-esm/toggle-view/AtomToggleView.js +82 -0
  776. package/dist-esm/toggle-view/AtomToggleView.js.map +1 -0
  777. package/dist-esm/tsconfig.esm.tsbuildinfo +1 -0
  778. package/package.json +1 -1
  779. package/src/basic/DropDownInput.tsx +1 -0
@@ -0,0 +1,1165 @@
1
+ import { __decorate, __metadata } from "tslib";
2
+ import { AtomBinder } from "@web-atoms/core/dist/core/AtomBinder.js";
3
+ import Bind from "@web-atoms/core/dist/core/Bind.js";
4
+ import { BindableProperty } from "@web-atoms/core/dist/core/BindableProperty.js";
5
+ import Colors from "@web-atoms/core/dist/core/Colors.js";
6
+ import { StringHelper } from "@web-atoms/core/dist/core/StringHelper.js";
7
+ import WatchProperty from "@web-atoms/core/dist/core/WatchProperty.js";
8
+ import XNode from "@web-atoms/core/dist/core/XNode.js";
9
+ import { AtomControl } from "@web-atoms/core/dist/web/controls/AtomControl.js";
10
+ import { PopupWindow } from "@web-atoms/core/dist/web/services/PopupService.js";
11
+ import MergeNode from "./MergeNode.js";
12
+ import ItemPath from "./ItemPath.js";
13
+ import "./styles/popup.global.css";
14
+ import "./styles/suggestion-popup.global.css";
15
+ import "./styles/repeater.global.css";
16
+ import { ChildEnumerator } from "@web-atoms/core/dist/web/core/AtomUI.js";
17
+ import DataAttributes from "../DataAttributes.js";
18
+ import AtomPopover from "./elements/AtomPopover.js";
19
+ import sleep from "@web-atoms/core/dist/core/sleep.js";
20
+ export const getParentRepeaterItem = (target) => {
21
+ let eventName;
22
+ let repeater;
23
+ let index;
24
+ let root;
25
+ while (target) {
26
+ const a = target.atomControl;
27
+ if (a !== undefined && a instanceof AtomRepeater) {
28
+ repeater = a;
29
+ break;
30
+ }
31
+ if (index === undefined) {
32
+ const itemIndex = target.getAttribute("data-item-index");
33
+ if (typeof itemIndex !== "undefined") {
34
+ root = target;
35
+ index = ~~itemIndex;
36
+ }
37
+ }
38
+ if (eventName === undefined) {
39
+ const itemClickEvent = target.getAttribute("data-click-event");
40
+ if (itemClickEvent) {
41
+ eventName = itemClickEvent.replace(/-([a-z])/g, (g) => g[1].toUpperCase());
42
+ }
43
+ }
44
+ target = target.parentElement;
45
+ }
46
+ if (index === void 0 || repeater === void 0) {
47
+ return undefined;
48
+ }
49
+ const item = repeater.items[~~index];
50
+ return [eventName, repeater, item, index, root];
51
+ };
52
+ export const MatchTrue = (...a) => true;
53
+ export const MatchFalse = (...a) => false;
54
+ export const ArrowToString = (item) => item.label?.toString() ?? item.toString();
55
+ export const MatchCaseInsensitive = (textField = ArrowToString) => {
56
+ return (s) => {
57
+ if (!s) {
58
+ return MatchTrue;
59
+ }
60
+ const r = StringHelper.createContainsRegExp(s);
61
+ return (item) => r.test(textField(item));
62
+ };
63
+ };
64
+ export const MatchAnyCaseInsensitive = (textField = ArrowToString) => {
65
+ return (s) => {
66
+ if (!s) {
67
+ return MatchTrue;
68
+ }
69
+ const r = StringHelper.createContainsAnyWordRegExp(s);
70
+ return (item) => r.test(textField(item));
71
+ };
72
+ };
73
+ export const SameObjectValue = (item) => item;
74
+ export function askSuggestion(items, itemRenderer, match, options) {
75
+ class Suggestions extends PopupWindow {
76
+ search;
77
+ create() {
78
+ this.title = options?.title ?? "Select";
79
+ this.render(XNode.create("div", { "data-repeater-popup": "popup" },
80
+ XNode.create("input", { type: "search", value: Bind.twoWaysImmediate(() => this.search), autofocus: true }),
81
+ XNode.create("div", { class: "items" },
82
+ XNode.create(AtomRepeater, { class: "presenter", itemRenderer: itemRenderer, visibilityFilter: Bind.oneWay(() => match(this.search)), eventItemClick: (e) => {
83
+ this.close(e.detail);
84
+ }, items: items }))));
85
+ }
86
+ }
87
+ __decorate([
88
+ BindableProperty,
89
+ __metadata("design:type", String)
90
+ ], Suggestions.prototype, "search", void 0);
91
+ options ??= {};
92
+ if (typeof options.maximize === "undefined") {
93
+ if (typeof options.width === "undefined") {
94
+ options.maxWidth = "90%";
95
+ options.minWidth = "300px";
96
+ }
97
+ if (typeof options.height === "undefined") {
98
+ options.height = "80%";
99
+ }
100
+ }
101
+ return Suggestions.showModal(options);
102
+ }
103
+ export function askSuggestionPopup(opener, items, itemRenderer, match, selectedItem) {
104
+ const itemsInOpener = "items" in opener;
105
+ class Suggestions extends AtomPopover {
106
+ anchorItem = null;
107
+ anchorIndex = null;
108
+ repeater;
109
+ init() {
110
+ const disableSearch = opener.disableSearch;
111
+ this.renderer = XNode.create("div", { "data-suggestion-popup": "suggestion-popup" },
112
+ !disableSearch && XNode.create("input", { type: "search", value: Bind.sourceTwoWays(opener, (x) => x.source.search), eventKeydown: (e) => this.onKey(e), autofocus: true }),
113
+ XNode.create("div", { class: "items" },
114
+ XNode.create(AtomRepeater, { class: "presenter", selectedItem: Bind.source(this, (x) => x.source.anchorItem), itemRenderer: itemRenderer, visibilityFilter: Bind.source(opener, (x) => match(x.source.search)), presenter: Bind.presenter((c) => this.repeater = c), eventItemClick: (e) => {
115
+ this.anchorItem = e.detail;
116
+ setTimeout(() => this.close(e.detail), 50);
117
+ }, items: Bind.source(opener, (x) => x.source.items) })));
118
+ if (disableSearch) {
119
+ const { input } = opener;
120
+ if (input) {
121
+ this.disposables.add(opener.bindEvent(input, "keydown", (e) => this.onKey(e)));
122
+ }
123
+ }
124
+ }
125
+ async cancelSelection() {
126
+ await sleep(100);
127
+ if (!this.removed) {
128
+ this.close(opener.selectedItem);
129
+ }
130
+ }
131
+ onKey(e) {
132
+ const suggested = match ? opener.items?.filter(match(opener.search)) : opener.items;
133
+ switch (e.key) {
134
+ case "Escape":
135
+ this.cancelSelection().catch(console.error);
136
+ return;
137
+ case "Tab":
138
+ case "Enter":
139
+ const anchorItem = this.anchorItem;
140
+ if (!anchorItem) {
141
+ if (e.key === "Tab") {
142
+ e.preventDefault();
143
+ this.cancelSelection().catch(console.error);
144
+ }
145
+ return;
146
+ }
147
+ this.anchorIndex = 0;
148
+ setTimeout(() => this.close(anchorItem), 10);
149
+ this.anchorItem = null;
150
+ opener.search = "";
151
+ e.preventDefault();
152
+ break;
153
+ case "ArrowDown":
154
+ if (suggested) {
155
+ if (!this.anchorItem) {
156
+ this.anchorIndex = 0;
157
+ }
158
+ else {
159
+ if (this.anchorIndex < suggested.length - 1) {
160
+ this.anchorIndex++;
161
+ }
162
+ }
163
+ this.anchorItem = suggested[this.anchorIndex];
164
+ if (this.anchorItem) {
165
+ const current = this.repeater.elementForItem(this.anchorItem);
166
+ current?.scrollIntoView({ behavior: "auto", block: "center", inline: "nearest" });
167
+ }
168
+ e.preventDefault();
169
+ }
170
+ break;
171
+ case "ArrowUp":
172
+ if (suggested) {
173
+ if (!this.anchorItem) {
174
+ return;
175
+ }
176
+ if (this.anchorIndex) {
177
+ this.anchorIndex--;
178
+ }
179
+ this.anchorItem = suggested[this.anchorIndex];
180
+ if (this.anchorItem) {
181
+ const current = this.repeater.elementForItem(this.anchorItem);
182
+ current?.scrollIntoView({ behavior: "auto", block: "center", inline: "nearest" });
183
+ }
184
+ e.preventDefault();
185
+ }
186
+ break;
187
+ }
188
+ }
189
+ }
190
+ return Suggestions.show(opener.element, { "anchor-left": "parent-left" });
191
+ }
192
+ export function SelectorCheckBox({ text, icon = "far fa-square", iconSelected = "fas fa-check-square", ...a }, ...nodes) {
193
+ if (text) {
194
+ return XNode.create("label", { "data-selector": "check-box", ...a },
195
+ XNode.create("i", { class: icon, "data-click-event": "item-select" }),
196
+ XNode.create("i", { class: iconSelected, "data-click-event": "item-deselect" }),
197
+ XNode.create("span", { "data-no-wrap": "true", text: text }),
198
+ ...nodes);
199
+ }
200
+ return XNode.create("label", { "data-selector": "check-box", ...a },
201
+ XNode.create("i", { class: icon, "data-click-event": "item-select" }),
202
+ XNode.create("i", { class: iconSelected, "data-click-event": "item-deselect" }),
203
+ ...nodes);
204
+ }
205
+ class SelectAllControl extends AtomControl {
206
+ items;
207
+ selectedItems;
208
+ preCreate() {
209
+ this.element.setAttribute("data-select-all", "select-all");
210
+ this.items = [];
211
+ this.selectedItems = [];
212
+ this.render(XNode.create(SelectAllControl, { "data-is-selected": Bind.oneWay(() => this.items.length > 0
213
+ && this.items.length === this.selectedItems.length, false) }));
214
+ this.bindEvent(this.element, "click", () => {
215
+ const si = this.selectedItems;
216
+ const items = this.items;
217
+ if (!si) {
218
+ return;
219
+ }
220
+ if (!items) {
221
+ return;
222
+ }
223
+ if (items.length === 0) {
224
+ return;
225
+ }
226
+ if (items.length === si.length) {
227
+ si.clear();
228
+ }
229
+ else {
230
+ si.length = 0;
231
+ si.push(...items);
232
+ si.refresh();
233
+ }
234
+ });
235
+ }
236
+ }
237
+ __decorate([
238
+ BindableProperty,
239
+ __metadata("design:type", Array)
240
+ ], SelectAllControl.prototype, "items", void 0);
241
+ __decorate([
242
+ BindableProperty,
243
+ __metadata("design:type", Array)
244
+ ], SelectAllControl.prototype, "selectedItems", void 0);
245
+ export function SelectAll({ text = "Select All", icon = "far fa-square", iconSelected = "fas fa-check-square", ...a }, ...nodes) {
246
+ if (text) {
247
+ return XNode.create(SelectAllControl, { for: "label", ...a },
248
+ XNode.create("i", { class: icon, "data-ui-type": "item-select" }),
249
+ XNode.create("i", { class: iconSelected, "data-ui-type": "item-deselect" }),
250
+ XNode.create("span", { "data-no-wrap": "true", text: text }));
251
+ }
252
+ return XNode.create(SelectAllControl, { for: "label", ...a },
253
+ XNode.create("i", { class: icon, "data-ui-type": "item-select" }),
254
+ XNode.create("i", { class: iconSelected, "data-ui-type": "item-deselect" }),
255
+ ...nodes);
256
+ }
257
+ export function disposeChildren(owner, e) {
258
+ if (!e) {
259
+ return;
260
+ }
261
+ let s = e.firstElementChild;
262
+ while (s) {
263
+ const c = s;
264
+ s = s.nextElementSibling;
265
+ const ac = c.atomControl;
266
+ if (ac) {
267
+ ac.dispose();
268
+ continue;
269
+ }
270
+ disposeChildren(owner, c);
271
+ owner.unbind(c);
272
+ owner.unbindEvent(c);
273
+ }
274
+ e.innerHTML = "";
275
+ }
276
+ export function disposeChild(owner, e) {
277
+ const ac = e.atomControl;
278
+ if (ac) {
279
+ ac.dispose();
280
+ return;
281
+ }
282
+ disposeChildren(owner, e);
283
+ owner.unbind(e);
284
+ owner.unbindEvent(e);
285
+ e.remove();
286
+ }
287
+ export function defaultComparer(left, right) {
288
+ if (left && right) {
289
+ if (left instanceof Date) {
290
+ if (right instanceof Date) {
291
+ return left.getTime() === right.getTime();
292
+ }
293
+ return false;
294
+ }
295
+ }
296
+ return left === right;
297
+ }
298
+ const getFirstChild = (container) => {
299
+ let child = container.firstElementChild;
300
+ while (child && !child.hasAttribute("data-item-index")) {
301
+ child = child.nextElementSibling;
302
+ }
303
+ return child;
304
+ };
305
+ function updateDragDrop(e, force = false) {
306
+ if (!e) {
307
+ return;
308
+ }
309
+ if (force) {
310
+ e.draggable = false;
311
+ }
312
+ else {
313
+ force = e.draggable;
314
+ }
315
+ e = e.firstElementChild;
316
+ while (e) {
317
+ updateDragDrop(e, force);
318
+ e = e.nextElementSibling;
319
+ }
320
+ }
321
+ export default class AtomRepeater extends AtomControl {
322
+ static from(element) {
323
+ while (element) {
324
+ const { atomControl } = element;
325
+ if (atomControl instanceof AtomRepeater) {
326
+ return atomControl;
327
+ }
328
+ element = element.parentElement;
329
+ }
330
+ }
331
+ static itemFromElement(e, ar = this.from(e)) {
332
+ const da = new DataAttributes(e, ar);
333
+ const recreate = da.get("data-recreate");
334
+ const header = da.get("data-header");
335
+ const footer = da.get("data-footer");
336
+ const itemIndex = da.get("data-item-index");
337
+ const itemPath = da.get("data-item-path");
338
+ let clickEvent = da.get("data-click-event") || (header
339
+ ? "headerClick"
340
+ : (footer ? "footerClick" : "itemClick"));
341
+ clickEvent = clickEvent.replace(/-([a-z])/g, (g) => g[1].toUpperCase());
342
+ const index = ~~itemIndex;
343
+ const item = ar.items[index];
344
+ let nestedItem = null;
345
+ if (item) {
346
+ if (itemPath || false) {
347
+ nestedItem = ItemPath.get(item, itemPath.trim());
348
+ }
349
+ }
350
+ return {
351
+ recreate,
352
+ header,
353
+ footer,
354
+ itemPath,
355
+ itemIndex,
356
+ item,
357
+ nestedItem,
358
+ clickEvent,
359
+ target: e
360
+ };
361
+ }
362
+ "event-item-click";
363
+ "event-item-select";
364
+ "event-item-deselect";
365
+ "data-items-updated-event";
366
+ "data-selection-updated-event";
367
+ "event-items-updated";
368
+ "event-selection-updated";
369
+ bubbleEvents = true;
370
+ allowMultipleSelection;
371
+ selectOnClick;
372
+ selectedItems;
373
+ itemsPresenter;
374
+ items;
375
+ watch;
376
+ visibilityFilter;
377
+ enableFunc;
378
+ itemRenderer;
379
+ valuePath;
380
+ comparer;
381
+ deferUpdates;
382
+ header;
383
+ headerRenderer;
384
+ footer;
385
+ footerRenderer;
386
+ enableDragDrop;
387
+ orderBy;
388
+ itemTag;
389
+ set refreshEventScope(v) {
390
+ this.registerDisposable(v.listen((ce) => {
391
+ this.refreshItem(ce.detail);
392
+ }));
393
+ }
394
+ get allSelected() {
395
+ const selectedItems = this.selectedItems;
396
+ const items = this.items;
397
+ if (!(items && selectedItems)) {
398
+ return false;
399
+ }
400
+ return items.length && items.length === selectedItems.length;
401
+ }
402
+ get value() {
403
+ if (this.initialValue !== undefined) {
404
+ return this.initialValue;
405
+ }
406
+ const sp = this.selectedItem;
407
+ if (sp === undefined) {
408
+ return sp;
409
+ }
410
+ const vp = this.valuePath ?? SameObjectValue;
411
+ return vp(sp);
412
+ }
413
+ set value(v) {
414
+ this.initialValue = v;
415
+ if (!this.items || !this.items.length) {
416
+ AtomBinder.refreshValue(this, "value");
417
+ return;
418
+ }
419
+ const vp = this.valuePath ?? SameObjectValue;
420
+ const c = this.comparer ?? defaultComparer;
421
+ const selectedItem = this.items.find((item) => c(vp(item), v));
422
+ this.selectedItem = selectedItem;
423
+ delete this.initialValue;
424
+ }
425
+ get selectedItem() {
426
+ return this.selectedItems?.[0];
427
+ }
428
+ set selectedItem(value) {
429
+ const si = this.selectedItems ??= [];
430
+ const first = si[0];
431
+ if (value === first) {
432
+ return;
433
+ }
434
+ si.set(0, value);
435
+ }
436
+ scrollToSelection;
437
+ mergeOnRefresh;
438
+ footerPresenter;
439
+ headerPresenter;
440
+ footerElement;
441
+ headerElement;
442
+ initialValue;
443
+ itemsDisposable;
444
+ selectedItemsDisposable;
445
+ deferredUpdateId;
446
+ bringIntoViewId;
447
+ onPropertyChanged(name) {
448
+ switch (name) {
449
+ case "items":
450
+ this.itemsDisposable?.dispose();
451
+ const items = this.items;
452
+ const d = items?.watch((target, type, index, item) => {
453
+ switch (type) {
454
+ case "add":
455
+ case "remove":
456
+ case "set":
457
+ this.updatePartial(type, index, item);
458
+ break;
459
+ default:
460
+ this.updateItems();
461
+ break;
462
+ }
463
+ this.dispatchCustomEvent("items-updated", { type, items, index });
464
+ AtomBinder.refreshValue(this, "selectedItem");
465
+ AtomBinder.refreshValue(this, "value");
466
+ });
467
+ if (d) {
468
+ this.itemsDisposable = this.registerDisposable(d);
469
+ }
470
+ const iv = this.initialValue;
471
+ if (iv) {
472
+ this.value = iv;
473
+ }
474
+ this.updateItems();
475
+ this.dispatchCustomEvent("items-updated", { type: "reset", items, index: 0 });
476
+ if (this.scrollToSelection) {
477
+ this.bringSelectionIntoView();
478
+ }
479
+ break;
480
+ case "selectedItems":
481
+ this.selectedItemsDisposable?.dispose();
482
+ const selectedItems = this.selectedItems;
483
+ const sd = selectedItems?.watch(() => {
484
+ this.updateClasses();
485
+ if (this.scrollToSelection) {
486
+ this.bringSelectionIntoView();
487
+ }
488
+ if (this.selectedItem) {
489
+ delete this.initialValue;
490
+ }
491
+ AtomBinder.refreshValue(this, "selectedItem");
492
+ AtomBinder.refreshValue(this, "value");
493
+ AtomBinder.refreshValue(this, "allSelected");
494
+ this.dispatchCustomEvent("selection-updated", selectedItems);
495
+ });
496
+ if (sd) {
497
+ this.selectedItemsDisposable = this.registerDisposable(sd);
498
+ }
499
+ this.updateClasses();
500
+ this.dispatchCustomEvent("selection-updated", selectedItems);
501
+ AtomBinder.refreshValue(this, "allSelected");
502
+ break;
503
+ case "itemRenderer":
504
+ case "watch":
505
+ this.updateItems();
506
+ break;
507
+ case "visibilityFilter":
508
+ this.updateVisibility();
509
+ break;
510
+ case "header":
511
+ case "headerRenderer":
512
+ this.updateHeaderFooter("header", this.headerPresenter, this.header, this.headerRenderer, true);
513
+ break;
514
+ case "footer":
515
+ case "footerRenderer":
516
+ this.updateHeaderFooter("footer", this.footerPresenter, this.footer, this.footerRenderer);
517
+ break;
518
+ }
519
+ }
520
+ bringSelectionIntoView(force) {
521
+ if (force) {
522
+ const selection = this.selectedItem;
523
+ if (selection) {
524
+ const element = this.elementForItem(selection);
525
+ element?.scrollIntoView();
526
+ }
527
+ return;
528
+ }
529
+ if (this.bringIntoViewId) {
530
+ clearTimeout(this.bringIntoViewId);
531
+ }
532
+ this.bringIntoViewId = setTimeout(() => {
533
+ clearTimeout(this.bringIntoViewId);
534
+ this.bringIntoViewId = undefined;
535
+ this.bringSelectionIntoView(true);
536
+ }, 100);
537
+ }
538
+ forEach(action, container) {
539
+ container ??= this.itemsPresenter ?? this.element;
540
+ const items = this.items;
541
+ let start = getFirstChild(container);
542
+ while (start) {
543
+ const index = start.getAttribute("data-item-index");
544
+ const item = items[~~index];
545
+ action(item, start);
546
+ start = start.nextElementSibling;
547
+ }
548
+ }
549
+ *any(fx, itemSelector, container) {
550
+ container ??= this.itemsPresenter ?? this.element;
551
+ const items = this.items;
552
+ let node = getFirstChild(container);
553
+ while (node) {
554
+ const index = node.getAttribute("data-item-index");
555
+ const item = items[~~index];
556
+ let element = node;
557
+ if (itemSelector) {
558
+ element = element.querySelector(itemSelector);
559
+ }
560
+ const ie = { item, element };
561
+ if (fx) {
562
+ if (fx(item)) {
563
+ yield ie;
564
+ }
565
+ continue;
566
+ }
567
+ yield ie;
568
+ node = node.nextElementSibling;
569
+ }
570
+ }
571
+ *all(container) {
572
+ container ??= this.itemsPresenter ?? this.element;
573
+ const items = this.items;
574
+ let element = getFirstChild(container);
575
+ while (element) {
576
+ const index = element.getAttribute("data-item-index");
577
+ const item = items[~~index];
578
+ yield { item, element };
579
+ element = element.nextElementSibling;
580
+ }
581
+ }
582
+ elementAt(index, container) {
583
+ container ??= this.itemsPresenter ?? this.element;
584
+ const indexText = index.toString();
585
+ const element = ChildEnumerator.find(container, (e) => e.getAttribute("data-item-index") === indexText);
586
+ return element;
587
+ }
588
+ elementForItem(itemToFind, container) {
589
+ const index = this.items.indexOf(itemToFind);
590
+ return this.elementAt(index, container);
591
+ }
592
+ refreshItem(item, fx, index = -1) {
593
+ if (index === -1) {
594
+ index = this.items.indexOf(item);
595
+ }
596
+ if (fx?.then) {
597
+ const finalize = (v) => {
598
+ this.refreshItem(item, v, index);
599
+ };
600
+ fx.then(finalize, finalize);
601
+ return;
602
+ }
603
+ if (fx instanceof MergeNode) {
604
+ this.mergeItem(index, fx);
605
+ return;
606
+ }
607
+ this.updatePartial("set", index, item);
608
+ }
609
+ mergeItem(index, m) {
610
+ const item = this.items[index];
611
+ if (!item) {
612
+ return;
613
+ }
614
+ if (m.classes?.[0]?.remove) {
615
+ this.items.removeAt(index);
616
+ return;
617
+ }
618
+ const container = this.itemsPresenter ?? this.element;
619
+ const node = this.itemRenderer(item, index, this);
620
+ const sourceElement = document.createElement("div");
621
+ sourceElement.style.display = "none";
622
+ container.appendChild(sourceElement);
623
+ this.render(node, sourceElement);
624
+ const targetElement = this.elementAt(index);
625
+ for (const iterator of m.classes) {
626
+ if (typeof iterator === "string") {
627
+ const source = sourceElement.querySelectorAll(iterator);
628
+ const target = targetElement.querySelectorAll(iterator);
629
+ for (let i = 0; i < source.length && i < target.length; i++) {
630
+ const element = source[i];
631
+ const te = target[i];
632
+ for (const name of te.getAttributeNames()) {
633
+ te.removeAttribute(name);
634
+ }
635
+ te.innerHTML = element.innerHTML;
636
+ for (const name of element.getAttributeNames()) {
637
+ te.setAttribute(name, element.getAttribute(name));
638
+ }
639
+ }
640
+ continue;
641
+ }
642
+ if (iterator.parent) {
643
+ const targetParent = /self|\*/.test(iterator.parent)
644
+ ? targetElement
645
+ : targetElement.querySelector(iterator.parent);
646
+ if (!targetParent) {
647
+ continue;
648
+ }
649
+ for (const i of Array.from(targetElement.querySelectorAll(iterator.replace))) {
650
+ i.remove();
651
+ }
652
+ for (const i of Array.from(sourceElement.querySelectorAll(iterator.replace))) {
653
+ targetParent.appendChild(i);
654
+ }
655
+ continue;
656
+ }
657
+ let targetPrevious = targetElement.querySelector(iterator.after);
658
+ for (const i of Array.from(targetElement.querySelectorAll(iterator.replace))) {
659
+ i.remove();
660
+ }
661
+ for (const i of Array.from(sourceElement.querySelectorAll(iterator.replace))) {
662
+ targetPrevious.insertAdjacentElement("afterend", i);
663
+ targetPrevious = i;
664
+ }
665
+ }
666
+ this.dispose(sourceElement);
667
+ sourceElement.remove();
668
+ }
669
+ updatePartial(key, index, item, container) {
670
+ const items = this.items;
671
+ if (!items) {
672
+ return;
673
+ }
674
+ const ir = this.itemRenderer;
675
+ if (!ir) {
676
+ return;
677
+ }
678
+ container ??= this.itemsPresenter ?? this.element;
679
+ let start = getFirstChild(container);
680
+ let ei;
681
+ while (start) {
682
+ ei = ~~start.getAttribute("data-item-index");
683
+ if (ei === index) {
684
+ break;
685
+ }
686
+ start = start.nextElementSibling;
687
+ }
688
+ if (key !== "add" && !start) {
689
+ return;
690
+ }
691
+ const vp = this.valuePath ?? ((it) => it);
692
+ const si = (this.selectedItems ?? []).map(vp);
693
+ const isRemove = key === "remove";
694
+ if (isRemove || key === "set") {
695
+ const current = start;
696
+ start = start.nextElementSibling;
697
+ const ac = current.atomControl;
698
+ if (ac) {
699
+ ac.dispose();
700
+ }
701
+ else {
702
+ this.unbind(current);
703
+ this.unbindEvent(current);
704
+ }
705
+ current.remove();
706
+ }
707
+ const end = this.footerElement?.parentElement === container ? this.footerElement : null;
708
+ if (!isRemove) {
709
+ const en = ir(item, index, this);
710
+ const ea = en.attributes ??= {};
711
+ const v = vp(item);
712
+ const e = document.createElement(ea.for ?? en.name ?? "div");
713
+ e.setAttribute("data-item-index", `${index++}`);
714
+ if (si.indexOf(v) !== -1) {
715
+ e.setAttribute("data-selected-item", "true");
716
+ }
717
+ else {
718
+ e.removeAttribute("data-selected-item");
719
+ }
720
+ if (this.enableDragDrop) {
721
+ updateDragDrop(e);
722
+ }
723
+ if (start) {
724
+ container.insertBefore(e, start);
725
+ }
726
+ else if (end) {
727
+ container.insertBefore(e, end);
728
+ }
729
+ else {
730
+ container.appendChild(e);
731
+ }
732
+ this.render(en, e, this.creator || this);
733
+ }
734
+ while (start) {
735
+ const ci = items[index];
736
+ const cv = vp(ci);
737
+ start.setAttribute("data-item-index", `${index++}`);
738
+ if (si.indexOf(cv) !== -1) {
739
+ start.setAttribute("data-selected-item", "true");
740
+ }
741
+ else {
742
+ start.removeAttribute("data-selected-item");
743
+ }
744
+ start = start.nextElementSibling;
745
+ if (start?.hasAttribute("data-footer")) {
746
+ break;
747
+ }
748
+ }
749
+ }
750
+ updateItems(container, force) {
751
+ if (this.deferUpdates && !force) {
752
+ if (this.deferredUpdateId) {
753
+ return;
754
+ }
755
+ this.deferredUpdateId = setTimeout(() => {
756
+ this.deferredUpdateId = 0;
757
+ this.updateItems(container, true);
758
+ }, 1);
759
+ return;
760
+ }
761
+ container ??= this.itemsPresenter ?? this.element;
762
+ if (!container) {
763
+ return;
764
+ }
765
+ disposeChildren(this, container);
766
+ this.onPropertyChanged("header");
767
+ const ir = this.itemRenderer;
768
+ if (!ir) {
769
+ this.onPropertyChanged("footer");
770
+ return;
771
+ }
772
+ const items = this.items;
773
+ if (!items) {
774
+ this.onPropertyChanged("footer");
775
+ return;
776
+ }
777
+ const vp = this.valuePath ?? ((it) => it);
778
+ const si = (this.selectedItems ?? []).map(vp);
779
+ let i = 0;
780
+ for (const iterator of items) {
781
+ const index = i++;
782
+ const e = ir(iterator, index, this);
783
+ const ea = e.attributes ??= {};
784
+ const v = vp(iterator);
785
+ const element = document.createElement(ea.for ?? e.name ?? "div");
786
+ element.setAttribute("data-item-index", `${index}`);
787
+ if (si.indexOf(v) !== -1) {
788
+ element.setAttribute("data-selected-item", "true");
789
+ }
790
+ else {
791
+ element.removeAttribute("data-selected-item");
792
+ }
793
+ this.render(e, element, this.creator || this);
794
+ if (this.enableDragDrop) {
795
+ updateDragDrop(element);
796
+ }
797
+ container.appendChild(element);
798
+ }
799
+ this.onPropertyChanged("footer");
800
+ }
801
+ render(node, e, creator) {
802
+ if (!this.creator && this !== creator) {
803
+ this.creator = creator;
804
+ }
805
+ this.render = super.render;
806
+ return super.render(node, e, creator);
807
+ }
808
+ preCreate() {
809
+ this.orderBy = null;
810
+ this.mergeOnRefresh = false;
811
+ this.selectOnClick = false;
812
+ this.element.setAttribute("data-click-event", "item-click");
813
+ }
814
+ dispatchCustomEvent(type, detail) {
815
+ if (!this.element) {
816
+ return;
817
+ }
818
+ const eventName = this.element.getAttribute("data-" + type + "-event");
819
+ type = StringHelper.fromHyphenToCamel(eventName ?? type);
820
+ this.element.dispatchEvent(new CustomEvent(type, {
821
+ detail,
822
+ bubbles: eventName !== null,
823
+ cancelable: true
824
+ }));
825
+ }
826
+ updateClasses() {
827
+ const container = this.itemsPresenter ?? this.element;
828
+ const items = this.items;
829
+ let element = getFirstChild(container);
830
+ const vp = this.valuePath ?? ((i) => i);
831
+ const si = (this.selectedItems ?? []).map(vp);
832
+ while (element) {
833
+ const index = ~~element.getAttribute("data-item-index");
834
+ const item = items[index];
835
+ const v = vp(item);
836
+ if (si.indexOf(v) !== -1) {
837
+ element.setAttribute("data-selected-item", "true");
838
+ }
839
+ else {
840
+ element.removeAttribute("data-selected-item");
841
+ }
842
+ element = element.nextElementSibling;
843
+ }
844
+ }
845
+ updateVisibility() {
846
+ const container = this.itemsPresenter ?? this.element;
847
+ const items = this.items;
848
+ let element = container.firstElementChild;
849
+ const vf = this.visibilityFilter ?? MatchTrue;
850
+ while (element) {
851
+ const index = ~~element.getAttribute("data-item-index");
852
+ const item = items[index];
853
+ if (vf(item)) {
854
+ element.removeAttribute("data-ui-display");
855
+ }
856
+ else {
857
+ element.setAttribute("data-ui-display", "none");
858
+ }
859
+ element = element.nextElementSibling;
860
+ }
861
+ }
862
+ updateHeaderFooter(name, presenter, item, itemRenderer, insert) {
863
+ presenter ??= this.itemsPresenter ??= this.element;
864
+ if (!presenter) {
865
+ this[name + "Element"] = null;
866
+ return;
867
+ }
868
+ let current;
869
+ if (insert) {
870
+ current = presenter.firstElementChild;
871
+ while (current && current.dataset[name] !== name) {
872
+ current = current.nextElementSibling;
873
+ }
874
+ }
875
+ else {
876
+ current = presenter.lastElementChild;
877
+ while (current && current.dataset[name] !== name) {
878
+ current = current.previousElementSibling;
879
+ }
880
+ }
881
+ if (current) {
882
+ disposeChild(this, current);
883
+ this[name + "Element"] = null;
884
+ }
885
+ if (!(item && itemRenderer)) {
886
+ return;
887
+ }
888
+ const node = itemRenderer(item);
889
+ const element = document.createElement(node.attributes?.for ?? node.name ?? "div");
890
+ element.dataset[name] = name;
891
+ this.render(node, element, this.creator || this);
892
+ if (insert) {
893
+ presenter.insertBefore(element, presenter.firstElementChild);
894
+ }
895
+ else {
896
+ presenter.appendChild(element);
897
+ }
898
+ this[name + "Element"] = element;
899
+ }
900
+ dispatchHeaderFooterEvent(eventName, type, recreate, originalTarget) {
901
+ const detail = this[type];
902
+ const ce = new CustomEvent(eventName ?? `${type}Click`, {
903
+ detail,
904
+ bubbles: this.bubbleEvents,
905
+ cancelable: true
906
+ });
907
+ originalTarget.dispatchEvent(ce);
908
+ if (ce.defaultPrevented || !ce.executed) {
909
+ return;
910
+ }
911
+ if (recreate) {
912
+ this.onPropertyChanged(type);
913
+ }
914
+ }
915
+ dispatchItemEvent(eventName, item, recreate, originalTarget, nestedItem) {
916
+ const ce = new CustomEvent(eventName ?? "itemClick", {
917
+ detail: nestedItem ?? item,
918
+ bubbles: this.bubbleEvents,
919
+ cancelable: true
920
+ });
921
+ originalTarget.dispatchEvent(ce);
922
+ if (!ce.defaultPrevented) {
923
+ if (this.selectOnClick || eventName === "itemSelect" || eventName === "itemDeselect") {
924
+ const si = this.selectedItems ??= [];
925
+ if (si) {
926
+ const index = si.indexOf(item);
927
+ if (index === -1) {
928
+ if (this.allowMultipleSelection) {
929
+ si.add(item);
930
+ }
931
+ else {
932
+ si.set(0, item);
933
+ }
934
+ }
935
+ else {
936
+ si.removeAt(index);
937
+ }
938
+ }
939
+ }
940
+ }
941
+ if (ce.defaultPrevented || !ce.executed) {
942
+ return;
943
+ }
944
+ const promise = ce.promise;
945
+ if (recreate) {
946
+ this.refreshItem(item, promise);
947
+ return;
948
+ }
949
+ if (promise) {
950
+ promise.then((r) => r instanceof MergeNode && this.refreshItem(item, r));
951
+ }
952
+ }
953
+ dispatchClickEvent(e, data) {
954
+ const { recreate, header, footer, itemIndex, itemPath, clickEvent, item, nestedItem } = AtomRepeater.itemFromElement(e.target, this);
955
+ if (itemIndex !== void 0) {
956
+ if (item) {
957
+ if (nestedItem) {
958
+ this.dispatchItemEvent(clickEvent, item, recreate, e.target, nestedItem);
959
+ return;
960
+ }
961
+ this.dispatchItemEvent(clickEvent, item, recreate, e.target);
962
+ }
963
+ return;
964
+ }
965
+ if (header) {
966
+ this.dispatchHeaderFooterEvent(clickEvent, header, recreate, e.target);
967
+ }
968
+ if (footer) {
969
+ this.dispatchHeaderFooterEvent(clickEvent, footer, recreate, e.target);
970
+ }
971
+ }
972
+ }
973
+ __decorate([
974
+ BindableProperty,
975
+ __metadata("design:type", Boolean)
976
+ ], AtomRepeater.prototype, "allowMultipleSelection", void 0);
977
+ __decorate([
978
+ BindableProperty,
979
+ __metadata("design:type", Object)
980
+ ], AtomRepeater.prototype, "selectOnClick", void 0);
981
+ __decorate([
982
+ BindableProperty,
983
+ __metadata("design:type", Array)
984
+ ], AtomRepeater.prototype, "selectedItems", void 0);
985
+ __decorate([
986
+ BindableProperty,
987
+ __metadata("design:type", Object)
988
+ ], AtomRepeater.prototype, "itemsPresenter", void 0);
989
+ __decorate([
990
+ BindableProperty,
991
+ __metadata("design:type", Array)
992
+ ], AtomRepeater.prototype, "items", void 0);
993
+ __decorate([
994
+ BindableProperty,
995
+ __metadata("design:type", Object)
996
+ ], AtomRepeater.prototype, "watch", void 0);
997
+ __decorate([
998
+ BindableProperty,
999
+ __metadata("design:type", Function)
1000
+ ], AtomRepeater.prototype, "visibilityFilter", void 0);
1001
+ __decorate([
1002
+ BindableProperty,
1003
+ __metadata("design:type", Function)
1004
+ ], AtomRepeater.prototype, "enableFunc", void 0);
1005
+ __decorate([
1006
+ BindableProperty,
1007
+ __metadata("design:type", Function)
1008
+ ], AtomRepeater.prototype, "itemRenderer", void 0);
1009
+ __decorate([
1010
+ BindableProperty,
1011
+ __metadata("design:type", Function)
1012
+ ], AtomRepeater.prototype, "valuePath", void 0);
1013
+ __decorate([
1014
+ BindableProperty,
1015
+ __metadata("design:type", Function)
1016
+ ], AtomRepeater.prototype, "comparer", void 0);
1017
+ __decorate([
1018
+ BindableProperty,
1019
+ __metadata("design:type", Boolean)
1020
+ ], AtomRepeater.prototype, "deferUpdates", void 0);
1021
+ __decorate([
1022
+ BindableProperty,
1023
+ __metadata("design:type", Object)
1024
+ ], AtomRepeater.prototype, "header", void 0);
1025
+ __decorate([
1026
+ BindableProperty,
1027
+ __metadata("design:type", Object)
1028
+ ], AtomRepeater.prototype, "headerRenderer", void 0);
1029
+ __decorate([
1030
+ BindableProperty,
1031
+ __metadata("design:type", Object)
1032
+ ], AtomRepeater.prototype, "footer", void 0);
1033
+ __decorate([
1034
+ BindableProperty,
1035
+ __metadata("design:type", Object)
1036
+ ], AtomRepeater.prototype, "footerRenderer", void 0);
1037
+ __decorate([
1038
+ BindableProperty,
1039
+ __metadata("design:type", Object)
1040
+ ], AtomRepeater.prototype, "enableDragDrop", void 0);
1041
+ __decorate([
1042
+ BindableProperty,
1043
+ __metadata("design:type", Object)
1044
+ ], AtomRepeater.prototype, "orderBy", void 0);
1045
+ __decorate([
1046
+ WatchProperty,
1047
+ __metadata("design:type", Object),
1048
+ __metadata("design:paramtypes", [])
1049
+ ], AtomRepeater.prototype, "allSelected", null);
1050
+ let hoverItem = {
1051
+ repeater: null,
1052
+ target: null,
1053
+ item: null,
1054
+ placeholder: null
1055
+ };
1056
+ document.body.addEventListener("dragstart", (e) => {
1057
+ const { target } = e;
1058
+ if (target.draggable) {
1059
+ const ri = getParentRepeaterItem(target);
1060
+ if (!ri) {
1061
+ return;
1062
+ }
1063
+ const [type, repeater, item, index] = ri;
1064
+ if (!repeater || !repeater.enableDragDrop) {
1065
+ return;
1066
+ }
1067
+ const placeholder = document.createElement("div");
1068
+ placeholder.style.width = target.offsetWidth + "px";
1069
+ placeholder.style.height = target.offsetHeight + "px";
1070
+ placeholder.style.backgroundColor = Colors.lightGray.toString();
1071
+ placeholder.style.border = "solid 1px gray";
1072
+ placeholder.style.borderRadius = "10px";
1073
+ hoverItem = {
1074
+ repeater,
1075
+ target,
1076
+ item,
1077
+ placeholder,
1078
+ };
1079
+ e.dataTransfer.dropEffect = "move";
1080
+ setTimeout(() => {
1081
+ target.style.display = "none";
1082
+ target.parentElement.insertBefore(placeholder, target);
1083
+ }, 0);
1084
+ }
1085
+ });
1086
+ document.body.addEventListener("dragend", (e) => {
1087
+ if (!(hoverItem?.placeholder)) {
1088
+ return;
1089
+ }
1090
+ const { item, placeholder, repeater } = hoverItem;
1091
+ let start = placeholder;
1092
+ let index = -1;
1093
+ while (start) {
1094
+ const itemIndex = start.previousElementSibling?.dataset?.itemIndex;
1095
+ if (itemIndex !== void 0) {
1096
+ index = ~~itemIndex;
1097
+ }
1098
+ if (start.parentElement.atomControl) {
1099
+ break;
1100
+ }
1101
+ start = start.parentElement;
1102
+ }
1103
+ const targetRepeater = start.parentElement.atomControl;
1104
+ placeholder.remove();
1105
+ hoverItem.placeholder = null;
1106
+ repeater.items.remove(item);
1107
+ index++;
1108
+ const ce = new CustomEvent("itemDropped", { detail: { item, index } });
1109
+ if (ce.defaultPrevented) {
1110
+ return;
1111
+ }
1112
+ const { detail } = ce;
1113
+ targetRepeater.items.insert(detail.index, detail.item);
1114
+ });
1115
+ const dragOver = (e) => {
1116
+ if (!e.dataTransfer) {
1117
+ return;
1118
+ }
1119
+ if (hoverItem) {
1120
+ const { placeholder } = hoverItem;
1121
+ if (!placeholder) {
1122
+ return;
1123
+ }
1124
+ if (e.target === placeholder) {
1125
+ return;
1126
+ }
1127
+ }
1128
+ const ri = getParentRepeaterItem(e.target);
1129
+ if (!ri) {
1130
+ return;
1131
+ }
1132
+ const [type, repeater, item, index, target] = ri;
1133
+ if (!repeater) {
1134
+ return;
1135
+ }
1136
+ if (hoverItem) {
1137
+ const { placeholder } = hoverItem;
1138
+ e.preventDefault();
1139
+ const mp = { x: e.clientX, y: e.clientY };
1140
+ const isBefore = (co, n) => n.x <= (co.x + (co.width * 0.3)) || n.y <= (co.y + (co.height * 0.3));
1141
+ const isAfter = (co, n) => n.x >= (co.x + (co.width * 0.7)) || n.y >= (co.y + (co.height * 0.7));
1142
+ const targetBounds = target.getBoundingClientRect();
1143
+ if (isAfter(targetBounds, mp)) {
1144
+ const next = target.nextElementSibling;
1145
+ if (next === placeholder) {
1146
+ return;
1147
+ }
1148
+ placeholder.remove();
1149
+ target.insertAdjacentElement("afterend", placeholder);
1150
+ return;
1151
+ }
1152
+ if (isBefore(targetBounds, mp)) {
1153
+ const previous = target.previousElementSibling;
1154
+ if (previous === placeholder) {
1155
+ return;
1156
+ }
1157
+ placeholder.remove();
1158
+ target.insertAdjacentElement("beforebegin", placeholder);
1159
+ }
1160
+ return;
1161
+ }
1162
+ };
1163
+ document.body.addEventListener("dragover", dragOver);
1164
+ document.body.addEventListener("dragenter", dragOver);
1165
+ //# sourceMappingURL=AtomRepeater.js.map