@iobroker/adapter-react-v5 4.0.25 → 4.0.27

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 (175) hide show
  1. package/Components/404.js.map +1 -1
  2. package/Components/ColorPicker.d.ts +2 -2
  3. package/Components/ColorPicker.js +1 -1
  4. package/Components/ColorPicker.js.map +1 -1
  5. package/Components/ComplexCron.js.map +1 -1
  6. package/Components/CustomModal.js.map +1 -1
  7. package/Components/FileBrowser.d.ts +15 -15
  8. package/Components/FileBrowser.js +2 -2
  9. package/Components/FileBrowser.js.map +1 -1
  10. package/Components/FileViewer.d.ts +2 -2
  11. package/Components/FileViewer.js +3 -3
  12. package/Components/FileViewer.js.map +1 -1
  13. package/Components/Icon.d.ts +2 -2
  14. package/Components/Icon.js.map +1 -1
  15. package/Components/IconPicker.d.ts +1 -1
  16. package/Components/IconPicker.js.map +1 -1
  17. package/Components/IconSelector.d.ts +1 -1
  18. package/Components/IconSelector.js.map +1 -1
  19. package/Components/Image.d.ts +3 -3
  20. package/Components/Image.js.map +1 -1
  21. package/Components/JsonConfigComponent/ChipInput.d.ts +1 -1
  22. package/Components/JsonConfigComponent/ChipInput.js.map +1 -1
  23. package/Components/JsonConfigComponent/ConfigAlive.js.map +1 -1
  24. package/Components/JsonConfigComponent/ConfigAutocomplete.js.map +1 -1
  25. package/Components/JsonConfigComponent/ConfigAutocompleteSendTo.js.map +1 -1
  26. package/Components/JsonConfigComponent/ConfigCRON.js.map +1 -1
  27. package/Components/JsonConfigComponent/ConfigCertCollection.js.map +1 -1
  28. package/Components/JsonConfigComponent/ConfigCertificateSelect.js.map +1 -1
  29. package/Components/JsonConfigComponent/ConfigCertificates.js.map +1 -1
  30. package/Components/JsonConfigComponent/ConfigCheckLicense.js.map +1 -1
  31. package/Components/JsonConfigComponent/ConfigCheckbox.js.map +1 -1
  32. package/Components/JsonConfigComponent/ConfigChip.js.map +1 -1
  33. package/Components/JsonConfigComponent/ConfigColor.js.map +1 -1
  34. package/Components/JsonConfigComponent/ConfigCoordinates.js.map +1 -1
  35. package/Components/JsonConfigComponent/ConfigCustom.d.ts +1 -1
  36. package/Components/JsonConfigComponent/ConfigCustom.js.map +1 -1
  37. package/Components/JsonConfigComponent/ConfigDatePicker.js.map +1 -1
  38. package/Components/JsonConfigComponent/ConfigFile.js.map +1 -1
  39. package/Components/JsonConfigComponent/ConfigFileSelector.js.map +1 -1
  40. package/Components/JsonConfigComponent/ConfigFunc.js.map +1 -1
  41. package/Components/JsonConfigComponent/ConfigGeneric.d.ts +2 -2
  42. package/Components/JsonConfigComponent/ConfigGeneric.js.map +1 -1
  43. package/Components/JsonConfigComponent/ConfigIP.js.map +1 -1
  44. package/Components/JsonConfigComponent/ConfigImageSendTo.d.ts +10 -0
  45. package/Components/JsonConfigComponent/ConfigImageSendTo.js +114 -0
  46. package/Components/JsonConfigComponent/ConfigImageSendTo.js.map +1 -0
  47. package/Components/JsonConfigComponent/ConfigImageUpload.js.map +1 -1
  48. package/Components/JsonConfigComponent/ConfigInstanceSelect.js.map +1 -1
  49. package/Components/JsonConfigComponent/ConfigJsonEditor.js.map +1 -1
  50. package/Components/JsonConfigComponent/ConfigLanguage.js.map +1 -1
  51. package/Components/JsonConfigComponent/ConfigNumber.js.map +1 -1
  52. package/Components/JsonConfigComponent/ConfigObjectId.js +4 -2
  53. package/Components/JsonConfigComponent/ConfigObjectId.js.map +1 -1
  54. package/Components/JsonConfigComponent/ConfigPanel.js +2 -0
  55. package/Components/JsonConfigComponent/ConfigPanel.js.map +1 -1
  56. package/Components/JsonConfigComponent/ConfigPassword.js.map +1 -1
  57. package/Components/JsonConfigComponent/ConfigPattern.js.map +1 -1
  58. package/Components/JsonConfigComponent/ConfigPort.js.map +1 -1
  59. package/Components/JsonConfigComponent/ConfigRoom.js.map +1 -1
  60. package/Components/JsonConfigComponent/ConfigSelect.js.map +1 -1
  61. package/Components/JsonConfigComponent/ConfigSelectSendTo.js.map +1 -1
  62. package/Components/JsonConfigComponent/ConfigSendto.js.map +1 -1
  63. package/Components/JsonConfigComponent/ConfigSetState.js.map +1 -1
  64. package/Components/JsonConfigComponent/ConfigSlider.js.map +1 -1
  65. package/Components/JsonConfigComponent/ConfigStaticDivider.js.map +1 -1
  66. package/Components/JsonConfigComponent/ConfigStaticHeader.js.map +1 -1
  67. package/Components/JsonConfigComponent/ConfigStaticImage.js.map +1 -1
  68. package/Components/JsonConfigComponent/ConfigStaticText.js.map +1 -1
  69. package/Components/JsonConfigComponent/ConfigTable.js.map +1 -1
  70. package/Components/JsonConfigComponent/ConfigTabs.js.map +1 -1
  71. package/Components/JsonConfigComponent/ConfigText.js.map +1 -1
  72. package/Components/JsonConfigComponent/ConfigTextSendTo.js.map +1 -1
  73. package/Components/JsonConfigComponent/ConfigTimePicker.js.map +1 -1
  74. package/Components/JsonConfigComponent/ConfigTopic.js.map +1 -1
  75. package/Components/JsonConfigComponent/ConfigUUID.d.ts +2 -1
  76. package/Components/JsonConfigComponent/ConfigUUID.js.map +1 -1
  77. package/Components/JsonConfigComponent/ConfigUser.js.map +1 -1
  78. package/Components/JsonConfigComponent/index.js.map +1 -1
  79. package/Components/Loader.d.ts +1 -1
  80. package/Components/Loader.js.map +1 -1
  81. package/Components/Loaders/PT.d.ts +1 -1
  82. package/Components/Loaders/PT.js.map +1 -1
  83. package/Components/Loaders/Vendor.d.ts +1 -1
  84. package/Components/Loaders/Vendor.js.map +1 -1
  85. package/Components/Logo.d.ts +1 -1
  86. package/Components/Logo.js.map +1 -1
  87. package/Components/MDUtils.js.map +1 -1
  88. package/Components/ObjectBrowser.d.ts +7 -5
  89. package/Components/ObjectBrowser.js +36 -16
  90. package/Components/ObjectBrowser.js.map +1 -1
  91. package/Components/Router.js.map +1 -1
  92. package/Components/SaveCloseButtons.d.ts +1 -1
  93. package/Components/SaveCloseButtons.js.map +1 -1
  94. package/Components/Schedule.js.map +1 -1
  95. package/Components/SelectWithIcon.js.map +1 -1
  96. package/Components/SimpleCron/cron2text.js.map +1 -1
  97. package/Components/SimpleCron/index.js.map +1 -1
  98. package/Components/TabContainer.d.ts +1 -1
  99. package/Components/TabContainer.js.map +1 -1
  100. package/Components/TabContent.d.ts +1 -1
  101. package/Components/TabContent.js.map +1 -1
  102. package/Components/TabHeader.d.ts +1 -1
  103. package/Components/TabHeader.js.map +1 -1
  104. package/Components/TableResize.js.map +1 -1
  105. package/Components/TextWithIcon.js.map +1 -1
  106. package/Components/ToggleThemeMenu.d.ts +2 -1
  107. package/Components/ToggleThemeMenu.js.map +1 -1
  108. package/Components/TreeTable.js.map +1 -1
  109. package/Components/UploadImage.js.map +1 -1
  110. package/Components/Utils.js.map +1 -1
  111. package/Components/copy-to-clipboard.js.map +1 -1
  112. package/Components/withWidth.d.ts +1 -1
  113. package/Components/withWidth.js.map +1 -1
  114. package/Dialogs/ComplexCron.js.map +1 -1
  115. package/Dialogs/Confirm.js +7 -4
  116. package/Dialogs/Confirm.js.map +1 -1
  117. package/Dialogs/Cron.js.map +1 -1
  118. package/Dialogs/Error.d.ts +1 -1
  119. package/Dialogs/Error.js +3 -2
  120. package/Dialogs/Error.js.map +1 -1
  121. package/Dialogs/Message.d.ts +1 -1
  122. package/Dialogs/Message.js +5 -4
  123. package/Dialogs/Message.js.map +1 -1
  124. package/Dialogs/SelectFile.d.ts +1 -1
  125. package/Dialogs/SelectFile.js +2 -2
  126. package/Dialogs/SelectFile.js.map +1 -1
  127. package/Dialogs/SelectID.d.ts +2 -1
  128. package/Dialogs/SelectID.js +7 -2
  129. package/Dialogs/SelectID.js.map +1 -1
  130. package/Dialogs/SimpleCron.js.map +1 -1
  131. package/Dialogs/TextInput.d.ts +1 -1
  132. package/Dialogs/TextInput.js.map +1 -1
  133. package/GenericApp.d.ts +2 -1
  134. package/GenericApp.js.map +1 -1
  135. package/LegacyConnection.js.map +1 -1
  136. package/README.md +6 -0
  137. package/Theme.js.map +1 -1
  138. package/assets/devices/Irrigation.svg +19 -38
  139. package/i18n.js.map +1 -1
  140. package/icons/IconAdapter.d.ts +2 -1
  141. package/icons/IconAdapter.js.map +1 -1
  142. package/icons/IconAlias.d.ts +2 -1
  143. package/icons/IconAlias.js.map +1 -1
  144. package/icons/IconChannel.d.ts +2 -1
  145. package/icons/IconChannel.js +0 -4
  146. package/icons/IconChannel.js.map +1 -1
  147. package/icons/IconClearFilter.d.ts +2 -1
  148. package/icons/IconClearFilter.js.map +1 -1
  149. package/icons/IconClosed.d.ts +2 -1
  150. package/icons/IconClosed.js.map +1 -1
  151. package/icons/IconCopy.d.ts +2 -1
  152. package/icons/IconCopy.js.map +1 -1
  153. package/icons/IconDevice.d.ts +2 -1
  154. package/icons/IconDevice.js +0 -7
  155. package/icons/IconDevice.js.map +1 -1
  156. package/icons/IconDocument.d.ts +2 -1
  157. package/icons/IconDocument.js.map +1 -1
  158. package/icons/IconDocumentReadOnly.d.ts +2 -1
  159. package/icons/IconDocumentReadOnly.js.map +1 -1
  160. package/icons/IconExpert.d.ts +2 -1
  161. package/icons/IconExpert.js.map +1 -1
  162. package/icons/IconFx.d.ts +2 -1
  163. package/icons/IconFx.js.map +1 -1
  164. package/icons/IconInstance.d.ts +2 -1
  165. package/icons/IconInstance.js.map +1 -1
  166. package/icons/IconLogout.d.ts +2 -1
  167. package/icons/IconLogout.js.map +1 -1
  168. package/icons/IconNoIcon.d.ts +2 -1
  169. package/icons/IconNoIcon.js.map +1 -1
  170. package/icons/IconOpen.d.ts +2 -1
  171. package/icons/IconOpen.js.map +1 -1
  172. package/icons/IconState.d.ts +2 -1
  173. package/icons/IconState.js +5 -8
  174. package/icons/IconState.js.map +1 -1
  175. package/package.json +8 -8
