{"version":3,"file":"component---src-pages-categories-js-78f898747c248ad5ef99.js","mappings":"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","sources":["webpack://gatsby-starter-default/./node_modules/exenv/index.js","webpack://gatsby-starter-default/./node_modules/react-modal/lib/components/Modal.js","webpack://gatsby-starter-default/./node_modules/react-modal/lib/components/ModalPortal.js","webpack://gatsby-starter-default/./node_modules/react-modal/lib/helpers/ariaAppHider.js","webpack://gatsby-starter-default/./node_modules/react-modal/lib/helpers/bodyTrap.js","webpack://gatsby-starter-default/./node_modules/react-modal/lib/helpers/classList.js","webpack://gatsby-starter-default/./node_modules/react-modal/lib/helpers/focusManager.js","webpack://gatsby-starter-default/./node_modules/react-modal/lib/helpers/portalOpenInstances.js","webpack://gatsby-starter-default/./node_modules/react-modal/lib/helpers/safeHTMLElement.js","webpack://gatsby-starter-default/./node_modules/react-modal/lib/helpers/scopeTab.js","webpack://gatsby-starter-default/./node_modules/react-modal/lib/helpers/tabbable.js","webpack://gatsby-starter-default/./node_modules/react-modal/lib/index.js","webpack://gatsby-starter-default/./src/components/categories-header.js","webpack://gatsby-starter-default/./src/components/page-title.js","webpack://gatsby-starter-default/./src/components/primary-button.js","webpack://gatsby-starter-default/./src/components/places-background-image.js","webpack://gatsby-starter-default/./src/components/people-background-image.js","webpack://gatsby-starter-default/./src/components/app-modal.js","webpack://gatsby-starter-default/./src/pages/categories.js","webpack://gatsby-starter-default/./node_modules/warning/warning.js"],"sourcesContent":["/*!\n Copyright (c) 2015 Jed Watson.\n Based on code that is Copyright 2013-2015, Facebook, Inc.\n All rights reserved.\n*/\n/* global define */\n\n(function () {\n 'use strict';\n\n var canUseDOM = !!(typeof window !== 'undefined' && window.document && window.document.createElement);\n var ExecutionEnvironment = {\n canUseDOM: canUseDOM,\n canUseWorkers: typeof Worker !== 'undefined',\n canUseEventListeners: canUseDOM && !!(window.addEventListener || window.attachEvent),\n canUseViewport: canUseDOM && !!window.screen\n };\n if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n define(function () {\n return ExecutionEnvironment;\n });\n } else if (typeof module !== 'undefined' && module.exports) {\n module.exports = ExecutionEnvironment;\n } else {\n window.ExecutionEnvironment = ExecutionEnvironment;\n }\n})();","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.bodyOpenClassName = exports.portalClassName = undefined;\nvar _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n};\nvar _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\nvar _react = require(\"react\");\nvar _react2 = _interopRequireDefault(_react);\nvar _reactDom = require(\"react-dom\");\nvar _reactDom2 = _interopRequireDefault(_reactDom);\nvar _propTypes = require(\"prop-types\");\nvar _propTypes2 = _interopRequireDefault(_propTypes);\nvar _ModalPortal = require(\"./ModalPortal\");\nvar _ModalPortal2 = _interopRequireDefault(_ModalPortal);\nvar _ariaAppHider = require(\"../helpers/ariaAppHider\");\nvar ariaAppHider = _interopRequireWildcard(_ariaAppHider);\nvar _safeHTMLElement = require(\"../helpers/safeHTMLElement\");\nvar _safeHTMLElement2 = _interopRequireDefault(_safeHTMLElement);\nvar _reactLifecyclesCompat = require(\"react-lifecycles-compat\");\nfunction _interopRequireWildcard(obj) {\n if (obj && obj.__esModule) {\n return obj;\n } else {\n var newObj = {};\n if (obj != null) {\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key];\n }\n }\n newObj.default = obj;\n return newObj;\n }\n}\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\nfunction _possibleConstructorReturn(self, call) {\n if (!self) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n}\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n}\nvar portalClassName = exports.portalClassName = \"ReactModalPortal\";\nvar bodyOpenClassName = exports.bodyOpenClassName = \"ReactModal__Body--open\";\nvar isReact16 = _safeHTMLElement.canUseDOM && _reactDom2.default.createPortal !== undefined;\nvar createHTMLElement = function createHTMLElement(name) {\n return document.createElement(name);\n};\nvar getCreatePortal = function getCreatePortal() {\n return isReact16 ? _reactDom2.default.createPortal : _reactDom2.default.unstable_renderSubtreeIntoContainer;\n};\nfunction getParentElement(parentSelector) {\n return parentSelector();\n}\nvar Modal = function (_Component) {\n _inherits(Modal, _Component);\n function Modal() {\n var _ref;\n var _temp, _this, _ret;\n _classCallCheck(this, Modal);\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = Modal.__proto__ || Object.getPrototypeOf(Modal)).call.apply(_ref, [this].concat(args))), _this), _this.removePortal = function () {\n !isReact16 && _reactDom2.default.unmountComponentAtNode(_this.node);\n var parent = getParentElement(_this.props.parentSelector);\n if (parent && parent.contains(_this.node)) {\n parent.removeChild(_this.node);\n } else {\n // eslint-disable-next-line no-console\n console.warn('React-Modal: \"parentSelector\" prop did not returned any DOM ' + \"element. Make sure that the parent element is unmounted to \" + \"avoid any memory leaks.\");\n }\n }, _this.portalRef = function (ref) {\n _this.portal = ref;\n }, _this.renderPortal = function (props) {\n var createPortal = getCreatePortal();\n var portal = createPortal(_this, _react2.default.createElement(_ModalPortal2.default, _extends({\n defaultStyles: Modal.defaultStyles\n }, props)), _this.node);\n _this.portalRef(portal);\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n _createClass(Modal, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n if (!_safeHTMLElement.canUseDOM) return;\n if (!isReact16) {\n this.node = createHTMLElement(\"div\");\n }\n this.node.className = this.props.portalClassName;\n var parent = getParentElement(this.props.parentSelector);\n parent.appendChild(this.node);\n !isReact16 && this.renderPortal(this.props);\n }\n }, {\n key: \"getSnapshotBeforeUpdate\",\n value: function getSnapshotBeforeUpdate(prevProps) {\n var prevParent = getParentElement(prevProps.parentSelector);\n var nextParent = getParentElement(this.props.parentSelector);\n return {\n prevParent: prevParent,\n nextParent: nextParent\n };\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate(prevProps, _, snapshot) {\n if (!_safeHTMLElement.canUseDOM) return;\n var _props = this.props,\n isOpen = _props.isOpen,\n portalClassName = _props.portalClassName;\n if (prevProps.portalClassName !== portalClassName) {\n this.node.className = portalClassName;\n }\n var prevParent = snapshot.prevParent,\n nextParent = snapshot.nextParent;\n if (nextParent !== prevParent) {\n prevParent.removeChild(this.node);\n nextParent.appendChild(this.node);\n }\n\n // Stop unnecessary renders if modal is remaining closed\n if (!prevProps.isOpen && !isOpen) return;\n !isReact16 && this.renderPortal(this.props);\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n if (!_safeHTMLElement.canUseDOM || !this.node || !this.portal) return;\n var state = this.portal.state;\n var now = Date.now();\n var closesAt = state.isOpen && this.props.closeTimeoutMS && (state.closesAt || now + this.props.closeTimeoutMS);\n if (closesAt) {\n if (!state.beforeClose) {\n this.portal.closeWithTimeout();\n }\n setTimeout(this.removePortal, closesAt - now);\n } else {\n this.removePortal();\n }\n }\n }, {\n key: \"render\",\n value: function render() {\n if (!_safeHTMLElement.canUseDOM || !isReact16) {\n return null;\n }\n if (!this.node && isReact16) {\n this.node = createHTMLElement(\"div\");\n }\n var createPortal = getCreatePortal();\n return createPortal(_react2.default.createElement(_ModalPortal2.default, _extends({\n ref: this.portalRef,\n defaultStyles: Modal.defaultStyles\n }, this.props)), this.node);\n }\n }], [{\n key: \"setAppElement\",\n value: function setAppElement(element) {\n ariaAppHider.setElement(element);\n }\n\n /* eslint-disable react/no-unused-prop-types */\n\n /* eslint-enable react/no-unused-prop-types */\n }]);\n\n return Modal;\n}(_react.Component);\nModal.propTypes = {\n isOpen: _propTypes2.default.bool.isRequired,\n style: _propTypes2.default.shape({\n content: _propTypes2.default.object,\n overlay: _propTypes2.default.object\n }),\n portalClassName: _propTypes2.default.string,\n bodyOpenClassName: _propTypes2.default.string,\n htmlOpenClassName: _propTypes2.default.string,\n className: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.shape({\n base: _propTypes2.default.string.isRequired,\n afterOpen: _propTypes2.default.string.isRequired,\n beforeClose: _propTypes2.default.string.isRequired\n })]),\n overlayClassName: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.shape({\n base: _propTypes2.default.string.isRequired,\n afterOpen: _propTypes2.default.string.isRequired,\n beforeClose: _propTypes2.default.string.isRequired\n })]),\n appElement: _propTypes2.default.oneOfType([_propTypes2.default.instanceOf(_safeHTMLElement2.default), _propTypes2.default.instanceOf(_safeHTMLElement.SafeHTMLCollection), _propTypes2.default.instanceOf(_safeHTMLElement.SafeNodeList), _propTypes2.default.arrayOf(_propTypes2.default.instanceOf(_safeHTMLElement2.default))]),\n onAfterOpen: _propTypes2.default.func,\n onRequestClose: _propTypes2.default.func,\n closeTimeoutMS: _propTypes2.default.number,\n ariaHideApp: _propTypes2.default.bool,\n shouldFocusAfterRender: _propTypes2.default.bool,\n shouldCloseOnOverlayClick: _propTypes2.default.bool,\n shouldReturnFocusAfterClose: _propTypes2.default.bool,\n preventScroll: _propTypes2.default.bool,\n parentSelector: _propTypes2.default.func,\n aria: _propTypes2.default.object,\n data: _propTypes2.default.object,\n role: _propTypes2.default.string,\n contentLabel: _propTypes2.default.string,\n shouldCloseOnEsc: _propTypes2.default.bool,\n overlayRef: _propTypes2.default.func,\n contentRef: _propTypes2.default.func,\n id: _propTypes2.default.string,\n overlayElement: _propTypes2.default.func,\n contentElement: _propTypes2.default.func\n};\nModal.defaultProps = {\n isOpen: false,\n portalClassName: portalClassName,\n bodyOpenClassName: bodyOpenClassName,\n role: \"dialog\",\n ariaHideApp: true,\n closeTimeoutMS: 0,\n shouldFocusAfterRender: true,\n shouldCloseOnEsc: true,\n shouldCloseOnOverlayClick: true,\n shouldReturnFocusAfterClose: true,\n preventScroll: false,\n parentSelector: function parentSelector() {\n return document.body;\n },\n overlayElement: function overlayElement(props, contentEl) {\n return _react2.default.createElement(\"div\", props, contentEl);\n },\n contentElement: function contentElement(props, children) {\n return _react2.default.createElement(\"div\", props, children);\n }\n};\nModal.defaultStyles = {\n overlay: {\n position: \"fixed\",\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n backgroundColor: \"rgba(255, 255, 255, 0.75)\"\n },\n content: {\n position: \"absolute\",\n top: \"40px\",\n left: \"40px\",\n right: \"40px\",\n bottom: \"40px\",\n border: \"1px solid #ccc\",\n background: \"#fff\",\n overflow: \"auto\",\n WebkitOverflowScrolling: \"touch\",\n borderRadius: \"4px\",\n outline: \"none\",\n padding: \"20px\"\n }\n};\n(0, _reactLifecyclesCompat.polyfill)(Modal);\nif (process.env.NODE_ENV !== \"production\") {\n Modal.setCreateHTMLElement = function (fn) {\n return createHTMLElement = fn;\n };\n}\nexports.default = Modal;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nvar _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n};\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) {\n return typeof obj;\n} : function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n};\nvar _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\nvar _react = require(\"react\");\nvar _propTypes = require(\"prop-types\");\nvar _propTypes2 = _interopRequireDefault(_propTypes);\nvar _focusManager = require(\"../helpers/focusManager\");\nvar focusManager = _interopRequireWildcard(_focusManager);\nvar _scopeTab = require(\"../helpers/scopeTab\");\nvar _scopeTab2 = _interopRequireDefault(_scopeTab);\nvar _ariaAppHider = require(\"../helpers/ariaAppHider\");\nvar ariaAppHider = _interopRequireWildcard(_ariaAppHider);\nvar _classList = require(\"../helpers/classList\");\nvar classList = _interopRequireWildcard(_classList);\nvar _safeHTMLElement = require(\"../helpers/safeHTMLElement\");\nvar _safeHTMLElement2 = _interopRequireDefault(_safeHTMLElement);\nvar _portalOpenInstances = require(\"../helpers/portalOpenInstances\");\nvar _portalOpenInstances2 = _interopRequireDefault(_portalOpenInstances);\nrequire(\"../helpers/bodyTrap\");\nfunction _interopRequireWildcard(obj) {\n if (obj && obj.__esModule) {\n return obj;\n } else {\n var newObj = {};\n if (obj != null) {\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key];\n }\n }\n newObj.default = obj;\n return newObj;\n }\n}\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\nfunction _possibleConstructorReturn(self, call) {\n if (!self) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n}\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n}\n\n// so that our CSS is statically analyzable\nvar CLASS_NAMES = {\n overlay: \"ReactModal__Overlay\",\n content: \"ReactModal__Content\"\n};\n\n/**\n * We need to support the deprecated `KeyboardEvent.keyCode` in addition to\n * `KeyboardEvent.code` for apps that still support IE11. Can be removed when\n * `react-modal` only supports React >18 (which dropped IE support).\n */\nvar isTabKey = function isTabKey(event) {\n return event.code === \"Tab\" || event.keyCode === 9;\n};\nvar isEscKey = function isEscKey(event) {\n return event.code === \"Escape\" || event.keyCode === 27;\n};\nvar ariaHiddenInstances = 0;\nvar ModalPortal = function (_Component) {\n _inherits(ModalPortal, _Component);\n function ModalPortal(props) {\n _classCallCheck(this, ModalPortal);\n var _this = _possibleConstructorReturn(this, (ModalPortal.__proto__ || Object.getPrototypeOf(ModalPortal)).call(this, props));\n _this.setOverlayRef = function (overlay) {\n _this.overlay = overlay;\n _this.props.overlayRef && _this.props.overlayRef(overlay);\n };\n _this.setContentRef = function (content) {\n _this.content = content;\n _this.props.contentRef && _this.props.contentRef(content);\n };\n _this.afterClose = function () {\n var _this$props = _this.props,\n appElement = _this$props.appElement,\n ariaHideApp = _this$props.ariaHideApp,\n htmlOpenClassName = _this$props.htmlOpenClassName,\n bodyOpenClassName = _this$props.bodyOpenClassName,\n parentSelector = _this$props.parentSelector;\n var parentDocument = parentSelector && parentSelector().ownerDocument || document;\n\n // Remove classes.\n bodyOpenClassName && classList.remove(parentDocument.body, bodyOpenClassName);\n htmlOpenClassName && classList.remove(parentDocument.getElementsByTagName(\"html\")[0], htmlOpenClassName);\n\n // Reset aria-hidden attribute if all modals have been removed\n if (ariaHideApp && ariaHiddenInstances > 0) {\n ariaHiddenInstances -= 1;\n if (ariaHiddenInstances === 0) {\n ariaAppHider.show(appElement);\n }\n }\n if (_this.props.shouldFocusAfterRender) {\n if (_this.props.shouldReturnFocusAfterClose) {\n focusManager.returnFocus(_this.props.preventScroll);\n focusManager.teardownScopedFocus();\n } else {\n focusManager.popWithoutFocus();\n }\n }\n if (_this.props.onAfterClose) {\n _this.props.onAfterClose();\n }\n _portalOpenInstances2.default.deregister(_this);\n };\n _this.open = function () {\n _this.beforeOpen();\n if (_this.state.afterOpen && _this.state.beforeClose) {\n clearTimeout(_this.closeTimer);\n _this.setState({\n beforeClose: false\n });\n } else {\n if (_this.props.shouldFocusAfterRender) {\n focusManager.setupScopedFocus(_this.node);\n focusManager.markForFocusLater();\n }\n _this.setState({\n isOpen: true\n }, function () {\n _this.openAnimationFrame = requestAnimationFrame(function () {\n _this.setState({\n afterOpen: true\n });\n if (_this.props.isOpen && _this.props.onAfterOpen) {\n _this.props.onAfterOpen({\n overlayEl: _this.overlay,\n contentEl: _this.content\n });\n }\n });\n });\n }\n };\n _this.close = function () {\n if (_this.props.closeTimeoutMS > 0) {\n _this.closeWithTimeout();\n } else {\n _this.closeWithoutTimeout();\n }\n };\n _this.focusContent = function () {\n return _this.content && !_this.contentHasFocus() && _this.content.focus({\n preventScroll: true\n });\n };\n _this.closeWithTimeout = function () {\n var closesAt = Date.now() + _this.props.closeTimeoutMS;\n _this.setState({\n beforeClose: true,\n closesAt: closesAt\n }, function () {\n _this.closeTimer = setTimeout(_this.closeWithoutTimeout, _this.state.closesAt - Date.now());\n });\n };\n _this.closeWithoutTimeout = function () {\n _this.setState({\n beforeClose: false,\n isOpen: false,\n afterOpen: false,\n closesAt: null\n }, _this.afterClose);\n };\n _this.handleKeyDown = function (event) {\n if (isTabKey(event)) {\n (0, _scopeTab2.default)(_this.content, event);\n }\n if (_this.props.shouldCloseOnEsc && isEscKey(event)) {\n event.stopPropagation();\n _this.requestClose(event);\n }\n };\n _this.handleOverlayOnClick = function (event) {\n if (_this.shouldClose === null) {\n _this.shouldClose = true;\n }\n if (_this.shouldClose && _this.props.shouldCloseOnOverlayClick) {\n if (_this.ownerHandlesClose()) {\n _this.requestClose(event);\n } else {\n _this.focusContent();\n }\n }\n _this.shouldClose = null;\n };\n _this.handleContentOnMouseUp = function () {\n _this.shouldClose = false;\n };\n _this.handleOverlayOnMouseDown = function (event) {\n if (!_this.props.shouldCloseOnOverlayClick && event.target == _this.overlay) {\n event.preventDefault();\n }\n };\n _this.handleContentOnClick = function () {\n _this.shouldClose = false;\n };\n _this.handleContentOnMouseDown = function () {\n _this.shouldClose = false;\n };\n _this.requestClose = function (event) {\n return _this.ownerHandlesClose() && _this.props.onRequestClose(event);\n };\n _this.ownerHandlesClose = function () {\n return _this.props.onRequestClose;\n };\n _this.shouldBeClosed = function () {\n return !_this.state.isOpen && !_this.state.beforeClose;\n };\n _this.contentHasFocus = function () {\n return document.activeElement === _this.content || _this.content.contains(document.activeElement);\n };\n _this.buildClassName = function (which, additional) {\n var classNames = (typeof additional === \"undefined\" ? \"undefined\" : _typeof(additional)) === \"object\" ? additional : {\n base: CLASS_NAMES[which],\n afterOpen: CLASS_NAMES[which] + \"--after-open\",\n beforeClose: CLASS_NAMES[which] + \"--before-close\"\n };\n var className = classNames.base;\n if (_this.state.afterOpen) {\n className = className + \" \" + classNames.afterOpen;\n }\n if (_this.state.beforeClose) {\n className = className + \" \" + classNames.beforeClose;\n }\n return typeof additional === \"string\" && additional ? className + \" \" + additional : className;\n };\n _this.attributesFromObject = function (prefix, items) {\n return Object.keys(items).reduce(function (acc, name) {\n acc[prefix + \"-\" + name] = items[name];\n return acc;\n }, {});\n };\n _this.state = {\n afterOpen: false,\n beforeClose: false\n };\n _this.shouldClose = null;\n _this.moveFromContentToOverlay = null;\n return _this;\n }\n _createClass(ModalPortal, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n if (this.props.isOpen) {\n this.open();\n }\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate(prevProps, prevState) {\n if (process.env.NODE_ENV !== \"production\") {\n if (prevProps.bodyOpenClassName !== this.props.bodyOpenClassName) {\n // eslint-disable-next-line no-console\n console.warn('React-Modal: \"bodyOpenClassName\" prop has been modified. ' + \"This may cause unexpected behavior when multiple modals are open.\");\n }\n if (prevProps.htmlOpenClassName !== this.props.htmlOpenClassName) {\n // eslint-disable-next-line no-console\n console.warn('React-Modal: \"htmlOpenClassName\" prop has been modified. ' + \"This may cause unexpected behavior when multiple modals are open.\");\n }\n }\n if (this.props.isOpen && !prevProps.isOpen) {\n this.open();\n } else if (!this.props.isOpen && prevProps.isOpen) {\n this.close();\n }\n\n // Focus only needs to be set once when the modal is being opened\n if (this.props.shouldFocusAfterRender && this.state.isOpen && !prevState.isOpen) {\n this.focusContent();\n }\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n if (this.state.isOpen) {\n this.afterClose();\n }\n clearTimeout(this.closeTimer);\n cancelAnimationFrame(this.openAnimationFrame);\n }\n }, {\n key: \"beforeOpen\",\n value: function beforeOpen() {\n var _props = this.props,\n appElement = _props.appElement,\n ariaHideApp = _props.ariaHideApp,\n htmlOpenClassName = _props.htmlOpenClassName,\n bodyOpenClassName = _props.bodyOpenClassName,\n parentSelector = _props.parentSelector;\n var parentDocument = parentSelector && parentSelector().ownerDocument || document;\n\n // Add classes.\n bodyOpenClassName && classList.add(parentDocument.body, bodyOpenClassName);\n htmlOpenClassName && classList.add(parentDocument.getElementsByTagName(\"html\")[0], htmlOpenClassName);\n if (ariaHideApp) {\n ariaHiddenInstances += 1;\n ariaAppHider.hide(appElement);\n }\n _portalOpenInstances2.default.register(this);\n }\n\n // Don't steal focus from inner elements\n }, {\n key: \"render\",\n value: function render() {\n var _props2 = this.props,\n id = _props2.id,\n className = _props2.className,\n overlayClassName = _props2.overlayClassName,\n defaultStyles = _props2.defaultStyles,\n children = _props2.children;\n var contentStyles = className ? {} : defaultStyles.content;\n var overlayStyles = overlayClassName ? {} : defaultStyles.overlay;\n if (this.shouldBeClosed()) {\n return null;\n }\n var overlayProps = {\n ref: this.setOverlayRef,\n className: this.buildClassName(\"overlay\", overlayClassName),\n style: _extends({}, overlayStyles, this.props.style.overlay),\n onClick: this.handleOverlayOnClick,\n onMouseDown: this.handleOverlayOnMouseDown\n };\n var contentProps = _extends({\n id: id,\n ref: this.setContentRef,\n style: _extends({}, contentStyles, this.props.style.content),\n className: this.buildClassName(\"content\", className),\n tabIndex: \"-1\",\n onKeyDown: this.handleKeyDown,\n onMouseDown: this.handleContentOnMouseDown,\n onMouseUp: this.handleContentOnMouseUp,\n onClick: this.handleContentOnClick,\n role: this.props.role,\n \"aria-label\": this.props.contentLabel\n }, this.attributesFromObject(\"aria\", _extends({\n modal: true\n }, this.props.aria)), this.attributesFromObject(\"data\", this.props.data || {}), {\n \"data-testid\": this.props.testId\n });\n var contentElement = this.props.contentElement(contentProps, children);\n return this.props.overlayElement(overlayProps, contentElement);\n }\n }]);\n return ModalPortal;\n}(_react.Component);\nModalPortal.defaultProps = {\n style: {\n overlay: {},\n content: {}\n },\n defaultStyles: {}\n};\nModalPortal.propTypes = {\n isOpen: _propTypes2.default.bool.isRequired,\n defaultStyles: _propTypes2.default.shape({\n content: _propTypes2.default.object,\n overlay: _propTypes2.default.object\n }),\n style: _propTypes2.default.shape({\n content: _propTypes2.default.object,\n overlay: _propTypes2.default.object\n }),\n className: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),\n overlayClassName: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),\n parentSelector: _propTypes2.default.func,\n bodyOpenClassName: _propTypes2.default.string,\n htmlOpenClassName: _propTypes2.default.string,\n ariaHideApp: _propTypes2.default.bool,\n appElement: _propTypes2.default.oneOfType([_propTypes2.default.instanceOf(_safeHTMLElement2.default), _propTypes2.default.instanceOf(_safeHTMLElement.SafeHTMLCollection), _propTypes2.default.instanceOf(_safeHTMLElement.SafeNodeList), _propTypes2.default.arrayOf(_propTypes2.default.instanceOf(_safeHTMLElement2.default))]),\n onAfterOpen: _propTypes2.default.func,\n onAfterClose: _propTypes2.default.func,\n onRequestClose: _propTypes2.default.func,\n closeTimeoutMS: _propTypes2.default.number,\n shouldFocusAfterRender: _propTypes2.default.bool,\n shouldCloseOnOverlayClick: _propTypes2.default.bool,\n shouldReturnFocusAfterClose: _propTypes2.default.bool,\n preventScroll: _propTypes2.default.bool,\n role: _propTypes2.default.string,\n contentLabel: _propTypes2.default.string,\n aria: _propTypes2.default.object,\n data: _propTypes2.default.object,\n children: _propTypes2.default.node,\n shouldCloseOnEsc: _propTypes2.default.bool,\n overlayRef: _propTypes2.default.func,\n contentRef: _propTypes2.default.func,\n id: _propTypes2.default.string,\n overlayElement: _propTypes2.default.func,\n contentElement: _propTypes2.default.func,\n testId: _propTypes2.default.string\n};\nexports.default = ModalPortal;\nmodule.exports = exports[\"default\"];","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.resetState = resetState;\nexports.log = log;\nexports.assertNodeList = assertNodeList;\nexports.setElement = setElement;\nexports.validateElement = validateElement;\nexports.hide = hide;\nexports.show = show;\nexports.documentNotReadyOrSSRTesting = documentNotReadyOrSSRTesting;\nvar _warning = require(\"warning\");\nvar _warning2 = _interopRequireDefault(_warning);\nvar _safeHTMLElement = require(\"./safeHTMLElement\");\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\nvar globalElement = null;\n\n/* eslint-disable no-console */\n/* istanbul ignore next */\nfunction resetState() {\n if (globalElement) {\n if (globalElement.removeAttribute) {\n globalElement.removeAttribute(\"aria-hidden\");\n } else if (globalElement.length != null) {\n globalElement.forEach(function (element) {\n return element.removeAttribute(\"aria-hidden\");\n });\n } else {\n document.querySelectorAll(globalElement).forEach(function (element) {\n return element.removeAttribute(\"aria-hidden\");\n });\n }\n }\n globalElement = null;\n}\n\n/* istanbul ignore next */\nfunction log() {\n if (process.env.NODE_ENV !== \"production\") {\n var check = globalElement || {};\n console.log(\"ariaAppHider ----------\");\n console.log(check.nodeName, check.className, check.id);\n console.log(\"end ariaAppHider ----------\");\n }\n}\n/* eslint-enable no-console */\n\nfunction assertNodeList(nodeList, selector) {\n if (!nodeList || !nodeList.length) {\n throw new Error(\"react-modal: No elements were found for selector \" + selector + \".\");\n }\n}\nfunction setElement(element) {\n var useElement = element;\n if (typeof useElement === \"string\" && _safeHTMLElement.canUseDOM) {\n var el = document.querySelectorAll(useElement);\n assertNodeList(el, useElement);\n useElement = el;\n }\n globalElement = useElement || globalElement;\n return globalElement;\n}\nfunction validateElement(appElement) {\n var el = appElement || globalElement;\n if (el) {\n return Array.isArray(el) || el instanceof HTMLCollection || el instanceof NodeList ? el : [el];\n } else {\n (0, _warning2.default)(false, [\"react-modal: App element is not defined.\", \"Please use `Modal.setAppElement(el)` or set `appElement={el}`.\", \"This is needed so screen readers don't see main content\", \"when modal is opened. It is not recommended, but you can opt-out\", \"by setting `ariaHideApp={false}`.\"].join(\" \"));\n return [];\n }\n}\nfunction hide(appElement) {\n var _iteratorNormalCompletion = true;\n var _didIteratorError = false;\n var _iteratorError = undefined;\n try {\n for (var _iterator = validateElement(appElement)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var el = _step.value;\n el.setAttribute(\"aria-hidden\", \"true\");\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n}\nfunction show(appElement) {\n var _iteratorNormalCompletion2 = true;\n var _didIteratorError2 = false;\n var _iteratorError2 = undefined;\n try {\n for (var _iterator2 = validateElement(appElement)[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n var el = _step2.value;\n el.removeAttribute(\"aria-hidden\");\n }\n } catch (err) {\n _didIteratorError2 = true;\n _iteratorError2 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion2 && _iterator2.return) {\n _iterator2.return();\n }\n } finally {\n if (_didIteratorError2) {\n throw _iteratorError2;\n }\n }\n }\n}\nfunction documentNotReadyOrSSRTesting() {\n globalElement = null;\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.resetState = resetState;\nexports.log = log;\nvar _portalOpenInstances = require(\"./portalOpenInstances\");\nvar _portalOpenInstances2 = _interopRequireDefault(_portalOpenInstances);\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\n\n// Body focus trap see Issue #742\n\nvar before = void 0,\n after = void 0,\n instances = [];\n\n/* eslint-disable no-console */\n/* istanbul ignore next */\nfunction resetState() {\n var _arr = [before, after];\n for (var _i = 0; _i < _arr.length; _i++) {\n var item = _arr[_i];\n if (!item) continue;\n item.parentNode && item.parentNode.removeChild(item);\n }\n before = after = null;\n instances = [];\n}\n\n/* istanbul ignore next */\nfunction log() {\n console.log(\"bodyTrap ----------\");\n console.log(instances.length);\n var _arr2 = [before, after];\n for (var _i2 = 0; _i2 < _arr2.length; _i2++) {\n var item = _arr2[_i2];\n var check = item || {};\n console.log(check.nodeName, check.className, check.id);\n }\n console.log(\"edn bodyTrap ----------\");\n}\n/* eslint-enable no-console */\n\nfunction focusContent() {\n if (instances.length === 0) {\n if (process.env.NODE_ENV !== \"production\") {\n // eslint-disable-next-line no-console\n console.warn(\"React-Modal: Open instances > 0 expected\");\n }\n return;\n }\n instances[instances.length - 1].focusContent();\n}\nfunction bodyTrap(eventType, openInstances) {\n if (!before && !after) {\n before = document.createElement(\"div\");\n before.setAttribute(\"data-react-modal-body-trap\", \"\");\n before.style.position = \"absolute\";\n before.style.opacity = \"0\";\n before.setAttribute(\"tabindex\", \"0\");\n before.addEventListener(\"focus\", focusContent);\n after = before.cloneNode();\n after.addEventListener(\"focus\", focusContent);\n }\n instances = openInstances;\n if (instances.length > 0) {\n // Add focus trap\n if (document.body.firstChild !== before) {\n document.body.insertBefore(before, document.body.firstChild);\n }\n if (document.body.lastChild !== after) {\n document.body.appendChild(after);\n }\n } else {\n // Remove focus trap\n if (before.parentElement) {\n before.parentElement.removeChild(before);\n }\n if (after.parentElement) {\n after.parentElement.removeChild(after);\n }\n }\n}\n_portalOpenInstances2.default.subscribe(bodyTrap);","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.resetState = resetState;\nexports.log = log;\nvar htmlClassList = {};\nvar docBodyClassList = {};\n\n/* eslint-disable no-console */\n/* istanbul ignore next */\nfunction removeClass(at, cls) {\n at.classList.remove(cls);\n}\n\n/* istanbul ignore next */\nfunction resetState() {\n var htmlElement = document.getElementsByTagName(\"html\")[0];\n for (var cls in htmlClassList) {\n removeClass(htmlElement, htmlClassList[cls]);\n }\n var body = document.body;\n for (var _cls in docBodyClassList) {\n removeClass(body, docBodyClassList[_cls]);\n }\n htmlClassList = {};\n docBodyClassList = {};\n}\n\n/* istanbul ignore next */\nfunction log() {\n if (process.env.NODE_ENV !== \"production\") {\n var classes = document.getElementsByTagName(\"html\")[0].className;\n var buffer = \"Show tracked classes:\\n\\n\";\n buffer += \" (\" + classes + \"):\\n \";\n for (var x in htmlClassList) {\n buffer += \" \" + x + \" \" + htmlClassList[x] + \"\\n \";\n }\n classes = document.body.className;\n buffer += \"\\n\\ndoc.body (\" + classes + \"):\\n \";\n for (var _x in docBodyClassList) {\n buffer += \" \" + _x + \" \" + docBodyClassList[_x] + \"\\n \";\n }\n buffer += \"\\n\";\n console.log(buffer);\n }\n}\n/* eslint-enable no-console */\n\n/**\n * Track the number of reference of a class.\n * @param {object} poll The poll to receive the reference.\n * @param {string} className The class name.\n * @return {string}\n */\nvar incrementReference = function incrementReference(poll, className) {\n if (!poll[className]) {\n poll[className] = 0;\n }\n poll[className] += 1;\n return className;\n};\n\n/**\n * Drop the reference of a class.\n * @param {object} poll The poll to receive the reference.\n * @param {string} className The class name.\n * @return {string}\n */\nvar decrementReference = function decrementReference(poll, className) {\n if (poll[className]) {\n poll[className] -= 1;\n }\n return className;\n};\n\n/**\n * Track a class and add to the given class list.\n * @param {Object} classListRef A class list of an element.\n * @param {Object} poll The poll to be used.\n * @param {Array} classes The list of classes to be tracked.\n */\nvar trackClass = function trackClass(classListRef, poll, classes) {\n classes.forEach(function (className) {\n incrementReference(poll, className);\n classListRef.add(className);\n });\n};\n\n/**\n * Untrack a class and remove from the given class list if the reference\n * reaches 0.\n * @param {Object} classListRef A class list of an element.\n * @param {Object} poll The poll to be used.\n * @param {Array} classes The list of classes to be untracked.\n */\nvar untrackClass = function untrackClass(classListRef, poll, classes) {\n classes.forEach(function (className) {\n decrementReference(poll, className);\n poll[className] === 0 && classListRef.remove(className);\n });\n};\n\n/**\n * Public inferface to add classes to the document.body.\n * @param {string} bodyClass The class string to be added.\n * It may contain more then one class\n * with ' ' as separator.\n */\nvar add = exports.add = function add(element, classString) {\n return trackClass(element.classList, element.nodeName.toLowerCase() == \"html\" ? htmlClassList : docBodyClassList, classString.split(\" \"));\n};\n\n/**\n * Public inferface to remove classes from the document.body.\n * @param {string} bodyClass The class string to be added.\n * It may contain more then one class\n * with ' ' as separator.\n */\nvar remove = exports.remove = function remove(element, classString) {\n return untrackClass(element.classList, element.nodeName.toLowerCase() == \"html\" ? htmlClassList : docBodyClassList, classString.split(\" \"));\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.resetState = resetState;\nexports.log = log;\nexports.handleBlur = handleBlur;\nexports.handleFocus = handleFocus;\nexports.markForFocusLater = markForFocusLater;\nexports.returnFocus = returnFocus;\nexports.popWithoutFocus = popWithoutFocus;\nexports.setupScopedFocus = setupScopedFocus;\nexports.teardownScopedFocus = teardownScopedFocus;\nvar _tabbable = require(\"../helpers/tabbable\");\nvar _tabbable2 = _interopRequireDefault(_tabbable);\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\nvar focusLaterElements = [];\nvar modalElement = null;\nvar needToFocus = false;\n\n/* eslint-disable no-console */\n/* istanbul ignore next */\nfunction resetState() {\n focusLaterElements = [];\n}\n\n/* istanbul ignore next */\nfunction log() {\n if (process.env.NODE_ENV !== \"production\") {\n console.log(\"focusManager ----------\");\n focusLaterElements.forEach(function (f) {\n var check = f || {};\n console.log(check.nodeName, check.className, check.id);\n });\n console.log(\"end focusManager ----------\");\n }\n}\n/* eslint-enable no-console */\n\nfunction handleBlur() {\n needToFocus = true;\n}\nfunction handleFocus() {\n if (needToFocus) {\n needToFocus = false;\n if (!modalElement) {\n return;\n }\n // need to see how jQuery shims document.on('focusin') so we don't need the\n // setTimeout, firefox doesn't support focusin, if it did, we could focus\n // the element outside of a setTimeout. Side-effect of this implementation\n // is that the document.body gets focus, and then we focus our element right\n // after, seems fine.\n setTimeout(function () {\n if (modalElement.contains(document.activeElement)) {\n return;\n }\n var el = (0, _tabbable2.default)(modalElement)[0] || modalElement;\n el.focus();\n }, 0);\n }\n}\nfunction markForFocusLater() {\n focusLaterElements.push(document.activeElement);\n}\n\n/* eslint-disable no-console */\nfunction returnFocus() {\n var preventScroll = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n var toFocus = null;\n try {\n if (focusLaterElements.length !== 0) {\n toFocus = focusLaterElements.pop();\n toFocus.focus({\n preventScroll: preventScroll\n });\n }\n return;\n } catch (e) {\n console.warn([\"You tried to return focus to\", toFocus, \"but it is not in the DOM anymore\"].join(\" \"));\n }\n}\n/* eslint-enable no-console */\n\nfunction popWithoutFocus() {\n focusLaterElements.length > 0 && focusLaterElements.pop();\n}\nfunction setupScopedFocus(element) {\n modalElement = element;\n if (window.addEventListener) {\n window.addEventListener(\"blur\", handleBlur, false);\n document.addEventListener(\"focus\", handleFocus, true);\n } else {\n window.attachEvent(\"onBlur\", handleBlur);\n document.attachEvent(\"onFocus\", handleFocus);\n }\n}\nfunction teardownScopedFocus() {\n modalElement = null;\n if (window.addEventListener) {\n window.removeEventListener(\"blur\", handleBlur);\n document.removeEventListener(\"focus\", handleFocus);\n } else {\n window.detachEvent(\"onBlur\", handleBlur);\n document.detachEvent(\"onFocus\", handleFocus);\n }\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.log = log;\nexports.resetState = resetState;\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\n// Tracks portals that are open and emits events to subscribers\n\nvar PortalOpenInstances = function PortalOpenInstances() {\n var _this = this;\n _classCallCheck(this, PortalOpenInstances);\n this.register = function (openInstance) {\n if (_this.openInstances.indexOf(openInstance) !== -1) {\n if (process.env.NODE_ENV !== \"production\") {\n // eslint-disable-next-line no-console\n console.warn(\"React-Modal: Cannot register modal instance that's already open\");\n }\n return;\n }\n _this.openInstances.push(openInstance);\n _this.emit(\"register\");\n };\n this.deregister = function (openInstance) {\n var index = _this.openInstances.indexOf(openInstance);\n if (index === -1) {\n if (process.env.NODE_ENV !== \"production\") {\n // eslint-disable-next-line no-console\n console.warn(\"React-Modal: Unable to deregister \" + openInstance + \" as \" + \"it was never registered\");\n }\n return;\n }\n _this.openInstances.splice(index, 1);\n _this.emit(\"deregister\");\n };\n this.subscribe = function (callback) {\n _this.subscribers.push(callback);\n };\n this.emit = function (eventType) {\n _this.subscribers.forEach(function (subscriber) {\n return subscriber(eventType,\n // shallow copy to avoid accidental mutation\n _this.openInstances.slice());\n });\n };\n this.openInstances = [];\n this.subscribers = [];\n};\nvar portalOpenInstances = new PortalOpenInstances();\n\n/* eslint-disable no-console */\n/* istanbul ignore next */\nfunction log() {\n console.log(\"portalOpenInstances ----------\");\n console.log(portalOpenInstances.openInstances.length);\n portalOpenInstances.openInstances.forEach(function (p) {\n return console.log(p);\n });\n console.log(\"end portalOpenInstances ----------\");\n}\n\n/* istanbul ignore next */\nfunction resetState() {\n portalOpenInstances = new PortalOpenInstances();\n}\n/* eslint-enable no-console */\n\nexports.default = portalOpenInstances;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.canUseDOM = exports.SafeNodeList = exports.SafeHTMLCollection = undefined;\nvar _exenv = require(\"exenv\");\nvar _exenv2 = _interopRequireDefault(_exenv);\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\nvar EE = _exenv2.default;\nvar SafeHTMLElement = EE.canUseDOM ? window.HTMLElement : {};\nvar SafeHTMLCollection = exports.SafeHTMLCollection = EE.canUseDOM ? window.HTMLCollection : {};\nvar SafeNodeList = exports.SafeNodeList = EE.canUseDOM ? window.NodeList : {};\nvar canUseDOM = exports.canUseDOM = EE.canUseDOM;\nexports.default = SafeHTMLElement;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = scopeTab;\nvar _tabbable = require(\"./tabbable\");\nvar _tabbable2 = _interopRequireDefault(_tabbable);\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\nfunction getActiveElement() {\n var el = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : document;\n return el.activeElement.shadowRoot ? getActiveElement(el.activeElement.shadowRoot) : el.activeElement;\n}\nfunction scopeTab(node, event) {\n var tabbable = (0, _tabbable2.default)(node);\n if (!tabbable.length) {\n // Do nothing, since there are no elements that can receive focus.\n event.preventDefault();\n return;\n }\n var target = void 0;\n var shiftKey = event.shiftKey;\n var head = tabbable[0];\n var tail = tabbable[tabbable.length - 1];\n var activeElement = getActiveElement();\n\n // proceed with default browser behavior on tab.\n // Focus on last element on shift + tab.\n if (node === activeElement) {\n if (!shiftKey) return;\n target = tail;\n }\n if (tail === activeElement && !shiftKey) {\n target = head;\n }\n if (head === activeElement && shiftKey) {\n target = tail;\n }\n if (target) {\n event.preventDefault();\n target.focus();\n return;\n }\n\n // Safari radio issue.\n //\n // Safari does not move the focus to the radio button,\n // so we need to force it to really walk through all elements.\n //\n // This is very error prone, since we are trying to guess\n // if it is a safari browser from the first occurence between\n // chrome or safari.\n //\n // The chrome user agent contains the first ocurrence\n // as the 'chrome/version' and later the 'safari/version'.\n var checkSafari = /(\\bChrome\\b|\\bSafari\\b)\\//.exec(navigator.userAgent);\n var isSafariDesktop = checkSafari != null && checkSafari[1] != \"Chrome\" && /\\biPod\\b|\\biPad\\b/g.exec(navigator.userAgent) == null;\n\n // If we are not in safari desktop, let the browser control\n // the focus\n if (!isSafariDesktop) return;\n var x = tabbable.indexOf(activeElement);\n if (x > -1) {\n x += shiftKey ? -1 : 1;\n }\n target = tabbable[x];\n\n // If the tabbable element does not exist,\n // focus head/tail based on shiftKey\n if (typeof target === \"undefined\") {\n event.preventDefault();\n target = shiftKey ? tail : head;\n target.focus();\n return;\n }\n event.preventDefault();\n target.focus();\n}\nmodule.exports = exports[\"default\"];","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = findTabbableDescendants;\n/*!\n * Adapted from jQuery UI core\n *\n * http://jqueryui.com\n *\n * Copyright 2014 jQuery Foundation and other contributors\n * Released under the MIT license.\n * http://jquery.org/license\n *\n * http://api.jqueryui.com/category/ui-core/\n */\n\nvar DISPLAY_NONE = \"none\";\nvar DISPLAY_CONTENTS = \"contents\";\nvar tabbableNode = /input|select|textarea|button|object|iframe/;\nfunction isNotOverflowing(element, style) {\n return style.getPropertyValue(\"overflow\") !== \"visible\" ||\n // if 'overflow: visible' set, check if there is actually any overflow\n element.scrollWidth <= 0 && element.scrollHeight <= 0;\n}\nfunction hidesContents(element) {\n var zeroSize = element.offsetWidth <= 0 && element.offsetHeight <= 0;\n\n // If the node is empty, this is good enough\n if (zeroSize && !element.innerHTML) return true;\n try {\n // Otherwise we need to check some styles\n var style = window.getComputedStyle(element);\n var displayValue = style.getPropertyValue(\"display\");\n return zeroSize ? displayValue !== DISPLAY_CONTENTS && isNotOverflowing(element, style) : displayValue === DISPLAY_NONE;\n } catch (exception) {\n // eslint-disable-next-line no-console\n console.warn(\"Failed to inspect element style\");\n return false;\n }\n}\nfunction visible(element) {\n var parentElement = element;\n var rootNode = element.getRootNode && element.getRootNode();\n while (parentElement) {\n if (parentElement === document.body) break;\n\n // if we are not hidden yet, skip to checking outside the Web Component\n if (rootNode && parentElement === rootNode) parentElement = rootNode.host.parentNode;\n if (hidesContents(parentElement)) return false;\n parentElement = parentElement.parentNode;\n }\n return true;\n}\nfunction focusable(element, isTabIndexNotNaN) {\n var nodeName = element.nodeName.toLowerCase();\n var res = tabbableNode.test(nodeName) && !element.disabled || (nodeName === \"a\" ? element.href || isTabIndexNotNaN : isTabIndexNotNaN);\n return res && visible(element);\n}\nfunction tabbable(element) {\n var tabIndex = element.getAttribute(\"tabindex\");\n if (tabIndex === null) tabIndex = undefined;\n var isTabIndexNaN = isNaN(tabIndex);\n return (isTabIndexNaN || tabIndex >= 0) && focusable(element, !isTabIndexNaN);\n}\nfunction findTabbableDescendants(element) {\n var descendants = [].slice.call(element.querySelectorAll(\"*\"), 0).reduce(function (finished, el) {\n return finished.concat(!el.shadowRoot ? [el] : findTabbableDescendants(el.shadowRoot));\n }, []);\n return descendants.filter(tabbable);\n}\nmodule.exports = exports[\"default\"];","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nvar _Modal = require(\"./components/Modal\");\nvar _Modal2 = _interopRequireDefault(_Modal);\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\nexports.default = _Modal2.default;\nmodule.exports = exports[\"default\"];","import React from \"react\"\nimport { useStaticQuery, graphql } from \"gatsby\"\nimport Img from \"gatsby-image\"\n\nconst CategoriesHeaderImage = ({ className, style, alt }) => {\n const data = useStaticQuery(graphql`\n query {\n placeholderImage: file(relativePath: { eq: \"awards-2022.jpg\" }) {\n childImageSharp {\n fluid(maxWidth: 1100) {\n ...GatsbyImageSharpFluid\n }\n }\n }\n }\n `)\n\n return {alt}/\n}\n\nexport default CategoriesHeaderImage\n","import PropTypes from \"prop-types\"\nimport React from \"react\"\n\nconst PageTitle = ({ text }) => (\n

{text}

\n)\n\nPageTitle.propTypes = {\n text: PropTypes.string,\n}\n\nPageTitle.defaultProps = {\n text: `Page Title`,\n}\n\nexport default PageTitle","import PropTypes from \"prop-types\"\nimport React from \"react\"\nimport { Link } from \"gatsby\"\nimport { OutboundLink } from \"gatsby-plugin-google-analytics\"\n\nconst PrimaryButton = ({ to, text, url }) => {\n\n const style = {\n backgroundColor: `#fff`,\n borderColor: `#fff`,\n color: `#d23464`,\n textTransform: `uppercase`,\n borderRadius: `0`,\n padding: `.6rem 1rem`,\n fontWeight: `600`\n }\n\n if(url) {\n return { if(window.dataLayer) { window.dataLayer.push({event: 'outbound-link', 'gtm.elementUrl': url}) } }}>{text}\n } else {\n return {text}\n }\n\n}\n\nPrimaryButton.propTypes = {\n to: PropTypes.string,\n text: PropTypes.string,\n}\n\nPrimaryButton.defaultProps = {\n to: `/`,\n text: `Primary Button`,\n}\n\nexport default PrimaryButton","import React from 'react'\nimport { graphql, StaticQuery } from 'gatsby'\n\nimport BackgroundImage from 'gatsby-background-image'\n\nconst PlacesBackgroundImage = ({ children, className }) => (\n {\n const imageData = data.desktop.childImageSharp.fluid\n return (\n \n {children}\n \n )\n }}\n />\n)\n\nexport default PlacesBackgroundImage","import React from 'react'\nimport { graphql, StaticQuery } from 'gatsby'\n\nimport BackgroundImage from 'gatsby-background-image'\n\nconst PeopleBackgroundImage = ({ children, className }) => (\n {\n const imageData = data.desktop.childImageSharp.fluid\n return (\n \n {children}\n \n )\n }}\n />\n)\n\nexport default PeopleBackgroundImage","import PropTypes from \"prop-types\"\nimport React from \"react\"\n\nimport Modal from 'react-modal'\n\nModal.setAppElement('#___gatsby')\n\nconst customStyles = {\n overlay: {\n backgroundColor: 'rgba(0, 0, 0, 0.75)',\n },\n content: {\n top: '50%',\n left: '50%',\n right: '20%',\n bottom: 'auto',\n marginRight: '-50%',\n transform: 'translate(-50%, -50%)',\n border: `0`,\n borderRadius: `0`,\n backgroundColor: `transparent`,\n // height: `500px`,\n // overlfow: `scroll`\n }\n};\n\nconst AppModal = ({children, openButton, title}) => {\n\n // var subtitle;\n const [modalIsOpen,setIsOpen] = React.useState(false);\n function openModal() {\n setIsOpen(true);\n }\n\n function afterOpenModal() {\n // references are now sync'd and can be accessed.\n // subtitle.style.color = '#f00';\n }\n\n function closeModal(){\n setIsOpen(false);\n }\n\n return (\n
\n \n \n {/*

(subtitle = _subtitle)}>{title}

*/}\n {children}\n
\n \n
\n \n
\n )\n}\n\nAppModal.propTypes = {\n openButton: PropTypes.string,\n}\n\nAppModal.defaultProps = {\n openButton: `Open Modal`,\n}\n\nexport default AppModal\n","import React from \"react\"\n// import { Link } from \"gatsby\"\n\nimport Background from \"../components/background\"\nimport Layout from \"../components/layout\"\nimport Seo from \"../components/seo\"\nimport Container from \"../components/bootstrap/container\"\nimport PageTitle from \"../components/page-title\"\nimport CategoriesHeaderImage from \"../components/categories-header\"\nimport PlacesBackgroundImage from \"../components/places-background-image\"\nimport PeopleBackgroundImage from \"../components/people-background-image\"\n// import ProcessesBackgroundImage from \"../components/processes-background-image\"\n// import TechnologyBackgroundImage from \"../components/technology-background-image\"\nimport BandsCircle from \"../components/bands-circle\"\nimport BandsDiamond from \"../components/bands-diamond\"\nimport Row from \"../components/bootstrap/row\"\nimport AwardCategory from \"../components/award-category\"\nimport AppModal from \"../components/app-modal\"\nimport PrimaryButton from \"../components/primary-button\"\n\nconst CategoriesPage = () => (\n \n \n \n \n \n {/*
\n \n
*/}\n
\n
\n \n
\n
\n \n
\n
\n

