From 0aeb45173bb61183a4f2a6d8323b8e7cd28be041 Mon Sep 17 00:00:00 2001 From: David Jensen Date: Tue, 26 Apr 2022 12:49:06 -0400 Subject: [PATCH] feat: deploy --- .distignore | 6 +- .github/workflows/deploy.yml | 52 ++ .gitignore | 3 + .releaserc.js | 33 + bin/build-zip.sh | 28 + build/tab/block.json | 2 +- build/tab/index.asset.php | 2 +- build/tab/index.css | 3 - build/tab/index.js | 340 +------- build/tab/index.js.map | 1 - build/tabs/block.json | 2 +- build/tabs/index.asset.php | 2 +- build/tabs/index.css | 83 +- build/tabs/index.css.map | 1 - build/tabs/index.js | 1498 +------------------------------- build/tabs/index.js.map | 1 - build/tabs/style-index.css | 78 +- build/tabs/style-index.css.map | 1 - build/tabs/view.asset.php | 2 +- build/tabs/view.js | 137 +-- build/tabs/view.js.map | 1 - package-lock.json | 1302 +++++++++++++++++++-------- package.json | 8 +- readme.txt | 21 +- simple-tabs-block.php | 2 +- src/tab/block.json | 2 +- src/tabs/block.json | 2 +- 27 files changed, 1073 insertions(+), 2540 deletions(-) create mode 100644 .github/workflows/deploy.yml create mode 100644 .releaserc.js create mode 100644 bin/build-zip.sh delete mode 100644 build/tab/index.js.map delete mode 100644 build/tabs/index.css.map delete mode 100644 build/tabs/index.js.map delete mode 100644 build/tabs/style-index.css.map delete mode 100644 build/tabs/view.js.map diff --git a/.distignore b/.distignore index c5cc545..8e76460 100644 --- a/.distignore +++ b/.distignore @@ -11,19 +11,22 @@ /resources /tests /bin -/build +/src +/dist /phpunit.xml # Files .babelrc .commitlintrc.js .distignore +.editorconfig .env .eslintignore .eslintrc .eslintrc.json .gitignore .releaserc.js +.stylelintignore .travis.yml CHANGELOG.md CODE_OF_CONDUCT.md @@ -39,6 +42,7 @@ package-lock.json package.json phpcs.xml phpunit.xml +simple-tabs-block.zip webpack.config.js webpack.gutenberg.config.js webpack.mix.js diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml new file mode 100644 index 0000000..172f561 --- /dev/null +++ b/.github/workflows/deploy.yml @@ -0,0 +1,52 @@ +name: Deploy + +on: + push: + branches: + - master + +jobs: + build: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + + - name: Run composer install + run: | + composer clear-cache + composer install --no-dev --prefer-dist + - name: Install npm packages + run: | + npm ci + - name: Build + run: | + npm install + npm run build + npm run i18n + - name: Semantic release + id: semantic + uses: codfish/semantic-release-action@master + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + - name: WordPress Plugin Deploy + id: deploy + if: steps.semantic.outputs.new-release-published == 'true' + uses: 10up/action-wordpress-plugin-deploy@1.5.0 + with: + generate-zip: true + env: + SVN_PASSWORD: ${{ secrets.SVN_PASSWORD }} + SVN_USERNAME: ${{ secrets.SVN_USERNAME }} + SLUG: simple-tabs-block + VERSION: ${{ steps.semantic.outputs.release-version }} + - name: Upload release asset + uses: actions/upload-release-asset@v1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ github.event.release.upload_url }} + asset_path: ${{ steps.deploy.outputs.zip-path }} + asset_name: ${{ github.event.repository.name }}.zip + asset_content_type: application/zip diff --git a/.gitignore b/.gitignore index f66335e..0a7fc74 100644 --- a/.gitignore +++ b/.gitignore @@ -28,3 +28,6 @@ node_modules/ # dotenv environment variables file .env + +# Build files +dist diff --git a/.releaserc.js b/.releaserc.js new file mode 100644 index 0000000..3b4302a --- /dev/null +++ b/.releaserc.js @@ -0,0 +1,33 @@ +module.exports = { + tagFormat: "${version}", + branch: "master", + plugins: [ + "@semantic-release/release-notes-generator", + [ + "@semantic-release/changelog", + { + "changelogFile": "changelog.txt" + } + ], + [ + "@semantic-release/git", + { + "assets": ["changelog.txt"] + } + ], + ["@semantic-release/npm", { npmPublish: false }], + "@semantic-release/github", + [ + "semantic-release-plugin-update-version-in-files", + { + "files": [ + "simple-tabs-block.php", + "readme.txt", + "build/tab/block.json", + "build/tabs/block.json" + ], + "placeholder": "0.0.0-development" + } + ] + ] +}; diff --git a/bin/build-zip.sh b/bin/build-zip.sh new file mode 100644 index 0000000..3bd450c --- /dev/null +++ b/bin/build-zip.sh @@ -0,0 +1,28 @@ +#!/bin/sh + +PLUGIN_SLUG="simple-tabs-block" +PROJECT_PATH="." +BUILD_PATH="./dist" +DEST_PATH="$BUILD_PATH/$PLUGIN_SLUG" + +echo "Generating build directory..." +rm -rf "$BUILD_PATH" +mkdir -p "$DEST_PATH" + +echo "Installing JS dependencies..." +npm i + +echo "Running JS Build..." +npm run build || exit "$?" + +echo "Syncing files..." +rsync -rc --exclude-from="$PROJECT_PATH/.distignore" "$PROJECT_PATH/" "$DEST_PATH/" --delete --delete-excluded + +echo "Generating zip file..." +cd "$BUILD_PATH" || exit +zip -q -r "${PLUGIN_SLUG}.zip" "$PLUGIN_SLUG/" + +cd "$PROJECT_PATH" || exit +echo "${PLUGIN_SLUG}.zip file generated!" + +echo "Build done!" diff --git a/build/tab/block.json b/build/tab/block.json index 92825e3..34984ee 100644 --- a/build/tab/block.json +++ b/build/tab/block.json @@ -2,7 +2,7 @@ "$schema": "https://schemas.wp.org/trunk/block.json", "apiVersion": 2, "name": "cloudcatch/tab", - "version": "1.0.0", + "version": "0.0.0-development", "title": "Tab", "category": "design", "parent": ["cloudcatch/tabs"], diff --git a/build/tab/index.asset.php b/build/tab/index.asset.php index e5efb4b..f004017 100644 --- a/build/tab/index.asset.php +++ b/build/tab/index.asset.php @@ -1 +1 @@ - array('wp-block-editor', 'wp-blocks', 'wp-components', 'wp-element', 'wp-i18n'), 'version' => '997450abebb6814b2007d947b9d3e04d'); \ No newline at end of file + array('wp-block-editor', 'wp-blocks', 'wp-components', 'wp-element', 'wp-i18n'), 'version' => '7e39060d8b5299a21575d03bb9af168e'); \ No newline at end of file diff --git a/build/tab/index.css b/build/tab/index.css index 9989098..8b13789 100644 --- a/build/tab/index.css +++ b/build/tab/index.css @@ -1,4 +1 @@ -/*!********************************************************************************************************************************************************************************************************************************************!*\ - !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[3].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[3].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[3].use[3]!./src/tab/editor.scss ***! - \********************************************************************************************************************************************************************************************************************************************/ diff --git a/build/tab/index.js b/build/tab/index.js index c0f3a14..c807710 100644 --- a/build/tab/index.js +++ b/build/tab/index.js @@ -1,339 +1 @@ -/******/ (function() { // webpackBootstrap -/******/ var __webpack_modules__ = ({ - -/***/ "./src/tab/edit.js": -/*!*************************!*\ - !*** ./src/tab/edit.js ***! - \*************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": function() { return /* binding */ Edit; } -/* harmony export */ }); -/* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @wordpress/element */ "@wordpress/element"); -/* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"); -/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n"); -/* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _wordpress_components__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @wordpress/components */ "@wordpress/components"); -/* harmony import */ var _wordpress_components__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_wordpress_components__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _wordpress_block_editor__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @wordpress/block-editor */ "@wordpress/block-editor"); -/* harmony import */ var _wordpress_block_editor__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_wordpress_block_editor__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _editor_scss__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./editor.scss */ "./src/tab/editor.scss"); - - -/** - * External dependencies - */ - - - - - -function Edit(_ref) { - let { - attributes, - setAttributes, - className, - clientId, - context - } = _ref; - const { - index, - label - } = attributes; - const blockProps = (0,_wordpress_block_editor__WEBPACK_IMPORTED_MODULE_4__.useBlockProps)({ - tabId: index, - style: { - 'display': clientId === context['cloudcatch/tabs/activeTab'] ? 'block' : 'none' - } - }); - const innerBlocksProps = (0,_wordpress_block_editor__WEBPACK_IMPORTED_MODULE_4__.useInnerBlocksProps)(blockProps, {}); - return (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.Fragment, null, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_block_editor__WEBPACK_IMPORTED_MODULE_4__.InspectorControls, null, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_components__WEBPACK_IMPORTED_MODULE_3__.PanelBody, null, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_components__WEBPACK_IMPORTED_MODULE_3__.TextControl, { - label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_2__.__)('Tab label'), - value: label, - onChange: value => setAttributes({ - label: value - }) - }))), (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", blockProps, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", innerBlocksProps))); -} - -/***/ }), - -/***/ "./src/tab/save.js": -/*!*************************!*\ - !*** ./src/tab/save.js ***! - \*************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": function() { return /* binding */ save; } -/* harmony export */ }); -/* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @wordpress/element */ "@wordpress/element"); -/* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _wordpress_block_editor__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @wordpress/block-editor */ "@wordpress/block-editor"); -/* harmony import */ var _wordpress_block_editor__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_block_editor__WEBPACK_IMPORTED_MODULE_1__); - - -/** - * WordPress dependencies - */ - -function save(_ref) { - let { - attributes - } = _ref; - const { - index - } = attributes; - return (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", _wordpress_block_editor__WEBPACK_IMPORTED_MODULE_1__.useBlockProps.save({ - tabId: index - }), (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_block_editor__WEBPACK_IMPORTED_MODULE_1__.InnerBlocks.Content, null)); -} - -/***/ }), - -/***/ "./node_modules/classnames/index.js": -/*!******************************************!*\ - !*** ./node_modules/classnames/index.js ***! - \******************************************/ -/***/ (function(module, exports) { - -var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*! - Copyright (c) 2018 Jed Watson. - Licensed under the MIT License (MIT), see - http://jedwatson.github.io/classnames -*/ -/* global define */ - -(function () { - 'use strict'; - - var hasOwn = {}.hasOwnProperty; - - function classNames() { - var classes = []; - - for (var i = 0; i < arguments.length; i++) { - var arg = arguments[i]; - if (!arg) continue; - - var argType = typeof arg; - - if (argType === 'string' || argType === 'number') { - classes.push(arg); - } else if (Array.isArray(arg)) { - if (arg.length) { - var inner = classNames.apply(null, arg); - if (inner) { - classes.push(inner); - } - } - } else if (argType === 'object') { - if (arg.toString === Object.prototype.toString) { - for (var key in arg) { - if (hasOwn.call(arg, key) && arg[key]) { - classes.push(key); - } - } - } else { - classes.push(arg.toString()); - } - } - } - - return classes.join(' '); - } - - if ( true && module.exports) { - classNames.default = classNames; - module.exports = classNames; - } else if (true) { - // register as 'classnames', consistent with npm package name - !(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_RESULT__ = (function () { - return classNames; - }).apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__), - __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); - } else {} -}()); - - -/***/ }), - -/***/ "./src/tab/editor.scss": -/*!*****************************!*\ - !*** ./src/tab/editor.scss ***! - \*****************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -// extracted by mini-css-extract-plugin - - -/***/ }), - -/***/ "@wordpress/block-editor": -/*!*************************************!*\ - !*** external ["wp","blockEditor"] ***! - \*************************************/ -/***/ (function(module) { - -"use strict"; -module.exports = window["wp"]["blockEditor"]; - -/***/ }), - -/***/ "@wordpress/blocks": -/*!********************************!*\ - !*** external ["wp","blocks"] ***! - \********************************/ -/***/ (function(module) { - -"use strict"; -module.exports = window["wp"]["blocks"]; - -/***/ }), - -/***/ "@wordpress/components": -/*!************************************!*\ - !*** external ["wp","components"] ***! - \************************************/ -/***/ (function(module) { - -"use strict"; -module.exports = window["wp"]["components"]; - -/***/ }), - -/***/ "@wordpress/element": -/*!*********************************!*\ - !*** external ["wp","element"] ***! - \*********************************/ -/***/ (function(module) { - -"use strict"; -module.exports = window["wp"]["element"]; - -/***/ }), - -/***/ "@wordpress/i18n": -/*!******************************!*\ - !*** external ["wp","i18n"] ***! - \******************************/ -/***/ (function(module) { - -"use strict"; -module.exports = window["wp"]["i18n"]; - -/***/ }) - -/******/ }); -/************************************************************************/ -/******/ // The module cache -/******/ var __webpack_module_cache__ = {}; -/******/ -/******/ // The require function -/******/ function __webpack_require__(moduleId) { -/******/ // Check if module is in cache -/******/ var cachedModule = __webpack_module_cache__[moduleId]; -/******/ if (cachedModule !== undefined) { -/******/ return cachedModule.exports; -/******/ } -/******/ // Create a new module (and put it into the cache) -/******/ var module = __webpack_module_cache__[moduleId] = { -/******/ // no module.id needed -/******/ // no module.loaded needed -/******/ exports: {} -/******/ }; -/******/ -/******/ // Execute the module function -/******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__); -/******/ -/******/ // Return the exports of the module -/******/ return module.exports; -/******/ } -/******/ -/************************************************************************/ -/******/ /* webpack/runtime/compat get default export */ -/******/ !function() { -/******/ // getDefaultExport function for compatibility with non-harmony modules -/******/ __webpack_require__.n = function(module) { -/******/ var getter = module && module.__esModule ? -/******/ function() { return module['default']; } : -/******/ function() { return module; }; -/******/ __webpack_require__.d(getter, { a: getter }); -/******/ return getter; -/******/ }; -/******/ }(); -/******/ -/******/ /* webpack/runtime/define property getters */ -/******/ !function() { -/******/ // define getter functions for harmony exports -/******/ __webpack_require__.d = function(exports, definition) { -/******/ for(var key in definition) { -/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) { -/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] }); -/******/ } -/******/ } -/******/ }; -/******/ }(); -/******/ -/******/ /* webpack/runtime/hasOwnProperty shorthand */ -/******/ !function() { -/******/ __webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); } -/******/ }(); -/******/ -/******/ /* webpack/runtime/make namespace object */ -/******/ !function() { -/******/ // define __esModule on exports -/******/ __webpack_require__.r = function(exports) { -/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { -/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); -/******/ } -/******/ Object.defineProperty(exports, '__esModule', { value: true }); -/******/ }; -/******/ }(); -/******/ -/************************************************************************/ -var __webpack_exports__ = {}; -// This entry need to be wrapped in an IIFE because it need to be in strict mode. -!function() { -"use strict"; -/*!**************************!*\ - !*** ./src/tab/index.js ***! - \**************************/ -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @wordpress/element */ "@wordpress/element"); -/* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _wordpress_blocks__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @wordpress/blocks */ "@wordpress/blocks"); -/* harmony import */ var _wordpress_blocks__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_blocks__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _edit__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./edit */ "./src/tab/edit.js"); -/* harmony import */ var _save__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./save */ "./src/tab/save.js"); - - -/** - * Internal dependencies - */ - - - -(0,_wordpress_blocks__WEBPACK_IMPORTED_MODULE_1__.registerBlockType)('cloudcatch/tab', { - edit: _edit__WEBPACK_IMPORTED_MODULE_2__["default"], - icon: (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("svg", { - xmlns: "http://www.w3.org/2000/svg", - viewBox: "0 0 310.9 237.6" - }, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("path", { - d: "M273.4 64.4h-17.8c1.6-4.1 2.4-8.6 2.4-13.3V37.5C258 16.8 241.2 0 220.5 0h-27.7c-9.6 0-18.4 3.6-25 9.6-6.6-6-15.4-9.6-25-9.6h-27.7c-9.6 0-18.4 3.6-25 9.6-6.6-6-15.4-9.6-25-9.6H37.5C16.8 0 0 16.8 0 37.5v13.6c0 9.8 3.8 18.7 9.9 25.4C3.8 83.2 0 92.1 0 101.9v98.2c0 20.7 16.8 37.5 37.5 37.5h235.9c20.7 0 37.5-16.8 37.5-37.5v-98.2c0-20.7-16.9-37.5-37.5-37.5zM192.8 25h27.7c6.9 0 12.5 5.6 12.5 12.5v13.6c0 6.9-5.6 12.5-12.5 12.5h-27.7c-6.9 0-12.5-5.6-12.5-12.5V37.5c0-6.9 5.7-12.5 12.5-12.5zm-77.6 0h27.7c6.9 0 12.5 5.6 12.5 12.5v13.6c0 6.9-5.6 12.5-12.5 12.5h-27.7c-6.9 0-12.5-5.6-12.5-12.5V37.5c0-6.9 5.6-12.5 12.5-12.5zm170.7 175.1c0 6.9-5.6 12.5-12.5 12.5H37.5c-6.9 0-12.5-5.6-12.5-12.5v-98.2c0-6.9 5.6-12.5 12.5-12.5h235.9c6.9 0 12.5 5.6 12.5 12.5v98.2z" - })), - save: _save__WEBPACK_IMPORTED_MODULE_3__["default"] -}); -}(); -/******/ })() -; -//# sourceMappingURL=index.js.map \ No newline at end of file +!function(){var e={184:function(e,t){var n;!function(){"use strict";var r={}.hasOwnProperty;function c(){for(var e=[],t=0;tl({label:e})}))),(0,e.createElement)("div",v,(0,e.createElement)("div",d)))},icon:(0,e.createElement)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 310.9 237.6"},(0,e.createElement)("path",{d:"M273.4 64.4h-17.8c1.6-4.1 2.4-8.6 2.4-13.3V37.5C258 16.8 241.2 0 220.5 0h-27.7c-9.6 0-18.4 3.6-25 9.6-6.6-6-15.4-9.6-25-9.6h-27.7c-9.6 0-18.4 3.6-25 9.6-6.6-6-15.4-9.6-25-9.6H37.5C16.8 0 0 16.8 0 37.5v13.6c0 9.8 3.8 18.7 9.9 25.4C3.8 83.2 0 92.1 0 101.9v98.2c0 20.7 16.8 37.5 37.5 37.5h235.9c20.7 0 37.5-16.8 37.5-37.5v-98.2c0-20.7-16.9-37.5-37.5-37.5zM192.8 25h27.7c6.9 0 12.5 5.6 12.5 12.5v13.6c0 6.9-5.6 12.5-12.5 12.5h-27.7c-6.9 0-12.5-5.6-12.5-12.5V37.5c0-6.9 5.7-12.5 12.5-12.5zm-77.6 0h27.7c6.9 0 12.5 5.6 12.5 12.5v13.6c0 6.9-5.6 12.5-12.5 12.5h-27.7c-6.9 0-12.5-5.6-12.5-12.5V37.5c0-6.9 5.6-12.5 12.5-12.5zm170.7 175.1c0 6.9-5.6 12.5-12.5 12.5H37.5c-6.9 0-12.5-5.6-12.5-12.5v-98.2c0-6.9 5.6-12.5 12.5-12.5h235.9c6.9 0 12.5 5.6 12.5 12.5v98.2z"})),save:function(t){let{attributes:n}=t;const{index:r}=n;return(0,e.createElement)("div",o.useBlockProps.save({tabId:r}),(0,e.createElement)(o.InnerBlocks.Content,null))}})}()}(); \ No newline at end of file diff --git a/build/tab/index.js.map b/build/tab/index.js.map deleted file mode 100644 index 1840ebc..0000000 --- a/build/tab/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"tab/index.js","mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAEe,SAASO,IAAT,OAA2E;AAAA,MAA7D;AAAEC,IAAAA,UAAF;AAAcC,IAAAA,aAAd;AAA6BC,IAAAA,SAA7B;AAAwCC,IAAAA,QAAxC;AAAkDC,IAAAA;AAAlD,GAA6D;AACzF,QAAM;AACLC,IAAAA,KADK;AAELC,IAAAA;AAFK,MAGFN,UAHJ;AAKA,QAAMO,UAAU,GAAGV,sEAAa,CAAE;AACjCW,IAAAA,KAAK,EAAEH,KAD0B;AAEjCI,IAAAA,KAAK,EAAE;AACN,iBAAWN,QAAQ,KAAKC,OAAO,CAAC,2BAAD,CAApB,GAAoD,OAApD,GAA8D;AADnE;AAF0B,GAAF,CAAhC;AAOA,QAAMM,gBAAgB,GAAGd,4EAAmB,CAAEW,UAAF,EAAc,EAAd,CAA5C;AAIA,SACC,kIACC,kEAAC,sEAAD,QACC,kEAAC,4DAAD,QACC,kEAAC,8DAAD;AACC,SAAK,EAAGd,mDAAE,CAAE,WAAF,CADX;AAEC,SAAK,EAAGa,KAFT;AAGC,YAAQ,EAAKK,KAAF,IAAaV,aAAa,CAAE;AAAEK,MAAAA,KAAK,EAAEK;AAAT,KAAF;AAHtC,IADD,CADD,CADD,EAUC,yEAASJ,UAAT,EACC,yEAAUG,gBAAV,CADD,CAVD,CADD;AAgBA;;;;;;;;;;;;;;;;;;;;;AC3CD;AACA;AACA;AACA;AAEe,SAASG,IAAT,OAAgC;AAAA,MAAjB;AAAEb,IAAAA;AAAF,GAAiB;AAC9C,QAAM;AAAEK,IAAAA;AAAF,MAAYL,UAAlB;AAEA,SACC,yEAAUH,uEAAA,CAAoB;AAAEW,IAAAA,KAAK,EAAEH;AAAT,GAApB,CAAV,EACC,kEAAC,wEAAD,OADD,CADD;AAKA;;;;;;;;;;ACbD;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,gBAAgB;;AAEhB;AACA;;AAEA,kBAAkB,sBAAsB;AACxC;AACA;;AAEA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;;AAEA;AACA;;AAEA,KAAK,KAA6B;AAClC;AACA;AACA,GAAG,SAAS,IAA4E;AACxF;AACA,EAAE,iCAAqB,EAAE,mCAAE;AAC3B;AACA,GAAG;AAAA,kGAAC;AACJ,GAAG,KAAK,EAEN;AACF,CAAC;;;;;;;;;;;;;ACzDD;;;;;;;;;;;;ACAA;;;;;;;;;;;ACAA;;;;;;;;;;;ACAA;;;;;;;;;;;ACAA;;;;;;;;;;;ACAA;;;;;;UCAA;UACA;;UAEA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;;UAEA;UACA;;UAEA;UACA;UACA;;;;;WCtBA;WACA;WACA;WACA,eAAe,4BAA4B;WAC3C,eAAe;WACf,iCAAiC,WAAW;WAC5C;WACA;;;;;WCPA;WACA;WACA;WACA;WACA,yCAAyC,wCAAwC;WACjF;WACA;WACA;;;;;WCPA,8CAA8C;;;;;WCA9C;WACA;WACA;WACA,uDAAuD,iBAAiB;WACxE;WACA,gDAAgD,aAAa;WAC7D;;;;;;;;;;;;;;;;;;;ACNA;AAEA;AACA;AACA;;AACA;AACA;AAEAS,oEAAiB,CAAE,gBAAF,EAAoB;AACpCC,EAAAA,IAAI,EAAEhB,6CAD8B;AAEpCiB,EAAAA,IAAI,EAAE;AAAK,SAAK,EAAC,4BAAX;AAAwC,WAAO,EAAC;AAAhD,KAAkE;AAAM,KAAC,EAAC;AAAR,IAAlE,CAF8B;AAGpCH,EAAAA,IAAIA,+CAAAA;AAHgC,CAApB,CAAjB,C","sources":["webpack://simple-tabs-block/./src/tab/edit.js","webpack://simple-tabs-block/./src/tab/save.js","webpack://simple-tabs-block/./node_modules/classnames/index.js","webpack://simple-tabs-block/./src/tab/editor.scss","webpack://simple-tabs-block/external window [\"wp\",\"blockEditor\"]","webpack://simple-tabs-block/external window [\"wp\",\"blocks\"]","webpack://simple-tabs-block/external window [\"wp\",\"components\"]","webpack://simple-tabs-block/external window [\"wp\",\"element\"]","webpack://simple-tabs-block/external window [\"wp\",\"i18n\"]","webpack://simple-tabs-block/webpack/bootstrap","webpack://simple-tabs-block/webpack/runtime/compat get default export","webpack://simple-tabs-block/webpack/runtime/define property getters","webpack://simple-tabs-block/webpack/runtime/hasOwnProperty shorthand","webpack://simple-tabs-block/webpack/runtime/make namespace object","webpack://simple-tabs-block/./src/tab/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\nimport { __ } from '@wordpress/i18n';\nimport { PanelBody, TextControl } from '@wordpress/components';\nimport { useInnerBlocksProps, useBlockProps, InspectorControls } from '@wordpress/block-editor';\nimport './editor.scss';\n\nexport default function Edit({ attributes, setAttributes, className, clientId, context }) {\n\tconst {\n\t\tindex,\n\t\tlabel\n\t} = attributes;\n\n\tconst blockProps = useBlockProps( {\n\t\ttabId: index,\n\t\tstyle: {\n\t\t\t'display': clientId === context['cloudcatch/tabs/activeTab'] ? 'block' : 'none'\n\t\t}\n\t} );\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\n\t} );\n\n\treturn (\n\t\t<>\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t setAttributes( { label: value } ) }\n\t\t\t\t\t/>\n\t\t\t\t\n\t\t\t\n\t\t\t
\n\t\t\t\t
\n\t\t\t
\n\t\t\n\t);\n}\n","/**\n * WordPress dependencies\n */\nimport { InnerBlocks, useBlockProps } from '@wordpress/block-editor';\n\nexport default function save( { attributes } ) {\n\tconst { index } = attributes;\n\n\treturn (\n\t\t
\n\t\t\t\n\t\t
\n\t);\n}\n","/*!\n Copyright (c) 2018 Jed Watson.\n Licensed under the MIT License (MIT), see\n http://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames() {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg)) {\n\t\t\t\tif (arg.length) {\n\t\t\t\t\tvar inner = classNames.apply(null, arg);\n\t\t\t\t\tif (inner) {\n\t\t\t\t\t\tclasses.push(inner);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tif (arg.toString === Object.prototype.toString) {\n\t\t\t\t\tfor (var key in arg) {\n\t\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tclasses.push(arg.toString());\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","// extracted by mini-css-extract-plugin\nexport {};","module.exports = window[\"wp\"][\"blockEditor\"];","module.exports = window[\"wp\"][\"blocks\"];","module.exports = window[\"wp\"][\"components\"];","module.exports = window[\"wp\"][\"element\"];","module.exports = window[\"wp\"][\"i18n\"];","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","import { registerBlockType } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport Edit from './edit';\nimport save from './save';\n\nregisterBlockType( 'cloudcatch/tab', {\n\tedit: Edit,\n\ticon: ,\n\tsave,\n} );\n"],"names":["classnames","__","PanelBody","TextControl","useInnerBlocksProps","useBlockProps","InspectorControls","Edit","attributes","setAttributes","className","clientId","context","index","label","blockProps","tabId","style","innerBlocksProps","value","InnerBlocks","save","registerBlockType","edit","icon"],"sourceRoot":""} \ No newline at end of file diff --git a/build/tabs/block.json b/build/tabs/block.json index 86d2a95..e092013 100644 --- a/build/tabs/block.json +++ b/build/tabs/block.json @@ -2,7 +2,7 @@ "$schema": "https://schemas.wp.org/trunk/block.json", "apiVersion": 2, "name": "cloudcatch/tabs", - "version": "1.0.0", + "version": "0.0.0-development", "title": "Tabs", "category": "design", "icon": "smiley", diff --git a/build/tabs/index.asset.php b/build/tabs/index.asset.php index c10db71..71fc5b5 100644 --- a/build/tabs/index.asset.php +++ b/build/tabs/index.asset.php @@ -1 +1 @@ - array('wp-block-editor', 'wp-blocks', 'wp-components', 'wp-compose', 'wp-core-data', 'wp-data', 'wp-element', 'wp-i18n'), 'version' => '06b2ed46bd4c9c69cfb6c151e67c9ee9'); \ No newline at end of file + array('wp-block-editor', 'wp-blocks', 'wp-components', 'wp-compose', 'wp-core-data', 'wp-data', 'wp-element', 'wp-i18n'), 'version' => '741497ee37277d3a9fca2528fc0c37d1'); \ No newline at end of file diff --git a/build/tabs/index.css b/build/tabs/index.css index 9c53632..236786b 100644 --- a/build/tabs/index.css +++ b/build/tabs/index.css @@ -1,82 +1 @@ -/*!*********************************************************************************************************************************************************************************************************************************************!*\ - !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[3].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[3].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[3].use[3]!./src/tabs/editor.scss ***! - \*********************************************************************************************************************************************************************************************************************************************/ -.editor-styles-wrapper :root { - --cloudcatch-tabs-row-gap: var(--wp--style--block-gap, 2em); - --cloudcatch-tabs-column-gap: var(--wp--style--block-gap, 2em); -} -.editor-styles-wrapper .wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper { - display: flex; - flex-direction: column; - row-gap: var(--cloudcatch-tabs-row-gap); - -moz-column-gap: var(--cloudcatch-tabs-column-gap); - column-gap: var(--cloudcatch-tabs-column-gap); - justify-content: normal; - align-items: normal; -} -.editor-styles-wrapper .wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper .wp-block-cloudcatch-tabs__tabs { - display: flex; - row-gap: var(--cloudcatch-tabs-row-gap); - -moz-column-gap: var(--cloudcatch-tabs-column-gap); - column-gap: var(--cloudcatch-tabs-column-gap); - align-items: center; -} -.editor-styles-wrapper .wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper .wp-block-cloudcatch-tabs__tabs .wp-block-cloudcatch-tab__label { - cursor: pointer; - font-weight: inherit; -} -.editor-styles-wrapper .wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper .wp-block-cloudcatch-tabs__tabs .wp-block-cloudcatch-tab__label.active { - font-weight: bold; -} -.editor-styles-wrapper .wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper .wp-block-cloudcatch-tabs__container { - flex: 1; -} -.editor-styles-wrapper .wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper .wp-block-cloudcatch-tabs__container .wp-block-cloudcatch-tab { - display: none; - margin: 0; -} -.editor-styles-wrapper .wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper .wp-block-cloudcatch-tabs__container .wp-block-cloudcatch-tab .block-list-appender { - width: 100%; -} -.editor-styles-wrapper .wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.items-justified-right .wp-block-cloudcatch-tabs__tabs { - justify-content: flex-end; -} -.editor-styles-wrapper .wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.items-justified-space-between .wp-block-cloudcatch-tabs__tabs { - justify-content: space-between; -} -.editor-styles-wrapper .wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.items-justified-left .wp-block-cloudcatch-tabs__tabs { - justify-content: flex-start; -} -.editor-styles-wrapper .wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.items-justified-center .wp-block-cloudcatch-tabs__tabs { - justify-content: center; -} -.editor-styles-wrapper .wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.is-vertical { - flex-direction: row; -} -.editor-styles-wrapper .wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.is-vertical .wp-block-cloudcatch-tabs__tabs { - flex-direction: column; - align-items: normal; -} -.editor-styles-wrapper .wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.is-vertical.items-justified-right .wp-block-cloudcatch-tabs__tabs { - align-items: flex-end; -} -.editor-styles-wrapper .wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.is-vertical.items-justified-space-between .wp-block-cloudcatch-tabs__tabs { - align-items: center; -} -.editor-styles-wrapper .wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.is-vertical.items-justified-left .wp-block-cloudcatch-tabs__tabs { - align-items: flex-start; -} -.editor-styles-wrapper .wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.is-vertical.items-justified-center .wp-block-cloudcatch-tabs__tabs { - align-items: center; -} -.editor-styles-wrapper .wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.is-vertical .wp-block-cloudcatch-tabs__container { - flex-direction: column; -} -.editor-styles-wrapper .wp-block-cloudcatch-tabs .wp-block-cloudcatch-tabs__tabs-wrapper { - margin: 0 0 3em; -} -.editor-styles-wrapper .wp-block-cloudcatch-tabs .wp-block-cloudcatch-tabs__tabs .block-editor-button-block-appender { - width: 36px; -} - -/*# sourceMappingURL=index.css.map*/ \ No newline at end of file +.editor-styles-wrapper :root{--cloudcatch-tabs-row-gap:var(--wp--style--block-gap,2em);--cloudcatch-tabs-column-gap:var(--wp--style--block-gap,2em)}.editor-styles-wrapper .wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper{align-items:normal;-moz-column-gap:var(--cloudcatch-tabs-column-gap);column-gap:var(--cloudcatch-tabs-column-gap);display:flex;flex-direction:column;justify-content:normal;row-gap:var(--cloudcatch-tabs-row-gap)}.editor-styles-wrapper .wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper .wp-block-cloudcatch-tabs__tabs{align-items:center;-moz-column-gap:var(--cloudcatch-tabs-column-gap);column-gap:var(--cloudcatch-tabs-column-gap);display:flex;row-gap:var(--cloudcatch-tabs-row-gap)}.editor-styles-wrapper .wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper .wp-block-cloudcatch-tabs__tabs .wp-block-cloudcatch-tab__label{cursor:pointer;font-weight:inherit}.editor-styles-wrapper .wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper .wp-block-cloudcatch-tabs__tabs .wp-block-cloudcatch-tab__label.active{font-weight:700}.editor-styles-wrapper .wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper .wp-block-cloudcatch-tabs__container{flex:1}.editor-styles-wrapper .wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper .wp-block-cloudcatch-tabs__container .wp-block-cloudcatch-tab{display:none;margin:0}.editor-styles-wrapper .wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper .wp-block-cloudcatch-tabs__container .wp-block-cloudcatch-tab .block-list-appender{width:100%}.editor-styles-wrapper .wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.items-justified-right .wp-block-cloudcatch-tabs__tabs{justify-content:flex-end}.editor-styles-wrapper .wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.items-justified-space-between .wp-block-cloudcatch-tabs__tabs{justify-content:space-between}.editor-styles-wrapper .wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.items-justified-left .wp-block-cloudcatch-tabs__tabs{justify-content:flex-start}.editor-styles-wrapper .wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.items-justified-center .wp-block-cloudcatch-tabs__tabs{justify-content:center}.editor-styles-wrapper .wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.is-vertical{flex-direction:row}.editor-styles-wrapper .wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.is-vertical .wp-block-cloudcatch-tabs__tabs{align-items:normal;flex-direction:column}.editor-styles-wrapper .wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.is-vertical.items-justified-right .wp-block-cloudcatch-tabs__tabs{align-items:flex-end}.editor-styles-wrapper .wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.is-vertical.items-justified-space-between .wp-block-cloudcatch-tabs__tabs{align-items:center}.editor-styles-wrapper .wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.is-vertical.items-justified-left .wp-block-cloudcatch-tabs__tabs{align-items:flex-start}.editor-styles-wrapper .wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.is-vertical.items-justified-center .wp-block-cloudcatch-tabs__tabs{align-items:center}.editor-styles-wrapper .wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.is-vertical .wp-block-cloudcatch-tabs__container{flex-direction:column}.editor-styles-wrapper .wp-block-cloudcatch-tabs .wp-block-cloudcatch-tabs__tabs-wrapper{margin:0 0 3em}.editor-styles-wrapper .wp-block-cloudcatch-tabs .wp-block-cloudcatch-tabs__tabs .block-editor-button-block-appender{width:36px} diff --git a/build/tabs/index.css.map b/build/tabs/index.css.map deleted file mode 100644 index 3275956..0000000 --- a/build/tabs/index.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"tabs/index.css","mappings":";;;AAAA;EACC;EACA;ACCD;ADEA;EACC;EACA;EACA;EACA;OAAA;EACA;EACA;ACAD;ADEC;EACC;EACA;EACA;OAAA;EACA;ACAF;ADEE;EACC;EACA;ACAH;ADEG;EACC;ACAJ;ADKC;EACC;ACHF;ADKE;EACC;EACA;ACHH;ADKG;EACC;ACHJ;ADQC;EACC;ACNF;ADSC;EACC;ACPF;ADUC;EACC;ACRF;ADWC;EACC;ACTF;ADYC;EACC;ACVF;ADYE;EACC;EACA;ACVH;ADaE;EACC;ACXH;ADcE;EACC;ACZH;ADeE;EACC;ACbH;ADgBE;EACC;ACdH;ADiBE;EACC;ACfH;AAhEE;EACC;AAkEH;AA9DG;EACC;AAgEJ,C","sources":["webpack://simple-tabs-block/./src/tabs/style.scss","webpack://simple-tabs-block/./src/tabs/editor.scss"],"sourcesContent":[":root {\n\t--cloudcatch-tabs-row-gap: var(--wp--style--block-gap, 2em);\n\t--cloudcatch-tabs-column-gap: var(--wp--style--block-gap, 2em);\n}\n\n.wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper {\n\tdisplay: flex;\n\tflex-direction: column;\n\trow-gap: var(--cloudcatch-tabs-row-gap);\n\tcolumn-gap: var(--cloudcatch-tabs-column-gap);\n\tjustify-content: normal;\n\talign-items: normal;\n\n\t.wp-block-cloudcatch-tabs__tabs {\n\t\tdisplay: flex;\n\t\trow-gap: var(--cloudcatch-tabs-row-gap);\n\t\tcolumn-gap: var(--cloudcatch-tabs-column-gap);\n\t\talign-items: center;\n\n\t\t.wp-block-cloudcatch-tab__label {\n\t\t\tcursor: pointer;\n\t\t\tfont-weight: inherit;\n\n\t\t\t&.active {\n\t\t\t\tfont-weight: bold;\n\t\t\t}\n\t\t}\n\t}\n\n\t.wp-block-cloudcatch-tabs__container {\n\t\tflex: 1;\n\n\t\t.wp-block-cloudcatch-tab {\n\t\t\tdisplay: none;\n\t\t\tmargin: 0;\n\n\t\t\t.block-list-appender {\n\t\t\t\twidth: 100%;\n\t\t\t}\n\t\t}\n\t}\n\n\t&.items-justified-right .wp-block-cloudcatch-tabs__tabs {\n\t\tjustify-content: flex-end;\n\t}\n\n\t&.items-justified-space-between .wp-block-cloudcatch-tabs__tabs {\n\t\tjustify-content: space-between;\n\t}\n\n\t&.items-justified-left .wp-block-cloudcatch-tabs__tabs {\n\t\tjustify-content: flex-start;\n\t}\n\n\t&.items-justified-center .wp-block-cloudcatch-tabs__tabs {\n\t\tjustify-content: center;\n\t}\n\n\t&.is-vertical {\n\t\tflex-direction: row;\n\n\t\t.wp-block-cloudcatch-tabs__tabs {\n\t\t\tflex-direction: column;\n\t\t\talign-items: normal;\n\t\t}\n\n\t\t&.items-justified-right .wp-block-cloudcatch-tabs__tabs {\n\t\t\talign-items: flex-end;\n\t\t}\n\t\n\t\t&.items-justified-space-between .wp-block-cloudcatch-tabs__tabs {\n\t\t\talign-items: center;\n\t\t}\n\t\n\t\t&.items-justified-left .wp-block-cloudcatch-tabs__tabs {\n\t\t\talign-items: flex-start;\n\t\t}\n\t\n\t\t&.items-justified-center .wp-block-cloudcatch-tabs__tabs {\n\t\t\talign-items: center;\n\t\t}\n\n\t\t.wp-block-cloudcatch-tabs__container {\n\t\t\tflex-direction: column;\n\t\t}\n\t}\n\n\t\n}\n",".editor-styles-wrapper {\n\t@import \"style\";\n\n\t.wp-block-cloudcatch-tabs {\n\t\t.wp-block-cloudcatch-tabs__tabs-wrapper {\n\t\t\tmargin: 0 0 3em;\n\t\t}\n\n\t\t.wp-block-cloudcatch-tabs__tabs {\n\t\t\t.block-editor-button-block-appender {\n\t\t\t\twidth: 36px;\n\t\t\t}\n\t\t}\n\t}\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/build/tabs/index.js b/build/tabs/index.js index 8f47387..67b1222 100644 --- a/build/tabs/index.js +++ b/build/tabs/index.js @@ -1,1497 +1 @@ -/******/ (function() { // webpackBootstrap -/******/ var __webpack_modules__ = ({ - -/***/ "./src/tabs/edit.js": -/*!**************************!*\ - !*** ./src/tabs/edit.js ***! - \**************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @wordpress/element */ "@wordpress/element"); -/* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"); -/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var lodash_times__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! lodash/times */ "./node_modules/lodash/times.js"); -/* harmony import */ var lodash_times__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(lodash_times__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var nanoid__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! nanoid */ "./node_modules/nanoid/index.browser.js"); -/* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n"); -/* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _wordpress_block_editor__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @wordpress/block-editor */ "@wordpress/block-editor"); -/* harmony import */ var _wordpress_block_editor__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_wordpress_block_editor__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _wordpress_components__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @wordpress/components */ "@wordpress/components"); -/* harmony import */ var _wordpress_components__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_wordpress_components__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var _wordpress_data__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @wordpress/data */ "@wordpress/data"); -/* harmony import */ var _wordpress_data__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_wordpress_data__WEBPACK_IMPORTED_MODULE_6__); -/* harmony import */ var _wordpress_compose__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @wordpress/compose */ "@wordpress/compose"); -/* harmony import */ var _wordpress_compose__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(_wordpress_compose__WEBPACK_IMPORTED_MODULE_7__); -/* harmony import */ var _editor_scss__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./editor.scss */ "./src/tabs/editor.scss"); -/* harmony import */ var _edit_inner_blocks__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./edit/inner-blocks */ "./src/tabs/edit/inner-blocks.js"); - - -/** - * External dependencies - */ - - - - - - - - - - - - -function Edit(_ref) { - let { - attributes, - setAttributes, - className, - innerBlocks, - clientId, - updateActiveTab, - selectBlock, - resetTabOrder - } = _ref; - const nanoid = (0,nanoid__WEBPACK_IMPORTED_MODULE_10__.customAlphabet)('1234567890abcdef', 10); - const { - uuid = nanoid(), - activeTab, - defaultTab, - tabs, - layout: { - justifyContent, - orientation = 'horizontal', - flexWrap = 'wrap' - } = {} - } = attributes; - const { - updateBlockAttributes - } = (0,_wordpress_data__WEBPACK_IMPORTED_MODULE_6__.useDispatch)(_wordpress_block_editor__WEBPACK_IMPORTED_MODULE_4__.store); - (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => { - resetTabOrder(); - }, [innerBlocks]); - const tabsRef = (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.useRef)(); - const blockProps = (0,_wordpress_block_editor__WEBPACK_IMPORTED_MODULE_4__.useBlockProps)({ - ref: tabsRef, - className: classnames__WEBPACK_IMPORTED_MODULE_1___default()(className, 'wp-block-cloudcatch-tabs__wrapper', { - 'items-justified-right': justifyContent === 'right', - 'items-justified-space-between': justifyContent === 'space-between', - 'items-justified-left': justifyContent === 'left', - 'items-justified-center': justifyContent === 'center', - 'is-vertical': orientation === 'vertical', - 'no-wrap': flexWrap === 'nowrap' - }) - }); - - const changeTab = tab => { - updateActiveTab(tab); - }; - - return (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.Fragment, null, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_block_editor__WEBPACK_IMPORTED_MODULE_4__.InspectorControls, null, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_components__WEBPACK_IMPORTED_MODULE_5__.PanelBody, null, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_components__WEBPACK_IMPORTED_MODULE_5__.SelectControl, { - label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_3__.__)('Default open tab'), - value: defaultTab, - options: tabs.map((tab, index) => { - return { - value: index, - label: tab.label - }; - }), - onChange: value => setAttributes({ - defaultTab: parseInt(value) - }) - }))), (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", blockProps, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", { - className: "wp-block-cloudcatch-tabs__tabs-wrapper" - }, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", { - className: "wp-block-cloudcatch-tabs__tabs", - role: "tablist", - "aria-orientation": orientation - }, tabs.map((innerBlock, key) => { - var _innerBlock$label; - - return (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_block_editor__WEBPACK_IMPORTED_MODULE_4__.RichText, { - "aria-label": (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_3__.__)('Title'), - placeholder: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_3__.__)('Add text…'), - value: (_innerBlock$label = innerBlock.label) !== null && _innerBlock$label !== void 0 ? _innerBlock$label : (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_3__.__)('Title'), - onChange: value => { - updateBlockAttributes(innerBlock.clientId, { - label: value - }); - }, - key: key, - role: "tab" // aria-controls={ uuid + '-tab' } - , - tabid: key, - tabIndex: "0", - withoutInteractiveFormatting: true, - identifier: "label", - className: classnames__WEBPACK_IMPORTED_MODULE_1___default()('wp-block-cloudcatch-tab__label', { - 'active': activeTab === innerBlock.clientId - }), - unstableOnFocus: e => changeTab(innerBlock.clientId) - }); - }), (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_block_editor__WEBPACK_IMPORTED_MODULE_4__.InnerBlocks.ButtonBlockAppender, null))), (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_edit_inner_blocks__WEBPACK_IMPORTED_MODULE_9__["default"], null))); -} - -/* harmony default export */ __webpack_exports__["default"] = ((0,_wordpress_compose__WEBPACK_IMPORTED_MODULE_7__.compose)((0,_wordpress_data__WEBPACK_IMPORTED_MODULE_6__.withSelect)((select, _ref2) => { - let { - clientId - } = _ref2; - return { - innerBlocks: select('core/block-editor').getBlocks(clientId) - }; -}), (0,_wordpress_data__WEBPACK_IMPORTED_MODULE_6__.withDispatch)((dispatch, _ref3, _ref4) => { - let { - clientId - } = _ref3; - let { - select - } = _ref4; - const { - getBlock - } = select('core/block-editor'); - const { - updateBlockAttributes, - moveBlockToPosition - } = dispatch('core/block-editor'); - const block = getBlock(clientId); - const { - selectBlock - } = dispatch(_wordpress_block_editor__WEBPACK_IMPORTED_MODULE_4__.store); - return { - selectBlock(clientId) { - selectBlock(clientId); - }, - - resetTabOrder() { - let tabs = []; - lodash_times__WEBPACK_IMPORTED_MODULE_2___default()(block.innerBlocks.length, n => { - updateBlockAttributes(block.innerBlocks[n].clientId, { - index: n - }); - tabs.push({ - "clientId": block.innerBlocks[n].clientId, - "label": block.innerBlocks[n].attributes.label - }); - }); - updateBlockAttributes(clientId, { - tabs: tabs - }); - }, - - updateActiveTab(activeTab) { - updateBlockAttributes(block.clientId, { - activeTab: activeTab - }); - lodash_times__WEBPACK_IMPORTED_MODULE_2___default()(block.innerBlocks.length, n => { - updateBlockAttributes(block.innerBlocks[n].clientId, { - activeTab: activeTab - }); - }); - selectBlock(activeTab); - }, - - moveTab(tabId, newIndex) { - moveBlockToPosition(tabId, clientId, clientId, parseInt(newIndex)); - } - - }; -}))(Edit)); - -/***/ }), - -/***/ "./src/tabs/edit/inner-blocks.js": -/*!***************************************!*\ - !*** ./src/tabs/edit/inner-blocks.js ***! - \***************************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": function() { return /* binding */ TabsInnerBlocks; } -/* harmony export */ }); -/* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @wordpress/element */ "@wordpress/element"); -/* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _wordpress_core_data__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @wordpress/core-data */ "@wordpress/core-data"); -/* harmony import */ var _wordpress_core_data__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_core_data__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _wordpress_block_editor__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @wordpress/block-editor */ "@wordpress/block-editor"); -/* harmony import */ var _wordpress_block_editor__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_wordpress_block_editor__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _wordpress_data__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @wordpress/data */ "@wordpress/data"); -/* harmony import */ var _wordpress_data__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_wordpress_data__WEBPACK_IMPORTED_MODULE_3__); - - -/** - * WordPress dependencies - */ - - - - -const ALLOWED_BLOCKS = ['cloudcatch/tab']; -const DEFAULT_BLOCK = { - name: 'cloudcatch/tab' -}; -const LAYOUT = { - type: 'default', - alignments: [] -}; -function TabsInnerBlocks(_ref) { - let { - clientId, - orientation - } = _ref; - const { - selectedBlockId - } = (0,_wordpress_data__WEBPACK_IMPORTED_MODULE_3__.useSelect)(select => { - const { - getSelectedBlockClientId - } = select(_wordpress_block_editor__WEBPACK_IMPORTED_MODULE_2__.store); - const selectedBlockId = getSelectedBlockClientId(); - return { - selectedBlockId: selectedBlockId - }; - }, [clientId]); - const innerBlocksProps = (0,_wordpress_block_editor__WEBPACK_IMPORTED_MODULE_2__.useInnerBlocksProps)({ - className: 'wp-block-cloudcatch-tabs__container' - }, { - allowedBlocks: ALLOWED_BLOCKS, - __experimentalDefaultBlock: DEFAULT_BLOCK, - __experimentalDirectInsert: true, - orientation, - template: [['cloudcatch/tab'], ['cloudcatch/tab'], ['cloudcatch/tab']], - templateLock: false, - __experimentalLayout: LAYOUT - }); - return (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", innerBlocksProps); -} - -/***/ }), - -/***/ "./src/tabs/index.js": -/*!***************************!*\ - !*** ./src/tabs/index.js ***! - \***************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @wordpress/element */ "@wordpress/element"); -/* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _wordpress_blocks__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @wordpress/blocks */ "@wordpress/blocks"); -/* harmony import */ var _wordpress_blocks__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_blocks__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _style_scss__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./style.scss */ "./src/tabs/style.scss"); -/* harmony import */ var _edit__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./edit */ "./src/tabs/edit.js"); -/* harmony import */ var _save__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./save */ "./src/tabs/save.js"); - - - -/** - * Internal dependencies - */ - - - -(0,_wordpress_blocks__WEBPACK_IMPORTED_MODULE_1__.registerBlockType)('cloudcatch/tabs', { - edit: _edit__WEBPACK_IMPORTED_MODULE_3__["default"], - icon: (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("svg", { - xmlns: "http://www.w3.org/2000/svg", - viewBox: "0 0 310.9 237.6" - }, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("path", { - d: "M273.4 64.4h-17.8c1.6-4.1 2.4-8.6 2.4-13.3V37.5C258 16.8 241.2 0 220.5 0h-27.7c-9.6 0-18.4 3.6-25 9.6-6.6-6-15.4-9.6-25-9.6h-27.7c-9.6 0-18.4 3.6-25 9.6-6.6-6-15.4-9.6-25-9.6H37.5C16.8 0 0 16.8 0 37.5v13.6c0 9.8 3.8 18.7 9.9 25.4C3.8 83.2 0 92.1 0 101.9v98.2c0 20.7 16.8 37.5 37.5 37.5h235.9c20.7 0 37.5-16.8 37.5-37.5v-98.2c0-20.7-16.9-37.5-37.5-37.5zM192.8 25h27.7c6.9 0 12.5 5.6 12.5 12.5v13.6c0 6.9-5.6 12.5-12.5 12.5h-27.7c-6.9 0-12.5-5.6-12.5-12.5V37.5c0-6.9 5.7-12.5 12.5-12.5zm-77.6 0h27.7c6.9 0 12.5 5.6 12.5 12.5v13.6c0 6.9-5.6 12.5-12.5 12.5h-27.7c-6.9 0-12.5-5.6-12.5-12.5V37.5c0-6.9 5.6-12.5 12.5-12.5zm170.7 175.1c0 6.9-5.6 12.5-12.5 12.5H37.5c-6.9 0-12.5-5.6-12.5-12.5v-98.2c0-6.9 5.6-12.5 12.5-12.5h235.9c6.9 0 12.5 5.6 12.5 12.5v98.2z" - })), - save: _save__WEBPACK_IMPORTED_MODULE_4__["default"] -}); - -/***/ }), - -/***/ "./src/tabs/save.js": -/*!**************************!*\ - !*** ./src/tabs/save.js ***! - \**************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": function() { return /* binding */ save; } -/* harmony export */ }); -/* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @wordpress/element */ "@wordpress/element"); -/* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"); -/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n"); -/* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var _wordpress_block_editor__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @wordpress/block-editor */ "@wordpress/block-editor"); -/* harmony import */ var _wordpress_block_editor__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_wordpress_block_editor__WEBPACK_IMPORTED_MODULE_3__); - - -/** - * External dependencies - */ - - - -function save(_ref) { - let { - attributes - } = _ref; - const { - uuid, - tabs, - defaultTab, - layout: { - justifyContent, - orientation = 'horizontal', - flexWrap = 'wrap' - } = {} - } = attributes; - const className = classnames__WEBPACK_IMPORTED_MODULE_1___default()('wp-block-cloudcatch-tabs__wrapper', { - 'items-justified-right': justifyContent === 'right', - 'items-justified-space-between': justifyContent === 'space-between', - 'items-justified-left': justifyContent === 'left', - 'items-justified-center': justifyContent === 'center', - 'is-vertical': orientation === 'vertical', - 'no-wrap': flexWrap === 'nowrap' - }); - return (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", _wordpress_block_editor__WEBPACK_IMPORTED_MODULE_3__.useBlockProps.save({ - className: className - }), (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", { - className: "wp-block-cloudcatch-tabs__tabs-wrapper" - }, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", { - className: "wp-block-cloudcatch-tabs__tabs", - role: "tablist", - "aria-orientation": orientation - }, tabs.map((innerBlock, key) => { - var _innerBlock$label; - - return (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_block_editor__WEBPACK_IMPORTED_MODULE_3__.RichText.Content, { - value: (_innerBlock$label = innerBlock.label) !== null && _innerBlock$label !== void 0 ? _innerBlock$label : (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_2__.__)('Title'), - tagName: "label", - tabIndex: "0", - role: "tab", - key: key, - tabid: key, - className: classnames__WEBPACK_IMPORTED_MODULE_1___default()('wp-block-cloudcatch-tab__label', { - 'active': key === defaultTab - }) - }); - }))), (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", _wordpress_block_editor__WEBPACK_IMPORTED_MODULE_3__.useInnerBlocksProps.save({ - className: 'wp-block-cloudcatch-tabs__container' - }))); -} - -/***/ }), - -/***/ "./node_modules/classnames/index.js": -/*!******************************************!*\ - !*** ./node_modules/classnames/index.js ***! - \******************************************/ -/***/ (function(module, exports) { - -var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*! - Copyright (c) 2018 Jed Watson. - Licensed under the MIT License (MIT), see - http://jedwatson.github.io/classnames -*/ -/* global define */ - -(function () { - 'use strict'; - - var hasOwn = {}.hasOwnProperty; - - function classNames() { - var classes = []; - - for (var i = 0; i < arguments.length; i++) { - var arg = arguments[i]; - if (!arg) continue; - - var argType = typeof arg; - - if (argType === 'string' || argType === 'number') { - classes.push(arg); - } else if (Array.isArray(arg)) { - if (arg.length) { - var inner = classNames.apply(null, arg); - if (inner) { - classes.push(inner); - } - } - } else if (argType === 'object') { - if (arg.toString === Object.prototype.toString) { - for (var key in arg) { - if (hasOwn.call(arg, key) && arg[key]) { - classes.push(key); - } - } - } else { - classes.push(arg.toString()); - } - } - } - - return classes.join(' '); - } - - if ( true && module.exports) { - classNames.default = classNames; - module.exports = classNames; - } else if (true) { - // register as 'classnames', consistent with npm package name - !(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_RESULT__ = (function () { - return classNames; - }).apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__), - __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); - } else {} -}()); - - -/***/ }), - -/***/ "./node_modules/lodash/_Symbol.js": -/*!****************************************!*\ - !*** ./node_modules/lodash/_Symbol.js ***! - \****************************************/ -/***/ (function(module, __unused_webpack_exports, __webpack_require__) { - -var root = __webpack_require__(/*! ./_root */ "./node_modules/lodash/_root.js"); - -/** Built-in value references. */ -var Symbol = root.Symbol; - -module.exports = Symbol; - - -/***/ }), - -/***/ "./node_modules/lodash/_baseGetTag.js": -/*!********************************************!*\ - !*** ./node_modules/lodash/_baseGetTag.js ***! - \********************************************/ -/***/ (function(module, __unused_webpack_exports, __webpack_require__) { - -var Symbol = __webpack_require__(/*! ./_Symbol */ "./node_modules/lodash/_Symbol.js"), - getRawTag = __webpack_require__(/*! ./_getRawTag */ "./node_modules/lodash/_getRawTag.js"), - objectToString = __webpack_require__(/*! ./_objectToString */ "./node_modules/lodash/_objectToString.js"); - -/** `Object#toString` result references. */ -var nullTag = '[object Null]', - undefinedTag = '[object Undefined]'; - -/** Built-in value references. */ -var symToStringTag = Symbol ? Symbol.toStringTag : undefined; - -/** - * The base implementation of `getTag` without fallbacks for buggy environments. - * - * @private - * @param {*} value The value to query. - * @returns {string} Returns the `toStringTag`. - */ -function baseGetTag(value) { - if (value == null) { - return value === undefined ? undefinedTag : nullTag; - } - return (symToStringTag && symToStringTag in Object(value)) - ? getRawTag(value) - : objectToString(value); -} - -module.exports = baseGetTag; - - -/***/ }), - -/***/ "./node_modules/lodash/_baseTimes.js": -/*!*******************************************!*\ - !*** ./node_modules/lodash/_baseTimes.js ***! - \*******************************************/ -/***/ (function(module) { - -/** - * The base implementation of `_.times` without support for iteratee shorthands - * or max array length checks. - * - * @private - * @param {number} n The number of times to invoke `iteratee`. - * @param {Function} iteratee The function invoked per iteration. - * @returns {Array} Returns the array of results. - */ -function baseTimes(n, iteratee) { - var index = -1, - result = Array(n); - - while (++index < n) { - result[index] = iteratee(index); - } - return result; -} - -module.exports = baseTimes; - - -/***/ }), - -/***/ "./node_modules/lodash/_baseTrim.js": -/*!******************************************!*\ - !*** ./node_modules/lodash/_baseTrim.js ***! - \******************************************/ -/***/ (function(module, __unused_webpack_exports, __webpack_require__) { - -var trimmedEndIndex = __webpack_require__(/*! ./_trimmedEndIndex */ "./node_modules/lodash/_trimmedEndIndex.js"); - -/** Used to match leading whitespace. */ -var reTrimStart = /^\s+/; - -/** - * The base implementation of `_.trim`. - * - * @private - * @param {string} string The string to trim. - * @returns {string} Returns the trimmed string. - */ -function baseTrim(string) { - return string - ? string.slice(0, trimmedEndIndex(string) + 1).replace(reTrimStart, '') - : string; -} - -module.exports = baseTrim; - - -/***/ }), - -/***/ "./node_modules/lodash/_castFunction.js": -/*!**********************************************!*\ - !*** ./node_modules/lodash/_castFunction.js ***! - \**********************************************/ -/***/ (function(module, __unused_webpack_exports, __webpack_require__) { - -var identity = __webpack_require__(/*! ./identity */ "./node_modules/lodash/identity.js"); - -/** - * Casts `value` to `identity` if it's not a function. - * - * @private - * @param {*} value The value to inspect. - * @returns {Function} Returns cast function. - */ -function castFunction(value) { - return typeof value == 'function' ? value : identity; -} - -module.exports = castFunction; - - -/***/ }), - -/***/ "./node_modules/lodash/_freeGlobal.js": -/*!********************************************!*\ - !*** ./node_modules/lodash/_freeGlobal.js ***! - \********************************************/ -/***/ (function(module, __unused_webpack_exports, __webpack_require__) { - -/** Detect free variable `global` from Node.js. */ -var freeGlobal = typeof __webpack_require__.g == 'object' && __webpack_require__.g && __webpack_require__.g.Object === Object && __webpack_require__.g; - -module.exports = freeGlobal; - - -/***/ }), - -/***/ "./node_modules/lodash/_getRawTag.js": -/*!*******************************************!*\ - !*** ./node_modules/lodash/_getRawTag.js ***! - \*******************************************/ -/***/ (function(module, __unused_webpack_exports, __webpack_require__) { - -var Symbol = __webpack_require__(/*! ./_Symbol */ "./node_modules/lodash/_Symbol.js"); - -/** Used for built-in method references. */ -var objectProto = Object.prototype; - -/** Used to check objects for own properties. */ -var hasOwnProperty = objectProto.hasOwnProperty; - -/** - * Used to resolve the - * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring) - * of values. - */ -var nativeObjectToString = objectProto.toString; - -/** Built-in value references. */ -var symToStringTag = Symbol ? Symbol.toStringTag : undefined; - -/** - * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values. - * - * @private - * @param {*} value The value to query. - * @returns {string} Returns the raw `toStringTag`. - */ -function getRawTag(value) { - var isOwn = hasOwnProperty.call(value, symToStringTag), - tag = value[symToStringTag]; - - try { - value[symToStringTag] = undefined; - var unmasked = true; - } catch (e) {} - - var result = nativeObjectToString.call(value); - if (unmasked) { - if (isOwn) { - value[symToStringTag] = tag; - } else { - delete value[symToStringTag]; - } - } - return result; -} - -module.exports = getRawTag; - - -/***/ }), - -/***/ "./node_modules/lodash/_objectToString.js": -/*!************************************************!*\ - !*** ./node_modules/lodash/_objectToString.js ***! - \************************************************/ -/***/ (function(module) { - -/** Used for built-in method references. */ -var objectProto = Object.prototype; - -/** - * Used to resolve the - * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring) - * of values. - */ -var nativeObjectToString = objectProto.toString; - -/** - * Converts `value` to a string using `Object.prototype.toString`. - * - * @private - * @param {*} value The value to convert. - * @returns {string} Returns the converted string. - */ -function objectToString(value) { - return nativeObjectToString.call(value); -} - -module.exports = objectToString; - - -/***/ }), - -/***/ "./node_modules/lodash/_root.js": -/*!**************************************!*\ - !*** ./node_modules/lodash/_root.js ***! - \**************************************/ -/***/ (function(module, __unused_webpack_exports, __webpack_require__) { - -var freeGlobal = __webpack_require__(/*! ./_freeGlobal */ "./node_modules/lodash/_freeGlobal.js"); - -/** Detect free variable `self`. */ -var freeSelf = typeof self == 'object' && self && self.Object === Object && self; - -/** Used as a reference to the global object. */ -var root = freeGlobal || freeSelf || Function('return this')(); - -module.exports = root; - - -/***/ }), - -/***/ "./node_modules/lodash/_trimmedEndIndex.js": -/*!*************************************************!*\ - !*** ./node_modules/lodash/_trimmedEndIndex.js ***! - \*************************************************/ -/***/ (function(module) { - -/** Used to match a single whitespace character. */ -var reWhitespace = /\s/; - -/** - * Used by `_.trim` and `_.trimEnd` to get the index of the last non-whitespace - * character of `string`. - * - * @private - * @param {string} string The string to inspect. - * @returns {number} Returns the index of the last non-whitespace character. - */ -function trimmedEndIndex(string) { - var index = string.length; - - while (index-- && reWhitespace.test(string.charAt(index))) {} - return index; -} - -module.exports = trimmedEndIndex; - - -/***/ }), - -/***/ "./node_modules/lodash/identity.js": -/*!*****************************************!*\ - !*** ./node_modules/lodash/identity.js ***! - \*****************************************/ -/***/ (function(module) { - -/** - * This method returns the first argument it receives. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Util - * @param {*} value Any value. - * @returns {*} Returns `value`. - * @example - * - * var object = { 'a': 1 }; - * - * console.log(_.identity(object) === object); - * // => true - */ -function identity(value) { - return value; -} - -module.exports = identity; - - -/***/ }), - -/***/ "./node_modules/lodash/isObject.js": -/*!*****************************************!*\ - !*** ./node_modules/lodash/isObject.js ***! - \*****************************************/ -/***/ (function(module) { - -/** - * Checks if `value` is the - * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types) - * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`) - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an object, else `false`. - * @example - * - * _.isObject({}); - * // => true - * - * _.isObject([1, 2, 3]); - * // => true - * - * _.isObject(_.noop); - * // => true - * - * _.isObject(null); - * // => false - */ -function isObject(value) { - var type = typeof value; - return value != null && (type == 'object' || type == 'function'); -} - -module.exports = isObject; - - -/***/ }), - -/***/ "./node_modules/lodash/isObjectLike.js": -/*!*********************************************!*\ - !*** ./node_modules/lodash/isObjectLike.js ***! - \*********************************************/ -/***/ (function(module) { - -/** - * Checks if `value` is object-like. A value is object-like if it's not `null` - * and has a `typeof` result of "object". - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is object-like, else `false`. - * @example - * - * _.isObjectLike({}); - * // => true - * - * _.isObjectLike([1, 2, 3]); - * // => true - * - * _.isObjectLike(_.noop); - * // => false - * - * _.isObjectLike(null); - * // => false - */ -function isObjectLike(value) { - return value != null && typeof value == 'object'; -} - -module.exports = isObjectLike; - - -/***/ }), - -/***/ "./node_modules/lodash/isSymbol.js": -/*!*****************************************!*\ - !*** ./node_modules/lodash/isSymbol.js ***! - \*****************************************/ -/***/ (function(module, __unused_webpack_exports, __webpack_require__) { - -var baseGetTag = __webpack_require__(/*! ./_baseGetTag */ "./node_modules/lodash/_baseGetTag.js"), - isObjectLike = __webpack_require__(/*! ./isObjectLike */ "./node_modules/lodash/isObjectLike.js"); - -/** `Object#toString` result references. */ -var symbolTag = '[object Symbol]'; - -/** - * Checks if `value` is classified as a `Symbol` primitive or object. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a symbol, else `false`. - * @example - * - * _.isSymbol(Symbol.iterator); - * // => true - * - * _.isSymbol('abc'); - * // => false - */ -function isSymbol(value) { - return typeof value == 'symbol' || - (isObjectLike(value) && baseGetTag(value) == symbolTag); -} - -module.exports = isSymbol; - - -/***/ }), - -/***/ "./node_modules/lodash/times.js": -/*!**************************************!*\ - !*** ./node_modules/lodash/times.js ***! - \**************************************/ -/***/ (function(module, __unused_webpack_exports, __webpack_require__) { - -var baseTimes = __webpack_require__(/*! ./_baseTimes */ "./node_modules/lodash/_baseTimes.js"), - castFunction = __webpack_require__(/*! ./_castFunction */ "./node_modules/lodash/_castFunction.js"), - toInteger = __webpack_require__(/*! ./toInteger */ "./node_modules/lodash/toInteger.js"); - -/** Used as references for various `Number` constants. */ -var MAX_SAFE_INTEGER = 9007199254740991; - -/** Used as references for the maximum length and index of an array. */ -var MAX_ARRAY_LENGTH = 4294967295; - -/* Built-in method references for those with the same name as other `lodash` methods. */ -var nativeMin = Math.min; - -/** - * Invokes the iteratee `n` times, returning an array of the results of - * each invocation. The iteratee is invoked with one argument; (index). - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Util - * @param {number} n The number of times to invoke `iteratee`. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @returns {Array} Returns the array of results. - * @example - * - * _.times(3, String); - * // => ['0', '1', '2'] - * - * _.times(4, _.constant(0)); - * // => [0, 0, 0, 0] - */ -function times(n, iteratee) { - n = toInteger(n); - if (n < 1 || n > MAX_SAFE_INTEGER) { - return []; - } - var index = MAX_ARRAY_LENGTH, - length = nativeMin(n, MAX_ARRAY_LENGTH); - - iteratee = castFunction(iteratee); - n -= MAX_ARRAY_LENGTH; - - var result = baseTimes(length, iteratee); - while (++index < n) { - iteratee(index); - } - return result; -} - -module.exports = times; - - -/***/ }), - -/***/ "./node_modules/lodash/toFinite.js": -/*!*****************************************!*\ - !*** ./node_modules/lodash/toFinite.js ***! - \*****************************************/ -/***/ (function(module, __unused_webpack_exports, __webpack_require__) { - -var toNumber = __webpack_require__(/*! ./toNumber */ "./node_modules/lodash/toNumber.js"); - -/** Used as references for various `Number` constants. */ -var INFINITY = 1 / 0, - MAX_INTEGER = 1.7976931348623157e+308; - -/** - * Converts `value` to a finite number. - * - * @static - * @memberOf _ - * @since 4.12.0 - * @category Lang - * @param {*} value The value to convert. - * @returns {number} Returns the converted number. - * @example - * - * _.toFinite(3.2); - * // => 3.2 - * - * _.toFinite(Number.MIN_VALUE); - * // => 5e-324 - * - * _.toFinite(Infinity); - * // => 1.7976931348623157e+308 - * - * _.toFinite('3.2'); - * // => 3.2 - */ -function toFinite(value) { - if (!value) { - return value === 0 ? value : 0; - } - value = toNumber(value); - if (value === INFINITY || value === -INFINITY) { - var sign = (value < 0 ? -1 : 1); - return sign * MAX_INTEGER; - } - return value === value ? value : 0; -} - -module.exports = toFinite; - - -/***/ }), - -/***/ "./node_modules/lodash/toInteger.js": -/*!******************************************!*\ - !*** ./node_modules/lodash/toInteger.js ***! - \******************************************/ -/***/ (function(module, __unused_webpack_exports, __webpack_require__) { - -var toFinite = __webpack_require__(/*! ./toFinite */ "./node_modules/lodash/toFinite.js"); - -/** - * Converts `value` to an integer. - * - * **Note:** This method is loosely based on - * [`ToInteger`](http://www.ecma-international.org/ecma-262/7.0/#sec-tointeger). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to convert. - * @returns {number} Returns the converted integer. - * @example - * - * _.toInteger(3.2); - * // => 3 - * - * _.toInteger(Number.MIN_VALUE); - * // => 0 - * - * _.toInteger(Infinity); - * // => 1.7976931348623157e+308 - * - * _.toInteger('3.2'); - * // => 3 - */ -function toInteger(value) { - var result = toFinite(value), - remainder = result % 1; - - return result === result ? (remainder ? result - remainder : result) : 0; -} - -module.exports = toInteger; - - -/***/ }), - -/***/ "./node_modules/lodash/toNumber.js": -/*!*****************************************!*\ - !*** ./node_modules/lodash/toNumber.js ***! - \*****************************************/ -/***/ (function(module, __unused_webpack_exports, __webpack_require__) { - -var baseTrim = __webpack_require__(/*! ./_baseTrim */ "./node_modules/lodash/_baseTrim.js"), - isObject = __webpack_require__(/*! ./isObject */ "./node_modules/lodash/isObject.js"), - isSymbol = __webpack_require__(/*! ./isSymbol */ "./node_modules/lodash/isSymbol.js"); - -/** Used as references for various `Number` constants. */ -var NAN = 0 / 0; - -/** Used to detect bad signed hexadecimal string values. */ -var reIsBadHex = /^[-+]0x[0-9a-f]+$/i; - -/** Used to detect binary string values. */ -var reIsBinary = /^0b[01]+$/i; - -/** Used to detect octal string values. */ -var reIsOctal = /^0o[0-7]+$/i; - -/** Built-in method references without a dependency on `root`. */ -var freeParseInt = parseInt; - -/** - * Converts `value` to a number. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to process. - * @returns {number} Returns the number. - * @example - * - * _.toNumber(3.2); - * // => 3.2 - * - * _.toNumber(Number.MIN_VALUE); - * // => 5e-324 - * - * _.toNumber(Infinity); - * // => Infinity - * - * _.toNumber('3.2'); - * // => 3.2 - */ -function toNumber(value) { - if (typeof value == 'number') { - return value; - } - if (isSymbol(value)) { - return NAN; - } - if (isObject(value)) { - var other = typeof value.valueOf == 'function' ? value.valueOf() : value; - value = isObject(other) ? (other + '') : other; - } - if (typeof value != 'string') { - return value === 0 ? value : +value; - } - value = baseTrim(value); - var isBinary = reIsBinary.test(value); - return (isBinary || reIsOctal.test(value)) - ? freeParseInt(value.slice(2), isBinary ? 2 : 8) - : (reIsBadHex.test(value) ? NAN : +value); -} - -module.exports = toNumber; - - -/***/ }), - -/***/ "./src/tabs/editor.scss": -/*!******************************!*\ - !*** ./src/tabs/editor.scss ***! - \******************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -// extracted by mini-css-extract-plugin - - -/***/ }), - -/***/ "./src/tabs/style.scss": -/*!*****************************!*\ - !*** ./src/tabs/style.scss ***! - \*****************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -// extracted by mini-css-extract-plugin - - -/***/ }), - -/***/ "@wordpress/block-editor": -/*!*************************************!*\ - !*** external ["wp","blockEditor"] ***! - \*************************************/ -/***/ (function(module) { - -"use strict"; -module.exports = window["wp"]["blockEditor"]; - -/***/ }), - -/***/ "@wordpress/blocks": -/*!********************************!*\ - !*** external ["wp","blocks"] ***! - \********************************/ -/***/ (function(module) { - -"use strict"; -module.exports = window["wp"]["blocks"]; - -/***/ }), - -/***/ "@wordpress/components": -/*!************************************!*\ - !*** external ["wp","components"] ***! - \************************************/ -/***/ (function(module) { - -"use strict"; -module.exports = window["wp"]["components"]; - -/***/ }), - -/***/ "@wordpress/compose": -/*!*********************************!*\ - !*** external ["wp","compose"] ***! - \*********************************/ -/***/ (function(module) { - -"use strict"; -module.exports = window["wp"]["compose"]; - -/***/ }), - -/***/ "@wordpress/core-data": -/*!**********************************!*\ - !*** external ["wp","coreData"] ***! - \**********************************/ -/***/ (function(module) { - -"use strict"; -module.exports = window["wp"]["coreData"]; - -/***/ }), - -/***/ "@wordpress/data": -/*!******************************!*\ - !*** external ["wp","data"] ***! - \******************************/ -/***/ (function(module) { - -"use strict"; -module.exports = window["wp"]["data"]; - -/***/ }), - -/***/ "@wordpress/element": -/*!*********************************!*\ - !*** external ["wp","element"] ***! - \*********************************/ -/***/ (function(module) { - -"use strict"; -module.exports = window["wp"]["element"]; - -/***/ }), - -/***/ "@wordpress/i18n": -/*!******************************!*\ - !*** external ["wp","i18n"] ***! - \******************************/ -/***/ (function(module) { - -"use strict"; -module.exports = window["wp"]["i18n"]; - -/***/ }), - -/***/ "./node_modules/nanoid/index.browser.js": -/*!**********************************************!*\ - !*** ./node_modules/nanoid/index.browser.js ***! - \**********************************************/ -/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "customAlphabet": function() { return /* binding */ customAlphabet; }, -/* harmony export */ "customRandom": function() { return /* binding */ customRandom; }, -/* harmony export */ "nanoid": function() { return /* binding */ nanoid; }, -/* harmony export */ "random": function() { return /* binding */ random; }, -/* harmony export */ "urlAlphabet": function() { return /* reexport safe */ _url_alphabet_index_js__WEBPACK_IMPORTED_MODULE_0__.urlAlphabet; } -/* harmony export */ }); -/* harmony import */ var _url_alphabet_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./url-alphabet/index.js */ "./node_modules/nanoid/url-alphabet/index.js"); - -let random = bytes => crypto.getRandomValues(new Uint8Array(bytes)) -let customRandom = (alphabet, defaultSize, getRandom) => { - let mask = (2 << (Math.log(alphabet.length - 1) / Math.LN2)) - 1 - let step = -~((1.6 * mask * defaultSize) / alphabet.length) - return (size = defaultSize) => { - let id = '' - while (true) { - let bytes = getRandom(step) - let j = step - while (j--) { - id += alphabet[bytes[j] & mask] || '' - if (id.length === size) return id - } - } - } -} -let customAlphabet = (alphabet, size = 21) => - customRandom(alphabet, size, random) -let nanoid = (size = 21) => { - let id = '' - let bytes = crypto.getRandomValues(new Uint8Array(size)) - while (size--) { - let byte = bytes[size] & 63 - if (byte < 36) { - id += byte.toString(36) - } else if (byte < 62) { - id += (byte - 26).toString(36).toUpperCase() - } else if (byte < 63) { - id += '_' - } else { - id += '-' - } - } - return id -} - - - -/***/ }), - -/***/ "./node_modules/nanoid/url-alphabet/index.js": -/*!***************************************************!*\ - !*** ./node_modules/nanoid/url-alphabet/index.js ***! - \***************************************************/ -/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "urlAlphabet": function() { return /* binding */ urlAlphabet; } -/* harmony export */ }); -let urlAlphabet = - 'useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict' - - - -/***/ }) - -/******/ }); -/************************************************************************/ -/******/ // The module cache -/******/ var __webpack_module_cache__ = {}; -/******/ -/******/ // The require function -/******/ function __webpack_require__(moduleId) { -/******/ // Check if module is in cache -/******/ var cachedModule = __webpack_module_cache__[moduleId]; -/******/ if (cachedModule !== undefined) { -/******/ return cachedModule.exports; -/******/ } -/******/ // Create a new module (and put it into the cache) -/******/ var module = __webpack_module_cache__[moduleId] = { -/******/ // no module.id needed -/******/ // no module.loaded needed -/******/ exports: {} -/******/ }; -/******/ -/******/ // Execute the module function -/******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__); -/******/ -/******/ // Return the exports of the module -/******/ return module.exports; -/******/ } -/******/ -/******/ // expose the modules object (__webpack_modules__) -/******/ __webpack_require__.m = __webpack_modules__; -/******/ -/************************************************************************/ -/******/ /* webpack/runtime/chunk loaded */ -/******/ !function() { -/******/ var deferred = []; -/******/ __webpack_require__.O = function(result, chunkIds, fn, priority) { -/******/ if(chunkIds) { -/******/ priority = priority || 0; -/******/ for(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1]; -/******/ deferred[i] = [chunkIds, fn, priority]; -/******/ return; -/******/ } -/******/ var notFulfilled = Infinity; -/******/ for (var i = 0; i < deferred.length; i++) { -/******/ var chunkIds = deferred[i][0]; -/******/ var fn = deferred[i][1]; -/******/ var priority = deferred[i][2]; -/******/ var fulfilled = true; -/******/ for (var j = 0; j < chunkIds.length; j++) { -/******/ if ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) { -/******/ chunkIds.splice(j--, 1); -/******/ } else { -/******/ fulfilled = false; -/******/ if(priority < notFulfilled) notFulfilled = priority; -/******/ } -/******/ } -/******/ if(fulfilled) { -/******/ deferred.splice(i--, 1) -/******/ var r = fn(); -/******/ if (r !== undefined) result = r; -/******/ } -/******/ } -/******/ return result; -/******/ }; -/******/ }(); -/******/ -/******/ /* webpack/runtime/compat get default export */ -/******/ !function() { -/******/ // getDefaultExport function for compatibility with non-harmony modules -/******/ __webpack_require__.n = function(module) { -/******/ var getter = module && module.__esModule ? -/******/ function() { return module['default']; } : -/******/ function() { return module; }; -/******/ __webpack_require__.d(getter, { a: getter }); -/******/ return getter; -/******/ }; -/******/ }(); -/******/ -/******/ /* webpack/runtime/define property getters */ -/******/ !function() { -/******/ // define getter functions for harmony exports -/******/ __webpack_require__.d = function(exports, definition) { -/******/ for(var key in definition) { -/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) { -/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] }); -/******/ } -/******/ } -/******/ }; -/******/ }(); -/******/ -/******/ /* webpack/runtime/global */ -/******/ !function() { -/******/ __webpack_require__.g = (function() { -/******/ if (typeof globalThis === 'object') return globalThis; -/******/ try { -/******/ return this || new Function('return this')(); -/******/ } catch (e) { -/******/ if (typeof window === 'object') return window; -/******/ } -/******/ })(); -/******/ }(); -/******/ -/******/ /* webpack/runtime/hasOwnProperty shorthand */ -/******/ !function() { -/******/ __webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); } -/******/ }(); -/******/ -/******/ /* webpack/runtime/make namespace object */ -/******/ !function() { -/******/ // define __esModule on exports -/******/ __webpack_require__.r = function(exports) { -/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { -/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); -/******/ } -/******/ Object.defineProperty(exports, '__esModule', { value: true }); -/******/ }; -/******/ }(); -/******/ -/******/ /* webpack/runtime/jsonp chunk loading */ -/******/ !function() { -/******/ // no baseURI -/******/ -/******/ // object to store loaded and loading chunks -/******/ // undefined = chunk not loaded, null = chunk preloaded/prefetched -/******/ // [resolve, reject, Promise] = chunk loading, 0 = chunk loaded -/******/ var installedChunks = { -/******/ "tabs/index": 0, -/******/ "tabs/style-index": 0 -/******/ }; -/******/ -/******/ // no chunk on demand loading -/******/ -/******/ // no prefetching -/******/ -/******/ // no preloaded -/******/ -/******/ // no HMR -/******/ -/******/ // no HMR manifest -/******/ -/******/ __webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; }; -/******/ -/******/ // install a JSONP callback for chunk loading -/******/ var webpackJsonpCallback = function(parentChunkLoadingFunction, data) { -/******/ var chunkIds = data[0]; -/******/ var moreModules = data[1]; -/******/ var runtime = data[2]; -/******/ // add "moreModules" to the modules object, -/******/ // then flag all "chunkIds" as loaded and fire callback -/******/ var moduleId, chunkId, i = 0; -/******/ if(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) { -/******/ for(moduleId in moreModules) { -/******/ if(__webpack_require__.o(moreModules, moduleId)) { -/******/ __webpack_require__.m[moduleId] = moreModules[moduleId]; -/******/ } -/******/ } -/******/ if(runtime) var result = runtime(__webpack_require__); -/******/ } -/******/ if(parentChunkLoadingFunction) parentChunkLoadingFunction(data); -/******/ for(;i < chunkIds.length; i++) { -/******/ chunkId = chunkIds[i]; -/******/ if(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) { -/******/ installedChunks[chunkId][0](); -/******/ } -/******/ installedChunks[chunkId] = 0; -/******/ } -/******/ return __webpack_require__.O(result); -/******/ } -/******/ -/******/ var chunkLoadingGlobal = self["webpackChunksimple_tabs_block"] = self["webpackChunksimple_tabs_block"] || []; -/******/ chunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0)); -/******/ chunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal)); -/******/ }(); -/******/ -/************************************************************************/ -/******/ -/******/ // startup -/******/ // Load entry module and return exports -/******/ // This entry module depends on other loaded chunks and execution need to be delayed -/******/ var __webpack_exports__ = __webpack_require__.O(undefined, ["tabs/style-index"], function() { return __webpack_require__("./src/tabs/index.js"); }) -/******/ __webpack_exports__ = __webpack_require__.O(__webpack_exports__); -/******/ -/******/ })() -; -//# sourceMappingURL=index.js.map \ No newline at end of file +!function(){var t,e={129:function(t,e,n){"use strict";var r=window.wp.element,o=window.wp.blocks,c=n(184),a=n.n(c),l=n(913),i=n.n(l);let s=t=>crypto.getRandomValues(new Uint8Array(t));var u=window.wp.i18n,f=window.wp.blockEditor,p=window.wp.components,b=window.wp.data,d=window.wp.compose;window.wp.coreData;const v=["cloudcatch/tab"],h={name:"cloudcatch/tab"},m={type:"default",alignments:[]};function w(t){let{clientId:e,orientation:n}=t;const{selectedBlockId:o}=(0,b.useSelect)((t=>{const{getSelectedBlockClientId:e}=t(f.store);return{selectedBlockId:e()}}),[e]),c=(0,f.useInnerBlocksProps)({className:"wp-block-cloudcatch-tabs__container"},{allowedBlocks:v,__experimentalDefaultBlock:h,__experimentalDirectInsert:!0,orientation:n,template:[["cloudcatch/tab"],["cloudcatch/tab"],["cloudcatch/tab"]],templateLock:!1,__experimentalLayout:m});return(0,r.createElement)("div",c)}var k=(0,d.compose)((0,b.withSelect)(((t,e)=>{let{clientId:n}=e;return{innerBlocks:t("core/block-editor").getBlocks(n)}})),(0,b.withDispatch)(((t,e,n)=>{let{clientId:r}=e,{select:o}=n;const{getBlock:c}=o("core/block-editor"),{updateBlockAttributes:a,moveBlockToPosition:l}=t("core/block-editor"),s=c(r),{selectBlock:u}=t(f.store);return{selectBlock(t){u(t)},resetTabOrder(){let t=[];i()(s.innerBlocks.length,(e=>{a(s.innerBlocks[e].clientId,{index:e}),t.push({clientId:s.innerBlocks[e].clientId,label:s.innerBlocks[e].attributes.label})})),a(r,{tabs:t})},updateActiveTab(t){a(s.clientId,{activeTab:t}),i()(s.innerBlocks.length,(e=>{a(s.innerBlocks[e].clientId,{activeTab:t})})),u(t)},moveTab(t,e){l(t,r,r,parseInt(e))}}})))((function(t){let{attributes:e,setAttributes:n,className:o,innerBlocks:c,clientId:l,updateActiveTab:i,selectBlock:d,resetTabOrder:v}=t;const h=((t,e=21)=>((t,e,n)=>{let r=(2<{let a="";for(;;){let e=n(o),l=o;for(;l--;)if(a+=t[e[l]&r]||"",a.length===c)return a}}})(t,e,s))("1234567890abcdef",10),{uuid:m=h(),activeTab:k,defaultTab:g,tabs:y,layout:{justifyContent:_,orientation:x="horizontal",flexWrap:j="wrap"}={}}=e,{updateBlockAttributes:B}=(0,b.useDispatch)(f.store);(0,r.useEffect)((()=>{v()}),[c]);const I=(0,r.useRef)(),O=(0,f.useBlockProps)({ref:I,className:a()(o,"wp-block-cloudcatch-tabs__wrapper",{"items-justified-right":"right"===_,"items-justified-space-between":"space-between"===_,"items-justified-left":"left"===_,"items-justified-center":"center"===_,"is-vertical":"vertical"===x,"no-wrap":"nowrap"===j})});return(0,r.createElement)(r.Fragment,null,(0,r.createElement)(f.InspectorControls,null,(0,r.createElement)(p.PanelBody,null,(0,r.createElement)(p.SelectControl,{label:(0,u.__)("Default open tab"),value:g,options:y.map(((t,e)=>({value:e,label:t.label}))),onChange:t=>n({defaultTab:parseInt(t)})}))),(0,r.createElement)("div",O,(0,r.createElement)("div",{className:"wp-block-cloudcatch-tabs__tabs-wrapper"},(0,r.createElement)("div",{className:"wp-block-cloudcatch-tabs__tabs",role:"tablist","aria-orientation":x},y.map(((t,e)=>{var n;return(0,r.createElement)(f.RichText,{"aria-label":(0,u.__)("Title"),placeholder:(0,u.__)("Add text…"),value:null!==(n=t.label)&&void 0!==n?n:(0,u.__)("Title"),onChange:e=>{B(t.clientId,{label:e})},key:e,role:"tab",tabid:e,tabIndex:"0",withoutInteractiveFormatting:!0,identifier:"label",className:a()("wp-block-cloudcatch-tab__label",{active:k===t.clientId}),unstableOnFocus:e=>{return n=t.clientId,void i(n);var n}})})),(0,r.createElement)(f.InnerBlocks.ButtonBlockAppender,null))),(0,r.createElement)(w,null)))}));(0,o.registerBlockType)("cloudcatch/tabs",{edit:k,icon:(0,r.createElement)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 310.9 237.6"},(0,r.createElement)("path",{d:"M273.4 64.4h-17.8c1.6-4.1 2.4-8.6 2.4-13.3V37.5C258 16.8 241.2 0 220.5 0h-27.7c-9.6 0-18.4 3.6-25 9.6-6.6-6-15.4-9.6-25-9.6h-27.7c-9.6 0-18.4 3.6-25 9.6-6.6-6-15.4-9.6-25-9.6H37.5C16.8 0 0 16.8 0 37.5v13.6c0 9.8 3.8 18.7 9.9 25.4C3.8 83.2 0 92.1 0 101.9v98.2c0 20.7 16.8 37.5 37.5 37.5h235.9c20.7 0 37.5-16.8 37.5-37.5v-98.2c0-20.7-16.9-37.5-37.5-37.5zM192.8 25h27.7c6.9 0 12.5 5.6 12.5 12.5v13.6c0 6.9-5.6 12.5-12.5 12.5h-27.7c-6.9 0-12.5-5.6-12.5-12.5V37.5c0-6.9 5.7-12.5 12.5-12.5zm-77.6 0h27.7c6.9 0 12.5 5.6 12.5 12.5v13.6c0 6.9-5.6 12.5-12.5 12.5h-27.7c-6.9 0-12.5-5.6-12.5-12.5V37.5c0-6.9 5.6-12.5 12.5-12.5zm170.7 175.1c0 6.9-5.6 12.5-12.5 12.5H37.5c-6.9 0-12.5-5.6-12.5-12.5v-98.2c0-6.9 5.6-12.5 12.5-12.5h235.9c6.9 0 12.5 5.6 12.5 12.5v98.2z"})),save:function(t){let{attributes:e}=t;const{uuid:n,tabs:o,defaultTab:c,layout:{justifyContent:l,orientation:i="horizontal",flexWrap:s="wrap"}={}}=e,p=a()("wp-block-cloudcatch-tabs__wrapper",{"items-justified-right":"right"===l,"items-justified-space-between":"space-between"===l,"items-justified-left":"left"===l,"items-justified-center":"center"===l,"is-vertical":"vertical"===i,"no-wrap":"nowrap"===s});return(0,r.createElement)("div",f.useBlockProps.save({className:p}),(0,r.createElement)("div",{className:"wp-block-cloudcatch-tabs__tabs-wrapper"},(0,r.createElement)("div",{className:"wp-block-cloudcatch-tabs__tabs",role:"tablist","aria-orientation":i},o.map(((t,e)=>{var n;return(0,r.createElement)(f.RichText.Content,{value:null!==(n=t.label)&&void 0!==n?n:(0,u.__)("Title"),tagName:"label",tabIndex:"0",role:"tab",key:e,tabid:e,className:a()("wp-block-cloudcatch-tab__label",{active:e===c})})})))),(0,r.createElement)("div",f.useInnerBlocksProps.save({className:"wp-block-cloudcatch-tabs__container"})))}})},184:function(t,e){var n;!function(){"use strict";var r={}.hasOwnProperty;function o(){for(var t=[],e=0;e9007199254740991)return[];var n=a,i=l(t,a);e=o(e),t-=a;for(var s=r(i,e);++n=c)&&Object.keys(r.O).every((function(t){return r.O[t](n[i])}))?n.splice(i--,1):(l=!1,c0&&t[u-1][2]>c;u--)t[u]=t[u-1];t[u]=[n,o,c]},r.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(e,{a:e}),e},r.d=function(t,e){for(var n in e)r.o(e,n)&&!r.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),r.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},function(){var t={68:0,370:0};r.O.j=function(e){return 0===t[e]};var e=function(e,n){var o,c,a=n[0],l=n[1],i=n[2],s=0;if(a.some((function(e){return 0!==t[e]}))){for(o in l)r.o(l,o)&&(r.m[o]=l[o]);if(i)var u=i(r)}for(e&&e(n);s {\n\t\tresetTabOrder();\n\t}, [ innerBlocks ] );\n\n\tconst tabsRef = useRef();\n\n\tconst blockProps = useBlockProps({\n\t\tref: tabsRef,\n\t\tclassName: classnames(className, 'wp-block-cloudcatch-tabs__wrapper', {\n\t\t\t'items-justified-right': justifyContent === 'right',\n\t\t\t'items-justified-space-between': justifyContent === 'space-between',\n\t\t\t'items-justified-left': justifyContent === 'left',\n\t\t\t'items-justified-center': justifyContent === 'center',\n\t\t\t'is-vertical': orientation === 'vertical',\n\t\t\t'no-wrap': flexWrap === 'nowrap',\n\t\t})\n\t});\n\n\tconst changeTab = ( tab ) => {\n\t\tupdateActiveTab( tab );\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t {\n\t\t\t\t\t\t\treturn {value: index, label: tab.label};\n\t\t\t\t\t\t} ) }\n\t\t\t\t\t\tonChange={ (value) => setAttributes( { defaultTab: parseInt(value) } ) }\n\t\t\t\t\t/>\n\t\t\t\t\n\t\t\t\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttabs.map((innerBlock, key) => {\n\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\tupdateBlockAttributes( innerBlock.clientId, {\n\t\t\t\t\t\t\t\t\t\t\t\tlabel: value,\n\t\t\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\tkey={ key }\n\t\t\t\t\t\t\t\t\t\trole=\"tab\"\n\t\t\t\t\t\t\t\t\t\t// aria-controls={ uuid + '-tab' }\n\t\t\t\t\t\t\t\t\t\ttabid={ key }\n\t\t\t\t\t\t\t\t\t\ttabIndex=\"0\"\n\t\t\t\t\t\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\t\t\t\t\t\tidentifier=\"label\"\n\t\t\t\t\t\t\t\t\t\tclassName={ classnames( 'wp-block-cloudcatch-tab__label', { 'active': activeTab === innerBlock.clientId } ) }\n\t\t\t\t\t\t\t\t\t\tunstableOnFocus={ (e) => changeTab( innerBlock.clientId ) }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t\n\n\t);\n}\n\nexport default compose(\n\twithSelect(\n\t\t( select, { clientId } ) => {\n\t\t\treturn {\n\t\t\t\tinnerBlocks: select( 'core/block-editor' ).getBlocks( clientId )\n\t\t\t};\n\t\t}\n\t),\n\twithDispatch( ( dispatch, { clientId }, { select } ) => {\n\t\tconst {\n\t\t\tgetBlock,\n\t\t} = select( 'core/block-editor' );\n\n\t\tconst {\n\t\t\tupdateBlockAttributes,\n\t\t\tmoveBlockToPosition\n\t\t} = dispatch( 'core/block-editor' );\n\n\t\tconst block = getBlock( clientId );\n\n\t\tconst { selectBlock } = dispatch( blockEditorStore );\n\n\t\treturn {\n\t\t\tselectBlock( clientId ) {\n\t\t\t\tselectBlock( clientId );\n\t\t\t},\n\t\t\tresetTabOrder() {\n\t\t\t\tlet tabs = [];\n\n\t\t\t\ttimes( block.innerBlocks.length, n => {\n\t\t\t\t\tupdateBlockAttributes( block.innerBlocks[ n ].clientId, {\n\t\t\t\t\t\tindex: n,\n\t\t\t\t\t} );\n\n\t\t\t\t\ttabs.push( { \"clientId\": block.innerBlocks[ n ].clientId, \"label\": block.innerBlocks[ n ].attributes.label } );\n\t\t\t\t} );\n\n\t\t\t\tupdateBlockAttributes( clientId, {\n\t\t\t\t\ttabs: tabs\n\t\t\t\t} );\n\t\t\t},\n\t\t\tupdateActiveTab(activeTab) {\n\t\t\t\tupdateBlockAttributes( block.clientId, {\n\t\t\t\t\tactiveTab: activeTab,\n\t\t\t\t} );\n\t\t\t\ttimes( block.innerBlocks.length, n => {\n\t\t\t\t\tupdateBlockAttributes( block.innerBlocks[ n ].clientId, {\n\t\t\t\t\t\tactiveTab: activeTab,\n\t\t\t\t\t} );\n\t\t\t\t} );\n\t\t\t\tselectBlock( activeTab );\n\t\t\t},\n\t\t\tmoveTab( tabId, newIndex ) {\n\t\t\t\tmoveBlockToPosition( tabId, clientId, clientId, parseInt( newIndex ) );\n\t\t\t},\n\t\t};\n\t} ),\n)( Edit );\n","/**\n * WordPress dependencies\n */\n import { useEntityBlockEditor } from '@wordpress/core-data';\n import {\n\t useInnerBlocksProps,\n\t InnerBlocks,\n\t __experimentalBlockContentOverlay as BlockContentOverlay,\n\t store as blockEditorStore,\n } from '@wordpress/block-editor';\n import { useSelect } from '@wordpress/data';\n import { useMemo } from '@wordpress/element';\n\nconst ALLOWED_BLOCKS = [\n\t'cloudcatch/tab'\n];\n\nconst DEFAULT_BLOCK = {\n\tname: 'cloudcatch/tab'\n};\n\nconst LAYOUT = {\n\ttype: 'default',\n\talignments: [],\n};\n\nexport default function TabsInnerBlocks( {\n clientId,\n\torientation,\n} ) {\n const {\n\t\tselectedBlockId\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getSelectedBlockClientId } = select( blockEditorStore );\n\t\t\tconst selectedBlockId = getSelectedBlockClientId();\n\n\t\t\treturn {\n\t\t\t\tselectedBlockId: selectedBlockId\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n const innerBlocksProps = useInnerBlocksProps(\n\t\t{\n\t\t\tclassName: 'wp-block-cloudcatch-tabs__container',\n\t\t},\n\t\t{\n\t\t\tallowedBlocks: ALLOWED_BLOCKS,\n\t\t\t__experimentalDefaultBlock: DEFAULT_BLOCK,\n\t\t\t__experimentalDirectInsert: true,\n\t\t\torientation,\n\t\t\ttemplate: [ [ 'cloudcatch/tab' ], [ 'cloudcatch/tab' ], [ 'cloudcatch/tab' ] ],\n\t\t\ttemplateLock: false,\n\t\t\t__experimentalLayout: LAYOUT,\n\t\t}\n\t);\n\n return (\n
\n );\n}\n","import { registerBlockType } from '@wordpress/blocks';\nimport './style.scss';\n\n/**\n * Internal dependencies\n */\nimport Edit from './edit';\nimport save from './save';\n\nregisterBlockType( 'cloudcatch/tabs', {\n\tedit: Edit,\n\ticon: ,\n\tsave,\n} );\n","/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\nimport { __ } from '@wordpress/i18n';\nimport { RichText, useBlockProps, useInnerBlocksProps } from '@wordpress/block-editor';\n\nexport default function save( { attributes } ) {\n\tconst { \n\t\tuuid,\n\t\ttabs, \n\t\tdefaultTab, \n\t\tlayout: {\n\t\t\tjustifyContent,\n\t\t\torientation = 'horizontal',\n\t\t\tflexWrap = 'wrap',\n\t\t} = {}, \n\t} = attributes;\n\n\tconst className = classnames('wp-block-cloudcatch-tabs__wrapper', {\n\t\t'items-justified-right': justifyContent === 'right',\n\t\t'items-justified-space-between': justifyContent === 'space-between',\n\t\t'items-justified-left': justifyContent === 'left',\n\t\t'items-justified-center': justifyContent === 'center',\n\t\t'is-vertical': orientation === 'vertical',\n\t\t'no-wrap': flexWrap === 'nowrap',\n\t});\n\n\treturn (\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t{\n\t\t\t\t\t\ttabs.map((innerBlock, key) => \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t)\n\t\t\t\t\t}\n\t\t\t\t
\n\t\t\t
\n\t\t\t\n\t\t
\n\t);\n}\n","/*!\n Copyright (c) 2018 Jed Watson.\n Licensed under the MIT License (MIT), see\n http://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames() {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg)) {\n\t\t\t\tif (arg.length) {\n\t\t\t\t\tvar inner = classNames.apply(null, arg);\n\t\t\t\t\tif (inner) {\n\t\t\t\t\t\tclasses.push(inner);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tif (arg.toString === Object.prototype.toString) {\n\t\t\t\t\tfor (var key in arg) {\n\t\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tclasses.push(arg.toString());\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","var root = require('./_root');\n\n/** Built-in value references. */\nvar Symbol = root.Symbol;\n\nmodule.exports = Symbol;\n","var Symbol = require('./_Symbol'),\n getRawTag = require('./_getRawTag'),\n objectToString = require('./_objectToString');\n\n/** `Object#toString` result references. */\nvar nullTag = '[object Null]',\n undefinedTag = '[object Undefined]';\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nfunction baseGetTag(value) {\n if (value == null) {\n return value === undefined ? undefinedTag : nullTag;\n }\n return (symToStringTag && symToStringTag in Object(value))\n ? getRawTag(value)\n : objectToString(value);\n}\n\nmodule.exports = baseGetTag;\n","/**\n * The base implementation of `_.times` without support for iteratee shorthands\n * or max array length checks.\n *\n * @private\n * @param {number} n The number of times to invoke `iteratee`.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the array of results.\n */\nfunction baseTimes(n, iteratee) {\n var index = -1,\n result = Array(n);\n\n while (++index < n) {\n result[index] = iteratee(index);\n }\n return result;\n}\n\nmodule.exports = baseTimes;\n","var trimmedEndIndex = require('./_trimmedEndIndex');\n\n/** Used to match leading whitespace. */\nvar reTrimStart = /^\\s+/;\n\n/**\n * The base implementation of `_.trim`.\n *\n * @private\n * @param {string} string The string to trim.\n * @returns {string} Returns the trimmed string.\n */\nfunction baseTrim(string) {\n return string\n ? string.slice(0, trimmedEndIndex(string) + 1).replace(reTrimStart, '')\n : string;\n}\n\nmodule.exports = baseTrim;\n","var identity = require('./identity');\n\n/**\n * Casts `value` to `identity` if it's not a function.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {Function} Returns cast function.\n */\nfunction castFunction(value) {\n return typeof value == 'function' ? value : identity;\n}\n\nmodule.exports = castFunction;\n","/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\nmodule.exports = freeGlobal;\n","var Symbol = require('./_Symbol');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\nfunction getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n}\n\nmodule.exports = getRawTag;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\nfunction objectToString(value) {\n return nativeObjectToString.call(value);\n}\n\nmodule.exports = objectToString;\n","var freeGlobal = require('./_freeGlobal');\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\nmodule.exports = root;\n","/** Used to match a single whitespace character. */\nvar reWhitespace = /\\s/;\n\n/**\n * Used by `_.trim` and `_.trimEnd` to get the index of the last non-whitespace\n * character of `string`.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {number} Returns the index of the last non-whitespace character.\n */\nfunction trimmedEndIndex(string) {\n var index = string.length;\n\n while (index-- && reWhitespace.test(string.charAt(index))) {}\n return index;\n}\n\nmodule.exports = trimmedEndIndex;\n","/**\n * This method returns the first argument it receives.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Util\n * @param {*} value Any value.\n * @returns {*} Returns `value`.\n * @example\n *\n * var object = { 'a': 1 };\n *\n * console.log(_.identity(object) === object);\n * // => true\n */\nfunction identity(value) {\n return value;\n}\n\nmodule.exports = identity;\n","/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return value != null && (type == 'object' || type == 'function');\n}\n\nmodule.exports = isObject;\n","/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return value != null && typeof value == 'object';\n}\n\nmodule.exports = isObjectLike;\n","var baseGetTag = require('./_baseGetTag'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar symbolTag = '[object Symbol]';\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && baseGetTag(value) == symbolTag);\n}\n\nmodule.exports = isSymbol;\n","var baseTimes = require('./_baseTimes'),\n castFunction = require('./_castFunction'),\n toInteger = require('./toInteger');\n\n/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/** Used as references for the maximum length and index of an array. */\nvar MAX_ARRAY_LENGTH = 4294967295;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMin = Math.min;\n\n/**\n * Invokes the iteratee `n` times, returning an array of the results of\n * each invocation. The iteratee is invoked with one argument; (index).\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Util\n * @param {number} n The number of times to invoke `iteratee`.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the array of results.\n * @example\n *\n * _.times(3, String);\n * // => ['0', '1', '2']\n *\n * _.times(4, _.constant(0));\n * // => [0, 0, 0, 0]\n */\nfunction times(n, iteratee) {\n n = toInteger(n);\n if (n < 1 || n > MAX_SAFE_INTEGER) {\n return [];\n }\n var index = MAX_ARRAY_LENGTH,\n length = nativeMin(n, MAX_ARRAY_LENGTH);\n\n iteratee = castFunction(iteratee);\n n -= MAX_ARRAY_LENGTH;\n\n var result = baseTimes(length, iteratee);\n while (++index < n) {\n iteratee(index);\n }\n return result;\n}\n\nmodule.exports = times;\n","var toNumber = require('./toNumber');\n\n/** Used as references for various `Number` constants. */\nvar INFINITY = 1 / 0,\n MAX_INTEGER = 1.7976931348623157e+308;\n\n/**\n * Converts `value` to a finite number.\n *\n * @static\n * @memberOf _\n * @since 4.12.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {number} Returns the converted number.\n * @example\n *\n * _.toFinite(3.2);\n * // => 3.2\n *\n * _.toFinite(Number.MIN_VALUE);\n * // => 5e-324\n *\n * _.toFinite(Infinity);\n * // => 1.7976931348623157e+308\n *\n * _.toFinite('3.2');\n * // => 3.2\n */\nfunction toFinite(value) {\n if (!value) {\n return value === 0 ? value : 0;\n }\n value = toNumber(value);\n if (value === INFINITY || value === -INFINITY) {\n var sign = (value < 0 ? -1 : 1);\n return sign * MAX_INTEGER;\n }\n return value === value ? value : 0;\n}\n\nmodule.exports = toFinite;\n","var toFinite = require('./toFinite');\n\n/**\n * Converts `value` to an integer.\n *\n * **Note:** This method is loosely based on\n * [`ToInteger`](http://www.ecma-international.org/ecma-262/7.0/#sec-tointeger).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {number} Returns the converted integer.\n * @example\n *\n * _.toInteger(3.2);\n * // => 3\n *\n * _.toInteger(Number.MIN_VALUE);\n * // => 0\n *\n * _.toInteger(Infinity);\n * // => 1.7976931348623157e+308\n *\n * _.toInteger('3.2');\n * // => 3\n */\nfunction toInteger(value) {\n var result = toFinite(value),\n remainder = result % 1;\n\n return result === result ? (remainder ? result - remainder : result) : 0;\n}\n\nmodule.exports = toInteger;\n","var baseTrim = require('./_baseTrim'),\n isObject = require('./isObject'),\n isSymbol = require('./isSymbol');\n\n/** Used as references for various `Number` constants. */\nvar NAN = 0 / 0;\n\n/** Used to detect bad signed hexadecimal string values. */\nvar reIsBadHex = /^[-+]0x[0-9a-f]+$/i;\n\n/** Used to detect binary string values. */\nvar reIsBinary = /^0b[01]+$/i;\n\n/** Used to detect octal string values. */\nvar reIsOctal = /^0o[0-7]+$/i;\n\n/** Built-in method references without a dependency on `root`. */\nvar freeParseInt = parseInt;\n\n/**\n * Converts `value` to a number.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to process.\n * @returns {number} Returns the number.\n * @example\n *\n * _.toNumber(3.2);\n * // => 3.2\n *\n * _.toNumber(Number.MIN_VALUE);\n * // => 5e-324\n *\n * _.toNumber(Infinity);\n * // => Infinity\n *\n * _.toNumber('3.2');\n * // => 3.2\n */\nfunction toNumber(value) {\n if (typeof value == 'number') {\n return value;\n }\n if (isSymbol(value)) {\n return NAN;\n }\n if (isObject(value)) {\n var other = typeof value.valueOf == 'function' ? value.valueOf() : value;\n value = isObject(other) ? (other + '') : other;\n }\n if (typeof value != 'string') {\n return value === 0 ? value : +value;\n }\n value = baseTrim(value);\n var isBinary = reIsBinary.test(value);\n return (isBinary || reIsOctal.test(value))\n ? freeParseInt(value.slice(2), isBinary ? 2 : 8)\n : (reIsBadHex.test(value) ? NAN : +value);\n}\n\nmodule.exports = toNumber;\n","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","module.exports = window[\"wp\"][\"blockEditor\"];","module.exports = window[\"wp\"][\"blocks\"];","module.exports = window[\"wp\"][\"components\"];","module.exports = window[\"wp\"][\"compose\"];","module.exports = window[\"wp\"][\"coreData\"];","module.exports = window[\"wp\"][\"data\"];","module.exports = window[\"wp\"][\"element\"];","module.exports = window[\"wp\"][\"i18n\"];","import { urlAlphabet } from './url-alphabet/index.js'\nlet random = bytes => crypto.getRandomValues(new Uint8Array(bytes))\nlet customRandom = (alphabet, defaultSize, getRandom) => {\n let mask = (2 << (Math.log(alphabet.length - 1) / Math.LN2)) - 1\n let step = -~((1.6 * mask * defaultSize) / alphabet.length)\n return (size = defaultSize) => {\n let id = ''\n while (true) {\n let bytes = getRandom(step)\n let j = step\n while (j--) {\n id += alphabet[bytes[j] & mask] || ''\n if (id.length === size) return id\n }\n }\n }\n}\nlet customAlphabet = (alphabet, size = 21) =>\n customRandom(alphabet, size, random)\nlet nanoid = (size = 21) => {\n let id = ''\n let bytes = crypto.getRandomValues(new Uint8Array(size))\n while (size--) {\n let byte = bytes[size] & 63\n if (byte < 36) {\n id += byte.toString(36)\n } else if (byte < 62) {\n id += (byte - 26).toString(36).toUpperCase()\n } else if (byte < 63) {\n id += '_'\n } else {\n id += '-'\n }\n }\n return id\n}\nexport { nanoid, customAlphabet, customRandom, urlAlphabet, random }\n","let urlAlphabet =\n 'useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict'\nexport { urlAlphabet }\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t\"tabs/index\": 0,\n\t\"tabs/style-index\": 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunksimple_tabs_block\"] = self[\"webpackChunksimple_tabs_block\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [\"tabs/style-index\"], function() { return __webpack_require__(\"./src/tabs/index.js\"); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n",""],"names":["classnames","times","nanoid","customAlphabet","__","useBlockProps","BlockControls","InspectorControls","useInnerBlocksProps","InnerBlocks","RichText","store","blockEditorStore","useRef","useEffect","useState","PanelBody","SelectControl","withSelect","useSelect","withDispatch","useDispatch","select","compose","TabsInnerBlocks","Edit","attributes","setAttributes","className","innerBlocks","clientId","updateActiveTab","selectBlock","resetTabOrder","uuid","activeTab","defaultTab","tabs","layout","justifyContent","orientation","flexWrap","updateBlockAttributes","tabsRef","blockProps","ref","changeTab","tab","map","index","value","label","parseInt","innerBlock","key","e","getBlocks","dispatch","getBlock","moveBlockToPosition","block","length","n","push","moveTab","tabId","newIndex","useEntityBlockEditor","__experimentalBlockContentOverlay","BlockContentOverlay","useMemo","ALLOWED_BLOCKS","DEFAULT_BLOCK","name","LAYOUT","type","alignments","selectedBlockId","getSelectedBlockClientId","innerBlocksProps","allowedBlocks","__experimentalDefaultBlock","__experimentalDirectInsert","template","templateLock","__experimentalLayout","registerBlockType","save","edit","icon"],"sourceRoot":""} \ No newline at end of file diff --git a/build/tabs/style-index.css b/build/tabs/style-index.css index 3f91b71..66193a4 100644 --- a/build/tabs/style-index.css +++ b/build/tabs/style-index.css @@ -1,77 +1 @@ -/*!********************************************************************************************************************************************************************************************************************************************!*\ - !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[3].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[3].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[3].use[3]!./src/tabs/style.scss ***! - \********************************************************************************************************************************************************************************************************************************************/ -:root { - --cloudcatch-tabs-row-gap: var(--wp--style--block-gap, 2em); - --cloudcatch-tabs-column-gap: var(--wp--style--block-gap, 2em); -} - -.wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper { - display: flex; - flex-direction: column; - row-gap: var(--cloudcatch-tabs-row-gap); - -moz-column-gap: var(--cloudcatch-tabs-column-gap); - column-gap: var(--cloudcatch-tabs-column-gap); - justify-content: normal; - align-items: normal; -} -.wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper .wp-block-cloudcatch-tabs__tabs { - display: flex; - row-gap: var(--cloudcatch-tabs-row-gap); - -moz-column-gap: var(--cloudcatch-tabs-column-gap); - column-gap: var(--cloudcatch-tabs-column-gap); - align-items: center; -} -.wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper .wp-block-cloudcatch-tabs__tabs .wp-block-cloudcatch-tab__label { - cursor: pointer; - font-weight: inherit; -} -.wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper .wp-block-cloudcatch-tabs__tabs .wp-block-cloudcatch-tab__label.active { - font-weight: bold; -} -.wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper .wp-block-cloudcatch-tabs__container { - flex: 1; -} -.wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper .wp-block-cloudcatch-tabs__container .wp-block-cloudcatch-tab { - display: none; - margin: 0; -} -.wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper .wp-block-cloudcatch-tabs__container .wp-block-cloudcatch-tab .block-list-appender { - width: 100%; -} -.wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.items-justified-right .wp-block-cloudcatch-tabs__tabs { - justify-content: flex-end; -} -.wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.items-justified-space-between .wp-block-cloudcatch-tabs__tabs { - justify-content: space-between; -} -.wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.items-justified-left .wp-block-cloudcatch-tabs__tabs { - justify-content: flex-start; -} -.wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.items-justified-center .wp-block-cloudcatch-tabs__tabs { - justify-content: center; -} -.wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.is-vertical { - flex-direction: row; -} -.wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.is-vertical .wp-block-cloudcatch-tabs__tabs { - flex-direction: column; - align-items: normal; -} -.wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.is-vertical.items-justified-right .wp-block-cloudcatch-tabs__tabs { - align-items: flex-end; -} -.wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.is-vertical.items-justified-space-between .wp-block-cloudcatch-tabs__tabs { - align-items: center; -} -.wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.is-vertical.items-justified-left .wp-block-cloudcatch-tabs__tabs { - align-items: flex-start; -} -.wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.is-vertical.items-justified-center .wp-block-cloudcatch-tabs__tabs { - align-items: center; -} -.wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.is-vertical .wp-block-cloudcatch-tabs__container { - flex-direction: column; -} - -/*# sourceMappingURL=style-index.css.map*/ \ No newline at end of file +:root{--cloudcatch-tabs-row-gap:var(--wp--style--block-gap,2em);--cloudcatch-tabs-column-gap:var(--wp--style--block-gap,2em)}.wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper{align-items:normal;-moz-column-gap:var(--cloudcatch-tabs-column-gap);column-gap:var(--cloudcatch-tabs-column-gap);display:flex;flex-direction:column;justify-content:normal;row-gap:var(--cloudcatch-tabs-row-gap)}.wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper .wp-block-cloudcatch-tabs__tabs{align-items:center;-moz-column-gap:var(--cloudcatch-tabs-column-gap);column-gap:var(--cloudcatch-tabs-column-gap);display:flex;row-gap:var(--cloudcatch-tabs-row-gap)}.wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper .wp-block-cloudcatch-tabs__tabs .wp-block-cloudcatch-tab__label{cursor:pointer;font-weight:inherit}.wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper .wp-block-cloudcatch-tabs__tabs .wp-block-cloudcatch-tab__label.active{font-weight:700}.wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper .wp-block-cloudcatch-tabs__container{flex:1}.wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper .wp-block-cloudcatch-tabs__container .wp-block-cloudcatch-tab{display:none;margin:0}.wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper .wp-block-cloudcatch-tabs__container .wp-block-cloudcatch-tab .block-list-appender{width:100%}.wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.items-justified-right .wp-block-cloudcatch-tabs__tabs{justify-content:flex-end}.wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.items-justified-space-between .wp-block-cloudcatch-tabs__tabs{justify-content:space-between}.wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.items-justified-left .wp-block-cloudcatch-tabs__tabs{justify-content:flex-start}.wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.items-justified-center .wp-block-cloudcatch-tabs__tabs{justify-content:center}.wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.is-vertical{flex-direction:row}.wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.is-vertical .wp-block-cloudcatch-tabs__tabs{align-items:normal;flex-direction:column}.wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.is-vertical.items-justified-right .wp-block-cloudcatch-tabs__tabs{align-items:flex-end}.wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.is-vertical.items-justified-space-between .wp-block-cloudcatch-tabs__tabs{align-items:center}.wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.is-vertical.items-justified-left .wp-block-cloudcatch-tabs__tabs{align-items:flex-start}.wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.is-vertical.items-justified-center .wp-block-cloudcatch-tabs__tabs{align-items:center}.wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper.is-vertical .wp-block-cloudcatch-tabs__container{flex-direction:column} diff --git a/build/tabs/style-index.css.map b/build/tabs/style-index.css.map deleted file mode 100644 index 52bc51e..0000000 --- a/build/tabs/style-index.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"tabs/style-index.css","mappings":";;;AAAA;EACC;EACA;AACD;;AAEA;EACC;EACA;EACA;EACA;OAAA;EACA;EACA;AACD;AACC;EACC;EACA;EACA;OAAA;EACA;AACF;AACE;EACC;EACA;AACH;AACG;EACC;AACJ;AAIC;EACC;AAFF;AAIE;EACC;EACA;AAFH;AAIG;EACC;AAFJ;AAOC;EACC;AALF;AAQC;EACC;AANF;AASC;EACC;AAPF;AAUC;EACC;AARF;AAWC;EACC;AATF;AAWE;EACC;EACA;AATH;AAYE;EACC;AAVH;AAaE;EACC;AAXH;AAcE;EACC;AAZH;AAeE;EACC;AAbH;AAgBE;EACC;AAdH,C","sources":["webpack://simple-tabs-block/./src/tabs/style.scss"],"sourcesContent":[":root {\n\t--cloudcatch-tabs-row-gap: var(--wp--style--block-gap, 2em);\n\t--cloudcatch-tabs-column-gap: var(--wp--style--block-gap, 2em);\n}\n\n.wp-block-cloudcatch-tabs.wp-block-cloudcatch-tabs__wrapper {\n\tdisplay: flex;\n\tflex-direction: column;\n\trow-gap: var(--cloudcatch-tabs-row-gap);\n\tcolumn-gap: var(--cloudcatch-tabs-column-gap);\n\tjustify-content: normal;\n\talign-items: normal;\n\n\t.wp-block-cloudcatch-tabs__tabs {\n\t\tdisplay: flex;\n\t\trow-gap: var(--cloudcatch-tabs-row-gap);\n\t\tcolumn-gap: var(--cloudcatch-tabs-column-gap);\n\t\talign-items: center;\n\n\t\t.wp-block-cloudcatch-tab__label {\n\t\t\tcursor: pointer;\n\t\t\tfont-weight: inherit;\n\n\t\t\t&.active {\n\t\t\t\tfont-weight: bold;\n\t\t\t}\n\t\t}\n\t}\n\n\t.wp-block-cloudcatch-tabs__container {\n\t\tflex: 1;\n\n\t\t.wp-block-cloudcatch-tab {\n\t\t\tdisplay: none;\n\t\t\tmargin: 0;\n\n\t\t\t.block-list-appender {\n\t\t\t\twidth: 100%;\n\t\t\t}\n\t\t}\n\t}\n\n\t&.items-justified-right .wp-block-cloudcatch-tabs__tabs {\n\t\tjustify-content: flex-end;\n\t}\n\n\t&.items-justified-space-between .wp-block-cloudcatch-tabs__tabs {\n\t\tjustify-content: space-between;\n\t}\n\n\t&.items-justified-left .wp-block-cloudcatch-tabs__tabs {\n\t\tjustify-content: flex-start;\n\t}\n\n\t&.items-justified-center .wp-block-cloudcatch-tabs__tabs {\n\t\tjustify-content: center;\n\t}\n\n\t&.is-vertical {\n\t\tflex-direction: row;\n\n\t\t.wp-block-cloudcatch-tabs__tabs {\n\t\t\tflex-direction: column;\n\t\t\talign-items: normal;\n\t\t}\n\n\t\t&.items-justified-right .wp-block-cloudcatch-tabs__tabs {\n\t\t\talign-items: flex-end;\n\t\t}\n\t\n\t\t&.items-justified-space-between .wp-block-cloudcatch-tabs__tabs {\n\t\t\talign-items: center;\n\t\t}\n\t\n\t\t&.items-justified-left .wp-block-cloudcatch-tabs__tabs {\n\t\t\talign-items: flex-start;\n\t\t}\n\t\n\t\t&.items-justified-center .wp-block-cloudcatch-tabs__tabs {\n\t\t\talign-items: center;\n\t\t}\n\n\t\t.wp-block-cloudcatch-tabs__container {\n\t\t\tflex-direction: column;\n\t\t}\n\t}\n\n\t\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/build/tabs/view.asset.php b/build/tabs/view.asset.php index 3f12357..5ca6435 100644 --- a/build/tabs/view.asset.php +++ b/build/tabs/view.asset.php @@ -1 +1 @@ - array(), 'version' => 'c7968ca6d1eb3491eea5c618f9167e76'); \ No newline at end of file + array(), 'version' => '07d9ab2a933310da0c6ccff30a771077'); \ No newline at end of file diff --git a/build/tabs/view.js b/build/tabs/view.js index 0a66176..305a19b 100644 --- a/build/tabs/view.js +++ b/build/tabs/view.js @@ -1,136 +1 @@ -/******/ (function() { // webpackBootstrap -var __webpack_exports__ = {}; -/*!**************************!*\ - !*** ./src/tabs/view.js ***! - \**************************/ -(() => { - const cloudCatchTabs = tabsWrapper => { - const tabsContainer = tabsWrapper.querySelector('.wp-block-cloudcatch-tabs__container'); - const tabLabelsContainer = tabsWrapper.querySelector('.wp-block-cloudcatch-tabs__tabs'); - const tabLabels = tabLabelsContainer.querySelectorAll('[role="tab"]'); - const keys = { - end: 35, - home: 36, - left: 37, - up: 38, - right: 39, - down: 40 - }; // Add or subtract depending on key pressed - - const direction = { - 37: -1, - 38: -1, - 39: 1, - 40: 1 - }; - let activeIndex = 0; - - const init = () => { - tabLabels.forEach(tabLabel => { - if (tabLabel.classList.contains('active')) { - activeIndex = tabLabel.getAttribute('tabid'); - } - }); - setActiveTab(activeIndex); - }; - - const initEvents = () => { - tabLabels.forEach(tabLabel => { - tabLabel.addEventListener('click', e => { - setActiveTab(tabLabel.getAttribute('tabid')); - }); - tabLabel.addEventListener('keyup', e => { - var key = e.keyCode; - - switch (key) { - case keys.left: - case keys.right: - determineOrientation(e); - break; - } - }); - }); - }; - - const setActiveTab = id => { - tabsContainer.querySelectorAll(':scope > *').forEach(tab => { - tab.style.display = 'none'; - }); - tabLabelsContainer.querySelectorAll(':scope > *').forEach(label => { - label.classList.remove('active'); - label.setAttribute('aria-selected', 'false'); - }); - activeIndex = parseInt(id); - const currentTabLabel = tabLabelsContainer.querySelector('[tabid="' + activeIndex + '"]'); - currentTabLabel.classList.add('active'); - currentTabLabel.setAttribute('aria-selected', 'true'); - tabsContainer.querySelector('[tabid="' + activeIndex + '"]').style.display = 'block'; - }; - - const determineOrientation = event => { - var key = event.keyCode; - var vertical = tabLabelsContainer.getAttribute('aria-orientation') == 'vertical'; - var proceed = false; - - if (vertical) { - if (key === keys.up || key === keys.down) { - event.preventDefault(); - proceed = true; - } - } else { - if (key === keys.left || key === keys.right) { - proceed = true; - } - } - - if (proceed) { - switchTabOnArrowPress(event); - } - }; - - function switchTabOnArrowPress(event) { - var pressed = event.keyCode; - - for (var x = 0; x < tabLabels.length; x++) { - tabLabels[x].addEventListener('focus', focusEventHandler); - } - - if (direction[pressed]) { - var desiredIndex = activeIndex + direction[pressed]; - - if (typeof tabLabels[desiredIndex] !== 'undefined') { - tabLabels[desiredIndex].focus(); - } else if (pressed === keys.left || pressed === keys.up) { - tabLabels[tabLabels.length - 1].focus(); - } else if (pressed === keys.right || pressed == keys.down) { - tabLabels[0].focus(); - } - } - } - - function focusEventHandler(event) { - var target = event.target; - setTimeout(checkTabFocus, 0, target); - } // Only activate tab on focus if it still has focus after the delay - - - function checkTabFocus(target) { - var focused = document.activeElement; - - if (target === focused) { - setActiveTab(target.getAttribute('tabid')); - } - } - - init(); - initEvents(); - }; - - const tabsWrappers = document.querySelectorAll('.wp-block-cloudcatch-tabs'); - tabsWrappers.forEach(tabsWrapper => { - cloudCatchTabs(tabsWrapper); - }); -})(); -/******/ })() -; -//# sourceMappingURL=view.js.map \ No newline at end of file +(()=>{const e=e=>{const t=e.querySelector(".wp-block-cloudcatch-tabs__container"),c=e.querySelector(".wp-block-cloudcatch-tabs__tabs"),a=c.querySelectorAll('[role="tab"]'),o={37:-1,38:-1,39:1,40:1};let r=0;const l=e=>{t.querySelectorAll(":scope > *").forEach((e=>{e.style.display="none"})),c.querySelectorAll(":scope > *").forEach((e=>{e.classList.remove("active"),e.setAttribute("aria-selected","false")})),r=parseInt(e);const a=c.querySelector('[tabid="'+r+'"]');a.classList.add("active"),a.setAttribute("aria-selected","true"),t.querySelector('[tabid="'+r+'"]').style.display="block"};function s(e){var t=e.target;setTimeout(i,0,t)}function i(e){e===document.activeElement&&l(e.getAttribute("tabid"))}a.forEach((e=>{e.classList.contains("active")&&(r=e.getAttribute("tabid"))})),l(r),a.forEach((e=>{e.addEventListener("click",(t=>{l(e.getAttribute("tabid"))})),e.addEventListener("keyup",(e=>{switch(e.keyCode){case 37:case 39:l=(t=e).keyCode,i=!1,"vertical"==c.getAttribute("aria-orientation")?38!==l&&40!==l||(t.preventDefault(),i=!0):37!==l&&39!==l||(i=!0),i&&function(e){for(var t=e.keyCode,c=0;c{e(t)}))})(); \ No newline at end of file diff --git a/build/tabs/view.js.map b/build/tabs/view.js.map deleted file mode 100644 index 6637e5b..0000000 --- a/build/tabs/view.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"tabs/view.js","mappings":";;;;;AAAA,CAAC,MAAM;AAEH,QAAMA,cAAc,GAAIC,WAAD,IAAiB;AACpC,UAAMC,aAAa,GAAGD,WAAW,CAACE,aAAZ,CAA0B,sCAA1B,CAAtB;AACA,UAAMC,kBAAkB,GAAGH,WAAW,CAACE,aAAZ,CAA0B,iCAA1B,CAA3B;AACA,UAAME,SAAS,GAAGD,kBAAkB,CAACE,gBAAnB,CAAoC,cAApC,CAAlB;AAEA,UAAMC,IAAI,GAAG;AACTC,MAAAA,GAAG,EAAE,EADI;AAETC,MAAAA,IAAI,EAAE,EAFG;AAGTC,MAAAA,IAAI,EAAE,EAHG;AAITC,MAAAA,EAAE,EAAE,EAJK;AAKTC,MAAAA,KAAK,EAAE,EALE;AAMTC,MAAAA,IAAI,EAAE;AANG,KAAb,CALoC,CAcpC;;AACA,UAAMC,SAAS,GAAG;AACd,UAAI,CAAC,CADS;AAEd,UAAI,CAAC,CAFS;AAGd,UAAI,CAHU;AAId,UAAI;AAJU,KAAlB;AAOA,QAAIC,WAAW,GAAG,CAAlB;;AAEA,UAAMC,IAAI,GAAG,MAAM;AACfX,MAAAA,SAAS,CAACY,OAAV,CAAkBC,QAAQ,IAAI;AAC1B,YAAIA,QAAQ,CAACC,SAAT,CAAmBC,QAAnB,CAA4B,QAA5B,CAAJ,EAA2C;AACvCL,UAAAA,WAAW,GAAGG,QAAQ,CAACG,YAAT,CAAsB,OAAtB,CAAd;AACH;AACJ,OAJD;AAMAC,MAAAA,YAAY,CAACP,WAAD,CAAZ;AACH,KARD;;AAUA,UAAMQ,UAAU,GAAG,MAAM;AACrBlB,MAAAA,SAAS,CAACY,OAAV,CAAkBC,QAAQ,IAAI;AAC1BA,QAAAA,QAAQ,CAACM,gBAAT,CAA0B,OAA1B,EAAoCC,CAAD,IAAO;AACtCH,UAAAA,YAAY,CAACJ,QAAQ,CAACG,YAAT,CAAsB,OAAtB,CAAD,CAAZ;AACH,SAFD;AAIAH,QAAAA,QAAQ,CAACM,gBAAT,CAA0B,OAA1B,EAAoCC,CAAD,IAAO;AACtC,cAAIC,GAAG,GAAGD,CAAC,CAACE,OAAZ;;AAEA,kBAAQD,GAAR;AACI,iBAAKnB,IAAI,CAACG,IAAV;AACA,iBAAKH,IAAI,CAACK,KAAV;AACIgB,cAAAA,oBAAoB,CAACH,CAAD,CAApB;AACA;AAJR;AAMH,SATD;AAUH,OAfD;AAgBH,KAjBD;;AAmBA,UAAMH,YAAY,GAAIO,EAAD,IAAQ;AACzB3B,MAAAA,aAAa,CAACI,gBAAd,CAA+B,YAA/B,EAA6CW,OAA7C,CAAqDa,GAAG,IAAI;AACxDA,QAAAA,GAAG,CAACC,KAAJ,CAAUC,OAAV,GAAoB,MAApB;AACH,OAFD;AAIA5B,MAAAA,kBAAkB,CAACE,gBAAnB,CAAoC,YAApC,EAAkDW,OAAlD,CAA0DgB,KAAK,IAAI;AAC/DA,QAAAA,KAAK,CAACd,SAAN,CAAgBe,MAAhB,CAAuB,QAAvB;AACAD,QAAAA,KAAK,CAACE,YAAN,CAAoB,eAApB,EAAqC,OAArC;AACH,OAHD;AAKApB,MAAAA,WAAW,GAAGqB,QAAQ,CAACP,EAAD,CAAtB;AAEA,YAAMQ,eAAe,GAAGjC,kBAAkB,CAACD,aAAnB,CAAiC,aAAaY,WAAb,GAA2B,IAA5D,CAAxB;AACAsB,MAAAA,eAAe,CAAClB,SAAhB,CAA0BmB,GAA1B,CAA8B,QAA9B;AACAD,MAAAA,eAAe,CAACF,YAAhB,CAA8B,eAA9B,EAA+C,MAA/C;AAEAjC,MAAAA,aAAa,CAACC,aAAd,CAA4B,aAAaY,WAAb,GAA2B,IAAvD,EAA6DgB,KAA7D,CAAmEC,OAAnE,GAA6E,OAA7E;AACH,KAjBD;;AAmBA,UAAMJ,oBAAoB,GAAIW,KAAD,IAAW;AACpC,UAAIb,GAAG,GAAGa,KAAK,CAACZ,OAAhB;AACA,UAAIa,QAAQ,GAAGpC,kBAAkB,CAACiB,YAAnB,CAAgC,kBAAhC,KAAuD,UAAtE;AACA,UAAIoB,OAAO,GAAG,KAAd;;AAEA,UAAID,QAAJ,EAAc;AACV,YAAId,GAAG,KAAKnB,IAAI,CAACI,EAAb,IAAmBe,GAAG,KAAKnB,IAAI,CAACM,IAApC,EAA0C;AACtC0B,UAAAA,KAAK,CAACG,cAAN;AACAD,UAAAA,OAAO,GAAG,IAAV;AACH;AACJ,OALD,MAKO;AACH,YAAIf,GAAG,KAAKnB,IAAI,CAACG,IAAb,IAAqBgB,GAAG,KAAKnB,IAAI,CAACK,KAAtC,EAA6C;AACzC6B,UAAAA,OAAO,GAAG,IAAV;AACH;AACJ;;AAED,UAAIA,OAAJ,EAAa;AACTE,QAAAA,qBAAqB,CAACJ,KAAD,CAArB;AACH;AACJ,KAnBD;;AAqBA,aAASI,qBAAT,CAA+BJ,KAA/B,EAAsC;AAClC,UAAIK,OAAO,GAAGL,KAAK,CAACZ,OAApB;;AAEA,WAAK,IAAIkB,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGxC,SAAS,CAACyC,MAA9B,EAAsCD,CAAC,EAAvC,EAA2C;AACvCxC,QAAAA,SAAS,CAACwC,CAAD,CAAT,CAAarB,gBAAb,CAA8B,OAA9B,EAAuCuB,iBAAvC;AACH;;AAED,UAAIjC,SAAS,CAAC8B,OAAD,CAAb,EAAwB;AACpB,YAAII,YAAY,GAAGjC,WAAW,GAAGD,SAAS,CAAC8B,OAAD,CAA1C;;AAEA,YAAI,OAAOvC,SAAS,CAAC2C,YAAD,CAAhB,KAAmC,WAAvC,EAAoD;AAChD3C,UAAAA,SAAS,CAAC2C,YAAD,CAAT,CAAwBC,KAAxB;AACH,SAFD,MAEO,IAAIL,OAAO,KAAKrC,IAAI,CAACG,IAAjB,IAAyBkC,OAAO,KAAKrC,IAAI,CAACI,EAA9C,EAAkD;AACrDN,UAAAA,SAAS,CAACA,SAAS,CAACyC,MAAV,GAAmB,CAApB,CAAT,CAAgCG,KAAhC;AACH,SAFM,MAEA,IAAIL,OAAO,KAAKrC,IAAI,CAACK,KAAjB,IAA0BgC,OAAO,IAAIrC,IAAI,CAACM,IAA9C,EAAoD;AACvDR,UAAAA,SAAS,CAAC,CAAD,CAAT,CAAa4C,KAAb;AACH;AACJ;AACJ;;AAED,aAASF,iBAAT,CAA2BR,KAA3B,EAAkC;AAC9B,UAAIW,MAAM,GAAGX,KAAK,CAACW,MAAnB;AAEAC,MAAAA,UAAU,CAACC,aAAD,EAAgB,CAAhB,EAAmBF,MAAnB,CAAV;AACH,KArHmC,CAuHpC;;;AACA,aAASE,aAAT,CAAuBF,MAAvB,EAA+B;AAC3B,UAAIG,OAAO,GAAGC,QAAQ,CAACC,aAAvB;;AAEA,UAAIL,MAAM,KAAKG,OAAf,EAAwB;AACpB/B,QAAAA,YAAY,CAAC4B,MAAM,CAAC7B,YAAP,CAAoB,OAApB,CAAD,CAAZ;AACH;AACJ;;AAEDL,IAAAA,IAAI;AACJO,IAAAA,UAAU;AACb,GAlID;;AAoIA,QAAMiC,YAAY,GAAGF,QAAQ,CAAChD,gBAAT,CAA0B,2BAA1B,CAArB;AAEAkD,EAAAA,YAAY,CAACvC,OAAb,CAAqBhB,WAAW,IAAI;AAChCD,IAAAA,cAAc,CAACC,WAAD,CAAd;AACH,GAFD;AAIH,CA5ID,I","sources":["webpack://simple-tabs-block/./src/tabs/view.js"],"sourcesContent":["(() => {\n\n const cloudCatchTabs = (tabsWrapper) => {\n const tabsContainer = tabsWrapper.querySelector('.wp-block-cloudcatch-tabs__container');\n const tabLabelsContainer = tabsWrapper.querySelector('.wp-block-cloudcatch-tabs__tabs');\n const tabLabels = tabLabelsContainer.querySelectorAll('[role=\"tab\"]');\n\n const keys = {\n end: 35,\n home: 36,\n left: 37,\n up: 38,\n right: 39,\n down: 40,\n };\n\n // Add or subtract depending on key pressed\n const direction = {\n 37: -1,\n 38: -1,\n 39: 1,\n 40: 1,\n };\n\n let activeIndex = 0;\n\n const init = () => {\n tabLabels.forEach(tabLabel => {\n if (tabLabel.classList.contains('active')) {\n activeIndex = tabLabel.getAttribute('tabid');\n }\n });\n\n setActiveTab(activeIndex);\n };\n\n const initEvents = () => {\n tabLabels.forEach(tabLabel => {\n tabLabel.addEventListener('click', (e) => {\n setActiveTab(tabLabel.getAttribute('tabid'));\n });\n\n tabLabel.addEventListener('keyup', (e) => {\n var key = e.keyCode;\n\n switch (key) {\n case keys.left:\n case keys.right:\n determineOrientation(e);\n break;\n }\n });\n });\n };\n\n const setActiveTab = (id) => {\n tabsContainer.querySelectorAll(':scope > *').forEach(tab => {\n tab.style.display = 'none';\n });\n\n tabLabelsContainer.querySelectorAll(':scope > *').forEach(label => {\n label.classList.remove('active');\n label.setAttribute( 'aria-selected', 'false' );\n });\n\n activeIndex = parseInt(id);\n\n const currentTabLabel = tabLabelsContainer.querySelector('[tabid=\"' + activeIndex + '\"]');\n currentTabLabel.classList.add('active');\n currentTabLabel.setAttribute( 'aria-selected', 'true' );\n\n tabsContainer.querySelector('[tabid=\"' + activeIndex + '\"]').style.display = 'block';\n };\n\n const determineOrientation = (event) => {\n var key = event.keyCode;\n var vertical = tabLabelsContainer.getAttribute('aria-orientation') == 'vertical';\n var proceed = false;\n\n if (vertical) {\n if (key === keys.up || key === keys.down) {\n event.preventDefault();\n proceed = true;\n }\n } else {\n if (key === keys.left || key === keys.right) {\n proceed = true;\n }\n }\n\n if (proceed) {\n switchTabOnArrowPress(event);\n }\n };\n\n function switchTabOnArrowPress(event) {\n var pressed = event.keyCode;\n\n for (var x = 0; x < tabLabels.length; x++) {\n tabLabels[x].addEventListener('focus', focusEventHandler);\n }\n\n if (direction[pressed]) {\n var desiredIndex = activeIndex + direction[pressed];\n\n if (typeof tabLabels[desiredIndex] !== 'undefined') {\n tabLabels[desiredIndex].focus();\n } else if (pressed === keys.left || pressed === keys.up) {\n tabLabels[tabLabels.length - 1].focus();\n } else if (pressed === keys.right || pressed == keys.down) {\n tabLabels[0].focus();\n }\n }\n }\n\n function focusEventHandler(event) {\n var target = event.target;\n\n setTimeout(checkTabFocus, 0, target);\n }\n\n // Only activate tab on focus if it still has focus after the delay\n function checkTabFocus(target) {\n var focused = document.activeElement;\n\n if (target === focused) {\n setActiveTab(target.getAttribute('tabid'));\n }\n }\n\n init();\n initEvents();\n };\n\n const tabsWrappers = document.querySelectorAll('.wp-block-cloudcatch-tabs');\n\n tabsWrappers.forEach(tabsWrapper => {\n cloudCatchTabs(tabsWrapper);\n });\n\n})();\n\n"],"names":["cloudCatchTabs","tabsWrapper","tabsContainer","querySelector","tabLabelsContainer","tabLabels","querySelectorAll","keys","end","home","left","up","right","down","direction","activeIndex","init","forEach","tabLabel","classList","contains","getAttribute","setActiveTab","initEvents","addEventListener","e","key","keyCode","determineOrientation","id","tab","style","display","label","remove","setAttribute","parseInt","currentTabLabel","add","event","vertical","proceed","preventDefault","switchTabOnArrowPress","pressed","x","length","focusEventHandler","desiredIndex","focus","target","setTimeout","checkTabFocus","focused","document","activeElement","tabsWrappers"],"sourceRoot":""} \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 0e4df84..9b3f05d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1278,9 +1278,9 @@ } }, "@eslint/eslintrc": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.2.1.tgz", - "integrity": "sha512-bxvbYnBPN1Gibwyp6NrpnFzA3YtRL3BBAyEAFVIpNTm2Rn4Vy87GA5M4aSn3InRrlsbX5N0GW7XIx+U4SAEKdQ==", + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.2.2.tgz", + "integrity": "sha512-lTVWHs7O2hjBFZunXTZYnYqtB9GakA1lnxIf+gKq2nY5gxkkNi/lQvveW6t8gFdOHTg6nG50Xs95PrLqVpcaLg==", "dev": true, "requires": { "ajv": "^6.12.4", @@ -1655,9 +1655,9 @@ } }, "@jridgewell/resolve-uri": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.5.tgz", - "integrity": "sha512-VPeQ7+wH0itvQxnG+lIzWgkysKIr3L9sslimFW55rHMdGu/qCQ5z5h9zq4gI8uBtqkpHhsF4Z/OwExufUCThew==", + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.6.tgz", + "integrity": "sha512-R7xHtBSNm+9SyvpJkdQl+qrM3Hm2fea3Ef197M3mUug+v+yR+Rhfbs7PBtcBUVnIWJ4JcAdjvij+c8hXS9p5aw==", "dev": true }, "@jridgewell/sourcemap-codec": { @@ -1667,9 +1667,9 @@ "dev": true }, "@jridgewell/trace-mapping": { - "version": "0.3.4", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.4.tgz", - "integrity": "sha512-vFv9ttIedivx0ux3QSjhgtCVjPZd5l46ZOMDSCwnH1yUO2e964gO8LZGyv2QkqcgR6TnBU1v+1IFqmeoG+0UJQ==", + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", + "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", "dev": true, "requires": { "@jridgewell/resolve-uri": "^3.0.3", @@ -1739,6 +1739,58 @@ "integrity": "sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==", "dev": true }, + "@semantic-release/changelog": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/@semantic-release/changelog/-/changelog-5.0.1.tgz", + "integrity": "sha512-unvqHo5jk4dvAf2nZ3aw4imrlwQ2I50eVVvq9D47Qc3R+keNqepx1vDYwkjF8guFXnOYaYcR28yrZWno1hFbiw==", + "dev": true, + "requires": { + "@semantic-release/error": "^2.1.0", + "aggregate-error": "^3.0.0", + "fs-extra": "^9.0.0", + "lodash": "^4.17.4" + } + }, + "@semantic-release/error": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@semantic-release/error/-/error-2.2.0.tgz", + "integrity": "sha512-9Tj/qn+y2j+sjCI3Jd+qseGtHjOAeg7dU2/lVcqIQ9TV3QDaDXDYXcoOHU+7o2Hwh8L8ymL4gfuO7KxDs3q2zg==", + "dev": true + }, + "@semantic-release/git": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@semantic-release/git/-/git-9.0.1.tgz", + "integrity": "sha512-75P03s9v0xfrH9ffhDVWRIX0fgWBvJMmXhUU0rMTKYz47oMXU5O95M/ocgIKnVJlWZYoC+LpIe4Ye6ev8CrlUQ==", + "dev": true, + "requires": { + "@semantic-release/error": "^2.1.0", + "aggregate-error": "^3.0.0", + "debug": "^4.0.0", + "dir-glob": "^3.0.0", + "execa": "^5.0.0", + "lodash": "^4.17.4", + "micromatch": "^4.0.0", + "p-reduce": "^2.0.0" + } + }, + "@semantic-release/release-notes-generator": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/@semantic-release/release-notes-generator/-/release-notes-generator-9.0.3.tgz", + "integrity": "sha512-hMZyddr0u99OvM2SxVOIelHzly+PP3sYtJ8XOLHdMp8mrluN5/lpeTnIO27oeCYdupY/ndoGfvrqDjHqkSyhVg==", + "dev": true, + "requires": { + "conventional-changelog-angular": "^5.0.0", + "conventional-changelog-writer": "^4.0.0", + "conventional-commits-filter": "^2.0.0", + "conventional-commits-parser": "^3.0.0", + "debug": "^4.0.0", + "get-stream": "^6.0.0", + "import-from": "^3.0.0", + "into-stream": "^6.0.0", + "lodash": "^4.17.4", + "read-pkg-up": "^7.0.0" + } + }, "@sideway/address": { "version": "4.1.4", "resolved": "https://registry.npmjs.org/@sideway/address/-/address-4.1.4.tgz", @@ -1947,9 +1999,9 @@ } }, "@types/babel__traverse": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.14.2.tgz", - "integrity": "sha512-K2waXdXBi2302XUdcHcR1jCeU0LL4TD9HRs/gk0N2Xvrht+G/BfJa4QObBQZfhMdxiCpV3COl5Nfq4uKTeTnJA==", + "version": "7.17.0", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.17.0.tgz", + "integrity": "sha512-r8aveDbd+rzGP+ykSdF3oPuTVRWRfbBiHl0rVDM2yNEmSMXfkObQLV46b4RnCv3Lra51OlfnZhkkFaDl2MIRaA==", "dev": true, "requires": { "@babel/types": "^7.3.0" @@ -2143,9 +2195,9 @@ "dev": true }, "@types/node": { - "version": "17.0.23", - "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.23.tgz", - "integrity": "sha512-UxDxWn7dl97rKVeVS61vErvw086aCYhDLyvRQZ5Rk65rZKepaFdm53GeqXaKBuOhED4e9uWq34IC3TdSdJJ2Gw==", + "version": "17.0.27", + "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.27.tgz", + "integrity": "sha512-4/Ke7bbWOasuT3kceBZFGakP1dYN2XFd8v2l9bqF2LNWrmeU07JLpp56aEeG6+Q3olqO5TvXpW0yaiYnZJ5CXg==", "dev": true }, "@types/normalize-package-data": { @@ -2196,9 +2248,9 @@ } }, "@types/react-dom": { - "version": "17.0.15", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-17.0.15.tgz", - "integrity": "sha512-Tr9VU9DvNoHDWlmecmcsE5ZZiUkYx+nKBzum4Oxe1K0yJVyBlfbq7H3eXjxXqJczBKqPGq3EgfTru4MgKb9+Yw==", + "version": "17.0.16", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-17.0.16.tgz", + "integrity": "sha512-DWcXf8EbMrO/gWnQU7Z88Ws/p16qxGpPyjTKTpmBSFKeE+HveVubqGO1CVK7FrwlWD5MuOcvh8gtd0/XO38NdQ==", "dev": true, "requires": { "@types/react": "^17" @@ -2361,14 +2413,14 @@ } }, "@typescript-eslint/eslint-plugin": { - "version": "5.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.19.0.tgz", - "integrity": "sha512-w59GpFqDYGnWFim9p6TGJz7a3qWeENJuAKCqjGSx+Hq/bwq3RZwXYqy98KIfN85yDqz9mq6QXiY5h0FjGQLyEg==", + "version": "5.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.21.0.tgz", + "integrity": "sha512-fTU85q8v5ZLpoZEyn/u1S2qrFOhi33Edo2CZ0+q1gDaWWm0JuPh3bgOyU8lM0edIEYgKLDkPFiZX2MOupgjlyg==", "dev": true, "requires": { - "@typescript-eslint/scope-manager": "5.19.0", - "@typescript-eslint/type-utils": "5.19.0", - "@typescript-eslint/utils": "5.19.0", + "@typescript-eslint/scope-manager": "5.21.0", + "@typescript-eslint/type-utils": "5.21.0", + "@typescript-eslint/utils": "5.21.0", "debug": "^4.3.2", "functional-red-black-tree": "^1.0.1", "ignore": "^5.1.8", @@ -2389,61 +2441,61 @@ } }, "@typescript-eslint/experimental-utils": { - "version": "5.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-5.19.0.tgz", - "integrity": "sha512-F+X/TTzmb2UXbghY1LrNLNDjMcGZMhKzXuzvu0xD+YEB77EamLM7zMOLuz2kP5807IJRDLBoAFFPYa7HT62sYg==", + "version": "5.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-5.21.0.tgz", + "integrity": "sha512-mzF6ert/6iQoESV0z9v5/mEaJRKL4fv68rHoZ6exM38xjxkw4MNx54B7ferrnMTM/GIRKLDaJ3JPRi+Dxa5Hlg==", "dev": true, "requires": { - "@typescript-eslint/utils": "5.19.0" + "@typescript-eslint/utils": "5.21.0" } }, "@typescript-eslint/parser": { - "version": "5.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.19.0.tgz", - "integrity": "sha512-yhktJjMCJX8BSBczh1F/uY8wGRYrBeyn84kH6oyqdIJwTGKmzX5Qiq49LRQ0Jh0LXnWijEziSo6BRqny8nqLVQ==", + "version": "5.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.21.0.tgz", + "integrity": "sha512-8RUwTO77hstXUr3pZoWZbRQUxXcSXafZ8/5gpnQCfXvgmP9gpNlRGlWzvfbEQ14TLjmtU8eGnONkff8U2ui2Eg==", "dev": true, "requires": { - "@typescript-eslint/scope-manager": "5.19.0", - "@typescript-eslint/types": "5.19.0", - "@typescript-eslint/typescript-estree": "5.19.0", + "@typescript-eslint/scope-manager": "5.21.0", + "@typescript-eslint/types": "5.21.0", + "@typescript-eslint/typescript-estree": "5.21.0", "debug": "^4.3.2" } }, "@typescript-eslint/scope-manager": { - "version": "5.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.19.0.tgz", - "integrity": "sha512-Fz+VrjLmwq5fbQn5W7cIJZ066HxLMKvDEmf4eu1tZ8O956aoX45jAuBB76miAECMTODyUxH61AQM7q4/GOMQ5g==", + "version": "5.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.21.0.tgz", + "integrity": "sha512-XTX0g0IhvzcH/e3393SvjRCfYQxgxtYzL3UREteUneo72EFlt7UNoiYnikUtmGVobTbhUDByhJ4xRBNe+34kOQ==", "dev": true, "requires": { - "@typescript-eslint/types": "5.19.0", - "@typescript-eslint/visitor-keys": "5.19.0" + "@typescript-eslint/types": "5.21.0", + "@typescript-eslint/visitor-keys": "5.21.0" } }, "@typescript-eslint/type-utils": { - "version": "5.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.19.0.tgz", - "integrity": "sha512-O6XQ4RI4rQcBGshTQAYBUIGsKqrKeuIOz9v8bckXZnSeXjn/1+BDZndHLe10UplQeJLXDNbaZYrAytKNQO2T4Q==", + "version": "5.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.21.0.tgz", + "integrity": "sha512-MxmLZj0tkGlkcZCSE17ORaHl8Th3JQwBzyXL/uvC6sNmu128LsgjTX0NIzy+wdH2J7Pd02GN8FaoudJntFvSOw==", "dev": true, "requires": { - "@typescript-eslint/utils": "5.19.0", + "@typescript-eslint/utils": "5.21.0", "debug": "^4.3.2", "tsutils": "^3.21.0" } }, "@typescript-eslint/types": { - "version": "5.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.19.0.tgz", - "integrity": "sha512-zR1ithF4Iyq1wLwkDcT+qFnhs8L5VUtjgac212ftiOP/ZZUOCuuF2DeGiZZGQXGoHA50OreZqLH5NjDcDqn34w==", + "version": "5.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.21.0.tgz", + "integrity": "sha512-XnOOo5Wc2cBlq8Lh5WNvAgHzpjnEzxn4CJBwGkcau7b/tZ556qrWXQz4DJyChYg8JZAD06kczrdgFPpEQZfDsA==", "dev": true }, "@typescript-eslint/typescript-estree": { - "version": "5.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.19.0.tgz", - "integrity": "sha512-dRPuD4ocXdaE1BM/dNR21elSEUPKaWgowCA0bqJ6YbYkvtrPVEvZ+zqcX5a8ECYn3q5iBSSUcBBD42ubaOp0Hw==", + "version": "5.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.21.0.tgz", + "integrity": "sha512-Y8Y2T2FNvm08qlcoSMoNchh9y2Uj3QmjtwNMdRQkcFG7Muz//wfJBGBxh8R7HAGQFpgYpdHqUpEoPQk+q9Kjfg==", "dev": true, "requires": { - "@typescript-eslint/types": "5.19.0", - "@typescript-eslint/visitor-keys": "5.19.0", + "@typescript-eslint/types": "5.21.0", + "@typescript-eslint/visitor-keys": "5.21.0", "debug": "^4.3.2", "globby": "^11.0.4", "is-glob": "^4.0.3", @@ -2463,26 +2515,26 @@ } }, "@typescript-eslint/utils": { - "version": "5.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.19.0.tgz", - "integrity": "sha512-ZuEckdupXpXamKvFz/Ql8YnePh2ZWcwz7APICzJL985Rp5C2AYcHO62oJzIqNhAMtMK6XvrlBTZeNG8n7gS3lQ==", + "version": "5.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.21.0.tgz", + "integrity": "sha512-q/emogbND9wry7zxy7VYri+7ydawo2HDZhRZ5k6yggIvXa7PvBbAAZ4PFH/oZLem72ezC4Pr63rJvDK/sTlL8Q==", "dev": true, "requires": { "@types/json-schema": "^7.0.9", - "@typescript-eslint/scope-manager": "5.19.0", - "@typescript-eslint/types": "5.19.0", - "@typescript-eslint/typescript-estree": "5.19.0", + "@typescript-eslint/scope-manager": "5.21.0", + "@typescript-eslint/types": "5.21.0", + "@typescript-eslint/typescript-estree": "5.21.0", "eslint-scope": "^5.1.1", "eslint-utils": "^3.0.0" } }, "@typescript-eslint/visitor-keys": { - "version": "5.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.19.0.tgz", - "integrity": "sha512-Ym7zZoMDZcAKWsULi2s7UMLREdVQdScPQ/fKWMYefarCztWlHPFVJo8racf8R0Gc8FAEJ2eD4of8As1oFtnQlQ==", + "version": "5.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.21.0.tgz", + "integrity": "sha512-SX8jNN+iHqAF0riZQMkm7e8+POXa/fXw5cxL+gjpyP+FI+JVNhii53EmQgDAfDcBpFekYSlO0fGytMQwRiMQCA==", "dev": true, "requires": { - "@typescript-eslint/types": "5.19.0", + "@typescript-eslint/types": "5.21.0", "eslint-visitor-keys": "^3.0.0" }, "dependencies": { @@ -2702,9 +2754,9 @@ "dev": true }, "@wordpress/babel-preset-default": { - "version": "6.8.0", - "resolved": "https://registry.npmjs.org/@wordpress/babel-preset-default/-/babel-preset-default-6.8.0.tgz", - "integrity": "sha512-faEt3UqDNsUyF/047/vNB4dqF4RPk2T0W5ztvn0TTGPBP/pMOtmVPJoP/Op3bX9Dpv60o913u/NoVHt1F/fcDQ==", + "version": "6.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/babel-preset-default/-/babel-preset-default-6.9.0.tgz", + "integrity": "sha512-kwkkg/WaIv8BtiGJN6cWHaTm1tFKkMhawkQepJcIRDz5VAPEL8+iIreuUNLGkqoN9sZMVdnGPk2Uc0fPqE91Xg==", "dev": true, "requires": { "@babel/core": "^7.16.0", @@ -2715,16 +2767,16 @@ "@babel/runtime": "^7.16.0", "@wordpress/babel-plugin-import-jsx-pragma": "^3.1.2", "@wordpress/browserslist-config": "^4.1.2", - "@wordpress/element": "^4.4.0", - "@wordpress/warning": "^2.6.0", + "@wordpress/element": "^4.5.0", + "@wordpress/warning": "^2.7.0", "browserslist": "^4.17.6", "core-js": "^3.19.1" } }, "@wordpress/base-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/@wordpress/base-styles/-/base-styles-4.3.0.tgz", - "integrity": "sha512-e9Z+txhEQ3zyAHkzzsuYg1ADFhKArz1eGU3ayqCNtCdakrgNjI6Q/sPODI26LlwTmjJPBIJ5wSCBrsDjMhdWqA==", + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@wordpress/base-styles/-/base-styles-4.4.0.tgz", + "integrity": "sha512-9ugtTev/eH4RNIpu9nSNygJM8ONJ2cVAmvYDzOG0b7E4ut2RTph5okTSunOx0ny/nsxWLrj6GqVsS6+liTB6GQ==", "dev": true }, "@wordpress/browserslist-config": { @@ -2744,40 +2796,40 @@ } }, "@wordpress/element": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-4.4.0.tgz", - "integrity": "sha512-3aQsvt7Nth6/OxOs9JTMKIb6Hu5uS4wdsU7fgb3aAv36Li3+fs6gdhhn2YdqWCWiKX2XVgEiFx6B7TK8+AglGw==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-4.5.0.tgz", + "integrity": "sha512-24/QUS/EYZQY/qH3Mm9ntrwbuKZN7/lYK752NFquVMq1RtWfhEulVXxgLprIm08c2Rsb8u8dJ8YdqVougo/8JQ==", "dev": true, "requires": { "@babel/runtime": "^7.16.0", "@types/react": "^17.0.37", "@types/react-dom": "^17.0.11", - "@wordpress/escape-html": "^2.6.0", + "@wordpress/escape-html": "^2.7.0", "lodash": "^4.17.21", "react": "^17.0.2", "react-dom": "^17.0.2" } }, "@wordpress/escape-html": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/@wordpress/escape-html/-/escape-html-2.6.0.tgz", - "integrity": "sha512-gA+49nsTiQuxbgx4g4P9i9q3ea0RLOD6yBVSvtMzUX/vRhlz7xvlaj9PhFkbZu1FD+IHgBLuvRqHPbHNEqMyyQ==", + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/@wordpress/escape-html/-/escape-html-2.7.0.tgz", + "integrity": "sha512-PDTAImkw0yDrW06NSO2qLklm0QXegoykVZWci5xa8qnYSCBrkBrzv9G3cHtCKsGZzfZ43WYYKIpO6srJyM+l0A==", "dev": true, "requires": { "@babel/runtime": "^7.16.0" } }, "@wordpress/eslint-plugin": { - "version": "12.0.0", - "resolved": "https://registry.npmjs.org/@wordpress/eslint-plugin/-/eslint-plugin-12.0.0.tgz", - "integrity": "sha512-X5qJ9IQYCR9FeJcbo9jklOcPMvpt+SlWPtMw1o97XbciPkvqR0yJl8lybN696URVNTYaO5lwc7o1+rONujdP3A==", + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/@wordpress/eslint-plugin/-/eslint-plugin-12.1.0.tgz", + "integrity": "sha512-NjLBnlYmUJL/W8XBYQhX3h/BhCXdOVa1O+PB1IrBTgu6Lirl1L6Bqr1gY7upX1bGTnjmMyiI7LCNtQu73k+cLA==", "dev": true, "requires": { "@babel/eslint-parser": "^7.16.0", "@typescript-eslint/eslint-plugin": "^5.3.0", "@typescript-eslint/parser": "^5.3.0", - "@wordpress/babel-preset-default": "^6.8.0", - "@wordpress/prettier-config": "^1.1.3", + "@wordpress/babel-preset-default": "^6.9.0", + "@wordpress/prettier-config": "^1.2.0", "cosmiconfig": "^7.0.0", "eslint-config-prettier": "^8.3.0", "eslint-plugin-import": "^2.25.2", @@ -2833,38 +2885,38 @@ "dev": true }, "@wordpress/postcss-plugins-preset": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/@wordpress/postcss-plugins-preset/-/postcss-plugins-preset-3.6.0.tgz", - "integrity": "sha512-R6mihlMolkZPZ4O/0PuuKdD76dthih4aeaRzLSX7nduzBjHt6UYHWCk10m5mktDg4fyK7l+J4nRrQcX5T+PQdg==", + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@wordpress/postcss-plugins-preset/-/postcss-plugins-preset-3.7.0.tgz", + "integrity": "sha512-7pMLv/ECIyPjKGMhRNMM/r4kJqTjJV5/MvftDYbIjhJTAyykpUsXWJCJnMOmDdF2kQNWKd3FRMYxIvw0br0N7g==", "dev": true, "requires": { - "@wordpress/base-styles": "^4.3.0", + "@wordpress/base-styles": "^4.4.0", "autoprefixer": "^10.2.5" } }, "@wordpress/prettier-config": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@wordpress/prettier-config/-/prettier-config-1.1.3.tgz", - "integrity": "sha512-0ogGFvywFxVVhw5rXZUCDCV7aaw2KII5a3Xy0t1CAJYBP1TCF7tPNZIRyGD4bPzm5FM6IjmUMyB6NPzwRnpXrg==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@wordpress/prettier-config/-/prettier-config-1.2.0.tgz", + "integrity": "sha512-/hRr/p5rlSptjg82Mdy5rQ+mvW4GWCoKpe0FHC3oGy+E6SRcYfVGpnGCtmZa4TY69STD+eu59pCTl1J/EgUIUA==", "dev": true }, "@wordpress/scripts": { - "version": "22.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/scripts/-/scripts-22.4.0.tgz", - "integrity": "sha512-peHLqT7J1t6xHRx/BhCVbU8pbRzpgwEvKYY/Vz09Ulg7khjCU0zbBG9delA42AdODKaofF2IAImZvDuq9Q1fJw==", + "version": "22.5.0", + "resolved": "https://registry.npmjs.org/@wordpress/scripts/-/scripts-22.5.0.tgz", + "integrity": "sha512-ghvv8ncruDjmAsoKK1pbYpRr3nA89UNeNm7BO/Sk5jV204ZJtLaL6Ie31LSrSIhX6zY/8dBFYSRzkphYQcKSGQ==", "dev": true, "requires": { "@babel/core": "^7.16.0", "@pmmmwh/react-refresh-webpack-plugin": "^0.5.2", "@svgr/webpack": "^6.2.1", - "@wordpress/babel-preset-default": "^6.8.0", + "@wordpress/babel-preset-default": "^6.9.0", "@wordpress/browserslist-config": "^4.1.2", "@wordpress/dependency-extraction-webpack-plugin": "^3.4.1", - "@wordpress/eslint-plugin": "^12.0.0", + "@wordpress/eslint-plugin": "^12.1.0", "@wordpress/jest-preset-default": "^8.1.1", "@wordpress/npm-package-json-lint-config": "^4.1.2", - "@wordpress/postcss-plugins-preset": "^3.6.0", - "@wordpress/prettier-config": "^1.1.3", + "@wordpress/postcss-plugins-preset": "^3.7.0", + "@wordpress/prettier-config": "^1.2.0", "@wordpress/stylelint-config": "^20.0.2", "adm-zip": "^0.5.9", "babel-jest": "^27.4.5", @@ -2887,8 +2939,8 @@ "jest": "^27.4.5", "jest-dev-server": "^6.0.2", "jest-environment-node": "^27.4.4", - "markdownlint": "^0.23.1", - "markdownlint-cli": "^0.27.1", + "markdownlint": "^0.25.1", + "markdownlint-cli": "^0.31.1", "merge-deep": "^3.0.3", "mini-css-extract-plugin": "^2.5.1", "minimist": "^1.2.0", @@ -2924,9 +2976,9 @@ } }, "@wordpress/warning": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/@wordpress/warning/-/warning-2.6.0.tgz", - "integrity": "sha512-VWdFzDXt0ZQydNvvl0qjlPbqsCA7ZPupwV6U3gMnvMxELirAGONF0zjlD9/y+u7WGndRctzIJC/Er7qBhHVcNA==", + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/@wordpress/warning/-/warning-2.7.0.tgz", + "integrity": "sha512-mKHqCB63bDdT3OrAQ/iT+D4a4JqljuhJmP2jc+N8+Ta7a8nWglvvS4UGcfMKwEmy/4l49OljAp2o1ClVP62PsA==", "dev": true }, "@xtuc/ieee754": { @@ -2941,10 +2993,20 @@ "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", "dev": true }, + "JSONStream": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", + "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", + "dev": true, + "requires": { + "jsonparse": "^1.2.0", + "through": ">=2.2.7 <3" + } + }, "abab": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.5.tgz", - "integrity": "sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q==", + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", + "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", "dev": true }, "accepts": { @@ -2958,9 +3020,9 @@ } }, "acorn": { - "version": "8.7.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.0.tgz", - "integrity": "sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ==", + "version": "8.7.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.1.tgz", + "integrity": "sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A==", "dev": true }, "acorn-globals": { @@ -3014,6 +3076,16 @@ "debug": "4" } }, + "aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dev": true, + "requires": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + } + }, "ajv": { "version": "6.12.6", "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", @@ -3146,6 +3218,12 @@ "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==", "dev": true }, + "array-ify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-ify/-/array-ify-1.0.0.tgz", + "integrity": "sha1-nlKHYrSpBmrRY6aWKjZEGOlibs4=", + "dev": true + }, "array-includes": { "version": "3.1.4", "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.4.tgz", @@ -3227,9 +3305,9 @@ "dev": true }, "async": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", - "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", + "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", "dev": true, "requires": { "lodash": "^4.17.14" @@ -3241,14 +3319,20 @@ "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", "dev": true }, + "at-least-node": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", + "dev": true + }, "autoprefixer": { - "version": "10.4.4", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.4.tgz", - "integrity": "sha512-Tm8JxsB286VweiZ5F0anmbyGiNI3v3wGv3mz9W+cxEDYB/6jbnj6GM9H9mK3wIL8ftgl+C07Lcwb8PG5PCCPzA==", + "version": "10.4.5", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.5.tgz", + "integrity": "sha512-Fvd8yCoA7lNX/OUllvS+aS1I7WRBclGXsepbvT8ZaPgrH24rgXpZzF0/6Hh3ZEkwg+0AES/Osd196VZmYoEFtw==", "dev": true, "requires": { "browserslist": "^4.20.2", - "caniuse-lite": "^1.0.30001317", + "caniuse-lite": "^1.0.30001332", "fraction.js": "^4.2.0", "normalize-range": "^0.1.2", "picocolors": "^1.0.0", @@ -3293,9 +3377,9 @@ } }, "babel-loader": { - "version": "8.2.4", - "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.4.tgz", - "integrity": "sha512-8dytA3gcvPPPv4Grjhnt8b5IIiTcq/zeXOPk4iTYI0SVXcsmuGg7JtBRDp8S9X+gJfhQ8ektjXZlDu1Bb33U8A==", + "version": "8.2.5", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.5.tgz", + "integrity": "sha512-OSiFfH89LrEMiWd4pLNqGz4CwJDtbs2ZVc+iGu2HrkRfPxId9F2anQj38IxWpmRfsUY0aBZYi1EFcd3mhtRMLQ==", "dev": true, "requires": { "find-cache-dir": "^3.3.1", @@ -3453,21 +3537,23 @@ } }, "body-parser": { - "version": "1.19.2", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.2.tgz", - "integrity": "sha512-SAAwOxgoCKMGs9uUAUFHygfLAyaniaoun6I8mFY9pRAJL9+Kec34aU+oIjDhTycub1jozEfEwx1W1IuOYxVSFw==", + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.0.tgz", + "integrity": "sha512-DfJ+q6EPcGKZD1QWUjSpqp+Q7bDQTsQIF4zfUAtZ6qk+H/3/QRhg9CEp39ss+/T2vw0+HaidC0ecJj/DRLIaKg==", "dev": true, "requires": { "bytes": "3.1.2", "content-type": "~1.0.4", "debug": "2.6.9", - "depd": "~1.1.2", - "http-errors": "1.8.1", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", "iconv-lite": "0.4.24", - "on-finished": "~2.3.0", - "qs": "6.9.7", - "raw-body": "2.4.3", - "type-is": "~1.6.18" + "on-finished": "2.4.1", + "qs": "6.10.3", + "raw-body": "2.5.1", + "type-is": "~1.6.18", + "unpipe": "1.0.0" }, "dependencies": { "bytes": { @@ -3494,9 +3580,9 @@ } }, "bonjour-service": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.0.11.tgz", - "integrity": "sha512-drMprzr2rDTCtgEE3VgdA9uUFaUHF+jXduwYSThHJnKMYM+FhI9Z3ph+TX3xy0LtgYHae6CHYPJ/2UnK8nQHcA==", + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.0.12.tgz", + "integrity": "sha512-pMmguXYCu63Ug37DluMKEHdxc+aaIf/ay4YbF8Gxtba+9d3u+rmEWy61VK3Z3hp8Rskok3BunHYnG0dUHAsblw==", "dev": true, "requires": { "array-flatten": "^2.1.2", @@ -3537,15 +3623,15 @@ "dev": true }, "browserslist": { - "version": "4.20.2", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.20.2.tgz", - "integrity": "sha512-CQOBCqp/9pDvDbx3xfMi+86pr4KXIf2FDkTTdeuYw8OxS9t898LA1Khq57gtufFILXpfgsSx5woNgsBgvGjpsA==", + "version": "4.20.3", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.20.3.tgz", + "integrity": "sha512-NBhymBQl1zM0Y5dQT/O+xiLP9/rzOIQdKM/eMJBAq7yBgaB6krIYLGejrwVYnSHZdqjscB1SPuAjHwxjvN6Wdg==", "dev": true, "requires": { - "caniuse-lite": "^1.0.30001317", - "electron-to-chromium": "^1.4.84", + "caniuse-lite": "^1.0.30001332", + "electron-to-chromium": "^1.4.118", "escalade": "^3.1.1", - "node-releases": "^2.0.2", + "node-releases": "^2.0.3", "picocolors": "^1.0.0" } }, @@ -3640,9 +3726,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001331", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001331.tgz", - "integrity": "sha512-Y1xk6paHpUXKP/P6YjQv1xqyTbgAP05ycHBcRdQjTcyXlWol868sJJPlmk5ylOekw2BrucWes5jk+LvVd7WZ5Q==", + "version": "1.0.30001332", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001332.tgz", + "integrity": "sha512-10T30NYOEQtN6C11YGg411yebhvpnC6Z102+B95eAsN0oB6KUs01ivE8u+G6FMIRtIrVlYXhL+LUwQ3/hXwDWw==", "dev": true }, "chalk": { @@ -3801,9 +3887,9 @@ }, "dependencies": { "tslib": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", + "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==", "dev": true } } @@ -3867,6 +3953,12 @@ "integrity": "sha512-OlQdbZ7gLfGarSqxesMesDa5uz7KFbID8Kpq/SxIoNGDqY8lSYs0D+hhtBXhcdB3rcbXArFr7vlHheLk1voeNA==", "dev": true }, + "clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "dev": true + }, "clean-webpack-plugin": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/clean-webpack-plugin/-/clean-webpack-plugin-3.0.0.tgz", @@ -3982,6 +4074,16 @@ "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", "dev": true }, + "compare-func": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/compare-func/-/compare-func-2.0.0.tgz", + "integrity": "sha512-zHig5N+tPWARooBnb0Zx1MFcdfpyJrfTJ3Y5L+IFvUm8rM74hHz66z0gw0x4tijh5CorKkKUCnW82R2vmpeCRA==", + "dev": true, + "requires": { + "array-ify": "^1.0.0", + "dot-prop": "^5.1.0" + } + }, "compressible": { "version": "2.0.18", "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", @@ -4058,6 +4160,174 @@ "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", "dev": true }, + "conventional-changelog-angular": { + "version": "5.0.13", + "resolved": "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-5.0.13.tgz", + "integrity": "sha512-i/gipMxs7s8L/QeuavPF2hLnJgH6pEZAttySB6aiQLWcX3puWDL3ACVmvBhJGxnAy52Qc15ua26BufY6KpmrVA==", + "dev": true, + "requires": { + "compare-func": "^2.0.0", + "q": "^1.5.1" + } + }, + "conventional-changelog-writer": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/conventional-changelog-writer/-/conventional-changelog-writer-4.1.0.tgz", + "integrity": "sha512-WwKcUp7WyXYGQmkLsX4QmU42AZ1lqlvRW9mqoyiQzdD+rJWbTepdWoKJuwXTS+yq79XKnQNa93/roViPQrAQgw==", + "dev": true, + "requires": { + "compare-func": "^2.0.0", + "conventional-commits-filter": "^2.0.7", + "dateformat": "^3.0.0", + "handlebars": "^4.7.6", + "json-stringify-safe": "^5.0.1", + "lodash": "^4.17.15", + "meow": "^8.0.0", + "semver": "^6.0.0", + "split": "^1.0.0", + "through2": "^4.0.0" + }, + "dependencies": { + "hosted-git-info": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", + "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "meow": { + "version": "8.1.2", + "resolved": "https://registry.npmjs.org/meow/-/meow-8.1.2.tgz", + "integrity": "sha512-r85E3NdZ+mpYk1C6RjPFEMSE+s1iZMuHtsHAqY0DT3jZczl0diWUZ8g6oU7h0M9cD2EL+PzaYghhCLzR0ZNn5Q==", + "dev": true, + "requires": { + "@types/minimist": "^1.2.0", + "camelcase-keys": "^6.2.2", + "decamelize-keys": "^1.1.0", + "hard-rejection": "^2.1.0", + "minimist-options": "4.1.0", + "normalize-package-data": "^3.0.0", + "read-pkg-up": "^7.0.1", + "redent": "^3.0.0", + "trim-newlines": "^3.0.0", + "type-fest": "^0.18.0", + "yargs-parser": "^20.2.3" + } + }, + "normalize-package-data": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", + "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", + "dev": true, + "requires": { + "hosted-git-info": "^4.0.1", + "is-core-module": "^2.5.0", + "semver": "^7.3.4", + "validate-npm-package-license": "^3.0.1" + }, + "dependencies": { + "semver": { + "version": "7.3.7", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", + "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + } + } + }, + "type-fest": { + "version": "0.18.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz", + "integrity": "sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==", + "dev": true + } + } + }, + "conventional-commits-filter": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/conventional-commits-filter/-/conventional-commits-filter-2.0.7.tgz", + "integrity": "sha512-ASS9SamOP4TbCClsRHxIHXRfcGCnIoQqkvAzCSbZzTFLfcTqJVugB0agRgsEELsqaeWgsXv513eS116wnlSSPA==", + "dev": true, + "requires": { + "lodash.ismatch": "^4.4.0", + "modify-values": "^1.0.0" + } + }, + "conventional-commits-parser": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-3.2.4.tgz", + "integrity": "sha512-nK7sAtfi+QXbxHCYfhpZsfRtaitZLIA6889kFIouLvz6repszQDgxBu7wf2WbU+Dco7sAnNCJYERCwt54WPC2Q==", + "dev": true, + "requires": { + "JSONStream": "^1.0.4", + "is-text-path": "^1.0.1", + "lodash": "^4.17.15", + "meow": "^8.0.0", + "split2": "^3.0.0", + "through2": "^4.0.0" + }, + "dependencies": { + "hosted-git-info": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", + "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "meow": { + "version": "8.1.2", + "resolved": "https://registry.npmjs.org/meow/-/meow-8.1.2.tgz", + "integrity": "sha512-r85E3NdZ+mpYk1C6RjPFEMSE+s1iZMuHtsHAqY0DT3jZczl0diWUZ8g6oU7h0M9cD2EL+PzaYghhCLzR0ZNn5Q==", + "dev": true, + "requires": { + "@types/minimist": "^1.2.0", + "camelcase-keys": "^6.2.2", + "decamelize-keys": "^1.1.0", + "hard-rejection": "^2.1.0", + "minimist-options": "4.1.0", + "normalize-package-data": "^3.0.0", + "read-pkg-up": "^7.0.1", + "redent": "^3.0.0", + "trim-newlines": "^3.0.0", + "type-fest": "^0.18.0", + "yargs-parser": "^20.2.3" + } + }, + "normalize-package-data": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", + "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", + "dev": true, + "requires": { + "hosted-git-info": "^4.0.1", + "is-core-module": "^2.5.0", + "semver": "^7.3.4", + "validate-npm-package-license": "^3.0.1" + } + }, + "semver": { + "version": "7.3.7", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", + "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "type-fest": { + "version": "0.18.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz", + "integrity": "sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==", + "dev": true + } + } + }, "convert-source-map": { "version": "1.8.0", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", @@ -4068,9 +4338,9 @@ } }, "cookie": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", - "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", + "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", "dev": true }, "cookie-signature": { @@ -4170,18 +4440,18 @@ } }, "core-js": { - "version": "3.21.1", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.21.1.tgz", - "integrity": "sha512-FRq5b/VMrWlrmCzwRrpDYNxyHP9BcAZC+xHJaqTgIE5091ZV1NTmyh0sGOg5XqpnHvR0svdy0sv1gWA1zmhxig==", + "version": "3.22.2", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.22.2.tgz", + "integrity": "sha512-Z5I2vzDnEIqO2YhELVMFcL1An2CIsFe9Q7byZhs8c/QxummxZlAHw33TUHbIte987LkisOgL0LwQ1P9D6VISnA==", "dev": true }, "core-js-compat": { - "version": "3.21.1", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.21.1.tgz", - "integrity": "sha512-gbgX5AUvMb8gwxC7FLVWYT7Kkgu/y7+h/h1X43yJkNqhlK2fuYyQimqvKGNZFAY6CKii/GFKJ2cp/1/42TN36g==", + "version": "3.22.2", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.22.2.tgz", + "integrity": "sha512-Fns9lU06ZJ07pdfmPMu7OnkIKGPKDzXKIiuGlSvHHapwqMUF2QnnsWwtueFZtSyZEilP0o6iUeHQwpn7LxtLUw==", "dev": true, "requires": { - "browserslist": "^4.19.1", + "browserslist": "^4.20.2", "semver": "7.0.0" }, "dependencies": { @@ -4194,9 +4464,9 @@ } }, "core-js-pure": { - "version": "3.21.1", - "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.21.1.tgz", - "integrity": "sha512-12VZfFIu+wyVbBebyHmRTuEE/tZrB4tJToWcwAMcsp3h4+sHR+fMJWbKpYiCRWlhFBq+KNyO8rIV9rTkeVmznQ==", + "version": "3.22.2", + "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.22.2.tgz", + "integrity": "sha512-Lb+/XT4WC4PaCWWtZpNPaXmjiNDUe5CJuUtbkMrIM1kb1T/jJoAIp+bkVP/r5lHzMr+ZAAF8XHp7+my6Ol0ysQ==", "dev": true }, "core-util-is": { @@ -4457,6 +4727,12 @@ "whatwg-url": "^8.0.0" } }, + "dateformat": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz", + "integrity": "sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==", + "dev": true + }, "debug": { "version": "4.3.4", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", @@ -4536,12 +4812,13 @@ "dev": true }, "define-properties": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", - "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", + "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", "dev": true, "requires": { - "object-keys": "^1.0.12" + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" } }, "del": { @@ -4598,15 +4875,15 @@ "dev": true }, "depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", "dev": true }, "destroy": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", - "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", "dev": true }, "detect-newline": { @@ -4622,9 +4899,9 @@ "dev": true }, "devtools-protocol": { - "version": "0.0.969999", - "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.969999.tgz", - "integrity": "sha512-6GfzuDWU0OFAuOvBokXpXPLxjOJ5DZ157Ue3sGQQM3LgAamb8m0R0ruSfN0DDu+XG5XJgT50i6zZ/0o8RglreQ==", + "version": "0.0.981744", + "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.981744.tgz", + "integrity": "sha512-0cuGS8+jhR67Fy7qG3i3Pc7Aw494sb9yG9QgpG97SFVWwolgYjlhJg7n+UaHxOQT30d1TYu/EYe9k01ivLErIg==", "dev": true }, "diff-sequences": { @@ -4734,6 +5011,15 @@ "domhandler": "^4.2.0" } }, + "dot-prop": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", + "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", + "dev": true, + "requires": { + "is-obj": "^2.0.0" + } + }, "duplexer": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", @@ -4747,9 +5033,9 @@ "dev": true }, "electron-to-chromium": { - "version": "1.4.107", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.107.tgz", - "integrity": "sha512-Huen6taaVrUrSy8o7mGStByba8PfOWWluHNxSHGBrCgEdFVLtvdQDBr9LBCF9Uci8SYxh28QNNMO0oC17wbGAg==", + "version": "1.4.122", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.122.tgz", + "integrity": "sha512-VuLNxTIt8sBWIT2sd186xPd18Y8KcK8myLd9nMdSJOYZwFUxxbLVmX/T1VX+qqaytRlrYYQv39myxJdXtu7Ysw==", "dev": true }, "emittery": { @@ -4877,9 +5163,9 @@ } }, "es-abstract": { - "version": "1.19.4", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.19.4.tgz", - "integrity": "sha512-flV8e5g9/xulChMG48Fygk1ptpo4lQRJ0eJYtxJFgi7pklLx7EFcOJ34jnvr8pbWlaFN/AT1cZpe0hiFel9Hqg==", + "version": "1.19.5", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.19.5.tgz", + "integrity": "sha512-Aa2G2+Rd3b6kxEUKTF4TaW67czBLyAv3z7VOhYRU50YBx+bbsYZ9xQP4lMNazePuFlybXI0V4MruPos7qUo5fA==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -5022,12 +5308,12 @@ } }, "eslint": { - "version": "8.13.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.13.0.tgz", - "integrity": "sha512-D+Xei61eInqauAyTJ6C0q6x9mx7kTUC1KZ0m0LSEexR0V+e94K12LmWX076ZIsldwfQ2RONdaJe0re0TRGQbRQ==", + "version": "8.14.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.14.0.tgz", + "integrity": "sha512-3/CE4aJX7LNEiE3i6FeodHmI/38GZtWCsAtsymScmzYapx8q1nVVb+eLcLSzATmCPXw5pT4TqVs1E0OmxAd9tw==", "dev": true, "requires": { - "@eslint/eslintrc": "^1.2.1", + "@eslint/eslintrc": "^1.2.2", "@humanwhocodes/config-array": "^0.9.2", "ajv": "^6.10.0", "chalk": "^4.0.0", @@ -5637,38 +5923,39 @@ "dev": true }, "express": { - "version": "4.17.3", - "resolved": "https://registry.npmjs.org/express/-/express-4.17.3.tgz", - "integrity": "sha512-yuSQpz5I+Ch7gFrPCk4/c+dIBKlQUxtgwqzph132bsT6qhuzss6I8cLJQz7B3rFblzd6wtcI0ZbGltH/C4LjUg==", + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/express/-/express-4.18.0.tgz", + "integrity": "sha512-EJEXxiTQJS3lIPrU1AE2vRuT7X7E+0KBbpm5GSoK524yl0K8X+er8zS2P14E64eqsVNoWbMCT7MpmQ+ErAhgRg==", "dev": true, "requires": { "accepts": "~1.3.8", "array-flatten": "1.1.1", - "body-parser": "1.19.2", + "body-parser": "1.20.0", "content-disposition": "0.5.4", "content-type": "~1.0.4", - "cookie": "0.4.2", + "cookie": "0.5.0", "cookie-signature": "1.0.6", "debug": "2.6.9", - "depd": "~1.1.2", + "depd": "2.0.0", "encodeurl": "~1.0.2", "escape-html": "~1.0.3", "etag": "~1.8.1", - "finalhandler": "~1.1.2", + "finalhandler": "1.2.0", "fresh": "0.5.2", + "http-errors": "2.0.0", "merge-descriptors": "1.0.1", "methods": "~1.1.2", - "on-finished": "~2.3.0", + "on-finished": "2.4.1", "parseurl": "~1.3.3", "path-to-regexp": "0.1.7", "proxy-addr": "~2.0.7", - "qs": "6.9.7", + "qs": "6.10.3", "range-parser": "~1.2.1", "safe-buffer": "5.2.1", - "send": "0.17.2", - "serve-static": "1.14.2", + "send": "0.18.0", + "serve-static": "1.15.0", "setprototypeof": "1.2.0", - "statuses": "~1.5.0", + "statuses": "2.0.1", "type-is": "~1.6.18", "utils-merge": "1.0.1", "vary": "~1.1.2" @@ -5841,17 +6128,17 @@ } }, "finalhandler": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", - "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", "dev": true, "requires": { "debug": "2.6.9", "encodeurl": "~1.0.2", "escape-html": "~1.0.3", - "on-finished": "~2.3.0", + "on-finished": "2.4.1", "parseurl": "~1.3.3", - "statuses": "~1.5.0", + "statuses": "2.0.1", "unpipe": "~1.0.0" }, "dependencies": { @@ -6014,6 +6301,42 @@ "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", "dev": true }, + "from2": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", + "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "readable-stream": "^2.0.0" + }, + "dependencies": { + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, "fs-constants": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", @@ -6026,6 +6349,26 @@ "integrity": "sha1-mC1ok6+RjnLQjeyehnP/K1qNat0=", "dev": true }, + "fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dev": true, + "requires": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "dependencies": { + "universalify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", + "dev": true + } + } + }, "fs-monkey": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.3.tgz", @@ -6070,9 +6413,9 @@ "dev": true }, "functions-have-names": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.2.tgz", - "integrity": "sha512-bLgc3asbWdwPbx2mNk2S49kmJCuQeu0nfmaOgbs8WIyzzkw3r4htszdIi9Q9EMezDPTYuJx2wvjZ/EwgAthpnA==", + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", "dev": true }, "gensync": { @@ -6105,9 +6448,9 @@ "dev": true }, "get-stdin": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz", - "integrity": "sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg==", + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-9.0.0.tgz", + "integrity": "sha512-dVKBjfWisLAicarI2Sf+JuBE/DghV4UzNAVe9yhEJuzeREd3JhOTE9cUaJTeSa77fsbQUK3pcOpJfM59+VKZaA==", "dev": true }, "get-stream": { @@ -6224,6 +6567,27 @@ "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", "dev": true }, + "handlebars": { + "version": "4.7.7", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.7.tgz", + "integrity": "sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA==", + "dev": true, + "requires": { + "minimist": "^1.2.5", + "neo-async": "^2.6.0", + "source-map": "^0.6.1", + "uglify-js": "^3.1.4", + "wordwrap": "^1.0.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, "hard-rejection": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", @@ -6240,9 +6604,9 @@ } }, "has-bigints": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz", - "integrity": "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", "dev": true }, "has-flag": { @@ -6251,6 +6615,15 @@ "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", "dev": true }, + "has-property-descriptors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", + "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "dev": true, + "requires": { + "get-intrinsic": "^1.1.1" + } + }, "has-symbols": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", @@ -6383,15 +6756,15 @@ "dev": true }, "http-errors": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", - "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", "dev": true, "requires": { - "depd": "~1.1.2", + "depd": "2.0.0", "inherits": "2.0.4", "setprototypeof": "1.2.0", - "statuses": ">= 1.5.0 < 2", + "statuses": "2.0.1", "toidentifier": "1.0.1" } }, @@ -6424,9 +6797,9 @@ } }, "http-proxy-middleware": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.4.tgz", - "integrity": "sha512-m/4FxX17SUvz4lJ5WPXOHDUuCwIqXLfLHs1s0uZ3oYjhoXlx9csYxaOa0ElDEJ+h8Q4iJ1s+lTMbiCa4EXIJqg==", + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz", + "integrity": "sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==", "dev": true, "requires": { "@types/http-proxy": "^1.17.8", @@ -6437,9 +6810,9 @@ } }, "https-proxy-agent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz", - "integrity": "sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", "dev": true, "requires": { "agent-base": "6", @@ -6504,6 +6877,23 @@ "resolve-from": "^4.0.0" } }, + "import-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/import-from/-/import-from-3.0.0.tgz", + "integrity": "sha512-CiuXOFFSzkU5x/CR0+z7T91Iht4CXgfCxVOFRhh2Zyhg5wOpWvvDLQUsWl+gcN+QscYBjez8hDCt85O7RLDttQ==", + "dev": true, + "requires": { + "resolve-from": "^5.0.0" + }, + "dependencies": { + "resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true + } + } + }, "import-lazy": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-4.0.0.tgz", @@ -6571,6 +6961,16 @@ "integrity": "sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw==", "dev": true }, + "into-stream": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/into-stream/-/into-stream-6.0.0.tgz", + "integrity": "sha512-XHbaOAvP+uFKUFsOgoNPRjLkwB+I22JFPFe5OjTkQ0nwgj6+pSjb4NmB6VMxaPshLiOf+zcpOCBQuLwC1KHhZA==", + "dev": true, + "requires": { + "from2": "^2.3.0", + "p-is-promise": "^3.0.0" + } + }, "ipaddr.js": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.0.1.tgz", @@ -6646,9 +7046,9 @@ "dev": true }, "is-core-module": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz", - "integrity": "sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==", + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.9.0.tgz", + "integrity": "sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==", "dev": true, "requires": { "has": "^1.0.3" @@ -6735,6 +7135,12 @@ "has-tostringtag": "^1.0.0" } }, + "is-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", + "dev": true + }, "is-path-cwd": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", @@ -6835,6 +7241,15 @@ "has-symbols": "^1.0.2" } }, + "is-text-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-text-path/-/is-text-path-1.0.1.tgz", + "integrity": "sha1-Thqg+1G/vLPpJogAE5cgLBd1tm4=", + "dev": true, + "requires": { + "text-extensions": "^1.0.0" + } + }, "is-typedarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", @@ -6896,9 +7311,9 @@ "dev": true }, "istanbul-lib-instrument": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.1.0.tgz", - "integrity": "sha512-czwUz525rkOFDJxfKK6mYfIs9zBKILyrZQxjz3ABhjQXhbhFsSbo1HW/BFcsDnfJYJWA6thRR5/TUY2qs5W99Q==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.0.tgz", + "integrity": "sha512-6Lthe1hqXHBNsqvgDzGO6l03XNeu3CrG4RqQ1KM9+l5+jNGpEJfIELx1NS3SEHmJQA8np/u+E4EPRKRiu6m19A==", "dev": true, "requires": { "@babel/core": "^7.12.3", @@ -7577,6 +7992,12 @@ "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", "dev": true }, + "json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", + "dev": true + }, "json2php": { "version": "0.0.4", "resolved": "https://registry.npmjs.org/json2php/-/json2php-0.0.4.tgz", @@ -7595,6 +8016,30 @@ "integrity": "sha512-fQzRfAbIBnR0IQvftw9FJveWiHp72Fg20giDrHz6TdfB12UH/uue0D3hm57UB5KgAVuniLMCaS8P1IMj9NR7cA==", "dev": true }, + "jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.6", + "universalify": "^2.0.0" + }, + "dependencies": { + "universalify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", + "dev": true + } + } + }, + "jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=", + "dev": true + }, "jsx-ast-utils": { "version": "3.2.2", "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.2.2.tgz", @@ -7728,24 +8173,12 @@ "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", "dev": true }, - "lodash.differencewith": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.differencewith/-/lodash.differencewith-4.5.0.tgz", - "integrity": "sha1-uvr7yRi1UVTheRdqALsK76rIVLc=", - "dev": true - }, "lodash.escape": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/lodash.escape/-/lodash.escape-4.0.1.tgz", "integrity": "sha1-yQRGkMIeBClL6qUXcS/e0fqI3pg=", "dev": true }, - "lodash.flatten": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", - "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=", - "dev": true - }, "lodash.flattendeep": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", @@ -7758,6 +8191,12 @@ "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=", "dev": true }, + "lodash.ismatch": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.ismatch/-/lodash.ismatch-4.4.0.tgz", + "integrity": "sha1-dWy1FQyjum8RCFp4hJZF8Yj4Xzc=", + "dev": true + }, "lodash.memoize": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", @@ -7770,6 +8209,12 @@ "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", "dev": true }, + "lodash.sortby": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", + "integrity": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=", + "dev": true + }, "lodash.truncate": { "version": "4.4.2", "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", @@ -7841,9 +8286,9 @@ "dev": true }, "markdown-it": { - "version": "12.0.4", - "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-12.0.4.tgz", - "integrity": "sha512-34RwOXZT8kyuOJy25oJNJoulO8L0bTHYWXcdZBYZqFnjIy3NgjeoM3FmPXIOFQ26/lSHYMr8oc62B6adxXcb3Q==", + "version": "12.3.2", + "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-12.3.2.tgz", + "integrity": "sha512-TchMembfxfNVpHkbtriWltGWc+m3xszaRD0CZup7GFFhzIgQqxIfn3eGj1yZpfuflzPvfkt611B2Q/Bsk1YnGg==", "dev": true, "requires": { "argparse": "^2.0.1", @@ -7868,34 +8313,30 @@ } }, "markdownlint": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/markdownlint/-/markdownlint-0.23.1.tgz", - "integrity": "sha512-iOEwhDfNmq2IJlaA8mzEkHYUi/Hwoa6Ss+HO5jkwUR6wQ4quFr0WzSx+Z9rsWZKUaPbyirIdL1zGmJRkWawr4Q==", + "version": "0.25.1", + "resolved": "https://registry.npmjs.org/markdownlint/-/markdownlint-0.25.1.tgz", + "integrity": "sha512-AG7UkLzNa1fxiOv5B+owPsPhtM4D6DoODhsJgiaNg1xowXovrYgOnLqAgOOFQpWOlHFVQUzjMY5ypNNTeov92g==", "dev": true, "requires": { - "markdown-it": "12.0.4" + "markdown-it": "12.3.2" } }, "markdownlint-cli": { - "version": "0.27.1", - "resolved": "https://registry.npmjs.org/markdownlint-cli/-/markdownlint-cli-0.27.1.tgz", - "integrity": "sha512-p1VV6aSbGrDlpUWzHizAnSNEQAweVR3qUI/AIUubxW7BGPXziSXkIED+uRtSohUlRS/jmqp3Wi4es5j6fIrdeQ==", + "version": "0.31.1", + "resolved": "https://registry.npmjs.org/markdownlint-cli/-/markdownlint-cli-0.31.1.tgz", + "integrity": "sha512-keIOMwQn+Ch7MoBwA+TdkyVMuxAeZFEGmIIlvwgV0Z1TGS5MxPnRr29XCLhkNzCHU+uNKGjU+VEjLX+Z9kli6g==", "dev": true, "requires": { - "commander": "~7.1.0", - "deep-extend": "~0.6.0", - "get-stdin": "~8.0.0", - "glob": "~7.1.6", - "ignore": "~5.1.8", - "js-yaml": "^4.0.0", + "commander": "~9.0.0", + "get-stdin": "~9.0.0", + "glob": "~7.2.0", + "ignore": "~5.2.0", + "js-yaml": "^4.1.0", "jsonc-parser": "~3.0.0", - "lodash.differencewith": "~4.5.0", - "lodash.flatten": "~4.4.0", - "markdownlint": "~0.23.1", - "markdownlint-rule-helpers": "~0.14.0", - "minimatch": "~3.0.4", - "minimist": "~1.2.5", - "rc": "~1.2.8" + "markdownlint": "~0.25.1", + "markdownlint-rule-helpers": "~0.16.0", + "minimatch": "~3.0.5", + "run-con": "~1.2.10" }, "dependencies": { "argparse": { @@ -7905,29 +8346,9 @@ "dev": true }, "commander": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-7.1.0.tgz", - "integrity": "sha512-pRxBna3MJe6HKnBGsDyMv8ETbptw3axEdYHoqNh7gu5oDcew8fs0xnivZGm06Ogk8zGAJ9VX+OPEr2GXEQK4dg==", - "dev": true - }, - "glob": { - "version": "7.1.7", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", - "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "ignore": { - "version": "5.1.9", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.9.tgz", - "integrity": "sha512-2zeMQpbKz5dhZ9IwL0gbxSW5w0NK/MSAMtNuhgIHEPmaU3vPdKPL0UdvUCXs5SS4JAwsBxysK5sFMW8ocFiVjQ==", + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-9.0.0.tgz", + "integrity": "sha512-JJfP2saEKbQqvW+FI93OYUB4ByV5cizMpFMiiJI8xDbBvQvSkIk0VvQdn1CZ8mqAO8Loq2h0gYTYtDFUZUeERw==", "dev": true }, "js-yaml": { @@ -7951,9 +8372,9 @@ } }, "markdownlint-rule-helpers": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/markdownlint-rule-helpers/-/markdownlint-rule-helpers-0.14.0.tgz", - "integrity": "sha512-vRTPqSU4JK8vVXmjICHSBhwXUvbfh/VJo+j7hvxqe15tLJyomv3FLgFdFgb8kpj0Fe8SsJa/TZUAXv7/sN+N7A==", + "version": "0.16.0", + "resolved": "https://registry.npmjs.org/markdownlint-rule-helpers/-/markdownlint-rule-helpers-0.16.0.tgz", + "integrity": "sha512-oEacRUVeTJ5D5hW1UYd2qExYI0oELdYK72k1TKGvIeYJIbqQWAz476NAc7LNixSySUhcNl++d02DvX0ccDk9/w==", "dev": true }, "mathml-tag-names": { @@ -8268,6 +8689,12 @@ "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==", "dev": true }, + "modify-values": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/modify-values/-/modify-values-1.0.1.tgz", + "integrity": "sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw==", + "dev": true + }, "moo": { "version": "0.5.1", "resolved": "https://registry.npmjs.org/moo/-/moo-0.5.1.tgz", @@ -8297,9 +8724,9 @@ } }, "nanoid": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.2.tgz", - "integrity": "sha512-CuHBogktKwpm5g2sRgv83jEy2ijFzBwMoYA60orPDR7ynsLijJDqgsi4RDGj3OJpy3Ieb+LYwiRmIOGyytgITA==", + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz", + "integrity": "sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==", "dev": true }, "natural-compare": { @@ -8616,9 +9043,9 @@ "dev": true }, "on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", "dev": true, "requires": { "ee-first": "1.1.1" @@ -8685,6 +9112,12 @@ "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", "dev": true }, + "p-is-promise": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-3.0.0.tgz", + "integrity": "sha512-Wo8VsW4IRQSKVXsJCn7TomUaVtyfjVDn3nUP7kE967BQk0CwFpdbZs0X0uk5sW9mkBa9eNM7hCMaG93WUAwxYQ==", + "dev": true + }, "p-limit": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", @@ -8709,6 +9142,12 @@ "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==", "dev": true }, + "p-reduce": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/p-reduce/-/p-reduce-2.1.0.tgz", + "integrity": "sha512-2USApvnsutq8uoxZBGbbWM0JIYLiEMJ9RlaN7fAzVNb9OZN0SHjjTTfIcb667XynS5Y1VhwDJVDa72TnPzAYWw==", + "dev": true + }, "p-retry": { "version": "4.6.1", "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.1.tgz", @@ -9278,9 +9717,9 @@ "dev": true }, "postcss-scss": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/postcss-scss/-/postcss-scss-4.0.3.tgz", - "integrity": "sha512-j4KxzWovfdHsyxwl1BxkUal/O4uirvHgdzMKS1aWJBAV0qh2qj5qAZqpeBfVUYGWv+4iK9Az7SPyZ4fyNju1uA==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/postcss-scss/-/postcss-scss-4.0.4.tgz", + "integrity": "sha512-aBBbVyzA8b3hUL0MGrpydxxXKXFZc5Eqva0Q3V9qsBOLEMsjb6w49WfpsoWzpEgcqJGW4t7Rio8WXVU9Gd8vWg==", "dev": true }, "postcss-selector-parser": { @@ -9450,14 +9889,14 @@ "dev": true }, "puppeteer-core": { - "version": "13.5.2", - "resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-13.5.2.tgz", - "integrity": "sha512-uxHOWCHt9mGUCLu8qtbEy3UqHlBRMzGCyPmAeoq2KrtmPOC0ZJPRZrDLWJMG3E/gwuHinDtZnBbnFfRfk/PABg==", + "version": "13.6.0", + "resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-13.6.0.tgz", + "integrity": "sha512-n692xT9uOTxbFKcCRkfOT2Go5LL0YBCHrSpBdbNsjLhcxO5yuhj2/4jgAIK9bT1blY17Pb4I35eBSuDzJ54ERw==", "dev": true, "requires": { "cross-fetch": "3.1.5", "debug": "4.3.4", - "devtools-protocol": "0.0.969999", + "devtools-protocol": "0.0.981744", "extract-zip": "2.0.1", "https-proxy-agent": "5.0.0", "pkg-dir": "4.2.0", @@ -9469,6 +9908,16 @@ "ws": "8.5.0" }, "dependencies": { + "https-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz", + "integrity": "sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==", + "dev": true, + "requires": { + "agent-base": "6", + "debug": "4" + } + }, "rimraf": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", @@ -9486,12 +9935,21 @@ } } }, - "qs": { - "version": "6.9.7", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.7.tgz", - "integrity": "sha512-IhMFgUmuNpyRfxA90umL7ByLlgRXu6tIfKPpF5TmcfRLlLCckfP/g3IQmju6jjpu+Hh8rA+2p6A27ZSPOOHdKw==", + "q": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", + "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=", "dev": true }, + "qs": { + "version": "6.10.3", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.3.tgz", + "integrity": "sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ==", + "dev": true, + "requires": { + "side-channel": "^1.0.4" + } + }, "queue-microtask": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", @@ -9545,13 +10003,13 @@ "dev": true }, "raw-body": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.3.tgz", - "integrity": "sha512-UlTNLIcu0uzb4D2f4WltY6cVjLi+/jEN4lgEUj3E04tpMDpUlkBo/eSn6zou9hum2VMNpCCUone0O0WeJim07g==", + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", + "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", "dev": true, "requires": { "bytes": "3.1.2", - "http-errors": "1.8.1", + "http-errors": "2.0.0", "iconv-lite": "0.4.24", "unpipe": "1.0.0" }, @@ -9564,26 +10022,6 @@ } } }, - "rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "dev": true, - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "dependencies": { - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", - "dev": true - } - } - }, "react": { "version": "17.0.2", "resolved": "https://registry.npmjs.org/react/-/react-17.0.2.tgz", @@ -9799,13 +10237,14 @@ } }, "regexp.prototype.flags": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.2.tgz", - "integrity": "sha512-Ynz8fTQW5/1elh+jWU2EDDzeoNbD0OQ0R+D1VJU5ATOkUaro4A9YEkdN2ODQl/8UQFPPpZNw91fOcLFamM7Pww==", + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", + "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", "dev": true, "requires": { "call-bind": "^1.0.2", - "define-properties": "^1.1.3" + "define-properties": "^1.1.3", + "functions-have-names": "^1.2.2" } }, "regexpp": { @@ -9977,6 +10416,26 @@ "nearley": "^2.7.10" } }, + "run-con": { + "version": "1.2.10", + "resolved": "https://registry.npmjs.org/run-con/-/run-con-1.2.10.tgz", + "integrity": "sha512-n7PZpYmMM26ZO21dd8y3Yw1TRtGABjRtgPSgFS/nhzfvbJMXFtJhJVyEgayMiP+w/23craJjsnfDvx4W4ue/HQ==", + "dev": true, + "requires": { + "deep-extend": "^0.6.0", + "ini": "~2.0.0", + "minimist": "^1.2.5", + "strip-json-comments": "~3.1.1" + }, + "dependencies": { + "ini": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", + "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==", + "dev": true + } + } + }, "run-parallel": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", @@ -9996,9 +10455,9 @@ }, "dependencies": { "tslib": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", + "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==", "dev": true } } @@ -10016,9 +10475,9 @@ "dev": true }, "sass": { - "version": "1.50.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.50.0.tgz", - "integrity": "sha512-cLsD6MEZ5URXHStxApajEh7gW189kkjn4Rc8DQweMyF+o5HF5nfEz8QYLMlPsTOD88DknatTmBWkOcw5/LnJLQ==", + "version": "1.51.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.51.0.tgz", + "integrity": "sha512-haGdpTgywJTvHC2b91GSq+clTKGbtkkZmVAb82jZQN/wTy6qs8DdFm2lhEQbEwrY0QDRgSQ3xDurqM977C3noA==", "dev": true, "requires": { "chokidar": ">=3.0.0 <4.0.0", @@ -10081,6 +10540,16 @@ "node-forge": "^1" } }, + "semantic-release-plugin-update-version-in-files": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/semantic-release-plugin-update-version-in-files/-/semantic-release-plugin-update-version-in-files-1.1.0.tgz", + "integrity": "sha512-OWBrved3Rr0w3YP4iID81MhG9qhGrG+XtxdO9VMhKJ9qte3yBdMz5cSxDiPE/uhnGJQF00fqQetY3yhHFGabWw==", + "dev": true, + "requires": { + "debug": "^4.1.1", + "glob": "^7.1.3" + } + }, "semver": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", @@ -10088,24 +10557,24 @@ "dev": true }, "send": { - "version": "0.17.2", - "resolved": "https://registry.npmjs.org/send/-/send-0.17.2.tgz", - "integrity": "sha512-UJYB6wFSJE3G00nEivR5rgWp8c2xXvJ3OPWPhmuteU0IKj8nKbG3DrjiOmLwpnHGYWAVwA69zmTm++YG0Hmwww==", + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", "dev": true, "requires": { "debug": "2.6.9", - "depd": "~1.1.2", - "destroy": "~1.0.4", + "depd": "2.0.0", + "destroy": "1.2.0", "encodeurl": "~1.0.2", "escape-html": "~1.0.3", "etag": "~1.8.1", "fresh": "0.5.2", - "http-errors": "1.8.1", + "http-errors": "2.0.0", "mime": "1.6.0", "ms": "2.1.3", - "on-finished": "~2.3.0", + "on-finished": "2.4.1", "range-parser": "~1.2.1", - "statuses": "~1.5.0" + "statuses": "2.0.1" }, "dependencies": { "debug": { @@ -10166,6 +10635,12 @@ "ms": "2.0.0" } }, + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", + "dev": true + }, "http-errors": { "version": "1.6.3", "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", @@ -10195,19 +10670,25 @@ "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", "dev": true + }, + "statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", + "dev": true } } }, "serve-static": { - "version": "1.14.2", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.2.tgz", - "integrity": "sha512-+TMNA9AFxUEGuC0z2mevogSnn9MXKb4fa7ngeRMJaaGv8vTwnIEkKi+QGvPt33HSnf8pRS+WGM0EbMtCJLKMBQ==", + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", "dev": true, "requires": { "encodeurl": "~1.0.2", "escape-html": "~1.0.3", "parseurl": "~1.3.3", - "send": "0.17.2" + "send": "0.18.0" } }, "setprototypeof": { @@ -10476,6 +10957,24 @@ "integrity": "sha512-1klA3Gi5PD1Wv9Q0wUoOQN1IWAuPu0D1U03ThXTr0cJ20+/iq2tHSDnK7Kk/0LXJ1ztUB2/1Os0wKmfyNgUQfg==", "dev": true }, + "split": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/split/-/split-1.0.1.tgz", + "integrity": "sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==", + "dev": true, + "requires": { + "through": "2" + } + }, + "split2": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/split2/-/split2-3.2.2.tgz", + "integrity": "sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==", + "dev": true, + "requires": { + "readable-stream": "^3.0.0" + } + }, "sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", @@ -10512,9 +11011,9 @@ "dev": true }, "statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", "dev": true }, "string-length": { @@ -10563,14 +11062,14 @@ } }, "string.prototype.trim": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.5.tgz", - "integrity": "sha512-Lnh17webJVsD6ECeovpVN17RlAKjmz4rF9S+8Y45CkMc/ufVpTkU3vZIyIC7sllQ1FCvObZnnCdNs/HXTUOTlg==", + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.6.tgz", + "integrity": "sha512-8lMR2m+U0VJTPp6JjvJTtGyc4FIGq9CdRt7O9p6T0e6K4vjU+OP+SQJpbe/SBmRcCUIvNUnjsbmY6lnMp8MhsQ==", "dev": true, "requires": { "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.1" + "define-properties": "^1.1.4", + "es-abstract": "^1.19.5" } }, "string.prototype.trimend": { @@ -10672,9 +11171,9 @@ } }, "stylelint": { - "version": "14.6.1", - "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-14.6.1.tgz", - "integrity": "sha512-FfNdvZUZdzh9KDQxDnO7Opp+prKh8OQVuSW8S13cBtxrooCbm6J6royhUeb++53WPMt04VB+ZbOz/QmzAijs6Q==", + "version": "14.8.0", + "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-14.8.0.tgz", + "integrity": "sha512-uIyIWMSBSVcj73Gn3nTvPyNsYdwTpxo1W6dWTIa1nm8JKgUi3FIobSXLgrRE6joLidoA0FdgAhCaqxwTF2ikrQ==", "dev": true, "requires": { "balanced-match": "^2.0.0", @@ -10690,7 +11189,7 @@ "global-modules": "^2.0.0", "globby": "^11.1.0", "globjoin": "^0.1.4", - "html-tags": "^3.1.0", + "html-tags": "^3.2.0", "ignore": "^5.2.0", "import-lazy": "^4.0.0", "imurmurhash": "^0.1.4", @@ -10698,7 +11197,7 @@ "known-css-properties": "^0.24.0", "mathml-tag-names": "^2.1.3", "meow": "^9.0.0", - "micromatch": "^4.0.4", + "micromatch": "^4.0.5", "normalize-path": "^3.0.0", "normalize-selector": "^0.2.0", "picocolors": "^1.0.0", @@ -10706,7 +11205,7 @@ "postcss-media-query-parser": "^0.2.3", "postcss-resolve-nested-selector": "^0.1.1", "postcss-safe-parser": "^6.0.0", - "postcss-selector-parser": "^6.0.9", + "postcss-selector-parser": "^6.0.10", "postcss-value-parser": "^4.2.0", "resolve-from": "^5.0.0", "specificity": "^0.4.1", @@ -10726,6 +11225,12 @@ "integrity": "sha512-1ugUSr8BHXRnK23KfuYS+gVMC3LB8QGH9W1iGtDPsNWoQbgtXSExkBu2aDR4epiGWZOjZsj6lDl/N/AqqTC3UA==", "dev": true }, + "get-stdin": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz", + "integrity": "sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg==", + "dev": true + }, "global-modules": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", @@ -11012,14 +11517,14 @@ } }, "terser": { - "version": "5.12.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.12.1.tgz", - "integrity": "sha512-NXbs+7nisos5E+yXwAD+y7zrcTkMqb0dEJxIGtSKPdCBzopf7ni4odPul2aechpV7EXNvOudYOX2bb5tln1jbQ==", + "version": "5.13.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.13.0.tgz", + "integrity": "sha512-sgQ99P+fRBM1jAYzN9RTnD/xEWx/7LZgYTCRgmYriSq1wxxqiQPJgXkkLBBuwySDWJ2PP0PnVQyuf4xLUuH4Ng==", "dev": true, "requires": { "acorn": "^8.5.0", "commander": "^2.20.0", - "source-map": "~0.7.2", + "source-map": "~0.8.0-beta.0", "source-map-support": "~0.5.20" }, "dependencies": { @@ -11030,10 +11535,39 @@ "dev": true }, "source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", + "version": "0.8.0-beta.0", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.8.0-beta.0.tgz", + "integrity": "sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==", + "dev": true, + "requires": { + "whatwg-url": "^7.0.0" + } + }, + "tr46": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz", + "integrity": "sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk=", + "dev": true, + "requires": { + "punycode": "^2.1.0" + } + }, + "webidl-conversions": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", + "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==", "dev": true + }, + "whatwg-url": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz", + "integrity": "sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==", + "dev": true, + "requires": { + "lodash.sortby": "^4.7.0", + "tr46": "^1.0.1", + "webidl-conversions": "^4.0.2" + } } } }, @@ -11069,6 +11603,12 @@ "minimatch": "^3.0.4" } }, + "text-extensions": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/text-extensions/-/text-extensions-1.9.0.tgz", + "integrity": "sha512-wiBrwC1EhBelW12Zy26JeOUkQ5mRu+5o8rpsJk5+2t+Y5vE7e842qtZDQ2g1NpX/29HdyFeJ4nSIhI47ENSxlQ==", + "dev": true + }, "text-table": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", @@ -11087,6 +11627,15 @@ "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", "dev": true }, + "through2": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz", + "integrity": "sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==", + "dev": true, + "requires": { + "readable-stream": "3" + } + }, "thunky": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", @@ -11251,15 +11800,22 @@ "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==", "dev": true }, + "uglify-js": { + "version": "3.15.4", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.15.4.tgz", + "integrity": "sha512-vMOPGDuvXecPs34V74qDKk4iJ/SN4vL3Ow/23ixafENYvtrNvtbcgUeugTcUGRGsOF/5fU8/NYSL5Hyb3l1OJA==", + "dev": true, + "optional": true + }, "unbox-primitive": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz", - "integrity": "sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", "dev": true, "requires": { - "function-bind": "^1.1.1", - "has-bigints": "^1.0.1", - "has-symbols": "^1.0.2", + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", "which-boxed-primitive": "^1.0.2" } }, @@ -11811,6 +12367,12 @@ "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", "dev": true }, + "wordwrap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", + "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", + "dev": true + }, "wrap-ansi": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", diff --git a/package.json b/package.json index f1850dd..e522bea 100644 --- a/package.json +++ b/package.json @@ -15,9 +15,13 @@ "start": "wp-scripts start" }, "devDependencies": { - "@wordpress/scripts": "^22.4.0", + "@semantic-release/changelog": "^5.0.1", + "@semantic-release/git": "^9.0.0", + "@semantic-release/release-notes-generator": "^9.0.3", + "@wordpress/scripts": "^22.5.0", "classnames": "^2.3.1", "lodash": "^4.17.21", - "nanoid": "^3.3.2" + "nanoid": "^3.3.3", + "semantic-release-plugin-update-version-in-files": "^1.1.0" } } diff --git a/readme.txt b/readme.txt index 78fa431..4aa87c2 100644 --- a/readme.txt +++ b/readme.txt @@ -4,7 +4,7 @@ Tags: tabs, block Requires at least: 5.9 Tested up to: 5.9.3 Requires PHP: 7.0 -Stable tag: 1.0.0 +Stable tag: 0.0.0-development License: GPL-2.0-or-later License URI: https://www.gnu.org/licenses/gpl-2.0.html @@ -22,22 +22,3 @@ Supports horizontal and vertical tabs. 1. Upload the plugin files to the `/wp-content/plugins/simple-tabs-block` directory, or install the plugin through the WordPress plugins screen directly. 1. Activate the plugin through the 'Plugins' screen in WordPress - - -== Frequently Asked Questions == - -= A question that someone might have = - -An answer to that question. - -= What about foo bar? = - -Answer to foo bar dilemma. - -== Screenshots == - -1. This screen shot description corresponds to screenshot-1.(png|jpg|jpeg|gif). Note that the screenshot is taken from -the /assets directory or the directory that contains the stable readme.txt (tags or trunk). Screenshots in the /assets -directory take precedence. For example, `/assets/screenshot-1.png` would win over `/tags/4.3/screenshot-1.png` -(or jpg, jpeg, gif). -2. This is the second screen shot diff --git a/simple-tabs-block.php b/simple-tabs-block.php index 5f7f4c3..89d49ac 100644 --- a/simple-tabs-block.php +++ b/simple-tabs-block.php @@ -4,7 +4,7 @@ * Description: Block to create a tabbed layout. * Requires at least: 5.9 * Requires PHP: 7.0 - * Version: 1.0.0 + * Version: 0.0.0-development * Author: CloudCatch * Author URI: https://cloudcatch.io * Contributors: cloudcatch, dkjensen diff --git a/src/tab/block.json b/src/tab/block.json index 92825e3..34984ee 100644 --- a/src/tab/block.json +++ b/src/tab/block.json @@ -2,7 +2,7 @@ "$schema": "https://schemas.wp.org/trunk/block.json", "apiVersion": 2, "name": "cloudcatch/tab", - "version": "1.0.0", + "version": "0.0.0-development", "title": "Tab", "category": "design", "parent": ["cloudcatch/tabs"], diff --git a/src/tabs/block.json b/src/tabs/block.json index 86d2a95..e092013 100644 --- a/src/tabs/block.json +++ b/src/tabs/block.json @@ -2,7 +2,7 @@ "$schema": "https://schemas.wp.org/trunk/block.json", "apiVersion": 2, "name": "cloudcatch/tabs", - "version": "1.0.0", + "version": "0.0.0-development", "title": "Tabs", "category": "design", "icon": "smiley",