@itwin/components-react 4.0.0-dev.13 → 4.0.0-dev.14

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 (447) hide show
  1. package/CHANGELOG.md +129 -1
  2. package/README.md +2 -2
  3. package/lib/cjs/components-react/UiComponents.js.map +1 -1
  4. package/lib/cjs/components-react/_target.scss +9 -9
  5. package/lib/cjs/components-react/common/DateUtils.js.map +1 -1
  6. package/lib/cjs/components-react/common/DelayedSpinner.js.map +1 -1
  7. package/lib/cjs/components-react/common/HighlightedText.js.map +1 -1
  8. package/lib/cjs/components-react/common/HighlightingComponentProps.js.map +1 -1
  9. package/lib/cjs/components-react/common/IImageLoader.js.map +1 -1
  10. package/lib/cjs/components-react/common/ImageRenderer.js.map +1 -1
  11. package/lib/cjs/components-react/common/Links.js.map +1 -1
  12. package/lib/cjs/components-react/common/PageOptions.js.map +1 -1
  13. package/lib/cjs/components-react/common/SubscriptionScheduler.js.map +1 -1
  14. package/lib/cjs/components-react/common/UseAsyncValue.js.map +1 -1
  15. package/lib/cjs/components-react/common/UseContextWithMandatoryProvider.js.map +1 -1
  16. package/lib/cjs/components-react/common/UseDebouncedAsyncValue.js.map +1 -1
  17. package/lib/cjs/components-react/common/UseRerender.js.map +1 -1
  18. package/lib/cjs/components-react/common/countMatchesInString.js.map +1 -1
  19. package/lib/cjs/components-react/common/selection/SelectionHandler.js.map +1 -1
  20. package/lib/cjs/components-react/common/selection/SelectionModes.js.map +1 -1
  21. package/lib/cjs/components-react/converters/BooleanTypeConverter.js.map +1 -1
  22. package/lib/cjs/components-react/converters/CompositeTypeConverter.js.map +1 -1
  23. package/lib/cjs/components-react/converters/DateTimeTypeConverter.js.map +1 -1
  24. package/lib/cjs/components-react/converters/EnumTypeConverter.js.map +1 -1
  25. package/lib/cjs/components-react/converters/HexadecimalTypeConverter.js.map +1 -1
  26. package/lib/cjs/components-react/converters/NavigationPropertyTypeConverter.js.map +1 -1
  27. package/lib/cjs/components-react/converters/NumericTypeConverter.js.map +1 -1
  28. package/lib/cjs/components-react/converters/PointTypeConverter.js.map +1 -1
  29. package/lib/cjs/components-react/converters/StringTypeConverter.js.map +1 -1
  30. package/lib/cjs/components-react/converters/TypeConverter.js.map +1 -1
  31. package/lib/cjs/components-react/converters/TypeConverterManager.js.map +1 -1
  32. package/lib/cjs/components-react/converters/valuetypes/ConvertedTypes.js.map +1 -1
  33. package/lib/cjs/components-react/datepicker/DateField.js.map +1 -1
  34. package/lib/cjs/components-react/datepicker/DateField.scss +22 -22
  35. package/lib/cjs/components-react/datepicker/DatePicker.js.map +1 -1
  36. package/lib/cjs/components-react/datepicker/DatePicker.scss +176 -176
  37. package/lib/cjs/components-react/datepicker/DatePickerPopupButton.js.map +1 -1
  38. package/lib/cjs/components-react/datepicker/DatePickerPopupButton.scss +57 -57
  39. package/lib/cjs/components-react/datepicker/IntlFormatter.js.map +1 -1
  40. package/lib/cjs/components-react/datepicker/TimeField.js.map +1 -1
  41. package/lib/cjs/components-react/datepicker/TimeField.scss +76 -76
  42. package/lib/cjs/components-react/editors/BooleanEditor.js.map +1 -1
  43. package/lib/cjs/components-react/editors/BooleanEditor.scss +22 -22
  44. package/lib/cjs/components-react/editors/CustomNumberEditor.js.map +1 -1
  45. package/lib/cjs/components-react/editors/CustomNumberEditor.scss +20 -20
  46. package/lib/cjs/components-react/editors/DateTimeEditor.js.map +1 -1
  47. package/lib/cjs/components-react/editors/DateTimeEditor.scss +9 -9
  48. package/lib/cjs/components-react/editors/EditorContainer.js.map +1 -1
  49. package/lib/cjs/components-react/editors/EditorContainer.scss +6 -6
  50. package/lib/cjs/components-react/editors/EnumButtonGroupEditor.js.map +1 -1
  51. package/lib/cjs/components-react/editors/EnumButtonGroupEditor.scss +141 -141
  52. package/lib/cjs/components-react/editors/EnumEditor.js.map +1 -1
  53. package/lib/cjs/components-react/editors/EnumEditor.scss +22 -22
  54. package/lib/cjs/components-react/editors/IconEditor.js.map +1 -1
  55. package/lib/cjs/components-react/editors/IconEditor.scss +16 -16
  56. package/lib/cjs/components-react/editors/ImageCheckBoxEditor.js.map +1 -1
  57. package/lib/cjs/components-react/editors/ImageCheckBoxEditor.scss +24 -24
  58. package/lib/cjs/components-react/editors/NumericInputEditor.js.map +1 -1
  59. package/lib/cjs/components-react/editors/NumericInputEditor.scss +16 -16
  60. package/lib/cjs/components-react/editors/PopupButton.js.map +1 -1
  61. package/lib/cjs/components-react/editors/PopupButton.scss +116 -116
  62. package/lib/cjs/components-react/editors/PropertyEditorManager.js.map +1 -1
  63. package/lib/cjs/components-react/editors/SliderEditor.js.map +1 -1
  64. package/lib/cjs/components-react/editors/SliderEditor.scss +13 -13
  65. package/lib/cjs/components-react/editors/TextEditor.js.map +1 -1
  66. package/lib/cjs/components-react/editors/TextEditor.scss +20 -20
  67. package/lib/cjs/components-react/editors/TextareaEditor.js.map +1 -1
  68. package/lib/cjs/components-react/editors/TextareaEditor.scss +14 -14
  69. package/lib/cjs/components-react/editors/ToggleEditor.js.map +1 -1
  70. package/lib/cjs/components-react/editors/ToggleEditor.scss +23 -23
  71. package/lib/cjs/components-react/editors/variables.scss +7 -7
  72. package/lib/cjs/components-react/favorite/FavoritePropertiesRenderer.js.map +1 -1
  73. package/lib/cjs/components-react/favorite/FavoritePropertyList.js.map +1 -1
  74. package/lib/cjs/components-react/filter-builder/FilterBuilder.js.map +1 -1
  75. package/lib/cjs/components-react/filter-builder/FilterBuilderContext.js.map +1 -1
  76. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.js.map +1 -1
  77. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.scss +38 -38
  78. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.js.map +1 -1
  79. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.scss +68 -68
  80. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.js.map +1 -1
  81. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.js.map +1 -1
  82. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.js.map +1 -1
  83. package/lib/cjs/components-react/filter-builder/FilterBuilderState.js.map +1 -1
  84. package/lib/cjs/components-react/filter-builder/Operators.js.map +1 -1
  85. package/lib/cjs/components-react/filter-builder/Types.js.map +1 -1
  86. package/lib/cjs/components-react/filtering/FilteringInput.js.map +1 -1
  87. package/lib/cjs/components-react/filtering/FilteringInput.scss +58 -58
  88. package/lib/cjs/components-react/filtering/ResultSelector.js.map +1 -1
  89. package/lib/cjs/components-react/filtering/ResultSelector.scss +68 -68
  90. package/lib/cjs/components-react/iconpicker/IconPickerButton.js.map +1 -1
  91. package/lib/cjs/components-react/iconpicker/IconPickerButton.scss +75 -75
  92. package/lib/cjs/components-react/inputs/ParsedInput.js.map +1 -1
  93. package/lib/cjs/components-react/inputs/ParsedInput.scss +23 -23
  94. package/lib/cjs/components-react/properties/ItemStyle.js.map +1 -1
  95. package/lib/cjs/components-react/properties/LinkHandler.js.map +1 -1
  96. package/lib/cjs/components-react/properties/ValueRendererManager.js.map +1 -1
  97. package/lib/cjs/components-react/properties/renderers/ActionButtonList.js.map +1 -1
  98. package/lib/cjs/components-react/properties/renderers/ActionButtonList.scss +25 -25
  99. package/lib/cjs/components-react/properties/renderers/ActionButtonRenderer.js.map +1 -1
  100. package/lib/cjs/components-react/properties/renderers/CommonPropertyRenderer.js.map +1 -1
  101. package/lib/cjs/components-react/properties/renderers/NonPrimitivePropertyRenderer.js.map +1 -1
  102. package/lib/cjs/components-react/properties/renderers/NonPrimitivePropertyRenderer.scss +17 -17
  103. package/lib/cjs/components-react/properties/renderers/PrimitivePropertyRenderer.js.map +1 -1
  104. package/lib/cjs/components-react/properties/renderers/PropertyGridColumns.js.map +1 -1
  105. package/lib/cjs/components-react/properties/renderers/PropertyRenderer.js.map +1 -1
  106. package/lib/cjs/components-react/properties/renderers/PropertyView.js.map +1 -1
  107. package/lib/cjs/components-react/properties/renderers/PropertyView.scss +104 -104
  108. package/lib/cjs/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.js.map +1 -1
  109. package/lib/cjs/components-react/properties/renderers/label/PrimitivePropertyLabelRenderer.js.map +1 -1
  110. package/lib/cjs/components-react/properties/renderers/label/PropertyLabelRenderer.js.map +1 -1
  111. package/lib/cjs/components-react/properties/renderers/label/PropertyLabelRenderer.scss +88 -88
  112. package/lib/cjs/components-react/properties/renderers/value/ArrayPropertyValueRenderer.js.map +1 -1
  113. package/lib/cjs/components-react/properties/renderers/value/DoublePropertyValueRenderer.js.map +1 -1
  114. package/lib/cjs/components-react/properties/renderers/value/MergedPropertyValueRenderer.js.map +1 -1
  115. package/lib/cjs/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.js.map +1 -1
  116. package/lib/cjs/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js.map +1 -1
  117. package/lib/cjs/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.js.map +1 -1
  118. package/lib/cjs/components-react/properties/renderers/value/StructPropertyValueRenderer.js.map +1 -1
  119. package/lib/cjs/components-react/properties/renderers/value/UrlPropertyValueRenderer.js.map +1 -1
  120. package/lib/cjs/components-react/properties/renderers/value/WithContextStyle.js.map +1 -1
  121. package/lib/cjs/components-react/properties/renderers/value/table/ArrayValueRenderer.js.map +1 -1
  122. package/lib/cjs/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.js.map +1 -1
  123. package/lib/cjs/components-react/properties/renderers/value/table/StructValueRenderer.js.map +1 -1
  124. package/lib/cjs/components-react/propertygrid/PropertyCategoryRendererManager.js.map +1 -1
  125. package/lib/cjs/components-react/propertygrid/PropertyDataProvider.js.map +1 -1
  126. package/lib/cjs/components-react/propertygrid/SimplePropertyDataProvider.js.map +1 -1
  127. package/lib/cjs/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js.map +1 -1
  128. package/lib/cjs/components-react/propertygrid/component/FlatItemNestedBorderWrapper.js.map +1 -1
  129. package/lib/cjs/components-react/propertygrid/component/PropertyCategoryBlock.js.map +1 -1
  130. package/lib/cjs/components-react/propertygrid/component/PropertyGrid.js.map +1 -1
  131. package/lib/cjs/components-react/propertygrid/component/PropertyGrid.scss +73 -73
  132. package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.js.map +1 -1
  133. package/lib/cjs/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.js.map +1 -1
  134. package/lib/cjs/components-react/propertygrid/component/PropertyList.js.map +1 -1
  135. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.js.map +1 -1
  136. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.scss +101 -101
  137. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js.map +1 -1
  138. package/lib/cjs/components-react/propertygrid/dataproviders/FilteringDataProvider.js.map +1 -1
  139. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.js.map +1 -1
  140. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.js.map +1 -1
  141. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/LabelPropertyDataFilterer.js.map +1 -1
  142. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/PropertyCategoryLabelFilterer.js.map +1 -1
  143. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/PropertyDataFiltererBase.js.map +1 -1
  144. package/lib/cjs/components-react/propertygrid/internal/PropertyGridEventHandler.js.map +1 -1
  145. package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.js.map +1 -1
  146. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModel.js.map +1 -1
  147. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js.map +1 -1
  148. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelSource.js.map +1 -1
  149. package/lib/cjs/components-react/propertygrid/internal/flat-items/FlatGridItem.js.map +1 -1
  150. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js.map +1 -1
  151. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js.map +1 -1
  152. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js.map +1 -1
  153. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.js.map +1 -1
  154. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js.map +1 -1
  155. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridCategory.js.map +1 -1
  156. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js.map +1 -1
  157. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js.map +1 -1
  158. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js.map +1 -1
  159. package/lib/cjs/components-react/selectable-content/SelectableContent.js.map +1 -1
  160. package/lib/cjs/components-react/selectable-content/SelectableContent.scss +20 -20
  161. package/lib/cjs/components-react/table/TableDataProvider.js.map +1 -1
  162. package/lib/cjs/components-react/toolbar/Item.js.map +1 -1
  163. package/lib/cjs/components-react/toolbar/Item.scss +91 -91
  164. package/lib/cjs/components-react/toolbar/ItemWrapper.js.map +1 -1
  165. package/lib/cjs/components-react/toolbar/ItemWrapper.scss +10 -10
  166. package/lib/cjs/components-react/toolbar/Items.js.map +1 -1
  167. package/lib/cjs/components-react/toolbar/Items.scss +96 -96
  168. package/lib/cjs/components-react/toolbar/Overflow.js.map +1 -1
  169. package/lib/cjs/components-react/toolbar/Overflow.scss +57 -57
  170. package/lib/cjs/components-react/toolbar/OverflowPanel.js.map +1 -1
  171. package/lib/cjs/components-react/toolbar/OverflowPanel.scss +37 -37
  172. package/lib/cjs/components-react/toolbar/PopupItem.js.map +1 -1
  173. package/lib/cjs/components-react/toolbar/PopupItem.scss +88 -88
  174. package/lib/cjs/components-react/toolbar/PopupItemWithDrag.js.map +1 -1
  175. package/lib/cjs/components-react/toolbar/PopupItemsPanel.js.map +1 -1
  176. package/lib/cjs/components-react/toolbar/Toolbar.js.map +1 -1
  177. package/lib/cjs/components-react/toolbar/Toolbar.scss +18 -18
  178. package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.js.map +1 -1
  179. package/lib/cjs/components-react/toolbar/_variables.scss +34 -34
  180. package/lib/cjs/components-react/toolbar/groupPanel/BackArrow.js.map +1 -1
  181. package/lib/cjs/components-react/toolbar/groupPanel/BackArrow.scss +44 -44
  182. package/lib/cjs/components-react/toolbar/groupPanel/Column.js.map +1 -1
  183. package/lib/cjs/components-react/toolbar/groupPanel/Column.scss +9 -9
  184. package/lib/cjs/components-react/toolbar/groupPanel/Columns.js.map +1 -1
  185. package/lib/cjs/components-react/toolbar/groupPanel/Columns.scss +10 -10
  186. package/lib/cjs/components-react/toolbar/groupPanel/Panel.js.map +1 -1
  187. package/lib/cjs/components-react/toolbar/groupPanel/Panel.scss +15 -15
  188. package/lib/cjs/components-react/toolbar/groupPanel/Title.js.map +1 -1
  189. package/lib/cjs/components-react/toolbar/groupPanel/Title.scss +33 -33
  190. package/lib/cjs/components-react/toolbar/groupPanel/_variables.scss +16 -16
  191. package/lib/cjs/components-react/toolbar/groupPanel/tool/Expander.js.map +1 -1
  192. package/lib/cjs/components-react/toolbar/groupPanel/tool/Expander.scss +29 -29
  193. package/lib/cjs/components-react/toolbar/groupPanel/tool/Tool.js.map +1 -1
  194. package/lib/cjs/components-react/toolbar/groupPanel/tool/Tool.scss +117 -117
  195. package/lib/cjs/components-react/toolbar/groupPanel/tool/_variables.scss +12 -12
  196. package/lib/cjs/components-react/toolbar/useDragInteraction.js.map +1 -1
  197. package/lib/cjs/components-react/toolbar/utilities/Direction.js.map +1 -1
  198. package/lib/cjs/components-react/tree/HighlightingEngine.js.map +1 -1
  199. package/lib/cjs/components-react/tree/HighlightingEngine.scss +7 -7
  200. package/lib/cjs/components-react/tree/ImageLoader.js.map +1 -1
  201. package/lib/cjs/components-react/tree/SimpleTreeDataProvider.js.map +1 -1
  202. package/lib/cjs/components-react/tree/TreeComponentTestId.js.map +1 -1
  203. package/lib/cjs/components-react/tree/TreeDataProvider.js.map +1 -1
  204. package/lib/cjs/components-react/tree/controlled/Observable.js.map +1 -1
  205. package/lib/cjs/components-react/tree/controlled/TreeActions.js.map +1 -1
  206. package/lib/cjs/components-react/tree/controlled/TreeEventDispatcher.js.map +1 -1
  207. package/lib/cjs/components-react/tree/controlled/TreeEventHandler.js.map +1 -1
  208. package/lib/cjs/components-react/tree/controlled/TreeEvents.js.map +1 -1
  209. package/lib/cjs/components-react/tree/controlled/TreeHooks.js.map +1 -1
  210. package/lib/cjs/components-react/tree/controlled/TreeModel.js.map +1 -1
  211. package/lib/cjs/components-react/tree/controlled/TreeModelSource.js.map +1 -1
  212. package/lib/cjs/components-react/tree/controlled/TreeNodeLoader.js.map +1 -1
  213. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.js.map +1 -1
  214. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.scss +102 -102
  215. package/lib/cjs/components-react/tree/controlled/component/NodeContent.js.map +1 -1
  216. package/lib/cjs/components-react/tree/controlled/component/NodeContent.scss +27 -27
  217. package/lib/cjs/components-react/tree/controlled/component/TreeNodeEditor.js.map +1 -1
  218. package/lib/cjs/components-react/tree/controlled/component/TreeNodeRenderer.js.map +1 -1
  219. package/lib/cjs/components-react/tree/controlled/component/TreeRenderer.js.map +1 -1
  220. package/lib/cjs/components-react/tree/controlled/internal/SparseTree.js.map +1 -1
  221. package/lib/cjs/components-react/tree/controlled/internal/TreeModelMutator.js.map +1 -1
  222. package/lib/cjs/components-react/tree/controlled/internal/TreeSelectionManager.js.map +1 -1
  223. package/lib/cjs/components-react.js.map +1 -1
  224. package/lib/esm/components-react/UiComponents.js.map +1 -1
  225. package/lib/esm/components-react/_target.scss +9 -9
  226. package/lib/esm/components-react/common/DateUtils.js.map +1 -1
  227. package/lib/esm/components-react/common/DelayedSpinner.js.map +1 -1
  228. package/lib/esm/components-react/common/HighlightedText.js.map +1 -1
  229. package/lib/esm/components-react/common/HighlightingComponentProps.js.map +1 -1
  230. package/lib/esm/components-react/common/IImageLoader.js.map +1 -1
  231. package/lib/esm/components-react/common/ImageRenderer.js.map +1 -1
  232. package/lib/esm/components-react/common/Links.js.map +1 -1
  233. package/lib/esm/components-react/common/PageOptions.js.map +1 -1
  234. package/lib/esm/components-react/common/SubscriptionScheduler.js.map +1 -1
  235. package/lib/esm/components-react/common/UseAsyncValue.js.map +1 -1
  236. package/lib/esm/components-react/common/UseContextWithMandatoryProvider.js.map +1 -1
  237. package/lib/esm/components-react/common/UseDebouncedAsyncValue.js.map +1 -1
  238. package/lib/esm/components-react/common/UseRerender.js.map +1 -1
  239. package/lib/esm/components-react/common/countMatchesInString.js.map +1 -1
  240. package/lib/esm/components-react/common/selection/SelectionHandler.js.map +1 -1
  241. package/lib/esm/components-react/common/selection/SelectionModes.js.map +1 -1
  242. package/lib/esm/components-react/converters/BooleanTypeConverter.js.map +1 -1
  243. package/lib/esm/components-react/converters/CompositeTypeConverter.js.map +1 -1
  244. package/lib/esm/components-react/converters/DateTimeTypeConverter.js.map +1 -1
  245. package/lib/esm/components-react/converters/EnumTypeConverter.js.map +1 -1
  246. package/lib/esm/components-react/converters/HexadecimalTypeConverter.js.map +1 -1
  247. package/lib/esm/components-react/converters/NavigationPropertyTypeConverter.js.map +1 -1
  248. package/lib/esm/components-react/converters/NumericTypeConverter.js.map +1 -1
  249. package/lib/esm/components-react/converters/PointTypeConverter.js.map +1 -1
  250. package/lib/esm/components-react/converters/StringTypeConverter.js.map +1 -1
  251. package/lib/esm/components-react/converters/TypeConverter.js.map +1 -1
  252. package/lib/esm/components-react/converters/TypeConverterManager.js.map +1 -1
  253. package/lib/esm/components-react/converters/valuetypes/ConvertedTypes.js.map +1 -1
  254. package/lib/esm/components-react/datepicker/DateField.js.map +1 -1
  255. package/lib/esm/components-react/datepicker/DateField.scss +22 -22
  256. package/lib/esm/components-react/datepicker/DatePicker.js.map +1 -1
  257. package/lib/esm/components-react/datepicker/DatePicker.scss +176 -176
  258. package/lib/esm/components-react/datepicker/DatePickerPopupButton.js.map +1 -1
  259. package/lib/esm/components-react/datepicker/DatePickerPopupButton.scss +57 -57
  260. package/lib/esm/components-react/datepicker/IntlFormatter.js.map +1 -1
  261. package/lib/esm/components-react/datepicker/TimeField.js.map +1 -1
  262. package/lib/esm/components-react/datepicker/TimeField.scss +76 -76
  263. package/lib/esm/components-react/editors/BooleanEditor.js.map +1 -1
  264. package/lib/esm/components-react/editors/BooleanEditor.scss +22 -22
  265. package/lib/esm/components-react/editors/CustomNumberEditor.js.map +1 -1
  266. package/lib/esm/components-react/editors/CustomNumberEditor.scss +20 -20
  267. package/lib/esm/components-react/editors/DateTimeEditor.js.map +1 -1
  268. package/lib/esm/components-react/editors/DateTimeEditor.scss +9 -9
  269. package/lib/esm/components-react/editors/EditorContainer.js.map +1 -1
  270. package/lib/esm/components-react/editors/EditorContainer.scss +6 -6
  271. package/lib/esm/components-react/editors/EnumButtonGroupEditor.js.map +1 -1
  272. package/lib/esm/components-react/editors/EnumButtonGroupEditor.scss +141 -141
  273. package/lib/esm/components-react/editors/EnumEditor.js.map +1 -1
  274. package/lib/esm/components-react/editors/EnumEditor.scss +22 -22
  275. package/lib/esm/components-react/editors/IconEditor.js.map +1 -1
  276. package/lib/esm/components-react/editors/IconEditor.scss +16 -16
  277. package/lib/esm/components-react/editors/ImageCheckBoxEditor.js.map +1 -1
  278. package/lib/esm/components-react/editors/ImageCheckBoxEditor.scss +24 -24
  279. package/lib/esm/components-react/editors/NumericInputEditor.js.map +1 -1
  280. package/lib/esm/components-react/editors/NumericInputEditor.scss +16 -16
  281. package/lib/esm/components-react/editors/PopupButton.js.map +1 -1
  282. package/lib/esm/components-react/editors/PopupButton.scss +116 -116
  283. package/lib/esm/components-react/editors/PropertyEditorManager.js.map +1 -1
  284. package/lib/esm/components-react/editors/SliderEditor.js.map +1 -1
  285. package/lib/esm/components-react/editors/SliderEditor.scss +13 -13
  286. package/lib/esm/components-react/editors/TextEditor.js.map +1 -1
  287. package/lib/esm/components-react/editors/TextEditor.scss +20 -20
  288. package/lib/esm/components-react/editors/TextareaEditor.js.map +1 -1
  289. package/lib/esm/components-react/editors/TextareaEditor.scss +14 -14
  290. package/lib/esm/components-react/editors/ToggleEditor.js.map +1 -1
  291. package/lib/esm/components-react/editors/ToggleEditor.scss +23 -23
  292. package/lib/esm/components-react/editors/variables.scss +7 -7
  293. package/lib/esm/components-react/favorite/FavoritePropertiesRenderer.js.map +1 -1
  294. package/lib/esm/components-react/favorite/FavoritePropertyList.js.map +1 -1
  295. package/lib/esm/components-react/filter-builder/FilterBuilder.js.map +1 -1
  296. package/lib/esm/components-react/filter-builder/FilterBuilderContext.js.map +1 -1
  297. package/lib/esm/components-react/filter-builder/FilterBuilderRule.js.map +1 -1
  298. package/lib/esm/components-react/filter-builder/FilterBuilderRule.scss +38 -38
  299. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.js.map +1 -1
  300. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.scss +68 -68
  301. package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.js.map +1 -1
  302. package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.js.map +1 -1
  303. package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.js.map +1 -1
  304. package/lib/esm/components-react/filter-builder/FilterBuilderState.js.map +1 -1
  305. package/lib/esm/components-react/filter-builder/Operators.js.map +1 -1
  306. package/lib/esm/components-react/filter-builder/Types.js.map +1 -1
  307. package/lib/esm/components-react/filtering/FilteringInput.js.map +1 -1
  308. package/lib/esm/components-react/filtering/FilteringInput.scss +58 -58
  309. package/lib/esm/components-react/filtering/ResultSelector.js.map +1 -1
  310. package/lib/esm/components-react/filtering/ResultSelector.scss +68 -68
  311. package/lib/esm/components-react/iconpicker/IconPickerButton.js.map +1 -1
  312. package/lib/esm/components-react/iconpicker/IconPickerButton.scss +75 -75
  313. package/lib/esm/components-react/inputs/ParsedInput.js.map +1 -1
  314. package/lib/esm/components-react/inputs/ParsedInput.scss +23 -23
  315. package/lib/esm/components-react/properties/ItemStyle.js.map +1 -1
  316. package/lib/esm/components-react/properties/LinkHandler.js.map +1 -1
  317. package/lib/esm/components-react/properties/ValueRendererManager.js.map +1 -1
  318. package/lib/esm/components-react/properties/renderers/ActionButtonList.js.map +1 -1
  319. package/lib/esm/components-react/properties/renderers/ActionButtonList.scss +25 -25
  320. package/lib/esm/components-react/properties/renderers/ActionButtonRenderer.js.map +1 -1
  321. package/lib/esm/components-react/properties/renderers/CommonPropertyRenderer.js.map +1 -1
  322. package/lib/esm/components-react/properties/renderers/NonPrimitivePropertyRenderer.js.map +1 -1
  323. package/lib/esm/components-react/properties/renderers/NonPrimitivePropertyRenderer.scss +17 -17
  324. package/lib/esm/components-react/properties/renderers/PrimitivePropertyRenderer.js.map +1 -1
  325. package/lib/esm/components-react/properties/renderers/PropertyGridColumns.js.map +1 -1
  326. package/lib/esm/components-react/properties/renderers/PropertyRenderer.js.map +1 -1
  327. package/lib/esm/components-react/properties/renderers/PropertyView.js.map +1 -1
  328. package/lib/esm/components-react/properties/renderers/PropertyView.scss +104 -104
  329. package/lib/esm/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.js.map +1 -1
  330. package/lib/esm/components-react/properties/renderers/label/PrimitivePropertyLabelRenderer.js.map +1 -1
  331. package/lib/esm/components-react/properties/renderers/label/PropertyLabelRenderer.js.map +1 -1
  332. package/lib/esm/components-react/properties/renderers/label/PropertyLabelRenderer.scss +88 -88
  333. package/lib/esm/components-react/properties/renderers/value/ArrayPropertyValueRenderer.js.map +1 -1
  334. package/lib/esm/components-react/properties/renderers/value/DoublePropertyValueRenderer.js.map +1 -1
  335. package/lib/esm/components-react/properties/renderers/value/MergedPropertyValueRenderer.js.map +1 -1
  336. package/lib/esm/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.js.map +1 -1
  337. package/lib/esm/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js.map +1 -1
  338. package/lib/esm/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.js.map +1 -1
  339. package/lib/esm/components-react/properties/renderers/value/StructPropertyValueRenderer.js.map +1 -1
  340. package/lib/esm/components-react/properties/renderers/value/UrlPropertyValueRenderer.js.map +1 -1
  341. package/lib/esm/components-react/properties/renderers/value/WithContextStyle.js.map +1 -1
  342. package/lib/esm/components-react/properties/renderers/value/table/ArrayValueRenderer.js.map +1 -1
  343. package/lib/esm/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.js.map +1 -1
  344. package/lib/esm/components-react/properties/renderers/value/table/StructValueRenderer.js.map +1 -1
  345. package/lib/esm/components-react/propertygrid/PropertyCategoryRendererManager.js.map +1 -1
  346. package/lib/esm/components-react/propertygrid/PropertyDataProvider.js.map +1 -1
  347. package/lib/esm/components-react/propertygrid/SimplePropertyDataProvider.js.map +1 -1
  348. package/lib/esm/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js.map +1 -1
  349. package/lib/esm/components-react/propertygrid/component/FlatItemNestedBorderWrapper.js.map +1 -1
  350. package/lib/esm/components-react/propertygrid/component/PropertyCategoryBlock.js.map +1 -1
  351. package/lib/esm/components-react/propertygrid/component/PropertyGrid.js.map +1 -1
  352. package/lib/esm/components-react/propertygrid/component/PropertyGrid.scss +73 -73
  353. package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.js.map +1 -1
  354. package/lib/esm/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.js.map +1 -1
  355. package/lib/esm/components-react/propertygrid/component/PropertyList.js.map +1 -1
  356. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.js.map +1 -1
  357. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.scss +101 -101
  358. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js.map +1 -1
  359. package/lib/esm/components-react/propertygrid/dataproviders/FilteringDataProvider.js.map +1 -1
  360. package/lib/esm/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.js.map +1 -1
  361. package/lib/esm/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.js.map +1 -1
  362. package/lib/esm/components-react/propertygrid/dataproviders/filterers/LabelPropertyDataFilterer.js.map +1 -1
  363. package/lib/esm/components-react/propertygrid/dataproviders/filterers/PropertyCategoryLabelFilterer.js.map +1 -1
  364. package/lib/esm/components-react/propertygrid/dataproviders/filterers/PropertyDataFiltererBase.js.map +1 -1
  365. package/lib/esm/components-react/propertygrid/internal/PropertyGridEventHandler.js.map +1 -1
  366. package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.js.map +1 -1
  367. package/lib/esm/components-react/propertygrid/internal/PropertyGridModel.js.map +1 -1
  368. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js.map +1 -1
  369. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelSource.js.map +1 -1
  370. package/lib/esm/components-react/propertygrid/internal/flat-items/FlatGridItem.js.map +1 -1
  371. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js.map +1 -1
  372. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js.map +1 -1
  373. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js.map +1 -1
  374. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.js.map +1 -1
  375. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js.map +1 -1
  376. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridCategory.js.map +1 -1
  377. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js.map +1 -1
  378. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js.map +1 -1
  379. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js.map +1 -1
  380. package/lib/esm/components-react/selectable-content/SelectableContent.js.map +1 -1
  381. package/lib/esm/components-react/selectable-content/SelectableContent.scss +20 -20
  382. package/lib/esm/components-react/table/TableDataProvider.js.map +1 -1
  383. package/lib/esm/components-react/toolbar/Item.js.map +1 -1
  384. package/lib/esm/components-react/toolbar/Item.scss +91 -91
  385. package/lib/esm/components-react/toolbar/ItemWrapper.js.map +1 -1
  386. package/lib/esm/components-react/toolbar/ItemWrapper.scss +10 -10
  387. package/lib/esm/components-react/toolbar/Items.js.map +1 -1
  388. package/lib/esm/components-react/toolbar/Items.scss +96 -96
  389. package/lib/esm/components-react/toolbar/Overflow.js.map +1 -1
  390. package/lib/esm/components-react/toolbar/Overflow.scss +57 -57
  391. package/lib/esm/components-react/toolbar/OverflowPanel.js.map +1 -1
  392. package/lib/esm/components-react/toolbar/OverflowPanel.scss +37 -37
  393. package/lib/esm/components-react/toolbar/PopupItem.js.map +1 -1
  394. package/lib/esm/components-react/toolbar/PopupItem.scss +88 -88
  395. package/lib/esm/components-react/toolbar/PopupItemWithDrag.js.map +1 -1
  396. package/lib/esm/components-react/toolbar/PopupItemsPanel.js.map +1 -1
  397. package/lib/esm/components-react/toolbar/Toolbar.js.map +1 -1
  398. package/lib/esm/components-react/toolbar/Toolbar.scss +18 -18
  399. package/lib/esm/components-react/toolbar/ToolbarWithOverflow.js.map +1 -1
  400. package/lib/esm/components-react/toolbar/_variables.scss +34 -34
  401. package/lib/esm/components-react/toolbar/groupPanel/BackArrow.js.map +1 -1
  402. package/lib/esm/components-react/toolbar/groupPanel/BackArrow.scss +44 -44
  403. package/lib/esm/components-react/toolbar/groupPanel/Column.js.map +1 -1
  404. package/lib/esm/components-react/toolbar/groupPanel/Column.scss +9 -9
  405. package/lib/esm/components-react/toolbar/groupPanel/Columns.js.map +1 -1
  406. package/lib/esm/components-react/toolbar/groupPanel/Columns.scss +10 -10
  407. package/lib/esm/components-react/toolbar/groupPanel/Panel.js.map +1 -1
  408. package/lib/esm/components-react/toolbar/groupPanel/Panel.scss +15 -15
  409. package/lib/esm/components-react/toolbar/groupPanel/Title.js.map +1 -1
  410. package/lib/esm/components-react/toolbar/groupPanel/Title.scss +33 -33
  411. package/lib/esm/components-react/toolbar/groupPanel/_variables.scss +16 -16
  412. package/lib/esm/components-react/toolbar/groupPanel/tool/Expander.js.map +1 -1
  413. package/lib/esm/components-react/toolbar/groupPanel/tool/Expander.scss +29 -29
  414. package/lib/esm/components-react/toolbar/groupPanel/tool/Tool.js.map +1 -1
  415. package/lib/esm/components-react/toolbar/groupPanel/tool/Tool.scss +117 -117
  416. package/lib/esm/components-react/toolbar/groupPanel/tool/_variables.scss +12 -12
  417. package/lib/esm/components-react/toolbar/useDragInteraction.js.map +1 -1
  418. package/lib/esm/components-react/toolbar/utilities/Direction.js.map +1 -1
  419. package/lib/esm/components-react/tree/HighlightingEngine.js.map +1 -1
  420. package/lib/esm/components-react/tree/HighlightingEngine.scss +7 -7
  421. package/lib/esm/components-react/tree/ImageLoader.js.map +1 -1
  422. package/lib/esm/components-react/tree/SimpleTreeDataProvider.js.map +1 -1
  423. package/lib/esm/components-react/tree/TreeComponentTestId.js.map +1 -1
  424. package/lib/esm/components-react/tree/TreeDataProvider.js.map +1 -1
  425. package/lib/esm/components-react/tree/controlled/Observable.js.map +1 -1
  426. package/lib/esm/components-react/tree/controlled/TreeActions.js.map +1 -1
  427. package/lib/esm/components-react/tree/controlled/TreeEventDispatcher.js.map +1 -1
  428. package/lib/esm/components-react/tree/controlled/TreeEventHandler.js.map +1 -1
  429. package/lib/esm/components-react/tree/controlled/TreeEvents.js.map +1 -1
  430. package/lib/esm/components-react/tree/controlled/TreeHooks.js.map +1 -1
  431. package/lib/esm/components-react/tree/controlled/TreeModel.js.map +1 -1
  432. package/lib/esm/components-react/tree/controlled/TreeModelSource.js.map +1 -1
  433. package/lib/esm/components-react/tree/controlled/TreeNodeLoader.js.map +1 -1
  434. package/lib/esm/components-react/tree/controlled/component/ControlledTree.js.map +1 -1
  435. package/lib/esm/components-react/tree/controlled/component/ControlledTree.scss +102 -102
  436. package/lib/esm/components-react/tree/controlled/component/NodeContent.js.map +1 -1
  437. package/lib/esm/components-react/tree/controlled/component/NodeContent.scss +27 -27
  438. package/lib/esm/components-react/tree/controlled/component/TreeNodeEditor.js.map +1 -1
  439. package/lib/esm/components-react/tree/controlled/component/TreeNodeRenderer.js.map +1 -1
  440. package/lib/esm/components-react/tree/controlled/component/TreeRenderer.js.map +1 -1
  441. package/lib/esm/components-react/tree/controlled/internal/SparseTree.js.map +1 -1
  442. package/lib/esm/components-react/tree/controlled/internal/TreeModelMutator.js.map +1 -1
  443. package/lib/esm/components-react/tree/controlled/internal/TreeSelectionManager.js.map +1 -1
  444. package/lib/esm/components-react.js.map +1 -1
  445. package/lib/public/locales/en/UiComponents.json +139 -139
  446. package/package.json +16 -14
  447. package/ThirdPartyNotices.md +0 -31
