@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,1245 @@
1
+ import { html, nothing, type PropertyValues, type TemplateResult } from 'lit'
2
+ import { live } from 'lit-html/directives/live.js'
3
+ import { property, state } from 'lit/decorators.js'
4
+ import { when } from 'lit/directives/when.js'
5
+ import { type ClassInfo, classMap } from 'lit/directives/class-map.js'
6
+ import { DomainEntity } from '@api-client/core/modeling/DomainEntity.js'
7
+ import { addAutoField, addRecommendedFields } from '@api-client/core/modeling/helpers/Intelisense.js'
8
+ import { DomainAssociationKind, DomainEntityKind, DomainPropertyKind } from '@api-client/core/models/kinds.js'
9
+ import { cancelEvent } from '@api-client/core/lib/events/Utils.js'
10
+ import type { DomainAssociation } from '@api-client/core/modeling/DomainAssociation.js'
11
+ import type { DomainProperty } from '@api-client/core/modeling/DomainProperty.js'
12
+ import { ModelingElement } from './ModelingElement.js'
13
+ import type { UiTabsElement } from '../../md/tabs/ui-tabs.js'
14
+ import { getFieldDataTypeLabel, getFieldIcon } from '../lib/ui_mapping.js'
15
+ import { Events } from '../../events/Events.js'
16
+ import {
17
+ type EntitySemantic,
18
+ getSemanticsByCategory,
19
+ SemanticCategory,
20
+ SemanticScope,
21
+ SemanticType,
22
+ } from '@api-client/core/modeling/Semantics.js'
23
+ import { renderHelp } from '../../help/render.js'
24
+ import type { DomainBrowseInit, DomainSelectionInfo } from '../types.js'
25
+ import type { UiListSelection } from '../../md/list/ui-list.js'
26
+ import { openAutoFieldsDialog } from '../domain-auto-fields-dialog.js'
27
+
28
+ /**
29
+ * Dispatched when a field (either a `DomainProperty` or a `DomainAssociation`) within the entity is selected.
30
+ *
31
+ * @event DomainEntityEditor#select
32
+ * @type {CustomEvent}
33
+ * @property {object} detail - The event details.
34
+ * @property {string} detail.key - The key of the selected field.
35
+ * @property {string} detail.kind - The kind of the selected field (e.g., `DomainPropertyKind`,
36
+ * `DomainAssociationKind`).
37
+ */
38
+
39
+ /**
40
+ * Dispatched when the user wants to navigate to a parent entity.
41
+ *
42
+ * @event DomainEntityEditor#openentity
43
+ * @type {CustomEvent}
44
+ * @property {object} detail - The event details.
45
+ * @property {string} detail.key - The key of the parent entity to navigate to.
46
+ * @property {string} detail.kind - The kind of the parent entity. It will always be `DomainEntityKind`.
47
+ */
48
+
49
+ /**
50
+ * An element that provides an editor interface for a domain entity.
51
+ * @fires DomainEntityEditor#select - A custom event with the `key` and `type` when a property was selected.
52
+ * @fires DomainEntityEditor#openentity - A custom event with the `key` and `type` when a property was selected.
53
+ */
54
+ export default class DomainEntityEditor extends ModelingElement {
55
+ protected domainElement: DomainEntity | undefined
56
+
57
+ /**
58
+ * The currently selected tab in the editor.
59
+ * @attribute
60
+ */
61
+ @property({ type: String, reflect: true }) accessor contentTab: 'design' | 'preview' = 'design'
62
+
63
+ /**
64
+ * The key of the currently selected property.
65
+ * @attribute
66
+ */
67
+ @property({ type: String, reflect: true }) accessor selectedProperty: string | undefined
68
+
69
+ /**
70
+ * The mime type of the preview to render.
71
+ * @attribute
72
+ */
73
+ @property({ type: String }) accessor mime = 'application/json'
74
+ /**
75
+ * When set, the preview tab will generate example (mock) data.
76
+ * By default it only render values as defined in the schema.
77
+ * @attribute
78
+ */
79
+ @property({ type: Boolean }) accessor mockValues = false
80
+
81
+ /**
82
+ * The generated schema preview.
83
+ */
84
+ @state() accessor schemaPreview: string | undefined
85
+
86
+ protected override willUpdate(cp: PropertyValues<this>): void {
87
+ if (cp.has('selected') || cp.has('root') || cp.has('namespace')) {
88
+ this.computeEntity()
89
+ }
90
+ if (cp.has('mime') || cp.has('mockValues')) {
91
+ this.generateExample()
92
+ } else if (cp.has('contentTab')) {
93
+ this.generateExample()
94
+ } else if (this.contentTab === 'preview') {
95
+ this.generateExample()
96
+ }
97
+ super.willUpdate(cp)
98
+ }
99
+
100
+ protected computeEntity(): void {
101
+ const { root, selected, namespace } = this
102
+ if (!root || !selected) {
103
+ this.domainElement = undefined
104
+ return
105
+ }
106
+ this.domainElement = root.findEntity(selected, namespace)
107
+ }
108
+
109
+ handleMetaChange(e: Event): void {
110
+ const { domainElement } = this
111
+ if (!domainElement) {
112
+ return
113
+ }
114
+ const node = e.target as HTMLInputElement
115
+ if (!node.reportValidity()) {
116
+ return
117
+ }
118
+ const { name, value } = node
119
+ if (!['name', 'displayName', 'description'].includes(name as string)) {
120
+ return
121
+ }
122
+ if (name === 'name' && !value) {
123
+ return
124
+ }
125
+ const preLabel = domainElement.info.getLabel()
126
+ domainElement.info[name as 'name' | 'description' | 'displayName'] = value
127
+ const postLabel = domainElement.info.getLabel()
128
+ this.notifyChange()
129
+ if (preLabel !== postLabel) {
130
+ Events.Domain.rename(domainElement.key, domainElement.domain.key, DomainEntityKind, value, this)
131
+ }
132
+ }
133
+
134
+ handleContentTabChange(e: Event): void {
135
+ const tabs = e.target as UiTabsElement
136
+ const tab = tabs.activeTab
137
+ if (!tab) {
138
+ return
139
+ }
140
+ const { key = '' } = tab.dataset
141
+ if (!['design', 'preview'].includes(key)) {
142
+ return
143
+ }
144
+ this.contentTab = key as 'design' | 'preview'
145
+ }
146
+
147
+ /**
148
+ * Generates the example data for the preview tab.
149
+ */
150
+ generateExample(): void {
151
+ const { domainElement: model, mime, mockValues = false, contentTab } = this
152
+ if (!model || contentTab !== 'preview') {
153
+ return
154
+ }
155
+ const value = model.toExample(mime, { renderMocked: mockValues, renderExamples: true })
156
+ this.schemaPreview = value as string | undefined
157
+ }
158
+
159
+ override notifyChange(): void {
160
+ super.notifyChange()
161
+ this.generateExample()
162
+ }
163
+
164
+ /**
165
+ * A handler for the mime type change event.
166
+ */
167
+ handleMimeChange(e: Event): void {
168
+ const node = e.currentTarget as HTMLSelectElement
169
+ const { value } = node
170
+ if (!value) {
171
+ return
172
+ }
173
+ this.mime = value
174
+ }
175
+
176
+ /**
177
+ * A handler for the field item click to select a field.
178
+ * @param e The click event.
179
+ */
180
+ handleFieldListSelect(e: CustomEvent<UiListSelection>): void {
181
+ const item = e.detail.item
182
+ const { key, kind } = item.dataset
183
+ if (!key || !kind) {
184
+ return
185
+ }
186
+ this.select(key, kind)
187
+ }
188
+
189
+ /**
190
+ * Selects a field in the editor and dispatches a custom event with the key and kind of the field.
191
+ * @param key The key of the field to select.
192
+ * @param kind The kind of the field to select.
193
+ */
194
+ select(key: string, kind: string): void {
195
+ const detail: DomainSelectionInfo = {
196
+ key,
197
+ kind,
198
+ domain: this.root?.key || '',
199
+ }
200
+ this.selectedProperty = key
201
+ this.dispatchEvent(
202
+ new CustomEvent('select', {
203
+ detail,
204
+ })
205
+ )
206
+ }
207
+
208
+ addProperty(name?: string): void {
209
+ const { domainElement } = this
210
+ if (!domainElement) {
211
+ return
212
+ }
213
+ const prop = domainElement.addProperty({ info: { name: name || 'new_field' } })
214
+ this.select(prop.key, DomainPropertyKind)
215
+ this.notifyChange()
216
+ }
217
+
218
+ addAssociation(name?: string): void {
219
+ const { domainElement } = this
220
+ if (!domainElement) {
221
+ return
222
+ }
223
+ const prop = domainElement.addAssociation({}, { info: { name: name || 'new_reference' } })
224
+ this.select(prop.key, DomainAssociationKind)
225
+ this.notifyChange()
226
+ }
227
+
228
+ handleFieldMenuSelect(e: CustomEvent<{ item: HTMLElement }>): void {
229
+ if (!this.domainElement) {
230
+ return
231
+ }
232
+ const { item } = e.detail
233
+ const { action = '' } = item.dataset
234
+ if (action === 'property') {
235
+ this.addProperty()
236
+ } else if (action === 'association') {
237
+ this.addAssociation()
238
+ } else if (action === 'all-recommended') {
239
+ addRecommendedFields(this.domainElement)
240
+ this.notifyChange()
241
+ } else if (action === 'auto-fields-dialog') {
242
+ this.openAutoFieldsDialog()
243
+ }
244
+ }
245
+
246
+ /**
247
+ * Opens the auto fields selection dialog
248
+ */
249
+ openAutoFieldsDialog(): void {
250
+ if (!this.domainElement) {
251
+ return
252
+ }
253
+
254
+ openAutoFieldsDialog((selectedFields: string[]) => {
255
+ if (!this.domainElement) {
256
+ return
257
+ }
258
+
259
+ let lastField: { key: string; kind: string } | undefined
260
+
261
+ // Add all selected fields
262
+ for (const fieldId of selectedFields) {
263
+ const field = addAutoField(this.domainElement, fieldId)
264
+ lastField = { key: field.key, kind: field.kind }
265
+ }
266
+
267
+ // Select the last added field if any
268
+ if (lastField) {
269
+ this.select(lastField.key, lastField.kind)
270
+ }
271
+
272
+ this.notifyChange()
273
+ })
274
+ }
275
+
276
+ protected async handleChooseParent(): Promise<void> {
277
+ if (!this.domainElement) {
278
+ return
279
+ }
280
+ const data: DomainBrowseInit = {
281
+ reason: 'pick',
282
+ domain: this.domainElement.domain,
283
+ allowed: [DomainEntityKind],
284
+ withRecent: true,
285
+ }
286
+ const result = await Events.Domain.Browse.browse(data)
287
+ if (!result) {
288
+ return
289
+ }
290
+ if (result.result === 'canceled') {
291
+ return
292
+ }
293
+ this.addParentEntity(result.selected, result.domain)
294
+ }
295
+
296
+ protected handleDeleteParent(e: Event): void {
297
+ const { domainElement } = this
298
+ if (!domainElement) {
299
+ return
300
+ }
301
+ const item = e.currentTarget as HTMLElement
302
+ const { key, domain } = item.dataset
303
+ if (!key || !domain) {
304
+ return
305
+ }
306
+ domainElement.removeParent(key, domain)
307
+ this.notifyChange()
308
+ this.requestUpdate()
309
+ }
310
+
311
+ protected handleNavigateParent(e: Event): void {
312
+ const item = e.currentTarget as HTMLElement
313
+ const { key } = item.dataset
314
+ if (!key) {
315
+ return
316
+ }
317
+ this.openEntity(key)
318
+ }
319
+
320
+ addParentEntity(key: string, domain?: string): void {
321
+ const { domainElement } = this
322
+ if (!domainElement || !key) {
323
+ return
324
+ }
325
+ try {
326
+ const entity = domainElement.domain.findEntity(key, domain)
327
+ if (!entity) {
328
+ throw new Error(`Entity with key ${key} not found in domain ${domainElement.domain.key}.`)
329
+ }
330
+ domainElement.addParent(key, domain)
331
+ this.notifyChange()
332
+ this.requestUpdate()
333
+ } catch (error) {
334
+ this.reportError(error as Error)
335
+ }
336
+ }
337
+
338
+ protected handleInheritanceDragEnter(e: DragEvent): void {
339
+ const dt = e.dataTransfer
340
+ if (!dt) {
341
+ return
342
+ }
343
+ const hasJsonData = dt.types.includes('application/json')
344
+ if (!hasJsonData) {
345
+ return
346
+ }
347
+ const zone = e.currentTarget as HTMLElement
348
+ zone.classList.add('drop-zone')
349
+ dt.dropEffect = 'link'
350
+ dt.effectAllowed = 'link'
351
+ }
352
+
353
+ protected handleInheritanceDragOver(e: DragEvent): void {
354
+ const dt = e.dataTransfer
355
+ if (!dt) {
356
+ return
357
+ }
358
+ const hasJsonData = dt.types.includes('application/json')
359
+ if (!hasJsonData) {
360
+ return
361
+ }
362
+ e.preventDefault()
363
+ }
364
+
365
+ protected handleInheritanceDragLeave(e: DragEvent): void {
366
+ const dt = e.dataTransfer
367
+ if (!dt) {
368
+ return
369
+ }
370
+ const zone = e.currentTarget as HTMLElement
371
+ zone.classList.remove('drop-zone')
372
+ }
373
+
374
+ protected handleInheritanceDrop(e: DragEvent): void {
375
+ const dt = e.dataTransfer
376
+ if (!dt) {
377
+ return
378
+ }
379
+ const zone = e.currentTarget as HTMLElement
380
+ zone.classList.remove('drop-zone')
381
+ const raw = dt.getData('application/json')
382
+ const data = JSON.parse(raw) as { items: DomainSelectionInfo[] }
383
+ const entities = data.items.filter((item) => item.kind === DomainEntityKind)
384
+ if (entities.length === 0 || !this.domainElement) {
385
+ return
386
+ }
387
+ for (const entity of entities) {
388
+ this.domainElement.addParent(entity.key, entity.domain)
389
+ }
390
+ this.notifyChange()
391
+ this.requestUpdate()
392
+ }
393
+
394
+ protected handleTaxonomyChange(e: Event): void {
395
+ const node = e.currentTarget as HTMLSelectElement
396
+ const { value } = node
397
+ if (!value) {
398
+ return
399
+ }
400
+ this.domainElement?.addSemantic({
401
+ id: value as SemanticType,
402
+ })
403
+ this.requestUpdate()
404
+ }
405
+
406
+ protected handleTaxonomyClear(e: Event): void {
407
+ e.preventDefault()
408
+ e.stopPropagation()
409
+ const { domainElement } = this
410
+ if (!domainElement) {
411
+ return
412
+ }
413
+ domainElement.semantics = []
414
+ this.requestUpdate()
415
+ }
416
+
417
+ protected handleFieldContextMenuSelect(e: CustomEvent<{ item: HTMLElement }>): void {
418
+ const menu = e.currentTarget as HTMLElement
419
+ const { key, kind } = menu.dataset
420
+ if (!key || !kind) {
421
+ return
422
+ }
423
+ const { item } = e.detail
424
+ const { action = '' } = item.dataset
425
+ if (action === 'edit') {
426
+ this.select(key, kind)
427
+ } else if (action === 'delete') {
428
+ this.deleteField(key, kind)
429
+ } else if (action === 'convert') {
430
+ if (kind === DomainPropertyKind) {
431
+ this.convertToAssociation(key)
432
+ } else if (kind === DomainAssociationKind) {
433
+ this.convertToProperty(key)
434
+ }
435
+ } else if (action === 'duplicate') {
436
+ this.duplicateField(key, kind)
437
+ }
438
+ }
439
+
440
+ /**
441
+ * Duplicates a field (property or association).
442
+ * Creates a copy with the same properties but a new unique name.
443
+ * @param key The key of the field to duplicate.
444
+ * @param kind The kind of the field to duplicate.
445
+ */
446
+ duplicateField(key: string, kind: string): void {
447
+ const { root, domainElement } = this
448
+ if (!root || !domainElement) {
449
+ return
450
+ }
451
+
452
+ if (kind === DomainPropertyKind) {
453
+ this.duplicateProperty(key)
454
+ } else if (kind === DomainAssociationKind) {
455
+ this.duplicateAssociation(key)
456
+ }
457
+ }
458
+
459
+ /**
460
+ * Duplicates a property field.
461
+ * @param key The key of the property to duplicate.
462
+ */
463
+ protected duplicateProperty(key: string): void {
464
+ const { root, domainElement } = this
465
+ if (!root || !domainElement) {
466
+ return
467
+ }
468
+
469
+ // Find the property to duplicate
470
+ const property = root.findProperty(key, this.namespace)
471
+ if (!property) {
472
+ return
473
+ }
474
+
475
+ const originalIndex = domainElement.fields.findIndex((f) => f.key === key)
476
+ if (originalIndex === -1) {
477
+ return
478
+ }
479
+
480
+ // Generate a unique name for the duplicate
481
+ const baseName = property.info.name || 'field'
482
+ const newName = this.generateUniqueName(baseName)
483
+
484
+ // Get the web binding for format information
485
+ const webBinding = property.getWebBinding()
486
+
487
+ // Create the duplicate with all the same properties
488
+ const duplicateProperty = domainElement.addProperty({
489
+ type: property.type,
490
+ info: {
491
+ name: newName,
492
+ displayName: property.info.displayName,
493
+ description: property.info.description,
494
+ },
495
+ required: property.required,
496
+ multiple: property.multiple,
497
+ primary: false, // Don't duplicate primary key
498
+ index: property.index,
499
+ readOnly: property.readOnly,
500
+ })
501
+
502
+ // Copy the web binding format if it exists
503
+ if (webBinding.format) {
504
+ const duplicateBinding = duplicateProperty.getWebBinding()
505
+ duplicateBinding.format = webBinding.format
506
+ }
507
+
508
+ // Copy the schema if it exists
509
+ if (property.schema) {
510
+ const duplicateSchema = duplicateProperty.ensureSchema()
511
+ const originalSchema = property.schema
512
+
513
+ if (originalSchema.defaultValue) {
514
+ duplicateSchema.defaultValue = { ...originalSchema.defaultValue }
515
+ }
516
+ if (originalSchema.enum) {
517
+ duplicateSchema.enum = [...originalSchema.enum]
518
+ }
519
+ if (originalSchema.examples) {
520
+ duplicateSchema.examples = [...originalSchema.examples]
521
+ }
522
+ if (originalSchema.minimum !== undefined) {
523
+ duplicateSchema.minimum = originalSchema.minimum
524
+ }
525
+ if (originalSchema.maximum !== undefined) {
526
+ duplicateSchema.maximum = originalSchema.maximum
527
+ }
528
+ if (originalSchema.exclusiveMinimum !== undefined) {
529
+ duplicateSchema.exclusiveMinimum = originalSchema.exclusiveMinimum
530
+ }
531
+ if (originalSchema.exclusiveMaximum !== undefined) {
532
+ duplicateSchema.exclusiveMaximum = originalSchema.exclusiveMaximum
533
+ }
534
+ if (originalSchema.multipleOf !== undefined) {
535
+ duplicateSchema.multipleOf = originalSchema.multipleOf
536
+ }
537
+ }
538
+
539
+ // Move the duplicate to be right after the original
540
+ const fromIndex = domainElement.fields.length - 1
541
+ const duplicateField = domainElement.fields[fromIndex]
542
+ domainElement.fields.splice(fromIndex, 1)
543
+ domainElement.fields.splice(originalIndex + 1, 0, duplicateField)
544
+
545
+ // Select the new duplicate
546
+ this.select(duplicateProperty.key, DomainPropertyKind)
547
+ this.notifyChange()
548
+ }
549
+
550
+ /**
551
+ * Duplicates an association field.
552
+ * @param key The key of the association to duplicate.
553
+ */
554
+ private duplicateAssociation(key: string): void {
555
+ const { root, domainElement } = this
556
+ if (!root || !domainElement) {
557
+ return
558
+ }
559
+
560
+ // Find the association to duplicate
561
+ const association = root.findAssociation(key, this.namespace)
562
+ if (!association) {
563
+ return
564
+ }
565
+
566
+ const originalIndex = domainElement.fields.findIndex((f) => f.key === key)
567
+ if (originalIndex === -1) {
568
+ return
569
+ }
570
+
571
+ // Generate a unique name for the duplicate
572
+ const baseName = association.info.name || 'reference'
573
+ const newName = this.generateUniqueName(baseName)
574
+
575
+ // Create the duplicate with all the same properties
576
+ const duplicateAssociation = domainElement.addAssociation(
577
+ {},
578
+ {
579
+ info: {
580
+ name: newName,
581
+ displayName: association.info.displayName,
582
+ description: association.info.description,
583
+ },
584
+ required: association.required,
585
+ multiple: association.multiple,
586
+ }
587
+ )
588
+
589
+ // Copy the schema if it exists
590
+ if (association.schema) {
591
+ const duplicateSchema = duplicateAssociation.ensureSchema()
592
+ const originalSchema = association.schema
593
+
594
+ if (originalSchema.linked !== undefined) {
595
+ duplicateSchema.linked = originalSchema.linked
596
+ }
597
+ if (originalSchema.unionType) {
598
+ duplicateSchema.unionType = originalSchema.unionType
599
+ }
600
+ }
601
+
602
+ // Copy the target entities
603
+ for (const target of association.listTargets()) {
604
+ duplicateAssociation.addTarget(target.key, target.domain.key)
605
+ }
606
+
607
+ // Move the duplicate to be right after the original
608
+ const fromIndex = domainElement.fields.length - 1
609
+ const duplicateField = domainElement.fields[fromIndex]
610
+ domainElement.fields.splice(fromIndex, 1)
611
+ domainElement.fields.splice(originalIndex + 1, 0, duplicateField)
612
+
613
+ // Select the new duplicate
614
+ this.select(duplicateAssociation.key, DomainAssociationKind)
615
+ this.notifyChange()
616
+ }
617
+
618
+ /**
619
+ * Generates a unique name by appending a number to the base name.
620
+ * @param baseName The base name to make unique.
621
+ * @returns A unique name within the current entity.
622
+ */
623
+ protected generateUniqueName(baseName: string): string {
624
+ const { domainElement } = this
625
+ if (!domainElement) {
626
+ return baseName
627
+ }
628
+
629
+ const existingNames = new Set<string>()
630
+ for (const field of domainElement.listFields()) {
631
+ if (field.info.name) {
632
+ existingNames.add(field.info.name)
633
+ }
634
+ }
635
+
636
+ let counter = 2
637
+ let newName = `${baseName}_copy`
638
+ while (existingNames.has(newName)) {
639
+ newName = `${baseName}_copy_${counter}`
640
+ counter++
641
+ }
642
+
643
+ return newName
644
+ }
645
+
646
+ deleteField(key: string, kind: string): void {
647
+ const { root } = this
648
+ if (!root) {
649
+ return
650
+ }
651
+ if (kind === DomainPropertyKind) {
652
+ root.removeProperty(key)
653
+ } else if (kind === DomainAssociationKind) {
654
+ root.removeAssociation(key)
655
+ } else {
656
+ return
657
+ }
658
+ this.dispatchEvent(new CustomEvent('delete', { detail: { key, kind } }))
659
+ }
660
+
661
+ openEntity(key: string): void {
662
+ const detail: DomainSelectionInfo = {
663
+ key,
664
+ kind: DomainEntityKind,
665
+ domain: this.root?.key || '',
666
+ }
667
+ this.dispatchEvent(new CustomEvent('openentity', { detail }))
668
+ }
669
+
670
+ /**
671
+ * Converts a property to an association.
672
+ * Keeps as many properties as possible.
673
+ * @param key The key of the property to convert.
674
+ */
675
+ convertToAssociation(key: string): void {
676
+ const { root, domainElement } = this
677
+ if (!root || !domainElement) {
678
+ return
679
+ }
680
+
681
+ // Find the property to convert
682
+ const property = root.findProperty(key, this.namespace)
683
+ if (!property) {
684
+ return
685
+ }
686
+ const toIndex = domainElement.fields.findIndex((f) => f.key === key)
687
+ if (toIndex === -1) {
688
+ return
689
+ }
690
+
691
+ // Store the property information before removal
692
+ const info = {
693
+ name: property.info.name,
694
+ displayName: property.info.displayName,
695
+ description: property.info.description,
696
+ }
697
+ const required = property.required
698
+ const multiple = property.multiple
699
+
700
+ // Remove the original property
701
+ root.removeProperty(key)
702
+
703
+ // Create a new association with preserved information
704
+ const association = domainElement.addAssociation({}, { info, required, multiple })
705
+ const fromIndex = domainElement.fields.length - 1
706
+ const value = domainElement.fields[fromIndex]
707
+ // Move the association to the same position as the original property
708
+ domainElement.fields.splice(fromIndex, 1)
709
+ domainElement.fields.splice(toIndex, 0, value)
710
+
711
+ // Select the new association
712
+ this.select(association.key, DomainAssociationKind)
713
+ this.notifyChange()
714
+ }
715
+
716
+ /**
717
+ * Converts an association to a property.
718
+ * Keeps as many properties as possible.
719
+ * @param key The key of the association to convert.
720
+ */
721
+ convertToProperty(key: string): void {
722
+ const { root, domainElement } = this
723
+ if (!root || !domainElement) {
724
+ return
725
+ }
726
+
727
+ // Find the association to convert
728
+ const association = root.findAssociation(key, this.namespace)
729
+ if (!association) {
730
+ return
731
+ }
732
+
733
+ const toIndex = domainElement.fields.findIndex((f) => f.key === key)
734
+ if (toIndex === -1) {
735
+ return
736
+ }
737
+
738
+ // Store the association information before removal
739
+ const info = {
740
+ name: association.info.name,
741
+ displayName: association.info.displayName,
742
+ description: association.info.description,
743
+ }
744
+ const required = association.required
745
+ const multiple = association.multiple
746
+
747
+ // Remove the original association
748
+ root.removeAssociation(key)
749
+
750
+ // Create a new property with preserved information
751
+ // Default to string type since we can't preserve the target reference as a data type
752
+ const property = domainElement.addProperty({
753
+ type: 'string',
754
+ info,
755
+ required,
756
+ multiple,
757
+ })
758
+ const fromIndex = domainElement.fields.length - 1
759
+ const value = domainElement.fields[fromIndex]
760
+ // Move the property to the same position as the original association
761
+ domainElement.fields.splice(fromIndex, 1)
762
+ domainElement.fields.splice(toIndex, 0, value)
763
+
764
+ // Select the new property
765
+ this.select(property.key, DomainPropertyKind)
766
+ this.notifyChange()
767
+ }
768
+
769
+ protected handleTaxonomySelect(e: CustomEvent<{ item: HTMLElement }>): void {
770
+ const { value } = e.detail.item.dataset
771
+ if (value) {
772
+ this.domainElement?.addSemantic({
773
+ id: value as SemanticType,
774
+ })
775
+ this.requestUpdate()
776
+ }
777
+ }
778
+
779
+ protected handleDeleteTaxonomy(e: Event): void {
780
+ const button = e.currentTarget as HTMLButtonElement
781
+ const { id } = button.dataset
782
+ if (!id) {
783
+ return
784
+ }
785
+ this.domainElement?.removeSemantic(id as SemanticType)
786
+ }
787
+
788
+ protected override render(): TemplateResult | typeof nothing {
789
+ const { domainElement } = this
790
+ if (!domainElement) {
791
+ return nothing
792
+ }
793
+ return html`${this.renderForm(domainElement)}`
794
+ }
795
+
796
+ protected renderForm(model: DomainEntity): TemplateResult {
797
+ return html`
798
+ <form name="entity" @submit="${cancelEvent}" data-key="${model.key}" class="modeling-form">
799
+ ${this.renderMetaInputs(model)} ${this.renderParentEntity(model)} ${this.renderContentTabs()}
800
+ ${this.renderTabsContent(model)}
801
+ </form>
802
+ `
803
+ }
804
+
805
+ protected renderMetaInputs(model: DomainEntity): TemplateResult {
806
+ const disabled = !this.canEdit
807
+ const formatError =
808
+ 'Name must start with a letter or underscore and can only contain letters, numbers, and underscores.'
809
+ return html`
810
+ <div class="editor-section">
811
+ <div class="row input-row">
812
+ <ui-outlined-text-field
813
+ class="input"
814
+ name="name"
815
+ .value="${live(model.info.name || '')}"
816
+ label="Name"
817
+ required
818
+ minLength="2"
819
+ maxLength="31"
820
+ pattern="[a-zA-Z_][a-zA-Z0-9_]+"
821
+ .invalidText="${formatError}"
822
+ ?disabled="${disabled}"
823
+ @change="${this.handleMetaChange}"
824
+ ></ui-outlined-text-field>
825
+ ${renderHelp('entity', 'name-input')}
826
+ </div>
827
+ <div class="row input-row">
828
+ <ui-outlined-text-field
829
+ class="input"
830
+ name="displayName"
831
+ .value="${live(model.info.displayName || '')}"
832
+ label="Display name (optional)"
833
+ ?disabled="${disabled}"
834
+ @change="${this.handleMetaChange}"
835
+ ></ui-outlined-text-field>
836
+ ${renderHelp('entity', 'displayName-input')}
837
+ </div>
838
+ <div class="row input-row">
839
+ <ui-outlined-text-field
840
+ class="input"
841
+ name="description"
842
+ .value="${live(model.info.description || '')}"
843
+ label="Description (optional)"
844
+ ?disabled="${disabled}"
845
+ @change="${this.handleMetaChange}"
846
+ ></ui-outlined-text-field>
847
+ ${renderHelp('entity', 'description-input')}
848
+ </div>
849
+ </div>
850
+ `
851
+ }
852
+
853
+ protected renderParentEntity(model: DomainEntity): TemplateResult {
854
+ const disabled = !this.canEdit
855
+ return html`
856
+ <div
857
+ class="inheritance-section"
858
+ @dragenter="${this.handleInheritanceDragEnter}"
859
+ @dragover="${this.handleInheritanceDragOver}"
860
+ @dragleave="${this.handleInheritanceDragLeave}"
861
+ @drop="${this.handleInheritanceDrop}"
862
+ >
863
+ <div class="section-header">
864
+ <span class="label-large">Inherits from</span>
865
+ <ui-button
866
+ color="tonal"
867
+ type="button"
868
+ class="select"
869
+ @click="${this.handleChooseParent}"
870
+ ?disabled="${disabled}"
871
+ >Choose parent entity</ui-button
872
+ >
873
+ ${renderHelp('entity', 'inherits-from-selector')}
874
+ </div>
875
+ ${this.renderParentItems(model)}
876
+ </div>
877
+ `
878
+ }
879
+
880
+ protected renderParentItems(model: DomainEntity): TemplateResult | typeof nothing {
881
+ if (!model.hasParents()) {
882
+ return nothing
883
+ }
884
+ const contents: TemplateResult[] = []
885
+ const disabled = !this.canEdit
886
+ for (const item of model.listParents()) {
887
+ const label = item.info.getLabel()
888
+ contents.push(
889
+ html`<ui-chip
890
+ class="parent-chip"
891
+ data-key="${item.key}"
892
+ data-domain="${item.domain.key}"
893
+ removable
894
+ type="input"
895
+ title="Open the parent entity"
896
+ aria-label="Open the parent entity ${label}"
897
+ ?disabled="${disabled}"
898
+ @remove="${this.handleDeleteParent}"
899
+ @click="${this.handleNavigateParent}"
900
+ >${label}</ui-chip
901
+ >`
902
+ )
903
+ }
904
+ return html`<ui-chip-set>${contents}</ui-chip-set>`
905
+ }
906
+
907
+ protected renderContentTabs(): TemplateResult {
908
+ return html`
909
+ <ui-tabs priority="secondary" @change="${this.handleContentTabChange}">
910
+ <ui-tab data-key="design" selected>Design</ui-tab>
911
+ <ui-tab data-key="preview">Preview</ui-tab>
912
+ </ui-tabs>
913
+ `
914
+ }
915
+
916
+ protected renderTabsContent(model: DomainEntity): TemplateResult {
917
+ const { contentTab } = this
918
+ switch (contentTab) {
919
+ case 'design':
920
+ return this.renderDesignTabContent(model)
921
+ case 'preview':
922
+ return this.renderPreviewTabContent()
923
+ default:
924
+ return html`<p>Invalid selection.</p>`
925
+ }
926
+ }
927
+
928
+ protected renderDesignTabContent(model: DomainEntity): TemplateResult {
929
+ // TODO: Add taxonomy related UI.
930
+ return html`${this.renderFieldsSection(model)} ${this.renderDataGovernanceSection(model)}`
931
+ }
932
+
933
+ protected renderPreviewTabContent(): TemplateResult {
934
+ return html`
935
+ <div class="preview-section">
936
+ ${this.renderPreviewMimeSelector()}
937
+ <div class="schema-preview"><pre class="title-small">${this.schemaPreview}</pre></div>
938
+ </div>
939
+ `
940
+ }
941
+
942
+ protected renderPreviewMimeSelector(): TemplateResult {
943
+ const { mime } = this
944
+ const mimes = ['application/json', 'application/xml']
945
+ return html`<div class="row">
946
+ <ui-select label="Media Type" class="input" name="mime" .value="${mime}" @change="${this.handleMimeChange}">
947
+ ${mimes.map(
948
+ (item) =>
949
+ html`<ui-option value="${item}">
950
+ <div>${item}</div>
951
+ </ui-option>`
952
+ )}
953
+ </ui-select>
954
+ </div>`
955
+ }
956
+
957
+ protected renderFieldsSection(model: DomainEntity): TemplateResult {
958
+ return html`
959
+ <div class="fields-section">
960
+ <div class="fields-header">
961
+ <span class="label-large">Fields</span>
962
+ ${this.renderFieldAddButton()}
963
+ </div>
964
+ ${model.hasFields() ? this.renderFieldsList(model) : this.renderFieldsEmptyState()}
965
+ </div>
966
+ `
967
+ }
968
+
969
+ protected renderFieldAddButton(): TemplateResult {
970
+ const disabled = !this.canEdit
971
+ return html`<div class="field-add-button">
972
+ <ui-button
973
+ id="field-new-anchor"
974
+ trailingIcon
975
+ type="button"
976
+ color="tonal"
977
+ ?disabled="${disabled}"
978
+ popoverTarget="new-field-menu"
979
+ >
980
+ Add field
981
+ <ui-icon slot="icon">arrow_drop_down</ui-icon>
982
+ </ui-button>
983
+ <ui-menu id="new-field-menu" popover="auto" @select="${this.handleFieldMenuSelect}">
984
+ <ui-menu-item data-action="property">
985
+ <div>Property</div>
986
+ <div slot="supporting-text">Data property in the schema</div>
987
+ </ui-menu-item>
988
+ <ui-menu-item data-action="association">
989
+ <div>Reference</div>
990
+ <div slot="supporting-text">Connect to another entity object</div>
991
+ </ui-menu-item>
992
+ <ui-menu-item data-action="auto-fields-dialog">
993
+ <div>Auto fields...</div>
994
+ <div slot="supporting-text">Choose from common field types</div>
995
+ </ui-menu-item>
996
+ <ui-menu-item data-action="all-recommended">
997
+ <div>All Recommended Fields</div>
998
+ <div slot="supporting-text">Adds all commonly recommended fields (ID, timestamps, audit trail).</div>
999
+ </ui-menu-item>
1000
+ </ui-menu>
1001
+ </div>`
1002
+ }
1003
+
1004
+ protected renderFieldsEmptyState(): TemplateResult {
1005
+ return html`<div class="empty-fields">
1006
+ <div class="icon-wrapper">
1007
+ <ui-icon class="icon" icon="textFields"></ui-icon>
1008
+ </div>
1009
+ <p class="empty-message body-large">Find your data entities here</p>
1010
+ <p class="empty-message body-large">Add a data entity to describe your schema.</p>
1011
+ </div>`
1012
+ }
1013
+
1014
+ protected renderFieldsList(items: DomainEntity): TemplateResult {
1015
+ const contents: TemplateResult[] = []
1016
+ for (const item of items.listFields()) {
1017
+ contents.push(this.renderField(item))
1018
+ }
1019
+ return html`<ui-list class="fields-list" @select="${this.handleFieldListSelect}">${contents}</ui-list>`
1020
+ }
1021
+
1022
+ protected renderField(item: DomainAssociation | DomainProperty): TemplateResult {
1023
+ const selected = this.selectedProperty === item.key
1024
+ const classes: ClassInfo = {
1025
+ 'field-item': true,
1026
+ 'selected': selected,
1027
+ }
1028
+ const label = item.info.getLabel()
1029
+ const icon = selected ? 'check' : getFieldIcon(item)
1030
+ return html`<ui-list-item class="${classMap(classes)}" data-key="${item.key}" data-kind="${item.kind}">
1031
+ <span slot="start"><ui-icon class="icon" icon="${icon}"></ui-icon></span>
1032
+ <span>${label}</span>
1033
+ <span slot="end-text">${getFieldDataTypeLabel(item)}</span>
1034
+ ${this.createFieldContextualMenu(item)}
1035
+ </ui-list-item>`
1036
+ }
1037
+
1038
+ protected createFieldContextualMenu(item: DomainAssociation | DomainProperty): TemplateResult {
1039
+ const disabled = !this.canEdit
1040
+ return html`
1041
+ <div
1042
+ class="field-menu"
1043
+ slot="end"
1044
+ @click="${cancelEvent}"
1045
+ @keydown="${cancelEvent}"
1046
+ @keyup="${cancelEvent}"
1047
+ @mousedown="${cancelEvent}"
1048
+ @mouseup="${cancelEvent}"
1049
+ @pointerdown="${cancelEvent}"
1050
+ @pointerup="${cancelEvent}"
1051
+ @contextmenu="${cancelEvent}"
1052
+ @touchstart="${cancelEvent}"
1053
+ @touchend="${cancelEvent}"
1054
+ @touchcancel="${cancelEvent}"
1055
+ >
1056
+ <ui-icon-button
1057
+ id="field-menu-anchor-${item.key}-menu"
1058
+ popoverTarget="field-${item.key}-menu"
1059
+ color="outlined"
1060
+ aria-label="Field options"
1061
+ ?disabled="${!this.canEdit}"
1062
+ >
1063
+ <ui-icon>more_vert</ui-icon>
1064
+ </ui-icon-button>
1065
+ <ui-menu
1066
+ data-key="${item.key}"
1067
+ data-kind="${item.kind}"
1068
+ id="field-${item.key}-menu"
1069
+ popover="auto"
1070
+ @select="${this.handleFieldContextMenuSelect}"
1071
+ >
1072
+ <ui-menu-item data-action="edit" ?disabled="${disabled}" lines="two">
1073
+ <div>Edit</div>
1074
+ <div slot="supporting-text">Edit the field properties</div>
1075
+ </ui-menu-item>
1076
+ <ui-menu-item data-action="duplicate" ?disabled="${disabled}" lines="two">
1077
+ <div>Duplicate</div>
1078
+ <div slot="supporting-text">Create a copy of this field</div>
1079
+ </ui-menu-item>
1080
+ ${when(
1081
+ item.kind === DomainPropertyKind,
1082
+ () =>
1083
+ html`<ui-menu-item data-action="convert" ?disabled="${disabled}" lines="two">
1084
+ <div>Convert to association</div>
1085
+ <div slot="supporting-text">Replaces this property with an association</div>
1086
+ </ui-menu-item>`,
1087
+ () =>
1088
+ html`<ui-menu-item data-action="convert" ?disabled="${disabled}" lines="two">
1089
+ <div>Convert to property</div>
1090
+ <div slot="supporting-text">Replaces this association with a property</div>
1091
+ </ui-menu-item>`
1092
+ )}
1093
+ <ui-divider></ui-divider>
1094
+ <ui-menu-item data-action="delete" ?disabled="${disabled}" lines="two">
1095
+ <div>Delete</div>
1096
+ <div slot="supporting-text">Remove the field from the schema</div>
1097
+ </ui-menu-item>
1098
+ </ui-menu>
1099
+ </div>
1100
+ `
1101
+ }
1102
+
1103
+ protected renderDataGovernanceSection(model: DomainEntity): TemplateResult {
1104
+ // TODO: Add classification UI (data tagging)
1105
+ return html`<div class="data-gov-section">
1106
+ <div class="data-gov-header">
1107
+ <span class="label-large">Data Governance</span>
1108
+ </div>
1109
+ ${this.renderTaxonomyInput(model)}
1110
+ </div>`
1111
+ }
1112
+
1113
+ protected renderTaxonomyInput(model: DomainEntity): TemplateResult | typeof nothing {
1114
+ const allCategories = getSemanticsByCategory(SemanticScope.Entity)
1115
+ const selectedSemantics: EntitySemantic[] = []
1116
+ const filteredCategories: Record<string, EntitySemantic[]> = {}
1117
+
1118
+ // Filter categories and semantics, excluding already selected ones
1119
+ for (const category of Object.keys(allCategories)) {
1120
+ const semantics = allCategories[category as SemanticCategory].filter((s) => {
1121
+ // Check if this semantic is already selected
1122
+ if (model.semantics.some((ms) => ms.id === s.id)) {
1123
+ selectedSemantics.push(s)
1124
+ return false
1125
+ }
1126
+ return true
1127
+ })
1128
+
1129
+ if (semantics.length > 0) {
1130
+ filteredCategories[category] = semantics
1131
+ }
1132
+ }
1133
+
1134
+ if (Object.keys(filteredCategories).length === 0 && selectedSemantics.length === 0) {
1135
+ return nothing
1136
+ }
1137
+
1138
+ return html`<div class="taxonomy">
1139
+ <ui-button
1140
+ id="taxonomy-menu-anchor"
1141
+ popoverTarget="taxonomy-menu"
1142
+ color="outlined"
1143
+ aria-label="Add entity taxonomy"
1144
+ ?disabled="${!this.canEdit}"
1145
+ >
1146
+ <ui-icon slot="icon">add</ui-icon>Add taxonomy
1147
+ </ui-button>
1148
+ <ui-menu popover="auto" id="taxonomy-menu" class="taxonomy-menu" @select="${this.handleTaxonomySelect}">
1149
+ ${this.renderTaxonomyCategories(filteredCategories)}
1150
+ </ui-menu>
1151
+ ${renderHelp('entity', 'taxonomy-select')}
1152
+ </div>
1153
+ ${this.renderSelectedSemantics(selectedSemantics)}`
1154
+
1155
+ // const options: TemplateResult[] = []
1156
+ // let hasSelection = false
1157
+ // for (const semantic of Object.values(DataSemantics)) {
1158
+ // if (semantic.scope !== SemanticScope.Entity) {
1159
+ // continue
1160
+ // }
1161
+ // const has = model.semantics.some((s) => s.id === semantic.id)
1162
+ // if (has) {
1163
+ // hasSelection = true
1164
+ // }
1165
+ // options.push(
1166
+ // html`<ui-option value="${semantic.id}" ?selected="${has}">
1167
+ // <div>${semantic.displayName}</div>
1168
+ // <div slot="supporting-text">${semantic.description}</div>
1169
+ // </ui-option>`
1170
+ // )
1171
+ // }
1172
+ // const support = 'Helps recognize what the entity represents'
1173
+ // return html`<div class="row input-row">
1174
+ // <ui-select
1175
+ // label="Entity taxonomy"
1176
+ // class="input"
1177
+ // name="taxonomy"
1178
+ // ?disabled="${!this.canEdit}"
1179
+ // .supportingText="${support}"
1180
+ // @change="${this.handleTaxonomyChange}"
1181
+ // >
1182
+ // ${options}
1183
+ // ${hasSelection
1184
+ // ? html`<ui-icon slot="trailing-icon" icon="cancel" @click="${this.handleTaxonomyClear}"></ui-icon>`
1185
+ // : nothing}
1186
+ // </ui-select>
1187
+ // ${renderHelp('entity', 'taxonomy-select')}
1188
+ // </div>`
1189
+ }
1190
+
1191
+ protected renderSelectedSemantics(selected: EntitySemantic[]): TemplateResult | typeof nothing {
1192
+ if (selected.length === 0) {
1193
+ return nothing
1194
+ }
1195
+ const items = selected.map((semantic) => this.renderTaxonomyItem(semantic))
1196
+ return html`<div class="enabled-taxonomy">${items}</div>`
1197
+ }
1198
+
1199
+ protected renderTaxonomyItem(semantic: EntitySemantic): TemplateResult {
1200
+ const canEdit = this.canEdit
1201
+ return html`<div class="taxonomy-item">
1202
+ <span class="label body-large">${semantic.displayName}</span>
1203
+ ${semantic.hasConfig
1204
+ ? html`<ui-button color="text" data-id="${semantic.id}" ?disabled="${!canEdit}">Configure</ui-button>`
1205
+ : nothing}
1206
+ ${canEdit
1207
+ ? html`<ui-icon-button
1208
+ type="button"
1209
+ data-id="${semantic.id}"
1210
+ @click="${this.handleDeleteTaxonomy}"
1211
+ ?disabled="${!canEdit}"
1212
+ ><ui-icon icon="deleteOutline"></ui-icon
1213
+ ></ui-icon-button>`
1214
+ : nothing}
1215
+ </div>`
1216
+ }
1217
+
1218
+ protected renderTaxonomyCategories(categories: Record<string, EntitySemantic[]>): TemplateResult[] {
1219
+ const items: TemplateResult[] = []
1220
+ const entries = Object.entries(categories)
1221
+ const cLen = entries.length
1222
+
1223
+ entries.forEach(([categoryName, semantics], categoryIndex) => {
1224
+ // Add category title as a non-selectable menu item
1225
+ items.push(html` <div class="menu-category-title title-small">${categoryName}</div> `)
1226
+
1227
+ // Add semantics from this category
1228
+ for (const semantic of semantics) {
1229
+ items.push(html`
1230
+ <ui-menu-item data-value="${semantic.id}" lines="two">
1231
+ <div>${semantic.displayName}</div>
1232
+ <div slot="supporting-text">${semantic.description}</div>
1233
+ </ui-menu-item>
1234
+ `)
1235
+ }
1236
+
1237
+ // Add divider after each category except the last one
1238
+ if (categoryIndex < cLen - 1) {
1239
+ items.push(html`<ui-divider></ui-divider>`)
1240
+ }
1241
+ })
1242
+
1243
+ return items
1244
+ }
1245
+ }