@soxa-ui/webc 0.0.0-stage → 0.3.0-beta.1

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 (592) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +622 -2
  3. package/dist/adapter/common/attributes.d.ts +22 -0
  4. package/dist/adapter/common/attributes.js +74 -0
  5. package/dist/adapter/common/createWebcAdapterContext.d.ts +8 -0
  6. package/dist/adapter/common/createWebcAdapterContext.js +17 -0
  7. package/dist/adapter/common/icon.d.ts +9 -0
  8. package/dist/adapter/common/icon.js +25 -0
  9. package/dist/adapter/common/index.d.ts +5 -0
  10. package/dist/adapter/common/index.js +6 -0
  11. package/dist/adapter/common/naming.d.ts +7 -0
  12. package/dist/adapter/common/naming.js +9 -0
  13. package/dist/adapter/common/profile.d.ts +3 -0
  14. package/dist/adapter/common/profile.js +6 -0
  15. package/dist/adapter/context/index.d.ts +1 -0
  16. package/dist/adapter/context/place-context.class.d.ts +22 -0
  17. package/dist/adapter/context/place-context.class.js +40 -0
  18. package/dist/adapter/elevator/elevator.class.d.ts +13 -0
  19. package/dist/adapter/elevator/elevator.class.js +34 -0
  20. package/dist/adapter/elevator/factory.d.ts +3 -0
  21. package/dist/adapter/elevator/factory.js +8 -0
  22. package/dist/adapter/elevator/index.d.ts +2 -0
  23. package/dist/adapter/elevator/index.js +2 -0
  24. package/dist/adapter/index.d.ts +5 -0
  25. package/dist/adapter/index.js +21 -0
  26. package/dist/adapter/locale/LocaleProvider.element.d.ts +26 -0
  27. package/dist/adapter/locale/LocaleProvider.element.js +51 -0
  28. package/dist/adapter/locale/context.d.ts +4 -0
  29. package/dist/adapter/locale/context.js +12 -0
  30. package/dist/adapter/locale/index.d.ts +2 -0
  31. package/dist/adapter/locale/index.js +1 -0
  32. package/dist/adapter/runtime/content.d.ts +6 -0
  33. package/dist/adapter/runtime/content.js +13 -0
  34. package/dist/adapter/runtime/deferral.d.ts +22 -0
  35. package/dist/adapter/runtime/deferral.js +100 -0
  36. package/dist/adapter/runtime/defineElement.d.ts +23 -0
  37. package/dist/adapter/runtime/defineElement.js +97 -0
  38. package/dist/adapter/runtime/display-contents.d.ts +5 -0
  39. package/dist/adapter/runtime/display-contents.js +14 -0
  40. package/dist/adapter/runtime/element.base.d.ts +84 -0
  41. package/dist/adapter/runtime/element.base.js +347 -0
  42. package/dist/adapter/runtime/index.d.ts +4 -0
  43. package/dist/adapter/runtime/index.js +4 -0
  44. package/dist/adapter/runtime/light.d.ts +33 -0
  45. package/dist/adapter/runtime/light.js +131 -0
  46. package/dist/adapter/runtime/marks.d.ts +19 -0
  47. package/dist/adapter/runtime/marks.js +46 -0
  48. package/dist/adapter/runtime/paint.d.ts +91 -0
  49. package/dist/adapter/runtime/paint.js +208 -0
  50. package/dist/adapter/runtime/props.d.ts +36 -0
  51. package/dist/adapter/runtime/props.js +58 -0
  52. package/dist/adapter/runtime/relocation.d.ts +16 -0
  53. package/dist/adapter/runtime/relocation.js +58 -0
  54. package/dist/adapter/runtime/root.d.ts +77 -0
  55. package/dist/adapter/runtime/root.js +77 -0
  56. package/dist/adapter/runtime/subtree.d.ts +22 -0
  57. package/dist/adapter/runtime/subtree.js +44 -0
  58. package/dist/adapter/runtime/teleport.d.ts +57 -0
  59. package/dist/adapter/runtime/teleport.js +190 -0
  60. package/dist/adapter/runtime/useAdapter.d.ts +45 -0
  61. package/dist/adapter/runtime/useAdapter.js +151 -0
  62. package/dist/adapter/runtime/waiting.d.ts +10 -0
  63. package/dist/adapter/runtime/waiting.js +53 -0
  64. package/dist/adapter/template/index.d.ts +6 -0
  65. package/dist/adapter/template/index.js +6 -0
  66. package/dist/adapter/template/lend.d.ts +13 -0
  67. package/dist/adapter/template/lend.js +30 -0
  68. package/dist/adapter/template/loop.d.ts +21 -0
  69. package/dist/adapter/template/loop.js +59 -0
  70. package/dist/adapter/template/owner.d.ts +13 -0
  71. package/dist/adapter/template/owner.js +15 -0
  72. package/dist/adapter/template/parts.d.ts +37 -0
  73. package/dist/adapter/template/parts.js +61 -0
  74. package/dist/adapter/template/types.d.ts +69 -0
  75. package/dist/adapter/template/types.js +9 -0
  76. package/dist/adapter/toasts/index.d.ts +1 -0
  77. package/dist/adapter/toasts/index.js +1 -0
  78. package/dist/adapter/toasts/toastsOf.d.ts +12 -0
  79. package/dist/adapter/toasts/toastsOf.js +21 -0
  80. package/dist/components/accordion/Accordion.element.d.ts +9 -0
  81. package/dist/components/accordion/Accordion.element.js +27 -0
  82. package/dist/components/accordion/accordion.template.d.ts +10 -0
  83. package/dist/components/accordion/accordion.template.js +44 -0
  84. package/dist/components/accordion/index.d.ts +5 -0
  85. package/dist/components/accordion/index.js +3 -0
  86. package/dist/components/accordion/item/AccordionItem.element.d.ts +10 -0
  87. package/dist/components/accordion/item/AccordionItem.element.js +25 -0
  88. package/dist/components/accordion/item/accordion-item.template.d.ts +8 -0
  89. package/dist/components/accordion/item/accordion-item.template.js +123 -0
  90. package/dist/components/accordion/item/index.d.ts +3 -0
  91. package/dist/components/accordion/item/index.js +3 -0
  92. package/dist/components/accordion/item/setup.component.d.ts +3 -0
  93. package/dist/components/accordion/item/setup.component.js +22 -0
  94. package/dist/components/accordion/setup.component.d.ts +3 -0
  95. package/dist/components/accordion/setup.component.js +26 -0
  96. package/dist/components/button/Button.element.d.ts +12 -0
  97. package/dist/components/button/Button.element.js +22 -0
  98. package/dist/components/button/button.template.d.ts +8 -0
  99. package/dist/components/button/button.template.js +30 -0
  100. package/dist/components/button/index.d.ts +3 -0
  101. package/dist/components/button/index.js +1 -0
  102. package/dist/components/button/setup.component.d.ts +3 -0
  103. package/dist/components/button/setup.component.js +14 -0
  104. package/dist/components/calendar/Calendar.element.d.ts +9 -0
  105. package/dist/components/calendar/Calendar.element.js +23 -0
  106. package/dist/components/calendar/calendar.template.d.ts +10 -0
  107. package/dist/components/calendar/calendar.template.js +309 -0
  108. package/dist/components/calendar/index.d.ts +5 -0
  109. package/dist/components/calendar/index.js +3 -0
  110. package/dist/components/calendar/item/CalendarItem.element.d.ts +10 -0
  111. package/dist/components/calendar/item/CalendarItem.element.js +19 -0
  112. package/dist/components/calendar/item/calendar-item.template.d.ts +7 -0
  113. package/dist/components/calendar/item/calendar-item.template.js +22 -0
  114. package/dist/components/calendar/item/index.d.ts +3 -0
  115. package/dist/components/calendar/item/index.js +3 -0
  116. package/dist/components/calendar/item/setup.component.d.ts +3 -0
  117. package/dist/components/calendar/item/setup.component.js +22 -0
  118. package/dist/components/calendar/setup.component.d.ts +3 -0
  119. package/dist/components/calendar/setup.component.js +25 -0
  120. package/dist/components/check-box/CheckBox.element.d.ts +9 -0
  121. package/dist/components/check-box/CheckBox.element.js +24 -0
  122. package/dist/components/check-box/check-box.template.d.ts +10 -0
  123. package/dist/components/check-box/check-box.template.js +94 -0
  124. package/dist/components/check-box/index.d.ts +3 -0
  125. package/dist/components/check-box/index.js +1 -0
  126. package/dist/components/check-box/setup.component.d.ts +7 -0
  127. package/dist/components/check-box/setup.component.js +16 -0
  128. package/dist/components/common/clear.d.ts +34 -0
  129. package/dist/components/common/clear.js +67 -0
  130. package/dist/components/common/drawn-rows.d.ts +35 -0
  131. package/dist/components/common/drawn-rows.js +79 -0
  132. package/dist/components/common/icon-button.d.ts +24 -0
  133. package/dist/components/common/icon-button.js +42 -0
  134. package/dist/components/component/index.d.ts +1 -0
  135. package/dist/components/component/index.js +1 -0
  136. package/dist/components/component/setup.component.d.ts +3 -0
  137. package/dist/components/component/setup.component.js +2 -0
  138. package/dist/components/component-view/ComponentView.element.d.ts +6 -0
  139. package/dist/components/component-view/ComponentView.element.js +16 -0
  140. package/dist/components/component-view/component-view.template.d.ts +4 -0
  141. package/dist/components/component-view/component-view.template.js +10 -0
  142. package/dist/components/component-view/index.d.ts +3 -0
  143. package/dist/components/component-view/index.js +1 -0
  144. package/dist/components/component-view/setup.component.d.ts +3 -0
  145. package/dist/components/component-view/setup.component.js +14 -0
  146. package/dist/components/control/index.d.ts +1 -0
  147. package/dist/components/control/index.js +1 -0
  148. package/dist/components/control/setup.component.d.ts +3 -0
  149. package/dist/components/control/setup.component.js +2 -0
  150. package/dist/components/date-input/DateInput.element.d.ts +11 -0
  151. package/dist/components/date-input/DateInput.element.js +21 -0
  152. package/dist/components/date-input/date-input.template.d.ts +11 -0
  153. package/dist/components/date-input/date-input.template.js +102 -0
  154. package/dist/components/date-input/index.d.ts +3 -0
  155. package/dist/components/date-input/index.js +1 -0
  156. package/dist/components/date-input/setup.component.d.ts +8 -0
  157. package/dist/components/date-input/setup.component.js +16 -0
  158. package/dist/components/date-picker/DatePicker.element.d.ts +11 -0
  159. package/dist/components/date-picker/DatePicker.element.js +24 -0
  160. package/dist/components/date-picker/date-picker.template.d.ts +15 -0
  161. package/dist/components/date-picker/date-picker.template.js +310 -0
  162. package/dist/components/date-picker/index.d.ts +3 -0
  163. package/dist/components/date-picker/index.js +1 -0
  164. package/dist/components/date-picker/setup.component.d.ts +9 -0
  165. package/dist/components/date-picker/setup.component.js +16 -0
  166. package/dist/components/dialog/Dialog.element.d.ts +11 -0
  167. package/dist/components/dialog/Dialog.element.js +25 -0
  168. package/dist/components/dialog/dialog.template.d.ts +9 -0
  169. package/dist/components/dialog/dialog.template.js +148 -0
  170. package/dist/components/dialog/index.d.ts +3 -0
  171. package/dist/components/dialog/index.js +1 -0
  172. package/dist/components/dialog/setup.component.d.ts +5 -0
  173. package/dist/components/dialog/setup.component.js +14 -0
  174. package/dist/components/drag-and-drop/DragAndDrop.element.d.ts +10 -0
  175. package/dist/components/drag-and-drop/DragAndDrop.element.js +20 -0
  176. package/dist/components/drag-and-drop/drag-and-drop.template.d.ts +4 -0
  177. package/dist/components/drag-and-drop/drag-and-drop.template.js +14 -0
  178. package/dist/components/drag-and-drop/index.d.ts +3 -0
  179. package/dist/components/drag-and-drop/index.js +1 -0
  180. package/dist/components/drag-and-drop/setup.component.d.ts +4 -0
  181. package/dist/components/drag-and-drop/setup.component.js +17 -0
  182. package/dist/components/drawer/Drawer.element.d.ts +10 -0
  183. package/dist/components/drawer/Drawer.element.js +27 -0
  184. package/dist/components/drawer/drawer.template.d.ts +11 -0
  185. package/dist/components/drawer/drawer.template.js +100 -0
  186. package/dist/components/drawer/index.d.ts +3 -0
  187. package/dist/components/drawer/index.js +1 -0
  188. package/dist/components/drawer/setup.component.d.ts +6 -0
  189. package/dist/components/drawer/setup.component.js +14 -0
  190. package/dist/components/field/Field.element.d.ts +10 -0
  191. package/dist/components/field/Field.element.js +20 -0
  192. package/dist/components/field/field.template.d.ts +9 -0
  193. package/dist/components/field/field.template.js +110 -0
  194. package/dist/components/field/index.d.ts +3 -0
  195. package/dist/components/field/index.js +1 -0
  196. package/dist/components/field/setup.component.d.ts +4 -0
  197. package/dist/components/field/setup.component.js +17 -0
  198. package/dist/components/frame/Frame.element.d.ts +10 -0
  199. package/dist/components/frame/Frame.element.js +27 -0
  200. package/dist/components/frame/frame.template.d.ts +4 -0
  201. package/dist/components/frame/frame.template.js +10 -0
  202. package/dist/components/frame/index.d.ts +3 -0
  203. package/dist/components/frame/index.js +1 -0
  204. package/dist/components/frame/setup.component.d.ts +3 -0
  205. package/dist/components/frame/setup.component.js +14 -0
  206. package/dist/components/icon/Icon.element.d.ts +10 -0
  207. package/dist/components/icon/Icon.element.js +21 -0
  208. package/dist/components/icon/icon.template.d.ts +7 -0
  209. package/dist/components/icon/icon.template.js +32 -0
  210. package/dist/components/icon/index.d.ts +4 -0
  211. package/dist/components/icon/index.js +3 -0
  212. package/dist/components/icon/setup.component.d.ts +3 -0
  213. package/dist/components/icon/setup.component.js +14 -0
  214. package/dist/components/index.d.ts +44 -0
  215. package/dist/components/index.js +104 -0
  216. package/dist/components/input/Input.element.d.ts +9 -0
  217. package/dist/components/input/Input.element.js +24 -0
  218. package/dist/components/input/index.d.ts +3 -0
  219. package/dist/components/input/index.js +1 -0
  220. package/dist/components/input/input.template.d.ts +10 -0
  221. package/dist/components/input/input.template.js +82 -0
  222. package/dist/components/input/setup.component.d.ts +7 -0
  223. package/dist/components/input/setup.component.js +16 -0
  224. package/dist/components/input-control/index.d.ts +1 -0
  225. package/dist/components/input-control/index.js +1 -0
  226. package/dist/components/input-control/setup.component.d.ts +4 -0
  227. package/dist/components/input-control/setup.component.js +2 -0
  228. package/dist/components/interactive/index.d.ts +1 -0
  229. package/dist/components/interactive/index.js +1 -0
  230. package/dist/components/interactive/setup.component.d.ts +3 -0
  231. package/dist/components/interactive/setup.component.js +2 -0
  232. package/dist/components/item-row/ItemRow.element.d.ts +26 -0
  233. package/dist/components/item-row/ItemRow.element.js +53 -0
  234. package/dist/components/item-row/index.d.ts +1 -0
  235. package/dist/components/item-row/index.js +1 -0
  236. package/dist/components/item-row/setup.component.d.ts +3 -0
  237. package/dist/components/item-row/setup.component.js +14 -0
  238. package/dist/components/label/Label.element.d.ts +9 -0
  239. package/dist/components/label/Label.element.js +19 -0
  240. package/dist/components/label/index.d.ts +3 -0
  241. package/dist/components/label/index.js +1 -0
  242. package/dist/components/label/label.template.d.ts +8 -0
  243. package/dist/components/label/label.template.js +33 -0
  244. package/dist/components/label/setup.component.d.ts +3 -0
  245. package/dist/components/label/setup.component.js +14 -0
  246. package/dist/components/list-box/ListBox.element.d.ts +10 -0
  247. package/dist/components/list-box/ListBox.element.js +32 -0
  248. package/dist/components/list-box/group/ListBoxGroup.element.d.ts +9 -0
  249. package/dist/components/list-box/group/ListBoxGroup.element.js +17 -0
  250. package/dist/components/list-box/group/index.d.ts +3 -0
  251. package/dist/components/list-box/group/index.js +3 -0
  252. package/dist/components/list-box/group/list-box-group.template.d.ts +8 -0
  253. package/dist/components/list-box/group/list-box-group.template.js +32 -0
  254. package/dist/components/list-box/group/setup.component.d.ts +3 -0
  255. package/dist/components/list-box/group/setup.component.js +16 -0
  256. package/dist/components/list-box/index.d.ts +7 -0
  257. package/dist/components/list-box/index.js +4 -0
  258. package/dist/components/list-box/item/ListBoxItem.element.d.ts +10 -0
  259. package/dist/components/list-box/item/ListBoxItem.element.js +25 -0
  260. package/dist/components/list-box/item/index.d.ts +3 -0
  261. package/dist/components/list-box/item/index.js +3 -0
  262. package/dist/components/list-box/item/list-box-item.template.d.ts +8 -0
  263. package/dist/components/list-box/item/list-box-item.template.js +116 -0
  264. package/dist/components/list-box/item/setup.component.d.ts +3 -0
  265. package/dist/components/list-box/item/setup.component.js +22 -0
  266. package/dist/components/list-box/list-box.template.d.ts +11 -0
  267. package/dist/components/list-box/list-box.template.js +77 -0
  268. package/dist/components/list-box/setup.component.d.ts +3 -0
  269. package/dist/components/list-box/setup.component.js +26 -0
  270. package/dist/components/menu/Menu.element.d.ts +10 -0
  271. package/dist/components/menu/Menu.element.js +49 -0
  272. package/dist/components/menu/checkbox-item/MenuCheckboxItem.element.d.ts +10 -0
  273. package/dist/components/menu/checkbox-item/MenuCheckboxItem.element.js +24 -0
  274. package/dist/components/menu/checkbox-item/index.d.ts +3 -0
  275. package/dist/components/menu/checkbox-item/index.js +3 -0
  276. package/dist/components/menu/checkbox-item/menu-checkbox-item.template.d.ts +8 -0
  277. package/dist/components/menu/checkbox-item/menu-checkbox-item.template.js +58 -0
  278. package/dist/components/menu/checkbox-item/setup.component.d.ts +3 -0
  279. package/dist/components/menu/checkbox-item/setup.component.js +22 -0
  280. package/dist/components/menu/group/MenuGroup.element.d.ts +9 -0
  281. package/dist/components/menu/group/MenuGroup.element.js +17 -0
  282. package/dist/components/menu/group/index.d.ts +3 -0
  283. package/dist/components/menu/group/index.js +3 -0
  284. package/dist/components/menu/group/menu-group.template.d.ts +12 -0
  285. package/dist/components/menu/group/menu-group.template.js +37 -0
  286. package/dist/components/menu/group/setup.component.d.ts +3 -0
  287. package/dist/components/menu/group/setup.component.js +16 -0
  288. package/dist/components/menu/index.d.ts +19 -0
  289. package/dist/components/menu/index.js +10 -0
  290. package/dist/components/menu/item/MenuItem.element.d.ts +10 -0
  291. package/dist/components/menu/item/MenuItem.element.js +24 -0
  292. package/dist/components/menu/item/index.d.ts +3 -0
  293. package/dist/components/menu/item/index.js +3 -0
  294. package/dist/components/menu/item/menu-item.template.d.ts +8 -0
  295. package/dist/components/menu/item/menu-item.template.js +36 -0
  296. package/dist/components/menu/item/setup.component.d.ts +3 -0
  297. package/dist/components/menu/item/setup.component.js +22 -0
  298. package/dist/components/menu/items.d.ts +25 -0
  299. package/dist/components/menu/items.js +112 -0
  300. package/dist/components/menu/menu.template.d.ts +17 -0
  301. package/dist/components/menu/menu.template.js +100 -0
  302. package/dist/components/menu/popover-item/MenuPopoverItem.element.d.ts +10 -0
  303. package/dist/components/menu/popover-item/MenuPopoverItem.element.js +24 -0
  304. package/dist/components/menu/popover-item/index.d.ts +3 -0
  305. package/dist/components/menu/popover-item/index.js +3 -0
  306. package/dist/components/menu/popover-item/menu-popover-item.template.d.ts +14 -0
  307. package/dist/components/menu/popover-item/menu-popover-item.template.js +83 -0
  308. package/dist/components/menu/popover-item/setup.component.d.ts +6 -0
  309. package/dist/components/menu/popover-item/setup.component.js +22 -0
  310. package/dist/components/menu/radio-group/MenuRadioGroup.element.d.ts +9 -0
  311. package/dist/components/menu/radio-group/MenuRadioGroup.element.js +17 -0
  312. package/dist/components/menu/radio-group/index.d.ts +3 -0
  313. package/dist/components/menu/radio-group/index.js +3 -0
  314. package/dist/components/menu/radio-group/menu-radio-group.template.d.ts +7 -0
  315. package/dist/components/menu/radio-group/menu-radio-group.template.js +10 -0
  316. package/dist/components/menu/radio-group/setup.component.d.ts +3 -0
  317. package/dist/components/menu/radio-group/setup.component.js +17 -0
  318. package/dist/components/menu/radio-item/MenuRadioItem.element.d.ts +10 -0
  319. package/dist/components/menu/radio-item/MenuRadioItem.element.js +24 -0
  320. package/dist/components/menu/radio-item/index.d.ts +3 -0
  321. package/dist/components/menu/radio-item/index.js +3 -0
  322. package/dist/components/menu/radio-item/menu-radio-item.template.d.ts +7 -0
  323. package/dist/components/menu/radio-item/menu-radio-item.template.js +54 -0
  324. package/dist/components/menu/radio-item/setup.component.d.ts +3 -0
  325. package/dist/components/menu/radio-item/setup.component.js +23 -0
  326. package/dist/components/menu/row.d.ts +27 -0
  327. package/dist/components/menu/row.js +72 -0
  328. package/dist/components/menu/separator/MenuSeparator.element.d.ts +9 -0
  329. package/dist/components/menu/separator/MenuSeparator.element.js +17 -0
  330. package/dist/components/menu/separator/index.d.ts +3 -0
  331. package/dist/components/menu/separator/index.js +3 -0
  332. package/dist/components/menu/separator/menu-separator.template.d.ts +4 -0
  333. package/dist/components/menu/separator/menu-separator.template.js +7 -0
  334. package/dist/components/menu/separator/setup.component.d.ts +3 -0
  335. package/dist/components/menu/separator/setup.component.js +14 -0
  336. package/dist/components/menu/setup.component.d.ts +6 -0
  337. package/dist/components/menu/setup.component.js +25 -0
  338. package/dist/components/menu/submenu/MenuSubmenu.element.d.ts +11 -0
  339. package/dist/components/menu/submenu/MenuSubmenu.element.js +26 -0
  340. package/dist/components/menu/submenu/index.d.ts +3 -0
  341. package/dist/components/menu/submenu/index.js +3 -0
  342. package/dist/components/menu/submenu/menu-submenu.template.d.ts +13 -0
  343. package/dist/components/menu/submenu/menu-submenu.template.js +103 -0
  344. package/dist/components/menu/submenu/setup.component.d.ts +11 -0
  345. package/dist/components/menu/submenu/setup.component.js +36 -0
  346. package/dist/components/number-input/NumberInput.element.d.ts +11 -0
  347. package/dist/components/number-input/NumberInput.element.js +26 -0
  348. package/dist/components/number-input/index.d.ts +3 -0
  349. package/dist/components/number-input/index.js +1 -0
  350. package/dist/components/number-input/number-input.template.d.ts +9 -0
  351. package/dist/components/number-input/number-input.template.js +166 -0
  352. package/dist/components/number-input/setup.component.d.ts +7 -0
  353. package/dist/components/number-input/setup.component.js +16 -0
  354. package/dist/components/pagination/Pagination.element.d.ts +10 -0
  355. package/dist/components/pagination/Pagination.element.js +24 -0
  356. package/dist/components/pagination/index.d.ts +3 -0
  357. package/dist/components/pagination/index.js +1 -0
  358. package/dist/components/pagination/item/PaginationItem.element.d.ts +11 -0
  359. package/dist/components/pagination/item/PaginationItem.element.js +23 -0
  360. package/dist/components/pagination/item/index.d.ts +3 -0
  361. package/dist/components/pagination/item/index.js +3 -0
  362. package/dist/components/pagination/item/pagination-item.template.d.ts +8 -0
  363. package/dist/components/pagination/item/pagination-item.template.js +55 -0
  364. package/dist/components/pagination/item/setup.component.d.ts +3 -0
  365. package/dist/components/pagination/item/setup.component.js +22 -0
  366. package/dist/components/pagination/pagination.template.d.ts +11 -0
  367. package/dist/components/pagination/pagination.template.js +109 -0
  368. package/dist/components/pagination/setup.component.d.ts +3 -0
  369. package/dist/components/pagination/setup.component.js +25 -0
  370. package/dist/components/popover/Popover.element.d.ts +16 -0
  371. package/dist/components/popover/Popover.element.js +46 -0
  372. package/dist/components/popover/index.d.ts +6 -0
  373. package/dist/components/popover/index.js +1 -0
  374. package/dist/components/popover/popover.template.d.ts +9 -0
  375. package/dist/components/popover/popover.template.js +126 -0
  376. package/dist/components/popover/setup.component.d.ts +5 -0
  377. package/dist/components/popover/setup.component.js +14 -0
  378. package/dist/components/progress-linear/ProgressLinear.element.d.ts +10 -0
  379. package/dist/components/progress-linear/ProgressLinear.element.js +24 -0
  380. package/dist/components/progress-linear/index.d.ts +3 -0
  381. package/dist/components/progress-linear/index.js +1 -0
  382. package/dist/components/progress-linear/progress-linear.template.d.ts +8 -0
  383. package/dist/components/progress-linear/progress-linear.template.js +12 -0
  384. package/dist/components/progress-linear/setup.component.d.ts +3 -0
  385. package/dist/components/progress-linear/setup.component.js +14 -0
  386. package/dist/components/progress-spinner/ProgressSpinner.element.d.ts +10 -0
  387. package/dist/components/progress-spinner/ProgressSpinner.element.js +24 -0
  388. package/dist/components/progress-spinner/index.d.ts +3 -0
  389. package/dist/components/progress-spinner/index.js +1 -0
  390. package/dist/components/progress-spinner/progress-spinner.template.d.ts +8 -0
  391. package/dist/components/progress-spinner/progress-spinner.template.js +41 -0
  392. package/dist/components/progress-spinner/setup.component.d.ts +3 -0
  393. package/dist/components/progress-spinner/setup.component.js +14 -0
  394. package/dist/components/radio-group/RadioGroup.element.d.ts +9 -0
  395. package/dist/components/radio-group/RadioGroup.element.js +23 -0
  396. package/dist/components/radio-group/index.d.ts +5 -0
  397. package/dist/components/radio-group/index.js +3 -0
  398. package/dist/components/radio-group/item/RadioGroupItem.element.d.ts +11 -0
  399. package/dist/components/radio-group/item/RadioGroupItem.element.js +25 -0
  400. package/dist/components/radio-group/item/index.d.ts +3 -0
  401. package/dist/components/radio-group/item/index.js +3 -0
  402. package/dist/components/radio-group/item/radio-group-item.template.d.ts +8 -0
  403. package/dist/components/radio-group/item/radio-group-item.template.js +61 -0
  404. package/dist/components/radio-group/item/setup.component.d.ts +3 -0
  405. package/dist/components/radio-group/item/setup.component.js +22 -0
  406. package/dist/components/radio-group/radio-group.template.d.ts +10 -0
  407. package/dist/components/radio-group/radio-group.template.js +34 -0
  408. package/dist/components/radio-group/setup.component.d.ts +3 -0
  409. package/dist/components/radio-group/setup.component.js +25 -0
  410. package/dist/components/rating/Rating.element.d.ts +10 -0
  411. package/dist/components/rating/Rating.element.js +25 -0
  412. package/dist/components/rating/index.d.ts +3 -0
  413. package/dist/components/rating/index.js +1 -0
  414. package/dist/components/rating/rating.template.d.ts +12 -0
  415. package/dist/components/rating/rating.template.js +89 -0
  416. package/dist/components/rating/setup.component.d.ts +7 -0
  417. package/dist/components/rating/setup.component.js +16 -0
  418. package/dist/components/scroller/Scroller.element.d.ts +9 -0
  419. package/dist/components/scroller/Scroller.element.js +19 -0
  420. package/dist/components/scroller/index.d.ts +3 -0
  421. package/dist/components/scroller/index.js +1 -0
  422. package/dist/components/scroller/scroller.template.d.ts +9 -0
  423. package/dist/components/scroller/scroller.template.js +82 -0
  424. package/dist/components/scroller/setup.component.d.ts +3 -0
  425. package/dist/components/scroller/setup.component.js +14 -0
  426. package/dist/components/select/Select.element.d.ts +12 -0
  427. package/dist/components/select/Select.element.js +33 -0
  428. package/dist/components/select/group/SelectGroup.element.d.ts +9 -0
  429. package/dist/components/select/group/SelectGroup.element.js +17 -0
  430. package/dist/components/select/group/index.d.ts +3 -0
  431. package/dist/components/select/group/index.js +3 -0
  432. package/dist/components/select/group/select-group.template.d.ts +7 -0
  433. package/dist/components/select/group/select-group.template.js +32 -0
  434. package/dist/components/select/group/setup.component.d.ts +4 -0
  435. package/dist/components/select/group/setup.component.js +17 -0
  436. package/dist/components/select/index.d.ts +7 -0
  437. package/dist/components/select/index.js +4 -0
  438. package/dist/components/select/item/SelectItem.element.d.ts +11 -0
  439. package/dist/components/select/item/SelectItem.element.js +26 -0
  440. package/dist/components/select/item/index.d.ts +3 -0
  441. package/dist/components/select/item/index.js +3 -0
  442. package/dist/components/select/item/select-item.template.d.ts +9 -0
  443. package/dist/components/select/item/select-item.template.js +113 -0
  444. package/dist/components/select/item/setup.component.d.ts +3 -0
  445. package/dist/components/select/item/setup.component.js +22 -0
  446. package/dist/components/select/select.template.d.ts +12 -0
  447. package/dist/components/select/select.template.js +216 -0
  448. package/dist/components/select/setup.component.d.ts +9 -0
  449. package/dist/components/select/setup.component.js +26 -0
  450. package/dist/components/skeleton/Skeleton.element.d.ts +10 -0
  451. package/dist/components/skeleton/Skeleton.element.js +24 -0
  452. package/dist/components/skeleton/index.d.ts +3 -0
  453. package/dist/components/skeleton/index.js +1 -0
  454. package/dist/components/skeleton/setup.component.d.ts +3 -0
  455. package/dist/components/skeleton/setup.component.js +14 -0
  456. package/dist/components/skeleton/skeleton.template.d.ts +8 -0
  457. package/dist/components/skeleton/skeleton.template.js +25 -0
  458. package/dist/components/slider/Slider.element.d.ts +11 -0
  459. package/dist/components/slider/Slider.element.js +25 -0
  460. package/dist/components/slider/index.d.ts +3 -0
  461. package/dist/components/slider/index.js +1 -0
  462. package/dist/components/slider/setup.component.d.ts +3 -0
  463. package/dist/components/slider/setup.component.js +16 -0
  464. package/dist/components/slider/slider.template.d.ts +8 -0
  465. package/dist/components/slider/slider.template.js +149 -0
  466. package/dist/components/stylable/index.d.ts +1 -0
  467. package/dist/components/stylable/index.js +1 -0
  468. package/dist/components/stylable/setup.component.d.ts +3 -0
  469. package/dist/components/stylable/setup.component.js +2 -0
  470. package/dist/components/switch/Switch.element.d.ts +9 -0
  471. package/dist/components/switch/Switch.element.js +24 -0
  472. package/dist/components/switch/index.d.ts +3 -0
  473. package/dist/components/switch/index.js +1 -0
  474. package/dist/components/switch/setup.component.d.ts +7 -0
  475. package/dist/components/switch/setup.component.js +16 -0
  476. package/dist/components/switch/switch.template.d.ts +9 -0
  477. package/dist/components/switch/switch.template.js +63 -0
  478. package/dist/components/table/Table.element.d.ts +11 -0
  479. package/dist/components/table/Table.element.js +29 -0
  480. package/dist/components/table/column/TableColumn.element.d.ts +10 -0
  481. package/dist/components/table/column/TableColumn.element.js +22 -0
  482. package/dist/components/table/column/index.d.ts +3 -0
  483. package/dist/components/table/column/index.js +3 -0
  484. package/dist/components/table/column/setup.component.d.ts +4 -0
  485. package/dist/components/table/column/setup.component.js +15 -0
  486. package/dist/components/table/column/table-column.template.d.ts +8 -0
  487. package/dist/components/table/column/table-column.template.js +123 -0
  488. package/dist/components/table/index.d.ts +7 -0
  489. package/dist/components/table/index.js +4 -0
  490. package/dist/components/table/row/TableRow.element.d.ts +10 -0
  491. package/dist/components/table/row/TableRow.element.js +19 -0
  492. package/dist/components/table/row/index.d.ts +3 -0
  493. package/dist/components/table/row/index.js +3 -0
  494. package/dist/components/table/row/setup.component.d.ts +3 -0
  495. package/dist/components/table/row/setup.component.js +22 -0
  496. package/dist/components/table/row/table-row.template.d.ts +8 -0
  497. package/dist/components/table/row/table-row.template.js +98 -0
  498. package/dist/components/table/setup.component.d.ts +3 -0
  499. package/dist/components/table/setup.component.js +26 -0
  500. package/dist/components/table/table.template.d.ts +12 -0
  501. package/dist/components/table/table.template.js +164 -0
  502. package/dist/components/tabs/Tabs.element.d.ts +10 -0
  503. package/dist/components/tabs/Tabs.element.js +32 -0
  504. package/dist/components/tabs/content/TabsContent.element.d.ts +10 -0
  505. package/dist/components/tabs/content/TabsContent.element.js +24 -0
  506. package/dist/components/tabs/content/index.d.ts +3 -0
  507. package/dist/components/tabs/content/index.js +3 -0
  508. package/dist/components/tabs/content/setup.component.d.ts +3 -0
  509. package/dist/components/tabs/content/setup.component.js +22 -0
  510. package/dist/components/tabs/content/tabs-content.template.d.ts +4 -0
  511. package/dist/components/tabs/content/tabs-content.template.js +15 -0
  512. package/dist/components/tabs/index.d.ts +7 -0
  513. package/dist/components/tabs/index.js +4 -0
  514. package/dist/components/tabs/item/TabsItem.element.d.ts +10 -0
  515. package/dist/components/tabs/item/TabsItem.element.js +25 -0
  516. package/dist/components/tabs/item/index.d.ts +3 -0
  517. package/dist/components/tabs/item/index.js +3 -0
  518. package/dist/components/tabs/item/setup.component.d.ts +3 -0
  519. package/dist/components/tabs/item/setup.component.js +22 -0
  520. package/dist/components/tabs/item/tabs-item.template.d.ts +8 -0
  521. package/dist/components/tabs/item/tabs-item.template.js +113 -0
  522. package/dist/components/tabs/setup.component.d.ts +3 -0
  523. package/dist/components/tabs/setup.component.js +26 -0
  524. package/dist/components/tabs/tabs.template.d.ts +12 -0
  525. package/dist/components/tabs/tabs.template.js +76 -0
  526. package/dist/components/tags/Tags.element.d.ts +10 -0
  527. package/dist/components/tags/Tags.element.js +24 -0
  528. package/dist/components/tags/index.d.ts +5 -0
  529. package/dist/components/tags/index.js +3 -0
  530. package/dist/components/tags/item/TagsItem.element.d.ts +11 -0
  531. package/dist/components/tags/item/TagsItem.element.js +26 -0
  532. package/dist/components/tags/item/index.d.ts +3 -0
  533. package/dist/components/tags/item/index.js +3 -0
  534. package/dist/components/tags/item/setup.component.d.ts +3 -0
  535. package/dist/components/tags/item/setup.component.js +22 -0
  536. package/dist/components/tags/item/tags-item.template.d.ts +9 -0
  537. package/dist/components/tags/item/tags-item.template.js +115 -0
  538. package/dist/components/tags/setup.component.d.ts +3 -0
  539. package/dist/components/tags/setup.component.js +25 -0
  540. package/dist/components/tags/tags.template.d.ts +10 -0
  541. package/dist/components/tags/tags.template.js +43 -0
  542. package/dist/components/textable/index.d.ts +1 -0
  543. package/dist/components/textable/index.js +1 -0
  544. package/dist/components/textable/setup.component.d.ts +3 -0
  545. package/dist/components/textable/setup.component.js +2 -0
  546. package/dist/components/textarea/Textarea.element.d.ts +9 -0
  547. package/dist/components/textarea/Textarea.element.js +24 -0
  548. package/dist/components/textarea/index.d.ts +3 -0
  549. package/dist/components/textarea/index.js +1 -0
  550. package/dist/components/textarea/setup.component.d.ts +7 -0
  551. package/dist/components/textarea/setup.component.js +16 -0
  552. package/dist/components/textarea/textarea.template.d.ts +9 -0
  553. package/dist/components/textarea/textarea.template.js +81 -0
  554. package/dist/components/toasts/Toasts.element.d.ts +11 -0
  555. package/dist/components/toasts/Toasts.element.js +29 -0
  556. package/dist/components/toasts/index.d.ts +5 -0
  557. package/dist/components/toasts/index.js +3 -0
  558. package/dist/components/toasts/item/ToastsItem.element.d.ts +11 -0
  559. package/dist/components/toasts/item/ToastsItem.element.js +19 -0
  560. package/dist/components/toasts/item/index.d.ts +3 -0
  561. package/dist/components/toasts/item/index.js +3 -0
  562. package/dist/components/toasts/item/setup.component.d.ts +3 -0
  563. package/dist/components/toasts/item/setup.component.js +22 -0
  564. package/dist/components/toasts/item/toasts-item.template.d.ts +9 -0
  565. package/dist/components/toasts/item/toasts-item.template.js +133 -0
  566. package/dist/components/toasts/setup.component.d.ts +3 -0
  567. package/dist/components/toasts/setup.component.js +26 -0
  568. package/dist/components/toasts/toasts.template.d.ts +11 -0
  569. package/dist/components/toasts/toasts.template.js +53 -0
  570. package/dist/components/tooltip/Tooltip.element.d.ts +10 -0
  571. package/dist/components/tooltip/Tooltip.element.js +24 -0
  572. package/dist/components/tooltip/index.d.ts +3 -0
  573. package/dist/components/tooltip/index.js +1 -0
  574. package/dist/components/tooltip/setup.component.d.ts +6 -0
  575. package/dist/components/tooltip/setup.component.js +14 -0
  576. package/dist/components/tooltip/tooltip.template.d.ts +11 -0
  577. package/dist/components/tooltip/tooltip.template.js +68 -0
  578. package/dist/components/value-control/index.d.ts +1 -0
  579. package/dist/components/value-control/index.js +1 -0
  580. package/dist/components/value-control/setup.component.d.ts +4 -0
  581. package/dist/components/value-control/setup.component.js +2 -0
  582. package/dist/components/virtual/Virtual.element.d.ts +10 -0
  583. package/dist/components/virtual/Virtual.element.js +20 -0
  584. package/dist/components/virtual/index.d.ts +3 -0
  585. package/dist/components/virtual/index.js +1 -0
  586. package/dist/components/virtual/setup.component.d.ts +4 -0
  587. package/dist/components/virtual/setup.component.js +17 -0
  588. package/dist/components/virtual/virtual.template.d.ts +4 -0
  589. package/dist/components/virtual/virtual.template.js +14 -0
  590. package/dist/index.d.ts +7 -0
  591. package/dist/index.js +65 -0
  592. package/package.json +200 -4