IN ADDITION TO THE CATEGORY-SPECIFIC CRITERIA, THE JUDGES WILL BE LOOKING FOR THE FOLLOWING FROM ENTRIES:

\n
    \n
  • Innovation, Imagination and Ambition
  • \n
  • Evidence of a clear strategy for the project / policy, clearly communicated to staff and other stakeholders
  • \n
  • Evidence of good management
  • \n
  • Value for money
  • \n
  • Supporting evidence that the project / policy has made a difference to services.
  • \n
  • Evidence it has achieved or is well on the way to achieving what it set out to do
  • \n
\n
\n
\n
\n
    \n
  • If you are making different entries under several different categories, please indicate this and complete an entry for each.
  • \n
  • Each application needs to specifically address the criteria for each individual category.
  • \n
  • The same project can be entered in different categories but a separate submission must be sent for each one, geared towards the category it is entered into.
  • \n
  • Public sector organisations can still enter multiple submissions for the same category with different projects, should they so choose.
  • \n
  • Entries are scored using the published criteria for each category in addition to the general criteria.
  • \n
\n
\n
\n
\n
\n
\n
\n \n \n



\n \n
\n \n \n
\n
\n
\n
\n

The Categories

\n
\n

Enter Your Nominations

\n
\n

Below are the main Smarter Working Live award categories, comprising of 14 awards which your organisation or team can submit entries to. Before submitting your entry, ensure you have read the criteria listed under each award.

