@rio-cloud/rio-uikit 0.16.1 → 0.16.2-beta.3

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 (241) hide show
  1. package/ColorScheme.d.ts +4 -0
  2. package/ColorScheme.js +2 -0
  3. package/Colors.js +1 -1
  4. package/TruckLayer.js +1 -1
  5. package/components/assetTree/Tree.js +1 -1
  6. package/components/charts/chartHelper.js +1 -1
  7. package/components/map/components/Map.js +147 -130
  8. package/components/map/components/constants.js +4 -1
  9. package/components/map/components/features/layers/RoadRestrictionLayer.js +26 -0
  10. package/components/map/components/features/layers/TrafficLayer.js +19 -6
  11. package/components/map/components/features/layers/baselayers/DefaultRasterLayer.js +20 -0
  12. package/components/map/components/features/layers/baselayers/DefaultVectorLayer.js +14 -0
  13. package/components/map/components/features/layers/baselayers/FleetStyleLayer.js +13 -17
  14. package/components/map/components/features/layers/baselayers/SatelliteLayer.js +13 -17
  15. package/components/map/components/features/layers/baselayers/TerrainLayer.js +13 -17
  16. package/components/map/components/features/layers/baselayers/useBaseLayer.js +41 -0
  17. package/components/map/components/mapUtils.js +4 -1
  18. package/components/mapMarker/ClusterMapMarker.js +2 -2
  19. package/components/mapMarker/SingleMapMarker.js +2 -2
  20. package/components/sidebars/Sidebar.js +2 -2
  21. package/hooks/useHereMap.ts +23 -0
  22. package/hooks/useScripts.ts +52 -0
  23. package/hooks/useScrollPosition.js +72 -0
  24. package/index.js +4 -1
  25. package/lib/es/ColorScheme.d.ts +4 -0
  26. package/lib/es/ColorScheme.js +18 -0
  27. package/lib/es/Colors.js +1 -1
  28. package/lib/es/TruckLayer.js +2 -2
  29. package/lib/es/components/assetTree/Tree.js +1 -1
  30. package/lib/es/components/charts/chartHelper.js +1 -1
  31. package/lib/es/components/map/components/Map.js +145 -125
  32. package/lib/es/components/map/components/constants.js +3 -0
  33. package/lib/es/components/map/components/features/layers/RoadRestrictionLayer.js +34 -0
  34. package/lib/es/components/map/components/features/layers/TrafficLayer.js +18 -6
  35. package/lib/es/components/map/components/features/layers/baselayers/DefaultRasterLayer.js +26 -0
  36. package/lib/es/components/map/components/features/layers/baselayers/DefaultVectorLayer.js +21 -0
  37. package/lib/es/components/map/components/features/layers/baselayers/FleetStyleLayer.js +13 -18
  38. package/lib/es/components/map/components/features/layers/baselayers/SatelliteLayer.js +13 -18
  39. package/lib/es/components/map/components/features/layers/baselayers/TerrainLayer.js +13 -18
  40. package/lib/es/components/map/components/features/layers/baselayers/useBaseLayer.js +49 -0
  41. package/lib/es/components/map/components/mapUtils.js +6 -3
  42. package/lib/es/components/mapMarker/ClusterMapMarker.js +2 -2
  43. package/lib/es/components/mapMarker/SingleMapMarker.js +2 -2
  44. package/lib/es/components/sidebars/Sidebar.js +2 -2
  45. package/lib/es/hooks/useHereMap.ts +23 -0
  46. package/lib/es/hooks/useScripts.ts +52 -0
  47. package/lib/es/hooks/useScrollPosition.js +80 -0
  48. package/lib/es/index.js +24 -1
  49. package/lib/es/mapIndex.js +2 -2
  50. package/lib/es/styles/components/Activity.less +9 -10
  51. package/lib/es/styles/components/ApplicationHeader.less +24 -29
  52. package/lib/es/styles/components/ApplicationLayout.less +7 -7
  53. package/lib/es/styles/components/AssetTree.less +30 -28
  54. package/lib/es/styles/components/AutoSuggest.less +2 -2
  55. package/lib/es/styles/components/BottomSheet.less +1 -2
  56. package/lib/es/styles/components/Carousel.less +13 -9
  57. package/lib/es/styles/components/Checkbox.less +15 -16
  58. package/lib/es/styles/components/ClearableInput.less +3 -3
  59. package/lib/es/styles/components/Counter.less +12 -12
  60. package/lib/es/styles/components/DataTabs.less +2 -2
  61. package/lib/es/styles/components/DatePicker.less +27 -27
  62. package/lib/es/styles/components/Dialog.less +15 -11
  63. package/lib/es/styles/components/Dropdown.less +11 -11
  64. package/lib/es/styles/components/Expander.less +7 -7
  65. package/lib/es/styles/components/ListMenu.less +8 -8
  66. package/lib/es/styles/components/MapHere.less +3 -2
  67. package/lib/es/styles/components/MapMarker.less +16 -17
  68. package/lib/es/styles/components/MapSettings.less +5 -5
  69. package/lib/es/styles/components/NoData.less +1 -1
  70. package/lib/es/styles/components/Notification.less +12 -12
  71. package/lib/es/styles/components/RadioButton.less +11 -12
  72. package/lib/es/styles/components/Resizer.less +1 -1
  73. package/lib/es/styles/components/Select.less +16 -26
  74. package/lib/es/styles/components/Sidebar.less +29 -21
  75. package/lib/es/styles/components/Slider.less +18 -18
  76. package/lib/es/styles/components/Spinner.less +6 -6
  77. package/lib/es/styles/components/StatsWidget.less +5 -5
  78. package/lib/es/styles/components/SteppedProgressBar.less +32 -29
  79. package/lib/es/styles/components/SupportMarker.less +1 -1
  80. package/lib/es/styles/components/Switch.less +8 -8
  81. package/lib/es/styles/components/TableSettingsDialog.less +7 -7
  82. package/lib/es/styles/components/TableToolbar.less +1 -1
  83. package/lib/es/styles/components/Tag.less +10 -10
  84. package/lib/es/styles/components/Timeline.less +3 -3
  85. package/lib/es/styles/components/Tooltip.less +10 -10
  86. package/lib/es/styles/design/badges.less +10 -10
  87. package/lib/es/styles/design/border.less +1 -1
  88. package/lib/es/styles/design/breadcrumbs.less +2 -2
  89. package/lib/es/styles/design/button-groups.less +25 -1
  90. package/lib/es/styles/design/buttons.less +53 -109
  91. package/lib/es/styles/design/callouts.less +3 -3
  92. package/lib/es/styles/design/code.less +4 -6
  93. package/lib/es/styles/design/colors.less +20 -20
  94. package/lib/es/styles/design/form-input-groups.less +4 -4
  95. package/lib/es/styles/design/form-inputs.less +33 -31
  96. package/lib/es/styles/design/images.less +2 -2
  97. package/lib/es/styles/design/labels.less +11 -11
  98. package/lib/es/styles/design/list-group.less +14 -12
  99. package/lib/es/styles/design/navs.less +27 -27
  100. package/lib/es/styles/design/normalize.less +0 -9
  101. package/lib/es/styles/design/pagination.less +10 -10
  102. package/lib/es/styles/design/panels.less +10 -10
  103. package/lib/es/styles/design/popovers.less +8 -8
  104. package/lib/es/styles/design/progress-bars.less +8 -8
  105. package/lib/es/styles/design/shadows.less +14 -7
  106. package/lib/es/styles/design/tables.less +68 -106
  107. package/lib/es/styles/design/text.less +5 -19
  108. package/lib/es/styles/design/theme.less +10 -10
  109. package/lib/es/styles/design/thumbnails.less +2 -2
  110. package/lib/es/styles/design/type.less +4 -4
  111. package/lib/es/styles/design/wells.less +1 -1
  112. package/lib/es/styles/mapping/color-map.less +65 -64
  113. package/lib/es/styles/mixins/_imports.less +14 -0
  114. package/lib/es/styles/mixins/buttons.less +24 -56
  115. package/lib/es/styles/mixins/forms.less +19 -55
  116. package/lib/es/styles/mixins/hsl.less +19 -0
  117. package/lib/es/styles/mixins/panels.less +2 -2
  118. package/lib/es/styles/print/print.less +7 -7
  119. package/lib/es/styles/rio-uikit-core.less +2 -2
  120. package/lib/es/styles/rio-uikit-print-utilities.less +2 -2
  121. package/lib/es/styles/rio-uikit-responsive-utilities.less +2 -2
  122. package/lib/es/styles/variables/_index.less +196 -0
  123. package/lib/es/styles/variables/colors.json +67 -0
  124. package/lib/es/styles/variables/concated_css_variables.less +66 -0
  125. package/lib/es/styles/variables/dark_colors.less +88 -0
  126. package/lib/es/styles/variables/dark_css_variables.less +28 -0
  127. package/lib/es/styles/variables/dark_css_variables_map.less +96 -0
  128. package/lib/es/styles/variables/light_colors.less +92 -0
  129. package/lib/es/styles/variables/light_css_variables.less +17 -0
  130. package/lib/es/styles/variables/light_css_variables_map.less +100 -0
  131. package/lib/es/styles/variables/screens.less +7 -0
  132. package/lib/es/styles/variables/text.less +23 -0
  133. package/lib/es/themes/BuyButton/styles/rio-buyButton.less +13 -8
  134. package/lib/es/themes/MAN/styles/man-uikit.less +3 -0
  135. package/lib/es/themes/SCANIA/styles/scania-uikit.less +3 -0
  136. package/lib/es/themes/Volkswagen/styles/vw-uikit.less +21 -30
  137. package/lib/es/themes/Website/styles/rio-website.less +145 -120
  138. package/lib/es/themes/Xmas/styles/rio-xmas.less +59 -29
  139. package/lib/es/types.ts +6 -1
  140. package/lib/es/useScrollPosition.d.ts +4 -0
  141. package/lib/es/useScrollPosition.js +13 -0
  142. package/lib/es/utils/colorScheme.js +59 -0
  143. package/lib/es/utils/init.js +2 -0
  144. package/lib/es/version.json +1 -1
  145. package/mapIndex.js +1 -1
  146. package/package.json +4 -3
  147. package/styles/components/Activity.less +9 -10
  148. package/styles/components/ApplicationHeader.less +24 -29
  149. package/styles/components/ApplicationLayout.less +7 -7
  150. package/styles/components/AssetTree.less +30 -28
  151. package/styles/components/AutoSuggest.less +2 -2
  152. package/styles/components/BottomSheet.less +1 -2
  153. package/styles/components/Carousel.less +13 -9
  154. package/styles/components/Checkbox.less +15 -16
  155. package/styles/components/ClearableInput.less +3 -3
  156. package/styles/components/Counter.less +12 -12
  157. package/styles/components/DataTabs.less +2 -2
  158. package/styles/components/DatePicker.less +27 -27
  159. package/styles/components/Dialog.less +15 -11
  160. package/styles/components/Dropdown.less +11 -11
  161. package/styles/components/Expander.less +7 -7
  162. package/styles/components/ListMenu.less +8 -8
  163. package/styles/components/MapHere.less +3 -2
  164. package/styles/components/MapMarker.less +16 -17
  165. package/styles/components/MapSettings.less +5 -5
  166. package/styles/components/NoData.less +1 -1
  167. package/styles/components/Notification.less +12 -12
  168. package/styles/components/RadioButton.less +11 -12
  169. package/styles/components/Resizer.less +1 -1
  170. package/styles/components/Select.less +16 -26
  171. package/styles/components/Sidebar.less +29 -21
  172. package/styles/components/Slider.less +18 -18
  173. package/styles/components/Spinner.less +6 -6
  174. package/styles/components/StatsWidget.less +5 -5
  175. package/styles/components/SteppedProgressBar.less +32 -29
  176. package/styles/components/SupportMarker.less +1 -1
  177. package/styles/components/Switch.less +8 -8
  178. package/styles/components/TableSettingsDialog.less +7 -7
  179. package/styles/components/TableToolbar.less +1 -1
  180. package/styles/components/Tag.less +10 -10
  181. package/styles/components/Timeline.less +3 -3
  182. package/styles/components/Tooltip.less +10 -10
  183. package/styles/design/badges.less +10 -10
  184. package/styles/design/border.less +1 -1
  185. package/styles/design/breadcrumbs.less +2 -2
  186. package/styles/design/button-groups.less +25 -1
  187. package/styles/design/buttons.less +53 -109
  188. package/styles/design/callouts.less +3 -3
  189. package/styles/design/code.less +4 -6
  190. package/styles/design/colors.less +20 -20
  191. package/styles/design/form-input-groups.less +4 -4
  192. package/styles/design/form-inputs.less +33 -31
  193. package/styles/design/images.less +2 -2
  194. package/styles/design/labels.less +11 -11
  195. package/styles/design/list-group.less +14 -12
  196. package/styles/design/navs.less +27 -27
  197. package/styles/design/normalize.less +0 -9
  198. package/styles/design/pagination.less +10 -10
  199. package/styles/design/panels.less +10 -10
  200. package/styles/design/popovers.less +8 -8
  201. package/styles/design/progress-bars.less +8 -8
  202. package/styles/design/shadows.less +14 -7
  203. package/styles/design/tables.less +68 -106
  204. package/styles/design/text.less +5 -19
  205. package/styles/design/theme.less +10 -10
  206. package/styles/design/thumbnails.less +2 -2
  207. package/styles/design/type.less +4 -4
  208. package/styles/design/wells.less +1 -1
  209. package/styles/mapping/color-map.less +65 -64
  210. package/styles/mixins/_imports.less +14 -0
  211. package/styles/mixins/buttons.less +24 -56
  212. package/styles/mixins/forms.less +19 -55
  213. package/styles/mixins/hsl.less +19 -0
  214. package/styles/mixins/panels.less +2 -2
  215. package/styles/print/print.less +7 -7
  216. package/styles/rio-uikit-core.less +2 -2
  217. package/styles/rio-uikit-print-utilities.less +2 -2
  218. package/styles/rio-uikit-responsive-utilities.less +2 -2
  219. package/styles/variables/_index.less +196 -0
  220. package/styles/variables/colors.json +67 -0
  221. package/styles/variables/concated_css_variables.less +66 -0
  222. package/styles/variables/dark_colors.less +88 -0
  223. package/styles/variables/dark_css_variables.less +28 -0
  224. package/styles/variables/dark_css_variables_map.less +96 -0
  225. package/styles/variables/light_colors.less +92 -0
  226. package/styles/variables/light_css_variables.less +17 -0
  227. package/styles/variables/light_css_variables_map.less +100 -0
  228. package/styles/variables/screens.less +7 -0
  229. package/styles/variables/text.less +23 -0
  230. package/themes/BuyButton/styles/rio-buyButton.less +13 -8
  231. package/themes/MAN/styles/man-uikit.less +3 -0
  232. package/themes/SCANIA/styles/scania-uikit.less +3 -0
  233. package/themes/Volkswagen/styles/vw-uikit.less +21 -30
  234. package/themes/Website/styles/rio-website.less +145 -120
  235. package/themes/Xmas/styles/rio-xmas.less +59 -29
  236. package/types.ts +6 -1
  237. package/useScrollPosition.d.ts +4 -0
  238. package/useScrollPosition.js +2 -0
  239. package/utils/colorScheme.js +50 -0
  240. package/utils/init.js +2 -0
  241. package/version.json +1 -1
