@iobroker/json-config 1.0.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 (221) hide show
  1. package/LICENSE +21 -0
  2. package/build/JsonConfig.d.ts +22 -0
  3. package/build/JsonConfig.js +535 -0
  4. package/build/JsonConfig.js.map +1 -0
  5. package/build/JsonConfigComponent/ChipInput.d.ts +12 -0
  6. package/build/JsonConfigComponent/ChipInput.js +595 -0
  7. package/build/JsonConfigComponent/ChipInput.js.map +1 -0
  8. package/build/JsonConfigComponent/ConfigAccordion.d.ts +15 -0
  9. package/build/JsonConfigComponent/ConfigAccordion.js +185 -0
  10. package/build/JsonConfigComponent/ConfigAccordion.js.map +1 -0
  11. package/build/JsonConfigComponent/ConfigAlive.d.ts +10 -0
  12. package/build/JsonConfigComponent/ConfigAlive.js +63 -0
  13. package/build/JsonConfigComponent/ConfigAlive.js.map +1 -0
  14. package/build/JsonConfigComponent/ConfigAutocomplete.d.ts +37 -0
  15. package/build/JsonConfigComponent/ConfigAutocomplete.js +69 -0
  16. package/build/JsonConfigComponent/ConfigAutocomplete.js.map +1 -0
  17. package/build/JsonConfigComponent/ConfigAutocompleteSendTo.d.ts +17 -0
  18. package/build/JsonConfigComponent/ConfigAutocompleteSendTo.js +127 -0
  19. package/build/JsonConfigComponent/ConfigAutocompleteSendTo.js.map +1 -0
  20. package/build/JsonConfigComponent/ConfigCRON.d.ts +15 -0
  21. package/build/JsonConfigComponent/ConfigCRON.js +55 -0
  22. package/build/JsonConfigComponent/ConfigCRON.js.map +1 -0
  23. package/build/JsonConfigComponent/ConfigCertCollection.d.ts +14 -0
  24. package/build/JsonConfigComponent/ConfigCertCollection.js +50 -0
  25. package/build/JsonConfigComponent/ConfigCertCollection.js.map +1 -0
  26. package/build/JsonConfigComponent/ConfigCertificateSelect.d.ts +14 -0
  27. package/build/JsonConfigComponent/ConfigCertificateSelect.js +59 -0
  28. package/build/JsonConfigComponent/ConfigCertificateSelect.js.map +1 -0
  29. package/build/JsonConfigComponent/ConfigCertificates.d.ts +14 -0
  30. package/build/JsonConfigComponent/ConfigCertificates.js +104 -0
  31. package/build/JsonConfigComponent/ConfigCertificates.js.map +1 -0
  32. package/build/JsonConfigComponent/ConfigCheckLicense.d.ts +3 -0
  33. package/build/JsonConfigComponent/ConfigCheckLicense.js +546 -0
  34. package/build/JsonConfigComponent/ConfigCheckLicense.js.map +1 -0
  35. package/build/JsonConfigComponent/ConfigCheckbox.d.ts +15 -0
  36. package/build/JsonConfigComponent/ConfigCheckbox.js +36 -0
  37. package/build/JsonConfigComponent/ConfigCheckbox.js.map +1 -0
  38. package/build/JsonConfigComponent/ConfigChip.d.ts +14 -0
  39. package/build/JsonConfigComponent/ConfigChip.js +67 -0
  40. package/build/JsonConfigComponent/ConfigChip.js.map +1 -0
  41. package/build/JsonConfigComponent/ConfigColor.d.ts +22 -0
  42. package/build/JsonConfigComponent/ConfigColor.js +57 -0
  43. package/build/JsonConfigComponent/ConfigColor.js.map +1 -0
  44. package/build/JsonConfigComponent/ConfigCoordinates.d.ts +14 -0
  45. package/build/JsonConfigComponent/ConfigCoordinates.js +146 -0
  46. package/build/JsonConfigComponent/ConfigCoordinates.js.map +1 -0
  47. package/build/JsonConfigComponent/ConfigCustom.d.ts +26 -0
  48. package/build/JsonConfigComponent/ConfigCustom.js +195 -0
  49. package/build/JsonConfigComponent/ConfigCustom.js.map +1 -0
  50. package/build/JsonConfigComponent/ConfigDatePicker.d.ts +14 -0
  51. package/build/JsonConfigComponent/ConfigDatePicker.js +39 -0
  52. package/build/JsonConfigComponent/ConfigDatePicker.js.map +1 -0
  53. package/build/JsonConfigComponent/ConfigDeviceManager.d.ts +6 -0
  54. package/build/JsonConfigComponent/ConfigDeviceManager.js +14 -0
  55. package/build/JsonConfigComponent/ConfigDeviceManager.js.map +1 -0
  56. package/build/JsonConfigComponent/ConfigFile.d.ts +15 -0
  57. package/build/JsonConfigComponent/ConfigFile.js +131 -0
  58. package/build/JsonConfigComponent/ConfigFile.js.map +1 -0
  59. package/build/JsonConfigComponent/ConfigFileSelector.d.ts +3 -0
  60. package/build/JsonConfigComponent/ConfigFileSelector.js +434 -0
  61. package/build/JsonConfigComponent/ConfigFileSelector.js.map +1 -0
  62. package/build/JsonConfigComponent/ConfigFunc.d.ts +14 -0
  63. package/build/JsonConfigComponent/ConfigFunc.js +56 -0
  64. package/build/JsonConfigComponent/ConfigFunc.js.map +1 -0
  65. package/build/JsonConfigComponent/ConfigGeneric.d.ts +95 -0
  66. package/build/JsonConfigComponent/ConfigGeneric.js +632 -0
  67. package/build/JsonConfigComponent/ConfigGeneric.js.map +1 -0
  68. package/build/JsonConfigComponent/ConfigIP.d.ts +14 -0
  69. package/build/JsonConfigComponent/ConfigIP.js +64 -0
  70. package/build/JsonConfigComponent/ConfigIP.js.map +1 -0
  71. package/build/JsonConfigComponent/ConfigImageSendTo.d.ts +10 -0
  72. package/build/JsonConfigComponent/ConfigImageSendTo.js +62 -0
  73. package/build/JsonConfigComponent/ConfigImageSendTo.js.map +1 -0
  74. package/build/JsonConfigComponent/ConfigImageUpload.d.ts +14 -0
  75. package/build/JsonConfigComponent/ConfigImageUpload.js +91 -0
  76. package/build/JsonConfigComponent/ConfigImageUpload.js.map +1 -0
  77. package/build/JsonConfigComponent/ConfigInstanceSelect.d.ts +14 -0
  78. package/build/JsonConfigComponent/ConfigInstanceSelect.js +133 -0
  79. package/build/JsonConfigComponent/ConfigInstanceSelect.js.map +1 -0
  80. package/build/JsonConfigComponent/ConfigInterface.d.ts +14 -0
  81. package/build/JsonConfigComponent/ConfigInterface.js +74 -0
  82. package/build/JsonConfigComponent/ConfigInterface.js.map +1 -0
  83. package/build/JsonConfigComponent/ConfigJsonEditor.d.ts +13 -0
  84. package/build/JsonConfigComponent/ConfigJsonEditor.js +59 -0
  85. package/build/JsonConfigComponent/ConfigJsonEditor.js.map +1 -0
  86. package/build/JsonConfigComponent/ConfigLanguage.d.ts +7 -0
  87. package/build/JsonConfigComponent/ConfigLanguage.js +105 -0
  88. package/build/JsonConfigComponent/ConfigLanguage.js.map +1 -0
  89. package/build/JsonConfigComponent/ConfigLicense.d.ts +24 -0
  90. package/build/JsonConfigComponent/ConfigLicense.js +95 -0
  91. package/build/JsonConfigComponent/ConfigLicense.js.map +1 -0
  92. package/build/JsonConfigComponent/ConfigNumber.d.ts +17 -0
  93. package/build/JsonConfigComponent/ConfigNumber.js +114 -0
  94. package/build/JsonConfigComponent/ConfigNumber.js.map +1 -0
  95. package/build/JsonConfigComponent/ConfigObjectId.d.ts +17 -0
  96. package/build/JsonConfigComponent/ConfigObjectId.js +59 -0
  97. package/build/JsonConfigComponent/ConfigObjectId.js.map +1 -0
  98. package/build/JsonConfigComponent/ConfigPanel.d.ts +3 -0
  99. package/build/JsonConfigComponent/ConfigPanel.js +271 -0
  100. package/build/JsonConfigComponent/ConfigPanel.js.map +1 -0
  101. package/build/JsonConfigComponent/ConfigPassword.d.ts +14 -0
  102. package/build/JsonConfigComponent/ConfigPassword.js +105 -0
  103. package/build/JsonConfigComponent/ConfigPassword.js.map +1 -0
  104. package/build/JsonConfigComponent/ConfigPattern.d.ts +21 -0
  105. package/build/JsonConfigComponent/ConfigPattern.js +32 -0
  106. package/build/JsonConfigComponent/ConfigPattern.js.map +1 -0
  107. package/build/JsonConfigComponent/ConfigPort.d.ts +3 -0
  108. package/build/JsonConfigComponent/ConfigPort.js +174 -0
  109. package/build/JsonConfigComponent/ConfigPort.js.map +1 -0
  110. package/build/JsonConfigComponent/ConfigRoom.d.ts +14 -0
  111. package/build/JsonConfigComponent/ConfigRoom.js +56 -0
  112. package/build/JsonConfigComponent/ConfigRoom.js.map +1 -0
  113. package/build/JsonConfigComponent/ConfigSelect.d.ts +14 -0
  114. package/build/JsonConfigComponent/ConfigSelect.js +90 -0
  115. package/build/JsonConfigComponent/ConfigSelect.js.map +1 -0
  116. package/build/JsonConfigComponent/ConfigSelectSendTo.d.ts +17 -0
  117. package/build/JsonConfigComponent/ConfigSelectSendTo.js +175 -0
  118. package/build/JsonConfigComponent/ConfigSelectSendTo.js.map +1 -0
  119. package/build/JsonConfigComponent/ConfigSendto.d.ts +24 -0
  120. package/build/JsonConfigComponent/ConfigSendto.js +290 -0
  121. package/build/JsonConfigComponent/ConfigSendto.js.map +1 -0
  122. package/build/JsonConfigComponent/ConfigSetState.d.ts +18 -0
  123. package/build/JsonConfigComponent/ConfigSetState.js +93 -0
  124. package/build/JsonConfigComponent/ConfigSetState.js.map +1 -0
  125. package/build/JsonConfigComponent/ConfigSlider.d.ts +14 -0
  126. package/build/JsonConfigComponent/ConfigSlider.js +62 -0
  127. package/build/JsonConfigComponent/ConfigSlider.js.map +1 -0
  128. package/build/JsonConfigComponent/ConfigStaticDivider.d.ts +14 -0
  129. package/build/JsonConfigComponent/ConfigStaticDivider.js +39 -0
  130. package/build/JsonConfigComponent/ConfigStaticDivider.js.map +1 -0
  131. package/build/JsonConfigComponent/ConfigStaticHeader.d.ts +14 -0
  132. package/build/JsonConfigComponent/ConfigStaticHeader.js +45 -0
  133. package/build/JsonConfigComponent/ConfigStaticHeader.js.map +1 -0
  134. package/build/JsonConfigComponent/ConfigStaticImage.d.ts +14 -0
  135. package/build/JsonConfigComponent/ConfigStaticImage.js +36 -0
  136. package/build/JsonConfigComponent/ConfigStaticImage.js.map +1 -0
  137. package/build/JsonConfigComponent/ConfigStaticText.d.ts +14 -0
  138. package/build/JsonConfigComponent/ConfigStaticText.js +51 -0
  139. package/build/JsonConfigComponent/ConfigStaticText.js.map +1 -0
  140. package/build/JsonConfigComponent/ConfigTable.d.ts +3 -0
  141. package/build/JsonConfigComponent/ConfigTable.js +670 -0
  142. package/build/JsonConfigComponent/ConfigTable.js.map +1 -0
  143. package/build/JsonConfigComponent/ConfigTabs.d.ts +34 -0
  144. package/build/JsonConfigComponent/ConfigTabs.js +90 -0
  145. package/build/JsonConfigComponent/ConfigTabs.js.map +1 -0
  146. package/build/JsonConfigComponent/ConfigText.d.ts +14 -0
  147. package/build/JsonConfigComponent/ConfigText.js +105 -0
  148. package/build/JsonConfigComponent/ConfigText.js.map +1 -0
  149. package/build/JsonConfigComponent/ConfigTextSendTo.d.ts +10 -0
  150. package/build/JsonConfigComponent/ConfigTextSendTo.js +76 -0
  151. package/build/JsonConfigComponent/ConfigTextSendTo.js.map +1 -0
  152. package/build/JsonConfigComponent/ConfigTimePicker.d.ts +14 -0
  153. package/build/JsonConfigComponent/ConfigTimePicker.js +37 -0
  154. package/build/JsonConfigComponent/ConfigTimePicker.js.map +1 -0
  155. package/build/JsonConfigComponent/ConfigTopic.d.ts +17 -0
  156. package/build/JsonConfigComponent/ConfigTopic.js +61 -0
  157. package/build/JsonConfigComponent/ConfigTopic.js.map +1 -0
  158. package/build/JsonConfigComponent/ConfigUUID.d.ts +15 -0
  159. package/build/JsonConfigComponent/ConfigUUID.js +31 -0
  160. package/build/JsonConfigComponent/ConfigUUID.js.map +1 -0
  161. package/build/JsonConfigComponent/ConfigUser.d.ts +14 -0
  162. package/build/JsonConfigComponent/ConfigUser.js +70 -0
  163. package/build/JsonConfigComponent/ConfigUser.js.map +1 -0
  164. package/build/JsonConfigComponent/index.d.ts +26 -0
  165. package/build/JsonConfigComponent/index.js +312 -0
  166. package/build/JsonConfigComponent/index.js.map +1 -0
  167. package/build/JsonConfigComponent/wrapper/AdminConnection.d.ts +2 -0
  168. package/build/JsonConfigComponent/wrapper/AdminConnection.js +3 -0
  169. package/build/JsonConfigComponent/wrapper/AdminConnection.js.map +1 -0
  170. package/build/JsonConfigComponent/wrapper/Components/ColorPicker.d.ts +2 -0
  171. package/build/JsonConfigComponent/wrapper/Components/ColorPicker.js +3 -0
  172. package/build/JsonConfigComponent/wrapper/Components/ColorPicker.js.map +1 -0
  173. package/build/JsonConfigComponent/wrapper/Components/CustomModal.d.ts +3 -0
  174. package/build/JsonConfigComponent/wrapper/Components/CustomModal.js +87 -0
  175. package/build/JsonConfigComponent/wrapper/Components/CustomModal.js.map +1 -0
  176. package/build/JsonConfigComponent/wrapper/Components/Editor.d.ts +14 -0
  177. package/build/JsonConfigComponent/wrapper/Components/Editor.js +43 -0
  178. package/build/JsonConfigComponent/wrapper/Components/Editor.js.map +1 -0
  179. package/build/JsonConfigComponent/wrapper/Components/Icon.d.ts +2 -0
  180. package/build/JsonConfigComponent/wrapper/Components/Icon.js +3 -0
  181. package/build/JsonConfigComponent/wrapper/Components/Icon.js.map +1 -0
  182. package/build/JsonConfigComponent/wrapper/Components/TextWithIcon.d.ts +2 -0
  183. package/build/JsonConfigComponent/wrapper/Components/TextWithIcon.js +3 -0
  184. package/build/JsonConfigComponent/wrapper/Components/TextWithIcon.js.map +1 -0
  185. package/build/JsonConfigComponent/wrapper/Components/UploadImage.d.ts +2 -0
  186. package/build/JsonConfigComponent/wrapper/Components/UploadImage.js +3 -0
  187. package/build/JsonConfigComponent/wrapper/Components/UploadImage.js.map +1 -0
  188. package/build/JsonConfigComponent/wrapper/Components/Utils.d.ts +2 -0
  189. package/build/JsonConfigComponent/wrapper/Components/Utils.js +3 -0
  190. package/build/JsonConfigComponent/wrapper/Components/Utils.js.map +1 -0
  191. package/build/JsonConfigComponent/wrapper/Dialogs/Confirm.d.ts +2 -0
  192. package/build/JsonConfigComponent/wrapper/Dialogs/Confirm.js +3 -0
  193. package/build/JsonConfigComponent/wrapper/Dialogs/Confirm.js.map +1 -0
  194. package/build/JsonConfigComponent/wrapper/Dialogs/Cron.d.ts +2 -0
  195. package/build/JsonConfigComponent/wrapper/Dialogs/Cron.js +3 -0
  196. package/build/JsonConfigComponent/wrapper/Dialogs/Cron.js.map +1 -0
  197. package/build/JsonConfigComponent/wrapper/Dialogs/Error.d.ts +2 -0
  198. package/build/JsonConfigComponent/wrapper/Dialogs/Error.js +3 -0
  199. package/build/JsonConfigComponent/wrapper/Dialogs/Error.js.map +1 -0
  200. package/build/JsonConfigComponent/wrapper/Dialogs/Message.d.ts +2 -0
  201. package/build/JsonConfigComponent/wrapper/Dialogs/Message.js +3 -0
  202. package/build/JsonConfigComponent/wrapper/Dialogs/Message.js.map +1 -0
  203. package/build/JsonConfigComponent/wrapper/Dialogs/SelectFile.d.ts +2 -0
  204. package/build/JsonConfigComponent/wrapper/Dialogs/SelectFile.js +3 -0
  205. package/build/JsonConfigComponent/wrapper/Dialogs/SelectFile.js.map +1 -0
  206. package/build/JsonConfigComponent/wrapper/Dialogs/SelectID.d.ts +2 -0
  207. package/build/JsonConfigComponent/wrapper/Dialogs/SelectID.js +3 -0
  208. package/build/JsonConfigComponent/wrapper/Dialogs/SelectID.js.map +1 -0
  209. package/build/JsonConfigComponent/wrapper/i18n.d.ts +2 -0
  210. package/build/JsonConfigComponent/wrapper/i18n.js +3 -0
  211. package/build/JsonConfigComponent/wrapper/i18n.js.map +1 -0
  212. package/build/JsonConfigComponent/wrapper/icons/IconCopy.d.ts +2 -0
  213. package/build/JsonConfigComponent/wrapper/icons/IconCopy.js +3 -0
  214. package/build/JsonConfigComponent/wrapper/icons/IconCopy.js.map +1 -0
  215. package/build/Utils.d.ts +376 -0
  216. package/build/Utils.js +1595 -0
  217. package/build/Utils.js.map +1 -0
  218. package/build/index.d.ts +5 -0
  219. package/build/index.js +6 -0
  220. package/build/index.js.map +1 -0
  221. package/package.json +17 -0