View the category-specific criteria for each award by clicking the 'Read more' button.

\n \n
\n \n
\n
\n \n


\n \n \n
\n \n \n \n

Visionary employers are designing spaces to cultivate great workplace experiences. When diverse teams feel that they are valued and belong, they unlock their full potential.

\n

This award celebrates ambitious organisations that have reimagined their workspaces to cultivate collaboration and can demonstrate evidence of the positive impacts on staff.

\n\n

Examples of entries could include (but are not limited to *):

\n
    \n
  • Workspaces that have sparked greater collaboration, creativity, or communication among teams and with external stakeholders.
  • \n
  • Strategic projects that promote wellbeing and encourage healthy mindsets and behaviours in the workplace.
  • \n
  • Innovative hybrid working models that encourage flexibility and provide opportunities to people who might struggle with traditional office hours.
  • \n
  • Workspaces that can prove inclusive design that improves accessibility and enhances belonging.
  • \n
  • Employee-led initiatives where organisations continually listen to and act on feedback from staff.
  • \n
  • Projects which showcase how a user-centred approach has transformed services and accelerated growth in support of current and future business needs.
  • \n
\n\n *This list is not exhaustive. If you or your organisation has undergone a similar project that may fit into this category but is not on the list, we still encourage you to apply.\n
\n
\n
\n
\n
\n \n \n \n