@@ -1 +1 @@
1
- {"version":3,"file":"MDUtils.js","names":["_react","_interopRequireDefault","require","_copyToClipboard","MDUtils","_classCallCheck2","_createClass2","key","value","text2link","text","m","match","replace","trim","toLowerCase","openLink","url","target","window","location","open","getTitle","_MDUtils$extractHeade","extractHeader","body","header","title","lines","split","i","length","startsWith","substring","attrs","pos","indexOf","_header","forEach","line","attr","parseFloat","toString","removeDocsify","doc","onCopy","e","copy","stopPropagation","preventDefault","_default","exports"],"sources":["MDUtils.js"],"sourcesContent":["/**\n * Copyright 2018-2022 bluefox <dogafox@gmail.com>\n *\n * MIT License\n *\n **/\nimport React from 'react';\nimport copy from './copy-to-clipboard';\n\nclass MDUtils {\n static text2link(text) {\n const m = text.match(/\\d+\\.\\)\\s/);\n if (m) {\n text = text.replace(m[0], m[0].replace(/\\s/, '&nbsp;'));\n }\n\n return text.replace(/[^a-zA-Zа-яА-Я0-9]/g, '').trim().replace(/\\s/g, '').toLowerCase();\n }\n\n static openLink(url, target) {\n if (target === 'this') {\n window.location = url;\n } else {\n window.open(url, target || '_blank');\n }\n }\n\n static getTitle(text) {\n let {body, header} = MDUtils.extractHeader(text);\n if (!header.title) {\n // remove {docsify-bla}\n body = body.replace(/{[^}]*}/g, '');\n body = body.trim();\n const lines = body.replace(/\\r/g, '').split('\\n');\n for (let i = 0; i < lines.length; i++) {\n if (lines[i].startsWith('# ')) {\n return lines[i].substring(2).trim();\n }\n }\n return '';\n } else {\n return header.title;\n }\n }\n\n static extractHeader(text) {\n const attrs = {};\n if (text.substring(0, 3) === '---') {\n const pos = text.substring(3).indexOf('\\n---');\n if (pos !== -1) {\n const _header = text.substring(3, pos + 3);\n const lines = _header.replace(/\\r/g, '').split('\\n');\n lines.forEach(line => {\n if (!line.trim()) {\n return;\n }\n const pos = line.indexOf(':');\n if (pos !== -1) {\n const attr = line.substring(0, pos).trim();\n attrs[attr] = line.substring(pos + 1).trim();\n attrs[attr] = attrs[attr].replace(/^['\"]|['\"]$/g, '');\n if (attrs[attr] === 'true') {\n attrs[attr] = true;\n } else if (attrs[attr] === 'false') {\n attrs[attr] = false;\n } else if (parseFloat(attrs[attr]).toString() === attrs[attr]) {\n attrs[attr] = parseFloat(attrs[attr]);\n }\n } else {\n attrs[line.trim()] = true;\n }\n });\n text = text.substring(pos + 7);\n }\n }\n return {header: attrs, body: text};\n }\n\n static removeDocsify(text) {\n const m = text.match(/{docsify-[^}]*}/g);\n if (m) {\n m.forEach(doc => text = text.replace(doc, ''));\n }\n return text;\n }\n\n static onCopy(e, text) {\n copy(text);\n e && e.stopPropagation();\n e && e.preventDefault();\n }\n}\n\nexport default MDUtils;"],"mappings":"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"}
1
+ {"version":3,"file":"MDUtils.js","names":["_react","_interopRequireDefault","require","_copyToClipboard","MDUtils","_classCallCheck2","_createClass2","key","value","text2link","text","m","match","replace","trim","toLowerCase","openLink","url","target","window","location","open","getTitle","_MDUtils$extractHeade","extractHeader","body","header","title","lines","split","i","length","startsWith","substring","attrs","pos","indexOf","_header","forEach","line","attr","parseFloat","toString","removeDocsify","doc","onCopy","e","copy","stopPropagation","preventDefault","_default","exports"],"sources":["MDUtils.js"],"sourcesContent":["/**\n * Copyright 2018-2022 bluefox <dogafox@gmail.com>\n *\n * MIT License\n *\n **/\nimport React from 'react';\nimport copy from './copy-to-clipboard';\n\nclass MDUtils {\n static text2link(text) {\n const m = text.match(/\\d+\\.\\)\\s/);\n if (m) {\n text = text.replace(m[0], m[0].replace(/\\s/, '&nbsp;'));\n }\n\n return text.replace(/[^a-zA-Zа-яА-Я0-9]/g, '').trim().replace(/\\s/g, '').toLowerCase();\n }\n\n static openLink(url, target) {\n if (target === 'this') {\n window.location = url;\n } else {\n window.open(url, target || '_blank');\n }\n }\n\n static getTitle(text) {\n let {body, header} = MDUtils.extractHeader(text);\n if (!header.title) {\n // remove {docsify-bla}\n body = body.replace(/{[^}]*}/g, '');\n body = body.trim();\n const lines = body.replace(/\\r/g, '').split('\\n');\n for (let i = 0; i < lines.length; i++) {\n if (lines[i].startsWith('# ')) {\n return lines[i].substring(2).trim();\n }\n }\n return '';\n } else {\n return header.title;\n }\n }\n\n static extractHeader(text) {\n const attrs = {};\n if (text.substring(0, 3) === '---') {\n const pos = text.substring(3).indexOf('\\n---');\n if (pos !== -1) {\n const _header = text.substring(3, pos + 3);\n const lines = _header.replace(/\\r/g, '').split('\\n');\n lines.forEach(line => {\n if (!line.trim()) {\n return;\n }\n const pos = line.indexOf(':');\n if (pos !== -1) {\n const attr = line.substring(0, pos).trim();\n attrs[attr] = line.substring(pos + 1).trim();\n attrs[attr] = attrs[attr].replace(/^['\"]|['\"]$/g, '');\n if (attrs[attr] === 'true') {\n attrs[attr] = true;\n } else if (attrs[attr] === 'false') {\n attrs[attr] = false;\n } else if (parseFloat(attrs[attr]).toString() === attrs[attr]) {\n attrs[attr] = parseFloat(attrs[attr]);\n }\n } else {\n attrs[line.trim()] = true;\n }\n });\n text = text.substring(pos + 7);\n }\n }\n return {header: attrs, body: text};\n }\n\n static removeDocsify(text) {\n const m = text.match(/{docsify-[^}]*}/g);\n if (m) {\n m.forEach(doc => text = text.replace(doc, ''));\n }\n return text;\n }\n\n static onCopy(e, text) {\n copy(text);\n e && e.stopPropagation();\n e && e.preventDefault();\n }\n}\n\nexport default MDUtils;"],"mappings":"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"}
@@ -107,6 +107,7 @@ declare class ObjectBrowser extends React.Component<import("./types").ObjectBrow
107
107
  filter_room: string;
