@api-client/ui 0.5.58 → 0.6.0

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 (1015) hide show
  1. package/INSTRUCTIONS.md +141 -0
  2. package/build/src/builders/DialogBuilder.d.ts +245 -0
  3. package/build/src/builders/DialogBuilder.d.ts.map +1 -0
  4. package/build/src/builders/DialogBuilder.js +406 -0
  5. package/build/src/builders/DialogBuilder.js.map +1 -0
  6. package/build/src/cache/Cache.d.ts +72 -0
  7. package/build/src/cache/Cache.d.ts.map +1 -0
  8. package/build/src/cache/Cache.js +221 -0
  9. package/build/src/cache/Cache.js.map +1 -0
  10. package/build/src/core/Model.d.ts +18 -64
  11. package/build/src/core/Model.d.ts.map +1 -1
  12. package/build/src/core/Model.js +47 -90
  13. package/build/src/core/Model.js.map +1 -1
  14. package/build/src/core/ServiceManager.d.ts.map +1 -1
  15. package/build/src/core/ServiceManager.js +1 -0
  16. package/build/src/core/ServiceManager.js.map +1 -1
  17. package/build/src/data/BreadcrumbsModel.d.ts +37 -0
  18. package/build/src/data/BreadcrumbsModel.d.ts.map +1 -0
  19. package/build/src/data/BreadcrumbsModel.js +77 -0
  20. package/build/src/data/BreadcrumbsModel.js.map +1 -0
  21. package/build/src/data/DataCatalogModel.d.ts +53 -0
  22. package/build/src/data/DataCatalogModel.d.ts.map +1 -0
  23. package/build/src/data/DataCatalogModel.js +174 -0
  24. package/build/src/data/DataCatalogModel.js.map +1 -0
  25. package/build/src/data/DomainBrowserModel.d.ts +30 -0
  26. package/build/src/data/DomainBrowserModel.d.ts.map +1 -0
  27. package/build/src/data/DomainBrowserModel.js +113 -0
  28. package/build/src/data/DomainBrowserModel.js.map +1 -0
  29. package/build/src/data/FileModel.d.ts +36 -0
  30. package/build/src/data/FileModel.d.ts.map +1 -0
  31. package/build/src/data/FileModel.js +71 -0
  32. package/build/src/data/FileModel.js.map +1 -0
  33. package/build/src/data/FileShareModel.d.ts +57 -0
  34. package/build/src/data/FileShareModel.d.ts.map +1 -0
  35. package/build/src/data/FileShareModel.js +238 -0
  36. package/build/src/data/FileShareModel.js.map +1 -0
  37. package/build/src/data/FilesModel.d.ts +71 -0
  38. package/build/src/data/FilesModel.d.ts.map +1 -0
  39. package/build/src/data/FilesModel.js +205 -0
  40. package/build/src/data/FilesModel.js.map +1 -0
  41. package/build/src/data/InvitationModel.d.ts +27 -0
  42. package/build/src/data/InvitationModel.d.ts.map +1 -0
  43. package/build/src/data/InvitationModel.js +66 -0
  44. package/build/src/data/InvitationModel.js.map +1 -0
  45. package/build/src/data/PatchableFileModel.d.ts +167 -0
  46. package/build/src/data/PatchableFileModel.d.ts.map +1 -0
  47. package/build/src/data/PatchableFileModel.js +243 -0
  48. package/build/src/data/PatchableFileModel.js.map +1 -0
  49. package/build/src/data/PatchableLiveDataContentModel.d.ts +8 -0
  50. package/build/src/data/PatchableLiveDataContentModel.d.ts.map +1 -0
  51. package/build/src/data/PatchableLiveDataContentModel.js +32 -0
  52. package/build/src/data/PatchableLiveDataContentModel.js.map +1 -0
  53. package/build/src/data/PatchableRawContentModel.d.ts +10 -0
  54. package/build/src/data/PatchableRawContentModel.d.ts.map +1 -0
  55. package/build/src/data/PatchableRawContentModel.js +38 -0
  56. package/build/src/data/PatchableRawContentModel.js.map +1 -0
  57. package/build/src/data/TrashModel.d.ts +51 -0
  58. package/build/src/data/TrashModel.d.ts.map +1 -0
  59. package/build/src/data/TrashModel.js +112 -0
  60. package/build/src/data/TrashModel.js.map +1 -0
  61. package/build/src/data/UserModel.d.ts +28 -0
  62. package/build/src/data/UserModel.d.ts.map +1 -0
  63. package/build/src/data/UserModel.js +98 -0
  64. package/build/src/data/UserModel.js.map +1 -0
  65. package/build/src/data/UsersModel.d.ts +84 -0
  66. package/build/src/data/UsersModel.d.ts.map +1 -0
  67. package/build/src/data/UsersModel.js +307 -0
  68. package/build/src/data/UsersModel.js.map +1 -0
  69. package/build/src/data/retry_logic.d.ts +66 -0
  70. package/build/src/data/retry_logic.d.ts.map +1 -0
  71. package/build/src/data/retry_logic.js +84 -0
  72. package/build/src/data/retry_logic.js.map +1 -0
  73. package/build/src/elements/autocomplete/internals/autocomplete.d.ts.map +1 -1
  74. package/build/src/elements/autocomplete/internals/autocomplete.js +5 -2
  75. package/build/src/elements/autocomplete/internals/autocomplete.js.map +1 -1
  76. package/build/src/elements/data-table/DataTable.d.ts +17 -0
  77. package/build/src/elements/data-table/DataTable.d.ts.map +1 -1
  78. package/build/src/elements/data-table/DataTable.js +5 -4
  79. package/build/src/elements/data-table/DataTable.js.map +1 -1
  80. package/build/src/elements/data-table/DataTable.styles.d.ts.map +1 -1
  81. package/build/src/elements/data-table/DataTable.styles.js +7 -2
  82. package/build/src/elements/data-table/DataTable.styles.js.map +1 -1
  83. package/build/src/elements/data-table/data-catalog-table.d.ts +16 -0
  84. package/build/src/elements/data-table/data-catalog-table.d.ts.map +1 -0
  85. package/build/src/elements/data-table/data-catalog-table.js +33 -0
  86. package/build/src/elements/data-table/data-catalog-table.js.map +1 -0
  87. package/build/src/elements/data-table/filesystem-table.d.ts +17 -0
  88. package/build/src/elements/data-table/filesystem-table.d.ts.map +1 -0
  89. package/build/src/elements/data-table/filesystem-table.js +35 -0
  90. package/build/src/elements/data-table/filesystem-table.js.map +1 -0
  91. package/build/src/elements/data-table/internals/DataCatalog.styles.d.ts +3 -0
  92. package/build/src/elements/data-table/internals/DataCatalog.styles.d.ts.map +1 -0
  93. package/build/src/elements/data-table/internals/DataCatalog.styles.js +29 -0
  94. package/build/src/elements/data-table/internals/DataCatalog.styles.js.map +1 -0
  95. package/build/src/elements/data-table/internals/DataCatalogTable.d.ts +44 -0
  96. package/build/src/elements/data-table/internals/DataCatalogTable.d.ts.map +1 -0
  97. package/build/src/elements/data-table/internals/DataCatalogTable.js +208 -0
  98. package/build/src/elements/data-table/internals/DataCatalogTable.js.map +1 -0
  99. package/build/src/elements/data-table/internals/Filesystem.styles.d.ts +3 -0
  100. package/build/src/elements/data-table/internals/Filesystem.styles.d.ts.map +1 -0
  101. package/build/src/elements/data-table/internals/Filesystem.styles.js +23 -0
  102. package/build/src/elements/data-table/internals/Filesystem.styles.js.map +1 -0
  103. package/build/src/elements/data-table/internals/FilesystemDataTable.d.ts +36 -0
  104. package/build/src/elements/data-table/internals/FilesystemDataTable.d.ts.map +1 -0
  105. package/build/src/elements/data-table/internals/FilesystemDataTable.js +230 -0
  106. package/build/src/elements/data-table/internals/FilesystemDataTable.js.map +1 -0
  107. package/build/src/elements/data-table/internals/TrashDataTable.d.ts +32 -0
  108. package/build/src/elements/data-table/internals/TrashDataTable.d.ts.map +1 -0
  109. package/build/src/elements/data-table/internals/TrashDataTable.js +161 -0
  110. package/build/src/elements/data-table/internals/TrashDataTable.js.map +1 -0
  111. package/build/src/elements/data-table/internals/UserData.styles.d.ts +3 -0
  112. package/build/src/elements/data-table/internals/UserData.styles.d.ts.map +1 -0
  113. package/build/src/elements/data-table/internals/UserData.styles.js +16 -0
  114. package/build/src/elements/data-table/internals/UserData.styles.js.map +1 -0
  115. package/build/src/elements/data-table/internals/UsersDataTable.d.ts +30 -0
  116. package/build/src/elements/data-table/internals/UsersDataTable.d.ts.map +1 -0
  117. package/build/src/elements/data-table/internals/UsersDataTable.js +243 -0
  118. package/build/src/elements/data-table/internals/UsersDataTable.js.map +1 -0
  119. package/build/src/elements/data-table/trash-table.d.ts +11 -0
  120. package/build/src/elements/data-table/trash-table.d.ts.map +1 -0
  121. package/build/src/elements/data-table/trash-table.js +28 -0
  122. package/build/src/elements/data-table/trash-table.js.map +1 -0
  123. package/build/src/elements/data-table/users-table.d.ts +11 -0
  124. package/build/src/elements/data-table/users-table.d.ts.map +1 -0
  125. package/build/src/elements/data-table/users-table.js +28 -0
  126. package/build/src/elements/data-table/users-table.js.map +1 -0
  127. package/build/src/elements/file-system/internals/Breadcrumbs.d.ts +0 -2
  128. package/build/src/elements/file-system/internals/Breadcrumbs.d.ts.map +1 -1
  129. package/build/src/elements/file-system/internals/Breadcrumbs.js +0 -2
  130. package/build/src/elements/file-system/internals/Breadcrumbs.js.map +1 -1
  131. package/build/src/elements/file-system/internals/QuickApiFilesystem.d.ts +197 -0
  132. package/build/src/elements/file-system/internals/QuickApiFilesystem.d.ts.map +1 -0
  133. package/build/src/elements/file-system/internals/QuickApiFilesystem.js +434 -0
  134. package/build/src/elements/file-system/internals/QuickApiFilesystem.js.map +1 -0
  135. package/build/src/elements/file-system/internals/QuickApiFilesystem.styles.d.ts +3 -0
  136. package/build/src/elements/file-system/internals/QuickApiFilesystem.styles.d.ts.map +1 -0
  137. package/build/src/elements/file-system/internals/QuickApiFilesystem.styles.js +49 -0
  138. package/build/src/elements/file-system/internals/QuickApiFilesystem.styles.js.map +1 -0
  139. package/build/src/elements/file-system/internals/ShareFile.d.ts +166 -0
  140. package/build/src/elements/file-system/internals/ShareFile.d.ts.map +1 -0
  141. package/build/src/elements/file-system/internals/ShareFile.js +581 -0
  142. package/build/src/elements/file-system/internals/ShareFile.js.map +1 -0
  143. package/build/src/elements/file-system/internals/ShareFile.styles.d.ts +3 -0
  144. package/build/src/elements/file-system/internals/ShareFile.styles.d.ts.map +1 -0
  145. package/build/src/elements/file-system/internals/ShareFile.styles.js +98 -0
  146. package/build/src/elements/file-system/internals/ShareFile.styles.js.map +1 -0
  147. package/build/src/elements/file-system/quick-api-filesystem.d.ts +11 -0
  148. package/build/src/elements/file-system/quick-api-filesystem.d.ts.map +1 -0
  149. package/build/src/elements/file-system/quick-api-filesystem.js +28 -0
  150. package/build/src/elements/file-system/quick-api-filesystem.js.map +1 -0
  151. package/build/src/elements/file-system/share-file.d.ts +20 -0
  152. package/build/src/elements/file-system/share-file.d.ts.map +1 -0
  153. package/build/src/elements/file-system/share-file.js +37 -0
  154. package/build/src/elements/file-system/share-file.js.map +1 -0
  155. package/build/src/elements/file-system/ui-breadcrumbs.d.ts +2 -0
  156. package/build/src/elements/file-system/ui-breadcrumbs.d.ts.map +1 -1
  157. package/build/src/elements/file-system/ui-breadcrumbs.js +2 -0
  158. package/build/src/elements/file-system/ui-breadcrumbs.js.map +1 -1
  159. package/build/src/elements/layout/SplitItem.d.ts.map +1 -1
  160. package/build/src/elements/layout/SplitItem.js +0 -7
  161. package/build/src/elements/layout/SplitItem.js.map +1 -1
  162. package/build/src/elements/navigation/internals/Navigation.d.ts +1 -1
  163. package/build/src/elements/navigation/internals/Navigation.d.ts.map +1 -1
  164. package/build/src/elements/navigation/internals/Navigation.js +10 -4
  165. package/build/src/elements/navigation/internals/Navigation.js.map +1 -1
  166. package/build/src/elements/search-input/internals/input.d.ts +27 -0
  167. package/build/src/elements/search-input/internals/input.d.ts.map +1 -0
  168. package/build/src/elements/search-input/internals/input.js +99 -0
  169. package/build/src/elements/search-input/internals/input.js.map +1 -0
  170. package/build/src/elements/search-input/internals/input.styles.d.ts +3 -0
  171. package/build/src/elements/search-input/internals/input.styles.d.ts.map +1 -0
  172. package/build/src/elements/search-input/internals/input.styles.js +38 -0
  173. package/build/src/elements/search-input/internals/input.styles.js.map +1 -0
  174. package/build/src/elements/search-input/search-input.d.ts +12 -0
  175. package/build/src/elements/search-input/search-input.d.ts.map +1 -0
  176. package/build/src/elements/search-input/search-input.js +30 -0
  177. package/build/src/elements/search-input/search-input.js.map +1 -0
  178. package/build/src/elements/setup/internals/InvitationScreen.d.ts +189 -0
  179. package/build/src/elements/setup/internals/InvitationScreen.d.ts.map +1 -0
  180. package/build/src/elements/setup/internals/InvitationScreen.js +466 -0
  181. package/build/src/elements/setup/internals/InvitationScreen.js.map +1 -0
  182. package/build/src/elements/setup/internals/InvitationScreen.styles.d.ts +3 -0
  183. package/build/src/elements/setup/internals/InvitationScreen.styles.d.ts.map +1 -0
  184. package/build/src/elements/setup/internals/InvitationScreen.styles.js +3 -0
  185. package/build/src/elements/setup/internals/InvitationScreen.styles.js.map +1 -0
  186. package/build/src/elements/setup/internals/LoginScreen.d.ts +61 -0
  187. package/build/src/elements/setup/internals/LoginScreen.d.ts.map +1 -0
  188. package/build/src/elements/setup/internals/LoginScreen.js +181 -0
  189. package/build/src/elements/setup/internals/LoginScreen.js.map +1 -0
  190. package/build/src/elements/setup/internals/LoginScreen.styles.d.ts +3 -0
  191. package/build/src/elements/setup/internals/LoginScreen.styles.d.ts.map +1 -0
  192. package/build/src/elements/setup/internals/LoginScreen.styles.js +3 -0
  193. package/build/src/elements/setup/internals/LoginScreen.styles.js.map +1 -0
  194. package/build/src/elements/setup/internals/OrganizationCreateScreen.d.ts +67 -0
  195. package/build/src/elements/setup/internals/OrganizationCreateScreen.d.ts.map +1 -0
  196. package/build/src/elements/setup/internals/OrganizationCreateScreen.js +194 -0
  197. package/build/src/elements/setup/internals/OrganizationCreateScreen.js.map +1 -0
  198. package/build/src/elements/setup/internals/OrganizationCreateScreen.styles.d.ts +3 -0
  199. package/build/src/elements/setup/internals/OrganizationCreateScreen.styles.d.ts.map +1 -0
  200. package/build/src/elements/setup/internals/OrganizationCreateScreen.styles.js +3 -0
  201. package/build/src/elements/setup/internals/OrganizationCreateScreen.styles.js.map +1 -0
  202. package/build/src/elements/setup/internals/OrganizationSelectionScreen.d.ts +41 -0
  203. package/build/src/elements/setup/internals/OrganizationSelectionScreen.d.ts.map +1 -0
  204. package/build/src/elements/setup/internals/OrganizationSelectionScreen.js +123 -0
  205. package/build/src/elements/setup/internals/OrganizationSelectionScreen.js.map +1 -0
  206. package/build/src/elements/setup/internals/OrganizationSelectionScreen.styles.d.ts +3 -0
  207. package/build/src/elements/setup/internals/OrganizationSelectionScreen.styles.d.ts.map +1 -0
  208. package/build/src/elements/setup/internals/OrganizationSelectionScreen.styles.js +3 -0
  209. package/build/src/elements/setup/internals/OrganizationSelectionScreen.styles.js.map +1 -0
  210. package/build/src/elements/setup/internals/OrganizationSelector.d.ts +56 -0
  211. package/build/src/elements/setup/internals/OrganizationSelector.d.ts.map +1 -0
  212. package/build/src/elements/setup/internals/OrganizationSelector.js +140 -0
  213. package/build/src/elements/setup/internals/OrganizationSelector.js.map +1 -0
  214. package/build/src/elements/setup/internals/OrganizationSelector.styles.d.ts +3 -0
  215. package/build/src/elements/setup/internals/OrganizationSelector.styles.d.ts.map +1 -0
  216. package/build/src/elements/setup/internals/OrganizationSelector.styles.js +3 -0
  217. package/build/src/elements/setup/internals/OrganizationSelector.styles.js.map +1 -0
  218. package/build/src/elements/setup/internals/common.styles.d.ts +3 -0
  219. package/build/src/elements/setup/internals/common.styles.d.ts.map +1 -0
  220. package/build/src/elements/setup/internals/common.styles.js +72 -0
  221. package/build/src/elements/setup/internals/common.styles.js.map +1 -0
  222. package/build/src/elements/setup/internals/icons.d.ts +4 -0
  223. package/build/src/elements/setup/internals/icons.d.ts.map +1 -0
  224. package/build/src/elements/setup/internals/icons.js +41 -0
  225. package/build/src/elements/setup/internals/icons.js.map +1 -0
  226. package/build/src/elements/setup/invitation-screen.d.ts +13 -0
  227. package/build/src/elements/setup/invitation-screen.d.ts.map +1 -0
  228. package/build/src/elements/setup/invitation-screen.js +32 -0
  229. package/build/src/elements/setup/invitation-screen.js.map +1 -0
  230. package/build/src/elements/setup/login-screen.d.ts +12 -0
  231. package/build/src/elements/setup/login-screen.d.ts.map +1 -0
  232. package/build/src/elements/setup/login-screen.js +31 -0
  233. package/build/src/elements/setup/login-screen.js.map +1 -0
  234. package/build/src/elements/setup/organization-create-screen.d.ts +13 -0
  235. package/build/src/elements/setup/organization-create-screen.d.ts.map +1 -0
  236. package/build/src/elements/setup/organization-create-screen.js +32 -0
  237. package/build/src/elements/setup/organization-create-screen.js.map +1 -0
  238. package/build/src/elements/setup/organization-selection-screen.d.ts +14 -0
  239. package/build/src/elements/setup/organization-selection-screen.d.ts.map +1 -0
  240. package/build/src/elements/setup/organization-selection-screen.js +33 -0
  241. package/build/src/elements/setup/organization-selection-screen.js.map +1 -0
  242. package/build/src/elements/setup/organization-selector.d.ts +32 -0
  243. package/build/src/elements/setup/organization-selector.d.ts.map +1 -0
  244. package/build/src/elements/setup/organization-selector.js +50 -0
  245. package/build/src/elements/setup/organization-selector.js.map +1 -0
  246. package/build/src/elements/user/internals/UserAvatar.d.ts +3 -1
  247. package/build/src/elements/user/internals/UserAvatar.d.ts.map +1 -1
  248. package/build/src/elements/user/internals/UserAvatar.js +5 -1
  249. package/build/src/elements/user/internals/UserAvatar.js.map +1 -1
  250. package/build/src/events/DomainEvents.d.ts +31 -0
  251. package/build/src/events/DomainEvents.d.ts.map +1 -0
  252. package/build/src/events/DomainEvents.js +65 -0
  253. package/build/src/events/DomainEvents.js.map +1 -0
  254. package/build/src/events/EventTypes.d.ts +7 -0
  255. package/build/src/events/EventTypes.d.ts.map +1 -1
  256. package/build/src/events/EventTypes.js +8 -0
  257. package/build/src/events/EventTypes.js.map +1 -1
  258. package/build/src/events/Events.d.ts +32 -25
  259. package/build/src/events/Events.d.ts.map +1 -1
  260. package/build/src/events/Events.js +2 -0
  261. package/build/src/events/Events.js.map +1 -1
  262. package/build/src/exceptions/builder.d.ts +11 -0
  263. package/build/src/exceptions/builder.d.ts.map +1 -0
  264. package/build/src/exceptions/builder.js +29 -0
  265. package/build/src/exceptions/builder.js.map +1 -0
  266. package/build/src/help/help_coordinator.d.ts +82 -0
  267. package/build/src/help/help_coordinator.d.ts.map +1 -0
  268. package/build/src/help/help_coordinator.js +206 -0
  269. package/build/src/help/help_coordinator.js.map +1 -0
  270. package/build/src/help/help_panel.d.ts +88 -0
  271. package/build/src/help/help_panel.d.ts.map +1 -0
  272. package/build/src/help/help_panel.js +323 -0
  273. package/build/src/help/help_panel.js.map +1 -0
  274. package/build/src/help/help_panel.styles.d.ts +3 -0
  275. package/build/src/help/help_panel.styles.d.ts.map +1 -0
  276. package/build/src/help/help_panel.styles.js +196 -0
  277. package/build/src/help/help_panel.styles.js.map +1 -0
  278. package/build/src/help/help_service_controller.d.ts +108 -0
  279. package/build/src/help/help_service_controller.d.ts.map +1 -0
  280. package/build/src/help/help_service_controller.js +252 -0
  281. package/build/src/help/help_service_controller.js.map +1 -0
  282. package/build/src/help/help_topic.d.ts +60 -0
  283. package/build/src/help/help_topic.d.ts.map +1 -0
  284. package/build/src/help/help_topic.js +2 -0
  285. package/build/src/help/help_topic.js.map +1 -0
  286. package/build/src/help/index.d.ts +6 -0
  287. package/build/src/help/index.d.ts.map +1 -0
  288. package/build/src/help/index.js +6 -0
  289. package/build/src/help/index.js.map +1 -0
  290. package/build/src/help/render.d.ts +14 -0
  291. package/build/src/help/render.d.ts.map +1 -0
  292. package/build/src/help/render.js +37 -0
  293. package/build/src/help/render.js.map +1 -0
  294. package/build/src/lib/Dom.d.ts +7 -0
  295. package/build/src/lib/Dom.d.ts.map +1 -1
  296. package/build/src/lib/Dom.js +33 -0
  297. package/build/src/lib/Dom.js.map +1 -1
  298. package/build/src/lib/files/Utils.d.ts +10 -0
  299. package/build/src/lib/files/Utils.d.ts.map +1 -1
  300. package/build/src/lib/files/Utils.js +47 -0
  301. package/build/src/lib/files/Utils.js.map +1 -1
  302. package/build/src/md/button/internals/base.d.ts +5 -0
  303. package/build/src/md/button/internals/base.d.ts.map +1 -1
  304. package/build/src/md/button/internals/base.js +23 -4
  305. package/build/src/md/button/internals/base.js.map +1 -1
  306. package/build/src/md/dropdown-list/internals/UiDropdownList.d.ts.map +1 -1
  307. package/build/src/md/dropdown-list/internals/UiDropdownList.js +11 -5
  308. package/build/src/md/dropdown-list/internals/UiDropdownList.js.map +1 -1
  309. package/build/src/md/icons/Icons.d.ts +2 -1
  310. package/build/src/md/icons/Icons.d.ts.map +1 -1
  311. package/build/src/md/icons/Icons.js +1 -0
  312. package/build/src/md/icons/Icons.js.map +1 -1
  313. package/build/src/md/input/Input.d.ts.map +1 -1
  314. package/build/src/md/input/Input.js +14 -9
  315. package/build/src/md/input/Input.js.map +1 -1
  316. package/build/src/md/list/internals/List.d.ts +8 -0
  317. package/build/src/md/list/internals/List.d.ts.map +1 -1
  318. package/build/src/md/list/internals/List.js +24 -2
  319. package/build/src/md/list/internals/List.js.map +1 -1
  320. package/build/src/md/list/internals/ListItem.d.ts.map +1 -1
  321. package/build/src/md/list/internals/ListItem.js +8 -4
  322. package/build/src/md/list/internals/ListItem.js.map +1 -1
  323. package/build/src/md/menu/internal/Menu.js +2 -2
  324. package/build/src/md/menu/internal/Menu.js.map +1 -1
  325. package/build/src/md/menu/internal/Menu.styles.d.ts.map +1 -1
  326. package/build/src/md/menu/internal/Menu.styles.js +4 -2
  327. package/build/src/md/menu/internal/Menu.styles.js.map +1 -1
  328. package/build/src/md/select/internals/Select.d.ts +4 -3
  329. package/build/src/md/select/internals/Select.d.ts.map +1 -1
  330. package/build/src/md/select/internals/Select.js +12 -15
  331. package/build/src/md/select/internals/Select.js.map +1 -1
  332. package/build/src/md/select/internals/Select.styles.d.ts.map +1 -1
  333. package/build/src/md/select/internals/Select.styles.js +3 -0
  334. package/build/src/md/select/internals/Select.styles.js.map +1 -1
  335. package/build/src/md/switch/internals/SwitchElement.js +3 -3
  336. package/build/src/md/switch/internals/SwitchElement.js.map +1 -1
  337. package/build/src/modeling/api-create-action-editor.d.ts +17 -0
  338. package/build/src/modeling/api-create-action-editor.d.ts.map +1 -0
  339. package/build/src/modeling/api-create-action-editor.js +34 -0
  340. package/build/src/modeling/api-create-action-editor.js.map +1 -0
  341. package/build/src/modeling/api-delete-action-editor.d.ts +21 -0
  342. package/build/src/modeling/api-delete-action-editor.d.ts.map +1 -0
  343. package/build/src/modeling/api-delete-action-editor.js +38 -0
  344. package/build/src/modeling/api-delete-action-editor.js.map +1 -0
  345. package/build/src/modeling/api-list-action-editor.d.ts +25 -0
  346. package/build/src/modeling/api-list-action-editor.d.ts.map +1 -0
  347. package/build/src/modeling/api-list-action-editor.js +42 -0
  348. package/build/src/modeling/api-list-action-editor.js.map +1 -0
  349. package/build/src/modeling/api-modeling-access-configuration.d.ts +21 -0
  350. package/build/src/modeling/api-modeling-access-configuration.d.ts.map +1 -0
  351. package/build/src/modeling/api-modeling-access-configuration.js +37 -0
  352. package/build/src/modeling/api-modeling-access-configuration.js.map +1 -0
  353. package/build/src/modeling/api-modeling-access.d.ts +19 -0
  354. package/build/src/modeling/api-modeling-access.d.ts.map +1 -0
  355. package/build/src/modeling/api-modeling-access.js +39 -0
  356. package/build/src/modeling/api-modeling-access.js.map +1 -0
  357. package/build/src/modeling/api-modeling-actions.d.ts +20 -0
  358. package/build/src/modeling/api-modeling-actions.d.ts.map +1 -0
  359. package/build/src/modeling/api-modeling-actions.js +40 -0
  360. package/build/src/modeling/api-modeling-actions.js.map +1 -0
  361. package/build/src/modeling/api-modeling-description.d.ts +15 -0
  362. package/build/src/modeling/api-modeling-description.d.ts.map +1 -0
  363. package/build/src/modeling/api-modeling-description.js +35 -0
  364. package/build/src/modeling/api-modeling-description.js.map +1 -0
  365. package/build/src/modeling/api-modeling-entity-card.d.ts +11 -0
  366. package/build/src/modeling/api-modeling-entity-card.d.ts.map +1 -0
  367. package/build/src/modeling/api-modeling-entity-card.js +28 -0
  368. package/build/src/modeling/api-modeling-entity-card.js.map +1 -0
  369. package/build/src/modeling/api-modeling-entity-editor.d.ts +17 -0
  370. package/build/src/modeling/api-modeling-entity-editor.d.ts.map +1 -0
  371. package/build/src/modeling/api-modeling-entity-editor.js +35 -0
  372. package/build/src/modeling/api-modeling-entity-editor.js.map +1 -0
  373. package/build/src/modeling/api-modeling-navigation.d.ts +13 -0
  374. package/build/src/modeling/api-modeling-navigation.d.ts.map +1 -0
  375. package/build/src/modeling/api-modeling-navigation.js +31 -0
  376. package/build/src/modeling/api-modeling-navigation.js.map +1 -0
  377. package/build/src/modeling/api-modeling-rate-limiting.d.ts +19 -0
  378. package/build/src/modeling/api-modeling-rate-limiting.d.ts.map +1 -0
  379. package/build/src/modeling/api-modeling-rate-limiting.js +35 -0
  380. package/build/src/modeling/api-modeling-rate-limiting.js.map +1 -0
  381. package/build/src/modeling/api-modeling-session.d.ts +31 -0
  382. package/build/src/modeling/api-modeling-session.d.ts.map +1 -0
  383. package/build/src/modeling/api-modeling-session.js +51 -0
  384. package/build/src/modeling/api-modeling-session.js.map +1 -0
  385. package/build/src/modeling/api-read-action-editor.d.ts +17 -0
  386. package/build/src/modeling/api-read-action-editor.d.ts.map +1 -0
  387. package/build/src/modeling/api-read-action-editor.js +34 -0
  388. package/build/src/modeling/api-read-action-editor.js.map +1 -0
  389. package/build/src/modeling/api-search-action-editor.d.ts +22 -0
  390. package/build/src/modeling/api-search-action-editor.d.ts.map +1 -0
  391. package/build/src/modeling/api-search-action-editor.js +39 -0
  392. package/build/src/modeling/api-search-action-editor.js.map +1 -0
  393. package/build/src/modeling/api-update-action-editor.d.ts +18 -0
  394. package/build/src/modeling/api-update-action-editor.d.ts.map +1 -0
  395. package/build/src/modeling/api-update-action-editor.js +35 -0
  396. package/build/src/modeling/api-update-action-editor.js.map +1 -0
  397. package/build/src/modeling/data-catalog-browser.d.ts +12 -0
  398. package/build/src/modeling/data-catalog-browser.d.ts.map +1 -0
  399. package/build/src/modeling/data-catalog-browser.js +28 -0
  400. package/build/src/modeling/data-catalog-browser.js.map +1 -0
  401. package/build/src/modeling/dialogs/CalculatedTaxonomy.d.ts +64 -0
  402. package/build/src/modeling/dialogs/CalculatedTaxonomy.d.ts.map +1 -0
  403. package/build/src/modeling/dialogs/CalculatedTaxonomy.js +299 -0
  404. package/build/src/modeling/dialogs/CalculatedTaxonomy.js.map +1 -0
  405. package/build/src/modeling/dialogs/CategoryTaxonomy.d.ts +25 -0
  406. package/build/src/modeling/dialogs/CategoryTaxonomy.d.ts.map +1 -0
  407. package/build/src/modeling/dialogs/CategoryTaxonomy.js +210 -0
  408. package/build/src/modeling/dialogs/CategoryTaxonomy.js.map +1 -0
  409. package/build/src/modeling/dialogs/CurrencyTaxonomy.d.ts +27 -0
  410. package/build/src/modeling/dialogs/CurrencyTaxonomy.d.ts.map +1 -0
  411. package/build/src/modeling/dialogs/CurrencyTaxonomy.js +212 -0
  412. package/build/src/modeling/dialogs/CurrencyTaxonomy.js.map +1 -0
  413. package/build/src/modeling/dialogs/EmailTaxonomy.d.ts +21 -0
  414. package/build/src/modeling/dialogs/EmailTaxonomy.d.ts.map +1 -0
  415. package/build/src/modeling/dialogs/EmailTaxonomy.js +166 -0
  416. package/build/src/modeling/dialogs/EmailTaxonomy.js.map +1 -0
  417. package/build/src/modeling/dialogs/GeospatialCoordinatesTaxonomy.d.ts +34 -0
  418. package/build/src/modeling/dialogs/GeospatialCoordinatesTaxonomy.d.ts.map +1 -0
  419. package/build/src/modeling/dialogs/GeospatialCoordinatesTaxonomy.js +488 -0
  420. package/build/src/modeling/dialogs/GeospatialCoordinatesTaxonomy.js.map +1 -0
  421. package/build/src/modeling/dialogs/HtmlTaxonomy.d.ts +31 -0
  422. package/build/src/modeling/dialogs/HtmlTaxonomy.d.ts.map +1 -0
  423. package/build/src/modeling/dialogs/HtmlTaxonomy.js +331 -0
  424. package/build/src/modeling/dialogs/HtmlTaxonomy.js.map +1 -0
  425. package/build/src/modeling/dialogs/MarkdownTaxonomy.d.ts +29 -0
  426. package/build/src/modeling/dialogs/MarkdownTaxonomy.d.ts.map +1 -0
  427. package/build/src/modeling/dialogs/MarkdownTaxonomy.js +290 -0
  428. package/build/src/modeling/dialogs/MarkdownTaxonomy.js.map +1 -0
  429. package/build/src/modeling/dialogs/PasswordTaxonomy.d.ts +22 -0
  430. package/build/src/modeling/dialogs/PasswordTaxonomy.d.ts.map +1 -0
  431. package/build/src/modeling/dialogs/PasswordTaxonomy.js +206 -0
  432. package/build/src/modeling/dialogs/PasswordTaxonomy.js.map +1 -0
  433. package/build/src/modeling/dialogs/PhoneTaxonomy.d.ts +21 -0
  434. package/build/src/modeling/dialogs/PhoneTaxonomy.d.ts.map +1 -0
  435. package/build/src/modeling/dialogs/PhoneTaxonomy.js +242 -0
  436. package/build/src/modeling/dialogs/PhoneTaxonomy.js.map +1 -0
  437. package/build/src/modeling/dialogs/PublicUniqueNameTaxonomy.d.ts +28 -0
  438. package/build/src/modeling/dialogs/PublicUniqueNameTaxonomy.d.ts.map +1 -0
  439. package/build/src/modeling/dialogs/PublicUniqueNameTaxonomy.js +205 -0
  440. package/build/src/modeling/dialogs/PublicUniqueNameTaxonomy.js.map +1 -0
  441. package/build/src/modeling/dialogs/SkuTaxonomy.d.ts +31 -0
  442. package/build/src/modeling/dialogs/SkuTaxonomy.d.ts.map +1 -0
  443. package/build/src/modeling/dialogs/SkuTaxonomy.js +319 -0
  444. package/build/src/modeling/dialogs/SkuTaxonomy.js.map +1 -0
  445. package/build/src/modeling/dialogs/StatusTaxonomy.d.ts +27 -0
  446. package/build/src/modeling/dialogs/StatusTaxonomy.d.ts.map +1 -0
  447. package/build/src/modeling/dialogs/StatusTaxonomy.js +138 -0
  448. package/build/src/modeling/dialogs/StatusTaxonomy.js.map +1 -0
  449. package/build/src/modeling/dialogs/TagsTaxonomy.d.ts +23 -0
  450. package/build/src/modeling/dialogs/TagsTaxonomy.d.ts.map +1 -0
  451. package/build/src/modeling/dialogs/TagsTaxonomy.js +169 -0
  452. package/build/src/modeling/dialogs/TagsTaxonomy.js.map +1 -0
  453. package/build/src/modeling/dialogs/TaxonomyDialog.d.ts +53 -0
  454. package/build/src/modeling/dialogs/TaxonomyDialog.d.ts.map +1 -0
  455. package/build/src/modeling/dialogs/TaxonomyDialog.js +176 -0
  456. package/build/src/modeling/dialogs/TaxonomyDialog.js.map +1 -0
  457. package/build/src/modeling/dialogs/UrlTaxonomy.d.ts +19 -0
  458. package/build/src/modeling/dialogs/UrlTaxonomy.d.ts.map +1 -0
  459. package/build/src/modeling/dialogs/UrlTaxonomy.js +199 -0
  460. package/build/src/modeling/dialogs/UrlTaxonomy.js.map +1 -0
  461. package/build/src/modeling/dialogs/common.d.ts +3 -0
  462. package/build/src/modeling/dialogs/common.d.ts.map +1 -0
  463. package/build/src/modeling/dialogs/common.js +52 -0
  464. package/build/src/modeling/dialogs/common.js.map +1 -0
  465. package/build/src/modeling/domain-association-editor.d.ts +20 -0
  466. package/build/src/modeling/domain-association-editor.d.ts.map +1 -0
  467. package/build/src/modeling/domain-association-editor.js +38 -0
  468. package/build/src/modeling/domain-association-editor.js.map +1 -0
  469. package/build/src/modeling/domain-auto-fields-dialog.d.ts +23 -0
  470. package/build/src/modeling/domain-auto-fields-dialog.d.ts.map +1 -0
  471. package/build/src/modeling/domain-auto-fields-dialog.js +58 -0
  472. package/build/src/modeling/domain-auto-fields-dialog.js.map +1 -0
  473. package/build/src/modeling/domain-browser.d.ts +19 -0
  474. package/build/src/modeling/domain-browser.d.ts.map +1 -0
  475. package/build/src/modeling/domain-browser.js +37 -0
  476. package/build/src/modeling/domain-browser.js.map +1 -0
  477. package/build/src/modeling/domain-entity-editor.d.ts +26 -0
  478. package/build/src/modeling/domain-entity-editor.d.ts.map +1 -0
  479. package/build/src/modeling/domain-entity-editor.js +46 -0
  480. package/build/src/modeling/domain-entity-editor.js.map +1 -0
  481. package/build/src/modeling/domain-file-import.d.ts +16 -0
  482. package/build/src/modeling/domain-file-import.d.ts.map +1 -0
  483. package/build/src/modeling/domain-file-import.js +34 -0
  484. package/build/src/modeling/domain-file-import.js.map +1 -0
  485. package/build/src/modeling/domain-model-editor.d.ts +13 -0
  486. package/build/src/modeling/domain-model-editor.d.ts.map +1 -0
  487. package/build/src/modeling/domain-model-editor.js +33 -0
  488. package/build/src/modeling/domain-model-editor.js.map +1 -0
  489. package/build/src/modeling/domain-namespace-editor.d.ts +14 -0
  490. package/build/src/modeling/domain-namespace-editor.d.ts.map +1 -0
  491. package/build/src/modeling/domain-namespace-editor.js +34 -0
  492. package/build/src/modeling/domain-namespace-editor.js.map +1 -0
  493. package/build/src/modeling/domain-navigation.d.ts +15 -0
  494. package/build/src/modeling/domain-navigation.d.ts.map +1 -0
  495. package/build/src/modeling/domain-navigation.js +33 -0
  496. package/build/src/modeling/domain-navigation.js.map +1 -0
  497. package/build/src/modeling/domain-property-editor.d.ts +14 -0
  498. package/build/src/modeling/domain-property-editor.d.ts.map +1 -0
  499. package/build/src/modeling/domain-property-editor.js +33 -0
  500. package/build/src/modeling/domain-property-editor.js.map +1 -0
  501. package/build/src/modeling/domain-template-browser.d.ts +14 -0
  502. package/build/src/modeling/domain-template-browser.d.ts.map +1 -0
  503. package/build/src/modeling/domain-template-browser.js +31 -0
  504. package/build/src/modeling/domain-template-browser.js.map +1 -0
  505. package/build/src/modeling/domain-validation-report.d.ts +13 -0
  506. package/build/src/modeling/domain-validation-report.d.ts.map +1 -0
  507. package/build/src/modeling/domain-validation-report.js +30 -0
  508. package/build/src/modeling/domain-validation-report.js.map +1 -0
  509. package/build/src/modeling/internals/ApiCreateActionEditor.d.ts +60 -0
  510. package/build/src/modeling/internals/ApiCreateActionEditor.d.ts.map +1 -0
  511. package/build/src/modeling/internals/ApiCreateActionEditor.js +216 -0
  512. package/build/src/modeling/internals/ApiCreateActionEditor.js.map +1 -0
  513. package/build/src/modeling/internals/ApiDeleteActionEditor.d.ts +70 -0
  514. package/build/src/modeling/internals/ApiDeleteActionEditor.d.ts.map +1 -0
  515. package/build/src/modeling/internals/ApiDeleteActionEditor.js +301 -0
  516. package/build/src/modeling/internals/ApiDeleteActionEditor.js.map +1 -0
  517. package/build/src/modeling/internals/ApiEditor.d.ts +59 -0
  518. package/build/src/modeling/internals/ApiEditor.d.ts.map +1 -0
  519. package/build/src/modeling/internals/ApiEditor.js +119 -0
  520. package/build/src/modeling/internals/ApiEditor.js.map +1 -0
  521. package/build/src/modeling/internals/ApiListActionEditor.d.ts +93 -0
  522. package/build/src/modeling/internals/ApiListActionEditor.d.ts.map +1 -0
  523. package/build/src/modeling/internals/ApiListActionEditor.js +505 -0
  524. package/build/src/modeling/internals/ApiListActionEditor.js.map +1 -0
  525. package/build/src/modeling/internals/ApiModelingAccessConfiguration.d.ts +100 -0
  526. package/build/src/modeling/internals/ApiModelingAccessConfiguration.d.ts.map +1 -0
  527. package/build/src/modeling/internals/ApiModelingAccessConfiguration.js +607 -0
  528. package/build/src/modeling/internals/ApiModelingAccessConfiguration.js.map +1 -0
  529. package/build/src/modeling/internals/ApiModelingAccessScreen.d.ts +36 -0
  530. package/build/src/modeling/internals/ApiModelingAccessScreen.d.ts.map +1 -0
  531. package/build/src/modeling/internals/ApiModelingAccessScreen.js +296 -0
  532. package/build/src/modeling/internals/ApiModelingAccessScreen.js.map +1 -0
  533. package/build/src/modeling/internals/ApiModelingActionsScreen.d.ts +82 -0
  534. package/build/src/modeling/internals/ApiModelingActionsScreen.d.ts.map +1 -0
  535. package/build/src/modeling/internals/ApiModelingActionsScreen.js +298 -0
  536. package/build/src/modeling/internals/ApiModelingActionsScreen.js.map +1 -0
  537. package/build/src/modeling/internals/ApiModelingDescriptionScreen.d.ts +40 -0
  538. package/build/src/modeling/internals/ApiModelingDescriptionScreen.d.ts.map +1 -0
  539. package/build/src/modeling/internals/ApiModelingDescriptionScreen.js +356 -0
  540. package/build/src/modeling/internals/ApiModelingDescriptionScreen.js.map +1 -0
  541. package/build/src/modeling/internals/ApiModelingEntityCard.d.ts +74 -0
  542. package/build/src/modeling/internals/ApiModelingEntityCard.d.ts.map +1 -0
  543. package/build/src/modeling/internals/ApiModelingEntityCard.js +225 -0
  544. package/build/src/modeling/internals/ApiModelingEntityCard.js.map +1 -0
  545. package/build/src/modeling/internals/ApiModelingEntityEditor.d.ts +50 -0
  546. package/build/src/modeling/internals/ApiModelingEntityEditor.d.ts.map +1 -0
  547. package/build/src/modeling/internals/ApiModelingEntityEditor.js +384 -0
  548. package/build/src/modeling/internals/ApiModelingEntityEditor.js.map +1 -0
  549. package/build/src/modeling/internals/ApiModelingNavigation.d.ts +36 -0
  550. package/build/src/modeling/internals/ApiModelingNavigation.d.ts.map +1 -0
  551. package/build/src/modeling/internals/ApiModelingNavigation.js +115 -0
  552. package/build/src/modeling/internals/ApiModelingNavigation.js.map +1 -0
  553. package/build/src/modeling/internals/ApiModelingRateLimiting.d.ts +59 -0
  554. package/build/src/modeling/internals/ApiModelingRateLimiting.d.ts.map +1 -0
  555. package/build/src/modeling/internals/ApiModelingRateLimiting.js +394 -0
  556. package/build/src/modeling/internals/ApiModelingRateLimiting.js.map +1 -0
  557. package/build/src/modeling/internals/ApiModelingScreen.d.ts +23 -0
  558. package/build/src/modeling/internals/ApiModelingScreen.d.ts.map +1 -0
  559. package/build/src/modeling/internals/ApiModelingScreen.js +50 -0
  560. package/build/src/modeling/internals/ApiModelingScreen.js.map +1 -0
  561. package/build/src/modeling/internals/ApiModelingSessionScreen.d.ts +79 -0
  562. package/build/src/modeling/internals/ApiModelingSessionScreen.d.ts.map +1 -0
  563. package/build/src/modeling/internals/ApiModelingSessionScreen.js +708 -0
  564. package/build/src/modeling/internals/ApiModelingSessionScreen.js.map +1 -0
  565. package/build/src/modeling/internals/ApiReadActionEditor.d.ts +60 -0
  566. package/build/src/modeling/internals/ApiReadActionEditor.d.ts.map +1 -0
  567. package/build/src/modeling/internals/ApiReadActionEditor.js +216 -0
  568. package/build/src/modeling/internals/ApiReadActionEditor.js.map +1 -0
  569. package/build/src/modeling/internals/ApiSearchActionEditor.d.ts +75 -0
  570. package/build/src/modeling/internals/ApiSearchActionEditor.d.ts.map +1 -0
  571. package/build/src/modeling/internals/ApiSearchActionEditor.js +340 -0
  572. package/build/src/modeling/internals/ApiSearchActionEditor.js.map +1 -0
  573. package/build/src/modeling/internals/ApiUpdateActionEditor.d.ts +67 -0
  574. package/build/src/modeling/internals/ApiUpdateActionEditor.d.ts.map +1 -0
  575. package/build/src/modeling/internals/ApiUpdateActionEditor.js +301 -0
  576. package/build/src/modeling/internals/ApiUpdateActionEditor.js.map +1 -0
  577. package/build/src/modeling/internals/DataCatalogBrowser.d.ts +108 -0
  578. package/build/src/modeling/internals/DataCatalogBrowser.d.ts.map +1 -0
  579. package/build/src/modeling/internals/DataCatalogBrowser.js +320 -0
  580. package/build/src/modeling/internals/DataCatalogBrowser.js.map +1 -0
  581. package/build/src/modeling/internals/DomainAssociationEditor.d.ts +116 -0
  582. package/build/src/modeling/internals/DomainAssociationEditor.d.ts.map +1 -0
  583. package/build/src/modeling/internals/DomainAssociationEditor.js +688 -0
  584. package/build/src/modeling/internals/DomainAssociationEditor.js.map +1 -0
  585. package/build/src/modeling/internals/DomainAutoFieldsDialog.d.ts +45 -0
  586. package/build/src/modeling/internals/DomainAutoFieldsDialog.d.ts.map +1 -0
  587. package/build/src/modeling/internals/DomainAutoFieldsDialog.js +290 -0
  588. package/build/src/modeling/internals/DomainAutoFieldsDialog.js.map +1 -0
  589. package/build/src/modeling/internals/DomainBrowser.d.ts +176 -0
  590. package/build/src/modeling/internals/DomainBrowser.d.ts.map +1 -0
  591. package/build/src/modeling/internals/DomainBrowser.js +492 -0
  592. package/build/src/modeling/internals/DomainBrowser.js.map +1 -0
  593. package/build/src/modeling/internals/DomainEntityEditor.d.ts +168 -0
  594. package/build/src/modeling/internals/DomainEntityEditor.d.ts.map +1 -0
  595. package/build/src/modeling/internals/DomainEntityEditor.js +1183 -0
  596. package/build/src/modeling/internals/DomainEntityEditor.js.map +1 -0
  597. package/build/src/modeling/internals/DomainFileImport.d.ts +101 -0
  598. package/build/src/modeling/internals/DomainFileImport.d.ts.map +1 -0
  599. package/build/src/modeling/internals/DomainFileImport.js +473 -0
  600. package/build/src/modeling/internals/DomainFileImport.js.map +1 -0
  601. package/build/src/modeling/internals/DomainModelEditor.d.ts +15 -0
  602. package/build/src/modeling/internals/DomainModelEditor.d.ts.map +1 -0
  603. package/build/src/modeling/internals/DomainModelEditor.js +81 -0
  604. package/build/src/modeling/internals/DomainModelEditor.js.map +1 -0
  605. package/build/src/modeling/internals/DomainNamespaceEditor.d.ts +15 -0
  606. package/build/src/modeling/internals/DomainNamespaceEditor.d.ts.map +1 -0
  607. package/build/src/modeling/internals/DomainNamespaceEditor.js +81 -0
  608. package/build/src/modeling/internals/DomainNamespaceEditor.js.map +1 -0
  609. package/build/src/modeling/internals/DomainNavigation.d.ts +352 -0
  610. package/build/src/modeling/internals/DomainNavigation.d.ts.map +1 -0
  611. package/build/src/modeling/internals/DomainNavigation.js +1734 -0
  612. package/build/src/modeling/internals/DomainNavigation.js.map +1 -0
  613. package/build/src/modeling/internals/DomainPropertyEditor.d.ts +289 -0
  614. package/build/src/modeling/internals/DomainPropertyEditor.d.ts.map +1 -0
  615. package/build/src/modeling/internals/DomainPropertyEditor.js +1478 -0
  616. package/build/src/modeling/internals/DomainPropertyEditor.js.map +1 -0
  617. package/build/src/modeling/internals/DomainTemplateBrowser.d.ts +82 -0
  618. package/build/src/modeling/internals/DomainTemplateBrowser.d.ts.map +1 -0
  619. package/build/src/modeling/internals/DomainTemplateBrowser.js +492 -0
  620. package/build/src/modeling/internals/DomainTemplateBrowser.js.map +1 -0
  621. package/build/src/modeling/internals/DomainValidationReport.d.ts +85 -0
  622. package/build/src/modeling/internals/DomainValidationReport.d.ts.map +1 -0
  623. package/build/src/modeling/internals/DomainValidationReport.js +372 -0
  624. package/build/src/modeling/internals/DomainValidationReport.js.map +1 -0
  625. package/build/src/modeling/internals/ModelingElement.d.ts +56 -0
  626. package/build/src/modeling/internals/ModelingElement.d.ts.map +1 -0
  627. package/build/src/modeling/internals/ModelingElement.js +122 -0
  628. package/build/src/modeling/internals/ModelingElement.js.map +1 -0
  629. package/build/src/modeling/internals/styles/AccessConfiguration.styles.d.ts +3 -0
  630. package/build/src/modeling/internals/styles/AccessConfiguration.styles.d.ts.map +1 -0
  631. package/build/src/modeling/internals/styles/AccessConfiguration.styles.js +106 -0
  632. package/build/src/modeling/internals/styles/AccessConfiguration.styles.js.map +1 -0
  633. package/build/src/modeling/internals/styles/ApiCreateActionEditor.styles.d.ts +3 -0
  634. package/build/src/modeling/internals/styles/ApiCreateActionEditor.styles.d.ts.map +1 -0
  635. package/build/src/modeling/internals/styles/ApiCreateActionEditor.styles.js +15 -0
  636. package/build/src/modeling/internals/styles/ApiCreateActionEditor.styles.js.map +1 -0
  637. package/build/src/modeling/internals/styles/ApiDeleteActionEditor.styles.d.ts +3 -0
  638. package/build/src/modeling/internals/styles/ApiDeleteActionEditor.styles.d.ts.map +1 -0
  639. package/build/src/modeling/internals/styles/ApiDeleteActionEditor.styles.js +15 -0
  640. package/build/src/modeling/internals/styles/ApiDeleteActionEditor.styles.js.map +1 -0
  641. package/build/src/modeling/internals/styles/ApiListActionEditor.styles.d.ts +3 -0
  642. package/build/src/modeling/internals/styles/ApiListActionEditor.styles.d.ts.map +1 -0
  643. package/build/src/modeling/internals/styles/ApiListActionEditor.styles.js +15 -0
  644. package/build/src/modeling/internals/styles/ApiListActionEditor.styles.js.map +1 -0
  645. package/build/src/modeling/internals/styles/ApiModelingActionsScreen.styles.d.ts +3 -0
  646. package/build/src/modeling/internals/styles/ApiModelingActionsScreen.styles.d.ts.map +1 -0
  647. package/build/src/modeling/internals/styles/ApiModelingActionsScreen.styles.js +31 -0
  648. package/build/src/modeling/internals/styles/ApiModelingActionsScreen.styles.js.map +1 -0
  649. package/build/src/modeling/internals/styles/ApiModelingEntityCard.d.ts +3 -0
  650. package/build/src/modeling/internals/styles/ApiModelingEntityCard.d.ts.map +1 -0
  651. package/build/src/modeling/internals/styles/ApiModelingEntityCard.js +85 -0
  652. package/build/src/modeling/internals/styles/ApiModelingEntityCard.js.map +1 -0
  653. package/build/src/modeling/internals/styles/ApiModelingEntityEditor.d.ts +3 -0
  654. package/build/src/modeling/internals/styles/ApiModelingEntityEditor.d.ts.map +1 -0
  655. package/build/src/modeling/internals/styles/ApiModelingEntityEditor.js +68 -0
  656. package/build/src/modeling/internals/styles/ApiModelingEntityEditor.js.map +1 -0
  657. package/build/src/modeling/internals/styles/ApiModelingNavigation.styles.d.ts +3 -0
  658. package/build/src/modeling/internals/styles/ApiModelingNavigation.styles.d.ts.map +1 -0
  659. package/build/src/modeling/internals/styles/ApiModelingNavigation.styles.js +23 -0
  660. package/build/src/modeling/internals/styles/ApiModelingNavigation.styles.js.map +1 -0
  661. package/build/src/modeling/internals/styles/ApiReadActionEditor.styles.d.ts +3 -0
  662. package/build/src/modeling/internals/styles/ApiReadActionEditor.styles.d.ts.map +1 -0
  663. package/build/src/modeling/internals/styles/ApiReadActionEditor.styles.js +15 -0
  664. package/build/src/modeling/internals/styles/ApiReadActionEditor.styles.js.map +1 -0
  665. package/build/src/modeling/internals/styles/ApiSearchActionEditor.styles.d.ts +3 -0
  666. package/build/src/modeling/internals/styles/ApiSearchActionEditor.styles.d.ts.map +1 -0
  667. package/build/src/modeling/internals/styles/ApiSearchActionEditor.styles.js +15 -0
  668. package/build/src/modeling/internals/styles/ApiSearchActionEditor.styles.js.map +1 -0
  669. package/build/src/modeling/internals/styles/ApiUpdateActionEditor.styles.d.ts +3 -0
  670. package/build/src/modeling/internals/styles/ApiUpdateActionEditor.styles.d.ts.map +1 -0
  671. package/build/src/modeling/internals/styles/ApiUpdateActionEditor.styles.js +15 -0
  672. package/build/src/modeling/internals/styles/ApiUpdateActionEditor.styles.js.map +1 -0
  673. package/build/src/modeling/internals/styles/DataCatalogBrowser.styles.d.ts +3 -0
  674. package/build/src/modeling/internals/styles/DataCatalogBrowser.styles.d.ts.map +1 -0
  675. package/build/src/modeling/internals/styles/DataCatalogBrowser.styles.js +53 -0
  676. package/build/src/modeling/internals/styles/DataCatalogBrowser.styles.js.map +1 -0
  677. package/build/src/modeling/internals/styles/DomainAutoFieldsDialog.d.ts +3 -0
  678. package/build/src/modeling/internals/styles/DomainAutoFieldsDialog.d.ts.map +1 -0
  679. package/build/src/modeling/internals/styles/DomainAutoFieldsDialog.js +35 -0
  680. package/build/src/modeling/internals/styles/DomainAutoFieldsDialog.js.map +1 -0
  681. package/build/src/modeling/internals/styles/DomainBrowser.styles.d.ts +3 -0
  682. package/build/src/modeling/internals/styles/DomainBrowser.styles.d.ts.map +1 -0
  683. package/build/src/modeling/internals/styles/DomainBrowser.styles.js +26 -0
  684. package/build/src/modeling/internals/styles/DomainBrowser.styles.js.map +1 -0
  685. package/build/src/modeling/internals/styles/DomainEntityEditor.styles.d.ts +3 -0
  686. package/build/src/modeling/internals/styles/DomainEntityEditor.styles.d.ts.map +1 -0
  687. package/build/src/modeling/internals/styles/DomainEntityEditor.styles.js +98 -0
  688. package/build/src/modeling/internals/styles/DomainEntityEditor.styles.js.map +1 -0
  689. package/build/src/modeling/internals/styles/DomainFileImport.styles.d.ts +3 -0
  690. package/build/src/modeling/internals/styles/DomainFileImport.styles.d.ts.map +1 -0
  691. package/build/src/modeling/internals/styles/DomainFileImport.styles.js +100 -0
  692. package/build/src/modeling/internals/styles/DomainFileImport.styles.js.map +1 -0
  693. package/build/src/modeling/internals/styles/DomainModelEditor.styles.d.ts +3 -0
  694. package/build/src/modeling/internals/styles/DomainModelEditor.styles.d.ts.map +1 -0
  695. package/build/src/modeling/internals/styles/DomainModelEditor.styles.js +7 -0
  696. package/build/src/modeling/internals/styles/DomainModelEditor.styles.js.map +1 -0
  697. package/build/src/modeling/internals/styles/DomainNamespaceEditor.styles.d.ts +3 -0
  698. package/build/src/modeling/internals/styles/DomainNamespaceEditor.styles.d.ts.map +1 -0
  699. package/build/src/modeling/internals/styles/DomainNamespaceEditor.styles.js +7 -0
  700. package/build/src/modeling/internals/styles/DomainNamespaceEditor.styles.js.map +1 -0
  701. package/build/src/modeling/internals/styles/DomainNavigation.styles.d.ts +3 -0
  702. package/build/src/modeling/internals/styles/DomainNavigation.styles.d.ts.map +1 -0
  703. package/build/src/modeling/internals/styles/DomainNavigation.styles.js +343 -0
  704. package/build/src/modeling/internals/styles/DomainNavigation.styles.js.map +1 -0
  705. package/build/src/modeling/internals/styles/DomainPropertyEditor.styles.d.ts +3 -0
  706. package/build/src/modeling/internals/styles/DomainPropertyEditor.styles.d.ts.map +1 -0
  707. package/build/src/modeling/internals/styles/DomainPropertyEditor.styles.js +18 -0
  708. package/build/src/modeling/internals/styles/DomainPropertyEditor.styles.js.map +1 -0
  709. package/build/src/modeling/internals/styles/DomainTemplateBrowser.styles.d.ts +3 -0
  710. package/build/src/modeling/internals/styles/DomainTemplateBrowser.styles.d.ts.map +1 -0
  711. package/build/src/modeling/internals/styles/DomainTemplateBrowser.styles.js +553 -0
  712. package/build/src/modeling/internals/styles/DomainTemplateBrowser.styles.js.map +1 -0
  713. package/build/src/modeling/internals/styles/DomainValidationReport.styles.d.ts +3 -0
  714. package/build/src/modeling/internals/styles/DomainValidationReport.styles.d.ts.map +1 -0
  715. package/build/src/modeling/internals/styles/DomainValidationReport.styles.js +75 -0
  716. package/build/src/modeling/internals/styles/DomainValidationReport.styles.js.map +1 -0
  717. package/build/src/modeling/internals/styles/EditorCommon.styles.d.ts +8 -0
  718. package/build/src/modeling/internals/styles/EditorCommon.styles.d.ts.map +1 -0
  719. package/build/src/modeling/internals/styles/EditorCommon.styles.js +141 -0
  720. package/build/src/modeling/internals/styles/EditorCommon.styles.js.map +1 -0
  721. package/build/src/modeling/internals/styles/RateLimiting.styles.d.ts +3 -0
  722. package/build/src/modeling/internals/styles/RateLimiting.styles.d.ts.map +1 -0
  723. package/build/src/modeling/internals/styles/RateLimiting.styles.js +83 -0
  724. package/build/src/modeling/internals/styles/RateLimiting.styles.js.map +1 -0
  725. package/build/src/modeling/internals/styles/api.styles.d.ts +3 -0
  726. package/build/src/modeling/internals/styles/api.styles.d.ts.map +1 -0
  727. package/build/src/modeling/internals/styles/api.styles.js +146 -0
  728. package/build/src/modeling/internals/styles/api.styles.js.map +1 -0
  729. package/build/src/modeling/internals/styles/form_styles.d.ts +3 -0
  730. package/build/src/modeling/internals/styles/form_styles.d.ts.map +1 -0
  731. package/build/src/modeling/internals/styles/form_styles.js +107 -0
  732. package/build/src/modeling/internals/styles/form_styles.js.map +1 -0
  733. package/build/src/modeling/internals/styles/learning.styles.d.ts +3 -0
  734. package/build/src/modeling/internals/styles/learning.styles.d.ts.map +1 -0
  735. package/build/src/modeling/internals/styles/learning.styles.js +40 -0
  736. package/build/src/modeling/internals/styles/learning.styles.js.map +1 -0
  737. package/build/src/modeling/lib/access_helpers.d.ts +8 -0
  738. package/build/src/modeling/lib/access_helpers.d.ts.map +1 -0
  739. package/build/src/modeling/lib/access_helpers.js +42 -0
  740. package/build/src/modeling/lib/access_helpers.js.map +1 -0
  741. package/build/src/modeling/lib/formula_parser.d.ts +57 -0
  742. package/build/src/modeling/lib/formula_parser.d.ts.map +1 -0
  743. package/build/src/modeling/lib/formula_parser.js +162 -0
  744. package/build/src/modeling/lib/formula_parser.js.map +1 -0
  745. package/build/src/modeling/lib/ui_mapping.d.ts +60 -0
  746. package/build/src/modeling/lib/ui_mapping.d.ts.map +1 -0
  747. package/build/src/modeling/lib/ui_mapping.js +244 -0
  748. package/build/src/modeling/lib/ui_mapping.js.map +1 -0
  749. package/build/src/modeling/lib/validators.d.ts +15 -0
  750. package/build/src/modeling/lib/validators.d.ts.map +1 -0
  751. package/build/src/modeling/lib/validators.js +26 -0
  752. package/build/src/modeling/lib/validators.js.map +1 -0
  753. package/build/src/modeling/types.d.ts +261 -0
  754. package/build/src/modeling/types.d.ts.map +1 -0
  755. package/build/src/modeling/types.js +2 -0
  756. package/build/src/modeling/types.js.map +1 -0
  757. package/build/src/providers/organization.d.ts +9 -0
  758. package/build/src/providers/organization.d.ts.map +1 -0
  759. package/build/src/providers/organization.js +6 -0
  760. package/build/src/providers/organization.js.map +1 -0
  761. package/build/src/providers/organizations.d.ts +9 -0
  762. package/build/src/providers/organizations.d.ts.map +1 -0
  763. package/build/src/providers/organizations.js +6 -0
  764. package/build/src/providers/organizations.js.map +1 -0
  765. package/build/src/providers/user.d.ts +9 -0
  766. package/build/src/providers/user.d.ts.map +1 -0
  767. package/build/src/providers/user.js +6 -0
  768. package/build/src/providers/user.js.map +1 -0
  769. package/build/src/services/CacheService.d.ts +29 -0
  770. package/build/src/services/CacheService.d.ts.map +1 -0
  771. package/build/src/services/CacheService.js +47 -0
  772. package/build/src/services/CacheService.js.map +1 -0
  773. package/build/src/services/ConfigurationService.d.ts +12 -0
  774. package/build/src/services/ConfigurationService.d.ts.map +1 -0
  775. package/build/src/services/ConfigurationService.js +23 -0
  776. package/build/src/services/ConfigurationService.js.map +1 -0
  777. package/build/src/services/LoggingService.d.ts +29 -0
  778. package/build/src/services/LoggingService.d.ts.map +1 -0
  779. package/build/src/services/LoggingService.js +49 -0
  780. package/build/src/services/LoggingService.js.map +1 -0
  781. package/build/src/services/OrganizationService.d.ts +79 -0
  782. package/build/src/services/OrganizationService.d.ts.map +1 -0
  783. package/build/src/services/OrganizationService.js +222 -0
  784. package/build/src/services/OrganizationService.js.map +1 -0
  785. package/build/src/services/SdkService.d.ts +22 -0
  786. package/build/src/services/SdkService.d.ts.map +1 -0
  787. package/build/src/services/SdkService.js +46 -0
  788. package/build/src/services/SdkService.js.map +1 -0
  789. package/build/src/services/TransmitService.d.ts +14 -0
  790. package/build/src/services/TransmitService.d.ts.map +1 -0
  791. package/build/src/services/TransmitService.js +23 -0
  792. package/build/src/services/TransmitService.js.map +1 -0
  793. package/build/src/services/UserCacheService.d.ts +22 -0
  794. package/build/src/services/UserCacheService.d.ts.map +1 -0
  795. package/build/src/services/UserCacheService.js +49 -0
  796. package/build/src/services/UserCacheService.js.map +1 -0
  797. package/build/src/services/UserService.d.ts +50 -0
  798. package/build/src/services/UserService.d.ts.map +1 -0
  799. package/build/src/services/UserService.js +199 -0
  800. package/build/src/services/UserService.js.map +1 -0
  801. package/build/src/services/api_service.d.ts +22 -0
  802. package/build/src/services/api_service.d.ts.map +1 -0
  803. package/build/src/services/api_service.js +4 -0
  804. package/build/src/services/api_service.js.map +1 -0
  805. package/build/tsconfig.tsbuildinfo +1 -1
  806. package/lit-plugin.log +7904 -0
  807. package/package.json +20 -9
  808. package/src/builders/DialogBuilder.ts +474 -0
  809. package/src/builders/README.md +272 -0
  810. package/src/cache/Cache.ts +265 -0
  811. package/src/core/Model.ts +53 -119
  812. package/src/core/ServiceManager.ts +1 -0
  813. package/src/data/BreadcrumbsModel.ts +85 -0
  814. package/src/data/DataCatalogModel.ts +199 -0
  815. package/src/data/DomainBrowserModel.ts +118 -0
  816. package/src/data/FileModel.ts +76 -0
  817. package/src/data/FileShareModel.ts +258 -0
  818. package/src/data/FilesModel.ts +226 -0
  819. package/src/data/InvitationModel.ts +69 -0
  820. package/src/data/PatchableFileModel.ts +293 -0
  821. package/src/data/PatchableLiveDataContentModel.ts +34 -0
  822. package/src/data/PatchableRawContentModel.ts +43 -0
  823. package/src/data/TrashModel.ts +125 -0
  824. package/src/data/UserModel.ts +102 -0
  825. package/src/data/UsersModel.ts +325 -0
  826. package/src/data/retry_logic.ts +111 -0
  827. package/src/elements/autocomplete/internals/autocomplete.ts +5 -2
  828. package/src/elements/data-table/DataTable.styles.ts +7 -2
  829. package/src/elements/data-table/DataTable.ts +24 -5
  830. package/src/elements/data-table/data-catalog-table.ts +22 -0
  831. package/src/elements/data-table/filesystem-table.ts +24 -0
  832. package/src/elements/data-table/internals/DataCatalog.styles.ts +29 -0
  833. package/src/elements/data-table/internals/DataCatalogTable.ts +234 -0
  834. package/src/elements/data-table/internals/Filesystem.styles.ts +23 -0
  835. package/src/elements/data-table/internals/FilesystemDataTable.ts +227 -0
  836. package/src/elements/data-table/internals/TrashDataTable.ts +157 -0
  837. package/src/elements/data-table/internals/UserData.styles.ts +16 -0
  838. package/src/elements/data-table/internals/UsersDataTable.ts +238 -0
  839. package/src/elements/data-table/trash-table.ts +16 -0
  840. package/src/elements/data-table/users-table.ts +16 -0
  841. package/src/elements/file-system/internals/Breadcrumbs.ts +0 -3
  842. package/src/elements/file-system/internals/QuickApiFilesystem.styles.ts +49 -0
  843. package/src/elements/file-system/internals/QuickApiFilesystem.ts +452 -0
  844. package/src/elements/file-system/internals/ShareFile.styles.ts +98 -0
  845. package/src/elements/file-system/internals/ShareFile.ts +540 -0
  846. package/src/elements/file-system/quick-api-filesystem.ts +16 -0
  847. package/src/elements/file-system/share-file.ts +26 -0
  848. package/src/elements/file-system/ui-breadcrumbs.ts +3 -0
  849. package/src/elements/layout/SplitItem.ts +0 -8
  850. package/src/elements/navigation/internals/Navigation.ts +9 -4
  851. package/src/elements/search-input/internals/input.styles.ts +38 -0
  852. package/src/elements/search-input/internals/input.ts +74 -0
  853. package/src/elements/search-input/search-input.ts +18 -0
  854. package/src/elements/setup/Readme.md +3 -0
  855. package/src/elements/setup/internals/InvitationScreen.styles.ts +3 -0
  856. package/src/elements/setup/internals/InvitationScreen.ts +418 -0
  857. package/src/elements/setup/internals/LoginScreen.styles.ts +3 -0
  858. package/src/elements/setup/internals/LoginScreen.ts +136 -0
  859. package/src/elements/setup/internals/OrganizationCreateScreen.styles.ts +3 -0
  860. package/src/elements/setup/internals/OrganizationCreateScreen.ts +170 -0
  861. package/src/elements/setup/internals/OrganizationSelectionScreen.styles.ts +3 -0
  862. package/src/elements/setup/internals/OrganizationSelectionScreen.ts +100 -0
  863. package/src/elements/setup/internals/OrganizationSelector.styles.ts +3 -0
  864. package/src/elements/setup/internals/OrganizationSelector.ts +133 -0
  865. package/src/elements/setup/internals/common.styles.ts +72 -0
  866. package/src/elements/setup/internals/icons.ts +43 -0
  867. package/src/elements/setup/invitation-screen.ts +20 -0
  868. package/src/elements/setup/login-screen.ts +19 -0
  869. package/src/elements/setup/organization-create-screen.ts +20 -0
  870. package/src/elements/setup/organization-selection-screen.ts +21 -0
  871. package/src/elements/setup/organization-selector.ts +38 -0
  872. package/src/elements/user/internals/UserAvatar.ts +7 -2
  873. package/src/events/DomainEvents.ts +80 -0
  874. package/src/events/EventTypes.ts +8 -0
  875. package/src/events/Events.ts +2 -0
  876. package/src/exceptions/builder.ts +28 -0
  877. package/src/help/README.md +99 -0
  878. package/src/help/help_coordinator.ts +168 -0
  879. package/src/help/help_panel.styles.ts +196 -0
  880. package/src/help/help_panel.ts +329 -0
  881. package/src/help/help_service_controller.ts +338 -0
  882. package/src/help/help_topic.ts +61 -0
  883. package/src/help/index.ts +8 -0
  884. package/src/help/render.ts +41 -0
  885. package/src/lib/Dom.ts +36 -0
  886. package/src/lib/files/Utils.ts +65 -0
  887. package/src/md/button/internals/base.ts +15 -3
  888. package/src/md/dropdown-list/internals/UiDropdownList.ts +11 -4
  889. package/src/md/icons/Icons.ts +8 -0
  890. package/src/md/input/Input.ts +14 -9
  891. package/src/md/list/internals/List.ts +17 -1
  892. package/src/md/list/internals/ListItem.ts +6 -4
  893. package/src/md/menu/internal/Menu.styles.ts +4 -2
  894. package/src/md/menu/internal/Menu.ts +2 -2
  895. package/src/md/select/internals/Select.styles.ts +3 -0
  896. package/src/md/select/internals/Select.ts +16 -18
  897. package/src/md/switch/internals/SwitchElement.ts +3 -3
  898. package/src/modeling/api-create-action-editor.ts +23 -0
  899. package/src/modeling/api-delete-action-editor.ts +27 -0
  900. package/src/modeling/api-list-action-editor.ts +31 -0
  901. package/src/modeling/api-modeling-access-configuration.ts +28 -0
  902. package/src/modeling/api-modeling-access.ts +27 -0
  903. package/src/modeling/api-modeling-actions.ts +30 -0
  904. package/src/modeling/api-modeling-description.ts +23 -0
  905. package/src/modeling/api-modeling-entity-card.ts +16 -0
  906. package/src/modeling/api-modeling-entity-editor.ts +24 -0
  907. package/src/modeling/api-modeling-navigation.ts +19 -0
  908. package/src/modeling/api-modeling-rate-limiting.ts +26 -0
  909. package/src/modeling/api-modeling-session.ts +39 -0
  910. package/src/modeling/api-read-action-editor.ts +23 -0
  911. package/src/modeling/api-search-action-editor.ts +28 -0
  912. package/src/modeling/api-update-action-editor.ts +24 -0
  913. package/src/modeling/data-catalog-browser.ts +18 -0
  914. package/src/modeling/dialogs/CalculatedTaxonomy.ts +305 -0
  915. package/src/modeling/dialogs/CategoryTaxonomy.ts +210 -0
  916. package/src/modeling/dialogs/CurrencyTaxonomy.ts +209 -0
  917. package/src/modeling/dialogs/EmailTaxonomy.ts +163 -0
  918. package/src/modeling/dialogs/GeospatialCoordinatesTaxonomy.ts +500 -0
  919. package/src/modeling/dialogs/HtmlTaxonomy.ts +333 -0
  920. package/src/modeling/dialogs/MarkdownTaxonomy.ts +290 -0
  921. package/src/modeling/dialogs/PasswordTaxonomy.ts +201 -0
  922. package/src/modeling/dialogs/PhoneTaxonomy.ts +238 -0
  923. package/src/modeling/dialogs/PublicUniqueNameTaxonomy.ts +212 -0
  924. package/src/modeling/dialogs/SkuTaxonomy.ts +321 -0
  925. package/src/modeling/dialogs/StatusTaxonomy.ts +132 -0
  926. package/src/modeling/dialogs/TagsTaxonomy.ts +163 -0
  927. package/src/modeling/dialogs/TaxonomyDialog.ts +183 -0
  928. package/src/modeling/dialogs/UrlTaxonomy.ts +194 -0
  929. package/src/modeling/dialogs/common.ts +52 -0
  930. package/src/modeling/domain-association-editor.ts +26 -0
  931. package/src/modeling/domain-auto-fields-dialog.ts +55 -0
  932. package/src/modeling/domain-browser.ts +25 -0
  933. package/src/modeling/domain-entity-editor.ts +34 -0
  934. package/src/modeling/domain-file-import.ts +22 -0
  935. package/src/modeling/domain-model-editor.ts +21 -0
  936. package/src/modeling/domain-namespace-editor.ts +22 -0
  937. package/src/modeling/domain-navigation.ts +21 -0
  938. package/src/modeling/domain-property-editor.ts +21 -0
  939. package/src/modeling/domain-template-browser.ts +19 -0
  940. package/src/modeling/domain-validation-report.ts +18 -0
  941. package/src/modeling/internals/ApiCreateActionEditor.ts +177 -0
  942. package/src/modeling/internals/ApiDeleteActionEditor.ts +269 -0
  943. package/src/modeling/internals/ApiEditor.ts +91 -0
  944. package/src/modeling/internals/ApiListActionEditor.ts +479 -0
  945. package/src/modeling/internals/ApiModelingAccessConfiguration.ts +606 -0
  946. package/src/modeling/internals/ApiModelingAccessScreen.ts +279 -0
  947. package/src/modeling/internals/ApiModelingActionsScreen.ts +333 -0
  948. package/src/modeling/internals/ApiModelingDescriptionScreen.ts +342 -0
  949. package/src/modeling/internals/ApiModelingEntityCard.ts +210 -0
  950. package/src/modeling/internals/ApiModelingEntityEditor.ts +363 -0
  951. package/src/modeling/internals/ApiModelingNavigation.ts +87 -0
  952. package/src/modeling/internals/ApiModelingRateLimiting.ts +389 -0
  953. package/src/modeling/internals/ApiModelingScreen.ts +43 -0
  954. package/src/modeling/internals/ApiModelingSessionScreen.ts +725 -0
  955. package/src/modeling/internals/ApiReadActionEditor.ts +177 -0
  956. package/src/modeling/internals/ApiSearchActionEditor.ts +302 -0
  957. package/src/modeling/internals/ApiUpdateActionEditor.ts +266 -0
  958. package/src/modeling/internals/DataCatalogBrowser.ts +286 -0
  959. package/src/modeling/internals/DomainAssociationEditor.ts +722 -0
  960. package/src/modeling/internals/DomainAutoFieldsDialog.ts +281 -0
  961. package/src/modeling/internals/DomainBrowser.ts +499 -0
  962. package/src/modeling/internals/DomainEntityEditor.ts +1245 -0
  963. package/src/modeling/internals/DomainFileImport.ts +482 -0
  964. package/src/modeling/internals/DomainModelEditor.ts +87 -0
  965. package/src/modeling/internals/DomainNamespaceEditor.ts +87 -0
  966. package/src/modeling/internals/DomainNavigation.ts +1887 -0
  967. package/src/modeling/internals/DomainPropertyEditor.ts +1506 -0
  968. package/src/modeling/internals/DomainTemplateBrowser.ts +500 -0
  969. package/src/modeling/internals/DomainValidationReport.ts +291 -0
  970. package/src/modeling/internals/ModelingElement.ts +95 -0
  971. package/src/modeling/internals/styles/AccessConfiguration.styles.ts +106 -0
  972. package/src/modeling/internals/styles/ApiCreateActionEditor.styles.ts +15 -0
  973. package/src/modeling/internals/styles/ApiDeleteActionEditor.styles.ts +15 -0
  974. package/src/modeling/internals/styles/ApiListActionEditor.styles.ts +15 -0
  975. package/src/modeling/internals/styles/ApiModelingActionsScreen.styles.ts +31 -0
  976. package/src/modeling/internals/styles/ApiModelingEntityCard.ts +85 -0
  977. package/src/modeling/internals/styles/ApiModelingEntityEditor.ts +68 -0
  978. package/src/modeling/internals/styles/ApiModelingNavigation.styles.ts +23 -0
  979. package/src/modeling/internals/styles/ApiReadActionEditor.styles.ts +15 -0
  980. package/src/modeling/internals/styles/ApiSearchActionEditor.styles.ts +15 -0
  981. package/src/modeling/internals/styles/ApiUpdateActionEditor.styles.ts +15 -0
  982. package/src/modeling/internals/styles/DataCatalogBrowser.styles.ts +53 -0
  983. package/src/modeling/internals/styles/DomainAutoFieldsDialog.ts +35 -0
  984. package/src/modeling/internals/styles/DomainBrowser.styles.ts +26 -0
  985. package/src/modeling/internals/styles/DomainEntityEditor.styles.ts +98 -0
  986. package/src/modeling/internals/styles/DomainFileImport.styles.ts +100 -0
  987. package/src/modeling/internals/styles/DomainModelEditor.styles.ts +7 -0
  988. package/src/modeling/internals/styles/DomainNamespaceEditor.styles.ts +7 -0
  989. package/src/modeling/internals/styles/DomainNavigation.styles.ts +343 -0
  990. package/src/modeling/internals/styles/DomainPropertyEditor.styles.ts +18 -0
  991. package/src/modeling/internals/styles/DomainTemplateBrowser.styles.ts +553 -0
  992. package/src/modeling/internals/styles/DomainValidationReport.styles.ts +75 -0
  993. package/src/modeling/internals/styles/EditorCommon.styles.ts +141 -0
  994. package/src/modeling/internals/styles/RateLimiting.styles.ts +83 -0
  995. package/src/modeling/internals/styles/api.styles.ts +146 -0
  996. package/src/modeling/internals/styles/form_styles.ts +107 -0
  997. package/src/modeling/internals/styles/learning.styles.ts +40 -0
  998. package/src/modeling/lib/access_helpers.ts +57 -0
  999. package/src/modeling/lib/formula_parser.ts +187 -0
  1000. package/src/modeling/lib/ui_mapping.ts +258 -0
  1001. package/src/modeling/lib/validators.ts +30 -0
  1002. package/src/modeling/types.ts +279 -0
  1003. package/src/providers/organization.ts +7 -0
  1004. package/src/providers/organizations.ts +7 -0
  1005. package/src/providers/user.ts +7 -0
  1006. package/src/services/CacheService.ts +56 -0
  1007. package/src/services/ConfigurationService.ts +28 -0
  1008. package/src/services/LoggingService.ts +60 -0
  1009. package/src/services/OrganizationService.ts +238 -0
  1010. package/src/services/SdkService.ts +57 -0
  1011. package/src/services/TransmitService.ts +28 -0
  1012. package/src/services/UserCacheService.ts +51 -0
  1013. package/src/services/UserService.ts +214 -0
  1014. package/src/services/api_service.ts +24 -0
  1015. package/tsconfig.json +19 -4
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DomainNavigation.js","sourceRoot":"","sources":["../../../../src/modeling/internals/DomainNavigation.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, type PropertyValues, type TemplateResult } from 'lit'\nimport { property, state } from 'lit/decorators.js'\nimport { LitElement } from 'lit'\nimport { classMap } from 'lit/directives/class-map.js'\nimport { DataDomain } from '@api-client/core/modeling/DataDomain.js'\nimport {\n DataDomainKind,\n DomainAssociationKind,\n DomainEntityKind,\n DomainModelKind,\n DomainNamespaceKind,\n DomainPropertyKind,\n} from '@api-client/core/models/kinds.js'\nimport type { DomainNamespace } from '@api-client/core/modeling/DomainNamespace.js'\nimport type { DomainModel } from '@api-client/core/modeling/DomainModel.js'\nimport type { DomainEntity } from '@api-client/core/modeling/DomainEntity.js'\nimport type { DomainSearchResult } from '@api-client/core/modeling/types.js'\nimport type { DomainSelectionInfo } from '../types.js'\nimport { getDomainLabel, getFieldIcon, getDomainIconType } from '../lib/ui_mapping.js'\nimport type { DomainProperty } from '@api-client/core/modeling/DomainProperty.js'\nimport type { DomainAssociation } from '@api-client/core/modeling/DomainAssociation.js'\nimport type { DomainElement } from '@api-client/core/modeling/DomainElement.js'\nimport type { IconType } from '../../md/icons/Icons.js'\n\n/**\n * Event detail for multi-selection\n */\nexport interface DomainMultiSelectionEventDetail {\n items: DomainSelectionInfo[]\n selectionType: string\n}\n\n/**\n * Event detail for drag and drop operations\n */\nexport interface DomainDragDropEventDetail {\n items: DomainSelectionInfo[]\n target: DomainSelectionInfo\n}\n\n/**\n * A new navigation element for DataDomain hierarchy that supports:\n * - Single click selection with selection events\n * - Ctrl+click multi-selection\n * - Drag and drop operations with proper validation\n * - Mixed selection type prevention\n *\n * @fires items-selected {CustomEvent<DomainMultiSelectionEventDetail>} - when multiple items are selected\n * @fires items-dropped {CustomEvent<DomainDragDropEventDetail>} - when items are dropped (or pasted)\n * @fires item-selected {CustomEvent<DomainSelectionInfo>} - when a single item is selected\n * @fires selection-cleared {CustomEvent<void>} - when selection is cleared\n * @fires items-cut {CustomEvent<{ items: DomainSelectionInfo[], cutItemsType: string }>} - when items are cut\n */\nexport default class DomainNavigation extends LitElement {\n /**\n * The root DataDomain to render\n */\n @property({ type: Object })\n accessor root: DataDomain | undefined\n\n #selected: string | undefined\n\n /**\n * The currently selected item key.\n * To be used by the parent component to control selection.\n * @attribute selected\n */\n @property({ type: String })\n set selected(value: string | undefined) {\n const old = this.#selected\n this.#selected = value\n this.requestUpdate('selected', old)\n }\n\n get selected(): string | undefined {\n return this.#selected\n }\n\n /**\n * Highlighted item key for visual indication.\n * Highlighted item only renders with a different style. Has no other meaning.\n */\n @property({ type: String }) accessor highlighted: string | undefined\n\n /**\n * Currently selected items\n */\n @state()\n accessor selectedItems = new Set<DomainSelectionInfo>()\n\n /**\n * The type of currently selected items (namespace, model, or entity)\n */\n @state()\n accessor selectionType: string | undefined\n\n /**\n * Items currently being dragged\n */\n @state()\n accessor draggedItems = new Set<DomainSelectionInfo>()\n\n /**\n * Current drag target\n */\n @state()\n accessor dragTarget: string | undefined\n\n /**\n * Set of parent items (by key) that are opened/expanded in the view\n */\n @state()\n accessor openedParents = new Set<string>()\n\n /**\n * Items that have been cut and are waiting to be pasted\n */\n @state()\n accessor cutItems = new Set<DomainSelectionInfo>()\n\n /**\n * The type of items that were cut\n */\n @state()\n accessor cutItemsType: string | undefined\n\n /**\n * Currently focused item key for keyboard navigation\n */\n @state()\n accessor focusedItem: string | undefined\n\n /**\n * Current search query\n */\n @state()\n accessor searchQuery: string | undefined\n\n /**\n * Search results from domain search\n */\n @state()\n accessor searchResults: DomainSearchResult[] = []\n\n /**\n * List of all visible items in navigation order (for keyboard navigation)\n */\n private visibleItems: DomainSelectionInfo[] = []\n\n // Utility methods for working with selection sets\n\n /**\n * Check if an item is selected by key\n */\n private isItemSelected(key: string): boolean {\n for (const item of this.selectedItems) {\n if (item.key === key) return true\n }\n return false\n }\n\n /**\n * Check if an item is dragged by key\n */\n private isItemDragged(key: string): boolean {\n for (const item of this.draggedItems) {\n if (item.key === key) return true\n }\n return false\n }\n\n /**\n * Check if an item is cut by key\n */\n private isItemCut(key: string): boolean {\n for (const item of this.cutItems) {\n if (item.key === key) return true\n }\n return false\n }\n\n /**\n * Remove item from selection by key\n */\n private removeFromSelection(key: string): void {\n for (const item of this.selectedItems) {\n if (item.key === key) {\n this.selectedItems.delete(item)\n break\n }\n }\n }\n\n constructor() {\n super()\n this.handleDomainChange = this.handleDomainChange.bind(this)\n this.handleKeyDown = this.handleKeyDown.bind(this)\n this.addEventListener('focus', this.handleFocus.bind(this))\n }\n\n override connectedCallback(): void {\n super.connectedCallback()\n this.setAttribute('aria-label', 'Domain hierarchy navigation')\n this.setAttribute('role', 'tree')\n this.setAttribute('tabindex', '0') // Make component focusable for keyboard events\n\n // Add keyboard event listener\n this.addEventListener('keydown', this.handleKeyDown)\n }\n\n override disconnectedCallback(): void {\n super.disconnectedCallback()\n\n // Clean up keyboard event listener\n this.removeEventListener('keydown', this.handleKeyDown)\n }\n\n protected handleFocus(): void {\n if (!this.focusedItem) {\n this.updateVisibleItemsList()\n this.focusedItem = this.visibleItems[0]?.key\n }\n if (!this.focusedItem) {\n return\n }\n this.removeAttribute('tabindex')\n }\n\n protected override willUpdate(cp: PropertyValues<this>): void {\n if (cp.has('root')) {\n const old = cp.get('root')\n if (old) {\n old.removeEventListener('change', this.handleDomainChange)\n }\n this.root?.addEventListener('change', this.handleDomainChange)\n\n // Initialize collapsed state for new root\n if (this.root && this.root !== old) {\n this.initializeOpenedParents()\n }\n }\n if (cp.has('selected')) {\n this.selectedItems.clear()\n if (this.selected) {\n const selectedItem = this.findItemDetails(this.selected)\n if (selectedItem) {\n this.selectedItems.add(selectedItem)\n }\n this.ensureVisibility(this.selected)\n }\n }\n super.willUpdate(cp)\n }\n\n protected override updated(cp: PropertyValues<this>): void {\n super.updated(cp)\n if (cp.has('focusedItem')) {\n this.focusOnCurrentItem()\n }\n }\n\n protected handleDomainChange(): void {\n this.requestUpdate()\n }\n\n /**\n * Toggle collapsed state of a parent item\n */\n protected toggleCollapsed(key: string, event?: MouseEvent): void {\n if (event) {\n event.preventDefault()\n event.stopPropagation()\n }\n\n if (this.openedParents.has(key)) {\n this.openedParents.delete(key)\n } else {\n this.openedParents.add(key)\n }\n this.requestUpdate()\n }\n\n /**\n * Check if an item is collapsed\n */\n protected isCollapsed(key: string): boolean {\n return !this.openedParents.has(key)\n }\n\n /**\n * Initialize the opened state.\n *\n * @TODO: When selection change from the outside, we should also update the openedParents\n * to ensure that the parent of the selected item is always expanded.\n */\n protected initializeOpenedParents(): void {\n this.openedParents.clear()\n }\n\n protected ensureVisibility(key: string): void {\n if (!this.root) return\n\n const node = this.root.graph.node(key)\n if (!node) {\n return\n }\n let current: DataDomain | DomainNamespace | DomainModel | DomainEntity | undefined = node.getParentInstance()\n while (current) {\n if (current.key === this.root.key) {\n current = undefined\n break // Reached the root, no need to expand further\n }\n this.openedParents.add(current.key)\n if (!(current instanceof DataDomain)) {\n current = current.getParentInstance()\n } else {\n current = undefined // No parent for DataDomain\n }\n }\n this.requestUpdate()\n }\n\n /**\n * Expand all collapsed items\n */\n expandAll(): void {\n this.openedParents.clear()\n\n if (!this.root) return\n\n const collectParentKeys = (container: DataDomain | DomainNamespace): void => {\n // Add namespaces that have children\n for (const namespace of container.listNamespaces()) {\n if (namespace.hasFields()) {\n this.openedParents.add(namespace.key)\n collectParentKeys(namespace)\n }\n }\n\n // Add models that have entities\n for (const model of container.listModels()) {\n if (model.hasFields()) {\n this.openedParents.add(model.key)\n }\n }\n }\n\n collectParentKeys(this.root)\n this.requestUpdate()\n }\n\n /**\n * Collapse all parent items\n */\n collapseAll(): void {\n this.openedParents.clear()\n this.requestUpdate()\n }\n\n /**\n * Clear current selection\n */\n clearSelection(): void {\n this.selectedItems.clear()\n this.selectionType = undefined\n this.requestUpdate()\n this.dispatchSelectionCleared()\n }\n\n /**\n * Handle keyboard shortcuts\n */\n protected handleKeyDown(event: KeyboardEvent): void {\n const { key, ctrlKey, metaKey } = event\n const isCtrlPressed = ctrlKey || metaKey\n\n // Update visible items list for navigation\n this.updateVisibleItemsList()\n\n if (isCtrlPressed) {\n // Only handle if there are selected items for cut/paste operations\n if (this.selectedItems.size > 0) {\n switch (key.toLowerCase()) {\n case 'x':\n event.preventDefault()\n this.cutSelectedItems()\n break\n case 'v':\n event.preventDefault()\n this.pasteItems()\n break\n case 'c':\n // Future: could implement copy functionality\n break\n }\n }\n return\n }\n\n // Handle navigation keys\n switch (key) {\n case 'ArrowUp':\n event.preventDefault()\n this.moveFocusUp()\n break\n case 'ArrowDown':\n event.preventDefault()\n this.moveFocusDown()\n break\n case 'ArrowLeft':\n event.preventDefault()\n this.handleArrowLeft()\n break\n case 'ArrowRight':\n event.preventDefault()\n this.handleArrowRight()\n break\n case ' ':\n case 'Space':\n event.preventDefault()\n this.handleSpaceKey()\n break\n case 'Home':\n event.preventDefault()\n this.moveFocusToFirst()\n break\n case 'End':\n event.preventDefault()\n this.moveFocusToLast()\n break\n case 'Escape':\n this.cancelCut()\n break\n case 'Enter':\n event.preventDefault()\n this.handleEnterKey()\n break\n }\n }\n\n /**\n * Cut the currently selected items\n */\n protected cutSelectedItems(): void {\n if (this.selectedItems.size === 0) return\n\n // Clear any previous cut items\n this.cutItems.clear()\n\n // Set current selection as cut items\n for (const item of this.selectedItems) {\n this.cutItems.add(item)\n }\n this.cutItemsType = this.selectionType\n\n // Clear selection but keep the cut items\n this.selectedItems.clear()\n this.selectionType = undefined\n\n this.requestUpdate()\n this.dispatchCutItems()\n }\n\n /**\n * Paste cut items to the current selection target\n */\n protected pasteItems(): void {\n if (this.cutItems.size === 0) return\n\n // If there's a single selected item, try to paste to it\n if (this.selectedItems.size === 1) {\n const targetItem = Array.from(this.selectedItems)[0]\n if (targetItem && this.isValidPasteTarget(targetItem.key, targetItem.kind)) {\n this.performPaste(targetItem.key, targetItem.kind)\n }\n } else if (this.selectedItems.size === 0) {\n // If no selection, try to paste to root\n if (this.root && this.isValidPasteTarget(this.root.key, this.root.kind)) {\n this.performPaste(this.root.key, this.root.kind)\n }\n }\n }\n\n /**\n * Perform the actual paste operation\n */\n protected performPaste(targetKey: string, targetKind: string): void {\n const items = Array.from(this.cutItems)\n\n if (items.length === 0) return\n\n const dropDetail: DomainDragDropEventDetail = {\n items,\n target: {\n key: targetKey,\n kind: targetKind,\n parent: this.findItemDetails(targetKey)?.parent,\n domain: this.root ? this.root.key : '',\n },\n }\n\n this.dispatchEvent(new CustomEvent('items-dropped', { detail: dropDetail, bubbles: true }))\n\n // Clear cut state after successful paste\n this.cutItems.clear()\n this.cutItemsType = undefined\n this.requestUpdate()\n }\n\n /**\n * Cancel current cut operation\n */\n protected cancelCut(): void {\n this.cutItems.clear()\n this.cutItemsType = undefined\n this.requestUpdate()\n }\n\n /**\n * Check if target is valid for pasting cut items\n */\n protected isValidPasteTarget(targetKey: string, targetKind: string): boolean {\n if (!this.cutItemsType || this.isItemCut(targetKey)) {\n return false\n }\n\n // Use the same validation logic as drag and drop\n // Entities can only be pasted on models\n if (this.cutItemsType === DomainEntityKind) {\n return targetKind === DomainModelKind\n }\n\n // Models can be pasted on namespaces or root\n if (this.cutItemsType === DomainModelKind) {\n return targetKind === DomainNamespaceKind || targetKind === DataDomainKind\n }\n\n // Namespaces can be pasted on other namespaces or root\n if (this.cutItemsType === DomainNamespaceKind) {\n return targetKind === DomainNamespaceKind || targetKind === DataDomainKind\n }\n\n return false\n }\n\n /**\n * Dispatch cut items event\n */\n protected dispatchCutItems(): void {\n const items = Array.from(this.cutItems)\n\n const detail = {\n items,\n cutItemsType: this.cutItemsType || '',\n }\n\n this.dispatchEvent(new CustomEvent('items-cut', { detail, bubbles: true }))\n }\n\n /**\n * Update the list of visible items for keyboard navigation\n */\n protected updateVisibleItemsList(): void {\n this.visibleItems = []\n if (!this.root) return\n\n const addVisibleItems = (container: DataDomain | DomainNamespace, level = 0): void => {\n // Add namespaces\n for (const namespace of container.listNamespaces()) {\n const item = this.findItemDetails(namespace.key)\n if (item) {\n this.visibleItems.push(item)\n }\n\n // Add children if not collapsed\n if (namespace.hasFields() && !this.isCollapsed(namespace.key)) {\n addVisibleItems(namespace, level + 1)\n }\n }\n\n // Add models\n for (const model of container.listModels()) {\n const item = this.findItemDetails(model.key)\n if (item) {\n this.visibleItems.push(item)\n }\n\n // Add entities if not collapsed\n if (model.hasFields() && !this.isCollapsed(model.key)) {\n for (const entity of model.listEntities()) {\n const entityItem = this.findItemDetails(entity.key)\n if (entityItem) {\n this.visibleItems.push(entityItem)\n }\n }\n }\n }\n }\n\n addVisibleItems(this.root)\n }\n\n /**\n * Move focus to the previous item\n */\n protected moveFocusUp(): void {\n if (this.visibleItems.length === 0) return\n\n const currentIndex = this.focusedItem ? this.visibleItems.findIndex((item) => item.key === this.focusedItem) : -1\n\n const newIndex = currentIndex <= 0 ? this.visibleItems.length - 1 : currentIndex - 1\n this.focusedItem = this.visibleItems[newIndex].key\n this.requestUpdate()\n }\n\n /**\n * Move focus to the next item\n */\n protected moveFocusDown(): void {\n if (this.visibleItems.length === 0) return\n\n const currentIndex = this.focusedItem ? this.visibleItems.findIndex((item) => item.key === this.focusedItem) : -1\n\n const newIndex = currentIndex >= this.visibleItems.length - 1 ? 0 : currentIndex + 1\n this.focusedItem = this.visibleItems[newIndex].key\n this.requestUpdate()\n }\n\n /**\n * Handle left arrow key - collapse item or move to parent\n */\n protected handleArrowLeft(): void {\n if (!this.focusedItem) return\n\n const focusedDetails = this.findItemDetails(this.focusedItem)\n if (!focusedDetails) return\n\n // If item is expanded, collapse it\n if (\n (focusedDetails.kind === DomainNamespaceKind || focusedDetails.kind === DomainModelKind) &&\n !this.isCollapsed(this.focusedItem)\n ) {\n this.toggleCollapsed(this.focusedItem)\n return\n }\n\n // If item is already collapsed or is a leaf, move to parent\n if (focusedDetails.parent) {\n this.focusedItem = focusedDetails.parent\n this.requestUpdate()\n }\n }\n\n /**\n * Handle right arrow key - expand item or move to first child\n */\n protected handleArrowRight(): void {\n if (!this.focusedItem) return\n\n const focusedDetails = this.findItemDetails(this.focusedItem)\n if (!focusedDetails) return\n\n // If item can be expanded and is collapsed, expand it\n if (\n (focusedDetails.kind === DomainNamespaceKind || focusedDetails.kind === DomainModelKind) &&\n this.isCollapsed(this.focusedItem)\n ) {\n this.toggleCollapsed(this.focusedItem)\n this.updateVisibleItemsList()\n this.requestUpdate()\n return\n }\n\n // If item is already expanded, move to first child\n this.updateVisibleItemsList()\n const currentIndex = this.visibleItems.findIndex((item) => item.key === this.focusedItem)\n if (currentIndex >= 0 && currentIndex < this.visibleItems.length - 1) {\n const nextItem = this.visibleItems[currentIndex + 1]\n // Only move to next item if it's actually a child (has current item as parent)\n if (nextItem.parent === this.focusedItem) {\n this.focusedItem = nextItem.key\n this.requestUpdate()\n }\n }\n }\n\n /**\n * Handle space key - select/deselect focused item\n */\n protected handleSpaceKey(): void {\n if (!this.focusedItem) return\n\n const item = this.findItemDetails(this.focusedItem)\n if (item) {\n // Toggle selection of focused item\n if (this.isItemSelected(this.focusedItem)) {\n // Deselect if already selected\n this.removeFromSelection(this.focusedItem)\n if (this.selectedItems.size === 0) {\n this.selectionType = undefined\n }\n } else {\n // Select the focused item\n this.handleSingleSelection(item.key, item.kind, item.domain, item.parent)\n }\n this.requestUpdate()\n }\n }\n\n /**\n * Handle enter key - activate focused item (same as click)\n */\n protected handleEnterKey(): void {\n if (!this.focusedItem) return\n\n const item = this.findItemDetails(this.focusedItem)\n if (item) {\n this.handleSingleSelection(item.key, item.kind, item.domain, item.parent)\n }\n }\n\n /**\n * Move focus to first item\n */\n protected moveFocusToFirst(): void {\n if (this.visibleItems.length === 0) return\n this.focusedItem = this.visibleItems[0].key\n }\n\n /**\n * Move focus to last item\n */\n protected moveFocusToLast(): void {\n if (this.visibleItems.length === 0) return\n this.focusedItem = this.visibleItems[this.visibleItems.length - 1].key\n }\n\n /**\n * Handle item click for selection\n */\n protected handleItemClick(event: MouseEvent, key: string, kind: string, domain: string, parent?: string): void {\n event.preventDefault()\n event.stopPropagation()\n\n // Update focus when clicking\n this.focusedItem = key\n\n const isCtrlClick = event.ctrlKey || event.metaKey\n\n if (isCtrlClick) {\n this.handleMultiSelection(key, kind, domain, parent)\n } else {\n this.handleSingleSelection(key, kind, domain, parent)\n }\n }\n\n /**\n * Handle item receiving focus\n */\n protected handleItemFocus(key: string): void {\n this.focusedItem = key\n }\n\n protected focusOnCurrentItem(): void {\n if (!this.focusedItem) return\n\n const itemElement = this.shadowRoot?.querySelector(`[data-key=\"${this.focusedItem}\"]`)\n if (itemElement instanceof HTMLElement) {\n itemElement.focus()\n itemElement.scrollIntoView({ block: 'nearest', inline: 'nearest' })\n }\n }\n\n /**\n * Handle single item selection\n */\n protected handleSingleSelection(key: string, kind: string, domain: string, parent?: string): void {\n // Clear previous selection\n this.selectedItems.clear()\n const selectionInfo: DomainSelectionInfo = { key, kind, domain, parent }\n this.selectedItems.add(selectionInfo)\n this.selectionType = kind\n this.#selected = key\n\n this.requestUpdate()\n this.dispatchSingleSelection(key, kind, domain, parent)\n }\n\n protected handleFieldSelection(key: string, kind: string, domain: string, parent: string): void {\n // Clear previous selection\n this.selectedItems.clear()\n const selectionInfo: DomainSelectionInfo = { key: parent, kind: DomainEntityKind, domain }\n this.selectedItems.add(selectionInfo)\n this.selectionType = DomainEntityKind\n this.#selected = parent\n\n this.requestUpdate()\n this.dispatchSingleSelection(key, kind, domain, parent)\n }\n\n /**\n * Handle multi-item selection with Ctrl+click\n */\n protected handleMultiSelection(key: string, kind: string, domain: string, parent?: string): void {\n // Check for mixed type selection\n if (this.selectionType && this.selectionType !== kind) {\n // Mixed selection not allowed - clear and start new selection\n this.handleSingleSelection(key, kind, domain, parent)\n return\n }\n\n const selectionInfo: DomainSelectionInfo = { key, kind, domain, parent }\n\n // Toggle selection\n if (this.isItemSelected(key)) {\n this.removeFromSelection(key)\n // If no items left, clear selection type\n if (this.selectedItems.size === 0) {\n this.selectionType = undefined\n }\n } else {\n this.selectedItems.add(selectionInfo)\n this.selectionType = kind\n }\n\n this.requestUpdate()\n this.dispatchMultiSelection()\n }\n\n /**\n * Dispatch single selection event\n */\n protected dispatchSingleSelection(key: string, kind: string, domain: string, parent?: string): void {\n const detail: DomainSelectionInfo = { key, kind, domain, parent }\n this.dispatchEvent(new CustomEvent('item-selected', { detail, bubbles: true }))\n }\n\n /**\n * Dispatch multi-selection event\n */\n protected dispatchMultiSelection(): void {\n const items = Array.from(this.selectedItems)\n\n const detail: DomainMultiSelectionEventDetail = {\n items,\n selectionType: this.selectionType || '',\n }\n\n this.dispatchEvent(new CustomEvent('items-selected', { detail, bubbles: true }))\n }\n\n /**\n * Dispatch selection cleared event\n */\n protected dispatchSelectionCleared(): void {\n this.dispatchEvent(new CustomEvent('selection-cleared', { bubbles: true }))\n }\n\n /**\n * Find item details by key\n */\n protected findItemDetails(key: string): DomainSelectionInfo | undefined {\n if (!this.root) return undefined\n\n // Check if it's the root domain\n if (key === this.root.key) {\n return { key, kind: DataDomainKind, domain: this.root.key }\n }\n\n // Search in namespaces\n const namespace = this.root.findNamespace(key)\n if (namespace) {\n const parent = namespace.getParentInstance()\n return {\n key,\n kind: DomainNamespaceKind,\n domain: this.root.key,\n parent: parent?.key !== this.root.key ? parent?.key : undefined,\n }\n }\n\n // Search in models\n const model = this.root.findModel(key)\n if (model) {\n const parent = model.getParentInstance()\n return {\n key,\n kind: DomainModelKind,\n domain: this.root.key,\n parent: parent?.key !== this.root.key ? parent?.key : undefined,\n }\n }\n\n // Search in entities\n const entity = this.root.findEntity(key)\n if (entity) {\n const model = entity.getParentInstance()\n return {\n key,\n kind: DomainEntityKind,\n domain: this.root.key,\n parent: model?.key,\n }\n }\n\n return undefined\n }\n\n /**\n * Handle drag start\n */\n protected handleDragStart(event: DragEvent, key: string): void {\n if (!event.dataTransfer) return\n\n let selectedItems = Array.from(this.selectedItems)\n\n if (!this.isItemSelected(key)) {\n // If the dragged item is not selected, select only this item\n selectedItems = []\n const item = this.getItemDetailsForKey(key)\n if (item) {\n selectedItems.push(item)\n }\n }\n\n // Set drag data\n this.draggedItems.clear()\n for (const selectedItem of selectedItems) {\n this.draggedItems.add(selectedItem)\n }\n\n const selectedKeys = selectedItems.map((item) => item.key)\n\n event.dataTransfer.setData('text/plain', selectedKeys.join(','))\n event.dataTransfer.setData(\n 'application/json',\n JSON.stringify({\n items: selectedItems,\n })\n )\n event.dataTransfer.effectAllowed = 'move'\n\n this.requestUpdate()\n }\n\n /**\n * Handle drag over\n */\n protected handleDragOver(event: DragEvent, key: string, kind: string): void {\n if (!event.dataTransfer) return\n\n // Check if this is a valid drop target\n if (this.isValidDropTarget(key, kind)) {\n event.preventDefault()\n this.dragTarget = key\n this.requestUpdate()\n }\n }\n\n /**\n * Handle drag leave\n */\n protected handleDragLeave(): void {\n this.dragTarget = undefined\n this.requestUpdate()\n }\n\n /**\n * Handle drop\n */\n protected handleDrop(event: DragEvent, targetKey: string, targetKind: string): void {\n event.preventDefault()\n\n if (!event.dataTransfer) return\n\n try {\n const dragData = JSON.parse(event.dataTransfer.getData('application/json'))\n\n let items: DomainSelectionInfo[] = []\n\n if (dragData.items) {\n // New format with full item information\n items = dragData.items as DomainSelectionInfo[]\n } else if (Array.isArray(dragData)) {\n // Legacy format - just keys\n items = dragData.map((key: string) => this.findItemDetails(key)).filter(Boolean) as DomainSelectionInfo[]\n } else if (dragData.keys) {\n // Fallback - extract keys and find details\n items = dragData.keys.map((key: string) => this.findItemDetails(key)).filter(Boolean) as DomainSelectionInfo[]\n }\n\n if (items.length > 0 && this.isValidDropTarget(targetKey, targetKind)) {\n const dropDetail: DomainDragDropEventDetail = {\n items,\n target: {\n key: targetKey,\n kind: targetKind,\n parent: this.findItemDetails(targetKey)?.parent,\n domain: this.root ? this.root.key : '',\n },\n }\n\n this.dispatchEvent(new CustomEvent('items-dropped', { detail: dropDetail, bubbles: true }))\n }\n } catch {\n // Error handling drop - would normally log to error reporting service\n }\n\n // Clean up drag state\n this.draggedItems.clear()\n this.dragTarget = undefined\n this.requestUpdate()\n }\n\n /**\n * Handle drag end\n */\n protected handleDragEnd(): void {\n this.draggedItems.clear()\n this.requestUpdate()\n }\n\n /**\n * Handle click on external (read-only) items\n */\n protected handleExternalItemClick(e: MouseEvent, key: string, kind: string, domain: string, parent?: string): void {\n e.stopPropagation()\n\n if (e.ctrlKey || e.metaKey) {\n // Multi-selection\n this.handleExternalMultiSelection(key, kind, domain, parent)\n } else {\n // Single selection\n this.handleExternalSingleSelection(key, kind, domain, parent)\n }\n }\n\n /**\n * Handle single selection for external items\n */\n protected handleExternalSingleSelection(key: string, kind: string, domain: string, parent?: string): void {\n this.selectedItems.clear()\n const selectionInfo: DomainSelectionInfo = { key, kind, domain, parent }\n this.selectedItems.add(selectionInfo)\n this.focusedItem = key\n this.#selected = key\n\n const event: DomainSelectionInfo = {\n key,\n kind,\n domain,\n parent,\n }\n\n this.dispatchEvent(new CustomEvent('item-selected', { detail: event }))\n this.requestUpdate()\n }\n\n /**\n * Handle multi-selection for external items\n */\n protected handleExternalMultiSelection(key: string, kind: string, domain: string, parent?: string): void {\n // Check for mixed selection types\n if (this.selectedItems.size > 0) {\n // Get the kind of already selected items\n const firstSelectedItem = this.getFirstSelectedItemKind()\n if (firstSelectedItem && firstSelectedItem !== kind) {\n // Mixed selection not allowed, replace selection\n this.selectedItems.clear()\n const selectionInfo: DomainSelectionInfo = { key, kind, domain, parent }\n this.selectedItems.add(selectionInfo)\n this.focusedItem = key\n\n const event: DomainSelectionInfo = {\n key,\n kind,\n domain,\n parent,\n }\n\n this.dispatchEvent(new CustomEvent('item-selected', { detail: event }))\n this.requestUpdate()\n return\n }\n }\n\n const selectionInfo: DomainSelectionInfo = { key, kind, domain, parent }\n\n // Toggle selection\n if (this.isItemSelected(key)) {\n this.removeFromSelection(key)\n } else {\n this.selectedItems.add(selectionInfo)\n }\n this.focusedItem = key\n\n // Dispatch multi-selection event\n const items = Array.from(this.selectedItems)\n\n const event: DomainMultiSelectionEventDetail = {\n items,\n selectionType: kind,\n }\n this.dispatchEvent(new CustomEvent('items-selected', { detail: event }))\n this.requestUpdate()\n }\n\n /**\n * Get the kind of the first selected item\n */\n protected getFirstSelectedItemKind(): string | undefined {\n if (this.selectedItems.size === 0) return undefined\n\n const firstItem = this.selectedItems.values().next().value\n return firstItem?.kind\n }\n\n /**\n * Get item details for a given key\n */\n protected getItemDetailsForKey(key: string): DomainSelectionInfo | undefined {\n // First try the main domain\n if (this.root) {\n const result = this.findItemInDomain(key, this.root)\n if (result) return result\n }\n\n // Then try external domains\n if (this.root?.dependencies) {\n for (const [, externalDomain] of this.root.dependencies) {\n const result = this.findItemInDomain(key, externalDomain)\n if (result) return result\n }\n }\n\n return undefined\n }\n\n /**\n * Find item details within a specific domain\n */\n protected findItemInDomain(key: string, domain: DataDomain): DomainSelectionInfo | undefined {\n // Check if it's the domain itself\n if (domain.key === key) {\n return {\n key: domain.key,\n kind: domain.kind,\n domain: domain.key,\n }\n }\n\n const ns = domain.findNamespace(key)\n if (ns) {\n return {\n key: ns.key,\n kind: DomainNamespaceKind,\n domain: domain.key,\n parent: ns.getParentInstance()?.key,\n }\n }\n\n const model = domain.findModel(key)\n if (model) {\n return {\n key: model.key,\n kind: DomainModelKind,\n domain: domain.key,\n parent: model.getParentInstance()?.key,\n }\n }\n\n const entity = domain.findEntity(key)\n if (entity) {\n const modelParent = entity.getParentInstance()\n return {\n key: entity.key,\n kind: DomainEntityKind,\n domain: domain.key,\n parent: modelParent?.key,\n }\n }\n\n return undefined\n }\n\n /**\n * Find item in nested namespace structure\n */\n protected findItemInNamespace(\n key: string,\n namespace: DomainNamespace,\n domain: string\n ): DomainSelectionInfo | undefined {\n const field = namespace.fields.find((field) => field.key === key)\n if (!field) {\n return undefined\n }\n if (field.type === 'model') {\n return {\n key: field.key,\n kind: DomainModelKind,\n domain,\n parent: namespace.key,\n }\n }\n if (field.type === 'namespace') {\n return {\n key: field.key,\n kind: DomainNamespaceKind,\n domain,\n parent: namespace.key,\n }\n }\n return undefined\n }\n\n /**\n * Check if a target is valid for dropping the current selection\n */\n protected isValidDropTarget(targetKey: string, targetKind: string): boolean {\n if (!this.selectionType || this.isItemSelected(targetKey)) {\n return false\n }\n\n // Entities can only be dropped on models\n if (this.selectionType === DomainEntityKind) {\n return targetKind === DomainModelKind\n }\n\n // Models can be dropped on namespaces or root\n if (this.selectionType === DomainModelKind) {\n return targetKind === DomainNamespaceKind || targetKind === DataDomainKind\n }\n\n // Namespaces can be dropped on other namespaces or root\n if (this.selectionType === DomainNamespaceKind) {\n return targetKind === DomainNamespaceKind || targetKind === DataDomainKind\n }\n\n return false\n }\n\n protected handleSearch(event: CustomEvent<{ input: string }>): void {\n const query = event.detail.input\n this.searchDomain(query)\n }\n\n protected handleSearchClear(): void {\n this.clearSearch()\n }\n\n searchDomain(query: string): void {\n const domain = this.root\n if (!domain) return\n\n this.searchQuery = query.trim()\n\n if (!this.searchQuery) {\n this.clearSearch()\n return\n }\n\n const found = domain.search({\n query: this.searchQuery,\n })\n this.searchResults = found\n }\n\n protected handleSearchResultClick(event: MouseEvent, result: DomainSearchResult): void {\n event.preventDefault()\n event.stopPropagation()\n\n const { key, node } = result\n const kind = node.kind\n const domain = node.domain.key\n\n // For now, just clear search and navigate to the item\n // Selection logic can be implemented later\n this.clearSearch()\n\n // Find the parent for proper selection info\n let parent: string | undefined\n if (kind === DomainEntityKind) {\n const entity = node as DomainEntity\n const modelParent = entity.getParentInstance()\n parent = modelParent?.key\n this.ensureVisibility(key)\n this.handleSingleSelection(key, kind, domain, parent)\n } else if (kind === DomainModelKind || kind === DomainNamespaceKind) {\n const parentInstance = (node as DomainModel | DomainNamespace).getParentInstance()\n parent = parentInstance?.key !== domain ? parentInstance?.key : undefined\n this.ensureVisibility(key)\n this.handleSingleSelection(key, kind, domain, parent)\n } else if (kind === DomainAssociationKind) {\n const association = node as DomainAssociation\n const modelParent = association.getParentInstance()\n parent = modelParent?.key\n if (parent) {\n this.ensureVisibility(parent)\n this.handleFieldSelection(key, kind, domain, parent)\n }\n } else if (kind === DomainPropertyKind) {\n const property = node as DomainProperty\n const modelParent = property.getParentInstance()\n parent = modelParent?.key\n if (parent) {\n this.ensureVisibility(parent)\n this.handleFieldSelection(key, kind, domain, parent)\n }\n }\n }\n\n clearSearch(): void {\n this.searchQuery = undefined\n this.searchResults = []\n }\n\n handleSearchKeyDown(e: KeyboardEvent): void {\n e.stopPropagation()\n if (e.defaultPrevented) {\n return\n }\n }\n\n override render(): TemplateResult {\n const { root } = this\n if (!root) {\n return html`<div class=\"empty-state\">No data domain available</div>`\n }\n const hasFields = root.hasFields()\n const hasDependencies = root.dependencies?.size > 0\n if (!hasFields && !hasDependencies) {\n return html`<div class=\"empty-state\">No schemas to display</div>`\n }\n\n return html`\n <div class=\"hierarchy-tree\">\n ${this.cutItems.size > 0\n ? this.renderCutItemsInfo()\n : this.selectedItems.size > 1\n ? this.renderMultiSelectionInfo()\n : this.renderDomainHeader(root)}\n ${this.searchQuery ? this.renderSearchResults() : ''}\n ${hasFields ? this.renderDomainTree(root) : this.renderEmptyDomain()} ${this.renderExternalDomains()}\n </div>\n `\n }\n\n protected renderEmptyDomain(): TemplateResult {\n return html`<div class=\"empty-state\">No data to render.</div>`\n }\n\n protected renderCutItemsInfo(): TemplateResult {\n const count = this.cutItems.size\n const type = getDomainLabel(this.cutItemsType || 'items')\n\n return html`\n <div class=\"multi-selection-info cut-items\">\n <span class=\"body-small\"\n >${count} ${type}${count > 1 ? 's' : ''} cut - Select target and press Ctrl+V to paste</span\n >\n <ui-button size=\"xs\" color=\"tonal\" @click=\"${this.cancelCut}\">Cancel</ui-button>\n </div>\n `\n }\n\n protected renderDomainTitle(root: DataDomain): TemplateResult {\n return html`<h2 class=\"domain-title title-small\">${root.info.getLabel()}</h2>`\n }\n\n protected renderDomainHeader(root: DataDomain): TemplateResult {\n const hasCollapsibleItems =\n [...root.listNamespaces()].some((ns) => ns.hasFields()) || [...root.listModels()].some((m) => m.hasFields())\n\n return html`\n <div class=\"domain-header\">\n <search-input\n class=\"search-input\"\n placeholder=\"Search domain...\"\n @search=\"${this.handleSearch}\"\n @clear=\"${this.handleSearchClear}\"\n @keydown=\"${this.handleSearchKeyDown}\"\n value=\"${this.searchQuery || ''}\"\n ></search-input>\n ${hasCollapsibleItems\n ? html`\n <div class=\"expand-controls\">\n <ui-icon-button @click=\"${this.expandAll}\" color=\"standard\" shape=\"round\" size=\"xs\" title=\"Expand all\"\n ><ui-icon icon=\"add\"></ui-icon\n ></ui-icon-button>\n <ui-icon-button\n @click=\"${this.collapseAll}\"\n color=\"standard\"\n shape=\"round\"\n size=\"xs\"\n title=\"Collapse all\"\n ><ui-icon icon=\"remove\"></ui-icon\n ></ui-icon-button>\n </div>\n `\n : ''}\n </div>\n `\n }\n\n protected renderSearchResults(): TemplateResult {\n if (!this.searchQuery || this.searchResults.length === 0) {\n return html`\n <div class=\"search-results-overlay\">\n <div class=\"search-no-results\">\n <span class=\"body-medium\">No results found for \"${this.searchQuery}\"</span>\n </div>\n </div>\n `\n }\n\n return html`\n <div class=\"search-results-overlay\">\n <div class=\"search-results-list\">\n ${this.searchResults.map((result) => this.renderSearchResultItem(result))}\n </div>\n </div>\n `\n }\n\n protected getSearchIcon(item: DomainElement): IconType {\n switch (item.kind) {\n case DomainAssociationKind:\n case DomainPropertyKind:\n return getFieldIcon(item as DomainProperty | DomainAssociation)\n default:\n return getDomainIconType(item.kind)\n }\n }\n\n protected renderSearchResultItem(result: DomainSearchResult): TemplateResult {\n const { node, key, isForeign, matchedFields } = result\n const nodeInfo = node.info\n const icon = this.getSearchIcon(node)\n\n return html`\n <div\n class=\"search-result-item\"\n data-key=\"${key}\"\n data-kind=\"${node.kind}\"\n data-domain=\"${node.domain.key}\"\n @click=\"${(e: MouseEvent) => this.handleSearchResultClick(e, result)}\"\n >\n <div class=\"search-result-content\">\n <div class=\"search-result-main\">\n <ui-icon class=\"search-result-icon\" icon=\"${icon}\"></ui-icon>\n <div class=\"search-result-info\">\n <span class=\"search-result-name body-medium\">${nodeInfo.getLabel()}</span>\n ${isForeign ? html`<span class=\"search-result-badge label-small\">External</span>` : ''}\n </div>\n </div>\n ${nodeInfo.description\n ? html`<div class=\"search-result-description body-small\">${nodeInfo.description}</div>`\n : ''}\n ${matchedFields.length > 0\n ? html`\n <div class=\"search-result-matches\">\n <span class=\"label-small\">Matched: ${matchedFields.join(', ')}</span>\n </div>\n `\n : ''}\n </div>\n </div>\n `\n }\n\n protected renderMultiSelectionInfo(): TemplateResult {\n const count = this.selectedItems.size\n const type = getDomainLabel(this.selectionType || 'items')\n return html`\n <div class=\"multi-selection-info\">\n <span class=\"body-small\">${count} ${type}${count > 1 ? 's' : ''} selected</span>\n <ui-button size=\"xs\" color=\"tonal\" @click=\"${this.clearSelection}\">Clear Selection</ui-button>\n </div>\n `\n }\n\n protected renderDomainTree(root: DataDomain | DomainNamespace): TemplateResult {\n const items: TemplateResult[] = []\n\n // Render namespaces\n for (const namespace of root.listNamespaces()) {\n items.push(this.renderNamespaceItem(namespace, root))\n }\n\n // Render models\n for (const model of root.listModels()) {\n items.push(this.renderModelItem(model, root))\n }\n\n return html`<div class=\"tree-items\">${items}</div>`\n }\n\n /**\n * Render external data domains from dependencies\n */\n protected renderExternalDomains(): TemplateResult {\n if (!this.root?.dependencies?.size) {\n return html``\n }\n\n const externalDomains: TemplateResult[] = []\n\n for (const [, externalDomain] of this.root.dependencies) {\n externalDomains.push(this.renderExternalDomain(externalDomain))\n }\n\n return html`\n <div class=\"external-domains\">\n <ui-divider></ui-divider>\n <div class=\"external-domains-header\">\n <h3 class=\"external-domains-title title-medium\">External Dependencies</h3>\n </div>\n ${externalDomains}\n </div>\n `\n }\n\n /**\n * Render a single external domain\n */\n protected renderExternalDomain(domain: DataDomain): TemplateResult {\n return html`\n <div class=\"external-domain\">\n <div class=\"external-domain-header\">\n <h4 class=\"external-domain-title title-small\">${domain.info.getLabel()}</h4>\n <span class=\"external-domain-badge label-medium\">Read-only</span>\n </div>\n ${this.renderExternalDomainTree(domain)}\n </div>\n `\n }\n\n /**\n * Render external domain tree (read-only)\n */\n protected renderExternalDomainTree(domain: DataDomain | DomainNamespace): TemplateResult {\n const items: TemplateResult[] = []\n\n // Render namespaces\n for (const namespace of domain.listNamespaces()) {\n items.push(this.renderExternalNamespaceItem(namespace, domain))\n }\n\n // Render models\n for (const model of domain.listModels()) {\n items.push(this.renderExternalModelItem(model, domain))\n }\n\n return html`<div class=\"external-tree-items\">${items}</div>`\n }\n\n protected renderNamespaceItem(namespace: DomainNamespace, parent: DataDomain | DomainNamespace): TemplateResult {\n const hasChildren = namespace.hasFields()\n const isSelected = this.isItemSelected(namespace.key)\n const isMultiSelected = isSelected && this.selectedItems.size > 1\n const isDragSource = this.isItemDragged(namespace.key)\n const isDragTarget = this.dragTarget === namespace.key\n const isCollapsed = this.isCollapsed(namespace.key)\n const isCut = this.isItemCut(namespace.key)\n const isFocused = this.focusedItem === namespace.key\n\n return html`\n <div class=\"tree-item\" role=\"treeitem\">\n <div\n class=\"item-content ${classMap({\n 'selected': isSelected && !isMultiSelected,\n 'multi-selected': isMultiSelected,\n 'drag-source': isDragSource,\n 'drag-over': isDragTarget,\n 'cut': isCut,\n 'focused': isFocused,\n 'highlighted': this.highlighted === namespace.key,\n })}\"\n tabindex=\"${isFocused ? '0' : '-1'}\"\n draggable=\"true\"\n data-key=\"${namespace.key}\"\n data-kind=\"${namespace.kind}\"\n data-domain=\"${namespace.domain.key}\"\n data-parent=\"${parent.key !== namespace.domain.key ? parent.key : ''}\"\n @click=\"${(e: MouseEvent) =>\n this.handleItemClick(\n e,\n namespace.key,\n namespace.kind,\n namespace.domain.key,\n parent.key !== namespace.domain.key ? parent.key : undefined\n )}\"\n @focus=\"${() => this.handleItemFocus(namespace.key)}\"\n @dragstart=\"${(e: DragEvent) => this.handleDragStart(e, namespace.key)}\"\n @dragover=\"${(e: DragEvent) => this.handleDragOver(e, namespace.key, namespace.kind)}\"\n @dragleave=\"${() => this.handleDragLeave()}\"\n @drop=\"${(e: DragEvent) => this.handleDrop(e, namespace.key, namespace.kind)}\"\n @dragend=\"${() => this.handleDragEnd()}\"\n >\n ${hasChildren\n ? html`\n <ui-icon\n class=\"expand-icon ${isCollapsed ? '' : 'expanded'}\"\n icon=\"chevronRight\"\n @click=\"${(e: MouseEvent) => this.toggleCollapsed(namespace.key, e)}\"\n ></ui-icon>\n `\n : html`<span class=\"expand-placeholder\"></span>`}\n <ui-icon class=\"item-icon\" icon=\"${getDomainIconType(namespace.kind)}\"></ui-icon>\n <span class=\"item-label\">${namespace.info.getLabel()}</span>\n </div>\n ${hasChildren && !isCollapsed ? html` <div class=\"children\">${this.renderDomainTree(namespace)}</div>` : ''}\n </div>\n `\n }\n\n protected renderModelItem(model: DomainModel, parent: DataDomain | DomainNamespace): TemplateResult {\n const hasEntities = model.hasFields()\n const isSelected = this.isItemSelected(model.key)\n const isMultiSelected = this.selectedItems.size > 1 && isSelected\n const isDragSource = this.isItemDragged(model.key)\n const isDragTarget = this.dragTarget === model.key\n const isCollapsed = this.isCollapsed(model.key)\n const isCut = this.isItemCut(model.key)\n const isFocused = this.focusedItem === model.key\n\n return html`\n <div class=\"tree-item\" role=\"treeitem\">\n <div\n class=\"item-content ${classMap({\n 'selected': isSelected && !isMultiSelected,\n 'multi-selected': isMultiSelected,\n 'drag-source': isDragSource,\n 'drag-over': isDragTarget,\n 'cut': isCut,\n 'focused': isFocused,\n 'highlighted': this.highlighted === model.key,\n })}\"\n tabindex=\"${isFocused ? '0' : '-1'}\"\n draggable=\"true\"\n data-key=\"${model.key}\"\n data-kind=\"${model.kind}\"\n data-domain=\"${model.domain.key}\"\n data-parent=\"${parent.key !== model.domain.key ? parent.key : ''}\"\n @click=\"${(e: MouseEvent) =>\n this.handleItemClick(\n e,\n model.key,\n model.kind,\n model.domain.key,\n parent.key !== model.domain.key ? parent.key : undefined\n )}\"\n @focus=\"${() => this.handleItemFocus(model.key)}\"\n @dragstart=\"${(e: DragEvent) => this.handleDragStart(e, model.key)}\"\n @dragover=\"${(e: DragEvent) => this.handleDragOver(e, model.key, model.kind)}\"\n @dragleave=\"${() => this.handleDragLeave()}\"\n @drop=\"${(e: DragEvent) => this.handleDrop(e, model.key, model.kind)}\"\n @dragend=\"${() => this.handleDragEnd()}\"\n >\n ${hasEntities\n ? html`\n <ui-icon\n class=\"expand-icon ${isCollapsed ? '' : 'expanded'}\"\n icon=\"chevronRight\"\n @click=\"${(e: MouseEvent) => this.toggleCollapsed(model.key, e)}\"\n ></ui-icon>\n `\n : html`<span class=\"expand-placeholder\"></span>`}\n <ui-icon class=\"item-icon\" icon=\"${getDomainIconType(model.kind)}\"></ui-icon>\n <span class=\"item-label\">${model.info.getLabel()}</span>\n </div>\n ${hasEntities && !isCollapsed ? html` <div class=\"children\">${this.renderEntityList(model)}</div>` : ''}\n </div>\n `\n }\n\n protected renderEntityList(model: DomainModel): TemplateResult {\n const entities: TemplateResult[] = []\n\n for (const entity of model.listEntities()) {\n entities.push(this.renderEntityItem(entity, model))\n }\n\n return html`<div class=\"entity-items\">${entities}</div>`\n }\n\n protected renderEntityItem(entity: DomainEntity, parent: DomainModel): TemplateResult {\n const isSelected = this.isItemSelected(entity.key)\n const isMultiSelected = isSelected && this.selectedItems.size > 1\n const isDragSource = this.isItemDragged(entity.key)\n const isCut = this.isItemCut(entity.key)\n const isFocused = this.focusedItem === entity.key\n\n return html`\n <div class=\"tree-item\" role=\"treeitem\">\n <div\n class=\"item-content ${classMap({\n 'selected': isSelected && !isMultiSelected,\n 'multi-selected': isMultiSelected,\n 'drag-source': isDragSource,\n 'cut': isCut,\n 'focused': isFocused,\n 'highlighted': this.highlighted === entity.key,\n })}\"\n tabindex=\"${isFocused ? '0' : '-1'}\"\n draggable=\"true\"\n data-key=\"${entity.key}\"\n data-kind=\"${entity.kind}\"\n data-domain=\"${entity.domain.key}\"\n data-parent=\"${parent.key !== entity.domain.key ? parent.key : ''}\"\n @click=\"${(e: MouseEvent) => this.handleItemClick(e, entity.key, entity.kind, entity.domain.key, parent.key)}\"\n @focus=\"${() => this.handleItemFocus(entity.key)}\"\n @dragstart=\"${(e: DragEvent) => this.handleDragStart(e, entity.key)}\"\n @dragend=\"${() => this.handleDragEnd()}\"\n >\n <span class=\"expand-placeholder\"></span>\n <ui-icon class=\"item-icon\" icon=\"${getDomainIconType(entity.kind)}\"></ui-icon>\n <span class=\"item-label\">${entity.info.getLabel()}</span>\n </div>\n </div>\n `\n }\n\n /**\n * Render external namespace item (read-only)\n */\n protected renderExternalNamespaceItem(\n namespace: DomainNamespace,\n parent: DataDomain | DomainNamespace\n ): TemplateResult {\n const hasChildren = namespace.hasFields()\n const isSelected = this.isItemSelected(namespace.key)\n const isMultiSelected = this.selectedItems.size > 1 && isSelected\n const isCollapsed = this.isCollapsed(namespace.key)\n const isFocused = this.focusedItem === namespace.key\n\n return html`\n <div class=\"tree-item external-item\" role=\"treeitem\">\n <div\n class=\"item-content external-item-content ${classMap({\n 'selected': isSelected && !isMultiSelected,\n 'multi-selected': isMultiSelected,\n 'focused': isFocused,\n 'highlighted': this.highlighted === namespace.key,\n })}\"\n tabindex=\"${isFocused ? '0' : '-1'}\"\n draggable=\"true\"\n data-key=\"${namespace.key}\"\n data-kind=\"${namespace.kind}\"\n data-domain=\"${namespace.domain.key}\"\n data-parent=\"${parent.key !== namespace.domain.key ? parent.key : ''}\"\n @click=\"${(e: MouseEvent) =>\n this.handleExternalItemClick(\n e,\n namespace.key,\n namespace.kind,\n namespace.domain.key,\n parent.key !== namespace.domain.key ? parent.key : undefined\n )}\"\n @focus=\"${() => this.handleItemFocus(namespace.key)}\"\n @dragstart=\"${(e: DragEvent) => this.handleDragStart(e, namespace.key)}\"\n @dragend=\"${() => this.handleDragEnd()}\"\n >\n ${hasChildren\n ? html`\n <ui-icon\n class=\"expand-icon ${isCollapsed ? '' : 'expanded'}\"\n icon=\"chevronRight\"\n @click=\"${(e: MouseEvent) => this.toggleCollapsed(namespace.key, e)}\"\n ></ui-icon>\n `\n : html`<span class=\"expand-placeholder\"></span>`}\n <ui-icon class=\"item-icon\" icon=\"${getDomainIconType(namespace.kind)}\"></ui-icon>\n <span class=\"item-label\">${namespace.info.getLabel()}</span>\n </div>\n ${hasChildren && !isCollapsed\n ? html` <div class=\"children\">${this.renderExternalDomainTree(namespace)}</div>`\n : ''}\n </div>\n `\n }\n\n /**\n * Render external model item (read-only)\n */\n protected renderExternalModelItem(model: DomainModel, parent: DataDomain | DomainNamespace): TemplateResult {\n const hasEntities = model.hasFields()\n const isSelected = this.isItemSelected(model.key)\n const isMultiSelected = this.selectedItems.size > 1 && isSelected\n const isCollapsed = this.isCollapsed(model.key)\n const isFocused = this.focusedItem === model.key\n\n return html`\n <div class=\"tree-item external-item\" role=\"treeitem\">\n <div\n class=\"item-content external-item-content ${classMap({\n 'selected': isSelected && !isMultiSelected,\n 'multi-selected': isMultiSelected,\n 'focused': isFocused,\n 'highlighted': this.highlighted === model.key,\n })}\"\n tabindex=\"${isFocused ? '0' : '-1'}\"\n draggable=\"true\"\n data-key=\"${model.key}\"\n data-kind=\"${model.kind}\"\n data-domain=\"${model.domain.key}\"\n data-parent=\"${parent.key !== model.domain.key ? parent.key : ''}\"\n @click=\"${(e: MouseEvent) =>\n this.handleExternalItemClick(\n e,\n model.key,\n model.kind,\n model.domain.key,\n parent.key !== model.domain.key ? parent.key : undefined\n )}\"\n @focus=\"${() => this.handleItemFocus(model.key)}\"\n @dragstart=\"${(e: DragEvent) => this.handleDragStart(e, model.key)}\"\n @dragend=\"${() => this.handleDragEnd()}\"\n >\n ${hasEntities\n ? html`\n <ui-icon\n class=\"expand-icon ${isCollapsed ? '' : 'expanded'}\"\n icon=\"chevronRight\"\n @click=\"${(e: MouseEvent) => this.toggleCollapsed(model.key, e)}\"\n ></ui-icon>\n `\n : html`<span class=\"expand-placeholder\"></span>`}\n <ui-icon class=\"item-icon\" icon=\"${getDomainIconType(model.kind)}\"></ui-icon>\n <span class=\"item-label\">${model.info.getLabel()}</span>\n </div>\n ${hasEntities && !isCollapsed ? html` <div class=\"children\">${this.renderExternalEntityList(model)}</div>` : ''}\n </div>\n `\n }\n\n /**\n * Render external entity list\n */\n protected renderExternalEntityList(model: DomainModel): TemplateResult {\n const entities: TemplateResult[] = []\n\n for (const entity of model.listEntities()) {\n entities.push(this.renderExternalEntityItem(entity, model))\n }\n\n return html`<div class=\"external-entity-items\">${entities}</div>`\n }\n\n /**\n * Render external entity item (read-only)\n */\n protected renderExternalEntityItem(entity: DomainEntity, parent: DomainModel): TemplateResult {\n const isSelected = this.isItemSelected(entity.key)\n const isMultiSelected = this.selectedItems.size > 1 && isSelected\n const isFocused = this.focusedItem === entity.key\n\n return html`\n <div class=\"tree-item external-item\" role=\"treeitem\">\n <div\n class=\"item-content external-item-content ${classMap({\n 'selected': isSelected && !isMultiSelected,\n 'multi-selected': isMultiSelected,\n 'focused': isFocused,\n 'highlighted': this.highlighted === entity.key,\n })}\"\n tabindex=\"${isFocused ? '0' : '-1'}\"\n draggable=\"true\"\n data-key=\"${entity.key}\"\n data-kind=\"${entity.kind}\"\n data-domain=\"${entity.domain.key}\"\n data-parent=\"${parent.key !== entity.domain.key ? parent.key : ''}\"\n @click=\"${(e: MouseEvent) =>\n this.handleExternalItemClick(e, entity.key, entity.kind, entity.domain.key, parent.key)}\"\n @focus=\"${() => this.handleItemFocus(entity.key)}\"\n @dragstart=\"${(e: DragEvent) => this.handleDragStart(e, entity.key)}\"\n @dragend=\"${() => this.handleDragEnd()}\"\n >\n <span class=\"expand-placeholder\"></span>\n <ui-icon class=\"item-icon\" icon=\"${getDomainIconType(entity.kind)}\"></ui-icon>\n <span class=\"item-label\">${entity.info.getLabel()}</span>\n </div>\n </div>\n `\n }\n}\n"]}
@@ -0,0 +1,289 @@
1
+ import { nothing, type PropertyValues, type TemplateResult } from 'lit';
2
+ import { DomainProperty } from '@api-client/core/modeling/DomainProperty.js';
3
+ import { type DomainPropertyFormat } from '@api-client/core/modeling/DataFormat.js';
4
+ import { PropertySemantic } from '@api-client/core/modeling/Semantics.js';
5
+ import { ModelingElement } from './ModelingElement.js';
6
+ import type { DomainPropertyInputConfig } from '../types.js';
7
+ /**
8
+ * Dispatched when the user deletes a property.
9
+ *
10
+ * @event DomainPropertyEditor#delete
11
+ * @type {CustomEvent}
12
+ * @property {object} detail - The event details.
13
+ * @property {string} detail.key - The key of the parent entity to navigate to.
14
+ * @property {string} detail.kind - The kind of the parent entity. It will always be `DomainEntityKind`.
15
+ */
16
+ /**
17
+ * `DomainPropertyEditor` is a LitElement-based web component that provides a user interface for editing
18
+ * properties of a `DomainProperty` object. It allows users to modify various aspects of a data property,
19
+ * including its metadata, attributes, schema, and enum values.
20
+ *
21
+ * ## Features
22
+ *
23
+ * - **Metadata Editing**: Allows editing of the property's name, display name, and description.
24
+ * - **Attribute Management**: Provides controls for setting data type, format, and other attributes
25
+ * like `required`, `multiple`, `primary`, `index`, and `readOnly`.
26
+ * - **Schema Definition**: Enables defining the schema for the property, including default values
27
+ * and enum values.
28
+ * - **Enum Editor**: Supports enabling and disabling an enum editor for predefined values, with
29
+ * options to add, update, and delete enum values.
30
+ * - **Default Value Setting**: Allows setting a default value for the property, either as a literal
31
+ * value or a function.
32
+ * - **Data Type and Format Selection**: Provides dropdowns for selecting the data type and format
33
+ * of the property.
34
+ * - **Validation**: Includes input validation to ensure data integrity.
35
+ * - **Change Notification**: Dispatches a `change` event whenever a property is modified.
36
+ *
37
+ * ## Usage
38
+ *
39
+ * The `DomainPropertyEditor` is typically used within a larger application that manages data models.
40
+ *
41
+ * ```html
42
+ * <domain-property-editor .root="${this.domainNamespace}" selected="property-key"></domain-property-editor>
43
+ * ```
44
+ *
45
+ * @fires DomainPropertyEditor#delete - A custom event with the `key` and `type` when a property was selected.
46
+ */
47
+ export default class DomainPropertyEditor extends ModelingElement {
48
+ /**
49
+ * The `DomainProperty` object being edited.
50
+ * This is updated when the `selected` property changes.
51
+ */
52
+ private accessor domainElement;
53
+ /**
54
+ * Indicates whether the default value input field is visible.
55
+ * This is set to `true` when the user selects the "Literal" option in the default value select.
56
+ */
57
+ private accessor hasDefaultValueInput;
58
+ /**
59
+ * Whether the enum options are enabled.
60
+ * When `true` the user can add, update, and delete enum values.
61
+ */
62
+ private accessor enumEnabled;
63
+ /**
64
+ * A fields that holds in memory enum values after disabling the enum editor.
65
+ * When that happens the values are removed from the model but kept in memory.
66
+ * As long as the property stays the same, the user can reopen the enum editor
67
+ * and restore the previous value.
68
+ */
69
+ protected cachedEnumValues: string[] | undefined;
70
+ /**
71
+ * A cached value of the schema-sensitive input configuration.
72
+ * These are the default value and enum value inputs.
73
+ */
74
+ protected cachedSchemaInputConfig?: DomainPropertyInputConfig;
75
+ /**
76
+ * A configuration for a schema-sensitive HTML input.
77
+ */
78
+ get schemaInputConfig(): DomainPropertyInputConfig;
79
+ protected willUpdate(cp: PropertyValues<this>): void;
80
+ protected computeProperty(): Promise<void>;
81
+ /**
82
+ * Toggles the state of the enum editor.
83
+ *
84
+ * If the editor was disabled, it enables it and vice-versa.
85
+ *
86
+ * It ensures the property has the schema and then:
87
+ * - When enabling:
88
+ * - If `cachedEnumValues` is set it restores them.
89
+ * - Otherwise it sets the default enum value `['']`
90
+ * - When disabling:
91
+ * - It sets the `cachedEnumValues` to the current enum value.
92
+ * - Removes the enum from the model
93
+ * - Requests the model update.
94
+ *
95
+ * @fires change - Dispatched when the enum editor state changes.
96
+ */
97
+ toggleEnum(): void;
98
+ /**
99
+ * Updates an enum value.
100
+ *
101
+ * @param index The index at which to update the value.
102
+ * @param value The value to set. Empty string is acceptable. The type is determined by the property type.
103
+ * @throws {RangeError} When the index is out of bounds.
104
+ * @throws {TypeError} When the value is not a string.
105
+ * @fires change - Dispatched when the enum value is updated.
106
+ */
107
+ updateEnum(index: number, value: string): void;
108
+ /**
109
+ * Adds a new enum value to the property.
110
+ *
111
+ * @param value The value to add. Defaults to an empty string.
112
+ * @throws {TypeError} When the value is not a string.
113
+ * @fires change - Dispatched when a new enum value is added.
114
+ */
115
+ addEnum(value?: string): void;
116
+ /**
117
+ * Deletes an enum value at a position.
118
+ *
119
+ * @param index The index at which to delete an enum property.
120
+ * @throws {RangeError} When the index is out of bounds.
121
+ * @fires change - Dispatched when an enum value is deleted.
122
+ */
123
+ deleteEnum(index: number): void;
124
+ /**
125
+ * Sets a new defaultValue on the property schema.
126
+ *
127
+ * @param value The default value to set. Empty to remove.
128
+ * @param type The type of the value.
129
+ * @param dataType Optional data type to set. Defaults to string. Only used with `type` equal `literal`.
130
+ * @fires change - Dispatched when the default value is updated.
131
+ */
132
+ setDefaultValue(value?: string, type?: 'function' | 'literal'): void;
133
+ /**
134
+ * Updates the property's data type.
135
+ *
136
+ * It sets the `format` for `number`, `datetime`, and `binary` data types.
137
+ *
138
+ * @param value The value to set.
139
+ * @throws {TypeError} When the passed value is not a valid data type.
140
+ * @fires change - Dispatched when the data type is updated.
141
+ */
142
+ setDataType(value: string): void;
143
+ /**
144
+ * Sets the value of one of the "attribute" fields.
145
+ * These are the checkboxes located in the "Attributes" section.
146
+ *
147
+ * @param name The name of the attribute to set.
148
+ * @param value The boolean option to set as the value.
149
+ * @throws {TypeError} When the passed name is not a valid attribute name.
150
+ * @throws {TypeError} When the passed value is not a boolean value.
151
+ * @fires change - Dispatched when an attribute value is updated.
152
+ */
153
+ setModelAttribute(name: string, value: boolean): void;
154
+ /**
155
+ * Sets the `format` value on the model.
156
+ *
157
+ * @param format The format value to set.
158
+ * @throws {TypeError} When the passed format value is not supported.
159
+ * @fires change - Dispatched when the format value is updated.
160
+ */
161
+ setFormat(format?: string): void;
162
+ /**
163
+ * Sets an example value on the schema.
164
+ * @param value The value to set. Removes the examples array if not set.
165
+ */
166
+ setExampleValue(value?: string): void;
167
+ /**
168
+ * A method to be called when a schema property changes.
169
+ * It caches the schema-sensitive input configuration.
170
+ */
171
+ protected updateSchemaInputConfig(): void;
172
+ /**
173
+ * A handler for the one of the metadata inputs value change.
174
+ *
175
+ * It supports the following fields:
176
+ *
177
+ * - `name`
178
+ * - `displayName`
179
+ * - `description`
180
+ * - `literalDefaultValue`
181
+ */
182
+ protected handleMetaChange(e: Event): void;
183
+ protected handleSchemaChange(e: Event): void;
184
+ /**
185
+ * A handler for the data type select input change
186
+ */
187
+ protected handleDataTypeChange(e: Event): void;
188
+ /**
189
+ * A handler for any of the checkboxes in the `attributes` section.
190
+ * It calls the `setModelAttribute()` method.
191
+ */
192
+ protected handleAttributeOptionChange(e: Event): void;
193
+ /**
194
+ * A handler for the default value select input change.
195
+ * Depending on the selected options it calls the `setDefaultValue()`
196
+ * with appropriate arguments.
197
+ */
198
+ protected handleDefaultValueChange(e: Event): void;
199
+ /**
200
+ * A handler for the format select input change.
201
+ * Calls the `setFormat()` with the appropriate value.
202
+ */
203
+ protected handleFormatChange(e: Event): void;
204
+ /**
205
+ * Handles the toggle button for the enum editor.
206
+ * It calls the toggleEnum() whenever activated.
207
+ */
208
+ protected handleEnumOptionChange(): void;
209
+ /**
210
+ * A handler for the enum input change.
211
+ * It calls the `updateEnum()` method
212
+ */
213
+ protected handleEnumChange(e: Event): void;
214
+ /**
215
+ * A handler for the add enum button.
216
+ */
217
+ protected handleAddEnum(): void;
218
+ /**
219
+ * A handler for the delete enum value button click.
220
+ */
221
+ protected handleDeleteEnum(e: Event): void;
222
+ /**
223
+ * Handles a change on the example input.
224
+ */
225
+ protected handleExampleChange(e: Event): void;
226
+ protected handleDeleteTaxonomy(e: Event): void;
227
+ protected handleTaxonomySelect(e: CustomEvent<{
228
+ item: HTMLElement;
229
+ }>): void;
230
+ protected handleConfigureTaxonomy(e: Event): void;
231
+ protected render(): TemplateResult | typeof nothing;
232
+ protected renderForm(model: DomainProperty): TemplateResult;
233
+ protected renderMetaInputs(model: DomainProperty): TemplateResult;
234
+ protected renderAttributes(model: DomainProperty): TemplateResult;
235
+ protected renderTaxonomy(): TemplateResult;
236
+ protected renderSchema(model: DomainProperty): TemplateResult | typeof nothing;
237
+ protected renderDataTypeInput(model: DomainProperty): TemplateResult;
238
+ protected renderAttributeOptions(model: DomainProperty): TemplateResult;
239
+ protected renderStringSchema(model: DomainProperty): (TemplateResult | typeof nothing)[];
240
+ protected renderNumberSchema(model: DomainProperty): (TemplateResult | typeof nothing)[];
241
+ protected renderBooleanSchema(model: DomainProperty): (TemplateResult | typeof nothing)[];
242
+ protected renderDateSchema(model: DomainProperty): (TemplateResult | typeof nothing)[];
243
+ protected renderTimeSchema(model: DomainProperty): (TemplateResult | typeof nothing)[];
244
+ protected renderDateTimeSchema(model: DomainProperty): (TemplateResult | typeof nothing)[];
245
+ /**
246
+ * Renders the input for the default value.
247
+ *
248
+ * Note, when defining a new function, add support for it generation in the
249
+ * `src/modeling/value_generator.ts` file.
250
+ */
251
+ protected renderDefaultValueInput(model: DomainProperty): TemplateResult | typeof nothing;
252
+ protected renderLiteralDefaultValueInput(model: DomainProperty): TemplateResult | typeof nothing;
253
+ protected renderFormat(model: DomainProperty): TemplateResult | typeof nothing;
254
+ protected renderFormatInput(model: DomainProperty, formats: DomainPropertyFormat[]): TemplateResult;
255
+ /**
256
+ * Renders the enum editing editor section.
257
+ */
258
+ protected renderEnumEditor(model: DomainProperty): TemplateResult;
259
+ /**
260
+ * Renders the enum toggle button.
261
+ */
262
+ protected renderEnumToggle(): TemplateResult;
263
+ /**
264
+ * Renders the list of enum inputs or nothing when not required.
265
+ */
266
+ protected renderEnumValues(model: DomainProperty): TemplateResult[] | typeof nothing;
267
+ /**
268
+ * Renders the text field to edit an enum value.
269
+ * @param value The enum value to render in the input
270
+ * @param index The enum's index in the enum array.
271
+ */
272
+ protected renderEnumItem(value: string, index: number): TemplateResult;
273
+ /**
274
+ * Renders the "add" value value button.
275
+ */
276
+ protected renderAddEnumButton(): TemplateResult | typeof nothing;
277
+ protected renderExampleValueInput(model: DomainProperty): TemplateResult;
278
+ protected renderMinimumValueInput(model: DomainProperty): TemplateResult | typeof nothing;
279
+ protected renderExclusiveMinimumInput(model: DomainProperty): TemplateResult | typeof nothing;
280
+ protected renderExclusiveMaximumInput(model: DomainProperty): TemplateResult | typeof nothing;
281
+ protected renderMaximumValueInput(model: DomainProperty): TemplateResult | typeof nothing;
282
+ protected renderMultipleOfInput(model: DomainProperty): TemplateResult | typeof nothing;
283
+ protected renderDataGovernanceSection(model: DomainProperty): TemplateResult | typeof nothing;
284
+ protected renderTaxonomyInput(model: DomainProperty): TemplateResult | typeof nothing;
285
+ protected renderSelectedSemantics(selected: PropertySemantic[]): TemplateResult | typeof nothing;
286
+ protected renderTaxonomyItem(semantic: PropertySemantic): TemplateResult;
287
+ protected renderTaxonomyCategories(categories: Record<string, PropertySemantic[]>): TemplateResult[];
288
+ }
289
+ //# sourceMappingURL=DomainPropertyEditor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DomainPropertyEditor.d.ts","sourceRoot":"","sources":["../../../../src/modeling/internals/DomainPropertyEditor.ts"],"names":[],"mappings":"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"}