The physical workspace must keep step with rapidly changing ways of working. It demands imagination and thoughtful planning to ensure spaces are modern, fit-for-purpose and sustainable.

\n

This award celebrates pioneering organisations that have designed and built workplaces delivering these three foundations. We invite entries where innovation, functionality and sustainability combine to create inspiring, future-proofed spaces that foster creative thinking.

\n\n

Examples of entries could include (but are not limited to *):

\n\n
    \n
  • Workspaces that are innovative in their design and build, demonstrating exceptional functionality and consideration of environmental and social impact.
  • \n
  • Workspaces that add value or enhance delivery for staff and customers, such as community shared spaces.
  • \n
  • Projects where multiple partners and stakeholders have combined expertise and insights to create a future-proofed space.
  • \n
  • Projects that have embraced innovative technology to create modern, greener places to work.
  • \n
  • Projects that promote efficient utilisation of property and drive efficiency with clear evidence of the impact and that the project is meeting objectives.
  • \n
\n\n *This list is not exhaustive. If you or your organisation has undergone a similar project that may fit into this category but is not on the list, we still encourage you to apply.\n
\n
\n
\n
\n
\n \n
\n \n \n \n

With mounting pressures on the public sector, it's essential for leaders to embrace innovation to secure the long-term future of services. Outstanding projects combine a user-centred, collaborative and inclusive approach with a robust focus on outcomes and scalability.