108
108
  filter_func: string;
109
109
  filter_custom: string;
110
+ filterCustomsWithout: string;
110
111
  objectChangedByUser: string;
111
112
  objectChangedBy: string;
112
113
  objectChangedFrom: string;
@@ -144,7 +145,7 @@ declare class ObjectBrowser extends React.Component<import("./types").ObjectBrow
144
145
  ids: any[];
145
146
  types: any[];
146
147
  objects: any;
147
- customs: any[];
148
+ customs: string[];
148
149
  enums: any[];
149
150
  hasSomeCustoms: boolean;
150
151
  };
@@ -339,13 +340,13 @@ declare class ObjectBrowser extends React.Component<import("./types").ObjectBrow
339
340
  private loadObjects;
340
341
  _getSelectedIdsForExport(): string[];
341
342
  _exportObjects(isAll: any): void;
342
- renderExportDialog(): JSX.Element;
343
+ renderExportDialog(): React.JSX.Element;
343
344
  /**
344
345
  * @private
345
346
  * @param {object} evt
346
347
  */
347
348
  private handleJsonUpload;
348
- toolTipObjectCreating: () => string | JSX.Element[];
349
+ toolTipObjectCreating: () => string | React.JSX.Element[];
349
350
  /**
350
351
  * Renders the toolbar.
351
352
  * @returns {JSX.Element}
@@ -362,7 +363,7 @@ declare class ObjectBrowser extends React.Component<import("./types").ObjectBrow
362
363
  * @param {string} text
363
364
  */
