Spaces:
Paused
Paused
| import utils from './../utils.js'; | |
| import platform from '../platform/index.js'; | |
| export default platform.hasStandardBrowserEnv ? | |
| // Standard browser envs support document.cookie | |
| { | |
| write(name, value, expires, path, domain, secure) { | |
| const cookie = [name + '=' + encodeURIComponent(value)]; | |
| utils.isNumber(expires) && cookie.push('expires=' + new Date(expires).toGMTString()); | |
| utils.isString(path) && cookie.push('path=' + path); | |
| utils.isString(domain) && cookie.push('domain=' + domain); | |
| secure === true && cookie.push('secure'); | |
| document.cookie = cookie.join('; '); | |
| }, | |
| read(name) { | |
| const match = document.cookie.match(new RegExp('(^|;\\s*)(' + name + ')=([^;]*)')); | |
| return (match ? decodeURIComponent(match[3]) : null); | |
| }, | |
| remove(name) { | |
| this.write(name, '', Date.now() - 86400000); | |
| } | |
| } | |
| : | |
| // Non-standard browser env (web workers, react-native) lack needed support. | |
| { | |
| write() {}, | |
| read() { | |
| return null; | |
| }, | |
| remove() {} | |
| }; | |