@itwin/grouping-mapping-widget 0.26.0 → 0.26.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 (579) hide show
  1. package/LICENSE.md +9 -9
  2. package/README.md +115 -115
  3. package/lib/cjs/WidgetShell/GroupingMapping.js +2 -4
  4. package/lib/cjs/WidgetShell/GroupingMapping.js.map +1 -1
  5. package/lib/cjs/WidgetShell/GroupingMappingContent.js +4 -4
  6. package/lib/cjs/WidgetShell/GroupingMappingContent.js.map +1 -1
  7. package/lib/cjs/WidgetShell/GroupingMappingHeader.d.ts +1 -1
  8. package/lib/cjs/WidgetShell/GroupingMappingHeader.js +5 -5
  9. package/lib/cjs/WidgetShell/GroupingMappingHeader.js.map +1 -1
  10. package/lib/cjs/WidgetShell/GroupingMappingWidget.js +1 -3
  11. package/lib/cjs/WidgetShell/GroupingMappingWidget.js.map +1 -1
  12. package/lib/cjs/WidgetShell/Router/GroupingMappingRouter.js +28 -8
  13. package/lib/cjs/WidgetShell/Router/GroupingMappingRouter.js.map +1 -1
  14. package/lib/cjs/WidgetShell/WidgetHeader/WidgetHeader.d.ts +1 -1
  15. package/lib/cjs/WidgetShell/WidgetHeader/WidgetHeader.js +7 -7
  16. package/lib/cjs/WidgetShell/WidgetHeader/WidgetHeader.js.map +1 -1
  17. package/lib/cjs/common/hooks/useIsMounted.js +3 -3
  18. package/lib/cjs/common/hooks/useIsMounted.js.map +1 -1
  19. package/lib/cjs/common/hooks/useMemoizedCollectionPick.js +3 -3
  20. package/lib/cjs/common/hooks/useMemoizedCollectionPick.js.map +1 -1
  21. package/lib/cjs/common/utils.js +3 -3
  22. package/lib/cjs/common/utils.js.map +1 -1
  23. package/lib/cjs/common/viewerUtils.js +2 -2
  24. package/lib/cjs/common/viewerUtils.js.map +1 -1
  25. package/lib/cjs/components/Constants.js +4 -4
  26. package/lib/cjs/components/Constants.js.map +1 -1
  27. package/lib/cjs/components/GroupingMappingContext.js +13 -4
  28. package/lib/cjs/components/GroupingMappingContext.js.map +1 -1
  29. package/lib/cjs/components/Groups/Editing/GroupAction.js +7 -9
  30. package/lib/cjs/components/Groups/Editing/GroupAction.js.map +1 -1
  31. package/lib/cjs/components/Groups/Editing/GroupDetails.d.ts +1 -1
  32. package/lib/cjs/components/Groups/Editing/GroupDetails.js +5 -7
  33. package/lib/cjs/components/Groups/Editing/GroupDetails.js.map +1 -1
  34. package/lib/cjs/components/Groups/Editing/GroupDetailsActionPanel.d.ts +1 -1
  35. package/lib/cjs/components/Groups/Editing/GroupDetailsActionPanel.js +4 -4
  36. package/lib/cjs/components/Groups/Editing/GroupDetailsActionPanel.js.map +1 -1
  37. package/lib/cjs/components/Groups/Editing/GroupDetailsStep.js +4 -4
  38. package/lib/cjs/components/Groups/Editing/GroupDetailsStep.js.map +1 -1
  39. package/lib/cjs/components/Groups/GroupColorLegend.js +3 -3
  40. package/lib/cjs/components/Groups/GroupColorLegend.js.map +1 -1
  41. package/lib/cjs/components/Groups/GroupListItem.js +3 -4
  42. package/lib/cjs/components/Groups/GroupListItem.js.map +1 -1
  43. package/lib/cjs/components/Groups/GroupListItem.scss +2 -2
  44. package/lib/cjs/components/Groups/GroupMenuActions.js +17 -6
  45. package/lib/cjs/components/Groups/GroupMenuActions.js.map +1 -1
  46. package/lib/cjs/components/Groups/GroupOverlapProgressBar.js.map +1 -1
  47. package/lib/cjs/components/Groups/Groups.js +3 -3
  48. package/lib/cjs/components/Groups/Groups.js.map +1 -1
  49. package/lib/cjs/components/Groups/GroupsAddButton.d.ts +1 -1
  50. package/lib/cjs/components/Groups/GroupsAddButton.js +4 -4
  51. package/lib/cjs/components/Groups/GroupsAddButton.js.map +1 -1
  52. package/lib/cjs/components/Groups/GroupsAddButton.scss +1 -1
  53. package/lib/cjs/components/Groups/GroupsShowHideButtons.d.ts +1 -1
  54. package/lib/cjs/components/Groups/GroupsShowHideButtons.js +2 -2
  55. package/lib/cjs/components/Groups/GroupsShowHideButtons.js.map +1 -1
  56. package/lib/cjs/components/Groups/GroupsView.js +8 -10
  57. package/lib/cjs/components/Groups/GroupsView.js.map +1 -1
  58. package/lib/cjs/components/Groups/GroupsView.scss +1 -1
  59. package/lib/cjs/components/Groups/GroupsVisualization.js +19 -20
  60. package/lib/cjs/components/Groups/GroupsVisualization.js.map +1 -1
  61. package/lib/cjs/components/Groups/GroupsVisualizationActions.js +4 -4
  62. package/lib/cjs/components/Groups/GroupsVisualizationActions.js.map +1 -1
  63. package/lib/cjs/components/Groups/OverlappedElementsInformationPanel.d.ts +1 -1
  64. package/lib/cjs/components/Groups/OverlappedElementsInformationPanel.js +4 -4
  65. package/lib/cjs/components/Groups/OverlappedElementsInformationPanel.js.map +1 -1
  66. package/lib/cjs/components/Groups/OverlappedElementsInformationPanel.scss +7 -7
  67. package/lib/cjs/components/Groups/QueryBuilder/QueryBuilder.js +13 -35
  68. package/lib/cjs/components/Groups/QueryBuilder/QueryBuilder.js.map +1 -1
  69. package/lib/cjs/components/Groups/QueryBuilder/QueryBuilderActionPanel.js +4 -4
  70. package/lib/cjs/components/Groups/QueryBuilder/QueryBuilderActionPanel.js.map +1 -1
  71. package/lib/cjs/components/Groups/QueryBuilder/QueryBuilderCustomUI.d.ts +1 -1
  72. package/lib/cjs/components/Groups/QueryBuilder/QueryBuilderCustomUI.js +4 -4
  73. package/lib/cjs/components/Groups/QueryBuilder/QueryBuilderCustomUI.js.map +1 -1
  74. package/lib/cjs/components/Groups/QueryBuilder/QueryBuilderStep.js +4 -4
  75. package/lib/cjs/components/Groups/QueryBuilder/QueryBuilderStep.js.map +1 -1
  76. package/lib/cjs/components/Groups/ToggleGroupVisibility.js +3 -3
  77. package/lib/cjs/components/Groups/ToggleGroupVisibility.js.map +1 -1
  78. package/lib/cjs/components/Groups/groupsHelpers.js +8 -4
  79. package/lib/cjs/components/Groups/groupsHelpers.js.map +1 -1
  80. package/lib/cjs/components/Groups/hooks/useFetchGroups.js.map +1 -1
  81. package/lib/cjs/components/Groups/hooks/useGroupsOperations.d.ts +1 -1
  82. package/lib/cjs/components/Groups/hooks/useGroupsOperations.js +5 -5
  83. package/lib/cjs/components/Groups/hooks/useGroupsOperations.js.map +1 -1
  84. package/lib/cjs/components/Groups/hooks/useKeySetHiliteQueries.js.map +1 -1
  85. package/lib/cjs/components/Groups/hooks/useVisualization.js +2 -4
  86. package/lib/cjs/components/Groups/hooks/useVisualization.js.map +1 -1
  87. package/lib/cjs/components/Mappings/BlockingOverlay.js +3 -3
  88. package/lib/cjs/components/Mappings/BlockingOverlay.js.map +1 -1
  89. package/lib/cjs/components/Mappings/Editing/MappingAction.js +11 -15
  90. package/lib/cjs/components/Mappings/Editing/MappingAction.js.map +1 -1
  91. package/lib/cjs/components/Mappings/Extraction/ExtractionLogCustomFilter.d.ts +1 -1
  92. package/lib/cjs/components/Mappings/Extraction/ExtractionLogCustomFilter.js +1 -1
  93. package/lib/cjs/components/Mappings/Extraction/ExtractionLogCustomFilter.js.map +1 -1
  94. package/lib/cjs/components/Mappings/Extraction/ExtractionMessageModal.js +9 -6
  95. package/lib/cjs/components/Mappings/Extraction/ExtractionMessageModal.js.map +1 -1
  96. package/lib/cjs/components/Mappings/Extraction/ExtractionStates/QueuedExtractionState.js +3 -3
  97. package/lib/cjs/components/Mappings/Extraction/ExtractionStates/QueuedExtractionState.js.map +1 -1
  98. package/lib/cjs/components/Mappings/Extraction/ExtractionStates/RunningExtractionState.js +3 -3
  99. package/lib/cjs/components/Mappings/Extraction/ExtractionStates/RunningExtractionState.js.map +1 -1
  100. package/lib/cjs/components/Mappings/Extraction/ExtractionStates/StartingExtractionState.js +3 -3
  101. package/lib/cjs/components/Mappings/Extraction/ExtractionStates/StartingExtractionState.js.map +1 -1
  102. package/lib/cjs/components/Mappings/Extraction/ExtractionStates/TerminalExtractionState.js +3 -3
  103. package/lib/cjs/components/Mappings/Extraction/ExtractionStates/TerminalExtractionState.js.map +1 -1
  104. package/lib/cjs/components/Mappings/Extraction/ExtractionStatus.d.ts +1 -1
  105. package/lib/cjs/components/Mappings/Extraction/ExtractionStatus.js +9 -9
  106. package/lib/cjs/components/Mappings/Extraction/ExtractionStatus.js.map +1 -1
  107. package/lib/cjs/components/Mappings/Extraction/ExtractionStatusIcon.js +4 -4
  108. package/lib/cjs/components/Mappings/Extraction/ExtractionStatusIcon.js.map +1 -1
  109. package/lib/cjs/components/Mappings/Import/ConfirmMappingsImport.js +26 -30
  110. package/lib/cjs/components/Mappings/Import/ConfirmMappingsImport.js.map +1 -1
  111. package/lib/cjs/components/Mappings/Import/MappingImportWizardModal.d.ts +1 -1
  112. package/lib/cjs/components/Mappings/Import/MappingImportWizardModal.js +3 -3
  113. package/lib/cjs/components/Mappings/Import/MappingImportWizardModal.js.map +1 -1
  114. package/lib/cjs/components/Mappings/Import/SelectIModel.d.ts +1 -1
  115. package/lib/cjs/components/Mappings/Import/SelectIModel.js +5 -5
  116. package/lib/cjs/components/Mappings/Import/SelectIModel.js.map +1 -1
  117. package/lib/cjs/components/Mappings/Import/SelectITwin.js +2 -2
  118. package/lib/cjs/components/Mappings/Import/SelectITwin.js.map +1 -1
  119. package/lib/cjs/components/Mappings/Import/SelectITwin.scss +1 -1
  120. package/lib/cjs/components/Mappings/Import/SelectMappings.d.ts +1 -1
  121. package/lib/cjs/components/Mappings/Import/SelectMappings.js +7 -7
  122. package/lib/cjs/components/Mappings/Import/SelectMappings.js.map +1 -1
  123. package/lib/cjs/components/Mappings/MappingListItem.js.map +1 -1
  124. package/lib/cjs/components/Mappings/MappingViewActionGroup.d.ts +1 -1
  125. package/lib/cjs/components/Mappings/MappingViewActionGroup.js +6 -6
  126. package/lib/cjs/components/Mappings/MappingViewActionGroup.js.map +1 -1
  127. package/lib/cjs/components/Mappings/Mappings.js +3 -3
  128. package/lib/cjs/components/Mappings/Mappings.js.map +1 -1
  129. package/lib/cjs/components/Mappings/MappingsView.js +13 -15
  130. package/lib/cjs/components/Mappings/MappingsView.js.map +1 -1
  131. package/lib/cjs/components/Mappings/hooks/useFetchExtractionStatus.js +3 -1
  132. package/lib/cjs/components/Mappings/hooks/useFetchExtractionStatus.js.map +1 -1
  133. package/lib/cjs/components/Mappings/hooks/useFetchMappingExtractionStatus.d.ts +1 -1
  134. package/lib/cjs/components/Mappings/hooks/useFetchMappingExtractionStatus.js +3 -3
  135. package/lib/cjs/components/Mappings/hooks/useFetchMappingExtractionStatus.js.map +1 -1
  136. package/lib/cjs/components/Mappings/hooks/useFetchMappings.js +1 -1
  137. package/lib/cjs/components/Mappings/hooks/useFetchMappings.js.map +1 -1
  138. package/lib/cjs/components/Mappings/hooks/useMappingsOperations.js +36 -18
  139. package/lib/cjs/components/Mappings/hooks/useMappingsOperations.js.map +1 -1
  140. package/lib/cjs/components/Mappings/hooks/useRunExtraction.d.ts +1 -1
  141. package/lib/cjs/components/Mappings/hooks/useRunExtraction.js +8 -6
  142. package/lib/cjs/components/Mappings/hooks/useRunExtraction.js.map +1 -1
  143. package/lib/cjs/components/Properties/CalculatedProperties/CalculatedPropertyAction.d.ts +1 -1
  144. package/lib/cjs/components/Properties/CalculatedProperties/CalculatedPropertyAction.js +8 -8
  145. package/lib/cjs/components/Properties/CalculatedProperties/CalculatedPropertyAction.js.map +1 -1
  146. package/lib/cjs/components/Properties/CalculatedProperties/CalculatedPropertyActionWithVisuals.js +11 -13
  147. package/lib/cjs/components/Properties/CalculatedProperties/CalculatedPropertyActionWithVisuals.js.map +1 -1
  148. package/lib/cjs/components/Properties/CalculatedProperties/CalculatedPropertyTable.js +1 -1
  149. package/lib/cjs/components/Properties/CalculatedProperties/CalculatedPropertyTable.js.map +1 -1
  150. package/lib/cjs/components/Properties/CalculatedProperties/SharedCalculatedPropertyForms.js +4 -6
  151. package/lib/cjs/components/Properties/CalculatedProperties/SharedCalculatedPropertyForms.js.map +1 -1
  152. package/lib/cjs/components/Properties/CustomCalculations/CustomCalculationAction.d.ts +1 -1
  153. package/lib/cjs/components/Properties/CustomCalculations/CustomCalculationAction.js +27 -21
  154. package/lib/cjs/components/Properties/CustomCalculations/CustomCalculationAction.js.map +1 -1
  155. package/lib/cjs/components/Properties/CustomCalculations/CustomCalculationAction.scss +1 -1
  156. package/lib/cjs/components/Properties/CustomCalculations/CustomCalculationTable.js +15 -11
  157. package/lib/cjs/components/Properties/CustomCalculations/CustomCalculationTable.js.map +1 -1
  158. package/lib/cjs/components/Properties/GroupColorToggle.js +4 -4
  159. package/lib/cjs/components/Properties/GroupColorToggle.js.map +1 -1
  160. package/lib/cjs/components/Properties/GroupInformationPanel.js +3 -3
  161. package/lib/cjs/components/Properties/GroupInformationPanel.js.map +1 -1
  162. package/lib/cjs/components/Properties/GroupProperties/GroupPropertyAction.d.ts +1 -1
  163. package/lib/cjs/components/Properties/GroupProperties/GroupPropertyAction.js +20 -27
  164. package/lib/cjs/components/Properties/GroupProperties/GroupPropertyAction.js.map +1 -1
  165. package/lib/cjs/components/Properties/GroupProperties/GroupPropertyListItem.d.ts +1 -1
  166. package/lib/cjs/components/Properties/GroupProperties/GroupPropertyListItem.js +5 -5
  167. package/lib/cjs/components/Properties/GroupProperties/GroupPropertyListItem.js.map +1 -1
  168. package/lib/cjs/components/Properties/GroupProperties/GroupPropertyTable.d.ts +1 -1
  169. package/lib/cjs/components/Properties/GroupProperties/GroupPropertyTable.js +14 -12
  170. package/lib/cjs/components/Properties/GroupProperties/GroupPropertyTable.js.map +1 -1
  171. package/lib/cjs/components/Properties/GroupProperties/GroupPropertyUtils.js +20 -39
  172. package/lib/cjs/components/Properties/GroupProperties/GroupPropertyUtils.js.map +1 -1
  173. package/lib/cjs/components/Properties/GroupProperties/GroupsPropertiesSelectionModal.js +20 -29
  174. package/lib/cjs/components/Properties/GroupProperties/GroupsPropertiesSelectionModal.js.map +1 -1
  175. package/lib/cjs/components/Properties/GroupProperties/SaveModal.d.ts +1 -1
  176. package/lib/cjs/components/Properties/GroupProperties/SaveModal.js +7 -7
  177. package/lib/cjs/components/Properties/GroupProperties/SaveModal.js.map +1 -1
  178. package/lib/cjs/components/Properties/GroupProperties/SortableHorizontalTile.js +4 -4
  179. package/lib/cjs/components/Properties/GroupProperties/SortableHorizontalTile.js.map +1 -1
  180. package/lib/cjs/components/Properties/PropertyAction.js +9 -21
  181. package/lib/cjs/components/Properties/PropertyAction.js.map +1 -1
  182. package/lib/cjs/components/Properties/PropertyMenu.js +4 -4
  183. package/lib/cjs/components/Properties/PropertyMenu.js.map +1 -1
  184. package/lib/cjs/components/Properties/PropertyMenuWithVisualization.js +5 -5
  185. package/lib/cjs/components/Properties/PropertyMenuWithVisualization.js.map +1 -1
  186. package/lib/cjs/components/Properties/PropertyNameCell.d.ts +1 -1
  187. package/lib/cjs/components/Properties/PropertyNameCell.js +4 -4
  188. package/lib/cjs/components/Properties/PropertyNameCell.js.map +1 -1
  189. package/lib/cjs/components/Properties/PropertyTable.js +5 -6
  190. package/lib/cjs/components/Properties/PropertyTable.js.map +1 -1
  191. package/lib/cjs/components/Properties/PropertyTableToolbar.d.ts +1 -1
  192. package/lib/cjs/components/Properties/PropertyTableToolbar.js +4 -4
  193. package/lib/cjs/components/Properties/PropertyTableToolbar.js.map +1 -1
  194. package/lib/cjs/components/Properties/hooks/useFormulaValidation.js +3 -3
  195. package/lib/cjs/components/Properties/hooks/useFormulaValidation.js.map +1 -1
  196. package/lib/cjs/components/Properties/hooks/usePropertiesQuery.js.map +1 -1
  197. package/lib/cjs/components/Properties/hooks/useValidator.js +4 -4
  198. package/lib/cjs/components/Properties/hooks/useValidator.js.map +1 -1
  199. package/lib/cjs/components/SharedComponents/ActionPanel.d.ts +1 -1
  200. package/lib/cjs/components/SharedComponents/ActionPanel.js +9 -10
  201. package/lib/cjs/components/SharedComponents/ActionPanel.js.map +1 -1
  202. package/lib/cjs/components/SharedComponents/DeleteModal.d.ts +1 -1
  203. package/lib/cjs/components/SharedComponents/DeleteModal.js +9 -10
  204. package/lib/cjs/components/SharedComponents/DeleteModal.js.map +1 -1
  205. package/lib/cjs/components/SharedComponents/EmptyMessage.js +4 -4
  206. package/lib/cjs/components/SharedComponents/EmptyMessage.js.map +1 -1
  207. package/lib/cjs/components/SharedComponents/LoadingOverlay.js +4 -4
  208. package/lib/cjs/components/SharedComponents/LoadingOverlay.js.map +1 -1
  209. package/lib/cjs/components/SharedComponents/LoadingSpinner.js +3 -3
  210. package/lib/cjs/components/SharedComponents/LoadingSpinner.js.map +1 -1
  211. package/lib/cjs/components/SharedComponents/StatusIcon.js +3 -3
  212. package/lib/cjs/components/SharedComponents/StatusIcon.js.map +1 -1
  213. package/lib/cjs/components/context/ExtractionClientContext.js.map +1 -1
  214. package/lib/cjs/components/context/ExtractionStateJobContext.js +3 -3
  215. package/lib/cjs/components/context/ExtractionStateJobContext.js.map +1 -1
  216. package/lib/cjs/components/context/GroupHilitedElementsContext.js +3 -3
  217. package/lib/cjs/components/context/GroupHilitedElementsContext.js.map +1 -1
  218. package/lib/cjs/components/context/GroupingApiConfigContext.js.map +1 -1
  219. package/lib/cjs/components/context/GroupingMappingCustomUIContext.js +3 -3
  220. package/lib/cjs/components/context/GroupingMappingCustomUIContext.js.map +1 -1
  221. package/lib/cjs/components/context/GroupsClientContext.js.map +1 -1
  222. package/lib/cjs/components/context/IModelsClientContext.js.map +1 -1
  223. package/lib/cjs/components/context/ITwinsClientContext.js +3 -3
  224. package/lib/cjs/components/context/ITwinsClientContext.js.map +1 -1
  225. package/lib/cjs/components/context/MappingClientContext.js.map +1 -1
  226. package/lib/cjs/components/context/PropertiesClientContext.js.map +1 -1
  227. package/lib/cjs/components/context/PropertiesGroupColorContext.js +3 -3
  228. package/lib/cjs/components/context/PropertiesGroupColorContext.js.map +1 -1
  229. package/lib/cjs/components/context/PropertyGridWrapperContext.js +3 -3
  230. package/lib/cjs/components/context/PropertyGridWrapperContext.js.map +1 -1
  231. package/lib/cjs/components/customUI/DefaultGroupingUI.js +3 -3
  232. package/lib/cjs/components/customUI/DefaultGroupingUI.js.map +1 -1
  233. package/lib/cjs/components/customUI/GroupQueryBuilderCustomUI.d.ts +1 -1
  234. package/lib/cjs/components/customUI/GroupQueryBuilderCustomUI.js +13 -18
  235. package/lib/cjs/components/customUI/GroupQueryBuilderCustomUI.js.map +1 -1
  236. package/lib/cjs/components/customUI/GroupingMappingCustomUI.js.map +1 -1
  237. package/lib/cjs/components/customUI/ManualGroupingCustomUI.d.ts +1 -1
  238. package/lib/cjs/components/customUI/ManualGroupingCustomUI.js +8 -8
  239. package/lib/cjs/components/customUI/ManualGroupingCustomUI.js.map +1 -1
  240. package/lib/cjs/components/customUI/SearchGroupingCustomUI.d.ts +1 -1
  241. package/lib/cjs/components/customUI/SearchGroupingCustomUI.js +16 -45
  242. package/lib/cjs/components/customUI/SearchGroupingCustomUI.js.map +1 -1
  243. package/lib/cjs/decorators/BboxDimensionsDecorator.js +3 -10
  244. package/lib/cjs/decorators/BboxDimensionsDecorator.js.map +1 -1
  245. package/lib/cjs/formula/FormulaDataTypeResolver.js +3 -3
  246. package/lib/cjs/formula/FormulaDataTypeResolver.js.map +1 -1
  247. package/lib/cjs/formula/FormulaFunctionProvider.js +146 -65
  248. package/lib/cjs/formula/FormulaFunctionProvider.js.map +1 -1
  249. package/lib/cjs/formula/FormulaOperatorsProvider.js +138 -44
  250. package/lib/cjs/formula/FormulaOperatorsProvider.js.map +1 -1
  251. package/lib/cjs/formula/FormulaSplitter.js +63 -13
  252. package/lib/cjs/formula/FormulaSplitter.js.map +1 -1
  253. package/lib/cjs/formula/FormulaTokensDataTypeResolver.js +7 -14
  254. package/lib/cjs/formula/FormulaTokensDataTypeResolver.js.map +1 -1
  255. package/lib/cjs/formula/IResult.js.map +1 -1
  256. package/lib/cjs/formula/InfixToPostfixConverter.js +4 -4
  257. package/lib/cjs/formula/InfixToPostfixConverter.js.map +1 -1
  258. package/lib/cjs/formula/InputStream.js +3 -3
  259. package/lib/cjs/formula/InputStream.js.map +1 -1
  260. package/lib/cjs/formula/ParenthesisValidator.js +3 -3
  261. package/lib/cjs/formula/ParenthesisValidator.js.map +1 -1
  262. package/lib/cjs/formula/Queue.js +3 -3
  263. package/lib/cjs/formula/Queue.js.map +1 -1
  264. package/lib/cjs/formula/Stack.js +3 -3
  265. package/lib/cjs/formula/Stack.js.map +1 -1
  266. package/lib/cjs/formula/StringBuilder.js +3 -3
  267. package/lib/cjs/formula/StringBuilder.js.map +1 -1
  268. package/lib/cjs/formula/Types.js.map +1 -1
  269. package/lib/cjs/formula/Utils.js +4 -4
  270. package/lib/cjs/formula/Utils.js.map +1 -1
  271. package/lib/cjs/grouping-mapping-widget.d.ts +4 -4
  272. package/lib/cjs/grouping-mapping-widget.js +3 -3
  273. package/lib/cjs/grouping-mapping-widget.js.map +1 -1
  274. package/lib/cjs/test/GroupPropertyUtils.test.js +27 -26
  275. package/lib/cjs/test/GroupPropertyUtils.test.js.map +1 -1
  276. package/lib/cjs/test/GroupingMappingCustomUI.test.js +4 -6
  277. package/lib/cjs/test/GroupingMappingCustomUI.test.js.map +1 -1
  278. package/lib/cjs/test/MockFactory.js +3 -3
  279. package/lib/cjs/test/MockFactory.js.map +1 -1
  280. package/lib/cjs/test/PropertyFieldsHelpers.js +3 -3
  281. package/lib/cjs/test/PropertyFieldsHelpers.js.map +1 -1
  282. package/lib/cjs/test/QueryBuilder.test.js +3 -3
  283. package/lib/cjs/test/QueryBuilder.test.js.map +1 -1
  284. package/lib/cjs/test/QueryBuilder.testdata.js +3 -3
  285. package/lib/cjs/test/QueryBuilder.testdata.js.map +1 -1
  286. package/lib/cjs/test/QueryBuilderTestData.js.map +1 -1
  287. package/lib/cjs/test/WidgetHeader.test.js +3 -3
  288. package/lib/cjs/test/WidgetHeader.test.js.map +1 -1
  289. package/lib/cjs/test/test-utils.js +4 -4
  290. package/lib/cjs/test/test-utils.js.map +1 -1
  291. package/lib/esm/WidgetShell/GroupingMapping.js +3 -5
  292. package/lib/esm/WidgetShell/GroupingMapping.js.map +1 -1
  293. package/lib/esm/WidgetShell/GroupingMappingContent.js +4 -4
  294. package/lib/esm/WidgetShell/GroupingMappingContent.js.map +1 -1
  295. package/lib/esm/WidgetShell/GroupingMappingHeader.d.ts +1 -1
  296. package/lib/esm/WidgetShell/GroupingMappingHeader.js +5 -5
  297. package/lib/esm/WidgetShell/GroupingMappingHeader.js.map +1 -1
  298. package/lib/esm/WidgetShell/GroupingMappingWidget.js +2 -4
  299. package/lib/esm/WidgetShell/GroupingMappingWidget.js.map +1 -1
  300. package/lib/esm/WidgetShell/Router/GroupingMappingRouter.js +28 -8
  301. package/lib/esm/WidgetShell/Router/GroupingMappingRouter.js.map +1 -1
  302. package/lib/esm/WidgetShell/WidgetHeader/WidgetHeader.d.ts +1 -1
  303. package/lib/esm/WidgetShell/WidgetHeader/WidgetHeader.js +7 -7
  304. package/lib/esm/WidgetShell/WidgetHeader/WidgetHeader.js.map +1 -1
  305. package/lib/esm/common/hooks/useIsMounted.js +3 -3
  306. package/lib/esm/common/hooks/useIsMounted.js.map +1 -1
  307. package/lib/esm/common/hooks/useMemoizedCollectionPick.js +3 -3
  308. package/lib/esm/common/hooks/useMemoizedCollectionPick.js.map +1 -1
  309. package/lib/esm/common/utils.js +3 -3
  310. package/lib/esm/common/utils.js.map +1 -1
  311. package/lib/esm/common/viewerUtils.js +2 -2
  312. package/lib/esm/common/viewerUtils.js.map +1 -1
  313. package/lib/esm/components/Constants.js +4 -4
  314. package/lib/esm/components/Constants.js.map +1 -1
  315. package/lib/esm/components/GroupingMappingContext.js +14 -5
  316. package/lib/esm/components/GroupingMappingContext.js.map +1 -1
  317. package/lib/esm/components/Groups/Editing/GroupAction.js +8 -10
  318. package/lib/esm/components/Groups/Editing/GroupAction.js.map +1 -1
  319. package/lib/esm/components/Groups/Editing/GroupDetails.d.ts +1 -1
  320. package/lib/esm/components/Groups/Editing/GroupDetails.js +5 -7
  321. package/lib/esm/components/Groups/Editing/GroupDetails.js.map +1 -1
  322. package/lib/esm/components/Groups/Editing/GroupDetailsActionPanel.d.ts +1 -1
  323. package/lib/esm/components/Groups/Editing/GroupDetailsActionPanel.js +4 -4
  324. package/lib/esm/components/Groups/Editing/GroupDetailsActionPanel.js.map +1 -1
  325. package/lib/esm/components/Groups/Editing/GroupDetailsStep.js +4 -4
  326. package/lib/esm/components/Groups/Editing/GroupDetailsStep.js.map +1 -1
  327. package/lib/esm/components/Groups/GroupColorLegend.js +3 -3
  328. package/lib/esm/components/Groups/GroupColorLegend.js.map +1 -1
  329. package/lib/esm/components/Groups/GroupListItem.js +3 -4
  330. package/lib/esm/components/Groups/GroupListItem.js.map +1 -1
  331. package/lib/esm/components/Groups/GroupListItem.scss +2 -2
  332. package/lib/esm/components/Groups/GroupMenuActions.js +17 -6
  333. package/lib/esm/components/Groups/GroupMenuActions.js.map +1 -1
  334. package/lib/esm/components/Groups/GroupOverlapProgressBar.js.map +1 -1
  335. package/lib/esm/components/Groups/Groups.js +3 -3
  336. package/lib/esm/components/Groups/Groups.js.map +1 -1
  337. package/lib/esm/components/Groups/GroupsAddButton.d.ts +1 -1
  338. package/lib/esm/components/Groups/GroupsAddButton.js +4 -4
  339. package/lib/esm/components/Groups/GroupsAddButton.js.map +1 -1
  340. package/lib/esm/components/Groups/GroupsAddButton.scss +1 -1
  341. package/lib/esm/components/Groups/GroupsShowHideButtons.d.ts +1 -1
  342. package/lib/esm/components/Groups/GroupsShowHideButtons.js +2 -2
  343. package/lib/esm/components/Groups/GroupsShowHideButtons.js.map +1 -1
  344. package/lib/esm/components/Groups/GroupsView.js +10 -12
  345. package/lib/esm/components/Groups/GroupsView.js.map +1 -1
  346. package/lib/esm/components/Groups/GroupsView.scss +1 -1
  347. package/lib/esm/components/Groups/GroupsVisualization.js +21 -22
  348. package/lib/esm/components/Groups/GroupsVisualization.js.map +1 -1
  349. package/lib/esm/components/Groups/GroupsVisualizationActions.js +4 -4
  350. package/lib/esm/components/Groups/GroupsVisualizationActions.js.map +1 -1
  351. package/lib/esm/components/Groups/OverlappedElementsInformationPanel.d.ts +1 -1
  352. package/lib/esm/components/Groups/OverlappedElementsInformationPanel.js +5 -5
  353. package/lib/esm/components/Groups/OverlappedElementsInformationPanel.js.map +1 -1
  354. package/lib/esm/components/Groups/OverlappedElementsInformationPanel.scss +7 -7
  355. package/lib/esm/components/Groups/QueryBuilder/QueryBuilder.js +13 -35
  356. package/lib/esm/components/Groups/QueryBuilder/QueryBuilder.js.map +1 -1
  357. package/lib/esm/components/Groups/QueryBuilder/QueryBuilderActionPanel.js +4 -4
  358. package/lib/esm/components/Groups/QueryBuilder/QueryBuilderActionPanel.js.map +1 -1
  359. package/lib/esm/components/Groups/QueryBuilder/QueryBuilderCustomUI.d.ts +1 -1
  360. package/lib/esm/components/Groups/QueryBuilder/QueryBuilderCustomUI.js +4 -4
  361. package/lib/esm/components/Groups/QueryBuilder/QueryBuilderCustomUI.js.map +1 -1
  362. package/lib/esm/components/Groups/QueryBuilder/QueryBuilderStep.js +4 -4
  363. package/lib/esm/components/Groups/QueryBuilder/QueryBuilderStep.js.map +1 -1
  364. package/lib/esm/components/Groups/ToggleGroupVisibility.js +3 -3
  365. package/lib/esm/components/Groups/ToggleGroupVisibility.js.map +1 -1
  366. package/lib/esm/components/Groups/groupsHelpers.js +9 -5
  367. package/lib/esm/components/Groups/groupsHelpers.js.map +1 -1
  368. package/lib/esm/components/Groups/hooks/useFetchGroups.js.map +1 -1
  369. package/lib/esm/components/Groups/hooks/useGroupsOperations.d.ts +1 -1
  370. package/lib/esm/components/Groups/hooks/useGroupsOperations.js +5 -5
  371. package/lib/esm/components/Groups/hooks/useGroupsOperations.js.map +1 -1
  372. package/lib/esm/components/Groups/hooks/useKeySetHiliteQueries.js.map +1 -1
  373. package/lib/esm/components/Groups/hooks/useVisualization.js +3 -5
  374. package/lib/esm/components/Groups/hooks/useVisualization.js.map +1 -1
  375. package/lib/esm/components/Mappings/BlockingOverlay.js +3 -3
  376. package/lib/esm/components/Mappings/BlockingOverlay.js.map +1 -1
  377. package/lib/esm/components/Mappings/Editing/MappingAction.js +11 -15
  378. package/lib/esm/components/Mappings/Editing/MappingAction.js.map +1 -1
  379. package/lib/esm/components/Mappings/Extraction/ExtractionLogCustomFilter.d.ts +1 -1
  380. package/lib/esm/components/Mappings/Extraction/ExtractionLogCustomFilter.js +1 -1
  381. package/lib/esm/components/Mappings/Extraction/ExtractionLogCustomFilter.js.map +1 -1
  382. package/lib/esm/components/Mappings/Extraction/ExtractionMessageModal.js +9 -6
  383. package/lib/esm/components/Mappings/Extraction/ExtractionMessageModal.js.map +1 -1
  384. package/lib/esm/components/Mappings/Extraction/ExtractionStates/QueuedExtractionState.js +3 -3
  385. package/lib/esm/components/Mappings/Extraction/ExtractionStates/QueuedExtractionState.js.map +1 -1
  386. package/lib/esm/components/Mappings/Extraction/ExtractionStates/RunningExtractionState.js +3 -3
  387. package/lib/esm/components/Mappings/Extraction/ExtractionStates/RunningExtractionState.js.map +1 -1
  388. package/lib/esm/components/Mappings/Extraction/ExtractionStates/StartingExtractionState.js +3 -3
  389. package/lib/esm/components/Mappings/Extraction/ExtractionStates/StartingExtractionState.js.map +1 -1
  390. package/lib/esm/components/Mappings/Extraction/ExtractionStates/TerminalExtractionState.js +3 -3
  391. package/lib/esm/components/Mappings/Extraction/ExtractionStates/TerminalExtractionState.js.map +1 -1
  392. package/lib/esm/components/Mappings/Extraction/ExtractionStatus.d.ts +1 -1
  393. package/lib/esm/components/Mappings/Extraction/ExtractionStatus.js +9 -9
  394. package/lib/esm/components/Mappings/Extraction/ExtractionStatus.js.map +1 -1
  395. package/lib/esm/components/Mappings/Extraction/ExtractionStatusIcon.js +4 -4
  396. package/lib/esm/components/Mappings/Extraction/ExtractionStatusIcon.js.map +1 -1
  397. package/lib/esm/components/Mappings/Import/ConfirmMappingsImport.js +27 -31
  398. package/lib/esm/components/Mappings/Import/ConfirmMappingsImport.js.map +1 -1
  399. package/lib/esm/components/Mappings/Import/MappingImportWizardModal.d.ts +1 -1
  400. package/lib/esm/components/Mappings/Import/MappingImportWizardModal.js +3 -3
  401. package/lib/esm/components/Mappings/Import/MappingImportWizardModal.js.map +1 -1
  402. package/lib/esm/components/Mappings/Import/SelectIModel.d.ts +1 -1
  403. package/lib/esm/components/Mappings/Import/SelectIModel.js +5 -5
  404. package/lib/esm/components/Mappings/Import/SelectIModel.js.map +1 -1
  405. package/lib/esm/components/Mappings/Import/SelectITwin.js +2 -2
  406. package/lib/esm/components/Mappings/Import/SelectITwin.js.map +1 -1
  407. package/lib/esm/components/Mappings/Import/SelectITwin.scss +1 -1
  408. package/lib/esm/components/Mappings/Import/SelectMappings.d.ts +1 -1
  409. package/lib/esm/components/Mappings/Import/SelectMappings.js +8 -8
  410. package/lib/esm/components/Mappings/Import/SelectMappings.js.map +1 -1
  411. package/lib/esm/components/Mappings/MappingListItem.js.map +1 -1
  412. package/lib/esm/components/Mappings/MappingViewActionGroup.d.ts +1 -1
  413. package/lib/esm/components/Mappings/MappingViewActionGroup.js +8 -8
  414. package/lib/esm/components/Mappings/MappingViewActionGroup.js.map +1 -1
  415. package/lib/esm/components/Mappings/Mappings.js +3 -3
  416. package/lib/esm/components/Mappings/Mappings.js.map +1 -1
  417. package/lib/esm/components/Mappings/MappingsView.js +15 -17
  418. package/lib/esm/components/Mappings/MappingsView.js.map +1 -1
  419. package/lib/esm/components/Mappings/hooks/useFetchExtractionStatus.js +3 -1
  420. package/lib/esm/components/Mappings/hooks/useFetchExtractionStatus.js.map +1 -1
  421. package/lib/esm/components/Mappings/hooks/useFetchMappingExtractionStatus.d.ts +1 -1
  422. package/lib/esm/components/Mappings/hooks/useFetchMappingExtractionStatus.js +3 -3
  423. package/lib/esm/components/Mappings/hooks/useFetchMappingExtractionStatus.js.map +1 -1
  424. package/lib/esm/components/Mappings/hooks/useFetchMappings.js +1 -1
  425. package/lib/esm/components/Mappings/hooks/useFetchMappings.js.map +1 -1
  426. package/lib/esm/components/Mappings/hooks/useMappingsOperations.js +36 -18
  427. package/lib/esm/components/Mappings/hooks/useMappingsOperations.js.map +1 -1
  428. package/lib/esm/components/Mappings/hooks/useRunExtraction.d.ts +1 -1
  429. package/lib/esm/components/Mappings/hooks/useRunExtraction.js +8 -6
  430. package/lib/esm/components/Mappings/hooks/useRunExtraction.js.map +1 -1
  431. package/lib/esm/components/Properties/CalculatedProperties/CalculatedPropertyAction.d.ts +1 -1
  432. package/lib/esm/components/Properties/CalculatedProperties/CalculatedPropertyAction.js +9 -9
  433. package/lib/esm/components/Properties/CalculatedProperties/CalculatedPropertyAction.js.map +1 -1
  434. package/lib/esm/components/Properties/CalculatedProperties/CalculatedPropertyActionWithVisuals.js +13 -15
  435. package/lib/esm/components/Properties/CalculatedProperties/CalculatedPropertyActionWithVisuals.js.map +1 -1
  436. package/lib/esm/components/Properties/CalculatedProperties/CalculatedPropertyTable.js +2 -2
  437. package/lib/esm/components/Properties/CalculatedProperties/CalculatedPropertyTable.js.map +1 -1
  438. package/lib/esm/components/Properties/CalculatedProperties/SharedCalculatedPropertyForms.js +5 -7
  439. package/lib/esm/components/Properties/CalculatedProperties/SharedCalculatedPropertyForms.js.map +1 -1
  440. package/lib/esm/components/Properties/CustomCalculations/CustomCalculationAction.d.ts +1 -1
  441. package/lib/esm/components/Properties/CustomCalculations/CustomCalculationAction.js +28 -22
  442. package/lib/esm/components/Properties/CustomCalculations/CustomCalculationAction.js.map +1 -1
  443. package/lib/esm/components/Properties/CustomCalculations/CustomCalculationAction.scss +1 -1
  444. package/lib/esm/components/Properties/CustomCalculations/CustomCalculationTable.js +17 -13
  445. package/lib/esm/components/Properties/CustomCalculations/CustomCalculationTable.js.map +1 -1
  446. package/lib/esm/components/Properties/GroupColorToggle.js +4 -4
  447. package/lib/esm/components/Properties/GroupColorToggle.js.map +1 -1
  448. package/lib/esm/components/Properties/GroupInformationPanel.js +3 -3
  449. package/lib/esm/components/Properties/GroupInformationPanel.js.map +1 -1
  450. package/lib/esm/components/Properties/GroupProperties/GroupPropertyAction.d.ts +1 -1
  451. package/lib/esm/components/Properties/GroupProperties/GroupPropertyAction.js +22 -29
  452. package/lib/esm/components/Properties/GroupProperties/GroupPropertyAction.js.map +1 -1
  453. package/lib/esm/components/Properties/GroupProperties/GroupPropertyListItem.d.ts +1 -1
  454. package/lib/esm/components/Properties/GroupProperties/GroupPropertyListItem.js +5 -5
  455. package/lib/esm/components/Properties/GroupProperties/GroupPropertyListItem.js.map +1 -1
  456. package/lib/esm/components/Properties/GroupProperties/GroupPropertyTable.d.ts +1 -1
  457. package/lib/esm/components/Properties/GroupProperties/GroupPropertyTable.js +16 -14
  458. package/lib/esm/components/Properties/GroupProperties/GroupPropertyTable.js.map +1 -1
  459. package/lib/esm/components/Properties/GroupProperties/GroupPropertyUtils.js +21 -40
  460. package/lib/esm/components/Properties/GroupProperties/GroupPropertyUtils.js.map +1 -1
  461. package/lib/esm/components/Properties/GroupProperties/GroupsPropertiesSelectionModal.js +26 -35
  462. package/lib/esm/components/Properties/GroupProperties/GroupsPropertiesSelectionModal.js.map +1 -1
  463. package/lib/esm/components/Properties/GroupProperties/SaveModal.d.ts +1 -1
  464. package/lib/esm/components/Properties/GroupProperties/SaveModal.js +8 -8
  465. package/lib/esm/components/Properties/GroupProperties/SaveModal.js.map +1 -1
  466. package/lib/esm/components/Properties/GroupProperties/SortableHorizontalTile.js +4 -4
  467. package/lib/esm/components/Properties/GroupProperties/SortableHorizontalTile.js.map +1 -1
  468. package/lib/esm/components/Properties/PropertyAction.js +9 -21
  469. package/lib/esm/components/Properties/PropertyAction.js.map +1 -1
  470. package/lib/esm/components/Properties/PropertyMenu.js +4 -4
  471. package/lib/esm/components/Properties/PropertyMenu.js.map +1 -1
  472. package/lib/esm/components/Properties/PropertyMenuWithVisualization.js +5 -5
  473. package/lib/esm/components/Properties/PropertyMenuWithVisualization.js.map +1 -1
  474. package/lib/esm/components/Properties/PropertyNameCell.d.ts +1 -1
  475. package/lib/esm/components/Properties/PropertyNameCell.js +4 -4
  476. package/lib/esm/components/Properties/PropertyNameCell.js.map +1 -1
  477. package/lib/esm/components/Properties/PropertyTable.js +5 -6
  478. package/lib/esm/components/Properties/PropertyTable.js.map +1 -1
  479. package/lib/esm/components/Properties/PropertyTableToolbar.d.ts +1 -1
  480. package/lib/esm/components/Properties/PropertyTableToolbar.js +4 -4
  481. package/lib/esm/components/Properties/PropertyTableToolbar.js.map +1 -1
  482. package/lib/esm/components/Properties/hooks/useFormulaValidation.js +3 -3
  483. package/lib/esm/components/Properties/hooks/useFormulaValidation.js.map +1 -1
  484. package/lib/esm/components/Properties/hooks/usePropertiesQuery.js.map +1 -1
  485. package/lib/esm/components/Properties/hooks/useValidator.js +4 -4
  486. package/lib/esm/components/Properties/hooks/useValidator.js.map +1 -1
  487. package/lib/esm/components/SharedComponents/ActionPanel.d.ts +1 -1
  488. package/lib/esm/components/SharedComponents/ActionPanel.js +9 -10
  489. package/lib/esm/components/SharedComponents/ActionPanel.js.map +1 -1
  490. package/lib/esm/components/SharedComponents/DeleteModal.d.ts +1 -1
  491. package/lib/esm/components/SharedComponents/DeleteModal.js +10 -11
  492. package/lib/esm/components/SharedComponents/DeleteModal.js.map +1 -1
  493. package/lib/esm/components/SharedComponents/EmptyMessage.js +4 -4
  494. package/lib/esm/components/SharedComponents/EmptyMessage.js.map +1 -1
  495. package/lib/esm/components/SharedComponents/LoadingOverlay.js +4 -4
  496. package/lib/esm/components/SharedComponents/LoadingOverlay.js.map +1 -1
  497. package/lib/esm/components/SharedComponents/LoadingSpinner.js +3 -3
  498. package/lib/esm/components/SharedComponents/LoadingSpinner.js.map +1 -1
  499. package/lib/esm/components/SharedComponents/StatusIcon.js +3 -3
  500. package/lib/esm/components/SharedComponents/StatusIcon.js.map +1 -1
  501. package/lib/esm/components/context/ExtractionClientContext.js.map +1 -1
  502. package/lib/esm/components/context/ExtractionStateJobContext.js +3 -3
  503. package/lib/esm/components/context/ExtractionStateJobContext.js.map +1 -1
  504. package/lib/esm/components/context/GroupHilitedElementsContext.js +3 -3
  505. package/lib/esm/components/context/GroupHilitedElementsContext.js.map +1 -1
  506. package/lib/esm/components/context/GroupingApiConfigContext.js.map +1 -1
  507. package/lib/esm/components/context/GroupingMappingCustomUIContext.js +3 -3
  508. package/lib/esm/components/context/GroupingMappingCustomUIContext.js.map +1 -1
  509. package/lib/esm/components/context/GroupsClientContext.js.map +1 -1
  510. package/lib/esm/components/context/IModelsClientContext.js.map +1 -1
  511. package/lib/esm/components/context/ITwinsClientContext.js +3 -3
  512. package/lib/esm/components/context/ITwinsClientContext.js.map +1 -1
  513. package/lib/esm/components/context/MappingClientContext.js.map +1 -1
  514. package/lib/esm/components/context/PropertiesClientContext.js.map +1 -1
  515. package/lib/esm/components/context/PropertiesGroupColorContext.js +3 -3
  516. package/lib/esm/components/context/PropertiesGroupColorContext.js.map +1 -1
  517. package/lib/esm/components/context/PropertyGridWrapperContext.js +3 -3
  518. package/lib/esm/components/context/PropertyGridWrapperContext.js.map +1 -1
  519. package/lib/esm/components/customUI/DefaultGroupingUI.js +3 -3
  520. package/lib/esm/components/customUI/DefaultGroupingUI.js.map +1 -1
  521. package/lib/esm/components/customUI/GroupQueryBuilderCustomUI.d.ts +1 -1
  522. package/lib/esm/components/customUI/GroupQueryBuilderCustomUI.js +14 -19
  523. package/lib/esm/components/customUI/GroupQueryBuilderCustomUI.js.map +1 -1
  524. package/lib/esm/components/customUI/GroupingMappingCustomUI.js.map +1 -1
  525. package/lib/esm/components/customUI/ManualGroupingCustomUI.d.ts +1 -1
  526. package/lib/esm/components/customUI/ManualGroupingCustomUI.js +8 -8
  527. package/lib/esm/components/customUI/ManualGroupingCustomUI.js.map +1 -1
  528. package/lib/esm/components/customUI/SearchGroupingCustomUI.d.ts +1 -1
  529. package/lib/esm/components/customUI/SearchGroupingCustomUI.js +16 -45
  530. package/lib/esm/components/customUI/SearchGroupingCustomUI.js.map +1 -1
  531. package/lib/esm/decorators/BboxDimensionsDecorator.js +5 -12
  532. package/lib/esm/decorators/BboxDimensionsDecorator.js.map +1 -1
  533. package/lib/esm/formula/FormulaDataTypeResolver.js +3 -3
  534. package/lib/esm/formula/FormulaDataTypeResolver.js.map +1 -1
  535. package/lib/esm/formula/FormulaFunctionProvider.js +146 -65
  536. package/lib/esm/formula/FormulaFunctionProvider.js.map +1 -1
  537. package/lib/esm/formula/FormulaOperatorsProvider.js +138 -44
  538. package/lib/esm/formula/FormulaOperatorsProvider.js.map +1 -1
  539. package/lib/esm/formula/FormulaSplitter.js +63 -13
  540. package/lib/esm/formula/FormulaSplitter.js.map +1 -1
  541. package/lib/esm/formula/FormulaTokensDataTypeResolver.js +7 -14
  542. package/lib/esm/formula/FormulaTokensDataTypeResolver.js.map +1 -1
  543. package/lib/esm/formula/IResult.js.map +1 -1
  544. package/lib/esm/formula/InfixToPostfixConverter.js +5 -5
  545. package/lib/esm/formula/InfixToPostfixConverter.js.map +1 -1
  546. package/lib/esm/formula/InputStream.js +3 -3
  547. package/lib/esm/formula/InputStream.js.map +1 -1
  548. package/lib/esm/formula/ParenthesisValidator.js +3 -3
  549. package/lib/esm/formula/ParenthesisValidator.js.map +1 -1
  550. package/lib/esm/formula/Queue.js +3 -3
  551. package/lib/esm/formula/Queue.js.map +1 -1
  552. package/lib/esm/formula/Stack.js +3 -3
  553. package/lib/esm/formula/Stack.js.map +1 -1
  554. package/lib/esm/formula/StringBuilder.js +3 -3
  555. package/lib/esm/formula/StringBuilder.js.map +1 -1
  556. package/lib/esm/formula/Types.js.map +1 -1
  557. package/lib/esm/formula/Utils.js +4 -4
  558. package/lib/esm/formula/Utils.js.map +1 -1
  559. package/lib/esm/grouping-mapping-widget.d.ts +4 -4
  560. package/lib/esm/grouping-mapping-widget.js +7 -7
  561. package/lib/esm/grouping-mapping-widget.js.map +1 -1
  562. package/lib/esm/test/GroupPropertyUtils.test.js +28 -27
  563. package/lib/esm/test/GroupPropertyUtils.test.js.map +1 -1
  564. package/lib/esm/test/GroupingMappingCustomUI.test.js +4 -6
  565. package/lib/esm/test/GroupingMappingCustomUI.test.js.map +1 -1
  566. package/lib/esm/test/MockFactory.js +3 -3
  567. package/lib/esm/test/MockFactory.js.map +1 -1
  568. package/lib/esm/test/PropertyFieldsHelpers.js +3 -3
  569. package/lib/esm/test/PropertyFieldsHelpers.js.map +1 -1
  570. package/lib/esm/test/QueryBuilder.test.js +3 -3
  571. package/lib/esm/test/QueryBuilder.test.js.map +1 -1
  572. package/lib/esm/test/QueryBuilder.testdata.js +3 -3
  573. package/lib/esm/test/QueryBuilder.testdata.js.map +1 -1
  574. package/lib/esm/test/QueryBuilderTestData.js.map +1 -1
  575. package/lib/esm/test/WidgetHeader.test.js +3 -3
  576. package/lib/esm/test/WidgetHeader.test.js.map +1 -1
  577. package/lib/esm/test/test-utils.js +4 -4
  578. package/lib/esm/test/test-utils.js.map +1 -1
  579. package/package.json +8 -4
