native-document 1.0.164 → 1.0.166

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 (398) hide show
  1. package/components.d.ts +2 -0
  2. package/devtools/widget.js +1 -1
  3. package/dist/native-document.components.min.js +11074 -2735
  4. package/dist/native-document.dev.js +2269 -392
  5. package/dist/native-document.dev.js.map +1 -1
  6. package/dist/native-document.min.js +1 -1
  7. package/eslint.config.js +28 -33
  8. package/i18n.js +1 -1
  9. package/i18n.ts +2 -0
  10. package/index.js +4 -1
  11. package/package.json +3 -2
  12. package/src/components/$traits/has-draggable/HasDraggable.d.ts +4 -0
  13. package/src/components/$traits/has-draggable/HasDraggable.js +13 -0
  14. package/src/components/$traits/has-items/HasItems.d.ts +9 -0
  15. package/src/components/$traits/has-items/HasItems.js +6 -6
  16. package/src/components/$traits/has-position/HasFullPosition.d.ts +14 -0
  17. package/src/components/$traits/has-position/HasFullPosition.js +44 -0
  18. package/src/components/$traits/has-position/HasPosition.d.ts +7 -0
  19. package/src/components/$traits/has-position/HasPosition.js +23 -1
  20. package/src/components/$traits/has-resizable/HasResizable.d.ts +13 -0
  21. package/src/components/$traits/has-resizable/HasResizable.js +9 -0
  22. package/src/components/$traits/has-validation/HasValidation.d.ts +17 -0
  23. package/src/components/$traits/has-validation/HasValidation.js +54 -7
  24. package/src/components/BaseComponent.d.ts +32 -0
  25. package/src/components/BaseComponent.js +65 -9
  26. package/src/components/accordion/Accordion.js +39 -14
  27. package/src/components/accordion/AccordionItem.js +45 -14
  28. package/src/components/accordion/index.js +2 -2
  29. package/src/components/accordion/types/Accordion.d.ts +47 -0
  30. package/src/components/accordion/types/AccordionItem.d.ts +48 -0
  31. package/src/components/alert/Alert.js +70 -38
  32. package/src/components/alert/index.js +2 -2
  33. package/src/components/alert/types/Alert.d.ts +62 -0
  34. package/src/components/avatar/Avatar.js +49 -12
  35. package/src/components/avatar/AvatarGroup.js +50 -2
  36. package/src/components/avatar/index.js +2 -2
  37. package/src/components/avatar/types/Avatar.d.ts +74 -0
  38. package/src/components/avatar/types/AvatarGroup.d.ts +32 -0
  39. package/src/components/badge/Badge.js +125 -5
  40. package/src/components/badge/index.js +2 -2
  41. package/src/components/badge/types/Badge.d.ts +51 -0
  42. package/src/components/breadcrumb/BreadCrumb.js +61 -5
  43. package/src/components/breadcrumb/index.js +2 -2
  44. package/src/components/breadcrumb/types/BreadCrumb.d.ts +42 -0
  45. package/src/components/button/Button.js +164 -9
  46. package/src/components/button/index.js +1 -1
  47. package/src/components/button/types/Button.d.ts +62 -0
  48. package/src/components/card/Card.js +128 -10
  49. package/src/components/card/index.js +3 -3
  50. package/src/components/card/types/Card.d.ts +42 -0
  51. package/src/components/context-menu/ContextMenu.js +49 -5
  52. package/src/components/context-menu/ContextMenuGroup.js +15 -2
  53. package/src/components/context-menu/ContextMenuItem.js +14 -2
  54. package/src/components/context-menu/index.js +5 -5
  55. package/src/components/context-menu/types/ContextMenu.d.ts +30 -0
  56. package/src/components/context-menu/types/ContextMenuGroup.d.ts +18 -0
  57. package/src/components/context-menu/types/ContextMenuItem.d.ts +18 -0
  58. package/src/components/divider/Divider.js +120 -4
  59. package/src/components/divider/index.js +3 -3
  60. package/src/components/divider/types/Divider.d.ts +55 -0
  61. package/src/components/dropdown/Dropdown.js +239 -16
  62. package/src/components/dropdown/DropdownDivider.js +22 -2
  63. package/src/components/dropdown/DropdownGroup.js +44 -5
  64. package/src/components/dropdown/DropdownItem.js +76 -3
  65. package/src/components/dropdown/DropdownTrigger.js +49 -20
  66. package/src/components/dropdown/helpers.js +1 -1
  67. package/src/components/dropdown/index.js +6 -6
  68. package/src/components/dropdown/types/Dropdown.d.ts +88 -0
  69. package/src/components/dropdown/types/DropdownDivider.d.ts +20 -0
  70. package/src/components/dropdown/types/DropdownGroup.d.ts +25 -0
  71. package/src/components/dropdown/types/DropdownItem.d.ts +41 -0
  72. package/src/components/dropdown/types/DropdownTrigger.d.ts +32 -0
  73. package/src/components/form/FormControl.js +156 -13
  74. package/src/components/form/field/Field.js +172 -9
  75. package/src/components/form/field/FieldCollection.js +116 -12
  76. package/src/components/form/field/types/AutocompleteField.js +92 -2
  77. package/src/components/form/field/types/CheckboxField.js +43 -2
  78. package/src/components/form/field/types/CheckboxGroupField.js +83 -6
  79. package/src/components/form/field/types/ColorField.js +56 -3
  80. package/src/components/form/field/types/DateField.js +155 -4
  81. package/src/components/form/field/types/EmailField.js +54 -4
  82. package/src/components/form/field/types/FileField.js +140 -6
  83. package/src/components/form/field/types/HiddenField.js +27 -1
  84. package/src/components/form/field/types/ImageField.js +82 -3
  85. package/src/components/form/field/types/NumberField.js +97 -4
  86. package/src/components/form/field/types/PasswordField.js +103 -7
  87. package/src/components/form/field/types/RadioField.js +75 -4
  88. package/src/components/form/field/types/RangeField.js +67 -1
  89. package/src/components/form/field/types/SearchField.js +41 -2
  90. package/src/components/form/field/types/SelectField.js +133 -4
  91. package/src/components/form/field/types/StringField.js +91 -2
  92. package/src/components/form/field/types/TelField.js +55 -4
  93. package/src/components/form/field/types/TextAreaField.js +76 -2
  94. package/src/components/form/field/types/TimeField.js +120 -5
  95. package/src/components/form/field/types/UrlField.js +59 -4
  96. package/src/components/form/field/types/file-field-mode/FileAvatarMode.js +83 -4
  97. package/src/components/form/field/types/file-field-mode/FileDropzoneMode.js +61 -3
  98. package/src/components/form/field/types/file-field-mode/FileItemPreview.js +79 -3
  99. package/src/components/form/field/types/file-field-mode/FileNativeMode.js +24 -2
  100. package/src/components/form/field/types/file-field-mode/FileUploadButtonMode.js +64 -3
  101. package/src/components/form/field/types/file-field-mode/FileWallMode.js +56 -3
  102. package/src/components/form/index.js +28 -28
  103. package/src/components/form/types/Field.d.ts +73 -0
  104. package/src/components/form/types/FieldCollection.d.ts +53 -0
  105. package/src/components/form/types/FormControl.d.ts +64 -0
  106. package/src/components/form/types/fields/AutocompleteField.d.ts +48 -0
  107. package/src/components/form/types/fields/CheckboxField.d.ts +33 -0
  108. package/src/components/form/types/fields/CheckboxGroupField.d.ts +49 -0
  109. package/src/components/form/types/fields/ColorField.d.ts +37 -0
  110. package/src/components/form/types/fields/DateField.d.ts +70 -0
  111. package/src/components/form/types/fields/EmailField.d.ts +35 -0
  112. package/src/components/form/types/fields/FileAvatarMode.d.ts +46 -0
  113. package/src/components/form/types/fields/FileDropzoneMode.d.ts +28 -0
  114. package/src/components/form/types/fields/FileField.d.ts +56 -0
  115. package/src/components/form/types/fields/FileItemPreview.d.ts +35 -0
  116. package/src/components/form/types/fields/FileNativeMode.d.ts +21 -0
  117. package/src/components/form/types/fields/FileUploadButtonMode.d.ts +34 -0
  118. package/src/components/form/types/fields/FileWallMode.d.ts +32 -0
  119. package/src/components/form/types/fields/HiddenField.d.ts +26 -0
  120. package/src/components/form/types/fields/ImageField.d.ts +45 -0
  121. package/src/components/form/types/fields/NumberField.d.ts +48 -0
  122. package/src/components/form/types/fields/PasswordField.d.ts +46 -0
  123. package/src/components/form/types/fields/RadioField.d.ts +48 -0
  124. package/src/components/form/types/fields/RangeField.d.ts +44 -0
  125. package/src/components/form/types/fields/SearchField.d.ts +34 -0
  126. package/src/components/form/types/fields/SelectField.d.ts +71 -0
  127. package/src/components/form/types/fields/StringField.d.ts +48 -0
  128. package/src/components/form/types/fields/TelField.d.ts +37 -0
  129. package/src/components/form/types/fields/TextAreaField.d.ts +44 -0
  130. package/src/components/form/types/fields/TimeField.d.ts +51 -0
  131. package/src/components/form/types/fields/UrlField.d.ts +35 -0
  132. package/src/components/form/validation/Validation.js +54 -54
  133. package/src/components/index.d.ts +160 -0
  134. package/src/components/list/List.js +99 -15
  135. package/src/components/list/ListGroup.js +58 -8
  136. package/src/components/list/ListItem.js +79 -18
  137. package/src/components/list/index.js +5 -5
  138. package/src/components/list/types/List.d.ts +43 -0
  139. package/src/components/list/types/ListGroup.d.ts +37 -0
  140. package/src/components/list/types/ListItem.d.ts +42 -0
  141. package/src/components/menu/HasMenuItem.js +55 -6
  142. package/src/components/menu/Menu.js +113 -22
  143. package/src/components/menu/MenuDivider.js +18 -2
  144. package/src/components/menu/MenuGroup.js +61 -6
  145. package/src/components/menu/MenuItem.js +95 -11
  146. package/src/components/menu/MenuLink.js +27 -2
  147. package/src/components/menu/index.js +6 -6
  148. package/src/components/menu/types/Menu.d.ts +60 -0
  149. package/src/components/menu/types/MenuDivider.d.ts +19 -0
  150. package/src/components/menu/types/MenuGroup.d.ts +44 -0
  151. package/src/components/menu/types/MenuItem.d.ts +46 -0
  152. package/src/components/menu/types/MenuLink.d.ts +16 -0
  153. package/src/components/modal/Modal.js +258 -17
  154. package/src/components/modal/index.js +3 -3
  155. package/src/components/modal/types/Modal.d.ts +94 -0
  156. package/src/components/pagination/Pagination.js +155 -7
  157. package/src/components/pagination/index.js +3 -3
  158. package/src/components/pagination/types/Pagination.d.ts +68 -0
  159. package/src/components/popover/Popover.js +198 -11
  160. package/src/components/popover/PopoverFooter.js +33 -9
  161. package/src/components/popover/PopoverHeader.js +33 -8
  162. package/src/components/popover/index.js +4 -4
  163. package/src/components/popover/types/Popover.d.ts +83 -0
  164. package/src/components/popover/types/PopoverFooter.d.ts +24 -0
  165. package/src/components/popover/types/PopoverHeader.d.ts +26 -0
  166. package/src/components/progress/Progress.js +182 -13
  167. package/src/components/progress/index.js +3 -3
  168. package/src/components/progress/types/Progress.d.ts +77 -0
  169. package/src/components/skeleton/Skeleton.js +117 -49
  170. package/src/components/skeleton/index.js +3 -3
  171. package/src/components/skeleton/types/Skeleton.d.ts +55 -0
  172. package/src/components/slider/Slider.js +207 -10
  173. package/src/components/slider/index.js +2 -2
  174. package/src/components/slider/types/Slider.d.ts +82 -0
  175. package/src/components/spacer/Spacer.js +11 -2
  176. package/src/components/spacer/index.js +2 -2
  177. package/src/components/spacer/types/Spacer.d.ts +19 -0
  178. package/src/components/spinner/Spinner.js +180 -9
  179. package/src/components/spinner/index.js +3 -3
  180. package/src/components/spinner/types/Spinner.d.ts +71 -0
  181. package/src/components/splitter/Splitter.js +76 -13
  182. package/src/components/splitter/SplitterGutter.js +67 -5
  183. package/src/components/splitter/SplitterPanel.js +69 -2
  184. package/src/components/splitter/index.js +5 -5
  185. package/src/components/splitter/types/Splitter.d.ts +38 -0
  186. package/src/components/splitter/types/SplitterGutter.d.ts +38 -0
  187. package/src/components/splitter/types/SplitterPanel.d.ts +41 -0
  188. package/src/components/stacks/AbsoluteStack.js +23 -3
  189. package/src/components/stacks/FixedStack.js +23 -3
  190. package/src/components/stacks/HStack.js +24 -3
  191. package/src/components/stacks/PositionStack.js +111 -3
  192. package/src/components/stacks/RelativeStack.js +23 -3
  193. package/src/components/stacks/Stack.js +73 -2
  194. package/src/components/stacks/VStack.js +24 -4
  195. package/src/components/stacks/index.js +7 -7
  196. package/src/components/stacks/types/AbsoluteStack.d.ts +16 -0
  197. package/src/components/stacks/types/FixedStack.d.ts +16 -0
  198. package/src/components/stacks/types/HStack.d.ts +16 -0
  199. package/src/components/stacks/types/PositionStack.d.ts +54 -0
  200. package/src/components/stacks/types/RelativeStack.d.ts +17 -0
  201. package/src/components/stacks/types/Stack.d.ts +39 -0
  202. package/src/components/stacks/types/VStack.d.ts +16 -0
  203. package/src/components/stepper/Stepper.js +152 -12
  204. package/src/components/stepper/StepperStep.js +104 -3
  205. package/src/components/stepper/index.js +4 -4
  206. package/src/components/stepper/types/Stepper.d.ts +68 -0
  207. package/src/components/stepper/types/StepperStep.d.ts +54 -0
  208. package/src/components/switch/Switch.js +143 -6
  209. package/src/components/switch/index.js +1 -1
  210. package/src/components/switch/types/Switch.d.ts +55 -0
  211. package/src/components/table/Column.js +105 -6
  212. package/src/components/table/ColumnGroup.js +48 -3
  213. package/src/components/table/DataTable.js +256 -19
  214. package/src/components/table/SimpleTable.js +58 -4
  215. package/src/components/table/index.js +2 -2
  216. package/src/components/table/types/Column.d.ts +49 -0
  217. package/src/components/table/types/ColumnGroup.d.ts +28 -0
  218. package/src/components/table/types/DataTable.d.ts +97 -0
  219. package/src/components/table/types/SimpleTable.d.ts +40 -0
  220. package/src/components/tabs/Tabs.js +192 -5
  221. package/src/components/tabs/index.js +3 -3
  222. package/src/components/tabs/types/Tabs.d.ts +78 -0
  223. package/src/components/toast/Toast.js +133 -5
  224. package/src/components/toast/index.js +3 -3
  225. package/src/components/toast/types/Toast.d.ts +57 -0
  226. package/src/components/toast/types/ToastError.d.ts +7 -0
  227. package/src/components/toast/types/ToastInfo.d.ts +7 -0
  228. package/src/components/toast/types/ToastSuccess.d.ts +7 -0
  229. package/src/components/toast/types/ToastWarning.d.ts +7 -0
  230. package/src/components/tooltip/Tooltip.js +157 -13
  231. package/src/components/tooltip/index.js +2 -2
  232. package/src/components/tooltip/prototypes.js +1 -1
  233. package/src/components/tooltip/types/Tooltip.d.ts +65 -0
  234. package/src/core/data/MemoryManager.js +2 -2
  235. package/src/core/data/Observable.js +15 -18
  236. package/src/core/data/ObservableArray.js +118 -46
  237. package/src/core/data/ObservableChecker.js +2 -2
  238. package/src/core/data/ObservableItem.js +135 -21
  239. package/src/core/data/ObservableObject.js +126 -35
  240. package/src/core/data/ObservableResource.js +113 -3
  241. package/src/core/data/Store.js +142 -26
  242. package/src/core/data/observable-helpers/observable.is-to.js +196 -1
  243. package/src/core/data/observable-helpers/observable.prototypes.js +33 -8
  244. package/src/core/elements/anchor/anchor-with-sentinel.js +23 -2
  245. package/src/core/elements/anchor/anchor.js +16 -7
  246. package/src/core/elements/anchor/one-child-anchor-overwriting.js +2 -2
  247. package/src/core/elements/content-formatter.js +1 -1
  248. package/src/core/elements/control/for-each-array.js +9 -9
  249. package/src/core/elements/control/for-each.js +14 -14
  250. package/src/core/elements/control/show-if.js +11 -11
  251. package/src/core/elements/control/show-when.js +5 -5
  252. package/src/core/elements/control/switch.js +14 -14
  253. package/src/core/elements/description-list.js +1 -1
  254. package/src/core/elements/form.js +2 -2
  255. package/src/core/elements/fragment.js +1 -1
  256. package/src/core/elements/html5-semantics.js +1 -1
  257. package/src/core/elements/img.js +3 -3
  258. package/src/core/elements/interactive.js +1 -1
  259. package/src/core/elements/list.js +1 -1
  260. package/src/core/elements/medias.js +1 -1
  261. package/src/core/elements/meta-data.js +1 -1
  262. package/src/core/elements/svg.js +1 -1
  263. package/src/core/elements/table.js +1 -1
  264. package/src/core/errors/ArgTypesError.js +1 -1
  265. package/src/core/utils/HasEventEmitter.js +36 -2
  266. package/src/core/utils/args-types.js +9 -9
  267. package/src/core/utils/cache.js +1 -1
  268. package/src/core/utils/callback-handler.js +29 -0
  269. package/src/core/utils/debug-manager.js +6 -6
  270. package/src/core/utils/events.js +139 -139
  271. package/src/core/utils/filters/date.js +84 -3
  272. package/src/core/utils/filters/standard.js +136 -11
  273. package/src/core/utils/filters/strings.js +34 -2
  274. package/src/core/utils/filters/utils.js +40 -4
  275. package/src/core/utils/formatters.js +4 -4
  276. package/src/core/utils/helpers.js +39 -7
  277. package/src/core/utils/localstorage.js +11 -11
  278. package/src/core/utils/memoize.js +56 -3
  279. package/src/core/utils/plugins-manager.js +3 -3
  280. package/src/core/utils/property-accumulator.js +6 -6
  281. package/src/core/utils/prototypes.js +26 -1
  282. package/src/core/utils/shortcut-manager.js +2 -2
  283. package/src/core/utils/validator.js +8 -8
  284. package/src/core/wrappers/AttributesWrapper.js +32 -22
  285. package/src/core/wrappers/DocumentObserver.js +3 -3
  286. package/src/core/wrappers/ElementCreator.js +5 -5
  287. package/src/core/wrappers/HtmlElementWrapper.js +38 -12
  288. package/src/core/wrappers/NDElement.js +328 -22
  289. package/src/core/wrappers/NdPrototype.js +60 -16
  290. package/src/core/wrappers/SingletonView.js +50 -2
  291. package/src/core/wrappers/SvgElementWrapper.js +1 -1
  292. package/src/core/wrappers/constants.js +35 -2
  293. package/src/core/wrappers/prototypes/attributes-extensions.js +7 -7
  294. package/src/core/wrappers/prototypes/nd-element-extensions.js +72 -6
  295. package/src/core/wrappers/prototypes/nd-element.transition.extensions.js +42 -2
  296. package/src/core/wrappers/template-cloner/NodeCloner.js +53 -8
  297. package/src/core/wrappers/template-cloner/TemplateCloner.js +75 -6
  298. package/src/core/wrappers/template-cloner/attributes-hydrator.js +58 -2
  299. package/src/core/wrappers/template-cloner/utils.js +42 -6
  300. package/src/fetch/NativeFetch.js +3 -3
  301. package/src/i18n/bin/scan.js +6 -6
  302. package/src/i18n/index.d.ts +2 -0
  303. package/src/i18n/service/I18nService.d.ts +27 -0
  304. package/src/i18n/service/I18nService.js +5 -5
  305. package/src/i18n/service/functions.d.ts +22 -0
  306. package/src/i18n/service/functions.js +2 -2
  307. package/src/router/Route.js +3 -3
  308. package/src/router/RouteGroupHelper.js +2 -2
  309. package/src/router/Router.js +15 -15
  310. package/src/router/RouterComponent.js +33 -7
  311. package/src/router/link.js +4 -4
  312. package/src/router/modes/HashRouter.js +2 -2
  313. package/src/router/modes/HistoryRouter.js +2 -2
  314. package/src/router/modes/MemoryRouter.js +1 -1
  315. package/src/ui/components/accordion/AccordionItemRender.js +3 -3
  316. package/src/ui/components/accordion/AccordionRender.js +1 -1
  317. package/src/ui/components/alert/AlertRender.js +10 -10
  318. package/src/ui/components/avatar/avata-group/AvatarGroupRender.js +1 -1
  319. package/src/ui/components/avatar/avatar/AvatarRender.js +1 -1
  320. package/src/ui/components/breadcrumb/BreadcrumbRender.js +2 -2
  321. package/src/ui/components/button/ButtonRender.js +1 -1
  322. package/src/ui/components/contextmenu/ContextmenuRender.js +5 -5
  323. package/src/ui/components/dropdown/DropdownRender.js +8 -8
  324. package/src/ui/components/dropdown/group/DropdownGroupRender.js +2 -2
  325. package/src/ui/components/dropdown/item/DropdownItemRender.js +1 -1
  326. package/src/ui/components/form/FieldCollectionRender.js +2 -2
  327. package/src/ui/components/form/FormControlRender.js +5 -5
  328. package/src/ui/components/form/fields/AutocompleteFieldRender.js +3 -3
  329. package/src/ui/components/form/fields/CheckboxFieldRender.js +1 -1
  330. package/src/ui/components/form/fields/CheckboxGroupFieldRender.js +1 -1
  331. package/src/ui/components/form/fields/DateFieldRender.js +7 -7
  332. package/src/ui/components/form/fields/EmailFieldRender.js +1 -1
  333. package/src/ui/components/form/fields/FieldRender.js +4 -4
  334. package/src/ui/components/form/fields/FileFieldRender.js +1 -1
  335. package/src/ui/components/form/fields/PasswordFieldRender.js +2 -2
  336. package/src/ui/components/form/fields/RadioFieldRender.js +1 -1
  337. package/src/ui/components/form/fields/RangeFieldRender.js +1 -1
  338. package/src/ui/components/form/fields/SelectFieldRender.js +2 -2
  339. package/src/ui/components/form/fields/SliderFieldRender.js +6 -6
  340. package/src/ui/components/form/fields/StringFieldRender.js +1 -1
  341. package/src/ui/components/form/fields/TelFieldRender.js +1 -1
  342. package/src/ui/components/form/fields/TextAreaFieldRender.js +1 -1
  343. package/src/ui/components/form/fields/TimeFieldRender.js +3 -3
  344. package/src/ui/components/form/fields/UrlFieldRender.js +1 -1
  345. package/src/ui/components/form/file-upload-mode/FileAvatarModeRender.js +1 -1
  346. package/src/ui/components/form/file-upload-mode/FileDropzoneModeRender.js +2 -2
  347. package/src/ui/components/form/file-upload-mode/FileUploadButtonModeRender.js +2 -2
  348. package/src/ui/components/form/file-upload-mode/FileWallModeRender.js +1 -1
  349. package/src/ui/components/form/helpers.js +8 -8
  350. package/src/ui/components/form/index.js +27 -27
  351. package/src/ui/components/menu/MenuDividerRender.js +1 -1
  352. package/src/ui/components/menu/MenuGroupRender.js +3 -3
  353. package/src/ui/components/menu/MenuItemRender.js +2 -2
  354. package/src/ui/components/menu/MenuLinkRender.js +3 -3
  355. package/src/ui/components/menu/helpers.js +4 -4
  356. package/src/ui/components/modal/ModalRender.js +4 -4
  357. package/src/ui/components/pagination/PaginationRender.js +9 -9
  358. package/src/ui/components/popover/PopoverRender.js +7 -7
  359. package/src/ui/components/progress/ProgressRender.js +12 -12
  360. package/src/ui/components/skeleton/SkeletonRender.js +56 -0
  361. package/src/ui/components/splitter/SplitterGutterRender.js +1 -1
  362. package/src/ui/components/splitter/SplitterPanelRender.js +2 -2
  363. package/src/ui/components/stacks/PositionStackRender.js +1 -1
  364. package/src/ui/components/stacks/StackRender.js +1 -1
  365. package/src/ui/components/stacks/absolute-stack/AbsoluteStackRender.js +1 -1
  366. package/src/ui/components/stacks/fixed-stack/FixedStackRender.js +1 -1
  367. package/src/ui/components/stacks/h-stack/HStackRender.js +1 -1
  368. package/src/ui/components/stacks/index.js +5 -5
  369. package/src/ui/components/stacks/relative-stack/RelativeStackRender.js +1 -1
  370. package/src/ui/components/stacks/v-stack/VStackRender.js +1 -1
  371. package/src/ui/components/stepper/StepperRender.js +2 -2
  372. package/src/ui/components/stepper/StepperStepRender.js +4 -4
  373. package/src/ui/components/switch/SwitchRender.js +4 -4
  374. package/src/ui/components/table/data-table/DataTableRender.js +5 -5
  375. package/src/ui/components/table/data-table/bulk-actions.js +7 -7
  376. package/src/ui/components/table/data-table/pagination.js +6 -6
  377. package/src/ui/components/table/data-table/tables.js +25 -25
  378. package/src/ui/components/table/data-table/toolbar.js +3 -3
  379. package/src/ui/components/table/simple-table/SimpleTableRender.js +8 -8
  380. package/src/ui/components/tabs/TabsRender.js +11 -11
  381. package/src/ui/components/toast/ToastRender.js +3 -3
  382. package/src/ui/components/tooltip/TooltipRender.js +1 -1
  383. package/src/ui/index.js +36 -36
  384. package/types/elements.d.ts +163 -1037
  385. package/types/forms.d.ts +16 -20
  386. package/types/globals.d.ts +543 -0
  387. package/types/images.d.ts +2 -2
  388. package/types/observable-resource.d.ts +3 -0
  389. package/types/property-accumulator.d.ts +4 -4
  390. package/types/store.d.ts +26 -2
  391. package/types/validator.ts +3 -3
  392. package/ui.js +1 -0
  393. package/src/components/form/field/DefaultRender.js +0 -77
  394. package/src/components/form/field/FieldFactory.js +0 -107
  395. package/src/components/skeleton/SkeletonCard.js +0 -0
  396. package/src/components/skeleton/SkeletonList.js +0 -0
  397. package/src/components/skeleton/SkeletonParagraph.js +0 -0
  398. package/src/components/skeleton/SkeletonTable.js +0 -0
