xmlui 0.7.14 → 0.7.16

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 (393) hide show
  1. package/dist/{apiInterceptorWorker-FBzCR_-x.mjs → apiInterceptorWorker-21XItUaB.mjs} +1 -1
  2. package/dist/{grammar.tmLanguage-D3zpG8BQ.mjs → grammar.tmLanguage-Qpdanc5_.mjs} +6 -6
  3. package/dist/{index-rxu3P0l4.mjs → index-CFCUmuUo.mjs} +10368 -10074
  4. package/dist/index.css +1 -1
  5. package/dist/scripts/bin/build.js +17 -7
  6. package/dist/scripts/bin/vite-ueml-plugin.js +17 -7
  7. package/dist/scripts/bin/viteConfig.js +17 -7
  8. package/dist/scripts/package.json +209 -0
  9. package/dist/scripts/src/abstractions/scripting/ScriptingSourceTreeExp.js +51 -0
  10. package/dist/scripts/src/components/APICall/APICall.js +74 -0
  11. package/dist/scripts/src/components/APICall/APICallNative.js +31 -0
  12. package/dist/scripts/src/components/Accordion/Accordion.js +78 -0
  13. package/dist/scripts/src/components/Accordion/AccordionContext.js +20 -0
  14. package/dist/scripts/src/components/Accordion/AccordionItem.js +28 -0
  15. package/dist/scripts/src/components/Accordion/AccordionItemNative.js +79 -0
  16. package/dist/scripts/src/components/Accordion/AccordionNative.js +122 -0
  17. package/dist/scripts/src/components/Alert/Alert.js +42 -0
  18. package/dist/scripts/src/components/Alert/AlertNative.js +8 -0
  19. package/dist/scripts/src/components/Animation/Animation.js +59 -0
  20. package/dist/scripts/src/components/Animation/AnimationNative.js +75 -0
  21. package/dist/scripts/src/components/App/App.js +76 -0
  22. package/dist/scripts/src/components/App/AppLayoutContext.js +49 -0
  23. package/dist/scripts/src/components/App/AppNative.js +204 -0
  24. package/dist/scripts/src/components/App/AppStateContext.js +9 -0
  25. package/dist/scripts/src/components/App/Sheet.js +99 -0
  26. package/dist/scripts/src/components/AppHeader/AppHeader.js +59 -0
  27. package/dist/scripts/src/components/AppHeader/AppHeaderNative.js +58 -0
  28. package/dist/scripts/src/components/AppState/AppState.js +26 -0
  29. package/dist/scripts/src/components/AppState/AppStateNative.js +24 -0
  30. package/dist/scripts/src/components/AutoComplete/AutoComplete.js +83 -0
  31. package/dist/scripts/src/components/AutoComplete/AutoCompleteContext.js +16 -0
  32. package/dist/scripts/src/components/AutoComplete/AutoCompleteNative.js +225 -0
  33. package/dist/scripts/src/components/Avatar/Avatar.js +47 -0
  34. package/dist/scripts/src/components/Avatar/AvatarNative.js +40 -0
  35. package/dist/scripts/src/components/Backdrop/Backdrop.js +31 -0
  36. package/dist/scripts/src/components/Backdrop/BackdropNative.js +14 -0
  37. package/dist/scripts/src/components/Badge/Badge.js +58 -0
  38. package/dist/scripts/src/components/Badge/BadgeNative.js +22 -0
  39. package/dist/scripts/src/components/BarChart/BarChart.js +49 -0
  40. package/dist/scripts/src/components/BarChart/BarChartNative.js +176 -0
  41. package/dist/scripts/src/components/Bookmark/Bookmark.js +23 -0
  42. package/dist/scripts/src/components/Bookmark/BookmarkNative.js +24 -0
  43. package/dist/scripts/src/components/Breakout/Breakout.js +16 -0
  44. package/dist/scripts/src/components/Breakout/BreakoutNative.js +12 -0
  45. package/dist/scripts/src/components/Button/Button.js +142 -0
  46. package/dist/scripts/src/components/Button/ButtonNative.js +88 -0
  47. package/dist/scripts/src/components/ButtonGroup/ButtonGroup.js +41 -0
  48. package/dist/scripts/src/components/ButtonGroup/ButtonGroupNative.js +8 -0
  49. package/dist/scripts/src/components/Card/Card.js +57 -0
  50. package/dist/scripts/src/components/Card/CardNative.js +26 -0
  51. package/dist/scripts/src/components/Carousel/Carousel.js +68 -0
  52. package/dist/scripts/src/components/Carousel/CarouselItem.js +16 -0
  53. package/dist/scripts/src/components/Carousel/CarouselItemNative.js +13 -0
  54. package/dist/scripts/src/components/Carousel/CarouselNative.js +163 -0
  55. package/dist/scripts/src/components/ChangeListener/ChangeListener.js +24 -0
  56. package/dist/scripts/src/components/ChangeListener/ChangeListenerNative.js +26 -0
  57. package/dist/scripts/src/components/Chart/Chart.js +24 -0
  58. package/dist/scripts/src/components/Chart/ChartNative.js +165 -0
  59. package/dist/scripts/src/components/Checkbox/Checkbox.js +68 -0
  60. package/dist/scripts/src/components/Column/Column.js +34 -0
  61. package/dist/scripts/src/components/Column/ColumnNative.js +38 -0
  62. package/dist/scripts/src/components/Column/TableContext.js +12 -0
  63. package/dist/scripts/src/components/ComponentProvider.js +503 -0
  64. package/dist/scripts/src/components/ComponentRegistryContext.js +44 -0
  65. package/dist/scripts/src/components/ContentSeparator/ContentSeparator.js +38 -0
  66. package/dist/scripts/src/components/ContentSeparator/ContentSeparatorNative.js +16 -0
  67. package/dist/scripts/src/components/DatePicker/DatePicker.js +62 -0
  68. package/dist/scripts/src/components/DatePicker/DatePickerNative.js +196 -0
  69. package/dist/scripts/src/components/DropdownMenu/DropdownMenu.js +125 -0
  70. package/dist/scripts/src/components/DropdownMenu/DropdownMenuNative.js +95 -0
  71. package/dist/scripts/src/components/EmojiSelector/EmojiSelector.js +26 -0
  72. package/dist/scripts/src/components/EmojiSelector/EmojiSelectorNative.js +52 -0
  73. package/dist/scripts/src/components/FileInput/FileInput.js +64 -0
  74. package/dist/scripts/src/components/FileInput/FileInputNative.js +128 -0
  75. package/dist/scripts/src/components/FileUploadDropZone/FileUploadDropZone.js +46 -0
  76. package/dist/scripts/src/components/FileUploadDropZone/FileUploadDropZoneNative.js +112 -0
  77. package/dist/scripts/src/components/FlowLayout/FlowLayout.js +53 -0
  78. package/dist/scripts/src/components/FlowLayout/FlowLayoutNative.js +108 -0
  79. package/dist/scripts/src/components/Footer/Footer.js +35 -0
  80. package/dist/scripts/src/components/Footer/FooterNative.js +20 -0
  81. package/dist/scripts/src/components/Form/Form.js +89 -0
  82. package/dist/scripts/src/components/Form/FormContext.js +9 -0
  83. package/dist/scripts/src/components/Form/FormNative.js +317 -0
  84. package/dist/scripts/src/components/Form/formActions.js +114 -0
  85. package/dist/scripts/src/components/FormItem/FormItem.js +125 -0
  86. package/dist/scripts/src/components/FormItem/FormItemNative.js +157 -0
  87. package/dist/scripts/src/components/FormItem/HelperText.js +27 -0
  88. package/dist/scripts/src/components/FormItem/ItemWithLabel.js +40 -0
  89. package/dist/scripts/src/components/FormItem/Validations.js +351 -0
  90. package/dist/scripts/src/components/FormSection/FormSection.js +41 -0
  91. package/dist/scripts/src/components/Heading/Heading.js +258 -0
  92. package/dist/scripts/src/components/Heading/HeadingNative.js +47 -0
  93. package/dist/scripts/src/components/HoverCard/HoverCard.js +19 -0
  94. package/dist/scripts/src/components/HoverCard/HovercardNative.js +44 -0
  95. package/dist/scripts/src/components/Icon/ApiIcon.js +10 -0
  96. package/dist/scripts/src/components/Icon/Attach.js +10 -0
  97. package/dist/scripts/src/components/Icon/Binding.js +11 -0
  98. package/dist/scripts/src/components/Icon/BoardIcon.js +7 -0
  99. package/dist/scripts/src/components/Icon/BoxIcon.js +10 -0
  100. package/dist/scripts/src/components/Icon/CheckIcon.js +7 -0
  101. package/dist/scripts/src/components/Icon/ChevronLeft.js +7 -0
  102. package/dist/scripts/src/components/Icon/ChevronRight.js +7 -0
  103. package/dist/scripts/src/components/Icon/CodeFileIcon.js +10 -0
  104. package/dist/scripts/src/components/Icon/CodeSandbox.js +10 -0
  105. package/dist/scripts/src/components/Icon/CompactListIcon.js +7 -0
  106. package/dist/scripts/src/components/Icon/ContentCopyIcon.js +7 -0
  107. package/dist/scripts/src/components/Icon/DatabaseIcon.js +11 -0
  108. package/dist/scripts/src/components/Icon/DocFileIcon.js +10 -0
  109. package/dist/scripts/src/components/Icon/DocIcon.js +10 -0
  110. package/dist/scripts/src/components/Icon/DotMenuHorizontalIcon.js +7 -0
  111. package/dist/scripts/src/components/Icon/DotMenuIcon.js +7 -0
  112. package/dist/scripts/src/components/Icon/EmailIcon.js +7 -0
  113. package/dist/scripts/src/components/Icon/EmptyFolderIcon.js +10 -0
  114. package/dist/scripts/src/components/Icon/ErrorIcon.js +7 -0
  115. package/dist/scripts/src/components/Icon/ExpressionIcon.js +10 -0
  116. package/dist/scripts/src/components/Icon/FillPlusCricleIcon.js +7 -0
  117. package/dist/scripts/src/components/Icon/FilterIcon.js +10 -0
  118. package/dist/scripts/src/components/Icon/FolderIcon.js +10 -0
  119. package/dist/scripts/src/components/Icon/GlobeIcon.js +7 -0
  120. package/dist/scripts/src/components/Icon/HomeIcon.js +7 -0
  121. package/dist/scripts/src/components/Icon/HyperLinkIcon.js +7 -0
  122. package/dist/scripts/src/components/Icon/Icon.js +32 -0
  123. package/dist/scripts/src/components/Icon/IconNative.js +102 -0
  124. package/dist/scripts/src/components/Icon/ImageFileIcon.js +10 -0
  125. package/dist/scripts/src/components/Icon/LinkIcon.js +7 -0
  126. package/dist/scripts/src/components/Icon/ListIcon.js +7 -0
  127. package/dist/scripts/src/components/Icon/LooseListIcon.js +7 -0
  128. package/dist/scripts/src/components/Icon/MoonIcon.js +10 -0
  129. package/dist/scripts/src/components/Icon/MoreOptionsIcon.js +7 -0
  130. package/dist/scripts/src/components/Icon/NoSortIcon.js +8 -0
  131. package/dist/scripts/src/components/Icon/PDFIcon.js +10 -0
  132. package/dist/scripts/src/components/Icon/PenIcon.js +7 -0
  133. package/dist/scripts/src/components/Icon/PhoneIcon.js +7 -0
  134. package/dist/scripts/src/components/Icon/PhotoIcon.js +10 -0
  135. package/dist/scripts/src/components/Icon/PlusIcon.js +7 -0
  136. package/dist/scripts/src/components/Icon/SearchIcon.js +7 -0
  137. package/dist/scripts/src/components/Icon/ShareIcon.js +10 -0
  138. package/dist/scripts/src/components/Icon/SortAscendingIcon.js +8 -0
  139. package/dist/scripts/src/components/Icon/SortDescendingIcon.js +8 -0
  140. package/dist/scripts/src/components/Icon/SunIcon.js +10 -0
  141. package/dist/scripts/src/components/Icon/TrashIcon.js +7 -0
  142. package/dist/scripts/src/components/Icon/TrendingDownIcon.js +10 -0
  143. package/dist/scripts/src/components/Icon/TrendingLevelIcon.js +10 -0
  144. package/dist/scripts/src/components/Icon/TrendingUpIcon.js +10 -0
  145. package/dist/scripts/src/components/Icon/TxtIcon.js +10 -0
  146. package/dist/scripts/src/components/Icon/UnknownFileIcon.js +10 -0
  147. package/dist/scripts/src/components/Icon/UnlinkIcon.js +10 -0
  148. package/dist/scripts/src/components/Icon/UserIcon.js +7 -0
  149. package/dist/scripts/src/components/Icon/WarningIcon.js +7 -0
  150. package/dist/scripts/src/components/Icon/XlsIcon.js +10 -0
  151. package/dist/scripts/src/components/IconInfoCard/IconInfoCard.js +39 -0
  152. package/dist/scripts/src/components/IconProvider.js +264 -0
  153. package/dist/scripts/src/components/IconRegistryContext.js +317 -0
  154. package/dist/scripts/src/components/Image/Image.js +35 -0
  155. package/dist/scripts/src/components/Image/ImageNative.js +15 -0
  156. package/dist/scripts/src/components/Input/InputAdornment.js +14 -0
  157. package/dist/scripts/src/components/Items/Items.js +33 -0
  158. package/dist/scripts/src/components/Items/ItemsNative.js +29 -0
  159. package/dist/scripts/src/components/Link/Link.js +64 -0
  160. package/dist/scripts/src/components/Link/LinkNative.js +26 -0
  161. package/dist/scripts/src/components/List/List.js +81 -0
  162. package/dist/scripts/src/components/List/ListNative.js +425 -0
  163. package/dist/scripts/src/components/Logo/Logo.js +16 -0
  164. package/dist/scripts/src/components/Logo/LogoNative.js +15 -0
  165. package/dist/scripts/src/components/Map/Map.js +75 -0
  166. package/dist/scripts/src/components/Map/world_countries.json +45307 -0
  167. package/dist/scripts/src/components/Markdown/Markdown.js +45 -0
  168. package/dist/scripts/src/components/Markdown/MarkdownNative.js +107 -0
  169. package/dist/scripts/src/components/ModalDialog/ConfirmationModalContextProvider.js +116 -0
  170. package/dist/scripts/src/components/ModalDialog/Dialog.js +20 -0
  171. package/dist/scripts/src/components/ModalDialog/ModalDialog.js +64 -0
  172. package/dist/scripts/src/components/ModalDialog/ModalDialogNative.js +167 -0
  173. package/dist/scripts/src/components/ModalDialog/ModalVisibilityContext.js +60 -0
  174. package/dist/scripts/src/components/NavGroup/NavGroup.js +34 -0
  175. package/dist/scripts/src/components/NavGroup/NavGroupNative.js +91 -0
  176. package/dist/scripts/src/components/NavLink/NavLink.js +71 -0
  177. package/dist/scripts/src/components/NavLink/NavLinkNative.js +61 -0
  178. package/dist/scripts/src/components/NavPanel/NavPanel.js +31 -0
  179. package/dist/scripts/src/components/NavPanel/NavPanelNative.js +74 -0
  180. package/dist/scripts/src/components/NoResult/NoResult.js +38 -0
  181. package/dist/scripts/src/components/NoResult/NoResultNative.js +13 -0
  182. package/dist/scripts/src/components/NumberBox/NumberBox.js +61 -0
  183. package/dist/scripts/src/components/NumberBox/NumberBoxNative.js +336 -0
  184. package/dist/scripts/src/components/NumberBox/numberbox-abstractions.js +74 -0
  185. package/dist/scripts/src/components/OffCanvas/OffCanvas.js +57 -0
  186. package/dist/scripts/src/components/OffCanvas/OffCanvasNative.js +48 -0
  187. package/dist/scripts/src/components/Option/Option.js +33 -0
  188. package/dist/scripts/src/components/Option/OptionTypeProvider.js +16 -0
  189. package/dist/scripts/src/components/PageHeader/PageHeader.js +36 -0
  190. package/dist/scripts/src/components/PageMetaTitle/PageMetaTilteNative.js +9 -0
  191. package/dist/scripts/src/components/PageMetaTitle/PageMetaTitle.js +18 -0
  192. package/dist/scripts/src/components/Pages/Pages.js +33 -0
  193. package/dist/scripts/src/components/Pages/PagesNative.js +69 -0
  194. package/dist/scripts/src/components/PieChart/PieChart.js +45 -0
  195. package/dist/scripts/src/components/PieChart/PieChartNative.js +165 -0
  196. package/dist/scripts/src/components/PositionedContainer/PositionedContainer.js +24 -0
  197. package/dist/scripts/src/components/PositionedContainer/PositionedContainerNative.js +14 -0
  198. package/dist/scripts/src/components/ProgressBar/ProgressBar.js +36 -0
  199. package/dist/scripts/src/components/ProgressBar/ProgressBarNative.js +12 -0
  200. package/dist/scripts/src/components/Queue/Queue.js +71 -0
  201. package/dist/scripts/src/components/Queue/QueueNative.js +278 -0
  202. package/dist/scripts/src/components/Queue/queueActions.js +87 -0
  203. package/dist/scripts/src/components/RadioGroup/RadioGroup.js +68 -0
  204. package/dist/scripts/src/components/RadioGroup/RadioGroupNative.js +103 -0
  205. package/dist/scripts/src/components/Range/Range.js +56 -0
  206. package/dist/scripts/src/components/Range/RangeNative.js +8 -0
  207. package/dist/scripts/src/components/RealTimeAdapter/RealTimeAdapter.js +21 -0
  208. package/dist/scripts/src/components/RealTimeAdapter/RealTimeAdapterNative.js +131 -0
  209. package/dist/scripts/src/components/Redirect/Redirect.js +20 -0
  210. package/dist/scripts/src/components/Select/OptionContext.js +12 -0
  211. package/dist/scripts/src/components/Select/Select.js +98 -0
  212. package/dist/scripts/src/components/Select/SelectContext.js +9 -0
  213. package/dist/scripts/src/components/Select/SelectNative.js +213 -0
  214. package/dist/scripts/src/components/SelectionStore/SelectionStore.js +22 -0
  215. package/dist/scripts/src/components/SelectionStore/SelectionStoreNative.js +94 -0
  216. package/dist/scripts/src/components/Slider/Slider.js +54 -0
  217. package/dist/scripts/src/components/Slider/SliderNative.js +8 -0
  218. package/dist/scripts/src/components/SpaceFiller/SpaceFiller.js +19 -0
  219. package/dist/scripts/src/components/SpaceFiller/SpaceFillerNative.js +10 -0
  220. package/dist/scripts/src/components/Spinner/Spinner.js +42 -0
  221. package/dist/scripts/src/components/Spinner/SpinnerNative.js +32 -0
  222. package/dist/scripts/src/components/Splitter/Splitter.js +89 -0
  223. package/dist/scripts/src/components/Splitter/SplitterNative.js +159 -0
  224. package/dist/scripts/src/components/Splitter/utils.js +17 -0
  225. package/dist/scripts/src/components/Stack/Stack.js +110 -0
  226. package/dist/scripts/src/components/Stack/StackNative.js +39 -0
  227. package/dist/scripts/src/components/StateViewer/StateViewerNative.js +19 -0
  228. package/dist/scripts/src/components/StickyBox/StickyBox.js +30 -0
  229. package/dist/scripts/src/components/StickyBox/StickyBoxNative.js +15 -0
  230. package/dist/scripts/src/components/Switch/Switch.js +72 -0
  231. package/dist/scripts/src/components/Table/Table.js +184 -0
  232. package/dist/scripts/src/components/Table/TableNative.js +470 -0
  233. package/dist/scripts/src/components/Table/useRowSelection.js +245 -0
  234. package/dist/scripts/src/components/TableHeader/TableHeader.js +34 -0
  235. package/dist/scripts/src/components/TableOfContents/TableOfContents.js +74 -0
  236. package/dist/scripts/src/components/TableOfContents/TableOfContentsNative.js +56 -0
  237. package/dist/scripts/src/components/Tabs/TabContext.js +45 -0
  238. package/dist/scripts/src/components/Tabs/TabItem.js +20 -0
  239. package/dist/scripts/src/components/Tabs/TabItemNative.js +24 -0
  240. package/dist/scripts/src/components/Tabs/Tabs.js +55 -0
  241. package/dist/scripts/src/components/Tabs/TabsNative.js +72 -0
  242. package/dist/scripts/src/components/Text/Text.js +122 -0
  243. package/dist/scripts/src/components/Text/TextNative.js +124 -0
  244. package/dist/scripts/src/components/TextArea/TextArea.js +65 -0
  245. package/dist/scripts/src/components/TextArea/TextAreaNative.js +176 -0
  246. package/dist/scripts/src/components/TextArea/TextAreaResizable.js +73 -0
  247. package/dist/scripts/src/components/TextArea/useComposedRef.js +60 -0
  248. package/dist/scripts/src/components/TextBox/TextBox.js +85 -0
  249. package/dist/scripts/src/components/TextBox/TextBoxNative.js +109 -0
  250. package/dist/scripts/src/components/Theme/NotificationToast.js +50 -0
  251. package/dist/scripts/src/components/Theme/Theme.js +43 -0
  252. package/dist/scripts/src/components/Theme/ThemeNative.js +126 -0
  253. package/dist/scripts/src/components/ThemeChanger/ThemeChanger.js +115 -0
  254. package/dist/scripts/src/components/ThemeChanger/ToneChangerButton.js +28 -0
  255. package/dist/scripts/src/components/Toggle/Toggle.js +98 -0
  256. package/dist/scripts/src/components/Toolbar/Toolbar.js +32 -0
  257. package/dist/scripts/src/components/ToolbarButton/ToolbarButton.js +38 -0
  258. package/dist/scripts/src/components/Tree/TreeComponent.js +32 -0
  259. package/dist/scripts/src/components/Tree/TreeNative.js +69 -0
  260. package/dist/scripts/src/components/TrendLabel/TrendLabel.js +37 -0
  261. package/dist/scripts/src/components/ValidationSummary/ValidationSummary.js +59 -0
  262. package/dist/scripts/src/components/abstractions.js +151 -0
  263. package/dist/scripts/src/components/chart-color-schemes.js +43 -0
  264. package/dist/scripts/src/components/component-utils.js +17 -0
  265. package/dist/scripts/src/components/container-helpers.js +25 -0
  266. package/dist/scripts/src/components/metadata-helpers.js +245 -0
  267. package/dist/scripts/src/components/slot-helpers.js +22 -0
  268. package/dist/scripts/src/components-core/ApiBoundComponent.js +194 -0
  269. package/dist/scripts/src/components-core/AppContext.js +16 -0
  270. package/dist/scripts/src/components-core/AppRoot.js +424 -0
  271. package/dist/scripts/src/components-core/ComponentBed.js +325 -0
  272. package/dist/scripts/src/components-core/ComponentDecorator.js +90 -0
  273. package/dist/scripts/src/components-core/CompoundComponent.js +144 -0
  274. package/dist/scripts/src/components-core/DebugViewProvider.js +43 -0
  275. package/dist/scripts/src/components-core/EngineError.js +91 -0
  276. package/dist/scripts/src/components-core/ErrorBoundary.js +59 -0
  277. package/dist/scripts/src/components-core/Fragment.js +15 -0
  278. package/dist/scripts/src/components-core/InspectorContext.js +176 -0
  279. package/dist/scripts/src/components-core/InvalidComponent.js +17 -0
  280. package/dist/scripts/src/components-core/LoaderComponent.js +92 -0
  281. package/dist/scripts/src/components-core/RestApiProxy.js +354 -0
  282. package/dist/scripts/src/components-core/ScrollContext.js +11 -0
  283. package/dist/scripts/src/components-core/Slot.js +17 -0
  284. package/dist/scripts/src/components-core/StandaloneApp.js +589 -0
  285. package/dist/scripts/src/components-core/StandaloneComponentManager.js +51 -0
  286. package/dist/scripts/src/components-core/TableOfContentsContext.js +110 -0
  287. package/dist/scripts/src/components-core/UnknownComponent.js +15 -0
  288. package/dist/scripts/src/components-core/XmluiCodeHighlighter.js +110 -0
  289. package/dist/scripts/src/components-core/abstractions/ComponentRenderer.js +2 -0
  290. package/dist/scripts/src/components-core/abstractions/LoaderRenderer.js +2 -0
  291. package/dist/scripts/src/components-core/abstractions/containers.js +18 -0
  292. package/dist/scripts/src/components-core/abstractions/standalone.js +2 -0
  293. package/dist/scripts/src/components-core/abstractions/treeAbstractions.js +2 -0
  294. package/dist/scripts/src/components-core/action/APICall.js +283 -0
  295. package/dist/scripts/src/components-core/action/FileDownloadAction.js +80 -0
  296. package/dist/scripts/src/components-core/action/FileUploadAction.js +88 -0
  297. package/dist/scripts/src/components-core/action/NavigateAction.js +20 -0
  298. package/dist/scripts/src/components-core/action/TimedAction.js +21 -0
  299. package/dist/scripts/src/components-core/action/actions.js +15 -0
  300. package/dist/scripts/src/components-core/appContext/date-functions.js +19 -0
  301. package/dist/scripts/src/components-core/appContext/math-function.js +27 -0
  302. package/dist/scripts/src/components-core/appContext/misc-utils.js +12 -0
  303. package/dist/scripts/src/components-core/component-hooks.js +25 -0
  304. package/dist/scripts/src/components-core/constants.js +18 -0
  305. package/dist/scripts/src/components-core/container/Container.js +1241 -0
  306. package/dist/scripts/src/components-core/container/buildProxy.js +54 -0
  307. package/dist/scripts/src/components-core/container/collectFnVarDeps.js +49 -0
  308. package/dist/scripts/src/components-core/container/valueExtractor.js +205 -0
  309. package/dist/scripts/src/components-core/descriptorHelper.js +72 -0
  310. package/dist/scripts/src/components-core/interception/ApiInterceptor.js +198 -0
  311. package/dist/scripts/src/components-core/interception/ApiInterceptorProvider.js +94 -0
  312. package/dist/scripts/src/components-core/interception/Backend.js +129 -0
  313. package/dist/scripts/src/components-core/interception/Errors.js +129 -0
  314. package/dist/scripts/src/components-core/interception/InMemoryDb.js +41 -0
  315. package/dist/scripts/src/components-core/interception/IndexedDb.js +205 -0
  316. package/dist/scripts/src/components-core/interception/ReadonlyCollection.js +145 -0
  317. package/dist/scripts/src/components-core/interception/abstractions.js +2 -0
  318. package/dist/scripts/src/components-core/interception/apiInterceptorWorker.js +46 -0
  319. package/dist/scripts/src/components-core/interception/useApiInterceptorContext.js +9 -0
  320. package/dist/scripts/src/components-core/loader/ApiLoader.js +54 -0
  321. package/dist/scripts/src/components-core/loader/DataLoader.js +149 -0
  322. package/dist/scripts/src/components-core/loader/ExternalDataLoader.js +62 -0
  323. package/dist/scripts/src/components-core/loader/Loader.js +126 -0
  324. package/dist/scripts/src/components-core/loader/MockLoaderRenderer.js +40 -0
  325. package/dist/scripts/src/components-core/loader/PageableLoader.js +262 -0
  326. package/dist/scripts/src/components-core/markup-check.js +279 -0
  327. package/dist/scripts/src/components-core/renderers.js +45 -0
  328. package/dist/scripts/src/components-core/reportEngineError.js +62 -0
  329. package/dist/scripts/src/components-core/script-runner/BindingTreeEvaluationContext.js +35 -0
  330. package/dist/scripts/src/components-core/script-runner/ICustomOperations.js +34 -0
  331. package/dist/scripts/src/components-core/script-runner/ParameterParser.js +117 -0
  332. package/dist/scripts/src/components-core/script-runner/asyncProxy.js +149 -0
  333. package/dist/scripts/src/components-core/script-runner/bannedFunctions.js +34 -0
  334. package/dist/scripts/src/components-core/script-runner/custom-operations-registry.js +40 -0
  335. package/dist/scripts/src/components-core/script-runner/custom-ui-data.js +40 -0
  336. package/dist/scripts/src/components-core/script-runner/eval-tree-async.js +593 -0
  337. package/dist/scripts/src/components-core/script-runner/eval-tree-common.js +497 -0
  338. package/dist/scripts/src/components-core/script-runner/eval-tree-sync.js +482 -0
  339. package/dist/scripts/src/components-core/script-runner/process-statement-async.js +766 -0
  340. package/dist/scripts/src/components-core/script-runner/process-statement-common.js +193 -0
  341. package/dist/scripts/src/components-core/script-runner/process-statement-sync.js +752 -0
  342. package/dist/scripts/src/components-core/script-runner/statement-queue.js +62 -0
  343. package/dist/scripts/src/components-core/script-runner/syncProxy.js +31 -0
  344. package/dist/scripts/src/components-core/script-runner/visitors.js +361 -0
  345. package/dist/scripts/src/components-core/theming/ThemeContext.js +53 -0
  346. package/dist/scripts/src/components-core/theming/ThemeProvider.js +335 -0
  347. package/dist/scripts/src/components-core/theming/abstractions.js +11 -0
  348. package/dist/scripts/src/components-core/theming/extendThemeUtils.js +114 -0
  349. package/dist/scripts/src/components-core/theming/hvar.js +105 -0
  350. package/dist/scripts/src/components-core/theming/themeVars.js +62 -0
  351. package/dist/scripts/src/components-core/theming/themes/base-utils.js +31 -0
  352. package/dist/scripts/src/components-core/theming/themes/palette.js +55 -0
  353. package/dist/scripts/src/components-core/theming/themes/root.js +287 -0
  354. package/dist/scripts/src/components-core/theming/themes/solid.js +16 -0
  355. package/dist/scripts/src/components-core/theming/themes/theme-colors.js +561 -0
  356. package/dist/scripts/src/components-core/theming/themes/xmlui.js +58 -0
  357. package/dist/scripts/src/components-core/theming/transformThemeVars.js +300 -0
  358. package/dist/scripts/src/components-core/utils/DataLoaderQueryKeyGenerator.js +35 -0
  359. package/dist/scripts/src/components-core/utils/LruCache.js +184 -0
  360. package/dist/scripts/src/components-core/utils/actionUtils.js +32 -0
  361. package/dist/scripts/src/components-core/utils/classnames.js +58 -0
  362. package/dist/scripts/src/components-core/utils/compound-utils.js +11 -0
  363. package/dist/scripts/src/components-core/utils/css-utils.js +163 -0
  364. package/dist/scripts/src/components-core/utils/date-utils.js +78 -0
  365. package/dist/scripts/src/components-core/utils/extractParam.js +148 -0
  366. package/dist/scripts/src/components-core/utils/hooks.js +249 -0
  367. package/dist/scripts/src/components-core/utils/mergeProps.js +45 -0
  368. package/dist/scripts/src/components-core/utils/misc.js +472 -0
  369. package/dist/scripts/src/components-core/utils/request-params.js +70 -0
  370. package/dist/scripts/src/components-core/utils/statementUtils.js +221 -0
  371. package/dist/scripts/src/components-core/utils/treeUtils.js +48 -0
  372. package/dist/scripts/src/index.js +69 -0
  373. package/dist/scripts/src/parsers/common/GenericToken.js +2 -0
  374. package/dist/scripts/src/parsers/scripting-exp/TokenType.js +112 -0
  375. package/dist/scripts/src/parsers/style-parser/StyleInputStream.js +39 -0
  376. package/dist/scripts/src/parsers/style-parser/StyleLexer.js +623 -0
  377. package/dist/scripts/src/parsers/style-parser/StyleParser.js +1036 -0
  378. package/dist/scripts/src/parsers/style-parser/errors.js +37 -0
  379. package/dist/scripts/src/parsers/style-parser/source-tree.js +2 -0
  380. package/dist/scripts/src/parsers/style-parser/style-compiler.js +558 -0
  381. package/dist/scripts/src/parsers/style-parser/tokens.js +43 -0
  382. package/dist/scripts/src/parsers/xmlui-parser/ParserError.js +7 -0
  383. package/dist/scripts/src/parsers/xmlui-parser/transform.js +80 -32
  384. package/dist/scripts/src/syntax/grammar.tmLanguage.json +348 -0
  385. package/dist/scripts/src/syntax/textMate/xmlui.json +630 -0
  386. package/dist/style.css +1 -1
  387. package/dist/xmlui-metadata.mjs +2636 -2563
  388. package/dist/xmlui-metadata.umd.js +16 -16
  389. package/dist/xmlui-standalone.umd.js +186 -186
  390. package/dist/xmlui.d.ts +1868 -13
  391. package/dist/xmlui.mjs +1 -1
  392. package/package.json +5 -5
  393. package/dist/xmlui.umd.js +0 -293
