xmlui 0.9.59 → 0.9.61

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 (150) hide show
  1. package/dist/lib/{apiInterceptorWorker-BYU_Trhx.mjs → apiInterceptorWorker-DBv1IaN7.mjs} +1 -1
  2. package/dist/lib/{index-JqY6G28u.mjs → index-C9AUt7Ay.mjs} +3316 -3299
  3. package/dist/lib/index.css +1 -1
  4. package/dist/lib/language-server-web-worker.mjs +1 -1
  5. package/dist/lib/language-server.mjs +1 -1
  6. package/dist/lib/{metadata-utils-BXdiMJQN.mjs → metadata-utils-DJM8orNd.mjs} +1 -1
  7. package/dist/lib/{server-common-DGglaqCL.mjs → server-common-D0VA8gIv.mjs} +2 -2
  8. package/dist/lib/{transform-BboeJCuA.mjs → transform-BdB0APqE.mjs} +1203 -1109
  9. package/dist/lib/xmlui-parser.d.ts +45 -247
  10. package/dist/lib/xmlui-parser.mjs +2 -2
  11. package/dist/lib/{xmlui-serializer-D0p6Hyum.mjs → xmlui-serializer-COAfRndx.mjs} +1 -1
  12. package/dist/lib/xmlui.d.ts +52 -673
  13. package/dist/lib/xmlui.mjs +2 -2
  14. package/dist/metadata/{apiInterceptorWorker-CqXRCP46.mjs → apiInterceptorWorker-Bu81HvQB.mjs} +1 -1
  15. package/dist/metadata/{collectedComponentMetadata-BA6d7xt-.mjs → collectedComponentMetadata-Dzn97vOS.mjs} +6006 -5896
  16. package/dist/metadata/style.css +1 -1
  17. package/dist/metadata/xmlui-metadata.mjs +1 -1
  18. package/dist/metadata/xmlui-metadata.umd.js +94 -97
  19. package/dist/scripts/package.json +1 -1
  20. package/dist/scripts/src/abstractions/ComponentDefs.js +0 -8
  21. package/dist/scripts/src/abstractions/ThemingDefs.js +0 -9
  22. package/dist/scripts/src/components/APICall/APICall.js +30 -18
  23. package/dist/scripts/src/components/Accordion/Accordion.js +4 -3
  24. package/dist/scripts/src/components/Accordion/AccordionItem.js +10 -4
  25. package/dist/scripts/src/components/App/App.js +4 -3
  26. package/dist/scripts/src/components/AppHeader/AppHeader.js +1 -2
  27. package/dist/scripts/src/components/AppState/AppState.js +3 -3
  28. package/dist/scripts/src/components/AutoComplete/AutoComplete.js +6 -7
  29. package/dist/scripts/src/components/Avatar/Avatar.js +3 -3
  30. package/dist/scripts/src/components/Backdrop/Backdrop.js +1 -2
  31. package/dist/scripts/src/components/Badge/Badge.js +1 -2
  32. package/dist/scripts/src/components/Bookmark/Bookmark.js +2 -2
  33. package/dist/scripts/src/components/Breakout/Breakout.js +2 -2
  34. package/dist/scripts/src/components/Button/Button.js +1 -2
  35. package/dist/scripts/src/components/Card/Card.js +1 -2
  36. package/dist/scripts/src/components/Carousel/Carousel.js +6 -7
  37. package/dist/scripts/src/components/Carousel/CarouselItem.js +2 -2
  38. package/dist/scripts/src/components/ChangeListener/ChangeListener.js +1 -2
  39. package/dist/scripts/src/components/Charts/BarChart/BarChart.js +2 -2
  40. package/dist/scripts/src/components/Charts/DonutChart/DonutChart.js +2 -2
  41. package/dist/scripts/src/components/Charts/LabelList/LabelList.js +2 -2
  42. package/dist/scripts/src/components/Charts/Legend/Legend.js +2 -2
  43. package/dist/scripts/src/components/Charts/LineChart/LineChart.js +6 -6
  44. package/dist/scripts/src/components/Charts/PieChart/PieChart.js +3 -3
  45. package/dist/scripts/src/components/Checkbox/Checkbox.js +1 -2
  46. package/dist/scripts/src/components/CodeBlock/CodeBlock.js +2 -2
  47. package/dist/scripts/src/components/ColorPicker/ColorPicker.js +1 -2
  48. package/dist/scripts/src/components/Column/Column.js +2 -2
  49. package/dist/scripts/src/components/ContentSeparator/ContentSeparator.js +2 -2
  50. package/dist/scripts/src/components/DatePicker/DatePicker.js +2 -3
  51. package/dist/scripts/src/components/DropdownMenu/DropdownMenu.js +6 -7
  52. package/dist/scripts/src/components/EmojiSelector/EmojiSelector.js +2 -3
  53. package/dist/scripts/src/components/ExpandableItem/ExpandableItem.js +6 -7
  54. package/dist/scripts/src/components/FileInput/FileInput.js +14 -15
  55. package/dist/scripts/src/components/FileUploadDropZone/FileUploadDropZone.js +4 -4
  56. package/dist/scripts/src/components/FlowLayout/FlowLayout.js +2 -2
  57. package/dist/scripts/src/components/Footer/Footer.js +2 -2
  58. package/dist/scripts/src/components/Form/Form.js +12 -13
  59. package/dist/scripts/src/components/FormItem/FormItem.js +7 -8
  60. package/dist/scripts/src/components/FormSection/FormSection.js +7 -29
  61. package/dist/scripts/src/components/Heading/Heading.js +11 -11
  62. package/dist/scripts/src/components/HelloWorld/HelloWorld.js +1 -2
  63. package/dist/scripts/src/components/HoverCard/HoverCard.js +1 -2
  64. package/dist/scripts/src/components/HtmlTags/HtmlTags.js +297 -297
  65. package/dist/scripts/src/components/Icon/Icon.js +5 -5
  66. package/dist/scripts/src/components/Image/Image.js +4 -5
  67. package/dist/scripts/src/components/InspectButton/InspectButton.js +2 -2
  68. package/dist/scripts/src/components/Items/Items.js +2 -3
  69. package/dist/scripts/src/components/Link/Link.js +3 -4
  70. package/dist/scripts/src/components/List/List.js +15 -16
  71. package/dist/scripts/src/components/Logo/Logo.js +2 -2
  72. package/dist/scripts/src/components/Markdown/Markdown.js +3 -3
  73. package/dist/scripts/src/components/Markdown/MarkdownNative.js +1 -2
  74. package/dist/scripts/src/components/Markdown/parse-binding-expr.js +1 -1
  75. package/dist/scripts/src/components/Markdown/utils.js +16 -6
  76. package/dist/scripts/src/components/ModalDialog/ModalDialog.js +9 -9
  77. package/dist/scripts/src/components/NavGroup/NavGroup.js +2 -3
  78. package/dist/scripts/src/components/NavLink/NavLink.js +3 -4
  79. package/dist/scripts/src/components/NavPanel/NavPanel.js +1 -2
  80. package/dist/scripts/src/components/NestedApp/AppWithCodeView.js +2 -2
  81. package/dist/scripts/src/components/NestedApp/AppWithCodeViewNative.js +5 -7
  82. package/dist/scripts/src/components/NestedApp/NestedApp.js +7 -3
  83. package/dist/scripts/src/components/NestedApp/NestedAppNative.js +4 -2
  84. package/dist/scripts/src/components/NoResult/NoResult.js +1 -2
  85. package/dist/scripts/src/components/NumberBox/NumberBox.js +5 -6
  86. package/dist/scripts/src/components/NumberBox/NumberBox2.js +5 -6
  87. package/dist/scripts/src/components/Option/Option.js +5 -5
  88. package/dist/scripts/src/components/PageMetaTitle/PageMetaTitle.js +2 -2
  89. package/dist/scripts/src/components/Pages/Pages.js +3 -4
  90. package/dist/scripts/src/components/PositionedContainer/PositionedContainer.js +3 -3
  91. package/dist/scripts/src/components/ProgressBar/ProgressBar.js +2 -2
  92. package/dist/scripts/src/components/Queue/Queue.js +16 -16
  93. package/dist/scripts/src/components/RadioGroup/RadioGroup.js +1 -2
  94. package/dist/scripts/src/components/RadioGroup/RadioItem.js +2 -2
  95. package/dist/scripts/src/components/RealTimeAdapter/RealTimeAdapter.js +3 -3
  96. package/dist/scripts/src/components/Redirect/Redirect.js +2 -2
  97. package/dist/scripts/src/components/Select/Select.js +6 -7
  98. package/dist/scripts/src/components/SelectionStore/SelectionStore.js +2 -2
  99. package/dist/scripts/src/components/Slider/Slider.js +4 -5
  100. package/dist/scripts/src/components/SpaceFiller/SpaceFiller.js +2 -2
  101. package/dist/scripts/src/components/Spinner/Spinner.js +2 -2
  102. package/dist/scripts/src/components/Splitter/Splitter.js +2 -3
  103. package/dist/scripts/src/components/Stack/Stack.js +1 -2
  104. package/dist/scripts/src/components/StickyBox/StickyBox.js +2 -2
  105. package/dist/scripts/src/components/Switch/Switch.js +1 -2
  106. package/dist/scripts/src/components/Table/Table.js +19 -20
  107. package/dist/scripts/src/components/TableOfContents/TableOfContents.js +2 -2
  108. package/dist/scripts/src/components/Tabs/TabItem.js +1 -2
  109. package/dist/scripts/src/components/Tabs/Tabs.js +4 -4
  110. package/dist/scripts/src/components/Text/Text.js +4 -4
  111. package/dist/scripts/src/components/TextArea/TextArea.js +4 -5
  112. package/dist/scripts/src/components/TextBox/TextBox.js +3 -4
  113. package/dist/scripts/src/components/Theme/Theme.js +4 -4
  114. package/dist/scripts/src/components/ToneChangerButton/ToneChangerButton.js +2 -2
  115. package/dist/scripts/src/components/Tree/TreeComponent.js +1 -2
  116. package/dist/scripts/src/components/TreeDisplay/TreeDisplay.js +2 -2
  117. package/dist/scripts/src/components/metadata-helpers.js +8 -0
  118. package/dist/scripts/src/components-core/Fragment.js +2 -2
  119. package/dist/scripts/src/components-core/LoaderComponent.js +1 -1
  120. package/dist/scripts/src/components-core/RestApiProxy.js +1 -1
  121. package/dist/scripts/src/components-core/Slot.js +3 -3
  122. package/dist/scripts/src/components-core/loader/ApiLoader.js +4 -4
  123. package/dist/scripts/src/components-core/loader/DataLoader.js +20 -20
  124. package/dist/scripts/src/components-core/loader/ExternalDataLoader.js +6 -6
  125. package/dist/scripts/src/components-core/loader/MockLoaderRenderer.js +4 -4
  126. package/dist/scripts/src/components-core/rendering/AppContent.js +2 -2
  127. package/dist/scripts/src/components-core/rendering/ComponentAdapter.js +1 -1
  128. package/dist/scripts/src/components-core/rendering/Container.js +2 -2
  129. package/dist/scripts/src/components-core/rendering/StateContainer.js +2 -2
  130. package/dist/scripts/src/components-core/rendering/reducer.js +1 -1
  131. package/dist/scripts/src/components-core/script-runner/ScriptingSourceTree.js +45 -0
  132. package/dist/scripts/src/components-core/script-runner/eval-tree-async.js +1 -1
  133. package/dist/scripts/src/components-core/script-runner/eval-tree-common.js +1 -1
  134. package/dist/scripts/src/components-core/script-runner/eval-tree-sync.js +1 -1
  135. package/dist/scripts/src/components-core/script-runner/process-statement-async.js +1 -1
  136. package/dist/scripts/src/components-core/script-runner/process-statement-common.js +1 -1
  137. package/dist/scripts/src/components-core/script-runner/process-statement-sync.js +1 -1
  138. package/dist/scripts/src/components-core/script-runner/visitors.js +1 -1
  139. package/dist/scripts/src/components-core/theming/ThemeProvider.js +2 -2
  140. package/dist/scripts/src/components-core/theming/utils.js +31 -0
  141. package/dist/scripts/src/components-core/utils/statementUtils.js +1 -1
  142. package/dist/scripts/src/parsers/scripting/Parser.js +1 -1
  143. package/dist/scripts/src/parsers/scripting/code-behind-collect.js +1 -1
  144. package/dist/scripts/src/parsers/scripting/modules.js +1 -1
  145. package/dist/scripts/src/parsers/scripting/tree-visitor.js +1 -1
  146. package/dist/standalone/xmlui-standalone.es.d.ts +52 -673
  147. package/dist/standalone/xmlui-standalone.umd.js +215 -218
  148. package/package.json +1 -1
  149. /package/dist/scripts/src/components-core/{abstractions → rendering}/containers.js +0 -0
  150. /package/dist/scripts/src/{abstractions/scripting/ScriptingSourceTree.js → parsers/scripting/ScriptingNodeTypes.js} +0 -0
