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

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 (306) hide show
  1. package/.DS_Store +0 -0
  2. package/ColorScheme.d.ts +4 -0
  3. package/ColorScheme.js +2 -0
  4. package/Colors.js +1 -1
  5. package/TruckLayer.js +1 -1
  6. package/components/.DS_Store +0 -0
  7. package/components/applicationHeader/AppMenu.js +6 -3
  8. package/components/applicationHeader/AppMenuDropdown.js +6 -2
  9. package/components/applicationHeader/ApplicationHeader.js +10 -5
  10. package/components/applicationHeader/MobileAppMenu.js +8 -4
  11. package/components/assetTree/Tree.js +1 -1
  12. package/components/autosuggest/AutoSuggest.js +2 -2
  13. package/components/charts/chartHelper.js +1 -1
  14. package/components/clearableInput/ClearableInput.js +2 -1
  15. package/components/datepicker/DatePicker.js +8 -4
  16. package/components/filepicker/FilePicker.js +5 -4
  17. package/components/map/.DS_Store +0 -0
  18. package/components/map/assets/icon_map_settings_maptype_night_active.svg +12 -0
  19. package/components/map/assets/icon_map_settings_maptype_night_inactive.svg +12 -0
  20. package/components/map/components/.DS_Store +0 -0
  21. package/components/map/components/Map.js +167 -140
  22. package/components/map/components/constants.js +1 -0
  23. package/components/map/components/features/Route.js +6 -7
  24. package/components/map/components/features/basics/Polyline.js +10 -5
  25. package/components/map/components/features/layers/RoadRestrictionLayer.js +27 -0
  26. package/components/map/components/features/layers/TrafficLayer.js +19 -5
  27. package/components/map/components/features/layers/baselayers/DefaultRasterLayer.js +19 -0
  28. package/components/map/components/features/layers/baselayers/DefaultVectorLayer.js +15 -0
  29. package/components/map/components/features/layers/baselayers/FleetStyleLayer.js +13 -17
  30. package/components/map/components/features/layers/baselayers/NightLayer.js +17 -0
  31. package/components/map/components/features/layers/baselayers/SatelliteLayer.js +13 -17
  32. package/components/map/components/features/layers/baselayers/TerrainLayer.js +13 -17
  33. package/components/map/components/features/layers/baselayers/useBaseLayer.js +53 -0
  34. package/components/map/components/features/settings/builtinSettings/MapClusterSettings.js +1 -1
  35. package/components/map/components/features/settings/builtinSettings/MapTypeSettings.js +9 -3
  36. package/components/map/components/mapUtils.js +44 -8
  37. package/components/map/icons/MapIcon.js +64 -0
  38. package/components/mapMarker/ClusterMapMarker.js +2 -2
  39. package/components/mapMarker/SingleMapMarker.js +8 -2
  40. package/components/numberControl/NumberControl.js +34 -11
  41. package/components/numberInput/NumberInput.js +52 -50
  42. package/components/sidebars/Sidebar.js +2 -2
  43. package/hooks/useDarkMode.js +30 -0
  44. package/hooks/useElementSize.js +1 -1
  45. package/hooks/useFullscreen.js +37 -41
  46. package/hooks/useHereMap.ts +23 -0
  47. package/hooks/useMutationObserver.js +38 -0
  48. package/hooks/useScripts.ts +52 -0
  49. package/hooks/useScrollPosition.js +72 -0
  50. package/index.js +6 -1
  51. package/lib/.DS_Store +0 -0
  52. package/lib/es/.DS_Store +0 -0
  53. package/lib/es/ColorScheme.d.ts +4 -0
  54. package/lib/es/ColorScheme.js +18 -0
  55. package/lib/es/Colors.js +1 -1
  56. package/lib/es/TruckLayer.js +2 -2
  57. package/lib/es/components/.DS_Store +0 -0
  58. package/lib/es/components/applicationHeader/AppMenu.js +6 -3
  59. package/lib/es/components/applicationHeader/AppMenuDropdown.js +6 -2
  60. package/lib/es/components/applicationHeader/ApplicationHeader.js +10 -5
  61. package/lib/es/components/applicationHeader/MobileAppMenu.js +8 -4
  62. package/lib/es/components/assetTree/Tree.js +1 -1
  63. package/lib/es/components/autosuggest/AutoSuggest.js +2 -2
  64. package/lib/es/components/charts/chartHelper.js +1 -1
  65. package/lib/es/components/clearableInput/ClearableInput.js +2 -1
  66. package/lib/es/components/datepicker/DatePicker.js +7 -3
  67. package/lib/es/components/filepicker/FilePicker.js +5 -4
  68. package/lib/es/components/map/assets/icon_map_settings_maptype_night_active.svg +12 -0
  69. package/lib/es/components/map/assets/icon_map_settings_maptype_night_inactive.svg +12 -0
  70. package/lib/es/components/map/components/Map.js +165 -135
  71. package/lib/es/components/map/components/constants.js +3 -1
  72. package/lib/es/components/map/components/features/Route.js +6 -7
  73. package/lib/es/components/map/components/features/basics/Polyline.js +10 -7
  74. package/lib/es/components/map/components/features/layers/RoadRestrictionLayer.js +35 -0
  75. package/lib/es/components/map/components/features/layers/TrafficLayer.js +18 -5
  76. package/lib/es/components/map/components/features/layers/baselayers/DefaultRasterLayer.js +25 -0
  77. package/lib/es/components/map/components/features/layers/baselayers/DefaultVectorLayer.js +22 -0
  78. package/lib/es/components/map/components/features/layers/baselayers/FleetStyleLayer.js +12 -17
  79. package/lib/es/components/map/components/features/layers/baselayers/NightLayer.js +23 -0
  80. package/lib/es/components/map/components/features/layers/baselayers/SatelliteLayer.js +12 -17
  81. package/lib/es/components/map/components/features/layers/baselayers/TerrainLayer.js +12 -17
  82. package/lib/es/components/map/components/features/layers/baselayers/useBaseLayer.js +61 -0
  83. package/lib/es/components/map/components/features/settings/builtinSettings/MapClusterSettings.js +1 -1
  84. package/lib/es/components/map/components/features/settings/builtinSettings/MapTypeSettings.js +7 -1
  85. package/lib/es/components/map/components/mapUtils.js +44 -10
  86. package/lib/es/components/map/icons/MapIcon.js +67 -1
  87. package/lib/es/components/mapMarker/ClusterMapMarker.js +2 -2
  88. package/lib/es/components/mapMarker/SingleMapMarker.js +8 -2
  89. package/lib/es/components/numberControl/NumberControl.js +33 -10
  90. package/lib/es/components/numberInput/NumberInput.js +51 -50
  91. package/lib/es/components/sidebars/Sidebar.js +2 -2
  92. package/lib/es/hooks/useDarkMode.js +38 -0
  93. package/lib/es/hooks/useElementSize.js +1 -1
  94. package/lib/es/hooks/useFullscreen.js +37 -41
  95. package/lib/es/hooks/useHereMap.ts +23 -0
  96. package/lib/es/hooks/useMutationObserver.js +46 -0
  97. package/lib/es/hooks/useScripts.ts +52 -0
  98. package/lib/es/hooks/useScrollPosition.js +80 -0
  99. package/lib/es/index.js +40 -1
  100. package/lib/es/mapIndex.js +2 -2
  101. package/lib/es/styles/.DS_Store +0 -0
  102. package/lib/es/styles/components/Activity.less +9 -10
  103. package/lib/es/styles/components/ApplicationHeader.less +24 -29
  104. package/lib/es/styles/components/ApplicationLayout.less +7 -7
  105. package/lib/es/styles/components/AssetTree.less +30 -28
  106. package/lib/es/styles/components/AutoSuggest.less +2 -2
  107. package/lib/es/styles/components/BottomSheet.less +1 -2
  108. package/lib/es/styles/components/Carousel.less +13 -9
  109. package/lib/es/styles/components/Checkbox.less +15 -16
  110. package/lib/es/styles/components/ClearableInput.less +3 -3
  111. package/lib/es/styles/components/Counter.less +12 -12
  112. package/lib/es/styles/components/DataTabs.less +2 -2
  113. package/lib/es/styles/components/DatePicker.less +27 -27
  114. package/lib/es/styles/components/Dialog.less +15 -11
  115. package/lib/es/styles/components/Dropdown.less +11 -11
  116. package/lib/es/styles/components/Expander.less +7 -7
  117. package/lib/es/styles/components/ListMenu.less +8 -8
  118. package/lib/es/styles/components/MapHere.less +3 -2
  119. package/lib/es/styles/components/MapMarker.less +16 -17
  120. package/lib/es/styles/components/MapSettings.less +5 -5
  121. package/lib/es/styles/components/NoData.less +1 -1
  122. package/lib/es/styles/components/Notification.less +12 -12
  123. package/lib/es/styles/components/RadioButton.less +11 -12
  124. package/lib/es/styles/components/Resizer.less +1 -1
  125. package/lib/es/styles/components/Select.less +16 -26
  126. package/lib/es/styles/components/Sidebar.less +29 -21
  127. package/lib/es/styles/components/Slider.less +18 -18
  128. package/lib/es/styles/components/Spinner.less +6 -6
  129. package/lib/es/styles/components/StatsWidget.less +5 -5
  130. package/lib/es/styles/components/SteppedProgressBar.less +32 -29
  131. package/lib/es/styles/components/SupportMarker.less +1 -1
  132. package/lib/es/styles/components/Switch.less +8 -8
  133. package/lib/es/styles/components/TableSettingsDialog.less +7 -7
  134. package/lib/es/styles/components/TableToolbar.less +1 -1
  135. package/lib/es/styles/components/Tag.less +10 -10
  136. package/lib/es/styles/components/Timeline.less +3 -3
  137. package/lib/es/styles/components/Tooltip.less +10 -10
  138. package/lib/es/styles/design/badges.less +10 -10
  139. package/lib/es/styles/design/border.less +1 -1
  140. package/lib/es/styles/design/breadcrumbs.less +2 -2
  141. package/lib/es/styles/design/button-groups.less +25 -1
  142. package/lib/es/styles/design/buttons.less +53 -109
  143. package/lib/es/styles/design/callouts.less +3 -3
  144. package/lib/es/styles/design/code.less +4 -6
  145. package/lib/es/styles/design/colors.less +20 -20
  146. package/lib/es/styles/design/form-input-groups.less +4 -4
  147. package/lib/es/styles/design/form-inputs.less +33 -31
  148. package/lib/es/styles/design/images.less +2 -2
  149. package/lib/es/styles/design/labels.less +11 -11
  150. package/lib/es/styles/design/list-group.less +14 -12
  151. package/lib/es/styles/design/navs.less +27 -27
  152. package/lib/es/styles/design/normalize.less +0 -9
  153. package/lib/es/styles/design/pagination.less +10 -10
  154. package/lib/es/styles/design/panels.less +10 -10
  155. package/lib/es/styles/design/popovers.less +8 -8
  156. package/lib/es/styles/design/progress-bars.less +8 -8
  157. package/lib/es/styles/design/shadows.less +14 -7
  158. package/lib/es/styles/design/tables.less +68 -106
  159. package/lib/es/styles/design/text.less +5 -19
  160. package/lib/es/styles/design/theme.less +10 -10
  161. package/lib/es/styles/design/thumbnails.less +2 -2
  162. package/lib/es/styles/design/type.less +4 -4
  163. package/lib/es/styles/design/wells.less +1 -1
  164. package/lib/es/styles/mapping/color-map.less +76 -75
  165. package/lib/es/styles/mixins/_imports.less +14 -0
  166. package/lib/es/styles/mixins/buttons.less +24 -56
  167. package/lib/es/styles/mixins/forms.less +19 -55
  168. package/lib/es/styles/mixins/hsl.less +19 -0
  169. package/lib/es/styles/mixins/panels.less +2 -2
  170. package/lib/es/styles/print/print.less +7 -7
  171. package/lib/es/styles/rio-uikit-core.less +2 -2
  172. package/lib/es/styles/rio-uikit-print-utilities.less +2 -2
  173. package/lib/es/styles/rio-uikit-responsive-utilities.less +2 -2
  174. package/lib/es/styles/variables/_index.less +196 -0
  175. package/lib/es/styles/variables/colors.json +67 -0
  176. package/lib/es/styles/variables/concated_css_variables.less +66 -0
  177. package/lib/es/styles/variables/dark_colors.less +88 -0
  178. package/lib/es/styles/variables/dark_css_variables.less +28 -0
  179. package/lib/es/styles/variables/dark_css_variables_map.less +96 -0
  180. package/lib/es/styles/variables/light_colors.less +92 -0
  181. package/lib/es/styles/variables/light_css_variables.less +17 -0
  182. package/lib/es/styles/variables/light_css_variables_map.less +100 -0
  183. package/lib/es/styles/variables/screens.less +7 -0
  184. package/lib/es/styles/variables/text.less +23 -0
  185. package/lib/es/themes/.DS_Store +0 -0
  186. package/lib/es/themes/BuyButton/styles/rio-buyButton.less +13 -8
  187. package/lib/es/themes/MAN/styles/man-uikit.less +3 -0
  188. package/lib/es/themes/SCANIA/styles/scania-uikit.less +3 -0
  189. package/lib/es/themes/Volkswagen/styles/vw-uikit.less +21 -30
  190. package/lib/es/themes/Website/styles/rio-website.less +154 -124
  191. package/lib/es/themes/Xmas/styles/rio-xmas.less +59 -29
  192. package/lib/es/types.ts +27 -5
  193. package/lib/es/useDarkMode.d.ts +4 -0
  194. package/lib/es/useDarkMode.js +13 -0
  195. package/lib/es/useMutationObserver.d.ts +4 -0
  196. package/lib/es/useMutationObserver.js +13 -0
  197. package/lib/es/useScrollPosition.d.ts +4 -0
  198. package/lib/es/useScrollPosition.js +13 -0
  199. package/lib/es/utils/colorScheme.js +69 -0
  200. package/lib/es/utils/init.js +34 -34
  201. package/lib/es/version.json +1 -1
  202. package/mapIndex.js +1 -1
  203. package/package.json +34 -33
  204. package/styles/.DS_Store +0 -0
  205. package/styles/components/Activity.less +9 -10
  206. package/styles/components/ApplicationHeader.less +24 -29
  207. package/styles/components/ApplicationLayout.less +7 -7
  208. package/styles/components/AssetTree.less +30 -28
  209. package/styles/components/AutoSuggest.less +2 -2
  210. package/styles/components/BottomSheet.less +1 -2
  211. package/styles/components/Carousel.less +13 -9
  212. package/styles/components/Checkbox.less +15 -16
  213. package/styles/components/ClearableInput.less +3 -3
  214. package/styles/components/Counter.less +12 -12
  215. package/styles/components/DataTabs.less +2 -2
  216. package/styles/components/DatePicker.less +27 -27
  217. package/styles/components/Dialog.less +15 -11
  218. package/styles/components/Dropdown.less +11 -11
  219. package/styles/components/Expander.less +7 -7
  220. package/styles/components/ListMenu.less +8 -8
  221. package/styles/components/MapHere.less +3 -2
  222. package/styles/components/MapMarker.less +16 -17
  223. package/styles/components/MapSettings.less +5 -5
  224. package/styles/components/NoData.less +1 -1
  225. package/styles/components/Notification.less +12 -12
  226. package/styles/components/RadioButton.less +11 -12
  227. package/styles/components/Resizer.less +1 -1
  228. package/styles/components/Select.less +16 -26
  229. package/styles/components/Sidebar.less +29 -21
  230. package/styles/components/Slider.less +18 -18
  231. package/styles/components/Spinner.less +6 -6
  232. package/styles/components/StatsWidget.less +5 -5
  233. package/styles/components/SteppedProgressBar.less +32 -29
  234. package/styles/components/SupportMarker.less +1 -1
  235. package/styles/components/Switch.less +8 -8
  236. package/styles/components/TableSettingsDialog.less +7 -7
  237. package/styles/components/TableToolbar.less +1 -1
  238. package/styles/components/Tag.less +10 -10
  239. package/styles/components/Timeline.less +3 -3
  240. package/styles/components/Tooltip.less +10 -10
  241. package/styles/design/badges.less +10 -10
  242. package/styles/design/border.less +1 -1
  243. package/styles/design/breadcrumbs.less +2 -2
  244. package/styles/design/button-groups.less +25 -1
  245. package/styles/design/buttons.less +53 -109
  246. package/styles/design/callouts.less +3 -3
  247. package/styles/design/code.less +4 -6
  248. package/styles/design/colors.less +20 -20
  249. package/styles/design/form-input-groups.less +4 -4
  250. package/styles/design/form-inputs.less +33 -31
  251. package/styles/design/images.less +2 -2
  252. package/styles/design/labels.less +11 -11
  253. package/styles/design/list-group.less +14 -12
  254. package/styles/design/navs.less +27 -27
  255. package/styles/design/normalize.less +0 -9
  256. package/styles/design/pagination.less +10 -10
  257. package/styles/design/panels.less +10 -10
  258. package/styles/design/popovers.less +8 -8
  259. package/styles/design/progress-bars.less +8 -8
  260. package/styles/design/shadows.less +14 -7
  261. package/styles/design/tables.less +68 -106
  262. package/styles/design/text.less +5 -19
  263. package/styles/design/theme.less +10 -10
  264. package/styles/design/thumbnails.less +2 -2
  265. package/styles/design/type.less +4 -4
  266. package/styles/design/wells.less +1 -1
  267. package/styles/mapping/color-map.less +76 -75
  268. package/styles/mixins/_imports.less +14 -0
  269. package/styles/mixins/buttons.less +24 -56
  270. package/styles/mixins/forms.less +19 -55
  271. package/styles/mixins/hsl.less +19 -0
  272. package/styles/mixins/panels.less +2 -2
  273. package/styles/print/print.less +7 -7
  274. package/styles/rio-uikit-core.less +2 -2
  275. package/styles/rio-uikit-print-utilities.less +2 -2
  276. package/styles/rio-uikit-responsive-utilities.less +2 -2
  277. package/styles/variables/_index.less +196 -0
  278. package/styles/variables/colors.json +67 -0
  279. package/styles/variables/concated_css_variables.less +66 -0
  280. package/styles/variables/dark_colors.less +88 -0
  281. package/styles/variables/dark_css_variables.less +28 -0
  282. package/styles/variables/dark_css_variables_map.less +96 -0
  283. package/styles/variables/light_colors.less +92 -0
  284. package/styles/variables/light_css_variables.less +17 -0
  285. package/styles/variables/light_css_variables_map.less +100 -0
  286. package/styles/variables/screens.less +7 -0
  287. package/styles/variables/text.less +23 -0
  288. package/themes/.DS_Store +0 -0
  289. package/themes/BuyButton/styles/rio-buyButton.less +13 -8
  290. package/themes/MAN/styles/man-uikit.less +3 -0
  291. package/themes/SCANIA/styles/scania-uikit.less +3 -0
  292. package/themes/Volkswagen/.DS_Store +0 -0
  293. package/themes/Volkswagen/styles/vw-uikit.less +21 -30
  294. package/themes/Website/.DS_Store +0 -0
  295. package/themes/Website/styles/rio-website.less +154 -124
  296. package/themes/Xmas/styles/rio-xmas.less +59 -29
  297. package/types.ts +27 -5
  298. package/useDarkMode.d.ts +4 -0
  299. package/useDarkMode.js +2 -0
  300. package/useMutationObserver.d.ts +4 -0
  301. package/useMutationObserver.js +2 -0
  302. package/useScrollPosition.d.ts +4 -0
  303. package/useScrollPosition.js +2 -0
  304. package/utils/colorScheme.js +55 -0
  305. package/utils/init.js +34 -34
  306. package/version.json +1 -1