\n

This award is for organisations and teams who have truly reimagined services and contributed to the goals of smarter working.

\n

Examples of entries could include (but are not limited to *):

\n
    \n
  • Projects that leverage cutting-edge innovations, such as AI, automation and data analytics, to support enhanced service delivery.
  • \n
  • Projects that foster collaboration and partnerships in the public sector to achieve shared goals.
  • \n
  • Projects with a broader social impact that promote inclusivity and diversity in the workplace.
  • \n
  • Projects that have delivered tangible outcomes of improved performance, productivity and user satisfaction.
  • \n
  • Projects that have been thoughtfully designed to integrate effectively with other services while also producing a model that can be rolled out and adapted elsewhere.
  • \n
\n *This list is not exhaustive. If you or your organisation has undergone a similar project that may fit into this category but is not on the list, we still encourage you to apply.\n
\n
\n
\n
\n
\n \n \n \n

Data has the power to generate valuable insights, shape truly personalised services and unlock efficiencies. While the benefits are clear, public sector organisations must protect the privacy and security of data to maintain trust. Leaders need to leverage the opportunities while minimising the risks of cyber attacks and leaks.

\n

This award is for organisations that have demonstrated vision in integrating data insights into decision-making while implementing strategies to protect against risks and ensure the safe and responsible use of data.

