xmlui 0.7.13 → 0.7.15

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 (392) hide show
  1. package/dist/{apiInterceptorWorker-BuZoKCP8.mjs → apiInterceptorWorker-yKpXImCG.mjs} +1 -1
  2. package/dist/{index-C8kHu1Bs.mjs → index-XNGGyvQ0.mjs} +9904 -9653
  3. package/dist/index.css +1 -1
  4. package/dist/scripts/bin/build.js +17 -7
  5. package/dist/scripts/bin/vite-ueml-plugin.js +17 -7
  6. package/dist/scripts/bin/viteConfig.js +17 -7
  7. package/dist/scripts/package.json +209 -0
  8. package/dist/scripts/src/abstractions/scripting/ScriptingSourceTreeExp.js +51 -0
  9. package/dist/scripts/src/components/APICall/APICall.js +74 -0
  10. package/dist/scripts/src/components/APICall/APICallNative.js +31 -0
  11. package/dist/scripts/src/components/Accordion/Accordion.js +78 -0
  12. package/dist/scripts/src/components/Accordion/AccordionContext.js +20 -0
  13. package/dist/scripts/src/components/Accordion/AccordionItem.js +28 -0
  14. package/dist/scripts/src/components/Accordion/AccordionItemNative.js +79 -0
  15. package/dist/scripts/src/components/Accordion/AccordionNative.js +122 -0
  16. package/dist/scripts/src/components/Alert/Alert.js +42 -0
  17. package/dist/scripts/src/components/Alert/AlertNative.js +8 -0
  18. package/dist/scripts/src/components/Animation/Animation.js +59 -0
  19. package/dist/scripts/src/components/Animation/AnimationNative.js +75 -0
  20. package/dist/scripts/src/components/App/App.js +76 -0
  21. package/dist/scripts/src/components/App/AppLayoutContext.js +49 -0
  22. package/dist/scripts/src/components/App/AppNative.js +204 -0
  23. package/dist/scripts/src/components/App/AppStateContext.js +9 -0
  24. package/dist/scripts/src/components/App/Sheet.js +99 -0
  25. package/dist/scripts/src/components/AppHeader/AppHeader.js +59 -0
  26. package/dist/scripts/src/components/AppHeader/AppHeaderNative.js +58 -0
  27. package/dist/scripts/src/components/AppState/AppState.js +26 -0
  28. package/dist/scripts/src/components/AppState/AppStateNative.js +24 -0
  29. package/dist/scripts/src/components/AutoComplete/AutoComplete.js +83 -0
  30. package/dist/scripts/src/components/AutoComplete/AutoCompleteContext.js +16 -0
  31. package/dist/scripts/src/components/AutoComplete/AutoCompleteNative.js +225 -0
  32. package/dist/scripts/src/components/Avatar/Avatar.js +47 -0
  33. package/dist/scripts/src/components/Avatar/AvatarNative.js +40 -0
  34. package/dist/scripts/src/components/Backdrop/Backdrop.js +31 -0
  35. package/dist/scripts/src/components/Backdrop/BackdropNative.js +14 -0
  36. package/dist/scripts/src/components/Badge/Badge.js +58 -0
  37. package/dist/scripts/src/components/Badge/BadgeNative.js +22 -0
  38. package/dist/scripts/src/components/BarChart/BarChart.js +49 -0
  39. package/dist/scripts/src/components/BarChart/BarChartNative.js +176 -0
  40. package/dist/scripts/src/components/Bookmark/Bookmark.js +23 -0
  41. package/dist/scripts/src/components/Bookmark/BookmarkNative.js +24 -0
  42. package/dist/scripts/src/components/Breakout/Breakout.js +16 -0
  43. package/dist/scripts/src/components/Breakout/BreakoutNative.js +12 -0
  44. package/dist/scripts/src/components/Button/Button.js +142 -0
  45. package/dist/scripts/src/components/Button/ButtonNative.js +88 -0
  46. package/dist/scripts/src/components/ButtonGroup/ButtonGroup.js +41 -0
  47. package/dist/scripts/src/components/ButtonGroup/ButtonGroupNative.js +8 -0
  48. package/dist/scripts/src/components/Card/Card.js +57 -0
  49. package/dist/scripts/src/components/Card/CardNative.js +26 -0
  50. package/dist/scripts/src/components/Carousel/Carousel.js +68 -0
  51. package/dist/scripts/src/components/Carousel/CarouselItem.js +16 -0
  52. package/dist/scripts/src/components/Carousel/CarouselItemNative.js +13 -0
  53. package/dist/scripts/src/components/Carousel/CarouselNative.js +163 -0
  54. package/dist/scripts/src/components/ChangeListener/ChangeListener.js +24 -0
  55. package/dist/scripts/src/components/ChangeListener/ChangeListenerNative.js +26 -0
  56. package/dist/scripts/src/components/Chart/Chart.js +24 -0
  57. package/dist/scripts/src/components/Chart/ChartNative.js +165 -0
  58. package/dist/scripts/src/components/Checkbox/Checkbox.js +68 -0
  59. package/dist/scripts/src/components/Column/Column.js +34 -0
  60. package/dist/scripts/src/components/Column/ColumnNative.js +38 -0
  61. package/dist/scripts/src/components/Column/TableContext.js +12 -0
  62. package/dist/scripts/src/components/ComponentProvider.js +503 -0
  63. package/dist/scripts/src/components/ComponentRegistryContext.js +44 -0
  64. package/dist/scripts/src/components/ContentSeparator/ContentSeparator.js +38 -0
  65. package/dist/scripts/src/components/ContentSeparator/ContentSeparatorNative.js +16 -0
  66. package/dist/scripts/src/components/DatePicker/DatePicker.js +62 -0
  67. package/dist/scripts/src/components/DatePicker/DatePickerNative.js +196 -0
  68. package/dist/scripts/src/components/DropdownMenu/DropdownMenu.js +125 -0
  69. package/dist/scripts/src/components/DropdownMenu/DropdownMenuNative.js +95 -0
  70. package/dist/scripts/src/components/EmojiSelector/EmojiSelector.js +26 -0
  71. package/dist/scripts/src/components/EmojiSelector/EmojiSelectorNative.js +52 -0
  72. package/dist/scripts/src/components/FileInput/FileInput.js +64 -0
  73. package/dist/scripts/src/components/FileInput/FileInputNative.js +128 -0
  74. package/dist/scripts/src/components/FileUploadDropZone/FileUploadDropZone.js +46 -0
  75. package/dist/scripts/src/components/FileUploadDropZone/FileUploadDropZoneNative.js +112 -0
  76. package/dist/scripts/src/components/FlowLayout/FlowLayout.js +53 -0
  77. package/dist/scripts/src/components/FlowLayout/FlowLayoutNative.js +108 -0
  78. package/dist/scripts/src/components/Footer/Footer.js +35 -0
  79. package/dist/scripts/src/components/Footer/FooterNative.js +20 -0
  80. package/dist/scripts/src/components/Form/Form.js +89 -0
  81. package/dist/scripts/src/components/Form/FormContext.js +9 -0
  82. package/dist/scripts/src/components/Form/FormNative.js +317 -0
  83. package/dist/scripts/src/components/Form/formActions.js +114 -0
  84. package/dist/scripts/src/components/FormItem/FormItem.js +125 -0
  85. package/dist/scripts/src/components/FormItem/FormItemNative.js +157 -0
  86. package/dist/scripts/src/components/FormItem/HelperText.js +27 -0
  87. package/dist/scripts/src/components/FormItem/ItemWithLabel.js +40 -0
  88. package/dist/scripts/src/components/FormItem/Validations.js +351 -0
  89. package/dist/scripts/src/components/FormSection/FormSection.js +41 -0
  90. package/dist/scripts/src/components/Heading/Heading.js +258 -0
  91. package/dist/scripts/src/components/Heading/HeadingNative.js +45 -0
  92. package/dist/scripts/src/components/HoverCard/HoverCard.js +19 -0
  93. package/dist/scripts/src/components/HoverCard/HovercardNative.js +44 -0
  94. package/dist/scripts/src/components/Icon/ApiIcon.js +10 -0
  95. package/dist/scripts/src/components/Icon/Attach.js +10 -0
  96. package/dist/scripts/src/components/Icon/Binding.js +11 -0
  97. package/dist/scripts/src/components/Icon/BoardIcon.js +7 -0
  98. package/dist/scripts/src/components/Icon/BoxIcon.js +10 -0
  99. package/dist/scripts/src/components/Icon/CheckIcon.js +7 -0
  100. package/dist/scripts/src/components/Icon/ChevronLeft.js +7 -0
  101. package/dist/scripts/src/components/Icon/ChevronRight.js +7 -0
  102. package/dist/scripts/src/components/Icon/CodeFileIcon.js +10 -0
  103. package/dist/scripts/src/components/Icon/CodeSandbox.js +10 -0
  104. package/dist/scripts/src/components/Icon/CompactListIcon.js +7 -0
  105. package/dist/scripts/src/components/Icon/ContentCopyIcon.js +7 -0
  106. package/dist/scripts/src/components/Icon/DatabaseIcon.js +11 -0
  107. package/dist/scripts/src/components/Icon/DocFileIcon.js +10 -0
  108. package/dist/scripts/src/components/Icon/DocIcon.js +10 -0
  109. package/dist/scripts/src/components/Icon/DotMenuHorizontalIcon.js +7 -0
  110. package/dist/scripts/src/components/Icon/DotMenuIcon.js +7 -0
  111. package/dist/scripts/src/components/Icon/EmailIcon.js +7 -0
  112. package/dist/scripts/src/components/Icon/EmptyFolderIcon.js +10 -0
  113. package/dist/scripts/src/components/Icon/ErrorIcon.js +7 -0
  114. package/dist/scripts/src/components/Icon/ExpressionIcon.js +10 -0
  115. package/dist/scripts/src/components/Icon/FillPlusCricleIcon.js +7 -0
  116. package/dist/scripts/src/components/Icon/FilterIcon.js +10 -0
  117. package/dist/scripts/src/components/Icon/FolderIcon.js +10 -0
  118. package/dist/scripts/src/components/Icon/GlobeIcon.js +7 -0
  119. package/dist/scripts/src/components/Icon/HomeIcon.js +7 -0
  120. package/dist/scripts/src/components/Icon/HyperLinkIcon.js +7 -0
  121. package/dist/scripts/src/components/Icon/Icon.js +32 -0
  122. package/dist/scripts/src/components/Icon/IconNative.js +102 -0
  123. package/dist/scripts/src/components/Icon/ImageFileIcon.js +10 -0
  124. package/dist/scripts/src/components/Icon/LinkIcon.js +7 -0
  125. package/dist/scripts/src/components/Icon/ListIcon.js +7 -0
  126. package/dist/scripts/src/components/Icon/LooseListIcon.js +7 -0
  127. package/dist/scripts/src/components/Icon/MoonIcon.js +10 -0
  128. package/dist/scripts/src/components/Icon/MoreOptionsIcon.js +7 -0
  129. package/dist/scripts/src/components/Icon/NoSortIcon.js +8 -0
  130. package/dist/scripts/src/components/Icon/PDFIcon.js +10 -0
  131. package/dist/scripts/src/components/Icon/PenIcon.js +7 -0
  132. package/dist/scripts/src/components/Icon/PhoneIcon.js +7 -0
  133. package/dist/scripts/src/components/Icon/PhotoIcon.js +10 -0
  134. package/dist/scripts/src/components/Icon/PlusIcon.js +7 -0
  135. package/dist/scripts/src/components/Icon/SearchIcon.js +7 -0
  136. package/dist/scripts/src/components/Icon/ShareIcon.js +10 -0
  137. package/dist/scripts/src/components/Icon/SortAscendingIcon.js +8 -0
  138. package/dist/scripts/src/components/Icon/SortDescendingIcon.js +8 -0
  139. package/dist/scripts/src/components/Icon/SunIcon.js +10 -0
  140. package/dist/scripts/src/components/Icon/TrashIcon.js +7 -0
  141. package/dist/scripts/src/components/Icon/TrendingDownIcon.js +10 -0
  142. package/dist/scripts/src/components/Icon/TrendingLevelIcon.js +10 -0
  143. package/dist/scripts/src/components/Icon/TrendingUpIcon.js +10 -0
  144. package/dist/scripts/src/components/Icon/TxtIcon.js +10 -0
  145. package/dist/scripts/src/components/Icon/UnknownFileIcon.js +10 -0
  146. package/dist/scripts/src/components/Icon/UnlinkIcon.js +10 -0
  147. package/dist/scripts/src/components/Icon/UserIcon.js +7 -0
  148. package/dist/scripts/src/components/Icon/WarningIcon.js +7 -0
  149. package/dist/scripts/src/components/Icon/XlsIcon.js +10 -0
  150. package/dist/scripts/src/components/IconInfoCard/IconInfoCard.js +39 -0
  151. package/dist/scripts/src/components/IconProvider.js +264 -0
  152. package/dist/scripts/src/components/IconRegistryContext.js +317 -0
  153. package/dist/scripts/src/components/Image/Image.js +35 -0
  154. package/dist/scripts/src/components/Image/ImageNative.js +15 -0
  155. package/dist/scripts/src/components/Input/InputAdornment.js +14 -0
  156. package/dist/scripts/src/components/Items/Items.js +33 -0
  157. package/dist/scripts/src/components/Items/ItemsNative.js +29 -0
  158. package/dist/scripts/src/components/Link/Link.js +64 -0
  159. package/dist/scripts/src/components/Link/LinkNative.js +26 -0
  160. package/dist/scripts/src/components/List/List.js +81 -0
  161. package/dist/scripts/src/components/List/ListNative.js +425 -0
  162. package/dist/scripts/src/components/Logo/Logo.js +16 -0
  163. package/dist/scripts/src/components/Logo/LogoNative.js +15 -0
  164. package/dist/scripts/src/components/Map/Map.js +75 -0
  165. package/dist/scripts/src/components/Map/world_countries.json +45307 -0
  166. package/dist/scripts/src/components/Markdown/Markdown.js +45 -0
  167. package/dist/scripts/src/components/Markdown/MarkdownNative.js +107 -0
  168. package/dist/scripts/src/components/ModalDialog/ConfirmationModalContextProvider.js +116 -0
  169. package/dist/scripts/src/components/ModalDialog/Dialog.js +20 -0
  170. package/dist/scripts/src/components/ModalDialog/ModalDialog.js +64 -0
  171. package/dist/scripts/src/components/ModalDialog/ModalDialogNative.js +167 -0
  172. package/dist/scripts/src/components/ModalDialog/ModalVisibilityContext.js +60 -0
  173. package/dist/scripts/src/components/NavGroup/NavGroup.js +34 -0
  174. package/dist/scripts/src/components/NavGroup/NavGroupNative.js +91 -0
  175. package/dist/scripts/src/components/NavLink/NavLink.js +71 -0
  176. package/dist/scripts/src/components/NavLink/NavLinkNative.js +61 -0
  177. package/dist/scripts/src/components/NavPanel/NavPanel.js +31 -0
  178. package/dist/scripts/src/components/NavPanel/NavPanelNative.js +74 -0
  179. package/dist/scripts/src/components/NoResult/NoResult.js +38 -0
  180. package/dist/scripts/src/components/NoResult/NoResultNative.js +13 -0
  181. package/dist/scripts/src/components/NumberBox/NumberBox.js +61 -0
  182. package/dist/scripts/src/components/NumberBox/NumberBoxNative.js +337 -0
  183. package/dist/scripts/src/components/NumberBox/numberbox-abstractions.js +74 -0
  184. package/dist/scripts/src/components/OffCanvas/OffCanvas.js +57 -0
  185. package/dist/scripts/src/components/OffCanvas/OffCanvasNative.js +48 -0
  186. package/dist/scripts/src/components/Option/Option.js +33 -0
  187. package/dist/scripts/src/components/Option/OptionTypeProvider.js +16 -0
  188. package/dist/scripts/src/components/PageHeader/PageHeader.js +36 -0
  189. package/dist/scripts/src/components/PageMetaTitle/PageMetaTilteNative.js +9 -0
  190. package/dist/scripts/src/components/PageMetaTitle/PageMetaTitle.js +18 -0
  191. package/dist/scripts/src/components/Pages/Pages.js +33 -0
  192. package/dist/scripts/src/components/Pages/PagesNative.js +69 -0
  193. package/dist/scripts/src/components/PieChart/PieChart.js +45 -0
  194. package/dist/scripts/src/components/PieChart/PieChartNative.js +165 -0
  195. package/dist/scripts/src/components/PositionedContainer/PositionedContainer.js +24 -0
  196. package/dist/scripts/src/components/PositionedContainer/PositionedContainerNative.js +14 -0
  197. package/dist/scripts/src/components/ProgressBar/ProgressBar.js +36 -0
  198. package/dist/scripts/src/components/ProgressBar/ProgressBarNative.js +12 -0
  199. package/dist/scripts/src/components/Queue/Queue.js +71 -0
  200. package/dist/scripts/src/components/Queue/QueueNative.js +278 -0
  201. package/dist/scripts/src/components/Queue/queueActions.js +87 -0
  202. package/dist/scripts/src/components/RadioGroup/RadioGroup.js +68 -0
  203. package/dist/scripts/src/components/RadioGroup/RadioGroupNative.js +104 -0
  204. package/dist/scripts/src/components/Range/Range.js +56 -0
  205. package/dist/scripts/src/components/Range/RangeNative.js +8 -0
  206. package/dist/scripts/src/components/RealTimeAdapter/RealTimeAdapter.js +21 -0
  207. package/dist/scripts/src/components/RealTimeAdapter/RealTimeAdapterNative.js +131 -0
  208. package/dist/scripts/src/components/Redirect/Redirect.js +20 -0
  209. package/dist/scripts/src/components/Select/OptionContext.js +12 -0
  210. package/dist/scripts/src/components/Select/Select.js +98 -0
  211. package/dist/scripts/src/components/Select/SelectContext.js +9 -0
  212. package/dist/scripts/src/components/Select/SelectNative.js +214 -0
  213. package/dist/scripts/src/components/SelectionStore/SelectionStore.js +22 -0
  214. package/dist/scripts/src/components/SelectionStore/SelectionStoreNative.js +94 -0
  215. package/dist/scripts/src/components/Slider/Slider.js +54 -0
  216. package/dist/scripts/src/components/Slider/SliderNative.js +8 -0
  217. package/dist/scripts/src/components/SpaceFiller/SpaceFiller.js +19 -0
  218. package/dist/scripts/src/components/SpaceFiller/SpaceFillerNative.js +10 -0
  219. package/dist/scripts/src/components/Spinner/Spinner.js +42 -0
  220. package/dist/scripts/src/components/Spinner/SpinnerNative.js +31 -0
  221. package/dist/scripts/src/components/Splitter/Splitter.js +89 -0
  222. package/dist/scripts/src/components/Splitter/SplitterNative.js +159 -0
  223. package/dist/scripts/src/components/Splitter/utils.js +17 -0
  224. package/dist/scripts/src/components/Stack/Stack.js +110 -0
  225. package/dist/scripts/src/components/Stack/StackNative.js +39 -0
  226. package/dist/scripts/src/components/StateViewer/StateViewerNative.js +19 -0
  227. package/dist/scripts/src/components/StickyBox/StickyBox.js +30 -0
  228. package/dist/scripts/src/components/StickyBox/StickyBoxNative.js +15 -0
  229. package/dist/scripts/src/components/Switch/Switch.js +72 -0
  230. package/dist/scripts/src/components/Table/Table.js +184 -0
  231. package/dist/scripts/src/components/Table/TableNative.js +470 -0
  232. package/dist/scripts/src/components/Table/useRowSelection.js +245 -0
  233. package/dist/scripts/src/components/TableHeader/TableHeader.js +34 -0
  234. package/dist/scripts/src/components/TableOfContents/TableOfContents.js +74 -0
  235. package/dist/scripts/src/components/TableOfContents/TableOfContentsNative.js +55 -0
  236. package/dist/scripts/src/components/Tabs/TabContext.js +45 -0
  237. package/dist/scripts/src/components/Tabs/TabItem.js +20 -0
  238. package/dist/scripts/src/components/Tabs/TabItemNative.js +24 -0
  239. package/dist/scripts/src/components/Tabs/Tabs.js +55 -0
  240. package/dist/scripts/src/components/Tabs/TabsNative.js +72 -0
  241. package/dist/scripts/src/components/Text/Text.js +122 -0
  242. package/dist/scripts/src/components/Text/TextNative.js +124 -0
  243. package/dist/scripts/src/components/TextArea/TextArea.js +65 -0
  244. package/dist/scripts/src/components/TextArea/TextAreaNative.js +176 -0
  245. package/dist/scripts/src/components/TextArea/TextAreaResizable.js +73 -0
  246. package/dist/scripts/src/components/TextArea/useComposedRef.js +60 -0
  247. package/dist/scripts/src/components/TextBox/TextBox.js +85 -0
  248. package/dist/scripts/src/components/TextBox/TextBoxNative.js +109 -0
  249. package/dist/scripts/src/components/Theme/NotificationToast.js +50 -0
  250. package/dist/scripts/src/components/Theme/Theme.js +43 -0
  251. package/dist/scripts/src/components/Theme/ThemeNative.js +126 -0
  252. package/dist/scripts/src/components/ThemeChanger/ThemeChanger.js +115 -0
  253. package/dist/scripts/src/components/ThemeChanger/ToneChangerButton.js +28 -0
  254. package/dist/scripts/src/components/Toggle/Toggle.js +99 -0
  255. package/dist/scripts/src/components/Toolbar/Toolbar.js +32 -0
  256. package/dist/scripts/src/components/ToolbarButton/ToolbarButton.js +38 -0
  257. package/dist/scripts/src/components/Tree/TreeComponent.js +32 -0
  258. package/dist/scripts/src/components/Tree/TreeNative.js +69 -0
  259. package/dist/scripts/src/components/TrendLabel/TrendLabel.js +37 -0
  260. package/dist/scripts/src/components/ValidationSummary/ValidationSummary.js +59 -0
  261. package/dist/scripts/src/components/abstractions.js +151 -0
  262. package/dist/scripts/src/components/chart-color-schemes.js +43 -0
  263. package/dist/scripts/src/components/component-utils.js +17 -0
  264. package/dist/scripts/src/components/container-helpers.js +25 -0
  265. package/dist/scripts/src/components/metadata-helpers.js +245 -0
  266. package/dist/scripts/src/components/slot-helpers.js +22 -0
  267. package/dist/scripts/src/components-core/ApiBoundComponent.js +194 -0
  268. package/dist/scripts/src/components-core/AppContext.js +16 -0
  269. package/dist/scripts/src/components-core/AppRoot.js +424 -0
  270. package/dist/scripts/src/components-core/ComponentBed.js +325 -0
  271. package/dist/scripts/src/components-core/ComponentDecorator.js +90 -0
  272. package/dist/scripts/src/components-core/CompoundComponent.js +144 -0
  273. package/dist/scripts/src/components-core/DebugViewProvider.js +43 -0
  274. package/dist/scripts/src/components-core/EngineError.js +91 -0
  275. package/dist/scripts/src/components-core/ErrorBoundary.js +59 -0
  276. package/dist/scripts/src/components-core/Fragment.js +15 -0
  277. package/dist/scripts/src/components-core/InspectorContext.js +176 -0
  278. package/dist/scripts/src/components-core/InvalidComponent.js +17 -0
  279. package/dist/scripts/src/components-core/LoaderComponent.js +92 -0
  280. package/dist/scripts/src/components-core/RestApiProxy.js +354 -0
  281. package/dist/scripts/src/components-core/ScrollContext.js +11 -0
  282. package/dist/scripts/src/components-core/Slot.js +17 -0
  283. package/dist/scripts/src/components-core/StandaloneApp.js +589 -0
  284. package/dist/scripts/src/components-core/StandaloneComponentManager.js +51 -0
  285. package/dist/scripts/src/components-core/TableOfContentsContext.js +110 -0
  286. package/dist/scripts/src/components-core/UnknownComponent.js +15 -0
  287. package/dist/scripts/src/components-core/XmluiCodeHighlighter.js +110 -0
  288. package/dist/scripts/src/components-core/abstractions/ComponentRenderer.js +2 -0
  289. package/dist/scripts/src/components-core/abstractions/LoaderRenderer.js +2 -0
  290. package/dist/scripts/src/components-core/abstractions/containers.js +18 -0
  291. package/dist/scripts/src/components-core/abstractions/standalone.js +2 -0
  292. package/dist/scripts/src/components-core/abstractions/treeAbstractions.js +2 -0
  293. package/dist/scripts/src/components-core/action/APICall.js +283 -0
  294. package/dist/scripts/src/components-core/action/FileDownloadAction.js +80 -0
  295. package/dist/scripts/src/components-core/action/FileUploadAction.js +88 -0
  296. package/dist/scripts/src/components-core/action/NavigateAction.js +20 -0
  297. package/dist/scripts/src/components-core/action/TimedAction.js +21 -0
  298. package/dist/scripts/src/components-core/action/actions.js +15 -0
  299. package/dist/scripts/src/components-core/appContext/date-functions.js +19 -0
  300. package/dist/scripts/src/components-core/appContext/math-function.js +27 -0
  301. package/dist/scripts/src/components-core/appContext/misc-utils.js +12 -0
  302. package/dist/scripts/src/components-core/component-hooks.js +25 -0
  303. package/dist/scripts/src/components-core/constants.js +18 -0
  304. package/dist/scripts/src/components-core/container/Container.js +1241 -0
  305. package/dist/scripts/src/components-core/container/buildProxy.js +54 -0
  306. package/dist/scripts/src/components-core/container/collectFnVarDeps.js +49 -0
  307. package/dist/scripts/src/components-core/container/valueExtractor.js +205 -0
  308. package/dist/scripts/src/components-core/descriptorHelper.js +72 -0
  309. package/dist/scripts/src/components-core/interception/ApiInterceptor.js +198 -0
  310. package/dist/scripts/src/components-core/interception/ApiInterceptorProvider.js +94 -0
  311. package/dist/scripts/src/components-core/interception/Backend.js +129 -0
  312. package/dist/scripts/src/components-core/interception/Errors.js +129 -0
  313. package/dist/scripts/src/components-core/interception/InMemoryDb.js +41 -0
  314. package/dist/scripts/src/components-core/interception/IndexedDb.js +205 -0
  315. package/dist/scripts/src/components-core/interception/ReadonlyCollection.js +145 -0
  316. package/dist/scripts/src/components-core/interception/abstractions.js +2 -0
  317. package/dist/scripts/src/components-core/interception/apiInterceptorWorker.js +46 -0
  318. package/dist/scripts/src/components-core/interception/useApiInterceptorContext.js +9 -0
  319. package/dist/scripts/src/components-core/loader/ApiLoader.js +54 -0
  320. package/dist/scripts/src/components-core/loader/DataLoader.js +149 -0
  321. package/dist/scripts/src/components-core/loader/ExternalDataLoader.js +62 -0
  322. package/dist/scripts/src/components-core/loader/Loader.js +126 -0
  323. package/dist/scripts/src/components-core/loader/MockLoaderRenderer.js +40 -0
  324. package/dist/scripts/src/components-core/loader/PageableLoader.js +262 -0
  325. package/dist/scripts/src/components-core/markup-check.js +279 -0
  326. package/dist/scripts/src/components-core/renderers.js +45 -0
  327. package/dist/scripts/src/components-core/reportEngineError.js +62 -0
  328. package/dist/scripts/src/components-core/script-runner/BindingTreeEvaluationContext.js +35 -0
  329. package/dist/scripts/src/components-core/script-runner/ICustomOperations.js +34 -0
  330. package/dist/scripts/src/components-core/script-runner/ParameterParser.js +117 -0
  331. package/dist/scripts/src/components-core/script-runner/asyncProxy.js +149 -0
  332. package/dist/scripts/src/components-core/script-runner/bannedFunctions.js +34 -0
  333. package/dist/scripts/src/components-core/script-runner/custom-operations-registry.js +40 -0
  334. package/dist/scripts/src/components-core/script-runner/custom-ui-data.js +40 -0
  335. package/dist/scripts/src/components-core/script-runner/eval-tree-async.js +593 -0
  336. package/dist/scripts/src/components-core/script-runner/eval-tree-common.js +497 -0
  337. package/dist/scripts/src/components-core/script-runner/eval-tree-sync.js +482 -0
  338. package/dist/scripts/src/components-core/script-runner/process-statement-async.js +766 -0
  339. package/dist/scripts/src/components-core/script-runner/process-statement-common.js +193 -0
  340. package/dist/scripts/src/components-core/script-runner/process-statement-sync.js +752 -0
  341. package/dist/scripts/src/components-core/script-runner/statement-queue.js +62 -0
  342. package/dist/scripts/src/components-core/script-runner/syncProxy.js +31 -0
  343. package/dist/scripts/src/components-core/script-runner/visitors.js +361 -0
  344. package/dist/scripts/src/components-core/theming/ThemeContext.js +53 -0
  345. package/dist/scripts/src/components-core/theming/ThemeProvider.js +335 -0
  346. package/dist/scripts/src/components-core/theming/abstractions.js +11 -0
  347. package/dist/scripts/src/components-core/theming/extendThemeUtils.js +114 -0
  348. package/dist/scripts/src/components-core/theming/hvar.js +105 -0
  349. package/dist/scripts/src/components-core/theming/themeVars.js +62 -0
  350. package/dist/scripts/src/components-core/theming/themes/base-utils.js +31 -0
  351. package/dist/scripts/src/components-core/theming/themes/palette.js +55 -0
  352. package/dist/scripts/src/components-core/theming/themes/root.js +287 -0
  353. package/dist/scripts/src/components-core/theming/themes/solid.js +16 -0
  354. package/dist/scripts/src/components-core/theming/themes/theme-colors.js +561 -0
  355. package/dist/scripts/src/components-core/theming/themes/xmlui.js +58 -0
  356. package/dist/scripts/src/components-core/theming/transformThemeVars.js +300 -0
  357. package/dist/scripts/src/components-core/utils/DataLoaderQueryKeyGenerator.js +35 -0
  358. package/dist/scripts/src/components-core/utils/LruCache.js +184 -0
  359. package/dist/scripts/src/components-core/utils/actionUtils.js +32 -0
  360. package/dist/scripts/src/components-core/utils/classnames.js +58 -0
  361. package/dist/scripts/src/components-core/utils/compound-utils.js +11 -0
  362. package/dist/scripts/src/components-core/utils/css-utils.js +163 -0
  363. package/dist/scripts/src/components-core/utils/date-utils.js +78 -0
  364. package/dist/scripts/src/components-core/utils/extractParam.js +148 -0
  365. package/dist/scripts/src/components-core/utils/hooks.js +249 -0
  366. package/dist/scripts/src/components-core/utils/mergeProps.js +45 -0
  367. package/dist/scripts/src/components-core/utils/misc.js +472 -0
  368. package/dist/scripts/src/components-core/utils/request-params.js +70 -0
  369. package/dist/scripts/src/components-core/utils/statementUtils.js +221 -0
  370. package/dist/scripts/src/components-core/utils/treeUtils.js +48 -0
  371. package/dist/scripts/src/index.js +69 -0
  372. package/dist/scripts/src/parsers/common/GenericToken.js +2 -0
  373. package/dist/scripts/src/parsers/scripting-exp/TokenType.js +112 -0
  374. package/dist/scripts/src/parsers/style-parser/StyleInputStream.js +39 -0
  375. package/dist/scripts/src/parsers/style-parser/StyleLexer.js +623 -0
  376. package/dist/scripts/src/parsers/style-parser/StyleParser.js +1036 -0
  377. package/dist/scripts/src/parsers/style-parser/errors.js +37 -0
  378. package/dist/scripts/src/parsers/style-parser/source-tree.js +2 -0
  379. package/dist/scripts/src/parsers/style-parser/style-compiler.js +558 -0
  380. package/dist/scripts/src/parsers/style-parser/tokens.js +43 -0
  381. package/dist/scripts/src/parsers/xmlui-parser/ParserError.js +7 -0
  382. package/dist/scripts/src/parsers/xmlui-parser/transform.js +80 -32
  383. package/dist/scripts/src/syntax/grammar.tmLanguage.json +328 -0
  384. package/dist/scripts/src/syntax/textMate/xmlui.json +630 -0
  385. package/dist/style.css +1 -1
  386. package/dist/xmlui-metadata.mjs +2676 -2608
  387. package/dist/xmlui-metadata.umd.js +16 -16
  388. package/dist/xmlui-standalone.umd.js +186 -186
  389. package/dist/xmlui.d.ts +1868 -13
  390. package/dist/xmlui.mjs +1 -1
  391. package/package.json +5 -5
  392. package/dist/xmlui.umd.js +0 -293