@@ -1 +1 @@
1
- {"version":3,"file":"Types.js","sourceRoot":"","sources":["../../../src/formula/Types.ts"],"names":[],"mappings":"","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/**\n * @public\n */\nexport type ValueType = number | string | boolean;\n\n/**\n * @public\n */\nexport type PossibleValueType = ValueType | undefined;\n\n/**\n * @public\n */\nexport type DataType = \"Double\" | \"String\" | \"Boolean\" | \"Integer\";\n/**\n * @public\n */\nexport type PossibleDataType = DataType | \"Undefined\";\n\n/**\n * @public\n */\nexport interface PropertyMap { [key: string]: PossibleDataType }\n"]}
1
+ {"version":3,"file":"Types.js","sourceRoot":"","sources":["../../../src/formula/Types.ts"],"names":[],"mappings":"","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/**\n * @public\n */\nexport type ValueType = number | string | boolean;\n\n/**\n * @public\n */\nexport type PossibleValueType = ValueType | undefined;\n\n/**\n * @public\n */\nexport type DataType = \"Double\" | \"String\" | \"Boolean\" | \"Integer\";\n/**\n * @public\n */\nexport type PossibleDataType = DataType | \"Undefined\";\n\n/**\n * @public\n */\nexport interface PropertyMap {\n [key: string]: PossibleDataType;\n}\n"]}
@@ -1,7 +1,7 @@
1
1
  /*---------------------------------------------------------------------------------------------
2
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
- * See LICENSE.md in the project root for license terms and full copyright notice.
4
- *--------------------------------------------------------------------------------------------*/
2
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
+ * See LICENSE.md in the project root for license terms and full copyright notice.
4
+ *--------------------------------------------------------------------------------------------*/
5
5
  export function isDigit(char) {
6
6
  return /^\d/.test(char);
7
7
  }