package/dist/xmlui.d.ts CHANGED
@@ -1,4 +1,593 @@
1
- export declare const collectedComponentMetadata: Record<string, ComponentMetadata>;
1
+ import { CSSProperties } from 'react';
2
+ import { default as default_2 } from 'react';
3
+ import { DefaultToastOptions } from 'react-hot-toast';
4
+ import { ErrorInfo } from 'react';
5
+ import { ForwardRefExoticComponent } from 'react';
6
+ import { JSX as JSX_2 } from 'react/jsx-runtime';
7
+ import { NavigateOptions } from 'react-router-dom';
8
+ import { ReactNode } from 'react';
9
+ import { RefAttributes } from 'react';
10
+ import { RefObject } from 'react';
11
+ import { Renderable } from 'react-hot-toast';
12
+ import { Root } from 'react-dom/client';
13
+ import { To } from 'react-router-dom';
14
+ import { Toast } from 'react-hot-toast';
15
+ import { ToastOptions } from 'react-hot-toast';
16
+ import { ValueOrFunction } from 'react-hot-toast';
17
+
18
+ /**
19
+ * This type represents the context in which an action is executed.
20
+ */
21
+ declare interface ActionExecutionContext {
22
+ /**
23
+ * A unique identifier for the container that the action is executed in.
24
+ */
25
+ uid: symbol;
26
+ /**
27
+ * The state of the container that the action is executed in.
28
+ */
29
+ state: ContainerState;
30
+ /**
31
+ * The appContext object passed to the current app
32
+ */
33
+ appContext: AppContextObject;
34
+ /**
35
+ * The lookup function to resolve a sync action by its name.
36
+ */
37
+ lookupAction: LookupAsyncFnInner;
38
+ navigate: any;
39
+ location: any;
40
+ }
41
+
42
+ /**
43
+ * This type represents a function that executes a particular action within the specified context
44
+ * using the given arguments.
45
+ */
46
+ declare type ActionFunction = (executionContext: ActionExecutionContext, ...args: any[]) => any;
47
+
48
+ /**
49
+ * XMLUI keeps a registry of available actions to store information about out-of-the-box and custom
50
+ * actions (contributions implemented in external packages or files). This type describes the
51
+ * information the registry needs about the action to be able to render it.
52
+ */
53
+ declare interface ActionRendererDef {
54
+ /**
55
+ * The name of the action that will be used to reference it in XMLUI.
56
+ */
57
+ actionName: string;
58
+ /**
59
+ * The function that executes the action.
60
+ */
61
+ actionFn: ActionFunction;
62
+ }
63
+
64
+ declare type AlignmentOptions = (typeof alignmentOptionValues)[number];
65
+
66
+ declare const alignmentOptionValues: readonly ["start", "center", "end"];
67
+
68
+ export declare type ApiInterceptorDefinition = {
69
+ type?: string;
70
+ config?: Record<string, any>;
71
+ schemaDescriptor?: SchemaDescriptor;
72
+ apiUrl?: string;
73
+ initialData?: Record<string, any[]> | (() => Promise<Record<string, any[]>>);
74
+ helpers?: Record<string, any>;
75
+ initialize?: string;
76
+ operations?: Record<string, InterceptorOperationDef>;
77
+ auth?: AuthDefinition;
78
+ };
79
+
80
+ /**
81
+ * This interface defines the properties and services of an app context that the application components can use when
82
+ * implementing their behavior.
83
+ */
84
+ declare type AppContextObject = {
85
+ /**
86
+ * Accept other methods
87
+ */
88
+ [x: string]: unknown;
89
+ version: string;
90
+ Actions: Record<string, ActionFunction>;
91
+ /* Excluded from this release type: apiInterceptorContext */
92
+ /**
93
+ * This property returns a hash object containing all application-global settings
94
+ * defined in the app's configuration file.
95
+ */
96
+ appGlobals?: Record<string, any>;
97
+ /* Excluded from this release type: debugEnabled */
98
+ /* Excluded from this release type: decorateComponentsWithTestId */
99
+ /**
100
+ * This property returns an object with some properties of the current environment.
101
+ */
102
+ environment: {
103
+ isWindowFocused: boolean;
104
+ };
105
+ /**
106
+ * This property returns an object with information about the current media size.
107
+ */
108
+ mediaSize: MediaSize;
109
+ /* Excluded from this release type: queryClient */
110
+ /**
111
+ * This property returns `true` if the app is a standalone XMLUI app; otherwise
112
+ * (for example, as part of a website), it returns `false`.
113
+ */
114
+ standalone?: boolean;
115
+ /**
116
+ * This function formats the specified value's date part into a local date string
117
+ * (according to the machine's local settings).
118
+ * @param date Date to format
119
+ */
120
+ formatDate: (date: string | Date) => string | undefined;
121
+ /**
122
+ * This function formats the specified value into a local
123
+ * date and time string (according to the machine's local settings).
124
+ * @param date Date to format
125
+ */
126
+ formatDateTime: (date: any) => string | undefined;
127
+ /**
128
+ * This function formats the specified value's date part (without year)
129
+ * into a local date string (according to the machine's local settings).
130
+ * @param date Date to format
131
+ */
132
+ formatDateWithoutYear: (date: string | Date) => string | undefined;
133
+ /**
134
+ * This function formats the specified value's time part into a local date
135
+ * string (according to the machine's local settings).
136
+ * @param date Date to format
137
+ */
138
+ formatTime: (date: any) => string | undefined;
139
+ /**
140
+ * This function formats the specified value's time part (without seconds)
141
+ * into a local date string (according to the machine's local settings).
142
+ * @param date Date to format
143
+ */
144
+ formatTimeWithoutSeconds: (date: string | Date) => string | undefined;
145
+ /**
146
+ * This function creates a date from the specified input value. If no input
147
+ * is provided, it returns the current date and time.
148
+ */
149
+ getDate: (date?: string | number | Date) => Date;
150
+ /**
151
+ * This function calculates the difference between the current date and the
152
+ * provided one and returns it in a human-readable form, such as "1 month", "2 weeks", etc.
153
+ * @param date
154
+ * @param nowLabel
155
+ * @param time
156
+ * @returns
157
+ */
158
+ getDateUntilNow: (date?: string | number | Date, nowLabel?: string, time?: string) => string;
159
+ /**
160
+ * This function converts the input string into a date value and returns
161
+ * the ISO 8601 string representation of the date. It can pass dates between
162
+ * the UI and backend APIs in a standard format.
163
+ * @param date Date to format
164
+ */
165
+ isoDateString: (date?: string) => string;
166
+ /**
167
+ * This function checks if the specified date is today.
168
+ * @param date Date to check
169
+ */
170
+ isToday: (date: string | Date) => boolean;
171
+ /**
172
+ * This function checks if the specified date is tomorrow.
173
+ * @param date Date to check
174
+ */
175
+ isTomorrow: (date: string | Date) => boolean;
176
+ /**
177
+ * This function checks if the specified date is yesterday.
178
+ * @param date Date to check
179
+ */
180
+ isYesterday: (date: string | Date) => boolean;
181
+ /**
182
+ * This function checks the date value provided for some particular
183
+ * values and returns accordingly. Otherwise, returns it as `formatDate` would.
184
+ * @param date Date to format
185
+ */
186
+ smartFormatDate: (date?: string | number | Date) => string;
187
+ /**
188
+ * This function checks the date value provided for some particular values and
189
+ * returns accordingly. Otherwise, returns it as `formatDateTime` would.
190
+ * @param date Date to format
191
+ */
192
+ smartFormatDateTime: (date: string | Date) => string | undefined;
193
+ /**
194
+ * This function calculates the average of the specified values and returns it.
195
+ * @param values Values to calculate the average
196
+ * @param decimals Number of decimal places to round the result
197
+ */
198
+ avg: (values: number[], decimals?: number) => number;
199
+ /**
200
+ * This function calculates the sum of the specified values and returns it.
201
+ * @param values Values to calculate the sum
202
+ */
203
+ sum: (values: number[]) => number;
204
+ /**
205
+ * This function returns the specified file size in a compact form, such as
206
+ * "112 B", "2.0 KiB", "23.4 KiB", "2.3 MiB", etc.
207
+ * @param bytes Number of bytes to format
208
+ */
209
+ formatFileSizeInBytes: (bytes: number) => string | undefined;
210
+ /**
211
+ * This function returns the type of the specified file.
212
+ * @param fileName Filename to check for extension
213
+ */
214
+ getFileExtension: (fileName: string) => string | undefined;
215
+ /**
216
+ * This function navigates to the specified `url`.
217
+ * @param url New app location
218
+ * @param options Navigation options
219
+ */
220
+ navigate: (url: To, options?: NavigateOptions) => void;
221
+ /**
222
+ * This property determines the base name used for the router.
223
+ */
224
+ routerBaseName: string;
225
+ /**
226
+ * Instructs the browser to display a dialog with an optional message, and to wait until the
227
+ * user either confirms or cancels the dialog. It returns a boolean indicating whether OK
228
+ * (`true`) or Cancel (`false`) was selected.
229
+ * @param title Dialog title
230
+ * @param message Confirmation message
231
+ * @param actionLabel Optional action label
232
+ * @return True, if the user confirmed the action; otherwise, false.
233
+ */
234
+ confirm: (title: string, message?: string, actionLabel?: string) => Promise<boolean>;
235
+ /**
236
+ * This method displays the specified `error` (error message) on the UI.
237
+ * @param error Error to display
238
+ */
239
+ signError(error: Error | string): void;
240
+ /**
241
+ * The toast service that displays messages in the UI.
242
+ */
243
+ toast: {
244
+ (message: Message, opts?: ToastOptions): string;
245
+ error: ToastHandler;
246
+ success: ToastHandler;
247
+ loading: ToastHandler;
248
+ custom: ToastHandler;
249
+ dismiss(toastId?: string): void;
250
+ remove(toastId?: string): void;
251
+ promise<T>(promise: Promise<T>, msgs: {
252
+ loading: Renderable;
253
+ success: ValueOrFunction<Renderable, T>;
254
+ error: ValueOrFunction<Renderable, any>;
255
+ }, opts?: DefaultToastOptions): Promise<T>;
256
+ };
257
+ /**
258
+ * This property returns the ID of the currently active theme.
259
+ */
260
+ activeThemeId: string;
261
+ /**
262
+ * This property returns the tone of the currently active theme ("light" or "dark").
263
+ */
264
+ activeThemeTone: "light" | "dark";
265
+ /**
266
+ * This property returns an array of all available theme IDs.
267
+ */
268
+ availableThemeIds: string[];
269
+ /**
270
+ * This function sets the current theme to the one with the specified `themeId`.
271
+ * @param themId New theme to set
272
+ */
273
+ setTheme: (themId: string) => void;
274
+ /**
275
+ * This function sets the current theme tone to the specified `tone` value ("light" or "dark").
276
+ * @param newTone New tone to set
277
+ */
278
+ setThemeTone: (newTone: "light" | "dark") => void;
279
+ /**
280
+ * This function toggles the current theme tone from "light" to "dark" or vice versa.
281
+ */
282
+ toggleThemeTone: () => void;
283
+ /**
284
+ * This property gets the information about the logged-in user. If `null`, no user is
285
+ * logged in. The user information may have any value; the app must be able to leverage
286
+ * this information.
287
+ */
288
+ loggedInUser: LoggedInUserDto | null;
289
+ /**
290
+ * This function sets the information about the logged-in user. The user information
291
+ * may have any value; the app must be able to leverage this information.
292
+ * @param loggedInUser Logged-in user information
293
+ */
294
+ setLoggedInUser: (loggedInUser: any) => void;
295
+ readonly resources?: Record<string, string>;
296
+ capitalize: (s?: string) => string;
297
+ pluralize: (number: number, singular: string, plural: string) => string;
298
+ delay: (timeInMs: number, callback?: any) => Promise<void>;
299
+ toHashObject: (arr: any[], keyProp: string, valueProp: string) => any;
300
+ findByField: (arr: any[], field: string, value: any) => any;
301
+ readonly DateUtils: Record<string, any>;
302
+ readonly embed: {
303
+ isInIFrame: boolean;
304
+ };
305
+ };
306
+
307
+ /**
308
+ * This component runs the app in the context of the registered components
309
+ * (including the core xmlui components and external ones passed to this
310
+ * component.
311
+ */
312
+ export declare function AppRoot({ apiInterceptor, contributes, node, decorateComponentsWithTestId, debugEnabled, defaultTheme, defaultTone, resources, globalProps, standalone, trackContainerHeight, routerBaseName, previewMode, servedFromSingleFile, resourceMap, sources, componentManager, }: AppWrapperProps & {
313
+ componentManager?: StandaloneComponentManager;
314
+ }): JSX_2.Element;
315
+
316
+ declare type AppWrapperProps = {
317
+ node: ComponentLike;
318
+ previewMode?: boolean;
319
+ servedFromSingleFile?: boolean;
320
+ routerBaseName?: string;
321
+ contributes?: ContributesDefinition;
322
+ globalProps?: GlobalProps;
323
+ resources?: Record<string, string>;
324
+ standalone?: boolean;
325
+ trackContainerHeight?: boolean;
326
+ decorateComponentsWithTestId?: boolean;
327
+ debugEnabled?: boolean;
328
+ apiInterceptor?: ApiInterceptorDefinition;
329
+ defaultTheme?: string;
330
+ defaultTone?: ThemeTone;
331
+ resourceMap?: Record<string, string>;
332
+ sources?: Record<string, string>;
333
+ };
334
+
335
+ declare interface ArrayDestructure extends DestructureBase {
336
+ type: "ADestr";
337
+ }
338
+
339
+ declare interface ArrayLiteral extends ExpressionBase {
340
+ type: "ALitE";
341
+ items: Expression[];
342
+ loose?: boolean;
343
+ }
344
+
345
+ declare interface ArrowExpression extends ExpressionBase {
346
+ type: "ArrowE";
347
+ name?: string;
348
+ args: Expression[];
349
+ statement: Statement;
350
+ closureContext?: BlockScope[];
351
+ }
352
+
353
+ declare interface ArrowExpressionStatement extends StatementBase {
354
+ type: "ArrowS";
355
+ expression: ArrowExpression;
356
+ }
357
+
358
+ declare interface AssignmentExpression extends ExpressionBase {
359
+ type: "AsgnE";
360
+ leftValue: Expression;
361
+ operator: AssignmentSymbols;
362
+ operand: Expression;
363
+ }
364
+
365
+ declare type AssignmentSymbols = "=" | "+=" | "-=" | "**=" | "*=" | "/=" | "%=" | "<<=" | ">>=" | ">>>=" | "&=" | "^=" | "|=" | "&&=" | "||=" | "??=";
366
+
367
+ /**
368
+ * XMLUI executes its code asynchronously. This type defines functions that can be used in XMLUI
369
+ * as actions or event handlers.
370
+ */
371
+ declare type AsyncFunction = (...args: any) => Promise<any> | any;
372
+
373
+ declare type AuthDefinition = {
374
+ defaultLoggedInUser?: any;
375
+ };
376
+
377
+ declare interface BaseNode {
378
+ /**
379
+ * Node type discriminator
380
+ */
381
+ type: Node_2["type"];
382
+ /**
383
+ * Start position (inclusive) of the node
384
+ */
385
+ startPosition?: number;
386
+ /**
387
+ * End position (exclusive)
388
+ */
389
+ endPosition?: number;
390
+ /**
391
+ * Start line number of the start token of the node
392
+ */
393
+ startLine?: number;
394
+ /**
395
+ * End line number of the end token of the node
396
+ */
397
+ endLine?: number;
398
+ /**
399
+ * Start column number (inclusive) of the node
400
+ */
401
+ startColumn?: number;
402
+ /**
403
+ * End column number (exclusive) of the node
404
+ */
405
+ endColumn?: number;
406
+ /**
407
+ * The source code of the expression
408
+ */
409
+ source?: string;
410
+ /**
411
+ * The start token of the node
412
+ */
413
+ startToken?: Token;
414
+ /**
415
+ * The end token of the node
416
+ */
417
+ endToken?: Token;
418
+ }
419
+
420
+ declare interface BinaryExpression extends ExpressionBase {
421
+ type: "BinaryE";
422
+ operator: BinaryOpSymbols;
423
+ left: Expression;
424
+ right: Expression;
425
+ }
426
+
427
+ declare type BinaryOpSymbols = "**" | "*" | "/" | "%" | "+" | "-" | "<<" | ">>" | ">>>" | "<" | "<=" | ">" | ">=" | "==" | "===" | "!=" | "!==" | "&" | "|" | "^" | "&&" | "||" | "??" | "in";
428
+
429
+ declare type BlockScope = {
430
+ vars: Record<string, any>;
431
+ constVars?: Set<string>;
432
+ returnValue?: any;
433
+ };
434
+
435
+ declare interface BlockStatement extends StatementBase {
436
+ type: "BlockS";
437
+ statements: Statement[];
438
+ }
439
+
440
+ declare interface BreakStatement extends StatementBase {
441
+ type: "BrkS";
442
+ }
443
+
444
+ export declare const Button: default_2.ForwardRefExoticComponent<{
445
+ id?: string;
446
+ type?: ButtonType;
447
+ variant?: ButtonVariant;
448
+ themeColor?: ButtonThemeColor;
449
+ size?: ComponentSize;
450
+ disabled?: boolean;
451
+ children?: default_2.ReactNode | default_2.ReactNode[];
452
+ icon?: default_2.ReactNode;
453
+ iconPosition?: IconPosition;
454
+ contentPosition?: AlignmentOptions;
455
+ orientation?: OrientationOptions;
456
+ formId?: string;
457
+ style?: CSSProperties;
458
+ gap?: string | number;
459
+ accessibilityProps?: any;
460
+ autoFocus?: boolean;
461
+ } & Pick<default_2.HTMLAttributes<HTMLButtonElement>, "className" | "aria-disabled" | "aria-label" | "aria-controls" | "aria-expanded" | "onClick" | "tabIndex" | "onFocus" | "onBlur" | "onMouseEnter" | "onMouseLeave"> & default_2.RefAttributes<HTMLButtonElement>>;
462
+
463
+ declare type ButtonThemeColor = (typeof buttonThemeValues)[number];
464
+
465
+ declare const buttonThemeValues: readonly ["attention", "primary", "secondary"];
466
+
467
+ declare type ButtonType = (typeof buttonTypeValues)[number];
468
+
469
+ declare const buttonTypeValues: readonly ["button", "submit", "reset"];
470
+
471
+ declare type ButtonVariant = (typeof buttonVariantValues)[number];
472
+
473
+ declare const buttonVariantValues: readonly ["solid", "outlined", "ghost"];
474
+
475
+ declare interface CalculatedMemberAccessExpression extends ExpressionBase {
476
+ type: "CMembE";
477
+ object: Expression;
478
+ member: Expression;
479
+ }
480
+
481
+ declare type CodeDeclaration = {
482
+ source?: string;
483
+ tree: Expression;
484
+ [x: string]: unknown;
485
+ };
486
+
487
+ declare type CollectedDeclarations = {
488
+ vars: Record<string, CodeDeclaration>;
489
+ functions: Record<string, CodeDeclaration>;
490
+ moduleErrors?: ModuleErrors;
491
+ };
492
+
493
+ declare type ColorDef = {
494
+ name: string;
495
+ format: "hex" | "rgb" | "hsl";
496
+ };
497
+
498
+ /**
499
+ * Components can provide an API that other components can invoke (using the host component ID). This
500
+ * type defines the shape of a hash object that stores the API endpoints.
501
+ */
502
+ declare type ComponentApi = Record<string, ((...args: any[]) => any) | boolean>;
503
+
504
+ /**
505
+ * This interface represents the properties of a component definition.
506
+ */
507
+ export declare interface ComponentDef<TMd extends ComponentMetadata = ComponentMetadata> extends ComponentDefCore, Scriptable {
508
+ props?: Record<keyof TMd["props"], any>;
509
+ events?: Record<keyof TMd["events"], any>;
510
+ /**
511
+ * Components may have an API that other components can use to interact with them. This property holds
512
+ * the API methods associated with this component definition.
513
+ */
514
+ api?: Record<keyof TMd["apis"], any>;
515
+ /**
516
+ * Components may provide context variables that can be used to in expressions and event handlers
517
+ * within the component.
518
+ * REVIEW: This property can be removed after migration to the new componend definition type.
519
+ */
520
+ contextVars?: Record<keyof TMd["contextVars"], string>;
521
+ }
522
+
523
+ /**
524
+ * This interface represents the core properties of a component definition (independent
525
+ * of component metadata).
526
+ */
527
+ declare interface ComponentDefCore {
528
+ type: string;
529
+ uid?: string;
530
+ testId?: string;
531
+ /**
532
+ * A component can define namespaces on it, with the <ComponentName xmlns:KEY="VALUE" /> syntax
533
+ * these are used later to resolve the `type` of the componentDef.
534
+ * <KEY:Button/> will have type `VALUE.Button` (joined with a "." (dot) )
535
+ */
536
+ namespaces?: Record<string, string>;
537
+ /**
538
+ * Though components manage their state internally, the app logic may require user state management.
539
+ * Components may have user *variables*, which the UI logic uses to manage the application state.
540
+ * This property holds the variables (name and value pairs) associated with this component definition.
541
+ */
542
+ vars?: Record<string, any>;
543
+ /**
544
+ * Each component may have child components to constitute a hierarchy of components. This property
545
+ * holds the definition of these nested children.
546
+ */
547
+ children?: ComponentDef[];
548
+ /**
549
+ * Components may have slots that can be filled with other components. This property holds the
550
+ * contents of the slots
551
+ */
552
+ slots?: Record<string, ComponentDef[]>;
553
+ /**
554
+ * This property is evaluated to a Boolean value during run time. When this value is `true`, the
555
+ * component with its children chain is rendered; otherwise, the entire component hierarchy is omitted
556
+ * from the rendered tree.
557
+ */
558
+ when?: string | boolean;
559
+ /**
560
+ * Some components work with data obtained asynchronously. Fetching this data requires some state
561
+ * management handling the complexity (including error handling) of data access. A *loader* is
562
+ * responsible for managing this logic. This property holds the loaders associated with this component
563
+ * definition.
564
+ */
565
+ loaders?: ComponentDef[];
566
+ /**
567
+ * Components may have functions that are used to perform some logic. This property holds the functions
568
+ * (name and function body) associated with this component definition.
569
+ */
570
+ functions?: Record<string, any>;
571
+ /**
572
+ * Components managing state through variables or loaders are wrapped with containers responsible
573
+ * for this job. Just as components, containers form a hierarchy. While working with this hierarchy,
574
+ * parent components may flow state values (key and value pairs) to their child containers. This
575
+ * property holds the name of state values to flow down to the direct child containers.
576
+ */
577
+ uses?: string[];
578
+ /**
579
+ * Arbitrary debug information that can be attached to a component definition.
580
+ * Current usage:
581
+ * - `debug: { source: { start: number, end: number } }` Ther start and end positions of of the source
582
+ * belonging to the particular component definition.
583
+ */
584
+ debug?: Record<string, any>;
585
+ }
586
+
587
+ /**
588
+ * Sometimes, components and compound components can both be used
589
+ */
590
+ export declare type ComponentLike = ComponentDef | CompoundComponentDef;
2
591
 