364
365
  private onCopy;
365
- renderTooltipAccessControl: (acl: any) => "" | JSX.Element;
366
+ renderTooltipAccessControl: (acl: any) => "" | React.JSX.Element;
366
367
  /**
367
368
  * @param {string} id
368
369
  * @param {{ data: { obj: { type: string; }; hasCustoms: any; }; }} item
@@ -380,7 +381,7 @@ declare class ObjectBrowser extends React.Component<import("./types").ObjectBrow
380
381
  cellButtonsButtonAlone: any;
381
382
  cellButtonsButtonIcon: string | undefined;
382
383
  cellButtonsButtonWithCustoms: any;
383
- }): JSX.Element | JSX.Element[];
384
+ }): React.JSX.Element | React.JSX.Element[];
384
385
  /**
385
386
  * @private
386
387
  * @param {string} id
@@ -619,6 +620,7 @@ declare namespace ObjectBrowser {
619
620
  export const router: PropTypes.Requireable<object>;
620
621
  export const types: PropTypes.Requireable<any[]>;
621
622
  export const columns: PropTypes.Requireable<any[]>;
623
+ export const root: PropTypes.Requireable<string>;
622
624
  export const objectsWorker: PropTypes.Requireable<object>;
623
625
  export const filterFunc: PropTypes.Requireable<(...args: any[]) => any>;
624
626
  export const dragSettings: PropTypes.Requireable<object>;
@@ -100,7 +100,7 @@ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (O
100
100
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
101
101
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
102
102
  function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } } /**
103
- * Copyright 2020-2022, bluefox <dogafox@gmail.com>
103
+ * Copyright 2020-2023, bluefox <dogafox@gmail.com>
104
104
  *
105
105
  * MIT License
106
106
  *
@@ -915,7 +915,7 @@ function applyFilter(item, filters, lang, objects, context, counter, customFilte
915
915
  var _data$obj;
916
916
  var common = (_data$obj = data.obj) === null || _data$obj === void 0 ? void 0 : _data$obj.common;
917
917
  if (customFilter) {
918
- var _customFilter$common, _customFilter$common2, _customFilter$common3;
918
+ var _customFilter$common, _customFilter$common2, _customFilter$common3, _customFilter$common4, _customFilter$common5;
919
919
  if (customFilter.type) {
920
920
  if (typeof customFilter.type === 'string') {
921
921
  if (!data.obj || customFilter.type !== data.obj.type) {
@@ -955,7 +955,10 @@ function applyFilter(item, filters, lang, objects, context, counter, customFilte
955
955
  }
956
956
  }
957
957
  }
958
- if (!filteredOut && (_customFilter$common3 = customFilter.common) !== null && _customFilter$common3 !== void 0 && _customFilter$common3.custom) {
958
+ if (!filteredOut && ((_customFilter$common3 = customFilter.common) === null || _customFilter$common3 === void 0 ? void 0 : _customFilter$common3.custom) === '_' && common !== null && common !== void 0 && common.custom) {
959
+ filteredOut = true;
960
+ }
961
+ if (!filteredOut && (_customFilter$common4 = customFilter.common) !== null && _customFilter$common4 !== void 0 && _customFilter$common4.custom && ((_customFilter$common5 = customFilter.common) === null || _customFilter$common5 === void 0 ? void 0 : _customFilter$common5.custom) !== '_') {
959
962
  if (!(common !== null && common !== void 0 && common.custom)) {
960
963
  filteredOut = true;
961
964
  } else if (customFilter.common.custom === '_dataSources') {
@@ -1019,7 +1022,11 @@ function applyFilter(item, filters, lang, objects, context, counter, customFilte
1019
1022
  }
1020
1023
  if (!filteredOut && context.custom) {
1021
1024
  if (common) {
1022
- filteredOut = !common.custom || !common.custom[context.custom];
1025
+ if (context.custom === '_') {
1026
+ filteredOut = !!common.custom;
1027
+ } else {
1028
+ filteredOut = !common.custom || !common.custom[context.custom];
1029
+ }
1023
1030
  } else {
1024
1031
  filteredOut = true;
1025
1032
  }
@@ -1153,12 +1160,21 @@ function buildTree(objects, options) {
1153
1160
  var imagePrefix = options.imagePrefix || '.';
1154
1161
  var ids = Object.keys(objects);
1155
1162
  ids.sort(function (a, b) {
1156
- if (a === b) return 0;
1163
+ if (a === b) {
1164
+ return 0;
1165
+ }
1157
1166
  a = a.replace(/\./g, '!!!');
1158
1167
  b = b.replace(/\./g, '!!!');
1159
- if (a > b) return 1;
1168
+ if (a > b) {
1169
+ return 1;
1170
+ }
1160
1171
  return -1;
1161
1172
  });
1173
+ if (options.root) {
1174
+ ids = ids.filter(function (id) {
1175
+ return id === options.root || id.startsWith("".concat(options.root, "."));
1176
+ });
1177
+ }
1162
1178
 
1163
1179
  // find empty nodes and create names for it
1164
1180
  var currentPathArr = [];
@@ -1178,7 +1194,7 @@ function buildTree(objects, options) {
1178
1194
  ids: [],
1179
1195
  types: [],
1180
1196
  objects: objects,
1181
- customs: [],
1197
+ customs: ['_'],
1182
1198
  enums: [],
1183
1199
  hasSomeCustoms: false
1184
1200
  };
@@ -2580,6 +2596,8 @@ var ObjectBrowser = /*#__PURE__*/function (_Component) {
2580
2596
  filter_func: props.t('ra_filter_func'),
2581
2597
  filter_custom: props.t('ra_filter_customs'),
2582
2598
  //
2599
+ filterCustomsWithout: props.t('ra_filter_customs_without'),
2600
+ //
2583
2601
  objectChangedByUser: props.t('ra_object_changed_by_user'),
2584
2602
  // Object last changed at
2585
2603
  objectChangedBy: props.t('ra_object_changed_by'),
@@ -3113,7 +3131,7 @@ var ObjectBrowser = /*#__PURE__*/function (_Component) {
3113
3131
  onClick: function onClick() {
3114
3132
  if (!_this10.state.columnsAuto) {
3115
3133
  var columns = (0, _toConsumableArray2["default"])(_this10.state.columns || []);
3116
- var id = '_' + adapter + '_' + column.path;
3134
+ var id = "_".concat(adapter, "_").concat(column.path);
3117
3135
  var pos = columns.indexOf(id);
3118
3136
  if (pos === -1) {
3119
3137
  columns.push(id);
@@ -3122,20 +3140,20 @@ var ObjectBrowser = /*#__PURE__*/function (_Component) {
3122
3140
  columns.splice(pos, 1);
3123
3141
  }
3124
3142
  _this10.calculateColumnsVisibility(null, columns);
3125
- (window._localStorage || window.localStorage).setItem((_this10.props.dialogName || 'App') + '.columns', JSON.stringify(columns));
3143
+ (window._localStorage || window.localStorage).setItem("".concat(_this10.props.dialogName || 'App', ".columns"), JSON.stringify(columns));
3126
3144
  _this10.setState({
3127
3145
  columns: columns
3128
3146
  });
3129
3147
  }
3130
3148
  },
3131
- key: adapter + '_' + column.name
3149
+ key: "".concat(adapter, "_").concat(column.name)
3132
3150
  }, /*#__PURE__*/_react["default"].createElement(_ListItemIcon["default"], null, /*#__PURE__*/_react["default"].createElement(_Checkbox["default"], {
3133
3151
  disabled: _this10.state.columnsAuto,
3134
3152
  edge: "start",
3135
- checked: !_this10.state.columnsAuto && _this10.state.columns && _this10.state.columns.includes('_' + adapter + '_' + column.path),
3153
+ checked: !_this10.state.columnsAuto && _this10.state.columns && _this10.state.columns.includes("_".concat(adapter, "_").concat(column.path)),
3136
3154
  disableRipple: true
3137
3155
  })), /*#__PURE__*/_react["default"].createElement(_ListItemText["default"], {
3138
- primary: column.name + ' (' + adapter + ')'
3156
+ primary: "".concat(column.name, " (").concat(adapter, ")")
3139
3157
  }));
3140
3158
  });