@@ -9,7 +9,7 @@ export function isLetterOrUnderscore(char) {
9
9
  return /^[\p{L}_]/u.test(char);
10
10
  }
11
11
  export function isStringDelimiter(char) {
12
- return ["\"", "'", "`"].includes(char);
12
+ return ['"', "'", "`"].includes(char);
13
13
  }
14
14
  export function isWhitespace(char) {
15
15
  return /^\s/.test(char);
@@ -1 +1 @@
1
- {"version":3,"file":"Utils.js","sourceRoot":"","sources":["../../../src/formula/Utils.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F,MAAM,UAAU,OAAO,CAAC,IAAY;IAClC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,IAAY;IAC/C,OAAO,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACjC,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,IAAY;IAC5C,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,OAAO,IAAI,KAAK,GAAG,CAAC;AACtB,CAAC;AAED,MAAM,UAAU,6BAA6B,CAAC,GAAW;IACvD,MAAM,GAAG,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC;IAC3B,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,KAAK,EAAE;QACjC,OAAO,GAAG,GAAG,IAAI,CAAC;IACpB,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,KAAK,EAAE;QACjC,OAAO,GAAG,GAAG,IAAI,CAAC;IACpB,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,KAAK,EAAE;QACjC,OAAO,GAAG,GAAG,IAAI,CAAC;IAEpB,OAAO,GAAG,GAAG,IAAI,CAAC;AACpB,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\nexport function isDigit(char: string): boolean {\n return /^\\d/.test(char);\n}\n\nexport function isLetterOrUnderscore(char: string): boolean {\n return /^[\\p{L}_]/u.test(char);\n}\n\nexport function isStringDelimiter(char: string): boolean {\n return [\"\\\"\", \"'\", \"`\"].includes(char);\n}\n\nexport function isWhitespace(char: string): boolean {\n return /^\\s/.test(char);\n}\n\nexport function isDecimalSeparator(char: string): boolean {\n return char === \".\";\n}\n\nexport function formatNumericalPositionString(num: number): string {\n const str = num.toString();\n if (str.endsWith(\"1\") && num !== 11)\n return `${str}st`;\n if (str.endsWith(\"2\") && num !== 12)\n return `${str}nd`;\n if (str.endsWith(\"3\") && num !== 13)\n return `${str}rd`;\n\n return `${str}th`;\n}\n"]}
1
+ {"version":3,"file":"Utils.js","sourceRoot":"","sources":["../../../src/formula/Utils.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG,MAAM,UAAU,OAAO,CAAC,IAAY;IAClC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,IAAY;IAC/C,OAAO,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACjC,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,IAAY;IAC5C,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AACxC,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,OAAO,IAAI,KAAK,GAAG,CAAC;AACtB,CAAC;AAED,MAAM,UAAU,6BAA6B,CAAC,GAAW;IACvD,MAAM,GAAG,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC;IAC3B,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,KAAK,EAAE;QAAE,OAAO,GAAG,GAAG,IAAI,CAAC;IACvD,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,KAAK,EAAE;QAAE,OAAO,GAAG,GAAG,IAAI,CAAC;IACvD,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,KAAK,EAAE;QAAE,OAAO,GAAG,GAAG,IAAI,CAAC;IAEvD,OAAO,GAAG,GAAG,IAAI,CAAC;AACpB,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\nexport function isDigit(char: string): boolean {\n return /^\\d/.test(char);\n}\n\nexport function isLetterOrUnderscore(char: string): boolean {\n return /^[\\p{L}_]/u.test(char);\n}\n\nexport function isStringDelimiter(char: string): boolean {\n return ['\"', \"'\", \"`\"].includes(char);\n}\n\nexport function isWhitespace(char: string): boolean {\n return /^\\s/.test(char);\n}\n\nexport function isDecimalSeparator(char: string): boolean {\n return char === \".\";\n}\n\nexport function formatNumericalPositionString(num: number): string {\n const str = num.toString();\n if (str.endsWith(\"1\") && num !== 11) return `${str}st`;\n if (str.endsWith(\"2\") && num !== 12) return `${str}nd`;\n if (str.endsWith(\"3\") && num !== 13) return `${str}rd`;\n\n return `${str}th`;\n}\n"]}
@@ -3,8 +3,8 @@ export * from "./WidgetShell/GroupingMappingWidget";
3
3
  /** Interfaces for providing custom MappingClient and API configuration */
4
4
  export { createDefaultMappingClient, createMappingClient, MappingClientContext, useMappingClient } from "./components/context/MappingClientContext";
5
5
  export { createDefaultGroupsClient, createGroupsClient, GroupsClientContext, useGroupsClient } from "./components/context/GroupsClientContext";
6
- export { createDefaultPropertiesClient, createPropertiesClient, PropertiesClientContext, usePropertiesClient } from "./components/context/PropertiesClientContext";
7
- export { ClientPrefix, GetAccessTokenFn, GroupingMappingApiConfig, GroupingMappingApiConfigContext, useGroupingMappingApiConfig } from "./components/context/GroupingApiConfigContext";
6
+ export { createDefaultPropertiesClient, createPropertiesClient, PropertiesClientContext, usePropertiesClient, } from "./components/context/PropertiesClientContext";
7
+ export { ClientPrefix, GetAccessTokenFn, GroupingMappingApiConfig, GroupingMappingApiConfigContext, useGroupingMappingApiConfig, } from "./components/context/GroupingApiConfigContext";
8
8
  export * from "@itwin/insights-client";
9
9
  /** Internal components for custom UIs */
10
10
  export { Mappings, MappingsProps } from "./components/Mappings/Mappings";
@@ -21,12 +21,12 @@ export { PropertyMenu, PropertyMenuProps } from "./components/Properties/Propert
21
21
  export { PropertyMenuWithVisualization, PropertyMenuWithVisualizationProps } from "./components/Properties/PropertyMenuWithVisualization";
22
22
  export { GroupPropertyAction, GroupPropertyActionProps } from "./components/Properties/GroupProperties/GroupPropertyAction";
23
23
  export { CalculatedPropertyAction, CalculatedPropertyActionProps } from "./components/Properties/CalculatedProperties/CalculatedPropertyAction";
24
- export { CalculatedPropertyActionWithVisuals, CalculatedPropertyActionWithVisualsProps } from "./components/Properties/CalculatedProperties/CalculatedPropertyActionWithVisuals";
24
+ export { CalculatedPropertyActionWithVisuals, CalculatedPropertyActionWithVisualsProps, } from "./components/Properties/CalculatedProperties/CalculatedPropertyActionWithVisuals";
25
25
  export { CustomCalculationAction, CustomCalculationActionProps } from "./components/Properties/CustomCalculations/CustomCalculationAction";
26
26
  export { SearchGroupingCustomUI } from "./components/customUI/SearchGroupingCustomUI";
27
27
  export { ManualGroupingCustomUI } from "./components/customUI/ManualGroupingCustomUI";
28
28
  export { GroupQueryBuilderCustomUI } from "./components/customUI/GroupQueryBuilderCustomUI";
29
- export { GroupingMappingCustomUI, GroupingMappingCustomUIType, ContextCustomUI, GroupingCustomUI, GroupingCustomUIProps, ContextCustomUIProps } from "./components/customUI/GroupingMappingCustomUI";
29
+ export { GroupingMappingCustomUI, GroupingMappingCustomUIType, ContextCustomUI, GroupingCustomUI, GroupingCustomUIProps, ContextCustomUIProps, } from "./components/customUI/GroupingMappingCustomUI";
30
30
  /** Formula DataType resolver */
31
31
  export { resolveFormulaDataType } from "./formula/FormulaDataTypeResolver";
32
32
  export { DataType, PropertyMap } from "./formula/Types";
@@ -1,14 +1,14 @@
1
1
  /*---------------------------------------------------------------------------------------------
2
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
- * See LICENSE.md in the project root for license terms and full copyright notice.
4
- *--------------------------------------------------------------------------------------------*/
2
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
+ * See LICENSE.md in the project root for license terms and full copyright notice.
4
+ *--------------------------------------------------------------------------------------------*/
5
5
  /** UI Provider for iTwin Viewer Applications */
6
6
  export * from "./WidgetShell/GroupingMappingWidget";
7
7
  /** Interfaces for providing custom MappingClient and API configuration */
8
8
  export { createDefaultMappingClient, createMappingClient, MappingClientContext, useMappingClient } from "./components/context/MappingClientContext";
9
9
  export { createDefaultGroupsClient, createGroupsClient, GroupsClientContext, useGroupsClient } from "./components/context/GroupsClientContext";
10
- export { createDefaultPropertiesClient, createPropertiesClient, PropertiesClientContext, usePropertiesClient } from "./components/context/PropertiesClientContext";
11
- export { GroupingMappingApiConfigContext, useGroupingMappingApiConfig } from "./components/context/GroupingApiConfigContext";
10
+ export { createDefaultPropertiesClient, createPropertiesClient, PropertiesClientContext, usePropertiesClient, } from "./components/context/PropertiesClientContext";
11
+ export { GroupingMappingApiConfigContext, useGroupingMappingApiConfig, } from "./components/context/GroupingApiConfigContext";
12
12
  export * from "@itwin/insights-client";
13
13
  /** Internal components for custom UIs */
14
14
  export { Mappings } from "./components/Mappings/Mappings";
@@ -25,12 +25,12 @@ export { PropertyMenu } from "./components/Properties/PropertyMenu";
25
25
  export { PropertyMenuWithVisualization } from "./components/Properties/PropertyMenuWithVisualization";
26
26
  export { GroupPropertyAction } from "./components/Properties/GroupProperties/GroupPropertyAction";
27
27
  export { CalculatedPropertyAction } from "./components/Properties/CalculatedProperties/CalculatedPropertyAction";
28
- export { CalculatedPropertyActionWithVisuals } from "./components/Properties/CalculatedProperties/CalculatedPropertyActionWithVisuals";
28
+ export { CalculatedPropertyActionWithVisuals, } from "./components/Properties/CalculatedProperties/CalculatedPropertyActionWithVisuals";
29
29
  export { CustomCalculationAction } from "./components/Properties/CustomCalculations/CustomCalculationAction";
30
30
  export { SearchGroupingCustomUI } from "./components/customUI/SearchGroupingCustomUI";
31
31
  export { ManualGroupingCustomUI } from "./components/customUI/ManualGroupingCustomUI";
32
32
  export { GroupQueryBuilderCustomUI } from "./components/customUI/GroupQueryBuilderCustomUI";
33
- export { GroupingMappingCustomUIType } from "./components/customUI/GroupingMappingCustomUI";
33
+ export { GroupingMappingCustomUIType, } from "./components/customUI/GroupingMappingCustomUI";
34
34
  /** Formula DataType resolver */
35
35
  export { resolveFormulaDataType } from "./formula/FormulaDataTypeResolver";
36
36
  //# sourceMappingURL=grouping-mapping-widget.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"grouping-mapping-widget.js","sourceRoot":"","sources":["../../src/grouping-mapping-widget.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F,gDAAgD;AAChD,cAAc,qCAAqC,CAAC;AAEpD,0EAA0E;AAC1E,OAAO,EAAE,0BAA0B,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAC;AACpJ,OAAO,EAAE,yBAAyB,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAC/I,OAAO,EAAE,6BAA6B,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,MAAM,8CAA8C,CAAC;AACnK,OAAO,EAA4D,+BAA+B,EAAE,2BAA2B,EAAE,MAAM,+CAA+C,CAAC;AACvL,cAAc,wBAAwB,CAAC;AAEvC,yCAAyC;AACzC,OAAO,EAAE,QAAQ,EAAiB,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAA2B,MAAM,mDAAmD,CAAC;AACnH,OAAO,EAAE,aAAa,EAAsB,MAAM,6CAA6C,CAAC;AAChG,OAAO,EAAE,YAAY,EAAqB,MAAM,oCAAoC,CAAC;AACrF,OAAO,EAAE,mBAAmB,EAAyB,MAAM,+CAA+C,CAAC;AAC3G,OAAO,EAAE,UAAU,EAAmB,MAAM,gCAAgC,CAAC;AAC7E,OAAO,EAAE,sBAAsB,EAA+B,MAAM,qCAAqC,CAAC;AAC1G,OAAO,EAAE,MAAM,EAAe,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,mBAAmB,EAA4B,MAAM,yCAAyC,CAAC;AACxG,OAAO,EAAE,WAAW,EAAoB,MAAM,yCAAyC,CAAC;AACxF,OAAO,EAAE,YAAY,EAAqB,MAAM,sCAAsC,CAAC;AACvF,OAAO,EAAE,6BAA6B,EAAsC,MAAM,uDAAuD,CAAC;AAC1I,OAAO,EAAE,mBAAmB,EAA4B,MAAM,6DAA6D,CAAC;AAC5H,OAAO,EAAE,wBAAwB,EAAiC,MAAM,uEAAuE,CAAC;AAChJ,OAAO,EAAE,mCAAmC,EAA4C,MAAM,kFAAkF,CAAC;AACjL,OAAO,EAAE,uBAAuB,EAAgC,MAAM,oEAAoE,CAAC;AAC3I,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,yBAAyB,EAAE,MAAM,iDAAiD,CAAC;AAC5F,OAAO,EAA2B,2BAA2B,EAAkF,MAAM,+CAA+C,CAAC;AAErM,gCAAgC;AAChC,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** UI Provider for iTwin Viewer Applications */\nexport * from \"./WidgetShell/GroupingMappingWidget\";\n\n/** Interfaces for providing custom MappingClient and API configuration */\nexport { createDefaultMappingClient, createMappingClient, MappingClientContext, useMappingClient } from \"./components/context/MappingClientContext\";\nexport { createDefaultGroupsClient, createGroupsClient, GroupsClientContext, useGroupsClient } from \"./components/context/GroupsClientContext\";\nexport { createDefaultPropertiesClient, createPropertiesClient, PropertiesClientContext, usePropertiesClient } from \"./components/context/PropertiesClientContext\";\nexport { ClientPrefix, GetAccessTokenFn, GroupingMappingApiConfig, GroupingMappingApiConfigContext, useGroupingMappingApiConfig } from \"./components/context/GroupingApiConfigContext\";\nexport * from \"@itwin/insights-client\";\n\n/** Internal components for custom UIs */\nexport { Mappings, MappingsProps } from \"./components/Mappings/Mappings\";\nexport { useMappingsOperations, MappingsOperationsProps } from \"./components/Mappings/hooks/useMappingsOperations\";\nexport { MappingAction, MappingActionProps } from \"./components/Mappings/Editing/MappingAction\";\nexport { MappingsView, MappingsViewProps } from \"./components/Mappings/MappingsView\";\nexport { useGroupsOperations, GroupsOperationsProps } from \"./components/Groups/hooks/useGroupsOperations\";\nexport { GroupsView, GroupsViewProps } from \"./components/Groups/GroupsView\";\nexport { GroupingMappingContext, GroupingMappingContextProps } from \"./components/GroupingMappingContext\";\nexport { Groups, GroupsProps } from \"./components/Groups/Groups\";\nexport { GroupsVisualization, GroupsVisualizationProps } from \"./components/Groups/GroupsVisualization\";\nexport { GroupAction, GroupActionProps } from \"./components/Groups/Editing/GroupAction\";\nexport { PropertyMenu, PropertyMenuProps } from \"./components/Properties/PropertyMenu\";\nexport { PropertyMenuWithVisualization, PropertyMenuWithVisualizationProps } from \"./components/Properties/PropertyMenuWithVisualization\";\nexport { GroupPropertyAction, GroupPropertyActionProps } from \"./components/Properties/GroupProperties/GroupPropertyAction\";\nexport { CalculatedPropertyAction, CalculatedPropertyActionProps } from \"./components/Properties/CalculatedProperties/CalculatedPropertyAction\";\nexport { CalculatedPropertyActionWithVisuals, CalculatedPropertyActionWithVisualsProps } from \"./components/Properties/CalculatedProperties/CalculatedPropertyActionWithVisuals\";\nexport { CustomCalculationAction, CustomCalculationActionProps } from \"./components/Properties/CustomCalculations/CustomCalculationAction\";\nexport { SearchGroupingCustomUI } from \"./components/customUI/SearchGroupingCustomUI\";\nexport { ManualGroupingCustomUI } from \"./components/customUI/ManualGroupingCustomUI\";\nexport { GroupQueryBuilderCustomUI } from \"./components/customUI/GroupQueryBuilderCustomUI\";\nexport { GroupingMappingCustomUI, GroupingMappingCustomUIType, ContextCustomUI, GroupingCustomUI, GroupingCustomUIProps, ContextCustomUIProps } from \"./components/customUI/GroupingMappingCustomUI\";\n\n/** Formula DataType resolver */\nexport { resolveFormulaDataType } from \"./formula/FormulaDataTypeResolver\";\nexport { DataType, PropertyMap } from \"./formula/Types\";\nexport { IResult } from \"./formula/IResult\";\n"]}
1
+ {"version":3,"file":"grouping-mapping-widget.js","sourceRoot":"","sources":["../../src/grouping-mapping-widget.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG,gDAAgD;AAChD,cAAc,qCAAqC,CAAC;AAEpD,0EAA0E;AAC1E,OAAO,EAAE,0BAA0B,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAC;AACpJ,OAAO,EAAE,yBAAyB,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAC/I,OAAO,EACL,6BAA6B,EAC7B,sBAAsB,EACtB,uBAAuB,EACvB,mBAAmB,GACpB,MAAM,8CAA8C,CAAC;AACtD,OAAO,EAIL,+BAA+B,EAC/B,2BAA2B,GAC5B,MAAM,+CAA+C,CAAC;AACvD,cAAc,wBAAwB,CAAC;AAEvC,yCAAyC;AACzC,OAAO,EAAE,QAAQ,EAAiB,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAA2B,MAAM,mDAAmD,CAAC;AACnH,OAAO,EAAE,aAAa,EAAsB,MAAM,6CAA6C,CAAC;AAChG,OAAO,EAAE,YAAY,EAAqB,MAAM,oCAAoC,CAAC;AACrF,OAAO,EAAE,mBAAmB,EAAyB,MAAM,+CAA+C,CAAC;AAC3G,OAAO,EAAE,UAAU,EAAmB,MAAM,gCAAgC,CAAC;AAC7E,OAAO,EAAE,sBAAsB,EAA+B,MAAM,qCAAqC,CAAC;AAC1G,OAAO,EAAE,MAAM,EAAe,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,mBAAmB,EAA4B,MAAM,yCAAyC,CAAC;AACxG,OAAO,EAAE,WAAW,EAAoB,MAAM,yCAAyC,CAAC;AACxF,OAAO,EAAE,YAAY,EAAqB,MAAM,sCAAsC,CAAC;AACvF,OAAO,EAAE,6BAA6B,EAAsC,MAAM,uDAAuD,CAAC;AAC1I,OAAO,EAAE,mBAAmB,EAA4B,MAAM,6DAA6D,CAAC;AAC5H,OAAO,EAAE,wBAAwB,EAAiC,MAAM,uEAAuE,CAAC;AAChJ,OAAO,EACL,mCAAmC,GAEpC,MAAM,kFAAkF,CAAC;AAC1F,OAAO,EAAE,uBAAuB,EAAgC,MAAM,oEAAoE,CAAC;AAC3I,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,yBAAyB,EAAE,MAAM,iDAAiD,CAAC;AAC5F,OAAO,EAEL,2BAA2B,GAK5B,MAAM,+CAA+C,CAAC;AAEvD,gCAAgC;AAChC,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** UI Provider for iTwin Viewer Applications */\nexport * from \"./WidgetShell/GroupingMappingWidget\";\n\n/** Interfaces for providing custom MappingClient and API configuration */\nexport { createDefaultMappingClient, createMappingClient, MappingClientContext, useMappingClient } from \"./components/context/MappingClientContext\";\nexport { createDefaultGroupsClient, createGroupsClient, GroupsClientContext, useGroupsClient } from \"./components/context/GroupsClientContext\";\nexport {\n createDefaultPropertiesClient,\n createPropertiesClient,\n PropertiesClientContext,\n usePropertiesClient,\n} from \"./components/context/PropertiesClientContext\";\nexport {\n ClientPrefix,\n GetAccessTokenFn,\n GroupingMappingApiConfig,\n GroupingMappingApiConfigContext,\n useGroupingMappingApiConfig,\n} from \"./components/context/GroupingApiConfigContext\";\nexport * from \"@itwin/insights-client\";\n\n/** Internal components for custom UIs */\nexport { Mappings, MappingsProps } from \"./components/Mappings/Mappings\";\nexport { useMappingsOperations, MappingsOperationsProps } from \"./components/Mappings/hooks/useMappingsOperations\";\nexport { MappingAction, MappingActionProps } from \"./components/Mappings/Editing/MappingAction\";\nexport { MappingsView, MappingsViewProps } from \"./components/Mappings/MappingsView\";\nexport { useGroupsOperations, GroupsOperationsProps } from \"./components/Groups/hooks/useGroupsOperations\";\nexport { GroupsView, GroupsViewProps } from \"./components/Groups/GroupsView\";\nexport { GroupingMappingContext, GroupingMappingContextProps } from \"./components/GroupingMappingContext\";\nexport { Groups, GroupsProps } from \"./components/Groups/Groups\";\nexport { GroupsVisualization, GroupsVisualizationProps } from \"./components/Groups/GroupsVisualization\";\nexport { GroupAction, GroupActionProps } from \"./components/Groups/Editing/GroupAction\";\nexport { PropertyMenu, PropertyMenuProps } from \"./components/Properties/PropertyMenu\";\nexport { PropertyMenuWithVisualization, PropertyMenuWithVisualizationProps } from \"./components/Properties/PropertyMenuWithVisualization\";\nexport { GroupPropertyAction, GroupPropertyActionProps } from \"./components/Properties/GroupProperties/GroupPropertyAction\";\nexport { CalculatedPropertyAction, CalculatedPropertyActionProps } from \"./components/Properties/CalculatedProperties/CalculatedPropertyAction\";\nexport {\n CalculatedPropertyActionWithVisuals,\n CalculatedPropertyActionWithVisualsProps,\n} from \"./components/Properties/CalculatedProperties/CalculatedPropertyActionWithVisuals\";\nexport { CustomCalculationAction, CustomCalculationActionProps } from \"./components/Properties/CustomCalculations/CustomCalculationAction\";\nexport { SearchGroupingCustomUI } from \"./components/customUI/SearchGroupingCustomUI\";\nexport { ManualGroupingCustomUI } from \"./components/customUI/ManualGroupingCustomUI\";\nexport { GroupQueryBuilderCustomUI } from \"./components/customUI/GroupQueryBuilderCustomUI\";\nexport {\n GroupingMappingCustomUI,\n GroupingMappingCustomUIType,\n ContextCustomUI,\n GroupingCustomUI,\n GroupingCustomUIProps,\n ContextCustomUIProps,\n} from \"./components/customUI/GroupingMappingCustomUI\";\n\n/** Formula DataType resolver */\nexport { resolveFormulaDataType } from \"./formula/FormulaDataTypeResolver\";\nexport { DataType, PropertyMap } from \"./formula/Types\";\nexport { IResult } from \"./formula/IResult\";\n"]}
@@ -1,5 +1,5 @@
1
1
  import { convertPresentationFields, convertToECProperties, findProperties } from "../components/Properties/GroupProperties/GroupPropertyUtils";
2
- import { createTestECClassInfo, createTestNestedContentField, createTestPropertiesContentField, createTestPropertyInfo, createTestRelatedClassInfo } from "./PropertyFieldsHelpers";
2
+ import { createTestECClassInfo, createTestNestedContentField, createTestPropertiesContentField, createTestPropertyInfo, createTestRelatedClassInfo, } from "./PropertyFieldsHelpers";
3
3
  import { assert, expect } from "chai";
4
4
  import { PropertyValueFormat, RelationshipMeaning } from "@itwin/presentation-common";
5
5
  describe("Group properties utilities", () => {
@@ -22,7 +22,8 @@ describe("Group properties utilities", () => {
22
22
  assert.deepEqual(result, expectedResult);
23
23
  });
24
24
  it("multiple primitive properies of different types", () => {
25
- const testProperties = [createTestPropertyInfo({ name: "propString" }),
25
+ const testProperties = [
26
+ createTestPropertyInfo({ name: "propString" }),
26
27
  createTestPropertyInfo({ name: "propInt", type: "int" }),
27
28
  createTestPropertyInfo({ name: "propBool", type: "boolean" }),
28
29
  createTestPropertyInfo({ name: "propEnum", type: "enum" }),
@@ -286,14 +287,16 @@ describe("Group properties utilities", () => {
286
287
  const structContentFieldDescription = {
287
288
  valueFormat: PropertyValueFormat.Struct,
288
289
  typeName: "StructType",
289
- members: [{
290
+ members: [
291
+ {
290
292
  name: "prop1",
291
293
  label: "prop one",
292
294
  type: {
293
295
  typeName: "string",
294
296
  valueFormat: PropertyValueFormat.Primitive,
295
297
  },
296
- }],
298
+ },
299
+ ],
297
300
  };
298
301
  const simpleStructField = createTestPropertiesContentField({ properties: [{ property: structPropertyClass }], type: structContentFieldDescription });
299
302
  const result = convertPresentationFields([simpleStructField]);
@@ -317,7 +320,8 @@ describe("Group properties utilities", () => {
317
320
  const structContentFieldDescription = {
318
321
  valueFormat: PropertyValueFormat.Struct,
319
322
  typeName: "StructType",
320
- members: [{
323
+ members: [
324
+ {
321
325
  name: "prop1",
322
326
  label: "prop one",
323
327
  type: {
@@ -331,16 +335,19 @@ describe("Group properties utilities", () => {
331
335
  type: {
332
336
  typeName: "string",
333
337
  valueFormat: PropertyValueFormat.Struct,
334
- members: [{
338
+ members: [
339
+ {
335
340
  name: "prop2",
336
341
  label: "prop 2",
337
342
  type: {
338
343
  typeName: "string",
339
344
  valueFormat: PropertyValueFormat.Primitive,
340
345
  },
341
- }],
346
+ },
347
+ ],
342
348
  },
343
- }],
349
+ },
350
+ ],
344
351
  };
345
352
  const simpleStructField = createTestPropertiesContentField({ properties: [{ property: structPropertyClass }], type: structContentFieldDescription });
346
353
  const result = convertPresentationFields([simpleStructField]);
@@ -425,9 +432,7 @@ describe("Group properties utilities", () => {
425
432
  displayLabel: "Model",
426
433
  sourceSchema: "*",
427
434
  sourceClassName: "*",
428
- ecPropertyTraversal: [
429
- "Model",
430
- ],
435
+ ecPropertyTraversal: ["Model"],
431
436
  primitiveNavigationClass: "BisCore:ModelContainsElements",
432
437
  actualECClassName: "BisCore:Element",
433
438
  key: "undefined|BisCore:Element|Model",
@@ -454,9 +459,7 @@ describe("Group properties utilities", () => {
454
459
  displayLabel: "Category",
455
460
  sourceSchema: "*",
456
461
  sourceClassName: "*",
457
- ecPropertyTraversal: [
458
- "Category",
459
- ],
462
+ ecPropertyTraversal: ["Category"],
460
463
  primitiveNavigationClass: "BisCore:GeometricElement3dIsInCategory",
461
464
  actualECClassName: "BisCore:GeometricElement3d",
462
465
  key: "undefined|BisCore:GeometricElement3d|Category",
@@ -483,9 +486,7 @@ describe("Group properties utilities", () => {
483
486
  displayLabel: "Physical Material",
484
487
  sourceSchema: "*",
485
488
  sourceClassName: "*",
486
- ecPropertyTraversal: [
487
- "PhysicalMaterial",
488
- ],
489
+ ecPropertyTraversal: ["PhysicalMaterial"],
489
490
  primitiveNavigationClass: "BisCore:PhysicalElementIsOfPhysicalMaterial",
490
491
  actualECClassName: "BisCore:PhysicalElement",
491
492
  key: "undefined|BisCore:PhysicalElement|PhysicalMaterial",
@@ -548,19 +549,19 @@ describe("Group properties utilities", () => {
548
549
  assert.deepEqual(result, propertiesMetaData);
549
550
  });
550
551
  it("can find properties generated from a single property", () => {
551
- const propertiesMetaData = [{
552
+ const propertiesMetaData = [
553
+ {
552
554
  displayLabel: "Model",
553
555
  sourceSchema: "*",
554
556
  sourceClassName: "*",
555
- ecPropertyTraversal: [
556
- "Model",
557
- ],
557
+ ecPropertyTraversal: ["Model"],
558
558
  primitiveNavigationClass: "BisCore:ModelContainsElements",
559
559
  actualECClassName: "BisCore:Element",
560
560
  key: "undefined|BisCore:Element|Model",
561
561
  categoryLabel: "Selected Item",
562
562
  parentPropertyClassName: undefined,
563
- }];
563
+ },
564
+ ];
564
565
  const ecProperties = [
565
566
  {
566
567
  ecSchemaName: "*",
@@ -577,19 +578,19 @@ describe("Group properties utilities", () => {
577
578
  assert.deepEqual(result, propertiesMetaData);
578
579
  });
579
580
  it("cannot find properties generated from a single property in the wrong order", () => {
580
- const propertiesMetaData = [{
581
+ const propertiesMetaData = [
582
+ {
581
583
  displayLabel: "Model",
582
584
  sourceSchema: "*",
583
585
  sourceClassName: "*",
584
- ecPropertyTraversal: [
585
- "Model",
586
- ],
586
+ ecPropertyTraversal: ["Model"],
587
587
  primitiveNavigationClass: "BisCore:ModelContainsElements",
588
588
  actualECClassName: "BisCore:Element",
589
589
  key: "undefined|BisCore:Element|Model",
590
590
  categoryLabel: "Selected Item",
591
591
  parentPropertyClassName: undefined,
592
- }];
592
+ },
593
+ ];
593
594
  const ecProperties = [
594
595
  {
595
596
  ecSchemaName: "*",
@@ -1 +1 @@
1
- {"version":3,"file":"GroupPropertyUtils.test.js","sourceRoot":"","sources":["../../../src/test/GroupPropertyUtils.test.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\nimport type { ECPropertyReference } from \"@itwin/insights-client\";\nimport type { PropertyMetaData } from \"../components/Properties/GroupProperties/GroupPropertyUtils\";\nimport { convertPresentationFields, convertToECProperties, findProperties } from \"../components/Properties/GroupProperties/GroupPropertyUtils\";\nimport { createTestECClassInfo, createTestNestedContentField, createTestPropertiesContentField, createTestPropertyInfo, createTestRelatedClassInfo } from \"./PropertyFieldsHelpers\";\nimport { assert, expect } from \"chai\";\nimport type { NavigationPropertyInfo, StructTypeDescription } from \"@itwin/presentation-common\";\nimport { PropertyValueFormat, RelationshipMeaning } from \"@itwin/presentation-common\";\n\ndescribe(\"Group properties utilities\", () => {\n it(\"one primitive string property\", () => {\n const propertyFields = [createTestPropertiesContentField({ properties: [{ property: createTestPropertyInfo() }] })];\n\n const result = convertPresentationFields(propertyFields);\n\n const expectedResult: PropertyMetaData[] = [\n {\n displayLabel: \"Properties Field\",\n sourceSchema: \"*\",\n sourceClassName: \"*\",\n ecPropertyTraversal: [\"PropertyName\"],\n primitiveNavigationClass: \"\",\n actualECClassName: \"SchemaName:ClassName\",\n parentPropertyClassName: undefined,\n key: \"undefined|SchemaName:ClassName|PropertyName\",\n categoryLabel: \"Test Category\",\n },\n ];\n\n assert.deepEqual(result, expectedResult);\n });\n\n it(\"multiple primitive properies of different types\", () => {\n const testProperties = [createTestPropertyInfo({ name: \"propString\" }),\n createTestPropertyInfo({ name: \"propInt\", type: \"int\" }),\n createTestPropertyInfo({ name: \"propBool\", type: \"boolean\" }),\n createTestPropertyInfo({ name: \"propEnum\", type: \"enum\" }),\n createTestPropertyInfo({ name: \"propLong\", type: \"long\" }),\n createTestPropertyInfo({ name: \"propNumber\", type: \"number\" }),\n ];\n const propertyFields = testProperties.map((p) => createTestPropertiesContentField({ properties: [{ property: p }] }));\n\n const result = convertPresentationFields(propertyFields);\n\n const expectedResult: PropertyMetaData[] = [\n {\n displayLabel: \"Properties Field\",\n sourceSchema: \"*\",\n sourceClassName: \"*\",\n ecPropertyTraversal: [\"propString\"],\n primitiveNavigationClass: \"\",\n actualECClassName: \"SchemaName:ClassName\",\n parentPropertyClassName: undefined,\n key: \"undefined|SchemaName:ClassName|propString\",\n categoryLabel: \"Test Category\",\n },\n {\n displayLabel: \"Properties Field\",\n sourceSchema: \"*\",\n sourceClassName: \"*\",\n ecPropertyTraversal: [\"propInt\"],\n primitiveNavigationClass: \"\",\n actualECClassName: \"SchemaName:ClassName\",\n parentPropertyClassName: undefined,\n key: \"undefined|SchemaName:ClassName|propInt\",\n categoryLabel: \"Test Category\",\n },\n {\n displayLabel: \"Properties Field\",\n sourceSchema: \"*\",\n sourceClassName: \"*\",\n ecPropertyTraversal: [\"propBool\"],\n primitiveNavigationClass: \"\",\n actualECClassName: \"SchemaName:ClassName\",\n parentPropertyClassName: undefined,\n key: \"undefined|SchemaName:ClassName|propBool\",\n categoryLabel: \"Test Category\",\n },\n {\n displayLabel: \"Properties Field\",\n sourceSchema: \"*\",\n sourceClassName: \"*\",\n ecPropertyTraversal: [\"propEnum\"],\n primitiveNavigationClass: \"\",\n actualECClassName: \"SchemaName:ClassName\",\n parentPropertyClassName: undefined,\n key: \"undefined|SchemaName:ClassName|propEnum\",\n categoryLabel: \"Test Category\",\n },\n {\n displayLabel: \"Properties Field\",\n sourceSchema: \"*\",\n sourceClassName: \"*\",\n ecPropertyTraversal: [\"propLong\"],\n primitiveNavigationClass: \"\",\n actualECClassName: \"SchemaName:ClassName\",\n parentPropertyClassName: undefined,\n key: \"undefined|SchemaName:ClassName|propLong\",\n categoryLabel: \"Test Category\",\n },\n {\n displayLabel: \"Properties Field\",\n sourceSchema: \"*\",\n sourceClassName: \"*\",\n ecPropertyTraversal: [\"propNumber\"],\n primitiveNavigationClass: \"\",\n actualECClassName: \"SchemaName:ClassName\",\n parentPropertyClassName: undefined,\n key: \"undefined|SchemaName:ClassName|propNumber\",\n categoryLabel: \"Test Category\",\n },\n ];\n\n assert.deepEqual(result, expectedResult);\n });\n\n it(\"one BisCore:ElementOwnsUniqueAspect nested property\", () => {\n const propertiesField = createTestPropertiesContentField({\n properties: [{ property: createTestPropertyInfo({ name: \"prop1\" }) }],\n });\n\n const nestedAspectField = createTestNestedContentField({\n nestedFields: [propertiesField],\n relationshipMeaning: RelationshipMeaning.SameInstance,\n pathToPrimaryClass: [\n createTestRelatedClassInfo({\n sourceClassInfo: createTestECClassInfo({ name: \"Some:UniqueAspect\" }),\n relationshipInfo: createTestECClassInfo({ name: \"BisCore:ElementOwnsUniqueAspect\" }),\n targetClassInfo: createTestECClassInfo({ name: \"Schema:Class\" }),\n isForwardRelationship: false,\n isPolymorphicRelationship: true,\n }),\n ],\n });\n\n const result = convertPresentationFields([nestedAspectField]);\n\n const expectedResult: PropertyMetaData[] = [\n {\n displayLabel: \"Properties Field\",\n sourceSchema: \"SchemaName\",\n sourceClassName: \"ClassName\",\n ecPropertyTraversal: [\"prop1\"],\n primitiveNavigationClass: \"\",\n actualECClassName: \"SchemaName:ClassName\",\n parentPropertyClassName: \"SchemaName:ClassName\",\n key: \"SchemaName:ClassName|SchemaName:ClassName|prop1\",\n categoryLabel: \"Test Category\",\n },\n ];\n\n assert.deepEqual(result, expectedResult);\n\n });\n\n it(\"one BisCore:ElementOwnsMultiAspects nested property\", () => {\n\n const propertiesField = createTestPropertiesContentField({\n properties: [{ property: createTestPropertyInfo({ name: \"prop1\" }) }],\n });\n\n const nestedAspectField = createTestNestedContentField({\n nestedFields: [propertiesField],\n relationshipMeaning: RelationshipMeaning.SameInstance,\n pathToPrimaryClass: [\n createTestRelatedClassInfo({\n sourceClassInfo: createTestECClassInfo({ name: \"Some:MultiAspect\" }),\n relationshipInfo: createTestECClassInfo({ name: \"BisCore:ElementOwnsMultiAspects\" }),\n targetClassInfo: createTestECClassInfo({ name: \"Schema:Class\" }),\n isForwardRelationship: false,\n isPolymorphicRelationship: true,\n }),\n ],\n });\n\n const result = convertPresentationFields([nestedAspectField]);\n\n const expectedResult: PropertyMetaData[] = [\n {\n displayLabel: \"Properties Field\",\n sourceSchema: \"SchemaName\",\n sourceClassName: \"ClassName\",\n ecPropertyTraversal: [\"prop1\"],\n primitiveNavigationClass: \"\",\n actualECClassName: \"SchemaName:ClassName\",\n parentPropertyClassName: \"SchemaName:ClassName\",\n key: \"SchemaName:ClassName|SchemaName:ClassName|prop1\",\n categoryLabel: \"Test Category\",\n },\n ];\n\n assert.deepEqual(result, expectedResult);\n\n });\n\n it(\"one BisCore:GeometricElement3dHasTypeDefinition nested property\", () => {\n\n const propertiesField = createTestPropertiesContentField({\n properties: [{ property: createTestPropertyInfo({ name: \"prop1\" }) }],\n });\n\n const nestedAspectField = createTestNestedContentField({\n nestedFields: [propertiesField],\n relationshipMeaning: RelationshipMeaning.RelatedInstance,\n pathToPrimaryClass: [\n createTestRelatedClassInfo({\n sourceClassInfo: createTestECClassInfo({ name: \"Schema:SomeType\" }),\n relationshipInfo: createTestECClassInfo({ name: \"BisCore:GeometricElement3dHasTypeDefinition\" }),\n targetClassInfo: createTestECClassInfo({ name: \"Schema:Class\" }),\n isForwardRelationship: false,\n isPolymorphicRelationship: true,\n }),\n ],\n });\n\n const result = convertPresentationFields([nestedAspectField]);\n\n const expectedResult: PropertyMetaData[] = [\n {\n actualECClassName: \"SchemaName:ClassName\",\n categoryLabel: \"Test Category\",\n displayLabel: \"Properties Field\",\n ecPropertyTraversal: [\"TypeDefinition\", \"prop1\"],\n key: \"SchemaName:ClassName|SchemaName:ClassName|TypeDefinition|prop1\",\n parentPropertyClassName: \"SchemaName:ClassName\",\n primitiveNavigationClass: \"\",\n sourceClassName: \"*\",\n sourceSchema: \"*\",\n },\n ];\n\n assert.deepEqual(result, expectedResult);\n\n });\n\n it(\"generate proper external source metadata\", () => {\n\n const propertyName = createTestPropertyInfo({ name: \"name\" });\n const propertyPath = createTestPropertyInfo({ name: \"path\" });\n const repositoryProperties = createTestPropertiesContentField({\n properties: [{ property: propertyName }, { property: propertyPath }],\n });\n\n const nestedExternalSource = createTestNestedContentField({\n nestedFields: [repositoryProperties],\n contentClassInfo: { name: \"BisCore:RepositoryLink\", id: \"\", label: \"\" },\n relationshipMeaning: RelationshipMeaning.SameInstance,\n pathToPrimaryClass: [\n createTestRelatedClassInfo({\n sourceClassInfo: createTestECClassInfo({ name: \"BisCore:ExternalSourceIsInRepository\" }),\n relationshipInfo: createTestECClassInfo({ name: \"BisCore:RepositoryLink\" }),\n targetClassInfo: createTestECClassInfo({ name: \"BisCore:ExternalSource\" }),\n isForwardRelationship: false,\n isPolymorphicRelationship: true,\n }),\n createTestRelatedClassInfo({\n sourceClassInfo: createTestECClassInfo({ name: \"BisCore:ElementIsFromSource\" }),\n relationshipInfo: createTestECClassInfo({ name: \"BisCore:ExternalSource\" }),\n targetClassInfo: createTestECClassInfo({ name: \"BisCore:ExternalSourceAspect\" }),\n isForwardRelationship: false,\n isPolymorphicRelationship: true,\n }),\n ],\n });\n\n const propertiesField = createTestPropertiesContentField({\n properties: [{ property: createTestPropertyInfo({ name: \"Identifier\" }) }],\n });\n\n const nestedSourceAspectField = createTestNestedContentField({\n nestedFields: [propertiesField, nestedExternalSource],\n relationshipMeaning: RelationshipMeaning.SameInstance,\n pathToPrimaryClass: [\n createTestRelatedClassInfo({\n sourceClassInfo: createTestECClassInfo({ name: \"BisCore:ExternalSourceAspect\" }),\n relationshipInfo: createTestECClassInfo({ name: \"BisCore:ElementOwnsMultiAspects\" }),\n targetClassInfo: createTestECClassInfo({ name: \"Schema:Class\" }),\n isForwardRelationship: false,\n isPolymorphicRelationship: true,\n }),\n ],\n });\n\n const result = convertPresentationFields([nestedSourceAspectField]);\n\n const expectedResult: PropertyMetaData[] = [\n {\n displayLabel: \"Properties Field\",\n sourceSchema: \"SchemaName\",\n sourceClassName: \"ClassName\",\n ecPropertyTraversal: [\"Identifier\"],\n primitiveNavigationClass: \"\",\n actualECClassName: \"SchemaName:ClassName\",\n parentPropertyClassName: \"SchemaName:ClassName\",\n key: \"SchemaName:ClassName|SchemaName:ClassName|Identifier\",\n categoryLabel: \"Test Category\",\n },\n {\n displayLabel: \"Properties Field\",\n sourceSchema: \"SchemaName\",\n sourceClassName: \"ClassName\",\n ecPropertyTraversal: [\"Source\", \"Repository\", \"name\"],\n primitiveNavigationClass: \"\",\n actualECClassName: \"SchemaName:ClassName\",\n parentPropertyClassName: \"BisCore:RepositoryLink\",\n key: \"BisCore:RepositoryLink|SchemaName:ClassName|Source|Repository|name\",\n categoryLabel: \"Test Category\",\n },\n {\n displayLabel: \"Properties Field\",\n sourceSchema: \"SchemaName\",\n sourceClassName: \"ClassName\",\n ecPropertyTraversal: [\"Source\", \"Repository\", \"path\"],\n primitiveNavigationClass: \"\",\n actualECClassName: \"SchemaName:ClassName\",\n parentPropertyClassName: \"BisCore:RepositoryLink\",\n key: \"BisCore:RepositoryLink|SchemaName:ClassName|Source|Repository|path\",\n categoryLabel: \"Test Category\",\n },\n ];\n\n assert.deepEqual(result, expectedResult);\n\n });\n\n it(\"handle simple structs correctly\", () => {\n const structPropertyClass = createTestPropertyInfo({ classInfo: { id: \"0\", label: \"\", name: \"Struct:Class\" } });\n\n const structContentFieldDescription: StructTypeDescription = {\n valueFormat: PropertyValueFormat.Struct,\n typeName: \"StructType\",\n members: [{\n name: \"prop1\",\n label: \"prop one\",\n type: {\n typeName: \"string\",\n valueFormat: PropertyValueFormat.Primitive,\n },\n }],\n };\n const simpleStructField = createTestPropertiesContentField({ properties: [{ property: structPropertyClass }], type: structContentFieldDescription });\n\n const result = convertPresentationFields([simpleStructField]);\n\n const expectedResult: PropertyMetaData[] = [\n {\n displayLabel: \"prop one\",\n sourceSchema: \"*\",\n sourceClassName: \"*\",\n ecPropertyTraversal: [\"PropertyName\", \"prop1\"],\n primitiveNavigationClass: \"\",\n actualECClassName: \"Struct:Class\",\n parentPropertyClassName: undefined,\n key: \"undefined|Struct:Class|PropertyName|prop1\",\n categoryLabel: \"Test Category\",\n },\n ];\n\n assert.deepEqual(result, expectedResult);\n }\n );\n\n it(\"handle simple nested structs correctly\", () => {\n const structPropertyClass = createTestPropertyInfo({ classInfo: { id: \"0\", label: \"\", name: \"Struct:Class\" } });\n\n const structContentFieldDescription: StructTypeDescription = {\n valueFormat: PropertyValueFormat.Struct,\n typeName: \"StructType\",\n members: [{\n name: \"prop1\",\n label: \"prop one\",\n type: {\n typeName: \"string\",\n valueFormat: PropertyValueFormat.Primitive,\n },\n },\n {\n name: \"struct1\",\n label: \"struct1\",\n type: {\n typeName: \"string\",\n valueFormat: PropertyValueFormat.Struct,\n members: [{\n name: \"prop2\",\n label: \"prop 2\",\n type: {\n typeName: \"string\",\n valueFormat: PropertyValueFormat.Primitive,\n },\n }],\n },\n }],\n };\n\n const simpleStructField = createTestPropertiesContentField({ properties: [{ property: structPropertyClass }], type: structContentFieldDescription });\n\n const result = convertPresentationFields([simpleStructField]);\n\n const expectedResult: PropertyMetaData[] = [\n {\n displayLabel: \"prop one\",\n sourceSchema: \"*\",\n sourceClassName: \"*\",\n ecPropertyTraversal: [\"PropertyName\", \"prop1\"],\n primitiveNavigationClass: \"\",\n actualECClassName: \"Struct:Class\",\n parentPropertyClassName: undefined,\n key: \"undefined|Struct:Class|PropertyName|prop1\",\n categoryLabel: \"Test Category\",\n },\n {\n displayLabel: \"prop 2\",\n sourceSchema: \"*\",\n sourceClassName: \"*\",\n ecPropertyTraversal: [\"PropertyName\", \"struct1\", \"prop2\"],\n primitiveNavigationClass: \"\",\n actualECClassName: \"Struct:Class\",\n parentPropertyClassName: undefined,\n key: \"undefined|Struct:Class|PropertyName|struct1|prop2\",\n categoryLabel: \"Test Category\",\n },\n ];\n\n assert.deepEqual(result, expectedResult);\n }\n );\n\n it(\"handle primitive navigation (Model)\", () => {\n const modelClassInfo = createTestECClassInfo({ name: \"BisCore:Element\", label: \"Element\" });\n const navigationClassInfo = createTestECClassInfo({ name: \"BisCore:ModelContainsElements\", label: \"ModelContainsElements\" });\n\n const navigationPropertyInfo: NavigationPropertyInfo = {\n classInfo: navigationClassInfo,\n isForwardRelationship: false,\n // Target class does not matter\n targetClassInfo: createTestECClassInfo(),\n isTargetPolymorphic: true,\n\n };\n\n const modelPropertyInfo = createTestPropertyInfo({ name: \"Model\", classInfo: modelClassInfo, type: \"long\", navigationPropertyInfo });\n\n const simpleModelField = createTestPropertiesContentField({ label: \"Model\", properties: [{ property: modelPropertyInfo }] });\n\n const result = convertPresentationFields([simpleModelField]);\n\n const expectedResult: PropertyMetaData[] = [\n {\n displayLabel: \"Model\",\n sourceSchema: \"*\",\n sourceClassName: \"*\",\n ecPropertyTraversal: [\"Model\"],\n primitiveNavigationClass: \"BisCore:ModelContainsElements\",\n actualECClassName: \"BisCore:Element\",\n parentPropertyClassName: undefined,\n key: \"undefined|BisCore:Element|Model\",\n categoryLabel: \"Test Category\",\n },\n ];\n\n assert.deepEqual(result, expectedResult);\n }\n );\n\n it(\"convert PropertyMetaData non primitive navigation into ECProperty\", () => {\n const propertyMetaData: PropertyMetaData = {\n displayLabel: \"A Property\",\n sourceSchema: \"Schema\",\n sourceClassName: \"Class\",\n ecPropertyTraversal: [\"PropertyName\", \"SecondProperty\"],\n primitiveNavigationClass: \"\",\n actualECClassName: \"SchemaName:ClassName\",\n parentPropertyClassName: undefined,\n key: \"undefined|SchemaName:ClassName|PropertyName\",\n categoryLabel: \"Test Category\",\n };\n\n const result = convertToECProperties(propertyMetaData);\n\n const expectedResult: ECPropertyReference[] = [\n {\n ecSchemaName: \"Schema\",\n ecClassName: \"Class\",\n ecPropertyName: \"PropertyName.SecondProperty\",\n },\n ];\n\n assert.deepEqual(result, expectedResult);\n });\n\n it(\"convert Model PropertyMetaData primitive navigation into ECProperty\", () => {\n const propertyMetaData: PropertyMetaData = {\n displayLabel: \"Model\",\n sourceSchema: \"*\",\n sourceClassName: \"*\",\n ecPropertyTraversal: [\n \"Model\",\n ],\n primitiveNavigationClass: \"BisCore:ModelContainsElements\",\n actualECClassName: \"BisCore:Element\",\n key: \"undefined|BisCore:Element|Model\",\n categoryLabel: \"Selected Item\",\n parentPropertyClassName: undefined,\n };\n\n const result = convertToECProperties(propertyMetaData);\n\n const expectedResult: ECPropertyReference[] = [\n {\n ecSchemaName: \"*\",\n ecClassName: \"*\",\n ecPropertyName: \"Model.ModeledElement.UserLabel\",\n },\n {\n ecSchemaName: \"*\",\n ecClassName: \"*\",\n ecPropertyName: \"Model.ModeledElement.CodeValue\",\n },\n ];\n\n assert.deepEqual(result, expectedResult);\n });\n\n it(\"convert Category PropertyMetaData primitive navigation into ECProperty\", () => {\n const propertyMetaData: PropertyMetaData = {\n displayLabel: \"Category\",\n sourceSchema: \"*\",\n sourceClassName: \"*\",\n ecPropertyTraversal: [\n \"Category\",\n ],\n primitiveNavigationClass: \"BisCore:GeometricElement3dIsInCategory\",\n actualECClassName: \"BisCore:GeometricElement3d\",\n key: \"undefined|BisCore:GeometricElement3d|Category\",\n categoryLabel: \"Selected Item\",\n parentPropertyClassName: undefined,\n };\n\n const result = convertToECProperties(propertyMetaData);\n\n const expectedResult: ECPropertyReference[] = [\n {\n ecSchemaName: \"*\",\n ecClassName: \"*\",\n ecPropertyName: \"Category.UserLabel\",\n },\n {\n ecSchemaName: \"*\",\n ecClassName: \"*\",\n ecPropertyName: \"Category.CodeValue\",\n },\n ];\n\n assert.deepEqual(result, expectedResult);\n });\n\n it(\"convert Physical Material PropertyMetaData primitive navigation into an ECProperty\", () => {\n const propertyMetaData: PropertyMetaData = {\n displayLabel: \"Physical Material\",\n sourceSchema: \"*\",\n sourceClassName: \"*\",\n ecPropertyTraversal: [\n \"PhysicalMaterial\",\n ],\n primitiveNavigationClass: \"BisCore:PhysicalElementIsOfPhysicalMaterial\",\n actualECClassName: \"BisCore:PhysicalElement\",\n key: \"undefined|BisCore:PhysicalElement|PhysicalMaterial\",\n categoryLabel: \"Selected Item\",\n parentPropertyClassName: undefined,\n };\n\n const result = convertToECProperties(propertyMetaData);\n\n const expectedResult: ECPropertyReference[] = [\n {\n ecSchemaName: \"*\",\n ecClassName: \"*\",\n ecPropertyName: \"PhysicalMaterial.UserLabel\",\n },\n {\n ecSchemaName: \"*\",\n ecClassName: \"*\",\n ecPropertyName: \"PhysicalMaterial.CodeValue\",\n },\n ];\n\n assert.deepEqual(result, expectedResult);\n });\n\n it(\"find properties correctly\", () => {\n\n const propertiesMetaData: PropertyMetaData[] = [\n {\n displayLabel: \"Properties Field\",\n sourceSchema: \"*\",\n sourceClassName: \"*\",\n ecPropertyTraversal: [\"propString\"],\n primitiveNavigationClass: \"\",\n actualECClassName: \"SchemaName:ClassName\",\n parentPropertyClassName: undefined,\n key: \"undefined|SchemaName:ClassName|propString\",\n categoryLabel: \"Test Category\",\n },\n {\n displayLabel: \"Properties Field\",\n sourceSchema: \"*\",\n sourceClassName: \"*\",\n ecPropertyTraversal: [\"propInt\"],\n primitiveNavigationClass: \"\",\n actualECClassName: \"SchemaName:ClassName\",\n parentPropertyClassName: undefined,\n key: \"undefined|SchemaName:ClassName|propInt\",\n categoryLabel: \"Test Category\",\n },\n ];\n\n const ecProperties: ECPropertyReference[] = [\n {\n ecSchemaName: \"*\",\n ecClassName: \"*\",\n ecPropertyName: \"propString\",\n },\n {\n ecSchemaName: \"*\",\n ecClassName: \"*\",\n ecPropertyName: \"propInt\",\n },\n ];\n\n const result = findProperties(ecProperties, propertiesMetaData);\n\n assert.deepEqual(result, propertiesMetaData);\n\n });\n\n it(\"can find properties generated from a single property\", () => {\n\n const propertiesMetaData: PropertyMetaData[] = [{\n displayLabel: \"Model\",\n sourceSchema: \"*\",\n sourceClassName: \"*\",\n ecPropertyTraversal: [\n \"Model\",\n ],\n primitiveNavigationClass: \"BisCore:ModelContainsElements\",\n actualECClassName: \"BisCore:Element\",\n key: \"undefined|BisCore:Element|Model\",\n categoryLabel: \"Selected Item\",\n parentPropertyClassName: undefined,\n }];\n\n const ecProperties: ECPropertyReference[] = [\n {\n ecSchemaName: \"*\",\n ecClassName: \"*\",\n ecPropertyName: \"Model.ModeledElement.UserLabel\",\n },\n {\n ecSchemaName: \"*\",\n ecClassName: \"*\",\n ecPropertyName: \"Model.ModeledElement.CodeValue\",\n },\n ];\n\n const result = findProperties(ecProperties, propertiesMetaData);\n assert.deepEqual(result, propertiesMetaData);\n\n });\n\n it(\"cannot find properties generated from a single property in the wrong order\", () => {\n\n const propertiesMetaData: PropertyMetaData[] = [{\n displayLabel: \"Model\",\n sourceSchema: \"*\",\n sourceClassName: \"*\",\n ecPropertyTraversal: [\n \"Model\",\n ],\n primitiveNavigationClass: \"BisCore:ModelContainsElements\",\n actualECClassName: \"BisCore:Element\",\n key: \"undefined|BisCore:Element|Model\",\n categoryLabel: \"Selected Item\",\n parentPropertyClassName: undefined,\n }];\n\n const ecProperties: ECPropertyReference[] = [\n {\n ecSchemaName: \"*\",\n ecClassName: \"*\",\n ecPropertyName: \"Model.ModeledElement.CodeValue\",\n },\n {\n ecSchemaName: \"*\",\n ecClassName: \"*\",\n ecPropertyName: \"Model.ModeledElement.UserLabel\",\n },\n ];\n\n const result = findProperties(ecProperties, propertiesMetaData);\n expect(result).to.be.of.length(0);\n });\n\n});\n"]}
1
+ {"version":3,"file":"GroupPropertyUtils.test.js","sourceRoot":"","sources":["../../../src/test/GroupPropertyUtils.test.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\nimport type { ECPropertyReference } from \"@itwin/insights-client\";\nimport type { PropertyMetaData } from \"../components/Properties/GroupProperties/GroupPropertyUtils\";\nimport { convertPresentationFields, convertToECProperties, findProperties } from \"../components/Properties/GroupProperties/GroupPropertyUtils\";\nimport {\n createTestECClassInfo,\n createTestNestedContentField,\n createTestPropertiesContentField,\n createTestPropertyInfo,\n createTestRelatedClassInfo,\n} from \"./PropertyFieldsHelpers\";\nimport { assert, expect } from \"chai\";\nimport type { NavigationPropertyInfo, StructTypeDescription } from \"@itwin/presentation-common\";\nimport { PropertyValueFormat, RelationshipMeaning } from \"@itwin/presentation-common\";\n\ndescribe(\"Group properties utilities\", () => {\n it(\"one primitive string property\", () => {\n const propertyFields = [createTestPropertiesContentField({ properties: [{ property: createTestPropertyInfo() }] })];\n\n const result = convertPresentationFields(propertyFields);\n\n const expectedResult: PropertyMetaData[] = [\n {\n displayLabel: \"Properties Field\",\n sourceSchema: \"*\",\n sourceClassName: \"*\",\n ecPropertyTraversal: [\"PropertyName\"],\n primitiveNavigationClass: \"\",\n actualECClassName: \"SchemaName:ClassName\",\n parentPropertyClassName: undefined,\n key: \"undefined|SchemaName:ClassName|PropertyName\",\n categoryLabel: \"Test Category\",\n },\n ];\n\n assert.deepEqual(result, expectedResult);\n });\n\n it(\"multiple primitive properies of different types\", () => {\n const testProperties = [\n createTestPropertyInfo({ name: \"propString\" }),\n createTestPropertyInfo({ name: \"propInt\", type: \"int\" }),\n createTestPropertyInfo({ name: \"propBool\", type: \"boolean\" }),\n createTestPropertyInfo({ name: \"propEnum\", type: \"enum\" }),\n createTestPropertyInfo({ name: \"propLong\", type: \"long\" }),\n createTestPropertyInfo({ name: \"propNumber\", type: \"number\" }),\n ];\n const propertyFields = testProperties.map((p) => createTestPropertiesContentField({ properties: [{ property: p }] }));\n\n const result = convertPresentationFields(propertyFields);\n\n const expectedResult: PropertyMetaData[] = [\n {\n displayLabel: \"Properties Field\",\n sourceSchema: \"*\",\n sourceClassName: \"*\",\n ecPropertyTraversal: [\"propString\"],\n primitiveNavigationClass: \"\",\n actualECClassName: \"SchemaName:ClassName\",\n parentPropertyClassName: undefined,\n key: \"undefined|SchemaName:ClassName|propString\",\n categoryLabel: \"Test Category\",\n },\n {\n displayLabel: \"Properties Field\",\n sourceSchema: \"*\",\n sourceClassName: \"*\",\n ecPropertyTraversal: [\"propInt\"],\n primitiveNavigationClass: \"\",\n actualECClassName: \"SchemaName:ClassName\",\n parentPropertyClassName: undefined,\n key: \"undefined|SchemaName:ClassName|propInt\",\n categoryLabel: \"Test Category\",\n },\n {\n displayLabel: \"Properties Field\",\n sourceSchema: \"*\",\n sourceClassName: \"*\",\n ecPropertyTraversal: [\"propBool\"],\n primitiveNavigationClass: \"\",\n actualECClassName: \"SchemaName:ClassName\",\n parentPropertyClassName: undefined,\n key: \"undefined|SchemaName:ClassName|propBool\",\n categoryLabel: \"Test Category\",\n },\n {\n displayLabel: \"Properties Field\",\n sourceSchema: \"*\",\n sourceClassName: \"*\",\n ecPropertyTraversal: [\"propEnum\"],\n primitiveNavigationClass: \"\",\n actualECClassName: \"SchemaName:ClassName\",\n parentPropertyClassName: undefined,\n key: \"undefined|SchemaName:ClassName|propEnum\",\n categoryLabel: \"Test Category\",\n },\n {\n displayLabel: \"Properties Field\",\n sourceSchema: \"*\",\n sourceClassName: \"*\",\n ecPropertyTraversal: [\"propLong\"],\n primitiveNavigationClass: \"\",\n actualECClassName: \"SchemaName:ClassName\",\n parentPropertyClassName: undefined,\n key: \"undefined|SchemaName:ClassName|propLong\",\n categoryLabel: \"Test Category\",\n },\n {\n displayLabel: \"Properties Field\",\n sourceSchema: \"*\",\n sourceClassName: \"*\",\n ecPropertyTraversal: [\"propNumber\"],\n primitiveNavigationClass: \"\",\n actualECClassName: \"SchemaName:ClassName\",\n parentPropertyClassName: undefined,\n key: \"undefined|SchemaName:ClassName|propNumber\",\n categoryLabel: \"Test Category\",\n },\n ];\n\n assert.deepEqual(result, expectedResult);\n });\n\n it(\"one BisCore:ElementOwnsUniqueAspect nested property\", () => {\n const propertiesField = createTestPropertiesContentField({\n properties: [{ property: createTestPropertyInfo({ name: \"prop1\" }) }],\n });\n\n const nestedAspectField = createTestNestedContentField({\n nestedFields: [propertiesField],\n relationshipMeaning: RelationshipMeaning.SameInstance,\n pathToPrimaryClass: [\n createTestRelatedClassInfo({\n sourceClassInfo: createTestECClassInfo({ name: \"Some:UniqueAspect\" }),\n relationshipInfo: createTestECClassInfo({ name: \"BisCore:ElementOwnsUniqueAspect\" }),\n targetClassInfo: createTestECClassInfo({ name: \"Schema:Class\" }),\n isForwardRelationship: false,\n isPolymorphicRelationship: true,\n }),\n ],\n });\n\n const result = convertPresentationFields([nestedAspectField]);\n\n const expectedResult: PropertyMetaData[] = [\n {\n displayLabel: \"Properties Field\",\n sourceSchema: \"SchemaName\",\n sourceClassName: \"ClassName\",\n ecPropertyTraversal: [\"prop1\"],\n primitiveNavigationClass: \"\",\n actualECClassName: \"SchemaName:ClassName\",\n parentPropertyClassName: \"SchemaName:ClassName\",\n key: \"SchemaName:ClassName|SchemaName:ClassName|prop1\",\n categoryLabel: \"Test Category\",\n },\n ];\n\n assert.deepEqual(result, expectedResult);\n });\n\n it(\"one BisCore:ElementOwnsMultiAspects nested property\", () => {\n const propertiesField = createTestPropertiesContentField({\n properties: [{ property: createTestPropertyInfo({ name: \"prop1\" }) }],\n });\n\n const nestedAspectField = createTestNestedContentField({\n nestedFields: [propertiesField],\n relationshipMeaning: RelationshipMeaning.SameInstance,\n pathToPrimaryClass: [\n createTestRelatedClassInfo({\n sourceClassInfo: createTestECClassInfo({ name: \"Some:MultiAspect\" }),\n relationshipInfo: createTestECClassInfo({ name: \"BisCore:ElementOwnsMultiAspects\" }),\n targetClassInfo: createTestECClassInfo({ name: \"Schema:Class\" }),\n isForwardRelationship: false,\n isPolymorphicRelationship: true,\n }),\n ],\n });\n\n const result = convertPresentationFields([nestedAspectField]);\n\n const expectedResult: PropertyMetaData[] = [\n {\n displayLabel: \"Properties Field\",\n sourceSchema: \"SchemaName\",\n sourceClassName: \"ClassName\",\n ecPropertyTraversal: [\"prop1\"],\n primitiveNavigationClass: \"\",\n actualECClassName: \"SchemaName:ClassName\",\n parentPropertyClassName: \"SchemaName:ClassName\",\n key: \"SchemaName:ClassName|SchemaName:ClassName|prop1\",\n categoryLabel: \"Test Category\",\n },\n ];\n\n assert.deepEqual(result, expectedResult);\n });\n\n it(\"one BisCore:GeometricElement3dHasTypeDefinition nested property\", () => {\n const propertiesField = createTestPropertiesContentField({\n properties: [{ property: createTestPropertyInfo({ name: \"prop1\" }) }],\n });\n\n const nestedAspectField = createTestNestedContentField({\n nestedFields: [propertiesField],\n relationshipMeaning: RelationshipMeaning.RelatedInstance,\n pathToPrimaryClass: [\n createTestRelatedClassInfo({\n sourceClassInfo: createTestECClassInfo({ name: \"Schema:SomeType\" }),\n relationshipInfo: createTestECClassInfo({ name: \"BisCore:GeometricElement3dHasTypeDefinition\" }),\n targetClassInfo: createTestECClassInfo({ name: \"Schema:Class\" }),\n isForwardRelationship: false,\n isPolymorphicRelationship: true,\n }),\n ],\n });\n\n const result = convertPresentationFields([nestedAspectField]);\n\n const expectedResult: PropertyMetaData[] = [\n {\n actualECClassName: \"SchemaName:ClassName\",\n categoryLabel: \"Test Category\",\n displayLabel: \"Properties Field\",\n ecPropertyTraversal: [\"TypeDefinition\", \"prop1\"],\n key: \"SchemaName:ClassName|SchemaName:ClassName|TypeDefinition|prop1\",\n parentPropertyClassName: \"SchemaName:ClassName\",\n primitiveNavigationClass: \"\",\n sourceClassName: \"*\",\n sourceSchema: \"*\",\n },\n ];\n\n assert.deepEqual(result, expectedResult);\n });\n\n it(\"generate proper external source metadata\", () => {\n const propertyName = createTestPropertyInfo({ name: \"name\" });\n const propertyPath = createTestPropertyInfo({ name: \"path\" });\n const repositoryProperties = createTestPropertiesContentField({\n properties: [{ property: propertyName }, { property: propertyPath }],\n });\n\n const nestedExternalSource = createTestNestedContentField({\n nestedFields: [repositoryProperties],\n contentClassInfo: { name: \"BisCore:RepositoryLink\", id: \"\", label: \"\" },\n relationshipMeaning: RelationshipMeaning.SameInstance,\n pathToPrimaryClass: [\n createTestRelatedClassInfo({\n sourceClassInfo: createTestECClassInfo({ name: \"BisCore:ExternalSourceIsInRepository\" }),\n relationshipInfo: createTestECClassInfo({ name: \"BisCore:RepositoryLink\" }),\n targetClassInfo: createTestECClassInfo({ name: \"BisCore:ExternalSource\" }),\n isForwardRelationship: false,\n isPolymorphicRelationship: true,\n }),\n createTestRelatedClassInfo({\n sourceClassInfo: createTestECClassInfo({ name: \"BisCore:ElementIsFromSource\" }),\n relationshipInfo: createTestECClassInfo({ name: \"BisCore:ExternalSource\" }),\n targetClassInfo: createTestECClassInfo({ name: \"BisCore:ExternalSourceAspect\" }),\n isForwardRelationship: false,\n isPolymorphicRelationship: true,\n }),\n ],\n });\n\n const propertiesField = createTestPropertiesContentField({\n properties: [{ property: createTestPropertyInfo({ name: \"Identifier\" }) }],\n });\n\n const nestedSourceAspectField = createTestNestedContentField({\n nestedFields: [propertiesField, nestedExternalSource],\n relationshipMeaning: RelationshipMeaning.SameInstance,\n pathToPrimaryClass: [\n createTestRelatedClassInfo({\n sourceClassInfo: createTestECClassInfo({ name: \"BisCore:ExternalSourceAspect\" }),\n relationshipInfo: createTestECClassInfo({ name: \"BisCore:ElementOwnsMultiAspects\" }),\n targetClassInfo: createTestECClassInfo({ name: \"Schema:Class\" }),\n isForwardRelationship: false,\n isPolymorphicRelationship: true,\n }),\n ],\n });\n\n const result = convertPresentationFields([nestedSourceAspectField]);\n\n const expectedResult: PropertyMetaData[] = [\n {\n displayLabel: \"Properties Field\",\n sourceSchema: \"SchemaName\",\n sourceClassName: \"ClassName\",\n ecPropertyTraversal: [\"Identifier\"],\n primitiveNavigationClass: \"\",\n actualECClassName: \"SchemaName:ClassName\",\n parentPropertyClassName: \"SchemaName:ClassName\",\n key: \"SchemaName:ClassName|SchemaName:ClassName|Identifier\",\n categoryLabel: \"Test Category\",\n },\n {\n displayLabel: \"Properties Field\",\n sourceSchema: \"SchemaName\",\n sourceClassName: \"ClassName\",\n ecPropertyTraversal: [\"Source\", \"Repository\", \"name\"],\n primitiveNavigationClass: \"\",\n actualECClassName: \"SchemaName:ClassName\",\n parentPropertyClassName: \"BisCore:RepositoryLink\",\n key: \"BisCore:RepositoryLink|SchemaName:ClassName|Source|Repository|name\",\n categoryLabel: \"Test Category\",\n },\n {\n displayLabel: \"Properties Field\",\n sourceSchema: \"SchemaName\",\n sourceClassName: \"ClassName\",\n ecPropertyTraversal: [\"Source\", \"Repository\", \"path\"],\n primitiveNavigationClass: \"\",\n actualECClassName: \"SchemaName:ClassName\",\n parentPropertyClassName: \"BisCore:RepositoryLink\",\n key: \"BisCore:RepositoryLink|SchemaName:ClassName|Source|Repository|path\",\n categoryLabel: \"Test Category\",\n },\n ];\n\n assert.deepEqual(result, expectedResult);\n });\n\n it(\"handle simple structs correctly\", () => {\n const structPropertyClass = createTestPropertyInfo({ classInfo: { id: \"0\", label: \"\", name: \"Struct:Class\" } });\n\n const structContentFieldDescription: StructTypeDescription = {\n valueFormat: PropertyValueFormat.Struct,\n typeName: \"StructType\",\n members: [\n {\n name: \"prop1\",\n label: \"prop one\",\n type: {\n typeName: \"string\",\n valueFormat: PropertyValueFormat.Primitive,\n },\n },\n ],\n };\n const simpleStructField = createTestPropertiesContentField({ properties: [{ property: structPropertyClass }], type: structContentFieldDescription });\n\n const result = convertPresentationFields([simpleStructField]);\n\n const expectedResult: PropertyMetaData[] = [\n {\n displayLabel: \"prop one\",\n sourceSchema: \"*\",\n sourceClassName: \"*\",\n ecPropertyTraversal: [\"PropertyName\", \"prop1\"],\n primitiveNavigationClass: \"\",\n actualECClassName: \"Struct:Class\",\n parentPropertyClassName: undefined,\n key: \"undefined|Struct:Class|PropertyName|prop1\",\n categoryLabel: \"Test Category\",\n },\n ];\n\n assert.deepEqual(result, expectedResult);\n });\n\n it(\"handle simple nested structs correctly\", () => {\n const structPropertyClass = createTestPropertyInfo({ classInfo: { id: \"0\", label: \"\", name: \"Struct:Class\" } });\n\n const structContentFieldDescription: StructTypeDescription = {\n valueFormat: PropertyValueFormat.Struct,\n typeName: \"StructType\",\n members: [\n {\n name: \"prop1\",\n label: \"prop one\",\n type: {\n typeName: \"string\",\n valueFormat: PropertyValueFormat.Primitive,\n },\n },\n {\n name: \"struct1\",\n label: \"struct1\",\n type: {\n typeName: \"string\",\n valueFormat: PropertyValueFormat.Struct,\n members: [\n {\n name: \"prop2\",\n label: \"prop 2\",\n type: {\n typeName: \"string\",\n valueFormat: PropertyValueFormat.Primitive,\n },\n },\n ],\n },\n },\n ],\n };\n\n const simpleStructField = createTestPropertiesContentField({ properties: [{ property: structPropertyClass }], type: structContentFieldDescription });\n\n const result = convertPresentationFields([simpleStructField]);\n\n const expectedResult: PropertyMetaData[] = [\n {\n displayLabel: \"prop one\",\n sourceSchema: \"*\",\n sourceClassName: \"*\",\n ecPropertyTraversal: [\"PropertyName\", \"prop1\"],\n primitiveNavigationClass: \"\",\n actualECClassName: \"Struct:Class\",\n parentPropertyClassName: undefined,\n key: \"undefined|Struct:Class|PropertyName|prop1\",\n categoryLabel: \"Test Category\",\n },\n {\n displayLabel: \"prop 2\",\n sourceSchema: \"*\",\n sourceClassName: \"*\",\n ecPropertyTraversal: [\"PropertyName\", \"struct1\", \"prop2\"],\n primitiveNavigationClass: \"\",\n actualECClassName: \"Struct:Class\",\n parentPropertyClassName: undefined,\n key: \"undefined|Struct:Class|PropertyName|struct1|prop2\",\n categoryLabel: \"Test Category\",\n },\n ];\n\n assert.deepEqual(result, expectedResult);\n });\n\n it(\"handle primitive navigation (Model)\", () => {\n const modelClassInfo = createTestECClassInfo({ name: \"BisCore:Element\", label: \"Element\" });\n const navigationClassInfo = createTestECClassInfo({ name: \"BisCore:ModelContainsElements\", label: \"ModelContainsElements\" });\n\n const navigationPropertyInfo: NavigationPropertyInfo = {\n classInfo: navigationClassInfo,\n isForwardRelationship: false,\n // Target class does not matter\n targetClassInfo: createTestECClassInfo(),\n isTargetPolymorphic: true,\n };\n\n const modelPropertyInfo = createTestPropertyInfo({ name: \"Model\", classInfo: modelClassInfo, type: \"long\", navigationPropertyInfo });\n\n const simpleModelField = createTestPropertiesContentField({ label: \"Model\", properties: [{ property: modelPropertyInfo }] });\n\n const result = convertPresentationFields([simpleModelField]);\n\n const expectedResult: PropertyMetaData[] = [\n {\n displayLabel: \"Model\",\n sourceSchema: \"*\",\n sourceClassName: \"*\",\n ecPropertyTraversal: [\"Model\"],\n primitiveNavigationClass: \"BisCore:ModelContainsElements\",\n actualECClassName: \"BisCore:Element\",\n parentPropertyClassName: undefined,\n key: \"undefined|BisCore:Element|Model\",\n categoryLabel: \"Test Category\",\n },\n ];\n\n assert.deepEqual(result, expectedResult);\n });\n\n it(\"convert PropertyMetaData non primitive navigation into ECProperty\", () => {\n const propertyMetaData: PropertyMetaData = {\n displayLabel: \"A Property\",\n sourceSchema: \"Schema\",\n sourceClassName: \"Class\",\n ecPropertyTraversal: [\"PropertyName\", \"SecondProperty\"],\n primitiveNavigationClass: \"\",\n actualECClassName: \"SchemaName:ClassName\",\n parentPropertyClassName: undefined,\n key: \"undefined|SchemaName:ClassName|PropertyName\",\n categoryLabel: \"Test Category\",\n };\n\n const result = convertToECProperties(propertyMetaData);\n\n const expectedResult: ECPropertyReference[] = [\n {\n ecSchemaName: \"Schema\",\n ecClassName: \"Class\",\n ecPropertyName: \"PropertyName.SecondProperty\",\n },\n ];\n\n assert.deepEqual(result, expectedResult);\n });\n\n it(\"convert Model PropertyMetaData primitive navigation into ECProperty\", () => {\n const propertyMetaData: PropertyMetaData = {\n displayLabel: \"Model\",\n sourceSchema: \"*\",\n sourceClassName: \"*\",\n ecPropertyTraversal: [\"Model\"],\n primitiveNavigationClass: \"BisCore:ModelContainsElements\",\n actualECClassName: \"BisCore:Element\",\n key: \"undefined|BisCore:Element|Model\",\n categoryLabel: \"Selected Item\",\n parentPropertyClassName: undefined,\n };\n\n const result = convertToECProperties(propertyMetaData);\n\n const expectedResult: ECPropertyReference[] = [\n {\n ecSchemaName: \"*\",\n ecClassName: \"*\",\n ecPropertyName: \"Model.ModeledElement.UserLabel\",\n },\n {\n ecSchemaName: \"*\",\n ecClassName: \"*\",\n ecPropertyName: \"Model.ModeledElement.CodeValue\",\n },\n ];\n\n assert.deepEqual(result, expectedResult);\n });\n\n it(\"convert Category PropertyMetaData primitive navigation into ECProperty\", () => {\n const propertyMetaData: PropertyMetaData = {\n displayLabel: \"Category\",\n sourceSchema: \"*\",\n sourceClassName: \"*\",\n ecPropertyTraversal: [\"Category\"],\n primitiveNavigationClass: \"BisCore:GeometricElement3dIsInCategory\",\n actualECClassName: \"BisCore:GeometricElement3d\",\n key: \"undefined|BisCore:GeometricElement3d|Category\",\n categoryLabel: \"Selected Item\",\n parentPropertyClassName: undefined,\n };\n\n const result = convertToECProperties(propertyMetaData);\n\n const expectedResult: ECPropertyReference[] = [\n {\n ecSchemaName: \"*\",\n ecClassName: \"*\",\n ecPropertyName: \"Category.UserLabel\",\n },\n {\n ecSchemaName: \"*\",\n ecClassName: \"*\",\n ecPropertyName: \"Category.CodeValue\",\n },\n ];\n\n assert.deepEqual(result, expectedResult);\n });\n\n it(\"convert Physical Material PropertyMetaData primitive navigation into an ECProperty\", () => {\n const propertyMetaData: PropertyMetaData = {\n displayLabel: \"Physical Material\",\n sourceSchema: \"*\",\n sourceClassName: \"*\",\n ecPropertyTraversal: [\"PhysicalMaterial\"],\n primitiveNavigationClass: \"BisCore:PhysicalElementIsOfPhysicalMaterial\",\n actualECClassName: \"BisCore:PhysicalElement\",\n key: \"undefined|BisCore:PhysicalElement|PhysicalMaterial\",\n categoryLabel: \"Selected Item\",\n parentPropertyClassName: undefined,\n };\n\n const result = convertToECProperties(propertyMetaData);\n\n const expectedResult: ECPropertyReference[] = [\n {\n ecSchemaName: \"*\",\n ecClassName: \"*\",\n ecPropertyName: \"PhysicalMaterial.UserLabel\",\n },\n {\n ecSchemaName: \"*\",\n ecClassName: \"*\",\n ecPropertyName: \"PhysicalMaterial.CodeValue\",\n },\n ];\n\n assert.deepEqual(result, expectedResult);\n });\n\n it(\"find properties correctly\", () => {\n const propertiesMetaData: PropertyMetaData[] = [\n {\n displayLabel: \"Properties Field\",\n sourceSchema: \"*\",\n sourceClassName: \"*\",\n ecPropertyTraversal: [\"propString\"],\n primitiveNavigationClass: \"\",\n actualECClassName: \"SchemaName:ClassName\",\n parentPropertyClassName: undefined,\n key: \"undefined|SchemaName:ClassName|propString\",\n categoryLabel: \"Test Category\",\n },\n {\n displayLabel: \"Properties Field\",\n sourceSchema: \"*\",\n sourceClassName: \"*\",\n ecPropertyTraversal: [\"propInt\"],\n primitiveNavigationClass: \"\",\n actualECClassName: \"SchemaName:ClassName\",\n parentPropertyClassName: undefined,\n key: \"undefined|SchemaName:ClassName|propInt\",\n categoryLabel: \"Test Category\",\n },\n ];\n\n const ecProperties: ECPropertyReference[] = [\n {\n ecSchemaName: \"*\",\n ecClassName: \"*\",\n ecPropertyName: \"propString\",\n },\n {\n ecSchemaName: \"*\",\n ecClassName: \"*\",\n ecPropertyName: \"propInt\",\n },\n ];\n\n const result = findProperties(ecProperties, propertiesMetaData);\n\n assert.deepEqual(result, propertiesMetaData);\n });\n\n it(\"can find properties generated from a single property\", () => {\n const propertiesMetaData: PropertyMetaData[] = [\n {\n displayLabel: \"Model\",\n sourceSchema: \"*\",\n sourceClassName: \"*\",\n ecPropertyTraversal: [\"Model\"],\n primitiveNavigationClass: \"BisCore:ModelContainsElements\",\n actualECClassName: \"BisCore:Element\",\n key: \"undefined|BisCore:Element|Model\",\n categoryLabel: \"Selected Item\",\n parentPropertyClassName: undefined,\n },\n ];\n\n const ecProperties: ECPropertyReference[] = [\n {\n ecSchemaName: \"*\",\n ecClassName: \"*\",\n ecPropertyName: \"Model.ModeledElement.UserLabel\",\n },\n {\n ecSchemaName: \"*\",\n ecClassName: \"*\",\n ecPropertyName: \"Model.ModeledElement.CodeValue\",\n },\n ];\n\n const result = findProperties(ecProperties, propertiesMetaData);\n assert.deepEqual(result, propertiesMetaData);\n });\n\n it(\"cannot find properties generated from a single property in the wrong order\", () => {\n const propertiesMetaData: PropertyMetaData[] = [\n {\n displayLabel: \"Model\",\n sourceSchema: \"*\",\n sourceClassName: \"*\",\n ecPropertyTraversal: [\"Model\"],\n primitiveNavigationClass: \"BisCore:ModelContainsElements\",\n actualECClassName: \"BisCore:Element\",\n key: \"undefined|BisCore:Element|Model\",\n categoryLabel: \"Selected Item\",\n parentPropertyClassName: undefined,\n },\n ];\n\n const ecProperties: ECPropertyReference[] = [\n {\n ecSchemaName: \"*\",\n ecClassName: \"*\",\n ecPropertyName: \"Model.ModeledElement.CodeValue\",\n },\n {\n ecSchemaName: \"*\",\n ecClassName: \"*\",\n ecPropertyName: \"Model.ModeledElement.UserLabel\",\n },\n ];\n\n const result = findProperties(ecProperties, propertiesMetaData);\n expect(result).to.be.of.length(0);\n });\n});\n"]}
@@ -1,7 +1,7 @@
1
1
  /*---------------------------------------------------------------------------------------------
2
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
- * See LICENSE.md in the project root for license terms and full copyright notice.
4
- *--------------------------------------------------------------------------------------------*/
2
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
+ * See LICENSE.md in the project root for license terms and full copyright notice.
4
+ *--------------------------------------------------------------------------------------------*/
5
5
  import React from "react";
6
6
  import "@testing-library/jest-dom";
7
7
  import { faker } from "@faker-js/faker";
@@ -86,9 +86,7 @@ describe("Groups View", () => {
86
86
  beforeEach(async () => {
87
87
  connectionMock.setup((x) => x.iModelId).returns(() => mockIModelId);
88
88
  connectionMock.setup((x) => x.iTwinId).returns(() => mockITwinId);
89
- groupsClientMock
90
- .setup(async (x) => x.getGroups(moq.It.isAny(), moq.It.isAny(), moq.It.isAny()))
91
- .returns(async () => Promise.resolve(mockGroups));
89
+ groupsClientMock.setup(async (x) => x.getGroups(moq.It.isAny(), moq.It.isAny(), moq.It.isAny())).returns(async () => Promise.resolve(mockGroups));
92
90
  });
93
91
  afterEach(() => {
94
92
  connectionMock.reset();