@iobroker/adapter-react-v5 7.0.1 → 7.1.0

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 (314) hide show
  1. package/Components/404.d.ts +3 -2
  2. package/Components/404.js +16 -15
  3. package/Components/ColorPicker.d.ts +22 -8
  4. package/Components/ColorPicker.js +34 -17
  5. package/Components/ComplexCron.js +24 -24
  6. package/Components/CopyToClipboard.d.ts +10 -1
  7. package/Components/CopyToClipboard.js +17 -8
  8. package/Components/CustomModal.d.ts +1 -1
  9. package/Components/CustomModal.js +8 -8
  10. package/Components/FileBrowser.d.ts +11 -11
  11. package/Components/FileBrowser.js +173 -164
  12. package/Components/FileViewer.js +34 -23
  13. package/Components/Icon.d.ts +16 -2
  14. package/Components/Icon.js +19 -8
  15. package/Components/IconPicker.js +10 -14
  16. package/Components/IconSelector.d.ts +1 -1
  17. package/Components/IconSelector.js +64 -74
  18. package/Components/Image.d.ts +8 -4
  19. package/Components/Image.js +13 -32
  20. package/Components/Loader.d.ts +2 -2
  21. package/Components/Loader.js +244 -241
  22. package/Components/Loaders/MV.d.ts +6 -1
  23. package/Components/Loaders/MV.js +23 -7
  24. package/Components/Loaders/PT.d.ts +7 -2
  25. package/Components/Loaders/PT.js +123 -110
  26. package/Components/Loaders/Vendor.d.ts +2 -2
  27. package/Components/Loaders/Vendor.js +22 -14
  28. package/Components/Logo.js +16 -18
  29. package/Components/MDUtils.d.ts +1 -1
  30. package/Components/MDUtils.js +8 -4
  31. package/Components/ObjectBrowser.d.ts +49 -38
  32. package/Components/ObjectBrowser.js +757 -494
  33. package/Components/Router.d.ts +1 -3
  34. package/Components/Router.js +3 -1
  35. package/Components/SaveCloseButtons.d.ts +3 -3
  36. package/Components/SaveCloseButtons.js +3 -3
  37. package/Components/Schedule.d.ts +15 -15
  38. package/Components/Schedule.js +177 -154
  39. package/Components/SelectWithIcon.d.ts +2 -2
  40. package/Components/SelectWithIcon.js +45 -34
  41. package/Components/SimpleCron/index.js +83 -43
  42. package/Components/TabContainer.js +2 -2
  43. package/Components/TabContent.js +1 -1
  44. package/Components/TabHeader.js +1 -1
  45. package/Components/TableResize.d.ts +2 -2
  46. package/Components/TableResize.js +5 -5
  47. package/Components/TextWithIcon.d.ts +1 -1
  48. package/Components/TextWithIcon.js +10 -8
  49. package/Components/ToggleThemeMenu.d.ts +2 -2
  50. package/Components/ToggleThemeMenu.js +3 -3
  51. package/Components/TreeTable.d.ts +18 -18
  52. package/Components/TreeTable.js +76 -72
  53. package/Components/UploadImage.d.ts +2 -2
  54. package/Components/UploadImage.js +330 -326
  55. package/Components/Utils.d.ts +42 -22
  56. package/Components/Utils.js +66 -65
  57. package/Components/withWidth.d.ts +2 -2
  58. package/Components/withWidth.js +10 -6
  59. package/Dialogs/ComplexCron.d.ts +2 -2
  60. package/Dialogs/ComplexCron.js +3 -3
  61. package/Dialogs/Confirm.d.ts +4 -4
  62. package/Dialogs/Confirm.js +18 -8
  63. package/Dialogs/Cron.d.ts +3 -3
  64. package/Dialogs/Cron.js +21 -17
  65. package/Dialogs/Error.d.ts +3 -3
  66. package/Dialogs/Error.js +6 -4
  67. package/Dialogs/Message.d.ts +3 -3
  68. package/Dialogs/Message.js +6 -4
  69. package/Dialogs/SelectFile.d.ts +4 -4
  70. package/Dialogs/SelectFile.js +6 -4
  71. package/Dialogs/SelectID.d.ts +12 -10
  72. package/Dialogs/SelectID.js +12 -8
  73. package/Dialogs/SimpleCron.d.ts +2 -2
  74. package/Dialogs/SimpleCron.js +2 -2
  75. package/Dialogs/TextInput.d.ts +2 -2
  76. package/Dialogs/TextInput.js +3 -3
  77. package/GenericApp.d.ts +19 -13
  78. package/GenericApp.js +177 -134
  79. package/LICENSE +22 -22
  80. package/LegacyConnection.d.ts +240 -248
  81. package/LegacyConnection.js +500 -525
  82. package/Prompt.js +7 -7
  83. package/README.md +1239 -1166
  84. package/Theme.d.ts +1 -1
  85. package/Theme.js +9 -12
  86. package/assets/devices.json +1 -0
  87. package/assets/lamp_ceiling.svg +8 -8
  88. package/assets/lamp_table.svg +7 -7
  89. package/assets/no_icon.svg +9 -9
  90. package/assets/rooms.json +1 -0
  91. package/craco-module-federation.js +62 -71
  92. package/i18n/de.json +434 -431
  93. package/i18n/en.json +434 -431
  94. package/i18n/es.json +434 -431
  95. package/i18n/fr.json +434 -431
  96. package/i18n/it.json +434 -431
  97. package/i18n/nl.json +434 -431
  98. package/i18n/pl.json +434 -431
  99. package/i18n/pt.json +434 -431
  100. package/i18n/ru.json +434 -431
  101. package/i18n/uk.json +434 -431
  102. package/i18n/zh-cn.json +434 -431
  103. package/i18n.d.ts +26 -19
  104. package/i18n.js +28 -22
  105. package/icons/IconAdapter.js +2 -2
  106. package/icons/IconAlias.js +2 -2
  107. package/icons/IconChannel.js +2 -2
  108. package/icons/IconClearFilter.js +2 -2
  109. package/icons/IconClosed.js +2 -2
  110. package/icons/IconCopy.js +2 -2
  111. package/icons/IconDevice.js +2 -2
  112. package/icons/IconDocument.js +2 -2
  113. package/icons/IconDocumentReadOnly.js +2 -2
  114. package/icons/IconExpert.js +2 -2
  115. package/icons/IconFx.js +2 -2
  116. package/icons/IconInstance.js +2 -2
  117. package/icons/IconLogout.js +2 -2
  118. package/icons/IconNoIcon.js +2 -2
  119. package/icons/IconOpen.d.ts +2 -2
  120. package/icons/IconOpen.js +2 -2
  121. package/icons/IconProps.d.ts +4 -3
  122. package/icons/IconState.d.ts +2 -2
  123. package/icons/IconState.js +2 -2
  124. package/index.css +56 -55
  125. package/modulefederation.admin.config.js +31 -31
  126. package/package.json +5 -5
  127. package/src/AdminConnection.tsx +3 -3
  128. package/src/Components/404.tsx +122 -121
  129. package/src/Components/ColorPicker.tsx +343 -315
  130. package/src/Components/ComplexCron.tsx +544 -507
  131. package/src/Components/CopyToClipboard.tsx +178 -165
  132. package/src/Components/CustomModal.tsx +170 -163
  133. package/src/Components/FileBrowser.tsx +2550 -2414
  134. package/src/Components/FileViewer.tsx +412 -393
  135. package/src/Components/Icon.tsx +238 -210
  136. package/src/Components/IconPicker.tsx +165 -149
  137. package/src/Components/IconSelector.tsx +2220 -2202
  138. package/src/Components/Image.tsx +193 -176
  139. package/src/Components/Loader.tsx +328 -304
  140. package/src/Components/Logo.tsx +176 -166
  141. package/src/Components/MDUtils.tsx +104 -100
  142. package/src/Components/ObjectBrowser.tsx +8935 -8032
  143. package/src/Components/Router.tsx +90 -90
  144. package/src/Components/SaveCloseButtons.tsx +117 -113
  145. package/src/Components/Schedule.tsx +1962 -1724
  146. package/src/Components/SelectWithIcon.tsx +239 -197
  147. package/src/Components/TabContainer.tsx +57 -55
  148. package/src/Components/TabContent.tsx +38 -37
  149. package/src/Components/TabHeader.tsx +20 -19
  150. package/src/Components/TableResize.tsx +274 -259
  151. package/src/Components/TextWithIcon.tsx +159 -148
  152. package/src/Components/ToggleThemeMenu.tsx +52 -34
  153. package/src/Components/TreeTable.tsx +1002 -919
  154. package/src/Components/UploadImage.tsx +631 -599
  155. package/src/Components/Utils.tsx +1802 -1794
  156. package/src/Components/loader.css +231 -222
  157. package/src/Components/withWidth.tsx +32 -21
  158. package/src/Connection.tsx +5 -7
  159. package/src/Dialogs/ComplexCron.tsx +123 -129
  160. package/src/Dialogs/Confirm.tsx +185 -162
  161. package/src/Dialogs/Cron.tsx +192 -182
  162. package/src/Dialogs/Error.tsx +67 -72
  163. package/src/Dialogs/Message.tsx +73 -71
  164. package/src/Dialogs/SelectFile.tsx +280 -270
  165. package/src/Dialogs/SelectID.tsx +310 -298
  166. package/src/Dialogs/SimpleCron.tsx +100 -100
  167. package/src/Dialogs/TextInput.tsx +99 -107
  168. package/src/GenericApp.tsx +1076 -976
  169. package/src/LegacyConnection.tsx +3719 -3589
  170. package/src/Prompt.tsx +22 -20
  171. package/src/Theme.tsx +472 -479
  172. package/src/icons/IconAdapter.tsx +22 -20
  173. package/src/icons/IconAlias.tsx +22 -20
  174. package/src/icons/IconChannel.tsx +60 -21
  175. package/src/icons/IconClearFilter.tsx +24 -22
  176. package/src/icons/IconClosed.tsx +22 -17
  177. package/src/icons/IconCopy.tsx +21 -16
  178. package/src/icons/IconDevice.tsx +126 -27
  179. package/src/icons/IconDocument.tsx +22 -17
  180. package/src/icons/IconDocumentReadOnly.tsx +27 -18
  181. package/src/icons/IconExpert.tsx +26 -18
  182. package/src/icons/IconFx.tsx +38 -36
  183. package/src/icons/IconInstance.tsx +22 -20
  184. package/src/icons/IconLogout.tsx +32 -30
  185. package/src/icons/IconNoIcon.tsx +21 -19
  186. package/src/icons/IconOpen.tsx +22 -17
  187. package/src/icons/IconProps.tsx +16 -15
  188. package/src/icons/IconState.tsx +38 -17
  189. package/src/index.css +56 -55
  190. package/tasks.js +91 -0
  191. package/types.d.ts +141 -134
  192. package/Components/Loaders/PT.css +0 -109
  193. package/Components/Loaders/Vendor.css +0 -13
  194. package/Components/loader.css +0 -222
  195. package/Components/types.d.ts +0 -82
  196. package/assets/devices/Alarm Systems.svg +0 -19
  197. package/assets/devices/Amplifier.svg +0 -22
  198. package/assets/devices/Awnings.svg +0 -5
  199. package/assets/devices/Battery Status.svg +0 -5
  200. package/assets/devices/Ceiling Spotlights.svg +0 -16
  201. package/assets/devices/Chandelier.svg +0 -7
  202. package/assets/devices/Climate.svg +0 -12
  203. package/assets/devices/Coffee Makers.svg +0 -6
  204. package/assets/devices/Cold Water.svg +0 -31
  205. package/assets/devices/Computer.svg +0 -21
  206. package/assets/devices/Consumption.svg +0 -8
  207. package/assets/devices/Curtains.svg +0 -43
  208. package/assets/devices/Dishwashers.svg +0 -12
  209. package/assets/devices/Doors.svg +0 -6
  210. package/assets/devices/Doorstep.svg +0 -35
  211. package/assets/devices/Dryer.svg +0 -14
  212. package/assets/devices/Fan.svg +0 -20
  213. package/assets/devices/Floor Lamps.svg +0 -5
  214. package/assets/devices/Garage Doors.svg +0 -9
  215. package/assets/devices/Gates.svg +0 -32
  216. package/assets/devices/Hairdryer.svg +0 -23
  217. package/assets/devices/Handle.svg +0 -6
  218. package/assets/devices/Hanging Lamps.svg +0 -9
  219. package/assets/devices/Heater.svg +0 -44
  220. package/assets/devices/Hoods.svg +0 -12
  221. package/assets/devices/Hot Water.svg +0 -10
  222. package/assets/devices/Humidity.svg +0 -41
  223. package/assets/devices/Iron.svg +0 -5
  224. package/assets/devices/Irrigation.svg +0 -23
  225. package/assets/devices/Led Strip.svg +0 -31
  226. package/assets/devices/Light.svg +0 -30
  227. package/assets/devices/Lightings.svg +0 -46
  228. package/assets/devices/Lock.svg +0 -19
  229. package/assets/devices/Louvre.svg +0 -7
  230. package/assets/devices/Mowing Machine.svg +0 -9
  231. package/assets/devices/Music.svg +0 -13
  232. package/assets/devices/Outdoor Blinds.svg +0 -7
  233. package/assets/devices/People.svg +0 -19
  234. package/assets/devices/Pool.svg +0 -8
  235. package/assets/devices/Power Consumption.svg +0 -13
  236. package/assets/devices/Printer.svg +0 -10
  237. package/assets/devices/Pump.svg +0 -10
  238. package/assets/devices/Receiver.svg +0 -19
  239. package/assets/devices/Sconces.svg +0 -10
  240. package/assets/devices/Security.svg +0 -34
  241. package/assets/devices/Shading.svg +0 -5
  242. package/assets/devices/Shutters.svg +0 -11
  243. package/assets/devices/SmokeDetector.svg +0 -13
  244. package/assets/devices/Sockets.svg +0 -13
  245. package/assets/devices/Speaker.svg +0 -35
  246. package/assets/devices/Stove.svg +0 -12
  247. package/assets/devices/Table Lamps.svg +0 -12
  248. package/assets/devices/Temperature Sensors.svg +0 -28
  249. package/assets/devices/Tv.svg +0 -8
  250. package/assets/devices/Vacuum Cleaner.svg +0 -16
  251. package/assets/devices/Ventilation.svg +0 -12
  252. package/assets/devices/Washing Machines.svg +0 -16
  253. package/assets/devices/Water Consumption.svg +0 -6
  254. package/assets/devices/Water Heater.svg +0 -8
  255. package/assets/devices/Water.svg +0 -40
  256. package/assets/devices/Weather.svg +0 -28
  257. package/assets/devices/Window.svg +0 -8
  258. package/assets/rooms/Anteroom.svg +0 -53
  259. package/assets/rooms/Attic.svg +0 -21
  260. package/assets/rooms/Balcony.svg +0 -13
  261. package/assets/rooms/Barn.svg +0 -6
  262. package/assets/rooms/Basement.svg +0 -5
  263. package/assets/rooms/Bathroom.svg +0 -38
  264. package/assets/rooms/Bedroom.svg +0 -5
  265. package/assets/rooms/Boiler Room.svg +0 -13
  266. package/assets/rooms/Carport.svg +0 -17
  267. package/assets/rooms/Cellar.svg +0 -89
  268. package/assets/rooms/Chamber.svg +0 -9
  269. package/assets/rooms/Corridor.svg +0 -53
  270. package/assets/rooms/Dining Area.svg +0 -37
  271. package/assets/rooms/Dining Room.svg +0 -37
  272. package/assets/rooms/Dining.svg +0 -37
  273. package/assets/rooms/Dressing Room.svg +0 -5
  274. package/assets/rooms/Driveway.svg +0 -15
  275. package/assets/rooms/Entrance.svg +0 -44
  276. package/assets/rooms/Equipment Room.svg +0 -15
  277. package/assets/rooms/Front Yard.svg +0 -64
  278. package/assets/rooms/Gallery.svg +0 -14
  279. package/assets/rooms/Garage.svg +0 -20
  280. package/assets/rooms/Garden.svg +0 -13
  281. package/assets/rooms/Ground Floor.svg +0 -95
  282. package/assets/rooms/Guest Bathroom.svg +0 -33
  283. package/assets/rooms/Guest Room.svg +0 -5
  284. package/assets/rooms/Gym.svg +0 -5
  285. package/assets/rooms/Hall.svg +0 -19
  286. package/assets/rooms/Home Theater.svg +0 -8
  287. package/assets/rooms/Kitchen.svg +0 -18
  288. package/assets/rooms/Laundry Room.svg +0 -12
  289. package/assets/rooms/Living Area.svg +0 -11
  290. package/assets/rooms/Living Room.svg +0 -10
  291. package/assets/rooms/Locker Room.svg +0 -17
  292. package/assets/rooms/Nursery.svg +0 -5
  293. package/assets/rooms/Office.svg +0 -8
  294. package/assets/rooms/Outdoors.svg +0 -7
  295. package/assets/rooms/Playroom.svg +0 -6
  296. package/assets/rooms/Pool.svg +0 -8
  297. package/assets/rooms/Rear Wall.svg +0 -30
  298. package/assets/rooms/Second Floor.svg +0 -95
  299. package/assets/rooms/Shed.svg +0 -16
  300. package/assets/rooms/Sleeping Area.svg +0 -22
  301. package/assets/rooms/Stairway.svg +0 -5
  302. package/assets/rooms/Stairwell.svg +0 -15
  303. package/assets/rooms/Storeroom.svg +0 -5
  304. package/assets/rooms/Summer House.svg +0 -27
  305. package/assets/rooms/Swimming Pool.svg +0 -21
  306. package/assets/rooms/Terrace.svg +0 -7
  307. package/assets/rooms/Toilet.svg +0 -10
  308. package/assets/rooms/Upstairs.svg +0 -6
  309. package/assets/rooms/Wardrobe.svg +0 -60
  310. package/assets/rooms/Washroom.svg +0 -20
  311. package/assets/rooms/Wc.svg +0 -10
  312. package/assets/rooms/Windscreen.svg +0 -60
  313. package/assets/rooms/Workshop.svg +0 -23
  314. package/assets/rooms/Workspace.svg +0 -8