@@ -10,10 +10,10 @@ import {
10
10
  Td,
11
11
  THead,
12
12
  THeadCell,
13
- TRow
14
- } from "../../../../../elements";
15
- import { $ } from "../../../../core/data/Observable";
16
- import {classPropertyAccumulator} from "../../../../core/utils/property-accumulator";
13
+ TRow,
14
+ } from '../../../../../elements';
15
+ import { $ } from '../../../../core/data/Observable';
16
+ import {classPropertyAccumulator} from '../../../../core/utils/property-accumulator';
17
17
 
18
18
  export const buildTable = ($desc, instance, visibleColumns) => {
19
19
  const thead = $desc.noHeader ? null : buildTHead($desc, instance, visibleColumns);
@@ -53,21 +53,21 @@ export const buildTHead = ($desc, instance, visibleColumns) => {
53
53
  : $descCol.header;
54
54
 
55
55
  const classes = {
56
- 'is-sortable': isSortable
56
+ 'is-sortable': isSortable,
57
57
  };
58
58
 
59
59
  if($descCol.align) {
60
60
  if($descCol.align.__$Observable) {
61
- classes['_'] = $descCol.align.transform((v) => `is-align-${v}`)
61
+ classes['_'] = $descCol.align.transform((v) => `is-align-${v}`);
62
62
  } else {
63
- classes[`is-align-${$descCol.align}`] = true
63
+ classes[`is-align-${$descCol.align}`] = true;
64
64
  }
65
65
  }
66
66
  if($descCol.pinned) {
67
67
  if($descCol.pinned.__$Observable) {
68
- classes['__'] = $descCol.pinned.transform((v) => `is-pinned-${v}`)
68
+ classes['__'] = $descCol.pinned.transform((v) => `is-pinned-${v}`);
69
69
  } else {
70
- classes[`is-pinned-${$descCol.pinned}`] = true
70
+ classes[`is-pinned-${$descCol.pinned}`] = true;
71
71
  }
72
72
  }
73
73
 
@@ -216,13 +216,13 @@ export const buildTBody = ($desc, instance, visibleColumns) => {
216
216
  export const buildEmpty = ($desc, visibleColumns) => {
217
217
  if(!$desc.empty) return null;
218
218
 
219
- let colspan
219
+ let colspan;
220
220
  if(visibleColumns.__$Observable) {
221
221
  colspan = visibleColumns.transform((columns) => {
222
222
  return columns.length
223
223
  + ($desc.selectable ? 1 : 0)
224
- + ($desc.expandable ? 1 : 0)
225
- })
224
+ + ($desc.expandable ? 1 : 0);
225
+ });
226
226
  } else {
227
227
  colspan = visibleColumns.length
228
228
  + ($desc.selectable ? 1 : 0)
@@ -233,9 +233,9 @@ export const buildEmpty = ($desc, visibleColumns) => {
233
233
  ? $desc.empty()
234
234
  : Span({class: 'data-table-empty-text'}, $desc.empty);
235
235
 
236
- return ShowIf($desc.data?.is(items => items.length === 0), () => {
236
+ return ShowIf($desc.data?.isEmpty(), () => {
237
237
  return TRow(Td({ colspan }, [
238
- Div({ class: 'data-table-empty' }, content)
238
+ Div({ class: 'data-table-empty' }, content),
239
239
  ]));
240
240
  });
241
241
  };
@@ -243,7 +243,7 @@ export const buildEmpty = ($desc, visibleColumns) => {
243
243
  export const buildLoading = ($desc) => {
244
244
 
245
245
  return ShowIf($desc.loading, () => {
246
- return Div({ class: 'data-table-loading' }, Span({class: 'data-table-spinner'}))
246
+ return Div({ class: 'data-table-loading' }, Span({class: 'data-table-spinner'}));
247
247
  });
248
248
  };
249
249
 
@@ -267,8 +267,8 @@ export const buildRow = ($desc, instance, visibleColumns, row) => {
267
267
 
268
268
  cells.push(
269
269
  ShowIf($desc.selectable,
270
- () => TBodyCell({class: 'data-table-td-checkbox'}, checkbox)
271
- )
270
+ () => TBodyCell({class: 'data-table-td-checkbox'}, checkbox),
271
+ ),
272
272
  );
273
273
  }
274
274
 
@@ -276,8 +276,8 @@ export const buildRow = ($desc, instance, visibleColumns, row) => {
276
276
  let detailRow = null;
277
277
  if($desc.expandable) {
278
278
  const $isExpanded = $(false);
279
- const toggleBtn = Span({class: 'data-table-expand-btn',},
280
- Switch($isExpanded, $desc.isExpandedIcon, $desc.isNotExpandedIcon)
279
+ const toggleBtn = Span({class: 'data-table-expand-btn'},
280
+ Switch($isExpanded, $desc.isExpandedIcon, $desc.isNotExpandedIcon),
281
281
  );
282
282
 
283
283
  toggleBtn.nd.onClick(() => {
@@ -301,16 +301,16 @@ export const buildRow = ($desc, instance, visibleColumns, row) => {
301
301
  const classProperty = classPropertyAccumulator($descCol.props?.class || {});
302
302
  if($descCol.align) {
303
303
  if($descCol.align.__$Observable) {
304
- classProperty.add($descCol.align.transform((v) => `is-align-${v}`))
304
+ classProperty.add($descCol.align.transform((v) => `is-align-${v}`));
305
305
  } else {
306
- classProperty.add(`is-align-${$descCol.align}`, true)
306
+ classProperty.add(`is-align-${$descCol.align}`, true);
307
307
  }
308
308
  }
309
309
  if($descCol.pinned) {
310
310
  if($descCol.pinned.__$Observable) {
311
- classProperty.add($descCol.pinned.transform((v) => `is-pinned-${v}`))
311
+ classProperty.add($descCol.pinned.transform((v) => `is-pinned-${v}`));
312
312
  } else {
313
- classProperty.add(`is-pinned-${$descCol.pinned}`, true)
313
+ classProperty.add(`is-pinned-${$descCol.pinned}`, true);
314
314
  }
315
315
  }
316
316
 
@@ -353,7 +353,7 @@ export const buildDetailRow = ($desc, visibleColumns, row) => {
353
353
  return columns.length
354
354
  + ($desc.selectable ? 1 : 0)
355
355
  + ($desc.expandable ? 1 : 0);
356
- })
356
+ });
357
357
  } else {
358
358
  colspan = visibleColumns.length
359
359
  + ($desc.selectable ? 1 : 0)
@@ -363,6 +363,6 @@ export const buildDetailRow = ($desc, visibleColumns, row) => {
363
363
  const content = $desc.expandable(row);
364
364
 
365
365
  return TRow({class: 'data-table-detail-row'},
366
- TBodyCell({colspan, class: 'data-table-detail-cell'}, content)
366
+ TBodyCell({colspan, class: 'data-table-detail-cell'}, content),
367
367
  );
368
368
  };
@@ -1,6 +1,6 @@
1
- import {Div, Input, Span} from "../../../../../elements";
2
- import {Button} from "../../../../components/button";
3
- import {SelectField} from "../../../../components/form";
1
+ import {Div, Input, Span} from '../../../../../elements';
2
+ import {Button} from '../../../../components/button';
3
+ import {SelectField} from '../../../../components/form';
4
4
 
5
5
  export const buildToolbar = ({ search, filters, exportBtn, columnsBtn }) => {
6
6
  return Div({class: 'data-table-toolbar'}, [
@@ -1,5 +1,5 @@
1
1
  import {Table, THead, TBody, TRow, THeadCell, TBodyCell, Span, ShowIf} from '../../../../core/elements';
2
- import {classPropertyAccumulator} from "../../../../core/utils/property-accumulator";
2
+ import {classPropertyAccumulator} from '../../../../core/utils/property-accumulator';
3
3
 
4
4
  import './simple-table.css';
5
5
 
@@ -8,7 +8,7 @@ export default function SimpleTableRender($desc, instance) {
8
8
  props.class.add('simple-table');
9
9
 
10
10
  const visibleColumns = $desc.columns.filter(col =>
11
- col.$description.visible !== false
11
+ col.$description.visible !== false,
12
12
  );
13
13
 
14
14
  return Table(instance.resolveProps(), [
@@ -34,7 +34,7 @@ const buildGroupRow = ($desc) => {
34
34
  class: item.$description.align ? `is-${item.$description.align}` : null,
35
35
  ...extraProps,
36
36
  }, item.$description.header);
37
- })
37
+ }),
38
38
  );
39
39
  };
40
40
 
@@ -48,7 +48,7 @@ const buildHeaderRow = ($desc, visibleColumns) => {
48
48
  rowspan: col.$description.rowspan || null,
49
49
  ...extraProps,
50
50
  }, col.$description.header);
51
- })
51
+ }),
52
52
  );
53
53
  };