\n

Examples of entries could include (but are not limited to*):

\n
    \n
  • Projects that can demonstrate how they have drawn on data to inform workplace strategies.
  • \n
  • Projects that have enabled people to work from anywhere while access to systems is carefully monitored and managed.
  • \n
  • Projects that promote and encourage data and cyber security awareness and understanding, giving teams the knowledge and information to remain vigilant in different work settings.
  • \n
  • Projects that have accelerated the delivery of safer processes, systems and software to unlock new ways of working.
  • \n
\n *This list is not exhaustive. If you or your organisation has undergone a similar project that may fit into this category but is not on the list, we still encourage you to apply.\n
\n
\n
\n
\n
\n \n
\n \n \n \n

Ultimately, public service revolves around the customer. A focus on customer experience builds trusting relationships and makes a workplace more attractive for staff.

\n

This award recognises organisations that have demonstrated excellence in fostering meaningful digital engagements and delivering a stellar customer experience. We invite entries that showcase innovative strategies, technologies, and initiatives aimed at creating positive and empowering relationships with customers.

\n

Examples of entries could include (but are not limited to *):

\n
    \n
  • Projects that leverage emerging technologies, like virtual reality and augmented reality, to enhance customer experience.
  • \n
  • Tools and solutions that support transparency and empower customers.
  • \n
  • Creative use of digital channels to engage and connect with the public.
  • \n
  • Implementation of customised and responsive customer service solutions.
  • \n
  • Collaboration with customers to continuously refine and enhance experience based on real-user input.
  • \n