@@ -13,6 +13,8 @@ exports.onPrefixRegex = /^on[A-Z]/;
13
13
  const propAttrs = ["name", "value"];
14
14
  const CDATA_PREFIX_LEN = 9;
15
15
  const CDATA_POSTFIX_LEN = 3;
16
+ const NAMESPACE_SCHEME_COMPONENT = "component-ns";
17
+ const THIS_APP_NS = "app-ns";
16
18
  function nodeToComponentDef(node, originalGetText, fileId, moduleResolver = () => "") {
17
19
  const getText = (node) => {
18
20
  var _a;
@@ -30,15 +32,16 @@ function nodeToComponentDef(node, originalGetText, fileId, moduleResolver = () =
30
32
  return null;
31
33
  }
32
34
  const preppedElement = prepNode(element);
33
- const name = getTagName(element);
35
+ const name = getComponentName(element);
34
36
  if (!exports.UCRegex.test(name)) {
35
37
  reportError("T002");
36
38
  return null;
37
39
  }
38
40
  const usesStack = [];
41
+ const namespaceStack = [];
39
42
  return transformSingleElement(usesStack, preppedElement);
40
43
  function transformSingleElement(usesStack, node) {
41
- const name = getTagName(node);
44
+ const name = getNamespaceResolvedComponentName(node);
42
45
  const attrs = getAttributes(node).map(segmentAttr);
43
46
  let component;
44
47
  if (name === exports.COMPOUND_COMP_ID) {
@@ -54,7 +57,7 @@ function nodeToComponentDef(node, originalGetText, fileId, moduleResolver = () =
54
57
  }
55
58
  // --- Get "method" attributes
56
59
  let api;
57
- const apiAttrs = attrs.filter((attr) => refersToApi(attr.startSegment));
60
+ const apiAttrs = attrs.filter((attr) => attr.startSegment === "method");
58
61
  if (apiAttrs.length > 0) {
59
62
  api = {};
60
63
  apiAttrs.forEach((attr) => {
@@ -72,13 +75,13 @@ function nodeToComponentDef(node, originalGetText, fileId, moduleResolver = () =
72
75
  }
73
76
  const children = getChildNodes(node);
74
77
  // --- Check for nested component
75
- const nestedCompound = children.find((child) => child.kind === syntax_kind_1.SyntaxKind.ElementNode && getTagName(child) === exports.COMPOUND_COMP_ID);
78
+ const nestedCompound = children.find((child) => child.kind === syntax_kind_1.SyntaxKind.ElementNode && getComponentName(child) === exports.COMPOUND_COMP_ID);
76
79
  if (nestedCompound) {
77
80
  reportError("T006");
78
81
  return null;
79
82
  }
80
83
  // --- Get the single component definition
81
- const nestedComponents = children.filter((child) => child.kind === syntax_kind_1.SyntaxKind.ElementNode && exports.UCRegex.test(getTagName(child)));
84
+ const nestedComponents = children.filter((child) => child.kind === syntax_kind_1.SyntaxKind.ElementNode && exports.UCRegex.test(getComponentName(child)));
82
85
  if (nestedComponents.length === 0) {
83
86
  nestedComponents.push(createTextNodeElement(""));
84
87
  }
@@ -86,7 +89,7 @@ function nodeToComponentDef(node, originalGetText, fileId, moduleResolver = () =
86
89
  const nestedVars = [];
87
90
  for (let child of children) {
88
91
  if (child.kind === syntax_kind_1.SyntaxKind.ElementNode) {
89
- const childName = getTagName(child);
92
+ const childName = getComponentName(child);
90
93
  if (childName === "var") {
91
94
  nestedVars.push(child);
92
95
  }
@@ -160,6 +163,7 @@ function nodeToComponentDef(node, originalGetText, fileId, moduleResolver = () =
160
163
  var _a, _b;
161
164
  const isCompound = !isComponent(comp);
162
165
  const attributes = getAttributes(element);
166
+ namespaceStack.push(new Map());
163
167
  // --- Process attributes
164
168
  attributes.forEach((attr) => {
165
169
  // --- Process the attribute
@@ -187,7 +191,7 @@ function nodeToComponentDef(node, originalGetText, fileId, moduleResolver = () =
187
191
  comp.children = mergeValue(comp.children, getText(child));
188
192
  return;
189
193
  }
190
- const childName = getTagName(child);
194
+ const childName = getComponentName(child);
191
195
  if (isCompound && child.kind === syntax_kind_1.SyntaxKind.ElementNode && exports.UCRegex.test(childName)) {
192
196
  // --- This is the single nested component definition of a compound component,
193
197
  // --- it is already processed
@@ -264,6 +268,7 @@ function nodeToComponentDef(node, originalGetText, fileId, moduleResolver = () =
264
268
  return;
265
269
  }
266
270
  });
271
+ namespaceStack.pop();
267
272
  if (!comp.script || comp.script.trim().length === 0) {
268
273
  // --- No (or whitespace only) script
269
274
  return;
@@ -291,11 +296,15 @@ function nodeToComponentDef(node, originalGetText, fileId, moduleResolver = () =
291
296
  }
292
297
  function collectAttribute(comp, attr) {
293
298
  var _a, _b, _c, _d, _e;
294
- const { startSegment, name, value } = segmentAttr(attr);
299
+ const { namespace, startSegment, name, value } = segmentAttr(attr);
300
+ if (namespace === "xmlns") {
301
+ const nsKey = startSegment === undefined ? name : startSegment + name;
302
+ return addToNamespaces(namespaceStack, comp, nsKey, value);
303
+ }
295
304
  const isCompound = !isComponent(comp);
296
305
  // --- Handle single-word attributes
297
306
  if (isCompound) {
298
- if (startSegment && !refersToApi(startSegment) && startSegment !== "var") {
307
+ if (startSegment && startSegment !== "method" && startSegment !== "var") {
299
308
  reportError("T021");
300
309
  return;
301
310
  }
@@ -309,11 +318,6 @@ function nodeToComponentDef(node, originalGetText, fileId, moduleResolver = () =
309
318
  }
310
319
  return;
311
320
  }
312
- // --- Do not allow segmented attribute names
313
- if (name.indexOf(".") >= 0) {
314
- reportError("T007", name);
315
- return;
316
- }
317
321
  // --- Recognize special attributes by component definition type
318
322
  switch (name) {
319
323
  case "id":
@@ -330,7 +334,7 @@ function nodeToComponentDef(node, originalGetText, fileId, moduleResolver = () =
330
334
  (_a = comp.vars) !== null && _a !== void 0 ? _a : (comp.vars = {});
331
335
  comp.vars[name] = value;
332
336
  }
333
- else if (refersToApi(startSegment)) {
337
+ else if (startSegment === "method") {
334
338
  (_b = comp.api) !== null && _b !== void 0 ? _b : (comp.api = {});
335
339
  comp.api[name] = value;
336
340
  }
@@ -363,7 +367,7 @@ function nodeToComponentDef(node, originalGetText, fileId, moduleResolver = () =
363
367
  }
364
368
  if (child.kind !== syntax_kind_1.SyntaxKind.ElementNode)
365
369
  return;
366
- const childName = getTagName(child);
370
+ const childName = getComponentName(child);
367
371
  // --- The only element names we accept are "field" or "item"
368
372
  if (childName !== "field" && childName !== "item") {
369
373
  reportError("T016");
@@ -407,11 +411,11 @@ function nodeToComponentDef(node, originalGetText, fileId, moduleResolver = () =
407
411
  return result;
408
412
  }
409
413
  function collectValue(usesStack, element, allowName = true) {
410
- const elementName = getTagName(element);
414
+ const elementName = getComponentName(element);
411
415
  // --- Accept only "name", "value"
412
416
  const childNodes = getChildNodes(element);
413
- const nestedComponents = childNodes.filter((c) => c.kind === syntax_kind_1.SyntaxKind.ElementNode && exports.UCRegex.test(getTagName(c)));
414
- const nestedElements = childNodes.filter((c) => c.kind === syntax_kind_1.SyntaxKind.ElementNode && !exports.UCRegex.test(getTagName(c)));
417
+ const nestedComponents = childNodes.filter((c) => c.kind === syntax_kind_1.SyntaxKind.ElementNode && exports.UCRegex.test(getComponentName(c)));
418
+ const nestedElements = childNodes.filter((c) => c.kind === syntax_kind_1.SyntaxKind.ElementNode && !exports.UCRegex.test(getComponentName(c)));
415
419
  const attributes = getAttributes(element).map(segmentAttr);
416
420
  const attrProps = attributes.filter((attr) => propAttrs.indexOf(attr.name) >= 0);
417
421
  if (attributes.length > attrProps.length) {
@@ -552,10 +556,35 @@ function nodeToComponentDef(node, originalGetText, fileId, moduleResolver = () =
552
556
  // --- Extract the value
553
557
  (_a = comp.uses) !== null && _a !== void 0 ? _a : (comp.uses = valueAttr.value.split(",").map((v) => v.trim()));
554
558
  }
555
- function getTagName(node) {
559
+ function getComponentName(node) {
556
560
  const nameTokens = node.children.find((c) => c.kind === syntax_kind_1.SyntaxKind.TagNameNode).children;
557
- const name = nameTokens[nameTokens.length - 1];
558
- return getText(name);
561
+ const name = getText(nameTokens.at(-1));
562
+ return name;
563
+ }
564
+ function getNamespaceResolvedComponentName(node) {
565
+ const nameTokens = node.children.find((c) => c.kind === syntax_kind_1.SyntaxKind.TagNameNode).children;
566
+ const name = getText(nameTokens.at(-1));
567
+ if (nameTokens.length === 1) {
568
+ return name;
569
+ }
570
+ const namespace = getText(nameTokens[0]);
571
+ if (namespaceStack.length === 0) {
572
+ reportError("T026");
573
+ }
574
+ let resolvedNamespace = undefined;
575
+ for (let i = namespaceStack.length - 1; i >= 0; --i) {
576
+ resolvedNamespace = namespaceStack[i].get(namespace);
577
+ if (resolvedNamespace !== undefined) {
578
+ break;
579
+ }
580
+ }
581
+ if (resolvedNamespace === undefined) {
582
+ reportError("T027", namespace);
583
+ }
584
+ if (resolvedNamespace === THIS_APP_NS) {
585
+ return name;
586
+ }
587
+ return resolvedNamespace + "." + name;
559
588
  }
560
589
  function segmentAttr(attr) {
561
590
  let key = attr.children[0];
@@ -579,7 +608,7 @@ function nodeToComponentDef(node, originalGetText, fileId, moduleResolver = () =
579
608
  }
580
609
  const valueText = getText(attr.children[2]);
581
610
  const value = valueText.substring(1, valueText.length - 1);
582
- return { startSegment, name, value };
611
+ return { namespace, startSegment, name, value };
583
612
  }
584
613
  function parseEscapeCharactersInAttrValues(attrs) {
585
614
  for (let attr of attrs) {
@@ -592,10 +621,10 @@ function nodeToComponentDef(node, originalGetText, fileId, moduleResolver = () =
592
621
  }
593
622
  function prepNode(node) {
594
623
  const childNodes = getChildNodes(node);
595
- const tagName = getTagName(node);
624
+ const tagName = getComponentName(node);
596
625
  const hasComponentName = exports.UCRegex.test(tagName);
597
626
  const shouldUseTextNodeElement = hasComponentName || tagName === "property";
598
- const shouldCollapseWhitespace = tagName !== "event" && !refersToApi(tagName);
627
+ const shouldCollapseWhitespace = tagName !== "event" && tagName !== "method";
599
628
  const attrs = getAttributes(node);
600
629
  desugarKeyOnlyAttrs(attrs);
601
630
  desugarQuotelessAttrs(attrs, getText);
@@ -641,10 +670,10 @@ function nodeToComponentDef(node, originalGetText, fileId, moduleResolver = () =
641
670
  }
642
671
  childNodes[i] = newChild;
643
672
  }
644
- const helperNodes = childNodes.filter((c) => c.kind === syntax_kind_1.SyntaxKind.ElementNode && !exports.UCRegex.test(getTagName(c)));
673
+ const helperNodes = childNodes.filter((c) => c.kind === syntax_kind_1.SyntaxKind.ElementNode && !exports.UCRegex.test(getComponentName(c)));
645
674
  const otherNodes = childNodes.filter((c) => c.kind !== syntax_kind_1.SyntaxKind.ElementNode ||
646
- (c.kind === syntax_kind_1.SyntaxKind.ElementNode && exports.UCRegex.test(getTagName(c))));
647
- const hasComponentChild = otherNodes.some((c) => c.kind === syntax_kind_1.SyntaxKind.ElementNode && exports.UCRegex.test(getTagName(c)));
675
+ (c.kind === syntax_kind_1.SyntaxKind.ElementNode && exports.UCRegex.test(getComponentName(c))));
676
+ const hasComponentChild = otherNodes.some((c) => c.kind === syntax_kind_1.SyntaxKind.ElementNode && exports.UCRegex.test(getComponentName(c)));
648
677
  if (hasScriptChild && hasComponentChild) {
649
678
  const fragment = wrapWithFragment(otherNodes);
650
679
  helperNodes.push(fragment);
@@ -985,8 +1014,27 @@ function desugarQuotelessAttrs(attrs, getText) {
985
1014
  }
986
1015
  }
987
1016
  }
988
- /** Temporarily using 'method' as an alias to 'api'.
989
- * In the future, 'api' may be completely removed.*/
990
- function refersToApi(word) {
991
- return word === "method";
1017
+ function addToNamespaces(namespaceStack, comp, nsKey, value) {
1018
+ var _a;
1019
+ let nsCommaSeparated = value.split(":");
1020
+ if (nsCommaSeparated.length > 2) {
1021
+ return reportError("T028", value);
1022
+ }
1023
+ let nsValue = value;
1024
+ if (nsCommaSeparated.length === 2) {
1025
+ if (nsCommaSeparated[0] != NAMESPACE_SCHEME_COMPONENT) {
1026
+ return reportError("T029", value, NAMESPACE_SCHEME_COMPONENT);
1027
+ }
1028
+ nsValue = nsCommaSeparated[1];
1029
+ }
1030
+ if (!exports.UCRegex.test(nsKey)) {
1031
+ return reportError("T031", nsKey);
1032
+ }
1033
+ const compNamespaces = namespaceStack[namespaceStack.length - 1];
1034
+ if (compNamespaces.has(nsKey)) {
1035
+ return reportError("T025", nsKey);
1036
+ }
1037
+ compNamespaces.set(nsKey, nsValue);
1038
+ (_a = comp.namespaces) !== null && _a !== void 0 ? _a : (comp.namespaces = {});
1039
+ comp.namespaces[nsKey] = nsValue;
992
1040
  }
@@ -0,0 +1,328 @@
1
+ {
2
+ "name": "xmlui",
3
+ "scopeName": "source.xmlui",
4
+ "patterns": [{ "include": "#root" }],
5
+ "repository": {
6
+ "root": {
7
+ "patterns": [
8
+ { "include": "#comments" },
9
+ { "include": "#helperTag" },
10
+ { "include": "#componentTag" },
11
+ { "include": "#escapeCharacter" },
12
+ { "include": "#textWithBindingExpr" },
13
+ { "include": "#entity" },
14
+ {
15
+ "begin": "(<!\\[)(CDATA)(\\[)",
16
+ "beginCaptures": {
17
+ "1": { "name": "punctuation.definition.tag.xmlui" },
18
+ "2": { "name": "storage.xmlui" },
19
+ "3": { "name": "punctuation.definition.tag.xmlui" }
20
+ },
21
+ "end": "]]>",
22
+ "endCaptures": {
23
+ "0": { "name": "punctuation.definition.tag.xmlui" }
24
+ },
25
+ "contentName": "string.unquoted.cdata.xmlui"
26
+ }
27
+ ]
28
+ },
29
+ "apiTag": {
30
+ "begin": "(<)((?:[a-zA-Z_][\\w\\.\\-]*?:)?)(method|api)",
31
+ "beginCaptures": {
32
+ "1": { "name": "punctuation.definition.tag.xmlui" },
33
+ "2": { "name": "keyword.operator.namespace.xmlui" },
34
+ "3": { "name": "entity.name.tag.localname.xmlui" }
35
+ },
36
+ "endCaptures": {
37
+ "0": { "name": "punctuation.definition.tag.xmlui" }
38
+ },
39
+ "applyEndPatternLast": "1",
40
+ "patterns": [
41
+ { "include": "#comments" },
42
+ { "include": "#valueAttributeScriptInside" },
43
+ { "include": "#attribute" },
44
+ {
45
+ "begin": "(?<!/|(?:/\\s*(?:api|method))\\s*)>",
46
+ "beginCaptures": {
47
+ "0": {
48
+ "name": "punctuation.definition.tag.xmlui"
49
+ }
50
+ },
51
+ "endCaptures": {
52
+ "1": { "name": "punctuation.definition.tag.xmlui" },
53
+ "2": { "name": "keyword.operator.namespace.xmlui" },
54
+ "3": { "name": "entity.name.tag.localname.xmlui" }
55
+ },
56
+ "contentName": "meta.embedded.block.javascript",
57
+ "patterns": [{ "include": "source.js" }],
58
+ "end": "(</)((?:[a-zA-Z_][\\w\\.\\-]*?:)?)(method|api)(?=\\s*>)"
59
+ }
60
+ ],
61
+ "end": "/?>"
62
+ },
63
+ "eventTag": {
64
+ "begin": "(<)((?:[a-zA-Z_][\\w\\.\\-]*?:)?)(event)",
65
+ "beginCaptures": {
66
+ "1": { "name": "punctuation.definition.tag.xmlui" },
67
+ "2": { "name": "keyword.operator.namespace.xmlui" },
68
+ "3": { "name": "entity.name.tag.localname.xmlui" }
69
+ },
70
+ "endCaptures": {
71
+ "0": { "name": "punctuation.definition.tag.xmlui" }
72
+ },
73
+ "applyEndPatternLast": "1",
74
+ "patterns": [
75
+ { "include": "#comments" },
76
+ { "include": "#valueAttributeScriptInside" },
77
+ { "include": "#attribute" },
78
+ {
79
+ "begin": "(?<!/|(?:/\\s*event)\\s*)(>)",
80
+ "beginCaptures": {
81
+ "0": {
82
+ "name": "punctuation.definition.tag.xmlui"
83
+ }
84
+ },
85
+ "endCaptures": {
86
+ "1": { "name": "punctuation.definition.tag.xmlui" },
87
+ "2": { "name": "keyword.operator.namespace.xmlui" },
88
+ "3": { "name": "entity.name.tag.localname.xmlui" }
89
+ },
90
+ "patterns": [{ "include": "#comments" }, { "include": "#componentTag" }, { "include": "source.js" }],
91
+ "end": "(</)((?:[a-zA-Z_][\\w\\.\\-]*?:)?)(event)(?=\\s*>)"
92
+ }
93
+ ],
94
+ "end": ">"
95
+ },
96
+ "fieldTag": {
97
+ "begin": "(<)((?:[a-zA-Z_][\\w\\.\\-]*?:)?)(field)",
98
+ "beginCaptures": {
99
+ "1": { "name": "punctuation.definition.tag.xmlui" },
100
+ "2": { "name": "keyword.operator.namespace.xmlui" },
101
+ "3": { "name": "entity.name.tag.localname.xmlui" }
102
+ },
103
+ "endCaptures": {
104
+ "0": { "name": "punctuation.definition.tag.xmlui" }
105
+ },
106
+ "applyEndPatternLast": "1",
107
+ "patterns": [
108
+ { "include": "#comments" },
109
+ { "include": "#valueAttributeScriptInside" },
110
+ { "include": "#attribute" },
111
+ {
112
+ "begin": "(?<!/|(?:/\\s*field)\\s*)(>)",
113
+ "beginCaptures": {
114
+ "0": {
115
+ "name": "punctuation.definition.tag.xmlui"
116
+ }
117
+ },
118
+ "endCaptures": {
119
+ "1": { "name": "punctuation.definition.tag.xmlui" },
120
+ "2": { "name": "keyword.operator.namespace.xmlui" },
121
+ "3": { "name": "entity.name.tag.localname.xmlui" }
122
+ },
123
+ "patterns": [{ "include": "#comments" }, { "include": "#componentTag" }, { "include": "source.js" }],
124
+ "end": "(</)((?:[a-zA-Z_][\\w\\.\\-]*?:)?)(field)(?=\\s*>)"
125
+ }
126
+ ],
127
+ "end": ">"
128
+ },
129
+ "itemTag": {
130
+ "begin": "(<)((?:[a-zA-Z_][\\w\\.\\-]*?:)?)(item)",
131
+ "beginCaptures": {
132
+ "1": { "name": "punctuation.definition.tag.xmlui" },
133
+ "2": { "name": "keyword.operator.namespace.xmlui" },
134
+ "3": { "name": "entity.name.tag.localname.xmlui" }
135
+ },
136
+ "endCaptures": {
137
+ "0": { "name": "punctuation.definition.tag.xmlui" }
138
+ },
139
+ "applyEndPatternLast": "1",
140
+ "patterns": [
141
+ { "include": "#comments" },
142
+ { "include": "#valueAttributeScriptInside" },
143
+ { "include": "#attribute" },
144
+ {
145
+ "begin": "(?<!/|(?:/\\s*item)\\s*)(>)",
146
+ "beginCaptures": {
147
+ "0": {
148
+ "name": "punctuation.definition.tag.xmlui"
149
+ }
150
+ },
151
+ "endCaptures": {
152
+ "1": { "name": "punctuation.definition.tag.xmlui" },
153
+ "2": { "name": "keyword.operator.namespace.xmlui" },
154
+ "3": { "name": "entity.name.tag.localname.xmlui" }
155
+ },
156
+ "patterns": [{ "include": "#comments" }, { "include": "#componentTag" }, { "include": "source.js" }],
157
+ "end": "(</)((?:[a-zA-Z_][\\w\\.\\-]*?:)?)(item)(?=\\s*>)"
158
+ }
159
+ ],
160
+ "end": ">"
161
+ },
162
+ "bindingExpr": {
163
+ "contentName": "meta.embedded.block.javascript",
164
+ "begin": "\\{",
165
+ "end": "\\}",
166
+ "beginCaptures": {
167
+ "0": { "name": "punctuation.definition.block.xmlui" }
168
+ },
169
+ "endCaptures": {
170
+ "0": { "name": "punctuation.definition.block.xmlui" }
171
+ },
172
+ "patterns": [{ "include": "source.js" }]
173
+ },
174
+ "helperTag": {
175
+ "patterns": [
176
+ { "include": "#scriptTag" },
177
+ { "include": "#eventTag" },
178
+ { "include": "#fieldTag" },
179
+ { "include": "#itemTag" },
180
+ { "include": "#apiTag" },
181
+ { "include": "#propOrVarTag" }
182
+ ]
183
+ },
184
+ "valueAttributeScriptInside": {
185
+ "patterns": [
186
+ {
187
+ "captures": {
188
+ "1": { "name": "entity.other.attribute-name.localname.xmlui" },
189
+ "2": { "name": "keyword.operator.xmlui" }
190
+ },
191
+ "match": "(?:^|\\s+)(value)(\\s*=)"
192
+ },
193
+ { "include": "#quotedStringJsInside" }
194
+ ]
195
+ },
196
+ "scriptTag": {
197
+ "begin": "(<)((?:[a-zA-Z_][\\w\\.\\-]*?:)?)(script)(\\s*>)",
198
+ "end": "(</)(\\2)(\\3)(\\s*>)",
199
+ "contentName": "meta.embedded.block.javascript",
200
+ "beginCaptures": {
201
+ "1": { "name": "punctuation.definition.tag.xmlui" },
202
+ "2": { "name": "keyword.operator.namespace.xmlui" },
203
+ "3": { "name": "entity.name.function.xmlui" },
204
+ "4": { "name": "punctuation.definition.tag.xmlui" }
205
+ },
206
+ "endCaptures": {
207
+ "1": { "name": "punctuation.definition.tag.xmlui" },
208
+ "2": { "name": "keyword.operator.namespace.xmlui" },
209
+ "3": { "name": "entity.name.function.xmlui" },
210
+ "4": { "name": "punctuation.definition.tag.xmlui" }
211
+ },
212
+ "patterns": [{ "include": "source.js" }]
213
+ },
214
+ "textWithBindingExpr": {
215
+ "patterns": [{ "include": "#escapeCharacter" }, { "include": "#entity" }, { "include": "#bindingExpr" }]
216
+ },
217
+ "propOrVarTag": {
218
+ "begin": "(</?)([a-zA-Z_][\\w\\.\\-]*?:)?((?:var)|(?:property)|(?:prop))",
219
+ "beginCaptures": {
220
+ "1": { "name": "punctuation.definition.tag.xmlui" },
221
+ "2": { "name": "keyword.operator.namespace.xmlui" },
222
+ "3": { "name": "entity.name.tag.localname.xmlui" }
223
+ },
224
+ "end": "(/?>)",
225
+ "endCaptures": {
226
+ "1": { "name": "punctuation.definition.tag.xmlui" }
227
+ },
228
+ "patterns": [{ "include": "#attribute" }, { "include": "#comments" }]
229
+ },
230
+ "componentTag": {
231
+ "begin": "(\\s*</?)((?:[a-zA-Z_][\\w\\.\\-]*?:)?)([A-Z][\\w\\.\\-]*)",
232
+ "beginCaptures": {
233
+ "1": { "name": "punctuation.definition.tag.xmlui" },
234
+ "2": { "name": "keyword.operator.namespace.xmlui" },
235
+ "3": { "name": "support.class.tag.component.xmlui" }
236
+ },
237
+ "end": "(/?>)",
238
+ "endCaptures": {
239
+ "1": { "name": "punctuation.definition.tag.xmlui" }
240
+ },
241
+ "patterns": [{ "include": "#comments" }, { "include": "#eventHandler" }, { "include": "#attribute" }]
242
+ },
243
+ "quotedStringJsInside": {
244
+ "begin": "\"|'|`",
245
+ "beginCaptures": {
246
+ "0": { "name": "string.xmlui" }
247
+ },
248
+ "end": "\\0",
249
+ "endCaptures": {
250
+ "0": { "name": "string.xmlui" }
251
+ },
252
+ "contentName": "meta.embedded.block.javascript",
253
+ "patterns": [{ "include": "source.js" }]
254
+ },
255
+ "entity": {
256
+ "captures": {
257
+ "1": { "name": "punctuation.definition.constant.xmlui" },
258
+ "2": { "name": "punctuation.definition.constant.xmlui" },
259
+ "3": { "name": "punctuation.definition.constant.xmlui" }
260
+ },
261
+ "match": "(&)((?:amp)|(?:lt)|(?:gt)|(?:quot)|(?:apos))(;)"
262
+ },
263
+ "eventHandler": {
264
+ "patterns": [
265
+ {
266
+ "captures": {
267
+ "1": { "name": "entity.other.attribute-name.localname.xmlui" },
268
+ "2": { "name": "keyword.operator.xmlui" }
269
+ },
270
+ "match": "(?:^|\\s+)(on[A-Z][-\\w.:$]*)(\\s*=)"
271
+ },
272
+ { "include": "#quotedStringJsInside" }
273
+ ]
274
+ },
275
+ "attribute": {
276
+ "patterns": [
277
+ {
278
+ "begin": "(?:^|\\s+)([a-zA-Z$_][-\\w.$]*(?::[a-zA-Z$_][-\\w.$]*)?)(\\s*=)(\\s*['\"`])",
279
+ "end": "\\3",
280
+ "beginCaptures": {
281
+ "1": { "name": "entity.other.attribute-name.localname.xmlui" },
282
+ "2": { "name": "keyword.operator.xmlui" },
283
+ "3": { "name": "string.xmlui" }
284
+ },
285
+ "endCaptures": {
286
+ "0": { "name": "string.xmlui" }
287
+ },
288
+ "contentName": "string.xmlui",
289
+ "patterns": [{ "include": "#textWithBindingExpr" }]
290
+ },
291
+ {
292
+ "match": "(?:^|\\s+)([a-zA-Z$_][-\\w.$]*(?::[a-zA-Z$_][-\\w.$]*)?)(\\s*=\\s*)([a-zA-Z$_][-\\w.$]*)",
293
+ "captures": {
294
+ "1": { "name": "entity.other.attribute-name.localname.xmlui" },
295
+ "2": { "name": "keyword.operator.xmlui" },
296
+ "3": { "name": "string.xmlui" }
297
+ }
298
+ },
299
+ {
300
+ "match": "([a-zA-Z$_][-\\w.$]*(?::[a-zA-Z$_][-\\w.$]*)?)",
301
+ "name": "entity.other.attribute-name.localname.xmlui"
302
+ }
303
+ ]
304
+ },
305
+ "escapeCharacter": {
306
+ "patterns": [
307
+ {
308
+ "match": "&(amp|gt|lt|apos|quot|nbsp);",
309
+ "name": "constant.character.escape.xmlui"
310
+ }
311
+ ]
312
+ },
313
+ "comments": {
314
+ "patterns": [
315
+ {
316
+ "begin": "<!--",
317
+ "captures": {
318
+ "0": {
319
+ "name": "punctuation.definition.comment.xmlui"
320
+ }
321
+ },
322
+ "end": "-->",
323
+ "name": "comment.block.xmlui"
324
+ }
325
+ ]
326
+ }
327
+ }
328
+ }