54
54
 
@@ -78,7 +78,7 @@ const buildBody = ($desc, instance, visibleColumns) => {
78
78
  return fragment;
79
79
  },
80
80
  set: () => {
81
- mutations.clear()
81
+ mutations.clear();
82
82
  mutations.push($desc.data.val());
83
83
  },
84
84
  push: (args) => {
@@ -160,10 +160,10 @@ const buildRow = ($desc, visibleColumns, row) => {
160
160
  const extraProps = column.$description.props || $desc.cellProps?.(value, row, column) || {};
161
161
  const classProperty = classPropertyAccumulator(extraProps.class || {});
162
162
  if(column.$description.align) {
163
- classProperty.add(`is-${column.$description.align}`)
163
+ classProperty.add(`is-${column.$description.align}`);
164
164
  }
165
165
  const cell = TBodyCell({ ...extraProps, class: classProperty.value() },
166
- content
166
+ content,
167
167
  );
168
168
  if(column.$description.onClick) {
169
169
  cell.nd.onClick((event) => column.$description.onClick(row, event));
@@ -173,7 +173,7 @@ const buildRow = ($desc, visibleColumns, row) => {
173
173
 
174
174
  const rowExtraProps = $desc.rowProps?.(row) || {};
175
175
  const classProperty = classPropertyAccumulator(rowExtraProps.class || {});
176
- classProperty.add({'has-click': !!$desc.onRowClick})
176
+ classProperty.add({'has-click': !!$desc.onRowClick});
177
177
 
178
178
  const tr = TRow({ ...rowExtraProps, class: classProperty.value()}, cells);
179
179
 
@@ -1,8 +1,8 @@
1
1
  import {Div, ForEachArray, Match, Nav, ShowIf, Span} from '../../../core/elements';
2
2
  import { $ } from '../../../core/data/Observable';
3
- import {Button} from "../../../components/button";
3
+ import {Button} from '../../../components/button';
4
4
  import {Dropdown} from '../../../components/dropdown';
5
- import {nextTick} from "../../../core/utils/helpers";
5
+ import {nextTick} from '../../../core/utils/helpers';
6
6
 
7
7
  import './tabs.css';
8
8
 
@@ -55,7 +55,7 @@ export default function TabsRender($desc, instance) {
55
55
 
56
56
  const buildNavContent = ($keys, $desc, instance) => {
57
57
  const tabItemWrapper = Nav({class: 'tabs-nav-wrap', role: 'tablist' },
58
- ForEachArray($keys, (key) => buildTab(key, $keys, $desc, instance))
58
+ ForEachArray($keys, (key) => buildTab(key, $keys, $desc, instance)),
59
59
  );
60
60
 
61
61
  const navOptionsContent = [];
@@ -69,19 +69,19 @@ const buildNavContent = ($keys, $desc, instance) => {
69
69
  btnPlusButton
70
70
  .nd.onClick(() => {
71
71
  $desc.addPLusCallback && $desc.addPLusCallback($desc, instance);
72
- })
72
+ }),
73
73
  );
74
74
  }
75
75
 
76
76
  if($desc.overflow) {
77
77
  navOptionsContent.push(
78
- Div({class: 'tab-nav-overflow'}, buildOverflowMenu(tabItemWrapper, $keys, $desc, instance))
78
+ Div({class: 'tab-nav-overflow'}, buildOverflowMenu(tabItemWrapper, $keys, $desc, instance)),
79
79
  );
80
80
  }
81
81
 
82
82
  return [
83
83
  tabItemWrapper,
84
- Div({ class: 'tab-nav-options'}, navOptionsContent)
84
+ Div({ class: 'tab-nav-options'}, navOptionsContent),
85
85
  ];
86
86
  };
87
87
 
@@ -139,7 +139,7 @@ const buildOverflowMenu = (tabItemWrapper, $keys, $desc, instance) => {
139
139
  })
140
140
  .atBottomTrailing()
141
141
  .trigger(Button('▾').ghost().small())
142
- .onChange((key) => $desc.active.set(key))
142
+ .onChange((key) => $desc.active.set(key));
143
143
  });
