.avada-db-table ol { margin-top: 0px; margin-bottom: 0px; } .avada-db-table tr textarea { width: 100%; height: 150px; } .awb-critical-hero { display: flex; align-items: center; } .awb-critical-hero form { width: 33.33%; flex-shrink: 0; padding-left: 2.8em; position: relative; } .awb-critical-hero form select, .awb-critical-hero form input { width: 100% !important; } .awb-critical-hero form select { margin: 0 0 1em 0 !important; } .avada-db-create-form .pyre_desc { display: none; } .avada-db-create-form .pyre_field { width: 100% !important; float: none !important; } .pyre_metabox_field { display: none; border: none !important; } .awb-critical-hero .pyre_field .select2-selection--multiple .select2-search__field { margin-bottom: 5px; padding-left: 7px; } .awb-critical-hero .pyre_field .select2-container .select2-selection > .select2-selection__rendered { margin-right: 0; } .awb-critical-hero .pyre_field .select2-selection--multiple { display: flex; } .awb-critical-hero .pyre_metabox_field { padding-top: 0; } .awb-critical-loader { align-items: center; display: none; } .awb-critical-loader .loading-message { margin-left: 0.7em; } .awb-critical-loader .avada-db-loader { display: block; } input[type="submit"].processing { display: none; } input[type="submit"].processing + .awb-critical-loader { display: flex; } #awb-critical-css .wp-list-table tr.processing { opacity: 0.5; pointer-events: none; } /* Regenerate button */ .awb-update-row .awb-spinner { display: inline-block; margin-right: 5px; background: none; flex-shrink: 0; margin-top: 0; border-radius: 50%; line-height: 1 !important; border: none; width: 1em; height: 1em; box-sizing: border-box; } .awb-update-row .awb-spinner i { font-size: 0.85em; } .awb-update-row.processing .awb-spinner { border: 3px solid rgba(0, 0, 0, 0.2); border-bottom: 3px solid #333; animation: avada-rotate 0.8s infinite linear; } .awb-update-row.processing .awb-spinner i{ visibility: hidden; } /* Modal */ #wpwrap .avada-db-critical .awb-admin-modal-wrap { top: 40%; transform: translateY(-50%); } .awb-admin-modal-wrap .awb-admin-modal-content { padding: 20px 20px 30px 20px; } .awb-admin-modal-wrap .awb-critical-css-modal-title { margin-bottom: 20px; } .awb-admin-modal-wrap .awb-critical-css-modal-title i { margin-right: 10px; color: #198fd9; } .awb-admin-modal-wrap .awb-critical-css-modal-text { line-height: 1.7; } .awb-admin-modal-wrap .awb-admin-modal-corner-close { border: 1px solid #e8e8e8; }import React, { useEffect, useState } from 'react' import InputWithButton from './InputWithButton' import verifyExtensionsToken from '../../api/verifyExtensionsToken' import ButtonActionProvider from '../Actions/ButtonActionProvider' import { tokenUrl } from '../../utils/linkGenerator' import useGlobalConfig from '../Contexts/useGlobalConfig' import Button from '../Buttons/Button' import styles from './ExtensionsToken.module.scss' /** * Generates a form allowing the user to input an Extensions API token * * @param trackingParams * @param customActionHook * @param completedCallback * @returns {*} * @constructor */ const ExtensionsToken = ({ trackingParams = {}, customActionHook = null, completedCallback = null }) => { const [token, setToken] = useState('') const [error, setError] = useState(null) const [saved, setSaved] = useState(false) const { setSubscriptionStatus } = useGlobalConfig() // Call our completedCallback() after our "saved" state variable is set to true: useEffect(() => { if (saved) { if (completedCallback) { completedCallback() } } }, [saved]) useEffect(() => { // each time our local project name changes we update our saved state to false. setSaved(false) setError(null) }, [token]) const tokenIsCorrectLength = token.length === 36 return ( { // Update local token state value: setToken(e.target.value) }} className={`${styles.input} ${tokenIsCorrectLength ? styles.success : ''}`} spellCheck='false' autoComplete='false' placeholder='Enter token here' /> )} Button={( } LoadingButton={ close
play_arrow

Innovazione 2020

L’ingenuità del Designer | Andrea Cattabriga

Saverio Cuoghi 14 Febbraio 2020 243


Background
share close

“Al designer serve la freschezza dell’ingenuità e della curiosità”

Andrea Cattabriga | Designer, Founder Slowd

Design, Metodi, curiosità, ingenuità, complessità, relazioni, ecosistema, formazione, soluzioni, Learning by doing, competenze, esperienza, giovani, distretti, piattaforme, collaborazione le parole chiave della conversazione con Andrea.

Rate it
Previous episode
Post comments (0)

Leave a reply