@@ -19,35 +19,16 @@ import { Toast } from 'react-hot-toast';
19
19
  import { ToastOptions } from 'react-hot-toast';
20
20
  import { ValueOrFunction } from 'react-hot-toast';
21
21
 
22
- /**
23
- * This type represents the context in which an action is executed.
24
- */
25
22
  declare interface ActionExecutionContext {
26
- /**
27
- * A unique identifier for the container that the action is executed in.
28
- */
29
23
  uid: symbol;
30
- /**
31
- * The state of the container that the action is executed in.
32
- */
33
24
  state: ContainerState;
34
25
  getCurrentState: () => ContainerState;
35
- /**
36
- * The appContext object passed to the current app
37
- */
38
26
  appContext: AppContextObject;
39
- /**
40
- * The lookup function to resolve a sync action by its name.
41
- */
42
27
  lookupAction: LookupAsyncFnInner;
43
28
  navigate: any;
44
29
  location: any;
45
30
  }
46
31
 
47
- /**
48
- * This type represents a function that executes a particular action within the specified context
49
- * using the given arguments.
50
- */
51
32
  declare type ActionFunction = (executionContext: ActionExecutionContext, ...args: any[]) => any;
52
33
 
53
34
  declare type AlignmentOptions = (typeof alignmentOptionValues)[number];
@@ -74,196 +55,45 @@ declare function ApiInterceptorProvider({ interceptor, children, apiWorker, useH
74
55
  waitForApiInterceptor?: boolean;
75
56
  }): JSX_2.Element;
76
57
 