144
144
  };
145
145
 
@@ -157,7 +157,7 @@ const buildTab = (key, $keys, $desc, instance) => {
157
157
  'aria-selected': isActive,
158
158
  'data-key': key,
159
159
  draggable: true,
160
- role: 'tab'
160
+ role: 'tab',
161
161
  }, buildTabContent(tab, $desc, instance));
162
162
 
163
163
 
@@ -216,9 +216,9 @@ const buildTabContent = (tab, $desc, instance) => {
216
216
  content.push(
217
217
  closeButton
218
218
  .nd.onClick((e) => {
219
- e.stopPropagation();
220
- instance.closeTab(tab.key);
221
- })
219
+ e.stopPropagation();
220
+ instance.closeTab(tab.key);
221
+ }),
222
222
  );
223
223
  }
224
224
 
@@ -1,6 +1,6 @@
1
1
  import {Div, Span} from '../../../core/elements';
2
2
  import Button from '../../../components/button/Button';
3
- import {createPortal} from "../../../core/elements/anchor/anchor";
3
+ import {createPortal} from '../../../core/elements/anchor/anchor';
4
4
 
5
5
  import './toast.css';
6
6
 
@@ -16,7 +16,7 @@ const getContainer = (position) => {
16
16
  $containers[position] = container;
17
17
 
18
18
  return container;
19
- }
19
+ };
20
20
 