@@ -1,20 +1,16 @@
1
- import _extends from "@babel/runtime/helpers/extends";
2
- import React from 'react';
3
- import { FORMAT, TILE_SIZE } from '../../../constants';
4
- import BaseLayer from './BaseLayer';
5
- var createTerrainLayer = function createTerrainLayer(api, language, showTraffic) {
6
- var type = showTraffic ? 'traffic' : 'aerial';
7
- var tileType = showTraffic ? 'traffictile' : 'maptile';
8
- return api.platform.getMapTileService({
9
- type: type
10
- }).createTileLayer(tileType, 'terrain.day', TILE_SIZE, FORMAT, {
11
- style: 'default',
12
- lg: language
13
- });
14
- };
1
+ import { useBaseLayer } from './useBaseLayer';
15
2
  var TerrainLayer = function TerrainLayer(props) {
16
- return /*#__PURE__*/React.createElement(BaseLayer, _extends({}, props, {
17
- createBaseLayer: createTerrainLayer
18
- }));
3
+ var api = props.api,
4
+ language = props.language;
5
+ useBaseLayer({
6
+ api: api,
7
+ language: language,
8
+ mapTileServiceType: 'aerial',
9
+ scheme: 'terrain.day',
10
+ additionalParameter: {
11
+ style: 'default'
12
+ }
13
+ });
14
+ return null;
19
15
  };