77
- /**
78
- * This interface defines the properties and services of an app context that the application components can use when
79
- * implementing their behavior.
80
- */
81
58
  declare type AppContextObject = {
82
- /**
83
- * Accept other methods
84
- */
85
59
  [x: string]: unknown;
86
60
  version: string;
87
61
  Actions: Record<string, ActionFunction>;
88
- /* Excluded from this release type: apiInterceptorContext */
89
- /**
90
- * This property returns a hash object containing all application-global settings
91
- * defined in the app's configuration file.
92
- */
62
+ apiInterceptorContext: IApiInterceptorContext;
93
63
  appGlobals?: Record<string, any>;
94
- /* Excluded from this release type: debugEnabled */
95
- /* Excluded from this release type: decorateComponentsWithTestId */
96
- /**
97
- * This property returns an object with some properties of the current environment.
98
- */
64
+ debugEnabled?: boolean;
65
+ decorateComponentsWithTestId?: boolean;
99
66
  environment: {
100
67
  isWindowFocused: boolean;
101
68
  };
102
- /**
103
- * This property returns an object with information about the current media size.
104
- */
105
69
  mediaSize: MediaSize;
106
- /* Excluded from this release type: queryClient */
107
- /**
108
- * This property returns `true` if the app is a standalone XMLUI app; otherwise
109
- * (for example, as part of a website), it returns `false`.
110
- */
70
+ queryClient: QueryClient | null;
111
71
  standalone?: boolean;
112
- /**
113
- * This function formats the specified value's date part into a local date string
114
- * (according to the machine's local settings).
115
- * @param date Date to format
116
- */
117
72
  formatDate: (date: string | Date) => string | undefined;
118
- /**
119
- * This function formats the specified value into a local
120
- * date and time string (according to the machine's local settings).
121
- * @param date Date to format
122
- */
123
73
  formatDateTime: (date: any) => string | undefined;
124
- /**
125
- * This function formats the specified value's date part (without year)
126
- * into a local date string (according to the machine's local settings).
127
- * @param date Date to format
128
- */
129
74
  formatDateWithoutYear: (date: string | Date) => string | undefined;
130
- /**
131
- * This function formats the specified value's time part into a local date
132
- * string (according to the machine's local settings).
133
- * @param date Date to format
134
- */
135
75
  formatTime: (date: any) => string | undefined;
136
- /**
137
- * This function formats the specified value's time part (without seconds)
138
- * into a local date string (according to the machine's local settings).
139
- * @param date Date to format
140
- */
141
76
  formatTimeWithoutSeconds: (date: string | Date) => string | undefined;
142
- /**
143
- * This function creates a date from the specified input value. If no input
144
- * is provided, it returns the current date and time.
145
- */
146
77
  getDate: (date?: string | number | Date) => Date;
147
- /**
148
- * This function calculates the difference between the current date and the
149
- * provided one and returns it in a human-readable form, such as "1 month", "2 weeks", etc.
150
- * @param date
151
- * @param nowLabel
152
- * @param time
153
- * @returns
154
- */
155
78
  getDateUntilNow: (date?: string | number | Date, nowLabel?: string, time?: string) => string;
156
- /**
157
- * This function converts the input string into a date value and returns
158
- * the ISO 8601 string representation of the date. It can pass dates between
159
- * the UI and backend APIs in a standard format.
160
- * @param date Date to format
161
- */
162
79
  isoDateString: (date?: string) => string;
163
- /**
164
- * This function checks if the specified date is today.
165
- * @param date Date to check
166
- */
167
80
  isToday: (date: string | Date) => boolean;
168
- /**
169
- * This function checks if the specified date is tomorrow.
170
- * @param date Date to check
171
- */
172
81
  isTomorrow: (date: string | Date) => boolean;
173
- /**
174
- * This function checks if the specified date is yesterday.
175
- * @param date Date to check
176
- */
177
82
  isYesterday: (date: string | Date) => boolean;
178
- /**
179
- * This function checks the date value provided for some particular
180
- * values and returns accordingly. Otherwise, returns it as `formatDate` would.
181
- * @param date Date to format
182
- */
183
83
  smartFormatDate: (date?: string | number | Date) => string;
184
- /**
185
- * This function checks the date value provided for some particular values and
186
- * returns accordingly. Otherwise, returns it as `formatDateTime` would.
187
- * @param date Date to format
188
- */
189
84
  smartFormatDateTime: (date: string | Date) => string | undefined;
190
- /**
191
- * This functions creates the difference between two dates in minutes.
192
- * @param date1 First date
193
- * @param date2 Second date
194
- * @returns The difference in minutes
195
- */
196
85
  differenceInMinutes: (date1: number | Date, date2: number | Date) => number;
197
- /**
198
- * This function checks if the specified dates are on the same day.
199
- * @param dateLeft First date
200
- * @param dateRight Second Date
201
- * @returns True, if the dates are on the same day; otherwise, false.
202
- */
203
86
  isSameDay: (dateLeft: number | Date, dateRight: number | Date) => boolean;
204
- /**
205
- * This function checks if the specified date is in the current calendar year.
206
- * @param date Date to check
207
- * @returns True, if the date is in the current year; otherwise, false.
208
- */
209
87
  isThisYear: (date: Date | number) => boolean;
210
- /**
211
- * Formats a date into a human-readable elapsed time string.
212
- * @param date Date to format
213
- * @returns Returns strings like "now", "12 seconds ago", "3 hours ago",
214
- * "today", "yesterday", "3 weeks ago", etc.
215
- */
216
88
  formatHumanElapsedTime: (date: string | Date) => string;
217
- /**
218
- * This function calculates the average of the specified values and returns it.
219
- * @param values Values to calculate the average
220
- * @param decimals Number of decimal places to round the result
221
- */
222
89
  avg: (values: number[], decimals?: number) => number;
223
- /**
224
- * This function calculates the sum of the specified values and returns it.
225
- * @param values Values to calculate the sum
226
- */
227
90
  sum: (values: number[]) => number;
228
- /**
229
- * This function returns the specified file size in a compact form, such as
230
- * "112 B", "2.0 KiB", "23.4 KiB", "2.3 MiB", etc.
231
- * @param bytes Number of bytes to format
232
- */
233
91
  formatFileSizeInBytes: (bytes: number) => string | undefined;
234
- /**
235
- * This function returns the type of the specified file.
236
- * @param fileName Filename to check for extension
237
- */
238
92
  getFileExtension: (fileName: string) => string | undefined;
239
- /**
240
- * This function navigates to the specified `url`.
241
- * @param url New app location
242
- * @param options Navigation options
243
- */
244
93
  navigate: (url: To, options?: NavigateOptions) => void;
245
- /**
246
- * This property determines the base name used for the router.
247
- */
248
94
  routerBaseName: string;
249
- /**
250
- * Instructs the browser to display a dialog with an optional message, and to wait until the
251
- * user either confirms or cancels the dialog. It returns a boolean indicating whether OK
252
- * (`true`) or Cancel (`false`) was selected.
253
- * @param title Dialog title
254
- * @param message Confirmation message
255
- * @param actionLabel Optional action label
256
- * @return True, if the user confirmed the action; otherwise, false.
257
- */
258
95
  confirm: (title: string, message?: string, actionLabel?: string) => Promise<boolean>;
259
- /**
260
- * This method displays the specified `error` (error message) on the UI.
261
- * @param error Error to display
262
- */
263
96
  signError(error: Error | string): void;
264
- /**
265
- * The toast service that displays messages in the UI.
266
- */
267
97
  toast: {
268
98
  (message: Message, opts?: ToastOptions): string;
269
99
  error: ToastHandler;
@@ -278,43 +108,13 @@ declare type AppContextObject = {
278
108
  error: ValueOrFunction<Renderable, any>;
279
109
  }, opts?: DefaultToastOptions): Promise<T>;
280
110
  };