@@ -0,0 +1,14 @@
1
+ declare const _default: React.JSXElementConstructor<Omit<Pick<import("./ConfigGeneric").ConfigGenericProps, "data" | "originalData" | "instanceObj" | "customObj" | "schema" | "attr" | "onChange" | "custom" | "forceUpdate" | "alive" | "systemConfig" | "socket" | "changed" | "adapterName" | "instance" | "common" | "onError" | "themeType" | "disabled" | "classes"> & Pick<PropTypes.InferProps<{
2
+ socket: PropTypes.Validator<object>;
3
+ themeType: PropTypes.Requireable<string>;
4
+ themeName: PropTypes.Requireable<string>;
5
+ style: PropTypes.Requireable<object>;
6
+ className: PropTypes.Requireable<string>;
7
+ data: PropTypes.Validator<object>;
8
+ schema: PropTypes.Requireable<object>;
9
+ onError: PropTypes.Requireable<(...args: any[]) => any>;
10
+ onChange: PropTypes.Requireable<(...args: any[]) => any>;
11
+ }>, "className" | "style" | "themeName"> & Pick<import("./ConfigGeneric").ConfigGenericProps, "originalData" | "instanceObj" | "customObj" | "arrayIndex" | "globalData" | "registerOnForceUpdate" | "attr" | "custom" | "forceUpdate" | "alive" | "systemConfig" | "changed" | "adapterName" | "instance" | "common" | "commandRunning" | "disabled" | "classes">, "classes"> & import("@mui/styles").StyledComponentProps<"fullWidth"> & object>;
12
+ export default _default;
13
+ import PropTypes from 'prop-types';
14
+ import React from 'react';
@@ -0,0 +1,67 @@
1
+ import React from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import { withStyles } from '@mui/styles';
4
+ import { FormHelperText, FormControl, } from '@mui/material';
5
+ import ConfigGeneric from './ConfigGeneric';
6
+ import ChipInput from './ChipInput';
7
+ const styles = () => ({
8
+ fullWidth: {
9
+ width: '100%',
10
+ },
11
+ });
12
+ class ConfigLanguage extends ConfigGeneric {
13
+ componentDidMount() {
14
+ super.componentDidMount();
15
+ const { data, attr } = this.props;
16
+ const value = ConfigGeneric.getValue(data, attr);
17
+ if (this.props.schema.delimiter && typeof value === 'string') {
18
+ const parts = value.split(this.props.schema.delimiter).map(a => a.trim()).filter(a => a);
19
+ this.setState({ value: parts });
20
+ }
21
+ else {
22
+ this.setState({ value: value || [] });
23
+ }
24
+ }
25
+ renderItem(error, disabled /* , defaultValue */) {
26
+ const { attr, schema } = this.props;
27
+ const { value } = this.state;
28
+ return React.createElement(FormControl, { className: this.props.classes.fullWidth, variant: "standard" },
29
+ React.createElement(ChipInput, { value: value, disabled: !!disabled, label: this.getText(schema.label), error: !!error, onAdd: chip => {
30
+ const newValue = JSON.parse(JSON.stringify(value));
31
+ newValue.push(chip);
32
+ this.setState({ value: newValue, prevValue: '' }, () => {
33
+ if (this.props.schema.delimiter) {
34
+ this.onChange(attr, newValue.join(`${this.props.schema.delimiter} `));
35
+ }
36
+ else {
37
+ this.onChange(attr, newValue);
38
+ }
39
+ });
40
+ }, onDelete: (chip, index) => {
41
+ const newValue = JSON.parse(JSON.stringify(value));
42
+ newValue.splice(index, 1);
43
+ this.setState({ value: newValue, prevValue: '' }, () => {
44
+ if (this.props.schema.delimiter) {
45
+ this.onChange(attr, newValue.join(`${this.props.schema.delimiter} `));
46
+ }
47
+ else {
48
+ this.onChange(attr, newValue);
49
+ }
50
+ });
51
+ } }),
52
+ this.props.schema.help ? React.createElement(FormHelperText, null, this.renderHelp(this.props.schema.help, this.props.schema.helpLink, this.props.schema.noTranslation)) : null);
53
+ }
54
+ }
55
+ ConfigLanguage.propTypes = {
56
+ socket: PropTypes.object.isRequired,
57
+ themeType: PropTypes.string,
58
+ themeName: PropTypes.string,
59
+ style: PropTypes.object,
60
+ className: PropTypes.string,
61
+ data: PropTypes.object.isRequired,
62
+ schema: PropTypes.object,
63
+ onError: PropTypes.func,
64
+ onChange: PropTypes.func,
65
+ };
66
+ export default withStyles(styles)(ConfigLanguage);
67
+ //# sourceMappingURL=ConfigChip.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConfigChip.js","sourceRoot":"./src/","sources":["JsonConfigComponent/ConfigChip.jsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EACH,cAAc,EACd,WAAW,GACd,MAAM,eAAe,CAAC;AAEvB,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAC5C,OAAO,SAAS,MAAM,aAAa,CAAC;AAEpC,MAAM,MAAM,GAAG,GAAG,EAAE,CAAC,CAAC;IAClB,SAAS,EAAE;QACP,KAAK,EAAE,MAAM;KAChB;CACJ,CAAC,CAAC;AAEH,MAAM,cAAe,SAAQ,aAAa;IACtC,iBAAiB;QACb,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;QAClC,MAAM,KAAK,GAAG,aAAa,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACjD,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC1D,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YACzF,IAAI,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;SACnC;aAAM;YACH,IAAI,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,KAAK,IAAI,EAAE,EAAE,CAAC,CAAC;SACzC;IACL,CAAC;IAED,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC,oBAAoB;QAC3C,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;QACpC,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;QAC7B,OAAO,oBAAC,WAAW,IAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,EAAC,UAAU;YAC3E,oBAAC,SAAS,IACN,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,CAAC,CAAC,QAAQ,EACpB,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EACjC,KAAK,EAAE,CAAC,CAAC,KAAK,EACd,KAAK,EAAE,IAAI,CAAC,EAAE;oBACV,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;oBACnD,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACpB,IAAI,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE;wBACnD,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,EAAE;4BAC7B,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;yBACzE;6BAAM;4BACH,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;yBACjC;oBACL,CAAC,CAAC,CAAC;gBACP,CAAC,EACD,QAAQ,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;oBACtB,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;oBACnD,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;oBAC1B,IAAI,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE;wBACnD,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,EAAE;4BAC7B,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;yBACzE;6BAAM;4BACH,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;yBACjC;oBACL,CAAC,CAAC,CAAC;gBACP,CAAC,GACH;YACD,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,oBAAC,cAAc,QAAE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAkB,CAAC,CAAC,CAAC,IAAI,CAC9J,CAAC;IACnB,CAAC;CACJ;AAED,cAAc,CAAC,SAAS,GAAG;IACvB,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,UAAU;IACnC,SAAS,EAAE,SAAS,CAAC,MAAM;IAC3B,SAAS,EAAE,SAAS,CAAC,MAAM;IAC3B,KAAK,EAAE,SAAS,CAAC,MAAM;IACvB,SAAS,EAAE,SAAS,CAAC,MAAM;IAC3B,IAAI,EAAE,SAAS,CAAC,MAAM,CAAC,UAAU;IACjC,MAAM,EAAE,SAAS,CAAC,MAAM;IACxB,OAAO,EAAE,SAAS,CAAC,IAAI;IACvB,QAAQ,EAAE,SAAS,CAAC,IAAI;CAC3B,CAAC;AAEF,eAAe,UAAU,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,CAAC"}
@@ -0,0 +1,22 @@
1
+ export default ConfigColor;
2
+ declare class ConfigColor extends ConfigGeneric<import("./ConfigGeneric").ConfigGenericProps, import("./ConfigGeneric").ConfigGenericState> {
3
+ constructor(props: import("./ConfigGeneric").ConfigGenericProps);
4
+ renderColorDialog(): React.JSX.Element;
5
+ renderItem(error: any, disabled: any): React.JSX.Element;
6
+ }
7
+ declare namespace ConfigColor {
8
+ namespace propTypes {
9
+ let socket: PropTypes.Validator<object>;
10
+ let themeType: PropTypes.Requireable<string>;
11
+ let themeName: PropTypes.Requireable<string>;
12
+ let style: PropTypes.Requireable<object>;
13
+ let className: PropTypes.Requireable<string>;
14
+ let data: PropTypes.Validator<object>;
15
+ let schema: PropTypes.Requireable<object>;
16
+ let onError: PropTypes.Requireable<(...args: any[]) => any>;
17
+ let onChange: PropTypes.Requireable<(...args: any[]) => any>;
18
+ }
19
+ }
20
+ import ConfigGeneric from './ConfigGeneric';
21
+ import React from 'react';
22
+ import PropTypes from 'prop-types';
@@ -0,0 +1,57 @@
1
+ import React from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import { ChromePicker } from 'react-color';
4
+ import { IconButton, TextField, Dialog, } from '@mui/material';
5
+ import { Close as ClearIcon } from '@mui/icons-material';
6
+ import Utils from './wrapper/Components/Utils';
7
+ import ColorPicker from './wrapper/Components/ColorPicker';
8
+ import ConfigGeneric from './ConfigGeneric';
9
+ class ConfigColor extends ConfigGeneric {
10
+ renderColorDialog() {
11
+ return !!this.state.showColorDialog && React.createElement(Dialog, { onClose: () => this.setState({ showColorDialog: false }), open: this.state.showColorDialog },
12
+ React.createElement(ChromePicker, { color: this.state.colorDialogValue, onChange: value => this.setState({ colorDialogValue: value }, () => this.onChange(this.props.attr, ColorPicker.getColor(this.state.colorDialogValue, true))) }));
13
+ }
14
+ renderItem(error, disabled /* , defaultValue */) {
15
+ const value = ConfigGeneric.getValue(this.props.data, this.props.attr);
16
+ let textColor = Utils.isUseBright(value, null);
17
+ if (textColor === null) {
18
+ textColor = undefined;
19
+ }
20
+ return React.createElement(React.Fragment, null,
21
+ this.renderColorDialog(),
22
+ React.createElement(TextField, { variant: "standard", disabled: !!disabled, style: { minWidth: 100, width: 'calc(100% - 8px)' }, label: this.getText(this.props.schema.label), value: value || '', onClick: () => !this.props.schema.readOnly && this.setState({ showColorDialog: true, colorDialogValue: value || '' }), onChange: e => {
23
+ const color = e.target.value;
24
+ this.onChange(this.props.attr, color);
25
+ }, inputProps: {
26
+ style: {
27
+ // paddingLeft: noPadding ? 0 : 8,
28
+ backgroundColor: value,
29
+ color: textColor ? '#FFF' : '#000',
30
+ },
31
+ readOnly: this.props.schema.readOnly || false,
32
+ },
33
+ // eslint-disable-next-line react/jsx-no-duplicate-props
34
+ InputProps: {
35
+ endAdornment: value ?
36
+ React.createElement(IconButton, { disabled: !!this.props.onPaste, size: "small", onClick: e => {
37
+ e.stopPropagation();
38
+ this.onChange(this.props.attr, '');
39
+ } },
40
+ React.createElement(ClearIcon, null))
41
+ : undefined,
42
+ }, InputLabelProps: { shrink: true } }));
43
+ }
44
+ }
45
+ ConfigColor.propTypes = {
46
+ socket: PropTypes.object.isRequired,
47
+ themeType: PropTypes.string,
48
+ themeName: PropTypes.string,
49
+ style: PropTypes.object,
50
+ className: PropTypes.string,
51
+ data: PropTypes.object.isRequired,
52
+ schema: PropTypes.object,
53
+ onError: PropTypes.func,
54
+ onChange: PropTypes.func,
55
+ };
56
+ export default ConfigColor;
57
+ //# sourceMappingURL=ConfigColor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConfigColor.js","sourceRoot":"./src/","sources":["JsonConfigComponent/ConfigColor.jsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,OAAO,EACH,UAAU,EACV,SAAS,EACT,MAAM,GACT,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEzD,OAAO,KAAK,MAAM,4BAA4B,CAAC;AAC/C,OAAO,WAAW,MAAM,kCAAkC,CAAC;AAE3D,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAE5C,MAAM,WAAY,SAAQ,aAAa;IACnC,iBAAiB;QACb,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,IAAI,oBAAC,MAAM,IAC1C,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC,EACxD,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe;YAEhC,oBAAC,YAAY,IACT,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,gBAAgB,EAClC,QAAQ,EAAE,KAAK,CAAC,EAAE,CACd,IAAI,CAAC,QAAQ,CAAC,EAAE,gBAAgB,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,CAC5C,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC,CAAC,GAClG,CACG,CAAC;IACd,CAAC;IAED,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC,oBAAoB;QAC3C,MAAM,KAAK,GAAG,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACvE,IAAI,SAAS,GAAG,KAAK,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAC/C,IAAI,SAAS,KAAK,IAAI,EAAE;YACpB,SAAS,GAAG,SAAS,CAAC;SACzB;QACD,OAAO;YACF,IAAI,CAAC,iBAAiB,EAAE;YACzB,oBAAC,SAAS,IACN,OAAO,EAAC,UAAU,EAClB,QAAQ,EAAE,CAAC,CAAC,QAAQ,EACpB,KAAK,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,EACnD,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,EAC5C,KAAK,EAAE,KAAK,IAAI,EAAE,EAClB,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,EAAE,eAAe,EAAE,IAAI,EAAE,gBAAgB,EAAE,KAAK,IAAI,EAAE,EAAE,CAAC,EACrH,QAAQ,EAAE,CAAC,CAAC,EAAE;oBACV,MAAM,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;oBAC7B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;gBAC1C,CAAC,EACD,UAAU,EAAE;oBACR,KAAK,EAAE;wBACH,kCAAkC;wBAClC,eAAe,EAAE,KAAK;wBACtB,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;qBACrC;oBACD,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,IAAI,KAAK;iBAChD;gBACD,wDAAwD;gBACxD,UAAU,EAAE;oBACR,YAAY,EAAE,KAAK,CAAC,CAAC;wBACjB,oBAAC,UAAU,IACP,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAC9B,IAAI,EAAC,OAAO,EACZ,OAAO,EAAE,CAAC,CAAC,EAAE;gCACT,CAAC,CAAC,eAAe,EAAE,CAAC;gCACpB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;4BACvC,CAAC;4BAED,oBAAC,SAAS,OAAG,CACJ;wBACb,CAAC,CAAC,SAAS;iBAClB,EACD,eAAe,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,GACnC,CACH,CAAC;IACR,CAAC;CACJ;AAED,WAAW,CAAC,SAAS,GAAG;IACpB,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,UAAU;IACnC,SAAS,EAAE,SAAS,CAAC,MAAM;IAC3B,SAAS,EAAE,SAAS,CAAC,MAAM;IAC3B,KAAK,EAAE,SAAS,CAAC,MAAM;IACvB,SAAS,EAAE,SAAS,CAAC,MAAM;IAC3B,IAAI,EAAE,SAAS,CAAC,MAAM,CAAC,UAAU;IACjC,MAAM,EAAE,SAAS,CAAC,MAAM;IACxB,OAAO,EAAE,SAAS,CAAC,IAAI;IACvB,QAAQ,EAAE,SAAS,CAAC,IAAI;CAC3B,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -0,0 +1,14 @@
1
+ declare const _default: React.JSXElementConstructor<Omit<Pick<import("./ConfigGeneric").ConfigGenericProps, "data" | "originalData" | "instanceObj" | "customObj" | "schema" | "attr" | "onChange" | "custom" | "forceUpdate" | "alive" | "systemConfig" | "socket" | "changed" | "adapterName" | "instance" | "common" | "onError" | "themeType" | "disabled" | "classes"> & Pick<PropTypes.InferProps<{
2
+ socket: PropTypes.Validator<object>;
3
+ themeType: PropTypes.Requireable<string>;
4
+ themeName: PropTypes.Requireable<string>;
5
+ style: PropTypes.Requireable<object>;
6
+ className: PropTypes.Requireable<string>;
7
+ data: PropTypes.Validator<object>;
8
+ schema: PropTypes.Requireable<object>;
9
+ onError: PropTypes.Requireable<(...args: any[]) => any>;
10
+ onChange: PropTypes.Requireable<(...args: any[]) => any>;
11
+ }>, "className" | "style" | "themeName"> & Pick<import("./ConfigGeneric").ConfigGenericProps, "originalData" | "instanceObj" | "customObj" | "arrayIndex" | "globalData" | "registerOnForceUpdate" | "attr" | "custom" | "forceUpdate" | "alive" | "systemConfig" | "changed" | "adapterName" | "instance" | "common" | "commandRunning" | "disabled" | "classes">, "classes"> & import("@mui/styles").StyledComponentProps<"width" | "width50"> & object>;
12
+ export default _default;
13
+ import PropTypes from 'prop-types';
14
+ import React from 'react';
@@ -0,0 +1,146 @@
1
+ import React from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import { withStyles } from '@mui/styles';
4
+ import { TextField, Fab, FormControlLabel, Checkbox, } from '@mui/material';
5
+ import { GpsFixed as IconGpsFixed, LocationOn as IconLocationOn, } from '@mui/icons-material';
6
+ import I18n from './wrapper/i18n';
7
+ import ConfigGeneric from './ConfigGeneric';
8
+ const styles = () => ({
9
+ width: {
10
+ width: 'calc(100% - 85px)',
11
+ },
12
+ width50: {
13
+ width: 120,
14
+ marginRight: 5,
15
+ },
16
+ });
17
+ class ConfigCoordinates extends ConfigGeneric {
18
+ componentDidMount() {
19
+ super.componentDidMount();
20
+ const value = ConfigGeneric.getValue(this.props.data, this.props.attr);
21
+ this.setState({ value });
22
+ const newState = {};
23
+ if (this.props.schema.useSystemName) {
24
+ newState.useSystem = !!ConfigGeneric.getValue(this.props.data, this.props.schema.useSystemName);
25
+ }
26
+ if (this.props.schema.longitudeName && this.props.schema.latitudeName) {
27
+ newState.longitude = ConfigGeneric.getValue(this.props.data, this.props.schema.longitudeName);
28
+ newState.latitude = ConfigGeneric.getValue(this.props.data, this.props.schema.latitudeName);
29
+ if (!newState.longitude && !newState.latitude && this.props.schema.autoInit) {
30
+ setTimeout(() => this.getCoordinates(), 300);
31
+ }
32
+ }
33
+ else {
34
+ const value_ = ConfigGeneric.getValue(this.props.data, this.props.attr);
35
+ if (!value_ && this.props.schema.autoInit) {
36
+ setTimeout(() => this.getCoordinates(), 300);
37
+ }
38
+ }
39
+ Object.keys(newState).length && setTimeout(() => this.setState(newState), 50);
40
+ }
41
+ getSystemCoordinates() {
42
+ return this.props.socket.getSystemConfig().then(obj => {
43
+ if (obj && obj.common && (obj.common.longitude || obj.common.latitude)) {
44
+ window.alert(I18n.t('ra_Used system settings'));
45
+ if (this.props.schema.longitudeName && this.props.schema.latitudeName) {
46
+ this.setState({
47
+ longitude: obj.common.longitude,
48
+ latitude: obj.common.latitude,
49
+ }, async () => {
50
+ await this.onChange(this.props.schema.longitudeName, (obj.common.longitude || '').trim());
51
+ await this.onChange(this.props.schema.latitudeName, (obj.common.latitude || '').trim());
52
+ });
53
+ }
54
+ else {
55
+ const value = obj.common.latitude + (this.props.schema.divider || ',') + obj.common.longitude;
56
+ this.setState({
57
+ value,
58
+ }, () => {
59
+ this.onChange(this.props.attr, value);
60
+ });
61
+ }
62
+ }
63
+ else {
64
+ window.alert(I18n.t('ra_Cannot determine position: System settings are empty and GPS detection is disabled in browser'));
65
+ }
66
+ });
67
+ }
68
+ getCoordinates() {
69
+ if (navigator.geolocation) {
70
+ navigator.geolocation.getCurrentPosition(position => {
71
+ if (position?.coords) {
72
+ if (this.props.schema.longitudeName && this.props.schema.latitudeName) {
73
+ this.setState({
74
+ longitude: position.coords.longitude,
75
+ latitude: position.coords.latitude,
76
+ }, async () => {
77
+ await this.onChange(this.props.schema.longitudeName, position.coords.longitude || '');
78
+ await this.onChange(this.props.schema.latitudeName, position.coords.latitude || '');
79
+ });
80
+ }
81
+ else {
82
+ const value = position.coords.latitude +
83
+ (this.props.schema.divider || ',') +
84
+ position.coords.longitude;
85
+ this.setState({ value }, () => {
86
+ this.onChange(this.props.attr, value);
87
+ });
88
+ }
89
+ }
90
+ else {
91
+ this.getSystemCoordinates();
92
+ }
93
+ }, error => {
94
+ console.error(`Cannot determine coordinates from browser: ${error}`);
95
+ this.getSystemCoordinates();
96
+ });
97
+ }
98
+ else {
99
+ this.getSystemCoordinates();
100
+ }
101
+ }
102
+ renderItem(error, disabled /* , defaultValue */) {
103
+ return React.createElement(React.Fragment, null,
104
+ this.props.schema.useSystemName ? React.createElement(FormControlLabel, { control: React.createElement(Checkbox, { checked: !!this.state.useSystem, onChange: e => {
105
+ const useSystem = e.target.checked;
106
+ if (useSystem) {
107
+ this.getSystemCoordinates();
108
+ }
109
+ this.setState({ useSystem }, () => this.onChange(this.props.schema.useSystemName, useSystem));
110
+ } }), label: I18n.t('ra_Use system settings for position') }) : null,
111
+ this.props.schema.longitudeName && this.props.schema.latitudeName ?
112
+ React.createElement(TextField, { variant: "standard", className: this.props.classes.width50, value: this.state.longitude ?? '', error: !!error, disabled: this.state.useSystem || !!disabled, onChange: e => {
113
+ const longitude = e.target.value;
114
+ this.setState({ longitude }, () => {
115
+ this.onChange(this.props.schema.longitudeName, (longitude || '').trim());
116
+ });
117
+ }, label: I18n.t('ra_Longitude') }) : null,
118
+ this.props.schema.longitudeName && this.props.schema.latitudeName ?
119
+ React.createElement(TextField, { variant: "standard", className: this.props.classes.width50, value: this.state.latitude ?? '', error: !!error, disabled: this.state.useSystem || !!disabled, onChange: e => {
120
+ const latitude = e.target.value;
121
+ this.setState({ latitude }, () => this.onChange(this.props.schema.latitudeName, (latitude || '').trim()));
122
+ }, label: I18n.t('ra_Latitude') }) : null,
123
+ !this.props.schema.longitudeName || !this.props.schema.latitudeName ?
124
+ React.createElement(TextField, { variant: "standard", className: this.props.classes.width, value: this.state.value === null || this.state.value === undefined ? '' : this.state.value, error: !!error, readOnly: this.state.useSystem, disabled: !!disabled, inputProps: { maxLength: this.props.schema.maxLength || this.props.schema.max || undefined }, onChange: e => {
125
+ const value = e.target.value;
126
+ this.setState({ value }, () => this.onChange(this.props.attr, (value || '').trim()));
127
+ }, placeholder: this.getText(this.props.schema.placeholder), label: this.getText(this.props.schema.label), helperText: this.renderHelp(this.props.schema.help, this.props.schema.helpLink, this.props.schema.noTranslation) }) : null,
128
+ !this.state.useSystem ? React.createElement(Fab, { size: "small", onClick: () => this.getCoordinates(), title: I18n.t('ra_Take browser position'), style: { marginRight: 4 } },
129
+ React.createElement(IconLocationOn, null)) : null,
130
+ !this.state.useSystem ? React.createElement(Fab, { size: "small", onClick: () => this.getSystemCoordinates(), title: I18n.t('ra_Take position from system settings') },
131
+ React.createElement(IconGpsFixed, null)) : null);
132
+ }
133
+ }
134
+ ConfigCoordinates.propTypes = {
135
+ socket: PropTypes.object.isRequired,
136
+ themeType: PropTypes.string,
137
+ themeName: PropTypes.string,
138
+ style: PropTypes.object,
139
+ className: PropTypes.string,
140
+ data: PropTypes.object.isRequired,
141
+ schema: PropTypes.object,
142
+ onError: PropTypes.func,
143
+ onChange: PropTypes.func,
144
+ };
145
+ export default withStyles(styles)(ConfigCoordinates);
146
+ //# sourceMappingURL=ConfigCoordinates.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConfigCoordinates.js","sourceRoot":"./src/","sources":["JsonConfigComponent/ConfigCoordinates.jsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EACH,SAAS,EACT,GAAG,EACH,gBAAgB,EAChB,QAAQ,GACX,MAAM,eAAe,CAAC;AAEvB,OAAO,EACH,QAAQ,IAAI,YAAY,EACxB,UAAU,IAAI,cAAc,GAC/B,MAAM,qBAAqB,CAAC;AAE7B,OAAO,IAAI,MAAM,gBAAgB,CAAC;AAElC,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAE5C,MAAM,MAAM,GAAG,GAAG,EAAE,CAAC,CAAC;IAClB,KAAK,EAAE;QACH,KAAK,EAAE,mBAAmB;KAC7B;IACD,OAAO,EAAE;QACL,KAAK,EAAE,GAAG;QACV,WAAW,EAAE,CAAC;KACjB;CACJ,CAAC,CAAC;AAEH,MAAM,iBAAkB,SAAQ,aAAa;IACzC,iBAAiB;QACb,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAE1B,MAAM,KAAK,GAAG,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACvE,IAAI,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAEzB,MAAM,QAAQ,GAAG,EAAE,CAAC;QACpB,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,EAAE;YACjC,QAAQ,CAAC,SAAS,GAAG,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;SACnG;QACD,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,EAAE;YACnE,QAAQ,CAAC,SAAS,GAAG,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;YAC9F,QAAQ,CAAC,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YAC5F,IAAI,CAAC,QAAQ,CAAC,SAAS,IAAI,CAAC,QAAQ,CAAC,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE;gBACzE,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,GAAG,CAAC,CAAC;aAChD;SACJ;aAAM;YACH,MAAM,MAAM,GAAG,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACxE,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE;gBACvC,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,GAAG,CAAC,CAAC;aAChD;SACJ;QACD,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,IAAI,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC;IAClF,CAAC;IAED,oBAAoB;QAChB,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;YAClD,IAAI,GAAG,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,IAAI,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE;gBACpE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC;gBAChD,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,EAAE;oBACnE,IAAI,CAAC,QAAQ,CACT;wBACI,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,SAAS;wBAC/B,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,QAAQ;qBAChC,EACD,KAAK,IAAI,EAAE;wBACP,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;wBAC1F,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;oBAC5F,CAAC,CACJ,CAAC;iBACL;qBAAM;oBACH,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,QAAQ,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,IAAI,GAAG,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC;oBAC9F,IAAI,CAAC,QAAQ,CACT;wBACI,KAAK;qBACR,EACD,GAAG,EAAE;wBACD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;oBAC1C,CAAC,CACJ,CAAC;iBACL;aACJ;iBAAM;gBACH,MAAM,CAAC,KAAK,CACR,IAAI,CAAC,CAAC,CACF,kGAAkG,CACrG,CACJ,CAAC;aACL;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAED,cAAc;QACV,IAAI,SAAS,CAAC,WAAW,EAAE;YACvB,SAAS,CAAC,WAAW,CAAC,kBAAkB,CACpC,QAAQ,CAAC,EAAE;gBACP,IAAI,QAAQ,EAAE,MAAM,EAAE;oBAClB,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,EAAE;wBACnE,IAAI,CAAC,QAAQ,CACT;4BACI,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,SAAS;4BACpC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,QAAQ;yBACrC,EACD,KAAK,IAAI,EAAE;4BACP,MAAM,IAAI,CAAC,QAAQ,CACf,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,EAC/B,QAAQ,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,CAClC,CAAC;4BACF,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;wBACxF,CAAC,CACJ,CAAC;qBACL;yBAAM;wBACH,MAAM,KAAK,GACP,QAAQ,CAAC,MAAM,CAAC,QAAQ;4BACxB,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,IAAI,GAAG,CAAC;4BAClC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC;wBAC9B,IAAI,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE;4BAC1B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;wBAC1C,CAAC,CAAC,CAAC;qBACN;iBACJ;qBAAM;oBACH,IAAI,CAAC,oBAAoB,EAAE,CAAC;iBAC/B;YACL,CAAC,EACD,KAAK,CAAC,EAAE;gBACJ,OAAO,CAAC,KAAK,CAAC,8CAA8C,KAAK,EAAE,CAAC,CAAC;gBACrE,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAChC,CAAC,CACJ,CAAC;SACL;aAAM;YACH,IAAI,CAAC,oBAAoB,EAAE,CAAC;SAC/B;IACL,CAAC;IAED,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC,oBAAoB;QAC3C,OAAO;YACF,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,oBAAC,gBAAgB,IAChD,OAAO,EACH,oBAAC,QAAQ,IACL,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EAC/B,QAAQ,EAAE,CAAC,CAAC,EAAE;wBACV,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;wBACnC,IAAI,SAAS,EAAE;4BACX,IAAI,CAAC,oBAAoB,EAAE,CAAC;yBAC/B;wBACD,IAAI,CAAC,QAAQ,CAAC,EAAE,SAAS,EAAE,EAAE,GAAG,EAAE,CAC9B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC,CAAC;oBACnE,CAAC,GACH,EAEN,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,qCAAqC,CAAC,GACtD,CAAC,CAAC,CAAC,IAAI;YACR,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;gBAChE,oBAAC,SAAS,IACN,OAAO,EAAC,UAAU,EAClB,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EACrC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,EACjC,KAAK,EAAE,CAAC,CAAC,KAAK,EACd,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,CAAC,QAAQ,EAC5C,QAAQ,EAAE,CAAC,CAAC,EAAE;wBACV,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;wBACjC,IAAI,CAAC,QAAQ,CAAC,EAAE,SAAS,EAAE,EAAE,GAAG,EAAE;4BAC9B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;wBAC7E,CAAC,CAAC,CAAC;oBACP,CAAC,EACD,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,GAC/B,CAAC,CAAC,CAAC,IAAI;YACZ,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;gBAChE,oBAAC,SAAS,IACN,OAAO,EAAC,UAAU,EAClB,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EACrC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,EAChC,KAAK,EAAE,CAAC,CAAC,KAAK,EACd,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,CAAC,QAAQ,EAC5C,QAAQ,EAAE,CAAC,CAAC,EAAE;wBACV,MAAM,QAAQ,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;wBAChC,IAAI,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAE,CAC7B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;oBAChF,CAAC,EACD,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,GAC9B,CAAC,CAAC,CAAC,IAAI;YACZ,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;gBAClE,oBAAC,SAAS,IACN,OAAO,EAAC,UAAU,EAClB,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EACnC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAC1F,KAAK,EAAE,CAAC,CAAC,KAAK,EACd,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,EAC9B,QAAQ,EAAE,CAAC,CAAC,QAAQ,EACpB,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,IAAI,SAAS,EAAE,EAC5F,QAAQ,EAAE,CAAC,CAAC,EAAE;wBACV,MAAM,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;wBAC7B,IAAI,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;oBACzF,CAAC,EACD,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,EACxD,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,EAC5C,UAAU,EAAE,IAAI,CAAC,UAAU,CACvB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EACtB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAC1B,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,CAClC,GACH,CAAC,CAAC,CAAC,IAAI;YACZ,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,oBAAC,GAAG,IACzB,IAAI,EAAC,OAAO,EACZ,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,cAAc,EAAE,EACpC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,0BAA0B,CAAC,EACzC,KAAK,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE;gBAEzB,oBAAC,cAAc,OAAG,CAChB,CAAC,CAAC,CAAC,IAAI;YACZ,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,oBAAC,GAAG,IACzB,IAAI,EAAC,OAAO,EACZ,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,oBAAoB,EAAE,EAC1C,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,uCAAuC,CAAC;gBAEtD,oBAAC,YAAY,OAAG,CACd,CAAC,CAAC,CAAC,IAAI,CACd,CAAC;IACR,CAAC;CACJ;AAED,iBAAiB,CAAC,SAAS,GAAG;IAC1B,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,UAAU;IACnC,SAAS,EAAE,SAAS,CAAC,MAAM;IAC3B,SAAS,EAAE,SAAS,CAAC,MAAM;IAC3B,KAAK,EAAE,SAAS,CAAC,MAAM;IACvB,SAAS,EAAE,SAAS,CAAC,MAAM;IAC3B,IAAI,EAAE,SAAS,CAAC,MAAM,CAAC,UAAU;IACjC,MAAM,EAAE,SAAS,CAAC,MAAM;IACxB,OAAO,EAAE,SAAS,CAAC,IAAI;IACvB,QAAQ,EAAE,SAAS,CAAC,IAAI;CAC3B,CAAC;AAEF,eAAe,UAAU,CAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC"}
@@ -0,0 +1,26 @@
1
+ export default ConfigCustom;
2
+ declare class ConfigCustom extends React.Component<any, any, any> {
3
+ constructor(props: any);
4
+ state: {
5
+ Component: any;
6
+ error: string;
7
+ };
8
+ componentDidMount(): Promise<void>;
9
+ render(): React.JSX.Element;
10
+ }
11
+ declare namespace ConfigCustom {
12
+ namespace propTypes {
13
+ let socket: PropTypes.Requireable<object>;
14
+ let themeType: PropTypes.Requireable<string>;
15
+ let themeName: PropTypes.Requireable<string>;
16
+ let style: PropTypes.Requireable<object>;
17
+ let className: PropTypes.Requireable<string>;
18
+ let attr: PropTypes.Requireable<string>;
19
+ let data: PropTypes.Validator<object>;
20
+ let schema: PropTypes.Validator<object>;
21
+ let onError: PropTypes.Requireable<(...args: any[]) => any>;
22
+ let onChange: PropTypes.Requireable<(...args: any[]) => any>;
23
+ }
24
+ }
25
+ import React from 'react';
26
+ import PropTypes from 'prop-types';
@@ -0,0 +1,195 @@
1
+ import React, { Component } from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import { Grid, LinearProgress } from '@mui/material';
4
+ import I18n from './wrapper/i18n';
5
+ const getOrLoadRemote = (remote, shareScope, remoteFallbackUrl = undefined) => new Promise((resolve, reject) => {
6
+ // check if remote exists on the global `window`object
7
+ if (!window[remote]) {
8
+ // search dom to see if remote tag exists, but might still be loading (async)
9
+ const existingRemote = document.querySelector(`script[data-webpack="${remote}"]`);
10
+ // when remote is loaded.
11
+ const onload = async () => {
12
+ // check if it was initialized
13
+ if (window[remote]) {
14
+ if (!window[remote].__initialized) {
15
+ // if share scope doesn't exist (like in webpack 4) then expect shareScope to be a manual object
16
+ // eslint-disable-next-line camelcase
17
+ if (typeof __webpack_share_scopes__ === 'undefined') {
18
+ // use a default share scope object passed in manually
19
+ await window[remote].init(shareScope.default);
20
+ }
21
+ else {
22
+ // otherwise, init share scope as usual
23
+ // eslint-disable-next-line
24
+ await window[remote].init(__webpack_share_scopes__[shareScope]);
25
+ }
26
+ // mark remote as initialized
27
+ window[remote].__initialized = true;
28
+ }
29
+ }
30
+ else {
31
+ console.error(`Cannot load ${remote}`);
32
+ reject(new Error(`Cannot load ${remote}`));
33
+ return;
34
+ }
35
+ // resolve promise so marking remote as loaded
36
+ resolve(window[remote]);
37
+ };
38
+ if (existingRemote) {
39
+ // if existing remote but not loaded, hook into its onload and wait for it to be ready
40
+ existingRemote.onload = onload;
41
+ existingRemote.onerror = reject;
42
+ // check if remote fallback exists as param passed to function
43
+ // TODO: should scan public config for a matching key if no override exists
44
+ }
45
+ else if (remoteFallbackUrl) {
46
+ // inject remote if a fallback exists and call the same onload function
47
+ const d = document;
48
+ const script = d.createElement('script');
49
+ script.type = 'text/javascript';
50
+ // mark as data-webpack so runtime can track it internally
51
+ script.setAttribute('data-webpack', `${remote}`);
52
+ script.async = true;
53
+ script.onerror = reject;
54
+ script.onload = onload;
55
+ script.src = remoteFallbackUrl;
56
+ d.getElementsByTagName('head')[0].appendChild(script);
57
+ }
58
+ else {
59
+ // no remote and no fallback exist, reject
60
+ reject(new Error(`Cannot Find Remote ${remote} to inject`));
61
+ }
62
+ }
63
+ else {
64
+ // remote already instantiated, resolve
65
+ resolve(window[remote]);
66
+ }
67
+ });
68
+ const loadComponent = (remote, sharedScope, module, url) => async () => {
69
+ const container = await getOrLoadRemote(remote, sharedScope, url);
70
+ const factory = await container.get(module);
71
+ return factory();
72
+ };
73
+ class ConfigCustom extends Component {
74
+ constructor(props) {
75
+ super(props);
76
+ // schema.url - location of Widget
77
+ // schema.name - Component name
78
+ // schema.i18n - i18n
79
+ this.state = {
80
+ Component: null,
81
+ error: '',
82
+ };
83
+ }
84
+ // load component dynamically
85
+ async componentDidMount() {
86
+ if (!this.props.schema.url) {
87
+ console.error('URL is empty. Cannot load custom component!');
88
+ this.setState({ error: 'URL is empty. Cannot load custom component!' });
89
+ return;
90
+ }
91
+ let url;
92
+ /*
93
+ if (this.props.schema.url.startsWith('http:') || this.props.schema.url.startsWith('https:')) {
94
+ url = this.props.schema.url;
95
+ } else
96
+ */
97
+ if (this.props.schema.url.startsWith('./')) {
98
+ url = `${window.location.protocol}//${window.location.host}${this.props.schema.url.replace(/^\./, '')}`;
99
+ }
100
+ else {
101
+ url = `${window.location.protocol}//${window.location.host}/adapter/${this.props.adapterName}/${this.props.schema.url}`;
102
+ }
103
+ if (this.props.schema.i18n === true) {
104
+ // load i18n from files
105
+ const pos = url.lastIndexOf('/');
106
+ let i18nURL;
107
+ if (pos !== -1) {
108
+ i18nURL = url.substring(0, pos);
109
+ }
110
+ else {
111
+ i18nURL = url;
112
+ }
113
+ const lang = I18n.getLanguage();
114
+ const file = `${i18nURL}/i18n/${lang}.json`;
115
+ await fetch(file)
116
+ .then(data => data.json())
117
+ .then(json => I18n.extendTranslations(json, lang))
118
+ .catch(error => {
119
+ if (lang !== 'en') {
120
+ // try to load English
121
+ fetch(`${i18nURL}/i18n/en.json`)
122
+ .then(data => data.json())
123
+ .then(json => I18n.extendTranslations(json, lang))
124
+ .catch(err => console.log(`Cannot load i18n "${file}": ${err}`));
125
+ return;
126
+ }
127
+ console.log(`Cannot load i18n "${file}": ${error}`);
128
+ });
129
+ }
130
+ else if (this.props.schema.i18n && typeof this.props.schema.i18n === 'object') {
131
+ try {
132
+ I18n.extendTranslations(this.props.schema.i18n);
133
+ }
134
+ catch (error) {
135
+ console.error(`Cannot import i18n: ${error}`);
136
+ }
137
+ }
138
+ try {
139
+ const [uniqueName, fileToLoad, ...componentName] = this.props.schema.name.split('/');
140
+ console.log(uniqueName, fileToLoad, componentName.join('/'));
141
+ // const component = await window.importFederation(uniqueName, {url, format: 'esm', from: 'vite'}, fileToLoad);
142
+ const component = (await loadComponent(uniqueName, 'default', `./${fileToLoad}`, url)()).default;
143
+ if (!component || !component || !component[componentName.join('/')]) {
144
+ const keys = Object.keys(component || {});
145
+ console.error('URL is empty. Cannot load custom component!');
146
+ this.setState({ error: `Component ${this.props.schema.name} not found in ${this.props.schema.url}. Found: ${keys.join(', ')}` });
147
+ }
148
+ else {
149
+ this.setState({ Component: component[componentName.join('/')] });
150
+ }
151
+ }
152
+ catch (error) {
153
+ this.setState({ error: `Cannot import from ${this.props.schema.url}: ${error}` });
154
+ }
155
+ }
156
+ render() {
157
+ const CustomComponent = this.state.Component;
158
+ // render temporary placeholder
159
+ if (!CustomComponent) {
160
+ if (this.state.error) {
161
+ return null;
162
+ }
163
+ const schema = this.props.schema || {};
164
+ const item = React.createElement(Grid, { item: true, xs: schema.xs || undefined, lg: schema.lg || undefined, md: schema.md || undefined, sm: schema.sm || undefined, style: ({
165
+ marginBottom: 0,
166
+ // marginRight: 8,
167
+ textAlign: 'left',
168
+ width: schema.type === 'divider' || schema.type === 'header' ? schema.width || '100%' : undefined,
169
+ ...schema.style,
170
+ ...(this.props.themeType === 'dark' ? schema.darkStyle : {}),
171
+ }) }, this.state.error ? React.createElement("div", null, this.state.error) : React.createElement(LinearProgress, null));
172
+ if (schema.newLine) {
173
+ return React.createElement(React.Fragment, null,
174
+ React.createElement("div", { style: { flexBasis: '100%', height: 0 } }),
175
+ item);
176
+ }
177
+ return item;
178
+ }
179
+ return React.createElement(CustomComponent, { ...this.props });
180
+ }
181
+ }
182
+ ConfigCustom.propTypes = {
183
+ socket: PropTypes.object,
184
+ themeType: PropTypes.string,
185
+ themeName: PropTypes.string,
186
+ style: PropTypes.object,
187
+ className: PropTypes.string,
188
+ attr: PropTypes.string,
189
+ data: PropTypes.object.isRequired,
190
+ schema: PropTypes.object.isRequired,
191
+ onError: PropTypes.func,
192
+ onChange: PropTypes.func,
193
+ };
194
+ export default ConfigCustom;
195
+ //# sourceMappingURL=ConfigCustom.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConfigCustom.js","sourceRoot":"./src/","sources":["JsonConfigComponent/ConfigCustom.jsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ declare const _default: React.JSXElementConstructor<Omit<Pick<import("./ConfigGeneric").ConfigGenericProps, "data" | "originalData" | "instanceObj" | "customObj" | "schema" | "attr" | "onChange" | "custom" | "forceUpdate" | "alive" | "systemConfig" | "socket" | "changed" | "adapterName" | "instance" | "common" | "onError" | "themeType" | "disabled" | "classes"> & Pick<PropTypes.InferProps<{
2
+ socket: PropTypes.Validator<object>;
3
+ themeType: PropTypes.Requireable<string>;
4
+ themeName: PropTypes.Requireable<string>;
5
+ style: PropTypes.Requireable<object>;
6
+ className: PropTypes.Requireable<string>;
7
+ data: PropTypes.Validator<object>;
8
+ schema: PropTypes.Requireable<object>;
9
+ onError: PropTypes.Requireable<(...args: any[]) => any>;
10
+ onChange: PropTypes.Requireable<(...args: any[]) => any>;
11
+ }>, "className" | "style" | "themeName"> & Pick<import("./ConfigGeneric").ConfigGenericProps, "originalData" | "instanceObj" | "customObj" | "arrayIndex" | "globalData" | "registerOnForceUpdate" | "attr" | "custom" | "forceUpdate" | "alive" | "systemConfig" | "changed" | "adapterName" | "instance" | "common" | "commandRunning" | "disabled" | "classes">, "classes"> & import("@mui/styles").StyledComponentProps<"indeterminate"> & object>;
12
+ export default _default;
13
+ import PropTypes from 'prop-types';
14
+ import React from 'react';