20
16
  export default TerrainLayer;
@@ -0,0 +1,41 @@
1
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
3
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
4
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
5
+ import { useState, useEffect } from 'react';
6
+ import { mapToLongLocale } from '../../../../utils/localization';
7
+ import { FORMAT, TILE_SIZE } from '../../../constants';
8
+ import { getPPI } from '../../../mapUtils';
9
+ export var useBaseLayer = function useBaseLayer(props) {
10
+ var api = props.api,
11
+ _props$mapTileService = props.mapTileServiceType,
12
+ mapTileServiceType = _props$mapTileService === void 0 ? 'base' : _props$mapTileService,
13
+ _props$tileType = props.tileType,
14
+ tileType = _props$tileType === void 0 ? 'maptile' : _props$tileType,
15
+ scheme = props.scheme,
16
+ _props$additionalPara = props.additionalParameters,
17
+ additionalParameters = _props$additionalPara === void 0 ? {} : _props$additionalPara,
18
+ options = props.options,
19
+ language = props.language;
20
+ var _useState = useState(),
21
+ _useState2 = _slicedToArray(_useState, 2),
22
+ baseLayer = _useState2[0],
23
+ setBaseLayer = _useState2[1];
24
+ useEffect(function () {
25
+ if (!baseLayer) {
26
+ var additionalParametersWithLocale = _objectSpread(_objectSpread({}, additionalParameters), {}, {
27
+ lg: mapToLongLocale(language),
28
+ ppi: getPPI()
29
+ });
30
+ var mapTiler = api.platform.getMapTileService({
31
+ type: mapTileServiceType
32
+ });
33
+
34
+ // Function signature: createTileLayer(tileType, scheme, tileSize, format, opt_additionalParameters, opt_opacity, opt_dark, opt_options)
35
+ // See: https://developer.here.com/documentation/maps/3.1.37.0/api_reference/H.service.MapTileService.html#createTileLayer
36
+ var newBaseLayer = mapTiler.createTileLayer(tileType, scheme, TILE_SIZE, FORMAT, additionalParametersWithLocale, 1, false, options);
37
+ api.map.setBaseLayer(newBaseLayer);
38
+ setBaseLayer(newBaseLayer);
39
+ }
40
+ });
41
+ };
@@ -1,9 +1,12 @@
1
- /* eslint-disable no-undef */
1
+ import { HIGH_RES_PPI } from './constants';
2
2
  import map from 'lodash/fp/map';