281
- /**
282
- * This property returns the ID of the currently active theme.
283
- */
284
111
  activeThemeId: string;
285
- /**
286
- * This property returns the tone of the currently active theme ("light" or "dark").
287
- */
288
112
  activeThemeTone: "light" | "dark";
289
- /**
290
- * This property returns an array of all available theme IDs.
291
- */
292
113
  availableThemeIds: string[];
293
- /**
294
- * This function sets the current theme to the one with the specified `themeId`.
295
- * @param themId New theme to set
296
- */
297
114
  setTheme: (themId: string) => void;
298
- /**
299
- * This function sets the current theme tone to the specified `tone` value ("light" or "dark").
300
- * @param newTone New tone to set
301
- */
302
115
  setThemeTone: (newTone: "light" | "dark") => void;
303
- /**
304
- * This function toggles the current theme tone from "light" to "dark" or vice versa.
305
- */
306
116
  toggleThemeTone: () => void;
307
- /**
308
- * This property gets the information about the logged-in user. If `null`, no user is
309
- * logged in. The user information may have any value; the app must be able to leverage
310
- * this information.
311
- */
312
117
  loggedInUser: LoggedInUserDto | null;
313
- /**
314
- * This function sets the information about the logged-in user. The user information
315
- * may have any value; the app must be able to leverage this information.
316
- * @param loggedInUser Logged-in user information
317
- */
318
118
  setLoggedInUser: (loggedInUser: any) => void;
319
119
  readonly resources?: Record<string, string>;
320
120
  capitalize: (s?: string) => string;
