@iobroker/adapter-react-v5 2.1.9 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Components/404.js.map +1 -1
- package/Components/ColorPicker.js.map +1 -1
- package/Components/ComplexCron.js.map +1 -1
- package/Components/FileBrowser.js +248 -222
- package/Components/FileBrowser.js.map +1 -1
- package/Components/FileViewer.js +219 -75
- package/Components/FileViewer.js.map +1 -1
- package/Components/Icon.js.map +1 -1
- package/Components/IconPicker.js.map +1 -1
- package/Components/IconSelector.js.map +1 -1
- package/Components/Image.js.map +1 -1
- package/Components/JsonConfigComponent/ChipInput.js +925 -0
- package/Components/JsonConfigComponent/ChipInput.js.map +1 -0
- package/Components/JsonConfigComponent/ConfigAlive.js +135 -0
- package/Components/JsonConfigComponent/ConfigAlive.js.map +1 -0
- package/Components/JsonConfigComponent/ConfigAutocomplete.js +204 -0
- package/Components/JsonConfigComponent/ConfigAutocomplete.js.map +1 -0
- package/Components/JsonConfigComponent/ConfigAutocompleteSendTo.js +311 -0
- package/Components/JsonConfigComponent/ConfigAutocompleteSendTo.js.map +1 -0
- package/Components/JsonConfigComponent/ConfigCRON.js +195 -0
- package/Components/JsonConfigComponent/ConfigCRON.js.map +1 -0
- package/Components/JsonConfigComponent/ConfigCertificateSelect.js +178 -0
- package/Components/JsonConfigComponent/ConfigCertificateSelect.js.map +1 -0
- package/Components/JsonConfigComponent/ConfigCheckbox.js +112 -0
- package/Components/JsonConfigComponent/ConfigCheckbox.js.map +1 -0
- package/Components/JsonConfigComponent/ConfigChip.js +149 -0
- package/Components/JsonConfigComponent/ConfigChip.js.map +1 -0
- package/Components/JsonConfigComponent/ConfigColor.js +156 -0
- package/Components/JsonConfigComponent/ConfigColor.js.map +1 -0
- package/Components/JsonConfigComponent/ConfigCoordinates.js +165 -0
- package/Components/JsonConfigComponent/ConfigCoordinates.js.map +1 -0
- package/Components/JsonConfigComponent/ConfigCustomEasyAccess.js +180 -0
- package/Components/JsonConfigComponent/ConfigCustomEasyAccess.js.map +1 -0
- package/Components/JsonConfigComponent/ConfigDatePicker.js +117 -0
- package/Components/JsonConfigComponent/ConfigDatePicker.js.map +1 -0
- package/Components/JsonConfigComponent/ConfigGeneric.js +660 -0
- package/Components/JsonConfigComponent/ConfigGeneric.js.map +1 -0
- package/Components/JsonConfigComponent/ConfigIP.js +151 -0
- package/Components/JsonConfigComponent/ConfigIP.js.map +1 -0
- package/Components/JsonConfigComponent/ConfigImageUpload.js +215 -0
- package/Components/JsonConfigComponent/ConfigImageUpload.js.map +1 -0
- package/Components/JsonConfigComponent/ConfigInstanceSelect.js +197 -0
- package/Components/JsonConfigComponent/ConfigInstanceSelect.js.map +1 -0
- package/Components/JsonConfigComponent/ConfigJsonEditor.js +211 -0
- package/Components/JsonConfigComponent/ConfigJsonEditor.js.map +1 -0
- package/Components/JsonConfigComponent/ConfigLanguage.js +175 -0
- package/Components/JsonConfigComponent/ConfigLanguage.js.map +1 -0
- package/Components/JsonConfigComponent/ConfigNumber.js +194 -0
- package/Components/JsonConfigComponent/ConfigNumber.js.map +1 -0
- package/Components/JsonConfigComponent/ConfigObjectId.js +201 -0
- package/Components/JsonConfigComponent/ConfigObjectId.js.map +1 -0
- package/Components/JsonConfigComponent/ConfigPanel.js +421 -0
- package/Components/JsonConfigComponent/ConfigPanel.js.map +1 -0
- package/Components/JsonConfigComponent/ConfigPassword.js +236 -0
- package/Components/JsonConfigComponent/ConfigPassword.js.map +1 -0
- package/Components/JsonConfigComponent/ConfigPattern.js +94 -0
- package/Components/JsonConfigComponent/ConfigPattern.js.map +1 -0
- package/Components/JsonConfigComponent/ConfigSelect.js +163 -0
- package/Components/JsonConfigComponent/ConfigSelect.js.map +1 -0
- package/Components/JsonConfigComponent/ConfigSelectSendTo.js +258 -0
- package/Components/JsonConfigComponent/ConfigSelectSendTo.js.map +1 -0
- package/Components/JsonConfigComponent/ConfigSendto.js +282 -0
- package/Components/JsonConfigComponent/ConfigSendto.js.map +1 -0
- package/Components/JsonConfigComponent/ConfigSetState.js +266 -0
- package/Components/JsonConfigComponent/ConfigSetState.js.map +1 -0
- package/Components/JsonConfigComponent/ConfigStaticDivider.js +88 -0
- package/Components/JsonConfigComponent/ConfigStaticDivider.js.map +1 -0
- package/Components/JsonConfigComponent/ConfigStaticHeader.js +81 -0
- package/Components/JsonConfigComponent/ConfigStaticHeader.js.map +1 -0
- package/Components/JsonConfigComponent/ConfigStaticImage.js +88 -0
- package/Components/JsonConfigComponent/ConfigStaticImage.js.map +1 -0
- package/Components/JsonConfigComponent/ConfigStaticText.js +104 -0
- package/Components/JsonConfigComponent/ConfigStaticText.js.map +1 -0
- package/Components/JsonConfigComponent/ConfigTable.js +651 -0
- package/Components/JsonConfigComponent/ConfigTable.js.map +1 -0
- package/Components/JsonConfigComponent/ConfigTabs.js +166 -0
- package/Components/JsonConfigComponent/ConfigTabs.js.map +1 -0
- package/Components/JsonConfigComponent/ConfigText.js +170 -0
- package/Components/JsonConfigComponent/ConfigText.js.map +1 -0
- package/Components/JsonConfigComponent/ConfigTextSendTo.js +168 -0
- package/Components/JsonConfigComponent/ConfigTextSendTo.js.map +1 -0
- package/Components/JsonConfigComponent/ConfigTimePicker.js +111 -0
- package/Components/JsonConfigComponent/ConfigTimePicker.js.map +1 -0
- package/Components/JsonConfigComponent/ConfigTopic.js +140 -0
- package/Components/JsonConfigComponent/ConfigTopic.js.map +1 -0
- package/Components/JsonConfigComponent/ConfigUser.js +176 -0
- package/Components/JsonConfigComponent/ConfigUser.js.map +1 -0
- package/Components/JsonConfigComponent/index.js +511 -0
- package/Components/JsonConfigComponent/index.js.map +1 -0
- package/Components/Loader.js.map +1 -1
- package/Components/Loaders/PT.js.map +1 -1
- package/Components/Loaders/Vendor.js.map +1 -1
- package/Components/Logo.js.map +1 -1
- package/Components/MDUtils.js.map +1 -1
- package/Components/ObjectBrowser.js +24 -42
- package/Components/ObjectBrowser.js.map +1 -1
- package/Components/Router.js.map +1 -1
- package/Components/SaveCloseButtons.js.map +1 -1
- package/Components/Schedule.js.map +1 -1
- package/Components/SelectWithIcon.js.map +1 -1
- package/Components/SimpleCron/cronText.js.map +1 -1
- package/Components/SimpleCron/index.js.map +1 -1
- package/Components/TabContainer.js.map +1 -1
- package/Components/TabContent.js.map +1 -1
- package/Components/TabHeader.js.map +1 -1
- package/Components/TextWithIcon.js.map +1 -1
- package/Components/TreeTable.js.map +1 -1
- package/Components/Utils.js +25 -0
- package/Components/Utils.js.map +1 -1
- package/Components/withWidth.js +42 -0
- package/Components/withWidth.js.map +1 -0
- package/Connection.js.map +1 -1
- package/Dialogs/ComplexCron.js.map +1 -1
- package/Dialogs/Confirm.js.map +1 -1
- package/Dialogs/Cron.js.map +1 -1
- package/Dialogs/Error.js.map +1 -1
- package/Dialogs/Message.js.map +1 -1
- package/Dialogs/SelectID.js.map +1 -1
- package/Dialogs/SimpleCron.js.map +1 -1
- package/Dialogs/TextInput.js.map +1 -1
- package/GenericApp.js.map +1 -1
- package/README.md +11 -1
- package/Theme.js.map +1 -1
- package/icons/IconAdapter.js.map +1 -1
- package/icons/IconAlias.js.map +1 -1
- package/icons/IconChannel.js.map +1 -1
- package/icons/IconClearFilter.js.map +1 -1
- package/icons/IconClosed.js.map +1 -1
- package/icons/IconCopy.js.map +1 -1
- package/icons/IconDevice.js.map +1 -1
- package/icons/IconDocument.js.map +1 -1
- package/icons/IconExpert.js.map +1 -1
- package/icons/IconFx.js.map +1 -1
- package/icons/IconInstance.js.map +1 -1
- package/icons/IconLogout.js.map +1 -1
- package/icons/IconOpen.js.map +1 -1
- package/icons/IconState.js.map +1 -1
- package/package.json +5 -5
package/GenericApp.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GenericApp.js","names":["window","localStorage","getItem","setItem","GenericApp","props","settings","ConnectionClass","Connection","isWeb","io","location","port","SocketClient","e","id","obj","socket","systemLang","common","language","I18n","setLanguage","_systemConfig","expertMode","setState","getExpertMode","message","data","newThemeName","Utils","getThemeName","setThemeName","theme","createTheme","themeName","themeType","getThemeType","onThemeChange","onThemeChanged","onToggleExpertMode","console","warn","JSON","stringify","resizeTimer","clearTimeout","setTimeout","width","getWidth","query","search","replace","args","trim","split","filter","t","forEach","b","parts","length","instance","undefined","parseInt","slice","tmp","pathname","adapterName","instanceId","newReact","Router","getLocation","tab","themeInstance","state","selectedTab","selectedTabNum","errorText","changed","connected","loaded","isConfigurationError","toast","bottomButtons","translations","require","Object","keys","lang","assign","setTranslations","savedNative","encryptedFields","sentryDSN","name","doNotLoadAllObjects","onProgress","progress","PROGRESS","CONNECTING","READY","onReady","objects","scripts","subscribeObject","onSystemConfigChanged","then","getSystemConfig","_secret","secret","getObject","instanceObj","waitPromise","sentryEnabled","diag","version","disableDataReporting","host","sentryStarted","Sentry","init","dsn","release","integrations","SentryIntegrations","Dedupe","sentryInited","uuidObj","uuid","configureScope","scope","setUser","Promise","resolve","onPrepareLoad","encryptedNative","parse","onConnectionReady","onError","err","error","showError","addEventListener","onResize","onReceiveMessage","removeEventListener","palette","mode","sessionStorage","value","result","i","String","fromCharCode","charCodeAt","selectTab","index","attr","encrypt","decrypt","includes","push","_socket","emit","doc","rows","item","webExtendable","map","reject","ip","_host","IPs4","address","family","IPs6","hardware","networkInterfaces","eth","inter","isClose","oldObj","_oldObj","a","hasOwnProperty","onPrepareSave","setObject","globalThis","onClose","vertical","horizontal","classes","close","native","isChanged","newNative","getIsChanged","onSave","attrs","shift","Error","_updateNativeValue","cb","text","renderError","renderToast","renderSaveCloseButtons","SIZES","xs","sm","md","lg","xl","innerWidth","reverse","widthComputed","find","key","parent","$iframeDialog","postMessage","propTypes","PropTypes","string","func","object","array","bool"],"sources":["GenericApp.js"],"sourcesContent":["/**\n * Copyright 2018-2022 bluefox <dogafox@gmail.com>\n *\n * MIT License\n *\n **/\nimport React from 'react';\nimport Connection, {PROGRESS} from './Connection';\nimport PropTypes from 'prop-types';\nimport * as Sentry from '@sentry/browser';\nimport * as SentryIntegrations from '@sentry/integrations';\n\nimport DialogError from './Dialogs/Error';\nimport Snackbar from '@mui/material/Snackbar';\nimport IconButton from '@mui/material/IconButton';\n\nimport IconClose from '@mui/icons-material/Close';\n\nimport printPrompt from './Prompt';\nimport theme from './Theme';\nimport Loader from './Components/Loader';\nimport Router from './Components/Router';\nimport Utils from './Components/Utils';\nimport SaveCloseButtons from './Components/SaveCloseButtons';\nimport I18n from './i18n';\n\nimport './index.css';\n\nif (!window.localStorage) {\n window.localStorage = {\n getItem: () => null,\n setItem: () => null,\n };\n}\n\n/**\n * @extends {Router<import('./types').GenericAppProps, import('./types').GenericAppState>}\n */\nclass GenericApp extends Router {\n /**\n * @param {import('./types').GenericAppProps} props\n * @param {import('./types').GenericAppSettings | undefined} settings\n */\n constructor(props, settings) {\n const ConnectionClass = props.Connection || settings.Connection || Connection;\n\n // Remove `!Connection.isWeb() && window.adapterName !== 'material'` when iobroker.socket will support native ws\n if (!ConnectionClass.isWeb() && window.io && window.location.port === '3000') {\n try {\n const io = new window.SocketClient();\n delete window.io;\n window.io = io;\n } catch (e) {\n // ignore\n }\n }\n\n super(props);\n\n printPrompt();\n\n let query = (window.location.search || '').replace(/^\\?/, '').replace(/#.*$/, '');\n let args = {};\n query.trim().split('&').filter(t => t.trim()).forEach(b => {\n const parts = b.split('=');\n args[parts[0]] = parts.length === 2 ? parts[1] : true;\n if (args[parts[0]] === 'true') {\n args[parts[0]] = true;\n } else if (args[parts[0]] === 'false') {\n args[parts[0]] = false;\n }\n });\n\n // extract instance from URL\n this.instance = args.instance !== undefined ? parseInt(args.instance, 10) || 0 : (parseInt(window.location.search.slice(1), 10) || 0);\n // extract adapter name from URL\n const tmp = window.location.pathname.split('/');\n this.adapterName = settings?.adapterName || props.adapterName || window.adapterName || tmp[tmp.length - 2] || 'iot';\n this.instanceId = `system.adapter.${this.adapterName}.${this.instance}`;\n this.newReact = args.newReact === true; // it is admin5\n\n const location = Router.getLocation();\n location.tab = location.tab || window.localStorage.getItem(this.adapterName + '-adapter') || '';\n\n const themeInstance = this.createTheme();\n\n this.state = {\n selectedTab: window.localStorage.getItem(this.adapterName + '-adapter') || '',\n selectedTabNum: -1,\n native: {},\n errorText: '',\n changed: false,\n connected: false,\n loaded: false,\n isConfigurationError: '',\n expertMode: false,\n toast: '',\n theme: themeInstance,\n themeName: this.getThemeName(themeInstance),\n themeType: this.getThemeType(themeInstance),\n bottomButtons: (settings && settings.bottomButtons) === false ? false : ((props && props.bottomButtons) === false ? false : true),\n width: GenericApp.getWidth(),\n };\n\n // init translations\n const translations = {\n 'en': require('./i18n/en.json'),\n 'de': require('./i18n/de.json'),\n 'ru': require('./i18n/ru.json'),\n 'pt': require('./i18n/pt.json'),\n 'nl': require('./i18n/nl.json'),\n 'fr': require('./i18n/fr.json'),\n 'it': require('./i18n/it.json'),\n 'es': require('./i18n/es.json'),\n 'pl': require('./i18n/pl.json'),\n 'zh-cn': require('./i18n/zh-cn.json'),\n };\n\n // merge together\n if (settings && settings.translations) {\n Object.keys(settings.translations).forEach(lang => translations[lang] = Object.assign(translations[lang], settings.translations[lang]));\n } else if (props.translations) {\n Object.keys(props.translations).forEach(lang => translations[lang] = Object.assign(translations[lang], props.translations[lang]));\n }\n\n I18n.setTranslations(translations);\n\n this.savedNative = {}; // to detect if the config changed\n\n this.encryptedFields = props.encryptedFields || settings?.encryptedFields || [];\n\n this.sentryDSN = (settings && settings.sentryDSN) || props.sentryDSN;\n\n this.socket = new ConnectionClass({\n ...(props?.socket || settings?.socket),\n name: this.adapterName,\n doNotLoadAllObjects: settings?.doNotLoadAllObjects,\n onProgress: progress => {\n if (progress === PROGRESS.CONNECTING) {\n this.setState({connected: false});\n } else if (progress === PROGRESS.READY) {\n this.setState({connected: true});\n } else {\n this.setState({connected: true});\n }\n },\n onReady: (objects, scripts) => {\n I18n.setLanguage(this.socket.systemLang);\n\n // subscribe because of language and expert mode\n this.socket.subscribeObject('system.config', this.onSystemConfigChanged)\n .then(() => this.getSystemConfig())\n .then(obj => {\n this._secret = (typeof obj !== 'undefined' && obj.native && obj.native.secret) || 'Zgfr56gFe87jJOM';\n this._systemConfig = obj?.common || {};\n return this.socket.getObject(this.instanceId);\n })\n .then(instanceObj => {\n let waitPromise;\n\n const sentryEnabled =\n this._systemConfig.diag !== 'none' &&\n instanceObj &&\n instanceObj.common &&\n instanceObj.common.name &&\n instanceObj.common.version &&\n !instanceObj.common.disableDataReporting &&\n window.location.host !== 'localhost:3000';\n\n // activate sentry plugin\n if (!this.sentryStarted && this.sentryDSN && sentryEnabled) {\n this.sentryStarted = true;\n\n Sentry.init({\n dsn: this.sentryDSN,\n release: `iobroker.${instanceObj.common.name}@${instanceObj.common.version}`,\n integrations: [\n new SentryIntegrations.Dedupe()\n ]\n });\n }\n\n // read UUID and init sentry with it.\n // for backward compatibility it will be processed separately from above logic: some adapters could still have this.sentryDSN as undefined\n if (!this.sentryInited && sentryEnabled) {\n this.sentryInited = true;\n\n waitPromise = this.socket.getObject('system.meta.uuid')\n .then(uuidObj => {\n if (uuidObj && uuidObj.native && uuidObj.native.uuid) {\n Sentry.configureScope(scope =>\n scope.setUser({id: uuidObj.native.uuid}));\n }\n });\n }\n\n waitPromise = waitPromise || Promise.resolve();\n\n waitPromise\n .then(() => {\n if (instanceObj) {\n this.common = instanceObj?.common;\n this.onPrepareLoad(instanceObj.native, instanceObj.encryptedNative); // decode all secrets\n this.savedNative = JSON.parse(JSON.stringify(instanceObj.native));\n this.setState({native: instanceObj.native, loaded: true, expertMode: this.getExpertMode()}, () =>\n this.onConnectionReady && this.onConnectionReady());\n } else {\n console.warn('Cannot load instance settings');\n this.setState({native: {}, loaded: true, expertMode: this.getExpertMode()}, () => this.onConnectionReady && this.onConnectionReady());\n }\n });\n });\n },\n onError: err => {\n console.error(err);\n this.showError(err);\n }\n });\n }\n\n onSystemConfigChanged = (id, obj) => {\n if (obj && id === 'system.config') {\n if (this.socket.systemLang !== obj?.common.language) {\n this.socket.systemLang = obj?.common.language || 'en';\n I18n.setLanguage(this.socket.systemLang);\n }\n\n if (this._systemConfig.expertMode !== !!obj?.common?.expertMode) {\n this._systemConfig = obj?.common || {};\n this.setState({expertMode: this.getExpertMode()});\n } else {\n this._systemConfig = obj?.common || {};\n }\n }\n }\n\n /**\n * Called immediately after a component is mounted. Setting state here will trigger re-rendering.\n */\n componentDidMount() {\n window.addEventListener('resize', this.onResize, true);\n window.addEventListener('message', this.onReceiveMessage, false);\n super.componentDidMount();\n }\n\n /**\n * Called immediately before a component is destroyed.\n */\n componentWillUnmount() {\n window.removeEventListener('resize', this.onResize, true);\n window.removeEventListener('message', this.onReceiveMessage, false);\n super.componentWillUnmount();\n }\n\n onReceiveMessage = message => {\n if (message?.data) {\n if (message.data === 'updateTheme') {\n const newThemeName = Utils.getThemeName()\n Utils.setThemeName(Utils.getThemeName());\n\n const theme = this.createTheme(newThemeName);\n\n this.setState({\n theme,\n themeName: this.getThemeName(theme),\n themeType: this.getThemeType(theme)\n }, () => {\n this.props.onThemeChange && this.props.onThemeChange(newThemeName);\n this.onThemeChanged && this.onThemeChanged(newThemeName);\n });\n } else if (message.data === 'updateExpertMode') {\n this.onToggleExpertMode && this.onToggleExpertMode(this.getExpertMode());\n } else {\n console.warn('Received unknown message: ' + JSON.stringify(message.data));\n }\n }\n };\n\n /**\n * @private\n */\n onResize = () => {\n this.resizeTimer && clearTimeout(this.resizeTimer);\n this.resizeTimer = setTimeout(() => {\n this.resizeTimer = null;\n this.setState({width: GenericApp.getWidth()});\n }, 200);\n };\n\n /**\n * Gets the width depending on the window inner width.\n * @returns {import('./types').Width}\n */\n static getWidth() {\n /**\n * innerWidth |xs sm md lg xl\n * |-------|-------|-------|-------|------>\n * width | xs | sm | md | lg | xl\n */\n\n const SIZES = {\n xs: 0,\n sm: 600,\n md: 960,\n lg: 1280,\n xl: 1920\n };\n const width = window.innerWidth;\n const keys = Object.keys(SIZES).reverse();\n const widthComputed = keys.find(key => width >= SIZES[key]);\n\n return widthComputed || 'xs';\n }\n\n /**\n * Get a theme\n * @param {string} name Theme name\n * @returns {import('./types').Theme}\n */\n createTheme(name = '') {\n return theme(Utils.getThemeName(name));\n }\n\n /**\n * Get the theme name\n * @param {import('./types').Theme} theme Theme\n * @returns {string} Theme name\n */\n getThemeName(theme) {\n return theme.name;\n }\n\n /**\n * Get the theme type\n * @param {import('./types').Theme} theme Theme\n * @returns {string} Theme type\n */\n getThemeType(theme) {\n return theme.palette.mode;\n }\n\n /**\n * Changes the current theme\n */\n toggleTheme() {\n const themeName = this.state.themeName;\n\n // dark => blue => colored => light => dark\n const newThemeName = themeName === 'dark' ? 'blue' :\n (themeName === 'blue' ? 'colored' :\n (themeName === 'colored' ? 'light' : 'dark'));\n\n Utils.setThemeName(newThemeName);\n\n const theme = this.createTheme(newThemeName);\n\n this.setState({\n theme,\n themeName: this.getThemeName(theme),\n themeType: this.getThemeType(theme)\n }, () => {\n this.props.onThemeChange && this.props.onThemeChange(newThemeName);\n this.onThemeChanged && this.onThemeChanged(newThemeName);\n });\n }\n\n /**\n * Gets the system configuration.\n * @returns {Promise<ioBroker.OtherObject>}\n */\n getSystemConfig() {\n return this.socket.getSystemConfig();\n }\n\n /**\n * Get current expert mode\n * @returns {boolean}\n */\n getExpertMode() {\n return window.sessionStorage.getItem('App.expertMode') === 'true' || !!this._systemConfig.expertMode;\n }\n\n /**\n * Gets called when the socket.io connection is ready.\n * You can overload this function to execute own commands.\n */\n onConnectionReady() {\n }\n\n /**\n * Encrypts a string.\n * @param {string} value\n * @returns {string}\n */\n encrypt(value) {\n let result = '';\n for (let i = 0; i < value.length; i++) {\n result += String.fromCharCode(this._secret[i % this._secret.length].charCodeAt(0) ^ value.charCodeAt(i));\n }\n return result;\n }\n\n /**\n * Decrypts a string.\n * @param {string} value\n * @returns {string}\n */\n decrypt(value) {\n let result = '';\n for (let i = 0; i < value.length; i++) {\n result += String.fromCharCode(this._secret[i % this._secret.length].charCodeAt(0) ^ value.charCodeAt(i));\n }\n return result;\n }\n\n /**\n * Gets called when the navigation hash changes.\n * You may override this if needed.\n */\n onHashChanged() {\n const location = Router.getLocation();\n if (location.tab !== this.state.selectedTab) {\n this.selectTab(location.tab);\n }\n }\n\n /**\n * Selects the given tab.\n * @param {string} tab\n * @param {number} [index]\n */\n selectTab(tab, index) {\n window.localStorage[this.adapterName + '-adapter'] = tab;\n this.setState({selectedTab: tab, selectedTabNum: index})\n }\n\n /**\n * Gets called before the settings are saved.\n * You may override this if needed.\n * @param {Record<string, any>} settings\n */\n onPrepareSave(settings) {\n // here you can encode values\n this.encryptedFields && this.encryptedFields.forEach(attr => {\n if (settings[attr]) {\n settings[attr] = this.encrypt(settings[attr]);\n }\n });\n\n return true;\n }\n\n /**\n * Gets called after the settings are loaded.\n * You may override this if needed.\n * @param {Record<string, any>} settings\n * @param {string[]} encryptedNative optional list of fields to be decrypted\n */\n onPrepareLoad(settings, encryptedNative) {\n // here you can encode values\n this.encryptedFields && this.encryptedFields.forEach(attr => {\n if (settings[attr]) {\n settings[attr] = this.decrypt(settings[attr]);\n }\n });\n encryptedNative && encryptedNative.forEach(attr => {\n this.encryptedFields = this.encryptedFields || [];\n !this.encryptedFields.includes(attr) && this.encryptedFields.push(attr);\n if (settings[attr]) {\n settings[attr] = this.decrypt(settings[attr]);\n }\n });\n }\n\n /**\n * Gets the extendable instances.\n * @returns {Promise<any[]>}\n */\n getExtendableInstances() {\n return new Promise(resolve => {\n this.socket._socket.emit('getObjectView', 'system', 'instance', null, (err, doc) => {\n if (err) {\n resolve([]);\n } else {\n resolve(doc.rows.filter(item => item.value.common.webExtendable).map(item => item.value));\n }\n });\n });\n }\n\n /**\n * Gets the IP addresses of the given host.\n * @param {string} host\n */\n getIpAddresses(host) {\n return new Promise((resolve, reject) => {\n this.socket._socket.emit('getHostByIp', host || this.common.host, (ip, _host) => {\n const IPs4 = [{name: '[IPv4] 0.0.0.0 - ' + I18n.t('ra_Listen on all IPs'), address: '0.0.0.0', family: 'ipv4'}];\n const IPs6 = [{name: '[IPv6] ::', address: '::', family: 'ipv6'}];\n if (_host) {\n host = _host;\n if (host.native.hardware && host.native.hardware.networkInterfaces) {\n Object.keys(host.native.hardware.networkInterfaces).forEach(eth =>\n host.native.hardware.networkInterfaces[eth].forEach(inter => {\n if (inter.family !== 'IPv6') {\n IPs4.push({name: '[' + inter.family + '] ' + inter.address + ' - ' + eth, address: inter.address, family: 'ipv4'});\n } else {\n IPs6.push({name: '[' + inter.family + '] ' + inter.address + ' - ' + eth, address: inter.address, family: 'ipv6'});\n }\n }));\n }\n IPs6.forEach(ip => IPs4.push(ip));\n }\n resolve(IPs4);\n });\n });\n }\n\n /**\n * Saves the settings to the server.\n * @param {boolean} isClose True if the user is closing the dialog.\n */\n onSave(isClose) {\n let oldObj;\n if (this.state.isConfigurationError) {\n this.setState({errorText: this.state.isConfigurationError});\n return;\n }\n\n this.socket.getObject(this.instanceId)\n .then(_oldObj => {\n oldObj = _oldObj || {};\n\n for (const a in this.state.native) {\n if (this.state.native.hasOwnProperty(a)) {\n if (this.state.native[a] === null) {\n oldObj.native[a] = null;\n } else\n if (this.state.native[a] !== undefined) {\n oldObj.native[a] = JSON.parse(JSON.stringify(this.state.native[a]));\n } else {\n delete oldObj.native[a];\n }\n }\n }\n\n if (this.state.common) {\n for (const b in this.state.common) {\n if (this.state.common[b] === null) {\n oldObj.common[b] = null;\n } else\n if (this.state.common[b] !== undefined) {\n oldObj.common[b] = JSON.parse(JSON.stringify(this.state.common[b]));\n } else {\n delete oldObj.common[b];\n }\n }\n }\n\n if (this.onPrepareSave(oldObj.native) !== false) {\n return this.socket.setObject(this.instanceId, oldObj);\n } else {\n return Promise.reject('Invalid configuration');\n }\n })\n .then(() => {\n this.savedNative = oldObj.native;\n globalThis.changed = false;\n this.setState({changed: false});\n isClose && GenericApp.onClose();\n })\n .catch(e => {\n console.error(`Cannot save configuration: ${e}`);\n });\n }\n\n /**\n * Renders the toast.\n * @returns {JSX.Element | null} The JSX element.\n */\n renderToast() {\n if (!this.state.toast) {\n return null;\n }\n\n return <Snackbar\n anchorOrigin={{\n vertical: 'bottom',\n horizontal: 'left',\n }}\n open={true}\n autoHideDuration={6000}\n onClose={() => this.setState({toast: ''})}\n ContentProps={{\n 'aria-describedby': 'message-id',\n }}\n message={<span id=\"message-id\">{this.state.toast}</span>}\n action={[\n <IconButton\n key=\"close\"\n aria-label=\"Close\"\n color=\"inherit\"\n className={this.props.classes.close}\n onClick={() => this.setState({toast: ''})}\n size=\"large\">\n <IconClose />\n </IconButton>,\n ]}\n />;\n }\n\n /**\n * Closes the dialog.\n * @private\n */\n static onClose() {\n if (typeof window.parent !== 'undefined' && window.parent) {\n try {\n if (window.parent.$iframeDialog && typeof window.parent.$iframeDialog.close === 'function') {\n window.parent.$iframeDialog.close();\n } else {\n window.parent.postMessage('close', '*');\n }\n } catch (e) {\n window.parent.postMessage('close', '*');\n }\n }\n }\n\n /**\n * Renders the error dialog.\n * @returns {JSX.Element | null} The JSX element.\n */\n renderError() {\n if (!this.state.errorText) {\n return null;\n } else {\n return <DialogError text={this.state.errorText} onClose={() => this.setState({errorText: ''})}/>;\n }\n }\n\n /**\n * Checks if the configuration has changed.\n * @param {Record<string, any>} [native] the new state\n */\n getIsChanged(native) {\n native = native || this.state.native;\n const isChanged = JSON.stringify(native) !== JSON.stringify(this.savedNative);\n\n if(isChanged) {\n globalThis.changed = true;\n } else {\n globalThis.changed = false;\n }\n\n return isChanged;\n }\n\n /**\n * Gets called when loading the configuration.\n * @param {Record<string, any>} newNative The new configuration object.\n */\n onLoadConfig(newNative) {\n if (JSON.stringify(newNative) !== JSON.stringify(this.state.native)) {\n this.setState({native: newNative, changed: this.getIsChanged(newNative)})\n }\n }\n\n /**\n * Sets the configuration error.\n * @param {string} errorText\n */\n setConfigurationError(errorText) {\n if (this.state.isConfigurationError !== errorText) {\n this.setState({isConfigurationError: errorText});\n }\n }\n\n /**\n * Renders the save and close buttons.\n * @returns {JSX.Element | undefined} The JSX element.\n */\n renderSaveCloseButtons() {\n if (this.state.bottomButtons) {\n return <SaveCloseButtons\n theme={this.state.theme}\n newReact={this.newReact}\n noTextOnButtons={this.state.width === 'xs' || this.state.width === 'sm' || this.state.width === 'md'}\n changed={this.state.changed}\n onSave={(isClose) => this.onSave(isClose)}\n onClose={() => GenericApp.onClose()}\n />;\n } else {\n return null;\n }\n }\n\n /**\n * @private\n * @param {Record<string, any>} obj\n * @param {any} attrs\n * @param {any} value\n * @returns {boolean | undefined}\n */\n _updateNativeValue(obj, attrs, value) {\n if (typeof attrs !== 'object') {\n attrs = attrs.split('.');\n }\n const attr = attrs.shift();\n if (!attrs.length) {\n if (value && typeof value === 'object') {\n if (JSON.stringify(obj[attr]) !== JSON.stringify(value)) {\n obj[attr] = value;\n return true;\n }\n } else if (obj[attr] !== value) {\n obj[attr] = value;\n return true;\n } else {\n return false;\n }\n\n } else {\n obj[attr] = obj[attr] || {};\n if (typeof obj[attr] !== 'object') {\n throw new Error('attribute ' + attr + ' is no object, but ' + typeof obj[attr]);\n }\n return this._updateNativeValue(obj[attr], attrs, value);\n }\n }\n\n /**\n * Update the native value\n * @param {string} attr The attribute name with dots as delimiter.\n * @param {any} value The new value.\n * @param {(() => void)} [cb] Callback which will be called upon completion.\n */\n updateNativeValue(attr, value, cb) {\n const native = JSON.parse(JSON.stringify(this.state.native));\n if (this._updateNativeValue(native, attr, value)) {\n const changed = this.getIsChanged(native);\n this.setState({native, changed}, cb);\n }\n }\n\n /**\n * Set the error text to be shown.\n * @param {string | JSX.Element} text\n */\n showError(text) {\n this.setState({errorText: text});\n }\n\n /**\n * Sets the toast to be shown.\n * @param {string} toast\n */\n showToast(toast) {\n this.setState({toast});\n }\n\n /**\n * Renders this component.\n * @returns {JSX.Element} The JSX element.\n */\n render() {\n if (!this.state.loaded) {\n return <Loader theme={this.state.themeType}/>;\n }\n\n return <div className=\"App\">\n {this.renderError()}\n {this.renderToast()}\n {this.renderSaveCloseButtons()}\n </div>;\n }\n}\n\nGenericApp.propTypes = {\n adapterName: PropTypes.string, // (optional) name of adapter\n onThemeChange: PropTypes.func, // (optional) called by theme change\n socket: PropTypes.object, // (optional) socket information (host, port)\n encryptedFields: PropTypes.array, // (optional) list of native attributes, that must be encrypted\n bottomButtons: PropTypes.bool, // If the bottom buttons (Save/Close) must be shown\n Connection: PropTypes.object, // If the bottom buttons (Save/Close) must be shown\n};\n\nexport default GenericApp;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"GenericApp.js","names":["window","localStorage","getItem","setItem","GenericApp","props","settings","ConnectionClass","Connection","isWeb","io","location","port","SocketClient","e","id","obj","socket","systemLang","common","language","I18n","setLanguage","_systemConfig","expertMode","setState","getExpertMode","message","data","newThemeName","Utils","getThemeName","setThemeName","theme","createTheme","themeName","themeType","getThemeType","onThemeChange","onThemeChanged","onToggleExpertMode","console","warn","JSON","stringify","resizeTimer","clearTimeout","setTimeout","width","getWidth","printPrompt","query","search","replace","args","trim","split","filter","t","forEach","b","parts","length","instance","undefined","parseInt","slice","tmp","pathname","adapterName","instanceId","newReact","Router","getLocation","tab","themeInstance","state","selectedTab","selectedTabNum","errorText","changed","connected","loaded","isConfigurationError","toast","bottomButtons","translations","require","Object","keys","lang","assign","setTranslations","savedNative","encryptedFields","sentryDSN","name","doNotLoadAllObjects","onProgress","progress","PROGRESS","CONNECTING","READY","onReady","objects","scripts","subscribeObject","onSystemConfigChanged","then","getSystemConfig","_secret","secret","getObject","instanceObj","waitPromise","sentryEnabled","diag","version","disableDataReporting","host","sentryStarted","Sentry","init","dsn","release","integrations","SentryIntegrations","Dedupe","sentryInited","uuidObj","uuid","configureScope","scope","setUser","Promise","resolve","onPrepareLoad","encryptedNative","parse","onConnectionReady","onError","err","error","showError","addEventListener","onResize","onReceiveMessage","removeEventListener","palette","mode","sessionStorage","value","result","i","String","fromCharCode","charCodeAt","selectTab","index","attr","encrypt","decrypt","includes","push","_socket","emit","doc","rows","item","webExtendable","map","reject","ip","_host","IPs4","address","family","IPs6","hardware","networkInterfaces","eth","inter","isClose","oldObj","_oldObj","a","hasOwnProperty","onPrepareSave","setObject","globalThis","onClose","vertical","horizontal","classes","close","native","isChanged","newNative","getIsChanged","onSave","attrs","shift","Error","_updateNativeValue","cb","text","renderError","renderToast","renderSaveCloseButtons","SIZES","xs","sm","md","lg","xl","innerWidth","reverse","widthComputed","find","key","parent","$iframeDialog","postMessage","propTypes","PropTypes","string","func","object","array","bool"],"sources":["GenericApp.js"],"sourcesContent":["/**\n * Copyright 2018-2022 bluefox <dogafox@gmail.com>\n *\n * MIT License\n *\n **/\nimport React from 'react';\nimport Connection, {PROGRESS} from './Connection';\nimport PropTypes from 'prop-types';\nimport * as Sentry from '@sentry/browser';\nimport * as SentryIntegrations from '@sentry/integrations';\n\nimport DialogError from './Dialogs/Error';\nimport Snackbar from '@mui/material/Snackbar';\nimport IconButton from '@mui/material/IconButton';\n\nimport IconClose from '@mui/icons-material/Close';\n\nimport printPrompt from './Prompt';\nimport theme from './Theme';\nimport Loader from './Components/Loader';\nimport Router from './Components/Router';\nimport Utils from './Components/Utils';\nimport SaveCloseButtons from './Components/SaveCloseButtons';\nimport I18n from './i18n';\n\nimport './index.css';\n\nif (!window.localStorage) {\n window.localStorage = {\n getItem: () => null,\n setItem: () => null,\n };\n}\n\n/**\n * @extends {Router<import('./types').GenericAppProps, import('./types').GenericAppState>}\n */\nclass GenericApp extends Router {\n /**\n * @param {import('./types').GenericAppProps} props\n * @param {import('./types').GenericAppSettings | undefined} settings\n */\n constructor(props, settings) {\n const ConnectionClass = props.Connection || settings.Connection || Connection;\n\n // Remove `!Connection.isWeb() && window.adapterName !== 'material'` when iobroker.socket will support native ws\n if (!ConnectionClass.isWeb() && window.io && window.location.port === '3000') {\n try {\n const io = new window.SocketClient();\n delete window.io;\n window.io = io;\n } catch (e) {\n // ignore\n }\n }\n\n super(props);\n\n printPrompt();\n\n let query = (window.location.search || '').replace(/^\\?/, '').replace(/#.*$/, '');\n let args = {};\n query.trim().split('&').filter(t => t.trim()).forEach(b => {\n const parts = b.split('=');\n args[parts[0]] = parts.length === 2 ? parts[1] : true;\n if (args[parts[0]] === 'true') {\n args[parts[0]] = true;\n } else if (args[parts[0]] === 'false') {\n args[parts[0]] = false;\n }\n });\n\n // extract instance from URL\n this.instance = args.instance !== undefined ? parseInt(args.instance, 10) || 0 : (parseInt(window.location.search.slice(1), 10) || 0);\n // extract adapter name from URL\n const tmp = window.location.pathname.split('/');\n this.adapterName = settings?.adapterName || props.adapterName || window.adapterName || tmp[tmp.length - 2] || 'iot';\n this.instanceId = `system.adapter.${this.adapterName}.${this.instance}`;\n this.newReact = args.newReact === true; // it is admin5\n\n const location = Router.getLocation();\n location.tab = location.tab || window.localStorage.getItem(this.adapterName + '-adapter') || '';\n\n const themeInstance = this.createTheme();\n\n this.state = {\n selectedTab: window.localStorage.getItem(this.adapterName + '-adapter') || '',\n selectedTabNum: -1,\n native: {},\n errorText: '',\n changed: false,\n connected: false,\n loaded: false,\n isConfigurationError: '',\n expertMode: false,\n toast: '',\n theme: themeInstance,\n themeName: this.getThemeName(themeInstance),\n themeType: this.getThemeType(themeInstance),\n bottomButtons: (settings && settings.bottomButtons) === false ? false : ((props && props.bottomButtons) === false ? false : true),\n width: GenericApp.getWidth(),\n };\n\n // init translations\n const translations = {\n 'en': require('./i18n/en.json'),\n 'de': require('./i18n/de.json'),\n 'ru': require('./i18n/ru.json'),\n 'pt': require('./i18n/pt.json'),\n 'nl': require('./i18n/nl.json'),\n 'fr': require('./i18n/fr.json'),\n 'it': require('./i18n/it.json'),\n 'es': require('./i18n/es.json'),\n 'pl': require('./i18n/pl.json'),\n 'zh-cn': require('./i18n/zh-cn.json'),\n };\n\n // merge together\n if (settings && settings.translations) {\n Object.keys(settings.translations).forEach(lang => translations[lang] = Object.assign(translations[lang], settings.translations[lang]));\n } else if (props.translations) {\n Object.keys(props.translations).forEach(lang => translations[lang] = Object.assign(translations[lang], props.translations[lang]));\n }\n\n I18n.setTranslations(translations);\n\n this.savedNative = {}; // to detect if the config changed\n\n this.encryptedFields = props.encryptedFields || settings?.encryptedFields || [];\n\n this.sentryDSN = (settings && settings.sentryDSN) || props.sentryDSN;\n\n this.socket = new ConnectionClass({\n ...(props?.socket || settings?.socket),\n name: this.adapterName,\n doNotLoadAllObjects: settings?.doNotLoadAllObjects,\n onProgress: progress => {\n if (progress === PROGRESS.CONNECTING) {\n this.setState({connected: false});\n } else if (progress === PROGRESS.READY) {\n this.setState({connected: true});\n } else {\n this.setState({connected: true});\n }\n },\n onReady: (objects, scripts) => {\n I18n.setLanguage(this.socket.systemLang);\n\n // subscribe because of language and expert mode\n this.socket.subscribeObject('system.config', this.onSystemConfigChanged)\n .then(() => this.getSystemConfig())\n .then(obj => {\n this._secret = (typeof obj !== 'undefined' && obj.native && obj.native.secret) || 'Zgfr56gFe87jJOM';\n this._systemConfig = obj?.common || {};\n return this.socket.getObject(this.instanceId);\n })\n .then(instanceObj => {\n let waitPromise;\n\n const sentryEnabled =\n this._systemConfig.diag !== 'none' &&\n instanceObj &&\n instanceObj.common &&\n instanceObj.common.name &&\n instanceObj.common.version &&\n !instanceObj.common.disableDataReporting &&\n window.location.host !== 'localhost:3000';\n\n // activate sentry plugin\n if (!this.sentryStarted && this.sentryDSN && sentryEnabled) {\n this.sentryStarted = true;\n\n Sentry.init({\n dsn: this.sentryDSN,\n release: `iobroker.${instanceObj.common.name}@${instanceObj.common.version}`,\n integrations: [\n new SentryIntegrations.Dedupe()\n ]\n });\n }\n\n // read UUID and init sentry with it.\n // for backward compatibility it will be processed separately from above logic: some adapters could still have this.sentryDSN as undefined\n if (!this.sentryInited && sentryEnabled) {\n this.sentryInited = true;\n\n waitPromise = this.socket.getObject('system.meta.uuid')\n .then(uuidObj => {\n if (uuidObj && uuidObj.native && uuidObj.native.uuid) {\n Sentry.configureScope(scope =>\n scope.setUser({id: uuidObj.native.uuid}));\n }\n });\n }\n\n waitPromise = waitPromise || Promise.resolve();\n\n waitPromise\n .then(() => {\n if (instanceObj) {\n this.common = instanceObj?.common;\n this.onPrepareLoad(instanceObj.native, instanceObj.encryptedNative); // decode all secrets\n this.savedNative = JSON.parse(JSON.stringify(instanceObj.native));\n this.setState({native: instanceObj.native, loaded: true, expertMode: this.getExpertMode()}, () =>\n this.onConnectionReady && this.onConnectionReady());\n } else {\n console.warn('Cannot load instance settings');\n this.setState({native: {}, loaded: true, expertMode: this.getExpertMode()}, () => this.onConnectionReady && this.onConnectionReady());\n }\n });\n });\n },\n onError: err => {\n console.error(err);\n this.showError(err);\n }\n });\n }\n\n onSystemConfigChanged = (id, obj) => {\n if (obj && id === 'system.config') {\n if (this.socket.systemLang !== obj?.common.language) {\n this.socket.systemLang = obj?.common.language || 'en';\n I18n.setLanguage(this.socket.systemLang);\n }\n\n if (this._systemConfig.expertMode !== !!obj?.common?.expertMode) {\n this._systemConfig = obj?.common || {};\n this.setState({expertMode: this.getExpertMode()});\n } else {\n this._systemConfig = obj?.common || {};\n }\n }\n }\n\n /**\n * Called immediately after a component is mounted. Setting state here will trigger re-rendering.\n */\n componentDidMount() {\n window.addEventListener('resize', this.onResize, true);\n window.addEventListener('message', this.onReceiveMessage, false);\n super.componentDidMount();\n }\n\n /**\n * Called immediately before a component is destroyed.\n */\n componentWillUnmount() {\n window.removeEventListener('resize', this.onResize, true);\n window.removeEventListener('message', this.onReceiveMessage, false);\n super.componentWillUnmount();\n }\n\n onReceiveMessage = message => {\n if (message?.data) {\n if (message.data === 'updateTheme') {\n const newThemeName = Utils.getThemeName()\n Utils.setThemeName(Utils.getThemeName());\n\n const theme = this.createTheme(newThemeName);\n\n this.setState({\n theme,\n themeName: this.getThemeName(theme),\n themeType: this.getThemeType(theme)\n }, () => {\n this.props.onThemeChange && this.props.onThemeChange(newThemeName);\n this.onThemeChanged && this.onThemeChanged(newThemeName);\n });\n } else if (message.data === 'updateExpertMode') {\n this.onToggleExpertMode && this.onToggleExpertMode(this.getExpertMode());\n } else {\n console.warn('Received unknown message: ' + JSON.stringify(message.data));\n }\n }\n };\n\n /**\n * @private\n */\n onResize = () => {\n this.resizeTimer && clearTimeout(this.resizeTimer);\n this.resizeTimer = setTimeout(() => {\n this.resizeTimer = null;\n this.setState({width: GenericApp.getWidth()});\n }, 200);\n };\n\n /**\n * Gets the width depending on the window inner width.\n * @returns {import('./types').Width}\n */\n static getWidth() {\n /**\n * innerWidth |xs sm md lg xl\n * |-------|-------|-------|-------|------>\n * width | xs | sm | md | lg | xl\n */\n\n const SIZES = {\n xs: 0,\n sm: 600,\n md: 960,\n lg: 1280,\n xl: 1920\n };\n const width = window.innerWidth;\n const keys = Object.keys(SIZES).reverse();\n const widthComputed = keys.find(key => width >= SIZES[key]);\n\n return widthComputed || 'xs';\n }\n\n /**\n * Get a theme\n * @param {string} name Theme name\n * @returns {import('./types').Theme}\n */\n createTheme(name = '') {\n return theme(Utils.getThemeName(name));\n }\n\n /**\n * Get the theme name\n * @param {import('./types').Theme} theme Theme\n * @returns {string} Theme name\n */\n getThemeName(theme) {\n return theme.name;\n }\n\n /**\n * Get the theme type\n * @param {import('./types').Theme} theme Theme\n * @returns {string} Theme type\n */\n getThemeType(theme) {\n return theme.palette.mode;\n }\n\n /**\n * Changes the current theme\n */\n toggleTheme() {\n const themeName = this.state.themeName;\n\n // dark => blue => colored => light => dark\n const newThemeName = themeName === 'dark' ? 'blue' :\n (themeName === 'blue' ? 'colored' :\n (themeName === 'colored' ? 'light' : 'dark'));\n\n Utils.setThemeName(newThemeName);\n\n const theme = this.createTheme(newThemeName);\n\n this.setState({\n theme,\n themeName: this.getThemeName(theme),\n themeType: this.getThemeType(theme)\n }, () => {\n this.props.onThemeChange && this.props.onThemeChange(newThemeName);\n this.onThemeChanged && this.onThemeChanged(newThemeName);\n });\n }\n\n /**\n * Gets the system configuration.\n * @returns {Promise<ioBroker.OtherObject>}\n */\n getSystemConfig() {\n return this.socket.getSystemConfig();\n }\n\n /**\n * Get current expert mode\n * @returns {boolean}\n */\n getExpertMode() {\n return window.sessionStorage.getItem('App.expertMode') === 'true' || !!this._systemConfig.expertMode;\n }\n\n /**\n * Gets called when the socket.io connection is ready.\n * You can overload this function to execute own commands.\n */\n onConnectionReady() {\n }\n\n /**\n * Encrypts a string.\n * @param {string} value\n * @returns {string}\n */\n encrypt(value) {\n let result = '';\n for (let i = 0; i < value.length; i++) {\n result += String.fromCharCode(this._secret[i % this._secret.length].charCodeAt(0) ^ value.charCodeAt(i));\n }\n return result;\n }\n\n /**\n * Decrypts a string.\n * @param {string} value\n * @returns {string}\n */\n decrypt(value) {\n let result = '';\n for (let i = 0; i < value.length; i++) {\n result += String.fromCharCode(this._secret[i % this._secret.length].charCodeAt(0) ^ value.charCodeAt(i));\n }\n return result;\n }\n\n /**\n * Gets called when the navigation hash changes.\n * You may override this if needed.\n */\n onHashChanged() {\n const location = Router.getLocation();\n if (location.tab !== this.state.selectedTab) {\n this.selectTab(location.tab);\n }\n }\n\n /**\n * Selects the given tab.\n * @param {string} tab\n * @param {number} [index]\n */\n selectTab(tab, index) {\n window.localStorage[this.adapterName + '-adapter'] = tab;\n this.setState({selectedTab: tab, selectedTabNum: index})\n }\n\n /**\n * Gets called before the settings are saved.\n * You may override this if needed.\n * @param {Record<string, any>} settings\n */\n onPrepareSave(settings) {\n // here you can encode values\n this.encryptedFields && this.encryptedFields.forEach(attr => {\n if (settings[attr]) {\n settings[attr] = this.encrypt(settings[attr]);\n }\n });\n\n return true;\n }\n\n /**\n * Gets called after the settings are loaded.\n * You may override this if needed.\n * @param {Record<string, any>} settings\n * @param {string[]} encryptedNative optional list of fields to be decrypted\n */\n onPrepareLoad(settings, encryptedNative) {\n // here you can encode values\n this.encryptedFields && this.encryptedFields.forEach(attr => {\n if (settings[attr]) {\n settings[attr] = this.decrypt(settings[attr]);\n }\n });\n encryptedNative && encryptedNative.forEach(attr => {\n this.encryptedFields = this.encryptedFields || [];\n !this.encryptedFields.includes(attr) && this.encryptedFields.push(attr);\n if (settings[attr]) {\n settings[attr] = this.decrypt(settings[attr]);\n }\n });\n }\n\n /**\n * Gets the extendable instances.\n * @returns {Promise<any[]>}\n */\n getExtendableInstances() {\n return new Promise(resolve => {\n this.socket._socket.emit('getObjectView', 'system', 'instance', null, (err, doc) => {\n if (err) {\n resolve([]);\n } else {\n resolve(doc.rows.filter(item => item.value.common.webExtendable).map(item => item.value));\n }\n });\n });\n }\n\n /**\n * Gets the IP addresses of the given host.\n * @param {string} host\n */\n getIpAddresses(host) {\n return new Promise((resolve, reject) => {\n this.socket._socket.emit('getHostByIp', host || this.common.host, (ip, _host) => {\n const IPs4 = [{name: '[IPv4] 0.0.0.0 - ' + I18n.t('ra_Listen on all IPs'), address: '0.0.0.0', family: 'ipv4'}];\n const IPs6 = [{name: '[IPv6] ::', address: '::', family: 'ipv6'}];\n if (_host) {\n host = _host;\n if (host.native.hardware && host.native.hardware.networkInterfaces) {\n Object.keys(host.native.hardware.networkInterfaces).forEach(eth =>\n host.native.hardware.networkInterfaces[eth].forEach(inter => {\n if (inter.family !== 'IPv6') {\n IPs4.push({name: '[' + inter.family + '] ' + inter.address + ' - ' + eth, address: inter.address, family: 'ipv4'});\n } else {\n IPs6.push({name: '[' + inter.family + '] ' + inter.address + ' - ' + eth, address: inter.address, family: 'ipv6'});\n }\n }));\n }\n IPs6.forEach(ip => IPs4.push(ip));\n }\n resolve(IPs4);\n });\n });\n }\n\n /**\n * Saves the settings to the server.\n * @param {boolean} isClose True if the user is closing the dialog.\n */\n onSave(isClose) {\n let oldObj;\n if (this.state.isConfigurationError) {\n this.setState({errorText: this.state.isConfigurationError});\n return;\n }\n\n this.socket.getObject(this.instanceId)\n .then(_oldObj => {\n oldObj = _oldObj || {};\n\n for (const a in this.state.native) {\n if (this.state.native.hasOwnProperty(a)) {\n if (this.state.native[a] === null) {\n oldObj.native[a] = null;\n } else\n if (this.state.native[a] !== undefined) {\n oldObj.native[a] = JSON.parse(JSON.stringify(this.state.native[a]));\n } else {\n delete oldObj.native[a];\n }\n }\n }\n\n if (this.state.common) {\n for (const b in this.state.common) {\n if (this.state.common[b] === null) {\n oldObj.common[b] = null;\n } else\n if (this.state.common[b] !== undefined) {\n oldObj.common[b] = JSON.parse(JSON.stringify(this.state.common[b]));\n } else {\n delete oldObj.common[b];\n }\n }\n }\n\n if (this.onPrepareSave(oldObj.native) !== false) {\n return this.socket.setObject(this.instanceId, oldObj);\n } else {\n return Promise.reject('Invalid configuration');\n }\n })\n .then(() => {\n this.savedNative = oldObj.native;\n globalThis.changed = false;\n this.setState({changed: false});\n isClose && GenericApp.onClose();\n })\n .catch(e => {\n console.error(`Cannot save configuration: ${e}`);\n });\n }\n\n /**\n * Renders the toast.\n * @returns {JSX.Element | null} The JSX element.\n */\n renderToast() {\n if (!this.state.toast) {\n return null;\n }\n\n return <Snackbar\n anchorOrigin={{\n vertical: 'bottom',\n horizontal: 'left',\n }}\n open={true}\n autoHideDuration={6000}\n onClose={() => this.setState({toast: ''})}\n ContentProps={{\n 'aria-describedby': 'message-id',\n }}\n message={<span id=\"message-id\">{this.state.toast}</span>}\n action={[\n <IconButton\n key=\"close\"\n aria-label=\"Close\"\n color=\"inherit\"\n className={this.props.classes.close}\n onClick={() => this.setState({toast: ''})}\n size=\"large\">\n <IconClose />\n </IconButton>,\n ]}\n />;\n }\n\n /**\n * Closes the dialog.\n * @private\n */\n static onClose() {\n if (typeof window.parent !== 'undefined' && window.parent) {\n try {\n if (window.parent.$iframeDialog && typeof window.parent.$iframeDialog.close === 'function') {\n window.parent.$iframeDialog.close();\n } else {\n window.parent.postMessage('close', '*');\n }\n } catch (e) {\n window.parent.postMessage('close', '*');\n }\n }\n }\n\n /**\n * Renders the error dialog.\n * @returns {JSX.Element | null} The JSX element.\n */\n renderError() {\n if (!this.state.errorText) {\n return null;\n } else {\n return <DialogError text={this.state.errorText} onClose={() => this.setState({errorText: ''})}/>;\n }\n }\n\n /**\n * Checks if the configuration has changed.\n * @param {Record<string, any>} [native] the new state\n */\n getIsChanged(native) {\n native = native || this.state.native;\n const isChanged = JSON.stringify(native) !== JSON.stringify(this.savedNative);\n\n if(isChanged) {\n globalThis.changed = true;\n } else {\n globalThis.changed = false;\n }\n\n return isChanged;\n }\n\n /**\n * Gets called when loading the configuration.\n * @param {Record<string, any>} newNative The new configuration object.\n */\n onLoadConfig(newNative) {\n if (JSON.stringify(newNative) !== JSON.stringify(this.state.native)) {\n this.setState({native: newNative, changed: this.getIsChanged(newNative)})\n }\n }\n\n /**\n * Sets the configuration error.\n * @param {string} errorText\n */\n setConfigurationError(errorText) {\n if (this.state.isConfigurationError !== errorText) {\n this.setState({isConfigurationError: errorText});\n }\n }\n\n /**\n * Renders the save and close buttons.\n * @returns {JSX.Element | undefined} The JSX element.\n */\n renderSaveCloseButtons() {\n if (this.state.bottomButtons) {\n return <SaveCloseButtons\n theme={this.state.theme}\n newReact={this.newReact}\n noTextOnButtons={this.state.width === 'xs' || this.state.width === 'sm' || this.state.width === 'md'}\n changed={this.state.changed}\n onSave={(isClose) => this.onSave(isClose)}\n onClose={() => GenericApp.onClose()}\n />;\n } else {\n return null;\n }\n }\n\n /**\n * @private\n * @param {Record<string, any>} obj\n * @param {any} attrs\n * @param {any} value\n * @returns {boolean | undefined}\n */\n _updateNativeValue(obj, attrs, value) {\n if (typeof attrs !== 'object') {\n attrs = attrs.split('.');\n }\n const attr = attrs.shift();\n if (!attrs.length) {\n if (value && typeof value === 'object') {\n if (JSON.stringify(obj[attr]) !== JSON.stringify(value)) {\n obj[attr] = value;\n return true;\n }\n } else if (obj[attr] !== value) {\n obj[attr] = value;\n return true;\n } else {\n return false;\n }\n\n } else {\n obj[attr] = obj[attr] || {};\n if (typeof obj[attr] !== 'object') {\n throw new Error('attribute ' + attr + ' is no object, but ' + typeof obj[attr]);\n }\n return this._updateNativeValue(obj[attr], attrs, value);\n }\n }\n\n /**\n * Update the native value\n * @param {string} attr The attribute name with dots as delimiter.\n * @param {any} value The new value.\n * @param {(() => void)} [cb] Callback which will be called upon completion.\n */\n updateNativeValue(attr, value, cb) {\n const native = JSON.parse(JSON.stringify(this.state.native));\n if (this._updateNativeValue(native, attr, value)) {\n const changed = this.getIsChanged(native);\n this.setState({native, changed}, cb);\n }\n }\n\n /**\n * Set the error text to be shown.\n * @param {string | JSX.Element} text\n */\n showError(text) {\n this.setState({errorText: text});\n }\n\n /**\n * Sets the toast to be shown.\n * @param {string} toast\n */\n showToast(toast) {\n this.setState({toast});\n }\n\n /**\n * Renders this component.\n * @returns {JSX.Element} The JSX element.\n */\n render() {\n if (!this.state.loaded) {\n return <Loader theme={this.state.themeType}/>;\n }\n\n return <div className=\"App\">\n {this.renderError()}\n {this.renderToast()}\n {this.renderSaveCloseButtons()}\n </div>;\n }\n}\n\nGenericApp.propTypes = {\n adapterName: PropTypes.string, // (optional) name of adapter\n onThemeChange: PropTypes.func, // (optional) called by theme change\n socket: PropTypes.object, // (optional) socket information (host, port)\n encryptedFields: PropTypes.array, // (optional) list of native attributes, that must be encrypted\n bottomButtons: PropTypes.bool, // If the bottom buttons (Save/Close) must be shown\n Connection: PropTypes.object, // If the bottom buttons (Save/Close) must be shown\n};\n\nexport default GenericApp;\n"],"mappings":"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"}
|
package/README.md
CHANGED
|
@@ -623,11 +623,12 @@ The icons may not be reused in other projects without the proper flaticon licens
|
|
|
623
623
|
- All `@iobroker/adapter-react/...` => `@iobroker/adapter-react-v5/...`
|
|
624
624
|
- All `@material-ui/icons/...` => `@mui/icons-material/...`
|
|
625
625
|
- Change `import { withStyles } from '@material-ui/core/styles';` => `import { withStyles } from '@mui/styles';`
|
|
626
|
+
- Change `import { makeStyles } from '@mui/material/styles';` => `import { makeStyles } from '@mui/styles';`
|
|
626
627
|
- All `@material-ui/core...` => `@mui/material...`
|
|
627
628
|
- Change `import { MuiThemeProvider } from '@material-ui/core/styles';` => `import { ThemeProvider, StyledEngineProvider } from '@mui/material/styles';`
|
|
628
629
|
- Change all `<MuiThemeProvider theme={this.state.theme}>` to `<StyledEngineProvider injectFirst><ThemeProvider theme={this.state.theme}>`
|
|
629
630
|
- Rename in styles `theme.palette.type` => `theme.palette.mode`
|
|
630
|
-
- Add to all `TextField
|
|
631
|
+
- Add to all `TextField`, `Select`, `FormControl` the property `variant="standard"`
|
|
631
632
|
- Add to all `Button` that do not have `color` property: `color="grey"`
|
|
632
633
|
- Replace by `TextField` the `readOnly` attribute (if exists) with `InputProps={{readOnly: true}}`
|
|
633
634
|
- Remove px by all `theme.spacing`: `calc(100% - ${theme.spacing(4)}px)` => `calc(100% - ${theme.spacing(4)})`
|
|
@@ -640,6 +641,15 @@ If you still have questions, try to find an answer [here](https://mui.com/guides
|
|
|
640
641
|
-->
|
|
641
642
|
|
|
642
643
|
## Changelog
|
|
644
|
+
### 3.0.0 (2022-05-24)
|
|
645
|
+
* (bluefox) Added JsonConfigComponent
|
|
646
|
+
|
|
647
|
+
### 2.1.11 (2022-05-24)
|
|
648
|
+
* (bluefox) Update file browser. It supports now the file changed events.
|
|
649
|
+
|
|
650
|
+
### 2.1.10 (2022-05-24)
|
|
651
|
+
* (bluefox) Corrected object browser
|
|
652
|
+
|
|
643
653
|
### 2.1.9 (2022-05-16)
|
|
644
654
|
* (bluefox) Corrected expert mode in object browser
|
|
645
655
|
|
package/Theme.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Theme.js","names":["step","toInt","hex","rgb","r","g","b","length","parseInt","substr","toHex","int","Math","round","toString","getElevation","color","overlayColor","elevation","overlay","getElevations","elevations","i","backgroundColor","buttonsPalette","theme","palette","grey","main","dark","buttonsTheme","components","MuiButton","variants","props","variant","style","getContrastText","text","primary","borderColor","mode","border","action","disabledBackground","hoverOpacity","Theme","type","name","background","paper","secondary","expert","overrides","MuiAppBar","colorDefault","MuiLink","root","textTransform","transition","orange","MuiPaper","disabled","toolbar","height","saveToolbar","button","borderRadius"],"sources":["Theme.js"],"sourcesContent":["import {createTheme, adaptV4Theme, alpha} from '@mui/material/styles';\n\nimport {orange, grey} from '@mui/material/colors';\n\nconst step = (16 - 5) / 23 / 100;\n\n/**\n * Convert hex color in the format '#rrggbb' or '#rgb' to an RGB object.\n * @param {string} hex\n * @returns {{r: number, g: number, b: number}}\n */\nfunction toInt(hex) {\n const rgb = {\n r: 0,\n g: 0,\n b: 0,\n };\n\n if (hex.length === 7) {\n rgb.r = parseInt(hex.substr(1, 2), 16);\n rgb.g = parseInt(hex.substr(3, 2), 16);\n rgb.b = parseInt(hex.substr(5, 2), 16);\n } else if (hex.length === 4) {\n const r = hex.substr(1, 1);\n const g = hex.substr(2, 1);\n const b = hex.substr(3, 1);\n\n rgb.r = parseInt(r + r, 16);\n rgb.g = parseInt(g + g, 16);\n rgb.b = parseInt(b + b, 16);\n }\n\n return rgb;\n}\n\n/**\n * Convert an RGB object to a hex color string in the format '#rrggbb'.\n * @param {{r: number, g: number, b: number}} int\n * @returns {string}\n */\nfunction toHex(int) {\n return `#${Math.round(int.r).toString(16)}${Math.round(int.g).toString(16)}${Math.round(int.b).toString(16)}`;\n}\n\n/**\n * @param {string} color color in the format '#rrggbb' or '#rgb'\n * @param {string} overlayColor overlay color in the format '#rrggbb' or '#rgb'\n * @param {number} elevation elevation as an integer starting with 1\n * @returns {string} the hex color string in the format '#rrggbb'\n */\nfunction getElevation(color, overlayColor, elevation) {\n const rgb = toInt(color);\n const overlay = toInt(overlayColor);\n\n rgb.r += overlay.r * (0.05 + step * (elevation - 1));\n rgb.g += overlay.g * (0.05 + step * (elevation - 1));\n rgb.b += overlay.b * (0.05 + step * (elevation - 1));\n\n return toHex(rgb);\n}\n\n/**\n * Get all 24 elevations of the given color and overlay.\n * @param {string} color color in the format '#rrggbb' or '#rgb'\n * @param {string} overlay overlay color in the format '#rrggbb' or '#rgb'\n * @returns {import('@mui/material/styles/withStyles').CSSProperties}\n */\nfunction getElevations(color, overlay) {\n /** @type {import('@mui/material/styles/withStyles').CSSProperties} */\n const elevations = {};\n\n for (let i = 1; i <= 24; i++) {\n elevations[`elevation${i}`] = {\n backgroundColor: getElevation(color, overlay, i),\n };\n }\n\n return elevations;\n}\n\nconst buttonsPalette = theme => ({\n palette: {\n // mode: \"dark\",\n grey: {\n main: grey[300],\n dark: grey[400],\n },\n },\n});\n\nconst buttonsTheme = theme => ({\n components: {\n MuiButton: {\n variants: [\n {\n props: {variant: 'contained', color: 'grey'},\n style: {\n color: theme.palette.getContrastText(theme.palette.grey[300]),\n },\n },\n {\n props: {variant: 'outlined', color: 'grey'},\n style: {\n color: theme.palette.text.primary,\n borderColor:\n theme.palette.mode === 'light'\n ? 'rgba(0, 0, 0, 0.23)'\n : 'rgba(255, 255, 255, 0.23)',\n '&.Mui-disabled': {\n border: `1px solid ${theme.palette.action.disabledBackground}`,\n },\n '&:hover': {\n borderColor:\n theme.palette.mode === 'light'\n ? 'rgba(0, 0, 0, 0.23)'\n : 'rgba(255, 255, 255, 0.23)',\n backgroundColor: alpha(\n theme.palette.text.primary,\n theme.palette.action.hoverOpacity,\n ),\n },\n },\n },\n {\n props: {color: 'grey', variant: 'text'},\n style: {\n color: 'black',\n '&:hover': {\n backgroundColor: alpha(\n theme.palette.text.primary,\n theme.palette.action.hoverOpacity,\n ),\n },\n },\n },\n ],\n },\n },\n});\n\n/**\n * The theme creation factory function.\n * @param {string} type\n * @returns {import('./types').Theme}\n */\nconst Theme = type => {\n let theme;\n if (type === 'dark') {\n theme = {\n name: type,\n palette: {\n mode: 'dark',\n background: {\n paper: '#121212',\n default: '#121212',\n },\n primary: {\n main: '#4dabf5',\n },\n secondary: {\n main: '#436a93',\n },\n expert: '#14bb00',\n text: {\n primary: '#ffffff',\n secondary: '#ffffff',\n },\n },\n overrides: {\n MuiAppBar: {\n colorDefault: {\n backgroundColor: '#272727',\n },\n },\n MuiLink: {\n root: {\n textTransform: 'uppercase',\n transition: 'color .3s ease',\n color: orange[200],\n '&:hover': {\n color: orange[100],\n },\n },\n },\n MuiPaper: getElevations('#121212', '#fff'),\n },\n };\n } else if (type === 'blue') {\n theme = {\n name: type,\n palette: {\n mode: 'dark',\n background: {\n paper: '#151d21',\n default: '#151d21',\n },\n primary: {\n main: '#4dabf5',\n },\n secondary: {\n main: '#436a93',\n },\n expert: '#14bb00',\n text: {\n primary: '#ffffff',\n secondary: '#ffffff',\n },\n },\n overrides: {\n MuiAppBar: {\n colorDefault: {\n backgroundColor: '#2a3135',\n },\n },\n MuiLink: {\n root: {\n textTransform: 'uppercase',\n transition: 'color .3s ease',\n color: orange[200],\n '&:hover': {\n color: orange[100],\n },\n },\n },\n MuiPaper: getElevations('#151d21', '#fff'),\n },\n };\n } else if (type === 'colored') {\n theme = {\n name: type,\n palette: {\n mode: 'light',\n primary: {\n main: '#3399CC',\n },\n secondary: {\n main: '#164477',\n },\n expert: '#96fc96',\n },\n overrides: {\n MuiAppBar: {\n colorDefault: {\n backgroundColor: '#3399CC',\n },\n },\n MuiLink: {\n root: {\n textTransform: 'uppercase',\n transition: 'color .3s ease',\n color: orange[400],\n '&:hover': {\n color: orange[300],\n },\n },\n },\n },\n };\n } else if (type === 'PT') {\n theme = {\n name: type,\n palette: {\n mode: 'light',\n primary: {\n main: '#0F99DE',\n },\n secondary: {\n main: '#88A536',\n },\n expert: '#BD1B24',\n },\n overrides: {\n MuiAppBar: {\n colorDefault: {\n backgroundColor: '#0F99DE',\n },\n },\n MuiLink: {\n root: {\n textTransform: 'uppercase',\n transition: 'color .3s ease',\n color: orange[400],\n '&:hover': {\n color: orange[300],\n },\n },\n },\n },\n };\n } else if (type === 'DX') {\n theme = {\n name: type,\n palette: {\n mode: 'light',\n primary: {\n main: '#F5F5F7',\n },\n secondary: {\n main: '#a9a9a9',\n },\n expert: '#BD1B24',\n text: {\n primary: '#007AFE',\n secondary: '#007AFE',\n disabled: '#007AFEAA',\n },\n },\n overrides: {\n MuiAppBar: {\n colorDefault: {\n backgroundColor: '#a9a9a9',\n },\n },\n MuiLink: {\n root: {\n textTransform: 'uppercase',\n transition: 'color .3s ease',\n color: orange[400],\n '&:hover': {\n color: orange[300],\n },\n },\n },\n },\n };\n } else {\n theme = {\n name: type,\n palette: {\n mode: 'light',\n primary: {\n main: '#3399CC',\n },\n secondary: {\n main: '#164477',\n },\n expert: '#14bb00',\n },\n overrides: {\n MuiLink: {\n root: {\n textTransform: 'uppercase',\n transition: 'color .3s ease',\n color: orange[400],\n '&:hover': {\n color: orange[300],\n },\n },\n },\n },\n };\n }\n\n theme.toolbar = {\n height: 48,\n };\n\n // add save toolbar\n theme.saveToolbar = {\n background: theme.palette.primary.main,\n button: {\n borderRadius: 3,\n height: 32,\n },\n };\n\n theme.palette.grey = {\n main: grey[300],\n dark: grey[400],\n };\n\n theme = createTheme(adaptV4Theme(theme));\n\n return createTheme(theme, {\n components: {\n MuiButton: {\n variants: [\n {\n props: {variant: 'contained', color: 'grey'},\n style: {\n color: theme.palette.getContrastText(theme.palette.grey[300]),\n },\n },\n {\n props: {variant: 'outlined', color: 'grey'},\n style: {\n color: theme.palette.text.primary,\n borderColor:\n theme.palette.mode === 'light'\n ? 'rgba(0, 0, 0, 0.23)'\n : 'rgba(255, 255, 255, 0.23)',\n '&.Mui-disabled': {\n border: `1px solid ${theme.palette.action.disabledBackground}`,\n },\n '&:hover': {\n borderColor:\n theme.palette.mode === 'light'\n ? 'rgba(0, 0, 0, 0.23)'\n : 'rgba(255, 255, 255, 0.23)',\n backgroundColor: alpha(\n theme.palette.text.primary,\n theme.palette.action.hoverOpacity,\n ),\n },\n },\n },\n {\n props: {variant: 'text', color: 'grey'},\n style: {\n color: theme.palette.text.primary,\n '&:hover': {\n backgroundColor: alpha(\n theme.palette.text.primary,\n theme.palette.action.hoverOpacity,\n ),\n },\n },\n },\n ],\n },\n },\n });\n};\n\nexport default Theme;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Theme.js","names":["step","toInt","hex","rgb","r","g","b","length","parseInt","substr","toHex","int","Math","round","toString","getElevation","color","overlayColor","elevation","overlay","getElevations","elevations","i","backgroundColor","buttonsPalette","theme","palette","grey","main","dark","buttonsTheme","components","MuiButton","variants","props","variant","style","getContrastText","text","primary","borderColor","mode","border","action","disabledBackground","alpha","hoverOpacity","Theme","type","name","background","paper","secondary","expert","overrides","MuiAppBar","colorDefault","MuiLink","root","textTransform","transition","orange","MuiPaper","disabled","toolbar","height","saveToolbar","button","borderRadius","createTheme","adaptV4Theme"],"sources":["Theme.js"],"sourcesContent":["import {createTheme, adaptV4Theme, alpha} from '@mui/material/styles';\n\nimport {orange, grey} from '@mui/material/colors';\n\nconst step = (16 - 5) / 23 / 100;\n\n/**\n * Convert hex color in the format '#rrggbb' or '#rgb' to an RGB object.\n * @param {string} hex\n * @returns {{r: number, g: number, b: number}}\n */\nfunction toInt(hex) {\n const rgb = {\n r: 0,\n g: 0,\n b: 0,\n };\n\n if (hex.length === 7) {\n rgb.r = parseInt(hex.substr(1, 2), 16);\n rgb.g = parseInt(hex.substr(3, 2), 16);\n rgb.b = parseInt(hex.substr(5, 2), 16);\n } else if (hex.length === 4) {\n const r = hex.substr(1, 1);\n const g = hex.substr(2, 1);\n const b = hex.substr(3, 1);\n\n rgb.r = parseInt(r + r, 16);\n rgb.g = parseInt(g + g, 16);\n rgb.b = parseInt(b + b, 16);\n }\n\n return rgb;\n}\n\n/**\n * Convert an RGB object to a hex color string in the format '#rrggbb'.\n * @param {{r: number, g: number, b: number}} int\n * @returns {string}\n */\nfunction toHex(int) {\n return `#${Math.round(int.r).toString(16)}${Math.round(int.g).toString(16)}${Math.round(int.b).toString(16)}`;\n}\n\n/**\n * @param {string} color color in the format '#rrggbb' or '#rgb'\n * @param {string} overlayColor overlay color in the format '#rrggbb' or '#rgb'\n * @param {number} elevation elevation as an integer starting with 1\n * @returns {string} the hex color string in the format '#rrggbb'\n */\nfunction getElevation(color, overlayColor, elevation) {\n const rgb = toInt(color);\n const overlay = toInt(overlayColor);\n\n rgb.r += overlay.r * (0.05 + step * (elevation - 1));\n rgb.g += overlay.g * (0.05 + step * (elevation - 1));\n rgb.b += overlay.b * (0.05 + step * (elevation - 1));\n\n return toHex(rgb);\n}\n\n/**\n * Get all 24 elevations of the given color and overlay.\n * @param {string} color color in the format '#rrggbb' or '#rgb'\n * @param {string} overlay overlay color in the format '#rrggbb' or '#rgb'\n * @returns {import('@mui/material/styles/withStyles').CSSProperties}\n */\nfunction getElevations(color, overlay) {\n /** @type {import('@mui/material/styles/withStyles').CSSProperties} */\n const elevations = {};\n\n for (let i = 1; i <= 24; i++) {\n elevations[`elevation${i}`] = {\n backgroundColor: getElevation(color, overlay, i),\n };\n }\n\n return elevations;\n}\n\nconst buttonsPalette = theme => ({\n palette: {\n // mode: \"dark\",\n grey: {\n main: grey[300],\n dark: grey[400],\n },\n },\n});\n\nconst buttonsTheme = theme => ({\n components: {\n MuiButton: {\n variants: [\n {\n props: {variant: 'contained', color: 'grey'},\n style: {\n color: theme.palette.getContrastText(theme.palette.grey[300]),\n },\n },\n {\n props: {variant: 'outlined', color: 'grey'},\n style: {\n color: theme.palette.text.primary,\n borderColor:\n theme.palette.mode === 'light'\n ? 'rgba(0, 0, 0, 0.23)'\n : 'rgba(255, 255, 255, 0.23)',\n '&.Mui-disabled': {\n border: `1px solid ${theme.palette.action.disabledBackground}`,\n },\n '&:hover': {\n borderColor:\n theme.palette.mode === 'light'\n ? 'rgba(0, 0, 0, 0.23)'\n : 'rgba(255, 255, 255, 0.23)',\n backgroundColor: alpha(\n theme.palette.text.primary,\n theme.palette.action.hoverOpacity,\n ),\n },\n },\n },\n {\n props: {color: 'grey', variant: 'text'},\n style: {\n color: 'black',\n '&:hover': {\n backgroundColor: alpha(\n theme.palette.text.primary,\n theme.palette.action.hoverOpacity,\n ),\n },\n },\n },\n ],\n },\n },\n});\n\n/**\n * The theme creation factory function.\n * @param {string} type\n * @returns {import('./types').Theme}\n */\nconst Theme = type => {\n let theme;\n if (type === 'dark') {\n theme = {\n name: type,\n palette: {\n mode: 'dark',\n background: {\n paper: '#121212',\n default: '#121212',\n },\n primary: {\n main: '#4dabf5',\n },\n secondary: {\n main: '#436a93',\n },\n expert: '#14bb00',\n text: {\n primary: '#ffffff',\n secondary: '#ffffff',\n },\n },\n overrides: {\n MuiAppBar: {\n colorDefault: {\n backgroundColor: '#272727',\n },\n },\n MuiLink: {\n root: {\n textTransform: 'uppercase',\n transition: 'color .3s ease',\n color: orange[200],\n '&:hover': {\n color: orange[100],\n },\n },\n },\n MuiPaper: getElevations('#121212', '#fff'),\n },\n };\n } else if (type === 'blue') {\n theme = {\n name: type,\n palette: {\n mode: 'dark',\n background: {\n paper: '#151d21',\n default: '#151d21',\n },\n primary: {\n main: '#4dabf5',\n },\n secondary: {\n main: '#436a93',\n },\n expert: '#14bb00',\n text: {\n primary: '#ffffff',\n secondary: '#ffffff',\n },\n },\n overrides: {\n MuiAppBar: {\n colorDefault: {\n backgroundColor: '#2a3135',\n },\n },\n MuiLink: {\n root: {\n textTransform: 'uppercase',\n transition: 'color .3s ease',\n color: orange[200],\n '&:hover': {\n color: orange[100],\n },\n },\n },\n MuiPaper: getElevations('#151d21', '#fff'),\n },\n };\n } else if (type === 'colored') {\n theme = {\n name: type,\n palette: {\n mode: 'light',\n primary: {\n main: '#3399CC',\n },\n secondary: {\n main: '#164477',\n },\n expert: '#96fc96',\n },\n overrides: {\n MuiAppBar: {\n colorDefault: {\n backgroundColor: '#3399CC',\n },\n },\n MuiLink: {\n root: {\n textTransform: 'uppercase',\n transition: 'color .3s ease',\n color: orange[400],\n '&:hover': {\n color: orange[300],\n },\n },\n },\n },\n };\n } else if (type === 'PT') {\n theme = {\n name: type,\n palette: {\n mode: 'light',\n primary: {\n main: '#0F99DE',\n },\n secondary: {\n main: '#88A536',\n },\n expert: '#BD1B24',\n },\n overrides: {\n MuiAppBar: {\n colorDefault: {\n backgroundColor: '#0F99DE',\n },\n },\n MuiLink: {\n root: {\n textTransform: 'uppercase',\n transition: 'color .3s ease',\n color: orange[400],\n '&:hover': {\n color: orange[300],\n },\n },\n },\n },\n };\n } else if (type === 'DX') {\n theme = {\n name: type,\n palette: {\n mode: 'light',\n primary: {\n main: '#F5F5F7',\n },\n secondary: {\n main: '#a9a9a9',\n },\n expert: '#BD1B24',\n text: {\n primary: '#007AFE',\n secondary: '#007AFE',\n disabled: '#007AFEAA',\n },\n },\n overrides: {\n MuiAppBar: {\n colorDefault: {\n backgroundColor: '#a9a9a9',\n },\n },\n MuiLink: {\n root: {\n textTransform: 'uppercase',\n transition: 'color .3s ease',\n color: orange[400],\n '&:hover': {\n color: orange[300],\n },\n },\n },\n },\n };\n } else {\n theme = {\n name: type,\n palette: {\n mode: 'light',\n primary: {\n main: '#3399CC',\n },\n secondary: {\n main: '#164477',\n },\n expert: '#14bb00',\n },\n overrides: {\n MuiLink: {\n root: {\n textTransform: 'uppercase',\n transition: 'color .3s ease',\n color: orange[400],\n '&:hover': {\n color: orange[300],\n },\n },\n },\n },\n };\n }\n\n theme.toolbar = {\n height: 48,\n };\n\n // add save toolbar\n theme.saveToolbar = {\n background: theme.palette.primary.main,\n button: {\n borderRadius: 3,\n height: 32,\n },\n };\n\n theme.palette.grey = {\n main: grey[300],\n dark: grey[400],\n };\n\n theme = createTheme(adaptV4Theme(theme));\n\n return createTheme(theme, {\n components: {\n MuiButton: {\n variants: [\n {\n props: {variant: 'contained', color: 'grey'},\n style: {\n color: theme.palette.getContrastText(theme.palette.grey[300]),\n },\n },\n {\n props: {variant: 'outlined', color: 'grey'},\n style: {\n color: theme.palette.text.primary,\n borderColor:\n theme.palette.mode === 'light'\n ? 'rgba(0, 0, 0, 0.23)'\n : 'rgba(255, 255, 255, 0.23)',\n '&.Mui-disabled': {\n border: `1px solid ${theme.palette.action.disabledBackground}`,\n },\n '&:hover': {\n borderColor:\n theme.palette.mode === 'light'\n ? 'rgba(0, 0, 0, 0.23)'\n : 'rgba(255, 255, 255, 0.23)',\n backgroundColor: alpha(\n theme.palette.text.primary,\n theme.palette.action.hoverOpacity,\n ),\n },\n },\n },\n {\n props: {variant: 'text', color: 'grey'},\n style: {\n color: theme.palette.text.primary,\n '&:hover': {\n backgroundColor: alpha(\n theme.palette.text.primary,\n theme.palette.action.hoverOpacity,\n ),\n },\n },\n },\n ],\n },\n },\n });\n};\n\nexport default Theme;\n"],"mappings":"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"}
|
package/icons/IconAdapter.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IconAdapter.js","names":["IconAdapter","props","e","onClick","width","height","className","propTypes","PropTypes","func","oneOfType","number","string"],"sources":["IconAdapter.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\n// Icon copied from https://github.com/FortAwesome/Font-Awesome/blob/0d1f27efb836eb2ab994ba37221849ed64a73e5c/svgs/regular/\nconst IconAdapter = props => {\n return <svg onClick={e => props.onClick && props.onClick(e)} viewBox=\"0 0 512 512\" width={props.width || 20} height={props.height || props.width || 20} xmlns=\"http://www.w3.org/2000/svg\" className={ props.className }>\n <path fill=\"currentColor\" d=\"M448 0L320 96v62.06l-83.03 83.03c6.79 4.25 13.27 9.06 19.07 14.87 5.8 5.8 10.62 12.28 14.87 19.07L353.94 192H416l96-128-64-64zM128 278.59L10.92 395.67c-14.55 14.55-14.55 38.15 0 52.71l52.7 52.7c14.56 14.56 38.15 14.56 52.71 0L233.41 384c29.11-29.11 29.11-76.3 0-105.41s-76.3-29.11-105.41 0z\"/>\n </svg>;\n}\n\nIconAdapter.propTypes = {\n onClick: PropTypes.func,\n width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n height: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n className: PropTypes.string\n};\nexport default IconAdapter;"],"mappings":";;;;;;;;;AAAA;;AACA;;AAEA;AACA,IAAMA,WAAW,GAAG,SAAdA,WAAc,CAAAC,KAAK,EAAI;EACzB,oBAAO;IAAK,OAAO,EAAE,iBAAAC,CAAC;MAAA,OAAID,KAAK,CAACE,OAAN,IAAiBF,KAAK,CAACE,OAAN,CAAcD,CAAd,CAArB;IAAA,CAAf;IAAsD,OAAO,EAAC,aAA9D;IAA4E,KAAK,EAAED,KAAK,CAACG,KAAN,IAAe,EAAlG;IAAsG,MAAM,EAAEH,KAAK,CAACI,MAAN,IAAgBJ,KAAK,CAACG,KAAtB,IAA+B,EAA7I;IAAiJ,KAAK,EAAC,4BAAvJ;IAAoL,SAAS,EAAGH,KAAK,CAACK;EAAtM,gBACH;IAAM,IAAI,EAAC,cAAX;IAA0B,CAAC,EAAC;EAA5B,EADG,CAAP;AAGH,CAJD;;AAMAN,WAAW,CAACO,SAAZ,GAAwB;EACpBJ,OAAO,EAAEK,
|
|
1
|
+
{"version":3,"file":"IconAdapter.js","names":["IconAdapter","props","e","onClick","width","height","className","propTypes","PropTypes","func","oneOfType","number","string"],"sources":["IconAdapter.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\n// Icon copied from https://github.com/FortAwesome/Font-Awesome/blob/0d1f27efb836eb2ab994ba37221849ed64a73e5c/svgs/regular/\nconst IconAdapter = props => {\n return <svg onClick={e => props.onClick && props.onClick(e)} viewBox=\"0 0 512 512\" width={props.width || 20} height={props.height || props.width || 20} xmlns=\"http://www.w3.org/2000/svg\" className={ props.className }>\n <path fill=\"currentColor\" d=\"M448 0L320 96v62.06l-83.03 83.03c6.79 4.25 13.27 9.06 19.07 14.87 5.8 5.8 10.62 12.28 14.87 19.07L353.94 192H416l96-128-64-64zM128 278.59L10.92 395.67c-14.55 14.55-14.55 38.15 0 52.71l52.7 52.7c14.56 14.56 38.15 14.56 52.71 0L233.41 384c29.11-29.11 29.11-76.3 0-105.41s-76.3-29.11-105.41 0z\"/>\n </svg>;\n}\n\nIconAdapter.propTypes = {\n onClick: PropTypes.func,\n width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n height: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n className: PropTypes.string\n};\nexport default IconAdapter;"],"mappings":";;;;;;;;;AAAA;;AACA;;AAEA;AACA,IAAMA,WAAW,GAAG,SAAdA,WAAc,CAAAC,KAAK,EAAI;EACzB,oBAAO;IAAK,OAAO,EAAE,iBAAAC,CAAC;MAAA,OAAID,KAAK,CAACE,OAAN,IAAiBF,KAAK,CAACE,OAAN,CAAcD,CAAd,CAArB;IAAA,CAAf;IAAsD,OAAO,EAAC,aAA9D;IAA4E,KAAK,EAAED,KAAK,CAACG,KAAN,IAAe,EAAlG;IAAsG,MAAM,EAAEH,KAAK,CAACI,MAAN,IAAgBJ,KAAK,CAACG,KAAtB,IAA+B,EAA7I;IAAiJ,KAAK,EAAC,4BAAvJ;IAAoL,SAAS,EAAGH,KAAK,CAACK;EAAtM,gBACH;IAAM,IAAI,EAAC,cAAX;IAA0B,CAAC,EAAC;EAA5B,EADG,CAAP;AAGH,CAJD;;AAMAN,WAAW,CAACO,SAAZ,GAAwB;EACpBJ,OAAO,EAAEK,qBAAA,CAAUC,IADC;EAEpBL,KAAK,EAAEI,qBAAA,CAAUE,SAAV,CAAoB,CAACF,qBAAA,CAAUG,MAAX,EAAmBH,qBAAA,CAAUI,MAA7B,CAApB,CAFa;EAGpBP,MAAM,EAAEG,qBAAA,CAAUE,SAAV,CAAoB,CAACF,qBAAA,CAAUG,MAAX,EAAmBH,qBAAA,CAAUI,MAA7B,CAApB,CAHY;EAIpBN,SAAS,EAAEE,qBAAA,CAAUI;AAJD,CAAxB;eAMeZ,W"}
|
package/icons/IconAlias.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IconAlias.js","names":["IconAlias","props","e","onClick","width","height","className","propTypes","PropTypes","func","oneOfType","number","string"],"sources":["IconAlias.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\n// Icon copied from https://github.com/FortAwesome/Font-Awesome/blob/0d1f27efb836eb2ab994ba37221849ed64a73e5c/svgs/regular/\nconst IconAlias = props => {\n return <svg onClick={e => props.onClick && props.onClick(e)} viewBox=\"0 0 512 512\" width={props.width || 20} height={props.height || props.width || 20} xmlns=\"http://www.w3.org/2000/svg\" className={ props.className }>\n <path fill=\"currentColor\" d=\"M96.06 454.35c.01 6.29 1.87 12.45 5.36 17.69l17.09 25.69a31.99 31.99 0 0 0 26.64 14.28h61.71a31.99 31.99 0 0 0 26.64-14.28l17.09-25.69a31.989 31.989 0 0 0 5.36-17.69l.04-38.35H96.01l.05 38.35zM0 176c0 44.37 16.45 84.85 43.56 115.78 16.52 18.85 42.36 58.23 52.21 91.45.04.26.07.52.11.78h160.24c.04-.26.07-.51.11-.78 9.85-33.22 35.69-72.6 52.21-91.45C335.55 260.85 352 220.37 352 176 352 78.61 272.91-.3 175.45 0 73.44.31 0 82.97 0 176zm176-80c-44.11 0-80 35.89-80 80 0 8.84-7.16 16-16 16s-16-7.16-16-16c0-61.76 50.24-112 112-112 8.84 0 16 7.16 16 16s-7.16 16-16 16z\"/>\n </svg>;\n}\n\nIconAlias.propTypes = {\n onClick: PropTypes.func,\n width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n height: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n className: PropTypes.string\n};\n\nexport default IconAlias;"],"mappings":";;;;;;;;;AAAA;;AACA;;AAEA;AACA,IAAMA,SAAS,GAAG,SAAZA,SAAY,CAAAC,KAAK,EAAI;EACvB,oBAAO;IAAK,OAAO,EAAE,iBAAAC,CAAC;MAAA,OAAID,KAAK,CAACE,OAAN,IAAiBF,KAAK,CAACE,OAAN,CAAcD,CAAd,CAArB;IAAA,CAAf;IAAsD,OAAO,EAAC,aAA9D;IAA4E,KAAK,EAAED,KAAK,CAACG,KAAN,IAAe,EAAlG;IAAsG,MAAM,EAAEH,KAAK,CAACI,MAAN,IAAgBJ,KAAK,CAACG,KAAtB,IAA+B,EAA7I;IAAiJ,KAAK,EAAC,4BAAvJ;IAAoL,SAAS,EAAGH,KAAK,CAACK;EAAtM,gBACH;IAAM,IAAI,EAAC,cAAX;IAA0B,CAAC,EAAC;EAA5B,EADG,CAAP;AAGH,CAJD;;AAMAN,SAAS,CAACO,SAAV,GAAsB;EAClBJ,OAAO,EAAEK,
|
|
1
|
+
{"version":3,"file":"IconAlias.js","names":["IconAlias","props","e","onClick","width","height","className","propTypes","PropTypes","func","oneOfType","number","string"],"sources":["IconAlias.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\n// Icon copied from https://github.com/FortAwesome/Font-Awesome/blob/0d1f27efb836eb2ab994ba37221849ed64a73e5c/svgs/regular/\nconst IconAlias = props => {\n return <svg onClick={e => props.onClick && props.onClick(e)} viewBox=\"0 0 512 512\" width={props.width || 20} height={props.height || props.width || 20} xmlns=\"http://www.w3.org/2000/svg\" className={ props.className }>\n <path fill=\"currentColor\" d=\"M96.06 454.35c.01 6.29 1.87 12.45 5.36 17.69l17.09 25.69a31.99 31.99 0 0 0 26.64 14.28h61.71a31.99 31.99 0 0 0 26.64-14.28l17.09-25.69a31.989 31.989 0 0 0 5.36-17.69l.04-38.35H96.01l.05 38.35zM0 176c0 44.37 16.45 84.85 43.56 115.78 16.52 18.85 42.36 58.23 52.21 91.45.04.26.07.52.11.78h160.24c.04-.26.07-.51.11-.78 9.85-33.22 35.69-72.6 52.21-91.45C335.55 260.85 352 220.37 352 176 352 78.61 272.91-.3 175.45 0 73.44.31 0 82.97 0 176zm176-80c-44.11 0-80 35.89-80 80 0 8.84-7.16 16-16 16s-16-7.16-16-16c0-61.76 50.24-112 112-112 8.84 0 16 7.16 16 16s-7.16 16-16 16z\"/>\n </svg>;\n}\n\nIconAlias.propTypes = {\n onClick: PropTypes.func,\n width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n height: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n className: PropTypes.string\n};\n\nexport default IconAlias;"],"mappings":";;;;;;;;;AAAA;;AACA;;AAEA;AACA,IAAMA,SAAS,GAAG,SAAZA,SAAY,CAAAC,KAAK,EAAI;EACvB,oBAAO;IAAK,OAAO,EAAE,iBAAAC,CAAC;MAAA,OAAID,KAAK,CAACE,OAAN,IAAiBF,KAAK,CAACE,OAAN,CAAcD,CAAd,CAArB;IAAA,CAAf;IAAsD,OAAO,EAAC,aAA9D;IAA4E,KAAK,EAAED,KAAK,CAACG,KAAN,IAAe,EAAlG;IAAsG,MAAM,EAAEH,KAAK,CAACI,MAAN,IAAgBJ,KAAK,CAACG,KAAtB,IAA+B,EAA7I;IAAiJ,KAAK,EAAC,4BAAvJ;IAAoL,SAAS,EAAGH,KAAK,CAACK;EAAtM,gBACH;IAAM,IAAI,EAAC,cAAX;IAA0B,CAAC,EAAC;EAA5B,EADG,CAAP;AAGH,CAJD;;AAMAN,SAAS,CAACO,SAAV,GAAsB;EAClBJ,OAAO,EAAEK,qBAAA,CAAUC,IADD;EAElBL,KAAK,EAAEI,qBAAA,CAAUE,SAAV,CAAoB,CAACF,qBAAA,CAAUG,MAAX,EAAmBH,qBAAA,CAAUI,MAA7B,CAApB,CAFW;EAGlBP,MAAM,EAAEG,qBAAA,CAAUE,SAAV,CAAoB,CAACF,qBAAA,CAAUG,MAAX,EAAmBH,qBAAA,CAAUI,MAA7B,CAApB,CAHU;EAIlBN,SAAS,EAAEE,qBAAA,CAAUI;AAJH,CAAtB;eAOeZ,S"}
|
package/icons/IconChannel.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IconChannel.js","names":["IconChannel","props","e","onClick","width","height","className","propTypes","PropTypes","func","oneOfType","number","string"],"sources":["IconChannel.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst IconChannel = props => {\n return <svg onClick={e => props.onClick && props.onClick(e)} viewBox=\"0 0 320 320\" width={props.width || 20} height={props.height || props.width || 20} xmlns=\"http://www.w3.org/2000/svg\" className={ props.className }>\n <g fill=\"currentColor\">\n <rect rx=\"32\" id=\"svg_1\" height=\"272\" width=\"267\" y=\"25\" x=\"25\" strokeWidth=\"15\" stroke=\"currentColor\" fill=\"none\"/>\n <ellipse stroke=\"currentColor\" ry=\"26\" rx=\"26\" id=\"svg_2\" cy=\"248\" cx=\"160\" fill=\"none\" strokeWidth=\"15\"/>\n <line strokeLinecap=\"null\" strokeLinejoin=\"null\" id=\"svg_3\" y2=\"201.94531\" x2=\"159.5\" y1=\"46.94531\" x1=\"159.5\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"15\" stroke=\"currentColor\" fill=\"none\"/>\n <rect id=\"svg_4\" height=\"27\" width=\"50\" y=\"79.7979\" x=\"133.5\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"15\" stroke=\"currentColor\" fill=\"#fff\"/>\n </g>\n </svg>;\n}\n\nIconChannel.propTypes = {\n onClick: PropTypes.func,\n width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n height: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n className: PropTypes.string\n};\n\nexport default IconChannel;"],"mappings":";;;;;;;;;AAAA;;AACA;;AAEA,IAAMA,WAAW,GAAG,SAAdA,WAAc,CAAAC,KAAK,EAAI;EACzB,oBAAO;IAAK,OAAO,EAAE,iBAAAC,CAAC;MAAA,OAAID,KAAK,CAACE,OAAN,IAAiBF,KAAK,CAACE,OAAN,CAAcD,CAAd,CAArB;IAAA,CAAf;IAAsD,OAAO,EAAC,aAA9D;IAA4E,KAAK,EAAED,KAAK,CAACG,KAAN,IAAe,EAAlG;IAAsG,MAAM,EAAEH,KAAK,CAACI,MAAN,IAAgBJ,KAAK,CAACG,KAAtB,IAA+B,EAA7I;IAAiJ,KAAK,EAAC,4BAAvJ;IAAoL,SAAS,EAAGH,KAAK,CAACK;EAAtM,gBACH;IAAG,IAAI,EAAC;EAAR,gBACI;IAAM,EAAE,EAAC,IAAT;IAAc,EAAE,EAAC,OAAjB;IAAyB,MAAM,EAAC,KAAhC;IAAsC,KAAK,EAAC,KAA5C;IAAkD,CAAC,EAAC,IAApD;IAAyD,CAAC,EAAC,IAA3D;IAAgE,WAAW,EAAC,IAA5E;IAAiF,MAAM,EAAC,cAAxF;IAAuG,IAAI,EAAC;EAA5G,EADJ,eAEI;IAAS,MAAM,EAAC,cAAhB;IAA+B,EAAE,EAAC,IAAlC;IAAuC,EAAE,EAAC,IAA1C;IAA+C,EAAE,EAAC,OAAlD;IAA0D,EAAE,EAAC,KAA7D;IAAmE,EAAE,EAAC,KAAtE;IAA4E,IAAI,EAAC,MAAjF;IAAwF,WAAW,EAAC;EAApG,EAFJ,eAGI;IAAM,aAAa,EAAC,MAApB;IAA2B,cAAc,EAAC,MAA1C;IAAiD,EAAE,EAAC,OAApD;IAA4D,EAAE,EAAC,WAA/D;IAA2E,EAAE,EAAC,OAA9E;IAAsF,EAAE,EAAC,UAAzF;IAAoG,EAAE,EAAC,OAAvG;IAA+G,WAAW,EAAC,MAA3H;IAAkI,aAAa,EAAC,MAAhJ;IAAuJ,WAAW,EAAC,IAAnK;IAAwK,MAAM,EAAC,cAA/K;IAA8L,IAAI,EAAC;EAAnM,EAHJ,eAII;IAAM,EAAE,EAAC,OAAT;IAAiB,MAAM,EAAC,IAAxB;IAA6B,KAAK,EAAC,IAAnC;IAAwC,CAAC,EAAC,SAA1C;IAAoD,CAAC,EAAC,OAAtD;IAA8D,WAAW,EAAC,MAA1E;IAAiF,aAAa,EAAC,MAA/F;IAAsG,WAAW,EAAC,IAAlH;IAAuH,MAAM,EAAC,cAA9H;IAA6I,IAAI,EAAC;EAAlJ,EAJJ,CADG,CAAP;AAQH,CATD;;AAWAN,WAAW,CAACO,SAAZ,GAAwB;EACpBJ,OAAO,EAAEK,
|
|
1
|
+
{"version":3,"file":"IconChannel.js","names":["IconChannel","props","e","onClick","width","height","className","propTypes","PropTypes","func","oneOfType","number","string"],"sources":["IconChannel.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst IconChannel = props => {\n return <svg onClick={e => props.onClick && props.onClick(e)} viewBox=\"0 0 320 320\" width={props.width || 20} height={props.height || props.width || 20} xmlns=\"http://www.w3.org/2000/svg\" className={ props.className }>\n <g fill=\"currentColor\">\n <rect rx=\"32\" id=\"svg_1\" height=\"272\" width=\"267\" y=\"25\" x=\"25\" strokeWidth=\"15\" stroke=\"currentColor\" fill=\"none\"/>\n <ellipse stroke=\"currentColor\" ry=\"26\" rx=\"26\" id=\"svg_2\" cy=\"248\" cx=\"160\" fill=\"none\" strokeWidth=\"15\"/>\n <line strokeLinecap=\"null\" strokeLinejoin=\"null\" id=\"svg_3\" y2=\"201.94531\" x2=\"159.5\" y1=\"46.94531\" x1=\"159.5\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"15\" stroke=\"currentColor\" fill=\"none\"/>\n <rect id=\"svg_4\" height=\"27\" width=\"50\" y=\"79.7979\" x=\"133.5\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"15\" stroke=\"currentColor\" fill=\"#fff\"/>\n </g>\n </svg>;\n}\n\nIconChannel.propTypes = {\n onClick: PropTypes.func,\n width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n height: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n className: PropTypes.string\n};\n\nexport default IconChannel;"],"mappings":";;;;;;;;;AAAA;;AACA;;AAEA,IAAMA,WAAW,GAAG,SAAdA,WAAc,CAAAC,KAAK,EAAI;EACzB,oBAAO;IAAK,OAAO,EAAE,iBAAAC,CAAC;MAAA,OAAID,KAAK,CAACE,OAAN,IAAiBF,KAAK,CAACE,OAAN,CAAcD,CAAd,CAArB;IAAA,CAAf;IAAsD,OAAO,EAAC,aAA9D;IAA4E,KAAK,EAAED,KAAK,CAACG,KAAN,IAAe,EAAlG;IAAsG,MAAM,EAAEH,KAAK,CAACI,MAAN,IAAgBJ,KAAK,CAACG,KAAtB,IAA+B,EAA7I;IAAiJ,KAAK,EAAC,4BAAvJ;IAAoL,SAAS,EAAGH,KAAK,CAACK;EAAtM,gBACH;IAAG,IAAI,EAAC;EAAR,gBACI;IAAM,EAAE,EAAC,IAAT;IAAc,EAAE,EAAC,OAAjB;IAAyB,MAAM,EAAC,KAAhC;IAAsC,KAAK,EAAC,KAA5C;IAAkD,CAAC,EAAC,IAApD;IAAyD,CAAC,EAAC,IAA3D;IAAgE,WAAW,EAAC,IAA5E;IAAiF,MAAM,EAAC,cAAxF;IAAuG,IAAI,EAAC;EAA5G,EADJ,eAEI;IAAS,MAAM,EAAC,cAAhB;IAA+B,EAAE,EAAC,IAAlC;IAAuC,EAAE,EAAC,IAA1C;IAA+C,EAAE,EAAC,OAAlD;IAA0D,EAAE,EAAC,KAA7D;IAAmE,EAAE,EAAC,KAAtE;IAA4E,IAAI,EAAC,MAAjF;IAAwF,WAAW,EAAC;EAApG,EAFJ,eAGI;IAAM,aAAa,EAAC,MAApB;IAA2B,cAAc,EAAC,MAA1C;IAAiD,EAAE,EAAC,OAApD;IAA4D,EAAE,EAAC,WAA/D;IAA2E,EAAE,EAAC,OAA9E;IAAsF,EAAE,EAAC,UAAzF;IAAoG,EAAE,EAAC,OAAvG;IAA+G,WAAW,EAAC,MAA3H;IAAkI,aAAa,EAAC,MAAhJ;IAAuJ,WAAW,EAAC,IAAnK;IAAwK,MAAM,EAAC,cAA/K;IAA8L,IAAI,EAAC;EAAnM,EAHJ,eAII;IAAM,EAAE,EAAC,OAAT;IAAiB,MAAM,EAAC,IAAxB;IAA6B,KAAK,EAAC,IAAnC;IAAwC,CAAC,EAAC,SAA1C;IAAoD,CAAC,EAAC,OAAtD;IAA8D,WAAW,EAAC,MAA1E;IAAiF,aAAa,EAAC,MAA/F;IAAsG,WAAW,EAAC,IAAlH;IAAuH,MAAM,EAAC,cAA9H;IAA6I,IAAI,EAAC;EAAlJ,EAJJ,CADG,CAAP;AAQH,CATD;;AAWAN,WAAW,CAACO,SAAZ,GAAwB;EACpBJ,OAAO,EAAEK,qBAAA,CAAUC,IADC;EAEpBL,KAAK,EAAEI,qBAAA,CAAUE,SAAV,CAAoB,CAACF,qBAAA,CAAUG,MAAX,EAAmBH,qBAAA,CAAUI,MAA7B,CAApB,CAFa;EAGpBP,MAAM,EAAEG,qBAAA,CAAUE,SAAV,CAAoB,CAACF,qBAAA,CAAUG,MAAX,EAAmBH,qBAAA,CAAUI,MAA7B,CAApB,CAHY;EAIpBN,SAAS,EAAEE,qBAAA,CAAUI;AAJD,CAAxB;eAOeZ,W"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IconClearFilter.js","names":["IconClearFilter","props","e","onClick","width","height","className","propTypes","PropTypes","func","oneOfType","number","string"],"sources":["IconClearFilter.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\n// Copyright Apache 2.0 https://raw.githubusercontent.com/material-icons/material-icons/master/svg/filter_alt/baseline.svg\n// https://github.com/material-icons/material-icons/blob/master/LICENSE\nconst IconClearFilter = props => {\n return <svg onClick={e => props.onClick && props.onClick(e)} viewBox=\"0 0 24 24\" width={props.width || 20} height={props.height || props.width || 20} xmlns=\"http://www.w3.org/2000/svg\" className={ props.className }>\n <path fill=\"currentColor\" stroke=\"currentColor\" d=\"M4.25 5.61C6.27 8.2 10 13 10 13v6c0 .55.45 1 1 1h2c.55 0 1-.45 1-1v-6s3.72-4.8 5.74-7.39A.998.998 0 0 0 18.95 4H5.04c-.83 0-1.3.95-.79 1.61z\"/>\n </svg>;\n}\n\nIconClearFilter.propTypes = {\n onClick: PropTypes.func,\n width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n height: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n className: PropTypes.string\n};\n\nexport default IconClearFilter;"],"mappings":";;;;;;;;;AAAA;;AACA;;AAEA;AACA;AACA,IAAMA,eAAe,GAAG,SAAlBA,eAAkB,CAAAC,KAAK,EAAI;EAC7B,oBAAO;IAAK,OAAO,EAAE,iBAAAC,CAAC;MAAA,OAAID,KAAK,CAACE,OAAN,IAAiBF,KAAK,CAACE,OAAN,CAAcD,CAAd,CAArB;IAAA,CAAf;IAAsD,OAAO,EAAC,WAA9D;IAA0E,KAAK,EAAED,KAAK,CAACG,KAAN,IAAe,EAAhG;IAAoG,MAAM,EAAEH,KAAK,CAACI,MAAN,IAAgBJ,KAAK,CAACG,KAAtB,IAA+B,EAA3I;IAA+I,KAAK,EAAC,4BAArJ;IAAkL,SAAS,EAAGH,KAAK,CAACK;EAApM,gBACH;IAAM,IAAI,EAAC,cAAX;IAA0B,MAAM,EAAC,cAAjC;IAAgD,CAAC,EAAC;EAAlD,EADG,CAAP;AAGH,CAJD;;AAMAN,eAAe,CAACO,SAAhB,GAA4B;EACxBJ,OAAO,EAAEK,
|
|
1
|
+
{"version":3,"file":"IconClearFilter.js","names":["IconClearFilter","props","e","onClick","width","height","className","propTypes","PropTypes","func","oneOfType","number","string"],"sources":["IconClearFilter.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\n// Copyright Apache 2.0 https://raw.githubusercontent.com/material-icons/material-icons/master/svg/filter_alt/baseline.svg\n// https://github.com/material-icons/material-icons/blob/master/LICENSE\nconst IconClearFilter = props => {\n return <svg onClick={e => props.onClick && props.onClick(e)} viewBox=\"0 0 24 24\" width={props.width || 20} height={props.height || props.width || 20} xmlns=\"http://www.w3.org/2000/svg\" className={ props.className }>\n <path fill=\"currentColor\" stroke=\"currentColor\" d=\"M4.25 5.61C6.27 8.2 10 13 10 13v6c0 .55.45 1 1 1h2c.55 0 1-.45 1-1v-6s3.72-4.8 5.74-7.39A.998.998 0 0 0 18.95 4H5.04c-.83 0-1.3.95-.79 1.61z\"/>\n </svg>;\n}\n\nIconClearFilter.propTypes = {\n onClick: PropTypes.func,\n width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n height: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n className: PropTypes.string\n};\n\nexport default IconClearFilter;"],"mappings":";;;;;;;;;AAAA;;AACA;;AAEA;AACA;AACA,IAAMA,eAAe,GAAG,SAAlBA,eAAkB,CAAAC,KAAK,EAAI;EAC7B,oBAAO;IAAK,OAAO,EAAE,iBAAAC,CAAC;MAAA,OAAID,KAAK,CAACE,OAAN,IAAiBF,KAAK,CAACE,OAAN,CAAcD,CAAd,CAArB;IAAA,CAAf;IAAsD,OAAO,EAAC,WAA9D;IAA0E,KAAK,EAAED,KAAK,CAACG,KAAN,IAAe,EAAhG;IAAoG,MAAM,EAAEH,KAAK,CAACI,MAAN,IAAgBJ,KAAK,CAACG,KAAtB,IAA+B,EAA3I;IAA+I,KAAK,EAAC,4BAArJ;IAAkL,SAAS,EAAGH,KAAK,CAACK;EAApM,gBACH;IAAM,IAAI,EAAC,cAAX;IAA0B,MAAM,EAAC,cAAjC;IAAgD,CAAC,EAAC;EAAlD,EADG,CAAP;AAGH,CAJD;;AAMAN,eAAe,CAACO,SAAhB,GAA4B;EACxBJ,OAAO,EAAEK,qBAAA,CAAUC,IADK;EAExBL,KAAK,EAAEI,qBAAA,CAAUE,SAAV,CAAoB,CAACF,qBAAA,CAAUG,MAAX,EAAmBH,qBAAA,CAAUI,MAA7B,CAApB,CAFiB;EAGxBP,MAAM,EAAEG,qBAAA,CAAUE,SAAV,CAAoB,CAACF,qBAAA,CAAUG,MAAX,EAAmBH,qBAAA,CAAUI,MAA7B,CAApB,CAHgB;EAIxBN,SAAS,EAAEE,qBAAA,CAAUI;AAJG,CAA5B;eAOeZ,e"}
|
package/icons/IconClosed.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IconClosed.js","names":["IconClosed","props","e","onClick","width","height","className","propTypes","PropTypes","func","oneOfType","number","string"],"sources":["IconClosed.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\n// Icon copied from https://github.com/FortAwesome/Font-Awesome/blob/0d1f27efb836eb2ab994ba37221849ed64a73e5c/svgs/regular/\nconst IconClosed = props => {\n return <svg onClick={e => props.onClick && props.onClick(e)} viewBox=\"0 0 650 512\" xmlns=\"http://www.w3.org/2000/svg\" width={props.width || 20} height={props.height || props.width || 20} className={ props.className }>\n <path fill=\"currentColor\" d=\"M464 128H272l-64-64H48C21.49 64 0 85.49 0 112v288c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V176c0-26.51-21.49-48-48-48z\"/>\n </svg>;\n}\n\nIconClosed.propTypes = {\n onClick: PropTypes.func,\n width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n height: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n className: PropTypes.string\n};\nexport default IconClosed;"],"mappings":";;;;;;;;;AAAA;;AACA;;AAEA;AACA,IAAMA,UAAU,GAAG,SAAbA,UAAa,CAAAC,KAAK,EAAI;EACxB,oBAAO;IAAK,OAAO,EAAE,iBAAAC,CAAC;MAAA,OAAID,KAAK,CAACE,OAAN,IAAiBF,KAAK,CAACE,OAAN,CAAcD,CAAd,CAArB;IAAA,CAAf;IAAsD,OAAO,EAAC,aAA9D;IAA4E,KAAK,EAAC,4BAAlF;IAA+G,KAAK,EAAED,KAAK,CAACG,KAAN,IAAe,EAArI;IAAyI,MAAM,EAAEH,KAAK,CAACI,MAAN,IAAgBJ,KAAK,CAACG,KAAtB,IAA+B,EAAhL;IAAoL,SAAS,EAAGH,KAAK,CAACK;EAAtM,gBACH;IAAM,IAAI,EAAC,cAAX;IAA0B,CAAC,EAAC;EAA5B,EADG,CAAP;AAGH,CAJD;;AAMAN,UAAU,CAACO,SAAX,GAAuB;EACnBJ,OAAO,EAAEK,
|
|
1
|
+
{"version":3,"file":"IconClosed.js","names":["IconClosed","props","e","onClick","width","height","className","propTypes","PropTypes","func","oneOfType","number","string"],"sources":["IconClosed.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\n// Icon copied from https://github.com/FortAwesome/Font-Awesome/blob/0d1f27efb836eb2ab994ba37221849ed64a73e5c/svgs/regular/\nconst IconClosed = props => {\n return <svg onClick={e => props.onClick && props.onClick(e)} viewBox=\"0 0 650 512\" xmlns=\"http://www.w3.org/2000/svg\" width={props.width || 20} height={props.height || props.width || 20} className={ props.className }>\n <path fill=\"currentColor\" d=\"M464 128H272l-64-64H48C21.49 64 0 85.49 0 112v288c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V176c0-26.51-21.49-48-48-48z\"/>\n </svg>;\n}\n\nIconClosed.propTypes = {\n onClick: PropTypes.func,\n width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n height: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n className: PropTypes.string\n};\nexport default IconClosed;"],"mappings":";;;;;;;;;AAAA;;AACA;;AAEA;AACA,IAAMA,UAAU,GAAG,SAAbA,UAAa,CAAAC,KAAK,EAAI;EACxB,oBAAO;IAAK,OAAO,EAAE,iBAAAC,CAAC;MAAA,OAAID,KAAK,CAACE,OAAN,IAAiBF,KAAK,CAACE,OAAN,CAAcD,CAAd,CAArB;IAAA,CAAf;IAAsD,OAAO,EAAC,aAA9D;IAA4E,KAAK,EAAC,4BAAlF;IAA+G,KAAK,EAAED,KAAK,CAACG,KAAN,IAAe,EAArI;IAAyI,MAAM,EAAEH,KAAK,CAACI,MAAN,IAAgBJ,KAAK,CAACG,KAAtB,IAA+B,EAAhL;IAAoL,SAAS,EAAGH,KAAK,CAACK;EAAtM,gBACH;IAAM,IAAI,EAAC,cAAX;IAA0B,CAAC,EAAC;EAA5B,EADG,CAAP;AAGH,CAJD;;AAMAN,UAAU,CAACO,SAAX,GAAuB;EACnBJ,OAAO,EAAEK,qBAAA,CAAUC,IADA;EAEnBL,KAAK,EAAEI,qBAAA,CAAUE,SAAV,CAAoB,CAACF,qBAAA,CAAUG,MAAX,EAAmBH,qBAAA,CAAUI,MAA7B,CAApB,CAFY;EAGnBP,MAAM,EAAEG,qBAAA,CAAUE,SAAV,CAAoB,CAACF,qBAAA,CAAUG,MAAX,EAAmBH,qBAAA,CAAUI,MAA7B,CAApB,CAHW;EAInBN,SAAS,EAAEE,qBAAA,CAAUI;AAJF,CAAvB;eAMeZ,U"}
|
package/icons/IconCopy.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IconCopy.js","names":["IconCopy","props","e","onClick","width","height","className","propTypes","PropTypes","func","oneOfType","number","string"],"sources":["IconCopy.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\n/**\n * @typedef {object} IconCopyProps\n * @property {string} [key] The key to identify this component.\n * @property {number} [width] The width in pixels of the icon.\n * @property {number} [height] The height in pixels of the icon.\n * @property {(e: React.MouseEvent) => void} [onClick] Click handler.\n * @property {string} [className] The class name for the SVG element.\n *\n * @extends {React.Component<IconCopyProps>}\n */\nconst IconCopy = props => {\n return <svg onClick={e => props.onClick && props.onClick(e)} viewBox=\"0 0 512 512\" width={props.width || 20} height={props.height || props.width || 20} xmlns=\"http://www.w3.org/2000/svg\" className={ props.className }>\n <path fill=\"currentColor\" d=\"M433.941 65.941l-51.882-51.882A48 48 0 0 0 348.118 0H176c-26.51 0-48 21.49-48 48v48H48c-26.51 0-48 21.49-48 48v320c0 26.51 21.49 48 48 48h224c26.51 0 48-21.49 48-48v-48h80c26.51 0 48-21.49 48-48V99.882a48 48 0 0 0-14.059-33.941zM266 464H54a6 6 0 0 1-6-6V150a6 6 0 0 1 6-6h74v224c0 26.51 21.49 48 48 48h96v42a6 6 0 0 1-6 6zm128-96H182a6 6 0 0 1-6-6V54a6 6 0 0 1 6-6h106v88c0 13.255 10.745 24 24 24h88v202a6 6 0 0 1-6 6zm6-256h-64V48h9.632c1.591 0 3.117.632 4.243 1.757l48.368 48.368a6 6 0 0 1 1.757 4.243V112z\"/>\n </svg>;\n}\n\nIconCopy.propTypes = {\n onClick: PropTypes.func,\n width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n height: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n className: PropTypes.string\n};\n\nexport default IconCopy;"],"mappings":";;;;;;;;;AAAA;;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAMA,QAAQ,GAAG,SAAXA,QAAW,CAAAC,KAAK,EAAI;EACtB,oBAAO;IAAK,OAAO,EAAE,iBAAAC,CAAC;MAAA,OAAID,KAAK,CAACE,OAAN,IAAiBF,KAAK,CAACE,OAAN,CAAcD,CAAd,CAArB;IAAA,CAAf;IAAsD,OAAO,EAAC,aAA9D;IAA4E,KAAK,EAAED,KAAK,CAACG,KAAN,IAAe,EAAlG;IAAsG,MAAM,EAAEH,KAAK,CAACI,MAAN,IAAgBJ,KAAK,CAACG,KAAtB,IAA+B,EAA7I;IAAiJ,KAAK,EAAC,4BAAvJ;IAAoL,SAAS,EAAGH,KAAK,CAACK;EAAtM,gBACH;IAAM,IAAI,EAAC,cAAX;IAA0B,CAAC,EAAC;EAA5B,EADG,CAAP;AAGH,CAJD;;AAMAN,QAAQ,CAACO,SAAT,GAAqB;EACjBJ,OAAO,EAAEK,
|
|
1
|
+
{"version":3,"file":"IconCopy.js","names":["IconCopy","props","e","onClick","width","height","className","propTypes","PropTypes","func","oneOfType","number","string"],"sources":["IconCopy.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\n/**\n * @typedef {object} IconCopyProps\n * @property {string} [key] The key to identify this component.\n * @property {number} [width] The width in pixels of the icon.\n * @property {number} [height] The height in pixels of the icon.\n * @property {(e: React.MouseEvent) => void} [onClick] Click handler.\n * @property {string} [className] The class name for the SVG element.\n *\n * @extends {React.Component<IconCopyProps>}\n */\nconst IconCopy = props => {\n return <svg onClick={e => props.onClick && props.onClick(e)} viewBox=\"0 0 512 512\" width={props.width || 20} height={props.height || props.width || 20} xmlns=\"http://www.w3.org/2000/svg\" className={ props.className }>\n <path fill=\"currentColor\" d=\"M433.941 65.941l-51.882-51.882A48 48 0 0 0 348.118 0H176c-26.51 0-48 21.49-48 48v48H48c-26.51 0-48 21.49-48 48v320c0 26.51 21.49 48 48 48h224c26.51 0 48-21.49 48-48v-48h80c26.51 0 48-21.49 48-48V99.882a48 48 0 0 0-14.059-33.941zM266 464H54a6 6 0 0 1-6-6V150a6 6 0 0 1 6-6h74v224c0 26.51 21.49 48 48 48h96v42a6 6 0 0 1-6 6zm128-96H182a6 6 0 0 1-6-6V54a6 6 0 0 1 6-6h106v88c0 13.255 10.745 24 24 24h88v202a6 6 0 0 1-6 6zm6-256h-64V48h9.632c1.591 0 3.117.632 4.243 1.757l48.368 48.368a6 6 0 0 1 1.757 4.243V112z\"/>\n </svg>;\n}\n\nIconCopy.propTypes = {\n onClick: PropTypes.func,\n width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n height: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n className: PropTypes.string\n};\n\nexport default IconCopy;"],"mappings":";;;;;;;;;AAAA;;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAMA,QAAQ,GAAG,SAAXA,QAAW,CAAAC,KAAK,EAAI;EACtB,oBAAO;IAAK,OAAO,EAAE,iBAAAC,CAAC;MAAA,OAAID,KAAK,CAACE,OAAN,IAAiBF,KAAK,CAACE,OAAN,CAAcD,CAAd,CAArB;IAAA,CAAf;IAAsD,OAAO,EAAC,aAA9D;IAA4E,KAAK,EAAED,KAAK,CAACG,KAAN,IAAe,EAAlG;IAAsG,MAAM,EAAEH,KAAK,CAACI,MAAN,IAAgBJ,KAAK,CAACG,KAAtB,IAA+B,EAA7I;IAAiJ,KAAK,EAAC,4BAAvJ;IAAoL,SAAS,EAAGH,KAAK,CAACK;EAAtM,gBACH;IAAM,IAAI,EAAC,cAAX;IAA0B,CAAC,EAAC;EAA5B,EADG,CAAP;AAGH,CAJD;;AAMAN,QAAQ,CAACO,SAAT,GAAqB;EACjBJ,OAAO,EAAEK,qBAAA,CAAUC,IADF;EAEjBL,KAAK,EAAEI,qBAAA,CAAUE,SAAV,CAAoB,CAACF,qBAAA,CAAUG,MAAX,EAAmBH,qBAAA,CAAUI,MAA7B,CAApB,CAFU;EAGjBP,MAAM,EAAEG,qBAAA,CAAUE,SAAV,CAAoB,CAACF,qBAAA,CAAUG,MAAX,EAAmBH,qBAAA,CAAUI,MAA7B,CAApB,CAHS;EAIjBN,SAAS,EAAEE,qBAAA,CAAUI;AAJJ,CAArB;eAOeZ,Q"}
|
package/icons/IconDevice.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IconDevice.js","names":["IconDevice","props","e","onClick","width","height","className","propTypes","PropTypes","func","oneOfType","number","string"],"sources":["IconDevice.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst IconDevice = props => {\n return <svg onClick={e => props.onClick && props.onClick(e)} viewBox=\"0 0 320 320\" width={props.width || 20} height={props.height || props.width || 20} xmlns=\"http://www.w3.org/2000/svg\" className={ props.className }>\n <g fill=\"currentColor\">\n <rect rx=\"32\" id=\"svg_1\" height=\"272\" width=\"267\" y=\"25\" x=\"25\" strokeWidth=\"15\" stroke=\"currentColor\" fill=\"none\"/>\n <ellipse stroke=\"currentColor\" ry=\"26\" rx=\"26\" id=\"svg_2\" cy=\"252\" cx=\"160\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"15\" fill=\"#fff\"/>\n <line strokeLinecap=\"null\" strokeLinejoin=\"null\" id=\"svg_3\" y2=\"201.94531\" x2=\"159.5\" y1=\"46.94531\" x1=\"159.5\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"15\" stroke=\"currentColor\" fill=\"none\"/>\n <rect height=\"27\" width=\"50\" y=\"140.83068\" x=\"133.5\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"15\" stroke=\"currentColor\" fill=\"#fff\"/>\n <ellipse stroke=\"currentColor\" ry=\"26\" rx=\"26\" id=\"svg_5\" cy=\"251\" cx=\"241\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"15\" fill=\"#fff\"/>\n <line strokeLinecap=\"null\" strokeLinejoin=\"null\" id=\"svg_6\" y2=\"200.94531\" x2=\"240.5\" y1=\"45.94531\" x1=\"240.5\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"15\" stroke=\"currentColor\" fill=\"none\"/>\n <rect height=\"27\" width=\"50\" y=\"78.7979\" x=\"214.5\" strokeWidth=\"15\" stroke=\"currentColor\" fill=\"#fff\"/>\n <ellipse stroke=\"currentColor\" ry=\"26\" rx=\"26\" id=\"svg_8\" cy=\"252\" cx=\"84\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"15\" fill=\"#fff\"/>\n <line strokeLinecap=\"null\" strokeLinejoin=\"null\" id=\"svg_9\" y2=\"201.94531\" x2=\"83.5\" y1=\"46.94531\" x1=\"83.5\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"15\" stroke=\"currentColor\" fill=\"none\"/>\n <rect height=\"27\" width=\"50\" y=\"79.7979\" x=\"57.5\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"15\" stroke=\"currentColor\" fill=\"#fff\"/>\n </g>\n </svg>;\n}\n\nIconDevice.propTypes = {\n onClick: PropTypes.func,\n width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n height: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n className: PropTypes.string\n};\n\nexport default IconDevice;"],"mappings":"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
|
|
1
|
+
{"version":3,"file":"IconDevice.js","names":["IconDevice","props","e","onClick","width","height","className","propTypes","PropTypes","func","oneOfType","number","string"],"sources":["IconDevice.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst IconDevice = props => {\n return <svg onClick={e => props.onClick && props.onClick(e)} viewBox=\"0 0 320 320\" width={props.width || 20} height={props.height || props.width || 20} xmlns=\"http://www.w3.org/2000/svg\" className={ props.className }>\n <g fill=\"currentColor\">\n <rect rx=\"32\" id=\"svg_1\" height=\"272\" width=\"267\" y=\"25\" x=\"25\" strokeWidth=\"15\" stroke=\"currentColor\" fill=\"none\"/>\n <ellipse stroke=\"currentColor\" ry=\"26\" rx=\"26\" id=\"svg_2\" cy=\"252\" cx=\"160\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"15\" fill=\"#fff\"/>\n <line strokeLinecap=\"null\" strokeLinejoin=\"null\" id=\"svg_3\" y2=\"201.94531\" x2=\"159.5\" y1=\"46.94531\" x1=\"159.5\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"15\" stroke=\"currentColor\" fill=\"none\"/>\n <rect height=\"27\" width=\"50\" y=\"140.83068\" x=\"133.5\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"15\" stroke=\"currentColor\" fill=\"#fff\"/>\n <ellipse stroke=\"currentColor\" ry=\"26\" rx=\"26\" id=\"svg_5\" cy=\"251\" cx=\"241\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"15\" fill=\"#fff\"/>\n <line strokeLinecap=\"null\" strokeLinejoin=\"null\" id=\"svg_6\" y2=\"200.94531\" x2=\"240.5\" y1=\"45.94531\" x1=\"240.5\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"15\" stroke=\"currentColor\" fill=\"none\"/>\n <rect height=\"27\" width=\"50\" y=\"78.7979\" x=\"214.5\" strokeWidth=\"15\" stroke=\"currentColor\" fill=\"#fff\"/>\n <ellipse stroke=\"currentColor\" ry=\"26\" rx=\"26\" id=\"svg_8\" cy=\"252\" cx=\"84\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"15\" fill=\"#fff\"/>\n <line strokeLinecap=\"null\" strokeLinejoin=\"null\" id=\"svg_9\" y2=\"201.94531\" x2=\"83.5\" y1=\"46.94531\" x1=\"83.5\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"15\" stroke=\"currentColor\" fill=\"none\"/>\n <rect height=\"27\" width=\"50\" y=\"79.7979\" x=\"57.5\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"15\" stroke=\"currentColor\" fill=\"#fff\"/>\n </g>\n </svg>;\n}\n\nIconDevice.propTypes = {\n onClick: PropTypes.func,\n width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n height: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n className: PropTypes.string\n};\n\nexport default IconDevice;"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IconDocument.js","names":["IconDocument","props","e","onClick","width","height","className","propTypes","PropTypes","func","oneOfType","number","string"],"sources":["IconDocument.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\n// Icon copied from https://github.com/FortAwesome/Font-Awesome/blob/0d1f27efb836eb2ab994ba37221849ed64a73e5c/svgs/regular/\nconst IconDocument = props => {\n return <svg onClick={e => props.onClick && props.onClick(e)} viewBox=\"0 0 512 512\" width={props.width || 20} height={props.height || props.width || 20} xmlns=\"http://www.w3.org/2000/svg\" className={ props.className }>\n <path fill=\"currentColor\" d=\"M369.9 97.9L286 14C277 5 264.8-.1 252.1-.1H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V131.9c0-12.7-5.1-25-14.1-34zM332.1 128H256V51.9l76.1 76.1zM48 464V48h160v104c0 13.3 10.7 24 24 24h104v288H48z\"/>\n </svg>;\n}\n\nIconDocument.propTypes = {\n onClick: PropTypes.func,\n width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n height: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n className: PropTypes.string\n};\n\nexport default IconDocument;"],"mappings":";;;;;;;;;AAAA;;AACA;;AAEA;AACA,IAAMA,YAAY,GAAG,SAAfA,YAAe,CAAAC,KAAK,EAAI;EAC1B,oBAAO;IAAK,OAAO,EAAE,iBAAAC,CAAC;MAAA,OAAID,KAAK,CAACE,OAAN,IAAiBF,KAAK,CAACE,OAAN,CAAcD,CAAd,CAArB;IAAA,CAAf;IAAsD,OAAO,EAAC,aAA9D;IAA4E,KAAK,EAAED,KAAK,CAACG,KAAN,IAAe,EAAlG;IAAsG,MAAM,EAAEH,KAAK,CAACI,MAAN,IAAgBJ,KAAK,CAACG,KAAtB,IAA+B,EAA7I;IAAiJ,KAAK,EAAC,4BAAvJ;IAAoL,SAAS,EAAGH,KAAK,CAACK;EAAtM,gBACH;IAAM,IAAI,EAAC,cAAX;IAA0B,CAAC,EAAC;EAA5B,EADG,CAAP;AAGH,CAJD;;AAMAN,YAAY,CAACO,SAAb,GAAyB;EACrBJ,OAAO,EAAEK,
|
|
1
|
+
{"version":3,"file":"IconDocument.js","names":["IconDocument","props","e","onClick","width","height","className","propTypes","PropTypes","func","oneOfType","number","string"],"sources":["IconDocument.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\n// Icon copied from https://github.com/FortAwesome/Font-Awesome/blob/0d1f27efb836eb2ab994ba37221849ed64a73e5c/svgs/regular/\nconst IconDocument = props => {\n return <svg onClick={e => props.onClick && props.onClick(e)} viewBox=\"0 0 512 512\" width={props.width || 20} height={props.height || props.width || 20} xmlns=\"http://www.w3.org/2000/svg\" className={ props.className }>\n <path fill=\"currentColor\" d=\"M369.9 97.9L286 14C277 5 264.8-.1 252.1-.1H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V131.9c0-12.7-5.1-25-14.1-34zM332.1 128H256V51.9l76.1 76.1zM48 464V48h160v104c0 13.3 10.7 24 24 24h104v288H48z\"/>\n </svg>;\n}\n\nIconDocument.propTypes = {\n onClick: PropTypes.func,\n width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n height: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n className: PropTypes.string\n};\n\nexport default IconDocument;"],"mappings":";;;;;;;;;AAAA;;AACA;;AAEA;AACA,IAAMA,YAAY,GAAG,SAAfA,YAAe,CAAAC,KAAK,EAAI;EAC1B,oBAAO;IAAK,OAAO,EAAE,iBAAAC,CAAC;MAAA,OAAID,KAAK,CAACE,OAAN,IAAiBF,KAAK,CAACE,OAAN,CAAcD,CAAd,CAArB;IAAA,CAAf;IAAsD,OAAO,EAAC,aAA9D;IAA4E,KAAK,EAAED,KAAK,CAACG,KAAN,IAAe,EAAlG;IAAsG,MAAM,EAAEH,KAAK,CAACI,MAAN,IAAgBJ,KAAK,CAACG,KAAtB,IAA+B,EAA7I;IAAiJ,KAAK,EAAC,4BAAvJ;IAAoL,SAAS,EAAGH,KAAK,CAACK;EAAtM,gBACH;IAAM,IAAI,EAAC,cAAX;IAA0B,CAAC,EAAC;EAA5B,EADG,CAAP;AAGH,CAJD;;AAMAN,YAAY,CAACO,SAAb,GAAyB;EACrBJ,OAAO,EAAEK,qBAAA,CAAUC,IADE;EAErBL,KAAK,EAAEI,qBAAA,CAAUE,SAAV,CAAoB,CAACF,qBAAA,CAAUG,MAAX,EAAmBH,qBAAA,CAAUI,MAA7B,CAApB,CAFc;EAGrBP,MAAM,EAAEG,qBAAA,CAAUE,SAAV,CAAoB,CAACF,qBAAA,CAAUG,MAAX,EAAmBH,qBAAA,CAAUI,MAA7B,CAApB,CAHa;EAIrBN,SAAS,EAAEE,qBAAA,CAAUI;AAJA,CAAzB;eAOeZ,Y"}
|