3
3
  import flatMap from 'lodash/fp/flatMap';
4
4
  import filter from 'lodash/fp/filter';
5
5
  import flow from 'lodash/fp/flow';
6
6
  import first from 'lodash/fp/first';
7
+ export var getPPI = function getPPI() {
8
+ return window.devicePixelRatio > 1 ? HIGH_RES_PPI : undefined;
9
+ };
7
10
  var latLngFilterFunction = function latLngFilterFunction(lat, lng) {
8
11
  return function (obj) {
9
12
  return obj.getGeometry && obj.getGeometry().lat === lat && obj.getGeometry().lng === lng;
@@ -26,9 +26,9 @@ var ClusterMapMarker = function ClusterMapMarker(props) {
26
26
  var classes = classNames(active && 'active', 'rio-map-marker', 'rio-map-marker-center-center', !clickable && 'pointer-events-none');
27
27
  var clusterClasses = classNames('rio-map-cluster-cirlce', colorClass);
28
28
  var baseColor = getColorMapping(colorClass) || markerColor;
29
- var markerBackgroundColor = active ? 'bg-white' : baseColor;
29
+ var markerBackgroundColor = active ? 'bg-map-marker-active' : baseColor;
30
30
  var markerBorderColor = baseColor.replace('bg-', 'border-color-');
31
- var markerTextColor = active ? baseColor.replace('bg-', 'text-color-') : 'text-color-white';
31
+ var markerTextColor = active ? baseColor.replace('bg-', 'text-color-') : 'color-map-marker-text';
32
32
  return /*#__PURE__*/React.createElement("div", {
33
33
  className: classes
34
34
  }, /*#__PURE__*/React.createElement("div", {
@@ -52,9 +52,9 @@ var SingleMapMarker = function SingleMapMarker(props) {
52
52
  };
53
53
  var mapDirection = getMapDirection(moving, bearing, rotationStyle);
54
54
  var baseColor = getColorMapping(colorClass, markerColor);
55
- var markerBackgroundColor = active ? 'bg-white' : baseColor;
55
+ var markerBackgroundColor = active ? 'bg-map-marker-active' : baseColor;
56
56
  var markerBorderColor = baseColor.replace('bg-', 'border-color-');
57
- var markerTextColor = active ? baseColor.replace('bg-', 'text-color-') : 'text-color-white';
57
+ var markerTextColor = active ? baseColor.replace('bg-', 'text-color-') : 'color-map-marker-text';
58
58
  return /*#__PURE__*/React.createElement("div", {
59
59
  className: classes
60
60
  }, /*#__PURE__*/React.createElement("div", {
@@ -234,7 +234,7 @@ var Sidebar = /*#__PURE__*/function (_Component) {
234
234
  var headerClassNames = classNames('SidebarHeader', headerClassName && headerClassName, showHeaderBorder && 'show-border');
235
235
  var titleClassNames = classNames('SidebarTitle', titleClassName && titleClassName);
236
236
  var bodyClassNames = classNames('SidebarBody', bodyClassName && bodyClassName);
237
- var backdropClassNames = classNames('SidebarBackdrop', makeBackdropVisible && 'bg-black opacity-50', backdropClassName && backdropClassName);
237
+ var backdropClassNames = classNames('SidebarBackdrop', makeBackdropVisible && 'sidebar-backdrop-bg', backdropClassName && backdropClassName);
238
238
  var fullscreenIconClasses = classNames('rioglyph', isFullscreen ? 'rioglyph-resize-small' : 'rioglyph-resize-full');
239
239
  var resizeLimitClasses = classNames('SidebarResizeLimit', isResize && 'display-block');
240
240
  var isRight = position === Sidebar.RIGHT;
@@ -359,7 +359,7 @@ Sidebar.propTypes = {
359
359
  makeBackdropVisible: PropTypes.bool,
360
360
  onBackdropClick: PropTypes.func,
361
361
  backdropClassName: PropTypes.string,
362
- bodyRef: PropTypes.elementType,
362
+ bodyRef: PropTypes.object,
363
363
  headerButtons: PropTypes.node
364
364
  };
365
365
  export default Sidebar;
@@ -0,0 +1,23 @@
1
+ import { useScripts } from './useScripts';
2
+
3
+ const DEFAULT_BASE_URL = 'https://js.api.here.com/v3/3.1.20.0/';
4
+
5
+ const HERE_EXTERNALS = [
6
+ 'mapsjs-core.js',
7
+ 'mapsjs-core-legacy.js',
8
+ 'mapsjs-service.js',
9
+ 'mapsjs-service-legacy.js',
10
+ 'mapsjs-mapevents.js',
11
+ 'mapsjs-ui.js',
12
+ 'mapsjs-clustering.js',
13
+ ];
14
+
15
+ const getExternals = (scriptList: string[], baseUrl: string): string[] =>
16
+ scriptList.map((script) => `${baseUrl}${script}`);
17
+
18
+ const sanitizeBaseUrl = (url: string) => (url.endsWith('/') ? url : `${url}/`);
19
+
20
+ export const useHereMap = (baseUrl?: string) => {
21
+ const hereScripts = getExternals(HERE_EXTERNALS, sanitizeBaseUrl(baseUrl || DEFAULT_BASE_URL));
22
+ return useScripts(hereScripts, false);
23
+ };
@@ -0,0 +1,52 @@
1
+ import { useEffect, useState } from 'react';
2
+
3
+ const hasScriptsInHead = (src: string) => document.head.querySelectorAll(`script[src*="${src}"]`).length > 0;
4
+
5
+ export const useScripts = (scripts: string[], loadAsync: boolean = false) => {
6
+ const [isLoading, setIsLoading] = useState<boolean>(false);
7
+ const [hasLoaded, setHasLoaded] = useState<boolean>(false);
8
+ const [error, setError] = useState<Error | undefined>();
9
+
10
+ const promises = new Set();
11
+
12
+ useEffect(() => {
13
+ const [firstScript] = scripts;
14
+
15
+ if (hasScriptsInHead(firstScript)) {
16
+ setHasLoaded(true);
17
+ return;
18
+ }
19
+
20
+ setIsLoading(true);
21
+
22
+ scripts.map((external) => {
23
+ promises.add(
24
+ new Promise<void>((resolve, reject) => {
25
+ const script = document.createElement('script');
26
+ script.async = loadAsync;
27
+ script.src = external;
28
+
29
+ script.onload = () => {
30
+ console.debug(`loaded ${external}`);
31
+ resolve();
32
+ };
33
+
34
+ script.onerror = () => {
35
+ console.debug(`failed to load ${external}`);
36
+ setError(new Error(`failed to load ${external}`));
37
+ reject();
38
+ };
39
+
40
+ document.head.appendChild(script);
41
+ })
42
+ );
43
+ });
44
+
45
+ Promise.all([...promises]).then(() => {
46
+ setIsLoading(false);
47
+ setHasLoaded(true);
48
+ });
49
+ }, []);
50
+
51
+ return { isLoading, error, hasLoaded };
52
+ };
@@ -0,0 +1,72 @@
1
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
+ import { useState, useEffect } from 'react';
3
+ var getModuleContent = function getModuleContent() {
4
+ return document.getElementsByClassName('module-content')[0];
5
+ };
6
+
7
+ // "target" can be "window", "document.body", a "ref" or undefiend
8
+ // where in later case the module-content is taken as default
9
+
10
+ var useScrollPosition = function useScrollPosition(target) {
11
+ var _useState = useState(),
12
+ _useState2 = _slicedToArray(_useState, 2),
13
+ targetElement = _useState2[0],
14
+ setTargetElement = _useState2[1];
15
+ var _useState3 = useState(0),
16
+ _useState4 = _slicedToArray(_useState3, 2),
17
+ scrollPosition = _useState4[0],
18
+ setScrollPosition = _useState4[1];
19
+ useEffect(function () {
20
+ var checkForModuleContent = null;
21
+
22
+ // In cae the target is undefined it might be that the module-content is not rendered yet,
23
+ // hence check periodically for the existence
24
+ if (!target) {
25
+ checkForModuleContent = setInterval(function () {
26
+ var element = getModuleContent();
27
+ if (element) {
28
+ setTargetElement(element);
29
+ }
30
+ }, 300);
31
+ } else if (target && checkForModuleContent) {
32
+ console.log('clearInterval');
33
+ clearInterval(checkForModuleContent);
34
+ }
35
+
36
+ // In case the target is a "ref" - set the targetElement when current is defined
37
+ else if (target !== null && target !== void 0 && target.current && !checkForModuleContent) {
38
+ setTargetElement(target.current);
39
+ }
40
+
41
+ // In case it's "wondow" or "document.body"
42
+ else {
43
+ setTargetElement(target);
44
+ }
45
+ return {
46
+ "if": function _if(checkForModuleContent) {
47
+ clearInterval(check);
48
+ }
49
+ };
50
+ }, [target]);
51
+ var handleScroll = function handleScroll() {
52
+ requestAnimationFrame(function () {
53
+ if (targetElement === window) {
54
+ setScrollPosition(targetElement.scrollY);
55
+ } else {
56
+ setScrollPosition(targetElement.scrollTop);
57
+ }
58
+ });
59
+ };
60
+ useEffect(function () {
61
+ if (targetElement) {
62
+ targetElement.addEventListener('scroll', handleScroll);
63
+ }
64
+ return function () {
65
+ if (targetElement) {
66
+ targetElement.removeEventListener('scroll', handleScroll);
67
+ }
68
+ };
69
+ }, [targetElement]);
70
+ return scrollPosition;
71
+ };
72
+ export default useScrollPosition;
package/index.js CHANGED
@@ -4,7 +4,7 @@ import versionJson from './version.json';
4
4
  var VERSION = versionJson.version;
5
5
  export { VERSION };
6
6
  export * from 'framer-motion';
7
- import _colors from './styles/shared/colors.json';
7
+ import _colors from './styles/variables/colors.json';
8
8
  export { _colors as colors };
9
9
  import { default as _Button } from './components/button/Button';
10
10
  export { _Button as Button };
@@ -153,8 +153,11 @@ export { default as useInterval } from './hooks/useInterval';
153
153
  export { default as useClickOutside } from './hooks/useClickOutside';
154
154
  export { default as useClipboard } from './hooks/useClipboard';
155
155
  export { default as useElementSize } from './hooks/useElementSize';
156
+ export { default as useScrollPosition } from './hooks/useScrollPosition';
156
157
  import { hasTouch as _hasTouch, inIframe as _inIframe, isDesktop as _isDesktop } from './utils/deviceUtils';
157
158
  export { _hasTouch as hasTouch, _inIframe as inIframe, _isDesktop as isDesktop };
159
+ import { getColorScheme as _getColorScheme, setColorScheme as _setColorScheme } from './utils/colorScheme';
160
+ export { _getColorScheme as getColorScheme, _setColorScheme as setColorScheme };
158
161
  import { getNewGroupedSelected as _getNewGroupedSelected } from './utils/GroupSelectionUtil';
159
162
  export { _getNewGroupedSelected as getNewGroupedSelected };
160
163
  import { default as _ExpanderPanel } from './components/expander/ExpanderPanel';
@@ -0,0 +1,4 @@
1
+ declare module '@rio-cloud/rio-uikit/lib/es/ColorScheme' {
2
+ export function getColorScheme(): string;
3
+ export function setColorScheme(scheme: 'dark' | 'light' | 'default' | 'system'): void;
4
+ }
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "getColorScheme", {
7
+ enumerable: true,
8
+ get: function get() {
9
+ return _colorScheme.getColorScheme;
10
+ }
11
+ });
12
+ Object.defineProperty(exports, "setColorScheme", {
13
+ enumerable: true,
14
+ get: function get() {
15
+ return _colorScheme.setColorScheme;
16
+ }
17
+ });
18
+ var _colorScheme = require("./utils/colorScheme");
package/lib/es/Colors.js CHANGED
@@ -10,4 +10,4 @@ Object.defineProperty(exports, "default", {
10
10
  return _colors2["default"];
11
11
  }
12
12
  });
13
- var _colors2 = _interopRequireDefault(require("./styles/shared/colors.json"));
13
+ var _colors2 = _interopRequireDefault(require("./styles/variables/colors.json"));
@@ -7,7 +7,7 @@ Object.defineProperty(exports, "__esModule", {
7
7
  Object.defineProperty(exports, "default", {
8
8
  enumerable: true,
9
9
  get: function get() {
10
- return _TruckLayer2["default"];
10
+ return _RoadRestrictionLayer["default"];
11
11
  }
12
12
  });
13
- var _TruckLayer2 = _interopRequireDefault(require("./components/map/components/features/layers/TruckLayer"));
13
+ var _RoadRestrictionLayer = _interopRequireDefault(require("./components/map/components/features/layers/RoadRestrictionLayer"));
@@ -653,7 +653,7 @@ Tree.propTypes = {
653
653
  firstName: _propTypes["default"].string,
654
654
  lastName: _propTypes["default"].string.isRequired
655
655
  })]).isRequired,
656
- info: _propTypes["default"].string,
656
+ info: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].node]),
657
657
  type: _propTypes["default"].string.isRequired,
658
658
  groupIds: _propTypes["default"].arrayOf(_propTypes["default"].string),
659
659
  className: _propTypes["default"].string
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.mapGridOptions = exports.getFromDefaultColors = exports.getColor = exports.defaultChartColors = exports.CURSOR_BACKGROUND_COLOR = void 0;
8
8
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
- var _colors = _interopRequireDefault(require("../../styles/shared/colors.json"));
9
+ var _colors = _interopRequireDefault(require("../../styles/variables/colors.json"));
10
10
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
11
11
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
12
12
  var brightColors = ['color-warmup-corn', 'color-coldplay-khaki'];