\n *This list is not exhaustive. If you or your organisation has undergone a similar project that may fit into this category but is not on the list, we still encourage you to apply.\n
\n
\n
\n
\n
\n \n \n \n

Smarter working can have a transformative impact on user experience, creating frictionless processes that help people to effectively navigate services.

\n

We invite entries showcasing examples of organisations, teams or individuals who have harnessed the power of smart working to elevate employee experience whether through streamlined processes, intuitive interfaces, or innovative solutions.

\n

Examples of entries could include (but are not limited to *):

\n
    \n
  • Implementation of intuitive and user-friendly portals to enhance access to services.
  • \n
  • Redesign of online forms and interfaces to optimise user engagement, ensuring a more straightforward and efficient user journey.
  • \n
  • Implementation of personalised user profiles to tailor the digital experience to individuals' needs and preferences.
  • \n
  • Integration of technological innovations like chatbots to assist users in accessing information and navigating complex processes seamlessly.
  • \n
\n *This list is not exhaustive. If you or your organisation has undergone a similar project that may fit into this category but is not on the list, we still encourage you to apply.\n
\n
\n
\n
\n
\n \n
\n \n \n \n

Effective processes underpin exceptional delivery. When everything works seamlessly, they blend into the background, which means they're often overlooked. Simple and efficient workflows make life easier for both citizens and staff, helping enhance service delivery and turbocharge productivity.

\n

This award spotlights the processes, platforms, hardware and design that make smarter working possible.

\n

Examples of entries could include (but are not limited to *):

\n
    \n
  • Integration of Internet of Things devices to automate workflows.
  • \n
  • Implementation of agile methodologies to enhance, flexibility, adaptability, and responsiveness.
  • \n
  • The use of data analytics to identify bottlenecks and uncover innovative ways to optimise processes.
  • \n
  • The integration of AI to intelligently route tasks, prioritise workloads and enhance efficiency.
  • \n
  • Implementation of project management tools to enhance coordination and facilitate real-time collaboration across teams.
  • \n
\n *This list is not exhaustive. If you or your organisation has undergone a similar project that may fit into this category but is not on the list, we still encourage you to apply.\n
\n
\n
\n
\n
\n \n \n \n

While the rapid acceleration of digital technologies has enhanced services for many, it has also highlighted existing inequalities and has the potential to exclude people without access to technology or the skills and confidence to use it. The public sector plays a crucial role in championing digital inclusion.

\n

This award celebrates organisations and teams who have deployed Smarter Working technology to ensure equitable access for diverse audiences.

\n

Examples of entries could include (but are not limited to *):

\n
    \n
  • Projects that have championed digital inclusion with careful and considered planning.
  • \n
  • Digital literacy training initiatives supporting citizens to build their confidence and skills in using new technologies.
  • \n
  • The use of digital tools with innovative accessibility features to support people with different needs to access services.
  • \n
  • Partnering with community groups and organisations to support people without access to technology at home.
  • \n
  • The use of digital navigators to help those with limited digital literacy skills to navigate online services effectively.
  • \n
\n *This list is not exhaustive. If you or your organisation has undergone a similar project that may fit into this category but is not on the list, we still encourage you to apply.\n
\n
\n
\n
\n
\n \n
\n \n \n \n

Automation, Artificial Intelligence (AI) and machine learning is the fastest growing technology in the world. And for good reason - when used effectively, the benefits are far-reaching - proving to boost effectiveness, free up staff time, reduce waste and produce significant cost-savings; it can inform decision-making and is a vital tool to drive maximum value in operations and service delivery.

\n

This award recognises organisations who have implemented technology innovations to overcome challenges in managing large amounts of data or repetitive processes.

\n

Examples of entries could include (but are not limited to *):

\n
    \n
  • Projects which have prioritised innovation in technology to produce efficiency savings in productivity, costs or sustainability, with results being measured over time
  • \n
  • Projects where automation, AI and machine learning has resolved long-standing issues or inefficiencies in an organisation or team
  • \n
  • Projects where automation, AI and machine learning has opened opportunities for future technological advancements and ways of working
  • \n
  • Projects that are enabling more rapid implementation of digitalisation, converting paper or digital images into data to power transformative technology
  • \n
\n *This list is not exhaustive. If you or your organisation has undergone a similar project that may fit into this category but is not on the list, we still encourage you to apply.\n
\n
\n
\n
\n
\n \n \n \n

Exemplary public sector services hinge on collaboration and communication. Great leaders understand the importance of listening to their people and drawing on their diverse skills, experience and insights.

\n

This award is for organisations that have created the conditions to foster collaboration and communication – whether among staff or with customers.

\n

Examples of entries could include (but are not limited to *):

\n
    \n
  • Projects that have taken innovative approaches to unblock communication or collaboration barriers with demonstrable results.
  • \n
  • Projects that have empowered staff to play an active role in changes to ways of working.
  • \n
  • Projects where teams have trialled different initiatives to find the solution that best suits the needs of staff or users.
  • \n
  • Projects that have engaged with local communities/groups to drive inclusion and local engagement in services.
  • \n
\n *This list is not exhaustive. If you or your organisation has undergone a similar project that may fit into this category but is not on the list, we still encourage you to apply.\n
\n
\n
\n
\n
\n \n
\n \n \n \n

While budget constraints can be a limitation, they can also stimulate creativity. This award is for small-scale projects that have generated remarkable results. The impact of these projects could include supporting local communities, experimenting with green solutions or enhancing service delivery.

\n

Outstanding teams will demonstrate how they turned the small-scale of the project to their advantage, encouraging imaginative solutions to overcome challenges.

\n

Examples of entries could include (but are not limited to *):

\n
    \n
  • Outstanding teams will demonstrate how they turned the small-scale of the project to their advantage, encouraging imaginative solutions to overcome challenges.
  • \n
  • Projects that focused on transforming the quality of user or customer experience.
  • \n
  • Projects where budget restrictions encouraged teams to think differently and achieve impressive results.
  • \n
  • Strategic projects that involved thoughtful planning and were effectively managed to achieve objectives.
  • \n
\n *This list is not exhaustive. If you or your organisation has undergone a similar project that may fit into this category but is not on the list, we still encourage you to apply.\n
\n
\n
\n
\n
\n \n \n \n

Our wellbeing shapes how we feel about work and our lives. Promoting positive practices and proactively supporting people can help to minimise workplace stress and burnout. When people feel good at work, it brings both personal and organisational benefits and is linked to a higher quality of service.

\n

This award is for projects that have championed workplace wellbeing and made a real difference to people’s mental health.

\n

Examples of entries could include (but are not limited to *):

\n
    \n
  • Projects that have prioritised mental health and wellbeing in the workspace or in service delivery, based on employee or user/customer feedback.
  • \n
  • Projects that have helped to foster greater inclusivity and belonging in the workforce.
  • \n
  • Projects that have contributed to attracting and retaining talent in the workforce.
  • \n
  • Projects that have overcome challenges to enhance flexibility in how people work or receive services.
  • \n
  • Projects that have involved the creation of support networks to help people protect their mental health.
  • \n
\n *This list is not exhaustive. If you or your organisation has undergone a similar project that may fit into this category but is not on the list, we still encourage you to apply.\n
\n
\n
\n
\n
\n \n
\n \n \n \n

Change is most impactful when it becomes embedded within everyday practice. So often projects falter when a key influencer leaves or after the initial enthusiasm wanes and old habits creep in. Continuous improvement approaches are essential to ensure initiatives have a long-term impact.

\n

This award is for organisations that have thoughtfully factored in continuous improvement methodologies to ensure sustained adoption.

\n

Examples of entries could include (but are not limited to *):

\n
    \n
  • Projects that have encouraged staff to take ownership of the local spread of innovations with test-and-learn approaches.
  • \n
  • Projects that have embedded smarter working into wider organisational strategies to ensure it becomes part of day-to-day activities.
  • \n
  • Projects that continually seek out and act on employee feedback to identify and address development needs.
  • \n
  • Projects that have focused on changing habits and cultures to sustain new working practices.
  • \n
\n *This list is not exhaustive. If you or your organisation has undergone a similar project that may fit into this category but is not on the list, we still encourage you to apply.\n
\n
\n
\n
\n
\n \n \n \n

Smarter working involves cultural change. Leaders must work collaboratively to come up with creative solutions, build trust and drive innovation.