@@ -1,36 +1,66 @@
1
- /* Backgrounds - Map Marker */
1
+ // Theme
2
+ @hasDarkmode: false;
3
+
4
+ // adding a new xmas map marker
5
+ @color-white: #ffffff;
2
6
  @color-map-marker-xmas: #dd0a2c;
3
7
 
4
- .rio-map-marker {
5
- &.active {
6
- .rio-map-icon {
7
- &:before {
8
- color: @color-map-marker-xmas;
9
- }
10
- }
11
- }
8
+ @colors-map-marker-custom: {
9
+ map-marker-xmas: @color-map-marker-xmas;
12
10
  }
13
11
 
14
- @rioglyph-truck: "\f17b";
15
- .rioglyph-truck:before,
16
- .hover-rioglyph-truck:hover:before {
17
- content: "\f17b";
18
- }
12
+ each(@colors-map-marker-custom, {
13
+ .bg-@{key} {
14
+ color: @color-white !important;
15
+ background-color: @value !important;
16
+ }
17
+ .hover-bg-@{key}:hover {
18
+ background-color: @value !important;
19
+ }
20
+ .fill-@{key} {
21
+ fill: @value !important;
22
+ }
23
+ })
19
24
 
20
- @rioglyph-bus: "\f17b";
21
- .rioglyph-bus:before,
22
- .hover-rioglyph-bus:hover:before {
23
- content: "\f17b";
24
- }
25
+ each(@colors-map-marker-custom, {
26
+ .border-color-@{key} {
27
+ border-color: @value !important;
28
+ }
29
+ })
25
30
 
26
- @rioglyph-van: "\f17b";
27
- .rioglyph-van:before,
28
- .hover-rioglyph-van:hover:before {
29
- content: "\f17b";
30
- }
31
31
 
32
- @rioglyph-user: "\f17c";
33
- .rioglyph-user:before,
34
- .hover-rioglyph-user:hover:before {
35
- content: "\f17c";
36
- }
32
+ // replacing all TRUCK, BUS, VAN and User icons
33
+
34
+ // .rio-map-marker {
35
+ // &.active {
36
+ // .rio-map-icon {
37
+ // &:before {
38
+ // color: @color-map-marker-xmas;
39
+ // }
40
+ // }
41
+ // }
42
+ // }
43
+
44
+ // @rioglyph-truck: "\f17b";
45
+ // .rioglyph-truck:before,
46
+ // .hover-rioglyph-truck:hover:before {
47
+ // content: "\f17b";
48
+ // }
49
+
50
+ // @rioglyph-bus: "\f17b";
51
+ // .rioglyph-bus:before,
52
+ // .hover-rioglyph-bus:hover:before {
53
+ // content: "\f17b";
54
+ // }
55
+
56
+ // @rioglyph-van: "\f17b";
57
+ // .rioglyph-van:before,
58
+ // .hover-rioglyph-van:hover:before {
59
+ // content: "\f17b";
60
+ // }
61
+
62
+ // @rioglyph-user: "\f17c";
63
+ // .rioglyph-user:before,
64
+ // .hover-rioglyph-user:hover:before {
65
+ // content: "\f17c";
66
+ // }
package/types.ts CHANGED
@@ -74,8 +74,7 @@ export interface ApplicationHeaderProps {
74
74
  appMenuItems?: ModulePropTypes[];
75
75
  navItems?: ModulePropTypes[];
76
76
  actionBarItems: React.ReactNode[];
77
- onMount?: Function;
78
- onUnmount?: Function;
77
+ onToggleAppMenu?: (isOpen: boolean) => void;
79
78
  className?: string;
80
79
  }
81
80
 
@@ -674,7 +673,9 @@ export interface FilePickerProps {
674
673
  maxSize?: number; // max file size
675
674
  onPick: (files: FileList | null) => void;
676
675
  className?: string;
677
- accept?: string;
676
+ accept?: {
677
+ [mimeType: string]: string[];
678
+ };
678
679
  children?: ({ isDragActive }: FilePickerRenderProps) => any;
679
680
  }
680
681
 
@@ -1087,6 +1088,9 @@ export interface NumberControlProps {
1087
1088
  className?: string;
1088
1089
  unit?: string | React.ReactNode;
1089
1090
  inputAddon?: string;
1091
+ digitPrecision?: number;
1092
+ placeholder?: string;
1093
+ ref?: React.MutableRefObject<object>;
1090
1094
  }
1091
1095
 
1092
1096
  export interface NumberInputProps {
@@ -1094,13 +1098,14 @@ export interface NumberInputProps {
1094
1098
  max?: number;
1095
1099
  value?: number;
1096
1100
  step?: number;
1097
- type?: string;
1098
1101
  disabled?: boolean;
1099
1102
  onValueChanged?: (value: number) => void;
1100
1103
  bsSize?: 'sm' | 'lg';
1101
1104
  className?: string;
1102
1105
  unit?: string | React.ReactNode;
1103
1106
  inputAddon?: string;
1107
+ placeholder?: string;
1108
+ ref?: React.MutableRefObject<object>;
1104
1109
  }
1105
1110
 
1106
1111
  // O --------------------------------------------------------------------------------------------------
@@ -1520,6 +1525,7 @@ export interface SelectProps {
1520
1525
  export interface SidebarProps {
1521
1526
  backdropClassName?: string;
1522
1527
  bodyClassName?: string;
1528
+ bodyRef?: React.MutableRefObject<object>;
1523
1529
  className?: string;
1524
1530
  closed?: boolean;
1525
1531
  disableClose?: boolean;
@@ -2031,7 +2037,7 @@ export interface TreeItemName {
2031
2037
  export interface TreeItem {
2032
2038
  id: string;
2033
2039
  name: string | TreeItemName;
2034
- info?: string;
2040
+ info?: string | React.ReactNode;
2035
2041
  type: string;
2036
2042
  groupIds?: string[];
2037
2043
  className?: string;
@@ -2192,3 +2198,19 @@ export type UseSessionStorage = (key: string, defaultValue: any) => [any, Functi
2192
2198
  export type UseTimeout = (callback: () => void, delay?: number) => React.MutableRefObject<object>;
2193
2199
 
2194
2200
  export type UseWindowResize = (callback: () => void, timeout?: number) => void;
2201
+
2202
+ export type UseDarkMode = () => boolean;
2203
+
2204
+ export type UseMutationObserver = (
2205
+ targetElement: HTMLElement | React.MutableRefObject<object> | null | undefined,
2206
+ callback: MutationCallback | undefined,
2207
+ options?: {
2208
+ attributes?: boolean;
2209
+ childList?: boolean;
2210
+ subtree?: boolean;
2211
+ }
2212
+ ) => void;
2213
+
2214
+ export type UseScrollPosition = (
2215
+ target: Window | HTMLBodyElement | React.ReactElement | React.MutableRefObject<object> | undefined
2216
+ ) => number;
@@ -0,0 +1,4 @@
1
+ declare module '@rio-cloud/rio-uikit/useDarkMode' {
2
+ import { UseDarkMode } from './types';
3
+ export default UseDarkMode;
4
+ }
package/useDarkMode.js ADDED
@@ -0,0 +1,2 @@
1
+ import { default as _useDarkMode } from './hooks/useDarkMode';
2
+ export { _useDarkMode as default };
@@ -0,0 +1,4 @@
1
+ declare module '@rio-cloud/rio-uikit/useMutationObserver' {
2
+ import { UseMutationObserver } from './types';
3
+ export default UseMutationObserver;
4
+ }
@@ -0,0 +1,2 @@
1
+ import { default as _useMutationObserver } from './hooks/useMutationObserver';
2
+ export { _useMutationObserver as default };
@@ -0,0 +1,4 @@
1
+ declare module '@rio-cloud/rio-uikit/useScrollPosition' {
2
+ import { UseScrollPosition } from './types';
3
+ export default UseScrollPosition;
4
+ }
@@ -0,0 +1,2 @@
1
+ import { default as _useScrollPosition } from './hooks/useScrollPosition';
2
+ export { _useScrollPosition as default };
@@ -0,0 +1,55 @@
1
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
+ var COOKIE_NAME = 'uikit-color-scheme';
3
+ export var THEME_DATA_ATTRIBUTE = 'data-theme';
4
+ var PATH = '/';
5
+ var DOMAIN = '.rio.cloud';
6
+ var EXPIRATION_DATE = 'Thu, 18 Dec 2030 12:00:00 UTC';
7
+ export var THEME_DEFAULT = 'default';
8
+ export var THEME_SYSTEM = 'system';
9
+ export var THEME_LIGHT = 'light';
10
+ export var THEME_DARK = 'dark';
11
+ export var getColorScheme = function getColorScheme() {
12
+ return readColorSchemeFromCookie();
13
+ };
14
+ export var setColorScheme = function setColorScheme(scheme) {
15
+ return writeColorSchemeToCookie(scheme);
16
+ };
17
+ var readColorSchemeFromCookie = function readColorSchemeFromCookie() {
18
+ var decodedCookie = decodeURIComponent(document.cookie);
19
+ console.log(decodedCookie);
20
+ var _decodedCookie$split$ = decodedCookie.split(';').filter(function (entry) {
21
+ return entry.includes(COOKIE_NAME);
22
+ }),
23
+ _decodedCookie$split$2 = _slicedToArray(_decodedCookie$split$, 1),
24
+ uikitCname = _decodedCookie$split$2[0];
25
+ if (!uikitCname) {
26
+ return;
27
+ }
28
+ var _uikitCname$split = uikitCname.split('='),
29
+ _uikitCname$split2 = _slicedToArray(_uikitCname$split, 2),
30
+ colorScheme = _uikitCname$split2[1];
31
+ console.log("readColorSchemeFromCookie: ".concat(colorScheme));
32
+ if (!colorScheme) {
33
+ return;
34
+ }
35
+ var html = document.documentElement;
36
+ if (colorScheme === THEME_DEFAULT || colorScheme === THEME_SYSTEM) {
37
+ html.removeAttribute(THEME_DATA_ATTRIBUTE);
38
+ return colorScheme;
39
+ }
40
+ if (colorScheme === THEME_LIGHT || colorScheme === THEME_DARK) {
41
+ html.setAttribute(THEME_DATA_ATTRIBUTE, colorScheme);
42
+ return colorScheme;
43
+ }
44
+ };
45
+
46
+ // This should be done by a RIO service like User Profile SPA using a theme switcher component from the uikit
47
+ // where this function is referenced
48
+ var writeColorSchemeToCookie = function writeColorSchemeToCookie(scheme) {
49
+ var _window;
50
+ var isDevEnv = (_window = window) === null || _window === void 0 ? void 0 : _window.location.host.startsWith('localhost');
51
+ var newCookieValues = encodeURIComponent(scheme);
52
+ var cookie = "".concat(COOKIE_NAME, "=").concat(newCookieValues, ";domain=").concat(isDevEnv ? 'localhost' : DOMAIN, ";expires=").concat(EXPIRATION_DATE, ";path=").concat(PATH);
53
+ console.log("writeColorSchemeToCookie: ".concat(cookie));
54
+ document.cookie = cookie;
55
+ };
package/utils/init.js CHANGED
@@ -4,6 +4,7 @@ import _regeneratorRuntime from "@babel/runtime/regenerator";
4
4
  import throttle from 'lodash/fp/throttle';
5
5
  import process from 'process';
6
6
  import { inIframe } from './deviceUtils';
7
+ import { getColorScheme } from './colorScheme';
7
8
  import versionJson from '../version.json';
8
9
  var uikitVersion = versionJson.version;
9
10
 
@@ -43,41 +44,39 @@ var checkForReleaseVersion = /*#__PURE__*/function () {
43
44
  var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
44
45
  var remoteVersionsListUrl, response, data;
45
46
  return _regeneratorRuntime.wrap(function _callee$(_context) {
46
- while (1) {
47
- switch (_context.prev = _context.next) {
48
- case 0:
49
- if (isProdEnv()) {
50
- _context.next = 2;
51
- break;
52
- }
53
- return _context.abrupt("return");
54
- case 2:
55
- remoteVersionsListUrl = 'https://uikit.developers.rio.cloud/versionsList.json';
56
- _context.prev = 3;
57
- _context.next = 6;
58
- return fetch(remoteVersionsListUrl, {
59
- method: 'get'
60
- });
61
- case 6:
62
- response = _context.sent;
63
- _context.next = 9;
64
- return response.json();
65
- case 9:
66
- data = _context.sent;
67
- if (data.latest_release !== uikitVersion) {
68
- console.log("\uD83C\uDD95 UIKIT version ".concat(data.latest_release, " is the latest released version! Your are using ").concat(uikitVersion));
69
- }
70
- _context.next = 16;
47
+ while (1) switch (_context.prev = _context.next) {
48
+ case 0:
49
+ if (isProdEnv()) {
50
+ _context.next = 2;
71
51
  break;
72
- case 13:
73
- _context.prev = 13;
74
- _context.t0 = _context["catch"](3);
75
- // console.warn(error);
76
- console.warn("Faild to fetch versionsList from ".concat(remoteVersionsListUrl));
77
- case 16:
78
- case "end":
79
- return _context.stop();
80
- }
52
+ }
53
+ return _context.abrupt("return");
54
+ case 2:
55
+ remoteVersionsListUrl = 'https://uikit.developers.rio.cloud/versionsList.json';
56
+ _context.prev = 3;
57
+ _context.next = 6;
58
+ return fetch(remoteVersionsListUrl, {
59
+ method: 'get'
60
+ });
61
+ case 6:
62
+ response = _context.sent;
63
+ _context.next = 9;
64
+ return response.json();
65
+ case 9:
66
+ data = _context.sent;
67
+ if (data.latest_release !== uikitVersion) {
68
+ console.log("\uD83C\uDD95 UIKIT version ".concat(data.latest_release, " is the latest released version! Your are using ").concat(uikitVersion));
69
+ }
70
+ _context.next = 16;
71
+ break;
72
+ case 13:
73
+ _context.prev = 13;
74
+ _context.t0 = _context["catch"](3);
75
+ // console.warn(error);
76
+ console.warn("Faild to fetch versionsList from ".concat(remoteVersionsListUrl));
77
+ case 16:
78
+ case "end":
79
+ return _context.stop();
81
80
  }
82
81
  }, _callee, null, [[3, 13]]);
83
82
  }));
@@ -122,6 +121,7 @@ export var initDocumentBootstrapping = function initDocumentBootstrapping(docume
122
121
  html.classList.add('window-iframe');
123
122
  }
124
123
  if (!isTestEnv()) {
124
+ getColorScheme();
125
125
  printPoweredByRIO();
126
126
  checkForReleaseVersion();
127
127
  checkMatchingUkitVersions();
package/version.json CHANGED
@@ -1,3 +1,3 @@
1
1
  {
2
- "version": "0.16.1"
2
+ "version": "0.16.2-beta.10"
3
3
  }