3141
3159
  }), this._renderDefinedList(true))), /*#__PURE__*/_react["default"].createElement(_DialogActions["default"], null, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
@@ -3620,12 +3638,12 @@ var ObjectBrowser = /*#__PURE__*/function (_Component) {
3620
3638
  key: "getFilterSelectCustoms",
3621
3639
  value: function getFilterSelectCustoms() {
3622
3640
  var _this21 = this;
3623
- if (this.info.customs.length) {
3641
+ if (this.info.customs.length > 1) {
3624
3642
  var customs = this.info.customs.map(function (id) {
3625
3643
  return {
3626
- name: id,
3644
+ name: id === '_' ? _this21.texts.filterCustomsWithout : id,
3627
3645
  value: id,
3628
- icon: /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
3646
+ icon: id === '_' ? null : /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
3629
3647
  src: getSelectIdIcon(_this21.objects, id, _this21.imagePrefix) || '',
3630
3648
  className: _this21.props.classes.selectIcon
3631
3649
  })
@@ -4189,7 +4207,7 @@ var ObjectBrowser = /*#__PURE__*/function (_Component) {
4189
4207
  size: "large"
4190
4208
  }, /*#__PURE__*/_react["default"].createElement("div", {
4191
4209
  className: classes.aclText
4192
- }, Number.isNaN(Number(acl).toString(16)) ? Number(aclSystemConfig).toString(16) : Number(acl).toString(16)))) : /*#__PURE__*/_react["default"].createElement("div", {
4210
+ }, Number.isNaN(Number(acl)) ? Number(aclSystemConfig).toString(16) : Number(acl).toString(16)))) : /*#__PURE__*/_react["default"].createElement("div", {
4193
4211
  key: "aclEmpty",
4194
4212
  className: classes.cellButtonMinWidth
4195
4213
  }), /*#__PURE__*/_react["default"].createElement(_IconButton["default"], {
@@ -6104,6 +6122,8 @@ ObjectBrowser.propTypes = {
6104
6122
  // optional ['state', 'instance', 'channel']
6105
6123
  columns: _propTypes["default"].array,
6106
6124
  // optional ['name', 'type', 'role', 'room', 'func', 'val', 'buttons']
6125
+ root: _propTypes["default"].string,
6126
+ // optional, shows only elements of this root
6107
6127
 
6108
6128
  objectsWorker: _propTypes["default"].object,
6109
6129
  // optional cache of objects