package/CHANGELOG.md CHANGED
@@ -1,6 +1,134 @@
1
1
  # Change Log - @itwin/components-react
2
2
 
3
- This log was last generated on Thu, 01 Sep 2022 14:37:22 GMT and should not be manually modified.
3
+ This log was last generated on Fri, 17 Mar 2023 17:52:32 GMT and should not be manually modified.
4
+
5
+ ## 3.6.2
6
+ Fri, 17 Mar 2023 17:52:32 GMT
7
+
8
+ _Version update only_
9
+
10
+ ## 3.6.1
11
+ Fri, 24 Feb 2023 22:00:48 GMT
12
+
13
+ ### Updates
14
+
15
+ - Update `@itwin/itwinui-icons-react` dependency to version `^1.15`
16
+
17
+ ## 3.6.0
18
+ Wed, 08 Feb 2023 14:58:39 GMT
19
+
20
+ ### Updates
21
+
22
+ - Use EmptyLocalization for localization in tests to increase test performance
23
+ - API promotion
24
+ - API promotion
25
+ - Fixed rule rendering in 'PropertyFilterBuilder' component to not render symbol '0' with 'IS TRUE' operator.
26
+ - `PropertyFilterBuilder`: Do not show rule group operator if there are less than 2 rules
27
+ - Replace inline require with a top-level import
28
+ - Fixed 'FilteringInput' placeholder text localization
29
+
30
+ ## 3.5.6
31
+ Fri, 24 Feb 2023 16:02:47 GMT
32
+
33
+ _Version update only_
34
+
35
+ ## 3.5.5
36
+ Thu, 26 Jan 2023 22:53:27 GMT
37
+
38
+ _Version update only_
39
+
40
+ ## 3.5.4
41
+ Wed, 18 Jan 2023 15:27:15 GMT
42
+
43
+ _Version update only_
44
+
45
+ ## 3.5.3
46
+ Fri, 13 Jan 2023 17:23:07 GMT
47
+
48
+ _Version update only_
49
+
50
+ ## 3.5.2
51
+ Wed, 11 Jan 2023 16:46:30 GMT
52
+
53
+ _Version update only_
54
+
55
+ ## 3.5.1
56
+ Thu, 15 Dec 2022 16:38:28 GMT
57
+
58
+ _Version update only_
59
+
60
+ ## 3.5.0
61
+ Wed, 07 Dec 2022 19:12:36 GMT
62
+
63
+ ### Updates
64
+
65
+ - Enabled virtualization in FilterBuilder property selector
66
+ - Add ability to disable property selection in `PropertyFilterBuilder` component
67
+ - Deprecating Table related components
68
+ - Unpin classnames package
69
+ - `ControlledTree`: Add ability to mark nodes as not selectable
70
+ - Use --buic-toolbar-opacity to set the opacity of toolbar items.
71
+
72
+ ## 3.4.7
73
+ Wed, 30 Nov 2022 14:28:19 GMT
74
+
75
+ _Version update only_
76
+
77
+ ## 3.4.6
78
+ Tue, 22 Nov 2022 14:24:19 GMT
79
+
80
+ _Version update only_
81
+
82
+ ## 3.4.5
83
+ Thu, 17 Nov 2022 21:32:50 GMT
84
+
85
+ _Version update only_
86
+
87
+ ## 3.4.4
88
+ Thu, 10 Nov 2022 19:32:17 GMT
89
+
90
+ _Version update only_
91
+
92
+ ## 3.4.3
93
+ Fri, 28 Oct 2022 13:34:57 GMT
94
+
95
+ _Version update only_
96
+
97
+ ## 3.4.2
98
+ Mon, 24 Oct 2022 13:23:45 GMT
99
+
100
+ _Version update only_
101
+
102
+ ## 3.4.1
103
+ Mon, 17 Oct 2022 20:06:51 GMT
104
+
105
+ _Version update only_
106
+
107
+ ## 3.4.0
108
+ Thu, 13 Oct 2022 20:24:47 GMT
109
+
110
+ ### Updates
111
+
112
+ - Fixed svg rendering when svg is provided as xml
113
+ - Updated Node types declaration to support latest v16
114
+ - Table: fix rows reloading when table is scrolled to the middle
115
+ - Fix/Remove skipped tests
116
+ - `MutableTreeModel`: Accept initial `TreeModel` in the constructor.
117
+
118
+ ## 3.3.5
119
+ Tue, 27 Sep 2022 11:50:59 GMT
120
+
121
+ _Version update only_
122
+
123
+ ## 3.3.4
124
+ Thu, 08 Sep 2022 19:00:04 GMT
125
+
126
+ _Version update only_
127
+
128
+ ## 3.3.3
129
+ Tue, 06 Sep 2022 20:54:19 GMT
130
+
131
+ _Version update only_
4
132
 