3
592
  /**
4
593
  * Components have metadata that the rendering engine uses to render the
@@ -65,29 +654,1295 @@ declare type ComponentPropertyMetadata = {
65
654
  isInternal?: boolean;
66
655
  };
67
656
 
68
- declare type DefaultThemeVars = Record<string | ThemeTone, string | Record<string, string>>;
657
+ declare type ComponentRegisteredCallbackFn = (component: ComponentRendererDef) => void;
69
658
 
70
- declare type IsValidFunction<T> = (propKey: string, propValue: T) => string | string[] | undefined | null;
659
+ declare interface ComponentRendererContextBase<TMd extends ComponentMetadata = ComponentMetadata> {
660
+ node: ComponentDef<TMd>;
661
+ state: ContainerState;
662
+ appContext?: AppContextObject;
663
+ renderChild: RenderChildFn;
664
+ layoutContext?: LayoutContext;
665
+ }
71
666
 
72
667
  /**
73
- * This type represents the description of a property value, which can be a string, a number,
74
- * or an object with a value and a description. This type is used in the metadata of a component.
668
+ * Components must be registered with a component registry so the engine can use them. This type
669
+ * collects the information held by the registry.
75
670
  */
76
- declare type PropertyValueDescription = string | number | {
77
- value: string | number;
78
- description: string;
671
+ export declare type ComponentRendererDef<T extends ComponentDef = any> = {
672
+ /**
673
+ * The component's type identifier. In the markup, the component must use this name to be recognized.
674
+ */
675
+ type: string;
676
+ /**
677
+ * This function renders the component from its definition to its React representation.
678
+ */
679
+ renderer: ComponentRendererFn<T>;
680
+ /**
681
+ * The metadata to use when rendering the component
682
+ */
683
+ metadata?: ComponentMetadata;
79
684
  };
80
685
 
81
- declare type PropertyValueType = "boolean" | "string" | "number" | "any" | "ComponentDef";
686
+ /**
687
+ * This function renders a component definition into a React component
688
+ */
689
+ declare type ComponentRendererFn<T extends ComponentDef> = (context: RendererContext<T>) => ReactNode;
690
+
691
+ declare type ComponentSize = (typeof sizeValues)[number];
82
692
 
83
693
  /**
84
- * This type describes one the available theme tones.
694
+ * XMLUI allows the creation of reusable components assembled from other XMLUI components (with markup).
695
+ * This type represents such components. The name `CompoundComponent` refers to the assembled nature
696
+ * of reusable components.
85
697
  */
86
- declare type ThemeTone = (typeof ThemeToneKeys)[number];
698
+ export declare interface CompoundComponentDef extends Scriptable {
699
+ /**
700
+ * Each compound component must have a unique name. The markup uses this name to refer to the
701
+ * particular compound component.
702
+ */
703
+ name: string;
704
+ /**
705
+ * Each compound component must have a single root component defining the component contents.
706
+ */
707
+ component: ComponentLike;
708
+ /**
709
+ * Compound components may provide an API that other components can use to interact with them. This
710
+ * property holds the API methods associated with this compound component definition.
711
+ */
712
+ api?: Record<string, any>;
713
+ /**
714
+ * This property holds the variables (name and value pairs) associated with this compound component
715
+ * definition.
716
+ */
717
+ vars?: Record<string, any>;
718
+ /**
719
+ * A component can define namespaces on it, with the <ComponentName xmlns:KEY="VALUE" /> syntax
720
+ * these are used later to resolve the `type` of the componentDef.
721
+ * <KEY:Button/> will have type `VALUE.Button` (joined with a "." (dot) )
722
+ */
723
+ namespaces?: Record<string, string>;
724
+ /**
725
+ * Arbitrary debug information that can be attached to a component definition.
726
+ * Current usage:
727
+ * - `debug: { source: { start: number, end: number } }` Ther start and end positions of of the source
728
+ * belonging to the particular component definition.
729
+ */
730
+ debug?: Record<string, any>;
731
+ }
732
+
733
+ declare interface ConditionalExpression extends ExpressionBase {
734
+ type: "CondE";
735
+ condition: Expression;
736
+ consequent: Expression;
737
+ alternate: Expression;
738
+ }
739
+
740
+ declare interface ConstStatement extends StatementBase {
741
+ type: "ConstS";
742
+ declarations: VarDeclaration[];
743
+ isExported?: boolean;
744
+ }
87
745
 
88
746
  /**
89
- * Each theme can have a light or a dark tone.
747
+ * We store the state application state in a hierarchical structure of containers. This type represents
748
+ * the state within a single container stored as key and value pairs.
90
749
  */
91
- declare const ThemeToneKeys: readonly ["light", "dark"];
750
+ declare type ContainerState = Record<string | symbol, any>;
751
+
752
+ declare interface ContinueStatement extends StatementBase {
753
+ type: "ContS";
754
+ }
755
+
756
+ /**
757
+ * Applications can contribute to the registry with their custom (third-party)
758
+ * and application-specific components and others. This type holds the
759
+ * definitions of these extra artifacts.
760
+ */
761
+ declare type ContributesDefinition = {
762
+ /**
763
+ * Native xmlui components that come with the app.
764
+ */
765
+ components?: ComponentRendererDef[];
766
+ /**
767
+ * Action functions that come with the app.
768
+ */
769
+ actions?: ActionRendererDef[];
770
+ /**
771
+ * Application-specific compound components that come with the app.
772
+ */
773
+ compoundComponents?: CompoundComponentDef[];
774
+ /**
775
+ * Themes that come with the app.
776
+ */
777
+ themes?: ThemeDefinition_2[];
778
+ };
779
+
780
+ /**
781
+ * This helper function creates a component renderer definition from its arguments.
782
+ * @param type The unique identifier of the component definition
783
+ * @param renderer The function that renders the component definition into a React node
784
+ * @param metadata Optional hints to help fix the rendering errors coming from invalid component property definitions
785
+ * @returns The view renderer definition composed of the arguments
786
+ */
787
+ export declare function createComponentRenderer<TMd extends ComponentMetadata>(type: string, metadata: TMd, renderer: ComponentRendererFn<ComponentDef<TMd>>): ComponentRendererDef;
788
+
789
+ export declare function createMetadata<TProps extends Record<string, ComponentPropertyMetadata>, TEvents extends Record<string, ComponentPropertyMetadata>, TContextVars extends Record<string, ComponentPropertyMetadata> = Record<string, any>, TApis extends Record<string, ComponentPropertyMetadata> = Record<string, any>>({ description, shortDescription, specializedFrom, status, props, events, contextVars, apis, nonVisual, opaque, themeVars, defaultThemeVars, toneSpecificThemeVars, allowArbitraryProps, docFolder, }: ComponentMetadata<TProps, TEvents, TContextVars, TApis>): ComponentMetadata<TProps, TEvents, TContextVars, TApis>;
790
+
791
+ export declare function d(description: string, availableValues?: readonly PropertyValueDescription[], valueType?: PropertyValueType, defaultValue?: any, isValid?: IsValidFunction<any>): ComponentPropertyMetadata;
792
+
793
+ declare type DefaultThemeVars = Record<string | ThemeTone_2, string | Record<string, string>>;
794
+
795
+ declare type DefaultValueDescriptor = (string | ThemeIdDescriptor)[];
796
+
797
+ declare interface Destructure extends DestructureBase {
798
+ type: "Destr";
799
+ arrayDestruct?: ArrayDestructure[];
800
+ objectDestruct?: ObjectDestructure[];
801
+ }
802
+
803
+ declare interface DestructureBase extends ExpressionBase {
804
+ id?: string;
805
+ arrayDestruct?: ArrayDestructure[];
806
+ objectDestruct?: ObjectDestructure[];
807
+ }
808
+
809
+ declare interface DoWhileStatement extends StatementBase {
810
+ type: "DoWS";
811
+ condition: Expression;
812
+ body: Statement;
813
+ }
814
+
815
+ /**
816
+ * Some components render their nested child components dynamically using the current context of
817
+ * their parents. For example, reusable components (`CompoundComponentDef`) have a `Slot`
818
+ * placeholder that marks the location where the children should be rendered. Other component types
819
+ * (e.g., `ApiBoundComponent` and `ContainerComponent`) use this dynamic rendering, too.
820
+ *
821
+ * This interface represents this functionality.
822
+ */
823
+ declare interface DynamicChildComponentDef extends ComponentDef {
824
+ /**
825
+ * This property holds a function that can render a particular child or children into a specific
826
+ * layout context.
827
+ */
828
+ renderChild: RenderChildFn;
829
+ /**
830
+ * This property holds the child component that should be rendered.
831
+ */
832
+ childToRender: ComponentDef;
833
+ }
834
+
835
+ declare interface EmptyStatement extends StatementBase {
836
+ type: "EmptyS";
837
+ }
838
+
839
+ /**
840
+ * This component serves as an error boundary; it catches any errors within
841
+ * the nested components
842
+ */
843
+ export declare class ErrorBoundary extends default_2.Component<Props, State> {
844
+ state: State;
845
+ /**
846
+ * This method implements the Error Boundaries for the React application.
847
+ * It is invoked if errors occur during the rendering phase of any lifecycle
848
+ * methods or children components.
849
+ */
850
+ static getDerivedStateFromError(error: Error): State;
851
+ /**
852
+ * Display any error in the console
853
+ * @param error Error object
854
+ * @param errorInfo Extra information about the error
855
+ */
856
+ componentDidCatch(error: Error, errorInfo: ErrorInfo): void;
857
+ /**
858
+ * Whenever the `restoreOnChangeOf` property of this component instance
859
+ * changes, we reset the state to "no error".
860
+ * @param prevProps Previous property values
861
+ * @param prevState Previous state
862
+ * @param snapshot Optional snapshot (not used in this component)
863
+ */
864
+ componentDidUpdate(prevProps: Readonly<Props>, prevState: Readonly<State>, snapshot?: any): void;
865
+ render(): string | number | boolean | Iterable<default_2.ReactNode> | JSX_2.Element;
866
+ }
867
+
868
+ declare type Expression = UnaryExpression | BinaryExpression | SequenceExpression | ConditionalExpression | FunctionInvocationExpression | MemberAccessExpression | CalculatedMemberAccessExpression | Identifier | Literal | ArrayLiteral | ObjectLiteral | SpreadExpression | AssignmentExpression | NoArgExpression | ArrowExpression | PrefixOpExpression | PostfixOpExpression | ReactiveVarDeclaration | VarDeclaration | Destructure | ObjectDestructure | ArrayDestructure | TemplateLiteralExpression;
869
+
870
+ declare interface ExpressionBase extends BaseNode {
871
+ value?: any;
872
+ parenthesized?: number;
873
+ valueScope?: any;
874
+ valueIndex?: string | number;
875
+ }
876
+
877
+ declare interface ExpressionStatement extends StatementBase {
878
+ type: "ExprS";
879
+ expression: Expression;
880
+ }
881
+
882
+ /**
883
+ * This type describes a font definition resource.
884
+ */
885
+ declare type FontDef = {
886
+ /**
887
+ * Specifies a name that will be used as the font face value for font properties
888
+ */
889
+ fontFamily: string;
890
+ /**
891
+ * A font-style value. Accepts two values to specify a range that is supported by a font-face,
892
+ * for example `font-style: oblique 20deg 50deg`
893
+ */
894
+ fontStyle?: string;
895
+ /**
896
+ * A font-weight value. Accepts two values to specify a range that is supported by a font-face,
897
+ * for example `font-weight: 100 900`
898
+ */
899
+ fontWeight?: string;
900
+ /**
901
+ * This property determines how a font face is displayed based on whether and when it is downloaded
902
+ * and ready to use.
903
+ */
904
+ fontDisplay?: string;
905
+ /**
906
+ * The mime type of the font file
907
+ */
908
+ format?: string;
909
+ /**
910
+ * Specifies references to font resources.
911
+ */
912
+ src: string;
913
+ } | string;
914
+
915
+ /**
916
+ * This type describes a font definition resource.
917
+ */
918
+ declare type FontDef_2 = {
919
+ /**
920
+ * Specifies a name that will be used as the font face value for font properties
921
+ */
922
+ fontFamily: string;
923
+ /**
924
+ * A font-style value. Accepts two values to specify a range that is supported by a font-face,
925
+ * for example `font-style: oblique 20deg 50deg`
926
+ */
927
+ fontStyle?: string;
928
+ /**
929
+ * A font-weight value. Accepts two values to specify a range that is supported by a font-face,
930
+ * for example `font-weight: 100 900`
931
+ */
932
+ fontWeight?: string;
933
+ /**
934
+ * This property determines how a font face is displayed based on whether and when it is downloaded
935
+ * and ready to use.
936
+ */
937
+ fontDisplay?: string;
938
+ /**
939
+ * The mime type of the font file
940
+ */
941
+ format?: string;
942
+ /**
943
+ * Specifies references to font resources.
944
+ */
945
+ src: string;
946
+ } | string;
947
+
948
+ declare interface ForInStatement extends StatementBase {
949
+ type: "ForInS";
950
+ varBinding: ForVarBinding;
951
+ id: string;
952
+ expression: Expression;
953
+ body: Statement;
954
+ keys?: string[];
955
+ keyIndex?: number;
956
+ }
957
+
958
+ declare interface ForOfStatement extends StatementBase {
959
+ type: "ForOfS";
960
+ varBinding: ForVarBinding;
961
+ id: string;
962
+ expression: Expression;
963
+ body: Statement;
964
+ iterator?: any;
965
+ }
966
+
967
+ declare interface ForStatement extends StatementBase {
968
+ type: "ForS";
969
+ init?: ExpressionStatement | LetStatement;
970
+ condition?: Expression;
971
+ update?: Expression;
972
+ body: Statement;
973
+ }
974
+
975
+ declare type ForVarBinding = "let" | "const" | "none";
976
+
977
+ declare interface FunctionDeclaration extends StatementBase {
978
+ type: "FuncD";
979
+ name?: string;
980
+ args: Expression[];
981
+ statement: BlockStatement;
982
+ isExported?: boolean;
983
+ closureContext?: BlockScope[];
984
+ }
985
+
986
+ declare interface FunctionInvocationExpression extends ExpressionBase {
987
+ type: "InvokeE";
988
+ object: Expression;
989
+ arguments: Expression[];
990
+ }
991
+
992
+ export declare function getColor(varName: string, format?: "hex" | "rgb" | "hsl"): string;
993
+
994
+ declare type GlobalProps = Record<string, any>;
995
+
996
+ export declare const Icon: default_2.ForwardRefExoticComponent<IconBaseProps & default_2.RefAttributes<unknown>>;
997
+
998
+ declare interface IconBaseProps extends default_2.SVGAttributes<SVGElement> {
999
+ children?: default_2.ReactNode;
1000
+ color?: string;
1001
+ title?: string;
1002
+ size?: string;
1003
+ isInline?: boolean;
1004
+ fallback?: string;
1005
+ layout?: CSSProperties;
1006
+ }
1007
+
1008
+ declare type IconPosition = (typeof iconPositionValues)[number];
1009
+
1010
+ declare const iconPositionValues: readonly ["start", "end"];
1011
+
1012
+ declare interface Identifier extends ExpressionBase {
1013
+ type: "IdE";
1014
+ name: string;
1015
+ isGlobal?: boolean;
1016
+ }
1017
+
1018
+ declare interface IfStatement extends StatementBase {
1019
+ type: "IfS";
1020
+ condition: Expression;
1021
+ thenBranch: Statement;
1022
+ elseBranch?: Statement;
1023
+ }
1024
+
1025
+ declare interface ImportDeclaration extends StatementBase {
1026
+ type: "ImportD";
1027
+ imports: Record<string, string>;
1028
+ moduleFile: string;
1029
+ module?: ScriptModule | null;
1030
+ }
1031
+
1032
+ declare type InterceptorOperationDef = {
1033
+ method: "get" | "post" | "put" | "delete";
1034
+ url: string | Array<string>;
1035
+ handler: string;
1036
+ requestShape?: any;
1037
+ responseShape?: any;
1038
+ pathParamTypes?: Record<string, string>;
1039
+ queryParamTypes?: Record<string, string>;
1040
+ successStatusCode?: number;
1041
+ };
1042
+
1043
+ declare type IsValidFunction<T> = (propKey: string, propValue: T) => string | string[] | undefined | null;
1044
+
1045
+ /**
1046
+ * Each component is rendered in a particular layout context (for example, within a stack). This
1047
+ * type provides information about that context and the operations that render children in it.
1048
+ */
1049
+ declare type LayoutContext<T extends ComponentDef = ComponentDef> = {
1050
+ /**
1051
+ * The type of the layout context
1052
+ */
1053
+ type?: string;
1054
+ /**
1055
+ * This function allows the React representation of a particular child node to be wrapped in
1056
+ * whatever React components to accommodate the current layout context. When the engine is about to
1057
+ * render children in a particular layout context, it checks the existence of this function.
1058
+ * If declared, the engine invokes it.
1059
+ * @param context Rendering context
1060
+ * @param renderedChild The React node representing the rendered child
1061
+ * @param metadata The metadata of the child component
1062
+ * @returns The wrapped React node
1063
+ */
1064
+ wrapChild?: (context: RendererContext<T>, renderedChild: ReactNode, metadata?: ComponentMetadata) => ReactNode;
1065
+ /**
1066
+ * Arbitrary props extending the layout context
1067
+ */
1068
+ [key: string]: any;
1069
+ };
1070
+
1071
+ declare interface LetStatement extends StatementBase {
1072
+ type: "LetS";
1073
+ declarations: VarDeclaration[];
1074
+ }
1075
+
1076
+ declare interface Literal extends ExpressionBase {
1077
+ type: "LitE";
1078
+ value: any;
1079
+ }
1080
+
1081
+ declare type LoggedInUserDto = {
1082
+ id: number;
1083
+ email: string;
1084
+ name: string;
1085
+ imageRelativeUrl: string;
1086
+ permissions: Record<string, string>;
1087
+ };
1088
+
1089
+ /**
1090
+ * This type represents the options to use for looking up actions.
1091
+ */
1092
+ declare type LookupActionOptions = {
1093
+ /**
1094
+ * This property (by default, true) indicates that any error should be signed while
1095
+ * executing an event handler. Set it to `false` to suppress error indication.
1096
+ */
1097
+ signError?: boolean;
1098
+ /**
1099
+ * We can use the event's name to get info about a particular event's progress. Note: Multiple
1100
+ * events can run simultaneously.
1101
+ */
1102
+ eventName?: string;
1103
+ /**
1104
+ * By default, we cache resolved action functions. This property signs that we don't want to cache
1105
+ * this function. Use true on one-off handlers, like the ones in Actions (e.g., `MutateAction`).
1106
+ */
1107
+ ephemeral?: boolean;
1108
+ /**
1109
+ * This property declares the script code to use as a default for a particular event handler.
1110
+ */
1111
+ defaultHandler?: string;
1112
+ };
1113
+
1114
+ /**
1115
+ * This function resolves an action by its name with the specified options and returns the action
1116
+ * function if found. Otherwise, return undefined.
1117
+ */
1118
+ declare type LookupAsyncFn = (action: string | undefined, actionOptions?: LookupActionOptions) => AsyncFunction | undefined;
1119
+
1120
+ /**
1121
+ * This function resolves an action by its name (within the component node that runs the action)
1122
+ * with the specified options and returns the action function if found. Otherwise, return undefined.
1123
+ */
1124
+ declare type LookupAsyncFnInner = (action: string | undefined,
1125
+ /**
1126
+ * The unique identifier of the container that the action is executed in.
1127
+ */
1128
+ uid: symbol, actionOptions?: LookupActionOptions) => AsyncFunction | undefined;
1129
+
1130
+ /**
1131
+ * This function retrieves an async function for a particular component's specified event to be
1132
+ * invoked as an event handler (`undefined` if the particular event handler is not defined).
1133
+ */
1134
+ declare type LookupEventHandlerFn<TMd extends ComponentMetadata = ComponentMetadata> = (eventName: keyof NonNullable<TMd["events"]>, actionOptions?: LookupActionOptions) => AsyncFunction | undefined;
1135
+
1136
+ /**
1137
+ * This function resolves a sync action by its name and returns the action function if it is found.
1138
+ * Otherwise, it returns undefined.
1139
+ */
1140
+ declare type LookupSyncFn = (action: string | undefined) => SyncFunction | undefined;
1141
+
1142
+ declare type MediaBreakpointType = "xs" | "sm" | "md" | "lg" | "xl" | "xxl";
1143
+
1144
+ declare type MediaSize = {
1145
+ phone: boolean;
1146
+ landscapePhone: boolean;
1147
+ tablet: boolean;
1148
+ desktop: boolean;
1149
+ largeDesktop: boolean;
1150
+ xlDesktop: boolean;
1151
+ smallScreen: boolean;
1152
+ largeScreen: boolean;
1153
+ size: MediaBreakpointType;
1154
+ sizeIndex: number;
1155
+ };
1156
+
1157
+ declare interface MemberAccessExpression extends ExpressionBase {
1158
+ type: "MembE";
1159
+ object: Expression;
1160
+ member: string;
1161
+ isOptional?: boolean;
1162
+ }
1163
+
1164
+ declare type Message = ValueOrFunction<Renderable, Toast>;
1165
+
1166
+ /**
1167
+ * Represents a module error
1168
+ */
1169
+ declare type ModuleErrors = Record<string, ScriptParserErrorMessage[]>;
1170
+
1171
+ declare interface NoArgExpression extends ExpressionBase {
1172
+ type: "NoArgE";
1173
+ }
1174
+
1175
+ declare type Node_2 = Statement | Expression | SwitchCase;
1176
+
1177
+ declare type NonCssLayoutProps = {
1178
+ horizontalAlignment?: string;
1179
+ verticalAlignment?: string;
1180
+ orientation?: string;
1181
+ };
1182
+
1183
+ declare interface ObjectDestructure extends DestructureBase {
1184
+ type: "ODestr";
1185
+ id: string;
1186
+ alias?: string;
1187
+ }
1188
+
1189
+ declare interface ObjectLiteral extends ExpressionBase {
1190
+ type: "OLitE";
1191
+ props: (SpreadExpression | [Expression, Expression])[];
1192
+ }
1193
+
1194
+ declare type OrientationOptions = (typeof orientationOptionValues)[number];
1195
+
1196
+ declare const orientationOptionValues: readonly ["horizontal", "vertical"];
1197
+
1198
+ declare interface ParentRenderContext {
1199
+ renderChild: RenderChildFn;
1200
+ children?: ComponentDef[];
1201
+ props?: Record<string, any>;
1202
+ }
1203
+
1204
+ /**
1205
+ * This function extracts CSS variables from the specified SCSS input. It uses a hack to convert the CSS input to JSON
1206
+ * and then calls a JSON parser to create the desired object.
1207
+ * @param scssStr The scss input
1208
+ */
1209
+ export declare function parseScssVar(scssStr: any): any;
1210
+
1211
+ declare interface PostfixOpExpression extends ExpressionBase {
1212
+ type: "PostfE";
1213
+ operator: PrefixOpSymbol;
1214
+ operand: Expression;
1215
+ }
1216
+
1217
+ declare interface PrefixOpExpression extends ExpressionBase {
1218
+ type: "PrefE";
1219
+ operator: PrefixOpSymbol;
1220
+ operand: Expression;
1221
+ }
1222
+
1223
+ declare type PrefixOpSymbol = "++" | "--";
1224
+
1225
+ /**
1226
+ * This type represents the description of a property value, which can be a string, a number,
1227
+ * or an object with a value and a description. This type is used in the metadata of a component.
1228
+ */
1229
+ declare type PropertyValueDescription = string | number | {
1230
+ value: string | number;
1231
+ description: string;
1232
+ };
1233
+
1234
+ declare type PropertyValueType = "boolean" | "string" | "number" | "any" | "ComponentDef";
1235
+
1236
+ /**
1237
+ * This type represents the properties of the error boundary
1238
+ */
1239
+ declare interface Props {
1240
+ /**
1241
+ * Child nodes within the boundary
1242
+ */
1243
+ children: ReactNode;
1244
+ /**
1245
+ * Whenever the value of this property changes, the boundary restores its "no error" state.
1246
+ */
1247
+ node?: ComponentLike;
1248
+ location?: string;
1249
+ }
1250
+
1251
+ declare type Props_2 = {
1252
+ children: ReactNode;
1253
+ orientation?: string;
1254
+ uid?: string;
1255
+ horizontalAlignment?: string;
1256
+ verticalAlignment?: string;
1257
+ style?: CSSProperties;
1258
+ reverse?: boolean;
1259
+ hoverContainer?: boolean;
1260
+ visibleOnHover?: boolean;
1261
+ onClick?: any;
1262
+ onMount?: any;
1263
+ };
1264
+
1265
+ declare interface ReactiveVarDeclaration extends ExpressionBase {
1266
+ type: "RVarD";
1267
+ id: string;
1268
+ expression: Expression;
1269
+ }
1270
+
1271
+ /**
1272
+ * This type represents a function that registers all API endpoints of a particular component.
1273
+ */
1274
+ export declare type RegisterComponentApiFn = (componentApi: ComponentApi) => void;
1275
+
1276
+ declare type RenderChildFn<L extends ComponentDef = ComponentDef> = (children?: ComponentDef | ComponentDef[] | DynamicChildComponentDef | DynamicChildComponentDef[] | string, layoutContext?: LayoutContext<L>, parentRenderContext?: ParentRenderContext, uidInfoRef?: RefObject<Record<string, any>>) => ReactNode | ReactNode[];
1277
+
1278
+ /**
1279
+ * This interface defines the renderer context for the exposed components of the XMLUI framework.
1280
+ */
1281
+ export declare interface RendererContext<TMd extends ComponentMetadata> extends ComponentRendererContextBase<TMd> {
1282
+ /**
1283
+ * The unique identifier of the component instance
1284
+ */
1285
+ uid: symbol;
1286
+ /**
1287
+ * A component invokes this function to change its internal state
1288
+ */
1289
+ updateState: UpdateStateFn;
1290
+ /**
1291
+ * When a component wants to access a property value (which may contain a binding expression to
1292
+ * evaluate), it must use this property to get the current value.
1293
+ */
1294
+ extractValue: ValueExtractor;
1295
+ /**
1296
+ * This function gets a physical resource URL according to the provided logical URL.
1297
+ */
1298
+ extractResourceUrl: (url?: string) => string | undefined;
1299
+ /**
1300
+ * This function gets an async executable function that handles an event.
1301
+ */
1302
+ lookupEventHandler: LookupEventHandlerFn<TMd>;
1303
+ /**
1304
+ * A component can register its APIs with this function
1305
+ */
1306
+ registerComponentApi: RegisterComponentApiFn;
1307
+ /**
1308
+ * This function obtains an action by its name with the specified options
1309
+ */
1310
+ lookupAction: LookupAsyncFn;
1311
+ /**
1312
+ * This function retrieves a sync function the component can use as a callback
1313
+ */
1314
+ lookupSyncCallback: LookupSyncFn;
1315
+ layoutCss: CSSProperties;
1316
+ layoutNonCss: NonCssLayoutProps;
1317
+ }
1318
+
1319
+ declare interface ReturnStatement extends StatementBase {
1320
+ type: "RetS";
1321
+ expression?: Expression;
1322
+ }
1323
+
1324
+ declare type SchemaDescriptor = {
1325
+ tables: Array<TableDescriptor>;
1326
+ relationships?: any;
1327
+ dtos?: any;
1328
+ };
1329
+
1330
+ /**
1331
+ * This interface holds the properties representing a scriptable component definition.
1332
+ */
1333
+ declare interface Scriptable {
1334
+ /**
1335
+ * This property holds the text defined in all <script> sections attached to a component.
1336
+ */
1337
+ script?: string;
1338
+ /**
1339
+ * This property holds the parsed form of scripts stored in code-behind files.
1340
+ */
1341
+ scriptCollected?: CollectedDeclarations;
1342
+ /**
1343
+ * This property holds errors coming from parsing the code-behind scripts.
1344
+ */
1345
+ scriptError?: any;
1346
+ }
1347
+
1348
+ /**
1349
+ * Represents a parsed and resolved module
1350
+ */
1351
+ declare type ScriptModule = {
1352
+ type: "ScriptModule";
1353
+ name: string;
1354
+ parent?: ScriptModule | null;
1355
+ exports: Map<string, any>;
1356
+ imports: Record<string, Record<string, any>>;
1357
+ importedModules: ScriptModule[];
1358
+ functions: Record<string, FunctionDeclaration>;
1359
+ statements: Statement[];
1360
+ executed: boolean;
1361
+ };
1362
+
1363
+ declare interface ScriptParserErrorMessage {
1364
+ code: ScriptParsingErrorCodes;
1365
+ text: string;
1366
+ position?: number;
1367
+ line?: number;
1368
+ column?: number;
1369
+ }
1370
+
1371
+ declare type ScriptParsingErrorCodes = "W001" | "W002" | "W003" | "W004" | "W005" | "W006" | "W007" | "W008" | "W009" | "W010" | "W011" | "W012" | "W013" | "W014" | "W015" | "W016" | "W017" | "W018" | "W019" | "W020" | "W021" | "W022" | "W023" | "W024" | "W025" | "W026" | "W027" | "W028" | "W029" | "W030" | "W031";
1372
+
1373
+ declare interface SequenceExpression extends ExpressionBase {
1374
+ type: "SeqE";
1375
+ expressions: Expression[];
1376
+ loose?: boolean;
1377
+ }
1378
+
1379
+ declare const sizeValues: string[];
1380
+
1381
+ export declare const Splitter: ({ initialPrimarySize, minPrimarySize, maxPrimarySize, orientation, children, style, swapped, floating, splitterTemplate, resize, }: SplitterProps) => JSX_2.Element;
1382
+
1383
+ declare type SplitterProps = {
1384
+ children: default_2.ReactNode[] | default_2.ReactNode;
1385
+ style?: default_2.CSSProperties;
1386
+ splitterTemplate?: default_2.ReactNode;
1387
+ orientation?: OrientationOptions;
1388
+ floating?: boolean;
1389
+ resize?: (sizes: [number, number]) => void;
1390
+ swapped?: boolean;
1391
+ initialPrimarySize?: string;
1392
+ minPrimarySize?: string;
1393
+ maxPrimarySize?: string;
1394
+ };
1395
+
1396
+ declare interface SpreadExpression extends ExpressionBase {
1397
+ type: "SpreadE";
1398
+ operand: Expression;
1399
+ }
1400
+
1401
+ export declare const Stack: ForwardRefExoticComponent<Props_2 & RefAttributes<any>>;
1402
+
1403
+ /**
1404
+ * This React component represents a standalone app that implements a web
1405
+ * application with xmlui components. A StandaloneApp instance uses a
1406
+ * AppRoot wrapped into an ApiInterceptor.
1407
+ *
1408
+ * AppRoot is responsible for rendering the app (using an internal
1409
+ * representation); ApiInterceptor can emulate some backend functionality
1410
+ * running in the browser.
1411
+ */
1412
+ export declare function StandaloneApp({ appDef, decorateComponentsWithTestId, debugEnabled, runtime, components: customComponents, componentManager, }: StandaloneAppProps): JSX_2.Element;
1413
+
1414
+ export declare type StandaloneAppDescription = {
1415
+ name?: string;
1416
+ version?: string;
1417
+ entryPoint?: ComponentLike;
1418
+ components?: CompoundComponentDef[];
1419
+ themes?: ThemeDefinition[];
1420
+ defaultTheme?: string;
1421
+ defaultTone?: string;
1422
+ resources?: Record<string, string>;
1423
+ resourceMap?: Record<string, string>;
1424
+ appGlobals?: Record<string, any>;
1425
+ apiInterceptor?: ApiInterceptorDefinition;
1426
+ sources?: Record<string, string>;
1427
+ };
1428
+
1429
+ declare type StandaloneAppProps = {
1430
+ appDef?: StandaloneAppDescription;
1431
+ decorateComponentsWithTestId?: boolean;
1432
+ debugEnabled?: boolean;
1433
+ runtime?: any;
1434
+ components?: ComponentRendererDef[];
1435
+ componentManager?: StandaloneComponentManager;
1436
+ };
1437
+
1438
+ /**
1439
+ * This class allows external component libraries to add their components to
1440
+ * the xmlui component registry. The framework resolves the components used
1441
+ * in an application markup with this registry.
1442
+ */
1443
+ declare class StandaloneComponentManager {
1444
+ subscriptions: Set<ComponentRegisteredCallbackFn>;
1445
+ registeredComponents: Array<ComponentRendererDef>;
1446
+ constructor();
1447
+ /**
1448
+ * You can add a callback function invoked whenever a new component is added
1449
+ * to the registry. When you register a new callback function, the component
1450
+ * manager automatically invokes it for all components already in the
1451
+ * registry.
1452
+ * @param cb Function to call when a new component is registered
1453
+ */
1454
+ subscribeToRegistrations(cb: ComponentRegisteredCallbackFn): void;
1455
+ /**
1456
+ * You can remove a function added by `subscribeToRegistrations`. After
1457
+ * calling this method, the particular callback function won't be invoked
1458
+ * for a new component registration.
1459
+ * @param cb Function to call when a new component is registered
1460
+ */
1461
+ unSubscribeFromRegistrations(cb: ComponentRegisteredCallbackFn): void;
1462
+ /**
1463
+ * Use this function to add a new component to the registry. Adding a new
1464
+ * component will invoke all callbacks that have already subscribed to the
1465
+ * component registration.
1466
+ * @param component The component to register. You can pass a single
1467
+ * component or an array of components.
1468
+ */
1469
+ registerComponent(component: ComponentRendererDef | ComponentRendererDef[]): void;
1470
+ }
1471
+
1472
+ export declare type StandaloneJsonConfig = {
1473
+ name?: string;
1474
+ appGlobals?: Record<string, any>;
1475
+ entryPoint?: string;
1476
+ components?: string[];
1477
+ themes?: string[];
1478
+ defaultTheme?: string;
1479
+ resources?: Record<string, string>;
1480
+ resourceMap?: Record<string, string>;
1481
+ apiInterceptor?: ApiInterceptorDefinition;
1482
+ };
1483
+
1484
+ /**
1485
+ * This function injects the StandaloneApp component into a React app. It looks
1486
+ * up a component with the "root" id as the host of the standalone app. If such
1487
+ * an element does not exist, it creates a `<div id="root">` element.
1488
+ * @param runtime The app's runtime representation
1489
+ * @param components The related component's runtime representation
1490
+ * @returns The content's root element
1491
+ */
1492
+ export declare function startApp(runtime: any, components: ComponentRendererDef[] | undefined, componentManager: StandaloneComponentManager): Root;
1493
+
1494
+ /**
1495
+ * This type represents the current state of the error boundary
1496
+ */
1497
+ declare type State = {
1498
+ hasError: boolean;
1499
+ error: Error | null;
1500
+ };
1501
+
1502
+ declare type Statement = BlockStatement | EmptyStatement | ExpressionStatement | ArrowExpressionStatement | LetStatement | ConstStatement | VarStatement | IfStatement | ReturnStatement | BreakStatement | ContinueStatement | WhileStatement | DoWhileStatement | ForStatement | ForInStatement | ForOfStatement | ThrowStatement | TryStatement | SwitchStatement | FunctionDeclaration | ImportDeclaration;
1503
+
1504
+ declare interface StatementBase extends BaseNode {
1505
+ guard?: boolean;
1506
+ removeBlockScope?: boolean;
1507
+ completeTryBlock?: boolean;
1508
+ completeCatchBlock?: boolean;
1509
+ completeFinallyBlock?: boolean;
1510
+ }
1511
+
1512
+ declare interface SwitchCase extends BaseNode {
1513
+ type: "SwitchC";
1514
+ caseExpression?: Expression;
1515
+ statements?: Statement[];
1516
+ }
1517
+
1518
+ declare interface SwitchStatement extends StatementBase {
1519
+ type: "SwitchS";
1520
+ expression: Expression;
1521
+ cases: SwitchCase[];
1522
+ }
1523
+
1524
+ /**
1525
+ * XMLUI executes some code synchronously. This type defines those functions' signature
1526
+ */
1527
+ declare type SyncFunction = (...args: any) => any;
1528
+
1529
+ declare type TableDescriptor = {
1530
+ name: string;
1531
+ fields?: Record<string, any>;
1532
+ pk: Array<string>;
1533
+ indexes?: Array<string>;
1534
+ };
1535
+
1536
+ declare interface TemplateLiteralExpression extends ExpressionBase {
1537
+ type: "TempLitE";
1538
+ segments: (Literal | Expression)[];
1539
+ }
1540
+
1541
+ /**
1542
+ * This type represents a theme definition object. Theme files can use this object's JSON-serialized
1543
+ * format to define an app theme; an app can have multiple theme files.
1544
+ */
1545
+ export declare interface ThemeDefinition extends ThemeDefinitionDetails {
1546
+ /**
1547
+ * Theme id
1548
+ */
1549
+ id: string;
1550
+ /**
1551
+ * Optional theme name
1552
+ */
1553
+ name?: string;
1554
+ /**
1555
+ * A theme can extend existing themes. The extension means that the theme variable values defined
1556
+ * in the new theme override the base theme's variable values.
1557
+ */
1558
+ extends?: string | Array<string>;
1559
+ /**
1560
+ * This property defines the tone-dependent theme variable values. When a theme variable value is
1561
+ * resolved, the common theme variable values are overridden with their theme-specific values.
1562
+ */
1563
+ tones?: Record<string | ThemeTone, ThemeDefinitionDetails>;
1564
+ }
1565
+
1566
+ /**
1567
+ * This type represents a theme definition object. Theme files can use this object's JSON-serialized
1568
+ * format to define an app theme; an app can have multiple theme files.
1569
+ */
1570
+ declare interface ThemeDefinition_2 extends ThemeDefinitionDetails_2 {
1571
+ /**
1572
+ * Theme id
1573
+ */
1574
+ id: string;
1575
+ /**
1576
+ * Optional theme name
1577
+ */
1578
+ name?: string;
1579
+ /**
1580
+ * A theme can extend existing themes. The extension means that the theme variable values defined
1581
+ * in the new theme override the base theme's variable values.
1582
+ */
1583
+ extends?: string | Array<string>;
1584
+ /**
1585
+ * This property defines the tone-dependent theme variable values. When a theme variable value is
1586
+ * resolved, the common theme variable values are overridden with their theme-specific values.
1587
+ */
1588
+ tones?: Record<string | ThemeTone_2, ThemeDefinitionDetails_2>;
1589
+ }
1590
+
1591
+ declare interface ThemeDefinitionDetails {
1592
+ themeVars?: Record<string, string>;
1593
+ resources?: Record<string, string | FontDef>;
1594
+ }
1595
+
1596
+ declare interface ThemeDefinitionDetails_2 {
1597
+ themeVars?: Record<string, string>;
1598
+ resources?: Record<string, string | FontDef_2>;
1599
+ }
1600
+
1601
+ declare type ThemeIdDescriptor = {
1602
+ id: string;
1603
+ defaultValue?: DefaultValueDescriptor;
1604
+ };
1605
+
1606
+ /**
1607
+ * When rendering any part of an XMLUI app, the styles to apply are enclosed in a theme scope.
1608
+ * Most apps use a single theme scope that includes all nodes within the root app node. However,
1609
+ * any app can use multiple theme scopes.
1610
+ *
1611
+ * The scope determines how the app applies styles to the particular section. This type defines
1612
+ * the properties of such a theme scope.
1613
+ */
1614
+ declare type ThemeScope = {
1615
+ /**
1616
+ * Gets the id of the scope's theme
1617
+ */
1618
+ activeThemeId: string;
1619
+ /**
1620
+ * Gets the current tone of the scope's theme
1621
+ */
1622
+ activeThemeTone: ThemeTone;
1623
+ /**
1624
+ * The HTML element that works as the root of the theme's scope.
1625
+ */
1626
+ root: HTMLElement | undefined;
1627
+ /**
1628
+ * The active theme in the current scope
1629
+ */
1630
+ activeTheme: ThemeDefinition;
1631
+ /**
1632
+ * This hash object stores the CSS theme variable names with their CSS values definition,
1633
+ * like "--xmlui-align-vertical-Text-sub": "sub";
1634
+ * "--xmlui-color-bg": "var(--xmlui-color-surface-50)"
1635
+ */
1636
+ themeStyles: Record<string, string>;
1637
+ /**
1638
+ * This hash object stores the theme variable names with their CSS values definition, like
1639
+ * "align-vertical-Text-sub": "sub"; "color-bg": "var(--xmlui-color-surface-50)".
1640
+ */
1641
+ themeVars: Record<string, string>;
1642
+ /**
1643
+ * This function retrieves the physical path of the provided resource. The path can be used
1644
+ * as a URL in HTML tags, like in the `src` attribute of `<img>`.
1645
+ * @param resourceString The recource name to resolve to an URL
1646
+ */
1647
+ getResourceUrl: (resourceString?: string) => string | undefined;
1648
+ /**
1649
+ * This function gets the value of the specified theme variable.
1650
+ * @param themeVar Theme variable name to resolve
1651
+ */
1652
+ getThemeVar: (themeVar: string) => string | undefined;
1653
+ };
1654
+
1655
+ /**
1656
+ * This type describes one the available theme tones.
1657
+ */
1658
+ declare type ThemeTone = (typeof ThemeToneKeys)[number];
1659
+
1660
+ /**
1661
+ * This type describes one the available theme tones.
1662
+ */
1663
+ declare type ThemeTone_2 = (typeof ThemeToneKeys_2)[number];
1664
+
1665
+ /**
1666
+ * Each theme can have a light or a dark tone.
1667
+ */
1668
+ declare const ThemeToneKeys: readonly ["light", "dark"];
1669
+
1670
+ /**
1671
+ * Each theme can have a light or a dark tone.
1672
+ */
1673
+ declare const ThemeToneKeys_2: readonly ["light", "dark"];
1674
+
1675
+ declare interface ThrowStatement extends StatementBase {
1676
+ type: "ThrowS";
1677
+ expression: Expression;
1678
+ }
1679
+
1680
+ declare type ToastHandler = (message: Message, options?: ToastOptions) => string;
1681
+
1682
+ /**
1683
+ * Converts the specified themeID to a CSS var string
1684
+ * @param c segment to convert
1685
+ */
1686
+ export declare function toCssVar(c: string | ThemeIdDescriptor): string;
1687
+
1688
+ declare type Token = {
1689
+ readonly text: string;
1690
+ readonly type: TokenType;
1691
+ readonly location: TokenLocation;
1692
+ };
1693
+
1694
+ declare interface TokenLocation {
1695
+ readonly startPosition: number;
1696
+ readonly endPosition: number;
1697
+ readonly startLine: number;
1698
+ readonly endLine: number;
1699
+ readonly startColumn: number;
1700
+ readonly endColumn: number;
1701
+ }
1702
+
1703
+ declare const enum TokenType {
1704
+ Eof = -1,
1705
+ Ws = -2,
1706
+ BlockComment = -3,
1707
+ EolComment = -4,
1708
+ Unknown = 0,
1709
+ LParent = 1,
1710
+ RParent = 2,
1711
+ Identifier = 3,
1712
+ Exponent = 4,
1713
+ Divide = 5,
1714
+ Multiply = 6,
1715
+ Remainder = 7,
1716
+ Plus = 8,
1717
+ Minus = 9,
1718
+ BitwiseXor = 10,
1719
+ BitwiseOr = 11,
1720
+ LogicalOr = 12,
1721
+ BitwiseAnd = 13,
1722
+ LogicalAnd = 14,
1723
+ IncOp = 15,
1724
+ DecOp = 16,
1725
+ Assignment = 17,
1726
+ AddAssignment = 18,
1727
+ SubtractAssignment = 19,
1728
+ ExponentAssignment = 20,
1729
+ MultiplyAssignment = 21,
1730
+ DivideAssignment = 22,
1731
+ RemainderAssignment = 23,
1732
+ ShiftLeftAssignment = 24,
1733
+ ShiftRightAssignment = 25,
1734
+ SignedShiftRightAssignment = 26,
1735
+ BitwiseAndAssignment = 27,
1736
+ BitwiseXorAssignment = 28,
1737
+ BitwiseOrAssignment = 29,
1738
+ LogicalAndAssignment = 30,
1739
+ LogicalOrAssignment = 31,
1740
+ NullCoalesceAssignment = 32,
1741
+ Semicolon = 33,
1742
+ Comma = 34,
1743
+ Colon = 35,
1744
+ LSquare = 36,
1745
+ RSquare = 37,
1746
+ QuestionMark = 38,
1747
+ NullCoalesce = 39,
1748
+ OptionalChaining = 40,
1749
+ BinaryNot = 41,
1750
+ LBrace = 42,
1751
+ RBrace = 43,
1752
+ Equal = 44,
1753
+ StrictEqual = 45,
1754
+ LogicalNot = 46,
1755
+ NotEqual = 47,
1756
+ StrictNotEqual = 48,
1757
+ LessThan = 49,
1758
+ LessThanOrEqual = 50,
1759
+ ShiftLeft = 51,
1760
+ GreaterThan = 52,
1761
+ GreaterThanOrEqual = 53,
1762
+ ShiftRight = 54,
1763
+ SignedShiftRight = 55,
1764
+ Dot = 56,
1765
+ Spread = 57,
1766
+ Global = 58,
1767
+ Backtick = 59,
1768
+ DollarLBrace = 60,
1769
+ Arrow = 61,
1770
+ DecimalLiteral = 62,
1771
+ HexadecimalLiteral = 63,
1772
+ BinaryLiteral = 64,
1773
+ RealLiteral = 65,
1774
+ StringLiteral = 66,
1775
+ Infinity = 67,
1776
+ NaN = 68,
1777
+ True = 69,
1778
+ False = 70,
1779
+ Typeof = 71,
1780
+ Null = 72,
1781
+ Undefined = 73,
1782
+ In = 74,
1783
+ Let = 75,
1784
+ Const = 76,
1785
+ Var = 77,
1786
+ If = 78,
1787
+ Else = 79,
1788
+ Return = 80,
1789
+ Break = 81,
1790
+ Continue = 82,
1791
+ Do = 83,
1792
+ While = 84,
1793
+ For = 85,
1794
+ Of = 86,
1795
+ Try = 87,
1796
+ Catch = 88,
1797
+ Finally = 89,
1798
+ Throw = 90,
1799
+ Switch = 91,
1800
+ Case = 92,
1801
+ Default = 93,
1802
+ Delete = 94,
1803
+ Function = 95,
1804
+ Export = 96,
1805
+ Import = 97,
1806
+ As = 98,
1807
+ From = 99
1808
+ }
1809
+
1810
+ export declare interface TreeNode {
1811
+ uid: string;
1812
+ key: string;
1813
+ path: any[];
1814
+ subPath?: string;
1815
+ displayName?: string;
1816
+ children?: TreeNode[];
1817
+ parentIds: string[];
1818
+ selectable: boolean;
1819
+ groupKey?: string;
1820
+ [x: string]: any;
1821
+ }
1822
+
1823
+ declare interface TryStatement extends StatementBase {
1824
+ type: "TryS";
1825
+ tryBlock: BlockStatement;
1826
+ catchBlock?: BlockStatement;
1827
+ catchVariable?: string;
1828
+ finallyBlock?: BlockStatement;
1829
+ }
1830
+
1831
+ declare interface UnaryExpression extends ExpressionBase {
1832
+ type: "UnaryE";
1833
+ operator: UnaryOpSymbols;
1834
+ operand: Expression;
1835
+ }
1836
+
1837
+ declare type UnaryOpSymbols = "+" | "-" | "~" | "!" | "typeof" | "delete";
1838
+
1839
+ /**
1840
+ * This function updates the state of a component.
1841
+ * @param componentState The new state of the component
1842
+ */
1843
+ declare type UpdateStateFn = (componentState: any, options?: any) => void;
1844
+
1845
+ export declare function useColors(...colorNames: (string | ColorDef)[]): Record<string, string>;
1846
+
1847
+ export declare function useTheme(): ThemeScope;
1848
+
1849
+ /**
1850
+ * This type represent the function that extracts the value from a component property
1851
+ */
1852
+ declare type ValueExtractor = {
1853
+ /**
1854
+ * Get a value (any) from a component property
1855
+ * @param expression Value expression
1856
+ * @param strict Strict matching?
1857
+ */
1858
+ (expression?: any, strict?: boolean): any;
1859
+ /**
1860
+ * Get a string value from an expression
1861
+ * @param expression Value expression
1862
+ */
1863
+ asString(expression?: any): string;
1864
+ /**
1865
+ * Get an optional string value from an expression
1866
+ * @param expression Value expression
1867
+ */
1868
+ asOptionalString(expression?: any): string | undefined;
1869
+ /**
1870
+ * Get an optional string value from an expression
1871
+ * @param expression Value expression
1872
+ */
1873
+ asOptionalStringArray(expression?: any): string[];
1874
+ /**
1875
+ * Get a display string value from an expression
1876
+ * @param expression Value expression
1877
+ */
1878
+ asDisplayText(expression?: any): string;
1879
+ /**
1880
+ * Get a number value from an expression
1881
+ * @param expression Value expression
1882
+ */
1883
+ asNumber(expression?: any): number;
1884
+ /**
1885
+ * Get an optional number value from an expression
1886
+ * @param expression Value expression
1887
+ * @param defValue Default value, if the parameter value is undefined
1888
+ */
1889
+ asOptionalNumber(expression?: any, defValue?: number): number;
1890
+ /**
1891
+ * Get a boolean value (JavaScript semantics) from an expression
1892
+ * @param expression Value expression
1893
+ */
1894
+ asBoolean(expression?: any): boolean;
1895
+ /**
1896
+ * Get an optional Boolean value from an expression
1897
+ * @param expression Value expression
1898
+ * @param defValue Default value, if the parameter value is undefined
1899
+ */
1900
+ asOptionalBoolean(expression?: any, defValue?: boolean): boolean;
1901
+ /**
1902
+ * Get a CSS size value from an expression
1903
+ * @param expression Value expression
1904
+ */
1905
+ asSize(expression?: any): string;
1906
+ };
1907
+
1908
+ declare interface VarDeclaration extends ExpressionBase {
1909
+ type: "VarD";
1910
+ id?: string;
1911
+ arrayDestruct?: ArrayDestructure[];
1912
+ objectDestruct?: ObjectDestructure[];
1913
+ expression?: Expression;
1914
+ }
1915
+
1916
+ declare interface VarStatement extends StatementBase {
1917
+ type: "VarS";
1918
+ declarations: ReactiveVarDeclaration[];
1919
+ }
1920
+
1921
+ declare interface WhileStatement extends StatementBase {
1922
+ type: "WhileS";
1923
+ condition: Expression;
1924
+ body: Statement;
1925
+ }
92
1926
 
93
1927
  export { }
1928
+
1929
+
1930
+ declare module "@tanstack/table-core" {
1931
+ interface TableMeta<TData extends RowData> {
1932
+ cellRenderer: (...args: any[]) => any;
1933
+ }
1934
+ interface ColumnMeta<TData extends RowData, TValue> {
1935
+ style?: CSSProperties;
1936
+ starSizedWidth?: string;
1937
+ accessorKey?: string;
1938
+ pinTo?: string;
1939
+ cellRenderer?: (row: any) => ReactNode;
1940
+ }
1941
+ }
1942
+
1943
+
1944
+ declare global {
1945
+ interface Window {
1946
+ TEST_ENV: StandaloneAppDescription | undefined;
1947
+ }
1948
+ }