@@ -405,10 +205,6 @@ declare interface AssignmentExpression extends ExpressionBase {
405
205
 
406
206
  declare type AssignmentSymbols = "=" | "+=" | "-=" | "**=" | "*=" | "/=" | "%=" | "<<=" | ">>=" | ">>>=" | "&=" | "^=" | "|=" | "&&=" | "||=" | "??=";
407
207
 
408
- /**
409
- * XMLUI executes its code asynchronously. This type defines functions that can be used in XMLUI
410
- * as actions or event handlers.
411
- */
412
208
  declare type AsyncFunction = (...args: any) => Promise<any> | any;
413
209
 
414
210
  declare type AuthDefinition = {
@@ -523,104 +319,32 @@ declare type ComponentCompilation = CompilationUnit & {
523
319
  definition: CompoundComponentDef;
524
320
  };
525
321
 
526
- /**
527
- * This interface represents the properties of a component definition.
528
- */
529
322
  declare interface ComponentDef<TMd extends ComponentMetadata = ComponentMetadata> extends ComponentDefCore, Scriptable {
530
323
  props?: Record<keyof TMd["props"], any>;
531
324
  events?: Record<keyof TMd["events"], any>;
532
- /**
533
- * Components may have an API that other components can use to interact with them. This property holds
534
- * the API methods associated with this component definition.
535
- */
536
325
  api?: Record<keyof TMd["apis"], any>;
537
- /**
538
- * Components may provide context variables that can be used to in expressions and event handlers
539
- * within the component.
540
- * REVIEW: This property can be removed after migration to the new componend definition type.
541
- */
542
326
  contextVars?: Record<keyof TMd["contextVars"], string>;
543
327
  }
544
328
 
545
- /**
546
- * This interface represents the core properties of a component definition (independent
547
- * of component metadata).
548
- */
549
329
  declare interface ComponentDefCore {
550
330
  type: string;
551
331
  uid?: string;
552
332
  testId?: string;
553
- /**
554
- * A component can define namespaces on it, with the <ComponentName xmlns:KEY="VALUE" /> syntax
555
- * these are used later to resolve the `type` of the componentDef.
556
- * <KEY:Button/> will have type `VALUE.Button` (joined with a "." (dot) )
557
- */
558
333
  namespaces?: Record<string, string>;
559
- /**
560
- * Though components manage their state internally, the app logic may require user state management.
561
- * Components may have user *variables*, which the UI logic uses to manage the application state.
562
- * This property holds the variables (name and value pairs) associated with this component definition.
563
- */
564
334
  vars?: Record<string, any>;
565
- /**
566
- * Each component may have child components to constitute a hierarchy of components. This property
567
- * holds the definition of these nested children.
568
- */
569
335
  children?: ComponentDef[];
570
- /**
571
- * Components may have slots that can be filled with other components. This property holds the
572
- * contents of the slots
573
- */
574
336
  slots?: Record<string, ComponentDef[]>;
575
- /**
576
- * This property is evaluated to a Boolean value during run time. When this value is `true`, the
577
- * component with its children chain is rendered; otherwise, the entire component hierarchy is omitted
578
- * from the rendered tree.
579
- */
580
337
  when?: string | boolean;
581
- /**
582
- * Some components work with data obtained asynchronously. Fetching this data requires some state
583
- * management handling the complexity (including error handling) of data access. A *loader* is
584
- * responsible for managing this logic. This property holds the loaders associated with this component
585
- * definition.
586
- */
587
338
  loaders?: ComponentDef[];
588
- /**
589
- * Components may have functions that are used to perform some logic. This property holds the functions
590
- * (name and function body) associated with this component definition.
591
- */
592
339
  functions?: Record<string, any>;
593
- /**
594
- * Components managing state through variables or loaders are wrapped with containers responsible
595
- * for this job. Just as components, containers form a hierarchy. While working with this hierarchy,
596
- * parent components may flow state values (key and value pairs) to their child containers. This
597
- * property holds the name of state values to flow down to the direct child containers.
598
- */
599
340
  uses?: string[];
600
- /**
601
- * Arbitrary debug information that can be attached to a component definition.
602
- * Current usage:
603
- * - `debug: { source: { start: number, end: number } }` Ther start and end positions of of the source
604
- * belonging to the particular component definition.
605
- */
606
341
  debug?: Record<string, any>;
607
342
  }
608
343
 
609
344
  declare type ComponentExtension = ComponentRendererDef | CompoundComponentDef;
610
345
 
611
- /**
612
- * Sometimes, components and compound components can both be used
613
- */
614
346
  declare type ComponentLike = ComponentDef | CompoundComponentDef;
615
347
 
616
- /**
617
- * Components have metadata that the rendering engine uses to render the
618
- * component. This type defines the structure of such metadata.
619
- *
620
- * The type has generic parameters to ensure that type-checking works with
621
- * the metadata defined here in concert with the renderer object using the
622
- * same metadata type.
623
- */
624
348
  declare type ComponentMetadata<TProps extends Record<string, ComponentPropertyMetadata> = Record<string, any>, TEvents extends Record<string, ComponentPropertyMetadata> = Record<string, any>, TContextValues extends Record<string, ComponentPropertyMetadata> = Record<string, any>, TApis extends Record<string, ComponentPropertyMetadata> = Record<string, any>> = {
625
349
  status?: "stable" | "experimental" | "deprecated" | "in progress";
626
350
  description?: string;
@@ -643,46 +367,13 @@ declare type ComponentMetadata<TProps extends Record<string, ComponentPropertyMe
643
367
  isHtmlTag?: boolean;
644
368
  };
645
369
 
646
- /**
647
- * Components have properties, events, context values, and exposed API
648
- * endpoints, each holding metadata the rendering engine uses at run time.
649
- * This type defines the structure of such metadata.
650
- */
651
370
  declare type ComponentPropertyMetadata = {
652
- /**
653
- * This field defines the description explaining the property. You can use
654
- * markdown, as the UI may display this value.
655
- */
656
371
  readonly description: string;
657
- /**
658
- * This field defines the type of the property. The rendering engine uses this
659
- * information to validate the property value.
660
- */
661
372
  readonly valueType?: PropertyValueType;
662
- /**
663
- * This field defines the available values of the property. The rendering engine
664
- * uses this information to validate the property value.
665
- */
666
373
  readonly availableValues?: readonly PropertyValueDescription[];
667
- /**
668
- * This field defines the default value of the property. The rendering engine uses
669
- * this information to set the default value of the property.
670
- */
671
374
  defaultValue?: any;
672
- /**
673
- * This field defines a validation function that the rendering engine uses to validate
674
- * the property value. The function returns one or more hinst if the property value is
675
- * invalid.
676
- */
677
375
  isValid?: IsValidFunction<any>;
678
- /**
679
- * Indicates that a particular property is internal and should not be exposed in the
680
- * documentation
681
- */
682
376
  isInternal?: boolean;
683
- /**
684
- * Indicates that a particular property is required for the component to essentially function.
685
- */
686
377
  isRequired?: boolean;
687
378
  };
688
379
 
@@ -694,69 +385,22 @@ declare interface ComponentRendererContextBase<TMd extends ComponentMetadata = C
694
385
  layoutContext?: LayoutContext;
695
386
  }
696
387
 
697
- /**
698
- * Components must be registered with a component registry so the engine can use them. This type
699
- * collects the information held by the registry.
700
- */
701
388
  declare type ComponentRendererDef<T extends ComponentDef = any> = {
702
- /**
703
- * The component's type identifier. In the markup, the component must use this name to be recognized.
704
- */
705
389
  type: string;
706
- /**
707
- * This function renders the component from its definition to its React representation.
708
- */
709
390
  renderer: ComponentRendererFn<T>;
710
- /**
711
- * The metadata to use when rendering the component
712
- */
713
391
  metadata?: ComponentMetadata;
714
392
  };
715
393
 
716
- /**
717
- * This function renders a component definition into a React component
718
- */
719
394
  declare type ComponentRendererFn<T extends ComponentDef> = (context: RendererContext<T>) => ReactNode;
720
395
 
721
396
  declare type ComponentSize = (typeof sizeValues)[number];
722
397
 
723
- /**
724
- * XMLUI allows the creation of reusable components assembled from other XMLUI components (with markup).
725
- * This type represents such components. The name `CompoundComponent` refers to the assembled nature
726
- * of reusable components.
727
- */
728
398
  declare interface CompoundComponentDef extends Scriptable {
729
- /**
730
- * Each compound component must have a unique name. The markup uses this name to refer to the
731
- * particular compound component.
732
- */
733
399
  name: string;
734
- /**
735
- * Each compound component must have a single root component defining the component contents.
736
- */
737
400
  component: ComponentDef;
738
- /**
739
- * Compound components may provide an API that other components can use to interact with them. This
740
- * property holds the API methods associated with this compound component definition.
741
- */
742
401
  api?: Record<string, any>;
743
- /**
744
- * This property holds the variables (name and value pairs) associated with this compound component
745
- * definition.
746
- */
747
402
  vars?: Record<string, any>;
748
- /**
749
- * A component can define namespaces on it, with the <ComponentName xmlns:KEY="VALUE" /> syntax
750
- * these are used later to resolve the `type` of the componentDef.
751
- * <KEY:Button/> will have type `VALUE.Button` (joined with a "." (dot) )
752
- */
753
403
  namespaces?: Record<string, string>;
754
- /**
755
- * Arbitrary debug information that can be attached to a component definition.
756
- * Current usage:
757
- * - `debug: { source: { start: number, end: number } }` Ther start and end positions of of the source
758
- * belonging to the particular component definition.
759
- */
760
404
  debug?: Record<string, any>;
761
405
  codeBehind?: string;
762
406
  }
@@ -777,10 +421,6 @@ declare interface ConstStatement extends ScripNodeBase {
777
421
  decls: VarDeclaration[];
778
422
  }
779
423
 
780
- /**
781
- * We store the state application state in a hierarchical structure of containers. This type represents
782
- * the state within a single container stored as key and value pairs.
783
- */
784
424
  declare type ContainerState = Record<string | symbol, any>;
785
425
 
786
426
  declare type CONTINUE_STATEMENT = typeof T_CONTINUE_STATEMENT;
@@ -855,23 +495,8 @@ declare interface DoWhileStatement extends ScripNodeBase {
855
495
  body: Statement;
856
496
  }
857
497
 
858
- /**
859
- * Some components render their nested child components dynamically using the current context of
860
- * their parents. For example, reusable components (`CompoundComponentDef`) have a `Slot`
861
- * placeholder that marks the location where the children should be rendered. Other component types
862
- * (e.g., `ApiBoundComponent` and `ContainerComponent`) use this dynamic rendering, too.
863
- *
864
- * This interface represents this functionality.
865
- */
866
498
  declare interface DynamicChildComponentDef extends ComponentDef {
867
- /**
868
- * This property holds a function that can render a particular child or children into a specific
869
- * layout context.
870
- */
871
499
  renderChild: RenderChildFn;
872
- /**
873
- * This property holds the child component that should be rendered.
874
- */
875
500
  childToRender: ComponentDef;
876
501
  }
877
502
 
@@ -983,36 +608,12 @@ declare interface Extension {
983
608
 
984
609
  declare type ExtensionRegisteredCallbackFn = (extension: Extension) => void;
985
610
 
986
- /**
987
- * This type describes a font definition resource.
988
- */
989
611
  declare type FontDef = {
990
- /**
991
- * Specifies a name that will be used as the font face value for font properties
992
- */
993
612
  fontFamily: string;
994
- /**
995
- * A fontStyle value. Accepts two values to specify a range that is supported by a font-face,
996
- * for example `fontStyle: oblique 20deg 50deg`
997
- */
998
613
  fontStyle?: string;
999
- /**
1000
- * A font-weight value. Accepts two values to specify a range that is supported by a font-face,
1001
- * for example `font-weight: 100 900`
1002
- */
1003
614
  fontWeight?: string;
1004
- /**
1005
- * This property determines how a font face is displayed based on whether and when it is downloaded
1006
- * and ready to use.
1007
- */
1008
615
  fontDisplay?: string;
1009
- /**
1010
- * The mime type of the font file
1011
- */
1012
616
  format?: string;
1013
- /**
1014
- * Specifies references to font resources.
1015
- */
1016
617
  src: string;
1017
618
  } | string;
1018
619
 
@@ -1155,29 +756,9 @@ declare type InterceptorOperationDef = {
1155
756
 
1156
757
  declare type IsValidFunction<T> = (propKey: string, propValue: T) => string | string[] | undefined | null;
1157
758
 
1158
- /**
1159
- * Each component is rendered in a particular layout context (for example, within a stack). This
1160
- * type provides information about that context and the operations that render children in it.
1161
- */
1162
759
  declare type LayoutContext<T extends ComponentDef = ComponentDef> = {
1163
- /**
1164
- * The type of the layout context
1165
- */
1166
760
  type?: string;
1167
- /**
1168
- * This function allows the React representation of a particular child node to be wrapped in
1169
- * whatever React components to accommodate the current layout context. When the engine is about to
1170
- * render children in a particular layout context, it checks the existence of this function.
1171
- * If declared, the engine invokes it.
1172
- * @param context Rendering context
1173
- * @param renderedChild The React node representing the rendered child
1174
- * @param metadata The metadata of the child component
1175
- * @returns The wrapped React node
1176
- */
1177
761
  wrapChild?: (context: RendererContext<T>, renderedChild: ReactNode, metadata?: ComponentMetadata) => ReactNode;
1178
- /**
1179
- * Arbitrary props extending the layout context
1180
- */
1181
762
  [key: string]: any;
1182
763
  };
1183
764
 
@@ -1230,58 +811,20 @@ declare const Logo: ForwardRefExoticComponent< {
1230
811
  style?: CSSProperties;
1231
812
  } & RefAttributes<HTMLImageElement>>;
1232
813
 
1233
- /**
1234
- * This type represents the options to use for looking up actions.
1235
- */
1236
814
  declare type LookupActionOptions = {
1237
- /**
1238
- * This property (by default, true) indicates that any error should be signed while
1239
- * executing an event handler. Set it to `false` to suppress error indication.
1240
- */
1241
815
  signError?: boolean;
1242
- /**
1243
- * We can use the event's name to get info about a particular event's progress. Note: Multiple
1244
- * events can run simultaneously.
1245
- */
1246
816
  eventName?: string;
1247
- /**
1248
- * By default, we cache resolved action functions. This property signs that we don't want to cache
1249
- * this function. Use true on one-off handlers, like the ones in Actions (e.g., `MutateAction`).
1250
- */
1251
817
  ephemeral?: boolean;
1252
- /**
1253
- * This property declares the script code to use as a default for a particular event handler.
1254
- */
1255
818
  defaultHandler?: string;
1256
819
  context?: any;
1257
820
  };
1258
821
 
1259
- /**
1260
- * This function resolves an action by its name with the specified options and returns the action
1261
- * function if found. Otherwise, return undefined.
1262
- */
1263
822
  declare type LookupAsyncFn = (action: string | undefined, actionOptions?: LookupActionOptions) => AsyncFunction | undefined;
1264
823
 
1265
- /**
1266
- * This function resolves an action by its name (within the component node that runs the action)
1267
- * with the specified options and returns the action function if found. Otherwise, return undefined.
1268
- */
1269
- declare type LookupAsyncFnInner = (action: string | undefined,
1270
- /**
1271
- * The unique identifier of the container that the action is executed in.
1272
- */
1273
- uid: symbol, actionOptions?: LookupActionOptions) => AsyncFunction | undefined;
824
+ declare type LookupAsyncFnInner = (action: string | undefined, uid: symbol, actionOptions?: LookupActionOptions) => AsyncFunction | undefined;
1274
825
 
1275
- /**
1276
- * This function retrieves an async function for a particular component's specified event to be
1277
- * invoked as an event handler (`undefined` if the particular event handler is not defined).
1278
- */
1279
826
  declare type LookupEventHandlerFn<TMd extends ComponentMetadata = ComponentMetadata> = (eventName: keyof NonNullable<TMd["events"]>, actionOptions?: LookupActionOptions) => AsyncFunction | undefined;
1280
827
 
1281
- /**
1282
- * This function resolves a sync action by its name and returns the action function if it is found.
1283
- * Otherwise, it returns undefined.
1284
- */
1285
828
  declare type LookupSyncFn = (action: string | undefined) => SyncFunction | undefined;
1286
829
 
1287
830
  declare type MediaBreakpointType = "xs" | "sm" | "md" | "lg" | "xl" | "xxl";
@@ -1338,7 +881,7 @@ declare interface NavHierarchyNode {
1338
881
  lastLink?: boolean;
1339
882
  }
1340
883
 
1341
- declare function NestedApp({ api, app, components, config, activeTheme, activeTone, title, height, allowPlaygroundPopup, withFrame, style, refVersion, }: NestedAppProps): JSX_2.Element;
884
+ declare function NestedApp({ api, app, components, config, activeTheme, activeTone, title, height, allowPlaygroundPopup, popOutUrl, withFrame, style, refVersion, }: NestedAppProps): JSX_2.Element;
1342
885
 
1343
886
  declare type NestedAppProps = {
1344
887
  api?: any;
@@ -1350,6 +893,7 @@ declare type NestedAppProps = {
1350
893
  title?: string;
1351
894
  height?: string | number;
1352
895
  allowPlaygroundPopup?: boolean;
896
+ popOutUrl?: string;
1353
897
  withFrame?: boolean;
1354
898
  style?: CSSProperties;
1355
899
  splitView?: boolean;
@@ -1422,10 +966,6 @@ declare type ProjectCompilation = {
1422
966
  themes: Record<string, ThemeDefinition>;
1423
967
  };
1424
968
 
1425
- /**
1426
- * This type represents the description of a property value, which can be a string, a number,
1427
- * or an object with a value and a description. This type is used in the metadata of a component.
1428
- */
1429
969
  declare type PropertyValueDescription = string | number | {
1430
970
  value: string | number;
1431
971
  description: string;
@@ -1506,49 +1046,18 @@ declare interface ReactiveVarDeclaration extends ExpressionBase {
1506
1046
  expr: Expression;
1507
1047
  }
1508
1048
 
1509
- /**
1510
- * This type represents a function that registers all API endpoints of a particular component.
1511
- */
1512
1049
  declare type RegisterComponentApiFn = (componentApi: ComponentApi) => void;
1513
1050
 
1514
1051
  declare type RenderChildFn<L extends ComponentDef = ComponentDef> = (children?: ComponentDef | ComponentDef[] | DynamicChildComponentDef | DynamicChildComponentDef[] | string, layoutContext?: LayoutContext<L>, parentRenderContext?: ParentRenderContext, uidInfoRef?: RefObject<Record<string, any>>, ref?: ForwardedRef<any>) => ReactNode | ReactNode[];
1515
1052
 
1516
- /**
1517
- * This interface defines the renderer context for the exposed components of the XMLUI framework.
1518
- */
1519
1053
  declare interface RendererContext<TMd extends ComponentMetadata = ComponentMetadata> extends ComponentRendererContextBase<TMd> {
1520
- /**
1521
- * The unique identifier of the component instance
1522
- */
1523
1054
  uid: symbol;
1524
- /**
1525
- * A component invokes this function to change its internal state
1526
- */
1527
1055
  updateState: UpdateStateFn;
1528
- /**
1529
- * When a component wants to access a property value (which may contain a binding expression to
1530
- * evaluate), it must use this property to get the current value.
1531
- */
1532
1056
  extractValue: ValueExtractor;
1533
- /**
1534
- * This function gets a physical resource URL according to the provided logical URL.
1535
- */
1536
1057
  extractResourceUrl: (url?: string) => string | undefined;
1537
- /**
1538
- * This function gets an async executable function that handles an event.
1539
- */
1540
1058
  lookupEventHandler: LookupEventHandlerFn<TMd>;
1541
- /**
1542
- * A component can register its APIs with this function
1543
- */
1544
1059
  registerComponentApi: RegisterComponentApiFn;
1545
- /**
1546
- * This function obtains an action by its name with the specified options
1547
- */
1548
1060
  lookupAction: LookupAsyncFn;
1549
- /**
1550
- * This function retrieves a sync function the component can use as a callback
1551
- */
1552
1061
  lookupSyncCallback: LookupSyncFn;
1553
1062
  layoutCss: CSSProperties;
1554
1063
  }
@@ -1573,21 +1082,9 @@ declare interface ScripNodeBase {
1573
1082
  endToken?: ScriptingToken;
1574
1083
  }
1575
1084
 
1576
- /**
1577
- * This interface holds the properties representing a scriptable component definition.
1578
- */
1579
1085
  declare interface Scriptable {
1580
- /**
1581
- * This property holds the text defined in all <script> sections attached to a component.
1582
- */
1583
1086
  script?: string;
1584
- /**
1585
- * This property holds the parsed form of scripts stored in code-behind files.
1586
- */
1587
1087
  scriptCollected?: CollectedDeclarations;
1588
- /**
1589
- * This property holds errors coming from parsing the code-behind scripts.
1590
- */
1591
1088
  scriptError?: any;
1592
1089
  }
1593
1090
 
@@ -1922,98 +1419,95 @@ declare interface SwitchStatement extends ScripNodeBase {
1922
1419
  cases: SwitchCase[];
1923
1420
  }
1924
1421
 
1925
- /**
1926
- * XMLUI executes some code synchronously. This type defines those functions' signature
1927
- */
1928
1422
  declare type SyncFunction = (...args: any) => any;
1929
1423
 
1930
- declare const T_ARRAY_DESTRUCTURE = 202;
1424
+ declare const T_ARRAY_DESTRUCTURE: number;
1931
1425
 
1932
- declare const T_ARRAY_LITERAL = 110;
1426
+ declare const T_ARRAY_LITERAL: number;
1933
1427
 
1934
- declare const T_ARROW_EXPRESSION = 115;
1428
+ declare const T_ARROW_EXPRESSION: number;
1935
1429
 
1936
- declare const T_ARROW_EXPRESSION_STATEMENT = 4;
1430
+ declare const T_ARROW_EXPRESSION_STATEMENT: number;
1937
1431
 
1938
- declare const T_ASSIGNMENT_EXPRESSION = 113;
1432
+ declare const T_ASSIGNMENT_EXPRESSION: number;
1939
1433
 
1940
- declare const T_BINARY_EXPRESSION = 101;
1434
+ declare const T_BINARY_EXPRESSION: number;
1941
1435
 
1942
- declare const T_BLOCK_STATEMENT = 1;
1436
+ declare const T_BLOCK_STATEMENT: number;
1943
1437
 
1944
- declare const T_BREAK_STATEMENT = 10;
1438
+ declare const T_BREAK_STATEMENT: number;
1945
1439
 
1946
- declare const T_CALCULATED_MEMBER_ACCESS_EXPRESSION = 106;
1440
+ declare const T_CALCULATED_MEMBER_ACCESS_EXPRESSION: number;
1947
1441
 
1948
- declare const T_CONDITIONAL_EXPRESSION = 103;
1442
+ declare const T_CONDITIONAL_EXPRESSION: number;
1949
1443
 
1950
- declare const T_CONST_STATEMENT = 6;
1444
+ declare const T_CONST_STATEMENT: number;
1951
1445
 
1952
- declare const T_CONTINUE_STATEMENT = 11;
1446
+ declare const T_CONTINUE_STATEMENT: number;
1953
1447
 
1954
- declare const T_DESTRUCTURE = 201;
1448
+ declare const T_DESTRUCTURE: number;
1955
1449
 
1956
- declare const T_DO_WHILE_STATEMENT = 13;
1450
+ declare const T_DO_WHILE_STATEMENT: number;
1957
1451
 
1958
- declare const T_EMPTY_STATEMENT = 2;
1452
+ declare const T_EMPTY_STATEMENT: number;
1959
1453
 
1960
- declare const T_EXPRESSION_STATEMENT = 3;
1454
+ declare const T_EXPRESSION_STATEMENT: number;
1961
1455
 
1962
- declare const T_FOR_IN_STATEMENT = 15;
1456
+ declare const T_FOR_IN_STATEMENT: number;
1963
1457
 
1964
- declare const T_FOR_OF_STATEMENT = 16;
1458
+ declare const T_FOR_OF_STATEMENT: number;
1965
1459
 
1966
- declare const T_FOR_STATEMENT = 14;
1460
+ declare const T_FOR_STATEMENT: number;
1967
1461
 
1968
- declare const T_FUNCTION_DECLARATION = 20;
1462
+ declare const T_FUNCTION_DECLARATION: number;
1969
1463
 
1970
- declare const T_FUNCTION_INVOCATION_EXPRESSION = 104;
1464
+ declare const T_FUNCTION_INVOCATION_EXPRESSION: number;
1971
1465
 
1972
- declare const T_IDENTIFIER = 107;
1466
+ declare const T_IDENTIFIER: number;
1973
1467
 
1974
- declare const T_IF_STATEMENT = 8;
1468
+ declare const T_IF_STATEMENT: number;
1975
1469
 
1976
- declare const T_LET_STATEMENT = 5;
1470
+ declare const T_LET_STATEMENT: number;
1977
1471
 
1978
- declare const T_LITERAL = 109;
1472
+ declare const T_LITERAL: number;
1979
1473
 
1980
- declare const T_MEMBER_ACCESS_EXPRESSION = 105;
1474
+ declare const T_MEMBER_ACCESS_EXPRESSION: number;
1981
1475
 
1982
- declare const T_NO_ARG_EXPRESSION = 114;
1476
+ declare const T_NO_ARG_EXPRESSION: number;
1983
1477
 
1984
- declare const T_OBJECT_DESTRUCTURE = 203;
1478
+ declare const T_OBJECT_DESTRUCTURE: number;
1985
1479
 
1986
- declare const T_OBJECT_LITERAL = 111;
1480
+ declare const T_OBJECT_LITERAL: number;
1987
1481
 
1988
- declare const T_POSTFIX_OP_EXPRESSION = 117;
1482
+ declare const T_POSTFIX_OP_EXPRESSION: number;
1989
1483
 
1990
- declare const T_PREFIX_OP_EXPRESSION = 116;
1484
+ declare const T_PREFIX_OP_EXPRESSION: number;
1991
1485
 
1992
- declare const T_REACTIVE_VAR_DECLARATION = 118;
1486
+ declare const T_REACTIVE_VAR_DECLARATION: number;
1993
1487
 
1994
- declare const T_RETURN_STATEMENT = 9;
1488
+ declare const T_RETURN_STATEMENT: number;
1995
1489
 
1996
- declare const T_SEQUENCE_EXPRESSION = 102;
1490
+ declare const T_SEQUENCE_EXPRESSION: number;
1997
1491
 
1998
- declare const T_SPREAD_EXPRESSION = 112;
1492
+ declare const T_SPREAD_EXPRESSION: number;
1999
1493
 
2000
- declare const T_SWITCH_CASE = 204;
1494
+ declare const T_SWITCH_CASE: number;
2001
1495
 
2002
- declare const T_SWITCH_STATEMENT = 19;
1496
+ declare const T_SWITCH_STATEMENT: number;
2003
1497
 
2004
- declare const T_TEMPLATE_LITERAL_EXPRESSION = 108;
1498
+ declare const T_TEMPLATE_LITERAL_EXPRESSION: number;
2005
1499
 
2006
- declare const T_THROW_STATEMENT = 17;
1500
+ declare const T_THROW_STATEMENT: number;
2007
1501
 
2008
- declare const T_TRY_STATEMENT = 18;
1502
+ declare const T_TRY_STATEMENT: number;
2009
1503
 
2010
- declare const T_UNARY_EXPRESSION = 100;
1504
+ declare const T_UNARY_EXPRESSION: number;
2011
1505
 
2012
- declare const T_VAR_DECLARATION = 200;
1506
+ declare const T_VAR_DECLARATION: number;
2013
1507
 
2014
- declare const T_VAR_STATEMENT = 7;
1508
+ declare const T_VAR_STATEMENT: number;
2015
1509
 
2016
- declare const T_WHILE_STATEMENT = 12;
1510
+ declare const T_WHILE_STATEMENT: number;
2017
1511
 
2018
1512
  declare type Tab = {
2019
1513
  label: string;
@@ -2058,28 +1552,10 @@ declare type TextVariant = (typeof TextVariantKeys)[number];
2058
1552
 
2059
1553
  declare const TextVariantKeys: readonly ["abbr", "cite", "code", "codefence", "deleted", "inherit", "inserted", "keyboard", "marked", "sample", "sub", "sup", "var", "strong", "em", "mono", "title", "subtitle", "small", "caption", "placeholder", "paragraph", "subheading", "tableheading", "secondary"];
2060
1554
 
2061
- /**
2062
- * This type represents a theme definition object. Theme files can use this object's JSON-serialized
2063
- * format to define an app theme; an app can have multiple theme files.
2064
- */
2065
1555
  declare interface ThemeDefinition extends ThemeDefinitionDetails {
2066
- /**
2067
- * Theme id
2068
- */
2069
1556
  id: string;
2070
- /**
2071
- * Optional theme name
2072
- */
2073
1557
  name?: string;
2074
- /**
2075
- * A theme can extend existing themes. The extension means that the theme variable values defined
2076
- * in the new theme override the base theme's variable values.
2077
- */
2078
1558
  extends?: string | Array<string>;
2079
- /**
2080
- * This property defines the tone-dependent theme variable values. When a theme variable value is
2081
- * resolved, the common theme variable values are overridden with their theme-specific values.
2082
- */
2083
1559
  tones?: Record<string | ThemeTone, ThemeDefinitionDetails>;
2084
1560
  }
2085
1561
 
@@ -2093,64 +1569,18 @@ declare type ThemeIdDescriptor = {
2093
1569
  defaultValue?: DefaultValueDescriptor;
2094
1570
  };
2095
1571
 
2096
- /**
2097
- * When rendering any part of an XMLUI app, the styles to apply are enclosed in a theme scope.
2098
- * Most apps use a single theme scope that includes all nodes within the root app node. However,
2099
- * any app can use multiple theme scopes.
2100
- *
2101
- * The scope determines how the app applies styles to the particular section. This type defines
2102
- * the properties of such a theme scope.
2103
- */
2104
1572
  declare type ThemeScope = {
2105
- /**
2106
- * Gets the id of the scope's theme
2107
- */
2108
1573
  activeThemeId: string;
2109
- /**
2110
- * Gets the current tone of the scope's theme
2111
- */
2112
1574
  activeThemeTone: ThemeTone;
2113
- /**
2114
- * The HTML element that works as the root of the theme's scope.
2115
- */
2116
1575
  root: HTMLElement | undefined;
2117
- /**
2118
- * The active theme in the current scope
2119
- */
2120
1576
  activeTheme: ThemeDefinition;
2121
- /**
2122
- * This hash object stores the CSS theme variable names with their CSS values definition,
2123
- * like "--xmlui-verticalAlignment-Text-sub": "sub";
2124
- * "--xmlui-backgroundColor": "var(--xmlui-color-surface-50)"
2125
- */
2126
1577
  themeStyles: Record<string, string>;
2127
- /**
2128
- * This hash object stores the theme variable names with their CSS values definition, like
2129
- * "verticalAlignment-Text-sub": "sub"; "backgroundColor": "var(--xmlui-color-surface-50)".
2130
- */
2131
1578
  themeVars: Record<string, string>;
2132
- /**
2133
- * This function retrieves the physical path of the provided resource. The path can be used
2134
- * as a URL in HTML tags, like in the `src` attribute of `<img>`.
2135
- * @param resourceString The recource name to resolve to an URL
2136
- */
2137
1579
  getResourceUrl: (resourceString?: string) => string | undefined;
2138
- /**
2139
- * This function gets the value of the specified theme variable.
2140
- * @param themeVar Theme variable name to resolve
2141
- */
2142
1580
  getThemeVar: (themeVar: string) => string | undefined;
2143
1581
  };
2144
1582
 
2145
- /**
2146
- * This type describes one the available theme tones.
2147
- */
2148
- declare type ThemeTone = (typeof ThemeToneKeys)[number];
2149
-
2150
- /**
2151
- * Each theme can have a light or a dark tone.
2152
- */
2153
- declare const ThemeToneKeys: readonly ["light", "dark"];
1583
+ declare type ThemeTone = "light" | "dark";
2154
1584
 
2155
1585
  declare type THROW_STATEMENT = typeof T_THROW_STATEMENT;
2156
1586
 
@@ -2312,10 +1742,6 @@ declare interface UnaryExpression extends ExpressionBase {
2312
1742
 
2313
1743
  declare type UnaryOpSymbols = "+" | "-" | "~" | "!" | "typeof" | "delete";
2314
1744
 
2315
- /**
2316
- * This function updates the state of a component.
2317
- * @param componentState The new state of the component
2318
- */
2319
1745
  declare type UpdateStateFn = (componentState: any, options?: any) => void;
2320
1746
 
2321
1747
  declare function useAppLayoutContext(): IAppLayoutContext;
@@ -2353,63 +1779,16 @@ declare type ValidationStatus = (typeof validationStatusValues)[number];
2353
1779
 
2354
1780
  declare const validationStatusValues: readonly ["none", "error", "warning", "valid"];
2355
1781
 
2356
- /**
2357
- * This type represent the function that extracts the value from a component property
2358
- */
2359
1782
  declare type ValueExtractor = {
2360
- /**
2361
- * Get a value (any) from a component property
2362
- * @param expression Value expression
2363
- * @param strict Strict matching?
2364
- */
2365
1783
  (expression?: any, strict?: boolean): any;
2366
- /**
2367
- * Get a string value from an expression
2368
- * @param expression Value expression
2369
- */
2370
1784
  asString(expression?: any): string;
2371
- /**
2372
- * Get an optional string value from an expression
2373
- * @param expression Value expression
2374
- * @param defValue Default value, if the parameter value is undefined
2375
- */
2376
1785
  asOptionalString<T extends string>(expression?: any, defValue?: string): T | undefined;
2377
- /**
2378
- * Get an optional string value from an expression
2379
- * @param expression Value expression
2380
- */
2381
1786
  asOptionalStringArray(expression?: any): (string | undefined)[];
2382
- /**
2383
- * Get a display string value from an expression
2384
- * @param expression Value expression
2385
- */
2386
1787
  asDisplayText(expression?: any): string;
2387
- /**
2388
- * Get a number value from an expression
2389
- * @param expression Value expression
2390
- */
2391
1788
  asNumber(expression?: any): number;
2392
- /**
2393
- * Get an optional number value from an expression
2394
- * @param expression Value expression
2395
- * @param defValue Default value, if the parameter value is undefined
2396
- */
2397
1789
  asOptionalNumber(expression?: any, defValue?: number): number | undefined;
2398
- /**
2399
- * Get a boolean value (JavaScript semantics) from an expression
2400
- * @param expression Value expression
2401
- */
2402
1790
  asBoolean(expression?: any): boolean;
2403
- /**
2404
- * Get an optional Boolean value from an expression
2405
- * @param expression Value expression
2406
- * @param defValue Default value, if the parameter value is undefined
2407
- */
2408
1791
  asOptionalBoolean(expression?: any, defValue?: boolean): boolean | undefined;
2409
- /**
2410
- * Get a CSS size value from an expression
2411
- * @param expression Value expression
2412
- */
2413
1792
  asSize(expression?: any): string;
2414
1793
  };
2415
1794