@@ -0,0 +1,10 @@
1
+ /**
2
+ * `<td is="so-calendar-item">` — день календаря: фокус и наборы — на ячейке (APG,
3
+ * Date Picker Dialog), кнопки внутри нет. Рисует шаблон календаря, регистрирует
4
+ * его модуль. docs/architecture.md, Layer 8d, «Даты».
5
+ */
6
+ import { CalendarItemDescriptor } from '@soxa-ui/setup';
7
+ import type { ICalendarItem, TCalendarItemCollectionFacade } from '@soxa-ui/core';
8
+ import type { TElementClassOf, TElementType } from '../../../adapter';
9
+ export declare const TCalendarItemElement: TElementClassOf<typeof HTMLTableCellElement, typeof CalendarItemDescriptor, ICalendarItem, TCalendarItemCollectionFacade>;
10
+ export type TCalendarItemElementProps = TElementType<typeof TCalendarItemElement>;
@@ -0,0 +1,19 @@
1
+ import { ElementBase } from "../../../adapter/runtime/element.base.js";
2
+ import "../../../adapter/index.js";
3
+ import { setupCalendarItem } from "./setup.component.js";
4
+ import { calendarItemTemplate } from "./calendar-item.template.js";
5
+ import { CalendarCollectionItemDescriptor, CalendarItemDescriptor } from "@soxa-ui/setup";
6
+ //#region src/components/calendar/item/CalendarItem.element.ts
7
+ /**
8
+ * `<td is="so-calendar-item">` — день календаря: фокус и наборы — на ячейке (APG,
9
+ * Date Picker Dialog), кнопки внутри нет. Рисует шаблон календаря, регистрирует
10
+ * его модуль. docs/architecture.md, Layer 8d, «Даты».
11
+ */
12
+ var TCalendarItemElement = ElementBase(HTMLTableCellElement, {
13
+ descriptor: CalendarItemDescriptor,
14
+ facade: CalendarCollectionItemDescriptor,
15
+ template: calendarItemTemplate,
16
+ setup: setupCalendarItem
17
+ });
18
+ //#endregion
19
+ export { TCalendarItemElement };
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Шаблон дня: плитка `div.so-calendar-item__day` — `div`, потому что в слот
3
+ * кладут и блочное содержимое. Полосу диапазона тема рисует псевдоэлементом ячейки.
4
+ */
5
+ import type { ICalendarItem, TCalendarItemCollectionFacade } from '@soxa-ui/core';
6
+ import { type ITemplate } from '../../../adapter';
7
+ export declare const calendarItemTemplate: ITemplate<ICalendarItem, TCalendarItemCollectionFacade>;
@@ -0,0 +1,22 @@
1
+ import { bind } from "../../../adapter/template/types.js";
2
+ import { patch } from "../../../adapter/template/parts.js";
3
+ import "../../../adapter/index.js";
4
+ //#region src/components/calendar/item/calendar-item.template.ts
5
+ var calendarItemTemplate = {
6
+ create: (root) => {
7
+ const day = root.ownerDocument.createElement("div");
8
+ day.className = "so-calendar-item__day";
9
+ root.appendChild(day);
10
+ return { slots: { default: {
11
+ mode: "append",
12
+ node: day
13
+ } } };
14
+ },
15
+ bindings: [bind("text", ({ content, state, hasSlot }) => {
16
+ if (hasSlot("default")) return;
17
+ const text = state.text ?? "";
18
+ patch(content, { textContent: text });
19
+ })]
20
+ };
21
+ //#endregion
22
+ export { calendarItemTemplate };
@@ -0,0 +1,3 @@
1
+ export { setupCalendarItem } from './setup.component';
2
+ export { TCalendarItemElement, type TCalendarItemElementProps } from './CalendarItem.element';
3
+ export { calendarItemTemplate } from './calendar-item.template';
@@ -0,0 +1,3 @@
1
+ import "./setup.component.js";
2
+ import "./calendar-item.template.js";
3
+ export { TCalendarItemElement } from "./CalendarItem.element.js";
@@ -0,0 +1,3 @@
1
+ import type { ICalendarItem, TCalendarItemCollectionFacade } from '@soxa-ui/core';
2
+ import type { TBinding, TUpdateListener } from '../../../adapter';
3
+ export declare function setupCalendarItem(host: HTMLElement, ctrl: ICalendarItem | undefined, props: Record<string, unknown>, onUpdate: TUpdateListener): TBinding<ICalendarItem, TCalendarItemCollectionFacade>;
@@ -0,0 +1,22 @@
1
+ import { createWebcAdapterContext } from "../../../adapter/common/createWebcAdapterContext.js";
2
+ import { joinBindings, useAdapter, useCollectionAdapter } from "../../../adapter/runtime/useAdapter.js";
3
+ import { createWebcElevator } from "../../../adapter/elevator/factory.js";
4
+ import "../../../adapter/elevator/index.js";
5
+ import "../../../adapter/index.js";
6
+ import { CalendarCollectionItemDescriptor, CalendarItemDescriptor, TCollectionItemExtension } from "@soxa-ui/setup";
7
+ //#region src/components/calendar/item/setup.component.ts
8
+ function setupCalendarItem(host, ctrl, props, onUpdate) {
9
+ const adapter = createWebcAdapterContext(host, CalendarItemDescriptor(), {
10
+ ctrl,
11
+ props
12
+ });
13
+ const itemAdapter = createWebcAdapterContext(host, CalendarCollectionItemDescriptor(), { props }, { bundle: adapter.bundle }).use(TCollectionItemExtension, {
14
+ adapter,
15
+ elevator: createWebcElevator(host)
16
+ });
17
+ const item = useCollectionAdapter(itemAdapter, host, onUpdate);
18
+ const owner = useAdapter(adapter, host, onUpdate);
19
+ return joinBindings(owner, item);
20
+ }
21
+ //#endregion
22
+ export { setupCalendarItem };
@@ -0,0 +1,3 @@
1
+ import type { ICalendar, TCalendarCollectionFacade } from '@soxa-ui/core';
2
+ import type { TBinding, TUpdateListener } from '../../adapter';
3
+ export declare function setupCalendar(host: HTMLElement, ctrl: ICalendar | undefined, props: Record<string, unknown>, onUpdate: TUpdateListener): TBinding<ICalendar, TCalendarCollectionFacade>;
@@ -0,0 +1,25 @@
1
+ import { createWebcAdapterContext } from "../../adapter/common/createWebcAdapterContext.js";
2
+ import { joinBindings, useAdapter, useCollectionAdapter } from "../../adapter/runtime/useAdapter.js";
3
+ import { createWebcElevator } from "../../adapter/elevator/factory.js";
4
+ import "../../adapter/elevator/index.js";
5
+ import "../../adapter/index.js";
6
+ import { CalendarCollectionDescriptor, CalendarDescriptor, TCollectionExtension } from "@soxa-ui/setup";
7
+ //#region src/components/calendar/setup.component.ts
8
+ function setupCalendar(host, ctrl, props, onUpdate) {
9
+ const adapter = createWebcAdapterContext(host, CalendarDescriptor(), {
10
+ ctrl,
11
+ props
12
+ });
13
+ const collectionAdapter = createWebcAdapterContext(host, CalendarCollectionDescriptor(), {
14
+ props,
15
+ options: {
16
+ owner: adapter.instance,
17
+ engine: props["engine"]
18
+ }
19
+ }, { bundle: adapter.bundle }).use(TCollectionExtension, { elevator: createWebcElevator(host) });
20
+ const facade = useCollectionAdapter(collectionAdapter, host, onUpdate);
21
+ const owner = useAdapter(adapter, host, onUpdate);
22
+ return joinBindings(owner, facade);
23
+ }
24
+ //#endregion
25
+ export { setupCalendar };
@@ -0,0 +1,9 @@
1
+ /**
2
+ * `<span is="so-check-box">` — флажок с нативным `<input type="checkbox">`
3
+ * внутри; `span` — его кладут в `Label`. docs/architecture.md, Layer 8d, «Поле».
4
+ */
5
+ import { CheckBoxDescriptor } from '@soxa-ui/setup';
6
+ import type { ICheckBox } from '@soxa-ui/core';
7
+ import type { TElementClassOf, TElementType } from '../../adapter';
8
+ export declare const TCheckBoxElement: TElementClassOf<typeof HTMLSpanElement, typeof CheckBoxDescriptor, ICheckBox>;
9
+ export type TCheckBoxElementProps = TElementType<typeof TCheckBoxElement>;
@@ -0,0 +1,24 @@
1
+ import { defineElement } from "../../adapter/runtime/defineElement.js";
2
+ import { ElementBase } from "../../adapter/runtime/element.base.js";
3
+ import "../../adapter/index.js";
4
+ import { checkBoxTemplate } from "./check-box.template.js";
5
+ import { setupCheckBox } from "./setup.component.js";
6
+ import { CheckBoxDescriptor } from "@soxa-ui/setup";
7
+ //#region src/components/check-box/CheckBox.element.ts
8
+ /**
9
+ * `<span is="so-check-box">` — флажок с нативным `<input type="checkbox">`
10
+ * внутри; `span` — его кладут в `Label`. docs/architecture.md, Layer 8d, «Поле».
11
+ */
12
+ var TCheckBoxElement = ElementBase(HTMLSpanElement, {
13
+ descriptor: CheckBoxDescriptor,
14
+ template: checkBoxTemplate,
15
+ root: {
16
+ strategy: "host",
17
+ sets: ["attrs", "dataset"],
18
+ control: true
19
+ },
20
+ setup: setupCheckBox
21
+ });
22
+ defineElement("so-check-box", TCheckBoxElement, "span");
23
+ //#endregion
24
+ export { TCheckBoxElement };
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Шаблон CheckBox: поле и коробка-декор под `aria-hidden` — иконки слотов не
3
+ * попадают в имя от подписи. Отметка без слота — голый `<svg>`, а не Icon: она
4
+ * меняется с каждой отметкой, и Icon собирал бы на каждую контекст и плагины —
5
+ * в таблице «выбрать все» тысячами.
6
+ */
7
+ import type { ICheckBox } from '@soxa-ui/core';
8
+ import type { TCheckBoxOutputs } from './setup.component';
9
+ import { type ITemplate } from '../../adapter';
10
+ export declare const checkBoxTemplate: ITemplate<ICheckBox, unknown, TCheckBoxOutputs>;
@@ -0,0 +1,94 @@
1
+ import { drawRoleIcon, roleIcon } from "../../adapter/common/icon.js";
2
+ import { bind } from "../../adapter/template/types.js";
3
+ import { ownerAttributes } from "../../adapter/template/owner.js";
4
+ import { patch } from "../../adapter/template/parts.js";
5
+ import "../../adapter/index.js";
6
+ //#region src/components/check-box/check-box.template.ts
7
+ /** Слот отметки и роль иконки, которая рисуется без него. */
8
+ var MARKS = {
9
+ icon: "check",
10
+ "indeterminate-icon": "checkIndeterminate"
11
+ };
12
+ var parts = /* @__PURE__ */ new WeakMap();
13
+ /** Отметка без слота каждого флажка — своя: создаётся с первой ролью и остаётся за ним. */
14
+ var marks = /* @__PURE__ */ new WeakMap();
15
+ /** Отметка без слота — рисунок роли на одном узле; роли нет — отметки нет. */
16
+ function drawMark(root, container, role) {
17
+ let svg = marks.get(root);
18
+ if (role === null) {
19
+ svg?.remove();
20
+ return;
21
+ }
22
+ if (svg) drawRoleIcon(svg, role);
23
+ else {
24
+ svg = roleIcon(role);
25
+ svg.setAttribute("class", "so-check-box__mark");
26
+ marks.set(root, svg);
27
+ }
28
+ if (svg.parentNode !== container) container.appendChild(svg);
29
+ }
30
+ var checkBoxTemplate = {
31
+ create: (root) => {
32
+ const { ownerDocument } = root;
33
+ const field = ownerDocument.createElement("input");
34
+ const container = ownerDocument.createElement("span");
35
+ field.type = "checkbox";
36
+ container.className = "so-check-box__container";
37
+ container.setAttribute("aria-hidden", "true");
38
+ root.append(field, container);
39
+ parts.set(root, {
40
+ field,
41
+ container
42
+ });
43
+ return {
44
+ slots: {
45
+ icon: {
46
+ mode: "append",
47
+ node: container
48
+ },
49
+ "indeterminate-icon": {
50
+ mode: "append",
51
+ node: container
52
+ }
53
+ },
54
+ control: field
55
+ };
56
+ },
57
+ bindings: [
58
+ bind([
59
+ "id",
60
+ "name",
61
+ "disabled",
62
+ "required"
63
+ ], ({ root, state }) => {
64
+ const field = parts.get(root)?.field;
65
+ if (!field) return;
66
+ if (state.id === void 0) field.removeAttribute("id");
67
+ else field.id = state.id;
68
+ field.name = state.name ?? "";
69
+ field.disabled = state.disabled === true;
70
+ field.required = state.required === true;
71
+ }),
72
+ bind("aria", ({ root, state }) => {
73
+ const field = parts.get(root)?.field;
74
+ if (field) ownerAttributes(field, state.aria);
75
+ }),
76
+ bind(["value", "indeterminate"], ({ root, state, hasSlot, showSlot }) => {
77
+ const own = parts.get(root);
78
+ if (!own) return;
79
+ const { field, container } = own;
80
+ const checked = state.value === true;
81
+ const indeterminate = state.indeterminate === true;
82
+ patch(field, {
83
+ checked,
84
+ indeterminate
85
+ });
86
+ const mark = indeterminate ? "indeterminate-icon" : checked ? "icon" : null;
87
+ showSlot("icon", mark === "icon");
88
+ showSlot("indeterminate-icon", mark === "indeterminate-icon");
89
+ drawMark(root, container, mark === null || hasSlot(mark) ? null : MARKS[mark]);
90
+ })
91
+ ]
92
+ };
93
+ //#endregion
94
+ export { checkBoxTemplate };
@@ -0,0 +1,3 @@
1
+ /** Application API for this element entry. */
2
+ export { TCheckBoxElement } from './CheckBox.element';
3
+ export type { TCheckBoxElementProps } from './CheckBox.element';
@@ -0,0 +1 @@
1
+ export { TCheckBoxElement } from "./CheckBox.element.js";
@@ -0,0 +1,7 @@
1
+ import { CheckBoxDescriptor } from '@soxa-ui/setup';
2
+ import type { DescriptorPluginProps } from '@soxa-ui/setup';
3
+ import type { ICheckBox } from '@soxa-ui/core';
4
+ import type { TBinding, TUpdateListener } from '../../adapter';
5
+ /** Сверх инстанса шаблон читает входы плагинов: `id` поля — проп `TIdPlugin`. */
6
+ export type TCheckBoxOutputs = DescriptorPluginProps<typeof CheckBoxDescriptor>;
7
+ export declare function setupCheckBox(host: HTMLElement, ctrl: ICheckBox | undefined, props: Record<string, unknown>, onUpdate: TUpdateListener): TBinding<ICheckBox, unknown, TCheckBoxOutputs>;
@@ -0,0 +1,16 @@
1
+ import { createWebcAdapterContext } from "../../adapter/common/createWebcAdapterContext.js";
2
+ import { useAdapter } from "../../adapter/runtime/useAdapter.js";
3
+ import { createWebcElevator } from "../../adapter/elevator/factory.js";
4
+ import "../../adapter/elevator/index.js";
5
+ import "../../adapter/index.js";
6
+ import { CheckBoxDescriptor, TFieldControlExtension } from "@soxa-ui/setup";
7
+ //#region src/components/check-box/setup.component.ts
8
+ function setupCheckBox(host, ctrl, props, onUpdate) {
9
+ const adapter = createWebcAdapterContext(host, CheckBoxDescriptor(), {
10
+ ctrl,
11
+ props
12
+ }).use(TFieldControlExtension, { elevator: createWebcElevator(host) });
13
+ return useAdapter(adapter, host, onUpdate);
14
+ }
15
+ //#endregion
16
+ export { setupCheckBox };
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Встроенная кнопка очистки поля — деталь его разметки, одна на поле:
3
+ * строится с первым `clearable` и остаётся за ним. Нажатие — команда поля
4
+ * `clear` того инстанса, что живёт сейчас. Своя кнопка — слот `clear` — её
5
+ * заменяет целиком.
6
+ */
7
+ import type { TAttributesMap } from '@soxa-ui/core';
8
+ import { type TButtonElementProps } from '../button';
9
+ /** Что кнопка берёт у поля: инстанс с командой и состояние. */
10
+ export type TClearContext = {
11
+ readonly root: HTMLElement;
12
+ readonly ctrl: {
13
+ clear(): void;
14
+ } | undefined;
15
+ readonly state: {
16
+ readonly size?: TButtonElementProps['size'];
17
+ readonly disabled?: boolean;
18
+ readonly clearAria?: TAttributesMap;
19
+ };
20
+ hasSlot(name: string): boolean;
21
+ };
22
+ /** Кнопка поля с пропсами по его состоянию — только сменившимися: `disabled` кнопки нативный. */
23
+ export declare function clearButton(ctx: TClearContext, block: string): TButtonElementProps;
24
+ export declare function removeClearButton(root: HTMLElement): void;
25
+ /**
26
+ * Очистка в обёртке у конца поля, перед `before` (нет его — в конце корня).
27
+ * Обёртку без слота `trailing` держит только кнопка. Сначала кнопка в обёртку,
28
+ * потом обёртка в корень: кнопка входит в документ одной вставкой.
29
+ */
30
+ export declare function placeClearButton(ctx: TClearContext & {
31
+ readonly state: {
32
+ readonly clearable?: boolean;
33
+ };
34
+ }, block: string, trailing: HTMLElement, before: Node | null): void;
@@ -0,0 +1,67 @@
1
+ import { ownerAttributes } from "../../adapter/template/owner.js";
2
+ import { createDetail, patch } from "../../adapter/template/parts.js";
3
+ import "../../adapter/index.js";
4
+ import { TButtonElement } from "../button/Button.element.js";
5
+ import "../button/index.js";
6
+ import { TIconElement } from "../icon/Icon.element.js";
7
+ import "../icon/index.js";
8
+ //#region src/components/common/clear.ts
9
+ var clears = /* @__PURE__ */ new WeakMap();
10
+ function build(ctx, block) {
11
+ const { ownerDocument } = ctx.root;
12
+ const button = createDetail(ownerDocument, TButtonElement, {
13
+ embedded: `${block}.clear`,
14
+ attributes: { type: "button" }
15
+ });
16
+ const icon = createDetail(ownerDocument, TIconElement, { embedded: `${block}.clear-icon` });
17
+ button.className = `so-${block}__clear`;
18
+ icon.icon = "close";
19
+ button.appendChild(icon);
20
+ button.addEventListener("so:action:click", (event) => {
21
+ if (event instanceof CustomEvent && event.detail instanceof Event) event.detail.stopPropagation();
22
+ ctx.ctrl?.clear();
23
+ });
24
+ return {
25
+ button,
26
+ icon
27
+ };
28
+ }
29
+ /** Кнопка поля с пропсами по его состоянию — только сменившимися: `disabled` кнопки нативный. */
30
+ function clearButton(ctx, block) {
31
+ let clear = clears.get(ctx.root);
32
+ if (!clear) {
33
+ clear = build(ctx, block);
34
+ clears.set(ctx.root, clear);
35
+ }
36
+ const { button, icon } = clear;
37
+ const { size } = ctx.state;
38
+ const disabled = ctx.state.disabled === true;
39
+ patch(button, {
40
+ size,
41
+ disabled
42
+ });
43
+ patch(icon, { size });
44
+ ownerAttributes(button, ctx.state.clearAria);
45
+ return button;
46
+ }
47
+ function removeClearButton(root) {
48
+ clears.get(root)?.button.remove();
49
+ }
50
+ /**
51
+ * Очистка в обёртке у конца поля, перед `before` (нет его — в конце корня).
52
+ * Обёртку без слота `trailing` держит только кнопка. Сначала кнопка в обёртку,
53
+ * потом обёртка в корень: кнопка входит в документ одной вставкой.
54
+ */
55
+ function placeClearButton(ctx, block, trailing, before) {
56
+ if (ctx.hasSlot("clear")) return;
57
+ if (ctx.state.clearable !== true) {
58
+ removeClearButton(ctx.root);
59
+ if (!ctx.hasSlot("trailing")) trailing.remove();
60
+ return;
61
+ }
62
+ const button = clearButton(ctx, block);
63
+ if (trailing.firstChild !== button) trailing.prepend(button);
64
+ if (trailing.parentNode !== ctx.root) ctx.root.insertBefore(trailing, before);
65
+ }
66
+ //#endregion
67
+ export { clearButton, placeClearButton, removeClearButton };
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Строки списка с группами по записям рисования (`drawnSections`) — ListBox и
3
+ * панель Select: разделитель между секциями, группа с подписью и своей петлёй
4
+ * записей, запись — элемент из данных или распорка окна. Группа ещё не в
5
+ * документе, и её записи становятся светом — база группы раскладывает их в
6
+ * слот по умолчанию, когда группа собирается.
7
+ */
8
+ import type { TDrawable, TDrawnSection } from '@soxa-ui/core';
9
+ import { type ITemplateContext, type TItemSlots, type TPartClass } from '../../adapter';
10
+ export type TDrawnRowsSpec<TItem extends TDrawable> = {
11
+ /** Блок классов разделителя и распорки: `so-<block>__separator`, `so-<block>__filler`. */
12
+ readonly block: string;
13
+ readonly item: TPartClass<HTMLElement & {
14
+ ctrl: TItem | undefined;
15
+ }>;
16
+ readonly group: TPartClass<HTMLElement & {
17
+ label?: string;
18
+ }>;
19
+ /** Образцы владельца → слоты элемента из данных. */
20
+ readonly slots: TItemSlots;
21
+ };
22
+ type TRowsContext = Pick<ITemplateContext, 'root' | 'sample'>;
23
+ export declare class TDrawnRows<TItem extends TDrawable> {
24
+ private readonly _spec;
25
+ private readonly _loop;
26
+ private readonly _groups;
27
+ constructor(parent: Node, end: Node | null, _spec: TDrawnRowsSpec<TItem>);
28
+ draw(ctx: TRowsContext, sections: readonly TDrawnSection<TItem>[] | undefined, separated: boolean): void;
29
+ private _rowOf;
30
+ private _updateRow;
31
+ private _fillGroup;
32
+ /** Элемент из данных — инстанс и копии образцов до вставки — или распорка. */
33
+ private _entryOf;
34
+ }
35
+ export {};
@@ -0,0 +1,79 @@
1
+ import { ownerStyles } from "../../adapter/template/owner.js";
2
+ import { createItem, lendSamples } from "../../adapter/template/parts.js";
3
+ import { TKeyedLoop } from "../../adapter/template/loop.js";
4
+ import "../../adapter/index.js";
5
+ //#region src/components/common/drawn-rows.ts
6
+ function rowsOf(sections, separated) {
7
+ return sections.flatMap((section, index) => [...separated && index > 0 ? [{
8
+ kind: "separator",
9
+ key: `separator:${section.key}`
10
+ }] : [], ...section.group ? [{
11
+ kind: "group",
12
+ key: section.key,
13
+ section
14
+ }] : section.entries]);
15
+ }
16
+ var TDrawnRows = class {
17
+ _spec;
18
+ _loop;
19
+ _groups = /* @__PURE__ */ new WeakMap();
20
+ constructor(parent, end, _spec) {
21
+ this._spec = _spec;
22
+ this._loop = new TKeyedLoop(parent, end, (row) => row.key);
23
+ }
24
+ draw(ctx, sections, separated) {
25
+ this._loop.draw(rowsOf(sections ?? [], separated), (row) => this._rowOf(ctx, row), (node, row) => this._updateRow(ctx, node, row));
26
+ }
27
+ _rowOf(ctx, row) {
28
+ if (row.kind === "separator") {
29
+ const separator = ctx.root.ownerDocument.createElement("div");
30
+ separator.className = `so-${this._spec.block}__separator`;
31
+ separator.setAttribute("aria-hidden", "true");
32
+ return separator;
33
+ }
34
+ if (row.kind === "group") {
35
+ const group = createItem(ctx.root.ownerDocument, this._spec.group);
36
+ this._fillGroup(ctx, group, row.section);
37
+ return group;
38
+ }
39
+ return this._entryOf(ctx, row);
40
+ }
41
+ _updateRow(ctx, node, row) {
42
+ if (row.kind === "separator") return;
43
+ if (row.kind === "group") {
44
+ if (node instanceof this._spec.group) this._fillGroup(ctx, node, row.section);
45
+ return;
46
+ }
47
+ updateEntry(node, row);
48
+ }
49
+ _fillGroup(ctx, group, section) {
50
+ group.label = section.group?.label;
51
+ let loop = this._groups.get(group);
52
+ if (!loop) {
53
+ loop = new TKeyedLoop(group, null, (entry) => entry.key);
54
+ this._groups.set(group, loop);
55
+ }
56
+ loop.draw(section.entries, (entry) => this._entryOf(ctx, entry), updateEntry);
57
+ }
58
+ /** Элемент из данных — инстанс и копии образцов до вставки — или распорка. */
59
+ _entryOf(ctx, entry) {
60
+ const { ownerDocument } = ctx.root;
61
+ if (entry.kind === "filler") {
62
+ const filler = ownerDocument.createElement("div");
63
+ filler.className = `so-${this._spec.block}__filler`;
64
+ filler.setAttribute("aria-hidden", "true");
65
+ ownerStyles(filler, entry.style);
66
+ return filler;
67
+ }
68
+ const item = createItem(ownerDocument, this._spec.item);
69
+ item.ctrl = entry.item;
70
+ lendSamples(ctx, item, this._spec.slots);
71
+ return item;
72
+ }
73
+ };
74
+ /** Живой записи — её стиль: элемент из данных всё берёт у своего инстанса. */
75
+ function updateEntry(node, entry) {
76
+ if (entry.kind === "filler") ownerStyles(node, entry.style);
77
+ }
78
+ //#endregion
79
+ export { TDrawnRows };
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Кнопка-деталь со значком роли — стрелки Calendar, Scroller и Pagination,
3
+ * шаги NumberInput — и иконка роли в слоте детали. Заданный слот значка
4
+ * заменяет иконку целиком.
5
+ */
6
+ import { type TButtonElementProps } from '../button';
7
+ import { type TIconElementProps } from '../icon';
8
+ export type TIconButton = {
9
+ readonly button: TButtonElementProps;
10
+ /** Своя иконка; при заданном слоте значка — `null`. */
11
+ readonly icon: TIconElementProps | null;
12
+ };
13
+ export type TIconButtonSpec = {
14
+ readonly embedded: string;
15
+ readonly iconEmbedded: string;
16
+ /** Класс кнопки: по нему её находят плагины компонента. */
17
+ readonly className: string;
18
+ readonly role: string;
19
+ };
20
+ /** Иконка роли — деталь в слот по умолчанию другой детали. */
21
+ export declare function lendRoleIcon(detail: Element, role: string, embedded: string): TIconElementProps;
22
+ export declare function iconButton(owner: Document, spec: TIconButtonSpec, slotted: boolean): TIconButton;
23
+ /** Пропсы кнопки и иконки — только сменившиеся: `disabled` кнопки нативный. */
24
+ export declare function syncIconButton({ button, icon }: TIconButton, size: TButtonElementProps['size'], disabled: boolean): void;
@@ -0,0 +1,42 @@
1
+ import { lend } from "../../adapter/template/lend.js";
2
+ import { createDetail, patch } from "../../adapter/template/parts.js";
3
+ import "../../adapter/index.js";
4
+ import { TButtonElement } from "../button/Button.element.js";
5
+ import "../button/index.js";
6
+ import { TIconElement } from "../icon/Icon.element.js";
7
+ import "../icon/index.js";
8
+ import { DEFAULT_SLOT } from "@soxa-ui/setup";
9
+ //#region src/components/common/icon-button.ts
10
+ /**
11
+ * Кнопка-деталь со значком роли — стрелки Calendar, Scroller и Pagination,
12
+ * шаги NumberInput — и иконка роли в слоте детали. Заданный слот значка
13
+ * заменяет иконку целиком.
14
+ */
15
+ /** Иконка роли — деталь в слот по умолчанию другой детали. */
16
+ function lendRoleIcon(detail, role, embedded) {
17
+ const icon = createDetail(detail.ownerDocument, TIconElement, { embedded });
18
+ icon.icon = role;
19
+ lend(detail, DEFAULT_SLOT, icon);
20
+ return icon;
21
+ }
22
+ function iconButton(owner, spec, slotted) {
23
+ const button = createDetail(owner, TButtonElement, {
24
+ embedded: spec.embedded,
25
+ attributes: { type: "button" }
26
+ });
27
+ button.className = spec.className;
28
+ return {
29
+ button,
30
+ icon: slotted ? null : lendRoleIcon(button, spec.role, spec.iconEmbedded)
31
+ };
32
+ }
33
+ /** Пропсы кнопки и иконки — только сменившиеся: `disabled` кнопки нативный. */
34
+ function syncIconButton({ button, icon }, size, disabled) {
35
+ patch(button, {
36
+ size,
37
+ disabled
38
+ });
39
+ if (icon && icon.size !== size) icon.size = size;
40
+ }
41
+ //#endregion
42
+ export { iconButton, lendRoleIcon, syncIconButton };
@@ -0,0 +1 @@
1
+ export { setupComponent } from './setup.component';
@@ -0,0 +1 @@
1
+ import "./setup.component.js";
@@ -0,0 +1,3 @@
1
+ import type { IComponent } from '@soxa-ui/core';
2
+ import type { TBinding, TUpdateListener } from '../../adapter';
3
+ export declare function setupComponent(host: HTMLElement, ctrl: IComponent | undefined, props: Record<string, unknown>, onUpdate: TUpdateListener): TBinding<IComponent>;
@@ -0,0 +1,2 @@
1
+ import "../../adapter/index.js";
2
+ import "@soxa-ui/setup";
@@ -0,0 +1,6 @@
1
+ /** `<div is="so-component-view">`. docs/architecture.md, Layer 8d, «Light DOM». */
2
+ import { ComponentViewDescriptor } from '@soxa-ui/setup';
3
+ import type { IComponentView } from '@soxa-ui/core';
4
+ import type { TElementClassOf, TElementType } from '../../adapter';
5
+ export declare const TComponentViewElement: TElementClassOf<typeof HTMLDivElement, typeof ComponentViewDescriptor, IComponentView>;
6
+ export type TComponentViewElementProps = TElementType<typeof TComponentViewElement>;
@@ -0,0 +1,16 @@
1
+ import { defineElement } from "../../adapter/runtime/defineElement.js";
2
+ import { ElementBase } from "../../adapter/runtime/element.base.js";
3
+ import "../../adapter/index.js";
4
+ import { componentViewTemplate } from "./component-view.template.js";
5
+ import { setupComponentView } from "./setup.component.js";
6
+ import { ComponentViewDescriptor } from "@soxa-ui/setup";
7
+ //#region src/components/component-view/ComponentView.element.ts
8
+ /** `<div is="so-component-view">`. docs/architecture.md, Layer 8d, «Light DOM». */
9
+ var TComponentViewElement = ElementBase(HTMLDivElement, {
10
+ descriptor: ComponentViewDescriptor,
11
+ template: componentViewTemplate,
12
+ setup: setupComponentView
13
+ });
14
+ defineElement("so-component-view", TComponentViewElement, "div");
15
+ //#endregion
16
+ export { TComponentViewElement };
@@ -0,0 +1,4 @@
1
+ /** Шаблон ComponentView: структуры нет, содержимое остаётся в корне. */
2
+ import type { IComponentView } from '@soxa-ui/core';
3
+ import type { ITemplate } from '../../adapter';
4
+ export declare const componentViewTemplate: ITemplate<IComponentView>;