@@ -35,311 +35,311 @@ const fa_1 = require("react-icons/fa");
35
35
  const i18n_1 = __importDefault(require("../i18n"));
36
36
  const Icon_1 = __importDefault(require("./Icon"));
37
37
  // import 'cropperjs/dist/cropper.css';
38
- const cropperStyles = `
39
- /*!
40
- * Cropper.js v1.5.12
41
- * https://fengyuanchen.github.io/cropperjs
42
- *
43
- * Copyright 2015-present Chen Fengyuan
44
- * Released under the MIT license
45
- *
46
- * Date: 2021-06-12T08:00:11.623Z
47
- */
48
-
49
- .cropper-container {
50
- direction: ltr;
51
- font-size: 0;
52
- line-height: 0;
53
- position: relative;
54
- -ms-touch-action: none;
55
- touch-action: none;
56
- -webkit-user-select: none;
57
- -moz-user-select: none;
58
- -ms-user-select: none;
59
- user-select: none;
60
- }
61
-
62
- .cropper-container img {
63
- display: block;
64
- height: 100%;
65
- image-orientation: 0deg;
66
- max-height: none !important;
67
- max-width: none !important;
68
- min-height: 0 !important;
69
- min-width: 0 !important;
70
- width: 100%;
71
- }
72
-
73
- .cropper-wrap-box,
74
- .cropper-canvas,
75
- .cropper-drag-box,
76
- .cropper-crop-box,
77
- .cropper-modal {
78
- bottom: 0;
79
- left: 0;
80
- position: absolute;
81
- right: 0;
82
- top: 0;
83
- }
84
-
85
- .cropper-wrap-box,
86
- .cropper-canvas {
87
- overflow: hidden;
88
- }
89
-
90
- .cropper-drag-box {
91
- background-color: #fff;
92
- opacity: 0;
93
- }
94
-
95
- .cropper-modal {
96
- background-color: #000;
97
- opacity: 0.5;
98
- }
99
-
100
- .cropper-view-box {
101
- display: block;
102
- height: 100%;
103
- outline: 1px solid #39f;
104
- outline-color: rgba(51, 153, 255, 0.75);
105
- overflow: hidden;
106
- width: 100%;
107
- }
108
-
109
- .cropper-dashed {
110
- border: 0 dashed #eee;
111
- display: block;
112
- opacity: 0.5;
113
- position: absolute;
114
- }
115
-
116
- .cropper-dashed.dashed-h {
117
- border-bottom-width: 1px;
118
- border-top-width: 1px;
119
- height: calc(100% / 3);
120
- left: 0;
121
- top: calc(100% / 3);
122
- width: 100%;
123
- }
124
-
125
- .cropper-dashed.dashed-v {
126
- border-left-width: 1px;
127
- border-right-width: 1px;
128
- height: 100%;
129
- left: calc(100% / 3);
130
- top: 0;
131
- width: calc(100% / 3);
132
- }
133
-
134
- .cropper-center {
135
- display: block;
136
- height: 0;
137
- left: 50%;
138
- opacity: 0.75;
139
- position: absolute;
140
- top: 50%;
141
- width: 0;
142
- }
143
-
144
- .cropper-center::before,
145
- .cropper-center::after {
146
- background-color: #eee;
147
- content: ' ';
148
- display: block;
149
- position: absolute;
150
- }
151
-
152
- .cropper-center::before {
153
- height: 1px;
154
- left: -3px;
155
- top: 0;
156
- width: 7px;
157
- }
158
-
159
- .cropper-center::after {
160
- height: 7px;
161
- left: 0;
162
- top: -3px;
163
- width: 1px;
164
- }
165
-
166
- .cropper-face,
167
- .cropper-line,
168
- .cropper-point {
169
- display: block;
170
- height: 100%;
171
- opacity: 0.1;
172
- position: absolute;
173
- width: 100%;
174
- }
175
-
176
- .cropper-face {
177
- background-color: #fff;
178
- left: 0;
179
- top: 0;
180
- }
181
-
182
- .cropper-line {
183
- background-color: #39f;
184
- }
185
-
186
- .cropper-line.line-e {
187
- cursor: ew-resize;
188
- right: -3px;
189
- top: 0;
190
- width: 5px;
191
- }
192
-
193
- .cropper-line.line-n {
194
- cursor: ns-resize;
195
- height: 5px;
196
- left: 0;
197
- top: -3px;
198
- }
199
-
200
- .cropper-line.line-w {
201
- cursor: ew-resize;
202
- left: -3px;
203
- top: 0;
204
- width: 5px;
205
- }
206
-
207
- .cropper-line.line-s {
208
- bottom: -3px;
209
- cursor: ns-resize;
210
- height: 5px;
211
- left: 0;
212
- }
213
-
214
- .cropper-point {
215
- background-color: #39f;
216
- height: 5px;
217
- opacity: 0.75;
218
- width: 5px;
219
- }
220
-
221
- .cropper-point.point-e {
222
- cursor: ew-resize;
223
- margin-top: -3px;
224
- right: -3px;
225
- top: 50%;
226
- }
227
-
228
- .cropper-point.point-n {
229
- cursor: ns-resize;
230
- left: 50%;
231
- margin-left: -3px;
232
- top: -3px;
233
- }
234
-
235
- .cropper-point.point-w {
236
- cursor: ew-resize;
237
- left: -3px;
238
- margin-top: -3px;
239
- top: 50%;
240
- }
241
-
242
- .cropper-point.point-s {
243
- bottom: -3px;
244
- cursor: s-resize;
245
- left: 50%;
246
- margin-left: -3px;
247
- }
248
-
249
- .cropper-point.point-ne {
250
- cursor: nesw-resize;
251
- right: -3px;
252
- top: -3px;
253
- }
254
-
255
- .cropper-point.point-nw {
256
- cursor: nwse-resize;
257
- left: -3px;
258
- top: -3px;
259
- }
260
-
261
- .cropper-point.point-sw {
262
- bottom: -3px;
263
- cursor: nesw-resize;
264
- left: -3px;
265
- }
266
-
267
- .cropper-point.point-se {
268
- bottom: -3px;
269
- cursor: nwse-resize;
270
- height: 20px;
271
- opacity: 1;
272
- right: -3px;
273
- width: 20px;
274
- }
275
-
276
- @media (min-width: 768px) {
277
- .cropper-point.point-se {
278
- height: 15px;
279
- width: 15px;
280
- }
281
- }
282
-
283
- @media (min-width: 992px) {
284
- .cropper-point.point-se {
285
- height: 10px;
286
- width: 10px;
287
- }
288
- }
289
-
290
- @media (min-width: 1200px) {
291
- .cropper-point.point-se {
292
- height: 5px;
293
- opacity: 0.75;
294
- width: 5px;
295
- }
296
- }
297
-
298
- .cropper-point.point-se::before {
299
- background-color: #39f;
300
- bottom: -50%;
301
- content: ' ';
302
- display: block;
303
- height: 200%;
304
- opacity: 0;
305
- position: absolute;
306
- right: -50%;
307
- width: 200%;
308
- }
309
-
310
- .cropper-invisible {
311
- opacity: 0;
312
- }
313
-
314
- .cropper-bg {
315
- background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAAAA3NCSVQICAjb4U/gAAAABlBMVEXMzMz////TjRV2AAAACXBIWXMAAArrAAAK6wGCiw1aAAAAHHRFWHRTb2Z0d2FyZQBBZG9iZSBGaXJld29ya3MgQ1M26LyyjAAAABFJREFUCJlj+M/AgBVhF/0PAH6/D/HkDxOGAAAAAElFTkSuQmCC');
316
- }
317
-
318
- .cropper-hide {
319
- display: block;
320
- height: 0;
321
- position: absolute;
322
- width: 0;
323
- }
324
-
325
- .cropper-hidden {
326
- display: none !important;
327
- }
328
-
329
- .cropper-move {
330
- cursor: move;
331
- }
332
-
333
- .cropper-crop {
334
- cursor: crosshair;
335
- }
336
-
337
- .cropper-disabled .cropper-drag-box,
338
- .cropper-disabled .cropper-face,
339
- .cropper-disabled .cropper-line,
340
- .cropper-disabled .cropper-point {
341
- cursor: not-allowed;
342
- }
38
+ const cropperStyles = `
39
+ /*!
40
+ * Cropper.js v1.5.12
41
+ * https://fengyuanchen.github.io/cropperjs
42
+ *
43
+ * Copyright 2015-present Chen Fengyuan
44
+ * Released under the MIT license
45
+ *
46
+ * Date: 2021-06-12T08:00:11.623Z
47
+ */
48
+
49
+ .cropper-container {
50
+ direction: ltr;
51
+ font-size: 0;
52
+ line-height: 0;
53
+ position: relative;
54
+ -ms-touch-action: none;
55
+ touch-action: none;
56
+ -webkit-user-select: none;
57
+ -moz-user-select: none;
58
+ -ms-user-select: none;
59
+ user-select: none;
60
+ }
61
+
62
+ .cropper-container img {
63
+ display: block;
64
+ height: 100%;
65
+ image-orientation: 0deg;
66
+ max-height: none !important;
67
+ max-width: none !important;
68
+ min-height: 0 !important;
69
+ min-width: 0 !important;
70
+ width: 100%;
71
+ }
72
+
73
+ .cropper-wrap-box,
74
+ .cropper-canvas,
75
+ .cropper-drag-box,
76
+ .cropper-crop-box,
77
+ .cropper-modal {
78
+ bottom: 0;
79
+ left: 0;
80
+ position: absolute;
81
+ right: 0;
82
+ top: 0;
83
+ }
84
+
85
+ .cropper-wrap-box,
86
+ .cropper-canvas {
87
+ overflow: hidden;
88
+ }
89
+
90
+ .cropper-drag-box {
91
+ background-color: #fff;
92
+ opacity: 0;
93
+ }
94
+
95
+ .cropper-modal {
96
+ background-color: #000;
97
+ opacity: 0.5;
98
+ }
99
+
100
+ .cropper-view-box {
101
+ display: block;
102
+ height: 100%;
103
+ outline: 1px solid #39f;
104
+ outline-color: rgba(51, 153, 255, 0.75);
105
+ overflow: hidden;
106
+ width: 100%;
107
+ }
108
+
109
+ .cropper-dashed {
110
+ border: 0 dashed #eee;
111
+ display: block;
112
+ opacity: 0.5;
113
+ position: absolute;
114
+ }
115
+
116
+ .cropper-dashed.dashed-h {
117
+ border-bottom-width: 1px;
118
+ border-top-width: 1px;
119
+ height: calc(100% / 3);
120
+ left: 0;
121
+ top: calc(100% / 3);
122
+ width: 100%;
123
+ }
124
+
125
+ .cropper-dashed.dashed-v {
126
+ border-left-width: 1px;
127
+ border-right-width: 1px;
128
+ height: 100%;
129
+ left: calc(100% / 3);
130
+ top: 0;
131
+ width: calc(100% / 3);
132
+ }
133
+
134
+ .cropper-center {
135
+ display: block;
136
+ height: 0;
137
+ left: 50%;
138
+ opacity: 0.75;
139
+ position: absolute;
140
+ top: 50%;
141
+ width: 0;
142
+ }
143
+
144
+ .cropper-center::before,
145
+ .cropper-center::after {
146
+ background-color: #eee;
147
+ content: ' ';
148
+ display: block;
149
+ position: absolute;
150
+ }
151
+
152
+ .cropper-center::before {
153
+ height: 1px;
154
+ left: -3px;
155
+ top: 0;
156
+ width: 7px;
157
+ }
158
+
159
+ .cropper-center::after {
160
+ height: 7px;
161
+ left: 0;
162
+ top: -3px;
163
+ width: 1px;
164
+ }
165
+
166
+ .cropper-face,
167
+ .cropper-line,
168
+ .cropper-point {
169
+ display: block;
170
+ height: 100%;
171
+ opacity: 0.1;
172
+ position: absolute;
173
+ width: 100%;
174
+ }
175
+
176
+ .cropper-face {
177
+ background-color: #fff;
178
+ left: 0;
179
+ top: 0;
180
+ }
181
+
182
+ .cropper-line {
183
+ background-color: #39f;
184
+ }
185
+
186
+ .cropper-line.line-e {
187
+ cursor: ew-resize;
188
+ right: -3px;
189
+ top: 0;
190
+ width: 5px;
191
+ }
192
+
193
+ .cropper-line.line-n {
194
+ cursor: ns-resize;
195
+ height: 5px;
196
+ left: 0;
197
+ top: -3px;
198
+ }
199
+
200
+ .cropper-line.line-w {
201
+ cursor: ew-resize;
202
+ left: -3px;
203
+ top: 0;
204
+ width: 5px;
205
+ }
206
+
207
+ .cropper-line.line-s {
208
+ bottom: -3px;
209
+ cursor: ns-resize;
210
+ height: 5px;
211
+ left: 0;
212
+ }
213
+
214
+ .cropper-point {
215
+ background-color: #39f;
216
+ height: 5px;
217
+ opacity: 0.75;
218
+ width: 5px;
219
+ }
220
+
221
+ .cropper-point.point-e {
222
+ cursor: ew-resize;
223
+ margin-top: -3px;
224
+ right: -3px;
225
+ top: 50%;
226
+ }
227
+
228
+ .cropper-point.point-n {
229
+ cursor: ns-resize;
230
+ left: 50%;
231
+ margin-left: -3px;
232
+ top: -3px;
233
+ }
234
+
235
+ .cropper-point.point-w {
236
+ cursor: ew-resize;
237
+ left: -3px;
238
+ margin-top: -3px;
239
+ top: 50%;
240
+ }
241
+
242
+ .cropper-point.point-s {
243
+ bottom: -3px;
244
+ cursor: s-resize;
245
+ left: 50%;
246
+ margin-left: -3px;
247
+ }
248
+
249
+ .cropper-point.point-ne {
250
+ cursor: nesw-resize;
251
+ right: -3px;
252
+ top: -3px;
253
+ }
254
+
255
+ .cropper-point.point-nw {
256
+ cursor: nwse-resize;
257
+ left: -3px;
258
+ top: -3px;
259
+ }
260
+
261
+ .cropper-point.point-sw {
262
+ bottom: -3px;
263
+ cursor: nesw-resize;
264
+ left: -3px;
265
+ }
266
+
267
+ .cropper-point.point-se {
268
+ bottom: -3px;
269
+ cursor: nwse-resize;
270
+ height: 20px;
271
+ opacity: 1;
272
+ right: -3px;
273
+ width: 20px;
274
+ }
275
+
276
+ @media (min-width: 768px) {
277
+ .cropper-point.point-se {
278
+ height: 15px;
279
+ width: 15px;
280
+ }
281
+ }
282
+
283
+ @media (min-width: 992px) {
284
+ .cropper-point.point-se {
285
+ height: 10px;
286
+ width: 10px;
287
+ }
288
+ }
289
+
290
+ @media (min-width: 1200px) {
291
+ .cropper-point.point-se {
292
+ height: 5px;
293
+ opacity: 0.75;
294
+ width: 5px;
295
+ }
296
+ }
297
+
298
+ .cropper-point.point-se::before {
299
+ background-color: #39f;
300
+ bottom: -50%;
301
+ content: ' ';
302
+ display: block;
303
+ height: 200%;
304
+ opacity: 0;
305
+ position: absolute;
306
+ right: -50%;
307
+ width: 200%;
308
+ }
309
+
310
+ .cropper-invisible {
311
+ opacity: 0;
312
+ }
313
+
314
+ .cropper-bg {
315
+ background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAAAA3NCSVQICAjb4U/gAAAABlBMVEXMzMz////TjRV2AAAACXBIWXMAAArrAAAK6wGCiw1aAAAAHHRFWHRTb2Z0d2FyZQBBZG9iZSBGaXJld29ya3MgQ1M26LyyjAAAABFJREFUCJlj+M/AgBVhF/0PAH6/D/HkDxOGAAAAAElFTkSuQmCC');
316
+ }
317
+
318
+ .cropper-hide {
319
+ display: block;
320
+ height: 0;
321
+ position: absolute;
322
+ width: 0;
323
+ }
324
+
325
+ .cropper-hidden {
326
+ display: none !important;
327
+ }
328
+
329
+ .cropper-move {
330
+ cursor: move;
331
+ }
332
+
333
+ .cropper-crop {
334
+ cursor: crosshair;
335
+ }
336
+
337
+ .cropper-disabled .cropper-drag-box,
338
+ .cropper-disabled .cropper-face,
339
+ .cropper-disabled .cropper-line,
340
+ .cropper-disabled .cropper-point {
341
+ cursor: not-allowed;
342
+ }
343
343
  `;
344
344
  const styles = {
345
345
  dropZone: {
@@ -457,8 +457,7 @@ class UploadImage extends react_1.Component {
457
457
  window.alert(i18n_1.default.t('ra_File is too big. Max %sk allowed. Try use SVG.', Math.round(maxSize / 1024)));
458
458
  }
459
459
  else {
460
- const base64 = `data:${ext};base64,${btoa(new Uint8Array(reader.result)
461
- .reduce((data, byte) => data + String.fromCharCode(byte), ''))}`;
460
+ const base64 = `data:${ext};base64,${btoa(new Uint8Array(reader.result).reduce((data, byte) => data + String.fromCharCode(byte), ''))}`;
462
461
  if (onChange) {
463
462
  onChange(base64);
464
463
  }
@@ -470,34 +469,39 @@ class UploadImage extends react_1.Component {
470
469
  reader.readAsArrayBuffer(file);
471
470
  }
472
471
  render() {
473
- const { disabled, icon, removeIconFunc, error, crop, onChange, } = this.props;
472
+ const { disabled, icon, removeIconFunc, error, crop, onChange } = this.props;
474
473
  const maxSize = this.props.maxSize || 10 * 1024;
475
474
  const accept = this.props.accept || { 'image/*': [] };
476
475
  const { uploadFile, anchorEl, cropHandler } = this.state;
477
- return react_1.default.createElement(react_dropzone_1.default, { disabled: !!disabled || cropHandler, key: "dropzone", multiple: false, accept: accept, maxSize: maxSize, onDragEnter: () => this.setState({ uploadFile: 'dragging' }), onDragLeave: () => this.setState({ uploadFile: true }), onDrop: (acceptedFiles, errors) => {
476
+ return (react_1.default.createElement(react_dropzone_1.default, { disabled: !!disabled || cropHandler, key: "dropzone", multiple: false, accept: accept, maxSize: maxSize, onDragEnter: () => this.setState({ uploadFile: 'dragging' }), onDragLeave: () => this.setState({ uploadFile: true }), onDrop: (acceptedFiles, errors) => {
478
477
  this.setState({ uploadFile: false });
479
478
  if (!acceptedFiles.length) {
480
- window.alert((errors && errors[0] && errors[0].errors && errors[0].errors[0] && errors[0].errors[0].message) || i18n_1.default.t('ra_Cannot upload'));
479
+ window.alert((errors &&
480
+ errors[0] &&
481
+ errors[0].errors &&
482
+ errors[0].errors[0] &&
483
+ errors[0].errors[0].message) ||
484
+ i18n_1.default.t('ra_Cannot upload'));
481
485
  }
482
486
  else {
483
487
  this.onDrop(acceptedFiles);
484
488
  }
485
- } }, ({ getRootProps, getInputProps }) => react_1.default.createElement("div", Object.assign({ style: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, styles.uploadDiv), (uploadFile === 'dragging' ? styles.uploadDivDragging : undefined)), styles.dropZone), (disabled ? styles.disabledOpacity : undefined)), (!icon ? styles.dropZoneEmpty : undefined)) }, getRootProps()),
489
+ } }, ({ getRootProps, getInputProps }) => (react_1.default.createElement("div", Object.assign({ style: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, styles.uploadDiv), (uploadFile === 'dragging' ? styles.uploadDivDragging : undefined)), styles.dropZone), (disabled ? styles.disabledOpacity : undefined)), (!icon ? styles.dropZoneEmpty : undefined)) }, getRootProps()),
486
490
  react_1.default.createElement("input", Object.assign({}, getInputProps())),
487
491
  react_1.default.createElement("div", { style: Object.assign(Object.assign({}, styles.uploadCenterDiv), (error ? styles.error : undefined)) },
488
- !icon ? react_1.default.createElement("div", { style: styles.uploadCenterTextAndIcon },
492
+ !icon ? (react_1.default.createElement("div", { style: styles.uploadCenterTextAndIcon },
489
493
  react_1.default.createElement(fa_1.FaFileUpload, { style: styles.uploadCenterIcon }),
490
- react_1.default.createElement("div", { style: styles.uploadCenterText }, uploadFile === 'dragging' ? i18n_1.default.t('ra_Drop file here') :
491
- i18n_1.default.t('ra_Place your files here or click here to open the browse dialog')))
492
- :
493
- removeIconFunc && !cropHandler && react_1.default.createElement("div", { style: styles.buttonRemoveWrapper },
494
- react_1.default.createElement(material_1.Tooltip, { title: i18n_1.default.t('ra_Clear'), componentsProps: { popper: { sx: { pointerEvents: 'none' } } } },
495
- react_1.default.createElement(material_1.IconButton, { size: "large", onClick: e => {
496
- removeIconFunc && removeIconFunc();
497
- e.stopPropagation();
498
- } },
499
- react_1.default.createElement(icons_material_1.Close, null)))),
500
- icon && crop && react_1.default.createElement("div", { style: styles.buttonCropWrapper },
494
+ react_1.default.createElement("div", { style: styles.uploadCenterText }, uploadFile === 'dragging'
495
+ ? i18n_1.default.t('ra_Drop file here')
496
+ : i18n_1.default.t('ra_Place your files here or click here to open the browse dialog')))) : (removeIconFunc &&
497
+ !cropHandler && (react_1.default.createElement("div", { style: styles.buttonRemoveWrapper },
498
+ react_1.default.createElement(material_1.Tooltip, { title: i18n_1.default.t('ra_Clear'), componentsProps: { popper: { sx: { pointerEvents: 'none' } } } },
499
+ react_1.default.createElement(material_1.IconButton, { size: "large", onClick: e => {
500
+ removeIconFunc && removeIconFunc();
501
+ e.stopPropagation();
502
+ } },
503
+ react_1.default.createElement(icons_material_1.Close, null)))))),
504
+ icon && crop && (react_1.default.createElement("div", { style: styles.buttonCropWrapper },
501
505
  react_1.default.createElement(material_1.Tooltip, { title: i18n_1.default.t('ra_Crop'), componentsProps: { popper: { sx: { pointerEvents: 'none' } } } },
502
506
  react_1.default.createElement(material_1.IconButton, { size: "large", onClick: e => {
503
507
  if (!cropHandler) {
@@ -522,9 +526,9 @@ class UploadImage extends react_1.Component {
522
526
  }
523
527
  }
524
528
  }) }, i18n_1.default.t('ra_Save')),
525
- react_1.default.createElement(material_1.MenuItem, { onClick: () => this.setState({ anchorEl: null, cropHandler: false }) }, i18n_1.default.t('ra_Close')))),
526
- icon && !cropHandler ? react_1.default.createElement(Icon_1.default, { src: icon, style: styles.image, alt: "icon" }) : null,
527
- icon && crop && cropHandler ? react_1.default.createElement(react_cropper_1.Cropper, { ref: this.cropperRef, style: styles.image, src: icon, initialAspectRatio: 1, viewMode: 1, guides: false, minCropBoxHeight: 10, minCropBoxWidth: 10, background: false, checkOrientation: false }) : null)));
529
+ react_1.default.createElement(material_1.MenuItem, { onClick: () => this.setState({ anchorEl: null, cropHandler: false }) }, i18n_1.default.t('ra_Close'))))),
530
+ icon && !cropHandler ? (react_1.default.createElement(Icon_1.default, { src: icon, style: styles.image, alt: "icon" })) : null,
531
+ icon && crop && cropHandler ? (react_1.default.createElement(react_cropper_1.Cropper, { ref: this.cropperRef, style: styles.image, src: icon, initialAspectRatio: 1, viewMode: 1, guides: false, minCropBoxHeight: 10, minCropBoxWidth: 10, background: false, checkOrientation: false })) : null)))));
528
532
  }
529
533
  }
530
534
  exports.default = UploadImage;