5
133
  ## 3.3.2
6
134
  Thu, 01 Sep 2022 14:37:22 GMT
package/README.md CHANGED
@@ -4,8 +4,8 @@ Copyright © Bentley Systems, Incorporated. All rights reserved. See LICENSE.md
4
4
 
5
5
  ## Description
6
6
 
7
- The __@itwin/components-react__ package contains React components that are data-oriented, such as PropertyGrid, Table, Tree and Breadcrumb.
7
+ The __@itwin/components-react__ package contains React components that are data-oriented, such as PropertyGrid and Tree.
8
8
 
9
9
  ## Documentation
10
10
 
11
- See the [iTwin.js](https://www.itwinjs.org) documentation for more information.
11
+ See the [iTwin.js](https://www.itwinjs.org/learning/ui/components/) documentation for more information.
@@ -1 +1 @@
1
- {"version":3,"file":"UiComponents.js","sourceRoot":"","sources":["../../../src/components-react/UiComponents.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,iCAAsC;AACtC,sDAA6C;AAE7C,0DAA8D;AAC9D,kDAA2C;AAE3C;;;GAGG;AACH,MAAa,YAAY;IAIvB;;;OAGG;IACI,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,YAA0B;QACvD,IAAI,YAAY,CAAC,YAAY,EAAE;YAC7B,qBAAM,CAAC,OAAO,CAAC,YAAY,CAAC,cAAc,CAAC,YAAY,CAAC,EAAE,wCAAwC,CAAC,CAAC;YACpG,OAAO;SACR;QAED,IAAA,qBAAa,GAAE,CAAC;QAChB,YAAY,CAAC,aAAa,GAAG,YAAY,CAAC;QAC1C,MAAM,YAAY,CAAC,aAAa,CAAC,iBAAiB,CAAC,YAAY,CAAC,qBAAqB,CAAC,CAAC;QAEvF,MAAM,mBAAM,CAAC,UAAU,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;QACpD,YAAY,CAAC,YAAY,GAAG,IAAI,CAAC;IACnC,CAAC;IAED,0DAA0D;IACnD,MAAM,CAAC,SAAS;QACrB,IAAI,YAAY,CAAC,aAAa;YAC5B,YAAY,CAAC,aAAa,CAAC,mBAAmB,CAAC,YAAY,CAAC,qBAAqB,CAAC,CAAC;QACrF,YAAY,CAAC,aAAa,GAAG,SAAS,CAAC;QAEvC,mBAAM,CAAC,SAAS,EAAE,CAAC;QACnB,YAAY,CAAC,YAAY,GAAG,KAAK,CAAC;IACpC,CAAC;IAED,sDAAsD;IAC/C,MAAM,KAAK,WAAW,KAAc,OAAO,YAAY,CAAC,YAAY,CAAC,CAAC,CAAC;IAE9E;;OAEG;IACI,MAAM,KAAK,YAAY;QAC5B,IAAI,CAAC,YAAY,CAAC,aAAa;YAC7B,MAAM,IAAI,wBAAO,CAAC,YAAY,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,mGAAmG,CAAC,CAAC;QAC5J,OAAO,YAAY,CAAC,aAAa,CAAC;IACpC,CAAC;IAED,kDAAkD;IAC3C,MAAM,KAAK,qBAAqB;QACrC,OAAO,cAAc,CAAC;IACxB,CAAC;IAED,gBAAgB;IACT,MAAM,KAAK,WAAW;QAC3B,OAAO,kBAAkB,CAAC;IAC5B,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,SAAS,CAAC,GAAsB;QAC5C,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE;YAC7B,qBAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,iFAAiF,CAAC,CAAC;YACtI,OAAO,EAAE,CAAC;SACX;QACD,OAAO,YAAY,CAAC,YAAY,CAAC,kBAAkB,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,YAAY,CAAC,qBAAqB,EAAE,CAAC,CAAC;IACvG,CAAC;IAED,gBAAgB;IACT,MAAM,CAAC,cAAc,CAAC,GAAQ;QACnC,MAAM,SAAS,GAAG,IAAA,6BAAY,EAAC,GAAG,CAAC,CAAC;QACpC,MAAM,QAAQ,GAAG,YAAY,CAAC,WAAW,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC/E,OAAO,QAAQ,CAAC;IAClB,CAAC;;AArEc,yBAAY,GAAG,KAAK,CAAC;AADzB,oCAAY","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/** @packageDocumentation\n * @module Common\n */\n\nimport { enablePatches } from \"immer\";\nimport { Logger } from \"@itwin/core-bentley\";\nimport { Localization } from \"@itwin/core-common\";\nimport { getClassName, UiError } from \"@itwin/appui-abstract\";\nimport { UiCore } from \"@itwin/core-react\";\n\n/**\n * Manages the localization service for the components-react package.\n * @public\n */\nexport class UiComponents {\n private static _initialized = false;\n private static _localization?: Localization;\n\n /**\n * Registers the localization service namespace for UiComponents. Also initializes UiCore.\n * @param localization The internationalization service created by the host application.\n */\n public static async initialize(localization: Localization): Promise<void> {\n if (UiComponents._initialized) {\n Logger.logInfo(UiComponents.loggerCategory(UiComponents), `UiComponents.initialize already called`);\n return;\n }\n\n enablePatches();\n UiComponents._localization = localization;\n await UiComponents._localization.registerNamespace(UiComponents.localizationNamespace);\n\n await UiCore.initialize(UiComponents._localization);\n UiComponents._initialized = true;\n }\n\n /** Unregisters the UiComponents localization namespace */\n public static terminate() {\n if (UiComponents._localization)\n UiComponents._localization.unregisterNamespace(UiComponents.localizationNamespace);\n UiComponents._localization = undefined;\n\n UiCore.terminate();\n UiComponents._initialized = false;\n }\n\n /** Determines if UiComponents has been initialized */\n public static get initialized(): boolean { return UiComponents._initialized; }\n\n /** The internationalization service created by the host application.\n * @internal\n */\n public static get localization(): Localization {\n if (!UiComponents._localization)\n throw new UiError(UiComponents.loggerCategory(this), \"_localization: UiComponents.initialize has not been called. Unable to return Localization object.\");\n return UiComponents._localization;\n }\n\n /** The internationalization service namespace. */\n public static get localizationNamespace(): string {\n return \"UiComponents\";\n }\n\n /** @internal */\n public static get packageName(): string {\n return \"components-react\";\n }\n\n /** Calls localization.getLocalizedStringWithNamespace with the \"UiComponents\" namespace. Do NOT include the namespace in the key.\n * @internal\n */\n public static translate(key: string | string[]): string {\n if (!UiComponents.initialized) {\n Logger.logError(UiComponents.loggerCategory(this), `translate: UiComponents.initialize has not been called. Returning blank string.`);\n return \"\";\n }\n return UiComponents.localization.getLocalizedString(key, { ns: UiComponents.localizationNamespace });\n }\n\n /** @internal */\n public static loggerCategory(obj: any): string {\n const className = getClassName(obj);\n const category = UiComponents.packageName + (className ? `.${className}` : \"\");\n return category;\n }\n\n}\n"]}
1
+ {"version":3,"file":"UiComponents.js","sourceRoot":"","sources":["../../../src/components-react/UiComponents.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,iCAAsC;AACtC,sDAA6C;AAE7C,0DAA8D;AAC9D,kDAA2C;AAE3C;;;GAGG;AACH,MAAa,YAAY;IAIvB;;;OAGG;IACI,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,YAA0B;QACvD,IAAI,YAAY,CAAC,YAAY,EAAE;YAC7B,qBAAM,CAAC,OAAO,CAAC,YAAY,CAAC,cAAc,CAAC,YAAY,CAAC,EAAE,wCAAwC,CAAC,CAAC;YACpG,OAAO;SACR;QAED,IAAA,qBAAa,GAAE,CAAC;QAChB,YAAY,CAAC,aAAa,GAAG,YAAY,CAAC;QAC1C,MAAM,YAAY,CAAC,aAAa,CAAC,iBAAiB,CAAC,YAAY,CAAC,qBAAqB,CAAC,CAAC;QAEvF,MAAM,mBAAM,CAAC,UAAU,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;QACpD,YAAY,CAAC,YAAY,GAAG,IAAI,CAAC;IACnC,CAAC;IAED,0DAA0D;IACnD,MAAM,CAAC,SAAS;QACrB,IAAI,YAAY,CAAC,aAAa;YAC5B,YAAY,CAAC,aAAa,CAAC,mBAAmB,CAAC,YAAY,CAAC,qBAAqB,CAAC,CAAC;QACrF,YAAY,CAAC,aAAa,GAAG,SAAS,CAAC;QAEvC,mBAAM,CAAC,SAAS,EAAE,CAAC;QACnB,YAAY,CAAC,YAAY,GAAG,KAAK,CAAC;IACpC,CAAC;IAED,sDAAsD;IAC/C,MAAM,KAAK,WAAW,KAAc,OAAO,YAAY,CAAC,YAAY,CAAC,CAAC,CAAC;IAE9E;;OAEG;IACI,MAAM,KAAK,YAAY;QAC5B,IAAI,CAAC,YAAY,CAAC,aAAa;YAC7B,MAAM,IAAI,wBAAO,CAAC,YAAY,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,mGAAmG,CAAC,CAAC;QAC5J,OAAO,YAAY,CAAC,aAAa,CAAC;IACpC,CAAC;IAED,kDAAkD;IAC3C,MAAM,KAAK,qBAAqB;QACrC,OAAO,cAAc,CAAC;IACxB,CAAC;IAED,gBAAgB;IACT,MAAM,KAAK,WAAW;QAC3B,OAAO,kBAAkB,CAAC;IAC5B,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,SAAS,CAAC,GAAsB;QAC5C,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE;YAC7B,qBAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,iFAAiF,CAAC,CAAC;YACtI,OAAO,EAAE,CAAC;SACX;QACD,OAAO,YAAY,CAAC,YAAY,CAAC,kBAAkB,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,YAAY,CAAC,qBAAqB,EAAE,CAAC,CAAC;IACvG,CAAC;IAED,gBAAgB;IACT,MAAM,CAAC,cAAc,CAAC,GAAQ;QACnC,MAAM,SAAS,GAAG,IAAA,6BAAY,EAAC,GAAG,CAAC,CAAC;QACpC,MAAM,QAAQ,GAAG,YAAY,CAAC,WAAW,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC/E,OAAO,QAAQ,CAAC;IAClB,CAAC;;AArEc,yBAAY,GAAG,KAAK,CAAC;AADzB,oCAAY","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Common\r\n */\r\n\r\nimport { enablePatches } from \"immer\";\r\nimport { Logger } from \"@itwin/core-bentley\";\r\nimport { Localization } from \"@itwin/core-common\";\r\nimport { getClassName, UiError } from \"@itwin/appui-abstract\";\r\nimport { UiCore } from \"@itwin/core-react\";\r\n\r\n/**\r\n * Manages the localization service for the components-react package.\r\n * @public\r\n */\r\nexport class UiComponents {\r\n private static _initialized = false;\r\n private static _localization?: Localization;\r\n\r\n /**\r\n * Registers the localization service namespace for UiComponents. Also initializes UiCore.\r\n * @param localization The internationalization service created by the host application.\r\n */\r\n public static async initialize(localization: Localization): Promise<void> {\r\n if (UiComponents._initialized) {\r\n Logger.logInfo(UiComponents.loggerCategory(UiComponents), `UiComponents.initialize already called`);\r\n return;\r\n }\r\n\r\n enablePatches();\r\n UiComponents._localization = localization;\r\n await UiComponents._localization.registerNamespace(UiComponents.localizationNamespace);\r\n\r\n await UiCore.initialize(UiComponents._localization);\r\n UiComponents._initialized = true;\r\n }\r\n\r\n /** Unregisters the UiComponents localization namespace */\r\n public static terminate() {\r\n if (UiComponents._localization)\r\n UiComponents._localization.unregisterNamespace(UiComponents.localizationNamespace);\r\n UiComponents._localization = undefined;\r\n\r\n UiCore.terminate();\r\n UiComponents._initialized = false;\r\n }\r\n\r\n /** Determines if UiComponents has been initialized */\r\n public static get initialized(): boolean { return UiComponents._initialized; }\r\n\r\n /** The internationalization service created by the host application.\r\n * @internal\r\n */\r\n public static get localization(): Localization {\r\n if (!UiComponents._localization)\r\n throw new UiError(UiComponents.loggerCategory(this), \"_localization: UiComponents.initialize has not been called. Unable to return Localization object.\");\r\n return UiComponents._localization;\r\n }\r\n\r\n /** The internationalization service namespace. */\r\n public static get localizationNamespace(): string {\r\n return \"UiComponents\";\r\n }\r\n\r\n /** @internal */\r\n public static get packageName(): string {\r\n return \"components-react\";\r\n }\r\n\r\n /** Calls localization.getLocalizedStringWithNamespace with the \"UiComponents\" namespace. Do NOT include the namespace in the key.\r\n * @internal\r\n */\r\n public static translate(key: string | string[]): string {\r\n if (!UiComponents.initialized) {\r\n Logger.logError(UiComponents.loggerCategory(this), `translate: UiComponents.initialize has not been called. Returning blank string.`);\r\n return \"\";\r\n }\r\n return UiComponents.localization.getLocalizedString(key, { ns: UiComponents.localizationNamespace });\r\n }\r\n\r\n /** @internal */\r\n public static loggerCategory(obj: any): string {\r\n const className = getClassName(obj);\r\n const category = UiComponents.packageName + (className ? `.${className}` : \"\");\r\n return category;\r\n }\r\n\r\n}\r\n"]}
@@ -1,9 +1,9 @@
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
- *--------------------------------------------------------------------------------------------*/
5
- @mixin components-internal-targeted {
6
- &:hover, &.components-targeted {
7
- @content;
8
- }
9
- }
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
+ *--------------------------------------------------------------------------------------------*/
5
+ @mixin components-internal-targeted {
6
+ &:hover, &.components-targeted {
7
+ @content;
8
+ }
9
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"DateUtils.js","sourceRoot":"","sources":["../../../../src/components-react/common/DateUtils.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAWH;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,SAAgB,oBAAoB,CAAC,UAAgB,EAAE,SAAiB;IACtE,OAAO,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,UAAU,CAAC,iBAAiB,EAAE,GAAG,SAAS,CAAC,GAAG,KAAK,CAAC,CAAC;AAC/F,CAAC;AAFD,oDAEC;AACD;;;;;;;GAOG;AACI,MAAM,YAAY,GAAG,CAAC,IAAU,EAAE,cAAuB,EAAE,aAAiC,EAAE,EAAE;IACrG,IAAI,aAAa,EAAE;QACjB,OAAO,SAAS,KAAK,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;YAC3G,oBAAoB,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,kBAAkB,CAAC,aAAa,CAAC,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;KAC/G;IACD,OAAO,SAAS,KAAK,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC,oBAAoB,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,kBAAkB,EAAE,CAAC;AACpI,CAAC,CAAC;AANW,QAAA,YAAY,gBAMvB;AACF;;;;;;;GAOG;AACI,MAAM,YAAY,GAAG,CAAC,IAAU,EAAE,cAAuB,EAAE,aAAiC,EAAE,EAAE;IACrG,IAAI,aAAa,EAAE;QACjB,OAAO,SAAS,KAAK,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;YAC3G,oBAAoB,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,kBAAkB,CAAC,aAAa,CAAC,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;KAC/G;IACD,OAAO,SAAS,KAAK,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC,oBAAoB,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,kBAAkB,EAAE,CAAC;AACpI,CAAC,CAAC;AANW,QAAA,YAAY,gBAMvB","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/** @packageDocumentation\n * @module Common\n */\n\n/**\n * Define formatting options for use when component are generating a formatted date string calling `Date.toLocaleTimeString()`.\n * @public\n */\nexport interface DateFormatOptions {\n locales?: string | string[] | undefined;\n options?: Intl.DateTimeFormatOptions | undefined;\n}\n\n/**\n * Adjust a Date object to show time in one time zone as if it is in the local time zone.\n * This is useful when showing sunrise and sunset times for a project location in a different time zone\n * and the time displayed should appear as if the user is seeing clock in project location.\n * Example 1:\n * If you have a UTC time for London (UTC +0100) and you want to display it in Eastern-US (UTC -0400) as if you were in London.\n * ```ts\n * londonDate = new Date(\"July 22, 2018 07:22:13 +0100\");\n * in Eastern-US londonDate will show as '7/22/2018, 2:22:13 AM'\n * adjustedDate = adjustDateToTimezone(londonDate, 1*60);\n * in location Eastern-US adjustedDate will show as '7/22/2018, 7:22:13 AM'\n * ```\n * Example 2:\n * If you have a UTC time for your location (UTC -0400) and you want to display the time as if you are in Western-US (UTC -0700).\n * ```ts\n * easternDate = new Date(\"July 22, 2018 07:22:13 -0400\");\n * adjustedDate = adjustDateToTimezone(easternDate, -7*60);\n * in location Eastern-US adjustedDate will show as '7/22/2018, 7:22:13 AM'\n * ```\n *\n * The utcOffset must be the time in minutes between the UTC and the desired time zone at the date specified by inDateTime.\n * For example, if you want the time offset to New York, NY and the date is during Daylight Saving Time, utcOffset should be -240 (-4 * 60).\n * If the date falls during Standard Time in New York, utcOffset will be -300 (-5 * 60).\n *\n * @param inDateTime date/time at project location\n * @param utcOffset UTC offset in minutes\n * @public\n */\nexport function adjustDateToTimezone(inDateTime: Date, utcOffset: number) {\n return new Date(inDateTime.getTime() + (inDateTime.getTimezoneOffset() + utcOffset) * 60000);\n}\n/**\n * Format a date in a display string, optionally converting to time zone, if specified by timeZoneOffset\n * @param date Date object to format\n * @param timeZoneOffset optional: offset from UTC to use for conversion\n * @param formatOptions optional: allow locale and format for output Date string. If not defined current locale options are used.\n * @returns formatted date string\n * @public\n */\nexport const toDateString = (date: Date, timeZoneOffset?: number, formatOptions?: DateFormatOptions) => {\n if (formatOptions) {\n return undefined === timeZoneOffset ? date.toLocaleDateString(formatOptions.locales, formatOptions.options) :\n adjustDateToTimezone(date, timeZoneOffset).toLocaleDateString(formatOptions.locales, formatOptions.options);\n }\n return undefined === timeZoneOffset ? date.toLocaleDateString() : adjustDateToTimezone(date, timeZoneOffset).toLocaleDateString();\n};\n/**\n * Format the time included in a date, optionally converting to time zone, if specified\n * @param date Date object\n * @param timeZoneOffset optional: offset from UTC to use for conversion\n * @param formatOptions optional: allow locale and format for output Time string. If not defined current locale options are used.\n * @returns formatted time string\n * @public\n */\nexport const toTimeString = (date: Date, timeZoneOffset?: number, formatOptions?: DateFormatOptions) => {\n if (formatOptions) {\n return undefined === timeZoneOffset ? date.toLocaleTimeString(formatOptions.locales, formatOptions.options) :\n adjustDateToTimezone(date, timeZoneOffset).toLocaleTimeString(formatOptions.locales, formatOptions.options);\n }\n return undefined === timeZoneOffset ? date.toLocaleTimeString() : adjustDateToTimezone(date, timeZoneOffset).toLocaleTimeString();\n};\n\n"]}
1
+ {"version":3,"file":"DateUtils.js","sourceRoot":"","sources":["../../../../src/components-react/common/DateUtils.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAWH;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,SAAgB,oBAAoB,CAAC,UAAgB,EAAE,SAAiB;IACtE,OAAO,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,UAAU,CAAC,iBAAiB,EAAE,GAAG,SAAS,CAAC,GAAG,KAAK,CAAC,CAAC;AAC/F,CAAC;AAFD,oDAEC;AACD;;;;;;;GAOG;AACI,MAAM,YAAY,GAAG,CAAC,IAAU,EAAE,cAAuB,EAAE,aAAiC,EAAE,EAAE;IACrG,IAAI,aAAa,EAAE;QACjB,OAAO,SAAS,KAAK,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;YAC3G,oBAAoB,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,kBAAkB,CAAC,aAAa,CAAC,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;KAC/G;IACD,OAAO,SAAS,KAAK,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC,oBAAoB,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,kBAAkB,EAAE,CAAC;AACpI,CAAC,CAAC;AANW,QAAA,YAAY,gBAMvB;AACF;;;;;;;GAOG;AACI,MAAM,YAAY,GAAG,CAAC,IAAU,EAAE,cAAuB,EAAE,aAAiC,EAAE,EAAE;IACrG,IAAI,aAAa,EAAE;QACjB,OAAO,SAAS,KAAK,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;YAC3G,oBAAoB,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,kBAAkB,CAAC,aAAa,CAAC,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;KAC/G;IACD,OAAO,SAAS,KAAK,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC,oBAAoB,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,kBAAkB,EAAE,CAAC;AACpI,CAAC,CAAC;AANW,QAAA,YAAY,gBAMvB","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Common\r\n */\r\n\r\n/**\r\n * Define formatting options for use when component are generating a formatted date string calling `Date.toLocaleTimeString()`.\r\n * @public\r\n */\r\nexport interface DateFormatOptions {\r\n locales?: string | string[] | undefined;\r\n options?: Intl.DateTimeFormatOptions | undefined;\r\n}\r\n\r\n/**\r\n * Adjust a Date object to show time in one time zone as if it is in the local time zone.\r\n * This is useful when showing sunrise and sunset times for a project location in a different time zone\r\n * and the time displayed should appear as if the user is seeing clock in project location.\r\n * Example 1:\r\n * If you have a UTC time for London (UTC +0100) and you want to display it in Eastern-US (UTC -0400) as if you were in London.\r\n * ```ts\r\n * londonDate = new Date(\"July 22, 2018 07:22:13 +0100\");\r\n * in Eastern-US londonDate will show as '7/22/2018, 2:22:13 AM'\r\n * adjustedDate = adjustDateToTimezone(londonDate, 1*60);\r\n * in location Eastern-US adjustedDate will show as '7/22/2018, 7:22:13 AM'\r\n * ```\r\n * Example 2:\r\n * If you have a UTC time for your location (UTC -0400) and you want to display the time as if you are in Western-US (UTC -0700).\r\n * ```ts\r\n * easternDate = new Date(\"July 22, 2018 07:22:13 -0400\");\r\n * adjustedDate = adjustDateToTimezone(easternDate, -7*60);\r\n * in location Eastern-US adjustedDate will show as '7/22/2018, 7:22:13 AM'\r\n * ```\r\n *\r\n * The utcOffset must be the time in minutes between the UTC and the desired time zone at the date specified by inDateTime.\r\n * For example, if you want the time offset to New York, NY and the date is during Daylight Saving Time, utcOffset should be -240 (-4 * 60).\r\n * If the date falls during Standard Time in New York, utcOffset will be -300 (-5 * 60).\r\n *\r\n * @param inDateTime date/time at project location\r\n * @param utcOffset UTC offset in minutes\r\n * @public\r\n */\r\nexport function adjustDateToTimezone(inDateTime: Date, utcOffset: number) {\r\n return new Date(inDateTime.getTime() + (inDateTime.getTimezoneOffset() + utcOffset) * 60000);\r\n}\r\n/**\r\n * Format a date in a display string, optionally converting to time zone, if specified by timeZoneOffset\r\n * @param date Date object to format\r\n * @param timeZoneOffset optional: offset from UTC to use for conversion\r\n * @param formatOptions optional: allow locale and format for output Date string. If not defined current locale options are used.\r\n * @returns formatted date string\r\n * @public\r\n */\r\nexport const toDateString = (date: Date, timeZoneOffset?: number, formatOptions?: DateFormatOptions) => {\r\n if (formatOptions) {\r\n return undefined === timeZoneOffset ? date.toLocaleDateString(formatOptions.locales, formatOptions.options) :\r\n adjustDateToTimezone(date, timeZoneOffset).toLocaleDateString(formatOptions.locales, formatOptions.options);\r\n }\r\n return undefined === timeZoneOffset ? date.toLocaleDateString() : adjustDateToTimezone(date, timeZoneOffset).toLocaleDateString();\r\n};\r\n/**\r\n * Format the time included in a date, optionally converting to time zone, if specified\r\n * @param date Date object\r\n * @param timeZoneOffset optional: offset from UTC to use for conversion\r\n * @param formatOptions optional: allow locale and format for output Time string. If not defined current locale options are used.\r\n * @returns formatted time string\r\n * @public\r\n */\r\nexport const toTimeString = (date: Date, timeZoneOffset?: number, formatOptions?: DateFormatOptions) => {\r\n if (formatOptions) {\r\n return undefined === timeZoneOffset ? date.toLocaleTimeString(formatOptions.locales, formatOptions.options) :\r\n adjustDateToTimezone(date, timeZoneOffset).toLocaleTimeString(formatOptions.locales, formatOptions.options);\r\n }\r\n return undefined === timeZoneOffset ? date.toLocaleTimeString() : adjustDateToTimezone(date, timeZoneOffset).toLocaleTimeString();\r\n};\r\n\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"DelayedSpinner.js","sourceRoot":"","sources":["../../../../src/components-react/common/DelayedSpinner.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,6CAA+B;AAC/B,wDAA2E;AAe3E;;;GAGG;AACH,SAAgB,cAAc,CAAC,KAA0B;IACvD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,IAAI,GAAG,CAAC;IACjC,MAAM,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC;IAElE,MAAM,QAAQ,GAAG,IAAI,IAAI,EAAE,CAAC;IAC5B,MAAM,IAAI,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC;IAExD,MAAM,MAAM,GAAG,cAAc,EAAE,CAAC;IAChC,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,IAAI,IAAI,IAAI,KAAK;YACf,OAAO;QACT,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,EAAE,KAAK,GAAG,IAAI,CAAC,CAAC;QAC/C,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,IAAI,IAAI,GAAG,KAAK;QACd,OAAO,IAAI,CAAC;IAEd,OAAO,CAAC,oBAAC,8BAAc,IAAC,aAAa,QAAC,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,OAAO,GAAI,CAAC,CAAC;AACzE,CAAC;AAnBD,wCAmBC;AAED,MAAM,cAAc,GAAG,GAAG,EAAE;IAC1B,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC1C,OAAO,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;AAC3B,CAAC,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/** @packageDocumentation\n * @module Common\n */\n\nimport * as React from \"react\";\nimport { ProgressRadial, ProgressRadialProps } from \"@itwin/itwinui-react\";\n\n/** Type for ProgressRadialProps.size */\ntype RadialSizeType = ProgressRadialProps[\"size\"];\n\n/**\n * Props for [[DelayedSpinner]] component.\n * @internal\n */\nexport interface DelayedSpinnerProps {\n loadStart?: Date;\n delay?: number;\n size?: RadialSizeType;\n}\n\n/**\n * Spinner that is rendered with delay.\n * @internal\n */\nexport function DelayedSpinner(props: DelayedSpinnerProps) {\n const delay = props.delay ?? 500;\n const [loadStart] = React.useState(props.loadStart || new Date());\n\n const currTime = new Date();\n const diff = (currTime.getTime() - loadStart.getTime());\n\n const update = useForceUpdate();\n React.useEffect(() => {\n if (diff >= delay)\n return;\n const timer = setTimeout(update, delay - diff);\n return () => clearTimeout(timer);\n });\n\n if (diff < delay)\n return null;\n\n return (<ProgressRadial indeterminate size={props.size ?? \"large\"} />);\n}\n\nconst useForceUpdate = () => {\n const [value, set] = React.useState(true);\n return () => set(!value);\n};\n"]}
1
+ {"version":3,"file":"DelayedSpinner.js","sourceRoot":"","sources":["../../../../src/components-react/common/DelayedSpinner.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,6CAA+B;AAC/B,wDAA2E;AAe3E;;;GAGG;AACH,SAAgB,cAAc,CAAC,KAA0B;IACvD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,IAAI,GAAG,CAAC;IACjC,MAAM,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC;IAElE,MAAM,QAAQ,GAAG,IAAI,IAAI,EAAE,CAAC;IAC5B,MAAM,IAAI,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC;IAExD,MAAM,MAAM,GAAG,cAAc,EAAE,CAAC;IAChC,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,IAAI,IAAI,IAAI,KAAK;YACf,OAAO;QACT,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,EAAE,KAAK,GAAG,IAAI,CAAC,CAAC;QAC/C,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,IAAI,IAAI,GAAG,KAAK;QACd,OAAO,IAAI,CAAC;IAEd,OAAO,CAAC,oBAAC,8BAAc,IAAC,aAAa,QAAC,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,OAAO,GAAI,CAAC,CAAC;AACzE,CAAC;AAnBD,wCAmBC;AAED,MAAM,cAAc,GAAG,GAAG,EAAE;IAC1B,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC1C,OAAO,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;AAC3B,CAAC,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Common\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { ProgressRadial, ProgressRadialProps } from \"@itwin/itwinui-react\";\r\n\r\n/** Type for ProgressRadialProps.size */\r\ntype RadialSizeType = ProgressRadialProps[\"size\"];\r\n\r\n/**\r\n * Props for [[DelayedSpinner]] component.\r\n * @internal\r\n */\r\nexport interface DelayedSpinnerProps {\r\n loadStart?: Date;\r\n delay?: number;\r\n size?: RadialSizeType;\r\n}\r\n\r\n/**\r\n * Spinner that is rendered with delay.\r\n * @internal\r\n */\r\nexport function DelayedSpinner(props: DelayedSpinnerProps) {\r\n const delay = props.delay ?? 500;\r\n const [loadStart] = React.useState(props.loadStart || new Date());\r\n\r\n const currTime = new Date();\r\n const diff = (currTime.getTime() - loadStart.getTime());\r\n\r\n const update = useForceUpdate();\r\n React.useEffect(() => {\r\n if (diff >= delay)\r\n return;\r\n const timer = setTimeout(update, delay - diff);\r\n return () => clearTimeout(timer);\r\n });\r\n\r\n if (diff < delay)\r\n return null;\r\n\r\n return (<ProgressRadial indeterminate size={props.size ?? \"large\"} />);\r\n}\r\n\r\nconst useForceUpdate = () => {\r\n const [value, set] = React.useState(true);\r\n return () => set(!value);\r\n};\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"HighlightedText.js","sourceRoot":"","sources":["../../../../src/components-react/common/HighlightedText.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;;;;AAEH,kDAA0B;AAC1B,kFAAgD;AAChD,mEAAgE;AAiBhE;;;;;GAKG;AACH,SAAgB,eAAe,CAAC,KAA2B;IACzD,MAAM,EAAE,UAAU,EAAE,gBAAgB,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,KAAK,CAAC;IACpE,OAAO,CACL,8BAAC,+BAAW,IACV,WAAW,EAAE,CAAC,UAAU,CAAC,EACzB,UAAU,EAAE,iBAAwB,EACpC,WAAW,EAAE,gBAAuB,EACpC,eAAe,EAAE,uCAAkB,CAAC,iBAAiB,EACrD,UAAU,EAAE,IAAI,EAChB,eAAe,EAAE,IAAI,EACrB,aAAa,EAAE,aAAa,GAC5B,CACH,CAAC;AACJ,CAAC;AAbD,0CAaC;AAaD,MAAM,iBAAiB,GAAG,CAAC,IAAoB,EAAsB,EAAE;IACrE,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC;IAC5F,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IAC1F,MAAM,MAAM,GAAuB,EAAE,CAAC;IACtC,IAAI,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/B,OAAO,KAAK,KAAK,CAAC,CAAC,EAAE;QACnB,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACzE,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;KACvC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC,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/** @packageDocumentation\n * @module Common\n */\n\nimport React from \"react\";\nimport Highlighter from \"react-highlight-words\";\nimport { HighlightingEngine } from \"../tree/HighlightingEngine\";\n\n/**\n * Properties of [[HighlightedText]]\n * @public\n */\nexport interface HighlightedTextProps {\n /* Filter text which we want to highlight */\n searchText: string;\n /* Index of actively highlighted part in a text */\n activeMatchIndex?: number;\n /* Full text */\n text: string;\n /** Should search be case sensitive */\n caseSensitive?: boolean;\n}\n\n/**\n * Highlighted text\n * Used for highlighting parts in the 'text' which match with 'searchText'\n * Also actively highlights one matched part which is selected with 'activeMatchIndex'\n * @public\n */\nexport function HighlightedText(props: HighlightedTextProps) {\n const { searchText, activeMatchIndex, text, caseSensitive } = props;\n return (\n <Highlighter\n searchWords={[searchText]}\n findChunks={findChunksNoRegex as any} // .d.ts declaration wrong\n activeIndex={activeMatchIndex as any} // .d.ts file seems to be wrong, doesn't work if it's a string\n activeClassName={HighlightingEngine.ACTIVE_CLASS_NAME}\n autoEscape={true}\n textToHighlight={text}\n caseSensitive={caseSensitive}\n />\n );\n}\n\ninterface HighlighterChunk {\n highlight: boolean;\n start: number;\n end: number;\n}\ninterface FindChunksArgs {\n autoEscape?: boolean;\n caseSensitive?: boolean;\n searchWords: string[];\n textToHighlight: string;\n}\nconst findChunksNoRegex = (args: FindChunksArgs): HighlighterChunk[] => {\n const text = args.caseSensitive ? args.textToHighlight : args.textToHighlight.toUpperCase();\n const term = args.caseSensitive ? args.searchWords[0] : args.searchWords[0].toUpperCase();\n const chunks: HighlighterChunk[] = [];\n let index = text.indexOf(term);\n while (index !== -1) {\n chunks.push({ start: index, end: index + term.length, highlight: true });\n index = text.indexOf(term, index + 1);\n }\n return chunks;\n};\n"]}
1
+ {"version":3,"file":"HighlightedText.js","sourceRoot":"","sources":["../../../../src/components-react/common/HighlightedText.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;;;;AAEH,kDAA0B;AAC1B,kFAAgD;AAChD,mEAAgE;AAiBhE;;;;;GAKG;AACH,SAAgB,eAAe,CAAC,KAA2B;IACzD,MAAM,EAAE,UAAU,EAAE,gBAAgB,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,KAAK,CAAC;IACpE,OAAO,CACL,8BAAC,+BAAW,IACV,WAAW,EAAE,CAAC,UAAU,CAAC,EACzB,UAAU,EAAE,iBAAwB,EACpC,WAAW,EAAE,gBAAuB,EACpC,eAAe,EAAE,uCAAkB,CAAC,iBAAiB,EACrD,UAAU,EAAE,IAAI,EAChB,eAAe,EAAE,IAAI,EACrB,aAAa,EAAE,aAAa,GAC5B,CACH,CAAC;AACJ,CAAC;AAbD,0CAaC;AAaD,MAAM,iBAAiB,GAAG,CAAC,IAAoB,EAAsB,EAAE;IACrE,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC;IAC5F,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IAC1F,MAAM,MAAM,GAAuB,EAAE,CAAC;IACtC,IAAI,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/B,OAAO,KAAK,KAAK,CAAC,CAAC,EAAE;QACnB,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACzE,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;KACvC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Common\r\n */\r\n\r\nimport React from \"react\";\r\nimport Highlighter from \"react-highlight-words\";\r\nimport { HighlightingEngine } from \"../tree/HighlightingEngine\";\r\n\r\n/**\r\n * Properties of [[HighlightedText]]\r\n * @public\r\n */\r\nexport interface HighlightedTextProps {\r\n /* Filter text which we want to highlight */\r\n searchText: string;\r\n /* Index of actively highlighted part in a text */\r\n activeMatchIndex?: number;\r\n /* Full text */\r\n text: string;\r\n /** Should search be case sensitive */\r\n caseSensitive?: boolean;\r\n}\r\n\r\n/**\r\n * Highlighted text\r\n * Used for highlighting parts in the 'text' which match with 'searchText'\r\n * Also actively highlights one matched part which is selected with 'activeMatchIndex'\r\n * @public\r\n */\r\nexport function HighlightedText(props: HighlightedTextProps) {\r\n const { searchText, activeMatchIndex, text, caseSensitive } = props;\r\n return (\r\n <Highlighter\r\n searchWords={[searchText]}\r\n findChunks={findChunksNoRegex as any} // .d.ts declaration wrong\r\n activeIndex={activeMatchIndex as any} // .d.ts file seems to be wrong, doesn't work if it's a string\r\n activeClassName={HighlightingEngine.ACTIVE_CLASS_NAME}\r\n autoEscape={true}\r\n textToHighlight={text}\r\n caseSensitive={caseSensitive}\r\n />\r\n );\r\n}\r\n\r\ninterface HighlighterChunk {\r\n highlight: boolean;\r\n start: number;\r\n end: number;\r\n}\r\ninterface FindChunksArgs {\r\n autoEscape?: boolean;\r\n caseSensitive?: boolean;\r\n searchWords: string[];\r\n textToHighlight: string;\r\n}\r\nconst findChunksNoRegex = (args: FindChunksArgs): HighlighterChunk[] => {\r\n const text = args.caseSensitive ? args.textToHighlight : args.textToHighlight.toUpperCase();\r\n const term = args.caseSensitive ? args.searchWords[0] : args.searchWords[0].toUpperCase();\r\n const chunks: HighlighterChunk[] = [];\r\n let index = text.indexOf(term);\r\n while (index !== -1) {\r\n chunks.push({ start: index, end: index + term.length, highlight: true });\r\n index = text.indexOf(term, index + 1);\r\n }\r\n return chunks;\r\n};\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"HighlightingComponentProps.js","sourceRoot":"","sources":["../../../../src/components-react/common/HighlightingComponentProps.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG","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/** @packageDocumentation\n * @module Common\n */\n\n/**\n * Item highlight info used for identification of a specific highlight in an item\n * @public\n */\nexport interface HighlightInfo {\n /* item's identifier, used for its identification */\n highlightedItemIdentifier: string;\n /* Index of highlighted part in an item */\n highlightIndex: number;\n}\n\n/**\n * Properties used for highlighting parts in item by given text and actively highlighting one highlight in a distinct item specified in `activeHighlight`\n * @public\n */\nexport interface HighlightingComponentProps {\n /* Filter text which we want to highlight */\n highlightedText: string;\n /* Information about the highlight which we want to actively highlight */\n activeHighlight?: HighlightInfo;\n}\n"]}
1
+ {"version":3,"file":"HighlightingComponentProps.js","sourceRoot":"","sources":["../../../../src/components-react/common/HighlightingComponentProps.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Common\r\n */\r\n\r\n/**\r\n * Item highlight info used for identification of a specific highlight in an item\r\n * @public\r\n */\r\nexport interface HighlightInfo {\r\n /* item's identifier, used for its identification */\r\n highlightedItemIdentifier: string;\r\n /* Index of highlighted part in an item */\r\n highlightIndex: number;\r\n}\r\n\r\n/**\r\n * Properties used for highlighting parts in item by given text and actively highlighting one highlight in a distinct item specified in `activeHighlight`\r\n * @public\r\n */\r\nexport interface HighlightingComponentProps {\r\n /* Filter text which we want to highlight */\r\n highlightedText: string;\r\n /* Information about the highlight which we want to actively highlight */\r\n activeHighlight?: HighlightInfo;\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"IImageLoader.js","sourceRoot":"","sources":["../../../../src/components-react/common/IImageLoader.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG","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/** @packageDocumentation\n * @module Common\n */\n\n/**\n * Type of loaded image source:\n * * \"svg\" will render svg strings inline with the rest of the DOM\n * * \"url\" will render a simple img tag with __url__ as it's source\n * * \"binary\" expects a HEX string for the value and will render raw image\n * * \"core-icon\" will render an icon bundled with @itwin/core-react\n * * \"webfont-icon\" will render web font icon from provided font-family. When no font-family given, defaults to \"bentley-icons-generic-webfont\".\n * @public\n */\nexport type ImageSourceType = \"svg\" | \"url\" | \"binary\" | \"core-icon\" | \"webfont-icon\";\n\n/** Type of raw image format\n * @public\n */\nexport type ImageFileFormat = \"png\" | \"jpg\" | \"jpge\";\n\n/** Image data for string based images\n * @public\n */\nexport interface LoadedImage {\n value: string;\n sourceType: ImageSourceType;\n}\n\n/** Image data for raw images\n * @public\n */\nexport interface LoadedBinaryImage extends LoadedImage {\n fileFormat: ImageFileFormat;\n}\n\n/** Image data returned by an [[IImageLoader]]\n * @public\n */\nexport type Image = LoadedImage | LoadedBinaryImage;\n\n/** Interface for an image loader.\n * @public\n */\nexport interface IImageLoader {\n /** Function that will load image data */\n load: (item: any) => Image | undefined;\n}\n"]}
1
+ {"version":3,"file":"IImageLoader.js","sourceRoot":"","sources":["../../../../src/components-react/common/IImageLoader.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Common\r\n */\r\n\r\n/**\r\n * Type of loaded image source:\r\n * * \"svg\" will render svg strings inline with the rest of the DOM\r\n * * \"url\" will render a simple img tag with __url__ as it's source\r\n * * \"binary\" expects a HEX string for the value and will render raw image\r\n * * \"core-icon\" will render an icon bundled with @itwin/core-react\r\n * * \"webfont-icon\" will render web font icon from provided font-family. When no font-family given, defaults to \"bentley-icons-generic-webfont\".\r\n * @public\r\n */\r\nexport type ImageSourceType = \"svg\" | \"url\" | \"binary\" | \"core-icon\" | \"webfont-icon\";\r\n\r\n/** Type of raw image format\r\n * @public\r\n */\r\nexport type ImageFileFormat = \"png\" | \"jpg\" | \"jpge\";\r\n\r\n/** Image data for string based images\r\n * @public\r\n */\r\nexport interface LoadedImage {\r\n value: string;\r\n sourceType: ImageSourceType;\r\n}\r\n\r\n/** Image data for raw images\r\n * @public\r\n */\r\nexport interface LoadedBinaryImage extends LoadedImage {\r\n fileFormat: ImageFileFormat;\r\n}\r\n\r\n/** Image data returned by an [[IImageLoader]]\r\n * @public\r\n */\r\nexport type Image = LoadedImage | LoadedBinaryImage;\r\n\r\n/** Interface for an image loader.\r\n * @public\r\n */\r\nexport interface IImageLoader {\r\n /** Function that will load image data */\r\n load: (item: any) => Image | undefined;\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"ImageRenderer.js","sourceRoot":"","sources":["../../../../src/components-react/common/ImageRenderer.tsx"],"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*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Common\n */\n\nimport * as React from \"react\";\nimport { IconSpecUtilities, UiError } from \"@itwin/appui-abstract\";\nimport { Icon, WebFontIcon, WebFontIconProps } from \"@itwin/core-react\";\nimport { UiComponents } from \"../UiComponents\";\nimport { Image, ImageFileFormat, LoadedBinaryImage, LoadedImage } from \"./IImageLoader\";\n\n/** A class that renders images from data provided by an image loader\n * @internal\n */\nexport class ImageRenderer {\n private static _svgCache: Map<string, string> = new Map();\n\n private hexToBase64(hexstring: string) {\n const match = hexstring.match(/\\w{2}/g);\n // istanbul ignore next\n if (!match)\n return \"\";\n\n return btoa(match.map((a) => { // eslint-disable-line deprecation/deprecation\n return String.fromCharCode(parseInt(a, 16));\n }).join(\"\"));\n }\n\n /** Render raw binary image */\n private renderBinary(data: string, format: ImageFileFormat) {\n // Convert binary to base64\n const dataAsBase64 = this.hexToBase64(data);\n return (<img src={`data:image/${format};base64,${dataAsBase64}`} alt=\"\" />);\n }\n\n private isSvg(input: string): boolean {\n const parser = new DOMParser();\n const doc = parser.parseFromString(input, \"application/xml\");\n\n const errorNode = doc.querySelector(\"parsererror\");\n // istanbul ignore if\n if (errorNode) {\n return false;\n }\n\n const rootNode = doc.documentElement.nodeName.toLowerCase();\n return \"svg\" === rootNode;\n }\n\n private convertSvgToDataUri(svg: string) {\n // istanbul ignore if\n if (!this.isSvg(svg)) {\n return \"\";\n }\n\n // eslint-disable-next-line deprecation/deprecation\n const svgAsBase64 = btoa(svg);\n return `data:image/svg+xml;base64,${svgAsBase64}`;\n }\n\n /** Render svg string into JSX */\n private renderSvg(svg: string) {\n let svgAsDataUri = ImageRenderer._svgCache.get(svg);\n // istanbul ignore else\n if (undefined === svgAsDataUri) {\n svgAsDataUri = this.convertSvgToDataUri(svg.trim());\n ImageRenderer._svgCache.set(svg, svgAsDataUri);\n }\n\n const iconSpec = IconSpecUtilities.createWebComponentIconSpec(svgAsDataUri);\n return (\n <div><Icon iconSpec={iconSpec} /></div>\n );\n }\n\n /** Render image from an url */\n private renderUrl(url: string) {\n return (<img src={url} alt=\"\" />);\n }\n\n /** Render image as core-react icon */\n private renderCoreIcon(iconName: string) {\n return (<WebFontIcon iconName={iconName} />);\n }\n\n /** Replaces the escaped instances of \"\\:\" with \":\" */\n private normalizeEscapedIconString(escapedIconString: string) {\n return escapedIconString.replace(/\\\\:/g, \":\");\n }\n\n /**\n * Extract class and name from icon name, if the name follows format \"{className}:{fontName}\".\n * className and fontName can be escaped using \\ if : is needed.\n */\n private extractIconClassAndName(iconName: string): Pick<WebFontIconProps, \"iconClassName\" | \"iconName\"> {\n const matches = iconName.match(/(\\\\.|[^:])+/g);\n if (!matches || matches.length !== 2)\n return {\n iconClassName: undefined,\n iconName,\n };\n\n return {\n iconClassName: this.normalizeEscapedIconString(matches[0]),\n iconName: this.normalizeEscapedIconString(matches[1]),\n };\n }\n\n /**\n * Render image as provided webfont icon.\n * Defaults to core-react icon if iconName does not contain className.\n */\n private renderWebfontIcon(iconName: string) {\n const iconInfo = this.extractIconClassAndName(iconName);\n return (<WebFontIcon {...iconInfo} />);\n }\n\n /** Render image from data provided by an image loader */\n public render(loadedImage: Image): React.ReactNode {\n switch (loadedImage.sourceType) {\n case \"binary\":\n const image = loadedImage as LoadedBinaryImage;\n return this.renderBinary(image.value, image.fileFormat);\n\n case \"url\":\n return this.renderUrl((loadedImage as LoadedImage).value);\n\n case \"svg\":\n return this.renderSvg((loadedImage as LoadedImage).value);\n\n case \"core-icon\":\n return this.renderCoreIcon((loadedImage as LoadedImage).value);\n\n case \"webfont-icon\":\n return this.renderWebfontIcon((loadedImage as LoadedImage).value);\n\n default:\n const unhandledSourceType: never = loadedImage.sourceType; // Compile time check that all cases are handled\n throw new UiError(UiComponents.loggerCategory(this), `Can't handle sourceType: \"${unhandledSourceType}\"`);\n }\n }\n}\n"]}
1
+ {"version":3,"file":"ImageRenderer.js","sourceRoot":"","sources":["../../../../src/components-react/common/ImageRenderer.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,6CAA+B;AAC/B,0DAAmE;AACnE,kDAAwE;AACxE,kDAA+C;AAG/C;;GAEG;AACH,MAAa,aAAa;IAGhB,WAAW,CAAC,SAAiB;QACnC,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACxC,uBAAuB;QACvB,IAAI,CAAC,KAAK;YACR,OAAO,EAAE,CAAC;QAEZ,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YAC1B,OAAO,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;IACf,CAAC;IAED,8BAA8B;IACtB,YAAY,CAAC,IAAY,EAAE,MAAuB;QACxD,2BAA2B;QAC3B,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAC5C,OAAO,CAAC,6BAAK,GAAG,EAAE,cAAc,MAAM,WAAW,YAAY,EAAE,EAAE,GAAG,EAAC,EAAE,GAAG,CAAC,CAAC;IAC9E,CAAC;IAEO,KAAK,CAAC,KAAa;QACzB,MAAM,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;QAC/B,MAAM,GAAG,GAAG,MAAM,CAAC,eAAe,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC;QAE7D,MAAM,SAAS,GAAG,GAAG,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;QACnD,qBAAqB;QACrB,IAAI,SAAS,EAAE;YACb,OAAO,KAAK,CAAC;SACd;QAED,MAAM,QAAQ,GAAG,GAAG,CAAC,eAAe,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;QAC5D,OAAO,KAAK,KAAK,QAAQ,CAAC;IAC5B,CAAC;IAEO,mBAAmB,CAAC,GAAW;QACrC,qBAAqB;QACrB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;YACpB,OAAO,EAAE,CAAC;SACX;QAED,mDAAmD;QACnD,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;QAC9B,OAAO,6BAA6B,WAAW,EAAE,CAAC;IACpD,CAAC;IAED,iCAAiC;IACzB,SAAS,CAAC,GAAW;QAC3B,IAAI,YAAY,GAAG,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACpD,uBAAuB;QACvB,IAAI,SAAS,KAAK,YAAY,EAAE;YAC9B,YAAY,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;YACpD,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;SAChD;QAED,MAAM,QAAQ,GAAG,kCAAiB,CAAC,0BAA0B,CAAC,YAAY,CAAC,CAAC;QAC5E,OAAO,CACL;YAAK,oBAAC,iBAAI,IAAC,QAAQ,EAAE,QAAQ,GAAI,CAAM,CACxC,CAAC;IACJ,CAAC;IAED,+BAA+B;IACvB,SAAS,CAAC,GAAW;QAC3B,OAAO,CAAC,6BAAK,GAAG,EAAE,GAAG,EAAE,GAAG,EAAC,EAAE,GAAG,CAAC,CAAC;IACpC,CAAC;IAED,sCAAsC;IAC9B,cAAc,CAAC,QAAgB;QACrC,OAAO,CAAC,oBAAC,wBAAW,IAAC,QAAQ,EAAE,QAAQ,GAAI,CAAC,CAAC;IAC/C,CAAC;IAED,sDAAsD;IAC9C,0BAA0B,CAAC,iBAAyB;QAC1D,OAAO,iBAAiB,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAChD,CAAC;IAED;;;OAGG;IACK,uBAAuB,CAAC,QAAgB;QAC9C,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QAC/C,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAClC,OAAO;gBACL,aAAa,EAAE,SAAS;gBACxB,QAAQ;aACT,CAAC;QAEJ,OAAO;YACL,aAAa,EAAE,IAAI,CAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAC1D,QAAQ,EAAE,IAAI,CAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;SACtD,CAAC;IACJ,CAAC;IAED;;;OAGG;IACK,iBAAiB,CAAC,QAAgB;QACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAC;QACxD,OAAO,CAAC,oBAAC,wBAAW,OAAK,QAAQ,GAAI,CAAC,CAAC;IACzC,CAAC;IAED,yDAAyD;IAClD,MAAM,CAAC,WAAkB;QAC9B,QAAQ,WAAW,CAAC,UAAU,EAAE;YAC9B,KAAK,QAAQ;gBACX,MAAM,KAAK,GAAG,WAAgC,CAAC;gBAC/C,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;YAE1D,KAAK,KAAK;gBACR,OAAO,IAAI,CAAC,SAAS,CAAE,WAA2B,CAAC,KAAK,CAAC,CAAC;YAE5D,KAAK,KAAK;gBACR,OAAO,IAAI,CAAC,SAAS,CAAE,WAA2B,CAAC,KAAK,CAAC,CAAC;YAE5D,KAAK,WAAW;gBACd,OAAO,IAAI,CAAC,cAAc,CAAE,WAA2B,CAAC,KAAK,CAAC,CAAC;YAEjE,KAAK,cAAc;gBACjB,OAAO,IAAI,CAAC,iBAAiB,CAAE,WAA2B,CAAC,KAAK,CAAC,CAAC;YAEpE;gBACE,MAAM,mBAAmB,GAAU,WAAW,CAAC,UAAU,CAAC,CAAC,gDAAgD;gBAC3G,MAAM,IAAI,wBAAO,CAAC,2BAAY,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,6BAA6B,mBAAmB,GAAG,CAAC,CAAC;SAC7G;IACH,CAAC;;AA7Hc,uBAAS,GAAwB,IAAI,GAAG,EAAE,CAAC;AAD/C,sCAAa","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Common\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { IconSpecUtilities, UiError } from \"@itwin/appui-abstract\";\r\nimport { Icon, WebFontIcon, WebFontIconProps } from \"@itwin/core-react\";\r\nimport { UiComponents } from \"../UiComponents\";\r\nimport { Image, ImageFileFormat, LoadedBinaryImage, LoadedImage } from \"./IImageLoader\";\r\n\r\n/** A class that renders images from data provided by an image loader\r\n * @internal\r\n */\r\nexport class ImageRenderer {\r\n private static _svgCache: Map<string, string> = new Map();\r\n\r\n private hexToBase64(hexstring: string) {\r\n const match = hexstring.match(/\\w{2}/g);\r\n // istanbul ignore next\r\n if (!match)\r\n return \"\";\r\n\r\n return btoa(match.map((a) => { // eslint-disable-line deprecation/deprecation\r\n return String.fromCharCode(parseInt(a, 16));\r\n }).join(\"\"));\r\n }\r\n\r\n /** Render raw binary image */\r\n private renderBinary(data: string, format: ImageFileFormat) {\r\n // Convert binary to base64\r\n const dataAsBase64 = this.hexToBase64(data);\r\n return (<img src={`data:image/${format};base64,${dataAsBase64}`} alt=\"\" />);\r\n }\r\n\r\n private isSvg(input: string): boolean {\r\n const parser = new DOMParser();\r\n const doc = parser.parseFromString(input, \"application/xml\");\r\n\r\n const errorNode = doc.querySelector(\"parsererror\");\r\n // istanbul ignore if\r\n if (errorNode) {\r\n return false;\r\n }\r\n\r\n const rootNode = doc.documentElement.nodeName.toLowerCase();\r\n return \"svg\" === rootNode;\r\n }\r\n\r\n private convertSvgToDataUri(svg: string) {\r\n // istanbul ignore if\r\n if (!this.isSvg(svg)) {\r\n return \"\";\r\n }\r\n\r\n // eslint-disable-next-line deprecation/deprecation\r\n const svgAsBase64 = btoa(svg);\r\n return `data:image/svg+xml;base64,${svgAsBase64}`;\r\n }\r\n\r\n /** Render svg string into JSX */\r\n private renderSvg(svg: string) {\r\n let svgAsDataUri = ImageRenderer._svgCache.get(svg);\r\n // istanbul ignore else\r\n if (undefined === svgAsDataUri) {\r\n svgAsDataUri = this.convertSvgToDataUri(svg.trim());\r\n ImageRenderer._svgCache.set(svg, svgAsDataUri);\r\n }\r\n\r\n const iconSpec = IconSpecUtilities.createWebComponentIconSpec(svgAsDataUri);\r\n return (\r\n <div><Icon iconSpec={iconSpec} /></div>\r\n );\r\n }\r\n\r\n /** Render image from an url */\r\n private renderUrl(url: string) {\r\n return (<img src={url} alt=\"\" />);\r\n }\r\n\r\n /** Render image as core-react icon */\r\n private renderCoreIcon(iconName: string) {\r\n return (<WebFontIcon iconName={iconName} />);\r\n }\r\n\r\n /** Replaces the escaped instances of \"\\:\" with \":\" */\r\n private normalizeEscapedIconString(escapedIconString: string) {\r\n return escapedIconString.replace(/\\\\:/g, \":\");\r\n }\r\n\r\n /**\r\n * Extract class and name from icon name, if the name follows format \"{className}:{fontName}\".\r\n * className and fontName can be escaped using \\ if : is needed.\r\n */\r\n private extractIconClassAndName(iconName: string): Pick<WebFontIconProps, \"iconClassName\" | \"iconName\"> {\r\n const matches = iconName.match(/(\\\\.|[^:])+/g);\r\n if (!matches || matches.length !== 2)\r\n return {\r\n iconClassName: undefined,\r\n iconName,\r\n };\r\n\r\n return {\r\n iconClassName: this.normalizeEscapedIconString(matches[0]),\r\n iconName: this.normalizeEscapedIconString(matches[1]),\r\n };\r\n }\r\n\r\n /**\r\n * Render image as provided webfont icon.\r\n * Defaults to core-react icon if iconName does not contain className.\r\n */\r\n private renderWebfontIcon(iconName: string) {\r\n const iconInfo = this.extractIconClassAndName(iconName);\r\n return (<WebFontIcon {...iconInfo} />);\r\n }\r\n\r\n /** Render image from data provided by an image loader */\r\n public render(loadedImage: Image): React.ReactNode {\r\n switch (loadedImage.sourceType) {\r\n case \"binary\":\r\n const image = loadedImage as LoadedBinaryImage;\r\n return this.renderBinary(image.value, image.fileFormat);\r\n\r\n case \"url\":\r\n return this.renderUrl((loadedImage as LoadedImage).value);\r\n\r\n case \"svg\":\r\n return this.renderSvg((loadedImage as LoadedImage).value);\r\n\r\n case \"core-icon\":\r\n return this.renderCoreIcon((loadedImage as LoadedImage).value);\r\n\r\n case \"webfont-icon\":\r\n return this.renderWebfontIcon((loadedImage as LoadedImage).value);\r\n\r\n default:\r\n const unhandledSourceType: never = loadedImage.sourceType; // Compile time check that all cases are handled\r\n throw new UiError(UiComponents.loggerCategory(this), `Can't handle sourceType: \"${unhandledSourceType}\"`);\r\n }\r\n }\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"Links.js","sourceRoot":"","sources":["../../../../src/components-react/common/Links.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;;;;AAEH,wBAAwB;AAExB,4DAAmC;AAEnC,MAAM,OAAO,GAAG,IAAI,oBAAS,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;AAEpD,OAAO;KACJ,GAAG,CAAC,KAAK,EAAE;IACV,QAAQ,EAAE,CAAC,IAAY,EAAE,GAAW,EAAE,IAAyB,EAAU,EAAE;QACzE,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAE7B,uBAAuB;QACvB,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;YACf,IAAI,CAAC,EAAE,CAAC,EAAE,GAAG,IAAI,MAAM,CACrB,gBAAgB,IAAI,CAAC,EAAE,CAAC,QAAQ,GAAG;gBACnC,sHAAsH;gBACtH,oEAAoE,EACpE,GAAG,CAAC,CAAC;SACR;QACD,uBAAuB;QACvB,IAAI,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACzB,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YACvC,uBAAuB;YACvB,IAAI,OAAO,KAAK,IAAI;gBAClB,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;SAC5B;QACD,uBAAuB;QACvB,OAAO,CAAC,CAAC;IACX,CAAC;CACF,CAAC;IACF;wHACoH;KACnH,GAAG,CAAC,MAAM,EAAE;IACX,QAAQ,EAAE,CAAC,IAAY,EAAE,GAAW,EAAE,IAAyB,EAAU,EAAE;QACzE,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAE7B,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE;YAChB,IAAI,CAAC,EAAE,CAAC,GAAG,GAAG,IAAI,MAAM,CACtB,IAAI,IAAI,CAAC,EAAE,CAAC,QAAQ,GAAG,IAAI,CAAC,EAAE,CAAC,oBAAoB,GAAG,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,EACxE,GAAG,CAAC,CAAC;SACR;QACD,uBAAuB;QACvB,IAAI,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YAC1B,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;YACxC,uBAAuB;YACvB,IAAI,OAAO,KAAK,IAAI;gBAClB,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;SAC5B;QACD,uBAAuB;QACvB,OAAO,CAAC,CAAC;IACX,CAAC;IACD,SAAS,EAAE,CAAC,KAAsB,EAAE,EAAE;QACpC,KAAK,CAAC,MAAM,GAAG,OAAO,CAAC;QACvB,KAAK,CAAC,GAAG,GAAG,UAAU,KAAK,CAAC,GAAG,EAAE,CAAC;IACpC,CAAC;CACF,CAAC,CAAC;AAEL;;GAEG;AACI,MAAM,UAAU,GAAG,CAAC,IAAY,EAA4E,EAAE;IACnH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC9B,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,SAAS;QACxC,OAAO,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;IAE/E,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACpC,OAAO,OAAO,CAAC,CAAC,CAAC,OAAmF,CAAC,CAAC,CAAC,EAAE,CAAC;AAC5G,CAAC,CAAC;AAPW,QAAA,UAAU,cAOrB","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/** @packageDocumentation\n * @module Common\n */\n\n// cSpell:ignore linkify\n\nimport LinkifyIt from \"linkify-it\";\n\nconst linkify = new LinkifyIt({ fuzzyLink: false });\n\nlinkify\n .add(\"pw:\", {\n validate: (text: string, pos: number, self: LinkifyIt.LinkifyIt): number => {\n const tail = text.slice(pos);\n\n // istanbul ignore else\n if (!self.re.pw) {\n self.re.pw = new RegExp(\n `(//|\\\\\\\\\\\\\\\\)${self.re.src_host}:` +\n // Regex for path according to RFC 3986 standards plus the possibility to write '{}' brackets for ProjectWise monikers\n `([a-zA-Z0-9-._~!$&'()*+,;=@%{}]+/)+[a-zA-Z0-9-._~!$&'()*+,;=@%{}]*`,\n \"i\");\n }\n // istanbul ignore else\n if (self.re.pw.test(tail)) {\n const matches = tail.match(self.re.pw);\n // istanbul ignore else\n if (matches !== null)\n return matches[0].length;\n }\n // istanbul ignore next\n return 0;\n },\n })\n /* Adding a custom schema for links that start with `www.`.\n With fuzzyLink option set to true it matches text without `www.` as a prefix, which is not wanted in our case. */\n .add(\"www.\", {\n validate: (text: string, pos: number, self: LinkifyIt.LinkifyIt): number => {\n const tail = text.slice(pos);\n\n if (!self.re.www) {\n self.re.www = new RegExp(\n `^${self.re.src_auth}${self.re.src_host_port_strict}${self.re.src_path}`,\n \"i\");\n }\n // istanbul ignore else\n if (self.re.www.test(tail)) {\n const matches = tail.match(self.re.www);\n // istanbul ignore else\n if (matches !== null)\n return matches[0].length;\n }\n // istanbul ignore next\n return 0;\n },\n normalize: (match: LinkifyIt.Match) => {\n match.schema = \"http:\";\n match.url = `http://${match.url}`;\n },\n });\n\n/** Returns a list of links from a text\n * @public\n */\nexport const matchLinks = (text: string): Array<{ index: number, lastIndex: number, schema: string, url: string }> => {\n const head = text.slice(0, 5);\n if (head === \"pw://\" || head === \"pw:\\\\\\\\\")\n return Array({ index: 0, lastIndex: text.length, schema: \"pw:\", url: text });\n\n const matches = linkify.match(text);\n return matches ? matches as Array<{ index: number, lastIndex: number, schema: string, url: string }> : [];\n};\n"]}
1
+ {"version":3,"file":"Links.js","sourceRoot":"","sources":["../../../../src/components-react/common/Links.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Common\r\n */\r\n\r\n// cSpell:ignore linkify\r\n\r\nimport LinkifyIt from \"linkify-it\";\r\n\r\nconst linkify = new LinkifyIt({ fuzzyLink: false });\r\n\r\nlinkify\r\n .add(\"pw:\", {\r\n validate: (text: string, pos: number, self: LinkifyIt.LinkifyIt): number => {\r\n const tail = text.slice(pos);\r\n\r\n // istanbul ignore else\r\n if (!self.re.pw) {\r\n self.re.pw = new RegExp(\r\n `(//|\\\\\\\\\\\\\\\\)${self.re.src_host}:` +\r\n // Regex for path according to RFC 3986 standards plus the possibility to write '{}' brackets for ProjectWise monikers\r\n `([a-zA-Z0-9-._~!$&'()*+,;=@%{}]+/)+[a-zA-Z0-9-._~!$&'()*+,;=@%{}]*`,\r\n \"i\");\r\n }\r\n // istanbul ignore else\r\n if (self.re.pw.test(tail)) {\r\n const matches = tail.match(self.re.pw);\r\n // istanbul ignore else\r\n if (matches !== null)\r\n return matches[0].length;\r\n }\r\n // istanbul ignore next\r\n return 0;\r\n },\r\n })\r\n /* Adding a custom schema for links that start with `www.`.\r\n With fuzzyLink option set to true it matches text without `www.` as a prefix, which is not wanted in our case. */\r\n .add(\"www.\", {\r\n validate: (text: string, pos: number, self: LinkifyIt.LinkifyIt): number => {\r\n const tail = text.slice(pos);\r\n\r\n if (!self.re.www) {\r\n self.re.www = new RegExp(\r\n `^${self.re.src_auth}${self.re.src_host_port_strict}${self.re.src_path}`,\r\n \"i\");\r\n }\r\n // istanbul ignore else\r\n if (self.re.www.test(tail)) {\r\n const matches = tail.match(self.re.www);\r\n // istanbul ignore else\r\n if (matches !== null)\r\n return matches[0].length;\r\n }\r\n // istanbul ignore next\r\n return 0;\r\n },\r\n normalize: (match: LinkifyIt.Match) => {\r\n match.schema = \"http:\";\r\n match.url = `http://${match.url}`;\r\n },\r\n });\r\n\r\n/** Returns a list of links from a text\r\n * @public\r\n */\r\nexport const matchLinks = (text: string): Array<{ index: number, lastIndex: number, schema: string, url: string }> => {\r\n const head = text.slice(0, 5);\r\n if (head === \"pw://\" || head === \"pw:\\\\\\\\\")\r\n return Array({ index: 0, lastIndex: text.length, schema: \"pw:\", url: text });\r\n\r\n const matches = linkify.match(text);\r\n return matches ? matches as Array<{ index: number, lastIndex: number, schema: string, url: string }> : [];\r\n};\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"PageOptions.js","sourceRoot":"","sources":["../../../../src/components-react/common/PageOptions.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG","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/** @packageDocumentation\n * @module Common\n */\n\n/** Paging options.\n * @public\n */\nexport interface PageOptions {\n size?: number;\n start?: number;\n}\n"]}
1
+ {"version":3,"file":"PageOptions.js","sourceRoot":"","sources":["../../../../src/components-react/common/PageOptions.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Common\r\n */\r\n\r\n/** Paging options.\r\n * @public\r\n */\r\nexport interface PageOptions {\r\n size?: number;\r\n start?: number;\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"SubscriptionScheduler.js","sourceRoot":"","sources":["../../../../src/components-react/common/SubscriptionScheduler.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAIH,0DAAuD;AACvD,0DAAuD;AACvD,sDAAmD;AACnD,+DAA4D;AAC5D,+DAA4D;AAC5D,iEAA8D;AAC9D,iFAA8E;AAC9E,6DAA0D;AAC1D,+DAA4D;AAC5D,qEAAkE;AAClE,uDAA6D;AAC7D,yDAA+D;AAC/D,mDAAgD;AAEhD,MAAM,4BAA4B,GAAG,CAAC,CAAC;AAEvC;;;;;;;;GAQG;AACH,MAAa,qBAAqB;IAGhC;QAFQ,eAAU,GAAG,IAAI,iBAAO,EAA4B,CAAC;QAG3D,IAAI,CAAC,UAAU;aACZ,IAAI,CACH,IAAA,mBAAQ,EACN,CAAC,gBAAgB,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI;QACzC,yBAAyB;QACzB,IAAA,mBAAQ,GAAE;QACV,0GAA0G;QAC1G,4EAA4E;QAC5E,IAAA,qBAAS,EAAC,sBAAc,CAAC;QACzB,qDAAqD;QACrD,IAAA,yBAAW,EAAC,oBAAa,CAAC;QAC1B,gFAAgF;QAChF,IAAA,qCAAiB,GAAE,CACpB,EACD,4BAA4B,CAC7B,CACF;YACD,wCAAwC;aACvC,SAAS,EAAE,CAAC;IACjB,CAAC;IAED;;;;;;;;OAQG;IACI,oBAAoB,CAAC,MAAqB;QAC/C,OAAO,IAAA,aAAK,EAAC,GAAG,EAAE;YAChB,IAAI,YAAY,GAAG,KAAK,CAAC;YACzB,4GAA4G;YAC5G,MAAM,qBAAqB,GAAG,IAAA,SAAG,EAAC,GAAG,EAAE,CAAC,YAAY,EAAE,aAAK,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,IAAA,iBAAO,GAAE,CAA6B,CAAC;YACjH,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;YAC5C,OAAO,qBAAqB,CAAC,IAAI,CAAC,IAAA,mBAAQ,EAAC,GAAG,EAAE,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AA3CD,sDA2CC;AAED;;;GAGG;AACH,SAAgB,oBAAoB,CAAI,SAAmC;IACzE,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,SAAS,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;AAC5D,CAAC;AAFD,oDAEC","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/** @packageDocumentation\n * @module Common\n */\n\nimport { Observable } from \"rxjs/internal/Observable\";\nimport { ConnectableObservable } from \"rxjs/internal/observable/ConnectableObservable\";\nimport { defer } from \"rxjs/internal/observable/defer\";\nimport { EMPTY } from \"rxjs/internal/observable/empty\";\nimport { iif } from \"rxjs/internal/observable/iif\";\nimport { finalize } from \"rxjs/internal/operators/finalize\";\nimport { mergeMap } from \"rxjs/internal/operators/mergeMap\";\nimport { observeOn } from \"rxjs/internal/operators/observeOn\";\nimport { onErrorResumeNext } from \"rxjs/internal/operators/onErrorResumeNext\";\nimport { publish } from \"rxjs/internal/operators/publish\";\nimport { refCount } from \"rxjs/internal/operators/refCount\";\nimport { subscribeOn } from \"rxjs/internal/operators/subscribeOn\";\nimport { asapScheduler } from \"rxjs/internal/scheduler/asap\";\nimport { queueScheduler } from \"rxjs/internal/scheduler/queue\";\nimport { Subject } from \"rxjs/internal/Subject\";\n\nconst MAX_CONCURRENT_SUBSCRIPTIONS = 1;\n\n/**\n * Limits concurrent observable subscriptions to one.\n *\n * Scheduled observables are placed at the end of a queue. Each queued observable is subscribed to and awaited until the\n * completion.\n *\n * To schedule an observable, subscribe to the result of `scheduleSubscription()` call.\n * @internal\n */\nexport class SubscriptionScheduler<T> {\n private _scheduler = new Subject<ConnectableObservable<T>>();\n\n constructor() {\n this._scheduler\n .pipe(\n mergeMap(\n (sourceObservable) => sourceObservable.pipe(\n // Connect the observable\n refCount(),\n // Guard against stack overflow when a lot of observables are scheduled. Without this operation `mergeMap`\n // will process each observable that is present in the pipeline recursively.\n observeOn(queueScheduler),\n // Delay the connection until another event loop task\n subscribeOn(asapScheduler),\n // Ignore errors in this pipeline without suppressing them for other subscribers\n onErrorResumeNext(),\n ),\n MAX_CONCURRENT_SUBSCRIPTIONS,\n ),\n )\n // Start consuming scheduled observables\n .subscribe();\n }\n\n /**\n * Schedules `source` for subscription in the current scheduler.\n *\n * The actual scheduling is performed when the returned observable is subscribed to. To cancel, remove all subscribers\n * from the returned observable.\n *\n * @param source Input observable for which to schedule a subscription.\n * @returns Hot observable which starts emitting `source` values after subscription.\n */\n public scheduleSubscription(source: Observable<T>): Observable<T> {\n return defer(() => {\n let unsubscribed = false;\n // Do not subscribe to source observable if it was unsubscribed from before being processed by the scheduler\n const connectableObservable = iif(() => unsubscribed, EMPTY, source).pipe(publish()) as ConnectableObservable<T>;\n this._scheduler.next(connectableObservable);\n return connectableObservable.pipe(finalize(() => unsubscribed = true));\n });\n }\n}\n\n/**\n * Helper function for use as a `pipe()` argument with `rxjs` observables.\n * @internal\n */\nexport function scheduleSubscription<T>(scheduler: SubscriptionScheduler<T>): (source: Observable<T>) => Observable<T> {\n return (source) => scheduler.scheduleSubscription(source);\n}\n"]}
1
+ {"version":3,"file":"SubscriptionScheduler.js","sourceRoot":"","sources":["../../../../src/components-react/common/SubscriptionScheduler.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAIH,0DAAuD;AACvD,0DAAuD;AACvD,sDAAmD;AACnD,+DAA4D;AAC5D,+DAA4D;AAC5D,iEAA8D;AAC9D,iFAA8E;AAC9E,6DAA0D;AAC1D,+DAA4D;AAC5D,qEAAkE;AAClE,uDAA6D;AAC7D,yDAA+D;AAC/D,mDAAgD;AAEhD,MAAM,4BAA4B,GAAG,CAAC,CAAC;AAEvC;;;;;;;;GAQG;AACH,MAAa,qBAAqB;IAGhC;QAFQ,eAAU,GAAG,IAAI,iBAAO,EAA4B,CAAC;QAG3D,IAAI,CAAC,UAAU;aACZ,IAAI,CACH,IAAA,mBAAQ,EACN,CAAC,gBAAgB,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI;QACzC,yBAAyB;QACzB,IAAA,mBAAQ,GAAE;QACV,0GAA0G;QAC1G,4EAA4E;QAC5E,IAAA,qBAAS,EAAC,sBAAc,CAAC;QACzB,qDAAqD;QACrD,IAAA,yBAAW,EAAC,oBAAa,CAAC;QAC1B,gFAAgF;QAChF,IAAA,qCAAiB,GAAE,CACpB,EACD,4BAA4B,CAC7B,CACF;YACD,wCAAwC;aACvC,SAAS,EAAE,CAAC;IACjB,CAAC;IAED;;;;;;;;OAQG;IACI,oBAAoB,CAAC,MAAqB;QAC/C,OAAO,IAAA,aAAK,EAAC,GAAG,EAAE;YAChB,IAAI,YAAY,GAAG,KAAK,CAAC;YACzB,4GAA4G;YAC5G,MAAM,qBAAqB,GAAG,IAAA,SAAG,EAAC,GAAG,EAAE,CAAC,YAAY,EAAE,aAAK,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,IAAA,iBAAO,GAAE,CAA6B,CAAC;YACjH,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;YAC5C,OAAO,qBAAqB,CAAC,IAAI,CAAC,IAAA,mBAAQ,EAAC,GAAG,EAAE,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AA3CD,sDA2CC;AAED;;;GAGG;AACH,SAAgB,oBAAoB,CAAI,SAAmC;IACzE,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,SAAS,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;AAC5D,CAAC;AAFD,oDAEC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Common\r\n */\r\n\r\nimport { Observable } from \"rxjs/internal/Observable\";\r\nimport { ConnectableObservable } from \"rxjs/internal/observable/ConnectableObservable\";\r\nimport { defer } from \"rxjs/internal/observable/defer\";\r\nimport { EMPTY } from \"rxjs/internal/observable/empty\";\r\nimport { iif } from \"rxjs/internal/observable/iif\";\r\nimport { finalize } from \"rxjs/internal/operators/finalize\";\r\nimport { mergeMap } from \"rxjs/internal/operators/mergeMap\";\r\nimport { observeOn } from \"rxjs/internal/operators/observeOn\";\r\nimport { onErrorResumeNext } from \"rxjs/internal/operators/onErrorResumeNext\";\r\nimport { publish } from \"rxjs/internal/operators/publish\";\r\nimport { refCount } from \"rxjs/internal/operators/refCount\";\r\nimport { subscribeOn } from \"rxjs/internal/operators/subscribeOn\";\r\nimport { asapScheduler } from \"rxjs/internal/scheduler/asap\";\r\nimport { queueScheduler } from \"rxjs/internal/scheduler/queue\";\r\nimport { Subject } from \"rxjs/internal/Subject\";\r\n\r\nconst MAX_CONCURRENT_SUBSCRIPTIONS = 1;\r\n\r\n/**\r\n * Limits concurrent observable subscriptions to one.\r\n *\r\n * Scheduled observables are placed at the end of a queue. Each queued observable is subscribed to and awaited until the\r\n * completion.\r\n *\r\n * To schedule an observable, subscribe to the result of `scheduleSubscription()` call.\r\n * @internal\r\n */\r\nexport class SubscriptionScheduler<T> {\r\n private _scheduler = new Subject<ConnectableObservable<T>>();\r\n\r\n constructor() {\r\n this._scheduler\r\n .pipe(\r\n mergeMap(\r\n (sourceObservable) => sourceObservable.pipe(\r\n // Connect the observable\r\n refCount(),\r\n // Guard against stack overflow when a lot of observables are scheduled. Without this operation `mergeMap`\r\n // will process each observable that is present in the pipeline recursively.\r\n observeOn(queueScheduler),\r\n // Delay the connection until another event loop task\r\n subscribeOn(asapScheduler),\r\n // Ignore errors in this pipeline without suppressing them for other subscribers\r\n onErrorResumeNext(),\r\n ),\r\n MAX_CONCURRENT_SUBSCRIPTIONS,\r\n ),\r\n )\r\n // Start consuming scheduled observables\r\n .subscribe();\r\n }\r\n\r\n /**\r\n * Schedules `source` for subscription in the current scheduler.\r\n *\r\n * The actual scheduling is performed when the returned observable is subscribed to. To cancel, remove all subscribers\r\n * from the returned observable.\r\n *\r\n * @param source Input observable for which to schedule a subscription.\r\n * @returns Hot observable which starts emitting `source` values after subscription.\r\n */\r\n public scheduleSubscription(source: Observable<T>): Observable<T> {\r\n return defer(() => {\r\n let unsubscribed = false;\r\n // Do not subscribe to source observable if it was unsubscribed from before being processed by the scheduler\r\n const connectableObservable = iif(() => unsubscribed, EMPTY, source).pipe(publish()) as ConnectableObservable<T>;\r\n this._scheduler.next(connectableObservable);\r\n return connectableObservable.pipe(finalize(() => unsubscribed = true));\r\n });\r\n }\r\n}\r\n\r\n/**\r\n * Helper function for use as a `pipe()` argument with `rxjs` observables.\r\n * @internal\r\n */\r\nexport function scheduleSubscription<T>(scheduler: SubscriptionScheduler<T>): (source: Observable<T>) => Observable<T> {\r\n return (source) => scheduler.scheduleSubscription(source);\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"UseAsyncValue.js","sourceRoot":"","sources":["../../../../src/components-react/common/UseAsyncValue.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,6CAA+B;AAC/B,wDAAqD;AACrD,iEAA8D;AAC9D,mDAAgD;AAChD,kDAAsE;AAEtE;;;GAGG;AACH,SAAgB,aAAa,CAAI,KAAyB;IACxD,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,iBAAO,EAAQ,EAAE,EAAE,CAAC,CAAC;IAC/D,yCAAyC;IACzC,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAE3D,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE;QAC9C,IAAI,IAAA,0BAAa,EAAC,KAAK,CAAC,EAAE;YACxB,IAAA,WAAI,EAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAA,qBAAS,EAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,CAAC,aAAa,EAAE,EAAE,CAAC,SAAS,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;YACxG,OAAO,SAAS,CAAC;SAClB;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC,CAAC;IAEH,IAAA,+BAAkB,EAAC,GAAG,EAAE;QACtB,MAAM,WAAW,GAAG,CAAC,QAAW,EAAE,EAAE;YAClC,SAAS,CAAC,IAAI,EAAE,CAAC;YACjB,SAAS,CAAC,QAAQ,CAAC,CAAC;QACtB,CAAC,CAAC;QAEF,IAAI,IAAA,0BAAa,EAAC,KAAK,CAAC,EAAE;YACxB,MAAM,YAAY,GAAG,IAAA,WAAI,EAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAA,qBAAS,EAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,CAAC,aAAa,EAAE,EAAE,CAAC,WAAW,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;YAC/H,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;SACzC;QAED,WAAW,CAAC,KAAK,CAAC,CAAC;QACnB,OAAO,SAAS,CAAC;IACnB,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC;IAEvB,OAAO,MAAM,CAAC;AAChB,CAAC;AA7BD,sCA6BC","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/** @packageDocumentation\n * @module Common\n */\n\nimport * as React from \"react\";\nimport { from } from \"rxjs/internal/observable/from\";\nimport { takeUntil } from \"rxjs/internal/operators/takeUntil\";\nimport { Subject } from \"rxjs/internal/Subject\";\nimport { isPromiseLike, useEffectSkipFirst } from \"@itwin/core-react\";\n\n/**\n * Custom hook for working with possibly async values.\n * @public\n */\nexport function useAsyncValue<T>(value: T | PromiseLike<T>): T | undefined {\n const cancelled = React.useMemo(() => new Subject<void>(), []);\n // cancel any pending promises on unmount\n React.useEffect(() => () => cancelled.next(), [cancelled]);\n\n const [result, setResult] = React.useState(() => {\n if (isPromiseLike(value)) {\n from(value).pipe(takeUntil(cancelled)).subscribe({ next: (resolvedValue) => setResult(resolvedValue) });\n return undefined;\n }\n return value;\n });\n\n useEffectSkipFirst(() => {\n const updateValue = (newValue: T) => {\n cancelled.next();\n setResult(newValue);\n };\n\n if (isPromiseLike(value)) {\n const subscription = from(value).pipe(takeUntil(cancelled)).subscribe({ next: (resolvedValue) => updateValue(resolvedValue) });\n return () => subscription.unsubscribe();\n }\n\n updateValue(value);\n return undefined;\n }, [value, cancelled]);\n\n return result;\n}\n"]}
1
+ {"version":3,"file":"UseAsyncValue.js","sourceRoot":"","sources":["../../../../src/components-react/common/UseAsyncValue.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,6CAA+B;AAC/B,wDAAqD;AACrD,iEAA8D;AAC9D,mDAAgD;AAChD,kDAAsE;AAEtE;;;GAGG;AACH,SAAgB,aAAa,CAAI,KAAyB;IACxD,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,iBAAO,EAAQ,EAAE,EAAE,CAAC,CAAC;IAC/D,yCAAyC;IACzC,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAE3D,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE;QAC9C,IAAI,IAAA,0BAAa,EAAC,KAAK,CAAC,EAAE;YACxB,IAAA,WAAI,EAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAA,qBAAS,EAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,CAAC,aAAa,EAAE,EAAE,CAAC,SAAS,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;YACxG,OAAO,SAAS,CAAC;SAClB;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC,CAAC;IAEH,IAAA,+BAAkB,EAAC,GAAG,EAAE;QACtB,MAAM,WAAW,GAAG,CAAC,QAAW,EAAE,EAAE;YAClC,SAAS,CAAC,IAAI,EAAE,CAAC;YACjB,SAAS,CAAC,QAAQ,CAAC,CAAC;QACtB,CAAC,CAAC;QAEF,IAAI,IAAA,0BAAa,EAAC,KAAK,CAAC,EAAE;YACxB,MAAM,YAAY,GAAG,IAAA,WAAI,EAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAA,qBAAS,EAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,CAAC,aAAa,EAAE,EAAE,CAAC,WAAW,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;YAC/H,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;SACzC;QAED,WAAW,CAAC,KAAK,CAAC,CAAC;QACnB,OAAO,SAAS,CAAC;IACnB,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC;IAEvB,OAAO,MAAM,CAAC;AAChB,CAAC;AA7BD,sCA6BC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Common\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { from } from \"rxjs/internal/observable/from\";\r\nimport { takeUntil } from \"rxjs/internal/operators/takeUntil\";\r\nimport { Subject } from \"rxjs/internal/Subject\";\r\nimport { isPromiseLike, useEffectSkipFirst } from \"@itwin/core-react\";\r\n\r\n/**\r\n * Custom hook for working with possibly async values.\r\n * @public\r\n */\r\nexport function useAsyncValue<T>(value: T | PromiseLike<T>): T | undefined {\r\n const cancelled = React.useMemo(() => new Subject<void>(), []);\r\n // cancel any pending promises on unmount\r\n React.useEffect(() => () => cancelled.next(), [cancelled]);\r\n\r\n const [result, setResult] = React.useState(() => {\r\n if (isPromiseLike(value)) {\r\n from(value).pipe(takeUntil(cancelled)).subscribe({ next: (resolvedValue) => setResult(resolvedValue) });\r\n return undefined;\r\n }\r\n return value;\r\n });\r\n\r\n useEffectSkipFirst(() => {\r\n const updateValue = (newValue: T) => {\r\n cancelled.next();\r\n setResult(newValue);\r\n };\r\n\r\n if (isPromiseLike(value)) {\r\n const subscription = from(value).pipe(takeUntil(cancelled)).subscribe({ next: (resolvedValue) => updateValue(resolvedValue) });\r\n return () => subscription.unsubscribe();\r\n }\r\n\r\n updateValue(value);\r\n return undefined;\r\n }, [value, cancelled]);\r\n\r\n return result;\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"UseContextWithMandatoryProvider.js","sourceRoot":"","sources":["../../../../src/components-react/common/UseContextWithMandatoryProvider.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;;;;;;AAE/F,0DAA8D;AAC9D,kDAA+C;AAC/C,kDAA0B;AAE1B,gBAAgB;AAChB,SAAgB,kCAAkC,CAChD,WAAmB;IAMnB,MAAM,OAAO,GAAG,eAAK,CAAC,aAAa,CAAI,SAAqB,CAAC,CAAC;IAC9D,SAAS,6BAA6B,CAAI,kBAA0C;QAClF,MAAM,KAAK,GAAG,eAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACxC,wBAAwB;QACxB,IAAI,KAAK,KAAK,SAAS,EAAE;YACvB,MAAM,IAAI,wBAAO,CACf,2BAAY,CAAC,cAAc,CAAC,kBAAkB,CAAC,EAC/C,IAAI,IAAA,6BAAY,EAAC,kBAAkB,CAAC,iCAAiC,WAAW,aAAa,CAC9F,CAAC;SACH;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,6BAA6B,CAAC,CAAC;AAC7E,CAAC;AApBD,gFAoBC","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\nimport { getClassName, UiError } from \"@itwin/appui-abstract\";\nimport { UiComponents } from \"../UiComponents\";\nimport React from \"react\";\n\n/** @internal */\nexport function createContextWithMandatoryProvider<T>(\n contextName: string,\n): [\n React.ProviderExoticComponent<React.ProviderProps<T>>,\n React.ExoticComponent<React.ConsumerProps<T>>,\n <P>(component: React.ComponentType<P>) => T,\n ] {\n const context = React.createContext<T>(undefined as any as T);\n function useContextWithoutDefaultValue<P>(ConsumingComponent: React.ComponentType<P>) {\n const value = React.useContext(context);\n /* istanbul ignore if */\n if (value === undefined) {\n throw new UiError(\n UiComponents.loggerCategory(ConsumingComponent),\n `'${getClassName(ConsumingComponent)}' expects to be wrapped by a '${contextName}' provider.`,\n );\n }\n return value;\n }\n return [context.Provider, context.Consumer, useContextWithoutDefaultValue];\n}\n"]}
1
+ {"version":3,"file":"UseContextWithMandatoryProvider.js","sourceRoot":"","sources":["../../../../src/components-react/common/UseContextWithMandatoryProvider.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;;;;;;AAE/F,0DAA8D;AAC9D,kDAA+C;AAC/C,kDAA0B;AAE1B,gBAAgB;AAChB,SAAgB,kCAAkC,CAChD,WAAmB;IAMnB,MAAM,OAAO,GAAG,eAAK,CAAC,aAAa,CAAI,SAAqB,CAAC,CAAC;IAC9D,SAAS,6BAA6B,CAAI,kBAA0C;QAClF,MAAM,KAAK,GAAG,eAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACxC,wBAAwB;QACxB,IAAI,KAAK,KAAK,SAAS,EAAE;YACvB,MAAM,IAAI,wBAAO,CACf,2BAAY,CAAC,cAAc,CAAC,kBAAkB,CAAC,EAC/C,IAAI,IAAA,6BAAY,EAAC,kBAAkB,CAAC,iCAAiC,WAAW,aAAa,CAC9F,CAAC;SACH;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,6BAA6B,CAAC,CAAC;AAC7E,CAAC;AApBD,gFAoBC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n\r\nimport { getClassName, UiError } from \"@itwin/appui-abstract\";\r\nimport { UiComponents } from \"../UiComponents\";\r\nimport React from \"react\";\r\n\r\n/** @internal */\r\nexport function createContextWithMandatoryProvider<T>(\r\n contextName: string,\r\n): [\r\n React.ProviderExoticComponent<React.ProviderProps<T>>,\r\n React.ExoticComponent<React.ConsumerProps<T>>,\r\n <P>(component: React.ComponentType<P>) => T,\r\n ] {\r\n const context = React.createContext<T>(undefined as any as T);\r\n function useContextWithoutDefaultValue<P>(ConsumingComponent: React.ComponentType<P>) {\r\n const value = React.useContext(context);\r\n /* istanbul ignore if */\r\n if (value === undefined) {\r\n throw new UiError(\r\n UiComponents.loggerCategory(ConsumingComponent),\r\n `'${getClassName(ConsumingComponent)}' expects to be wrapped by a '${contextName}' provider.`,\r\n );\r\n }\r\n return value;\r\n }\r\n return [context.Provider, context.Consumer, useContextWithoutDefaultValue];\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"UseDebouncedAsyncValue.js","sourceRoot":"","sources":["../../../../src/components-react/common/UseDebouncedAsyncValue.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,iCAAqD;AACrD,6DAA0D;AAC1D,+DAA4D;AAC5D,0DAAuD;AACvD,mEAAsF;AAEtF;;;;;;;GAOG;AACH,SAAgB,sBAAsB,CAAU,iBAAuD;IACrG,MAAM,SAAS,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE,CAAC,IAAI,6CAAqB,EAAW,EAAE,EAAE,CAAC,CAAC,CAAC,kDAAkD;IAE7H,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,IAAA,gBAAQ,GAAW,CAAC;IAC9C,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAC;IAEpD,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,IAAI,CAAC,iBAAiB,EAAE;YACtB,QAAQ,CAAC,SAAS,CAAC,CAAC;YACpB,aAAa,CAAC,KAAK,CAAC,CAAC;YACrB,OAAO;SACR;QAED,aAAa,CAAC,IAAI,CAAC,CAAC;QACpB,yFAAyF;QACzF,MAAM,YAAY,GAAG,IAAA,aAAK,EAAC,iBAAiB,CAAC;aAC1C,IAAI,CACH,IAAA,iBAAO,GAAE,EACT,IAAA,mBAAQ,GAAE,EACV,IAAA,4CAAoB,EAAC,SAAS,CAAC,CAChC;aACA,SAAS,CAAC;YACT,IAAI,EAAE,CAAC,IAAI,EAAE,EAAE;gBACb,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACf,aAAa,CAAC,KAAK,CAAC,CAAC;YACvB,CAAC;SACF,CAAC,CAAC;QAEL,OAAO,GAAG,EAAE,GAAG,YAAY,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC;IAC/C,CAAC,EAAE,CAAC,iBAAiB,EAAE,SAAS,CAAC,CAAC,CAAC;IAEnC,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;AAC/B,CAAC;AAhCD,wDAgCC","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/** @packageDocumentation\n * @module Common\n */\n\nimport { useEffect, useMemo, useState } from \"react\";\nimport { publish } from \"rxjs/internal/operators/publish\";\nimport { refCount } from \"rxjs/internal/operators/refCount\";\nimport { defer } from \"rxjs/internal/observable/defer\";\nimport { scheduleSubscription, SubscriptionScheduler } from \"./SubscriptionScheduler\";\n\n/**\n * Custom hook for working with promise values.\n * Promises are debounced using trailing and leading edge.\n * The first promise will always be executed.\n * Any promises following the first while it is executing will be scheduled (and unscheduled), leaving only the last promise to be resolved.\n * Once the first promise finishes resolving, the last passed promise starts resolving.\n * @beta\n */\nexport function useDebouncedAsyncValue<TReturn>(valueToBeResolved: undefined | (() => Promise<TReturn>)) {\n const scheduler = useMemo(() => new SubscriptionScheduler<TReturn>(), []); // eslint-disable-line react-hooks/exhaustive-deps\n\n const [value, setValue] = useState<TReturn>();\n const [inProgress, setInProgress] = useState(false);\n\n useEffect(() => {\n if (!valueToBeResolved) {\n setValue(undefined);\n setInProgress(false);\n return;\n }\n\n setInProgress(true);\n // schedule and subscribe to the observable emitting value from valueToBeResolved promise\n const subscription = defer(valueToBeResolved)\n .pipe(\n publish(),\n refCount(),\n scheduleSubscription(scheduler),\n )\n .subscribe({\n next: (data) => {\n setValue(data);\n setInProgress(false);\n },\n });\n\n return () => { subscription.unsubscribe(); };\n }, [valueToBeResolved, scheduler]);\n\n return { value, inProgress };\n}\n"]}
1
+ {"version":3,"file":"UseDebouncedAsyncValue.js","sourceRoot":"","sources":["../../../../src/components-react/common/UseDebouncedAsyncValue.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,iCAAqD;AACrD,6DAA0D;AAC1D,+DAA4D;AAC5D,0DAAuD;AACvD,mEAAsF;AAEtF;;;;;;;GAOG;AACH,SAAgB,sBAAsB,CAAU,iBAAuD;IACrG,MAAM,SAAS,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE,CAAC,IAAI,6CAAqB,EAAW,EAAE,EAAE,CAAC,CAAC,CAAC,kDAAkD;IAE7H,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,IAAA,gBAAQ,GAAW,CAAC;IAC9C,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAC;IAEpD,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,IAAI,CAAC,iBAAiB,EAAE;YACtB,QAAQ,CAAC,SAAS,CAAC,CAAC;YACpB,aAAa,CAAC,KAAK,CAAC,CAAC;YACrB,OAAO;SACR;QAED,aAAa,CAAC,IAAI,CAAC,CAAC;QACpB,yFAAyF;QACzF,MAAM,YAAY,GAAG,IAAA,aAAK,EAAC,iBAAiB,CAAC;aAC1C,IAAI,CACH,IAAA,iBAAO,GAAE,EACT,IAAA,mBAAQ,GAAE,EACV,IAAA,4CAAoB,EAAC,SAAS,CAAC,CAChC;aACA,SAAS,CAAC;YACT,IAAI,EAAE,CAAC,IAAI,EAAE,EAAE;gBACb,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACf,aAAa,CAAC,KAAK,CAAC,CAAC;YACvB,CAAC;SACF,CAAC,CAAC;QAEL,OAAO,GAAG,EAAE,GAAG,YAAY,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC;IAC/C,CAAC,EAAE,CAAC,iBAAiB,EAAE,SAAS,CAAC,CAAC,CAAC;IAEnC,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;AAC/B,CAAC;AAhCD,wDAgCC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Common\r\n */\r\n\r\nimport { useEffect, useMemo, useState } from \"react\";\r\nimport { publish } from \"rxjs/internal/operators/publish\";\r\nimport { refCount } from \"rxjs/internal/operators/refCount\";\r\nimport { defer } from \"rxjs/internal/observable/defer\";\r\nimport { scheduleSubscription, SubscriptionScheduler } from \"./SubscriptionScheduler\";\r\n\r\n/**\r\n * Custom hook for working with promise values.\r\n * Promises are debounced using trailing and leading edge.\r\n * The first promise will always be executed.\r\n * Any promises following the first while it is executing will be scheduled (and unscheduled), leaving only the last promise to be resolved.\r\n * Once the first promise finishes resolving, the last passed promise starts resolving.\r\n * @beta\r\n */\r\nexport function useDebouncedAsyncValue<TReturn>(valueToBeResolved: undefined | (() => Promise<TReturn>)) {\r\n const scheduler = useMemo(() => new SubscriptionScheduler<TReturn>(), []); // eslint-disable-line react-hooks/exhaustive-deps\r\n\r\n const [value, setValue] = useState<TReturn>();\r\n const [inProgress, setInProgress] = useState(false);\r\n\r\n useEffect(() => {\r\n if (!valueToBeResolved) {\r\n setValue(undefined);\r\n setInProgress(false);\r\n return;\r\n }\r\n\r\n setInProgress(true);\r\n // schedule and subscribe to the observable emitting value from valueToBeResolved promise\r\n const subscription = defer(valueToBeResolved)\r\n .pipe(\r\n publish(),\r\n refCount(),\r\n scheduleSubscription(scheduler),\r\n )\r\n .subscribe({\r\n next: (data) => {\r\n setValue(data);\r\n setInProgress(false);\r\n },\r\n });\r\n\r\n return () => { subscription.unsubscribe(); };\r\n }, [valueToBeResolved, scheduler]);\r\n\r\n return { value, inProgress };\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"UseRerender.js","sourceRoot":"","sources":["../../../../src/components-react/common/UseRerender.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;;;AAE/F,iCAAyC;AAuBzC,gBAAgB;AAChB,SAAgB,WAAW,CAAI,cAAkB;IAC/C,MAAM,IAAI,GAAG,IAAA,cAAM,EAAC,EAAE,YAAY,EAAE,CAAC,EAAE,iBAAiB,EAAE,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC,CAAC,OAAO,CAAC;IACpG,IAAI,IAAI,CAAC,iBAAiB,EAAE;QAC1B,IAAI,CAAC,YAAY,IAAI,CAAC,CAAC;QACvB,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;KAChC;SAAM;QACL,IAAI,CAAC,OAAO,GAAG,cAAc,CAAC;QAC9B,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;KACvB;IAED,MAAM,CAAC,CAAC,EAAE,QAAQ,CAAC,GAAG,IAAA,gBAAQ,EAAC,EAAE,CAAC,CAAC;IACnC,OAAO;QACL,eAAe,EAAE,IAAI,CAAC,OAAO;QAC7B,YAAY,EAAE,IAAI,CAAC,YAAY;QAC/B,QAAQ,EAAE,CAAC,UAAU,EAAE,EAAE;YACvB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;YAC9B,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC;YAC1B,QAAQ,CAAC,EAAE,CAAC,CAAC;QACf,CAAC;KACF,CAAC;AACJ,CAAC;AApBD,kCAoBC","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\nimport { useRef, useState } from \"react\";\n\n/** @internal */\ninterface RerenderData<T extends (arg: any) => void> {\n /** Data specific to the current rerender cycle. */\n rerenderContext: Parameters<T>[0];\n /** Identifies the current rerender cycle. Starts at 0. */\n numRerenders: number;\n /** Rerenders component with new `rerenderContext`, if one is provided. */\n rerender: T;\n}\n\n/**\n * @internal\n * Makes component able to rerender itself.\n */\nexport function useRerender(): RerenderData<() => void>;\n/**\n * @internal\n * Makes component able to rerender itself while preserving some data between rerenders.\n * @param initialContext Data that component receives on first render cycle.\n */\nexport function useRerender<T>(initialContext: T): RerenderData<(newContext: T) => void>;\n/** @internal */\nexport function useRerender<T>(initialContext?: T): RerenderData<(newContext?: T) => void> {\n const data = useRef({ numRerenders: 0, rerenderRequested: false, context: initialContext }).current;\n if (data.rerenderRequested) {\n data.numRerenders += 1;\n data.rerenderRequested = false;\n } else {\n data.context = initialContext;\n data.numRerenders = 0;\n }\n\n const [_, setState] = useState({});\n return {\n rerenderContext: data.context,\n numRerenders: data.numRerenders,\n rerender: (newContext) => {\n data.rerenderRequested = true;\n data.context = newContext;\n setState({});\n },\n };\n}\n"]}
1
+ {"version":3,"file":"UseRerender.js","sourceRoot":"","sources":["../../../../src/components-react/common/UseRerender.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;;;AAE/F,iCAAyC;AAuBzC,gBAAgB;AAChB,SAAgB,WAAW,CAAI,cAAkB;IAC/C,MAAM,IAAI,GAAG,IAAA,cAAM,EAAC,EAAE,YAAY,EAAE,CAAC,EAAE,iBAAiB,EAAE,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC,CAAC,OAAO,CAAC;IACpG,IAAI,IAAI,CAAC,iBAAiB,EAAE;QAC1B,IAAI,CAAC,YAAY,IAAI,CAAC,CAAC;QACvB,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;KAChC;SAAM;QACL,IAAI,CAAC,OAAO,GAAG,cAAc,CAAC;QAC9B,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;KACvB;IAED,MAAM,CAAC,CAAC,EAAE,QAAQ,CAAC,GAAG,IAAA,gBAAQ,EAAC,EAAE,CAAC,CAAC;IACnC,OAAO;QACL,eAAe,EAAE,IAAI,CAAC,OAAO;QAC7B,YAAY,EAAE,IAAI,CAAC,YAAY;QAC/B,QAAQ,EAAE,CAAC,UAAU,EAAE,EAAE;YACvB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;YAC9B,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC;YAC1B,QAAQ,CAAC,EAAE,CAAC,CAAC;QACf,CAAC;KACF,CAAC;AACJ,CAAC;AApBD,kCAoBC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n\r\nimport { useRef, useState } from \"react\";\r\n\r\n/** @internal */\r\ninterface RerenderData<T extends (arg: any) => void> {\r\n /** Data specific to the current rerender cycle. */\r\n rerenderContext: Parameters<T>[0];\r\n /** Identifies the current rerender cycle. Starts at 0. */\r\n numRerenders: number;\r\n /** Rerenders component with new `rerenderContext`, if one is provided. */\r\n rerender: T;\r\n}\r\n\r\n/**\r\n * @internal\r\n * Makes component able to rerender itself.\r\n */\r\nexport function useRerender(): RerenderData<() => void>;\r\n/**\r\n * @internal\r\n * Makes component able to rerender itself while preserving some data between rerenders.\r\n * @param initialContext Data that component receives on first render cycle.\r\n */\r\nexport function useRerender<T>(initialContext: T): RerenderData<(newContext: T) => void>;\r\n/** @internal */\r\nexport function useRerender<T>(initialContext?: T): RerenderData<(newContext?: T) => void> {\r\n const data = useRef({ numRerenders: 0, rerenderRequested: false, context: initialContext }).current;\r\n if (data.rerenderRequested) {\r\n data.numRerenders += 1;\r\n data.rerenderRequested = false;\r\n } else {\r\n data.context = initialContext;\r\n data.numRerenders = 0;\r\n }\r\n\r\n const [_, setState] = useState({});\r\n return {\r\n rerenderContext: data.context,\r\n numRerenders: data.numRerenders,\r\n rerender: (newContext) => {\r\n data.rerenderRequested = true;\r\n data.context = newContext;\r\n setState({});\r\n },\r\n };\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"countMatchesInString.js","sourceRoot":"","sources":["../../../../src/components-react/common/countMatchesInString.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F,gEAAgE;;;AAEhE;;GAEG;AAEH;;GAEG;AACH,SAAgB,oBAAoB,CAAC,GAAW,EAAE,MAAc;IAC9D,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM;QAC/B,OAAO,CAAC,CAAC;IAEX,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC;IACnB,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC;IAE3B,OAAO,IAAI,EAAE;QACX,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC/B,IAAI,GAAG,IAAI,CAAC,EAAE;YACZ,EAAE,CAAC,CAAC;YACJ,GAAG,IAAI,IAAI,CAAC;SACb;;YACC,MAAM;KACT;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAhBD,oDAgBC","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/* @author Vitim.us https://gist.github.com/victornpb/7736865 */\n\n/** @packageDocumentation\n * @module Common\n */\n\n/** Counts how many times string 'lookup' is repeated in string 'str'.\n * @internal\n */\nexport function countMatchesInString(str: string, lookup: string) {\n if (!str.length || !lookup.length)\n return 0;\n\n let n = 0, pos = 0;\n const step = lookup.length;\n\n while (true) {\n pos = str.indexOf(lookup, pos);\n if (pos >= 0) {\n ++n;\n pos += step;\n } else\n break;\n }\n return n;\n}\n"]}
1
+ {"version":3,"file":"countMatchesInString.js","sourceRoot":"","sources":["../../../../src/components-react/common/countMatchesInString.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F,gEAAgE;;;AAEhE;;GAEG;AAEH;;GAEG;AACH,SAAgB,oBAAoB,CAAC,GAAW,EAAE,MAAc;IAC9D,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM;QAC/B,OAAO,CAAC,CAAC;IAEX,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC;IACnB,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC;IAE3B,OAAO,IAAI,EAAE;QACX,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC/B,IAAI,GAAG,IAAI,CAAC,EAAE;YACZ,EAAE,CAAC,CAAC;YACJ,GAAG,IAAI,IAAI,CAAC;SACb;;YACC,MAAM;KACT;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAhBD,oDAgBC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/* @author Vitim.us https://gist.github.com/victornpb/7736865 */\r\n\r\n/** @packageDocumentation\r\n * @module Common\r\n */\r\n\r\n/** Counts how many times string 'lookup' is repeated in string 'str'.\r\n * @internal\r\n */\r\nexport function countMatchesInString(str: string, lookup: string) {\r\n if (!str.length || !lookup.length)\r\n return 0;\r\n\r\n let n = 0, pos = 0;\r\n const step = lookup.length;\r\n\r\n while (true) {\r\n pos = str.indexOf(lookup, pos);\r\n if (pos >= 0) {\r\n ++n;\r\n pos += step;\r\n } else\r\n break;\r\n }\r\n return n;\r\n}\r\n"]}