21
21
  export default function ToastRender($desc, instance) {
22
22
  const props = instance.getEditableProps();
@@ -96,4 +96,4 @@ const buildContent = ($desc, instance) => {
96
96
  }
97
97
 
98
98
  return Div({class: 'toast-body'}, body);
99
- }
99
+ };
@@ -1,4 +1,4 @@
1
- import PopoverRender from "../popover/PopoverRender";
1
+ import PopoverRender from '../popover/PopoverRender';
2
2
 
3
3
  import './tooltip.css';
4
4
 
package/src/ui/index.js CHANGED
@@ -1,39 +1,39 @@
1
- export { default as SpinnerRender } from "./components/spinner/SpinnerRender";
2
- export { default as AvatarRender } from "./components/avatar/avatar/AvatarRender";
3
- export { default as AvatarGroupRender } from "./components/avatar/avata-group/AvatarGroupRender";
4
- export { default as BadgeRender } from "./components/badge/BadgeRender";
5
- export { default as DividerRender } from "./components/divider/DividerRender";
6
- export { default as SkeletonRender } from "./components/skeleton/SkeletonRender";
7
- export { default as ProgressRender } from "./components/progress/ProgressRender";
8
- export { default as ButtonRender } from "./components/button/ButtonRender";
9
- export { default as AlertRender } from "./components/alert/AlertRender";
10
- export { default as ToastRender } from "./components/toast/ToastRender";
11
- export { default as PopoverRender } from "./components/popover/PopoverRender";
12
- export { default as TooltipRender } from "./components/tooltip/TooltipRender";
13
- export { default as DropdownRender } from "./components/dropdown/DropdownRender";
14
- export { default as ModalRender } from "./components/modal/ModalRender";
15
- export { default as DropdownItemRender } from "./components/dropdown/item/DropdownItemRender";
16
- export { default as DropdownGroupRender } from "./components/dropdown/group/DropdownGroupRender";
17
- export { default as DropdownDividerRender } from "./components/dropdown/divider/DropdownDividerRender";
18
- export { default as BreadcrumbRender } from "./components/breadcrumb/BreadcrumbRender";
19
- export { default as TabsRender } from "./components/tabs/TabsRender";
20
- export { default as PaginationRender } from "./components/pagination/PaginationRender";
21
- export { default as StepperRender } from "./components/stepper/StepperRender";
22
- export { default as StepperStepRender } from "./components/stepper/StepperStepRender";
23
- export { default as MenuRender } from "./components/menu/MenuRender";
24
- export { default as MenuItemRender } from "./components/menu/MenuItemRender";
25
- export { default as MenuGroupRender } from "./components/menu/MenuGroupRender";
26
- export { default as MenuLinkRender } from "./components/menu/MenuLinkRender";
27
- export { default as MenuDividerRender } from "./components/menu/MenuDividerRender";
28
- export { default as ContextMenuRender, contextMenuHandler } from "./components/contextmenu/ContextMenuRender";
29
- export { default as SplitterRender } from "./components/splitter/SplitterRender";
30
- export { default as SplitterGutterRender } from "./components/splitter/SplitterGutterRender";
31
- export { default as SplitterPanelRender } from "./components/splitter/SplitterPanelRender";
32
- export { default as AccordionItemRender } from "./components/accordion/AccordionItemRender";
33
- export { default as AccordionRender } from "./components/accordion/AccordionRender";
34
- export { default as SimpleTableRender } from "./components/table/simple-table/SimpleTableRender";
35
- export { default as DataTableRender } from "./components/table/data-table/DataTableRender";
36
- export { default as SwitchRender } from "./components/switch/SwitchRender";
1
+ export { default as SpinnerRender } from './components/spinner/SpinnerRender';
2
+ export { default as AvatarRender } from './components/avatar/avatar/AvatarRender';
3
+ export { default as AvatarGroupRender } from './components/avatar/avata-group/AvatarGroupRender';
4
+ export { default as BadgeRender } from './components/badge/BadgeRender';
5
+ export { default as DividerRender } from './components/divider/DividerRender';
6
+ export { default as SkeletonRender } from './components/skeleton/SkeletonRender';
7
+ export { default as ProgressRender } from './components/progress/ProgressRender';
8
+ export { default as ButtonRender } from './components/button/ButtonRender';
9
+ export { default as AlertRender } from './components/alert/AlertRender';
10
+ export { default as ToastRender } from './components/toast/ToastRender';
11
+ export { default as PopoverRender } from './components/popover/PopoverRender';
12
+ export { default as TooltipRender } from './components/tooltip/TooltipRender';
13
+ export { default as DropdownRender } from './components/dropdown/DropdownRender';
14
+ export { default as ModalRender } from './components/modal/ModalRender';
15
+ export { default as DropdownItemRender } from './components/dropdown/item/DropdownItemRender';
16
+ export { default as DropdownGroupRender } from './components/dropdown/group/DropdownGroupRender';
17
+ export { default as DropdownDividerRender } from './components/dropdown/divider/DropdownDividerRender';
18
+ export { default as BreadcrumbRender } from './components/breadcrumb/BreadcrumbRender';
19
+ export { default as TabsRender } from './components/tabs/TabsRender';
20
+ export { default as PaginationRender } from './components/pagination/PaginationRender';
21
+ export { default as StepperRender } from './components/stepper/StepperRender';
22
+ export { default as StepperStepRender } from './components/stepper/StepperStepRender';
23
+ export { default as MenuRender } from './components/menu/MenuRender';
24
+ export { default as MenuItemRender } from './components/menu/MenuItemRender';
25
+ export { default as MenuGroupRender } from './components/menu/MenuGroupRender';
26
+ export { default as MenuLinkRender } from './components/menu/MenuLinkRender';
27
+ export { default as MenuDividerRender } from './components/menu/MenuDividerRender';
28
+ export { default as ContextMenuRender, contextMenuHandler } from './components/contextmenu/ContextMenuRender';
29
+ export { default as SplitterRender } from './components/splitter/SplitterRender';
30
+ export { default as SplitterGutterRender } from './components/splitter/SplitterGutterRender';
31
+ export { default as SplitterPanelRender } from './components/splitter/SplitterPanelRender';
32
+ export { default as AccordionItemRender } from './components/accordion/AccordionItemRender';
33
+ export { default as AccordionRender } from './components/accordion/AccordionRender';
34
+ export { default as SimpleTableRender } from './components/table/simple-table/SimpleTableRender';
35
+ export { default as DataTableRender } from './components/table/data-table/DataTableRender';
36
+ export { default as SwitchRender } from './components/switch/SwitchRender';
37
37
 
38
38
  export * from './components/stacks';
39
39
  export * from './components/form';