@api-client/ui 0.5.58 → 0.6.1

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 +32 -11
  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,1734 @@
1
+ import { __esDecorate, __runInitializers } from "tslib";
2
+ import { html } from 'lit';
3
+ import { property, state } from 'lit/decorators.js';
4
+ import { LitElement } from 'lit';
5
+ import { classMap } from 'lit/directives/class-map.js';
6
+ import { DataDomain } from '@api-client/core/modeling/DataDomain.js';
7
+ import { DataDomainKind, DomainAssociationKind, DomainEntityKind, DomainModelKind, DomainNamespaceKind, DomainPropertyKind, } from '@api-client/core/models/kinds.js';
8
+ import { getDomainLabel, getFieldIcon, getDomainIconType } from '../lib/ui_mapping.js';
9
+ let DomainNavigation = (() => {
10
+ let _classSuper = LitElement;
11
+ let _instanceExtraInitializers = [];
12
+ let _root_decorators;
13
+ let _root_initializers = [];
14
+ let _root_extraInitializers = [];
15
+ let _set_selected_decorators;
16
+ let _highlighted_decorators;
17
+ let _highlighted_initializers = [];
18
+ let _highlighted_extraInitializers = [];
19
+ let _selectedItems_decorators;
20
+ let _selectedItems_initializers = [];
21
+ let _selectedItems_extraInitializers = [];
22
+ let _selectionType_decorators;
23
+ let _selectionType_initializers = [];
24
+ let _selectionType_extraInitializers = [];
25
+ let _draggedItems_decorators;
26
+ let _draggedItems_initializers = [];
27
+ let _draggedItems_extraInitializers = [];
28
+ let _dragTarget_decorators;
29
+ let _dragTarget_initializers = [];
30
+ let _dragTarget_extraInitializers = [];
31
+ let _openedParents_decorators;
32
+ let _openedParents_initializers = [];
33
+ let _openedParents_extraInitializers = [];
34
+ let _cutItems_decorators;
35
+ let _cutItems_initializers = [];
36
+ let _cutItems_extraInitializers = [];
37
+ let _cutItemsType_decorators;
38
+ let _cutItemsType_initializers = [];
39
+ let _cutItemsType_extraInitializers = [];
40
+ let _focusedItem_decorators;
41
+ let _focusedItem_initializers = [];
42
+ let _focusedItem_extraInitializers = [];
43
+ let _searchQuery_decorators;
44
+ let _searchQuery_initializers = [];
45
+ let _searchQuery_extraInitializers = [];
46
+ let _searchResults_decorators;
47
+ let _searchResults_initializers = [];
48
+ let _searchResults_extraInitializers = [];
49
+ return class DomainNavigation extends _classSuper {
50
+ static {
51
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
52
+ _root_decorators = [property({ type: Object })];
53
+ _set_selected_decorators = [property({ type: String })];
54
+ _highlighted_decorators = [property({ type: String })];
55
+ _selectedItems_decorators = [state()];
56
+ _selectionType_decorators = [state()];
57
+ _draggedItems_decorators = [state()];
58
+ _dragTarget_decorators = [state()];
59
+ _openedParents_decorators = [state()];
60
+ _cutItems_decorators = [state()];
61
+ _cutItemsType_decorators = [state()];
62
+ _focusedItem_decorators = [state()];
63
+ _searchQuery_decorators = [state()];
64
+ _searchResults_decorators = [state()];
65
+ __esDecorate(this, null, _root_decorators, { kind: "accessor", name: "root", static: false, private: false, access: { has: obj => "root" in obj, get: obj => obj.root, set: (obj, value) => { obj.root = value; } }, metadata: _metadata }, _root_initializers, _root_extraInitializers);
66
+ __esDecorate(this, null, _set_selected_decorators, { kind: "setter", name: "selected", static: false, private: false, access: { has: obj => "selected" in obj, set: (obj, value) => { obj.selected = value; } }, metadata: _metadata }, null, _instanceExtraInitializers);
67
+ __esDecorate(this, null, _highlighted_decorators, { kind: "accessor", name: "highlighted", static: false, private: false, access: { has: obj => "highlighted" in obj, get: obj => obj.highlighted, set: (obj, value) => { obj.highlighted = value; } }, metadata: _metadata }, _highlighted_initializers, _highlighted_extraInitializers);
68
+ __esDecorate(this, null, _selectedItems_decorators, { kind: "accessor", name: "selectedItems", static: false, private: false, access: { has: obj => "selectedItems" in obj, get: obj => obj.selectedItems, set: (obj, value) => { obj.selectedItems = value; } }, metadata: _metadata }, _selectedItems_initializers, _selectedItems_extraInitializers);
69
+ __esDecorate(this, null, _selectionType_decorators, { kind: "accessor", name: "selectionType", static: false, private: false, access: { has: obj => "selectionType" in obj, get: obj => obj.selectionType, set: (obj, value) => { obj.selectionType = value; } }, metadata: _metadata }, _selectionType_initializers, _selectionType_extraInitializers);
70
+ __esDecorate(this, null, _draggedItems_decorators, { kind: "accessor", name: "draggedItems", static: false, private: false, access: { has: obj => "draggedItems" in obj, get: obj => obj.draggedItems, set: (obj, value) => { obj.draggedItems = value; } }, metadata: _metadata }, _draggedItems_initializers, _draggedItems_extraInitializers);
71
+ __esDecorate(this, null, _dragTarget_decorators, { kind: "accessor", name: "dragTarget", static: false, private: false, access: { has: obj => "dragTarget" in obj, get: obj => obj.dragTarget, set: (obj, value) => { obj.dragTarget = value; } }, metadata: _metadata }, _dragTarget_initializers, _dragTarget_extraInitializers);
72
+ __esDecorate(this, null, _openedParents_decorators, { kind: "accessor", name: "openedParents", static: false, private: false, access: { has: obj => "openedParents" in obj, get: obj => obj.openedParents, set: (obj, value) => { obj.openedParents = value; } }, metadata: _metadata }, _openedParents_initializers, _openedParents_extraInitializers);
73
+ __esDecorate(this, null, _cutItems_decorators, { kind: "accessor", name: "cutItems", static: false, private: false, access: { has: obj => "cutItems" in obj, get: obj => obj.cutItems, set: (obj, value) => { obj.cutItems = value; } }, metadata: _metadata }, _cutItems_initializers, _cutItems_extraInitializers);
74
+ __esDecorate(this, null, _cutItemsType_decorators, { kind: "accessor", name: "cutItemsType", static: false, private: false, access: { has: obj => "cutItemsType" in obj, get: obj => obj.cutItemsType, set: (obj, value) => { obj.cutItemsType = value; } }, metadata: _metadata }, _cutItemsType_initializers, _cutItemsType_extraInitializers);
75
+ __esDecorate(this, null, _focusedItem_decorators, { kind: "accessor", name: "focusedItem", static: false, private: false, access: { has: obj => "focusedItem" in obj, get: obj => obj.focusedItem, set: (obj, value) => { obj.focusedItem = value; } }, metadata: _metadata }, _focusedItem_initializers, _focusedItem_extraInitializers);
76
+ __esDecorate(this, null, _searchQuery_decorators, { kind: "accessor", name: "searchQuery", static: false, private: false, access: { has: obj => "searchQuery" in obj, get: obj => obj.searchQuery, set: (obj, value) => { obj.searchQuery = value; } }, metadata: _metadata }, _searchQuery_initializers, _searchQuery_extraInitializers);
77
+ __esDecorate(this, null, _searchResults_decorators, { kind: "accessor", name: "searchResults", static: false, private: false, access: { has: obj => "searchResults" in obj, get: obj => obj.searchResults, set: (obj, value) => { obj.searchResults = value; } }, metadata: _metadata }, _searchResults_initializers, _searchResults_extraInitializers);
78
+ if (_metadata) Object.defineProperty(this, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
79
+ }
80
+ #root_accessor_storage = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _root_initializers, void 0));
81
+ /**
82
+ * The root DataDomain to render
83
+ */
84
+ get root() { return this.#root_accessor_storage; }
85
+ set root(value) { this.#root_accessor_storage = value; }
86
+ #selected = __runInitializers(this, _root_extraInitializers);
87
+ /**
88
+ * The currently selected item key.
89
+ * To be used by the parent component to control selection.
90
+ * @attribute selected
91
+ */
92
+ set selected(value) {
93
+ const old = this.#selected;
94
+ this.#selected = value;
95
+ this.requestUpdate('selected', old);
96
+ }
97
+ get selected() {
98
+ return this.#selected;
99
+ }
100
+ #highlighted_accessor_storage = __runInitializers(this, _highlighted_initializers, void 0);
101
+ /**
102
+ * Highlighted item key for visual indication.
103
+ * Highlighted item only renders with a different style. Has no other meaning.
104
+ */
105
+ get highlighted() { return this.#highlighted_accessor_storage; }
106
+ set highlighted(value) { this.#highlighted_accessor_storage = value; }
107
+ #selectedItems_accessor_storage = (__runInitializers(this, _highlighted_extraInitializers), __runInitializers(this, _selectedItems_initializers, new Set()
108
+ /**
109
+ * The type of currently selected items (namespace, model, or entity)
110
+ */
111
+ ));
112
+ /**
113
+ * Currently selected items
114
+ */
115
+ get selectedItems() { return this.#selectedItems_accessor_storage; }
116
+ set selectedItems(value) { this.#selectedItems_accessor_storage = value; }
117
+ #selectionType_accessor_storage = (__runInitializers(this, _selectedItems_extraInitializers), __runInitializers(this, _selectionType_initializers, void 0));
118
+ /**
119
+ * The type of currently selected items (namespace, model, or entity)
120
+ */
121
+ get selectionType() { return this.#selectionType_accessor_storage; }
122
+ set selectionType(value) { this.#selectionType_accessor_storage = value; }
123
+ #draggedItems_accessor_storage = (__runInitializers(this, _selectionType_extraInitializers), __runInitializers(this, _draggedItems_initializers, new Set()
124
+ /**
125
+ * Current drag target
126
+ */
127
+ ));
128
+ /**
129
+ * Items currently being dragged
130
+ */
131
+ get draggedItems() { return this.#draggedItems_accessor_storage; }
132
+ set draggedItems(value) { this.#draggedItems_accessor_storage = value; }
133
+ #dragTarget_accessor_storage = (__runInitializers(this, _draggedItems_extraInitializers), __runInitializers(this, _dragTarget_initializers, void 0));
134
+ /**
135
+ * Current drag target
136
+ */
137
+ get dragTarget() { return this.#dragTarget_accessor_storage; }
138
+ set dragTarget(value) { this.#dragTarget_accessor_storage = value; }
139
+ #openedParents_accessor_storage = (__runInitializers(this, _dragTarget_extraInitializers), __runInitializers(this, _openedParents_initializers, new Set()
140
+ /**
141
+ * Items that have been cut and are waiting to be pasted
142
+ */
143
+ ));
144
+ /**
145
+ * Set of parent items (by key) that are opened/expanded in the view
146
+ */
147
+ get openedParents() { return this.#openedParents_accessor_storage; }
148
+ set openedParents(value) { this.#openedParents_accessor_storage = value; }
149
+ #cutItems_accessor_storage = (__runInitializers(this, _openedParents_extraInitializers), __runInitializers(this, _cutItems_initializers, new Set()
150
+ /**
151
+ * The type of items that were cut
152
+ */
153
+ ));
154
+ /**
155
+ * Items that have been cut and are waiting to be pasted
156
+ */
157
+ get cutItems() { return this.#cutItems_accessor_storage; }
158
+ set cutItems(value) { this.#cutItems_accessor_storage = value; }
159
+ #cutItemsType_accessor_storage = (__runInitializers(this, _cutItems_extraInitializers), __runInitializers(this, _cutItemsType_initializers, void 0));
160
+ /**
161
+ * The type of items that were cut
162
+ */
163
+ get cutItemsType() { return this.#cutItemsType_accessor_storage; }
164
+ set cutItemsType(value) { this.#cutItemsType_accessor_storage = value; }
165
+ #focusedItem_accessor_storage = (__runInitializers(this, _cutItemsType_extraInitializers), __runInitializers(this, _focusedItem_initializers, void 0));
166
+ /**
167
+ * Currently focused item key for keyboard navigation
168
+ */
169
+ get focusedItem() { return this.#focusedItem_accessor_storage; }
170
+ set focusedItem(value) { this.#focusedItem_accessor_storage = value; }
171
+ #searchQuery_accessor_storage = (__runInitializers(this, _focusedItem_extraInitializers), __runInitializers(this, _searchQuery_initializers, void 0));
172
+ /**
173
+ * Current search query
174
+ */
175
+ get searchQuery() { return this.#searchQuery_accessor_storage; }
176
+ set searchQuery(value) { this.#searchQuery_accessor_storage = value; }
177
+ #searchResults_accessor_storage = (__runInitializers(this, _searchQuery_extraInitializers), __runInitializers(this, _searchResults_initializers, []
178
+ /**
179
+ * List of all visible items in navigation order (for keyboard navigation)
180
+ */
181
+ ));
182
+ /**
183
+ * Search results from domain search
184
+ */
185
+ get searchResults() { return this.#searchResults_accessor_storage; }
186
+ set searchResults(value) { this.#searchResults_accessor_storage = value; }
187
+ /**
188
+ * List of all visible items in navigation order (for keyboard navigation)
189
+ */
190
+ visibleItems = (__runInitializers(this, _searchResults_extraInitializers), []);
191
+ // Utility methods for working with selection sets
192
+ /**
193
+ * Check if an item is selected by key
194
+ */
195
+ isItemSelected(key) {
196
+ for (const item of this.selectedItems) {
197
+ if (item.key === key)
198
+ return true;
199
+ }
200
+ return false;
201
+ }
202
+ /**
203
+ * Check if an item is dragged by key
204
+ */
205
+ isItemDragged(key) {
206
+ for (const item of this.draggedItems) {
207
+ if (item.key === key)
208
+ return true;
209
+ }
210
+ return false;
211
+ }
212
+ /**
213
+ * Check if an item is cut by key
214
+ */
215
+ isItemCut(key) {
216
+ for (const item of this.cutItems) {
217
+ if (item.key === key)
218
+ return true;
219
+ }
220
+ return false;
221
+ }
222
+ /**
223
+ * Remove item from selection by key
224
+ */
225
+ removeFromSelection(key) {
226
+ for (const item of this.selectedItems) {
227
+ if (item.key === key) {
228
+ this.selectedItems.delete(item);
229
+ break;
230
+ }
231
+ }
232
+ }
233
+ constructor() {
234
+ super();
235
+ this.handleDomainChange = this.handleDomainChange.bind(this);
236
+ this.handleKeyDown = this.handleKeyDown.bind(this);
237
+ this.addEventListener('focus', this.handleFocus.bind(this));
238
+ }
239
+ connectedCallback() {
240
+ super.connectedCallback();
241
+ this.setAttribute('aria-label', 'Domain hierarchy navigation');
242
+ this.setAttribute('role', 'tree');
243
+ this.setAttribute('tabindex', '0'); // Make component focusable for keyboard events
244
+ // Add keyboard event listener
245
+ this.addEventListener('keydown', this.handleKeyDown);
246
+ }
247
+ disconnectedCallback() {
248
+ super.disconnectedCallback();
249
+ // Clean up keyboard event listener
250
+ this.removeEventListener('keydown', this.handleKeyDown);
251
+ }
252
+ handleFocus() {
253
+ if (!this.focusedItem) {
254
+ this.updateVisibleItemsList();
255
+ this.focusedItem = this.visibleItems[0]?.key;
256
+ }
257
+ if (!this.focusedItem) {
258
+ return;
259
+ }
260
+ this.removeAttribute('tabindex');
261
+ }
262
+ willUpdate(cp) {
263
+ if (cp.has('root')) {
264
+ const old = cp.get('root');
265
+ if (old) {
266
+ old.removeEventListener('change', this.handleDomainChange);
267
+ }
268
+ this.root?.addEventListener('change', this.handleDomainChange);
269
+ // Initialize collapsed state for new root
270
+ if (this.root && this.root !== old) {
271
+ this.initializeOpenedParents();
272
+ }
273
+ }
274
+ if (cp.has('selected')) {
275
+ this.selectedItems.clear();
276
+ if (this.selected) {
277
+ const selectedItem = this.findItemDetails(this.selected);
278
+ if (selectedItem) {
279
+ this.selectedItems.add(selectedItem);
280
+ }
281
+ this.ensureVisibility(this.selected);
282
+ }
283
+ }
284
+ super.willUpdate(cp);
285
+ }
286
+ updated(cp) {
287
+ super.updated(cp);
288
+ if (cp.has('focusedItem')) {
289
+ this.focusOnCurrentItem();
290
+ }
291
+ }
292
+ handleDomainChange() {
293
+ this.requestUpdate();
294
+ }
295
+ /**
296
+ * Toggle collapsed state of a parent item
297
+ */
298
+ toggleCollapsed(key, event) {
299
+ if (event) {
300
+ event.preventDefault();
301
+ event.stopPropagation();
302
+ }
303
+ if (this.openedParents.has(key)) {
304
+ this.openedParents.delete(key);
305
+ }
306
+ else {
307
+ this.openedParents.add(key);
308
+ }
309
+ this.requestUpdate();
310
+ }
311
+ /**
312
+ * Check if an item is collapsed
313
+ */
314
+ isCollapsed(key) {
315
+ return !this.openedParents.has(key);
316
+ }
317
+ /**
318
+ * Initialize the opened state.
319
+ *
320
+ * @TODO: When selection change from the outside, we should also update the openedParents
321
+ * to ensure that the parent of the selected item is always expanded.
322
+ */
323
+ initializeOpenedParents() {
324
+ this.openedParents.clear();
325
+ }
326
+ ensureVisibility(key) {
327
+ if (!this.root)
328
+ return;
329
+ const node = this.root.graph.node(key);
330
+ if (!node) {
331
+ return;
332
+ }
333
+ let current = node.getParentInstance();
334
+ while (current) {
335
+ if (current.key === this.root.key) {
336
+ current = undefined;
337
+ break; // Reached the root, no need to expand further
338
+ }
339
+ this.openedParents.add(current.key);
340
+ if (!(current instanceof DataDomain)) {
341
+ current = current.getParentInstance();
342
+ }
343
+ else {
344
+ current = undefined; // No parent for DataDomain
345
+ }
346
+ }
347
+ this.requestUpdate();
348
+ }
349
+ /**
350
+ * Expand all collapsed items
351
+ */
352
+ expandAll() {
353
+ this.openedParents.clear();
354
+ if (!this.root)
355
+ return;
356
+ const collectParentKeys = (container) => {
357
+ // Add namespaces that have children
358
+ for (const namespace of container.listNamespaces()) {
359
+ if (namespace.hasFields()) {
360
+ this.openedParents.add(namespace.key);
361
+ collectParentKeys(namespace);
362
+ }
363
+ }
364
+ // Add models that have entities
365
+ for (const model of container.listModels()) {
366
+ if (model.hasFields()) {
367
+ this.openedParents.add(model.key);
368
+ }
369
+ }
370
+ };
371
+ collectParentKeys(this.root);
372
+ this.requestUpdate();
373
+ }
374
+ /**
375
+ * Collapse all parent items
376
+ */
377
+ collapseAll() {
378
+ this.openedParents.clear();
379
+ this.requestUpdate();
380
+ }
381
+ /**
382
+ * Clear current selection
383
+ */
384
+ clearSelection() {
385
+ this.selectedItems.clear();
386
+ this.selectionType = undefined;
387
+ this.requestUpdate();
388
+ this.dispatchSelectionCleared();
389
+ }
390
+ /**
391
+ * Handle keyboard shortcuts
392
+ */
393
+ handleKeyDown(event) {
394
+ const { key, ctrlKey, metaKey } = event;
395
+ const isCtrlPressed = ctrlKey || metaKey;
396
+ // Update visible items list for navigation
397
+ this.updateVisibleItemsList();
398
+ if (isCtrlPressed) {
399
+ // Only handle if there are selected items for cut/paste operations
400
+ if (this.selectedItems.size > 0) {
401
+ switch (key.toLowerCase()) {
402
+ case 'x':
403
+ event.preventDefault();
404
+ this.cutSelectedItems();
405
+ break;
406
+ case 'v':
407
+ event.preventDefault();
408
+ this.pasteItems();
409
+ break;
410
+ case 'c':
411
+ // Future: could implement copy functionality
412
+ break;
413
+ }
414
+ }
415
+ return;
416
+ }
417
+ // Handle navigation keys
418
+ switch (key) {
419
+ case 'ArrowUp':
420
+ event.preventDefault();
421
+ this.moveFocusUp();
422
+ break;
423
+ case 'ArrowDown':
424
+ event.preventDefault();
425
+ this.moveFocusDown();
426
+ break;
427
+ case 'ArrowLeft':
428
+ event.preventDefault();
429
+ this.handleArrowLeft();
430
+ break;
431
+ case 'ArrowRight':
432
+ event.preventDefault();
433
+ this.handleArrowRight();
434
+ break;
435
+ case ' ':
436
+ case 'Space':
437
+ event.preventDefault();
438
+ this.handleSpaceKey();
439
+ break;
440
+ case 'Home':
441
+ event.preventDefault();
442
+ this.moveFocusToFirst();
443
+ break;
444
+ case 'End':
445
+ event.preventDefault();
446
+ this.moveFocusToLast();
447
+ break;
448
+ case 'Escape':
449
+ this.cancelCut();
450
+ break;
451
+ case 'Enter':
452
+ event.preventDefault();
453
+ this.handleEnterKey();
454
+ break;
455
+ }
456
+ }
457
+ /**
458
+ * Cut the currently selected items
459
+ */
460
+ cutSelectedItems() {
461
+ if (this.selectedItems.size === 0)
462
+ return;
463
+ // Clear any previous cut items
464
+ this.cutItems.clear();
465
+ // Set current selection as cut items
466
+ for (const item of this.selectedItems) {
467
+ this.cutItems.add(item);
468
+ }
469
+ this.cutItemsType = this.selectionType;
470
+ // Clear selection but keep the cut items
471
+ this.selectedItems.clear();
472
+ this.selectionType = undefined;
473
+ this.requestUpdate();
474
+ this.dispatchCutItems();
475
+ }
476
+ /**
477
+ * Paste cut items to the current selection target
478
+ */
479
+ pasteItems() {
480
+ if (this.cutItems.size === 0)
481
+ return;
482
+ // If there's a single selected item, try to paste to it
483
+ if (this.selectedItems.size === 1) {
484
+ const targetItem = Array.from(this.selectedItems)[0];
485
+ if (targetItem && this.isValidPasteTarget(targetItem.key, targetItem.kind)) {
486
+ this.performPaste(targetItem.key, targetItem.kind);
487
+ }
488
+ }
489
+ else if (this.selectedItems.size === 0) {
490
+ // If no selection, try to paste to root
491
+ if (this.root && this.isValidPasteTarget(this.root.key, this.root.kind)) {
492
+ this.performPaste(this.root.key, this.root.kind);
493
+ }
494
+ }
495
+ }
496
+ /**
497
+ * Perform the actual paste operation
498
+ */
499
+ performPaste(targetKey, targetKind) {
500
+ const items = Array.from(this.cutItems);
501
+ if (items.length === 0)
502
+ return;
503
+ const dropDetail = {
504
+ items,
505
+ target: {
506
+ key: targetKey,
507
+ kind: targetKind,
508
+ parent: this.findItemDetails(targetKey)?.parent,
509
+ domain: this.root ? this.root.key : '',
510
+ },
511
+ };
512
+ this.dispatchEvent(new CustomEvent('items-dropped', { detail: dropDetail, bubbles: true }));
513
+ // Clear cut state after successful paste
514
+ this.cutItems.clear();
515
+ this.cutItemsType = undefined;
516
+ this.requestUpdate();
517
+ }
518
+ /**
519
+ * Cancel current cut operation
520
+ */
521
+ cancelCut() {
522
+ this.cutItems.clear();
523
+ this.cutItemsType = undefined;
524
+ this.requestUpdate();
525
+ }
526
+ /**
527
+ * Check if target is valid for pasting cut items
528
+ */
529
+ isValidPasteTarget(targetKey, targetKind) {
530
+ if (!this.cutItemsType || this.isItemCut(targetKey)) {
531
+ return false;
532
+ }
533
+ // Use the same validation logic as drag and drop
534
+ // Entities can only be pasted on models
535
+ if (this.cutItemsType === DomainEntityKind) {
536
+ return targetKind === DomainModelKind;
537
+ }
538
+ // Models can be pasted on namespaces or root
539
+ if (this.cutItemsType === DomainModelKind) {
540
+ return targetKind === DomainNamespaceKind || targetKind === DataDomainKind;
541
+ }
542
+ // Namespaces can be pasted on other namespaces or root
543
+ if (this.cutItemsType === DomainNamespaceKind) {
544
+ return targetKind === DomainNamespaceKind || targetKind === DataDomainKind;
545
+ }
546
+ return false;
547
+ }
548
+ /**
549
+ * Dispatch cut items event
550
+ */
551
+ dispatchCutItems() {
552
+ const items = Array.from(this.cutItems);
553
+ const detail = {
554
+ items,
555
+ cutItemsType: this.cutItemsType || '',
556
+ };
557
+ this.dispatchEvent(new CustomEvent('items-cut', { detail, bubbles: true }));
558
+ }
559
+ /**
560
+ * Update the list of visible items for keyboard navigation
561
+ */
562
+ updateVisibleItemsList() {
563
+ this.visibleItems = [];
564
+ if (!this.root)
565
+ return;
566
+ const addVisibleItems = (container, level = 0) => {
567
+ // Add namespaces
568
+ for (const namespace of container.listNamespaces()) {
569
+ const item = this.findItemDetails(namespace.key);
570
+ if (item) {
571
+ this.visibleItems.push(item);
572
+ }
573
+ // Add children if not collapsed
574
+ if (namespace.hasFields() && !this.isCollapsed(namespace.key)) {
575
+ addVisibleItems(namespace, level + 1);
576
+ }
577
+ }
578
+ // Add models
579
+ for (const model of container.listModels()) {
580
+ const item = this.findItemDetails(model.key);
581
+ if (item) {
582
+ this.visibleItems.push(item);
583
+ }
584
+ // Add entities if not collapsed
585
+ if (model.hasFields() && !this.isCollapsed(model.key)) {
586
+ for (const entity of model.listEntities()) {
587
+ const entityItem = this.findItemDetails(entity.key);
588
+ if (entityItem) {
589
+ this.visibleItems.push(entityItem);
590
+ }
591
+ }
592
+ }
593
+ }
594
+ };
595
+ addVisibleItems(this.root);
596
+ }
597
+ /**
598
+ * Move focus to the previous item
599
+ */
600
+ moveFocusUp() {
601
+ if (this.visibleItems.length === 0)
602
+ return;
603
+ const currentIndex = this.focusedItem ? this.visibleItems.findIndex((item) => item.key === this.focusedItem) : -1;
604
+ const newIndex = currentIndex <= 0 ? this.visibleItems.length - 1 : currentIndex - 1;
605
+ this.focusedItem = this.visibleItems[newIndex].key;
606
+ this.requestUpdate();
607
+ }
608
+ /**
609
+ * Move focus to the next item
610
+ */
611
+ moveFocusDown() {
612
+ if (this.visibleItems.length === 0)
613
+ return;
614
+ const currentIndex = this.focusedItem ? this.visibleItems.findIndex((item) => item.key === this.focusedItem) : -1;
615
+ const newIndex = currentIndex >= this.visibleItems.length - 1 ? 0 : currentIndex + 1;
616
+ this.focusedItem = this.visibleItems[newIndex].key;
617
+ this.requestUpdate();
618
+ }
619
+ /**
620
+ * Handle left arrow key - collapse item or move to parent
621
+ */
622
+ handleArrowLeft() {
623
+ if (!this.focusedItem)
624
+ return;
625
+ const focusedDetails = this.findItemDetails(this.focusedItem);
626
+ if (!focusedDetails)
627
+ return;
628
+ // If item is expanded, collapse it
629
+ if ((focusedDetails.kind === DomainNamespaceKind || focusedDetails.kind === DomainModelKind) &&
630
+ !this.isCollapsed(this.focusedItem)) {
631
+ this.toggleCollapsed(this.focusedItem);
632
+ return;
633
+ }
634
+ // If item is already collapsed or is a leaf, move to parent
635
+ if (focusedDetails.parent) {
636
+ this.focusedItem = focusedDetails.parent;
637
+ this.requestUpdate();
638
+ }
639
+ }
640
+ /**
641
+ * Handle right arrow key - expand item or move to first child
642
+ */
643
+ handleArrowRight() {
644
+ if (!this.focusedItem)
645
+ return;
646
+ const focusedDetails = this.findItemDetails(this.focusedItem);
647
+ if (!focusedDetails)
648
+ return;
649
+ // If item can be expanded and is collapsed, expand it
650
+ if ((focusedDetails.kind === DomainNamespaceKind || focusedDetails.kind === DomainModelKind) &&
651
+ this.isCollapsed(this.focusedItem)) {
652
+ this.toggleCollapsed(this.focusedItem);
653
+ this.updateVisibleItemsList();
654
+ this.requestUpdate();
655
+ return;
656
+ }
657
+ // If item is already expanded, move to first child
658
+ this.updateVisibleItemsList();
659
+ const currentIndex = this.visibleItems.findIndex((item) => item.key === this.focusedItem);
660
+ if (currentIndex >= 0 && currentIndex < this.visibleItems.length - 1) {
661
+ const nextItem = this.visibleItems[currentIndex + 1];
662
+ // Only move to next item if it's actually a child (has current item as parent)
663
+ if (nextItem.parent === this.focusedItem) {
664
+ this.focusedItem = nextItem.key;
665
+ this.requestUpdate();
666
+ }
667
+ }
668
+ }
669
+ /**
670
+ * Handle space key - select/deselect focused item
671
+ */
672
+ handleSpaceKey() {
673
+ if (!this.focusedItem)
674
+ return;
675
+ const item = this.findItemDetails(this.focusedItem);
676
+ if (item) {
677
+ // Toggle selection of focused item
678
+ if (this.isItemSelected(this.focusedItem)) {
679
+ // Deselect if already selected
680
+ this.removeFromSelection(this.focusedItem);
681
+ if (this.selectedItems.size === 0) {
682
+ this.selectionType = undefined;
683
+ }
684
+ }
685
+ else {
686
+ // Select the focused item
687
+ this.handleSingleSelection(item.key, item.kind, item.domain, item.parent);
688
+ }
689
+ this.requestUpdate();
690
+ }
691
+ }
692
+ /**
693
+ * Handle enter key - activate focused item (same as click)
694
+ */
695
+ handleEnterKey() {
696
+ if (!this.focusedItem)
697
+ return;
698
+ const item = this.findItemDetails(this.focusedItem);
699
+ if (item) {
700
+ this.handleSingleSelection(item.key, item.kind, item.domain, item.parent);
701
+ }
702
+ }
703
+ /**
704
+ * Move focus to first item
705
+ */
706
+ moveFocusToFirst() {
707
+ if (this.visibleItems.length === 0)
708
+ return;
709
+ this.focusedItem = this.visibleItems[0].key;
710
+ }
711
+ /**
712
+ * Move focus to last item
713
+ */
714
+ moveFocusToLast() {
715
+ if (this.visibleItems.length === 0)
716
+ return;
717
+ this.focusedItem = this.visibleItems[this.visibleItems.length - 1].key;
718
+ }
719
+ /**
720
+ * Handle item click for selection
721
+ */
722
+ handleItemClick(event, key, kind, domain, parent) {
723
+ event.preventDefault();
724
+ event.stopPropagation();
725
+ // Update focus when clicking
726
+ this.focusedItem = key;
727
+ const isCtrlClick = event.ctrlKey || event.metaKey;
728
+ if (isCtrlClick) {
729
+ this.handleMultiSelection(key, kind, domain, parent);
730
+ }
731
+ else {
732
+ this.handleSingleSelection(key, kind, domain, parent);
733
+ }
734
+ }
735
+ /**
736
+ * Handle item receiving focus
737
+ */
738
+ handleItemFocus(key) {
739
+ this.focusedItem = key;
740
+ }
741
+ focusOnCurrentItem() {
742
+ if (!this.focusedItem)
743
+ return;
744
+ const itemElement = this.shadowRoot?.querySelector(`[data-key="${this.focusedItem}"]`);
745
+ if (itemElement instanceof HTMLElement) {
746
+ itemElement.focus();
747
+ itemElement.scrollIntoView({ block: 'nearest', inline: 'nearest' });
748
+ }
749
+ }
750
+ /**
751
+ * Handle single item selection
752
+ */
753
+ handleSingleSelection(key, kind, domain, parent) {
754
+ // Clear previous selection
755
+ this.selectedItems.clear();
756
+ const selectionInfo = { key, kind, domain, parent };
757
+ this.selectedItems.add(selectionInfo);
758
+ this.selectionType = kind;
759
+ this.#selected = key;
760
+ this.requestUpdate();
761
+ this.dispatchSingleSelection(key, kind, domain, parent);
762
+ }
763
+ handleFieldSelection(key, kind, domain, parent) {
764
+ // Clear previous selection
765
+ this.selectedItems.clear();
766
+ const selectionInfo = { key: parent, kind: DomainEntityKind, domain };
767
+ this.selectedItems.add(selectionInfo);
768
+ this.selectionType = DomainEntityKind;
769
+ this.#selected = parent;
770
+ this.requestUpdate();
771
+ this.dispatchSingleSelection(key, kind, domain, parent);
772
+ }
773
+ /**
774
+ * Handle multi-item selection with Ctrl+click
775
+ */
776
+ handleMultiSelection(key, kind, domain, parent) {
777
+ // Check for mixed type selection
778
+ if (this.selectionType && this.selectionType !== kind) {
779
+ // Mixed selection not allowed - clear and start new selection
780
+ this.handleSingleSelection(key, kind, domain, parent);
781
+ return;
782
+ }
783
+ const selectionInfo = { key, kind, domain, parent };
784
+ // Toggle selection
785
+ if (this.isItemSelected(key)) {
786
+ this.removeFromSelection(key);
787
+ // If no items left, clear selection type
788
+ if (this.selectedItems.size === 0) {
789
+ this.selectionType = undefined;
790
+ }
791
+ }
792
+ else {
793
+ this.selectedItems.add(selectionInfo);
794
+ this.selectionType = kind;
795
+ }
796
+ this.requestUpdate();
797
+ this.dispatchMultiSelection();
798
+ }
799
+ /**
800
+ * Dispatch single selection event
801
+ */
802
+ dispatchSingleSelection(key, kind, domain, parent) {
803
+ const detail = { key, kind, domain, parent };
804
+ this.dispatchEvent(new CustomEvent('item-selected', { detail, bubbles: true }));
805
+ }
806
+ /**
807
+ * Dispatch multi-selection event
808
+ */
809
+ dispatchMultiSelection() {
810
+ const items = Array.from(this.selectedItems);
811
+ const detail = {
812
+ items,
813
+ selectionType: this.selectionType || '',
814
+ };
815
+ this.dispatchEvent(new CustomEvent('items-selected', { detail, bubbles: true }));
816
+ }
817
+ /**
818
+ * Dispatch selection cleared event
819
+ */
820
+ dispatchSelectionCleared() {
821
+ this.dispatchEvent(new CustomEvent('selection-cleared', { bubbles: true }));
822
+ }
823
+ /**
824
+ * Find item details by key
825
+ */
826
+ findItemDetails(key) {
827
+ if (!this.root)
828
+ return undefined;
829
+ // Check if it's the root domain
830
+ if (key === this.root.key) {
831
+ return { key, kind: DataDomainKind, domain: this.root.key };
832
+ }
833
+ // Search in namespaces
834
+ const namespace = this.root.findNamespace(key);
835
+ if (namespace) {
836
+ const parent = namespace.getParentInstance();
837
+ return {
838
+ key,
839
+ kind: DomainNamespaceKind,
840
+ domain: this.root.key,
841
+ parent: parent?.key !== this.root.key ? parent?.key : undefined,
842
+ };
843
+ }
844
+ // Search in models
845
+ const model = this.root.findModel(key);
846
+ if (model) {
847
+ const parent = model.getParentInstance();
848
+ return {
849
+ key,
850
+ kind: DomainModelKind,
851
+ domain: this.root.key,
852
+ parent: parent?.key !== this.root.key ? parent?.key : undefined,
853
+ };
854
+ }
855
+ // Search in entities
856
+ const entity = this.root.findEntity(key);
857
+ if (entity) {
858
+ const model = entity.getParentInstance();
859
+ return {
860
+ key,
861
+ kind: DomainEntityKind,
862
+ domain: this.root.key,
863
+ parent: model?.key,
864
+ };
865
+ }
866
+ return undefined;
867
+ }
868
+ /**
869
+ * Handle drag start
870
+ */
871
+ handleDragStart(event, key) {
872
+ if (!event.dataTransfer)
873
+ return;
874
+ let selectedItems = Array.from(this.selectedItems);
875
+ if (!this.isItemSelected(key)) {
876
+ // If the dragged item is not selected, select only this item
877
+ selectedItems = [];
878
+ const item = this.getItemDetailsForKey(key);
879
+ if (item) {
880
+ selectedItems.push(item);
881
+ }
882
+ }
883
+ // Set drag data
884
+ this.draggedItems.clear();
885
+ for (const selectedItem of selectedItems) {
886
+ this.draggedItems.add(selectedItem);
887
+ }
888
+ const selectedKeys = selectedItems.map((item) => item.key);
889
+ event.dataTransfer.setData('text/plain', selectedKeys.join(','));
890
+ event.dataTransfer.setData('application/json', JSON.stringify({
891
+ items: selectedItems,
892
+ }));
893
+ event.dataTransfer.effectAllowed = 'move';
894
+ this.requestUpdate();
895
+ }
896
+ /**
897
+ * Handle drag over
898
+ */
899
+ handleDragOver(event, key, kind) {
900
+ if (!event.dataTransfer)
901
+ return;
902
+ // Check if this is a valid drop target
903
+ if (this.isValidDropTarget(key, kind)) {
904
+ event.preventDefault();
905
+ this.dragTarget = key;
906
+ this.requestUpdate();
907
+ }
908
+ }
909
+ /**
910
+ * Handle drag leave
911
+ */
912
+ handleDragLeave() {
913
+ this.dragTarget = undefined;
914
+ this.requestUpdate();
915
+ }
916
+ /**
917
+ * Handle drop
918
+ */
919
+ handleDrop(event, targetKey, targetKind) {
920
+ event.preventDefault();
921
+ if (!event.dataTransfer)
922
+ return;
923
+ try {
924
+ const dragData = JSON.parse(event.dataTransfer.getData('application/json'));
925
+ let items = [];
926
+ if (dragData.items) {
927
+ // New format with full item information
928
+ items = dragData.items;
929
+ }
930
+ else if (Array.isArray(dragData)) {
931
+ // Legacy format - just keys
932
+ items = dragData.map((key) => this.findItemDetails(key)).filter(Boolean);
933
+ }
934
+ else if (dragData.keys) {
935
+ // Fallback - extract keys and find details
936
+ items = dragData.keys.map((key) => this.findItemDetails(key)).filter(Boolean);
937
+ }
938
+ if (items.length > 0 && this.isValidDropTarget(targetKey, targetKind)) {
939
+ const dropDetail = {
940
+ items,
941
+ target: {
942
+ key: targetKey,
943
+ kind: targetKind,
944
+ parent: this.findItemDetails(targetKey)?.parent,
945
+ domain: this.root ? this.root.key : '',
946
+ },
947
+ };
948
+ this.dispatchEvent(new CustomEvent('items-dropped', { detail: dropDetail, bubbles: true }));
949
+ }
950
+ }
951
+ catch {
952
+ // Error handling drop - would normally log to error reporting service
953
+ }
954
+ // Clean up drag state
955
+ this.draggedItems.clear();
956
+ this.dragTarget = undefined;
957
+ this.requestUpdate();
958
+ }
959
+ /**
960
+ * Handle drag end
961
+ */
962
+ handleDragEnd() {
963
+ this.draggedItems.clear();
964
+ this.requestUpdate();
965
+ }
966
+ /**
967
+ * Handle click on external (read-only) items
968
+ */
969
+ handleExternalItemClick(e, key, kind, domain, parent) {
970
+ e.stopPropagation();
971
+ if (e.ctrlKey || e.metaKey) {
972
+ // Multi-selection
973
+ this.handleExternalMultiSelection(key, kind, domain, parent);
974
+ }
975
+ else {
976
+ // Single selection
977
+ this.handleExternalSingleSelection(key, kind, domain, parent);
978
+ }
979
+ }
980
+ /**
981
+ * Handle single selection for external items
982
+ */
983
+ handleExternalSingleSelection(key, kind, domain, parent) {
984
+ this.selectedItems.clear();
985
+ const selectionInfo = { key, kind, domain, parent };
986
+ this.selectedItems.add(selectionInfo);
987
+ this.focusedItem = key;
988
+ this.#selected = key;
989
+ const event = {
990
+ key,
991
+ kind,
992
+ domain,
993
+ parent,
994
+ };
995
+ this.dispatchEvent(new CustomEvent('item-selected', { detail: event }));
996
+ this.requestUpdate();
997
+ }
998
+ /**
999
+ * Handle multi-selection for external items
1000
+ */
1001
+ handleExternalMultiSelection(key, kind, domain, parent) {
1002
+ // Check for mixed selection types
1003
+ if (this.selectedItems.size > 0) {
1004
+ // Get the kind of already selected items
1005
+ const firstSelectedItem = this.getFirstSelectedItemKind();
1006
+ if (firstSelectedItem && firstSelectedItem !== kind) {
1007
+ // Mixed selection not allowed, replace selection
1008
+ this.selectedItems.clear();
1009
+ const selectionInfo = { key, kind, domain, parent };
1010
+ this.selectedItems.add(selectionInfo);
1011
+ this.focusedItem = key;
1012
+ const event = {
1013
+ key,
1014
+ kind,
1015
+ domain,
1016
+ parent,
1017
+ };
1018
+ this.dispatchEvent(new CustomEvent('item-selected', { detail: event }));
1019
+ this.requestUpdate();
1020
+ return;
1021
+ }
1022
+ }
1023
+ const selectionInfo = { key, kind, domain, parent };
1024
+ // Toggle selection
1025
+ if (this.isItemSelected(key)) {
1026
+ this.removeFromSelection(key);
1027
+ }
1028
+ else {
1029
+ this.selectedItems.add(selectionInfo);
1030
+ }
1031
+ this.focusedItem = key;
1032
+ // Dispatch multi-selection event
1033
+ const items = Array.from(this.selectedItems);
1034
+ const event = {
1035
+ items,
1036
+ selectionType: kind,
1037
+ };
1038
+ this.dispatchEvent(new CustomEvent('items-selected', { detail: event }));
1039
+ this.requestUpdate();
1040
+ }
1041
+ /**
1042
+ * Get the kind of the first selected item
1043
+ */
1044
+ getFirstSelectedItemKind() {
1045
+ if (this.selectedItems.size === 0)
1046
+ return undefined;
1047
+ const firstItem = this.selectedItems.values().next().value;
1048
+ return firstItem?.kind;
1049
+ }
1050
+ /**
1051
+ * Get item details for a given key
1052
+ */
1053
+ getItemDetailsForKey(key) {
1054
+ // First try the main domain
1055
+ if (this.root) {
1056
+ const result = this.findItemInDomain(key, this.root);
1057
+ if (result)
1058
+ return result;
1059
+ }
1060
+ // Then try external domains
1061
+ if (this.root?.dependencies) {
1062
+ for (const [, externalDomain] of this.root.dependencies) {
1063
+ const result = this.findItemInDomain(key, externalDomain);
1064
+ if (result)
1065
+ return result;
1066
+ }
1067
+ }
1068
+ return undefined;
1069
+ }
1070
+ /**
1071
+ * Find item details within a specific domain
1072
+ */
1073
+ findItemInDomain(key, domain) {
1074
+ // Check if it's the domain itself
1075
+ if (domain.key === key) {
1076
+ return {
1077
+ key: domain.key,
1078
+ kind: domain.kind,
1079
+ domain: domain.key,
1080
+ };
1081
+ }
1082
+ const ns = domain.findNamespace(key);
1083
+ if (ns) {
1084
+ return {
1085
+ key: ns.key,
1086
+ kind: DomainNamespaceKind,
1087
+ domain: domain.key,
1088
+ parent: ns.getParentInstance()?.key,
1089
+ };
1090
+ }
1091
+ const model = domain.findModel(key);
1092
+ if (model) {
1093
+ return {
1094
+ key: model.key,
1095
+ kind: DomainModelKind,
1096
+ domain: domain.key,
1097
+ parent: model.getParentInstance()?.key,
1098
+ };
1099
+ }
1100
+ const entity = domain.findEntity(key);
1101
+ if (entity) {
1102
+ const modelParent = entity.getParentInstance();
1103
+ return {
1104
+ key: entity.key,
1105
+ kind: DomainEntityKind,
1106
+ domain: domain.key,
1107
+ parent: modelParent?.key,
1108
+ };
1109
+ }
1110
+ return undefined;
1111
+ }
1112
+ /**
1113
+ * Find item in nested namespace structure
1114
+ */
1115
+ findItemInNamespace(key, namespace, domain) {
1116
+ const field = namespace.fields.find((field) => field.key === key);
1117
+ if (!field) {
1118
+ return undefined;
1119
+ }
1120
+ if (field.type === 'model') {
1121
+ return {
1122
+ key: field.key,
1123
+ kind: DomainModelKind,
1124
+ domain,
1125
+ parent: namespace.key,
1126
+ };
1127
+ }
1128
+ if (field.type === 'namespace') {
1129
+ return {
1130
+ key: field.key,
1131
+ kind: DomainNamespaceKind,
1132
+ domain,
1133
+ parent: namespace.key,
1134
+ };
1135
+ }
1136
+ return undefined;
1137
+ }
1138
+ /**
1139
+ * Check if a target is valid for dropping the current selection
1140
+ */
1141
+ isValidDropTarget(targetKey, targetKind) {
1142
+ if (!this.selectionType || this.isItemSelected(targetKey)) {
1143
+ return false;
1144
+ }
1145
+ // Entities can only be dropped on models
1146
+ if (this.selectionType === DomainEntityKind) {
1147
+ return targetKind === DomainModelKind;
1148
+ }
1149
+ // Models can be dropped on namespaces or root
1150
+ if (this.selectionType === DomainModelKind) {
1151
+ return targetKind === DomainNamespaceKind || targetKind === DataDomainKind;
1152
+ }
1153
+ // Namespaces can be dropped on other namespaces or root
1154
+ if (this.selectionType === DomainNamespaceKind) {
1155
+ return targetKind === DomainNamespaceKind || targetKind === DataDomainKind;
1156
+ }
1157
+ return false;
1158
+ }
1159
+ handleSearch(event) {
1160
+ const query = event.detail.input;
1161
+ this.searchDomain(query);
1162
+ }
1163
+ handleSearchClear() {
1164
+ this.clearSearch();
1165
+ }
1166
+ searchDomain(query) {
1167
+ const domain = this.root;
1168
+ if (!domain)
1169
+ return;
1170
+ this.searchQuery = query.trim();
1171
+ if (!this.searchQuery) {
1172
+ this.clearSearch();
1173
+ return;
1174
+ }
1175
+ const found = domain.search({
1176
+ query: this.searchQuery,
1177
+ });
1178
+ this.searchResults = found;
1179
+ }
1180
+ handleSearchResultClick(event, result) {
1181
+ event.preventDefault();
1182
+ event.stopPropagation();
1183
+ const { key, node } = result;
1184
+ const kind = node.kind;
1185
+ const domain = node.domain.key;
1186
+ // For now, just clear search and navigate to the item
1187
+ // Selection logic can be implemented later
1188
+ this.clearSearch();
1189
+ // Find the parent for proper selection info
1190
+ let parent;
1191
+ if (kind === DomainEntityKind) {
1192
+ const entity = node;
1193
+ const modelParent = entity.getParentInstance();
1194
+ parent = modelParent?.key;
1195
+ this.ensureVisibility(key);
1196
+ this.handleSingleSelection(key, kind, domain, parent);
1197
+ }
1198
+ else if (kind === DomainModelKind || kind === DomainNamespaceKind) {
1199
+ const parentInstance = node.getParentInstance();
1200
+ parent = parentInstance?.key !== domain ? parentInstance?.key : undefined;
1201
+ this.ensureVisibility(key);
1202
+ this.handleSingleSelection(key, kind, domain, parent);
1203
+ }
1204
+ else if (kind === DomainAssociationKind) {
1205
+ const association = node;
1206
+ const modelParent = association.getParentInstance();
1207
+ parent = modelParent?.key;
1208
+ if (parent) {
1209
+ this.ensureVisibility(parent);
1210
+ this.handleFieldSelection(key, kind, domain, parent);
1211
+ }
1212
+ }
1213
+ else if (kind === DomainPropertyKind) {
1214
+ const property = node;
1215
+ const modelParent = property.getParentInstance();
1216
+ parent = modelParent?.key;
1217
+ if (parent) {
1218
+ this.ensureVisibility(parent);
1219
+ this.handleFieldSelection(key, kind, domain, parent);
1220
+ }
1221
+ }
1222
+ }
1223
+ clearSearch() {
1224
+ this.searchQuery = undefined;
1225
+ this.searchResults = [];
1226
+ }
1227
+ handleSearchKeyDown(e) {
1228
+ e.stopPropagation();
1229
+ if (e.defaultPrevented) {
1230
+ return;
1231
+ }
1232
+ }
1233
+ render() {
1234
+ const { root } = this;
1235
+ if (!root) {
1236
+ return html `<div class="empty-state">No data domain available</div>`;
1237
+ }
1238
+ const hasFields = root.hasFields();
1239
+ const hasDependencies = root.dependencies?.size > 0;
1240
+ if (!hasFields && !hasDependencies) {
1241
+ return html `<div class="empty-state">No schemas to display</div>`;
1242
+ }
1243
+ return html `
1244
+ <div class="hierarchy-tree">
1245
+ ${this.cutItems.size > 0
1246
+ ? this.renderCutItemsInfo()
1247
+ : this.selectedItems.size > 1
1248
+ ? this.renderMultiSelectionInfo()
1249
+ : this.renderDomainHeader(root)}
1250
+ ${this.searchQuery ? this.renderSearchResults() : ''}
1251
+ ${hasFields ? this.renderDomainTree(root) : this.renderEmptyDomain()} ${this.renderExternalDomains()}
1252
+ </div>
1253
+ `;
1254
+ }
1255
+ renderEmptyDomain() {
1256
+ return html `<div class="empty-state">No data to render.</div>`;
1257
+ }
1258
+ renderCutItemsInfo() {
1259
+ const count = this.cutItems.size;
1260
+ const type = getDomainLabel(this.cutItemsType || 'items');
1261
+ return html `
1262
+ <div class="multi-selection-info cut-items">
1263
+ <span class="body-small"
1264
+ >${count} ${type}${count > 1 ? 's' : ''} cut - Select target and press Ctrl+V to paste</span
1265
+ >
1266
+ <ui-button size="xs" color="tonal" @click="${this.cancelCut}">Cancel</ui-button>
1267
+ </div>
1268
+ `;
1269
+ }
1270
+ renderDomainTitle(root) {
1271
+ return html `<h2 class="domain-title title-small">${root.info.getLabel()}</h2>`;
1272
+ }
1273
+ renderDomainHeader(root) {
1274
+ const hasCollapsibleItems = [...root.listNamespaces()].some((ns) => ns.hasFields()) || [...root.listModels()].some((m) => m.hasFields());
1275
+ return html `
1276
+ <div class="domain-header">
1277
+ <search-input
1278
+ class="search-input"
1279
+ placeholder="Search domain..."
1280
+ @search="${this.handleSearch}"
1281
+ @clear="${this.handleSearchClear}"
1282
+ @keydown="${this.handleSearchKeyDown}"
1283
+ value="${this.searchQuery || ''}"
1284
+ ></search-input>
1285
+ ${hasCollapsibleItems
1286
+ ? html `
1287
+ <div class="expand-controls">
1288
+ <ui-icon-button @click="${this.expandAll}" color="standard" shape="round" size="xs" title="Expand all"
1289
+ ><ui-icon icon="add"></ui-icon
1290
+ ></ui-icon-button>
1291
+ <ui-icon-button
1292
+ @click="${this.collapseAll}"
1293
+ color="standard"
1294
+ shape="round"
1295
+ size="xs"
1296
+ title="Collapse all"
1297
+ ><ui-icon icon="remove"></ui-icon
1298
+ ></ui-icon-button>
1299
+ </div>
1300
+ `
1301
+ : ''}
1302
+ </div>
1303
+ `;
1304
+ }
1305
+ renderSearchResults() {
1306
+ if (!this.searchQuery || this.searchResults.length === 0) {
1307
+ return html `
1308
+ <div class="search-results-overlay">
1309
+ <div class="search-no-results">
1310
+ <span class="body-medium">No results found for "${this.searchQuery}"</span>
1311
+ </div>
1312
+ </div>
1313
+ `;
1314
+ }
1315
+ return html `
1316
+ <div class="search-results-overlay">
1317
+ <div class="search-results-list">
1318
+ ${this.searchResults.map((result) => this.renderSearchResultItem(result))}
1319
+ </div>
1320
+ </div>
1321
+ `;
1322
+ }
1323
+ getSearchIcon(item) {
1324
+ switch (item.kind) {
1325
+ case DomainAssociationKind:
1326
+ case DomainPropertyKind:
1327
+ return getFieldIcon(item);
1328
+ default:
1329
+ return getDomainIconType(item.kind);
1330
+ }
1331
+ }
1332
+ renderSearchResultItem(result) {
1333
+ const { node, key, isForeign, matchedFields } = result;
1334
+ const nodeInfo = node.info;
1335
+ const icon = this.getSearchIcon(node);
1336
+ return html `
1337
+ <div
1338
+ class="search-result-item"
1339
+ data-key="${key}"
1340
+ data-kind="${node.kind}"
1341
+ data-domain="${node.domain.key}"
1342
+ @click="${(e) => this.handleSearchResultClick(e, result)}"
1343
+ >
1344
+ <div class="search-result-content">
1345
+ <div class="search-result-main">
1346
+ <ui-icon class="search-result-icon" icon="${icon}"></ui-icon>
1347
+ <div class="search-result-info">
1348
+ <span class="search-result-name body-medium">${nodeInfo.getLabel()}</span>
1349
+ ${isForeign ? html `<span class="search-result-badge label-small">External</span>` : ''}
1350
+ </div>
1351
+ </div>
1352
+ ${nodeInfo.description
1353
+ ? html `<div class="search-result-description body-small">${nodeInfo.description}</div>`
1354
+ : ''}
1355
+ ${matchedFields.length > 0
1356
+ ? html `
1357
+ <div class="search-result-matches">
1358
+ <span class="label-small">Matched: ${matchedFields.join(', ')}</span>
1359
+ </div>
1360
+ `
1361
+ : ''}
1362
+ </div>
1363
+ </div>
1364
+ `;
1365
+ }
1366
+ renderMultiSelectionInfo() {
1367
+ const count = this.selectedItems.size;
1368
+ const type = getDomainLabel(this.selectionType || 'items');
1369
+ return html `
1370
+ <div class="multi-selection-info">
1371
+ <span class="body-small">${count} ${type}${count > 1 ? 's' : ''} selected</span>
1372
+ <ui-button size="xs" color="tonal" @click="${this.clearSelection}">Clear Selection</ui-button>
1373
+ </div>
1374
+ `;
1375
+ }
1376
+ renderDomainTree(root) {
1377
+ const items = [];
1378
+ // Render namespaces
1379
+ for (const namespace of root.listNamespaces()) {
1380
+ items.push(this.renderNamespaceItem(namespace, root));
1381
+ }
1382
+ // Render models
1383
+ for (const model of root.listModels()) {
1384
+ items.push(this.renderModelItem(model, root));
1385
+ }
1386
+ return html `<div class="tree-items">${items}</div>`;
1387
+ }
1388
+ /**
1389
+ * Render external data domains from dependencies
1390
+ */
1391
+ renderExternalDomains() {
1392
+ if (!this.root?.dependencies?.size) {
1393
+ return html ``;
1394
+ }
1395
+ const externalDomains = [];
1396
+ for (const [, externalDomain] of this.root.dependencies) {
1397
+ externalDomains.push(this.renderExternalDomain(externalDomain));
1398
+ }
1399
+ return html `
1400
+ <div class="external-domains">
1401
+ <ui-divider></ui-divider>
1402
+ <div class="external-domains-header">
1403
+ <h3 class="external-domains-title title-medium">External Dependencies</h3>
1404
+ </div>
1405
+ ${externalDomains}
1406
+ </div>
1407
+ `;
1408
+ }
1409
+ /**
1410
+ * Render a single external domain
1411
+ */
1412
+ renderExternalDomain(domain) {
1413
+ return html `
1414
+ <div class="external-domain">
1415
+ <div class="external-domain-header">
1416
+ <h4 class="external-domain-title title-small">${domain.info.getLabel()}</h4>
1417
+ <span class="external-domain-badge label-medium">Read-only</span>
1418
+ </div>
1419
+ ${this.renderExternalDomainTree(domain)}
1420
+ </div>
1421
+ `;
1422
+ }
1423
+ /**
1424
+ * Render external domain tree (read-only)
1425
+ */
1426
+ renderExternalDomainTree(domain) {
1427
+ const items = [];
1428
+ // Render namespaces
1429
+ for (const namespace of domain.listNamespaces()) {
1430
+ items.push(this.renderExternalNamespaceItem(namespace, domain));
1431
+ }
1432
+ // Render models
1433
+ for (const model of domain.listModels()) {
1434
+ items.push(this.renderExternalModelItem(model, domain));
1435
+ }
1436
+ return html `<div class="external-tree-items">${items}</div>`;
1437
+ }
1438
+ renderNamespaceItem(namespace, parent) {
1439
+ const hasChildren = namespace.hasFields();
1440
+ const isSelected = this.isItemSelected(namespace.key);
1441
+ const isMultiSelected = isSelected && this.selectedItems.size > 1;
1442
+ const isDragSource = this.isItemDragged(namespace.key);
1443
+ const isDragTarget = this.dragTarget === namespace.key;
1444
+ const isCollapsed = this.isCollapsed(namespace.key);
1445
+ const isCut = this.isItemCut(namespace.key);
1446
+ const isFocused = this.focusedItem === namespace.key;
1447
+ return html `
1448
+ <div class="tree-item" role="treeitem">
1449
+ <div
1450
+ class="item-content ${classMap({
1451
+ 'selected': isSelected && !isMultiSelected,
1452
+ 'multi-selected': isMultiSelected,
1453
+ 'drag-source': isDragSource,
1454
+ 'drag-over': isDragTarget,
1455
+ 'cut': isCut,
1456
+ 'focused': isFocused,
1457
+ 'highlighted': this.highlighted === namespace.key,
1458
+ })}"
1459
+ tabindex="${isFocused ? '0' : '-1'}"
1460
+ draggable="true"
1461
+ data-key="${namespace.key}"
1462
+ data-kind="${namespace.kind}"
1463
+ data-domain="${namespace.domain.key}"
1464
+ data-parent="${parent.key !== namespace.domain.key ? parent.key : ''}"
1465
+ @click="${(e) => this.handleItemClick(e, namespace.key, namespace.kind, namespace.domain.key, parent.key !== namespace.domain.key ? parent.key : undefined)}"
1466
+ @focus="${() => this.handleItemFocus(namespace.key)}"
1467
+ @dragstart="${(e) => this.handleDragStart(e, namespace.key)}"
1468
+ @dragover="${(e) => this.handleDragOver(e, namespace.key, namespace.kind)}"
1469
+ @dragleave="${() => this.handleDragLeave()}"
1470
+ @drop="${(e) => this.handleDrop(e, namespace.key, namespace.kind)}"
1471
+ @dragend="${() => this.handleDragEnd()}"
1472
+ >
1473
+ ${hasChildren
1474
+ ? html `
1475
+ <ui-icon
1476
+ class="expand-icon ${isCollapsed ? '' : 'expanded'}"
1477
+ icon="chevronRight"
1478
+ @click="${(e) => this.toggleCollapsed(namespace.key, e)}"
1479
+ ></ui-icon>
1480
+ `
1481
+ : html `<span class="expand-placeholder"></span>`}
1482
+ <ui-icon class="item-icon" icon="${getDomainIconType(namespace.kind)}"></ui-icon>
1483
+ <span class="item-label">${namespace.info.getLabel()}</span>
1484
+ </div>
1485
+ ${hasChildren && !isCollapsed ? html ` <div class="children">${this.renderDomainTree(namespace)}</div>` : ''}
1486
+ </div>
1487
+ `;
1488
+ }
1489
+ renderModelItem(model, parent) {
1490
+ const hasEntities = model.hasFields();
1491
+ const isSelected = this.isItemSelected(model.key);
1492
+ const isMultiSelected = this.selectedItems.size > 1 && isSelected;
1493
+ const isDragSource = this.isItemDragged(model.key);
1494
+ const isDragTarget = this.dragTarget === model.key;
1495
+ const isCollapsed = this.isCollapsed(model.key);
1496
+ const isCut = this.isItemCut(model.key);
1497
+ const isFocused = this.focusedItem === model.key;
1498
+ return html `
1499
+ <div class="tree-item" role="treeitem">
1500
+ <div
1501
+ class="item-content ${classMap({
1502
+ 'selected': isSelected && !isMultiSelected,
1503
+ 'multi-selected': isMultiSelected,
1504
+ 'drag-source': isDragSource,
1505
+ 'drag-over': isDragTarget,
1506
+ 'cut': isCut,
1507
+ 'focused': isFocused,
1508
+ 'highlighted': this.highlighted === model.key,
1509
+ })}"
1510
+ tabindex="${isFocused ? '0' : '-1'}"
1511
+ draggable="true"
1512
+ data-key="${model.key}"
1513
+ data-kind="${model.kind}"
1514
+ data-domain="${model.domain.key}"
1515
+ data-parent="${parent.key !== model.domain.key ? parent.key : ''}"
1516
+ @click="${(e) => this.handleItemClick(e, model.key, model.kind, model.domain.key, parent.key !== model.domain.key ? parent.key : undefined)}"
1517
+ @focus="${() => this.handleItemFocus(model.key)}"
1518
+ @dragstart="${(e) => this.handleDragStart(e, model.key)}"
1519
+ @dragover="${(e) => this.handleDragOver(e, model.key, model.kind)}"
1520
+ @dragleave="${() => this.handleDragLeave()}"
1521
+ @drop="${(e) => this.handleDrop(e, model.key, model.kind)}"
1522
+ @dragend="${() => this.handleDragEnd()}"
1523
+ >
1524
+ ${hasEntities
1525
+ ? html `
1526
+ <ui-icon
1527
+ class="expand-icon ${isCollapsed ? '' : 'expanded'}"
1528
+ icon="chevronRight"
1529
+ @click="${(e) => this.toggleCollapsed(model.key, e)}"
1530
+ ></ui-icon>
1531
+ `
1532
+ : html `<span class="expand-placeholder"></span>`}
1533
+ <ui-icon class="item-icon" icon="${getDomainIconType(model.kind)}"></ui-icon>
1534
+ <span class="item-label">${model.info.getLabel()}</span>
1535
+ </div>
1536
+ ${hasEntities && !isCollapsed ? html ` <div class="children">${this.renderEntityList(model)}</div>` : ''}
1537
+ </div>
1538
+ `;
1539
+ }
1540
+ renderEntityList(model) {
1541
+ const entities = [];
1542
+ for (const entity of model.listEntities()) {
1543
+ entities.push(this.renderEntityItem(entity, model));
1544
+ }
1545
+ return html `<div class="entity-items">${entities}</div>`;
1546
+ }
1547
+ renderEntityItem(entity, parent) {
1548
+ const isSelected = this.isItemSelected(entity.key);
1549
+ const isMultiSelected = isSelected && this.selectedItems.size > 1;
1550
+ const isDragSource = this.isItemDragged(entity.key);
1551
+ const isCut = this.isItemCut(entity.key);
1552
+ const isFocused = this.focusedItem === entity.key;
1553
+ return html `
1554
+ <div class="tree-item" role="treeitem">
1555
+ <div
1556
+ class="item-content ${classMap({
1557
+ 'selected': isSelected && !isMultiSelected,
1558
+ 'multi-selected': isMultiSelected,
1559
+ 'drag-source': isDragSource,
1560
+ 'cut': isCut,
1561
+ 'focused': isFocused,
1562
+ 'highlighted': this.highlighted === entity.key,
1563
+ })}"
1564
+ tabindex="${isFocused ? '0' : '-1'}"
1565
+ draggable="true"
1566
+ data-key="${entity.key}"
1567
+ data-kind="${entity.kind}"
1568
+ data-domain="${entity.domain.key}"
1569
+ data-parent="${parent.key !== entity.domain.key ? parent.key : ''}"
1570
+ @click="${(e) => this.handleItemClick(e, entity.key, entity.kind, entity.domain.key, parent.key)}"
1571
+ @focus="${() => this.handleItemFocus(entity.key)}"
1572
+ @dragstart="${(e) => this.handleDragStart(e, entity.key)}"
1573
+ @dragend="${() => this.handleDragEnd()}"
1574
+ >
1575
+ <span class="expand-placeholder"></span>
1576
+ <ui-icon class="item-icon" icon="${getDomainIconType(entity.kind)}"></ui-icon>
1577
+ <span class="item-label">${entity.info.getLabel()}</span>
1578
+ </div>
1579
+ </div>
1580
+ `;
1581
+ }
1582
+ /**
1583
+ * Render external namespace item (read-only)
1584
+ */
1585
+ renderExternalNamespaceItem(namespace, parent) {
1586
+ const hasChildren = namespace.hasFields();
1587
+ const isSelected = this.isItemSelected(namespace.key);
1588
+ const isMultiSelected = this.selectedItems.size > 1 && isSelected;
1589
+ const isCollapsed = this.isCollapsed(namespace.key);
1590
+ const isFocused = this.focusedItem === namespace.key;
1591
+ return html `
1592
+ <div class="tree-item external-item" role="treeitem">
1593
+ <div
1594
+ class="item-content external-item-content ${classMap({
1595
+ 'selected': isSelected && !isMultiSelected,
1596
+ 'multi-selected': isMultiSelected,
1597
+ 'focused': isFocused,
1598
+ 'highlighted': this.highlighted === namespace.key,
1599
+ })}"
1600
+ tabindex="${isFocused ? '0' : '-1'}"
1601
+ draggable="true"
1602
+ data-key="${namespace.key}"
1603
+ data-kind="${namespace.kind}"
1604
+ data-domain="${namespace.domain.key}"
1605
+ data-parent="${parent.key !== namespace.domain.key ? parent.key : ''}"
1606
+ @click="${(e) => this.handleExternalItemClick(e, namespace.key, namespace.kind, namespace.domain.key, parent.key !== namespace.domain.key ? parent.key : undefined)}"
1607
+ @focus="${() => this.handleItemFocus(namespace.key)}"
1608
+ @dragstart="${(e) => this.handleDragStart(e, namespace.key)}"
1609
+ @dragend="${() => this.handleDragEnd()}"
1610
+ >
1611
+ ${hasChildren
1612
+ ? html `
1613
+ <ui-icon
1614
+ class="expand-icon ${isCollapsed ? '' : 'expanded'}"
1615
+ icon="chevronRight"
1616
+ @click="${(e) => this.toggleCollapsed(namespace.key, e)}"
1617
+ ></ui-icon>
1618
+ `
1619
+ : html `<span class="expand-placeholder"></span>`}
1620
+ <ui-icon class="item-icon" icon="${getDomainIconType(namespace.kind)}"></ui-icon>
1621
+ <span class="item-label">${namespace.info.getLabel()}</span>
1622
+ </div>
1623
+ ${hasChildren && !isCollapsed
1624
+ ? html ` <div class="children">${this.renderExternalDomainTree(namespace)}</div>`
1625
+ : ''}
1626
+ </div>
1627
+ `;
1628
+ }
1629
+ /**
1630
+ * Render external model item (read-only)
1631
+ */
1632
+ renderExternalModelItem(model, parent) {
1633
+ const hasEntities = model.hasFields();
1634
+ const isSelected = this.isItemSelected(model.key);
1635
+ const isMultiSelected = this.selectedItems.size > 1 && isSelected;
1636
+ const isCollapsed = this.isCollapsed(model.key);
1637
+ const isFocused = this.focusedItem === model.key;
1638
+ return html `
1639
+ <div class="tree-item external-item" role="treeitem">
1640
+ <div
1641
+ class="item-content external-item-content ${classMap({
1642
+ 'selected': isSelected && !isMultiSelected,
1643
+ 'multi-selected': isMultiSelected,
1644
+ 'focused': isFocused,
1645
+ 'highlighted': this.highlighted === model.key,
1646
+ })}"
1647
+ tabindex="${isFocused ? '0' : '-1'}"
1648
+ draggable="true"
1649
+ data-key="${model.key}"
1650
+ data-kind="${model.kind}"
1651
+ data-domain="${model.domain.key}"
1652
+ data-parent="${parent.key !== model.domain.key ? parent.key : ''}"
1653
+ @click="${(e) => this.handleExternalItemClick(e, model.key, model.kind, model.domain.key, parent.key !== model.domain.key ? parent.key : undefined)}"
1654
+ @focus="${() => this.handleItemFocus(model.key)}"
1655
+ @dragstart="${(e) => this.handleDragStart(e, model.key)}"
1656
+ @dragend="${() => this.handleDragEnd()}"
1657
+ >
1658
+ ${hasEntities
1659
+ ? html `
1660
+ <ui-icon
1661
+ class="expand-icon ${isCollapsed ? '' : 'expanded'}"
1662
+ icon="chevronRight"
1663
+ @click="${(e) => this.toggleCollapsed(model.key, e)}"
1664
+ ></ui-icon>
1665
+ `
1666
+ : html `<span class="expand-placeholder"></span>`}
1667
+ <ui-icon class="item-icon" icon="${getDomainIconType(model.kind)}"></ui-icon>
1668
+ <span class="item-label">${model.info.getLabel()}</span>
1669
+ </div>
1670
+ ${hasEntities && !isCollapsed ? html ` <div class="children">${this.renderExternalEntityList(model)}</div>` : ''}
1671
+ </div>
1672
+ `;
1673
+ }
1674
+ /**
1675
+ * Render external entity list
1676
+ */
1677
+ renderExternalEntityList(model) {
1678
+ const entities = [];
1679
+ for (const entity of model.listEntities()) {
1680
+ entities.push(this.renderExternalEntityItem(entity, model));
1681
+ }
1682
+ return html `<div class="external-entity-items">${entities}</div>`;
1683
+ }
1684
+ /**
1685
+ * Render external entity item (read-only)
1686
+ */
1687
+ renderExternalEntityItem(entity, parent) {
1688
+ const isSelected = this.isItemSelected(entity.key);
1689
+ const isMultiSelected = this.selectedItems.size > 1 && isSelected;
1690
+ const isFocused = this.focusedItem === entity.key;
1691
+ return html `
1692
+ <div class="tree-item external-item" role="treeitem">
1693
+ <div
1694
+ class="item-content external-item-content ${classMap({
1695
+ 'selected': isSelected && !isMultiSelected,
1696
+ 'multi-selected': isMultiSelected,
1697
+ 'focused': isFocused,
1698
+ 'highlighted': this.highlighted === entity.key,
1699
+ })}"
1700
+ tabindex="${isFocused ? '0' : '-1'}"
1701
+ draggable="true"
1702
+ data-key="${entity.key}"
1703
+ data-kind="${entity.kind}"
1704
+ data-domain="${entity.domain.key}"
1705
+ data-parent="${parent.key !== entity.domain.key ? parent.key : ''}"
1706
+ @click="${(e) => this.handleExternalItemClick(e, entity.key, entity.kind, entity.domain.key, parent.key)}"
1707
+ @focus="${() => this.handleItemFocus(entity.key)}"
1708
+ @dragstart="${(e) => this.handleDragStart(e, entity.key)}"
1709
+ @dragend="${() => this.handleDragEnd()}"
1710
+ >
1711
+ <span class="expand-placeholder"></span>
1712
+ <ui-icon class="item-icon" icon="${getDomainIconType(entity.kind)}"></ui-icon>
1713
+ <span class="item-label">${entity.info.getLabel()}</span>
1714
+ </div>
1715
+ </div>
1716
+ `;
1717
+ }
1718
+ };
1719
+ })();
1720
+ /**
1721
+ * A new navigation element for DataDomain hierarchy that supports:
1722
+ * - Single click selection with selection events
1723
+ * - Ctrl+click multi-selection
1724
+ * - Drag and drop operations with proper validation
1725
+ * - Mixed selection type prevention
1726
+ *
1727
+ * @fires items-selected {CustomEvent<DomainMultiSelectionEventDetail>} - when multiple items are selected
1728
+ * @fires items-dropped {CustomEvent<DomainDragDropEventDetail>} - when items are dropped (or pasted)
1729
+ * @fires item-selected {CustomEvent<DomainSelectionInfo>} - when a single item is selected
1730
+ * @fires selection-cleared {CustomEvent<void>} - when selection is cleared
1731
+ * @fires items-cut {CustomEvent<{ items: DomainSelectionInfo[], cutItemsType: string }>} - when items are cut
1732
+ */
1733
+ export default DomainNavigation;
1734
+ //# sourceMappingURL=DomainNavigation.js.map