@iobroker/adapter-react-v5 3.1.34 → 3.1.35
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.
- package/Components/404.js +0 -23
- package/Components/404.js.map +1 -1
- package/Components/ColorPicker.js +6 -37
- package/Components/ColorPicker.js.map +1 -1
- package/Components/ComplexCron.js +10 -84
- package/Components/ComplexCron.js.map +1 -1
- package/Components/CustomModal.js +29 -54
- package/Components/CustomModal.js.map +1 -1
- package/Components/FileBrowser.js +15 -265
- package/Components/FileBrowser.js.map +1 -1
- package/Components/FileViewer.js +7 -68
- package/Components/FileViewer.js.map +1 -1
- package/Components/Icon.d.ts +1 -1
- package/Components/Icon.js +2 -42
- package/Components/Icon.js.map +1 -1
- package/Components/IconPicker.js +6 -28
- package/Components/IconPicker.js.map +1 -1
- package/Components/IconSelector.js +3 -55
- package/Components/IconSelector.js.map +1 -1
- package/Components/Image.js +1 -38
- package/Components/Image.js.map +1 -1
- package/Components/JsonConfigComponent/ChipInput.js +66 -197
- package/Components/JsonConfigComponent/ChipInput.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigAlive.js +0 -31
- package/Components/JsonConfigComponent/ConfigAlive.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigAutocomplete.js +6 -39
- package/Components/JsonConfigComponent/ConfigAutocomplete.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigAutocompleteSendTo.js +6 -52
- package/Components/JsonConfigComponent/ConfigAutocompleteSendTo.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigCRON.js +5 -39
- package/Components/JsonConfigComponent/ConfigCRON.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigCertificateSelect.js +4 -42
- package/Components/JsonConfigComponent/ConfigCertificateSelect.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigCheckbox.js +0 -28
- package/Components/JsonConfigComponent/ConfigCheckbox.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigChip.js +4 -33
- package/Components/JsonConfigComponent/ConfigChip.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigColor.js +0 -34
- package/Components/JsonConfigComponent/ConfigColor.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigCoordinates.js +0 -33
- package/Components/JsonConfigComponent/ConfigCoordinates.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigCustom.js +14 -73
- package/Components/JsonConfigComponent/ConfigCustom.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigDatePicker.js +0 -25
- package/Components/JsonConfigComponent/ConfigDatePicker.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigFile.js +0 -46
- package/Components/JsonConfigComponent/ConfigFile.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigFileSelector.js +7 -126
- package/Components/JsonConfigComponent/ConfigFileSelector.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigFunc.js +0 -34
- package/Components/JsonConfigComponent/ConfigFunc.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigGeneric.js +15 -110
- package/Components/JsonConfigComponent/ConfigGeneric.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigIP.js +2 -35
- package/Components/JsonConfigComponent/ConfigIP.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigImageUpload.js +4 -44
- package/Components/JsonConfigComponent/ConfigImageUpload.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigInstanceSelect.js +1 -59
- package/Components/JsonConfigComponent/ConfigInstanceSelect.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigJsonEditor.js +7 -40
- package/Components/JsonConfigComponent/ConfigJsonEditor.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigLanguage.js +2 -42
- package/Components/JsonConfigComponent/ConfigLanguage.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigNumber.js +2 -45
- package/Components/JsonConfigComponent/ConfigNumber.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigObjectId.js +6 -40
- package/Components/JsonConfigComponent/ConfigObjectId.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigPanel.js +7 -91
- package/Components/JsonConfigComponent/ConfigPanel.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigPassword.js +0 -42
- package/Components/JsonConfigComponent/ConfigPassword.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigPattern.js +0 -25
- package/Components/JsonConfigComponent/ConfigPattern.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigRoom.js +0 -34
- package/Components/JsonConfigComponent/ConfigRoom.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigSelect.js +4 -34
- package/Components/JsonConfigComponent/ConfigSelect.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigSelectSendTo.js +11 -67
- package/Components/JsonConfigComponent/ConfigSelectSendTo.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigSendto.js +8 -91
- package/Components/JsonConfigComponent/ConfigSendto.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigSetState.js +0 -55
- package/Components/JsonConfigComponent/ConfigSetState.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigSlider.js +0 -28
- package/Components/JsonConfigComponent/ConfigSlider.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigStaticDivider.js +0 -21
- package/Components/JsonConfigComponent/ConfigStaticDivider.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigStaticHeader.js +0 -24
- package/Components/JsonConfigComponent/ConfigStaticHeader.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigStaticImage.js +0 -23
- package/Components/JsonConfigComponent/ConfigStaticImage.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigStaticText.js +0 -31
- package/Components/JsonConfigComponent/ConfigStaticText.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigTable.js +13 -105
- package/Components/JsonConfigComponent/ConfigTable.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigTabs.js +2 -35
- package/Components/JsonConfigComponent/ConfigTabs.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigText.js +0 -34
- package/Components/JsonConfigComponent/ConfigText.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigTextSendTo.js +0 -37
- package/Components/JsonConfigComponent/ConfigTextSendTo.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigTimePicker.js +0 -25
- package/Components/JsonConfigComponent/ConfigTimePicker.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigTopic.js +0 -29
- package/Components/JsonConfigComponent/ConfigTopic.js.map +1 -1
- package/Components/JsonConfigComponent/ConfigUser.js +2 -40
- package/Components/JsonConfigComponent/ConfigUser.js.map +1 -1
- package/Components/JsonConfigComponent/index.js +5 -81
- package/Components/JsonConfigComponent/index.js.map +1 -1
- package/Components/Loader.js +2 -20
- package/Components/Loader.js.map +1 -1
- package/Components/Loaders/PT.js +2 -20
- package/Components/Loaders/PT.js.map +1 -1
- package/Components/Loaders/Vendor.js +2 -21
- package/Components/Loaders/Vendor.js.map +1 -1
- package/Components/Logo.js +6 -39
- package/Components/Logo.js.map +1 -1
- package/Components/MDUtils.js +3 -27
- package/Components/MDUtils.js.map +1 -1
- package/Components/ObjectBrowser.d.ts +1 -1
- package/Components/ObjectBrowser.js +181 -788
- package/Components/ObjectBrowser.js.map +1 -1
- package/Components/Router.js +7 -31
- package/Components/Router.js.map +1 -1
- package/Components/SaveCloseButtons.js +2 -32
- package/Components/SaveCloseButtons.js.map +1 -1
- package/Components/Schedule.js +29 -251
- package/Components/Schedule.js.map +1 -1
- package/Components/SelectWithIcon.d.ts +1 -1
- package/Components/SelectWithIcon.js +0 -48
- package/Components/SelectWithIcon.js.map +1 -1
- package/Components/SimpleCron/cron2text.js +45 -91
- package/Components/SimpleCron/cron2text.js.map +1 -1
- package/Components/SimpleCron/cronText.js +0 -6
- package/Components/SimpleCron/cronText.js.map +1 -1
- package/Components/SimpleCron/index.js +19 -102
- package/Components/SimpleCron/index.js.map +1 -1
- package/Components/SimpleCron/jquery.cron.locale.js +44 -24
- package/Components/SimpleCron/jquery.cron.locale.js.map +1 -1
- package/Components/TabContainer.js +2 -23
- package/Components/TabContainer.js.map +1 -1
- package/Components/TabContent.js +2 -22
- package/Components/TabContent.js.map +1 -1
- package/Components/TabHeader.js +1 -17
- package/Components/TabHeader.js.map +1 -1
- package/Components/TableResize.js +6 -51
- package/Components/TableResize.js.map +1 -1
- package/Components/TextWithIcon.js +0 -20
- package/Components/TextWithIcon.js.map +1 -1
- package/Components/ToggleThemeMenu.js +5 -13
- package/Components/ToggleThemeMenu.js.map +1 -1
- package/Components/TreeTable.js +4 -121
- package/Components/TreeTable.js.map +1 -1
- package/Components/UploadImage.js +17 -60
- package/Components/UploadImage.js.map +1 -1
- package/Components/Utils.js +87 -263
- package/Components/Utils.js.map +1 -1
- package/Components/copy-to-clipboard.js +16 -38
- package/Components/copy-to-clipboard.js.map +1 -1
- package/Components/withWidth.js +2 -10
- package/Components/withWidth.js.map +1 -1
- package/Connection.d.ts +1 -0
- package/Connection.js +156 -527
- package/Connection.js.map +1 -1
- package/Dialogs/ComplexCron.js +0 -34
- package/Dialogs/ComplexCron.js.map +1 -1
- package/Dialogs/Confirm.js +1 -39
- package/Dialogs/Confirm.js.map +1 -1
- package/Dialogs/Cron.js +1 -37
- package/Dialogs/Cron.js.map +1 -1
- package/Dialogs/Error.d.ts +1 -1
- package/Dialogs/Error.js +2 -29
- package/Dialogs/Error.js.map +1 -1
- package/Dialogs/FileSelect.js +2 -36
- package/Dialogs/FileSelect.js.map +1 -1
- package/Dialogs/Message.js +2 -27
- package/Dialogs/Message.js.map +1 -1
- package/Dialogs/SelectID.d.ts +1 -1
- package/Dialogs/SelectID.js +3 -40
- package/Dialogs/SelectID.js.map +1 -1
- package/Dialogs/SimpleCron.js +1 -33
- package/Dialogs/SimpleCron.js.map +1 -1
- package/Dialogs/TextInput.js +2 -34
- package/Dialogs/TextInput.js.map +1 -1
- package/GenericApp.js +54 -150
- package/GenericApp.js.map +1 -1
- package/Prompt.js +0 -2
- package/Prompt.js.map +1 -1
- package/README.md +8 -4
- package/Theme.js +7 -22
- package/Theme.js.map +1 -1
- package/i18n.d.ts +2 -0
- package/i18n.js +9 -29
- package/i18n.js.map +1 -1
- package/icons/IconAdapter.d.ts +2 -2
- package/icons/IconAdapter.js +2 -6
- package/icons/IconAdapter.js.map +1 -1
- package/icons/IconAlias.d.ts +2 -2
- package/icons/IconAlias.js +2 -6
- package/icons/IconAlias.js.map +1 -1
- package/icons/IconChannel.d.ts +2 -2
- package/icons/IconChannel.js +2 -6
- package/icons/IconChannel.js.map +1 -1
- package/icons/IconClearFilter.d.ts +2 -2
- package/icons/IconClearFilter.js +0 -5
- package/icons/IconClearFilter.js.map +1 -1
- package/icons/IconClosed.d.ts +2 -2
- package/icons/IconClosed.js +0 -5
- package/icons/IconClosed.js.map +1 -1
- package/icons/IconCopy.d.ts +2 -2
- package/icons/IconCopy.js +0 -5
- package/icons/IconCopy.js.map +1 -1
- package/icons/IconDevice.d.ts +2 -2
- package/icons/IconDevice.js +0 -5
- package/icons/IconDevice.js.map +1 -1
- package/icons/IconDocument.d.ts +2 -2
- package/icons/IconDocument.js +0 -5
- package/icons/IconDocument.js.map +1 -1
- package/icons/IconDocumentReadOnly.d.ts +2 -2
- package/icons/IconDocumentReadOnly.js +0 -5
- package/icons/IconDocumentReadOnly.js.map +1 -1
- package/icons/IconExpert.d.ts +2 -2
- package/icons/IconExpert.js +0 -5
- package/icons/IconExpert.js.map +1 -1
- package/icons/IconFx.d.ts +2 -2
- package/icons/IconFx.js +0 -5
- package/icons/IconFx.js.map +1 -1
- package/icons/IconInstance.d.ts +2 -2
- package/icons/IconInstance.js +0 -5
- package/icons/IconInstance.js.map +1 -1
- package/icons/IconLogout.d.ts +2 -2
- package/icons/IconLogout.js +0 -5
- package/icons/IconLogout.js.map +1 -1
- package/icons/IconNoIcon.d.ts +2 -2
- package/icons/IconNoIcon.js +0 -5
- package/icons/IconNoIcon.js.map +1 -1
- package/icons/IconOpen.d.ts +2 -2
- package/icons/IconOpen.js +0 -5
- package/icons/IconOpen.js.map +1 -1
- package/icons/IconState.d.ts +2 -2
- package/icons/IconState.js +0 -6
- package/icons/IconState.js.map +1 -1
- package/package.json +15 -15
package/Dialogs/SelectID.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectID.js","names":["styles","theme","headerID","fontWeight","fontStyle","dialog","height","dialogMobile","padding","width","maxWidth","maxHeight","content","overflow","contentMobile","titleRoot","whiteSpace","display","textOverflow","DialogSelectID","props","dialogName","filters","window","_localStorage","localStorage","getItem","JSON","parse","e","selected","filter","id","state","name","isMobile","innerWidth","onClose","onOk","multiSelect","title","length","I18n","t","classes","paper","Utils","clsx","root","foldersFirst","imagePrefix","prefix","showExpertButton","undefined","expertMode","columns","types","lang","getLanguage","socket","notEditable","themeName","themeType","customFilter","filterConfig","setItem","stringify","isDouble","setState","handleOk","filterFunc","ok","handleCancel","cancel","React","Component","propTypes","PropTypes","string","object","bool","func","isRequired","isFloatComma","dateFormat","oneOfType","array","statesOnly","_export","withStyles"],"sources":["SelectID.js"],"sourcesContent":["/**\n * Copyright 2018-2022 bluefox <dogafox@gmail.com>\n *\n * MIT License\n *\n **/\n// please do not delete React, as without it other projects could not be compiled: ReferenceError: React is not defined\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport withStyles from '@mui/styles/withStyles';\n\nimport Button from '@mui/material/Button';\nimport DialogTitle from '@mui/material/DialogTitle';\nimport DialogContent from '@mui/material/DialogContent';\nimport DialogActions from '@mui/material/DialogActions';\nimport Dialog from '@mui/material/Dialog';\n\nimport IconCancel from '@mui/icons-material/Cancel';\nimport IconOk from '@mui/icons-material/Check';\n\nimport Utils from '../Components/Utils';\nimport I18n from '../i18n';\nimport ObjectBrowser from '../Components/ObjectBrowser';\n\nconst styles = theme => ({\n headerID: {\n fontWeight: 'bold',\n fontStyle: 'italic'\n },\n dialog: {\n height: '95%'\n },\n dialogMobile: {\n padding: 4,\n width: '100%',\n maxWidth: '100%',\n maxHeight: 'calc(100% - 16px)',\n height: '100%'\n },\n content: {\n height: '100%',\n overflow: 'hidden'\n },\n contentMobile: {\n padding: '8px 4px'\n },\n titleRoot: {\n whiteSpace: 'nowrap',\n width: 'calc(100% - 72px)',\n overflow: 'hidden',\n display: 'inline-block',\n textOverflow: 'ellipsis',\n }\n});\n\n/**\n * @typedef {object} DialogSelectIDProps\n * @property {string} [dialogName] The internal name of the dialog; default: \"default\"\n * @property {string} [title] The dialog title; default: Please select object ID... (translated)\n * @property {boolean} [multiSelect] Set to true to allow the selection of multiple IDs.\n * @property {boolean} [foldersFirst] Show folders before any leaves.\n * @property {string} [imagePrefix] Prefix (default: '.')\n * @property {boolean} [showExpertButton] Show the expert button?\n * @property {import('../Components/types').ObjectBrowserColumn[]} [columns] Columns to display; default: 'name', 'type', 'role', 'room', 'func', 'val'\n * @property {import('../Components/types').ObjectBrowserType[]} [types] Object types to show; default: 'state' only\n * @property {ioBroker.Languages} [lang] The language.\n * @property {import('../Connection').default} socket The socket connection.\n * @property {boolean} [notEditable] Can't objects be edited? (default: true)\n * @property {string} [themeName] Theme name.\n * @property {string} [themeType] Theme type.\n * @property {import('../Components/types').ObjectBrowserCustomFilter} [customFilter] Custom filter.\n * @property {string | string[]} [selected] The selected IDs.\n * @property {string} [ok] The ok button text; default: OK (translated)\n * @property {string} [cancel] The cancel button text; default: Cancel (translated)\n * @property {() => void} onClose Close handler that is always called when the dialog is closed.\n * @property {(selected: string | string[] | undefined, name: string) => void} onOk Handler that is called when the user presses OK.\n * @property {{headerID: string; dialog: string; content: string}} [classes] The styling class names.\n *\n * @extends {React.Component<DialogSelectIDProps>}\n */\nclass DialogSelectID extends React.Component {\n /**\n * @param {DialogSelectIDProps} props\n */\n constructor(props) {\n super(props);\n this.dialogName = this.props.dialogName || 'default';\n this.dialogName = 'SelectID.' + this.dialogName;\n\n this.filters = (window._localStorage || window.localStorage).getItem(this.dialogName) || '{}';\n\n try {\n this.filters = JSON.parse(this.filters);\n } catch (e) {\n this.filters = {};\n }\n\n let selected = this.props.selected || [];\n if (typeof selected !== 'object') {\n selected = [selected];\n }\n selected = selected.filter(id => id);\n\n this.state = {\n selected,\n name: '',\n isMobile: window.innerWidth < 800\n };\n }\n\n handleCancel() {\n this.props.onClose();\n };\n\n handleOk() {\n this.props.onOk(this.props.multiSelect ? this.state.selected : this.state.selected[0] || '', this.state.name);\n this.props.onClose();\n };\n\n render() {\n let title;\n if (this.state.name || this.state.selected.length) {\n if (this.state.selected.length === 1) {\n title = [\n <span key=\"selected\">{I18n.t('ra_Selected')} </span>,\n <span key=\"id\" className={this.props.classes.headerID}>{\n (this.state.name || this.state.selected) + (this.state.name ? ' [' + this.state.selected + ']' : '')\n }</span>\n ];\n } else {\n title = [\n <span key=\"selected\">{I18n.t('ra_Selected')} </span>,\n <span key=\"id\" className={this.props.classes.headerID}>{\n I18n.t('%s items', this.state.selected.length)\n }</span>\n ];\n }\n } else {\n title = this.props.title || I18n.t('ra_Please select object ID...');\n }\n\n return <Dialog\n onClose={() => {}}\n maxWidth={false}\n classes={{paper: Utils.clsx(this.props.classes.dialog, this.props.classes.dialogMobile)}}\n fullWidth={true}\n open={true}\n aria-labelledby=\"selectid-dialog-title\"\n >\n <DialogTitle id=\"selectid-dialog-title\" classes={{root: this.props.classes.titleRoot}}>{title}</DialogTitle>\n <DialogContent className={Utils.clsx(this.props.classes.content, this.props.classes.contentMobile)}>\n <ObjectBrowser\n foldersFirst={this.props.foldersFirst}\n imagePrefix={this.props.imagePrefix || this.props.prefix} // prefix is for back compatibility\n defaultFilters={this.filters}\n dialogName={this.dialogName}\n showExpertButton={this.props.showExpertButton !== undefined ? this.props.showExpertButton : true}\n expertMode={this.props.expertMode}\n style={{ width: '100%', height: '100%' }}\n columns={this.props.columns || ['name', 'type', 'role', 'room', 'func', 'val']}\n types={this.props.types || ['state']}\n t={I18n.t}\n lang={this.props.lang || I18n.getLanguage()}\n socket={this.props.socket}\n selected={this.state.selected}\n multiSelect={this.props.multiSelect}\n notEditable={this.props.notEditable === undefined ? true : this.props.notEditable}\n name={this.state.name}\n themeName={this.props.themeName}\n themeType={this.props.themeType}\n customFilter={this.props.customFilter}\n onFilterChanged={filterConfig => {\n this.filters = filterConfig;\n (window._localStorage || window.localStorage).setItem(this.dialogName, JSON.stringify(filterConfig));\n }}\n onSelect={(selected, name, isDouble) => {\n if (JSON.stringify(selected) !== JSON.stringify(this.state.selected)) {\n this.setState({selected, name}, () =>\n isDouble && this.handleOk());\n } else if (isDouble) {\n this.handleOk();\n }\n }}\n filterFunc={this.props.filterFunc}\n />\n </DialogContent>\n <DialogActions>\n <Button variant=\"contained\" onClick={() => this.handleOk()} startIcon={<IconOk />} disabled={!this.state.selected.length} color=\"primary\">{this.props.ok || I18n.t('ra_Ok')}</Button>\n <Button color=\"grey\" variant=\"contained\" onClick={() => this.handleCancel()} startIcon={<IconCancel />}>{this.props.cancel || I18n.t('ra_Cancel')}</Button>\n </DialogActions>\n </Dialog>;\n }\n}\n\nDialogSelectID.propTypes = {\n dialogName: PropTypes.string, // where to store settings in localStorage\n classes: PropTypes.object,\n notEditable: PropTypes.bool,\n onClose: PropTypes.func.isRequired,\n onOk: PropTypes.func.isRequired,\n title: PropTypes.string,\n lang: PropTypes.string,\n foldersFirst: PropTypes.bool,\n isFloatComma: PropTypes.bool,\n dateFormat: PropTypes.string,\n selected: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.array\n ]),\n customFilter: PropTypes.object, // optional {common: {custom: true}} or {common: {custom: 'sql.0'}}\n statesOnly: PropTypes.bool,\n socket: PropTypes.object.isRequired,\n cancel: PropTypes.string,\n imagePrefix: PropTypes.string,\n ok: PropTypes.string,\n themeName: PropTypes.string,\n themeType: PropTypes.string,\n showExpertButton: PropTypes.bool,\n expertMode: PropTypes.bool, // force expert mode\n multiSelect: PropTypes.bool,\n types: PropTypes.array, // optional ['state', 'instance', 'channel']\n columns: PropTypes.array, // optional ['name', 'type', 'role', 'room', 'func', 'val', 'buttons']\n\n filterFunc: PropTypes.func, // function to filter out all unnecessary objects. It cannot be used together with \"types\"\n // Example for function: `obj => obj.common && obj.common.type === 'boolean'` to show only boolean states\n};\n\n/** @type {typeof DialogSelectID} */\nconst _export = withStyles(styles)(DialogSelectID);\nexport default _export;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAOA;;AACA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AAEA;;AACA;;AAEA;;AACA;;AACA;;;;;;AAEA,IAAMA,MAAM,GAAG,SAATA,MAAS,CAAAC,KAAK;EAAA,OAAK;IACrBC,QAAQ,EAAE;MACNC,UAAU,EAAE,MADN;MAENC,SAAS,EAAE;IAFL,CADW;IAKrBC,MAAM,EAAE;MACJC,MAAM,EAAE;IADJ,CALa;IAQrBC,YAAY,EAAE;MACVC,OAAO,EAAE,CADC;MAEVC,KAAK,EAAE,MAFG;MAGVC,QAAQ,EAAE,MAHA;MAIVC,SAAS,EAAE,mBAJD;MAKVL,MAAM,EAAE;IALE,CARO;IAerBM,OAAO,EAAE;MACLN,MAAM,EAAE,MADH;MAELO,QAAQ,EAAE;IAFL,CAfY;IAmBrBC,aAAa,EAAE;MACXN,OAAO,EAAE;IADE,CAnBM;IAsBrBO,SAAS,EAAE;MACPC,UAAU,EAAE,QADL;MAEPP,KAAK,EAAE,mBAFA;MAGPI,QAAQ,EAAE,QAHH;MAIPI,OAAO,EAAE,cAJF;MAKPC,YAAY,EAAE;IALP;EAtBU,CAAL;AAAA,CAApB;AA+BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;IACMC,c;;;;;EACF;AACJ;AACA;EACI,wBAAYC,KAAZ,EAAmB;IAAA;;IAAA;IACf,0BAAMA,KAAN;IACA,MAAKC,UAAL,GAAkB,MAAKD,KAAL,CAAWC,UAAX,IAAyB,SAA3C;IACA,MAAKA,UAAL,GAAkB,cAAc,MAAKA,UAArC;IAEA,MAAKC,OAAL,GAAe,CAACC,MAAM,CAACC,aAAP,IAAwBD,MAAM,CAACE,YAAhC,EAA8CC,OAA9C,CAAsD,MAAKL,UAA3D,KAA0E,IAAzF;;IAEA,IAAI;MACA,MAAKC,OAAL,GAAeK,IAAI,CAACC,KAAL,CAAW,MAAKN,OAAhB,CAAf;IACH,CAFD,CAEE,OAAOO,CAAP,EAAU;MACR,MAAKP,OAAL,GAAe,EAAf;IACH;;IAED,IAAIQ,QAAQ,GAAG,MAAKV,KAAL,CAAWU,QAAX,IAAuB,EAAtC;;IACA,IAAI,yBAAOA,QAAP,MAAoB,QAAxB,EAAkC;MAC9BA,QAAQ,GAAG,CAACA,QAAD,CAAX;IACH;;IACDA,QAAQ,GAAGA,QAAQ,CAACC,MAAT,CAAgB,UAAAC,EAAE;MAAA,OAAIA,EAAJ;IAAA,CAAlB,CAAX;IAEA,MAAKC,KAAL,GAAc;MACVH,QAAQ,EAARA,QADU;MAEVI,IAAI,EAAE,EAFI;MAGVC,QAAQ,EAAEZ,MAAM,CAACa,UAAP,GAAoB;IAHpB,CAAd;IAnBe;EAwBlB;;;;WAED,wBAAe;MACX,KAAKhB,KAAL,CAAWiB,OAAX;IACH;;;WAED,oBAAW;MACP,KAAKjB,KAAL,CAAWkB,IAAX,CAAgB,KAAKlB,KAAL,CAAWmB,WAAX,GAAyB,KAAKN,KAAL,CAAWH,QAApC,GAA+C,KAAKG,KAAL,CAAWH,QAAX,CAAoB,CAApB,KAA0B,EAAzF,EAA6F,KAAKG,KAAL,CAAWC,IAAxG;MACA,KAAKd,KAAL,CAAWiB,OAAX;IACH;;;WAED,kBAAS;MAAA;;MACL,IAAIG,KAAJ;;MACA,IAAI,KAAKP,KAAL,CAAWC,IAAX,IAAmB,KAAKD,KAAL,CAAWH,QAAX,CAAoBW,MAA3C,EAAmD;QAC/C,IAAI,KAAKR,KAAL,CAAWH,QAAX,CAAoBW,MAApB,KAA+B,CAAnC,EAAsC;UAClCD,KAAK,GAAG,cACJ;YAAM,GAAG,EAAC;UAAV,GAAsBE,gBAAA,CAAKC,CAAL,CAAO,aAAP,CAAtB,MADI,eAEJ;YAAM,GAAG,EAAC,IAAV;YAAe,SAAS,EAAE,KAAKvB,KAAL,CAAWwB,OAAX,CAAmB1C;UAA7C,GACI,CAAC,KAAK+B,KAAL,CAAWC,IAAX,IAAmB,KAAKD,KAAL,CAAWH,QAA/B,KAA4C,KAAKG,KAAL,CAAWC,IAAX,GAAkB,OAAO,KAAKD,KAAL,CAAWH,QAAlB,GAA6B,GAA/C,GAAqD,EAAjG,CADJ,CAFI,CAAR;QAMH,CAPD,MAOO;UACHU,KAAK,GAAG,cACJ;YAAM,GAAG,EAAC;UAAV,GAAsBE,gBAAA,CAAKC,CAAL,CAAO,aAAP,CAAtB,MADI,eAEJ;YAAM,GAAG,EAAC,IAAV;YAAe,SAAS,EAAE,KAAKvB,KAAL,CAAWwB,OAAX,CAAmB1C;UAA7C,GACIwC,gBAAA,CAAKC,CAAL,CAAO,UAAP,EAAmB,KAAKV,KAAL,CAAWH,QAAX,CAAoBW,MAAvC,CADJ,CAFI,CAAR;QAMH;MACJ,CAhBD,MAgBO;QACHD,KAAK,GAAG,KAAKpB,KAAL,CAAWoB,KAAX,IAAoBE,gBAAA,CAAKC,CAAL,CAAO,+BAAP,CAA5B;MACH;;MAED,oBAAO,gCAAC,kBAAD;QACH,OAAO,EAAE,mBAAM,CAAE,CADd;QAEH,QAAQ,EAAE,KAFP;QAGH,OAAO,EAAE;UAACE,KAAK,EAAEC,iBAAA,CAAMC,IAAN,CAAW,KAAK3B,KAAL,CAAWwB,OAAX,CAAmBvC,MAA9B,EAAsC,KAAKe,KAAL,CAAWwB,OAAX,CAAmBrC,YAAzD;QAAR,CAHN;QAIH,SAAS,EAAE,IAJR;QAKH,IAAI,EAAE,IALH;QAMH,mBAAgB;MANb,gBAQH,gCAAC,uBAAD;QAAa,EAAE,EAAC,uBAAhB;QAAwC,OAAO,EAAE;UAACyC,IAAI,EAAE,KAAK5B,KAAL,CAAWwB,OAAX,CAAmB7B;QAA1B;MAAjD,GAAwFyB,KAAxF,CARG,eASH,gCAAC,yBAAD;QAAe,SAAS,EAAEM,iBAAA,CAAMC,IAAN,CAAW,KAAK3B,KAAL,CAAWwB,OAAX,CAAmBhC,OAA9B,EAAuC,KAAKQ,KAAL,CAAWwB,OAAX,CAAmB9B,aAA1D;MAA1B,gBACI,gCAAC,yBAAD;QACI,YAAY,EAAE,KAAKM,KAAL,CAAW6B,YAD7B;QAEI,WAAW,EAAE,KAAK7B,KAAL,CAAW8B,WAAX,IAA0B,KAAK9B,KAAL,CAAW+B,MAFtD,CAE8D;QAF9D;QAGI,cAAc,EAAE,KAAK7B,OAHzB;QAII,UAAU,EAAE,KAAKD,UAJrB;QAKI,gBAAgB,EAAE,KAAKD,KAAL,CAAWgC,gBAAX,KAAgCC,SAAhC,GAA4C,KAAKjC,KAAL,CAAWgC,gBAAvD,GAA0E,IALhG;QAMI,UAAU,EAAE,KAAKhC,KAAL,CAAWkC,UAN3B;QAOI,KAAK,EAAE;UAAE7C,KAAK,EAAE,MAAT;UAAiBH,MAAM,EAAE;QAAzB,CAPX;QAQI,OAAO,EAAE,KAAKc,KAAL,CAAWmC,OAAX,IAAsB,CAAC,MAAD,EAAS,MAAT,EAAiB,MAAjB,EAAyB,MAAzB,EAAiC,MAAjC,EAAyC,KAAzC,CARnC;QASI,KAAK,EAAE,KAAKnC,KAAL,CAAWoC,KAAX,IAAoB,CAAC,OAAD,CAT/B;QAUI,CAAC,EAAEd,gBAAA,CAAKC,CAVZ;QAWI,IAAI,EAAE,KAAKvB,KAAL,CAAWqC,IAAX,IAAmBf,gBAAA,CAAKgB,WAAL,EAX7B;QAYI,MAAM,EAAE,KAAKtC,KAAL,CAAWuC,MAZvB;QAaI,QAAQ,EAAE,KAAK1B,KAAL,CAAWH,QAbzB;QAcI,WAAW,EAAE,KAAKV,KAAL,CAAWmB,WAd5B;QAeI,WAAW,EAAE,KAAKnB,KAAL,CAAWwC,WAAX,KAA2BP,SAA3B,GAAuC,IAAvC,GAA8C,KAAKjC,KAAL,CAAWwC,WAf1E;QAgBI,IAAI,EAAE,KAAK3B,KAAL,CAAWC,IAhBrB;QAiBI,SAAS,EAAE,KAAKd,KAAL,CAAWyC,SAjB1B;QAkBI,SAAS,EAAE,KAAKzC,KAAL,CAAW0C,SAlB1B;QAmBI,YAAY,EAAE,KAAK1C,KAAL,CAAW2C,YAnB7B;QAoBI,eAAe,EAAE,yBAAAC,YAAY,EAAI;UAC7B,MAAI,CAAC1C,OAAL,GAAe0C,YAAf;UACA,CAACzC,MAAM,CAACC,aAAP,IAAwBD,MAAM,CAACE,YAAhC,EAA8CwC,OAA9C,CAAsD,MAAI,CAAC5C,UAA3D,EAAuEM,IAAI,CAACuC,SAAL,CAAeF,YAAf,CAAvE;QACH,CAvBL;QAwBI,QAAQ,EAAE,kBAAClC,QAAD,EAAWI,IAAX,EAAiBiC,QAAjB,EAA8B;UACpC,IAAIxC,IAAI,CAACuC,SAAL,CAAepC,QAAf,MAA6BH,IAAI,CAACuC,SAAL,CAAe,MAAI,CAACjC,KAAL,CAAWH,QAA1B,CAAjC,EAAsE;YAClE,MAAI,CAACsC,QAAL,CAAc;cAACtC,QAAQ,EAARA,QAAD;cAAWI,IAAI,EAAJA;YAAX,CAAd,EAAgC;cAAA,OAC5BiC,QAAQ,IAAI,MAAI,CAACE,QAAL,EADgB;YAAA,CAAhC;UAEH,CAHD,MAGO,IAAIF,QAAJ,EAAc;YACjB,MAAI,CAACE,QAAL;UACH;QACJ,CA/BL;QAgCI,UAAU,EAAE,KAAKjD,KAAL,CAAWkD;MAhC3B,EADJ,CATG,eA6CH,gCAAC,yBAAD,qBACI,gCAAC,kBAAD;QAAQ,OAAO,EAAC,WAAhB;QAA4B,OAAO,EAAE;UAAA,OAAM,MAAI,CAACD,QAAL,EAAN;QAAA,CAArC;QAA4D,SAAS,eAAE,gCAAC,iBAAD,OAAvE;QAAmF,QAAQ,EAAE,CAAC,KAAKpC,KAAL,CAAWH,QAAX,CAAoBW,MAAlH;QAA0H,KAAK,EAAC;MAAhI,GAA2I,KAAKrB,KAAL,CAAWmD,EAAX,IAAiB7B,gBAAA,CAAKC,CAAL,CAAO,OAAP,CAA5J,CADJ,eAEI,gCAAC,kBAAD;QAAQ,KAAK,EAAC,MAAd;QAAqB,OAAO,EAAC,WAA7B;QAAyC,OAAO,EAAE;UAAA,OAAM,MAAI,CAAC6B,YAAL,EAAN;QAAA,CAAlD;QAA6E,SAAS,eAAE,gCAAC,kBAAD;MAAxF,GAAyG,KAAKpD,KAAL,CAAWqD,MAAX,IAAqB/B,gBAAA,CAAKC,CAAL,CAAO,WAAP,CAA9H,CAFJ,CA7CG,CAAP;IAkDH;;;EA/GwB+B,iBAAA,CAAMC,S;;AAkHnCxD,cAAc,CAACyD,SAAf,GAA2B;EACvBvD,UAAU,EAAEwD,qBAAA,CAAUC,MADC;EACO;EAC9BlC,OAAO,EAAEiC,qBAAA,CAAUE,MAFI;EAGvBnB,WAAW,EAAEiB,qBAAA,CAAUG,IAHA;EAIvB3C,OAAO,EAAEwC,qBAAA,CAAUI,IAAV,CAAeC,UAJD;EAKvB5C,IAAI,EAAEuC,qBAAA,CAAUI,IAAV,CAAeC,UALE;EAMvB1C,KAAK,EAAEqC,qBAAA,CAAUC,MANM;EAOvBrB,IAAI,EAAEoB,qBAAA,CAAUC,MAPO;EAQvB7B,YAAY,EAAE4B,qBAAA,CAAUG,IARD;EASvBG,YAAY,EAAEN,qBAAA,CAAUG,IATD;EAUvBI,UAAU,EAAEP,qBAAA,CAAUC,MAVC;EAWvBhD,QAAQ,EAAE+C,qBAAA,CAAUQ,SAAV,CAAoB,CAC1BR,qBAAA,CAAUC,MADgB,EAE1BD,qBAAA,CAAUS,KAFgB,CAApB,CAXa;EAevBvB,YAAY,EAAEc,qBAAA,CAAUE,MAfD;EAeS;EAChCQ,UAAU,EAAEV,qBAAA,CAAUG,IAhBC;EAiBvBrB,MAAM,EAAEkB,qBAAA,CAAUE,MAAV,CAAiBG,UAjBF;EAkBvBT,MAAM,EAAEI,qBAAA,CAAUC,MAlBK;EAmBvB5B,WAAW,EAAE2B,qBAAA,CAAUC,MAnBA;EAoBvBP,EAAE,EAAEM,qBAAA,CAAUC,MApBS;EAqBvBjB,SAAS,EAAEgB,qBAAA,CAAUC,MArBE;EAsBvBhB,SAAS,EAAEe,qBAAA,CAAUC,MAtBE;EAuBvB1B,gBAAgB,EAAEyB,qBAAA,CAAUG,IAvBL;EAwBvB1B,UAAU,EAAEuB,qBAAA,CAAUG,IAxBC;EAwBK;EAC5BzC,WAAW,EAAEsC,qBAAA,CAAUG,IAzBA;EA0BvBxB,KAAK,EAAEqB,qBAAA,CAAUS,KA1BM;EA0BG;EAC1B/B,OAAO,EAAEsB,qBAAA,CAAUS,KA3BI;EA2BG;EAE1BhB,UAAU,EAAEO,qBAAA,CAAUI,IA7BC,CA6Ba;EACA;;AA9Bb,CAA3B;AAiCA;;AACA,IAAMO,OAAO,GAAG,IAAAC,sBAAA,EAAWzF,MAAX,EAAmBmB,cAAnB,CAAhB;;eACeqE,O"}
|
|
1
|
+
{"version":3,"file":"SelectID.js","names":["styles","theme","headerID","fontWeight","fontStyle","dialog","height","dialogMobile","padding","width","maxWidth","maxHeight","content","overflow","contentMobile","titleRoot","whiteSpace","display","textOverflow","DialogSelectID","props","dialogName","filters","window","_localStorage","localStorage","getItem","JSON","parse","e","selected","filter","id","state","name","isMobile","innerWidth","onClose","onOk","multiSelect","title","length","I18n","t","classes","paper","Utils","clsx","root","foldersFirst","imagePrefix","prefix","showExpertButton","undefined","expertMode","columns","types","lang","getLanguage","socket","notEditable","themeName","themeType","customFilter","filterConfig","setItem","stringify","isDouble","setState","handleOk","filterFunc","ok","handleCancel","cancel","React","Component","propTypes","PropTypes","string","object","bool","func","isRequired","isFloatComma","dateFormat","oneOfType","array","statesOnly","_export","withStyles"],"sources":["SelectID.js"],"sourcesContent":["/**\n * Copyright 2018-2022 bluefox <dogafox@gmail.com>\n *\n * MIT License\n *\n **/\n// please do not delete React, as without it other projects could not be compiled: ReferenceError: React is not defined\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport withStyles from '@mui/styles/withStyles';\n\nimport Button from '@mui/material/Button';\nimport DialogTitle from '@mui/material/DialogTitle';\nimport DialogContent from '@mui/material/DialogContent';\nimport DialogActions from '@mui/material/DialogActions';\nimport Dialog from '@mui/material/Dialog';\n\nimport IconCancel from '@mui/icons-material/Cancel';\nimport IconOk from '@mui/icons-material/Check';\n\nimport Utils from '../Components/Utils';\nimport I18n from '../i18n';\nimport ObjectBrowser from '../Components/ObjectBrowser';\n\nconst styles = theme => ({\n headerID: {\n fontWeight: 'bold',\n fontStyle: 'italic'\n },\n dialog: {\n height: '95%'\n },\n dialogMobile: {\n padding: 4,\n width: '100%',\n maxWidth: '100%',\n maxHeight: 'calc(100% - 16px)',\n height: '100%'\n },\n content: {\n height: '100%',\n overflow: 'hidden'\n },\n contentMobile: {\n padding: '8px 4px'\n },\n titleRoot: {\n whiteSpace: 'nowrap',\n width: 'calc(100% - 72px)',\n overflow: 'hidden',\n display: 'inline-block',\n textOverflow: 'ellipsis',\n }\n});\n\n/**\n * @typedef {object} DialogSelectIDProps\n * @property {string} [dialogName] The internal name of the dialog; default: \"default\"\n * @property {string} [title] The dialog title; default: Please select object ID... (translated)\n * @property {boolean} [multiSelect] Set to true to allow the selection of multiple IDs.\n * @property {boolean} [foldersFirst] Show folders before any leaves.\n * @property {string} [imagePrefix] Prefix (default: '.')\n * @property {boolean} [showExpertButton] Show the expert button?\n * @property {import('../Components/types').ObjectBrowserColumn[]} [columns] Columns to display; default: 'name', 'type', 'role', 'room', 'func', 'val'\n * @property {import('../Components/types').ObjectBrowserType[]} [types] Object types to show; default: 'state' only\n * @property {ioBroker.Languages} [lang] The language.\n * @property {import('../Connection').default} socket The socket connection.\n * @property {boolean} [notEditable] Can't objects be edited? (default: true)\n * @property {string} [themeName] Theme name.\n * @property {string} [themeType] Theme type.\n * @property {import('../Components/types').ObjectBrowserCustomFilter} [customFilter] Custom filter.\n * @property {string | string[]} [selected] The selected IDs.\n * @property {string} [ok] The ok button text; default: OK (translated)\n * @property {string} [cancel] The cancel button text; default: Cancel (translated)\n * @property {() => void} onClose Close handler that is always called when the dialog is closed.\n * @property {(selected: string | string[] | undefined, name: string) => void} onOk Handler that is called when the user presses OK.\n * @property {{headerID: string; dialog: string; content: string}} [classes] The styling class names.\n *\n * @extends {React.Component<DialogSelectIDProps>}\n */\nclass DialogSelectID extends React.Component {\n /**\n * @param {DialogSelectIDProps} props\n */\n constructor(props) {\n super(props);\n this.dialogName = this.props.dialogName || 'default';\n this.dialogName = 'SelectID.' + this.dialogName;\n\n this.filters = (window._localStorage || window.localStorage).getItem(this.dialogName) || '{}';\n\n try {\n this.filters = JSON.parse(this.filters);\n } catch (e) {\n this.filters = {};\n }\n\n let selected = this.props.selected || [];\n if (typeof selected !== 'object') {\n selected = [selected];\n }\n selected = selected.filter(id => id);\n\n this.state = {\n selected,\n name: '',\n isMobile: window.innerWidth < 800\n };\n }\n\n handleCancel() {\n this.props.onClose();\n };\n\n handleOk() {\n this.props.onOk(this.props.multiSelect ? this.state.selected : this.state.selected[0] || '', this.state.name);\n this.props.onClose();\n };\n\n render() {\n let title;\n if (this.state.name || this.state.selected.length) {\n if (this.state.selected.length === 1) {\n title = [\n <span key=\"selected\">{I18n.t('ra_Selected')} </span>,\n <span key=\"id\" className={this.props.classes.headerID}>{\n (this.state.name || this.state.selected) + (this.state.name ? ' [' + this.state.selected + ']' : '')\n }</span>\n ];\n } else {\n title = [\n <span key=\"selected\">{I18n.t('ra_Selected')} </span>,\n <span key=\"id\" className={this.props.classes.headerID}>{\n I18n.t('%s items', this.state.selected.length)\n }</span>\n ];\n }\n } else {\n title = this.props.title || I18n.t('ra_Please select object ID...');\n }\n\n return <Dialog\n onClose={() => {}}\n maxWidth={false}\n classes={{paper: Utils.clsx(this.props.classes.dialog, this.props.classes.dialogMobile)}}\n fullWidth={true}\n open={true}\n aria-labelledby=\"selectid-dialog-title\"\n >\n <DialogTitle id=\"selectid-dialog-title\" classes={{root: this.props.classes.titleRoot}}>{title}</DialogTitle>\n <DialogContent className={Utils.clsx(this.props.classes.content, this.props.classes.contentMobile)}>\n <ObjectBrowser\n foldersFirst={this.props.foldersFirst}\n imagePrefix={this.props.imagePrefix || this.props.prefix} // prefix is for back compatibility\n defaultFilters={this.filters}\n dialogName={this.dialogName}\n showExpertButton={this.props.showExpertButton !== undefined ? this.props.showExpertButton : true}\n expertMode={this.props.expertMode}\n style={{ width: '100%', height: '100%' }}\n columns={this.props.columns || ['name', 'type', 'role', 'room', 'func', 'val']}\n types={this.props.types || ['state']}\n t={I18n.t}\n lang={this.props.lang || I18n.getLanguage()}\n socket={this.props.socket}\n selected={this.state.selected}\n multiSelect={this.props.multiSelect}\n notEditable={this.props.notEditable === undefined ? true : this.props.notEditable}\n name={this.state.name}\n themeName={this.props.themeName}\n themeType={this.props.themeType}\n customFilter={this.props.customFilter}\n onFilterChanged={filterConfig => {\n this.filters = filterConfig;\n (window._localStorage || window.localStorage).setItem(this.dialogName, JSON.stringify(filterConfig));\n }}\n onSelect={(selected, name, isDouble) => {\n if (JSON.stringify(selected) !== JSON.stringify(this.state.selected)) {\n this.setState({selected, name}, () =>\n isDouble && this.handleOk());\n } else if (isDouble) {\n this.handleOk();\n }\n }}\n filterFunc={this.props.filterFunc}\n />\n </DialogContent>\n <DialogActions>\n <Button variant=\"contained\" onClick={() => this.handleOk()} startIcon={<IconOk />} disabled={!this.state.selected.length} color=\"primary\">{this.props.ok || I18n.t('ra_Ok')}</Button>\n <Button color=\"grey\" variant=\"contained\" onClick={() => this.handleCancel()} startIcon={<IconCancel />}>{this.props.cancel || I18n.t('ra_Cancel')}</Button>\n </DialogActions>\n </Dialog>;\n }\n}\n\nDialogSelectID.propTypes = {\n dialogName: PropTypes.string, // where to store settings in localStorage\n classes: PropTypes.object,\n notEditable: PropTypes.bool,\n onClose: PropTypes.func.isRequired,\n onOk: PropTypes.func.isRequired,\n title: PropTypes.string,\n lang: PropTypes.string,\n foldersFirst: PropTypes.bool,\n isFloatComma: PropTypes.bool,\n dateFormat: PropTypes.string,\n selected: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.array\n ]),\n customFilter: PropTypes.object, // optional {common: {custom: true}} or {common: {custom: 'sql.0'}}\n statesOnly: PropTypes.bool,\n socket: PropTypes.object.isRequired,\n cancel: PropTypes.string,\n imagePrefix: PropTypes.string,\n ok: PropTypes.string,\n themeName: PropTypes.string,\n themeType: PropTypes.string,\n showExpertButton: PropTypes.bool,\n expertMode: PropTypes.bool, // force expert mode\n multiSelect: PropTypes.bool,\n types: PropTypes.array, // optional ['state', 'instance', 'channel']\n columns: PropTypes.array, // optional ['name', 'type', 'role', 'room', 'func', 'val', 'buttons']\n\n filterFunc: PropTypes.func, // function to filter out all unnecessary objects. It cannot be used together with \"types\"\n // Example for function: `obj => obj.common && obj.common.type === 'boolean'` to show only boolean states\n};\n\n/** @type {typeof DialogSelectID} */\nconst _export = withStyles(styles)(DialogSelectID);\nexport default _export;\n"],"mappings":"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"}
|
package/Dialogs/SimpleCron.js
CHANGED
|
@@ -1,51 +1,31 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports["default"] = void 0;
|
|
9
|
-
|
|
10
8
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
11
|
-
|
|
12
9
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
13
|
-
|
|
14
10
|
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
15
|
-
|
|
16
11
|
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
17
|
-
|
|
18
12
|
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
19
|
-
|
|
20
13
|
var _react = _interopRequireDefault(require("react"));
|
|
21
|
-
|
|
22
14
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
23
|
-
|
|
24
15
|
var _withStyles = _interopRequireDefault(require("@mui/styles/withStyles"));
|
|
25
|
-
|
|
26
16
|
var _Button = _interopRequireDefault(require("@mui/material/Button"));
|
|
27
|
-
|
|
28
17
|
var _DialogTitle = _interopRequireDefault(require("@mui/material/DialogTitle"));
|
|
29
|
-
|
|
30
18
|
var _DialogContent = _interopRequireDefault(require("@mui/material/DialogContent"));
|
|
31
|
-
|
|
32
19
|
var _DialogActions = _interopRequireDefault(require("@mui/material/DialogActions"));
|
|
33
|
-
|
|
34
20
|
var _Dialog = _interopRequireDefault(require("@mui/material/Dialog"));
|
|
35
|
-
|
|
36
21
|
var _Check = _interopRequireDefault(require("@mui/icons-material/Check"));
|
|
37
|
-
|
|
38
22
|
var _Cancel = _interopRequireDefault(require("@mui/icons-material/Cancel"));
|
|
39
|
-
|
|
40
23
|
var _SimpleCron = _interopRequireDefault(require("../Components/SimpleCron"));
|
|
41
|
-
|
|
42
24
|
var _i18n = _interopRequireDefault(require("../i18n"));
|
|
43
|
-
|
|
44
25
|
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); }; }
|
|
45
|
-
|
|
46
26
|
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; } }
|
|
47
|
-
|
|
48
27
|
// Generate cron expression
|
|
28
|
+
|
|
49
29
|
var styles = function styles(theme) {
|
|
50
30
|
return {
|
|
51
31
|
headerID: {
|
|
@@ -60,35 +40,27 @@ var styles = function styles(theme) {
|
|
|
60
40
|
}
|
|
61
41
|
};
|
|
62
42
|
};
|
|
63
|
-
|
|
64
43
|
var DialogSimpleCron = /*#__PURE__*/function (_React$Component) {
|
|
65
44
|
(0, _inherits2["default"])(DialogSimpleCron, _React$Component);
|
|
66
|
-
|
|
67
45
|
var _super = _createSuper(DialogSimpleCron);
|
|
68
|
-
|
|
69
46
|
function DialogSimpleCron(props) {
|
|
70
47
|
var _this;
|
|
71
|
-
|
|
72
48
|
(0, _classCallCheck2["default"])(this, DialogSimpleCron);
|
|
73
49
|
_this = _super.call(this, props);
|
|
74
50
|
var cron;
|
|
75
|
-
|
|
76
51
|
if (_this.props.cron && typeof _this.props.cron === 'string' && _this.props.cron.replace(/^["']/, '')[0] !== '{') {
|
|
77
52
|
cron = _this.props.cron.replace(/['"]/g, '').trim();
|
|
78
53
|
} else {
|
|
79
54
|
cron = _this.props.cron || '{}';
|
|
80
|
-
|
|
81
55
|
if (typeof cron === 'string') {
|
|
82
56
|
cron = cron.replace(/^["']/, '').replace(/["']\n?$/, '');
|
|
83
57
|
}
|
|
84
58
|
}
|
|
85
|
-
|
|
86
59
|
_this.state = {
|
|
87
60
|
cron: cron
|
|
88
61
|
};
|
|
89
62
|
return _this;
|
|
90
63
|
}
|
|
91
|
-
|
|
92
64
|
(0, _createClass2["default"])(DialogSimpleCron, [{
|
|
93
65
|
key: "handleCancel",
|
|
94
66
|
value: function handleCancel() {
|
|
@@ -104,7 +76,6 @@ var DialogSimpleCron = /*#__PURE__*/function (_React$Component) {
|
|
|
104
76
|
key: "render",
|
|
105
77
|
value: function render() {
|
|
106
78
|
var _this2 = this;
|
|
107
|
-
|
|
108
79
|
return /*#__PURE__*/_react["default"].createElement(_Dialog["default"], {
|
|
109
80
|
onClose: function onClose() {},
|
|
110
81
|
maxWidth: "md",
|
|
@@ -148,7 +119,6 @@ var DialogSimpleCron = /*#__PURE__*/function (_React$Component) {
|
|
|
148
119
|
}]);
|
|
149
120
|
return DialogSimpleCron;
|
|
150
121
|
}(_react["default"].Component);
|
|
151
|
-
|
|
152
122
|
DialogSimpleCron.propTypes = {
|
|
153
123
|
classes: _propTypes["default"].object,
|
|
154
124
|
onClose: _propTypes["default"].func.isRequired,
|
|
@@ -160,8 +130,6 @@ DialogSimpleCron.propTypes = {
|
|
|
160
130
|
simple: _propTypes["default"].bool,
|
|
161
131
|
language: _propTypes["default"].string
|
|
162
132
|
};
|
|
163
|
-
|
|
164
133
|
var _default = (0, _withStyles["default"])(styles)(DialogSimpleCron);
|
|
165
|
-
|
|
166
134
|
exports["default"] = _default;
|
|
167
135
|
//# sourceMappingURL=SimpleCron.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SimpleCron.js","names":["styles","theme","headerID","fontWeight","fontStyle","radio","display","dialogPaper","height","DialogSimpleCron","props","cron","replace","trim","state","onClose","onOk","paper","classes","title","I18n","t","overflow","setState","getLanguage","handleOk","ok","handleCancel","cancel","React","Component","propTypes","PropTypes","object","func","isRequired","string","simple","bool","language","withStyles"],"sources":["SimpleCron.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport withStyles from '@mui/styles/withStyles';\nimport Button from '@mui/material/Button';\nimport DialogTitle from '@mui/material/DialogTitle';\nimport DialogContent from '@mui/material/DialogContent';\nimport DialogActions from '@mui/material/DialogActions';\nimport Dialog from '@mui/material/Dialog';\n\nimport IconOk from '@mui/icons-material/Check';\nimport IconCancel from '@mui/icons-material/Cancel';\n\nimport SimpleCron from '../Components/SimpleCron';\n\nimport I18n from '../i18n';\n\n// Generate cron expression\n\nconst styles = theme => ({\n headerID: {\n fontWeight: 'bold',\n fontStyle: 'italic'\n },\n radio: {\n display: 'inline-block'\n },\n dialogPaper: {\n height: 'calc(100% - 96px)'\n },\n});\n\nclass DialogSimpleCron extends React.Component {\n constructor(props) {\n super(props);\n\n let cron;\n if (this.props.cron && typeof this.props.cron === 'string' && this.props.cron.replace(/^[\"']/, '')[0] !== '{') {\n cron = this.props.cron.replace(/['\"]/g, '').trim();\n } else {\n cron = this.props.cron || '{}';\n if (typeof cron === 'string') {\n cron = cron.replace(/^[\"']/, '').replace(/[\"']\\n?$/, '');\n }\n }\n\n this.state = {\n cron,\n };\n }\n\n handleCancel() {\n this.props.onClose();\n }\n\n handleOk() {\n this.props.onOk(this.state.cron);\n this.props.onClose();\n }\n\n render() {\n return <Dialog\n onClose={() => {}}\n maxWidth=\"md\"\n fullWidth={true}\n classes={{paper: this.props.classes.dialogPaper}}\n open={true}\n aria-labelledby=\"cron-dialog-title\"\n >\n <DialogTitle id=\"cron-dialog-title\">{this.props.title || I18n.t('ra_Define CRON...')}</DialogTitle>\n <DialogContent style={{height: '100%', overflow: 'hidden'}}>\n <SimpleCron\n cronExpression={this.state.cron}\n onChange={cron => this.setState({cron})}\n language={I18n.getLanguage()}\n />\n </DialogContent>\n <DialogActions>\n <Button variant=\"contained\" onClick={() => this.handleOk()} color=\"primary\" startIcon={<IconOk />}>{this.props.ok || I18n.t('ra_Ok')}</Button>\n <Button variant=\"contained\" onClick={() => this.handleCancel()} color=\"grey\" startIcon={<IconCancel />}>{this.props.cancel || I18n.t('ra_Cancel')}</Button>\n </DialogActions>\n </Dialog>;\n }\n}\n\nDialogSimpleCron.propTypes = {\n classes: PropTypes.object,\n onClose: PropTypes.func.isRequired,\n onOk: PropTypes.func.isRequired,\n title: PropTypes.string,\n cron: PropTypes.string,\n cancel: PropTypes.string,\n ok: PropTypes.string,\n simple: PropTypes.bool,\n language: PropTypes.string\n\n};\n\nexport default withStyles(styles)(DialogSimpleCron);\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"SimpleCron.js","names":["styles","theme","headerID","fontWeight","fontStyle","radio","display","dialogPaper","height","DialogSimpleCron","props","cron","replace","trim","state","onClose","onOk","paper","classes","title","I18n","t","overflow","setState","getLanguage","handleOk","ok","handleCancel","cancel","React","Component","propTypes","PropTypes","object","func","isRequired","string","simple","bool","language","withStyles"],"sources":["SimpleCron.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport withStyles from '@mui/styles/withStyles';\nimport Button from '@mui/material/Button';\nimport DialogTitle from '@mui/material/DialogTitle';\nimport DialogContent from '@mui/material/DialogContent';\nimport DialogActions from '@mui/material/DialogActions';\nimport Dialog from '@mui/material/Dialog';\n\nimport IconOk from '@mui/icons-material/Check';\nimport IconCancel from '@mui/icons-material/Cancel';\n\nimport SimpleCron from '../Components/SimpleCron';\n\nimport I18n from '../i18n';\n\n// Generate cron expression\n\nconst styles = theme => ({\n headerID: {\n fontWeight: 'bold',\n fontStyle: 'italic'\n },\n radio: {\n display: 'inline-block'\n },\n dialogPaper: {\n height: 'calc(100% - 96px)'\n },\n});\n\nclass DialogSimpleCron extends React.Component {\n constructor(props) {\n super(props);\n\n let cron;\n if (this.props.cron && typeof this.props.cron === 'string' && this.props.cron.replace(/^[\"']/, '')[0] !== '{') {\n cron = this.props.cron.replace(/['\"]/g, '').trim();\n } else {\n cron = this.props.cron || '{}';\n if (typeof cron === 'string') {\n cron = cron.replace(/^[\"']/, '').replace(/[\"']\\n?$/, '');\n }\n }\n\n this.state = {\n cron,\n };\n }\n\n handleCancel() {\n this.props.onClose();\n }\n\n handleOk() {\n this.props.onOk(this.state.cron);\n this.props.onClose();\n }\n\n render() {\n return <Dialog\n onClose={() => {}}\n maxWidth=\"md\"\n fullWidth={true}\n classes={{paper: this.props.classes.dialogPaper}}\n open={true}\n aria-labelledby=\"cron-dialog-title\"\n >\n <DialogTitle id=\"cron-dialog-title\">{this.props.title || I18n.t('ra_Define CRON...')}</DialogTitle>\n <DialogContent style={{height: '100%', overflow: 'hidden'}}>\n <SimpleCron\n cronExpression={this.state.cron}\n onChange={cron => this.setState({cron})}\n language={I18n.getLanguage()}\n />\n </DialogContent>\n <DialogActions>\n <Button variant=\"contained\" onClick={() => this.handleOk()} color=\"primary\" startIcon={<IconOk />}>{this.props.ok || I18n.t('ra_Ok')}</Button>\n <Button variant=\"contained\" onClick={() => this.handleCancel()} color=\"grey\" startIcon={<IconCancel />}>{this.props.cancel || I18n.t('ra_Cancel')}</Button>\n </DialogActions>\n </Dialog>;\n }\n}\n\nDialogSimpleCron.propTypes = {\n classes: PropTypes.object,\n onClose: PropTypes.func.isRequired,\n onOk: PropTypes.func.isRequired,\n title: PropTypes.string,\n cron: PropTypes.string,\n cancel: PropTypes.string,\n ok: PropTypes.string,\n simple: PropTypes.bool,\n language: PropTypes.string\n\n};\n\nexport default withStyles(styles)(DialogSimpleCron);\n"],"mappings":"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"}
|
package/Dialogs/TextInput.js
CHANGED
|
@@ -1,52 +1,30 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports["default"] = void 0;
|
|
9
|
-
|
|
10
8
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
11
|
-
|
|
12
9
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
13
|
-
|
|
14
10
|
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
15
|
-
|
|
16
11
|
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
17
|
-
|
|
18
12
|
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
19
|
-
|
|
20
13
|
var _react = _interopRequireDefault(require("react"));
|
|
21
|
-
|
|
22
14
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
23
|
-
|
|
24
15
|
var _Button = _interopRequireDefault(require("@mui/material/Button"));
|
|
25
|
-
|
|
26
16
|
var _TextField = _interopRequireDefault(require("@mui/material/TextField"));
|
|
27
|
-
|
|
28
17
|
var _Dialog = _interopRequireDefault(require("@mui/material/Dialog"));
|
|
29
|
-
|
|
30
18
|
var _DialogActions = _interopRequireDefault(require("@mui/material/DialogActions"));
|
|
31
|
-
|
|
32
19
|
var _DialogContent = _interopRequireDefault(require("@mui/material/DialogContent"));
|
|
33
|
-
|
|
34
20
|
var _DialogContentText = _interopRequireDefault(require("@mui/material/DialogContentText"));
|
|
35
|
-
|
|
36
21
|
var _DialogTitle = _interopRequireDefault(require("@mui/material/DialogTitle"));
|
|
37
|
-
|
|
38
22
|
var _i18n = _interopRequireDefault(require("../i18n"));
|
|
39
|
-
|
|
40
23
|
var _Close = _interopRequireDefault(require("@mui/icons-material/Close"));
|
|
41
|
-
|
|
42
24
|
var _Check = _interopRequireDefault(require("@mui/icons-material/Check"));
|
|
43
|
-
|
|
44
25
|
var _withWidth = _interopRequireDefault(require("../Components/withWidth"));
|
|
45
|
-
|
|
46
26
|
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); }; }
|
|
47
|
-
|
|
48
27
|
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; } }
|
|
49
|
-
|
|
50
28
|
/**
|
|
51
29
|
* @typedef {object} TextInputProps
|
|
52
30
|
* @property {(text: string | null) => void} onClose The dialog close callback.
|
|
@@ -61,18 +39,14 @@ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Re
|
|
|
61
39
|
* @property {string} [input] The input when opening the dialog.
|
|
62
40
|
*
|
|
63
41
|
* @extends {React.Component<TextInputProps>}
|
|
64
|
-
*/
|
|
65
|
-
var TextInput = /*#__PURE__*/function (_React$Component) {
|
|
42
|
+
*/var TextInput = /*#__PURE__*/function (_React$Component) {
|
|
66
43
|
(0, _inherits2["default"])(TextInput, _React$Component);
|
|
67
|
-
|
|
68
44
|
var _super = _createSuper(TextInput);
|
|
69
|
-
|
|
70
45
|
/**
|
|
71
46
|
* @param {Readonly<TextInputProps>} props
|
|
72
47
|
*/
|
|
73
48
|
function TextInput(props) {
|
|
74
49
|
var _this;
|
|
75
|
-
|
|
76
50
|
(0, _classCallCheck2["default"])(this, TextInput);
|
|
77
51
|
_this = _super.call(this, props);
|
|
78
52
|
_this.state = {
|
|
@@ -82,12 +56,10 @@ var TextInput = /*#__PURE__*/function (_React$Component) {
|
|
|
82
56
|
};
|
|
83
57
|
return _this;
|
|
84
58
|
}
|
|
85
|
-
|
|
86
59
|
(0, _createClass2["default"])(TextInput, [{
|
|
87
60
|
key: "render",
|
|
88
61
|
value: function render() {
|
|
89
62
|
var _this2 = this;
|
|
90
|
-
|
|
91
63
|
return /*#__PURE__*/_react["default"].createElement(_Dialog["default"], {
|
|
92
64
|
open: true,
|
|
93
65
|
onClose: function onClose() {
|
|
@@ -110,11 +82,9 @@ var TextInput = /*#__PURE__*/function (_React$Component) {
|
|
|
110
82
|
},
|
|
111
83
|
onChange: function onChange(e) {
|
|
112
84
|
var error = '';
|
|
113
|
-
|
|
114
85
|
if (_this2.props.verify) {
|
|
115
86
|
error = !_this2.props.verify(e.target.value);
|
|
116
87
|
}
|
|
117
|
-
|
|
118
88
|
if (_this2.props.rule) {
|
|
119
89
|
_this2.setState({
|
|
120
90
|
text: _this2.props.rule(e.target.value),
|
|
@@ -148,7 +118,6 @@ var TextInput = /*#__PURE__*/function (_React$Component) {
|
|
|
148
118
|
}]);
|
|
149
119
|
return TextInput;
|
|
150
120
|
}(_react["default"].Component);
|
|
151
|
-
|
|
152
121
|
TextInput.propTypes = {
|
|
153
122
|
onClose: _propTypes["default"].func.isRequired,
|
|
154
123
|
titleText: _propTypes["default"].string.isRequired,
|
|
@@ -162,10 +131,9 @@ TextInput.propTypes = {
|
|
|
162
131
|
// text, number, password, email
|
|
163
132
|
value: _propTypes["default"].string
|
|
164
133
|
};
|
|
165
|
-
/** @type {typeof TextInput} */
|
|
166
134
|
|
|
135
|
+
/** @type {typeof TextInput} */
|
|
167
136
|
var _export = (0, _withWidth["default"])()(TextInput);
|
|
168
|
-
|
|
169
137
|
var _default = _export;
|
|
170
138
|
exports["default"] = _default;
|
|
171
139
|
//# sourceMappingURL=TextInput.js.map
|
package/Dialogs/TextInput.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TextInput.js","names":["TextInput","props","state","text","input","value","error","onClose","titleText","promptText","labelText","type","e","charCode","verify","target","rule","setState","applyText","I18n","t","cancelText","React","Component","propTypes","PropTypes","func","isRequired","string","replace","_export","withWidth"],"sources":["TextInput.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport Button from '@mui/material/Button';\nimport TextField from '@mui/material/TextField';\nimport Dialog from '@mui/material/Dialog';\nimport DialogActions from '@mui/material/DialogActions';\nimport DialogContent from '@mui/material/DialogContent';\nimport DialogContentText from '@mui/material/DialogContentText';\nimport DialogTitle from '@mui/material/DialogTitle';\n\nimport I18n from '../i18n';\n\nimport IconClose from '@mui/icons-material/Close';\nimport IconCheck from '@mui/icons-material/Check';\n\nimport withWidth from '../Components/withWidth';\n\n/**\n * @typedef {object} TextInputProps\n * @property {(text: string | null) => void} onClose The dialog close callback.\n * @property {string} titleText The title text.\n * @property {string} [promptText] Prompt text (default: empty).\n * @property {string} [labelText] Label text (default: empty).\n * @property {string} cancelText The text of the cancel button.\n * @property {string} applyText The text of the apply button.\n * @property {(text: string) => string} [verify] The verification callback. Return a non-empty string if there was an error.\n * @property {(text: string) => string} [rule] The text replacement callback.\n * @property {'text' | 'number' | 'password' | 'email'} [type] The type of the textbox (default: text).\n * @property {string} [input] The input when opening the dialog.\n *\n * @extends {React.Component<TextInputProps>}\n */\nclass TextInput extends React.Component {\n /**\n * @param {Readonly<TextInputProps>} props\n */\n constructor(props) {\n super(props);\n\n this.state = {\n text: this.props.input || this.props.value || '', // input is deprectaed\n error: ''\n }\n }\n render() {\n return <Dialog open={true} onClose={() => this.props.onClose(null)} aria-labelledby=\"form-dialog-title\">\n <DialogTitle id=\"form-dialog-title\">{this.props.titleText}</DialogTitle>\n <DialogContent>\n <DialogContentText>\n {this.props.promptText}\n </DialogContentText>\n <TextField\n variant=\"standard\"\n autoFocus\n margin=\"dense\"\n error={!!this.state.error}\n title={this.state.error}\n value={this.state.text}\n label={this.props.labelText || ''}\n type={this.props.type || 'text'}\n onKeyPress={e => e.charCode === 13 && this.state.text && this.props.onClose(this.state.text)}\n onChange={e => {\n let error = '';\n if (this.props.verify) {\n error = !this.props.verify(e.target.value);\n }\n\n if (this.props.rule) {\n this.setState({text: this.props.rule(e.target.value), error});\n } else {\n this.setState({text: e.target.value, error});\n }\n }}\n fullWidth\n />\n </DialogContent>\n <DialogActions>\n <Button variant=\"contained\" disabled={!this.state.text || this.state.error} onClick={() => this.props.onClose(this.state.text)}\n color=\"primary\" startIcon={<IconCheck />}>{this.props.applyText || I18n.t('ra_Ok')}</Button>\n <Button color=\"grey\" variant=\"contained\" onClick={() => this.props.onClose(null)} startIcon={<IconClose />}>{this.props.cancelText || I18n.t('ra_Cancel')}</Button>\n </DialogActions>\n </Dialog>;\n }\n}\n\nTextInput.propTypes = {\n onClose: PropTypes.func.isRequired,\n titleText: PropTypes.string.isRequired,\n promptText: PropTypes.string,\n labelText: PropTypes.string,\n cancelText: PropTypes.string,\n applyText: PropTypes.string,\n verify: PropTypes.func,\n replace: PropTypes.func,\n type: PropTypes.string, // text, number, password, email\n value: PropTypes.string,\n};\n\n/** @type {typeof TextInput} */\nconst _export = withWidth()(TextInput);\nexport default _export;"],"mappings":"
|
|
1
|
+
{"version":3,"file":"TextInput.js","names":["TextInput","props","state","text","input","value","error","onClose","titleText","promptText","labelText","type","e","charCode","verify","target","rule","setState","applyText","I18n","t","cancelText","React","Component","propTypes","PropTypes","func","isRequired","string","replace","_export","withWidth"],"sources":["TextInput.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport Button from '@mui/material/Button';\nimport TextField from '@mui/material/TextField';\nimport Dialog from '@mui/material/Dialog';\nimport DialogActions from '@mui/material/DialogActions';\nimport DialogContent from '@mui/material/DialogContent';\nimport DialogContentText from '@mui/material/DialogContentText';\nimport DialogTitle from '@mui/material/DialogTitle';\n\nimport I18n from '../i18n';\n\nimport IconClose from '@mui/icons-material/Close';\nimport IconCheck from '@mui/icons-material/Check';\n\nimport withWidth from '../Components/withWidth';\n\n/**\n * @typedef {object} TextInputProps\n * @property {(text: string | null) => void} onClose The dialog close callback.\n * @property {string} titleText The title text.\n * @property {string} [promptText] Prompt text (default: empty).\n * @property {string} [labelText] Label text (default: empty).\n * @property {string} cancelText The text of the cancel button.\n * @property {string} applyText The text of the apply button.\n * @property {(text: string) => string} [verify] The verification callback. Return a non-empty string if there was an error.\n * @property {(text: string) => string} [rule] The text replacement callback.\n * @property {'text' | 'number' | 'password' | 'email'} [type] The type of the textbox (default: text).\n * @property {string} [input] The input when opening the dialog.\n *\n * @extends {React.Component<TextInputProps>}\n */\nclass TextInput extends React.Component {\n /**\n * @param {Readonly<TextInputProps>} props\n */\n constructor(props) {\n super(props);\n\n this.state = {\n text: this.props.input || this.props.value || '', // input is deprectaed\n error: ''\n }\n }\n render() {\n return <Dialog open={true} onClose={() => this.props.onClose(null)} aria-labelledby=\"form-dialog-title\">\n <DialogTitle id=\"form-dialog-title\">{this.props.titleText}</DialogTitle>\n <DialogContent>\n <DialogContentText>\n {this.props.promptText}\n </DialogContentText>\n <TextField\n variant=\"standard\"\n autoFocus\n margin=\"dense\"\n error={!!this.state.error}\n title={this.state.error}\n value={this.state.text}\n label={this.props.labelText || ''}\n type={this.props.type || 'text'}\n onKeyPress={e => e.charCode === 13 && this.state.text && this.props.onClose(this.state.text)}\n onChange={e => {\n let error = '';\n if (this.props.verify) {\n error = !this.props.verify(e.target.value);\n }\n\n if (this.props.rule) {\n this.setState({text: this.props.rule(e.target.value), error});\n } else {\n this.setState({text: e.target.value, error});\n }\n }}\n fullWidth\n />\n </DialogContent>\n <DialogActions>\n <Button variant=\"contained\" disabled={!this.state.text || this.state.error} onClick={() => this.props.onClose(this.state.text)}\n color=\"primary\" startIcon={<IconCheck />}>{this.props.applyText || I18n.t('ra_Ok')}</Button>\n <Button color=\"grey\" variant=\"contained\" onClick={() => this.props.onClose(null)} startIcon={<IconClose />}>{this.props.cancelText || I18n.t('ra_Cancel')}</Button>\n </DialogActions>\n </Dialog>;\n }\n}\n\nTextInput.propTypes = {\n onClose: PropTypes.func.isRequired,\n titleText: PropTypes.string.isRequired,\n promptText: PropTypes.string,\n labelText: PropTypes.string,\n cancelText: PropTypes.string,\n applyText: PropTypes.string,\n verify: PropTypes.func,\n replace: PropTypes.func,\n type: PropTypes.string, // text, number, password, email\n value: PropTypes.string,\n};\n\n/** @type {typeof TextInput} */\nconst _export = withWidth()(TextInput);\nexport default _export;"],"mappings":";;;;;;;;;;;;AAAA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AAEA;AACA;AAEA;AAAgD;AAAA;AAEhD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAdA,IAeMA,SAAS;EAAA;EAAA;EACX;AACJ;AACA;EACI,mBAAYC,KAAK,EAAE;IAAA;IAAA;IACf,0BAAMA,KAAK;IAEX,MAAKC,KAAK,GAAG;MACTC,IAAI,EAAE,MAAKF,KAAK,CAACG,KAAK,IAAI,MAAKH,KAAK,CAACI,KAAK,IAAI,EAAE;MAAE;MAClDC,KAAK,EAAE;IACX,CAAC;IAAA;EACL;EAAC;IAAA;IAAA,OACD,kBAAS;MAAA;MACL,oBAAO,gCAAC,kBAAM;QAAC,IAAI,EAAE,IAAK;QAAC,OAAO,EAAE;UAAA,OAAM,MAAI,CAACL,KAAK,CAACM,OAAO,CAAC,IAAI,CAAC;QAAA,CAAC;QAAC,mBAAgB;MAAmB,gBACnG,gCAAC,uBAAW;QAAC,EAAE,EAAC;MAAmB,GAAE,IAAI,CAACN,KAAK,CAACO,SAAS,CAAe,eACxE,gCAAC,yBAAa,qBACV,gCAAC,6BAAiB,QACb,IAAI,CAACP,KAAK,CAACQ,UAAU,CACN,eACpB,gCAAC,qBAAS;QACN,OAAO,EAAC,UAAU;QAClB,SAAS;QACT,MAAM,EAAC,OAAO;QACd,KAAK,EAAE,CAAC,CAAC,IAAI,CAACP,KAAK,CAACI,KAAM;QAC1B,KAAK,EAAE,IAAI,CAACJ,KAAK,CAACI,KAAM;QACxB,KAAK,EAAE,IAAI,CAACJ,KAAK,CAACC,IAAK;QACvB,KAAK,EAAE,IAAI,CAACF,KAAK,CAACS,SAAS,IAAI,EAAG;QAClC,IAAI,EAAE,IAAI,CAACT,KAAK,CAACU,IAAI,IAAI,MAAO;QAChC,UAAU,EAAE,oBAAAC,CAAC;UAAA,OAAIA,CAAC,CAACC,QAAQ,KAAK,EAAE,IAAI,MAAI,CAACX,KAAK,CAACC,IAAI,IAAI,MAAI,CAACF,KAAK,CAACM,OAAO,CAAC,MAAI,CAACL,KAAK,CAACC,IAAI,CAAC;QAAA,CAAC;QAC7F,QAAQ,EAAE,kBAAAS,CAAC,EAAI;UACX,IAAIN,KAAK,GAAG,EAAE;UACd,IAAI,MAAI,CAACL,KAAK,CAACa,MAAM,EAAE;YACnBR,KAAK,GAAG,CAAC,MAAI,CAACL,KAAK,CAACa,MAAM,CAACF,CAAC,CAACG,MAAM,CAACV,KAAK,CAAC;UAC9C;UAEA,IAAI,MAAI,CAACJ,KAAK,CAACe,IAAI,EAAE;YACjB,MAAI,CAACC,QAAQ,CAAC;cAACd,IAAI,EAAE,MAAI,CAACF,KAAK,CAACe,IAAI,CAACJ,CAAC,CAACG,MAAM,CAACV,KAAK,CAAC;cAAEC,KAAK,EAALA;YAAK,CAAC,CAAC;UACjE,CAAC,MAAM;YACH,MAAI,CAACW,QAAQ,CAAC;cAACd,IAAI,EAAES,CAAC,CAACG,MAAM,CAACV,KAAK;cAAEC,KAAK,EAALA;YAAK,CAAC,CAAC;UAChD;QACJ,CAAE;QACF,SAAS;MAAA,EACX,CACU,eAChB,gCAAC,yBAAa,qBACV,gCAAC,kBAAM;QAAC,OAAO,EAAC,WAAW;QAAC,QAAQ,EAAE,CAAC,IAAI,CAACJ,KAAK,CAACC,IAAI,IAAI,IAAI,CAACD,KAAK,CAACI,KAAM;QAAC,OAAO,EAAE;UAAA,OAAM,MAAI,CAACL,KAAK,CAACM,OAAO,CAAC,MAAI,CAACL,KAAK,CAACC,IAAI,CAAC;QAAA,CAAC;QACvH,KAAK,EAAC,SAAS;QAAC,SAAS,eAAE,gCAAC,iBAAS;MAAI,GAAE,IAAI,CAACF,KAAK,CAACiB,SAAS,IAAIC,gBAAI,CAACC,CAAC,CAAC,OAAO,CAAC,CAAU,eACpG,gCAAC,kBAAM;QAAC,KAAK,EAAC,MAAM;QAAC,OAAO,EAAC,WAAW;QAAC,OAAO,EAAE;UAAA,OAAM,MAAI,CAACnB,KAAK,CAACM,OAAO,CAAC,IAAI,CAAC;QAAA,CAAC;QAAC,SAAS,eAAE,gCAAC,iBAAS;MAAI,GAAE,IAAI,CAACN,KAAK,CAACoB,UAAU,IAAIF,gBAAI,CAACC,CAAC,CAAC,WAAW,CAAC,CAAU,CACvJ,CACX;IACb;EAAC;EAAA;AAAA,EAlDmBE,iBAAK,CAACC,SAAS;AAqDvCvB,SAAS,CAACwB,SAAS,GAAG;EAClBjB,OAAO,EAAEkB,qBAAS,CAACC,IAAI,CAACC,UAAU;EAClCnB,SAAS,EAAEiB,qBAAS,CAACG,MAAM,CAACD,UAAU;EACtClB,UAAU,EAAEgB,qBAAS,CAACG,MAAM;EAC5BlB,SAAS,EAAEe,qBAAS,CAACG,MAAM;EAC3BP,UAAU,EAAEI,qBAAS,CAACG,MAAM;EAC5BV,SAAS,EAAEO,qBAAS,CAACG,MAAM;EAC3Bd,MAAM,EAAEW,qBAAS,CAACC,IAAI;EACtBG,OAAO,EAAEJ,qBAAS,CAACC,IAAI;EACvBf,IAAI,EAAEc,qBAAS,CAACG,MAAM;EAAE;EACxBvB,KAAK,EAAEoB,qBAAS,CAACG;AACrB,CAAC;;AAED;AACA,IAAME,OAAO,GAAG,IAAAC,qBAAS,GAAE,CAAC/B,SAAS,CAAC;AAAC,eACxB8B,OAAO;AAAA"}
|