\n

This award is for organisations, teams or individuals that role-modelled the principles of smarter working while empowering staff or customers to transform ways of working.

\n

Examples of entries could include (but are not limited to *):

\n
    \n
  • Organisational leadership where leaders (at any level of the organisation) champion smarter working strategy and help to inspire a growing movement.
  • \n
  • Projects that have fostered a culture where positive behaviours are encouraged, recognised and rewarded.
  • \n
  • Projects that have an active champions' network assuming local leadership roles.
  • \n
  • Projects that help leaders develop the mindset and tools to deliver smarter working outcomes.
  • \n
\n *This list is not exhaustive. If you or your organisation has undergone a similar project that may fit into this category but is not on the list, we still encourage you to apply.\n
\n
\n
\n
\n
\n
\n\n \n



\n \n
\n
\n
\n

Judges Choice


\n \n
\n

Below are the Judges Choice Awards. These are different from the awards mentioned above, with one main distinction: your organisation or team cannot submit an entry to be considered for the Judges Choice awards - they can only be nominated by our expert judges.

\n

\n For your entry to the main award categories to be considered for the Judges Choice awards, before submitting we recommend that you review the criteria which the judges will use to assess entries. This will increase your chances of making the Judges Choice awards shortlist.

\n
\n \n
\n \n \n \n
\n \n

\n \n \n
\n \n \n \n

The Special Recognition award is reserved for trailblazing organisations and teams who have gone above and beyond in their dedication to smarter working. This award celebrates projects with a truly ambitious vision – whether that’s groundbreaking digital innovation, bringing together staff and communities, or pioneering new strategies to reach carbon net zero. Inevitably, there will have been challenges and lessons learned, but teams ultimately remained steadfast in their commitment to inspiring change and transforming services.

\n Please note: Organisations cannot apply to this award and can only be put forward for consideration by Smarter Working Live judges.\n
\n
\n
\n
\n
\n \n \n \n

This prestigious and long-standing award is a combination of all the Smarter Working Live awards. It is to celebrate projects that combine people, places, or technology in true smarter working excellence. We are looking for projects that have shown bold ambition, innovation, and cultural change; where thoughtful planning and collaboration have inspired new ways of working; where innovative strategies have driven efficiencies or sustainability; where improved outcomes exceeded expectations and inspired the spread of further Smarter Working led projects. This award is a tribute to projects that have achieved meaningful, long-term change.

\n Please note: Organisations cannot apply to this award and can only be put forward for consideration by Smarter Working Live judges.\n
\n
\n
\n
\n
\n {/* \n
\n \n

need icon

\n
\n
\n
*/}\n
\n \n \n
\n
\n
\n \n \n)\n\nexport default CategoriesPage\n","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\n/**\n * Similar to invariant but only logs a warning if the condition is not met.\n * This can be used to log issues in development environments in critical\n * paths. Removing the logging code for production environments will keep the\n * same logic and follow the same code paths.\n */\n\nvar __DEV__ = process.env.NODE_ENV !== 'production';\n\nvar warning = function() {};\n\nif (__DEV__) {\n var printWarning = function printWarning(format, args) {\n var len = arguments.length;\n args = new Array(len > 1 ? len - 1 : 0);\n for (var key = 1; key < len; key++) {\n args[key - 1] = arguments[key];\n }\n var argIndex = 0;\n var message = 'Warning: ' +\n format.replace(/%s/g, function() {\n return args[argIndex++];\n });\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) {}\n }\n\n warning = function(condition, format, args) {\n var len = arguments.length;\n args = new Array(len > 2 ? len - 2 : 0);\n for (var key = 2; key < len; key++) {\n args[key - 2] = arguments[key];\n }\n if (format === undefined) {\n throw new Error(\n '`warning(condition, format, ...args)` requires a warning ' +\n 'message argument'\n );\n }\n if (!condition) {\n printWarning.apply(null, [format].concat(args));\n }\n };\n}\n\nmodule.exports = warning;\n"],"names":["canUseDOM","window","document","createElement","ExecutionEnvironment","canUseWorkers","Worker","canUseEventListeners","addEventListener","attachEvent","canUseViewport","screen","Object","defineProperty","exports","value","bodyOpenClassName","portalClassName","undefined","_extends","assign","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","_createClass","defineProperties","props","descriptor","enumerable","configurable","writable","Constructor","protoProps","staticProps","_react","_react2","_interopRequireDefault","_reactDom2","_propTypes2","_ModalPortal2","ariaAppHider","obj","__esModule","newObj","default","_interopRequireWildcard","_safeHTMLElement","_safeHTMLElement2","_reactLifecyclesCompat","_classCallCheck","instance","TypeError","_possibleConstructorReturn","self","ReferenceError","isReact16","createPortal","createHTMLElement","name","getCreatePortal","unstable_renderSubtreeIntoContainer","getParentElement","parentSelector","Modal","_Component","_ref","_temp","_this","this","_len","args","Array","_key","__proto__","getPrototypeOf","apply","concat","removePortal","unmountComponentAtNode","node","parent","contains","removeChild","console","warn","portalRef","ref","portal","renderPortal","defaultStyles","subClass","superClass","create","constructor","setPrototypeOf","_inherits","className","appendChild","prevProps","prevParent","nextParent","_","snapshot","_props","isOpen","state","now","Date","closesAt","closeTimeoutMS","beforeClose","closeWithTimeout","setTimeout","element","setElement","Component","propTypes","bool","isRequired","style","shape","content","object","overlay","string","htmlOpenClassName","oneOfType","base","afterOpen","overlayClassName","appElement","instanceOf","SafeHTMLCollection","SafeNodeList","arrayOf","onAfterOpen","func","onRequestClose","number","ariaHideApp","shouldFocusAfterRender","shouldCloseOnOverlayClick","shouldReturnFocusAfterClose","preventScroll","aria","data","role","contentLabel","shouldCloseOnEsc","overlayRef","contentRef","id","overlayElement","contentElement","defaultProps","body","contentEl","children","position","top","left","right","bottom","backgroundColor","border","background","overflow","WebkitOverflowScrolling","borderRadius","outline","padding","polyfill","_typeof","Symbol","iterator","focusManager","_scopeTab2","classList","_portalOpenInstances2","CLASS_NAMES","ariaHiddenInstances","ModalPortal","setOverlayRef","setContentRef","afterClose","_this$props","parentDocument","ownerDocument","remove","getElementsByTagName","show","returnFocus","teardownScopedFocus","popWithoutFocus","onAfterClose","deregister","open","beforeOpen","clearTimeout","closeTimer","setState","setupScopedFocus","markForFocusLater","openAnimationFrame","requestAnimationFrame","overlayEl","close","closeWithoutTimeout","focusContent","contentHasFocus","focus","handleKeyDown","event","code","keyCode","isTabKey","isEscKey","stopPropagation","requestClose","handleOverlayOnClick","shouldClose","ownerHandlesClose","handleContentOnMouseUp","handleOverlayOnMouseDown","preventDefault","handleContentOnClick","handleContentOnMouseDown","shouldBeClosed","activeElement","buildClassName","which","additional","classNames","attributesFromObject","prefix","items","keys","reduce","acc","moveFromContentToOverlay","prevState","cancelAnimationFrame","add","hide","register","_props2","contentStyles","overlayStyles","overlayProps","onClick","onMouseDown","contentProps","tabIndex","onKeyDown","onMouseUp","modal","testId","module","resetState","globalElement","removeAttribute","forEach","querySelectorAll","log","assertNodeList","useElement","el","validateElement","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_step","_iterator","next","done","setAttribute","err","return","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_step2","_iterator2","documentNotReadyOrSSRTesting","_warning","_warning2","nodeList","selector","Error","isArray","HTMLCollection","NodeList","join","_arr","before","after","_i","item","parentNode","instances","_arr2","_i2","check","nodeName","_portalOpenInstances","subscribe","eventType","openInstances","opacity","cloneNode","firstChild","insertBefore","lastChild","parentElement","htmlElement","cls","htmlClassList","removeClass","_cls","docBodyClassList","at","classString","classListRef","poll","toLowerCase","split","incrementReference","decrementReference","focusLaterElements","handleBlur","handleFocus","push","toFocus","pop","e","modalElement","removeEventListener","detachEvent","_tabbable","_tabbable2","needToFocus","portalOpenInstances","p","PortalOpenInstances","openInstance","indexOf","emit","index","splice","callback","subscribers","subscriber","slice","_exenv","EE","SafeHTMLElement","HTMLElement","tabbable","shiftKey","head","tail","getActiveElement","checkSafari","exec","navigator","userAgent","x","shadowRoot","findTabbableDescendants","descendants","finished","filter","tabbableNode","hidesContents","zeroSize","offsetWidth","offsetHeight","innerHTML","getComputedStyle","displayValue","getPropertyValue","scrollWidth","scrollHeight","isNotOverflowing","exception","focusable","isTabIndexNotNaN","test","disabled","href","rootNode","getRootNode","host","visible","getAttribute","isTabIndexNaN","isNaN","_Modal","_Modal2","alt","useStaticQuery","fluid","placeholderImage","childImageSharp","PageTitle","text","color","fontFamily","fontWeight","fontSize","textAlign","margin","PrimaryButton","to","url","borderColor","textTransform","rel","dataLayer","Link","StaticQuery","query","render","imageData","desktop","Tag","backgroundSize","backgroundPosition","customStyles","marginRight","transform","AppModal","openButton","title","React","modalIsOpen","setIsOpen","closeModal","width","height","zIndex","marginBottom","paddingBottom","size","type","display","lineHeight","boxShadow","marginTop","hidden","gridColor","icon","warning"],"sourceRoot":""}