From de2342040abaa47757e46c3dd80595d8a2991aa7 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Mon, 12 Aug 2024 01:18:44 +0200 Subject: [PATCH 001/103] Install needed packages & setup new e2e scripts --- package-lock.json | 1103 +++++++++++++++++++++++++++++++++++++++++++-- package.json | 9 +- 2 files changed, 1082 insertions(+), 30 deletions(-) diff --git a/package-lock.json b/package-lock.json index 51a834184..47caa5443 100644 --- a/package-lock.json +++ b/package-lock.json @@ -23,8 +23,10 @@ "@wordpress/data": "^10.4.0", "@wordpress/date": "^5.4.0", "@wordpress/dom-ready": "^4.4.0", + "@wordpress/e2e-test-utils-playwright": "^1.5.0", "@wordpress/edit-post": "^8.4.0", "@wordpress/element": "^6.4.0", + "@wordpress/env": "^10.5.0", "@wordpress/eslint-plugin": "^20.1.0", "@wordpress/i18n": "^5.4.0", "@wordpress/notices": "^5.4.0", @@ -3468,6 +3470,21 @@ "@jridgewell/sourcemap-codec": "^1.4.14" } }, + "node_modules/@kwsites/file-exists": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@kwsites/file-exists/-/file-exists-1.1.1.tgz", + "integrity": "sha512-m9/5YGR18lIwxSFDwfE3oA7bWuq9kdau6ugN4H2rJeyhFQZcG9AgSHkQtSD15a8WvTgfz9aikZMrKPHvbpqFiw==", + "dev": true, + "dependencies": { + "debug": "^4.1.1" + } + }, + "node_modules/@kwsites/promise-deferred": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@kwsites/promise-deferred/-/promise-deferred-1.1.1.tgz", + "integrity": "sha512-GaHYm+c0O9MjZRu0ongGBRbinu8gVAMd2UZjji6jVmqKtZluZnptXGWhz1E8j8D2HJ3f/yMxKAUC0b+57wncIw==", + "dev": true + }, "node_modules/@leichtgewicht/ip-codec": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.5.tgz", @@ -4327,6 +4344,18 @@ "dev": true, "license": "MIT" }, + "node_modules/@sindresorhus/is": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz", + "integrity": "sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/is?sponsor=1" + } + }, "node_modules/@sinonjs/commons": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz", @@ -4712,6 +4741,18 @@ "url": "https://github.com/sponsors/gregberge" } }, + "node_modules/@szmarczak/http-timer": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.6.tgz", + "integrity": "sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==", + "dev": true, + "dependencies": { + "defer-to-connect": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/@tannin/compile": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@tannin/compile/-/compile-1.1.0.tgz", @@ -5081,6 +5122,18 @@ "@types/node": "*" } }, + "node_modules/@types/cacheable-request": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.3.tgz", + "integrity": "sha512-IQ3EbTzGxIigb1I3qPZc1rWJnH0BmSKv5QYTalEwweFvyBDLSAe24zP0le/hyi7ecGfZVlIVAg4BZqb8WBwKqw==", + "dev": true, + "dependencies": { + "@types/http-cache-semantics": "*", + "@types/keyv": "^3.1.4", + "@types/node": "*", + "@types/responselike": "^1.0.0" + } + }, "node_modules/@types/connect": { "version": "3.4.38", "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.38.tgz", @@ -5192,6 +5245,12 @@ "dev": true, "license": "MIT" }, + "node_modules/@types/http-cache-semantics": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.4.tgz", + "integrity": "sha512-1m0bIFVc7eJWyve9S0RnuRgcQqF/Xd5QsUZAZeQFr1Q3/p9JWoQQEqmVy+DPTNpGXwhgIetAoYF8JSc33q29QA==", + "dev": true + }, "node_modules/@types/http-errors": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.4.tgz", @@ -5262,6 +5321,15 @@ "dev": true, "license": "MIT" }, + "node_modules/@types/keyv": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.4.tgz", + "integrity": "sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, "node_modules/@types/mime": { "version": "1.3.5", "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.5.tgz", @@ -5366,6 +5434,15 @@ "@types/react": "*" } }, + "node_modules/@types/responselike": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.3.tgz", + "integrity": "sha512-H/+L+UkTV33uf49PH5pCAUBVPNj2nDBXTN+qS1dOwyyg24l3CcicicCA7ca+HMvJBZcFgl5r8e+RR6elsb4Lyw==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, "node_modules/@types/retry": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", @@ -7231,11 +7308,10 @@ } }, "node_modules/@wordpress/e2e-test-utils-playwright": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/e2e-test-utils-playwright/-/e2e-test-utils-playwright-1.4.0.tgz", - "integrity": "sha512-kp88FLUU1SJAtxlRF5jNWYYmOSmpVrVLXuLTZmmXDMp/FFd0vzNDKwZ7TV6fd0B58cxyUydaG6e+hxLMeSYQtw==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@wordpress/e2e-test-utils-playwright/-/e2e-test-utils-playwright-1.5.0.tgz", + "integrity": "sha512-gQuhdDMejum7a4hWW4ejIWSBv1xeeCFda5o7eq766evarU+HwcN+4GPiSYKj2iEHJ4dge1On2VXeg1RFLY3w5Q==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "change-case": "^4.1.2", "form-data": "^4.0.0", @@ -7385,6 +7461,149 @@ "npm": ">=8.19.2" } }, + "node_modules/@wordpress/env": { + "version": "10.5.0", + "resolved": "https://registry.npmjs.org/@wordpress/env/-/env-10.5.0.tgz", + "integrity": "sha512-Hx+fi6qTEAuycznulkuMi4d5RDPZ6lPPAxaylpCwXNX2hgx5jrrpgnY4Zn0chBgZMpShO7BbA+zNDq2E6evvTw==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "copy-dir": "^1.3.0", + "docker-compose": "^0.24.3", + "extract-zip": "^1.6.7", + "got": "^11.8.5", + "inquirer": "^7.1.0", + "js-yaml": "^3.13.1", + "ora": "^4.0.2", + "rimraf": "^3.0.2", + "simple-git": "^3.5.0", + "terminal-link": "^2.0.0", + "yargs": "^17.3.0" + }, + "bin": { + "wp-env": "bin/wp-env" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + } + }, + "node_modules/@wordpress/env/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@wordpress/env/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@wordpress/env/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@wordpress/env/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/@wordpress/env/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/@wordpress/env/node_modules/extract-zip": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.7.0.tgz", + "integrity": "sha512-xoh5G1W/PB0/27lXgMQyIhP5DSY/LhoCsOyZgb+6iMmRtCwVBo55uKaMoEYrDCKQhWvqEip5ZPKAc6eFNyf/MA==", + "dev": true, + "dependencies": { + "concat-stream": "^1.6.2", + "debug": "^2.6.9", + "mkdirp": "^0.5.4", + "yauzl": "^2.10.0" + }, + "bin": { + "extract-zip": "cli.js" + } + }, + "node_modules/@wordpress/env/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@wordpress/env/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/@wordpress/env/node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@wordpress/env/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/@wordpress/escape-html": { "version": "3.4.0", "resolved": "https://registry.npmjs.org/@wordpress/escape-html/-/escape-html-3.4.0.tgz", @@ -10364,6 +10583,48 @@ "node": ">= 0.8" } }, + "node_modules/cacheable-lookup": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz", + "integrity": "sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==", + "dev": true, + "engines": { + "node": ">=10.6.0" + } + }, + "node_modules/cacheable-request": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-7.0.4.tgz", + "integrity": "sha512-v+p6ongsrp0yTGbJXjgxPow2+DL93DASP4kXCDKb8/bwRtt9OEF3whggkkDkGNzgcWy2XaF4a8nZglC7uElscg==", + "dev": true, + "dependencies": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^4.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^6.0.1", + "responselike": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cacheable-request/node_modules/get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "dev": true, + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/call-bind": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", @@ -10548,6 +10809,12 @@ "node": ">=10" } }, + "node_modules/chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "dev": true + }, "node_modules/check-node-version": { "version": "4.2.1", "resolved": "https://registry.npmjs.org/check-node-version/-/check-node-version-4.2.1.tgz", @@ -10763,6 +11030,39 @@ "webpack": "*" } }, + "node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dev": true, + "dependencies": { + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-spinners": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.9.2.tgz", + "integrity": "sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==", + "dev": true, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cli-width": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", + "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, "node_modules/client-zip": { "version": "2.4.5", "resolved": "https://registry.npmjs.org/client-zip/-/client-zip-2.4.5.tgz", @@ -10797,6 +11097,15 @@ "node": ">=12" } }, + "node_modules/clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", + "dev": true, + "engines": { + "node": ">=0.8" + } + }, "node_modules/clone-deep": { "version": "0.2.4", "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-0.2.4.tgz", @@ -10827,6 +11136,18 @@ "node": ">=0.10.0" } }, + "node_modules/clone-response": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz", + "integrity": "sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==", + "dev": true, + "dependencies": { + "mimic-response": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/clsx": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz", @@ -11010,34 +11331,85 @@ "dev": true, "license": "MIT" }, - "node_modules/configstore": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", - "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", + "node_modules/concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", "dev": true, - "license": "BSD-2-Clause", + "engines": [ + "node >= 0.8" + ], "dependencies": { - "dot-prop": "^5.2.0", - "graceful-fs": "^4.1.2", - "make-dir": "^3.0.0", - "unique-string": "^2.0.0", - "write-file-atomic": "^3.0.0", - "xdg-basedir": "^4.0.0" - }, - "engines": { - "node": ">=8" + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" } }, - "node_modules/configstore/node_modules/write-file-atomic": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", - "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", - "dev": true, - "license": "ISC", - "dependencies": { - "imurmurhash": "^0.1.4", - "is-typedarray": "^1.0.0", - "signal-exit": "^3.0.2", + "node_modules/concat-stream/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true + }, + "node_modules/concat-stream/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dev": true, + "dependencies": { + "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" + } + }, + "node_modules/concat-stream/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "node_modules/concat-stream/node_modules/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, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/configstore": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", + "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "dot-prop": "^5.2.0", + "graceful-fs": "^4.1.2", + "make-dir": "^3.0.0", + "unique-string": "^2.0.0", + "write-file-atomic": "^3.0.0", + "xdg-basedir": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/configstore/node_modules/write-file-atomic": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", + "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", + "dev": true, + "license": "ISC", + "dependencies": { + "imurmurhash": "^0.1.4", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", "typedarray-to-buffer": "^3.1.5" } }, @@ -11110,6 +11482,12 @@ "dev": true, "license": "MIT" }, + "node_modules/copy-dir": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/copy-dir/-/copy-dir-1.3.0.tgz", + "integrity": "sha512-Q4+qBFnN4bwGwvtXXzbp4P/4iNk0MaiGAzvQ8OiMtlLjkIKjmNN689uVzShSM0908q7GoFHXIPx4zi75ocoaHw==", + "dev": true + }, "node_modules/copy-webpack-plugin": { "version": "10.2.4", "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-10.2.4.tgz", @@ -11768,6 +12146,33 @@ "dev": true, "license": "MIT" }, + "node_modules/decompress-response": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", + "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", + "dev": true, + "dependencies": { + "mimic-response": "^3.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/decompress-response/node_modules/mimic-response": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", + "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/dedent": { "version": "1.5.3", "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.5.3.tgz", @@ -11883,6 +12288,27 @@ "node": ">= 10" } }, + "node_modules/defaults": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", + "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==", + "dev": true, + "dependencies": { + "clone": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/defer-to-connect": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz", + "integrity": "sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==", + "dev": true, + "engines": { + "node": ">=10" + } + }, "node_modules/define-data-property": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", @@ -12128,6 +12554,30 @@ "node": ">=6" } }, + "node_modules/docker-compose": { + "version": "0.24.8", + "resolved": "https://registry.npmjs.org/docker-compose/-/docker-compose-0.24.8.tgz", + "integrity": "sha512-plizRs/Vf15H+GCVxq2EUvyPK7ei9b/cVesHvjnX4xaXjM9spHe2Ytq0BitndFgvTJ3E3NljPNUEl7BAN43iZw==", + "dev": true, + "dependencies": { + "yaml": "^2.2.2" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/docker-compose/node_modules/yaml": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.5.0.tgz", + "integrity": "sha512-2wWLbGbYDiSqqIKoPjar3MPgB94ErzCtrNE1FdqGuaO0pi2JGjmE8aW8TDZwzU7vuxcGRdL/4gPQwQ7hD5AMSw==", + "dev": true, + "bin": { + "yaml": "bin.mjs" + }, + "engines": { + "node": ">= 14" + } + }, "node_modules/doctrine": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", @@ -13677,6 +14127,32 @@ "dev": true, "license": "MIT" }, + "node_modules/external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "dev": true, + "dependencies": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/external-editor/node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/extract-zip": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz", @@ -13849,6 +14325,30 @@ "pend": "~1.2.0" } }, + "node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/figures/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, "node_modules/file-entry-cache": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", @@ -14705,6 +15205,31 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/got": { + "version": "11.8.6", + "resolved": "https://registry.npmjs.org/got/-/got-11.8.6.tgz", + "integrity": "sha512-6tfZ91bOr7bOXnK7PRDCGBLa1H4U080YHNaAQ2KsMGlLEzRbk44nsZF2E1IeRc3vtJHPVbKCYgdFbaGO2ljd8g==", + "dev": true, + "dependencies": { + "@sindresorhus/is": "^4.0.0", + "@szmarczak/http-timer": "^4.0.5", + "@types/cacheable-request": "^6.0.1", + "@types/responselike": "^1.0.0", + "cacheable-lookup": "^5.0.3", + "cacheable-request": "^7.0.2", + "decompress-response": "^6.0.0", + "http2-wrapper": "^1.0.0-beta.5.2", + "lowercase-keys": "^2.0.0", + "p-cancelable": "^2.0.0", + "responselike": "^2.0.0" + }, + "engines": { + "node": ">=10.19.0" + }, + "funding": { + "url": "https://github.com/sindresorhus/got?sponsor=1" + } + }, "node_modules/graceful-fs": { "version": "4.2.11", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", @@ -15103,6 +15628,12 @@ "entities": "^4.5.0" } }, + "node_modules/http-cache-semantics": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", + "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==", + "dev": true + }, "node_modules/http-deceiver": { "version": "1.2.7", "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", @@ -15199,6 +15730,31 @@ } } }, + "node_modules/http2-wrapper": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-1.0.3.tgz", + "integrity": "sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg==", + "dev": true, + "dependencies": { + "quick-lru": "^5.1.1", + "resolve-alpn": "^1.0.0" + }, + "engines": { + "node": ">=10.19.0" + } + }, + "node_modules/http2-wrapper/node_modules/quick-lru": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", + "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/https-proxy-agent": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", @@ -15424,6 +15980,118 @@ "dev": true, "license": "MIT" }, + "node_modules/inquirer": { + "version": "7.3.3", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz", + "integrity": "sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==", + "dev": true, + "dependencies": { + "ansi-escapes": "^4.2.1", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-width": "^3.0.0", + "external-editor": "^3.0.3", + "figures": "^3.0.0", + "lodash": "^4.17.19", + "mute-stream": "0.0.8", + "run-async": "^2.4.0", + "rxjs": "^6.6.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/inquirer/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/inquirer/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/inquirer/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/inquirer/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/inquirer/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/inquirer/node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "dev": true, + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/inquirer/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/inquirer/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, "node_modules/internal-slot": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz", @@ -15793,6 +16461,15 @@ "node": ">=0.10.0" } }, + "node_modules/is-interactive": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", + "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/is-map": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", @@ -19222,6 +19899,15 @@ "tslib": "^2.0.3" } }, + "node_modules/lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/lru_map": { "version": "0.3.3", "resolved": "https://registry.npmjs.org/lru_map/-/lru_map-0.3.3.tgz", @@ -19656,6 +20342,15 @@ "node": ">=6" } }, + "node_modules/mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, "node_modules/min-indent": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", @@ -19783,6 +20478,18 @@ "node": ">=0.10.0" } }, + "node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, "node_modules/mkdirp-classic": { "version": "0.5.3", "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", @@ -19851,6 +20558,12 @@ "multicast-dns": "cli.js" } }, + "node_modules/mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", + "dev": true + }, "node_modules/nanoid": { "version": "3.3.7", "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", @@ -20034,6 +20747,18 @@ "node": ">=0.10.0" } }, + "node_modules/normalize-url": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz", + "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/normalize-wheel": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/normalize-wheel/-/normalize-wheel-1.0.1.tgz", @@ -20575,6 +21300,178 @@ "node": ">= 0.8.0" } }, + "node_modules/ora": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ora/-/ora-4.1.1.tgz", + "integrity": "sha512-sjYP8QyVWBpBZWD6Vr1M/KwknSw6kJOz41tvGMlwWeClHBtYKTbHMki1PsLZnxKpXMPbTKv9b3pjQu3REib96A==", + "dev": true, + "dependencies": { + "chalk": "^3.0.0", + "cli-cursor": "^3.1.0", + "cli-spinners": "^2.2.0", + "is-interactive": "^1.0.0", + "log-symbols": "^3.0.0", + "mute-stream": "0.0.8", + "strip-ansi": "^6.0.0", + "wcwidth": "^1.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ora/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/ora/node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ora/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/ora/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/ora/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/ora/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ora/node_modules/log-symbols": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-3.0.0.tgz", + "integrity": "sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==", + "dev": true, + "dependencies": { + "chalk": "^2.4.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ora/node_modules/log-symbols/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/ora/node_modules/log-symbols/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/ora/node_modules/log-symbols/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/ora/node_modules/log-symbols/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/ora/node_modules/log-symbols/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/ora/node_modules/log-symbols/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/ora/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/os-homedir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", @@ -20585,6 +21482,24 @@ "node": ">=0.10.0" } }, + "node_modules/os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/p-cancelable": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.1.1.tgz", + "integrity": "sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/p-limit": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", @@ -22781,6 +23696,12 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/resolve-alpn": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.2.1.tgz", + "integrity": "sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==", + "dev": true + }, "node_modules/resolve-bin": { "version": "0.4.3", "resolved": "https://registry.npmjs.org/resolve-bin/-/resolve-bin-0.4.3.tgz", @@ -22838,6 +23759,31 @@ "node": ">=10" } }, + "node_modules/responselike": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-2.0.1.tgz", + "integrity": "sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==", + "dev": true, + "dependencies": { + "lowercase-keys": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dev": true, + "dependencies": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/retry": { "version": "0.13.1", "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", @@ -22959,6 +23905,15 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/run-async": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, "node_modules/run-con": { "version": "1.2.12", "resolved": "https://registry.npmjs.org/run-con/-/run-con-1.2.12.tgz", @@ -23768,6 +24723,21 @@ "dev": true, "license": "ISC" }, + "node_modules/simple-git": { + "version": "3.25.0", + "resolved": "https://registry.npmjs.org/simple-git/-/simple-git-3.25.0.tgz", + "integrity": "sha512-KIY5sBnzc4yEcJXW7Tdv4viEz8KyG+nU0hay+DWZasvdFOYKeUZ6Xc25LUHHjw0tinPT7O1eY6pzX7pRT1K8rw==", + "dev": true, + "dependencies": { + "@kwsites/file-exists": "^1.1.1", + "@kwsites/promise-deferred": "^1.1.1", + "debug": "^4.3.5" + }, + "funding": { + "type": "github", + "url": "https://github.com/steveukx/git-js?sponsor=1" + } + }, "node_modules/simple-html-tokenizer": { "version": "0.5.11", "resolved": "https://registry.npmjs.org/simple-html-tokenizer/-/simple-html-tokenizer-0.5.11.tgz", @@ -25135,6 +26105,56 @@ "node": ">=6" } }, + "node_modules/terminal-link": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz", + "integrity": "sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==", + "dev": true, + "dependencies": { + "ansi-escapes": "^4.2.1", + "supports-hyperlinks": "^2.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/terminal-link/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/terminal-link/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/terminal-link/node_modules/supports-hyperlinks": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz", + "integrity": "sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0", + "supports-color": "^7.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/terser": { "version": "5.31.3", "resolved": "https://registry.npmjs.org/terser/-/terser-5.31.3.tgz", @@ -25337,6 +26357,18 @@ "dev": true, "license": "MIT" }, + "node_modules/tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, + "dependencies": { + "os-tmpdir": "~1.0.2" + }, + "engines": { + "node": ">=0.6.0" + } + }, "node_modules/tmpl": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", @@ -25665,6 +26697,12 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==", + "dev": true + }, "node_modules/typedarray-to-buffer": { "version": "3.1.5", "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", @@ -26203,6 +27241,15 @@ "minimalistic-assert": "^1.0.0" } }, + "node_modules/wcwidth": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", + "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", + "dev": true, + "dependencies": { + "defaults": "^1.0.3" + } + }, "node_modules/web-vitals": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/web-vitals/-/web-vitals-4.2.2.tgz", diff --git a/package.json b/package.json index 6c06bb5c0..2770b468e 100644 --- a/package.json +++ b/package.json @@ -23,10 +23,13 @@ "packages-update": "wp-scripts packages-update", "plugin-zip": "wp-scripts plugin-zip", "start": "wp-scripts start", - "test:e2e": "playwright test --config=playwright.config.js", + "pretest:e2e": "wp-env start", + "test:e2e": "wp-scripts test-playwright --config test/e2e/playwright.config.ts", + "test:e2e:debug": "wp-scripts test-playwright --config test/e2e/playwright.config.ts --ui", "test:unit:js": "wp-scripts test-unit-js --coverage --testResultsProcessor=jest-sonar-reporter", "pretest:unit:php": "wp-env start --xdebug", - "test:unit:php": "wp-env run tests-wordpress php -dxdebug.mode=coverage /var/www/html/wp-content/plugins/gatherpress/vendor/bin/phpunit -c /var/www/html/wp-content/plugins/gatherpress/phpunit.xml.dist --coverage-clover=coverage.xml --coverage-html=build/coverage-report" + "test:unit:php": "wp-env run tests-wordpress php -dxdebug.mode=coverage /var/www/html/wp-content/plugins/gatherpress/vendor/bin/phpunit -c /var/www/html/wp-content/plugins/gatherpress/phpunit.xml.dist --coverage-clover=coverage.xml --coverage-html=build/coverage-report", + "wp-env": "wp-env" }, "repository": { "type": "git", @@ -57,8 +60,10 @@ "@wordpress/data": "^10.4.0", "@wordpress/date": "^5.4.0", "@wordpress/dom-ready": "^4.4.0", + "@wordpress/e2e-test-utils-playwright": "^1.5.0", "@wordpress/edit-post": "^8.4.0", "@wordpress/element": "^6.4.0", + "@wordpress/env": "^10.5.0", "@wordpress/eslint-plugin": "^20.1.0", "@wordpress/i18n": "^5.4.0", "@wordpress/notices": "^5.4.0", From 493c9aac5bcbf6af14afccadd8db22b22ee915fd Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Mon, 12 Aug 2024 01:20:00 +0200 Subject: [PATCH 002/103] REMOVE special port settings for wp-env (which may be a problem, I'm not seeing yet) --- .wp-env.json | 6 ------ 1 file changed, 6 deletions(-) diff --git a/.wp-env.json b/.wp-env.json index 54dcdbdc0..44e384bfd 100644 --- a/.wp-env.json +++ b/.wp-env.json @@ -8,11 +8,5 @@ "mappings": { "wp-content/plugins": "./wp-core/plugins", "wp-content/themes": "./wp-core/themes" - }, - "port": 2003, - "env": { - "tests": { - "port": 2023 - } } } From c38da61be125a4b545660e19a9eaa33781aca09a Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Mon, 12 Aug 2024 01:21:25 +0200 Subject: [PATCH 003/103] Add configuration files to run Playwright tests --- .gitignore | 1 + playwright.config.js | 83 --------------------------------- test/e2e/global-setup.ts | 49 ++++++++++++++++++++ test/e2e/playwright.config.ts | 86 +++++++++++++++++++++++++++++++++++ test/e2e/test-utils/index.ts | 8 ++++ test/e2e/test-utils/test.ts | 75 ++++++++++++++++++++++++++++++ tsconfig.json | 8 ++++ 7 files changed, 227 insertions(+), 83 deletions(-) delete mode 100644 playwright.config.js create mode 100644 test/e2e/global-setup.ts create mode 100644 test/e2e/playwright.config.ts create mode 100644 test/e2e/test-utils/index.ts create mode 100644 test/e2e/test-utils/test.ts create mode 100644 tsconfig.json diff --git a/.gitignore b/.gitignore index f0e99a083..3b77b53f3 100644 --- a/.gitignore +++ b/.gitignore @@ -42,6 +42,7 @@ coverage.xml # Playwright # ########## +artifacts/ playwright-report/ test-results/ add-new-event.png diff --git a/playwright.config.js b/playwright.config.js deleted file mode 100644 index 64f78ef36..000000000 --- a/playwright.config.js +++ /dev/null @@ -1,83 +0,0 @@ -// @ts-check -const { defineConfig, devices } = require('@playwright/test'); - -/** - * Read environment variables from file. - * https://github.com/motdotla/dotenv - */ -require('dotenv').config(); - -/** - * @see https://playwright.dev/docs/test-configuration - */ -module.exports = defineConfig({ - testDir: './test/e2e', - /* Run tests in files in parallel */ - fullyParallel: true, - /* Fail the build on CI if you accidentally left test.only in the source code. */ - forbidOnly: !!process.env.CI, - /* Retry on CI only */ - retries: 2, - /* Opt out of parallel tests on CI. */ - workers: process.env.CI ? 1 : undefined, - - timeout: 30000, - /* Reporter to use. See https://playwright.dev/docs/test-reporters */ - reporter: 'html', - - /* Shared settings for all the projects below. See https://playwright.dev/docs/api/class-testoptions. */ - use: { - /* Base URL to use in actions like `await page.goto('/')`. */ - baseURL: 'https://develop.gatherpress.org/', - - /* Collect trace when retrying the failed test. See https://playwright.dev/docs/trace-viewer */ - trace: 'on-first-retry', - video: 'on', - screenshot: 'on', - }, - - /* Configure projects for major browsers */ - projects: [ - // { - // name: "chromium", - // use: { ...devices["Desktop Chrome"] }, - // }, - - { - name: 'firefox', - use: { ...devices['Desktop Firefox'] }, - }, - - { - name: 'webkit', - use: { ...devices['Desktop Safari'] }, - }, - - /* Test against mobile viewports. */ - // { - // name: 'Mobile Chrome', - // use: { ...devices['Pixel 5'] }, - // }, - // { - // name: 'Mobile Safari', - // use: { ...devices['iPhone 12'] }, - // }, - - /* Test against branded browsers. */ - { - name: 'Microsoft Edge', - use: { ...devices['Desktop Edge'], channel: 'msedge' }, - }, - { - name: 'Google Chrome', - use: { ...devices['Desktop Chrome'], channel: 'chrome' }, - }, - ], - - /* Run your local dev server before starting the tests */ - // webServer: { - // command: 'npm run start', - // url: 'http://127.0.0.1:3000', - // reuseExistingServer: !process.env.CI, - // }, -}); diff --git a/test/e2e/global-setup.ts b/test/e2e/global-setup.ts new file mode 100644 index 000000000..adbde4343 --- /dev/null +++ b/test/e2e/global-setup.ts @@ -0,0 +1,49 @@ +/** + * External dependencies + */ +const path = require( 'path' ); +import { request } from '@playwright/test'; + +/** + * WordPress dependencies + */ +import { RequestUtils } from '@wordpress/e2e-test-utils-playwright'; + +/** + * Internal dependencies + * + * @TODO: Would be nice to require() those constants directly from gutenberg, but they are not publicly exposed. + */ +// const { WP_BASE_URL, WP_USERNAME, WP_PASSWORD } = require( '@wordpress/e2e-test-utils-playwright/config' ); +import { WP_BASE_URL, WP_USERNAME, WP_PASSWORD, WP_AUTH_STORAGE } from '@test-utils'; + +const STORAGE_STATE_PATH = process.env.STORAGE_STATE_PATH || + path.join(process.cwd(), 'artifacts/storage-states/admin.json'); + +// To interact with the GatherPress plugin's settings page, we must be authenticated. +// Before any tests are run, we sign in, save the cookies set by WordPress, and then discard the session. +// Later, when we need to act as a logged-in user, we make those cookies available. +// https://playwright.dev/docs/test-global-setup-teardown#configure-globalsetup-and-globalteardown +export default async function globalSetup() { + const requestContext = await request.newContext({ + baseURL: WP_BASE_URL, + }); + const requestUtils = new RequestUtils(requestContext, { + // storageStatePath: WP_AUTH_STORAGE, + storageStatePath: STORAGE_STATE_PATH, + user: { + username: WP_USERNAME, + password: WP_PASSWORD, + }, + }); + + // Alternatively, we could take a more traditional route, + // filling in the input fields for the username and password and submitting the form. + // https://playwright.dev/docs/test-global-setup-teardown#example + + // Authenticate and save the storageState to disk. + await requestUtils.setupRest(); + + // + await requestContext.dispose(); +} \ No newline at end of file diff --git a/test/e2e/playwright.config.ts b/test/e2e/playwright.config.ts new file mode 100644 index 000000000..93a564667 --- /dev/null +++ b/test/e2e/playwright.config.ts @@ -0,0 +1,86 @@ +/** + * External dependencies + */ +import { defineConfig, devices } from '@playwright/test'; + +/** + * WordPress dependencies + * + * Playwright default configuration, that is used & provided by Gutenberg. + * https://github.com/WordPress/gutenberg/blob/trunk/packages/scripts/config/playwright.config.js + */ +// using Object Rest Spread operator magic +// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Spread_syntax +// const { use, ...baseConfig} = require( '@wordpress/scripts/config/playwright.config' ); +const { ...baseConfig} = require( '@wordpress/scripts/config/playwright.config' ); + +// Remove storageState +// The default conf of Gutenberg has storageState set, which means "We are logged-in". +// To make sure our tests run the other way around, we remove this now, +// and re-set it on a project- or test-level. +// const { storageState, ...baseUse} = use; +// const newConf = { +// ...baseConfig, +// use: { ...baseUse }, +// } +// console.log(newConf); +// const WP_AUTH_STORAGE = '.auth/wordpress.json'; + +export default defineConfig({ + // ...newConf, + ...baseConfig, + + // This directory holds all the test files. + // https://playwright.dev/docs/api/class-testconfig#test-config-test-dir + // + // IDEA: Maybe this should be set to "../../src/" + // where the test files would be housed directly with their components, blocks, etc. + testDir: 'tests', + + // This is run before any tests. Check the file for more information. + globalSetup: 'global-setup.ts', + // use: { + // https://playwright.dev/docs/api/class-testoptions#test-options-storage-state + // storageState: WP_AUTH_STORAGE + // storageState: '' + // }, + // Configure projects for major browsers + // We can test on different or multiple browsers if needed. + // https://playwright.dev/docs/test-projects#configure-projects-for-multiple-browsers + projects: [ + { + name: "chromium", + use: { ...devices["Desktop Chrome"] }, + }, + + // { + // name: 'firefox', + // use: { ...devices['Desktop Firefox'] }, + // }, + + // { + // name: 'webkit', + // use: { ...devices['Desktop Safari'] }, + // }, + + /* Test against mobile viewports. */ + // { + // name: 'Mobile Chrome', + // use: { ...devices['Pixel 5'] }, + // }, + // { + // name: 'Mobile Safari', + // use: { ...devices['iPhone 12'] }, + // }, + + /* Test against branded browsers. */ + // { + // name: 'Microsoft Edge', + // use: { ...devices['Desktop Edge'], channel: 'msedge' }, + // }, + // { + // name: 'Google Chrome', + // use: { ...devices['Desktop Chrome'], channel: 'chrome' }, + // }, + ], +}); \ No newline at end of file diff --git a/test/e2e/test-utils/index.ts b/test/e2e/test-utils/index.ts new file mode 100644 index 000000000..c68fcd887 --- /dev/null +++ b/test/e2e/test-utils/index.ts @@ -0,0 +1,8 @@ +export { + test, + expect, + WP_USERNAME, + WP_PASSWORD, + WP_BASE_URL, + WP_AUTH_STORAGE, +} from './test'; \ No newline at end of file diff --git a/test/e2e/test-utils/test.ts b/test/e2e/test-utils/test.ts new file mode 100644 index 000000000..3d88138cf --- /dev/null +++ b/test/e2e/test-utils/test.ts @@ -0,0 +1,75 @@ +import { test as base, expect } from '@playwright/test'; + +// We only require what's essential from the WordPress E2E test utils package. +import { + Admin, + Editor, + PageUtils, + RequestUtils, +} from '@wordpress/e2e-test-utils-playwright'; + + +/** + * WordPress dependencies + */ +// const { WP_BASE_URL, WP_USERNAME, WP_PASSWORD } = require( '@wordpress/e2e-test-utils-playwright/config' ); +const { + WP_USERNAME = 'admin', + WP_PASSWORD = 'password', + WP_BASE_URL = 'http://localhost:8889', + WP_AUTH_STORAGE = 'artifacts/auth.json', +} = process.env; + +// We could also import utils from other packages. +// import { StoreApiUtils } from '@woocommerce/e2e-utils'; + +// This is a project-specific util. +// import { WpGuestBar } from './wp-guest-bar'; + +// We are extending the functionalities of Playwright by adding and bootstrapping the custom utils. +// https://playwright.dev/docs/test-fixtures#creating-a-fixture +// +// We have a minimal setup compared to more involved ones. +// https://github.com/WordPress/gutenberg/blob/trunk/packages/e2e-test-utils-playwright/src/test.ts +// https://github.com/woocommerce/woocommerce-blocks/blob/trunk/tests/e2e/playwright-utils/test.ts +const test = base.extend<{ + admin: Admin; + editor: Editor; + pageUtils: PageUtils; + requestUtils: RequestUtils; + // wpGuestBar: WpGuestBar; +}>({ + async admin({ page, pageUtils, editor }, use) { + await use(new Admin({ page, pageUtils, editor })); + }, + async editor({ page }, use) { + await use(new Editor({ page })); + }, + async pageUtils({ page }, use) { + await use(new PageUtils({ page })); + }, + async requestUtils({}, use) { + // We want to make all REST API calls as authenticated users. + const requestUtils = await RequestUtils.setup({ + baseURL: WP_BASE_URL, + user: { + username: WP_USERNAME, + password: WP_PASSWORD, + }, + }); + + await use(requestUtils); + }, + // async wpGuestBar({ requestUtils }, use) { + // await use(new WpGuestBar(requestUtils)); + // }, +}); + +export { + test, + expect, + WP_USERNAME, + WP_PASSWORD, + WP_BASE_URL, + WP_AUTH_STORAGE, +}; \ No newline at end of file diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 000000000..f9491a04c --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,8 @@ +{ + "compilerOptions": { + "baseUrl": ".", + "paths": { + "@test-utils": ["test/e2e/test-utils"] + } + } +} From 673e566cacdda68296a0b2b5d1b715c9b9edf55f Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Mon, 12 Aug 2024 01:22:53 +0200 Subject: [PATCH 004/103] Update Github workflow to use wp-env for e2e tests --- .github/workflows/e2e-tests.yml | 85 +++++++++++++++++++++------------ 1 file changed, 54 insertions(+), 31 deletions(-) diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index a74b82020..a429fb7ab 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -1,39 +1,62 @@ name: E2E Tests + on: - push: - branches: - - main + workflow_dispatch: + pull_request: + +# Cancels all previous workflow runs for pull requests that have not completed. +concurrency: + # The concurrency group contains the workflow name and the branch name for pull requests + # or the commit hash for any other events. + group: ${{ github.workflow }}-${{ github.event_name == 'pull_request' && github.head_ref || github.sha }} + cancel-in-progress: true + jobs: - playwright: - name: Playwright Tests - runs-on: ubuntu-latest - steps: - - name: Checkout repository - uses: actions/checkout@v2 - - - name: Log debug information - run: | - npm --version - node --version - git --version - php --version - composer --version - - - name: Install NodeJS - uses: actions/setup-node@v2 - with: + e2e-tests: + runs-on: ubuntu-latest + strategy: + fail-fast: false + # matrix: + # node: ['14'] + + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Setup Node + uses: actions/setup-node@v4 + with: node-version-file: '.nvmrc' + cache: npm + + - name: Install dependencies + run: npm ci + + - name: Build plugin + run: | + npm run build + + - name: Install Playwright dependencies + run: | + npx playwright install chromium firefox webkit --with-deps - - name: NPM install - run: npm ci --legacy-peer-deps + - name: Starting the WordPress Environment + run: | + npm run env:start - - name: Playwright install - run: npx playwright install --with-deps + - name: Running the tests + env: + WP_AUTH_STORAGE: artifacts/storage-states/admin.json + WP_BASE_URL: http://localhost:8889 + WP_USERNAME: admin + WP_PASSWORD: password + run: | + npm run test:e2e - - name: Run Playwright - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - WP_ADMIN_PASSWORD: ${{ secrets.WP_ADMIN_PASSWORD }} - run: npm run test:e2e - if: ${{ success() || failure() }} + - name: Retain failed test results + uses: actions/upload-artifact@v3 + if: failure() + with: + name: test-results-matrix-less-debugging + path: test-results/ From e20f215d1a33111f4fe09b8e354b16d3f6de3fc0 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Mon, 12 Aug 2024 01:25:06 +0200 Subject: [PATCH 005/103] Rename folder with tests (which is a bit weird, because the playwright.config.ts setting is ignored and the folder needs to be re-named to 'tests' to make tests be found at all) --- test/e2e/{admin-tests => tests}/gatherpress-admin-venue.spec.js | 0 test/e2e/{admin-tests => tests}/gatherpress-admin.spec.js | 0 .../e2e/{admin-tests => tests}/gatherpress-event-loggedIn.spec.js | 0 .../{admin-tests => tests}/gatherpress-event-nonLoggegIn.spec.js | 0 test/e2e/{admin-tests => tests}/gatherpress-event.spec.js | 0 5 files changed, 0 insertions(+), 0 deletions(-) rename test/e2e/{admin-tests => tests}/gatherpress-admin-venue.spec.js (100%) rename test/e2e/{admin-tests => tests}/gatherpress-admin.spec.js (100%) rename test/e2e/{admin-tests => tests}/gatherpress-event-loggedIn.spec.js (100%) rename test/e2e/{admin-tests => tests}/gatherpress-event-nonLoggegIn.spec.js (100%) rename test/e2e/{admin-tests => tests}/gatherpress-event.spec.js (100%) diff --git a/test/e2e/admin-tests/gatherpress-admin-venue.spec.js b/test/e2e/tests/gatherpress-admin-venue.spec.js similarity index 100% rename from test/e2e/admin-tests/gatherpress-admin-venue.spec.js rename to test/e2e/tests/gatherpress-admin-venue.spec.js diff --git a/test/e2e/admin-tests/gatherpress-admin.spec.js b/test/e2e/tests/gatherpress-admin.spec.js similarity index 100% rename from test/e2e/admin-tests/gatherpress-admin.spec.js rename to test/e2e/tests/gatherpress-admin.spec.js diff --git a/test/e2e/admin-tests/gatherpress-event-loggedIn.spec.js b/test/e2e/tests/gatherpress-event-loggedIn.spec.js similarity index 100% rename from test/e2e/admin-tests/gatherpress-event-loggedIn.spec.js rename to test/e2e/tests/gatherpress-event-loggedIn.spec.js diff --git a/test/e2e/admin-tests/gatherpress-event-nonLoggegIn.spec.js b/test/e2e/tests/gatherpress-event-nonLoggegIn.spec.js similarity index 100% rename from test/e2e/admin-tests/gatherpress-event-nonLoggegIn.spec.js rename to test/e2e/tests/gatherpress-event-nonLoggegIn.spec.js diff --git a/test/e2e/admin-tests/gatherpress-event.spec.js b/test/e2e/tests/gatherpress-event.spec.js similarity index 100% rename from test/e2e/admin-tests/gatherpress-event.spec.js rename to test/e2e/tests/gatherpress-event.spec.js From 1ed3bd14fcbce6b4b8222ca1257b310f4aec892a Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Mon, 12 Aug 2024 01:26:21 +0200 Subject: [PATCH 006/103] NEW (WIP) e2e-tests utilising the wordpress/e2e-test-utils-playwright package --- .../tests/gatherpress-admin-settings.spec.ts | 32 +++++++ .../tests/gatherpress-blocks-editor.spec.ts | 88 +++++++++++++++++++ 2 files changed, 120 insertions(+) create mode 100644 test/e2e/tests/gatherpress-admin-settings.spec.ts create mode 100644 test/e2e/tests/gatherpress-blocks-editor.spec.ts diff --git a/test/e2e/tests/gatherpress-admin-settings.spec.ts b/test/e2e/tests/gatherpress-admin-settings.spec.ts new file mode 100644 index 000000000..1cbc468c6 --- /dev/null +++ b/test/e2e/tests/gatherpress-admin-settings.spec.ts @@ -0,0 +1,32 @@ +import { test, expect, WP_AUTH_STORAGE } from '@test-utils'; + +// We have multiple tests in this file, all requiring us to be authenticated. +// Compare this to the front-end.spec.ts. +// test.use({ storageState: WP_AUTH_STORAGE }); + +// test.beforeAll(async ({ requestUtils }) => { +// await requestUtils.activatePlugin('gatherpress'); +// }); + +test.describe( 'GatherPress Settings', () => { + test('A link to the plugin settings page is present under the Events menu', async ({ + page, + admin, + }) => { + await admin.visitAdminPage('/'); + + const gatherPressMenuItem = page.locator('li', { + has: page.getByRole('link', { name: 'Events' }), + }); + const wpGatherPressSettingsItem = gatherPressMenuItem.getByRole('link', { + name: 'Settings', + }); + const wpGatherPressSettingsItemUrl = + await wpGatherPressSettingsItem.getAttribute('href'); + + await expect(wpGatherPressSettingsItem).toBeVisible(); + await expect(wpGatherPressSettingsItemUrl).toContain( + 'edit.php?post_type=gatherpress_event&page=gatherpress_general', + ); + }); +}); \ No newline at end of file diff --git a/test/e2e/tests/gatherpress-blocks-editor.spec.ts b/test/e2e/tests/gatherpress-blocks-editor.spec.ts new file mode 100644 index 000000000..558c7f115 --- /dev/null +++ b/test/e2e/tests/gatherpress-blocks-editor.spec.ts @@ -0,0 +1,88 @@ +/** + * WordPress dependencies + */ +const { test, expect } = require( '@wordpress/e2e-test-utils-playwright' ); +/** + * internal dependencies + */ +// import { test, expect, WP_AUTH_STORAGE } from '@test-utils'; +import { WP_AUTH_STORAGE } from '@test-utils'; + +const GPOOV_CLASS_NAME = 'gp-onlineevent-or-venue'; + +test.describe( 'GatherPress general block tests', () => { + // We have multiple tests in this file, all requiring us to be authenticated. + // Compare this to the front-end.spec.ts. + // test.use({ storageState: WP_AUTH_STORAGE }); + +/* test.beforeAll(async ({ requestUtils }) => { + await requestUtils.activatePlugin('gatherpress'); + }); */ + + test.beforeEach( async ( { admin } ) => { + // await admin.createNewPost( { postType: 'gatherpress_event' } ); + await admin.createNewPost(); + } ); + + test.afterEach( async ( { requestUtils } ) => { + await requestUtils.deleteAllPosts(); + } ); + + /** + * Are 3 blocks available? + * + * Tests if all blocks are avail through the block inserter panel. + * + * Adopted from 'Search for the Paragraph block with 2 additional variations' + * @source https://github.com/WordPress/gutenberg/blob/ddadd1a95d18270908ac4a1fd8d6e354cfadf61c/test/e2e/specs/editor/plugins/block-variations.spec.js#L62 + */ + test( 'Are 1 blocks available?', async ( { + page, + } ) => { + await page + .getByRole( 'button', { name: 'Toggle block inserter' } ) + .click(); + + await page + .getByRole( 'region', { name: 'Block Library' } ) + .getByRole( 'searchbox', { + name: 'Search for blocks and patterns', + } ) + .fill( 'gatherpress' ); + + await expect( + page + .getByRole( 'listbox', { name: 'Blocks' } ) + .getByRole( 'option' ) + ).toHaveText( [ 'Events List' ] ); + } ); + + test( 'Does the block insert?', async ( { + page, + editor, + } ) => { +/* + await editor.insertBlock( { name: 'pseudo-' + GPOOV_CLASS_NAME + '-button' } ); + + expect( await page.$('.' + GPOOV_CLASS_NAME ) ).not.toBeNull(); + + const block = editor.canvas.getByRole( 'document', { + name: 'Online-Event Link', + } ); + + await expect( block ).not.toBeNull(); */ + +/* + await editor.canvas + .getByLabel('Add default block') + .click(); + + await page.keyboard.type( '/Online-Event Link' ); + await page.keyboard.press( 'Enter' ); + + await expect( + editor.canvas.getByRole( 'document', { name: 'Online-Event Link' } ) + ).toHaveText( 'Online-Event' ); */ + } ); + +} ); \ No newline at end of file From da4fe1321a7c141cb8295f8995b7821afe947983 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Mon, 12 Aug 2024 01:34:57 +0200 Subject: [PATCH 007/103] Fix script name to start wp-env --- .github/workflows/e2e-tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index a429fb7ab..8c95645c8 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -43,7 +43,7 @@ jobs: - name: Starting the WordPress Environment run: | - npm run env:start + npm run wp-env start - name: Running the tests env: From 6a4ea6f2a9977c8847065e68f1b3f3aa76848851 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Mon, 12 Aug 2024 01:35:57 +0200 Subject: [PATCH 008/103] Add basic dev-documentation about e2e-tests --- docs/developer/e2e-tests/README.md | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 docs/developer/e2e-tests/README.md diff --git a/docs/developer/e2e-tests/README.md b/docs/developer/e2e-tests/README.md new file mode 100644 index 000000000..f599aeff9 --- /dev/null +++ b/docs/developer/e2e-tests/README.md @@ -0,0 +1,26 @@ +# e2e testing + +GatherPress allows to run automated and manual end-to-end tests, while sharing the same, `wp-env` based, setup. + +## Automated tests + +Check the results of the _e2e-tests action workflow_ at `https://github.com/GatherPress/gatherpress/actions/workflows/e2e-tests.yml`. + +## Manual testing + +0. Have `node` installed +1. Have `docker` running +2. Open the plugin folder in a terminal +3. _Choose one of the following options_ + - Run Playwright in the background using + ``` + npm run test:e2e + ``` + + - Run Playwright visually (and change what's happening) using + ``` + npm run test:e2e:debug + ``` + ![grafik](https://github.com/user-attachments/assets/1627dff7-363e-447e-9981-adac610ac888) + + - Run Tests independently _AND_ visually using the [Playwright VSCode extension](https://playwright.dev/docs/getting-started-vscode) \ No newline at end of file From 9477ecc493af8d1a40cfcfbc2eb505e8e0f34d6d Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Mon, 12 Aug 2024 10:14:08 +0200 Subject: [PATCH 009/103] Run BUILD before Playwright tests --- package.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index 2770b468e..b8cc5fa09 100644 --- a/package.json +++ b/package.json @@ -23,7 +23,8 @@ "packages-update": "wp-scripts packages-update", "plugin-zip": "wp-scripts plugin-zip", "start": "wp-scripts start", - "pretest:e2e": "wp-env start", + "pretest:e2e": "wp-scripts build && wp-env start", + "pretest:e2e:debug": "wp-scripts build && wp-env start", "test:e2e": "wp-scripts test-playwright --config test/e2e/playwright.config.ts", "test:e2e:debug": "wp-scripts test-playwright --config test/e2e/playwright.config.ts --ui", "test:unit:js": "wp-scripts test-unit-js --coverage --testResultsProcessor=jest-sonar-reporter", From 94d99f6b60308c605dcefe2a6843cbbf5c77ecef Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Mon, 12 Aug 2024 10:15:13 +0200 Subject: [PATCH 010/103] DO NOT MERGE // FOR DEBUGGING ONLY // simple Gutenberg paragraph block test --- .../tests/gatherpress-blocks-editor.spec.ts | 28 ++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/test/e2e/tests/gatherpress-blocks-editor.spec.ts b/test/e2e/tests/gatherpress-blocks-editor.spec.ts index 558c7f115..824d35315 100644 --- a/test/e2e/tests/gatherpress-blocks-editor.spec.ts +++ b/test/e2e/tests/gatherpress-blocks-editor.spec.ts @@ -61,7 +61,33 @@ test.describe( 'GatherPress general block tests', () => { page, editor, } ) => { -/* +// THIS IS COPIED FROM // +// https://github.com/WordPress/gutenberg/blob/c48075b6665ec3910d00677088672c1ba9e24916/test/e2e/specs/editor/blocks/paragraph.spec.js#L26C1-L40C43 +// FOR DEBUGGING ONLY // +// REMOVE AFTER WORKFLOW RUNS // + + await editor.insertBlock( { + name: 'core/paragraph', + } ); + await page.keyboard.type( '1' ); + + const firstBlockTagName = await editor.canvas + .locator( ':root' ) + .evaluate( () => { + return document.querySelector( '[data-block]' ).tagName; + } ); + + // The outer element should be a paragraph. Blocks should never have any + // additional div wrappers so the markup remains simple and easy to + // style. + expect( firstBlockTagName ).toBe( 'P' ); +// END // THIS IS COPIED FROM // +// https://github.com/WordPress/gutenberg/blob/c48075b6665ec3910d00677088672c1ba9e24916/test/e2e/specs/editor/blocks/paragraph.spec.js#L26C1-L40C43 +// FOR DEBUGGING ONLY // +// REMOVE AFTER WORKFLOW RUNS // + + + /* await editor.insertBlock( { name: 'pseudo-' + GPOOV_CLASS_NAME + '-button' } ); expect( await page.$('.' + GPOOV_CLASS_NAME ) ).not.toBeNull(); From eb8dbdc54eb0a113a2e511fad3192db89d6aa812 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Mon, 12 Aug 2024 10:22:49 +0200 Subject: [PATCH 011/103] Remove custom globalSetup & env vars in favor of Gutenbergs defaults --- .github/workflows/e2e-tests.yml | 10 +++++----- test/e2e/playwright.config.ts | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index 8c95645c8..c9ea4e090 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -46,11 +46,11 @@ jobs: npm run wp-env start - name: Running the tests - env: - WP_AUTH_STORAGE: artifacts/storage-states/admin.json - WP_BASE_URL: http://localhost:8889 - WP_USERNAME: admin - WP_PASSWORD: password + # env: + # WP_AUTH_STORAGE: artifacts/storage-states/admin.json + # WP_BASE_URL: http://localhost:8889 + # WP_USERNAME: admin + # WP_PASSWORD: password run: | npm run test:e2e diff --git a/test/e2e/playwright.config.ts b/test/e2e/playwright.config.ts index 93a564667..4ccf753c8 100644 --- a/test/e2e/playwright.config.ts +++ b/test/e2e/playwright.config.ts @@ -38,7 +38,7 @@ export default defineConfig({ testDir: 'tests', // This is run before any tests. Check the file for more information. - globalSetup: 'global-setup.ts', + // globalSetup: 'global-setup.ts', // use: { // https://playwright.dev/docs/api/class-testoptions#test-options-storage-state // storageState: WP_AUTH_STORAGE From a888cc2ce81cc26393d45d8a0c0a487460d5ef84 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Mon, 12 Aug 2024 10:24:53 +0200 Subject: [PATCH 012/103] TRY: Disable blank mappings for themes & plugins in wp-env TRICKY: Enabled mapping leads to 404 for build blocks, Disabled mapping helps gatherpress blocks, but make the simple paragraph test fail (copied for debugging from gutenberg) --- .wp-env.json | 4 ---- 1 file changed, 4 deletions(-) diff --git a/.wp-env.json b/.wp-env.json index 44e384bfd..7074e7a5c 100644 --- a/.wp-env.json +++ b/.wp-env.json @@ -4,9 +4,5 @@ ], "config": { "WP_DEBUG_LOG": true - }, - "mappings": { - "wp-content/plugins": "./wp-core/plugins", - "wp-content/themes": "./wp-core/themes" } } From ee9544cd1fa476ce978fc44e5f19416f491bfde7 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Mon, 12 Aug 2024 12:28:29 +0200 Subject: [PATCH 013/103] Add caching to the Playwright browser download step --- .github/workflows/e2e-tests.yml | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index c9ea4e090..f19a4f2d2 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -24,6 +24,13 @@ jobs: - name: Checkout uses: actions/checkout@v4 + - uses: actions/cache@v2 + id: playwright-cache + with: + path: | + ~/.cache/ms-playwright + key: ${{ runner.os }}-playwright-${{ hashFiles('**/package-lock.json') }} + - name: Setup Node uses: actions/setup-node@v4 with: @@ -38,8 +45,10 @@ jobs: npm run build - name: Install Playwright dependencies - run: | - npx playwright install chromium firefox webkit --with-deps + run: npx playwright install --with-deps + if: steps.playwright-cache.outputs.cache-hit != 'true' + - run: npx playwright install-deps + if: steps.playwright-cache.outputs.cache-hit == 'true' - name: Starting the WordPress Environment run: | From d1b3b3a895fe8dccb9e1d25a17e6fd7505296c4b Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Mon, 12 Aug 2024 14:38:38 +0200 Subject: [PATCH 014/103] Creating a short lived node_modules cache to be used by multiple accross one Github actions workflow attempt. --- .github/workflows/e2e-tests.yml | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index f19a4f2d2..f300dba46 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -37,7 +37,20 @@ jobs: node-version-file: '.nvmrc' cache: npm - - name: Install dependencies + # Creating a short lived node_modules cache + # to be used accross one workflow attempt. + # https://github.com/actions/cache/blob/main/caching-strategies.md#creating-a-short-lived-cache + - uses: actions/cache@v4 + id: node_modules-cache + with: + path: | + ./node_modules + key: ${{ runner.os }}-node_modules-${{ github.sha }}-${{ hashFiles('package-lock.json') }} + restore-keys: | + ${{ runner.os }}-node_modules-${{ github.sha }}- + + - name: NPM install + if: steps.node_modules-cache.outputs.cache-hit != 'true' run: npm ci - name: Build plugin From 308ca4ecd4a368d2f2261b6492e83d07e2f2e81d Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Mon, 12 Aug 2024 14:58:35 +0200 Subject: [PATCH 015/103] DISABLED TEMPORARY // REVERT BEFORE MERGE // to make debugging easier --- ...min-venue.spec.js => gatherpress-admin-venue.spec.js.DISABLED} | 0 ...therpress-admin.spec.js => gatherpress-admin.spec.js.DISABLED} | 0 ...ggedIn.spec.js => gatherpress-event-loggedIn.spec.js.DISABLED} | 0 ...gIn.spec.js => gatherpress-event-nonLoggegIn.spec.js.DISABLED} | 0 ...therpress-event.spec.js => gatherpress-event.spec.js.DISABLED} | 0 5 files changed, 0 insertions(+), 0 deletions(-) rename test/e2e/tests/{gatherpress-admin-venue.spec.js => gatherpress-admin-venue.spec.js.DISABLED} (100%) rename test/e2e/tests/{gatherpress-admin.spec.js => gatherpress-admin.spec.js.DISABLED} (100%) rename test/e2e/tests/{gatherpress-event-loggedIn.spec.js => gatherpress-event-loggedIn.spec.js.DISABLED} (100%) rename test/e2e/tests/{gatherpress-event-nonLoggegIn.spec.js => gatherpress-event-nonLoggegIn.spec.js.DISABLED} (100%) rename test/e2e/tests/{gatherpress-event.spec.js => gatherpress-event.spec.js.DISABLED} (100%) diff --git a/test/e2e/tests/gatherpress-admin-venue.spec.js b/test/e2e/tests/gatherpress-admin-venue.spec.js.DISABLED similarity index 100% rename from test/e2e/tests/gatherpress-admin-venue.spec.js rename to test/e2e/tests/gatherpress-admin-venue.spec.js.DISABLED diff --git a/test/e2e/tests/gatherpress-admin.spec.js b/test/e2e/tests/gatherpress-admin.spec.js.DISABLED similarity index 100% rename from test/e2e/tests/gatherpress-admin.spec.js rename to test/e2e/tests/gatherpress-admin.spec.js.DISABLED diff --git a/test/e2e/tests/gatherpress-event-loggedIn.spec.js b/test/e2e/tests/gatherpress-event-loggedIn.spec.js.DISABLED similarity index 100% rename from test/e2e/tests/gatherpress-event-loggedIn.spec.js rename to test/e2e/tests/gatherpress-event-loggedIn.spec.js.DISABLED diff --git a/test/e2e/tests/gatherpress-event-nonLoggegIn.spec.js b/test/e2e/tests/gatherpress-event-nonLoggegIn.spec.js.DISABLED similarity index 100% rename from test/e2e/tests/gatherpress-event-nonLoggegIn.spec.js rename to test/e2e/tests/gatherpress-event-nonLoggegIn.spec.js.DISABLED diff --git a/test/e2e/tests/gatherpress-event.spec.js b/test/e2e/tests/gatherpress-event.spec.js.DISABLED similarity index 100% rename from test/e2e/tests/gatherpress-event.spec.js rename to test/e2e/tests/gatherpress-event.spec.js.DISABLED From 9cd89adac55bb2c9338746f804296f5f6183fa92 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Mon, 12 Aug 2024 15:02:57 +0200 Subject: [PATCH 016/103] Fix the artifacts upload on CI, to get traces and screenshots from failed attempts (suggested at https://github.com/GatherPress/gatherpress/pull/776#issuecomment-2283642165 by @swissspidy) --- .github/workflows/e2e-tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index f300dba46..f7a4daf65 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -81,4 +81,4 @@ jobs: if: failure() with: name: test-results-matrix-less-debugging - path: test-results/ + path: artifacts/test-results/ From ea0739db272198e5b0b11a0ad21f9dd53161e515 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Mon, 12 Aug 2024 23:59:20 +0200 Subject: [PATCH 017/103] Update actions/checkout to v4 --- .github/workflows/e2e-tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index f7a4daf65..73f90850e 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -24,7 +24,7 @@ jobs: - name: Checkout uses: actions/checkout@v4 - - uses: actions/cache@v2 + - uses: actions/cache@v4 id: playwright-cache with: path: | From 6f2c8f54e8561191d565652b85b8a75fe8d7d318 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Tue, 13 Aug 2024 00:00:13 +0200 Subject: [PATCH 018/103] Run npm install, only when really needed --- .github/workflows/e2e-tests.yml | 27 +++++++++++++++++---------- 1 file changed, 17 insertions(+), 10 deletions(-) diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index 73f90850e..06522be97 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -35,27 +35,34 @@ jobs: uses: actions/setup-node@v4 with: node-version-file: '.nvmrc' - cache: npm + # Enable built-in functionality for caching and restoring dependencies, which is disabled by default. + # The actions/setup-node uses actions/cache under the hood. + # https://github.com/actions/setup-node#caching-global-packages-data + cache: 'npm' - # Creating a short lived node_modules cache - # to be used accross one workflow attempt. + + # Restoring the short lived node_modules cache + # to be used accross all workflows running on the last commit. # https://github.com/actions/cache/blob/main/caching-strategies.md#creating-a-short-lived-cache - - uses: actions/cache@v4 + - uses: actions/cache/restore@v4 id: node_modules-cache with: path: | ./node_modules key: ${{ runner.os }}-node_modules-${{ github.sha }}-${{ hashFiles('package-lock.json') }} - restore-keys: | - ${{ runner.os }}-node_modules-${{ github.sha }}- - name: NPM install if: steps.node_modules-cache.outputs.cache-hit != 'true' - run: npm ci + run: npm ci --legacy-peer-deps + + # Creating a short lived node_modules cache + - uses: actions/cache/save@v4 + if: steps.node_modules-cache.outputs.cache-hit != 'true' + with: + path: | + ./node_modules + key: ${{ steps.node_modules-cache.outputs.cache-primary-key }} - - name: Build plugin - run: | - npm run build - name: Install Playwright dependencies run: npx playwright install --with-deps From f3c6ad4a1126e9007ea359bac77b4aceeb2b7108 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Tue, 13 Aug 2024 00:01:50 +0200 Subject: [PATCH 019/103] Remove steps, that are being done via npm pre-script runs --- .github/workflows/e2e-tests.yml | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index 06522be97..81e649901 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -63,6 +63,9 @@ jobs: ./node_modules key: ${{ steps.node_modules-cache.outputs.cache-primary-key }} + # - name: Build plugin + # run: | + # npm run build - name: Install Playwright dependencies run: npx playwright install --with-deps @@ -70,9 +73,9 @@ jobs: - run: npx playwright install-deps if: steps.playwright-cache.outputs.cache-hit == 'true' - - name: Starting the WordPress Environment - run: | - npm run wp-env start + # - name: Starting the WordPress Environment + # run: | + # npm run wp-env start - name: Running the tests # env: From b7fad4b9133e5ffe63f0e45d58ccc8a470941a08 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Tue, 13 Aug 2024 00:02:19 +0200 Subject: [PATCH 020/103] Cleanup --- .github/workflows/e2e-tests.yml | 7 +- test/e2e/global-setup.ts | 49 ------------ test/e2e/playwright.config.ts | 20 ----- test/e2e/test-utils/index.ts | 8 -- test/e2e/test-utils/test.ts | 75 ------------------- .../tests/gatherpress-admin-settings.spec.ts | 13 +--- .../tests/gatherpress-blocks-editor.spec.ts | 19 ++--- tsconfig.json | 8 -- 8 files changed, 12 insertions(+), 187 deletions(-) delete mode 100644 test/e2e/global-setup.ts delete mode 100644 test/e2e/test-utils/index.ts delete mode 100644 test/e2e/test-utils/test.ts delete mode 100644 tsconfig.json diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index 81e649901..5bb443272 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -77,12 +77,7 @@ jobs: # run: | # npm run wp-env start - - name: Running the tests - # env: - # WP_AUTH_STORAGE: artifacts/storage-states/admin.json - # WP_BASE_URL: http://localhost:8889 - # WP_USERNAME: admin - # WP_PASSWORD: password + - name: Starting Playwright & Running the tests run: | npm run test:e2e diff --git a/test/e2e/global-setup.ts b/test/e2e/global-setup.ts deleted file mode 100644 index adbde4343..000000000 --- a/test/e2e/global-setup.ts +++ /dev/null @@ -1,49 +0,0 @@ -/** - * External dependencies - */ -const path = require( 'path' ); -import { request } from '@playwright/test'; - -/** - * WordPress dependencies - */ -import { RequestUtils } from '@wordpress/e2e-test-utils-playwright'; - -/** - * Internal dependencies - * - * @TODO: Would be nice to require() those constants directly from gutenberg, but they are not publicly exposed. - */ -// const { WP_BASE_URL, WP_USERNAME, WP_PASSWORD } = require( '@wordpress/e2e-test-utils-playwright/config' ); -import { WP_BASE_URL, WP_USERNAME, WP_PASSWORD, WP_AUTH_STORAGE } from '@test-utils'; - -const STORAGE_STATE_PATH = process.env.STORAGE_STATE_PATH || - path.join(process.cwd(), 'artifacts/storage-states/admin.json'); - -// To interact with the GatherPress plugin's settings page, we must be authenticated. -// Before any tests are run, we sign in, save the cookies set by WordPress, and then discard the session. -// Later, when we need to act as a logged-in user, we make those cookies available. -// https://playwright.dev/docs/test-global-setup-teardown#configure-globalsetup-and-globalteardown -export default async function globalSetup() { - const requestContext = await request.newContext({ - baseURL: WP_BASE_URL, - }); - const requestUtils = new RequestUtils(requestContext, { - // storageStatePath: WP_AUTH_STORAGE, - storageStatePath: STORAGE_STATE_PATH, - user: { - username: WP_USERNAME, - password: WP_PASSWORD, - }, - }); - - // Alternatively, we could take a more traditional route, - // filling in the input fields for the username and password and submitting the form. - // https://playwright.dev/docs/test-global-setup-teardown#example - - // Authenticate and save the storageState to disk. - await requestUtils.setupRest(); - - // - await requestContext.dispose(); -} \ No newline at end of file diff --git a/test/e2e/playwright.config.ts b/test/e2e/playwright.config.ts index 4ccf753c8..db9d7b5a7 100644 --- a/test/e2e/playwright.config.ts +++ b/test/e2e/playwright.config.ts @@ -14,20 +14,7 @@ import { defineConfig, devices } from '@playwright/test'; // const { use, ...baseConfig} = require( '@wordpress/scripts/config/playwright.config' ); const { ...baseConfig} = require( '@wordpress/scripts/config/playwright.config' ); -// Remove storageState -// The default conf of Gutenberg has storageState set, which means "We are logged-in". -// To make sure our tests run the other way around, we remove this now, -// and re-set it on a project- or test-level. -// const { storageState, ...baseUse} = use; -// const newConf = { -// ...baseConfig, -// use: { ...baseUse }, -// } -// console.log(newConf); -// const WP_AUTH_STORAGE = '.auth/wordpress.json'; - export default defineConfig({ - // ...newConf, ...baseConfig, // This directory holds all the test files. @@ -37,13 +24,6 @@ export default defineConfig({ // where the test files would be housed directly with their components, blocks, etc. testDir: 'tests', - // This is run before any tests. Check the file for more information. - // globalSetup: 'global-setup.ts', - // use: { - // https://playwright.dev/docs/api/class-testoptions#test-options-storage-state - // storageState: WP_AUTH_STORAGE - // storageState: '' - // }, // Configure projects for major browsers // We can test on different or multiple browsers if needed. // https://playwright.dev/docs/test-projects#configure-projects-for-multiple-browsers diff --git a/test/e2e/test-utils/index.ts b/test/e2e/test-utils/index.ts deleted file mode 100644 index c68fcd887..000000000 --- a/test/e2e/test-utils/index.ts +++ /dev/null @@ -1,8 +0,0 @@ -export { - test, - expect, - WP_USERNAME, - WP_PASSWORD, - WP_BASE_URL, - WP_AUTH_STORAGE, -} from './test'; \ No newline at end of file diff --git a/test/e2e/test-utils/test.ts b/test/e2e/test-utils/test.ts deleted file mode 100644 index 3d88138cf..000000000 --- a/test/e2e/test-utils/test.ts +++ /dev/null @@ -1,75 +0,0 @@ -import { test as base, expect } from '@playwright/test'; - -// We only require what's essential from the WordPress E2E test utils package. -import { - Admin, - Editor, - PageUtils, - RequestUtils, -} from '@wordpress/e2e-test-utils-playwright'; - - -/** - * WordPress dependencies - */ -// const { WP_BASE_URL, WP_USERNAME, WP_PASSWORD } = require( '@wordpress/e2e-test-utils-playwright/config' ); -const { - WP_USERNAME = 'admin', - WP_PASSWORD = 'password', - WP_BASE_URL = 'http://localhost:8889', - WP_AUTH_STORAGE = 'artifacts/auth.json', -} = process.env; - -// We could also import utils from other packages. -// import { StoreApiUtils } from '@woocommerce/e2e-utils'; - -// This is a project-specific util. -// import { WpGuestBar } from './wp-guest-bar'; - -// We are extending the functionalities of Playwright by adding and bootstrapping the custom utils. -// https://playwright.dev/docs/test-fixtures#creating-a-fixture -// -// We have a minimal setup compared to more involved ones. -// https://github.com/WordPress/gutenberg/blob/trunk/packages/e2e-test-utils-playwright/src/test.ts -// https://github.com/woocommerce/woocommerce-blocks/blob/trunk/tests/e2e/playwright-utils/test.ts -const test = base.extend<{ - admin: Admin; - editor: Editor; - pageUtils: PageUtils; - requestUtils: RequestUtils; - // wpGuestBar: WpGuestBar; -}>({ - async admin({ page, pageUtils, editor }, use) { - await use(new Admin({ page, pageUtils, editor })); - }, - async editor({ page }, use) { - await use(new Editor({ page })); - }, - async pageUtils({ page }, use) { - await use(new PageUtils({ page })); - }, - async requestUtils({}, use) { - // We want to make all REST API calls as authenticated users. - const requestUtils = await RequestUtils.setup({ - baseURL: WP_BASE_URL, - user: { - username: WP_USERNAME, - password: WP_PASSWORD, - }, - }); - - await use(requestUtils); - }, - // async wpGuestBar({ requestUtils }, use) { - // await use(new WpGuestBar(requestUtils)); - // }, -}); - -export { - test, - expect, - WP_USERNAME, - WP_PASSWORD, - WP_BASE_URL, - WP_AUTH_STORAGE, -}; \ No newline at end of file diff --git a/test/e2e/tests/gatherpress-admin-settings.spec.ts b/test/e2e/tests/gatherpress-admin-settings.spec.ts index 1cbc468c6..f7ae4f74a 100644 --- a/test/e2e/tests/gatherpress-admin-settings.spec.ts +++ b/test/e2e/tests/gatherpress-admin-settings.spec.ts @@ -1,12 +1,7 @@ -import { test, expect, WP_AUTH_STORAGE } from '@test-utils'; - -// We have multiple tests in this file, all requiring us to be authenticated. -// Compare this to the front-end.spec.ts. -// test.use({ storageState: WP_AUTH_STORAGE }); - -// test.beforeAll(async ({ requestUtils }) => { -// await requestUtils.activatePlugin('gatherpress'); -// }); +/** + * WordPress dependencies + */ +const { test, expect } = require( '@wordpress/e2e-test-utils-playwright' ); test.describe( 'GatherPress Settings', () => { test('A link to the plugin settings page is present under the Events menu', async ({ diff --git a/test/e2e/tests/gatherpress-blocks-editor.spec.ts b/test/e2e/tests/gatherpress-blocks-editor.spec.ts index 824d35315..9661e17f8 100644 --- a/test/e2e/tests/gatherpress-blocks-editor.spec.ts +++ b/test/e2e/tests/gatherpress-blocks-editor.spec.ts @@ -2,21 +2,16 @@ * WordPress dependencies */ const { test, expect } = require( '@wordpress/e2e-test-utils-playwright' ); -/** - * internal dependencies - */ -// import { test, expect, WP_AUTH_STORAGE } from '@test-utils'; -import { WP_AUTH_STORAGE } from '@test-utils'; const GPOOV_CLASS_NAME = 'gp-onlineevent-or-venue'; test.describe( 'GatherPress general block tests', () => { - // We have multiple tests in this file, all requiring us to be authenticated. - // Compare this to the front-end.spec.ts. - // test.use({ storageState: WP_AUTH_STORAGE }); - -/* test.beforeAll(async ({ requestUtils }) => { - await requestUtils.activatePlugin('gatherpress'); +/* + test.beforeAll(async ({ requestUtils }) => { + // await requestUtils.activatePlugin('gatherpress'); + + // TEST // DO NOT MERGE // should make: 1. test fail, 2. test pass + // await requestUtils.deactivatePlugin('gatherpress'); }); */ test.beforeEach( async ( { admin } ) => { @@ -36,7 +31,7 @@ test.describe( 'GatherPress general block tests', () => { * Adopted from 'Search for the Paragraph block with 2 additional variations' * @source https://github.com/WordPress/gutenberg/blob/ddadd1a95d18270908ac4a1fd8d6e354cfadf61c/test/e2e/specs/editor/plugins/block-variations.spec.js#L62 */ - test( 'Are 1 blocks available?', async ( { + test( 'Is 1 block available?', async ( { page, } ) => { await page diff --git a/tsconfig.json b/tsconfig.json deleted file mode 100644 index f9491a04c..000000000 --- a/tsconfig.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "compilerOptions": { - "baseUrl": ".", - "paths": { - "@test-utils": ["test/e2e/test-utils"] - } - } -} From 421c3b0ea8ea29107279ac3b0cd8f3b2bb54dc0c Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Sat, 17 Aug 2024 00:40:01 +0200 Subject: [PATCH 021/103] Move doc into contributor folder --- docs/{developer => contributor}/e2e-tests/README.md | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) rename docs/{developer => contributor}/e2e-tests/README.md (78%) diff --git a/docs/developer/e2e-tests/README.md b/docs/contributor/e2e-tests/README.md similarity index 78% rename from docs/developer/e2e-tests/README.md rename to docs/contributor/e2e-tests/README.md index f599aeff9..484ac646a 100644 --- a/docs/developer/e2e-tests/README.md +++ b/docs/contributor/e2e-tests/README.md @@ -12,15 +12,19 @@ Check the results of the _e2e-tests action workflow_ at `https://github.com/Gat 1. Have `docker` running 2. Open the plugin folder in a terminal 3. _Choose one of the following options_ - - Run Playwright in the background using + - Run Playwright normally ``` npm run test:e2e ``` - - Run Playwright visually (and change what's happening) using + - Run Playwright visually (and change what's happening) ``` - npm run test:e2e:debug + npm run test:e2e:ui ``` ![grafik](https://github.com/user-attachments/assets/1627dff7-363e-447e-9981-adac610ac888) - + + - Run Playwright in debugging mode (and record what's happening) + ``` + npm run test:e2e:debug + ``` - Run Tests independently _AND_ visually using the [Playwright VSCode extension](https://playwright.dev/docs/getting-started-vscode) \ No newline at end of file From ed4ff96b9487a5ae123106adbbca36c2a0ab9a61 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Sat, 17 Aug 2024 00:40:30 +0200 Subject: [PATCH 022/103] Rename scripts to align with screenshot-workflow --- package.json | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index b8cc5fa09..7278ad11b 100644 --- a/package.json +++ b/package.json @@ -25,8 +25,10 @@ "start": "wp-scripts start", "pretest:e2e": "wp-scripts build && wp-env start", "pretest:e2e:debug": "wp-scripts build && wp-env start", + "pretest:e2e:ui": "wp-scripts build && wp-env start", "test:e2e": "wp-scripts test-playwright --config test/e2e/playwright.config.ts", - "test:e2e:debug": "wp-scripts test-playwright --config test/e2e/playwright.config.ts --ui", + "test:e2e:debug": "wp-scripts test-playwright --config test/e2e/playwright.config.ts --debug", + "test:e2e:ui": "wp-scripts test-playwright --config test/e2e/playwright.config.ts --ui", "test:unit:js": "wp-scripts test-unit-js --coverage --testResultsProcessor=jest-sonar-reporter", "pretest:unit:php": "wp-env start --xdebug", "test:unit:php": "wp-env run tests-wordpress php -dxdebug.mode=coverage /var/www/html/wp-content/plugins/gatherpress/vendor/bin/phpunit -c /var/www/html/wp-content/plugins/gatherpress/phpunit.xml.dist --coverage-clover=coverage.xml --coverage-html=build/coverage-report", From cb6e65b0e8f2d3a7ce3f67c6916bc6fd71d62900 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Sat, 17 Aug 2024 00:43:46 +0200 Subject: [PATCH 023/103] Remove debug stuff --- .../tests/gatherpress-blocks-editor.spec.ts | 53 ++++--------------- 1 file changed, 10 insertions(+), 43 deletions(-) diff --git a/test/e2e/tests/gatherpress-blocks-editor.spec.ts b/test/e2e/tests/gatherpress-blocks-editor.spec.ts index 9661e17f8..cbc56dca1 100644 --- a/test/e2e/tests/gatherpress-blocks-editor.spec.ts +++ b/test/e2e/tests/gatherpress-blocks-editor.spec.ts @@ -3,19 +3,9 @@ */ const { test, expect } = require( '@wordpress/e2e-test-utils-playwright' ); -const GPOOV_CLASS_NAME = 'gp-onlineevent-or-venue'; - test.describe( 'GatherPress general block tests', () => { -/* - test.beforeAll(async ({ requestUtils }) => { - // await requestUtils.activatePlugin('gatherpress'); - - // TEST // DO NOT MERGE // should make: 1. test fail, 2. test pass - // await requestUtils.deactivatePlugin('gatherpress'); - }); */ test.beforeEach( async ( { admin } ) => { - // await admin.createNewPost( { postType: 'gatherpress_event' } ); await admin.createNewPost(); } ); @@ -24,7 +14,7 @@ test.describe( 'GatherPress general block tests', () => { } ); /** - * Are 3 blocks available? + * Are all blocks available? * * Tests if all blocks are avail through the block inserter panel. * @@ -52,43 +42,20 @@ test.describe( 'GatherPress general block tests', () => { ).toHaveText( [ 'Events List' ] ); } ); - test( 'Does the block insert?', async ( { + test( 'Does the "Events List" block insert?', async ( { page, editor, } ) => { -// THIS IS COPIED FROM // -// https://github.com/WordPress/gutenberg/blob/c48075b6665ec3910d00677088672c1ba9e24916/test/e2e/specs/editor/blocks/paragraph.spec.js#L26C1-L40C43 -// FOR DEBUGGING ONLY // -// REMOVE AFTER WORKFLOW RUNS // - - await editor.insertBlock( { - name: 'core/paragraph', - } ); - await page.keyboard.type( '1' ); - - const firstBlockTagName = await editor.canvas - .locator( ':root' ) - .evaluate( () => { - return document.querySelector( '[data-block]' ).tagName; - } ); - - // The outer element should be a paragraph. Blocks should never have any - // additional div wrappers so the markup remains simple and easy to - // style. - expect( firstBlockTagName ).toBe( 'P' ); -// END // THIS IS COPIED FROM // -// https://github.com/WordPress/gutenberg/blob/c48075b6665ec3910d00677088672c1ba9e24916/test/e2e/specs/editor/blocks/paragraph.spec.js#L26C1-L40C43 -// FOR DEBUGGING ONLY // -// REMOVE AFTER WORKFLOW RUNS // + await editor.insertBlock( { name: 'Events List' } ); /* - await editor.insertBlock( { name: 'pseudo-' + GPOOV_CLASS_NAME + '-button' } ); - - expect( await page.$('.' + GPOOV_CLASS_NAME ) ).not.toBeNull(); + * Not working yet, because the GatherPress blocks are still all on apiVersion 2, + * but need to have 3 + * / const block = editor.canvas.getByRole( 'document', { - name: 'Online-Event Link', + name: 'Events List', } ); await expect( block ).not.toBeNull(); */ @@ -98,12 +65,12 @@ test.describe( 'GatherPress general block tests', () => { .getByLabel('Add default block') .click(); - await page.keyboard.type( '/Online-Event Link' ); + await page.keyboard.type( '/Events List' ); await page.keyboard.press( 'Enter' ); await expect( - editor.canvas.getByRole( 'document', { name: 'Online-Event Link' } ) - ).toHaveText( 'Online-Event' ); */ + editor.canvas.getByRole( 'document', { name: 'Events List' } ) + ).toHaveText( '...' ); */ } ); } ); \ No newline at end of file From c7dae87cb463be05466832bdb95f524e3417db85 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Sat, 17 Aug 2024 01:12:25 +0200 Subject: [PATCH 024/103] Clean up --- .../gatherpress-admin-venue.spec.js.DISABLED | 41 ------------------- .../e2e/tests/gatherpress-admin-venue.spec.ts | 32 +++++++++++++++ .../tests/gatherpress-admin.spec.js.DISABLED | 29 ------------- test/e2e/tests/gatherpress-admin.spec.ts | 34 +++++++++++++++ .../tests/gatherpress-blocks-editor.spec.ts | 12 +++--- 5 files changed, 72 insertions(+), 76 deletions(-) delete mode 100644 test/e2e/tests/gatherpress-admin-venue.spec.js.DISABLED create mode 100644 test/e2e/tests/gatherpress-admin-venue.spec.ts delete mode 100644 test/e2e/tests/gatherpress-admin.spec.js.DISABLED create mode 100644 test/e2e/tests/gatherpress-admin.spec.ts diff --git a/test/e2e/tests/gatherpress-admin-venue.spec.js.DISABLED b/test/e2e/tests/gatherpress-admin-venue.spec.js.DISABLED deleted file mode 100644 index e2ff5d6c7..000000000 --- a/test/e2e/tests/gatherpress-admin-venue.spec.js.DISABLED +++ /dev/null @@ -1,41 +0,0 @@ -const { test } = require('@playwright/test'); -const { login } = require('../reusable-user-steps/common.js'); - -test.describe('e2e test for venue through admin side', () => { - test.beforeEach(async ({ page }) => { - test.setTimeout(120000); - await page.setViewportSize({ width: 1920, height: 720 }); - await page.waitForLoadState('networkidle'); - }); - - test('The admin should be able to create a new post for Venue', async ({ - page, - }) => { - await login({ page, username: 'testuser1' }); - - await page.getByRole('link', { name: 'Events', exact: true }).click(); - - await page.getByRole('link', { name: 'Venues' }).click(); - await page.screenshot({ path: 'vanue-page.png' }); - - await page - .locator('#wpbody-content') - .getByRole('link', { name: 'Add New' }) - .click(); - - await page.getByLabel('Add title').isVisible(); - await page.getByLabel('Add title').fill('Test venue'); - await page.getByLabel('Add title').press('Tab'); - - const venue = await page.$('.gatherpress-venue__name'); - await venue.press('Backspace'); - - await page - .getByLabel('Empty block; start writing or') - .fill('test venue information'); - - await page.getByLabel('Toggle block inserter').click(); - await page.getByRole('option', { name: 'Paragraph' }).click(); - await page.screenshot({ path: 'new-venue.png' }); - }); -}); diff --git a/test/e2e/tests/gatherpress-admin-venue.spec.ts b/test/e2e/tests/gatherpress-admin-venue.spec.ts new file mode 100644 index 000000000..a01f8e412 --- /dev/null +++ b/test/e2e/tests/gatherpress-admin-venue.spec.ts @@ -0,0 +1,32 @@ +/** + * WordPress dependencies + */ +const { test, expect } = require( '@wordpress/e2e-test-utils-playwright' ); + + +// const { login } = require('../reusable-user-steps/common.js'); + +test.describe('e2e test for venue through admin side', () => { + + test('The admin should be able to create a new post for Venue', async ({ + admin, + page, + }) => { + await admin.createNewPost( { postType: 'gatherpress_venue' } ); + + await page.getByLabel('Add title').isVisible(); + await page.getByLabel('Add title').fill('Test venue'); + await page.getByLabel('Add title').press('Tab'); + + const venue = await page.$('.gatherpress-venue__name'); + await venue.press('Backspace'); + + await page + .getByLabel('Empty block; start writing or') + .fill('test venue information'); + + await page.getByLabel('Toggle block inserter').click(); + await page.getByRole('option', { name: 'Paragraph' }).click(); + // await page.screenshot({ path: 'new-venue.png' }); + }); +}); diff --git a/test/e2e/tests/gatherpress-admin.spec.js.DISABLED b/test/e2e/tests/gatherpress-admin.spec.js.DISABLED deleted file mode 100644 index 91d8a7856..000000000 --- a/test/e2e/tests/gatherpress-admin.spec.js.DISABLED +++ /dev/null @@ -1,29 +0,0 @@ -const { test } = require('@playwright/test'); -const { login } = require('../reusable-user-steps/common.js'); - -test.describe('As admin login into gatherPress', () => { - test.beforeEach(async ({ page }) => { - test.setTimeout(120000); - await page.setViewportSize({ width: 1920, height: 720 }); - await page.waitForLoadState('networkidle'); - }); - - test('The Event menu item should be preloaded after clicking Add New button', async ({ - page, - }) => { - await login({ page, username: 'testuser1' }); - - await page.getByRole('link', { name: 'Events', exact: true }).click(); - await page.screenshot({ path: 'event-page.png' }); - - await page - .locator('#wpbody-content') - .getByRole('link', { name: 'Add New' }) - .click(); - - await page.getByLabel('Document Overview').click(); - - await page.getByLabel('List View').locator('div').nth(1).isVisible(); - await page.screenshot({ path: 'add-new-event.png' }); - }); -}); diff --git a/test/e2e/tests/gatherpress-admin.spec.ts b/test/e2e/tests/gatherpress-admin.spec.ts new file mode 100644 index 000000000..880c49c22 --- /dev/null +++ b/test/e2e/tests/gatherpress-admin.spec.ts @@ -0,0 +1,34 @@ +/** + * WordPress dependencies + */ +const { test, expect } = require( '@wordpress/e2e-test-utils-playwright' ); + + +test.describe('As admin login into gatherPress', () => { + + test('The Event menu item should be preloaded after clicking Add New button', async ({ + page, + }) => { + await page.getByRole('link', { name: 'Events', exact: true }).click(); + // await page.screenshot({ path: 'event-page.png' }); + +/* await page + .locator('#wpbody-content') + .getByRole('link', { name: 'Add New' }) + .click(); + + await page.getByLabel('Document Overview').click(); + + await page.getByLabel('List View').locator('div').nth(1).isVisible(); + await page.screenshot({ path: 'add-new-event.png' }); */ + + // Maybe better use ... ? + // await admin.createNewPost( { postType: 'gatherpress_event' } ); + + +/* await page.getByRole('link', { name: 'Events', exact: true }).click(); + + await page.getByRole('link', { name: 'Venues' }).click(); + await page.screenshot({ path: 'vanue-page.png' }); */ + }); +}); diff --git a/test/e2e/tests/gatherpress-blocks-editor.spec.ts b/test/e2e/tests/gatherpress-blocks-editor.spec.ts index cbc56dca1..5a2431c2a 100644 --- a/test/e2e/tests/gatherpress-blocks-editor.spec.ts +++ b/test/e2e/tests/gatherpress-blocks-editor.spec.ts @@ -42,6 +42,10 @@ test.describe( 'GatherPress general block tests', () => { ).toHaveText( [ 'Events List' ] ); } ); + /* + * Not working yet, because the GatherPress blocks are still all on apiVersion 2, + * but need to have 3 + * / test( 'Does the "Events List" block insert?', async ( { page, editor, @@ -49,10 +53,6 @@ test.describe( 'GatherPress general block tests', () => { await editor.insertBlock( { name: 'Events List' } ); - /* - * Not working yet, because the GatherPress blocks are still all on apiVersion 2, - * but need to have 3 - * / const block = editor.canvas.getByRole( 'document', { name: 'Events List', @@ -70,7 +70,7 @@ test.describe( 'GatherPress general block tests', () => { await expect( editor.canvas.getByRole( 'document', { name: 'Events List' } ) - ).toHaveText( '...' ); */ - } ); + ).toHaveText( '...' ); * / + } ); */ } ); \ No newline at end of file From 345fd9e5c7e565d741420572bc9e0502a50e44ae Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Sat, 17 Aug 2024 01:24:29 +0200 Subject: [PATCH 025/103] Re-Enable 'publish event through admin side' (WIP) --- ...LED => gatherpress-event-loggedIn.spec.ts} | 25 +++++++------------ 1 file changed, 9 insertions(+), 16 deletions(-) rename test/e2e/tests/{gatherpress-event-loggedIn.spec.js.DISABLED => gatherpress-event-loggedIn.spec.ts} (81%) diff --git a/test/e2e/tests/gatherpress-event-loggedIn.spec.js.DISABLED b/test/e2e/tests/gatherpress-event-loggedIn.spec.ts similarity index 81% rename from test/e2e/tests/gatherpress-event-loggedIn.spec.js.DISABLED rename to test/e2e/tests/gatherpress-event-loggedIn.spec.ts index 869a76174..b80969307 100644 --- a/test/e2e/tests/gatherpress-event-loggedIn.spec.js.DISABLED +++ b/test/e2e/tests/gatherpress-event-loggedIn.spec.ts @@ -1,22 +1,15 @@ -const { test } = require('@playwright/test'); -const { login } = require('../reusable-user-steps/common'); +/** + * WordPress dependencies + */ +const { test, expect } = require( '@wordpress/e2e-test-utils-playwright' ); test.describe('e2e test for publish event through admin side', () => { - test.beforeEach(async ({ page }) => { - test.setTimeout(120000); - await page.setViewportSize({ width: 1920, height: 720 }); - await page.waitForLoadState('networkidle'); - await login({ page, username: 'testuser1' }); - }); test('01-the user should be able to publish an online event', async ({ + admin, page, }) => { - await page.getByRole('link', { name: 'Events', exact: true }).click(); - await page - .locator('#wpbody-content') - .getByRole('link', { name: 'Add New' }) - .click(); + await admin.createNewPost( { postType: 'gatherpress_event' } ); await page .getByLabel('Block: Event Date') @@ -27,7 +20,7 @@ test.describe('e2e test for publish event through admin side', () => { await page.getByRole('button', { name: 'Event settings' }).click(); - await page.getByLabel('Venue Selector').selectOption('58:online-event'); + await page.getByLabel('Venue Selector').selectOption('58:online-event'); // !!!!!!!!!!!!!!!!!!!!!!!!!!!!! 58 doesn't exist const currentDate = new Date().toISOString().split('T')[0]; // format YYYY-MM-DD const eventTitle = await page .getByLabel('Add title') @@ -55,7 +48,7 @@ test.describe('e2e test for publish event through admin side', () => { .filter({ hasText: 'View Event' }) .isVisible({ timeout: 30000 }); // verified the view event button. }); - +/* test('02-verify the logged in user view RSVP button on home page and perform RSVP action', async ({ page, }) => { @@ -84,5 +77,5 @@ test.describe('e2e test for publish event through admin side', () => { .locator('.gatherpress-rsvp-response__items') .first() .screenshot({ path: 'attending.png' }); - }); + }); */ }); From cab2d148e0eb1a645530f43cfd289d403ed29c38 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Sat, 17 Aug 2024 02:06:17 +0200 Subject: [PATCH 026/103] Resolve merge conflicts --- package.json | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/package.json b/package.json index 7278ad11b..1b3e08ea5 100644 --- a/package.json +++ b/package.json @@ -23,12 +23,13 @@ "packages-update": "wp-scripts packages-update", "plugin-zip": "wp-scripts plugin-zip", "start": "wp-scripts start", - "pretest:e2e": "wp-scripts build && wp-env start", - "pretest:e2e:debug": "wp-scripts build && wp-env start", - "pretest:e2e:ui": "wp-scripts build && wp-env start", - "test:e2e": "wp-scripts test-playwright --config test/e2e/playwright.config.ts", - "test:e2e:debug": "wp-scripts test-playwright --config test/e2e/playwright.config.ts --debug", - "test:e2e:ui": "wp-scripts test-playwright --config test/e2e/playwright.config.ts --ui", + "prescreenshots:wporg": "wp-scripts build && wp-env start", + "prescreenshots:wporg:debug": "wp-scripts build && wp-env start", + "prescreenshots:wporg:ui": "wp-scripts build && wp-env start", + "screenshots:wporg": "wp-scripts test-playwright --config .github/scripts/wordpress-org-screenshots/playwright.config.ts", + "screenshots:wporg:debug": "wp-scripts test-playwright --config .github/scripts/wordpress-org-screenshots/playwright.config.ts --debug", + "screenshots:wporg:ui": "wp-scripts test-playwright --config .github/scripts/wordpress-org-screenshots/playwright.config.ts --ui", + "test:e2e": "playwright test --config=playwright.config.js", "test:unit:js": "wp-scripts test-unit-js --coverage --testResultsProcessor=jest-sonar-reporter", "pretest:unit:php": "wp-env start --xdebug", "test:unit:php": "wp-env run tests-wordpress php -dxdebug.mode=coverage /var/www/html/wp-content/plugins/gatherpress/vendor/bin/phpunit -c /var/www/html/wp-content/plugins/gatherpress/phpunit.xml.dist --coverage-clover=coverage.xml --coverage-html=build/coverage-report", From d8e59a0a1c3e1ed4327f8cd50904fa31338bc5b0 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Sat, 17 Aug 2024 02:07:37 +0200 Subject: [PATCH 027/103] Re-Add test:e2e scripts --- package.json | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index 1b3e08ea5..9f41873f3 100644 --- a/package.json +++ b/package.json @@ -29,7 +29,12 @@ "screenshots:wporg": "wp-scripts test-playwright --config .github/scripts/wordpress-org-screenshots/playwright.config.ts", "screenshots:wporg:debug": "wp-scripts test-playwright --config .github/scripts/wordpress-org-screenshots/playwright.config.ts --debug", "screenshots:wporg:ui": "wp-scripts test-playwright --config .github/scripts/wordpress-org-screenshots/playwright.config.ts --ui", - "test:e2e": "playwright test --config=playwright.config.js", + "pretest:e2e": "wp-scripts build && wp-env start", + "pretest:e2e:debug": "wp-scripts build && wp-env start", + "pretest:e2e:ui": "wp-scripts build && wp-env start", + "test:e2e": "wp-scripts test-playwright --config test/e2e/playwright.config.ts", + "test:e2e:debug": "wp-scripts test-playwright --config test/e2e/playwright.config.ts --debug", + "test:e2e:ui": "wp-scripts test-playwright --config test/e2e/playwright.config.ts --ui", "test:unit:js": "wp-scripts test-unit-js --coverage --testResultsProcessor=jest-sonar-reporter", "pretest:unit:php": "wp-env start --xdebug", "test:unit:php": "wp-env run tests-wordpress php -dxdebug.mode=coverage /var/www/html/wp-content/plugins/gatherpress/vendor/bin/phpunit -c /var/www/html/wp-content/plugins/gatherpress/phpunit.xml.dist --coverage-clover=coverage.xml --coverage-html=build/coverage-report", From 082f6c52043a15bccf57ed3d952da2a1017a1b8b Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Sat, 17 Aug 2024 02:12:30 +0200 Subject: [PATCH 028/103] Fix indention --- .github/workflows/e2e-tests.yml | 144 +++++++++++++++----------------- 1 file changed, 68 insertions(+), 76 deletions(-) diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index 5bb443272..71f95fc8d 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -1,8 +1,8 @@ name: E2E Tests on: - workflow_dispatch: - pull_request: + workflow_dispatch: + pull_request: # Cancels all previous workflow runs for pull requests that have not completed. concurrency: @@ -13,77 +13,69 @@ concurrency: jobs: - e2e-tests: - runs-on: ubuntu-latest - strategy: - fail-fast: false - # matrix: - # node: ['14'] - - steps: - - name: Checkout - uses: actions/checkout@v4 - - - uses: actions/cache@v4 - id: playwright-cache - with: - path: | - ~/.cache/ms-playwright - key: ${{ runner.os }}-playwright-${{ hashFiles('**/package-lock.json') }} - - - name: Setup Node - uses: actions/setup-node@v4 - with: - node-version-file: '.nvmrc' - # Enable built-in functionality for caching and restoring dependencies, which is disabled by default. - # The actions/setup-node uses actions/cache under the hood. - # https://github.com/actions/setup-node#caching-global-packages-data - cache: 'npm' - - - # Restoring the short lived node_modules cache - # to be used accross all workflows running on the last commit. - # https://github.com/actions/cache/blob/main/caching-strategies.md#creating-a-short-lived-cache - - uses: actions/cache/restore@v4 - id: node_modules-cache - with: - path: | - ./node_modules - key: ${{ runner.os }}-node_modules-${{ github.sha }}-${{ hashFiles('package-lock.json') }} - - - name: NPM install - if: steps.node_modules-cache.outputs.cache-hit != 'true' - run: npm ci --legacy-peer-deps - - # Creating a short lived node_modules cache - - uses: actions/cache/save@v4 - if: steps.node_modules-cache.outputs.cache-hit != 'true' - with: - path: | - ./node_modules - key: ${{ steps.node_modules-cache.outputs.cache-primary-key }} - - # - name: Build plugin - # run: | - # npm run build - - - name: Install Playwright dependencies - run: npx playwright install --with-deps - if: steps.playwright-cache.outputs.cache-hit != 'true' - - run: npx playwright install-deps - if: steps.playwright-cache.outputs.cache-hit == 'true' - - # - name: Starting the WordPress Environment - # run: | - # npm run wp-env start - - - name: Starting Playwright & Running the tests - run: | - npm run test:e2e - - - name: Retain failed test results - uses: actions/upload-artifact@v3 - if: failure() - with: - name: test-results-matrix-less-debugging - path: artifacts/test-results/ + e2e-tests: + runs-on: ubuntu-latest + strategy: + fail-fast: false + # matrix: + # node: ['14'] + + steps: + - name: Checkout + uses: actions/checkout@v4 + + - uses: actions/cache@v4 + id: playwright-cache + with: + path: | + ~/.cache/ms-playwright + key: ${{ runner.os }}-playwright-${{ hashFiles('**/package-lock.json') }} + + - name: Setup Node + uses: actions/setup-node@v4 + with: + node-version-file: '.nvmrc' + # Enable built-in functionality for caching and restoring dependencies, which is disabled by default. + # The actions/setup-node uses actions/cache under the hood. + # https://github.com/actions/setup-node#caching-global-packages-data + cache: 'npm' + + + # Restoring the short lived node_modules cache + # to be used accross all workflows running on the last commit. + # https://github.com/actions/cache/blob/main/caching-strategies.md#creating-a-short-lived-cache + - uses: actions/cache/restore@v4 + id: node_modules-cache + with: + path: | + ./node_modules + key: ${{ runner.os }}-node_modules-${{ github.sha }}-${{ hashFiles('package-lock.json') }} + + - name: NPM install + if: steps.node_modules-cache.outputs.cache-hit != 'true' + run: npm ci --legacy-peer-deps + + # Creating a short lived node_modules cache + - uses: actions/cache/save@v4 + if: steps.node_modules-cache.outputs.cache-hit != 'true' + with: + path: | + ./node_modules + key: ${{ steps.node_modules-cache.outputs.cache-primary-key }} + + - name: Install Playwright dependencies + run: npx playwright install --with-deps + if: steps.playwright-cache.outputs.cache-hit != 'true' + - run: npx playwright install-deps + if: steps.playwright-cache.outputs.cache-hit == 'true' + + - name: Starting Playwright & Running the tests + run: | + npm run test:e2e + + - name: Retain failed test results + uses: actions/upload-artifact@v3 + if: failure() + with: + name: test-results-matrix-less-debugging + path: artifacts/test-results/ From eb7125dad3ef678a3c7aa728472dc9c5940a49a4 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Sat, 17 Aug 2024 12:44:46 +0200 Subject: [PATCH 029/103] Lint JS --- test/e2e/playwright.config.ts | 32 ++++++------- .../tests/gatherpress-admin-settings.spec.ts | 45 ++++++++++--------- .../e2e/tests/gatherpress-admin-venue.spec.ts | 8 +--- test/e2e/tests/gatherpress-admin.spec.ts | 11 ++--- .../tests/gatherpress-blocks-editor.spec.ts | 42 ++++++++--------- .../tests/gatherpress-event-loggedIn.spec.ts | 7 ++- 6 files changed, 68 insertions(+), 77 deletions(-) diff --git a/test/e2e/playwright.config.ts b/test/e2e/playwright.config.ts index db9d7b5a7..678b3f595 100644 --- a/test/e2e/playwright.config.ts +++ b/test/e2e/playwright.config.ts @@ -5,32 +5,34 @@ import { defineConfig, devices } from '@playwright/test'; /** * WordPress dependencies - * + * * Playwright default configuration, that is used & provided by Gutenberg. * https://github.com/WordPress/gutenberg/blob/trunk/packages/scripts/config/playwright.config.js */ // using Object Rest Spread operator magic // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Spread_syntax // const { use, ...baseConfig} = require( '@wordpress/scripts/config/playwright.config' ); -const { ...baseConfig} = require( '@wordpress/scripts/config/playwright.config' ); +const { + ...baseConfig +} = require('@wordpress/scripts/config/playwright.config'); export default defineConfig({ - ...baseConfig, + ...baseConfig, - // This directory holds all the test files. - // https://playwright.dev/docs/api/class-testconfig#test-config-test-dir - // - // IDEA: Maybe this should be set to "../../src/" - // where the test files would be housed directly with their components, blocks, etc. - testDir: 'tests', + // This directory holds all the test files. + // https://playwright.dev/docs/api/class-testconfig#test-config-test-dir + // + // IDEA: Maybe this should be set to "../../src/" + // where the test files would be housed directly with their components, blocks, etc. + testDir: 'tests', // Configure projects for major browsers - // We can test on different or multiple browsers if needed. - // https://playwright.dev/docs/test-projects#configure-projects-for-multiple-browsers - projects: [ + // We can test on different or multiple browsers if needed. + // https://playwright.dev/docs/test-projects#configure-projects-for-multiple-browsers + projects: [ { - name: "chromium", - use: { ...devices["Desktop Chrome"] }, + name: 'chromium', + use: { ...devices['Desktop Chrome'] }, }, // { @@ -63,4 +65,4 @@ export default defineConfig({ // use: { ...devices['Desktop Chrome'], channel: 'chrome' }, // }, ], -}); \ No newline at end of file +}); diff --git a/test/e2e/tests/gatherpress-admin-settings.spec.ts b/test/e2e/tests/gatherpress-admin-settings.spec.ts index f7ae4f74a..2bdde7e75 100644 --- a/test/e2e/tests/gatherpress-admin-settings.spec.ts +++ b/test/e2e/tests/gatherpress-admin-settings.spec.ts @@ -1,27 +1,30 @@ /** * WordPress dependencies */ -const { test, expect } = require( '@wordpress/e2e-test-utils-playwright' ); +const { test, expect } = require('@wordpress/e2e-test-utils-playwright'); -test.describe( 'GatherPress Settings', () => { - test('A link to the plugin settings page is present under the Events menu', async ({ - page, - admin, - }) => { - await admin.visitAdminPage('/'); +test.describe('GatherPress Settings', () => { + test('A link to the plugin settings page is present under the Events menu', async ({ + page, + admin, + }) => { + await admin.visitAdminPage('/'); - const gatherPressMenuItem = page.locator('li', { - has: page.getByRole('link', { name: 'Events' }), - }); - const wpGatherPressSettingsItem = gatherPressMenuItem.getByRole('link', { - name: 'Settings', - }); - const wpGatherPressSettingsItemUrl = - await wpGatherPressSettingsItem.getAttribute('href'); + const gatherPressMenuItem = page.locator('li', { + has: page.getByRole('link', { name: 'Events' }), + }); + const wpGatherPressSettingsItem = gatherPressMenuItem.getByRole( + 'link', + { + name: 'Settings', + } + ); + const wpGatherPressSettingsItemUrl = + await wpGatherPressSettingsItem.getAttribute('href'); - await expect(wpGatherPressSettingsItem).toBeVisible(); - await expect(wpGatherPressSettingsItemUrl).toContain( - 'edit.php?post_type=gatherpress_event&page=gatherpress_general', - ); - }); -}); \ No newline at end of file + await expect(wpGatherPressSettingsItem).toBeVisible(); + await expect(wpGatherPressSettingsItemUrl).toContain( + 'edit.php?post_type=gatherpress_event&page=gatherpress_general' + ); + }); +}); diff --git a/test/e2e/tests/gatherpress-admin-venue.spec.ts b/test/e2e/tests/gatherpress-admin-venue.spec.ts index a01f8e412..b57e21f34 100644 --- a/test/e2e/tests/gatherpress-admin-venue.spec.ts +++ b/test/e2e/tests/gatherpress-admin-venue.spec.ts @@ -1,18 +1,14 @@ /** * WordPress dependencies */ -const { test, expect } = require( '@wordpress/e2e-test-utils-playwright' ); - - -// const { login } = require('../reusable-user-steps/common.js'); +const { test } = require('@wordpress/e2e-test-utils-playwright'); test.describe('e2e test for venue through admin side', () => { - test('The admin should be able to create a new post for Venue', async ({ admin, page, }) => { - await admin.createNewPost( { postType: 'gatherpress_venue' } ); + await admin.createNewPost({ postType: 'gatherpress_venue' }); await page.getByLabel('Add title').isVisible(); await page.getByLabel('Add title').fill('Test venue'); diff --git a/test/e2e/tests/gatherpress-admin.spec.ts b/test/e2e/tests/gatherpress-admin.spec.ts index 880c49c22..03b53f20b 100644 --- a/test/e2e/tests/gatherpress-admin.spec.ts +++ b/test/e2e/tests/gatherpress-admin.spec.ts @@ -1,18 +1,16 @@ /** * WordPress dependencies */ -const { test, expect } = require( '@wordpress/e2e-test-utils-playwright' ); - +const { test } = require('@wordpress/e2e-test-utils-playwright'); test.describe('As admin login into gatherPress', () => { - test('The Event menu item should be preloaded after clicking Add New button', async ({ page, }) => { await page.getByRole('link', { name: 'Events', exact: true }).click(); // await page.screenshot({ path: 'event-page.png' }); -/* await page + /* await page .locator('#wpbody-content') .getByRole('link', { name: 'Add New' }) .click(); @@ -21,12 +19,11 @@ test.describe('As admin login into gatherPress', () => { await page.getByLabel('List View').locator('div').nth(1).isVisible(); await page.screenshot({ path: 'add-new-event.png' }); */ - + // Maybe better use ... ? // await admin.createNewPost( { postType: 'gatherpress_event' } ); - -/* await page.getByRole('link', { name: 'Events', exact: true }).click(); + /* await page.getByRole('link', { name: 'Events', exact: true }).click(); await page.getByRole('link', { name: 'Venues' }).click(); await page.screenshot({ path: 'vanue-page.png' }); */ diff --git a/test/e2e/tests/gatherpress-blocks-editor.spec.ts b/test/e2e/tests/gatherpress-blocks-editor.spec.ts index 5a2431c2a..8b6071997 100644 --- a/test/e2e/tests/gatherpress-blocks-editor.spec.ts +++ b/test/e2e/tests/gatherpress-blocks-editor.spec.ts @@ -1,17 +1,16 @@ /** * WordPress dependencies */ -const { test, expect } = require( '@wordpress/e2e-test-utils-playwright' ); +const { test, expect } = require('@wordpress/e2e-test-utils-playwright'); -test.describe( 'GatherPress general block tests', () => { - - test.beforeEach( async ( { admin } ) => { +test.describe('GatherPress general block tests', () => { + test.beforeEach(async ({ admin }) => { await admin.createNewPost(); - } ); + }); - test.afterEach( async ( { requestUtils } ) => { + test.afterEach(async ({ requestUtils }) => { await requestUtils.deleteAllPosts(); - } ); + }); /** * Are all blocks available? @@ -19,28 +18,24 @@ test.describe( 'GatherPress general block tests', () => { * Tests if all blocks are avail through the block inserter panel. * * Adopted from 'Search for the Paragraph block with 2 additional variations' - * @source https://github.com/WordPress/gutenberg/blob/ddadd1a95d18270908ac4a1fd8d6e354cfadf61c/test/e2e/specs/editor/plugins/block-variations.spec.js#L62 + * @see https://github.com/WordPress/gutenberg/blob/ddadd1a95d18270908ac4a1fd8d6e354cfadf61c/test/e2e/specs/editor/plugins/block-variations.spec.js#L62 */ - test( 'Is 1 block available?', async ( { - page, - } ) => { + test('Is 1 block available?', async ({ page }) => { await page - .getByRole( 'button', { name: 'Toggle block inserter' } ) + .getByRole('button', { name: 'Toggle block inserter' }) .click(); await page - .getByRole( 'region', { name: 'Block Library' } ) - .getByRole( 'searchbox', { + .getByRole('region', { name: 'Block Library' }) + .getByRole('searchbox', { name: 'Search for blocks and patterns', - } ) - .fill( 'gatherpress' ); + }) + .fill('gatherpress'); await expect( - page - .getByRole( 'listbox', { name: 'Blocks' } ) - .getByRole( 'option' ) - ).toHaveText( [ 'Events List' ] ); - } ); + page.getByRole('listbox', { name: 'Blocks' }).getByRole('option') + ).toHaveText(['Events List']); + }); /* * Not working yet, because the GatherPress blocks are still all on apiVersion 2, @@ -60,7 +55,7 @@ test.describe( 'GatherPress general block tests', () => { await expect( block ).not.toBeNull(); */ -/* + /* await editor.canvas .getByLabel('Add default block') .click(); @@ -72,5 +67,4 @@ test.describe( 'GatherPress general block tests', () => { editor.canvas.getByRole( 'document', { name: 'Events List' } ) ).toHaveText( '...' ); * / } ); */ - -} ); \ No newline at end of file +}); diff --git a/test/e2e/tests/gatherpress-event-loggedIn.spec.ts b/test/e2e/tests/gatherpress-event-loggedIn.spec.ts index b80969307..d16ce57f0 100644 --- a/test/e2e/tests/gatherpress-event-loggedIn.spec.ts +++ b/test/e2e/tests/gatherpress-event-loggedIn.spec.ts @@ -1,15 +1,14 @@ /** * WordPress dependencies */ -const { test, expect } = require( '@wordpress/e2e-test-utils-playwright' ); +const { test } = require('@wordpress/e2e-test-utils-playwright'); test.describe('e2e test for publish event through admin side', () => { - test('01-the user should be able to publish an online event', async ({ admin, page, }) => { - await admin.createNewPost( { postType: 'gatherpress_event' } ); + await admin.createNewPost({ postType: 'gatherpress_event' }); await page .getByLabel('Block: Event Date') @@ -48,7 +47,7 @@ test.describe('e2e test for publish event through admin side', () => { .filter({ hasText: 'View Event' }) .isVisible({ timeout: 30000 }); // verified the view event button. }); -/* + /* test('02-verify the logged in user view RSVP button on home page and perform RSVP action', async ({ page, }) => { From cff4a828304977c08ed5d8b3d8bf6ab2b5d13932 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Sat, 17 Aug 2024 15:00:15 +0200 Subject: [PATCH 030/103] Enable Firefox & webkit test-browsers --- test/e2e/playwright.config.ts | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/test/e2e/playwright.config.ts b/test/e2e/playwright.config.ts index 678b3f595..23692a476 100644 --- a/test/e2e/playwright.config.ts +++ b/test/e2e/playwright.config.ts @@ -9,9 +9,6 @@ import { defineConfig, devices } from '@playwright/test'; * Playwright default configuration, that is used & provided by Gutenberg. * https://github.com/WordPress/gutenberg/blob/trunk/packages/scripts/config/playwright.config.js */ -// using Object Rest Spread operator magic -// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Spread_syntax -// const { use, ...baseConfig} = require( '@wordpress/scripts/config/playwright.config' ); const { ...baseConfig } = require('@wordpress/scripts/config/playwright.config'); @@ -35,15 +32,15 @@ export default defineConfig({ use: { ...devices['Desktop Chrome'] }, }, - // { - // name: 'firefox', - // use: { ...devices['Desktop Firefox'] }, - // }, + { + name: 'firefox', + use: { ...devices['Desktop Firefox'] }, + }, - // { - // name: 'webkit', - // use: { ...devices['Desktop Safari'] }, - // }, + { + name: 'webkit', + use: { ...devices['Desktop Safari'] }, + }, /* Test against mobile viewports. */ // { From 2a042798156cdce87d7511bdb2e32b000e26ebb8 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Sat, 17 Aug 2024 17:04:03 +0200 Subject: [PATCH 031/103] WIP with wp-now --- package-lock.json | 337 ++++++++++++++++++++++++++++++++++ package.json | 10 +- test/e2e/playwright.config.ts | 6 + test/e2e/wp-now.json | 20 ++ 4 files changed, 369 insertions(+), 4 deletions(-) create mode 100644 test/e2e/wp-now.json diff --git a/package-lock.json b/package-lock.json index d2b696673..0e0587a92 100644 --- a/package-lock.json +++ b/package-lock.json @@ -32,6 +32,7 @@ "@wordpress/notices": "^5.4.0", "@wordpress/plugins": "^7.4.0", "@wordpress/scripts": "^28.4.0", + "@wp-now/wp-now": "^0.1.74", "classnames": "^2.5.1", "dotenv": "^16.4.5", "eslint": "^8.57.0", @@ -3540,6 +3541,71 @@ "node": ">= 8" } }, + "node_modules/@php-wasm/node": { + "version": "0.6.16", + "resolved": "https://registry.npmjs.org/@php-wasm/node/-/node-0.6.16.tgz", + "integrity": "sha512-8G79CDlExmh3wvIyI6JensmfewJ+/+hhBZVBnVwKeoe5AuCxB4h/CChLklRm9sczx5ertiIlfkY3b9yWzD5Rfw==", + "dev": true, + "dependencies": { + "@php-wasm/node-polyfills": "0.6.16", + "@php-wasm/universal": "0.6.16", + "@php-wasm/util": "0.6.16", + "comlink": "^4.4.1", + "ws": "8.13.0", + "yargs": "17.7.2" + }, + "engines": { + "node": ">=18.18.0", + "npm": ">=8.11.0" + } + }, + "node_modules/@php-wasm/node-polyfills": { + "version": "0.6.16", + "resolved": "https://registry.npmjs.org/@php-wasm/node-polyfills/-/node-polyfills-0.6.16.tgz", + "integrity": "sha512-JurRxOkPa4tBeXI8kKFKdBzVmK3N2OQzSkti3bt76yWAeKFkvMCtYyEbvHkk6W64sP7bKRCyytPHvwjXNOI3ig==", + "dev": true + }, + "node_modules/@php-wasm/node/node_modules/ws": { + "version": "8.13.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.13.0.tgz", + "integrity": "sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==", + "dev": true, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/@php-wasm/universal": { + "version": "0.6.16", + "resolved": "https://registry.npmjs.org/@php-wasm/universal/-/universal-0.6.16.tgz", + "integrity": "sha512-6zvhQ8yBFg+bp3m4+IAw4UdtLu/Vcq+7HHzmd9XenQWNkqd5GMvKADvpoYoFa6+B4x4ZVDf9M5o0h7Q5N2o1dQ==", + "dev": true, + "engines": { + "node": ">=18.18.0", + "npm": ">=8.11.0" + } + }, + "node_modules/@php-wasm/util": { + "version": "0.6.16", + "resolved": "https://registry.npmjs.org/@php-wasm/util/-/util-0.6.16.tgz", + "integrity": "sha512-sSjsAsZ6NfH7NtefMLqgw5wJpZxWpu8U6aU0Ioa+Hp5gTndIOfqfB+1o8KSmXXB+J5foTiVLVE0+v3z8BdcliQ==", + "dev": true, + "engines": { + "node": ">=18.18.0", + "npm": ">=8.11.0" + } + }, "node_modules/@pkgr/core": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.1.1.tgz", @@ -6649,6 +6715,12 @@ "@xtuc/long": "4.2.2" } }, + "node_modules/@webcontainer/env": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@webcontainer/env/-/env-1.1.1.tgz", + "integrity": "sha512-6aN99yL695Hi9SuIk1oC88l9o0gmxL1nGWWQ/kNy81HigJ0FoaoTXpytCj6ItzgyCEwA9kF1wixsTuv5cjsgng==", + "dev": true + }, "node_modules/@webpack-cli/configtest": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-2.1.1.tgz", @@ -9280,6 +9352,62 @@ "npm": ">=8.19.2" } }, + "node_modules/@wp-now/wp-now": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@wp-now/wp-now/-/wp-now-0.1.74.tgz", + "integrity": "sha512-Id2DOqIyBnQ/zlzbA0gY70T/6/Jy+EjsiPeMave4emmCfg4DI8i3crrUXu8KLHNPUrUeAJIA/qpxCksg0KTtFQ==", + "dev": true, + "dependencies": { + "@php-wasm/node": "0.6.16", + "@php-wasm/universal": "0.6.16", + "@webcontainer/env": "1.1.1", + "@wp-playground/blueprints": "0.6.16", + "compressible": "2.0.18", + "compression": "1.7.4", + "express": "4.19.2", + "follow-redirects": "1.15.6", + "fs-extra": "11.1.1", + "hpagent": "1.2.0", + "unzipper": "0.10.11", + "yargs": "17.7.2" + }, + "bin": { + "wp-now": "with-node-version.js" + } + }, + "node_modules/@wp-now/wp-now/node_modules/fs-extra": { + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.1.1.tgz", + "integrity": "sha512-MGIE4HOvQCeUCzmlHs0vXpih4ysz4wg9qiSAu6cd42lVwPbTM1TjV7RusoyQqMmk/95gdQZX72u+YW+c3eEpFQ==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/@wp-now/wp-now/node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@wp-playground/blueprints": { + "version": "0.6.16", + "resolved": "https://registry.npmjs.org/@wp-playground/blueprints/-/blueprints-0.6.16.tgz", + "integrity": "sha512-mKlmAPR8mBcz5azSlTZUzXEfFKDG7kHFUaA8wAUGpMN3BEsjMn0tje3t8R602WgSZCwHSeTXFHXTHtdPVXuvDg==", + "dev": true, + "engines": { + "node": ">=18.18.0", + "npm": ">=8.11.0" + } + }, "node_modules/@xtuc/ieee754": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", @@ -10307,6 +10435,15 @@ "dev": true, "license": "MIT" }, + "node_modules/big-integer": { + "version": "1.6.52", + "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.52.tgz", + "integrity": "sha512-QxD8cf2eVqJOOz63z6JIN9BzvVs/dlySa5HGSBH5xtR8dPteIRQnBxxKqkNTiT6jbDTF6jAfrd4oMcND9RGbQg==", + "dev": true, + "engines": { + "node": ">=0.6" + } + }, "node_modules/big.js": { "version": "5.2.2", "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", @@ -10317,6 +10454,19 @@ "node": "*" } }, + "node_modules/binary": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/binary/-/binary-0.3.0.tgz", + "integrity": "sha512-D4H1y5KYwpJgK8wk1Cue5LLPgmwHKYSChkbspQg5JtVuR5ulGckxfR62H3AE9UDkdMC8yyXlqYihuz3Aqg2XZg==", + "dev": true, + "dependencies": { + "buffers": "~0.1.1", + "chainsaw": "~0.1.0" + }, + "engines": { + "node": "*" + } + }, "node_modules/binary-extensions": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", @@ -10367,6 +10517,12 @@ "ieee754": "^1.1.13" } }, + "node_modules/bluebird": { + "version": "3.4.7", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.4.7.tgz", + "integrity": "sha512-iD3898SR7sWVRHbiQv+sHUtHnMvC1o3nW5rAcqnq3uOn07DSAppZYUkIGslDz6gXC7HfunPe7YVBgoEJASPcHA==", + "dev": true + }, "node_modules/body-parser": { "version": "1.20.2", "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz", @@ -10559,6 +10715,24 @@ "dev": true, "license": "MIT" }, + "node_modules/buffer-indexof-polyfill": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/buffer-indexof-polyfill/-/buffer-indexof-polyfill-1.0.2.tgz", + "integrity": "sha512-I7wzHwA3t1/lwXQh+A5PbNvJxgfo5r3xulgpYDB5zckTu/Z9oUK9biouBKQUjEqzaz3HnAT6TYoovmE+GqSf7A==", + "dev": true, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/buffers": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/buffers/-/buffers-0.1.1.tgz", + "integrity": "sha512-9q/rDEGSb/Qsvv2qvzIzdluL5k7AaJOTrw23z9reQthrbF7is4CtlT0DXyO1oei2DCp4uojjzQ7igaSHp1kAEQ==", + "dev": true, + "engines": { + "node": ">=0.2.0" + } + }, "node_modules/builtin-modules": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz", @@ -10752,6 +10926,18 @@ "upper-case-first": "^2.0.2" } }, + "node_modules/chainsaw": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/chainsaw/-/chainsaw-0.1.0.tgz", + "integrity": "sha512-75kWfWt6MEKNC8xYXIdRpDehRYY/tNSgwKaJq+dbbDcxORuVrrQ+SEHoWsniVn9XPYfP4gmdWIeDk/4YNp1rNQ==", + "dev": true, + "dependencies": { + "traverse": ">=0.3.0 <0.4" + }, + "engines": { + "node": "*" + } + }, "node_modules/chalk": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", @@ -11234,6 +11420,12 @@ "node": ">= 0.8" } }, + "node_modules/comlink": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/comlink/-/comlink-4.4.1.tgz", + "integrity": "sha512-+1dlx0aY5Jo1vHy/tSsIGpSkN4tS9rZSW8FIhG0JH/crs9wwweswIo/POr451r7bZww3hFbPAKnTpimzL/mm4Q==", + "dev": true + }, "node_modules/commander": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz", @@ -12715,6 +12907,51 @@ "dev": true, "license": "MIT" }, + "node_modules/duplexer2": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", + "integrity": "sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA==", + "dev": true, + "dependencies": { + "readable-stream": "^2.0.2" + } + }, + "node_modules/duplexer2/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true + }, + "node_modules/duplexer2/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dev": true, + "dependencies": { + "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" + } + }, + "node_modules/duplexer2/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "node_modules/duplexer2/node_modules/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, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, "node_modules/ee-first": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", @@ -14851,6 +15088,22 @@ "node": "^8.16.0 || ^10.6.0 || >=11.0.0" } }, + "node_modules/fstream": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz", + "integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==", + "deprecated": "This package is no longer supported.", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.2", + "inherits": "~2.0.0", + "mkdirp": ">=0.5 0", + "rimraf": "2" + }, + "engines": { + "node": ">=0.6" + } + }, "node_modules/function-bind": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", @@ -15517,6 +15770,15 @@ "safe-buffer": "~5.1.0" } }, + "node_modules/hpagent": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/hpagent/-/hpagent-1.2.0.tgz", + "integrity": "sha512-A91dYTeIB6NoXG+PxTQpCCDDnfHsW9kc06Lvpu1TEe9gnd6ZFeiBoRO9JvzEv6xK7EX97/dUE8g/vBMTqTS3CA==", + "dev": true, + "engines": { + "node": ">=14" + } + }, "node_modules/hpq": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/hpq/-/hpq-1.4.0.tgz", @@ -19695,6 +19957,12 @@ "uc.micro": "^1.0.1" } }, + "node_modules/listenercount": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/listenercount/-/listenercount-1.0.1.tgz", + "integrity": "sha512-3mk/Zag0+IJxeDrxSgaDPy4zZ3w05PRZeJNnlWhzFz5OkX49J4krc+A8X2d2M69vGMBEX0uyl8M+W+8gH+kBqQ==", + "dev": true + }, "node_modules/loader-runner": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", @@ -24408,6 +24676,12 @@ "node": ">= 0.4" } }, + "node_modules/setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==", + "dev": true + }, "node_modules/setprototypeof": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", @@ -26447,6 +26721,15 @@ "node": ">=12" } }, + "node_modules/traverse": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.3.9.tgz", + "integrity": "sha512-iawgk0hLP3SxGKDfnDJf8wTz4p2qImnyihM5Hh/sGvQ3K37dPi/w8sRhdNIxYA1TwFwc5mDhIJq+O0RsvXBKdQ==", + "dev": true, + "engines": { + "node": "*" + } + }, "node_modules/tree-kill": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", @@ -26870,6 +27153,60 @@ "node": ">= 0.8" } }, + "node_modules/unzipper": { + "version": "0.10.11", + "resolved": "https://registry.npmjs.org/unzipper/-/unzipper-0.10.11.tgz", + "integrity": "sha512-+BrAq2oFqWod5IESRjL3S8baohbevGcVA+teAIOYWM3pDVdseogqbzhhvvmiyQrUNKFUnDMtELW3X8ykbyDCJw==", + "dev": true, + "dependencies": { + "big-integer": "^1.6.17", + "binary": "~0.3.0", + "bluebird": "~3.4.1", + "buffer-indexof-polyfill": "~1.0.0", + "duplexer2": "~0.1.4", + "fstream": "^1.0.12", + "graceful-fs": "^4.2.2", + "listenercount": "~1.0.1", + "readable-stream": "~2.3.6", + "setimmediate": "~1.0.4" + } + }, + "node_modules/unzipper/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true + }, + "node_modules/unzipper/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dev": true, + "dependencies": { + "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" + } + }, + "node_modules/unzipper/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "node_modules/unzipper/node_modules/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, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, "node_modules/update-browserslist-db": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.0.tgz", diff --git a/package.json b/package.json index 9bd4a9554..11ddf7814 100644 --- a/package.json +++ b/package.json @@ -29,16 +29,17 @@ "screenshots:wporg": "wp-scripts test-playwright --config .github/scripts/wordpress-org-screenshots/playwright.config.ts", "screenshots:wporg:debug": "wp-scripts test-playwright --config .github/scripts/wordpress-org-screenshots/playwright.config.ts --debug", "screenshots:wporg:ui": "wp-scripts test-playwright --config .github/scripts/wordpress-org-screenshots/playwright.config.ts --ui", - "pretest:e2e": "wp-scripts build && wp-env start", - "pretest:e2e:debug": "wp-scripts build && wp-env start", - "pretest:e2e:ui": "wp-scripts build && wp-env start", + "pretest:e2e": "wp-scripts build", + "pretest:e2e:debug": "wp-scripts build", + "pretest:e2e:ui": "wp-scripts build", "test:e2e": "wp-scripts test-playwright --config test/e2e/playwright.config.ts", "test:e2e:debug": "wp-scripts test-playwright --config test/e2e/playwright.config.ts --debug", "test:e2e:ui": "wp-scripts test-playwright --config test/e2e/playwright.config.ts --ui", "test:unit:js": "wp-scripts test-unit-js --coverage --testResultsProcessor=jest-sonar-reporter", "pretest:unit:php": "wp-env start --xdebug", "test:unit:php": "wp-env run tests-wordpress php -dxdebug.mode=coverage /var/www/html/wp-content/plugins/gatherpress/vendor/bin/phpunit -c /var/www/html/wp-content/plugins/gatherpress/phpunit.xml.dist --coverage-clover=coverage.xml --coverage-html=build/coverage-report", - "wp-env": "wp-env" + "wp-env": "wp-env", + "wp-now": "wp-now start --port=8889 --php=8.2 --blueprint=test/e2e/wp-now.json" }, "repository": { "type": "git", @@ -78,6 +79,7 @@ "@wordpress/notices": "^5.4.0", "@wordpress/plugins": "^7.4.0", "@wordpress/scripts": "^28.4.0", + "@wp-now/wp-now": "^0.1.74", "classnames": "^2.5.1", "dotenv": "^16.4.5", "eslint": "^8.57.0", diff --git a/test/e2e/playwright.config.ts b/test/e2e/playwright.config.ts index 23692a476..b4158a694 100644 --- a/test/e2e/playwright.config.ts +++ b/test/e2e/playwright.config.ts @@ -62,4 +62,10 @@ export default defineConfig({ // use: { ...devices['Desktop Chrome'], channel: 'chrome' }, // }, ], + webServer: { + command: 'npm run wp-now', + port: 8889, + timeout: 120_000, // 120 seconds. + reuseExistingServer: true, + }, }); diff --git a/test/e2e/wp-now.json b/test/e2e/wp-now.json new file mode 100644 index 000000000..f2ef30a94 --- /dev/null +++ b/test/e2e/wp-now.json @@ -0,0 +1,20 @@ +{ + "$schema": "https://playground.wordpress.net/blueprint-schema.json", + "landingPage": "/wp-admin/plugins.php", + "preferredVersions": { + "php": "latest", + "wp": "latest" + }, + "phpExtensionBundles": ["kitchen-sink"], + "steps": [ + { + "step": "defineWpConfigConsts", + "consts": { + "WP_DEBUG": true, + "WP_DEBUG_DISPLAY": false, + "WP_DEBUG_LOG": "/var/www/html/wp-content/plugins/gatherpress/artifacts/debug.log" + }, + "virtualize": true + } + ] +} \ No newline at end of file From ded313ffa858e90286a0d286be796a3701290b2d Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Sat, 17 Aug 2024 17:27:43 +0200 Subject: [PATCH 032/103] Update URL to settings --- test/e2e/tests/gatherpress-admin-settings.spec.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/e2e/tests/gatherpress-admin-settings.spec.ts b/test/e2e/tests/gatherpress-admin-settings.spec.ts index 2bdde7e75..f962b400e 100644 --- a/test/e2e/tests/gatherpress-admin-settings.spec.ts +++ b/test/e2e/tests/gatherpress-admin-settings.spec.ts @@ -24,7 +24,7 @@ test.describe('GatherPress Settings', () => { await expect(wpGatherPressSettingsItem).toBeVisible(); await expect(wpGatherPressSettingsItemUrl).toContain( - 'edit.php?post_type=gatherpress_event&page=gatherpress_general' + 'admin.php?page=gatherpress_general' ); }); }); From eef93cbd52fa11204452e1daae9a4dec38e78487 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Sat, 17 Aug 2024 17:28:09 +0200 Subject: [PATCH 033/103] Hide admin notice during tests --- test/e2e/wp-now.json | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/test/e2e/wp-now.json b/test/e2e/wp-now.json index f2ef30a94..d7705a8eb 100644 --- a/test/e2e/wp-now.json +++ b/test/e2e/wp-now.json @@ -6,13 +6,14 @@ "wp": "latest" }, "phpExtensionBundles": ["kitchen-sink"], - "steps": [ + "steps": [ { "step": "defineWpConfigConsts", "consts": { "WP_DEBUG": true, "WP_DEBUG_DISPLAY": false, - "WP_DEBUG_LOG": "/var/www/html/wp-content/plugins/gatherpress/artifacts/debug.log" + "WP_DEBUG_LOG": "/var/www/html/wp-content/plugins/gatherpress/artifacts/debug.log", + "GATHERPRESS_ALPHA_VERSION": 1 }, "virtualize": true } From 2cb69d4f6c420f9af69c8de4e1900376eecd910e Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Sat, 17 Aug 2024 19:04:13 +0200 Subject: [PATCH 034/103] Update docs --- docs/contributor/e2e-tests/README.md | 90 +++++++++++++++++++++------- test/e2e/wp-now.json | 1 - 2 files changed, 67 insertions(+), 24 deletions(-) diff --git a/docs/contributor/e2e-tests/README.md b/docs/contributor/e2e-tests/README.md index 484ac646a..4eecbee18 100644 --- a/docs/contributor/e2e-tests/README.md +++ b/docs/contributor/e2e-tests/README.md @@ -1,30 +1,74 @@ -# e2e testing +## E2E Testing using Playwright and `wp-now` -GatherPress allows to run automated and manual end-to-end tests, while sharing the same, `wp-env` based, setup. +GatherPress allows to run **automated & manual end-to-end tests**, while sharing the same, `wp-now` based, setup. -## Automated tests +## Automated tests Check the results of the _e2e-tests action workflow_ at `https://github.com/GatherPress/gatherpress/actions/workflows/e2e-tests.yml`. ## Manual testing -0. Have `node` installed -1. Have `docker` running -2. Open the plugin folder in a terminal -3. _Choose one of the following options_ - - Run Playwright normally - ``` - npm run test:e2e - ``` - - - Run Playwright visually (and change what's happening) - ``` - npm run test:e2e:ui - ``` - ![grafik](https://github.com/user-attachments/assets/1627dff7-363e-447e-9981-adac610ac888) - - - Run Playwright in debugging mode (and record what's happening) - ``` - npm run test:e2e:debug - ``` - - Run Tests independently _AND_ visually using the [Playwright VSCode extension](https://playwright.dev/docs/getting-started-vscode) \ No newline at end of file +### Install dependencies + +To run the E2E tests you will have to install playwright using the following command: + +```bash +npx playwright install --with-deps +``` + +> [!NOTE] +> You also need to use Node.js 20 or later + +Create the testing instance using the following command: + +```bash +npm ci --legacy-peer-deps +``` + +This will create a `wp-now` WordPress instance. The port is `8889` and the user is `admin` and the password is `password` (the same values used by `wp-env` testing instance). + +### How to run the E2E tests + +_Choose one of the following options_ + +1. For the _headless_ mode, use the following command: + + ```bash + npm run test:e2e + ``` + +2. Run Playwright _visually_ (to run tests in isolation and change what's happening), use: + + ```bash + npm run test:e2e:ui + ``` + ![grafik](https://github.com/user-attachments/assets/1627dff7-363e-447e-9981-adac610ac888) + + +3. For _debug_ mode (which will open the browser along with Playwright Editor and allows you to record what's happening), use the following command: + + ```bash + npm run test:e2e:debug + ``` + + > [!NOTE] + > When writing a test, using the debug mode is recommended since it will allow you to see the browser and the test in action. + +4. Run Tests independently _AND_ visually using the [Playwright VSCode extension](https://playwright.dev/docs/getting-started-vscode) + + +### Learn more about E2E testing + +Resources: + +- [Playwright Documentation](https://playwright.dev/docs/intro) +- https://github.com/WordPress/gutenberg/blob/trunk/packages/e2e-test-utils-playwright/README.md +- https://developer.wordpress.org/block-editor/contributors/code/testing-overview/e2e/ +- https://developer.wordpress.org/block-editor/contributors/code/testing-overview/e2e/overusing-snapshots/ +- https://wordpress.com/blog/2023/05/23/wp-now-launch-a-local-environment-in-seconds/ +- https://www.npmjs.com/package/@wp-now/wp-now + +To see more examples of E2E tests, check the Gutenberg repository: https://github.com/WordPress/gutenberg/tree/trunk/test/e2e + +> [!NOTE] +> If you are out of ideas on who to test, check the Gutenberg repository. It has a lot of examples of E2E tests that you can use as a reference. \ No newline at end of file diff --git a/test/e2e/wp-now.json b/test/e2e/wp-now.json index d7705a8eb..29095026e 100644 --- a/test/e2e/wp-now.json +++ b/test/e2e/wp-now.json @@ -1,6 +1,5 @@ { "$schema": "https://playground.wordpress.net/blueprint-schema.json", - "landingPage": "/wp-admin/plugins.php", "preferredVersions": { "php": "latest", "wp": "latest" From b751c87d8dd4abea257d6c2abe1a5debc942b658 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Sun, 18 Aug 2024 00:18:05 +0200 Subject: [PATCH 035/103] WIP Migrate tests to e2e-test-utils-playwright --- .../blocks.spec.ts} | 3 +- .../events.spec.ts} | 12 ++++--- .../venues.spec.ts} | 19 ++++++++---- test/e2e/tests/gatherpress-admin.spec.ts | 31 ------------------- test/e2e/tests/site-editor/templates.spec.ts | 21 +++++++++++++ .../settings.spec.ts} | 15 ++++----- test/e2e/wp-now.json | 2 +- 7 files changed, 53 insertions(+), 50 deletions(-) rename test/e2e/tests/{gatherpress-blocks-editor.spec.ts => editor/blocks.spec.ts} (96%) rename test/e2e/tests/{gatherpress-event-loggedIn.spec.ts => editor/events.spec.ts} (84%) rename test/e2e/tests/{gatherpress-admin-venue.spec.ts => editor/venues.spec.ts} (61%) delete mode 100644 test/e2e/tests/gatherpress-admin.spec.ts create mode 100644 test/e2e/tests/site-editor/templates.spec.ts rename test/e2e/tests/{gatherpress-admin-settings.spec.ts => wp-admin/settings.spec.ts} (52%) diff --git a/test/e2e/tests/gatherpress-blocks-editor.spec.ts b/test/e2e/tests/editor/blocks.spec.ts similarity index 96% rename from test/e2e/tests/gatherpress-blocks-editor.spec.ts rename to test/e2e/tests/editor/blocks.spec.ts index 8b6071997..96c83e5ce 100644 --- a/test/e2e/tests/gatherpress-blocks-editor.spec.ts +++ b/test/e2e/tests/editor/blocks.spec.ts @@ -3,7 +3,8 @@ */ const { test, expect } = require('@wordpress/e2e-test-utils-playwright'); -test.describe('GatherPress general block tests', () => { +test.describe('Blocks & Patterns in the Editor', () => { + test.beforeEach(async ({ admin }) => { await admin.createNewPost(); }); diff --git a/test/e2e/tests/gatherpress-event-loggedIn.spec.ts b/test/e2e/tests/editor/events.spec.ts similarity index 84% rename from test/e2e/tests/gatherpress-event-loggedIn.spec.ts rename to test/e2e/tests/editor/events.spec.ts index d16ce57f0..c9efcdd34 100644 --- a/test/e2e/tests/gatherpress-event-loggedIn.spec.ts +++ b/test/e2e/tests/editor/events.spec.ts @@ -3,8 +3,9 @@ */ const { test } = require('@wordpress/e2e-test-utils-playwright'); -test.describe('e2e test for publish event through admin side', () => { - test('01-the user should be able to publish an online event', async ({ +test.describe('Events in the Editor', () => { + + test('The admin should be able to publish an online event', async ({ admin, page, }) => { @@ -17,9 +18,12 @@ test.describe('e2e test for publish event through admin side', () => { .isVisible(); await page.getByRole('heading', { name: 'Date & time' }).isVisible(); - await page.getByRole('button', { name: 'Event settings' }).click(); + // await page.getByRole('button', { name: 'Event settings' }).click(); + + // // Wait for 1 second to make sure the venue-selector is populated + // await page.waitForTimeout(1000); - await page.getByLabel('Venue Selector').selectOption('58:online-event'); // !!!!!!!!!!!!!!!!!!!!!!!!!!!!! 58 doesn't exist + await page.getByLabel('Venue Selector').selectOption('2:online-event'); // Number 2 may not exist! const currentDate = new Date().toISOString().split('T')[0]; // format YYYY-MM-DD const eventTitle = await page .getByLabel('Add title') diff --git a/test/e2e/tests/gatherpress-admin-venue.spec.ts b/test/e2e/tests/editor/venues.spec.ts similarity index 61% rename from test/e2e/tests/gatherpress-admin-venue.spec.ts rename to test/e2e/tests/editor/venues.spec.ts index b57e21f34..756151f9e 100644 --- a/test/e2e/tests/gatherpress-admin-venue.spec.ts +++ b/test/e2e/tests/editor/venues.spec.ts @@ -3,13 +3,20 @@ */ const { test } = require('@wordpress/e2e-test-utils-playwright'); -test.describe('e2e test for venue through admin side', () => { - test('The admin should be able to create a new post for Venue', async ({ +test.describe('Venues in the Editor', () => { + + test.beforeEach(async ({ admin }) => { + await admin.createNewPost({ postType: 'gatherpress_venue' }); + }); + + test.afterEach(async ({ requestUtils }) => { + await requestUtils.deleteAllPosts(); + }); + + test('The admin should be able to create a new Venue.', async ({ admin, page, }) => { - await admin.createNewPost({ postType: 'gatherpress_venue' }); - await page.getByLabel('Add title').isVisible(); await page.getByLabel('Add title').fill('Test venue'); await page.getByLabel('Add title').press('Tab'); @@ -21,8 +28,8 @@ test.describe('e2e test for venue through admin side', () => { .getByLabel('Empty block; start writing or') .fill('test venue information'); - await page.getByLabel('Toggle block inserter').click(); - await page.getByRole('option', { name: 'Paragraph' }).click(); + // await page.getByLabel('Toggle block inserter').click(); + // await page.getByRole('option', { name: 'Paragraph' }).click(); // await page.screenshot({ path: 'new-venue.png' }); }); }); diff --git a/test/e2e/tests/gatherpress-admin.spec.ts b/test/e2e/tests/gatherpress-admin.spec.ts deleted file mode 100644 index 03b53f20b..000000000 --- a/test/e2e/tests/gatherpress-admin.spec.ts +++ /dev/null @@ -1,31 +0,0 @@ -/** - * WordPress dependencies - */ -const { test } = require('@wordpress/e2e-test-utils-playwright'); - -test.describe('As admin login into gatherPress', () => { - test('The Event menu item should be preloaded after clicking Add New button', async ({ - page, - }) => { - await page.getByRole('link', { name: 'Events', exact: true }).click(); - // await page.screenshot({ path: 'event-page.png' }); - - /* await page - .locator('#wpbody-content') - .getByRole('link', { name: 'Add New' }) - .click(); - - await page.getByLabel('Document Overview').click(); - - await page.getByLabel('List View').locator('div').nth(1).isVisible(); - await page.screenshot({ path: 'add-new-event.png' }); */ - - // Maybe better use ... ? - // await admin.createNewPost( { postType: 'gatherpress_event' } ); - - /* await page.getByRole('link', { name: 'Events', exact: true }).click(); - - await page.getByRole('link', { name: 'Venues' }).click(); - await page.screenshot({ path: 'vanue-page.png' }); */ - }); -}); diff --git a/test/e2e/tests/site-editor/templates.spec.ts b/test/e2e/tests/site-editor/templates.spec.ts new file mode 100644 index 000000000..23c584883 --- /dev/null +++ b/test/e2e/tests/site-editor/templates.spec.ts @@ -0,0 +1,21 @@ +/** + * WordPress dependencies + */ +const { test, expect } = require('@wordpress/e2e-test-utils-playwright'); + +test.describe('Templates', () => { + + test('The events template can be edited', async ({ + page, + admin, + }) => { + await admin.visitSiteEditor({ + // path: '', // http://localhost:8889/wp-admin/site-editor.php? + postId: 'twentytwentyfour//single-gatherpress_event', + postType: 'wp_template', + canvas: 'edit', + showWelcomeGuide: false, + }); + + }); +}); diff --git a/test/e2e/tests/gatherpress-admin-settings.spec.ts b/test/e2e/tests/wp-admin/settings.spec.ts similarity index 52% rename from test/e2e/tests/gatherpress-admin-settings.spec.ts rename to test/e2e/tests/wp-admin/settings.spec.ts index f962b400e..a1a45b940 100644 --- a/test/e2e/tests/gatherpress-admin-settings.spec.ts +++ b/test/e2e/tests/wp-admin/settings.spec.ts @@ -3,27 +3,28 @@ */ const { test, expect } = require('@wordpress/e2e-test-utils-playwright'); -test.describe('GatherPress Settings', () => { +test.describe('Settings', () => { + test('A link to the plugin settings page is present under the Events menu', async ({ page, admin, }) => { await admin.visitAdminPage('/'); - const gatherPressMenuItem = page.locator('li', { + const menu = page.locator('li', { has: page.getByRole('link', { name: 'Events' }), }); - const wpGatherPressSettingsItem = gatherPressMenuItem.getByRole( + const settingsMenu = menu.getByRole( 'link', { name: 'Settings', } ); - const wpGatherPressSettingsItemUrl = - await wpGatherPressSettingsItem.getAttribute('href'); + const settingsMenuUrl = + await settingsMenu.getAttribute('href'); - await expect(wpGatherPressSettingsItem).toBeVisible(); - await expect(wpGatherPressSettingsItemUrl).toContain( + await expect(settingsMenu).toBeVisible(); + await expect(settingsMenuUrl).toContain( 'admin.php?page=gatherpress_general' ); }); diff --git a/test/e2e/wp-now.json b/test/e2e/wp-now.json index 29095026e..47215b49f 100644 --- a/test/e2e/wp-now.json +++ b/test/e2e/wp-now.json @@ -9,7 +9,7 @@ { "step": "defineWpConfigConsts", "consts": { - "WP_DEBUG": true, + "WP_DEBUG": false, "WP_DEBUG_DISPLAY": false, "WP_DEBUG_LOG": "/var/www/html/wp-content/plugins/gatherpress/artifacts/debug.log", "GATHERPRESS_ALPHA_VERSION": 1 From a0d7e0a5097cc9e77e3a8e1ffdafc3295be3fe90 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Sun, 18 Aug 2024 02:54:13 +0200 Subject: [PATCH 036/103] WIP Migrate tests to e2e-test-utils-playwright (2/2) --- test/e2e/tests/editor/events.spec.ts | 93 +++++++++++-------- test/e2e/tests/frontend/rsvp.spec.ts | 75 +++++++++++++++ ...erpress-event-nonLoggegIn.spec.js.DISABLED | 88 ------------------ .../tests/gatherpress-event.spec.js.DISABLED | 92 ------------------ test/e2e/tests/site-editor/templates.spec.ts | 4 +- 5 files changed, 131 insertions(+), 221 deletions(-) create mode 100644 test/e2e/tests/frontend/rsvp.spec.ts delete mode 100644 test/e2e/tests/gatherpress-event-nonLoggegIn.spec.js.DISABLED delete mode 100644 test/e2e/tests/gatherpress-event.spec.js.DISABLED diff --git a/test/e2e/tests/editor/events.spec.ts b/test/e2e/tests/editor/events.spec.ts index c9efcdd34..1e8623f46 100644 --- a/test/e2e/tests/editor/events.spec.ts +++ b/test/e2e/tests/editor/events.spec.ts @@ -5,10 +5,12 @@ const { test } = require('@wordpress/e2e-test-utils-playwright'); test.describe('Events in the Editor', () => { - test('The admin should be able to publish an online event', async ({ - admin, - page, - }) => { + let eventTitle: string; + const currentDate = new Date().toISOString().split('T')[0]; // format YYYY-MM-DD + + test.beforeEach(async ({ admin, page }) => { + + await admin.createNewPost({ postType: 'gatherpress_venue', title: 'Offline Event Location' }); await admin.createNewPost({ postType: 'gatherpress_event' }); await page @@ -18,21 +20,21 @@ test.describe('Events in the Editor', () => { .isVisible(); await page.getByRole('heading', { name: 'Date & time' }).isVisible(); - // await page.getByRole('button', { name: 'Event settings' }).click(); - - // // Wait for 1 second to make sure the venue-selector is populated - // await page.waitForTimeout(1000); + // Open the Document -> Event settings panel. + const panelToggle = page.getByRole( 'button', { + name: 'Event settings', + } ); - await page.getByLabel('Venue Selector').selectOption('2:online-event'); // Number 2 may not exist! - const currentDate = new Date().toISOString().split('T')[0]; // format YYYY-MM-DD - const eventTitle = await page - .getByLabel('Add title') - .fill(`online T-Event: ${currentDate}`); + if ( + ( await panelToggle.getAttribute( 'aria-expanded' ) ) === 'false' + ) { + await panelToggle.click(); + } + }); - await page - .getByPlaceholder('Add link to online event') - .fill('www.google.com'); + test.afterEach(async ({ page, requestUtils }) => { + // Click again to close the element, to let upcoming tests not get flaky. await page.getByRole('button', { name: 'Event settings' }).click(); await page @@ -46,39 +48,54 @@ test.describe('Events in the Editor', () => { await page .getByText(`${eventTitle} is now live.`) .isVisible({ timeout: 60000 }); // verified the event is live. + await page .locator('.post-publish-panel__postpublish-buttons') .filter({ hasText: 'View Event' }) .isVisible({ timeout: 30000 }); // verified the view event button. + + await requestUtils.deleteAllPosts(); }); - /* - test('02-verify the logged in user view RSVP button on home page and perform RSVP action', async ({ + + test('An admin should be able to publish an online event', async ({ page, }) => { - await page.getByRole('menuitem', { name: 'GatherPress' }).click(); + await page.getByLabel('Venue Selector').selectOption('Online event'); + eventTitle = await page + .getByLabel('Add title') + .fill(`online T-Event: ${currentDate}`); - await page.evaluate(() => window.scrollTo(0, 5000)); await page - .getByRole('link', { name: 'RSVP' }) - .first() - .click({ timeout: 60000 }); + .getByPlaceholder('Add link to online event') + .fill('www.google.com'); + }); - await page.locator('a').filter({ hasText: 'Attend' }).click(); - await page.getByText('Close').click(); - await page - .locator('.gatherpress-rsvp-response__items') - .first() - .isVisible(); // verified the RSVP button is visible. - await page.getByText('Attending').first().isVisible({ timeout: 30000 }); // verified the logged in user perform RSVP action + test('An admin should be able to publish an offline event', async ({ + page, + }) => { + await page.getByLabel('Venue Selector').selectOption('Offline Event Location'); + eventTitle = await page + .getByLabel('Add title') + .fill(`offline T-Event:${currentDate}`); + }); - await page - .locator('.gatherpress-rsvp-response__items') - .first() - .isVisible(); // verified the attending users list. - await page - .locator('.gatherpress-rsvp-response__items') - .first() - .screenshot({ path: 'attending.png' }); +/* + test('A user should be able to publish an online event', async ({ + page, + }) => { + await page.getByLabel('Venue Selector').selectOption('Online event'); + eventTitle = await page + .getByLabel('Add title') + .fill(`online T-Event: ${currentDate}`); + }); + + test('A user should be able publish an offline event', async ({ + page, + }) => { + await page.getByLabel('Venue Selector').selectOption('Offline Event Location'); + eventTitle = await page + .getByLabel('Add title') + .fill(`offline T-Event:${currentDate}`); }); */ }); diff --git a/test/e2e/tests/frontend/rsvp.spec.ts b/test/e2e/tests/frontend/rsvp.spec.ts new file mode 100644 index 000000000..753539af7 --- /dev/null +++ b/test/e2e/tests/frontend/rsvp.spec.ts @@ -0,0 +1,75 @@ + + +test.describe('RSVP to an event', () => { + +/* + test('02-verify the non-logged in user view RSVP button on home page and perform RSVP action', async ({ + page, + }) => { + await page.goto('https://develop.gatherpress.org'); + await page.getByRole('heading', { name: 'Upcoming Events' }).isVisible(); + await page + .locator('div') + .filter({ hasText: /^online Test Event$/ }) + .isVisible(); + + await page.getByRole('link', { name: 'RSVP' }).first().isVisible(); + + await page.getByRole('link', { name: 'RSVP' }).first().click(); + await page.getByText('Login', { exact: true }).click(); + + await loginUser({ page, username: 'testuser1' }); + await page.evaluate(() => window.scrollTo(0, 1000)); + + await page + .getByRole('link', { name: 'RSVP' }) + .first() + .click({ timeout: 60000 }); + + await page.locator('a').filter({ hasText: 'Attend' }).click(); + await page.getByText('Close').click(); + await page.locator('.gatherpress-rsvp-response__items').first().isVisible(); // verified the RSVP button is visible + await expect(page.getByText('Attending').first()).toBeVisible(); // verified the attending text after RSVP action. + + await page.locator('.gatherpress-rsvp-response__items').first().isVisible(); // verified the attending users list. + await page + .locator('.gatherpress-rsvp-response__items') + .first() + .screenshot({ path: 'attending.png' }); + }); */ + + + /* + test('02-verify the logged in user view RSVP button on home page and perform RSVP action', async ({ + page, + }) => { + await page.getByRole('menuitem', { name: 'GatherPress' }).click(); + + await page.evaluate(() => window.scrollTo(0, 5000)); + await page + .getByRole('link', { name: 'RSVP' }) + .first() + .click({ timeout: 60000 }); + + await page.locator('a').filter({ hasText: 'Attend' }).click(); + await page.getByText('Close').click(); + await page + .locator('.gatherpress-rsvp-response__items') + .first() + .isVisible(); // verified the RSVP button is visible. + + await page.getByText('Attending').first().isVisible({ timeout: 30000 }); // verified the logged in user perform RSVP action + + await page + .locator('.gatherpress-rsvp-response__items') + .first() + .isVisible(); // verified the attending users list. + await page + .locator('.gatherpress-rsvp-response__items') + .first() + .screenshot({ path: 'attending.png' }); + }); */ + +}); + + diff --git a/test/e2e/tests/gatherpress-event-nonLoggegIn.spec.js.DISABLED b/test/e2e/tests/gatherpress-event-nonLoggegIn.spec.js.DISABLED deleted file mode 100644 index 34884c29c..000000000 --- a/test/e2e/tests/gatherpress-event-nonLoggegIn.spec.js.DISABLED +++ /dev/null @@ -1,88 +0,0 @@ -const { test, expect } = require('@playwright/test'); -const { loginUser } = require('../reusable-user-steps/user-login'); -const { login } = require('../reusable-user-steps/common'); - -test.describe('e2e test for home page event on develop.gatherpress.org', () => { - test.beforeEach(async ({ page }) => { - test.setTimeout(120000); - await page.setViewportSize({ width: 1920, height: 720 }); - await page.waitForLoadState('networkidle'); - }); -}); - -test('01-the user should be able to publish an offline event', async ({ - page, -}) => { - await login({ page, username: 'testuser1' }); - await page.getByRole('link', { name: 'Events', exact: true }).click(); - await page - .locator('#wpbody-content') - .getByRole('link', { name: 'Add New' }) - .click(); - - const currentDate = new Date().toISOString().split('T')[0]; // format YYYY-MM-DD - const eventTitle = await page - .getByLabel('Add title') - .fill(`offline T-Event:${currentDate}`); - - await page - .getByLabel('Block: Event Date') - .locator('div') - .first() - .isVisible(); - await page.getByRole('heading', { name: 'Date & time' }).isVisible(); - - await page.getByRole('button', { name: 'Event settings' }).click(); - await page.getByLabel('Venue Selector').selectOption('offline event'); - - await page.getByRole('button', { name: 'Event settings' }).click(); - - await page.getByRole('button', { name: 'Publish', exact: true }).click(); - await page - .getByLabel('Editor publish') - .getByRole('button', { name: 'Publish', exact: true }) - .click(); - - await page - .getByText(`${eventTitle} is now live.`) - .isVisible({ timeout: 60000 }); //verified the event is live. - await page - .locator('.post-publish-panel__postpublish-buttons') - .filter({ hasText: 'View Event' }) - .isVisible(); //verify the view event button. -}); - -test('02-verify the non-logged in user view RSVP button on home page and perform RSVP action', async ({ - page, -}) => { - await page.goto('https://develop.gatherpress.org'); - await page.getByRole('heading', { name: 'Upcoming Events' }).isVisible(); - await page - .locator('div') - .filter({ hasText: /^online Test Event$/ }) - .isVisible(); - - await page.getByRole('link', { name: 'RSVP' }).first().isVisible(); - - await page.getByRole('link', { name: 'RSVP' }).first().click(); - await page.getByText('Login', { exact: true }).click(); - - await loginUser({ page, username: 'testuser1' }); - await page.evaluate(() => window.scrollTo(0, 1000)); - - await page - .getByRole('link', { name: 'RSVP' }) - .first() - .click({ timeout: 60000 }); - - await page.locator('a').filter({ hasText: 'Attend' }).click(); - await page.getByText('Close').click(); - await page.locator('.gatherpress-rsvp-response__items').first().isVisible(); // verified the RSVP button is visible - await expect(page.getByText('Attending').first()).toBeVisible(); // verified the attending text after RSVP action. - - await page.locator('.gatherpress-rsvp-response__items').first().isVisible(); // verified the attending users list. - await page - .locator('.gatherpress-rsvp-response__items') - .first() - .screenshot({ path: 'attending.png' }); -}); diff --git a/test/e2e/tests/gatherpress-event.spec.js.DISABLED b/test/e2e/tests/gatherpress-event.spec.js.DISABLED deleted file mode 100644 index c59c28004..000000000 --- a/test/e2e/tests/gatherpress-event.spec.js.DISABLED +++ /dev/null @@ -1,92 +0,0 @@ -const { test } = require('@playwright/test'); -const { login } = require('../reusable-user-steps/common'); - -test.describe('e2e test for publish event through admin side', () => { - test.beforeEach(async ({ page }) => { - test.setTimeout(120000); - await page.setViewportSize({ width: 1920, height: 720 }); - await page.waitForLoadState('networkidle'); - await login({ page, username: 'testuser1' }); - }); - - test('the user should be able to publish an online event', async ({ - page, - }) => { - await page.getByRole('link', { name: 'Events', exact: true }).click(); - await page - .locator('#wpbody-content') - .getByRole('link', { name: 'Add New' }) - .click(); - const currentDate = new Date().toISOString().split('T')[0]; // format YYYY-MM-DD - const eventTitle = await page - .getByLabel('Add title') - .fill(`online T-Event: ${currentDate}`); - await page - .getByLabel('Block: Event Date') - .locator('div') - .first() - .isVisible(); - await page.getByRole('heading', { name: 'Date & time' }).isVisible(); - await page.getByRole('button', { name: 'Event settings' }).click(); - await page - .getByLabel('Venue Selector') - .selectOption('ol', { timeout: 60000 }); - await page.getByRole('button', { name: 'Event settings' }).click(); - await page - .getByRole('button', { name: 'Publish', exact: true }) - .click(); - await page - .getByLabel('Editor publish') - .getByRole('button', { name: 'Publish', exact: true }) - .click(); - - await page - .getByText(`${eventTitle} is now live.`) - .isVisible({ timeout: 60000 }); // verified the event is live. - await page - .locator('.post-publish-panel__postpublish-buttons') - .filter({ hasText: 'View Event' }) - .isVisible({ timeout: 30000 }); // verified the view event button. - }); - - test('the user should be able publish an offline event', async ({ - page, - }) => { - await page.getByRole('link', { name: 'Events', exact: true }).click(); - await page - .locator('#wpbody-content') - .getByRole('link', { name: 'Add New' }) - .click(); - const currentDate = new Date().toISOString().split('T')[0]; // format YYYY-MM-DD - const eventTitle = await page - .getByLabel('Add title') - .fill(`offline T-Event:${currentDate}`); - await page - .getByLabel('Block: Event Date') - .locator('div') - .first() - .isVisible(); - await page.getByRole('heading', { name: 'Date & time' }).isVisible(); - await page.getByRole('button', { name: 'Event settings' }).click(); - await page - .getByLabel('Venue Selector') - .selectOption('offline event', { timeout: 60000 }); - - await page.getByRole('button', { name: 'Event settings' }).click(); - await page - .getByRole('button', { name: 'Publish', exact: true }) - .click(); - await page - .getByLabel('Editor publish') - .getByRole('button', { name: 'Publish', exact: true }) - .click(); - - await page - .getByText(`${eventTitle} is now live.`) - .isVisible({ timeout: 60000 }); // verified the event is live. - await page - .locator('.post-publish-panel__postpublish-buttons') - .filter({ hasText: 'View Event' }) - .isVisible({ timeout: 30000 }); // verified the view event button. - }); -}); diff --git a/test/e2e/tests/site-editor/templates.spec.ts b/test/e2e/tests/site-editor/templates.spec.ts index 23c584883..2a1cbe2ac 100644 --- a/test/e2e/tests/site-editor/templates.spec.ts +++ b/test/e2e/tests/site-editor/templates.spec.ts @@ -1,16 +1,14 @@ /** * WordPress dependencies */ -const { test, expect } = require('@wordpress/e2e-test-utils-playwright'); +const { test } = require('@wordpress/e2e-test-utils-playwright'); test.describe('Templates', () => { test('The events template can be edited', async ({ - page, admin, }) => { await admin.visitSiteEditor({ - // path: '', // http://localhost:8889/wp-admin/site-editor.php? postId: 'twentytwentyfour//single-gatherpress_event', postType: 'wp_template', canvas: 'edit', From 53e1f8000f8c943f2e72ff4831b759bab96c6fc3 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Sun, 18 Aug 2024 03:44:16 +0200 Subject: [PATCH 037/103] Restrict workflow run to relevant triggers --- .github/workflows/e2e-tests.yml | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index 71f95fc8d..28ed411b0 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -2,7 +2,18 @@ name: E2E Tests on: workflow_dispatch: + push: + branches: + - main pull_request: + paths: + - '.github/workflows/e2e-tests.yml' + - 'build/**' + - 'includes/**' + - 'src/**' + - 'test/e2e/**' + - '*.php' + - 'package.*' # Cancels all previous workflow runs for pull requests that have not completed. concurrency: @@ -40,7 +51,6 @@ jobs: # https://github.com/actions/setup-node#caching-global-packages-data cache: 'npm' - # Restoring the short lived node_modules cache # to be used accross all workflows running on the last commit. # https://github.com/actions/cache/blob/main/caching-strategies.md#creating-a-short-lived-cache From b82dc1c87dce03598ccb14467516773ff870abc3 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Sun, 18 Aug 2024 03:44:43 +0200 Subject: [PATCH 038/103] Fix: missing required deps --- test/e2e/tests/frontend/rsvp.spec.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/test/e2e/tests/frontend/rsvp.spec.ts b/test/e2e/tests/frontend/rsvp.spec.ts index 753539af7..0f140b454 100644 --- a/test/e2e/tests/frontend/rsvp.spec.ts +++ b/test/e2e/tests/frontend/rsvp.spec.ts @@ -1,4 +1,7 @@ - +/** + * WordPress dependencies + */ +const { test } = require('@wordpress/e2e-test-utils-playwright'); test.describe('RSVP to an event', () => { From 3aab03daae48ae8cfd5e7e54743d01f837ef8a62 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Sun, 18 Aug 2024 03:45:12 +0200 Subject: [PATCH 039/103] Remove deprecated "virtualize" param --- test/e2e/wp-now.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/test/e2e/wp-now.json b/test/e2e/wp-now.json index 47215b49f..e53c87305 100644 --- a/test/e2e/wp-now.json +++ b/test/e2e/wp-now.json @@ -13,8 +13,7 @@ "WP_DEBUG_DISPLAY": false, "WP_DEBUG_LOG": "/var/www/html/wp-content/plugins/gatherpress/artifacts/debug.log", "GATHERPRESS_ALPHA_VERSION": 1 - }, - "virtualize": true + } } ] } \ No newline at end of file From 45fdc5002e83a2632b8166eedd0f13e88bc1fa2d Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Sun, 18 Aug 2024 03:46:53 +0200 Subject: [PATCH 040/103] Lint & Fix CS issues --- test/e2e/tests/editor/blocks.spec.ts | 1 - test/e2e/tests/editor/events.spec.ts | 23 ++++++++++---------- test/e2e/tests/editor/venues.spec.ts | 2 -- test/e2e/tests/frontend/rsvp.spec.ts | 8 +------ test/e2e/tests/site-editor/templates.spec.ts | 6 +---- test/e2e/tests/wp-admin/settings.spec.ts | 13 ++++------- 6 files changed, 17 insertions(+), 36 deletions(-) diff --git a/test/e2e/tests/editor/blocks.spec.ts b/test/e2e/tests/editor/blocks.spec.ts index 96c83e5ce..3eba38d1c 100644 --- a/test/e2e/tests/editor/blocks.spec.ts +++ b/test/e2e/tests/editor/blocks.spec.ts @@ -4,7 +4,6 @@ const { test, expect } = require('@wordpress/e2e-test-utils-playwright'); test.describe('Blocks & Patterns in the Editor', () => { - test.beforeEach(async ({ admin }) => { await admin.createNewPost(); }); diff --git a/test/e2e/tests/editor/events.spec.ts b/test/e2e/tests/editor/events.spec.ts index 1e8623f46..bc5d9c7f1 100644 --- a/test/e2e/tests/editor/events.spec.ts +++ b/test/e2e/tests/editor/events.spec.ts @@ -4,13 +4,14 @@ const { test } = require('@wordpress/e2e-test-utils-playwright'); test.describe('Events in the Editor', () => { - let eventTitle: string; const currentDate = new Date().toISOString().split('T')[0]; // format YYYY-MM-DD test.beforeEach(async ({ admin, page }) => { - - await admin.createNewPost({ postType: 'gatherpress_venue', title: 'Offline Event Location' }); + await admin.createNewPost({ + postType: 'gatherpress_venue', + title: 'Offline Event Location', + }); await admin.createNewPost({ postType: 'gatherpress_event' }); await page @@ -21,19 +22,16 @@ test.describe('Events in the Editor', () => { await page.getByRole('heading', { name: 'Date & time' }).isVisible(); // Open the Document -> Event settings panel. - const panelToggle = page.getByRole( 'button', { + const panelToggle = page.getByRole('button', { name: 'Event settings', - } ); + }); - if ( - ( await panelToggle.getAttribute( 'aria-expanded' ) ) === 'false' - ) { + if ((await panelToggle.getAttribute('aria-expanded')) === 'false') { await panelToggle.click(); } }); test.afterEach(async ({ page, requestUtils }) => { - // Click again to close the element, to let upcoming tests not get flaky. await page.getByRole('button', { name: 'Event settings' }).click(); @@ -70,17 +68,18 @@ test.describe('Events in the Editor', () => { .fill('www.google.com'); }); - test('An admin should be able to publish an offline event', async ({ page, }) => { - await page.getByLabel('Venue Selector').selectOption('Offline Event Location'); + await page + .getByLabel('Venue Selector') + .selectOption('Offline Event Location'); eventTitle = await page .getByLabel('Add title') .fill(`offline T-Event:${currentDate}`); }); -/* + /* test('A user should be able to publish an online event', async ({ page, }) => { diff --git a/test/e2e/tests/editor/venues.spec.ts b/test/e2e/tests/editor/venues.spec.ts index 756151f9e..c3f0e5db0 100644 --- a/test/e2e/tests/editor/venues.spec.ts +++ b/test/e2e/tests/editor/venues.spec.ts @@ -4,7 +4,6 @@ const { test } = require('@wordpress/e2e-test-utils-playwright'); test.describe('Venues in the Editor', () => { - test.beforeEach(async ({ admin }) => { await admin.createNewPost({ postType: 'gatherpress_venue' }); }); @@ -14,7 +13,6 @@ test.describe('Venues in the Editor', () => { }); test('The admin should be able to create a new Venue.', async ({ - admin, page, }) => { await page.getByLabel('Add title').isVisible(); diff --git a/test/e2e/tests/frontend/rsvp.spec.ts b/test/e2e/tests/frontend/rsvp.spec.ts index 0f140b454..edbad9975 100644 --- a/test/e2e/tests/frontend/rsvp.spec.ts +++ b/test/e2e/tests/frontend/rsvp.spec.ts @@ -4,8 +4,7 @@ const { test } = require('@wordpress/e2e-test-utils-playwright'); test.describe('RSVP to an event', () => { - -/* + /* test('02-verify the non-logged in user view RSVP button on home page and perform RSVP action', async ({ page, }) => { @@ -40,8 +39,6 @@ test.describe('RSVP to an event', () => { .first() .screenshot({ path: 'attending.png' }); }); */ - - /* test('02-verify the logged in user view RSVP button on home page and perform RSVP action', async ({ page, @@ -72,7 +69,4 @@ test.describe('RSVP to an event', () => { .first() .screenshot({ path: 'attending.png' }); }); */ - }); - - diff --git a/test/e2e/tests/site-editor/templates.spec.ts b/test/e2e/tests/site-editor/templates.spec.ts index 2a1cbe2ac..87f8cd284 100644 --- a/test/e2e/tests/site-editor/templates.spec.ts +++ b/test/e2e/tests/site-editor/templates.spec.ts @@ -4,16 +4,12 @@ const { test } = require('@wordpress/e2e-test-utils-playwright'); test.describe('Templates', () => { - - test('The events template can be edited', async ({ - admin, - }) => { + test('The events template can be edited', async ({ admin }) => { await admin.visitSiteEditor({ postId: 'twentytwentyfour//single-gatherpress_event', postType: 'wp_template', canvas: 'edit', showWelcomeGuide: false, }); - }); }); diff --git a/test/e2e/tests/wp-admin/settings.spec.ts b/test/e2e/tests/wp-admin/settings.spec.ts index a1a45b940..ffb6ef08e 100644 --- a/test/e2e/tests/wp-admin/settings.spec.ts +++ b/test/e2e/tests/wp-admin/settings.spec.ts @@ -4,7 +4,6 @@ const { test, expect } = require('@wordpress/e2e-test-utils-playwright'); test.describe('Settings', () => { - test('A link to the plugin settings page is present under the Events menu', async ({ page, admin, @@ -14,14 +13,10 @@ test.describe('Settings', () => { const menu = page.locator('li', { has: page.getByRole('link', { name: 'Events' }), }); - const settingsMenu = menu.getByRole( - 'link', - { - name: 'Settings', - } - ); - const settingsMenuUrl = - await settingsMenu.getAttribute('href'); + const settingsMenu = menu.getByRole('link', { + name: 'Settings', + }); + const settingsMenuUrl = await settingsMenu.getAttribute('href'); await expect(settingsMenu).toBeVisible(); await expect(settingsMenuUrl).toContain( From 1ae3bebb6b99464994d8daca7f603fdb72897b9b Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Sun, 18 Aug 2024 03:55:54 +0200 Subject: [PATCH 041/103] Import demo-data to test use-cases without having to create a bunch of data --- test/e2e/tests/editor/events.spec.ts | 8 ++------ test/e2e/wp-now.json | 7 +++++++ 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/test/e2e/tests/editor/events.spec.ts b/test/e2e/tests/editor/events.spec.ts index bc5d9c7f1..1a637a740 100644 --- a/test/e2e/tests/editor/events.spec.ts +++ b/test/e2e/tests/editor/events.spec.ts @@ -8,10 +8,6 @@ test.describe('Events in the Editor', () => { const currentDate = new Date().toISOString().split('T')[0]; // format YYYY-MM-DD test.beforeEach(async ({ admin, page }) => { - await admin.createNewPost({ - postType: 'gatherpress_venue', - title: 'Offline Event Location', - }); await admin.createNewPost({ postType: 'gatherpress_event' }); await page @@ -73,7 +69,7 @@ test.describe('Events in the Editor', () => { }) => { await page .getByLabel('Venue Selector') - .selectOption('Offline Event Location'); + .selectOption('Turin'); // Location of WCEU 2024 & part of https://github.com/GatherPress/demo-data eventTitle = await page .getByLabel('Add title') .fill(`offline T-Event:${currentDate}`); @@ -92,7 +88,7 @@ test.describe('Events in the Editor', () => { test('A user should be able publish an offline event', async ({ page, }) => { - await page.getByLabel('Venue Selector').selectOption('Offline Event Location'); + await page.getByLabel('Venue Selector').selectOption('Turin'); // Location of WCEU 2024 & part of https://github.com/GatherPress/demo-data eventTitle = await page .getByLabel('Add title') .fill(`offline T-Event:${currentDate}`); diff --git a/test/e2e/wp-now.json b/test/e2e/wp-now.json index e53c87305..f0a4f20ab 100644 --- a/test/e2e/wp-now.json +++ b/test/e2e/wp-now.json @@ -14,6 +14,13 @@ "WP_DEBUG_LOG": "/var/www/html/wp-content/plugins/gatherpress/artifacts/debug.log", "GATHERPRESS_ALPHA_VERSION": 1 } + }, + { + "step": "importWxr", + "file": { + "resource": "url", + "url": "https://raw.githubusercontent.com/GatherPress/demo-data/main/GatherPress-demo-data-2024.xml" + } } ] } \ No newline at end of file From 5fb31e2e3f156d06c19a000ab6dd5ab61d7afec1 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Sun, 18 Aug 2024 04:09:24 +0200 Subject: [PATCH 042/103] WIP Migrate tests to e2e-test-utils-playwright (3/3) --- test/e2e/tests/editor/events.spec.ts | 23 ++++------------------- test/e2e/tests/frontend/rsvp.spec.ts | 18 ++++++++++-------- 2 files changed, 14 insertions(+), 27 deletions(-) diff --git a/test/e2e/tests/editor/events.spec.ts b/test/e2e/tests/editor/events.spec.ts index 1a637a740..e33676892 100644 --- a/test/e2e/tests/editor/events.spec.ts +++ b/test/e2e/tests/editor/events.spec.ts @@ -27,26 +27,11 @@ test.describe('Events in the Editor', () => { } }); - test.afterEach(async ({ page, requestUtils }) => { + test.afterEach(async ({ editor, page, requestUtils }) => { // Click again to close the element, to let upcoming tests not get flaky. await page.getByRole('button', { name: 'Event settings' }).click(); - await page - .getByRole('button', { name: 'Publish', exact: true }) - .click(); - await page - .getByLabel('Editor publish') - .getByRole('button', { name: 'Publish', exact: true }) - .click(); - - await page - .getByText(`${eventTitle} is now live.`) - .isVisible({ timeout: 60000 }); // verified the event is live. - - await page - .locator('.post-publish-panel__postpublish-buttons') - .filter({ hasText: 'View Event' }) - .isVisible({ timeout: 30000 }); // verified the view event button. + await editor.publishPost(); await requestUtils.deleteAllPosts(); }); @@ -69,7 +54,7 @@ test.describe('Events in the Editor', () => { }) => { await page .getByLabel('Venue Selector') - .selectOption('Turin'); // Location of WCEU 2024 & part of https://github.com/GatherPress/demo-data + .selectOption('Turin'); // Location of WCEU 2024 & imported from https://github.com/GatherPress/demo-data eventTitle = await page .getByLabel('Add title') .fill(`offline T-Event:${currentDate}`); @@ -88,7 +73,7 @@ test.describe('Events in the Editor', () => { test('A user should be able publish an offline event', async ({ page, }) => { - await page.getByLabel('Venue Selector').selectOption('Turin'); // Location of WCEU 2024 & part of https://github.com/GatherPress/demo-data + await page.getByLabel('Venue Selector').selectOption('Turin'); // Location of WCEU 2024 & imported from https://github.com/GatherPress/demo-data eventTitle = await page .getByLabel('Add title') .fill(`offline T-Event:${currentDate}`); diff --git a/test/e2e/tests/frontend/rsvp.spec.ts b/test/e2e/tests/frontend/rsvp.spec.ts index edbad9975..7e4cffef4 100644 --- a/test/e2e/tests/frontend/rsvp.spec.ts +++ b/test/e2e/tests/frontend/rsvp.spec.ts @@ -39,11 +39,12 @@ test.describe('RSVP to an event', () => { .first() .screenshot({ path: 'attending.png' }); }); */ - /* - test('02-verify the logged in user view RSVP button on home page and perform RSVP action', async ({ + + test('A logged in user can perform RSVP action', async ({ page, }) => { - await page.getByRole('menuitem', { name: 'GatherPress' }).click(); + await page.goto('/'); + await page.getByRole('link', { name: 'Events' }).click(); // Imported from of https://github.com/GatherPress/demo-data await page.evaluate(() => window.scrollTo(0, 5000)); await page @@ -64,9 +65,10 @@ test.describe('RSVP to an event', () => { .locator('.gatherpress-rsvp-response__items') .first() .isVisible(); // verified the attending users list. - await page - .locator('.gatherpress-rsvp-response__items') - .first() - .screenshot({ path: 'attending.png' }); - }); */ + + // await page + // .locator('.gatherpress-rsvp-response__items') + // .first() + // .screenshot({ path: 'attending.png' }); + }); }); From c1482b05ec7a771846eb55e7e6b156a1699f0c20 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Sun, 18 Aug 2024 04:13:37 +0200 Subject: [PATCH 043/103] DRY out code & fix CS --- test/e2e/tests/editor/events.spec.ts | 22 +--------------------- test/e2e/tests/frontend/rsvp.spec.ts | 6 ++---- 2 files changed, 3 insertions(+), 25 deletions(-) diff --git a/test/e2e/tests/editor/events.spec.ts b/test/e2e/tests/editor/events.spec.ts index e33676892..68575ccd2 100644 --- a/test/e2e/tests/editor/events.spec.ts +++ b/test/e2e/tests/editor/events.spec.ts @@ -4,9 +4,6 @@ const { test } = require('@wordpress/e2e-test-utils-playwright'); test.describe('Events in the Editor', () => { - let eventTitle: string; - const currentDate = new Date().toISOString().split('T')[0]; // format YYYY-MM-DD - test.beforeEach(async ({ admin, page }) => { await admin.createNewPost({ postType: 'gatherpress_event' }); @@ -30,9 +27,7 @@ test.describe('Events in the Editor', () => { test.afterEach(async ({ editor, page, requestUtils }) => { // Click again to close the element, to let upcoming tests not get flaky. await page.getByRole('button', { name: 'Event settings' }).click(); - await editor.publishPost(); - await requestUtils.deleteAllPosts(); }); @@ -40,10 +35,6 @@ test.describe('Events in the Editor', () => { page, }) => { await page.getByLabel('Venue Selector').selectOption('Online event'); - eventTitle = await page - .getByLabel('Add title') - .fill(`online T-Event: ${currentDate}`); - await page .getByPlaceholder('Add link to online event') .fill('www.google.com'); @@ -52,12 +43,7 @@ test.describe('Events in the Editor', () => { test('An admin should be able to publish an offline event', async ({ page, }) => { - await page - .getByLabel('Venue Selector') - .selectOption('Turin'); // Location of WCEU 2024 & imported from https://github.com/GatherPress/demo-data - eventTitle = await page - .getByLabel('Add title') - .fill(`offline T-Event:${currentDate}`); + await page.getByLabel('Venue Selector').selectOption('Turin'); // Location of WCEU 2024 & imported from https://github.com/GatherPress/demo-data }); /* @@ -65,17 +51,11 @@ test.describe('Events in the Editor', () => { page, }) => { await page.getByLabel('Venue Selector').selectOption('Online event'); - eventTitle = await page - .getByLabel('Add title') - .fill(`online T-Event: ${currentDate}`); }); test('A user should be able publish an offline event', async ({ page, }) => { await page.getByLabel('Venue Selector').selectOption('Turin'); // Location of WCEU 2024 & imported from https://github.com/GatherPress/demo-data - eventTitle = await page - .getByLabel('Add title') - .fill(`offline T-Event:${currentDate}`); }); */ }); diff --git a/test/e2e/tests/frontend/rsvp.spec.ts b/test/e2e/tests/frontend/rsvp.spec.ts index 7e4cffef4..ff9b8df8d 100644 --- a/test/e2e/tests/frontend/rsvp.spec.ts +++ b/test/e2e/tests/frontend/rsvp.spec.ts @@ -40,11 +40,9 @@ test.describe('RSVP to an event', () => { .screenshot({ path: 'attending.png' }); }); */ - test('A logged in user can perform RSVP action', async ({ - page, - }) => { + test('A logged in user can perform RSVP action', async ({ page }) => { await page.goto('/'); - await page.getByRole('link', { name: 'Events' }).click(); // Imported from of https://github.com/GatherPress/demo-data + await page.getByRole('link', { name: 'Events' }).click(); // Imported from of https://github.com/GatherPress/demo-data await page.evaluate(() => window.scrollTo(0, 5000)); await page From 87984dadc1a1235fce453c4c294a6186311bf180 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Sun, 18 Aug 2024 04:43:17 +0200 Subject: [PATCH 044/103] WIP Migrate tests to e2e-test-utils-playwright (4/4) --- test/e2e/tests/editor/events.spec.ts | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/test/e2e/tests/editor/events.spec.ts b/test/e2e/tests/editor/events.spec.ts index 68575ccd2..91e9c921d 100644 --- a/test/e2e/tests/editor/events.spec.ts +++ b/test/e2e/tests/editor/events.spec.ts @@ -4,6 +4,9 @@ const { test } = require('@wordpress/e2e-test-utils-playwright'); test.describe('Events in the Editor', () => { + let eventTitle: string; + const currentDate = new Date().toISOString().split('T')[0]; // format YYYY-MM-DD + test.beforeEach(async ({ admin, page }) => { await admin.createNewPost({ postType: 'gatherpress_event' }); @@ -27,7 +30,9 @@ test.describe('Events in the Editor', () => { test.afterEach(async ({ editor, page, requestUtils }) => { // Click again to close the element, to let upcoming tests not get flaky. await page.getByRole('button', { name: 'Event settings' }).click(); + await editor.publishPost(); + await requestUtils.deleteAllPosts(); }); @@ -35,6 +40,10 @@ test.describe('Events in the Editor', () => { page, }) => { await page.getByLabel('Venue Selector').selectOption('Online event'); + eventTitle = await page + .getByLabel('Add title') + .fill(`online T-Event: ${currentDate}`); + await page .getByPlaceholder('Add link to online event') .fill('www.google.com'); @@ -43,7 +52,12 @@ test.describe('Events in the Editor', () => { test('An admin should be able to publish an offline event', async ({ page, }) => { - await page.getByLabel('Venue Selector').selectOption('Turin'); // Location of WCEU 2024 & imported from https://github.com/GatherPress/demo-data + await page + .getByLabel('Venue Selector') + .selectOption('Turin'); // Location of WCEU 2024 & imported from https://github.com/GatherPress/demo-data + eventTitle = await page + .getByLabel('Add title') + .fill(`offline T-Event:${currentDate}`); }); /* @@ -51,11 +65,17 @@ test.describe('Events in the Editor', () => { page, }) => { await page.getByLabel('Venue Selector').selectOption('Online event'); + eventTitle = await page + .getByLabel('Add title') + .fill(`online T-Event: ${currentDate}`); }); test('A user should be able publish an offline event', async ({ page, }) => { await page.getByLabel('Venue Selector').selectOption('Turin'); // Location of WCEU 2024 & imported from https://github.com/GatherPress/demo-data + eventTitle = await page + .getByLabel('Add title') + .fill(`offline T-Event:${currentDate}`); }); */ -}); +}); \ No newline at end of file From b7a2bcda633c6c8c4e17f047aa1bd26f95905cf4 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Sun, 18 Aug 2024 04:46:33 +0200 Subject: [PATCH 045/103] Apply to CS --- test/e2e/tests/editor/events.spec.ts | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/test/e2e/tests/editor/events.spec.ts b/test/e2e/tests/editor/events.spec.ts index 91e9c921d..089b0f4b5 100644 --- a/test/e2e/tests/editor/events.spec.ts +++ b/test/e2e/tests/editor/events.spec.ts @@ -52,9 +52,7 @@ test.describe('Events in the Editor', () => { test('An admin should be able to publish an offline event', async ({ page, }) => { - await page - .getByLabel('Venue Selector') - .selectOption('Turin'); // Location of WCEU 2024 & imported from https://github.com/GatherPress/demo-data + await page.getByLabel('Venue Selector').selectOption('Turin'); // Location of WCEU 2024 & imported from https://github.com/GatherPress/demo-data eventTitle = await page .getByLabel('Add title') .fill(`offline T-Event:${currentDate}`); @@ -78,4 +76,4 @@ test.describe('Events in the Editor', () => { .getByLabel('Add title') .fill(`offline T-Event:${currentDate}`); }); */ -}); \ No newline at end of file +}); From b5f0bda9003b7d0cf94435ffe0c742e9143bcb6e Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Sun, 18 Aug 2024 04:56:45 +0200 Subject: [PATCH 046/103] Do not delete posts --- test/e2e/tests/editor/events.spec.ts | 2 +- test/e2e/tests/editor/venues.spec.ts | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/test/e2e/tests/editor/events.spec.ts b/test/e2e/tests/editor/events.spec.ts index 089b0f4b5..19a0e95e8 100644 --- a/test/e2e/tests/editor/events.spec.ts +++ b/test/e2e/tests/editor/events.spec.ts @@ -33,7 +33,7 @@ test.describe('Events in the Editor', () => { await editor.publishPost(); - await requestUtils.deleteAllPosts(); + // await requestUtils.deleteAllPosts(); }); test('An admin should be able to publish an online event', async ({ diff --git a/test/e2e/tests/editor/venues.spec.ts b/test/e2e/tests/editor/venues.spec.ts index c3f0e5db0..040beab8e 100644 --- a/test/e2e/tests/editor/venues.spec.ts +++ b/test/e2e/tests/editor/venues.spec.ts @@ -8,9 +8,9 @@ test.describe('Venues in the Editor', () => { await admin.createNewPost({ postType: 'gatherpress_venue' }); }); - test.afterEach(async ({ requestUtils }) => { - await requestUtils.deleteAllPosts(); - }); + // test.afterEach(async ({ requestUtils }) => { + // await requestUtils.deleteAllPosts(); + // }); test('The admin should be able to create a new Venue.', async ({ page, From 024fe15e6291f3dd9fca659819f0c7aebe334da5 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Sun, 18 Aug 2024 12:23:44 +0200 Subject: [PATCH 047/103] Do not delete posts (2/2) --- test/e2e/tests/editor/blocks.spec.ts | 6 +++--- test/e2e/tests/editor/events.spec.ts | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/test/e2e/tests/editor/blocks.spec.ts b/test/e2e/tests/editor/blocks.spec.ts index 3eba38d1c..8281a6532 100644 --- a/test/e2e/tests/editor/blocks.spec.ts +++ b/test/e2e/tests/editor/blocks.spec.ts @@ -8,9 +8,9 @@ test.describe('Blocks & Patterns in the Editor', () => { await admin.createNewPost(); }); - test.afterEach(async ({ requestUtils }) => { - await requestUtils.deleteAllPosts(); - }); + // test.afterEach(async ({ requestUtils }) => { + // await requestUtils.deleteAllPosts(); + // }); /** * Are all blocks available? diff --git a/test/e2e/tests/editor/events.spec.ts b/test/e2e/tests/editor/events.spec.ts index 19a0e95e8..ac8d3895e 100644 --- a/test/e2e/tests/editor/events.spec.ts +++ b/test/e2e/tests/editor/events.spec.ts @@ -27,7 +27,7 @@ test.describe('Events in the Editor', () => { } }); - test.afterEach(async ({ editor, page, requestUtils }) => { + test.afterEach(async ({ editor, page }) => { // Click again to close the element, to let upcoming tests not get flaky. await page.getByRole('button', { name: 'Event settings' }).click(); From a99cdb6bd1c09f2fce67f7f2506a73be78ad0ec9 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Sun, 18 Aug 2024 12:24:20 +0200 Subject: [PATCH 048/103] Remove dated-post-title as not-needed in virtual envs --- test/e2e/tests/editor/events.spec.ts | 20 +------------------- 1 file changed, 1 insertion(+), 19 deletions(-) diff --git a/test/e2e/tests/editor/events.spec.ts b/test/e2e/tests/editor/events.spec.ts index ac8d3895e..62523971f 100644 --- a/test/e2e/tests/editor/events.spec.ts +++ b/test/e2e/tests/editor/events.spec.ts @@ -4,12 +4,9 @@ const { test } = require('@wordpress/e2e-test-utils-playwright'); test.describe('Events in the Editor', () => { - let eventTitle: string; - const currentDate = new Date().toISOString().split('T')[0]; // format YYYY-MM-DD - test.beforeEach(async ({ admin, page }) => { await admin.createNewPost({ postType: 'gatherpress_event' }); - + await page.getByLabel('Add title').fill('Change title to allow saving'); await page .getByLabel('Block: Event Date') .locator('div') @@ -30,9 +27,7 @@ test.describe('Events in the Editor', () => { test.afterEach(async ({ editor, page }) => { // Click again to close the element, to let upcoming tests not get flaky. await page.getByRole('button', { name: 'Event settings' }).click(); - await editor.publishPost(); - // await requestUtils.deleteAllPosts(); }); @@ -40,10 +35,6 @@ test.describe('Events in the Editor', () => { page, }) => { await page.getByLabel('Venue Selector').selectOption('Online event'); - eventTitle = await page - .getByLabel('Add title') - .fill(`online T-Event: ${currentDate}`); - await page .getByPlaceholder('Add link to online event') .fill('www.google.com'); @@ -53,9 +44,6 @@ test.describe('Events in the Editor', () => { page, }) => { await page.getByLabel('Venue Selector').selectOption('Turin'); // Location of WCEU 2024 & imported from https://github.com/GatherPress/demo-data - eventTitle = await page - .getByLabel('Add title') - .fill(`offline T-Event:${currentDate}`); }); /* @@ -63,17 +51,11 @@ test.describe('Events in the Editor', () => { page, }) => { await page.getByLabel('Venue Selector').selectOption('Online event'); - eventTitle = await page - .getByLabel('Add title') - .fill(`online T-Event: ${currentDate}`); }); test('A user should be able publish an offline event', async ({ page, }) => { await page.getByLabel('Venue Selector').selectOption('Turin'); // Location of WCEU 2024 & imported from https://github.com/GatherPress/demo-data - eventTitle = await page - .getByLabel('Add title') - .fill(`offline T-Event:${currentDate}`); }); */ }); From 08539d8216be5b1258d64b47d35e538cee61272e Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Sun, 18 Aug 2024 12:29:28 +0200 Subject: [PATCH 049/103] Update actions/upload-artifact to v4 --- .github/workflows/e2e-tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index 28ed411b0..49f817d2b 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -84,7 +84,7 @@ jobs: npm run test:e2e - name: Retain failed test results - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 if: failure() with: name: test-results-matrix-less-debugging From 0810258a7ed3f6a4d4d623ff1b07ba585bbfe91d Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Sun, 18 Aug 2024 12:36:55 +0200 Subject: [PATCH 050/103] Enable networking to prevent 404 (and hopefully the import errors as well) --- test/e2e/wp-now.json | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/test/e2e/wp-now.json b/test/e2e/wp-now.json index f0a4f20ab..340e5d63c 100644 --- a/test/e2e/wp-now.json +++ b/test/e2e/wp-now.json @@ -1,10 +1,15 @@ { "$schema": "https://playground.wordpress.net/blueprint-schema.json", "preferredVersions": { - "php": "latest", + "php": "8.2", "wp": "latest" }, - "phpExtensionBundles": ["kitchen-sink"], + "phpExtensionBundles": [ + "kitchen-sink" + ], + "features": { + "networking": true + }, "steps": [ { "step": "defineWpConfigConsts", From 86f3b731f0b87164129d24bb11bc3a6cf76ed6eb Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Sun, 18 Aug 2024 14:45:30 +0200 Subject: [PATCH 051/103] Replace importWxr step with 5 (!) steps (Regarding to https://github.com/WordPress/playground-tools/issues/195) --- test/e2e/wp-now.json | 39 ++++++++++++++++++++++++++++++++++----- 1 file changed, 34 insertions(+), 5 deletions(-) diff --git a/test/e2e/wp-now.json b/test/e2e/wp-now.json index 340e5d63c..625b73839 100644 --- a/test/e2e/wp-now.json +++ b/test/e2e/wp-now.json @@ -21,11 +21,40 @@ } }, { - "step": "importWxr", - "file": { - "resource": "url", - "url": "https://raw.githubusercontent.com/GatherPress/demo-data/main/GatherPress-demo-data-2024.xml" - } + "step": "mkdir", + "path": "/wordpress/wp-content" + }, + { + "step": "writeFile", + "path": "/wordpress/wp-content/gatherpress-demo-data.zip", + "data": { + "resource": "url", + "url": "https://github-proxy.com/proxy/?repo=GatherPress/demo-data", + "caption": "Downloading Demo data repo." + }, + "progress": { + "weight": 2, + "caption": "Applying Demo data." + } + }, + { + "step": "unzip", + "zipFile": { + "resource": "vfs", + "path": "/wordpress/wp-content/gatherpress-demo-data.zip" + }, + "extractToPath": "/wordpress/wp-content" + }, + { + "step": "installPlugin", + "pluginZipFile": { + "resource": "url", + "url": "https://github-proxy.com/proxy/?repo=humanmade/WordPress-Importer" + } + }, + { + "step": "runPHP", + "code": "min_level = 'info';$options = array( 'fetch_attachments' => false, 'default_author' => 1,);$importer = new WXR_Importer( $options );$importer->set_logger( $logger );$result = $importer->import( $path );" } ] } \ No newline at end of file From ac8c02a95324388d81dbf1de5a71d2669f858ff1 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Sun, 18 Aug 2024 17:08:54 +0200 Subject: [PATCH 052/103] TRY --- test/e2e/wp-now.json | 3 +++ 1 file changed, 3 insertions(+) diff --git a/test/e2e/wp-now.json b/test/e2e/wp-now.json index 625b73839..b7150f749 100644 --- a/test/e2e/wp-now.json +++ b/test/e2e/wp-now.json @@ -50,6 +50,9 @@ "pluginZipFile": { "resource": "url", "url": "https://github-proxy.com/proxy/?repo=humanmade/WordPress-Importer" + }, + "options": { + "activate": true } }, { From 13d8c4d364fd376b33b3e23dd79d798e2365b9f1 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Sun, 18 Aug 2024 19:53:50 +0200 Subject: [PATCH 053/103] Add login step --- test/e2e/wp-now.json | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/test/e2e/wp-now.json b/test/e2e/wp-now.json index b7150f749..e984dafa2 100644 --- a/test/e2e/wp-now.json +++ b/test/e2e/wp-now.json @@ -20,6 +20,11 @@ "GATHERPRESS_ALPHA_VERSION": 1 } }, + { + "step": "login", + "username": "admin", + "password": "password" + }, { "step": "mkdir", "path": "/wordpress/wp-content" @@ -52,7 +57,7 @@ "url": "https://github-proxy.com/proxy/?repo=humanmade/WordPress-Importer" }, "options": { - "activate": true + "activate": true } }, { From 978afa1b5043f833f9f31310afcc146806920038 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Sun, 18 Aug 2024 20:02:51 +0200 Subject: [PATCH 054/103] DISABLE TEMP // Reduce browser to increase time-to-next-debug-msg --- test/e2e/playwright.config.ts | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/test/e2e/playwright.config.ts b/test/e2e/playwright.config.ts index b4158a694..8f04c509c 100644 --- a/test/e2e/playwright.config.ts +++ b/test/e2e/playwright.config.ts @@ -32,15 +32,15 @@ export default defineConfig({ use: { ...devices['Desktop Chrome'] }, }, - { - name: 'firefox', - use: { ...devices['Desktop Firefox'] }, - }, + // { + // name: 'firefox', + // use: { ...devices['Desktop Firefox'] }, + // }, - { - name: 'webkit', - use: { ...devices['Desktop Safari'] }, - }, + // { + // name: 'webkit', + // use: { ...devices['Desktop Safari'] }, + // }, /* Test against mobile viewports. */ // { From 503b669898d91a781c12274f858572faa19a9ff8 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Sun, 18 Aug 2024 20:03:10 +0200 Subject: [PATCH 055/103] Disable superflous atts --- test/e2e/tests/site-editor/templates.spec.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/test/e2e/tests/site-editor/templates.spec.ts b/test/e2e/tests/site-editor/templates.spec.ts index 87f8cd284..6cfdae824 100644 --- a/test/e2e/tests/site-editor/templates.spec.ts +++ b/test/e2e/tests/site-editor/templates.spec.ts @@ -6,9 +6,9 @@ const { test } = require('@wordpress/e2e-test-utils-playwright'); test.describe('Templates', () => { test('The events template can be edited', async ({ admin }) => { await admin.visitSiteEditor({ - postId: 'twentytwentyfour//single-gatherpress_event', + // postId: 'twentytwentyfour/single-gatherpress_event', postType: 'wp_template', - canvas: 'edit', + // canvas: 'edit', showWelcomeGuide: false, }); }); From 7f4aac6a9598cdc98116af1b4bf75b27bce09d09 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Sun, 18 Aug 2024 20:40:54 +0200 Subject: [PATCH 056/103] Remove superflous code --- test/e2e/tests/editor/blocks.spec.ts | 4 ---- test/e2e/tests/editor/events.spec.ts | 1 - test/e2e/tests/editor/venues.spec.ts | 4 ---- 3 files changed, 9 deletions(-) diff --git a/test/e2e/tests/editor/blocks.spec.ts b/test/e2e/tests/editor/blocks.spec.ts index 8281a6532..978efea52 100644 --- a/test/e2e/tests/editor/blocks.spec.ts +++ b/test/e2e/tests/editor/blocks.spec.ts @@ -8,10 +8,6 @@ test.describe('Blocks & Patterns in the Editor', () => { await admin.createNewPost(); }); - // test.afterEach(async ({ requestUtils }) => { - // await requestUtils.deleteAllPosts(); - // }); - /** * Are all blocks available? * diff --git a/test/e2e/tests/editor/events.spec.ts b/test/e2e/tests/editor/events.spec.ts index 62523971f..807e22b51 100644 --- a/test/e2e/tests/editor/events.spec.ts +++ b/test/e2e/tests/editor/events.spec.ts @@ -28,7 +28,6 @@ test.describe('Events in the Editor', () => { // Click again to close the element, to let upcoming tests not get flaky. await page.getByRole('button', { name: 'Event settings' }).click(); await editor.publishPost(); - // await requestUtils.deleteAllPosts(); }); test('An admin should be able to publish an online event', async ({ diff --git a/test/e2e/tests/editor/venues.spec.ts b/test/e2e/tests/editor/venues.spec.ts index 040beab8e..0c0c7430c 100644 --- a/test/e2e/tests/editor/venues.spec.ts +++ b/test/e2e/tests/editor/venues.spec.ts @@ -8,10 +8,6 @@ test.describe('Venues in the Editor', () => { await admin.createNewPost({ postType: 'gatherpress_venue' }); }); - // test.afterEach(async ({ requestUtils }) => { - // await requestUtils.deleteAllPosts(); - // }); - test('The admin should be able to create a new Venue.', async ({ page, }) => { From 1ac130da69722c2f5ae7a71ffc959d4c401b16a5 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Sun, 18 Aug 2024 22:22:28 +0200 Subject: [PATCH 057/103] TRY number 763 --- package.json | 2 +- test/e2e/wp-now.json | 3 --- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/package.json b/package.json index 11ddf7814..b37584b1e 100644 --- a/package.json +++ b/package.json @@ -39,7 +39,7 @@ "pretest:unit:php": "wp-env start --xdebug", "test:unit:php": "wp-env run tests-wordpress php -dxdebug.mode=coverage /var/www/html/wp-content/plugins/gatherpress/vendor/bin/phpunit -c /var/www/html/wp-content/plugins/gatherpress/phpunit.xml.dist --coverage-clover=coverage.xml --coverage-html=build/coverage-report", "wp-env": "wp-env", - "wp-now": "wp-now start --port=8889 --php=8.2 --blueprint=test/e2e/wp-now.json" + "wp-now": "wp-now start --port=8889 --php=8.2 --blueprint=test/e2e/wp-now.json --skip-browser" }, "repository": { "type": "git", diff --git a/test/e2e/wp-now.json b/test/e2e/wp-now.json index e984dafa2..3b4566a71 100644 --- a/test/e2e/wp-now.json +++ b/test/e2e/wp-now.json @@ -55,9 +55,6 @@ "pluginZipFile": { "resource": "url", "url": "https://github-proxy.com/proxy/?repo=humanmade/WordPress-Importer" - }, - "options": { - "activate": true } }, { From 009bc609ccb018040045e1c3e78409694b452a28 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Wed, 21 Aug 2024 00:48:55 +0200 Subject: [PATCH 058/103] Replace wp-now with wp-playground/cli !!! --- package-lock.json | 506 ++++++++++++++++------------------ package.json | 4 +- test/e2e/blueprint.json | 39 +++ test/e2e/playwright.config.ts | 31 ++- test/e2e/wp-now.json | 65 ----- 5 files changed, 305 insertions(+), 340 deletions(-) create mode 100644 test/e2e/blueprint.json delete mode 100644 test/e2e/wp-now.json diff --git a/package-lock.json b/package-lock.json index 0e0587a92..ab31c0243 100644 --- a/package-lock.json +++ b/package-lock.json @@ -32,7 +32,7 @@ "@wordpress/notices": "^5.4.0", "@wordpress/plugins": "^7.4.0", "@wordpress/scripts": "^28.4.0", - "@wp-now/wp-now": "^0.1.74", + "@wp-playground/cli": "^0.9.31", "classnames": "^2.5.1", "dotenv": "^16.4.5", "eslint": "^8.57.0", @@ -3541,17 +3541,35 @@ "node": ">= 8" } }, + "node_modules/@php-wasm/logger": { + "version": "0.9.31", + "resolved": "https://registry.npmjs.org/@php-wasm/logger/-/logger-0.9.31.tgz", + "integrity": "sha512-7OWunmEcN+cOrABqQ2mkhumw5maT5v8c5PKWXDl2aC7LFFjKqHsTPUnkNNlOIM0uobB0LPFFjr31lh7Qdsq7DA==", + "dev": true, + "dependencies": { + "@php-wasm/node-polyfills": "0.9.31" + }, + "engines": { + "node": ">=18.18.0", + "npm": ">=8.11.0" + } + }, "node_modules/@php-wasm/node": { - "version": "0.6.16", - "resolved": "https://registry.npmjs.org/@php-wasm/node/-/node-0.6.16.tgz", - "integrity": "sha512-8G79CDlExmh3wvIyI6JensmfewJ+/+hhBZVBnVwKeoe5AuCxB4h/CChLklRm9sczx5ertiIlfkY3b9yWzD5Rfw==", + "version": "0.9.31", + "resolved": "https://registry.npmjs.org/@php-wasm/node/-/node-0.9.31.tgz", + "integrity": "sha512-3R5N54+Oim51cR7pxe2/vYFSn12LQdktNYD9TUxXTyvtLKdxw58Xboe94kC/TirFN3BdsukjN5D/JHx9F+slGw==", "dev": true, "dependencies": { - "@php-wasm/node-polyfills": "0.6.16", - "@php-wasm/universal": "0.6.16", - "@php-wasm/util": "0.6.16", + "@php-wasm/logger": "0.9.31", + "@php-wasm/node-polyfills": "0.9.31", + "@php-wasm/universal": "0.9.31", + "@php-wasm/util": "0.9.31", + "@wp-playground/common": "0.9.31", + "@wp-playground/wordpress": "0.9.31", "comlink": "^4.4.1", - "ws": "8.13.0", + "express": "4.19.2", + "ini": "4.1.2", + "ws": "8.18.0", "yargs": "17.7.2" }, "engines": { @@ -3560,46 +3578,86 @@ } }, "node_modules/@php-wasm/node-polyfills": { - "version": "0.6.16", - "resolved": "https://registry.npmjs.org/@php-wasm/node-polyfills/-/node-polyfills-0.6.16.tgz", - "integrity": "sha512-JurRxOkPa4tBeXI8kKFKdBzVmK3N2OQzSkti3bt76yWAeKFkvMCtYyEbvHkk6W64sP7bKRCyytPHvwjXNOI3ig==", + "version": "0.9.31", + "resolved": "https://registry.npmjs.org/@php-wasm/node-polyfills/-/node-polyfills-0.9.31.tgz", + "integrity": "sha512-/WWRiMuFKzcd739/McOFxxgWQFbCga6y9dixosDFE/HQPow/XBd2eoLfB9fiFCmIrwdsIckfyHNpv12m5E+72Q==", "dev": true }, - "node_modules/@php-wasm/node/node_modules/ws": { - "version": "8.13.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.13.0.tgz", - "integrity": "sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==", + "node_modules/@php-wasm/node/node_modules/ini": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.2.tgz", + "integrity": "sha512-AMB1mvwR1pyBFY/nSevUX6y8nJWS63/SzUKD3JyQn97s4xgIdgQPT75IRouIiBAN4yLQBUShNYVW0+UG25daCw==", "dev": true, "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": ">=5.0.2" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@php-wasm/progress": { + "version": "0.9.31", + "resolved": "https://registry.npmjs.org/@php-wasm/progress/-/progress-0.9.31.tgz", + "integrity": "sha512-ma4uMn1jfqMpvb6cIx2jRYPs4AZSERQQ/hJK5jkWH6O3BXDhipvl6hHem3HaReao+mxuZ8BbW3VG/N+DAjL6/Q==", + "dev": true, + "dependencies": { + "@php-wasm/logger": "0.9.31", + "@php-wasm/node-polyfills": "0.9.31" }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } + "engines": { + "node": ">=18.18.0", + "npm": ">=8.11.0" + } + }, + "node_modules/@php-wasm/scopes": { + "version": "0.9.31", + "resolved": "https://registry.npmjs.org/@php-wasm/scopes/-/scopes-0.9.31.tgz", + "integrity": "sha512-VR7/HnF9B7gsK34XWAQmAfwfptSX5HfNhd4hB3xE1kL6PWPA+O/CuaiF5PtvC768I9Q5BH3l+3DTCxBKpaPD5A==", + "dev": true, + "engines": { + "node": ">=16.15.1", + "npm": ">=8.11.0" + } + }, + "node_modules/@php-wasm/stream-compression": { + "version": "0.9.31", + "resolved": "https://registry.npmjs.org/@php-wasm/stream-compression/-/stream-compression-0.9.31.tgz", + "integrity": "sha512-KlAwoWmeH2Nt6Gb0LhthlqS0Sn0oNA34jPLioiivJvPcji3u83SjyiAbYv//I9oC7gghKpXpIUkOw1HKR2SBHw==", + "dev": true, + "dependencies": { + "@php-wasm/node-polyfills": "0.9.31", + "@php-wasm/util": "0.9.31" } }, "node_modules/@php-wasm/universal": { - "version": "0.6.16", - "resolved": "https://registry.npmjs.org/@php-wasm/universal/-/universal-0.6.16.tgz", - "integrity": "sha512-6zvhQ8yBFg+bp3m4+IAw4UdtLu/Vcq+7HHzmd9XenQWNkqd5GMvKADvpoYoFa6+B4x4ZVDf9M5o0h7Q5N2o1dQ==", + "version": "0.9.31", + "resolved": "https://registry.npmjs.org/@php-wasm/universal/-/universal-0.9.31.tgz", + "integrity": "sha512-L+GwNMFWAMrbCG3QZAIVZyTigR1DrSxJAUrEpp6YdT++YYYqQX2UAjcHadrb2PlxoU7zjDfskthLSxtPqN7wSA==", "dev": true, + "dependencies": { + "@php-wasm/logger": "0.9.31", + "@php-wasm/node-polyfills": "0.9.31", + "@php-wasm/progress": "0.9.31", + "@php-wasm/stream-compression": "0.9.31", + "@php-wasm/util": "0.9.31", + "comlink": "^4.4.1", + "ini": "4.1.2" + }, "engines": { "node": ">=18.18.0", "npm": ">=8.11.0" } }, + "node_modules/@php-wasm/universal/node_modules/ini": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.2.tgz", + "integrity": "sha512-AMB1mvwR1pyBFY/nSevUX6y8nJWS63/SzUKD3JyQn97s4xgIdgQPT75IRouIiBAN4yLQBUShNYVW0+UG25daCw==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/@php-wasm/util": { - "version": "0.6.16", - "resolved": "https://registry.npmjs.org/@php-wasm/util/-/util-0.6.16.tgz", - "integrity": "sha512-sSjsAsZ6NfH7NtefMLqgw5wJpZxWpu8U6aU0Ioa+Hp5gTndIOfqfB+1o8KSmXXB+J5foTiVLVE0+v3z8BdcliQ==", + "version": "0.9.31", + "resolved": "https://registry.npmjs.org/@php-wasm/util/-/util-0.9.31.tgz", + "integrity": "sha512-WSIEgcej+pmeToREBgKyfaNHleyxuhcr/Wya/sQuynK/ZFbtmjQw68eUV26ufu45Mjt0gpOU6KovKogrnoivpQ==", "dev": true, "engines": { "node": ">=18.18.0", @@ -6715,12 +6773,6 @@ "@xtuc/long": "4.2.2" } }, - "node_modules/@webcontainer/env": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@webcontainer/env/-/env-1.1.1.tgz", - "integrity": "sha512-6aN99yL695Hi9SuIk1oC88l9o0gmxL1nGWWQ/kNy81HigJ0FoaoTXpytCj6ItzgyCEwA9kF1wixsTuv5cjsgng==", - "dev": true - }, "node_modules/@webpack-cli/configtest": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-2.1.1.tgz", @@ -9352,30 +9404,103 @@ "npm": ">=8.19.2" } }, - "node_modules/@wp-now/wp-now": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@wp-now/wp-now/-/wp-now-0.1.74.tgz", - "integrity": "sha512-Id2DOqIyBnQ/zlzbA0gY70T/6/Jy+EjsiPeMave4emmCfg4DI8i3crrUXu8KLHNPUrUeAJIA/qpxCksg0KTtFQ==", + "node_modules/@wp-playground/blueprints": { + "version": "0.9.31", + "resolved": "https://registry.npmjs.org/@wp-playground/blueprints/-/blueprints-0.9.31.tgz", + "integrity": "sha512-K+YG99dOHZIMVWFYRHpP/V0KZpETYRI0IobAfIOgc03/4i6Uw5db0I5cDndIb+xPRkpEeoANohDHyQ+filCVtw==", + "dev": true, + "dependencies": { + "@php-wasm/logger": "0.9.31", + "@php-wasm/node": "0.9.31", + "@php-wasm/node-polyfills": "0.9.31", + "@php-wasm/progress": "0.9.31", + "@php-wasm/scopes": "0.9.31", + "@php-wasm/universal": "0.9.31", + "@php-wasm/util": "0.9.31", + "@wp-playground/common": "0.9.31", + "@wp-playground/wordpress": "0.9.31", + "ajv": "8.12.0", + "comlink": "^4.4.1", + "ini": "4.1.2" + }, + "engines": { + "node": ">=18.18.0", + "npm": ">=8.11.0" + } + }, + "node_modules/@wp-playground/blueprints/node_modules/ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/@wp-playground/blueprints/node_modules/ini": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.2.tgz", + "integrity": "sha512-AMB1mvwR1pyBFY/nSevUX6y8nJWS63/SzUKD3JyQn97s4xgIdgQPT75IRouIiBAN4yLQBUShNYVW0+UG25daCw==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@wp-playground/blueprints/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true + }, + "node_modules/@wp-playground/cli": { + "version": "0.9.31", + "resolved": "https://registry.npmjs.org/@wp-playground/cli/-/cli-0.9.31.tgz", + "integrity": "sha512-dHsUrj3tz2vbPC13U0aw6XsEw6YqaLmvNwZRWuiFkIxeOHvHzj99BZJAi3NGNjXW4essndGI5nx/H/SwwDmk6w==", "dev": true, "dependencies": { - "@php-wasm/node": "0.6.16", - "@php-wasm/universal": "0.6.16", - "@webcontainer/env": "1.1.1", - "@wp-playground/blueprints": "0.6.16", - "compressible": "2.0.18", - "compression": "1.7.4", + "@php-wasm/logger": "0.9.31", + "@php-wasm/node": "0.9.31", + "@php-wasm/progress": "0.9.31", + "@php-wasm/universal": "0.9.31", + "@wp-playground/blueprints": "0.9.31", + "@wp-playground/common": "0.9.31", + "@wp-playground/wordpress": "0.9.31", + "ajv": "8.12.0", + "comlink": "^4.4.1", "express": "4.19.2", - "follow-redirects": "1.15.6", "fs-extra": "11.1.1", - "hpagent": "1.2.0", - "unzipper": "0.10.11", + "ini": "4.1.2", + "ws": "8.18.0", "yargs": "17.7.2" }, "bin": { - "wp-now": "with-node-version.js" + "cli": "wp-playground.js" } }, - "node_modules/@wp-now/wp-now/node_modules/fs-extra": { + "node_modules/@wp-playground/cli/node_modules/ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/@wp-playground/cli/node_modules/fs-extra": { "version": "11.1.1", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.1.1.tgz", "integrity": "sha512-MGIE4HOvQCeUCzmlHs0vXpih4ysz4wg9qiSAu6cd42lVwPbTM1TjV7RusoyQqMmk/95gdQZX72u+YW+c3eEpFQ==", @@ -9389,7 +9514,22 @@ "node": ">=14.14" } }, - "node_modules/@wp-now/wp-now/node_modules/universalify": { + "node_modules/@wp-playground/cli/node_modules/ini": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.2.tgz", + "integrity": "sha512-AMB1mvwR1pyBFY/nSevUX6y8nJWS63/SzUKD3JyQn97s4xgIdgQPT75IRouIiBAN4yLQBUShNYVW0+UG25daCw==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@wp-playground/cli/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true + }, + "node_modules/@wp-playground/cli/node_modules/universalify": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", @@ -9398,16 +9538,61 @@ "node": ">= 10.0.0" } }, - "node_modules/@wp-playground/blueprints": { - "version": "0.6.16", - "resolved": "https://registry.npmjs.org/@wp-playground/blueprints/-/blueprints-0.6.16.tgz", - "integrity": "sha512-mKlmAPR8mBcz5azSlTZUzXEfFKDG7kHFUaA8wAUGpMN3BEsjMn0tje3t8R602WgSZCwHSeTXFHXTHtdPVXuvDg==", + "node_modules/@wp-playground/common": { + "version": "0.9.31", + "resolved": "https://registry.npmjs.org/@wp-playground/common/-/common-0.9.31.tgz", + "integrity": "sha512-zXnFBr+Zqq7z9eRLxuCFNHZ4vaj8kq9PhDmh4bZEFkK1kSyevRe1/NuyitjSOVzRUNipzJ++/7g0aQnpGqxgkQ==", "dev": true, + "dependencies": { + "@php-wasm/universal": "0.9.31", + "@php-wasm/util": "0.9.31", + "comlink": "^4.4.1", + "ini": "4.1.2" + }, "engines": { "node": ">=18.18.0", "npm": ">=8.11.0" } }, + "node_modules/@wp-playground/common/node_modules/ini": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.2.tgz", + "integrity": "sha512-AMB1mvwR1pyBFY/nSevUX6y8nJWS63/SzUKD3JyQn97s4xgIdgQPT75IRouIiBAN4yLQBUShNYVW0+UG25daCw==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@wp-playground/wordpress": { + "version": "0.9.31", + "resolved": "https://registry.npmjs.org/@wp-playground/wordpress/-/wordpress-0.9.31.tgz", + "integrity": "sha512-8rj2tFaBJQ7sHym657gRCaCDj/+ddTrPeTmeJ43y/2W1BS0t07tMhrWsfPhJy3eccMn8nYqQUXhIzebfI79ocA==", + "dev": true, + "dependencies": { + "@php-wasm/node": "0.9.31", + "@php-wasm/universal": "0.9.31", + "@php-wasm/util": "0.9.31", + "@wp-playground/common": "0.9.31", + "comlink": "^4.4.1", + "express": "4.19.2", + "ini": "4.1.2", + "ws": "8.18.0", + "yargs": "17.7.2" + }, + "engines": { + "node": ">=18.18.0", + "npm": ">=8.11.0" + } + }, + "node_modules/@wp-playground/wordpress/node_modules/ini": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.2.tgz", + "integrity": "sha512-AMB1mvwR1pyBFY/nSevUX6y8nJWS63/SzUKD3JyQn97s4xgIdgQPT75IRouIiBAN4yLQBUShNYVW0+UG25daCw==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/@xtuc/ieee754": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", @@ -10435,15 +10620,6 @@ "dev": true, "license": "MIT" }, - "node_modules/big-integer": { - "version": "1.6.52", - "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.52.tgz", - "integrity": "sha512-QxD8cf2eVqJOOz63z6JIN9BzvVs/dlySa5HGSBH5xtR8dPteIRQnBxxKqkNTiT6jbDTF6jAfrd4oMcND9RGbQg==", - "dev": true, - "engines": { - "node": ">=0.6" - } - }, "node_modules/big.js": { "version": "5.2.2", "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", @@ -10454,19 +10630,6 @@ "node": "*" } }, - "node_modules/binary": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/binary/-/binary-0.3.0.tgz", - "integrity": "sha512-D4H1y5KYwpJgK8wk1Cue5LLPgmwHKYSChkbspQg5JtVuR5ulGckxfR62H3AE9UDkdMC8yyXlqYihuz3Aqg2XZg==", - "dev": true, - "dependencies": { - "buffers": "~0.1.1", - "chainsaw": "~0.1.0" - }, - "engines": { - "node": "*" - } - }, "node_modules/binary-extensions": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", @@ -10517,12 +10680,6 @@ "ieee754": "^1.1.13" } }, - "node_modules/bluebird": { - "version": "3.4.7", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.4.7.tgz", - "integrity": "sha512-iD3898SR7sWVRHbiQv+sHUtHnMvC1o3nW5rAcqnq3uOn07DSAppZYUkIGslDz6gXC7HfunPe7YVBgoEJASPcHA==", - "dev": true - }, "node_modules/body-parser": { "version": "1.20.2", "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz", @@ -10715,24 +10872,6 @@ "dev": true, "license": "MIT" }, - "node_modules/buffer-indexof-polyfill": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/buffer-indexof-polyfill/-/buffer-indexof-polyfill-1.0.2.tgz", - "integrity": "sha512-I7wzHwA3t1/lwXQh+A5PbNvJxgfo5r3xulgpYDB5zckTu/Z9oUK9biouBKQUjEqzaz3HnAT6TYoovmE+GqSf7A==", - "dev": true, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/buffers": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/buffers/-/buffers-0.1.1.tgz", - "integrity": "sha512-9q/rDEGSb/Qsvv2qvzIzdluL5k7AaJOTrw23z9reQthrbF7is4CtlT0DXyO1oei2DCp4uojjzQ7igaSHp1kAEQ==", - "dev": true, - "engines": { - "node": ">=0.2.0" - } - }, "node_modules/builtin-modules": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz", @@ -10926,18 +11065,6 @@ "upper-case-first": "^2.0.2" } }, - "node_modules/chainsaw": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/chainsaw/-/chainsaw-0.1.0.tgz", - "integrity": "sha512-75kWfWt6MEKNC8xYXIdRpDehRYY/tNSgwKaJq+dbbDcxORuVrrQ+SEHoWsniVn9XPYfP4gmdWIeDk/4YNp1rNQ==", - "dev": true, - "dependencies": { - "traverse": ">=0.3.0 <0.4" - }, - "engines": { - "node": "*" - } - }, "node_modules/chalk": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", @@ -12907,51 +13034,6 @@ "dev": true, "license": "MIT" }, - "node_modules/duplexer2": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", - "integrity": "sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA==", - "dev": true, - "dependencies": { - "readable-stream": "^2.0.2" - } - }, - "node_modules/duplexer2/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true - }, - "node_modules/duplexer2/node_modules/readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", - "dev": true, - "dependencies": { - "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" - } - }, - "node_modules/duplexer2/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "node_modules/duplexer2/node_modules/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, - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, "node_modules/ee-first": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", @@ -15088,22 +15170,6 @@ "node": "^8.16.0 || ^10.6.0 || >=11.0.0" } }, - "node_modules/fstream": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz", - "integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==", - "deprecated": "This package is no longer supported.", - "dev": true, - "dependencies": { - "graceful-fs": "^4.1.2", - "inherits": "~2.0.0", - "mkdirp": ">=0.5 0", - "rimraf": "2" - }, - "engines": { - "node": ">=0.6" - } - }, "node_modules/function-bind": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", @@ -15770,15 +15836,6 @@ "safe-buffer": "~5.1.0" } }, - "node_modules/hpagent": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/hpagent/-/hpagent-1.2.0.tgz", - "integrity": "sha512-A91dYTeIB6NoXG+PxTQpCCDDnfHsW9kc06Lvpu1TEe9gnd6ZFeiBoRO9JvzEv6xK7EX97/dUE8g/vBMTqTS3CA==", - "dev": true, - "engines": { - "node": ">=14" - } - }, "node_modules/hpq": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/hpq/-/hpq-1.4.0.tgz", @@ -19957,12 +20014,6 @@ "uc.micro": "^1.0.1" } }, - "node_modules/listenercount": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/listenercount/-/listenercount-1.0.1.tgz", - "integrity": "sha512-3mk/Zag0+IJxeDrxSgaDPy4zZ3w05PRZeJNnlWhzFz5OkX49J4krc+A8X2d2M69vGMBEX0uyl8M+W+8gH+kBqQ==", - "dev": true - }, "node_modules/loader-runner": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", @@ -24676,12 +24727,6 @@ "node": ">= 0.4" } }, - "node_modules/setimmediate": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==", - "dev": true - }, "node_modules/setprototypeof": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", @@ -26721,15 +26766,6 @@ "node": ">=12" } }, - "node_modules/traverse": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.3.9.tgz", - "integrity": "sha512-iawgk0hLP3SxGKDfnDJf8wTz4p2qImnyihM5Hh/sGvQ3K37dPi/w8sRhdNIxYA1TwFwc5mDhIJq+O0RsvXBKdQ==", - "dev": true, - "engines": { - "node": "*" - } - }, "node_modules/tree-kill": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", @@ -27153,60 +27189,6 @@ "node": ">= 0.8" } }, - "node_modules/unzipper": { - "version": "0.10.11", - "resolved": "https://registry.npmjs.org/unzipper/-/unzipper-0.10.11.tgz", - "integrity": "sha512-+BrAq2oFqWod5IESRjL3S8baohbevGcVA+teAIOYWM3pDVdseogqbzhhvvmiyQrUNKFUnDMtELW3X8ykbyDCJw==", - "dev": true, - "dependencies": { - "big-integer": "^1.6.17", - "binary": "~0.3.0", - "bluebird": "~3.4.1", - "buffer-indexof-polyfill": "~1.0.0", - "duplexer2": "~0.1.4", - "fstream": "^1.0.12", - "graceful-fs": "^4.2.2", - "listenercount": "~1.0.1", - "readable-stream": "~2.3.6", - "setimmediate": "~1.0.4" - } - }, - "node_modules/unzipper/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true - }, - "node_modules/unzipper/node_modules/readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", - "dev": true, - "dependencies": { - "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" - } - }, - "node_modules/unzipper/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "node_modules/unzipper/node_modules/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, - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, "node_modules/update-browserslist-db": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.0.tgz", diff --git a/package.json b/package.json index b37584b1e..8d0489464 100644 --- a/package.json +++ b/package.json @@ -39,7 +39,7 @@ "pretest:unit:php": "wp-env start --xdebug", "test:unit:php": "wp-env run tests-wordpress php -dxdebug.mode=coverage /var/www/html/wp-content/plugins/gatherpress/vendor/bin/phpunit -c /var/www/html/wp-content/plugins/gatherpress/phpunit.xml.dist --coverage-clover=coverage.xml --coverage-html=build/coverage-report", "wp-env": "wp-env", - "wp-now": "wp-now start --port=8889 --php=8.2 --blueprint=test/e2e/wp-now.json --skip-browser" + "playground": "./node_modules/@wp-playground/cli/wp-playground.js server --mount=./:/wordpress/wp-content/plugins/gatherpress --blueprint=./test/e2e/blueprint.json" }, "repository": { "type": "git", @@ -79,7 +79,7 @@ "@wordpress/notices": "^5.4.0", "@wordpress/plugins": "^7.4.0", "@wordpress/scripts": "^28.4.0", - "@wp-now/wp-now": "^0.1.74", + "@wp-playground/cli": "^0.9.31", "classnames": "^2.5.1", "dotenv": "^16.4.5", "eslint": "^8.57.0", diff --git a/test/e2e/blueprint.json b/test/e2e/blueprint.json new file mode 100644 index 000000000..95f37cb1c --- /dev/null +++ b/test/e2e/blueprint.json @@ -0,0 +1,39 @@ +{ + "$schema": "https://playground.wordpress.net/blueprint-schema.json", + "preferredVersions": { + "php": "8.2", + "wp": "latest" + }, + "phpExtensionBundles": [ + "kitchen-sink" + ], + "features": { + "networking": true + }, + "steps": [ + { + "step": "defineWpConfigConsts", + "consts": { + "WP_DEBUG": false, + "WP_DEBUG_DISPLAY": false, + "WP_DEBUG_LOG": "/wordpress/wp-content/plugins/gatherpress/artifacts/debug.log", + "GATHERPRESS_ALPHA_VERSION": 1 + } + }, + { + "step": "login" + }, + { + "step": "activatePlugin", + "pluginName": "gatherpress", + "pluginPath": "/wordpress/wp-content/plugins/gatherpress" + }, + { + "step": "importWxr", + "file": { + "resource": "url", + "url": "https://raw.githubusercontent.com/GatherPress/demo-data/main/GatherPress-demo-data-2024.xml" + } + } + ] +} \ No newline at end of file diff --git a/test/e2e/playwright.config.ts b/test/e2e/playwright.config.ts index 8f04c509c..a985f39a9 100644 --- a/test/e2e/playwright.config.ts +++ b/test/e2e/playwright.config.ts @@ -12,6 +12,8 @@ import { defineConfig, devices } from '@playwright/test'; const { ...baseConfig } = require('@wordpress/scripts/config/playwright.config'); +// import baseConfig from '@wordpress/scripts/config/playwright.config.js'; + export default defineConfig({ ...baseConfig, @@ -32,15 +34,15 @@ export default defineConfig({ use: { ...devices['Desktop Chrome'] }, }, - // { - // name: 'firefox', - // use: { ...devices['Desktop Firefox'] }, - // }, + { + name: 'firefox', + use: { ...devices['Desktop Firefox'] }, + }, - // { - // name: 'webkit', - // use: { ...devices['Desktop Safari'] }, - // }, + { + name: 'webkit', + use: { ...devices['Desktop Safari'] }, + }, /* Test against mobile viewports. */ // { @@ -62,10 +64,17 @@ export default defineConfig({ // use: { ...devices['Desktop Chrome'], channel: 'chrome' }, // }, ], + // Don't report slow test "files", as we will be running our tests in serial. + reportSlowTests: null, webServer: { - command: 'npm run wp-now', - port: 8889, + ...baseConfig.webServer, + command: 'set WP_BASE_URL=http://127.0.0.1:9400/ && npm run playground', timeout: 120_000, // 120 seconds. - reuseExistingServer: true, + port: 9400, + reuseExistingServer: !process.env.CI, + }, + use: { + ...baseConfig.use, + baseURL: 'http://127.0.0.1:9400', }, }); diff --git a/test/e2e/wp-now.json b/test/e2e/wp-now.json deleted file mode 100644 index 3b4566a71..000000000 --- a/test/e2e/wp-now.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "$schema": "https://playground.wordpress.net/blueprint-schema.json", - "preferredVersions": { - "php": "8.2", - "wp": "latest" - }, - "phpExtensionBundles": [ - "kitchen-sink" - ], - "features": { - "networking": true - }, - "steps": [ - { - "step": "defineWpConfigConsts", - "consts": { - "WP_DEBUG": false, - "WP_DEBUG_DISPLAY": false, - "WP_DEBUG_LOG": "/var/www/html/wp-content/plugins/gatherpress/artifacts/debug.log", - "GATHERPRESS_ALPHA_VERSION": 1 - } - }, - { - "step": "login", - "username": "admin", - "password": "password" - }, - { - "step": "mkdir", - "path": "/wordpress/wp-content" - }, - { - "step": "writeFile", - "path": "/wordpress/wp-content/gatherpress-demo-data.zip", - "data": { - "resource": "url", - "url": "https://github-proxy.com/proxy/?repo=GatherPress/demo-data", - "caption": "Downloading Demo data repo." - }, - "progress": { - "weight": 2, - "caption": "Applying Demo data." - } - }, - { - "step": "unzip", - "zipFile": { - "resource": "vfs", - "path": "/wordpress/wp-content/gatherpress-demo-data.zip" - }, - "extractToPath": "/wordpress/wp-content" - }, - { - "step": "installPlugin", - "pluginZipFile": { - "resource": "url", - "url": "https://github-proxy.com/proxy/?repo=humanmade/WordPress-Importer" - } - }, - { - "step": "runPHP", - "code": "min_level = 'info';$options = array( 'fetch_attachments' => false, 'default_author' => 1,);$importer = new WXR_Importer( $options );$importer->set_logger( $logger );$result = $importer->import( $path );" - } - ] -} \ No newline at end of file From 24f174b999709afc2dde5606c6b40c8c61df5f3b Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Wed, 21 Aug 2024 00:54:04 +0200 Subject: [PATCH 059/103] Add env vars --- .github/workflows/e2e-tests.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index 49f817d2b..de067bfac 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -80,6 +80,8 @@ jobs: if: steps.playwright-cache.outputs.cache-hit == 'true' - name: Starting Playwright & Running the tests + env: + WP_BASE_URL: 'http://127.0.0.1:9400' run: | npm run test:e2e From 9c7afb01ec19c1896ffea59e88b99192fffef8f9 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Wed, 21 Aug 2024 01:11:43 +0200 Subject: [PATCH 060/103] Try reducing timeouts --- test/e2e/blueprint.json | 7 +++++++ test/e2e/playwright.config.ts | 4 ++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/test/e2e/blueprint.json b/test/e2e/blueprint.json index 95f37cb1c..3ae153e63 100644 --- a/test/e2e/blueprint.json +++ b/test/e2e/blueprint.json @@ -10,6 +10,12 @@ "features": { "networking": true }, + "constants": { + "WP_HTTP_BLOCK_EXTERNAL": "true" + }, + "siteOptions": { + "permalink_structure": "/%postname%/" + }, "steps": [ { "step": "defineWpConfigConsts", @@ -17,6 +23,7 @@ "WP_DEBUG": false, "WP_DEBUG_DISPLAY": false, "WP_DEBUG_LOG": "/wordpress/wp-content/plugins/gatherpress/artifacts/debug.log", + "DISABLE_WP_CRON": true, "GATHERPRESS_ALPHA_VERSION": 1 } }, diff --git a/test/e2e/playwright.config.ts b/test/e2e/playwright.config.ts index a985f39a9..d62f6d929 100644 --- a/test/e2e/playwright.config.ts +++ b/test/e2e/playwright.config.ts @@ -12,7 +12,6 @@ import { defineConfig, devices } from '@playwright/test'; const { ...baseConfig } = require('@wordpress/scripts/config/playwright.config'); -// import baseConfig from '@wordpress/scripts/config/playwright.config.js'; export default defineConfig({ @@ -69,12 +68,13 @@ export default defineConfig({ webServer: { ...baseConfig.webServer, command: 'set WP_BASE_URL=http://127.0.0.1:9400/ && npm run playground', - timeout: 120_000, // 120 seconds. + // timeout: 180_000, // 180 seconds. port: 9400, reuseExistingServer: !process.env.CI, }, use: { ...baseConfig.use, baseURL: 'http://127.0.0.1:9400', + actionTimeout: 15_000, // 10 seconds +5 seconds to help webkit tests pass. }, }); From 3af1d2e321df375fe9cd01d283cf16205c03e002 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Wed, 21 Aug 2024 14:03:39 +0200 Subject: [PATCH 061/103] Fix CS --- test/e2e/playwright.config.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/test/e2e/playwright.config.ts b/test/e2e/playwright.config.ts index d62f6d929..701358f3a 100644 --- a/test/e2e/playwright.config.ts +++ b/test/e2e/playwright.config.ts @@ -13,7 +13,6 @@ const { ...baseConfig } = require('@wordpress/scripts/config/playwright.config'); - export default defineConfig({ ...baseConfig, From 17179031bf5797a1e970f778f8523a49533b8ee8 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Thu, 22 Aug 2024 00:24:54 +0200 Subject: [PATCH 062/103] Add debuging example to docs --- docs/contributor/e2e-tests/README.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/docs/contributor/e2e-tests/README.md b/docs/contributor/e2e-tests/README.md index 4eecbee18..342e467f3 100644 --- a/docs/contributor/e2e-tests/README.md +++ b/docs/contributor/e2e-tests/README.md @@ -51,6 +51,16 @@ _Choose one of the following options_ npm run test:e2e:debug ``` + Run all the tests against a specific project. + ```bash + npm run test:e2e:debug -- project=webkit + ``` +* + Run files that have *blocks.spec* in the file name. + ```bash + npm run test:e2e:debug -- blocks.spec + ``` + > [!NOTE] > When writing a test, using the debug mode is recommended since it will allow you to see the browser and the test in action. From 67cf8db2ef13841e45fb4a519e073bafff23f9b4 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Thu, 22 Aug 2024 00:59:53 +0200 Subject: [PATCH 063/103] Update docs with 'Playground CLI' --- docs/contributor/e2e-tests/README.md | 41 ++++++++++++++++++---------- 1 file changed, 26 insertions(+), 15 deletions(-) diff --git a/docs/contributor/e2e-tests/README.md b/docs/contributor/e2e-tests/README.md index 342e467f3..f95ae02f1 100644 --- a/docs/contributor/e2e-tests/README.md +++ b/docs/contributor/e2e-tests/README.md @@ -1,10 +1,10 @@ ## E2E Testing using Playwright and `wp-now` -GatherPress allows to run **automated & manual end-to-end tests**, while sharing the same, `wp-now` based, setup. +GatherPress allows to run **automated & manual end-to-end tests**, while sharing the same, [`wp-playground/cli`](https://github.com/WordPress/wordpress-playground/pull/1289) powered, setup. The started playground imports the [`GatherPress/demo-data`](https://github.com/GatherPress/demo-data), that can be used instead of mocks or fixtures. ## Automated tests -Check the results of the _e2e-tests action workflow_ at `https://github.com/GatherPress/gatherpress/actions/workflows/e2e-tests.yml`. +Check the results of the [_e2e-tests action workflow_](https://github.com/GatherPress/gatherpress/actions/workflows/e2e-tests.yml) at `https://github.com/GatherPress/gatherpress/actions/workflows/e2e-tests.yml`. ## Manual testing @@ -19,15 +19,17 @@ npx playwright install --with-deps > [!NOTE] > You also need to use Node.js 20 or later -Create the testing instance using the following command: +Install the dependencies to create the testing instance, using the following command: ```bash npm ci --legacy-peer-deps ``` -This will create a `wp-now` WordPress instance. The port is `8889` and the user is `admin` and the password is `password` (the same values used by `wp-env` testing instance). +### Run the E2E tests -### How to run the E2E tests +A call to `npm run test:e2e...` will automatically setup a `wp-playground/cli` powered WordPress instance. + +The testing is website is reachable at `http://127.0.0.1:9400`, the user is `admin` and the password is `password`. _Choose one of the following options_ @@ -55,10 +57,10 @@ _Choose one of the following options_ ```bash npm run test:e2e:debug -- project=webkit ``` -* - Run files that have *blocks.spec* in the file name. + + Run files that have *events.spec* in the file name. ```bash - npm run test:e2e:debug -- blocks.spec + npm run test:e2e:debug -- events.spec ``` > [!NOTE] @@ -67,16 +69,25 @@ _Choose one of the following options_ 4. Run Tests independently _AND_ visually using the [Playwright VSCode extension](https://playwright.dev/docs/getting-started-vscode) -### Learn more about E2E testing +### More about E2E testing -Resources: +#### Start here: - [Playwright Documentation](https://playwright.dev/docs/intro) -- https://github.com/WordPress/gutenberg/blob/trunk/packages/e2e-test-utils-playwright/README.md -- https://developer.wordpress.org/block-editor/contributors/code/testing-overview/e2e/ -- https://developer.wordpress.org/block-editor/contributors/code/testing-overview/e2e/overusing-snapshots/ -- https://wordpress.com/blog/2023/05/23/wp-now-launch-a-local-environment-in-seconds/ -- https://www.npmjs.com/package/@wp-now/wp-now +- [End-To-End Playwright test utils for WordPress](https://github.com/WordPress/gutenberg/blob/trunk/packages/e2e-test-utils-playwright/README.md) + +#### from the WordPress handbooks + +- [End-to-End Testing – Block Editor Handbook | Developer.WordPress.org](https://developer.wordpress.org/block-editor/contributors/code/testing-overview/e2e/) +- [Overusing snapshots – Block Editor Handbook | Developer.WordPress.org](https://developer.wordpress.org/block-editor/contributors/code/testing-overview/e2e/overusing-snapshots/) + +### More about `wp-playground/cli`, as the testing environment + +Examples with great documentation: + +- [Playground CLI · WordPress/wordpress-playground#1289](https://github.com/WordPress/wordpress-playground/pull/1289) +- [PoC: Run E2E tests with WP Playground · WordPress/gutenberg#62692](https://github.com/WordPress/gutenberg/pull/62692) +- [Use WordPress Playground · swissspidy/wp-performance-action#173](https://github.com/swissspidy/wp-performance-action/pull/173) To see more examples of E2E tests, check the Gutenberg repository: https://github.com/WordPress/gutenberg/tree/trunk/test/e2e From 907e977fe7d1b13303984211767b5182c54f3b96 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Thu, 22 Aug 2024 14:54:15 +0200 Subject: [PATCH 064/103] TRY FIX // webkit // Gutenberg: "Headless webkit won't receive dataTransfer with custom types in the drop event on Linux. The solution is to use `xvfb-run` to run the tests." --- .github/workflows/e2e-tests.yml | 27 ++++++++++++++++++--- test/e2e/playwright.config.ts | 42 +++++++++++++++++++++++---------- 2 files changed, 53 insertions(+), 16 deletions(-) diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index de067bfac..3853ac5db 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -79,11 +79,32 @@ jobs: - run: npx playwright install-deps if: steps.playwright-cache.outputs.cache-hit == 'true' - - name: Starting Playwright & Running the tests + # - name: Starting Playwright & Running the tests + # env: + # WP_BASE_URL: 'http://127.0.0.1:9400' + # run: | + # npm run test:e2e + + # - name: Run the tests + # env: + # WP_BASE_URL: 'http://127.0.0.1:9400' + # PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1 + # run: | + # xvfb-run --auto-servernum --server-args="-screen 0 1280x960x24" -- npm run test:e2e + + + - name: Start the server + run: | + npm run playground -- & + + - name: Run the tests env: - WP_BASE_URL: 'http://127.0.0.1:9400' + PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1 run: | - npm run test:e2e + WP_BASE_URL=http://127.0.0.1:9400/ \ + xvfb-run --auto-servernum --server-args="-screen 0 1280x960x24" -- \ + npm run test:e2e + - name: Retain failed test results uses: actions/upload-artifact@v4 diff --git a/test/e2e/playwright.config.ts b/test/e2e/playwright.config.ts index 701358f3a..f9f701baf 100644 --- a/test/e2e/playwright.config.ts +++ b/test/e2e/playwright.config.ts @@ -1,6 +1,7 @@ /** * External dependencies */ +import os from 'os'; import { defineConfig, devices } from '@playwright/test'; /** @@ -39,7 +40,18 @@ export default defineConfig({ { name: 'webkit', - use: { ...devices['Desktop Safari'] }, + use: { + ...devices[ 'Desktop Safari' ], + /** + * Headless webkit won't receive dataTransfer with custom types in the + * drop event on Linux. The solution is to use `xvfb-run` to run the tests. + * ```sh + * xvfb-run npm run test:e2e + * ``` + * See `.github/workflows/e2e-tests.yml` for advanced usages. + */ + headless: os.type() !== 'Linux', + }, }, /* Test against mobile viewports. */ @@ -64,16 +76,20 @@ export default defineConfig({ ], // Don't report slow test "files", as we will be running our tests in serial. reportSlowTests: null, - webServer: { - ...baseConfig.webServer, - command: 'set WP_BASE_URL=http://127.0.0.1:9400/ && npm run playground', - // timeout: 180_000, // 180 seconds. - port: 9400, - reuseExistingServer: !process.env.CI, - }, - use: { - ...baseConfig.use, - baseURL: 'http://127.0.0.1:9400', - actionTimeout: 15_000, // 10 seconds +5 seconds to help webkit tests pass. - }, + // webServer: { + // ...baseConfig.webServer, + // command: 'set WP_BASE_URL=http://127.0.0.1:9400/ && npm run playground', + // // timeout: 180_000, // 180 seconds. + // port: 9400, + // reuseExistingServer: !process.env.CI, + // // reuseExistingServer: true, + // // reuseExistingServer: false, + // }, + // use: { + // ...baseConfig.use, + // baseURL: 'http://127.0.0.1:9400', + // actionTimeout: 15_000, // 10 seconds +5 seconds to help webkit tests pass. + // }, + retries: 0, + webServer: undefined, }); From d1ad1387c4cc4002f932dc69f992b02351af0500 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Wed, 4 Sep 2024 22:56:44 +0200 Subject: [PATCH 065/103] Define a matrix of php versions to test against --- .github/workflows/e2e-tests.yml | 10 +++++++--- test/e2e/blueprint.json | 4 ---- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index 3853ac5db..9b02f646c 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -28,8 +28,12 @@ jobs: runs-on: ubuntu-latest strategy: fail-fast: false - # matrix: - # node: ['14'] + max-parallel: 1 # Prevent parallel runs to make use of the caching for node_modules and playwright browsers + matrix: + php: [ + '7.4', + '8.3' + ] steps: - name: Checkout @@ -110,5 +114,5 @@ jobs: uses: actions/upload-artifact@v4 if: failure() with: - name: test-results-matrix-less-debugging + name: test-results-${{ matrix.php }} path: artifacts/test-results/ diff --git a/test/e2e/blueprint.json b/test/e2e/blueprint.json index 3ae153e63..7b4be0ebe 100644 --- a/test/e2e/blueprint.json +++ b/test/e2e/blueprint.json @@ -1,9 +1,5 @@ { "$schema": "https://playground.wordpress.net/blueprint-schema.json", - "preferredVersions": { - "php": "8.2", - "wp": "latest" - }, "phpExtensionBundles": [ "kitchen-sink" ], From ab1c527f5c265cd50f23e6b7ffbbd9bd9268a6c7 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Wed, 4 Sep 2024 22:57:44 +0200 Subject: [PATCH 066/103] Start the Playground before Playwright --- .github/workflows/e2e-tests.yml | 31 ++++++++++++------------------- package.json | 3 ++- test/e2e/playwright.config.ts | 26 +++++++++++--------------- 3 files changed, 25 insertions(+), 35 deletions(-) diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index 9b02f646c..280e04598 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -83,29 +83,22 @@ jobs: - run: npx playwright install-deps if: steps.playwright-cache.outputs.cache-hit == 'true' - # - name: Starting Playwright & Running the tests - # env: - # WP_BASE_URL: 'http://127.0.0.1:9400' - # run: | - # npm run test:e2e - - # - name: Run the tests - # env: - # WP_BASE_URL: 'http://127.0.0.1:9400' - # PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1 - # run: | - # xvfb-run --auto-servernum --server-args="-screen 0 1280x960x24" -- npm run test:e2e - - - - name: Start the server + - name: Starting Playground + # Having this as a separate workflow step, should help making sure Playwright runs only, when this is DONE & READY. + # + # Because it seems to be a problem to "wait on webServer.command" https://github.com/microsoft/playwright/issues/11811 + # & "it seems that globalSetup runs before webServer is started." https://github.com/microsoft/playwright/issues/11811#issuecomment-1040732201 + # + # The "&" is important to allow the next step to start! run: | - npm run playground -- & + npm run playground:mount -- --php=${{ matrix.php }} --blueprint=./test/e2e/blueprint.json & - - name: Run the tests + - name: Starting Playwright & Running the tests env: - PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1 + PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1, + WP_BASE_URL: 'http://127.0.0.1:9400/' run: | - WP_BASE_URL=http://127.0.0.1:9400/ \ + DEBUG=pw:webserver \ xvfb-run --auto-servernum --server-args="-screen 0 1280x960x24" -- \ npm run test:e2e diff --git a/package.json b/package.json index 8d0489464..e2dc28db0 100644 --- a/package.json +++ b/package.json @@ -39,7 +39,8 @@ "pretest:unit:php": "wp-env start --xdebug", "test:unit:php": "wp-env run tests-wordpress php -dxdebug.mode=coverage /var/www/html/wp-content/plugins/gatherpress/vendor/bin/phpunit -c /var/www/html/wp-content/plugins/gatherpress/phpunit.xml.dist --coverage-clover=coverage.xml --coverage-html=build/coverage-report", "wp-env": "wp-env", - "playground": "./node_modules/@wp-playground/cli/wp-playground.js server --mount=./:/wordpress/wp-content/plugins/gatherpress --blueprint=./test/e2e/blueprint.json" + "playground": "./node_modules/@wp-playground/cli/wp-playground.js server", + "playground:mount": "./node_modules/@wp-playground/cli/wp-playground.js server --mount=./:/wordpress/wp-content/plugins/gatherpress" }, "repository": { "type": "git", diff --git a/test/e2e/playwright.config.ts b/test/e2e/playwright.config.ts index f9f701baf..6325fa93d 100644 --- a/test/e2e/playwright.config.ts +++ b/test/e2e/playwright.config.ts @@ -76,20 +76,16 @@ export default defineConfig({ ], // Don't report slow test "files", as we will be running our tests in serial. reportSlowTests: null, - // webServer: { - // ...baseConfig.webServer, - // command: 'set WP_BASE_URL=http://127.0.0.1:9400/ && npm run playground', - // // timeout: 180_000, // 180 seconds. - // port: 9400, - // reuseExistingServer: !process.env.CI, - // // reuseExistingServer: true, - // // reuseExistingServer: false, - // }, - // use: { - // ...baseConfig.use, - // baseURL: 'http://127.0.0.1:9400', - // actionTimeout: 15_000, // 10 seconds +5 seconds to help webkit tests pass. - // }, + use: { + ...baseConfig.use, + baseURL: process.env.WP_BASE_URL || 'http://127.0.0.1:9400', + }, retries: 0, - webServer: undefined, + webServer: { + ...baseConfig.webServer, + command: 'npm run playground:mount -- --blueprint=./test/e2e/blueprint.json', + port: 9400, + // reuseExistingServer: !process.env.CI, + reuseExistingServer: true, + }, }); From 148b7f9acdf35bbc111e1524fd6673625cc90cd9 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Wed, 4 Sep 2024 23:01:26 +0200 Subject: [PATCH 067/103] Cleanup --- test/e2e/blueprint.json | 13 ++++++------- test/e2e/playwright.config.ts | 5 +++-- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/test/e2e/blueprint.json b/test/e2e/blueprint.json index 7b4be0ebe..530a6cca9 100644 --- a/test/e2e/blueprint.json +++ b/test/e2e/blueprint.json @@ -19,18 +19,17 @@ "WP_DEBUG": false, "WP_DEBUG_DISPLAY": false, "WP_DEBUG_LOG": "/wordpress/wp-content/plugins/gatherpress/artifacts/debug.log", - "DISABLE_WP_CRON": true, - "GATHERPRESS_ALPHA_VERSION": 1 + "DISABLE_WP_CRON": true } }, { "step": "login" }, - { - "step": "activatePlugin", - "pluginName": "gatherpress", - "pluginPath": "/wordpress/wp-content/plugins/gatherpress" - }, + { + "step": "activatePlugin", + "pluginName": "gatherpress", + "pluginPath": "/wordpress/wp-content/plugins/gatherpress" + }, { "step": "importWxr", "file": { diff --git a/test/e2e/playwright.config.ts b/test/e2e/playwright.config.ts index 6325fa93d..acba7798b 100644 --- a/test/e2e/playwright.config.ts +++ b/test/e2e/playwright.config.ts @@ -41,7 +41,7 @@ export default defineConfig({ { name: 'webkit', use: { - ...devices[ 'Desktop Safari' ], + ...devices['Desktop Safari'], /** * Headless webkit won't receive dataTransfer with custom types in the * drop event on Linux. The solution is to use `xvfb-run` to run the tests. @@ -83,7 +83,8 @@ export default defineConfig({ retries: 0, webServer: { ...baseConfig.webServer, - command: 'npm run playground:mount -- --blueprint=./test/e2e/blueprint.json', + command: + 'npm run playground:mount -- --blueprint=./test/e2e/blueprint.json', port: 9400, // reuseExistingServer: !process.env.CI, reuseExistingServer: true, From 8fa2c468c274a039515136bedb9ec9396caf67f7 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Thu, 5 Sep 2024 01:41:37 +0200 Subject: [PATCH 068/103] DRY out npm scripts --- package.json | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index e2dc28db0..8e44cafd9 100644 --- a/package.json +++ b/package.json @@ -29,12 +29,10 @@ "screenshots:wporg": "wp-scripts test-playwright --config .github/scripts/wordpress-org-screenshots/playwright.config.ts", "screenshots:wporg:debug": "wp-scripts test-playwright --config .github/scripts/wordpress-org-screenshots/playwright.config.ts --debug", "screenshots:wporg:ui": "wp-scripts test-playwright --config .github/scripts/wordpress-org-screenshots/playwright.config.ts --ui", - "pretest:e2e": "wp-scripts build", - "pretest:e2e:debug": "wp-scripts build", - "pretest:e2e:ui": "wp-scripts build", + "pretest:e2e": "npm run build", "test:e2e": "wp-scripts test-playwright --config test/e2e/playwright.config.ts", - "test:e2e:debug": "wp-scripts test-playwright --config test/e2e/playwright.config.ts --debug", - "test:e2e:ui": "wp-scripts test-playwright --config test/e2e/playwright.config.ts --ui", + "test:e2e:debug": "npm run test:e2e -- --debug", + "test:e2e:ui": "npm run test:e2e -- --ui", "test:unit:js": "wp-scripts test-unit-js --coverage --testResultsProcessor=jest-sonar-reporter", "pretest:unit:php": "wp-env start --xdebug", "test:unit:php": "wp-env run tests-wordpress php -dxdebug.mode=coverage /var/www/html/wp-content/plugins/gatherpress/vendor/bin/phpunit -c /var/www/html/wp-content/plugins/gatherpress/phpunit.xml.dist --coverage-clover=coverage.xml --coverage-html=build/coverage-report", From d962362b84378cf7c9ca9c6f8282a49643465c51 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Thu, 5 Sep 2024 01:59:08 +0200 Subject: [PATCH 069/103] switch from isVisible to toBeVisible --- test/e2e/tests/frontend/rsvp.spec.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/test/e2e/tests/frontend/rsvp.spec.ts b/test/e2e/tests/frontend/rsvp.spec.ts index ff9b8df8d..cd19b3f22 100644 --- a/test/e2e/tests/frontend/rsvp.spec.ts +++ b/test/e2e/tests/frontend/rsvp.spec.ts @@ -55,14 +55,14 @@ test.describe('RSVP to an event', () => { await page .locator('.gatherpress-rsvp-response__items') .first() - .isVisible(); // verified the RSVP button is visible. + .toBeVisible(); // verified the RSVP button is visible. - await page.getByText('Attending').first().isVisible({ timeout: 30000 }); // verified the logged in user perform RSVP action + await page.getByText('Attending').first().toBeVisible({ timeout: 30000 }); // verified the logged in user perform RSVP action await page .locator('.gatherpress-rsvp-response__items') .first() - .isVisible(); // verified the attending users list. + .toBeVisible(); // verified the attending users list. // await page // .locator('.gatherpress-rsvp-response__items') From baaf0c555b0be534d66e114c8addfa6099aa4876 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Thu, 5 Sep 2024 10:46:32 +0200 Subject: [PATCH 070/103] Update docs --- docs/contributor/e2e-tests/README.md | 33 ++++++++++++++++++---------- 1 file changed, 22 insertions(+), 11 deletions(-) diff --git a/docs/contributor/e2e-tests/README.md b/docs/contributor/e2e-tests/README.md index f95ae02f1..18ca4ae6c 100644 --- a/docs/contributor/e2e-tests/README.md +++ b/docs/contributor/e2e-tests/README.md @@ -1,6 +1,6 @@ -## E2E Testing using Playwright and `wp-now` +## End-to-end Testing using Playwright & Playground -GatherPress allows to run **automated & manual end-to-end tests**, while sharing the same, [`wp-playground/cli`](https://github.com/WordPress/wordpress-playground/pull/1289) powered, setup. The started playground imports the [`GatherPress/demo-data`](https://github.com/GatherPress/demo-data), that can be used instead of mocks or fixtures. +GatherPress allows to run **automated & manual end-to-end tests** (e2e), while sharing the same, [`wp-playground/cli`](https://github.com/WordPress/wordpress-playground/pull/1289) powered, setup. The started playground imports the [`GatherPress/demo-data`](https://github.com/GatherPress/demo-data), that can be used instead of mocks or fixtures. ## Automated tests @@ -8,9 +8,11 @@ Check the results of the [_e2e-tests action workflow_](https://github.com/Gather ## Manual testing +The e2e-setup can also be used to **manually run the test suite**. In general, only a Playground instance is needed. + ### Install dependencies -To run the E2E tests you will have to install playwright using the following command: +To run the e2e tests you will have to install playwright using the following command: ```bash npx playwright install --with-deps @@ -19,17 +21,26 @@ npx playwright install --with-deps > [!NOTE] > You also need to use Node.js 20 or later -Install the dependencies to create the testing instance, using the following command: +Install the dependencies to create the Playground testing instance, using the following command: ```bash npm ci --legacy-peer-deps ``` -### Run the E2E tests +### Start the Playground + +A call to `npm run playground:mount` will automatically setup a `wp-playground/cli` powered WordPress instance, already prepared to mount GatherPress from the current directory. + + +```bash +npm run playground:mount -- --blueprint=./test/e2e/blueprint.json +``` + +The testing website is reachable at `http://127.0.0.1:9400`, the user is `admin` and the password is `password`. -A call to `npm run test:e2e...` will automatically setup a `wp-playground/cli` powered WordPress instance. +### Run the e2e tests -The testing is website is reachable at `http://127.0.0.1:9400`, the user is `admin` and the password is `password`. +Now while Playground is running in the background, it's possible to start the testing. _Choose one of the following options_ @@ -69,7 +80,7 @@ _Choose one of the following options_ 4. Run Tests independently _AND_ visually using the [Playwright VSCode extension](https://playwright.dev/docs/getting-started-vscode) -### More about E2E testing +### More about e2e testing #### Start here: @@ -86,10 +97,10 @@ _Choose one of the following options_ Examples with great documentation: - [Playground CLI · WordPress/wordpress-playground#1289](https://github.com/WordPress/wordpress-playground/pull/1289) -- [PoC: Run E2E tests with WP Playground · WordPress/gutenberg#62692](https://github.com/WordPress/gutenberg/pull/62692) +- [PoC: Run e2e tests with WP Playground · WordPress/gutenberg#62692](https://github.com/WordPress/gutenberg/pull/62692) - [Use WordPress Playground · swissspidy/wp-performance-action#173](https://github.com/swissspidy/wp-performance-action/pull/173) -To see more examples of E2E tests, check the Gutenberg repository: https://github.com/WordPress/gutenberg/tree/trunk/test/e2e +To see more examples of e2e tests, check the Gutenberg repository: https://github.com/WordPress/gutenberg/tree/trunk/test/e2e > [!NOTE] -> If you are out of ideas on who to test, check the Gutenberg repository. It has a lot of examples of E2E tests that you can use as a reference. \ No newline at end of file +> If you are out of ideas on who to test, check the Gutenberg repository. It has a lot of examples of e2e tests that you can use as a reference. \ No newline at end of file From 75e481b906dca333fe82d6b279158ecf4eebba36 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Thu, 5 Sep 2024 14:24:21 +0200 Subject: [PATCH 071/103] Prepare preferredVersions for blueprint (until is resolved: https://github.com/WordPress/playground-tools/issues/352) --- .github/workflows/e2e-tests.yml | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index 280e04598..2008c3927 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -83,6 +83,19 @@ jobs: - run: npx playwright install-deps if: steps.playwright-cache.outputs.cache-hit == 'true' + - name: Prepare preferredVersions for blueprint + # playground/cli ignores --php & --wp flags when --blueprint is set + # + # I created an issue at: + # https://github.com/WordPress/playground-tools/issues/352 + run: | + preferredVersions='{ + "php": "${{ matrix.php }}", + "wp": "latest" + }' + echo "Use jq to prepend the preferred versions to the existing blueprint JSON file." + jq --argjson preferredVersions "$preferredVersions" '{preferredVersions: $preferredVersions} + .' ./test/e2e/blueprint.json > temp.blueprint.json + - name: Starting Playground # Having this as a separate workflow step, should help making sure Playwright runs only, when this is DONE & READY. # @@ -91,7 +104,7 @@ jobs: # # The "&" is important to allow the next step to start! run: | - npm run playground:mount -- --php=${{ matrix.php }} --blueprint=./test/e2e/blueprint.json & + npm run playground:mount -- --blueprint=./temp.blueprint.json & - name: Starting Playwright & Running the tests env: From 3647106e7b17dddb5ed4d13b849c7fd674f14e4d Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Wed, 18 Sep 2024 21:05:30 +0200 Subject: [PATCH 072/103] TRYOUT .click({ force: true }) which is ugly, but works :( --- test/e2e/tests/editor/blocks.spec.ts | 15 ++++++++-- test/e2e/tests/editor/events.spec.ts | 42 +++++++++++++++++++++++++--- test/e2e/tests/editor/venues.spec.ts | 5 +++- 3 files changed, 54 insertions(+), 8 deletions(-) diff --git a/test/e2e/tests/editor/blocks.spec.ts b/test/e2e/tests/editor/blocks.spec.ts index 978efea52..1cdee38ea 100644 --- a/test/e2e/tests/editor/blocks.spec.ts +++ b/test/e2e/tests/editor/blocks.spec.ts @@ -17,9 +17,18 @@ test.describe('Blocks & Patterns in the Editor', () => { * @see https://github.com/WordPress/gutenberg/blob/ddadd1a95d18270908ac4a1fd8d6e354cfadf61c/test/e2e/specs/editor/plugins/block-variations.spec.js#L62 */ test('Is 1 block available?', async ({ page }) => { - await page - .getByRole('button', { name: 'Toggle block inserter' }) - .click(); + const inserter = await page + .getByRole('button', { name: 'Toggle block inserter' }); + + // Check if the inserter button is visible + await expect(inserter).toBeVisible(); + + // Ensure the inserter button is enabled before interacting with it + await expect(inserter).toBeEnabled(); + + // Click the inserter button + // Just click() without forcing led to timeouts, timeouts, timeouts... + await inserter.click({ force: true }); await page .getByRole('region', { name: 'Block Library' }) diff --git a/test/e2e/tests/editor/events.spec.ts b/test/e2e/tests/editor/events.spec.ts index 807e22b51..88a2b3a59 100644 --- a/test/e2e/tests/editor/events.spec.ts +++ b/test/e2e/tests/editor/events.spec.ts @@ -1,7 +1,7 @@ /** * WordPress dependencies */ -const { test } = require('@wordpress/e2e-test-utils-playwright'); +const { test, expect } = require('@wordpress/e2e-test-utils-playwright'); test.describe('Events in the Editor', () => { test.beforeEach(async ({ admin, page }) => { @@ -18,16 +18,50 @@ test.describe('Events in the Editor', () => { const panelToggle = page.getByRole('button', { name: 'Event settings', }); + + + // page.pause(); + if ((await panelToggle.getAttribute('aria-expanded')) === 'false') { - await panelToggle.click(); + // Check if the inserter button is visible + await expect(panelToggle).toBeVisible(); + + // Ensure the panelToggle is enabled before interacting with it + await expect(panelToggle).toBeEnabled(); + + // Click the panelToggle + // Just click() without forcing led to timeouts, timeouts, timeouts... + await panelToggle.click({ force: true }); } }); test.afterEach(async ({ editor, page }) => { // Click again to close the element, to let upcoming tests not get flaky. - await page.getByRole('button', { name: 'Event settings' }).click(); - await editor.publishPost(); + const panelToggle = page.getByRole('button', { + name: 'Event settings', + }); + + if ((await panelToggle.getAttribute('aria-expanded')) === 'false') { + // Check if the inserter button is visible + await expect(panelToggle).toBeVisible(); + + // Ensure the panelToggle is enabled before interacting with it + await expect(panelToggle).toBeEnabled(); + + // Click the panelToggle + // Just click() without forcing led to timeouts, timeouts, timeouts... + await panelToggle.click({ force: true }); + } + + await editor.publishPost(); // this is missing the force and doesnt work. + // const publishButton = page.getByRole('button', { + // name: 'Publish', + // }); + + // // Click the publishButton + // // Just click() without forcing led to timeouts, timeouts, timeouts... + // await publishButton.click({ force: true }); }); test('An admin should be able to publish an online event', async ({ diff --git a/test/e2e/tests/editor/venues.spec.ts b/test/e2e/tests/editor/venues.spec.ts index 0c0c7430c..0fa45fe55 100644 --- a/test/e2e/tests/editor/venues.spec.ts +++ b/test/e2e/tests/editor/venues.spec.ts @@ -9,7 +9,8 @@ test.describe('Venues in the Editor', () => { }); test('The admin should be able to create a new Venue.', async ({ - page, + editor, + page }) => { await page.getByLabel('Add title').isVisible(); await page.getByLabel('Add title').fill('Test venue'); @@ -22,6 +23,8 @@ test.describe('Venues in the Editor', () => { .getByLabel('Empty block; start writing or') .fill('test venue information'); + await editor.publishPost(); // this is missing the force and doesnt work. + // await page.getByLabel('Toggle block inserter').click(); // await page.getByRole('option', { name: 'Paragraph' }).click(); // await page.screenshot({ path: 'new-venue.png' }); From b85315a433688c8ca9b7f7103ea9e606cd3bded5 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Tue, 24 Sep 2024 14:27:14 +0200 Subject: [PATCH 073/103] TRY same technique like for the screenshots, use sleep to avoid a race-condiotion between Playground & Playwright --- .github/workflows/e2e-tests.yml | 31 ++++++++++++++++++------------- 1 file changed, 18 insertions(+), 13 deletions(-) diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index 2008c3927..0439741e8 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -80,7 +80,8 @@ jobs: - name: Install Playwright dependencies run: npx playwright install --with-deps if: steps.playwright-cache.outputs.cache-hit != 'true' - - run: npx playwright install-deps + # - run: npx playwright install-deps + - run: npx playwright install --with-deps # DEBUG ONLY if: steps.playwright-cache.outputs.cache-hit == 'true' - name: Prepare preferredVersions for blueprint @@ -96,22 +97,26 @@ jobs: echo "Use jq to prepend the preferred versions to the existing blueprint JSON file." jq --argjson preferredVersions "$preferredVersions" '{preferredVersions: $preferredVersions} + .' ./test/e2e/blueprint.json > temp.blueprint.json - - name: Starting Playground - # Having this as a separate workflow step, should help making sure Playwright runs only, when this is DONE & READY. - # - # Because it seems to be a problem to "wait on webServer.command" https://github.com/microsoft/playwright/issues/11811 - # & "it seems that globalSetup runs before webServer is started." https://github.com/microsoft/playwright/issues/11811#issuecomment-1040732201 - # - # The "&" is important to allow the next step to start! - run: | - npm run playground:mount -- --blueprint=./temp.blueprint.json & + # - name: Starting Playground + # # Having this as a separate workflow step, should help making sure Playwright runs only, when this is DONE & READY. + # # + # # Because it seems to be a problem to "wait on webServer.command" https://github.com/microsoft/playwright/issues/11811 + # # & "it seems that globalSetup runs before webServer is started." https://github.com/microsoft/playwright/issues/11811#issuecomment-1040732201 + # # + # # The "&" is important to allow the next step to start! + # run: | + # npm run playground:mount -- --blueprint=./temp.blueprint.json & - name: Starting Playwright & Running the tests env: - PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1, - WP_BASE_URL: 'http://127.0.0.1:9400/' + # PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1, + # WP_BASE_URL: 'http://127.0.0.1:9400/' run: | - DEBUG=pw:webserver \ + npm run playground:mount -- --blueprint=./temp.blueprint.json & \ + sleep 60 && \ + echo 'Playground is ready now, lets take some pictures.' && \ + WP_BASE_URL='http://127.0.0.1:9400/' \ + DEBUG=pw:api,pw:webserver \ xvfb-run --auto-servernum --server-args="-screen 0 1280x960x24" -- \ npm run test:e2e From b07b06551eeddd126dce923e185ffcd66542c76a Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Tue, 24 Sep 2024 14:31:55 +0200 Subject: [PATCH 074/103] Fix invalid workflow file --- .github/workflows/e2e-tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index 0439741e8..7598d1725 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -108,7 +108,7 @@ jobs: # npm run playground:mount -- --blueprint=./temp.blueprint.json & - name: Starting Playwright & Running the tests - env: + # env: # PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1, # WP_BASE_URL: 'http://127.0.0.1:9400/' run: | From 687a0d11fe3019cd2ef36af9900b7593b03a2e8a Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Tue, 24 Sep 2024 17:05:36 +0200 Subject: [PATCH 075/103] DRY out WP_BASE_URL definition into package.json --- .github/workflows/e2e-tests.yml | 5 ++--- package.json | 2 +- test/e2e/playwright.config.ts | 5 ++--- 3 files changed, 5 insertions(+), 7 deletions(-) diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index 7598d1725..7b0740947 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -56,7 +56,7 @@ jobs: cache: 'npm' # Restoring the short lived node_modules cache - # to be used accross all workflows running on the last commit. + # to be used across all workflows running on the last commit. # https://github.com/actions/cache/blob/main/caching-strategies.md#creating-a-short-lived-cache - uses: actions/cache/restore@v4 id: node_modules-cache @@ -115,8 +115,7 @@ jobs: npm run playground:mount -- --blueprint=./temp.blueprint.json & \ sleep 60 && \ echo 'Playground is ready now, lets take some pictures.' && \ - WP_BASE_URL='http://127.0.0.1:9400/' \ - DEBUG=pw:api,pw:webserver \ + # DEBUG=pw:api,pw:webserver \ xvfb-run --auto-servernum --server-args="-screen 0 1280x960x24" -- \ npm run test:e2e diff --git a/package.json b/package.json index 6046a0eaf..3e76f0ebf 100644 --- a/package.json +++ b/package.json @@ -88,7 +88,7 @@ "screenshots:wporg:debug": "wp-scripts test-playwright --config .github/scripts/wordpress-org-screenshots/playwright.config.ts --debug", "screenshots:wporg:ui": "wp-scripts test-playwright --config .github/scripts/wordpress-org-screenshots/playwright.config.ts --ui", "pretest:e2e": "npm run build", - "test:e2e": "wp-scripts test-playwright --config test/e2e/playwright.config.ts", + "test:e2e": "WP_BASE_URL='http://127.0.0.1:9400/' wp-scripts test-playwright --config test/e2e/playwright.config.ts", "test:e2e:debug": "npm run test:e2e -- --debug", "test:e2e:ui": "npm run test:e2e -- --ui", "test:unit:js": "wp-scripts test-unit-js --coverage --testResultsProcessor=jest-sonar-reporter", diff --git a/test/e2e/playwright.config.ts b/test/e2e/playwright.config.ts index acba7798b..94143f58b 100644 --- a/test/e2e/playwright.config.ts +++ b/test/e2e/playwright.config.ts @@ -83,10 +83,9 @@ export default defineConfig({ retries: 0, webServer: { ...baseConfig.webServer, - command: - 'npm run playground:mount -- --blueprint=./test/e2e/blueprint.json', + command: undefined, + // 'npm run playground:mount -- --blueprint=./test/e2e/blueprint.json', port: 9400, - // reuseExistingServer: !process.env.CI, reuseExistingServer: true, }, }); From efdb4e16948e9ff53d43d9624d4e9403fb11ccbf Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Tue, 24 Sep 2024 17:13:36 +0200 Subject: [PATCH 076/103] Fix for CS --- docs/contributor/e2e-tests/README.md | 23 +++++++++++++---------- test/e2e/tests/editor/blocks.spec.ts | 5 +++-- test/e2e/tests/editor/events.spec.ts | 4 +--- test/e2e/tests/editor/venues.spec.ts | 2 +- test/e2e/tests/frontend/rsvp.spec.ts | 5 ++++- 5 files changed, 22 insertions(+), 17 deletions(-) diff --git a/docs/contributor/e2e-tests/README.md b/docs/contributor/e2e-tests/README.md index 18ca4ae6c..801a9b9af 100644 --- a/docs/contributor/e2e-tests/README.md +++ b/docs/contributor/e2e-tests/README.md @@ -1,10 +1,10 @@ -## End-to-end Testing using Playwright & Playground +# End-to-end Testing using Playwright & Playground GatherPress allows to run **automated & manual end-to-end tests** (e2e), while sharing the same, [`wp-playground/cli`](https://github.com/WordPress/wordpress-playground/pull/1289) powered, setup. The started playground imports the [`GatherPress/demo-data`](https://github.com/GatherPress/demo-data), that can be used instead of mocks or fixtures. ## Automated tests -Check the results of the [_e2e-tests action workflow_](https://github.com/GatherPress/gatherpress/actions/workflows/e2e-tests.yml) at `https://github.com/GatherPress/gatherpress/actions/workflows/e2e-tests.yml`. +Check the results of the [*e2e-tests action workflow*](https://github.com/GatherPress/gatherpress/actions/workflows/e2e-tests.yml) at `https://github.com/GatherPress/gatherpress/actions/workflows/e2e-tests.yml`. ## Manual testing @@ -42,34 +42,37 @@ The testing website is reachable at `http://127.0.0.1:9400`, the user is `admin` Now while Playground is running in the background, it's possible to start the testing. -_Choose one of the following options_ +#### *Choose one of the following options* -1. For the _headless_ mode, use the following command: +1. For the *headless* mode, use the following command: ```bash npm run test:e2e ``` -2. Run Playwright _visually_ (to run tests in isolation and change what's happening), use: +2. Run Playwright *visually* (to run tests in isolation and change what's happening), use: ```bash npm run test:e2e:ui ``` + ![grafik](https://github.com/user-attachments/assets/1627dff7-363e-447e-9981-adac610ac888) -3. For _debug_ mode (which will open the browser along with Playwright Editor and allows you to record what's happening), use the following command: +3. For *debug* mode (which will open the browser along with Playwright Editor and allows you to record what's happening), use the following command: ```bash npm run test:e2e:debug ``` Run all the tests against a specific project. + ```bash npm run test:e2e:debug -- project=webkit ``` Run files that have *events.spec* in the file name. + ```bash npm run test:e2e:debug -- events.spec ``` @@ -77,12 +80,12 @@ _Choose one of the following options_ > [!NOTE] > When writing a test, using the debug mode is recommended since it will allow you to see the browser and the test in action. -4. Run Tests independently _AND_ visually using the [Playwright VSCode extension](https://playwright.dev/docs/getting-started-vscode) +4. Run Tests independently *AND* visually using the [Playwright VSCode extension](https://playwright.dev/docs/getting-started-vscode) ### More about e2e testing -#### Start here: +#### Start here - [Playwright Documentation](https://playwright.dev/docs/intro) - [End-To-End Playwright test utils for WordPress](https://github.com/WordPress/gutenberg/blob/trunk/packages/e2e-test-utils-playwright/README.md) @@ -100,7 +103,7 @@ Examples with great documentation: - [PoC: Run e2e tests with WP Playground · WordPress/gutenberg#62692](https://github.com/WordPress/gutenberg/pull/62692) - [Use WordPress Playground · swissspidy/wp-performance-action#173](https://github.com/swissspidy/wp-performance-action/pull/173) -To see more examples of e2e tests, check the Gutenberg repository: https://github.com/WordPress/gutenberg/tree/trunk/test/e2e +To see more examples of e2e tests, check the Gutenberg repository: [github.com/WordPress/gutenberg/tree/trunk/test/e2e](https://github.com/WordPress/gutenberg/tree/trunk/test/e2e) > [!NOTE] -> If you are out of ideas on who to test, check the Gutenberg repository. It has a lot of examples of e2e tests that you can use as a reference. \ No newline at end of file +> If you are out of ideas on who to test, check the Gutenberg repository. It has a lot of examples of e2e tests that you can use as a reference. diff --git a/test/e2e/tests/editor/blocks.spec.ts b/test/e2e/tests/editor/blocks.spec.ts index 1cdee38ea..4b494d10c 100644 --- a/test/e2e/tests/editor/blocks.spec.ts +++ b/test/e2e/tests/editor/blocks.spec.ts @@ -17,8 +17,9 @@ test.describe('Blocks & Patterns in the Editor', () => { * @see https://github.com/WordPress/gutenberg/blob/ddadd1a95d18270908ac4a1fd8d6e354cfadf61c/test/e2e/specs/editor/plugins/block-variations.spec.js#L62 */ test('Is 1 block available?', async ({ page }) => { - const inserter = await page - .getByRole('button', { name: 'Toggle block inserter' }); + const inserter = await page.getByRole('button', { + name: 'Toggle block inserter', + }); // Check if the inserter button is visible await expect(inserter).toBeVisible(); diff --git a/test/e2e/tests/editor/events.spec.ts b/test/e2e/tests/editor/events.spec.ts index 88a2b3a59..ee4ef0e58 100644 --- a/test/e2e/tests/editor/events.spec.ts +++ b/test/e2e/tests/editor/events.spec.ts @@ -18,10 +18,8 @@ test.describe('Events in the Editor', () => { const panelToggle = page.getByRole('button', { name: 'Event settings', }); - - - // page.pause(); + // page.pause(); if ((await panelToggle.getAttribute('aria-expanded')) === 'false') { // Check if the inserter button is visible diff --git a/test/e2e/tests/editor/venues.spec.ts b/test/e2e/tests/editor/venues.spec.ts index 0fa45fe55..2f484276d 100644 --- a/test/e2e/tests/editor/venues.spec.ts +++ b/test/e2e/tests/editor/venues.spec.ts @@ -10,7 +10,7 @@ test.describe('Venues in the Editor', () => { test('The admin should be able to create a new Venue.', async ({ editor, - page + page, }) => { await page.getByLabel('Add title').isVisible(); await page.getByLabel('Add title').fill('Test venue'); diff --git a/test/e2e/tests/frontend/rsvp.spec.ts b/test/e2e/tests/frontend/rsvp.spec.ts index cd19b3f22..edb4e4bc5 100644 --- a/test/e2e/tests/frontend/rsvp.spec.ts +++ b/test/e2e/tests/frontend/rsvp.spec.ts @@ -57,7 +57,10 @@ test.describe('RSVP to an event', () => { .first() .toBeVisible(); // verified the RSVP button is visible. - await page.getByText('Attending').first().toBeVisible({ timeout: 30000 }); // verified the logged in user perform RSVP action + await page + .getByText('Attending') + .first() + .toBeVisible({ timeout: 30000 }); // verified the logged in user perform RSVP action await page .locator('.gatherpress-rsvp-response__items') From e405a0f8af711447f0142072e33eed35db56a470 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Tue, 24 Sep 2024 17:29:24 +0200 Subject: [PATCH 077/103] TRYOUT .click({ force: true }) which is ugly, but works :( --- test/e2e/tests/frontend/rsvp.spec.ts | 34 ++++++++++++++++------------ 1 file changed, 20 insertions(+), 14 deletions(-) diff --git a/test/e2e/tests/frontend/rsvp.spec.ts b/test/e2e/tests/frontend/rsvp.spec.ts index edb4e4bc5..815aa12ff 100644 --- a/test/e2e/tests/frontend/rsvp.spec.ts +++ b/test/e2e/tests/frontend/rsvp.spec.ts @@ -1,7 +1,7 @@ /** * WordPress dependencies */ -const { test } = require('@wordpress/e2e-test-utils-playwright'); +const { test, expect } = require('@wordpress/e2e-test-utils-playwright'); test.describe('RSVP to an event', () => { /* @@ -42,29 +42,35 @@ test.describe('RSVP to an event', () => { test('A logged in user can perform RSVP action', async ({ page }) => { await page.goto('/'); - await page.getByRole('link', { name: 'Events' }).click(); // Imported from of https://github.com/GatherPress/demo-data + await page.getByRole('link', { name: 'Events' }).click({ force: true }); // Imported from of https://github.com/GatherPress/demo-data await page.evaluate(() => window.scrollTo(0, 5000)); await page .getByRole('link', { name: 'RSVP' }) .first() - .click({ timeout: 60000 }); + .click({ force: true, timeout: 60000 }); - await page.locator('a').filter({ hasText: 'Attend' }).click(); - await page.getByText('Close').click(); - await page - .locator('.gatherpress-rsvp-response__items') - .first() + await page.locator('a').filter({ hasText: 'Attend' }).click({ force: true }); + await page.getByText('Close').click({ force: true }); + await expect( + page + .locator('.gatherpress-rsvp-response__items') + .first() + ) .toBeVisible(); // verified the RSVP button is visible. - await page - .getByText('Attending') - .first() + await expect( + page + .getByText('Attending') + .first() + ) .toBeVisible({ timeout: 30000 }); // verified the logged in user perform RSVP action - await page - .locator('.gatherpress-rsvp-response__items') - .first() + await expect( + page + .locator('.gatherpress-rsvp-response__items') + .first() + ) .toBeVisible(); // verified the attending users list. // await page From b8fd761547c2e1ddb3a28c2c490dc52df64b78d1 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Tue, 24 Sep 2024 22:46:32 +0200 Subject: [PATCH 078/103] Fix for CS --- test/e2e/tests/frontend/rsvp.spec.ts | 35 ++++++++++------------------ 1 file changed, 12 insertions(+), 23 deletions(-) diff --git a/test/e2e/tests/frontend/rsvp.spec.ts b/test/e2e/tests/frontend/rsvp.spec.ts index 815aa12ff..65541bdd7 100644 --- a/test/e2e/tests/frontend/rsvp.spec.ts +++ b/test/e2e/tests/frontend/rsvp.spec.ts @@ -42,7 +42,7 @@ test.describe('RSVP to an event', () => { test('A logged in user can perform RSVP action', async ({ page }) => { await page.goto('/'); - await page.getByRole('link', { name: 'Events' }).click({ force: true }); // Imported from of https://github.com/GatherPress/demo-data + await page.getByRole('link', { name: 'Events' }).click({ force: true }); // Imported from of https://github.com/GatherPress/gatherpress-demo-data await page.evaluate(() => window.scrollTo(0, 5000)); await page @@ -50,32 +50,21 @@ test.describe('RSVP to an event', () => { .first() .click({ force: true, timeout: 60000 }); - await page.locator('a').filter({ hasText: 'Attend' }).click({ force: true }); + await page + .locator('a') + .filter({ hasText: 'Attend' }) + .click({ force: true }); await page.getByText('Close').click({ force: true }); await expect( - page - .locator('.gatherpress-rsvp-response__items') - .first() - ) - .toBeVisible(); // verified the RSVP button is visible. + page.locator('.gatherpress-rsvp-response__items').first() + ).toBeVisible(); // verified the RSVP button is visible. - await expect( - page - .getByText('Attending') - .first() - ) - .toBeVisible({ timeout: 30000 }); // verified the logged in user perform RSVP action + await expect(page.getByText('Attending').first()).toBeVisible({ + timeout: 30000, + }); // verified the logged in user perform RSVP action await expect( - page - .locator('.gatherpress-rsvp-response__items') - .first() - ) - .toBeVisible(); // verified the attending users list. - - // await page - // .locator('.gatherpress-rsvp-response__items') - // .first() - // .screenshot({ path: 'attending.png' }); + page.locator('.gatherpress-rsvp-response__items').first() + ).toBeVisible(); // verified the attending users list. }); }); From 2b4cc314fba1c7e9ec477bf3e74367c6a8caed13 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Tue, 24 Sep 2024 22:56:50 +0200 Subject: [PATCH 079/103] Add inline-docs & Cleanup --- .github/workflows/e2e-tests.yml | 42 +++++++++++++++++----------- test/e2e/blueprint.json | 2 +- test/e2e/playwright.config.ts | 21 +++++++++++++- test/e2e/tests/editor/events.spec.ts | 9 ------ test/e2e/tests/editor/venues.spec.ts | 3 -- 5 files changed, 47 insertions(+), 30 deletions(-) diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index 7b0740947..f1aaaff59 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -80,8 +80,7 @@ jobs: - name: Install Playwright dependencies run: npx playwright install --with-deps if: steps.playwright-cache.outputs.cache-hit != 'true' - # - run: npx playwright install-deps - - run: npx playwright install --with-deps # DEBUG ONLY + - run: npx playwright install-deps if: steps.playwright-cache.outputs.cache-hit == 'true' - name: Prepare preferredVersions for blueprint @@ -97,20 +96,31 @@ jobs: echo "Use jq to prepend the preferred versions to the existing blueprint JSON file." jq --argjson preferredVersions "$preferredVersions" '{preferredVersions: $preferredVersions} + .' ./test/e2e/blueprint.json > temp.blueprint.json - # - name: Starting Playground - # # Having this as a separate workflow step, should help making sure Playwright runs only, when this is DONE & READY. - # # - # # Because it seems to be a problem to "wait on webServer.command" https://github.com/microsoft/playwright/issues/11811 - # # & "it seems that globalSetup runs before webServer is started." https://github.com/microsoft/playwright/issues/11811#issuecomment-1040732201 - # # - # # The "&" is important to allow the next step to start! - # run: | - # npm run playground:mount -- --blueprint=./temp.blueprint.json & - - - name: Starting Playwright & Running the tests - # env: - # PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1, - # WP_BASE_URL: 'http://127.0.0.1:9400/' + - name: Starting Playground, staring Playwright & running the tests + # This is kind of a hack PART 1/2, + # to make sure Playwright DOES NOT start the webserver on its own. + # + # Part 2/2 is the "command: undefined," declaration + # in test/e2e/playwright.config.ts + # + # While auto-loading the webserver when needed sounded nice, it introduced a race-condition + # between the setup of Playground and Playwrights own start event. + # Playwright listens for the availability of the webserver relatively simple, + # as soon as there is a status code 200, Playwright starts all engines. + # + # Unfortunately Playground is not ready at this point, it hast started WordPress + # and is going to start stepping through the blueprint, but hasn't loaded GatherPress nor imported any data; + # Resulting in failing tests. + # + # It was not possible (for me) to keep the setup of Playground in a separate step, + # why this "run > sleep > run" became necessary. + # The setup process usually takes about 20sec, so 60 is just a good extra, to not run into errors. + # + # The sleep step, should help making sure Playwright runs only, when this is DONE & READY. + # + # Because it seems to be a problem to "wait on webServer.command" https://github.com/microsoft/playwright/issues/11811 + # & "it seems that globalSetup runs before webServer is started." https://github.com/microsoft/playwright/issues/11811#issuecomment-1040732201 + run: | npm run playground:mount -- --blueprint=./temp.blueprint.json & \ sleep 60 && \ diff --git a/test/e2e/blueprint.json b/test/e2e/blueprint.json index 530a6cca9..0bab5f52a 100644 --- a/test/e2e/blueprint.json +++ b/test/e2e/blueprint.json @@ -34,7 +34,7 @@ "step": "importWxr", "file": { "resource": "url", - "url": "https://raw.githubusercontent.com/GatherPress/demo-data/main/GatherPress-demo-data-2024.xml" + "url": "https://raw.githubusercontent.com/GatherPress/gatherpress-demo-data/main/GatherPress-demo-data-2024.xml" } } ] diff --git a/test/e2e/playwright.config.ts b/test/e2e/playwright.config.ts index 94143f58b..8bd84291a 100644 --- a/test/e2e/playwright.config.ts +++ b/test/e2e/playwright.config.ts @@ -78,13 +78,32 @@ export default defineConfig({ reportSlowTests: null, use: { ...baseConfig.use, + // Gutenberg uses wp-env by default for Playwright tests, + // which runs on a different port. + // Playground runs on port: 9400. baseURL: process.env.WP_BASE_URL || 'http://127.0.0.1:9400', }, retries: 0, webServer: { ...baseConfig.webServer, + // This is kind of a hack PART 2/2, + // to make sure Playwright DOES NOT start the webserver on its own. + // + // Part 1/2 is the "run" of the "Starting Playground, staring Playwright & running the tests" step + // in .github/workflows/e2e-tests.yml + // + // While auto-loading the webserver when needed sounded nice, it introduced a race-condition + // between the setup of Playground and Playwrights own start event. + // Playwright listens for the availability of the webserver relatively simple, + // as soon as there is a status code 200, Playwright starts all engines. + // + // Unfortunately Playground is not ready at this point, it hast started WordPress + // and is going to start stepping through the blueprint, but hasn't loaded GatherPress nor imported any data; + // Resulting in failing tests. + // + // Sending just >undefined< is an idea, taken from @swisspidy at: + // https://github.com/swissspidy/wp-performance-action/pull/173/files#diff-980717ce45eb5ef0a66e87dd5b664656800d31ca809fe902f069b5e8f3cdcd31 command: undefined, - // 'npm run playground:mount -- --blueprint=./test/e2e/blueprint.json', port: 9400, reuseExistingServer: true, }, diff --git a/test/e2e/tests/editor/events.spec.ts b/test/e2e/tests/editor/events.spec.ts index ee4ef0e58..5932e36fd 100644 --- a/test/e2e/tests/editor/events.spec.ts +++ b/test/e2e/tests/editor/events.spec.ts @@ -19,8 +19,6 @@ test.describe('Events in the Editor', () => { name: 'Event settings', }); - // page.pause(); - if ((await panelToggle.getAttribute('aria-expanded')) === 'false') { // Check if the inserter button is visible await expect(panelToggle).toBeVisible(); @@ -53,13 +51,6 @@ test.describe('Events in the Editor', () => { } await editor.publishPost(); // this is missing the force and doesnt work. - // const publishButton = page.getByRole('button', { - // name: 'Publish', - // }); - - // // Click the publishButton - // // Just click() without forcing led to timeouts, timeouts, timeouts... - // await publishButton.click({ force: true }); }); test('An admin should be able to publish an online event', async ({ diff --git a/test/e2e/tests/editor/venues.spec.ts b/test/e2e/tests/editor/venues.spec.ts index 2f484276d..871e67307 100644 --- a/test/e2e/tests/editor/venues.spec.ts +++ b/test/e2e/tests/editor/venues.spec.ts @@ -25,8 +25,5 @@ test.describe('Venues in the Editor', () => { await editor.publishPost(); // this is missing the force and doesnt work. - // await page.getByLabel('Toggle block inserter').click(); - // await page.getByRole('option', { name: 'Paragraph' }).click(); - // await page.screenshot({ path: 'new-venue.png' }); }); }); From 939eb1aa2c8aadfab96e53244e41453e267f2d34 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Tue, 24 Sep 2024 23:17:19 +0200 Subject: [PATCH 080/103] COPY test-reporting (1/2) from Gutenberg --- .github/workflows/e2e-tests.yml | 44 ++++++++++++++++++++++++++++++--- 1 file changed, 41 insertions(+), 3 deletions(-) diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index f1aaaff59..1468472c2 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -130,9 +130,47 @@ jobs: npm run test:e2e - - name: Retain failed test results + - name: Archive debug artifacts (screenshots, traces) uses: actions/upload-artifact@v4 - if: failure() + if: ${{ ! cancelled() }} with: - name: test-results-${{ matrix.php }} + name: failures-artifacts--${{ matrix.php }} path: artifacts/test-results/ + if-no-files-found: ignore + + + - name: Archive flaky tests report + uses: actions/upload-artifact@v4 + if: ${{ ! cancelled() }} + with: + name: flaky-tests-report--${{ matrix.php }} + path: flaky-tests + if-no-files-found: ignore + + + merge-artifacts: + name: Merge Artifacts + if: ${{ ! cancelled() }} + needs: [e2e-tests] + runs-on: ubuntu-latest + outputs: + has-flaky-test-report: ${{ !!steps.merge-flaky-tests-reports.outputs.artifact-id }} + steps: + - name: Merge failures artifacts + uses: actions/upload-artifact/merge@v4 + # Don't fail the job if there aren't any artifacts to merge. + continue-on-error: true + with: + name: failures-artifacts + # Retain the merged artifacts in case of a rerun. + pattern: failures-artifacts* + delete-merged: true + + - name: Merge flaky tests reports + id: merge-flaky-tests-reports + uses: actions/upload-artifact/merge@v4 + continue-on-error: true + with: + name: flaky-tests-report + pattern: flaky-tests-report* + delete-merged: true \ No newline at end of file From 9dfd54c4ba69c6d03fefd325b9fc84247db94879 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Tue, 24 Sep 2024 23:19:54 +0200 Subject: [PATCH 081/103] Fix for CS --- test/e2e/playwright.config.ts | 2 +- test/e2e/tests/editor/venues.spec.ts | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/test/e2e/playwright.config.ts b/test/e2e/playwright.config.ts index 8bd84291a..994185bc1 100644 --- a/test/e2e/playwright.config.ts +++ b/test/e2e/playwright.config.ts @@ -101,7 +101,7 @@ export default defineConfig({ // and is going to start stepping through the blueprint, but hasn't loaded GatherPress nor imported any data; // Resulting in failing tests. // - // Sending just >undefined< is an idea, taken from @swisspidy at: + // Sending just >undefined< is an idea, taken from @swisspidy at: // https://github.com/swissspidy/wp-performance-action/pull/173/files#diff-980717ce45eb5ef0a66e87dd5b664656800d31ca809fe902f069b5e8f3cdcd31 command: undefined, port: 9400, diff --git a/test/e2e/tests/editor/venues.spec.ts b/test/e2e/tests/editor/venues.spec.ts index 871e67307..7e4c48c2c 100644 --- a/test/e2e/tests/editor/venues.spec.ts +++ b/test/e2e/tests/editor/venues.spec.ts @@ -24,6 +24,5 @@ test.describe('Venues in the Editor', () => { .fill('test venue information'); await editor.publishPost(); // this is missing the force and doesnt work. - }); }); From 5f986d977b12339d657ff77c9c6259d858a0388a Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Wed, 25 Sep 2024 10:47:27 +0200 Subject: [PATCH 082/103] Simplify test by relying on Playwrights actionability checks (auto-waiting), including visibility and enabled state --- test/e2e/tests/editor/blocks.spec.ts | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/test/e2e/tests/editor/blocks.spec.ts b/test/e2e/tests/editor/blocks.spec.ts index 4b494d10c..ffd238a47 100644 --- a/test/e2e/tests/editor/blocks.spec.ts +++ b/test/e2e/tests/editor/blocks.spec.ts @@ -21,15 +21,7 @@ test.describe('Blocks & Patterns in the Editor', () => { name: 'Toggle block inserter', }); - // Check if the inserter button is visible - await expect(inserter).toBeVisible(); - - // Ensure the inserter button is enabled before interacting with it - await expect(inserter).toBeEnabled(); - - // Click the inserter button - // Just click() without forcing led to timeouts, timeouts, timeouts... - await inserter.click({ force: true }); + await inserter.click({ timeout: 10000 }); // Increase timeout if necessary. await page .getByRole('region', { name: 'Block Library' }) From 50f84b66b9251ff49f35b909ae61ca4130f4ea28 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Wed, 25 Sep 2024 10:50:03 +0200 Subject: [PATCH 083/103] Simplify test because the getByRole locator supports expanded selector --- test/e2e/tests/editor/events.spec.ts | 29 ++++++++-------------------- 1 file changed, 8 insertions(+), 21 deletions(-) diff --git a/test/e2e/tests/editor/events.spec.ts b/test/e2e/tests/editor/events.spec.ts index 5932e36fd..63ace3bf5 100644 --- a/test/e2e/tests/editor/events.spec.ts +++ b/test/e2e/tests/editor/events.spec.ts @@ -17,37 +17,24 @@ test.describe('Events in the Editor', () => { // Open the Document -> Event settings panel. const panelToggle = page.getByRole('button', { name: 'Event settings', + expanded: false, }); - if ((await panelToggle.getAttribute('aria-expanded')) === 'false') { - // Check if the inserter button is visible - await expect(panelToggle).toBeVisible(); - - // Ensure the panelToggle is enabled before interacting with it - await expect(panelToggle).toBeEnabled(); - - // Click the panelToggle - // Just click() without forcing led to timeouts, timeouts, timeouts... - await panelToggle.click({ force: true }); + if (await panelToggle.isVisible()) { + await panelToggle.click(); } }); test.afterEach(async ({ editor, page }) => { - // Click again to close the element, to let upcoming tests not get flaky. + // Close the Document -> Event settings panel. + // To let upcoming tests not get flaky. const panelToggle = page.getByRole('button', { name: 'Event settings', + expanded: true, }); - if ((await panelToggle.getAttribute('aria-expanded')) === 'false') { - // Check if the inserter button is visible - await expect(panelToggle).toBeVisible(); - - // Ensure the panelToggle is enabled before interacting with it - await expect(panelToggle).toBeEnabled(); - - // Click the panelToggle - // Just click() without forcing led to timeouts, timeouts, timeouts... - await panelToggle.click({ force: true }); + if (await panelToggle.isVisible()) { + await panelToggle.click(); } await editor.publishPost(); // this is missing the force and doesnt work. From 569c7c83b0e7f9281fee04b35bd5e4ac71450d51 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Fri, 27 Sep 2024 03:05:40 +0200 Subject: [PATCH 084/103] Replace isVisible() with expect( ... ).toBeVisible(), as per the suggestion by @WunderBart --- test/e2e/tests/editor/events.spec.ts | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/test/e2e/tests/editor/events.spec.ts b/test/e2e/tests/editor/events.spec.ts index 63ace3bf5..d71ffc859 100644 --- a/test/e2e/tests/editor/events.spec.ts +++ b/test/e2e/tests/editor/events.spec.ts @@ -7,12 +7,12 @@ test.describe('Events in the Editor', () => { test.beforeEach(async ({ admin, page }) => { await admin.createNewPost({ postType: 'gatherpress_event' }); await page.getByLabel('Add title').fill('Change title to allow saving'); - await page - .getByLabel('Block: Event Date') + const eventDateBlock = await page.getByLabel('Block: Event Date') .locator('div') - .first() - .isVisible(); - await page.getByRole('heading', { name: 'Date & time' }).isVisible(); + .first(); + await expect( eventDateBlock ).toBeVisible(); + const eventDateHeading = await page.getByRole('heading', { name: 'Date & time' }); + await expect( eventDateHeading ).toBeVisible(); // Open the Document -> Event settings panel. const panelToggle = page.getByRole('button', { From 08d3b13929bf0bf6ed794f814e626a2f3a64dc39 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Fri, 27 Sep 2024 03:06:42 +0200 Subject: [PATCH 085/103] The "$" method is discouraged, Locator should be used --- test/e2e/tests/editor/venues.spec.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/e2e/tests/editor/venues.spec.ts b/test/e2e/tests/editor/venues.spec.ts index 7e4c48c2c..5d473f73f 100644 --- a/test/e2e/tests/editor/venues.spec.ts +++ b/test/e2e/tests/editor/venues.spec.ts @@ -16,7 +16,7 @@ test.describe('Venues in the Editor', () => { await page.getByLabel('Add title').fill('Test venue'); await page.getByLabel('Add title').press('Tab'); - const venue = await page.$('.gatherpress-venue__name'); + const venue = page.locator('.gatherpress-venue__name'); await venue.press('Backspace'); await page From 9719773fdf074be73a68643eef4f7e9f65d44d2b Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Fri, 27 Sep 2024 03:08:46 +0200 Subject: [PATCH 086/103] The URL attribute should be asserted via the toHaveAttribute locator assertion so that it's properly awaited --- test/e2e/tests/wp-admin/settings.spec.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/test/e2e/tests/wp-admin/settings.spec.ts b/test/e2e/tests/wp-admin/settings.spec.ts index ffb6ef08e..47cdda325 100644 --- a/test/e2e/tests/wp-admin/settings.spec.ts +++ b/test/e2e/tests/wp-admin/settings.spec.ts @@ -16,11 +16,11 @@ test.describe('Settings', () => { const settingsMenu = menu.getByRole('link', { name: 'Settings', }); - const settingsMenuUrl = await settingsMenu.getAttribute('href'); await expect(settingsMenu).toBeVisible(); - await expect(settingsMenuUrl).toContain( - 'admin.php?page=gatherpress_general' + await expect(settingsMenu).toHaveAttribute( + 'href', + /admin\.php\?page=gatherpress_general/ ); }); }); From 442e6cb50c93e5217bf3d9922bf5c6db3c4a58d5 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Mon, 7 Oct 2024 00:09:17 +0200 Subject: [PATCH 087/103] Disable "Merge Artifacts" step --- .github/workflows/e2e-tests.yml | 52 ++++++++++++++++----------------- 1 file changed, 26 insertions(+), 26 deletions(-) diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index 1468472c2..1b650396c 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -148,29 +148,29 @@ jobs: if-no-files-found: ignore - merge-artifacts: - name: Merge Artifacts - if: ${{ ! cancelled() }} - needs: [e2e-tests] - runs-on: ubuntu-latest - outputs: - has-flaky-test-report: ${{ !!steps.merge-flaky-tests-reports.outputs.artifact-id }} - steps: - - name: Merge failures artifacts - uses: actions/upload-artifact/merge@v4 - # Don't fail the job if there aren't any artifacts to merge. - continue-on-error: true - with: - name: failures-artifacts - # Retain the merged artifacts in case of a rerun. - pattern: failures-artifacts* - delete-merged: true - - - name: Merge flaky tests reports - id: merge-flaky-tests-reports - uses: actions/upload-artifact/merge@v4 - continue-on-error: true - with: - name: flaky-tests-report - pattern: flaky-tests-report* - delete-merged: true \ No newline at end of file + # merge-artifacts: + # name: Merge Artifacts + # if: ${{ ! cancelled() }} + # needs: [e2e-tests] + # runs-on: ubuntu-latest + # outputs: + # has-flaky-test-report: ${{ !!steps.merge-flaky-tests-reports.outputs.artifact-id }} + # steps: + # - name: Merge failures artifacts + # uses: actions/upload-artifact/merge@v4 + # # Don't fail the job if there aren't any artifacts to merge. + # continue-on-error: true + # with: + # name: failures-artifacts + # # Retain the merged artifacts in case of a rerun. + # pattern: failures-artifacts* + # delete-merged: true + + # - name: Merge flaky tests reports + # id: merge-flaky-tests-reports + # uses: actions/upload-artifact/merge@v4 + # continue-on-error: true + # with: + # name: flaky-tests-report + # pattern: flaky-tests-report* + # delete-merged: true \ No newline at end of file From 917f485b915fea4cfdcd05681279af27a5abf853 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Mon, 7 Oct 2024 00:33:05 +0200 Subject: [PATCH 088/103] Update workflow echo --- .github/workflows/e2e-tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index 1b650396c..1e871bef3 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -124,7 +124,7 @@ jobs: run: | npm run playground:mount -- --blueprint=./temp.blueprint.json & \ sleep 60 && \ - echo 'Playground is ready now, lets take some pictures.' && \ + echo 'Playground is ready now, lets run some end-to-end tests.' && \ # DEBUG=pw:api,pw:webserver \ xvfb-run --auto-servernum --server-args="-screen 0 1280x960x24" -- \ npm run test:e2e From 439a7947a0eb58d88ed6ddc03f3ed8a89b43e7b0 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Mon, 7 Oct 2024 00:33:30 +0200 Subject: [PATCH 089/103] Fix test: A logged in user can perform RSVP action (which failed in TT5) --- test/e2e/tests/frontend/rsvp.spec.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/test/e2e/tests/frontend/rsvp.spec.ts b/test/e2e/tests/frontend/rsvp.spec.ts index 65541bdd7..62c735f52 100644 --- a/test/e2e/tests/frontend/rsvp.spec.ts +++ b/test/e2e/tests/frontend/rsvp.spec.ts @@ -42,7 +42,9 @@ test.describe('RSVP to an event', () => { test('A logged in user can perform RSVP action', async ({ page }) => { await page.goto('/'); - await page.getByRole('link', { name: 'Events' }).click({ force: true }); // Imported from of https://github.com/GatherPress/gatherpress-demo-data + // Be explicit witn the header, + // because "TT5" has an "Events" demo link in its footer. + await page.locator('header').getByRole('link', { name: 'Events' }).click({ force: true }); // Imported from of https://github.com/GatherPress/gatherpress-demo-data await page.evaluate(() => window.scrollTo(0, 5000)); await page From 6bb65de610f8d74767e5e37d46c487c75c8e77e7 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Mon, 7 Oct 2024 02:44:12 +0200 Subject: [PATCH 090/103] Clean up --- test/e2e/tests/frontend/rsvp.spec.ts | 38 +--------------------------- 1 file changed, 1 insertion(+), 37 deletions(-) diff --git a/test/e2e/tests/frontend/rsvp.spec.ts b/test/e2e/tests/frontend/rsvp.spec.ts index 62c735f52..441893e9c 100644 --- a/test/e2e/tests/frontend/rsvp.spec.ts +++ b/test/e2e/tests/frontend/rsvp.spec.ts @@ -4,41 +4,6 @@ const { test, expect } = require('@wordpress/e2e-test-utils-playwright'); test.describe('RSVP to an event', () => { - /* - test('02-verify the non-logged in user view RSVP button on home page and perform RSVP action', async ({ - page, - }) => { - await page.goto('https://develop.gatherpress.org'); - await page.getByRole('heading', { name: 'Upcoming Events' }).isVisible(); - await page - .locator('div') - .filter({ hasText: /^online Test Event$/ }) - .isVisible(); - - await page.getByRole('link', { name: 'RSVP' }).first().isVisible(); - - await page.getByRole('link', { name: 'RSVP' }).first().click(); - await page.getByText('Login', { exact: true }).click(); - - await loginUser({ page, username: 'testuser1' }); - await page.evaluate(() => window.scrollTo(0, 1000)); - - await page - .getByRole('link', { name: 'RSVP' }) - .first() - .click({ timeout: 60000 }); - - await page.locator('a').filter({ hasText: 'Attend' }).click(); - await page.getByText('Close').click(); - await page.locator('.gatherpress-rsvp-response__items').first().isVisible(); // verified the RSVP button is visible - await expect(page.getByText('Attending').first()).toBeVisible(); // verified the attending text after RSVP action. - - await page.locator('.gatherpress-rsvp-response__items').first().isVisible(); // verified the attending users list. - await page - .locator('.gatherpress-rsvp-response__items') - .first() - .screenshot({ path: 'attending.png' }); - }); */ test('A logged in user can perform RSVP action', async ({ page }) => { await page.goto('/'); @@ -46,7 +11,6 @@ test.describe('RSVP to an event', () => { // because "TT5" has an "Events" demo link in its footer. await page.locator('header').getByRole('link', { name: 'Events' }).click({ force: true }); // Imported from of https://github.com/GatherPress/gatherpress-demo-data - await page.evaluate(() => window.scrollTo(0, 5000)); await page .getByRole('link', { name: 'RSVP' }) .first() @@ -63,7 +27,7 @@ test.describe('RSVP to an event', () => { await expect(page.getByText('Attending').first()).toBeVisible({ timeout: 30000, - }); // verified the logged in user perform RSVP action + }); // verified the logged in user performed RSVP action await expect( page.locator('.gatherpress-rsvp-response__items').first() From 7574542fb40bd4c56295545415596ebb4ed69c63 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Mon, 7 Oct 2024 02:50:16 +0200 Subject: [PATCH 091/103] Clean up --- test/e2e/tests/editor/events.spec.ts | 40 +--------------------------- 1 file changed, 1 insertion(+), 39 deletions(-) diff --git a/test/e2e/tests/editor/events.spec.ts b/test/e2e/tests/editor/events.spec.ts index d71ffc859..2c6b02c07 100644 --- a/test/e2e/tests/editor/events.spec.ts +++ b/test/e2e/tests/editor/events.spec.ts @@ -4,39 +4,13 @@ const { test, expect } = require('@wordpress/e2e-test-utils-playwright'); test.describe('Events in the Editor', () => { + test.beforeEach(async ({ admin, page }) => { await admin.createNewPost({ postType: 'gatherpress_event' }); await page.getByLabel('Add title').fill('Change title to allow saving'); - const eventDateBlock = await page.getByLabel('Block: Event Date') - .locator('div') - .first(); - await expect( eventDateBlock ).toBeVisible(); - const eventDateHeading = await page.getByRole('heading', { name: 'Date & time' }); - await expect( eventDateHeading ).toBeVisible(); - - // Open the Document -> Event settings panel. - const panelToggle = page.getByRole('button', { - name: 'Event settings', - expanded: false, - }); - - if (await panelToggle.isVisible()) { - await panelToggle.click(); - } }); test.afterEach(async ({ editor, page }) => { - // Close the Document -> Event settings panel. - // To let upcoming tests not get flaky. - const panelToggle = page.getByRole('button', { - name: 'Event settings', - expanded: true, - }); - - if (await panelToggle.isVisible()) { - await panelToggle.click(); - } - await editor.publishPost(); // this is missing the force and doesnt work. }); @@ -55,16 +29,4 @@ test.describe('Events in the Editor', () => { await page.getByLabel('Venue Selector').selectOption('Turin'); // Location of WCEU 2024 & imported from https://github.com/GatherPress/demo-data }); - /* - test('A user should be able to publish an online event', async ({ - page, - }) => { - await page.getByLabel('Venue Selector').selectOption('Online event'); - }); - - test('A user should be able publish an offline event', async ({ - page, - }) => { - await page.getByLabel('Venue Selector').selectOption('Turin'); // Location of WCEU 2024 & imported from https://github.com/GatherPress/demo-data - }); */ }); From d7e8c3fd2a61fe547a63196a2918d6f8d79829ed Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Mon, 7 Oct 2024 03:32:55 +0200 Subject: [PATCH 092/103] Fix test: By re-enabling force click --- test/e2e/tests/editor/blocks.spec.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/e2e/tests/editor/blocks.spec.ts b/test/e2e/tests/editor/blocks.spec.ts index ffd238a47..4d06fcb9a 100644 --- a/test/e2e/tests/editor/blocks.spec.ts +++ b/test/e2e/tests/editor/blocks.spec.ts @@ -21,7 +21,7 @@ test.describe('Blocks & Patterns in the Editor', () => { name: 'Toggle block inserter', }); - await inserter.click({ timeout: 10000 }); // Increase timeout if necessary. + await inserter.click({ force: true, timeout: 10000 }); // Increase timeout if necessary. await page .getByRole('region', { name: 'Block Library' }) From b087736108dba12cf9ed1a22b36ae94b92d21fc9 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Mon, 7 Oct 2024 03:33:42 +0200 Subject: [PATCH 093/103] WIP event tests --- test/e2e/tests/editor/events.spec.ts | 35 +++++++++++++++++++++++----- 1 file changed, 29 insertions(+), 6 deletions(-) diff --git a/test/e2e/tests/editor/events.spec.ts b/test/e2e/tests/editor/events.spec.ts index 2c6b02c07..fc149715d 100644 --- a/test/e2e/tests/editor/events.spec.ts +++ b/test/e2e/tests/editor/events.spec.ts @@ -5,28 +5,51 @@ const { test, expect } = require('@wordpress/e2e-test-utils-playwright'); test.describe('Events in the Editor', () => { + let venueSelector; + test.beforeEach(async ({ admin, page }) => { await admin.createNewPost({ postType: 'gatherpress_event' }); await page.getByLabel('Add title').fill('Change title to allow saving'); - }); - test.afterEach(async ({ editor, page }) => { - await editor.publishPost(); // this is missing the force and doesnt work. + venueSelector = await page.getByLabel('Venue Selector'); + venueSelector.waitFor(); + await expect( venueSelector ).toBeVisible(); }); test('An admin should be able to publish an online event', async ({ + editor, page, + pageUtils, }) => { - await page.getByLabel('Venue Selector').selectOption('Online event'); + + + await venueSelector.selectOption('Online event'); await page .getByPlaceholder('Add link to online event') - .fill('www.google.com'); + .fill('www.gatherpress.org'); + + await editor.publishPost(); // this is missing the force and doesnt work. + // await pageUtils.pressKeys( 'primary+s' ); + await page.reload(); + + await expect( venueSelector ).toBeVisible(); + await expect( venueSelector ).toHaveText( 'Online event' ); + }); test('An admin should be able to publish an offline event', async ({ + editor, page, }) => { - await page.getByLabel('Venue Selector').selectOption('Turin'); // Location of WCEU 2024 & imported from https://github.com/GatherPress/demo-data + await venueSelector.selectOption('Turin'); // Location of WCEU 2024 & imported from https://github.com/GatherPress/demo-data + + await editor.publishPost(); // this is missing the force and doesnt work. + // await pageUtils.pressKeys( 'primary+s' ); + await page.reload(); + + await expect( venueSelector ).toBeVisible(); + await expect( venueSelector ).toHaveText( 'Turin' ); + }); }); From a1f8574b72f39c8020a4f7446e8b7343e0500d3e Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Mon, 7 Oct 2024 03:42:59 +0200 Subject: [PATCH 094/103] Run for different WP versions --- .github/workflows/e2e-tests.yml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index 1e871bef3..265fc3ea4 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -33,6 +33,12 @@ jobs: php: [ '7.4', '8.3' + ], + wp: [ + '6.4', + '6.5', + '6.6', + 'latest' ] steps: @@ -91,7 +97,7 @@ jobs: run: | preferredVersions='{ "php": "${{ matrix.php }}", - "wp": "latest" + "wp": "${{ matrix.wp }}" }' echo "Use jq to prepend the preferred versions to the existing blueprint JSON file." jq --argjson preferredVersions "$preferredVersions" '{preferredVersions: $preferredVersions} + .' ./test/e2e/blueprint.json > temp.blueprint.json From d46fc40ba1fba806d3fc49195fc956533363a0fe Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Mon, 7 Oct 2024 03:45:03 +0200 Subject: [PATCH 095/103] Fix for CS --- test/e2e/tests/editor/events.spec.ts | 18 ++++++------------ test/e2e/tests/frontend/rsvp.spec.ts | 6 ++++-- 2 files changed, 10 insertions(+), 14 deletions(-) diff --git a/test/e2e/tests/editor/events.spec.ts b/test/e2e/tests/editor/events.spec.ts index fc149715d..0daaf2d46 100644 --- a/test/e2e/tests/editor/events.spec.ts +++ b/test/e2e/tests/editor/events.spec.ts @@ -4,7 +4,6 @@ const { test, expect } = require('@wordpress/e2e-test-utils-playwright'); test.describe('Events in the Editor', () => { - let venueSelector; test.beforeEach(async ({ admin, page }) => { @@ -13,16 +12,14 @@ test.describe('Events in the Editor', () => { venueSelector = await page.getByLabel('Venue Selector'); venueSelector.waitFor(); - await expect( venueSelector ).toBeVisible(); + await expect(venueSelector).toBeVisible(); }); test('An admin should be able to publish an online event', async ({ editor, page, - pageUtils, + // pageUtils, }) => { - - await venueSelector.selectOption('Online event'); await page .getByPlaceholder('Add link to online event') @@ -32,9 +29,8 @@ test.describe('Events in the Editor', () => { // await pageUtils.pressKeys( 'primary+s' ); await page.reload(); - await expect( venueSelector ).toBeVisible(); - await expect( venueSelector ).toHaveText( 'Online event' ); - + await expect(venueSelector).toBeVisible(); + await expect(venueSelector).toHaveText('Online event'); }); test('An admin should be able to publish an offline event', async ({ @@ -47,9 +43,7 @@ test.describe('Events in the Editor', () => { // await pageUtils.pressKeys( 'primary+s' ); await page.reload(); - await expect( venueSelector ).toBeVisible(); - await expect( venueSelector ).toHaveText( 'Turin' ); - + await expect(venueSelector).toBeVisible(); + await expect(venueSelector).toHaveText('Turin'); }); - }); diff --git a/test/e2e/tests/frontend/rsvp.spec.ts b/test/e2e/tests/frontend/rsvp.spec.ts index 441893e9c..07087e26a 100644 --- a/test/e2e/tests/frontend/rsvp.spec.ts +++ b/test/e2e/tests/frontend/rsvp.spec.ts @@ -4,12 +4,14 @@ const { test, expect } = require('@wordpress/e2e-test-utils-playwright'); test.describe('RSVP to an event', () => { - test('A logged in user can perform RSVP action', async ({ page }) => { await page.goto('/'); // Be explicit witn the header, // because "TT5" has an "Events" demo link in its footer. - await page.locator('header').getByRole('link', { name: 'Events' }).click({ force: true }); // Imported from of https://github.com/GatherPress/gatherpress-demo-data + await page + .locator('header') + .getByRole('link', { name: 'Events' }) + .click({ force: true }); // Imported from of https://github.com/GatherPress/gatherpress-demo-data await page .getByRole('link', { name: 'RSVP' }) From fd0cd22bab879c3a2c3d6c68a4dd96602a262471 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Mon, 7 Oct 2024 03:57:08 +0200 Subject: [PATCH 096/103] Remove comma --- .github/workflows/e2e-tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index 265fc3ea4..e7fa39977 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -33,7 +33,7 @@ jobs: php: [ '7.4', '8.3' - ], + ] wp: [ '6.4', '6.5', From 3e4c8de94028a25c8d81d7791aef713dcf8e8ad1 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Mon, 7 Oct 2024 23:06:26 +0200 Subject: [PATCH 097/103] Reduce WP-version matrix to "minimum required" --- .github/workflows/e2e-tests.yml | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index e7fa39977..250131a18 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -35,8 +35,6 @@ jobs: '8.3' ] wp: [ - '6.4', - '6.5', '6.6', 'latest' ] @@ -140,7 +138,7 @@ jobs: uses: actions/upload-artifact@v4 if: ${{ ! cancelled() }} with: - name: failures-artifacts--${{ matrix.php }} + name: failures-artifacts--php-${{ matrix.php }}-wp-${{ matrix.wp }} path: artifacts/test-results/ if-no-files-found: ignore @@ -149,7 +147,7 @@ jobs: uses: actions/upload-artifact@v4 if: ${{ ! cancelled() }} with: - name: flaky-tests-report--${{ matrix.php }} + name: flaky-tests-report--php-${{ matrix.php }}-wp-${{ matrix.wp }} path: flaky-tests if-no-files-found: ignore From d23bfea25eb679b259b7a0e5f5478cc84d6876b3 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Mon, 7 Oct 2024 23:52:21 +0200 Subject: [PATCH 098/103] Login step can be removed (because its part of importWxr) --- test/e2e/blueprint.json | 3 --- 1 file changed, 3 deletions(-) diff --git a/test/e2e/blueprint.json b/test/e2e/blueprint.json index 0bab5f52a..dfd7b7899 100644 --- a/test/e2e/blueprint.json +++ b/test/e2e/blueprint.json @@ -22,9 +22,6 @@ "DISABLE_WP_CRON": true } }, - { - "step": "login" - }, { "step": "activatePlugin", "pluginName": "gatherpress", From 079cfd266a799d05371d2e8d1a3afa55b083542c Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Tue, 8 Oct 2024 00:21:48 +0200 Subject: [PATCH 099/103] TRY test for non-logged-in users (FAILED) --- test/e2e/tests/frontend/rsvp.spec.ts | 39 ++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/test/e2e/tests/frontend/rsvp.spec.ts b/test/e2e/tests/frontend/rsvp.spec.ts index 07087e26a..5c85ebfa4 100644 --- a/test/e2e/tests/frontend/rsvp.spec.ts +++ b/test/e2e/tests/frontend/rsvp.spec.ts @@ -36,3 +36,42 @@ test.describe('RSVP to an event', () => { ).toBeVisible(); // verified the attending users list. }); }); + +test.describe('RSVP to an event', () => { + + test.use({ storageState: { cookies: [], origin: [] } }); + + // TODO + + test('A NOT logged in user can NOT perform RSVP action', async ({ page }) => { + await page.goto('/'); + // Be explicit witn the header, + // because "TT5" has an "Events" demo link in its footer. + await page + .locator('header') + .getByRole('link', { name: 'Events' }) + .click({ force: true }); // Imported from of https://github.com/GatherPress/gatherpress-demo-data + + await page + .getByRole('link', { name: 'RSVP' }) + .first() + .click({ force: true, timeout: 60000 }); + + await page + .locator('a') + .filter({ hasText: 'Attend' }) + .click({ force: true }); + await page.getByText('Close').click({ force: true }); + await expect( + page.locator('.gatherpress-rsvp-response__items').first() + ).toBeVisible(); // verified the RSVP button is visible. + + await expect(page.getByText('Attending').first()).toBeVisible({ + timeout: 30000, + }); // verified the logged in user performed RSVP action + + await expect( + page.locator('.gatherpress-rsvp-response__items').first() + ).toBeVisible(); // verified the attending users list. + }); +}); From c414abebeb3a92baabc3011763c0b725fb823556 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Tue, 8 Oct 2024 00:22:05 +0200 Subject: [PATCH 100/103] Clean up --- test/e2e/tests/editor/venues.spec.ts | 8 -------- 1 file changed, 8 deletions(-) diff --git a/test/e2e/tests/editor/venues.spec.ts b/test/e2e/tests/editor/venues.spec.ts index 5d473f73f..c29228605 100644 --- a/test/e2e/tests/editor/venues.spec.ts +++ b/test/e2e/tests/editor/venues.spec.ts @@ -14,14 +14,6 @@ test.describe('Venues in the Editor', () => { }) => { await page.getByLabel('Add title').isVisible(); await page.getByLabel('Add title').fill('Test venue'); - await page.getByLabel('Add title').press('Tab'); - - const venue = page.locator('.gatherpress-venue__name'); - await venue.press('Backspace'); - - await page - .getByLabel('Empty block; start writing or') - .fill('test venue information'); await editor.publishPost(); // this is missing the force and doesnt work. }); From 602d59074327379910f6215e9c19579dbe26efc0 Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Tue, 8 Oct 2024 00:22:28 +0200 Subject: [PATCH 101/103] Splitting the problematic test into smaller pieces --- test/e2e/tests/editor/events.spec.ts | 24 +++++++++++++++++++++--- 1 file changed, 21 insertions(+), 3 deletions(-) diff --git a/test/e2e/tests/editor/events.spec.ts b/test/e2e/tests/editor/events.spec.ts index 0daaf2d46..1fc2c999a 100644 --- a/test/e2e/tests/editor/events.spec.ts +++ b/test/e2e/tests/editor/events.spec.ts @@ -9,10 +9,18 @@ test.describe('Events in the Editor', () => { test.beforeEach(async ({ admin, page }) => { await admin.createNewPost({ postType: 'gatherpress_event' }); await page.getByLabel('Add title').fill('Change title to allow saving'); + }); - venueSelector = await page.getByLabel('Venue Selector'); - venueSelector.waitFor(); - await expect(venueSelector).toBeVisible(); + test('An admin should be able to publish an event', async ({ + editor, + page, + // pageUtils, + }) => { + await editor.publishPost(); // this is missing the force and doesnt work. + // await pageUtils.pressKeys( 'primary+s' ); + await page.reload(); + + await expect( await page.getByLabel('Add title') ).toHaveText('Change title to allow saving'); }); test('An admin should be able to publish an online event', async ({ @@ -20,6 +28,11 @@ test.describe('Events in the Editor', () => { page, // pageUtils, }) => { + + await page.getByLabel('Venue Selector').waitFor('attached', 30000 ); // 30sec.; + venueSelector = await page.getByLabel('Venue Selector'); + await expect(venueSelector).toBeVisible(); + await venueSelector.selectOption('Online event'); await page .getByPlaceholder('Add link to online event') @@ -37,6 +50,11 @@ test.describe('Events in the Editor', () => { editor, page, }) => { + + await page.getByLabel('Venue Selector').waitFor('attached', 30000 ); // 30sec.; + venueSelector = await page.getByLabel('Venue Selector'); + await expect(venueSelector).toBeVisible(); + await venueSelector.selectOption('Turin'); // Location of WCEU 2024 & imported from https://github.com/GatherPress/demo-data await editor.publishPost(); // this is missing the force and doesnt work. From 66aa0305ec6a90d500376c6260a14264278b3ead Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Tue, 8 Oct 2024 00:30:09 +0200 Subject: [PATCH 102/103] wp-scripts package-update --- package-lock.json | 2693 +++++++++++++++++++-------------------------- package.json | 36 +- 2 files changed, 1160 insertions(+), 1569 deletions(-) diff --git a/package-lock.json b/package-lock.json index 2410d54da..a712e3ed7 100644 --- a/package-lock.json +++ b/package-lock.json @@ -14,24 +14,24 @@ "@testing-library/jest-dom": "^6.4.8", "@testing-library/react": "^16.0.0", "@typescript-eslint/eslint-plugin": "^7.17.0", - "@wordpress/api-fetch": "^7.4.0", - "@wordpress/block-editor": "^13.4.0", - "@wordpress/blocks": "^13.4.0", - "@wordpress/components": "^28.4.0", - "@wordpress/compose": "^7.4.0", - "@wordpress/core-data": "^7.4.0", - "@wordpress/data": "^10.4.0", - "@wordpress/date": "^5.4.0", - "@wordpress/dom-ready": "^4.4.0", - "@wordpress/e2e-test-utils-playwright": "^1.5.0", - "@wordpress/edit-post": "^8.4.0", - "@wordpress/element": "^6.4.0", - "@wordpress/env": "^10.5.0", - "@wordpress/eslint-plugin": "^20.1.0", - "@wordpress/i18n": "^5.4.0", - "@wordpress/notices": "^5.4.0", - "@wordpress/plugins": "^7.4.0", - "@wordpress/scripts": "^28.4.0", + "@wordpress/api-fetch": "^7.9.0", + "@wordpress/block-editor": "^14.4.0", + "@wordpress/blocks": "^13.9.0", + "@wordpress/components": "^28.9.0", + "@wordpress/compose": "^7.9.0", + "@wordpress/core-data": "^7.9.0", + "@wordpress/data": "^10.9.0", + "@wordpress/date": "^5.9.0", + "@wordpress/dom-ready": "^4.9.0", + "@wordpress/e2e-test-utils-playwright": "^1.9.0", + "@wordpress/edit-post": "^8.9.0", + "@wordpress/element": "^6.9.0", + "@wordpress/env": "^10.9.0", + "@wordpress/eslint-plugin": "^21.2.0", + "@wordpress/i18n": "^5.9.0", + "@wordpress/notices": "^5.9.0", + "@wordpress/plugins": "^7.9.0", + "@wordpress/scripts": "^30.1.0", "@wp-playground/cli": "^0.9.32", "classnames": "^2.5.1", "clsx": "^2.1.1", @@ -78,54 +78,50 @@ } }, "node_modules/@ariakit/core": { - "version": "0.3.11", - "resolved": "https://registry.npmjs.org/@ariakit/core/-/core-0.3.11.tgz", - "integrity": "sha512-+MnOeqnA4FLI/7vqsZLbZQHHN4ofd9kvkNjz44fNi0gqmD+ZbMWiDkFAvZII75dYnxYw5ZPpWjA4waK22VBWig==", - "dev": true, - "license": "MIT" + "version": "0.4.11", + "resolved": "https://registry.npmjs.org/@ariakit/core/-/core-0.4.11.tgz", + "integrity": "sha512-4kUYG/ztOvosMmmkVv1Q5anuXHsGnJGrWzHWW2JMFgOX93xsrfEfQcAcbMHkL8ijJgMmvPKUr6ajGl/QdpKlWg==", + "dev": true }, "node_modules/@ariakit/react": { - "version": "0.3.14", - "resolved": "https://registry.npmjs.org/@ariakit/react/-/react-0.3.14.tgz", - "integrity": "sha512-h71BPMZ2eW+E2ESbdYxSAEMR1DozYzd5eHE5IOzGd9Egi5u7EZxqmuW4CXVXZ1Y6vbaDMV3SudgPh7iHS/ArFw==", + "version": "0.4.12", + "resolved": "https://registry.npmjs.org/@ariakit/react/-/react-0.4.12.tgz", + "integrity": "sha512-d9WsuCH85ARfQHT6vTzdYLStAPQQbmk950FsOts43oPUgAb/rhtu2A3pqoX4bxVqN+h2ER+m3n2fvD/g+k8JkQ==", "dev": true, - "license": "MIT", "dependencies": { - "@ariakit/react-core": "0.3.14" + "@ariakit/react-core": "0.4.12" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/ariakit" }, "peerDependencies": { - "react": "^17.0.0 || ^18.0.0", - "react-dom": "^17.0.0 || ^18.0.0" + "react": "^17.0.0 || ^18.0.0 || ^19.0.0", + "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" } }, "node_modules/@ariakit/react-core": { - "version": "0.3.14", - "resolved": "https://registry.npmjs.org/@ariakit/react-core/-/react-core-0.3.14.tgz", - "integrity": "sha512-16Qj6kDPglpdWtU5roY9q+G66naOjauTY5HvUIaL2aLY0187ATaRrABIKoMMzTtJyhvsud4jFlzivz+/zCQ8yw==", + "version": "0.4.12", + "resolved": "https://registry.npmjs.org/@ariakit/react-core/-/react-core-0.4.12.tgz", + "integrity": "sha512-vBES1zlqvtW97IzmzxjDynBCAA97/z/ZeZDt2eN+kfVU8qrKExVdr7lU8ZDjC0rXidWF8aplybuyjnE1w5TACg==", "dev": true, - "license": "MIT", "dependencies": { - "@ariakit/core": "0.3.11", + "@ariakit/core": "0.4.11", "@floating-ui/dom": "^1.0.0", "use-sync-external-store": "^1.2.0" }, "peerDependencies": { - "react": "^17.0.0 || ^18.0.0", - "react-dom": "^17.0.0 || ^18.0.0" + "react": "^17.0.0 || ^18.0.0 || ^19.0.0", + "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" } }, "node_modules/@babel/code-frame": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.7.tgz", - "integrity": "sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.25.7.tgz", + "integrity": "sha512-0xZJFNE5XMpENsgfHYTw8FbX4kv53mFLn2i3XPoq69LyhYSCBJtitaHx9QnsVTrsogI4Z3+HtEfZ2/GFPOtf5g==", "dev": true, - "license": "MIT", "dependencies": { - "@babel/highlight": "^7.24.7", + "@babel/highlight": "^7.25.7", "picocolors": "^1.0.0" }, "engines": { @@ -193,16 +189,15 @@ } }, "node_modules/@babel/generator": { - "version": "7.25.0", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.25.0.tgz", - "integrity": "sha512-3LEEcj3PVW8pW2R1SR1M89g/qrYk/m/mB/tLqn7dn4sbBUQyTqnlod+II2U4dqiGtUmkcnAmkMDralTFZttRiw==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.25.7.tgz", + "integrity": "sha512-5Dqpl5fyV9pIAD62yK9P7fcA768uVPUyrQmqpqstHWgMma4feF1x/oFysBCVZLY5wJ2GkMUCdsNDnGZrPoR6rA==", "dev": true, - "license": "MIT", "dependencies": { - "@babel/types": "^7.25.0", + "@babel/types": "^7.25.7", "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.25", - "jsesc": "^2.5.1" + "jsesc": "^3.0.2" }, "engines": { "node": ">=6.9.0" @@ -324,14 +319,13 @@ } }, "node_modules/@babel/helper-module-imports": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.7.tgz", - "integrity": "sha512-8AyH3C+74cgCVVXow/myrynrAGv+nTVg5vKu2nZph9x7RcRwzmh0VFallJuFTZ9mx6u4eSdXZfcOzSqTUm0HCA==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.25.7.tgz", + "integrity": "sha512-o0xCgpNmRohmnoWKQ0Ij8IdddjyBFE4T2kagL/x6M3+4zUgc+4qTOUBoNe4XxDskt1HPKO007ZPiMgLDq2s7Kw==", "dev": true, - "license": "MIT", "dependencies": { - "@babel/traverse": "^7.24.7", - "@babel/types": "^7.24.7" + "@babel/traverse": "^7.25.7", + "@babel/types": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -370,11 +364,10 @@ } }, "node_modules/@babel/helper-plugin-utils": { - "version": "7.24.8", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.8.tgz", - "integrity": "sha512-FFWx5142D8h2Mgr/iPVGH5G7w6jDn4jUSpZTyDnQO0Yn7Ks2Kuz6Pci8H6MPCoUJegd/UZQ3tAvfLCxQSnWWwg==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.25.7.tgz", + "integrity": "sha512-eaPZai0PiqCi09pPs3pAFfl/zYgGaE6IdXtYvmf0qlcDTd3WCtO7JWCcRd64e0EQrcYgiHibEZnOGsSY4QSgaw==", "dev": true, - "license": "MIT", "engines": { "node": ">=6.9.0" } @@ -444,21 +437,19 @@ } }, "node_modules/@babel/helper-string-parser": { - "version": "7.24.8", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.8.tgz", - "integrity": "sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.7.tgz", + "integrity": "sha512-CbkjYdsJNHFk8uqpEkpCvRs3YRp9tY6FmFY7wLMSYuGYkrdUi7r2lc4/wqsvlHoMznX3WJ9IP8giGPq68T/Y6g==", "dev": true, - "license": "MIT", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz", - "integrity": "sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.7.tgz", + "integrity": "sha512-AM6TzwYqGChO45oiuPqwL2t20/HdMC1rTPAesnBCgPCSF1x3oN9MVUwQV2iyz4xqWrctwK5RNC8LV22kaQCNYg==", "dev": true, - "license": "MIT", "engines": { "node": ">=6.9.0" } @@ -503,13 +494,12 @@ } }, "node_modules/@babel/highlight": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.7.tgz", - "integrity": "sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.25.7.tgz", + "integrity": "sha512-iYyACpW3iW8Fw+ZybQK+drQre+ns/tKpXbNESfrhNnPLIklLbXr7MYJ6gPEd0iETGLOK+SxMjVvKb/ffmk+FEw==", "dev": true, - "license": "MIT", "dependencies": { - "@babel/helper-validator-identifier": "^7.24.7", + "@babel/helper-validator-identifier": "^7.25.7", "chalk": "^2.4.2", "js-tokens": "^4.0.0", "picocolors": "^1.0.0" @@ -519,11 +509,13 @@ } }, "node_modules/@babel/parser": { - "version": "7.25.0", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.0.tgz", - "integrity": "sha512-CzdIU9jdP0dg7HdyB+bHvDJGagUv+qtzZt5rYCWwW6tITNqV9odjp6Qu41gkG0ca5UfdDUWrKkiAnHHdGRnOrA==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.7.tgz", + "integrity": "sha512-aZn7ETtQsjjGG5HruveUK06cU3Hljuhd9Iojm4M8WWv3wLE6OkE5PWbDUkItmMgegmccaITudyuW5RPYrYlgWw==", "dev": true, - "license": "MIT", + "dependencies": { + "@babel/types": "^7.25.7" + }, "bin": { "parser": "bin/babel-parser.js" }, @@ -1698,16 +1690,15 @@ } }, "node_modules/@babel/plugin-transform-runtime": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.24.7.tgz", - "integrity": "sha512-YqXjrk4C+a1kZjewqt+Mmu2UuV1s07y8kqcUf4qYLnoqemhR4gRQikhdAhSVJioMjVTu6Mo6pAbaypEA3jY6fw==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.25.7.tgz", + "integrity": "sha512-Y9p487tyTzB0yDYQOtWnC+9HGOuogtP3/wNpun1xJXEEvI6vip59BSBTsHnekZLqxmPcgsrAKt46HAAb//xGhg==", "dev": true, - "license": "MIT", "dependencies": { - "@babel/helper-module-imports": "^7.24.7", - "@babel/helper-plugin-utils": "^7.24.7", + "@babel/helper-module-imports": "^7.25.7", + "@babel/helper-plugin-utils": "^7.25.7", "babel-plugin-polyfill-corejs2": "^0.4.10", - "babel-plugin-polyfill-corejs3": "^0.10.1", + "babel-plugin-polyfill-corejs3": "^0.10.6", "babel-plugin-polyfill-regenerator": "^0.6.1", "semver": "^6.3.1" }, @@ -2061,32 +2052,30 @@ } }, "node_modules/@babel/template": { - "version": "7.25.0", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.25.0.tgz", - "integrity": "sha512-aOOgh1/5XzKvg1jvVz7AVrx2piJ2XBi227DHmbY6y+bM9H2FlN+IfecYu4Xl0cNiiVejlsCri89LUsbj8vJD9Q==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.25.7.tgz", + "integrity": "sha512-wRwtAgI3bAS+JGU2upWNL9lSlDcRCqD05BZ1n3X2ONLH1WilFP6O1otQjeMK/1g0pvYcXC7b/qVUB1keofjtZA==", "dev": true, - "license": "MIT", "dependencies": { - "@babel/code-frame": "^7.24.7", - "@babel/parser": "^7.25.0", - "@babel/types": "^7.25.0" + "@babel/code-frame": "^7.25.7", + "@babel/parser": "^7.25.7", + "@babel/types": "^7.25.7" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.25.0", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.0.tgz", - "integrity": "sha512-ubALThHQy4GCf6mbb+5ZRNmLLCI7bJ3f8Q6LHBSRlSKSWj5a7dSUzJBLv3VuIhFrFPgjF4IzPF567YG/HSCdZA==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.7.tgz", + "integrity": "sha512-jatJPT1Zjqvh/1FyJs6qAHL+Dzb7sTb+xr7Q+gM1b+1oBsMsQQ4FkVKb6dFlJvLlVssqkRzV05Jzervt9yhnzg==", "dev": true, - "license": "MIT", "dependencies": { - "@babel/code-frame": "^7.24.7", - "@babel/generator": "^7.25.0", - "@babel/parser": "^7.25.0", - "@babel/template": "^7.25.0", - "@babel/types": "^7.25.0", + "@babel/code-frame": "^7.25.7", + "@babel/generator": "^7.25.7", + "@babel/parser": "^7.25.7", + "@babel/template": "^7.25.7", + "@babel/types": "^7.25.7", "debug": "^4.3.1", "globals": "^11.1.0" }, @@ -2095,14 +2084,13 @@ } }, "node_modules/@babel/types": { - "version": "7.25.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.0.tgz", - "integrity": "sha512-LcnxQSsd9aXOIgmmSpvZ/1yo46ra2ESYyqLcryaBZOghxy5qqOBjvCWP5JfkI8yl9rlxRgdLTTMCQQRcN2hdCg==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.7.tgz", + "integrity": "sha512-vwIVdXG+j+FOpkwqHRcBgHLYNL7XMkufrlaFvL9o6Ai9sJn9+PdyIL5qa0XzTZw084c+u9LOls53eoZWP/W5WQ==", "dev": true, - "license": "MIT", "dependencies": { - "@babel/helper-string-parser": "^7.24.8", - "@babel/helper-validator-identifier": "^7.24.7", + "@babel/helper-string-parser": "^7.25.7", + "@babel/helper-validator-identifier": "^7.25.7", "to-fast-properties": "^2.0.0" }, "engines": { @@ -2117,9 +2105,9 @@ "license": "MIT" }, "node_modules/@csstools/css-parser-algorithms": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-2.7.1.tgz", - "integrity": "sha512-2SJS42gxmACHgikc1WGesXLIT8d/q2l0UFM7TaEeIzdFCE/FPMtTiizcPGGJtlPo2xuQzY09OhrLTzRxqJqwGw==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-3.0.1.tgz", + "integrity": "sha512-lSquqZCHxDfuTg/Sk2hiS0mcSFCEBuj49JfzPHJogDBT0mGCyY5A1AQzBWngitrp7i1/HAZpIgzF/VjhOEIJIg==", "dev": true, "funding": [ { @@ -2131,18 +2119,17 @@ "url": "https://opencollective.com/csstools" } ], - "license": "MIT", "engines": { - "node": "^14 || ^16 || >=18" + "node": ">=18" }, "peerDependencies": { - "@csstools/css-tokenizer": "^2.4.1" + "@csstools/css-tokenizer": "^3.0.1" } }, "node_modules/@csstools/css-tokenizer": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-2.4.1.tgz", - "integrity": "sha512-eQ9DIktFJBhGjioABJRtUucoWR2mwllurfnM8LuNGAqX3ViZXaUchqk+1s7jjtkFiT9ySdACsFEA3etErkALUg==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-3.0.1.tgz", + "integrity": "sha512-UBqaiu7kU0lfvaP982/o3khfXccVlHPWp0/vwwiIgDF0GmqqqxoiXC/6FCjlS9u92f7CoEz6nXKQnrn1kIAkOw==", "dev": true, "funding": [ { @@ -2154,15 +2141,14 @@ "url": "https://opencollective.com/csstools" } ], - "license": "MIT", "engines": { - "node": "^14 || ^16 || >=18" + "node": ">=18" } }, "node_modules/@csstools/media-query-list-parser": { - "version": "2.1.13", - "resolved": "https://registry.npmjs.org/@csstools/media-query-list-parser/-/media-query-list-parser-2.1.13.tgz", - "integrity": "sha512-XaHr+16KRU9Gf8XLi3q8kDlI18d5vzKSKCY510Vrtc9iNR0NJzbY9hhTmwhzYZj/ZwGL4VmB3TA9hJW0Um2qFA==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@csstools/media-query-list-parser/-/media-query-list-parser-3.0.1.tgz", + "integrity": "sha512-HNo8gGD02kHmcbX6PvCoUuOQvn4szyB9ca63vZHKX5A81QytgDG4oxG4IaEfHTlEZSZ6MjPEMWIVU+zF2PZcgw==", "dev": true, "funding": [ { @@ -2174,19 +2160,18 @@ "url": "https://opencollective.com/csstools" } ], - "license": "MIT", "engines": { - "node": "^14 || ^16 || >=18" + "node": ">=18" }, "peerDependencies": { - "@csstools/css-parser-algorithms": "^2.7.1", - "@csstools/css-tokenizer": "^2.4.1" + "@csstools/css-parser-algorithms": "^3.0.1", + "@csstools/css-tokenizer": "^3.0.1" } }, "node_modules/@csstools/selector-specificity": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-3.1.1.tgz", - "integrity": "sha512-a7cxGcJ2wIlMFLlh8z2ONm+715QkPHiyJcxwQlKOz/03GPw1COpfhcmC9wm4xlZfp//jWHNNMwzjtqHXVWU9KA==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-4.0.0.tgz", + "integrity": "sha512-189nelqtPd8++phaHNwYovKZI0FOzH1vQEE3QhHHkNIGrg5fSs9CbYP3RvfEH5geztnIA9Jwq91wyOIwAW5JIQ==", "dev": true, "funding": [ { @@ -2198,12 +2183,11 @@ "url": "https://opencollective.com/csstools" } ], - "license": "MIT-0", "engines": { - "node": "^14 || ^16 || >=18" + "node": ">=18" }, "peerDependencies": { - "postcss-selector-parser": "^6.0.13" + "postcss-selector-parser": "^6.1.0" } }, "node_modules/@discoveryjs/json-ext": { @@ -3679,13 +3663,12 @@ } }, "node_modules/@playwright/test": { - "version": "1.45.3", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.45.3.tgz", - "integrity": "sha512-UKF4XsBfy+u3MFWEH44hva1Q8Da28G6RFtR2+5saw+jgAFQV5yYnB1fu68Mz7fO+5GJF3wgwAIs0UelU8TxFrA==", + "version": "1.47.2", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.47.2.tgz", + "integrity": "sha512-jTXRsoSPONAs8Za9QEQdyjFn+0ZQFjCiIztAIF6bi1HqhBzG9Ma7g1WotyiGqFSBRZjIEqMdT8RUlbk1QVhzCQ==", "dev": true, - "license": "Apache-2.0", "dependencies": { - "playwright": "1.45.3" + "playwright": "1.47.2" }, "bin": { "playwright": "cli.js" @@ -3765,7 +3748,6 @@ "resolved": "https://registry.npmjs.org/@preact/signals/-/signals-1.3.0.tgz", "integrity": "sha512-EOMeg42SlLS72dhoq6Vjq08havnLseWmPQ8A0YsgIAqMgWgx7V1a39+Pxo6i7SY5NwJtH4849JogFq3M67AzWg==", "dev": true, - "license": "MIT", "dependencies": { "@preact/signals-core": "^1.7.0" }, @@ -3778,11 +3760,10 @@ } }, "node_modules/@preact/signals-core": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/@preact/signals-core/-/signals-core-1.7.0.tgz", - "integrity": "sha512-bEZLgmJGSBVP5PUPDowhPW3bVdMmp9Tr5OEl+SQK+8Tv9T7UsIfyN905cfkmmeqw8z4xp8T6zrl4M1uj9+HAfg==", + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@preact/signals-core/-/signals-core-1.8.0.tgz", + "integrity": "sha512-OBvUsRZqNmjzCZXWLxkZfhcgT+Fk8DDcT/8vD6a1xhDemodyy87UJRJfASMuSD8FaAIeGgGm85ydXhm7lr4fyA==", "dev": true, - "license": "MIT", "funding": { "type": "opencollective", "url": "https://opencollective.com/preact" @@ -3848,18 +3829,6 @@ "tar-stream": "^3.1.5" } }, - "node_modules/@puppeteer/browsers/node_modules/tar-stream": { - "version": "3.1.7", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.7.tgz", - "integrity": "sha512-qJj60CXt7IU1Ffyc3NJMjh6EkuCFej46zUqJ4J7pqYlThyd9bO0XBTmcOIhSzZJVWfsLks0+nle/j538YAW9RQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "b4a": "^1.6.4", - "fast-fifo": "^1.2.0", - "streamx": "^2.15.0" - } - }, "node_modules/@puppeteer/browsers/node_modules/yargs": { "version": "17.7.1", "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz", @@ -3884,7 +3853,6 @@ "resolved": "https://registry.npmjs.org/@radix-ui/primitive/-/primitive-1.0.1.tgz", "integrity": "sha512-yQ8oGX2GVsEYMWGxcovu1uGWPCxV5BFfeeYxqPmuAzUyLT9qmaMXSAhXpb0WrspIeqYzdJpkh2vHModJPgRIaw==", "dev": true, - "license": "MIT", "dependencies": { "@babel/runtime": "^7.13.10" } @@ -3894,7 +3862,6 @@ "resolved": "https://registry.npmjs.org/@radix-ui/react-compose-refs/-/react-compose-refs-1.0.1.tgz", "integrity": "sha512-fDSBgd44FKHa1FRMU59qBMPFcl2PZE+2nmqunj+BWFyYYjnhIDWL2ItDs3rrbJDQOtzt5nIebLCQc4QRfz6LJw==", "dev": true, - "license": "MIT", "dependencies": { "@babel/runtime": "^7.13.10" }, @@ -3913,7 +3880,6 @@ "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.0.1.tgz", "integrity": "sha512-ebbrdFoYTcuZ0v4wG5tedGnp9tzcV8awzsxYph7gXUyvnNLuTIcCk1q17JEbnVhXAKG9oX3KtchwiMIAYp9NLg==", "dev": true, - "license": "MIT", "dependencies": { "@babel/runtime": "^7.13.10" }, @@ -3932,7 +3898,6 @@ "resolved": "https://registry.npmjs.org/@radix-ui/react-dialog/-/react-dialog-1.0.5.tgz", "integrity": "sha512-GjWJX/AUpB703eEBanuBnIWdIXg6NvJFCXcNlSZk4xdszCdhrJgBoUd1cGk67vFO+WdA2pfI/plOpqz/5GUP6Q==", "dev": true, - "license": "MIT", "dependencies": { "@babel/runtime": "^7.13.10", "@radix-ui/primitive": "1.0.1", @@ -3970,7 +3935,6 @@ "resolved": "https://registry.npmjs.org/@radix-ui/react-dismissable-layer/-/react-dismissable-layer-1.0.5.tgz", "integrity": "sha512-aJeDjQhywg9LBu2t/At58hCvr7pEm0o2Ke1x33B+MhjNmmZ17sy4KImo0KPLgsnc/zN7GPdce8Cnn0SWvwZO7g==", "dev": true, - "license": "MIT", "dependencies": { "@babel/runtime": "^7.13.10", "@radix-ui/primitive": "1.0.1", @@ -3999,7 +3963,6 @@ "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-guards/-/react-focus-guards-1.0.1.tgz", "integrity": "sha512-Rect2dWbQ8waGzhMavsIbmSVCgYxkXLxxR3ZvCX79JOglzdEy4JXMb98lq4hPxUbLr77nP0UOGf4rcMU+s1pUA==", "dev": true, - "license": "MIT", "dependencies": { "@babel/runtime": "^7.13.10" }, @@ -4018,7 +3981,6 @@ "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-scope/-/react-focus-scope-1.0.4.tgz", "integrity": "sha512-sL04Mgvf+FmyvZeYfNu1EPAaaxD+aw7cYeIB9L9Fvq8+urhltTRaEo5ysKOpHuKPclsZcSUMKlN05x4u+CINpA==", "dev": true, - "license": "MIT", "dependencies": { "@babel/runtime": "^7.13.10", "@radix-ui/react-compose-refs": "1.0.1", @@ -4045,7 +4007,6 @@ "resolved": "https://registry.npmjs.org/@radix-ui/react-id/-/react-id-1.0.1.tgz", "integrity": "sha512-tI7sT/kqYp8p96yGWY1OAnLHrqDgzHefRBKQ2YAkBS5ja7QLcZ9Z/uY7bEjPUatf8RomoXM8/1sMj1IJaE5UzQ==", "dev": true, - "license": "MIT", "dependencies": { "@babel/runtime": "^7.13.10", "@radix-ui/react-use-layout-effect": "1.0.1" @@ -4065,7 +4026,6 @@ "resolved": "https://registry.npmjs.org/@radix-ui/react-portal/-/react-portal-1.0.4.tgz", "integrity": "sha512-Qki+C/EuGUVCQTOTD5vzJzJuMUlewbzuKyUy+/iHM2uwGiru9gZeBJtHAPKAEkB5KWGi9mP/CHKcY0wt1aW45Q==", "dev": true, - "license": "MIT", "dependencies": { "@babel/runtime": "^7.13.10", "@radix-ui/react-primitive": "1.0.3" @@ -4090,7 +4050,6 @@ "resolved": "https://registry.npmjs.org/@radix-ui/react-presence/-/react-presence-1.0.1.tgz", "integrity": "sha512-UXLW4UAbIY5ZjcvzjfRFo5gxva8QirC9hF7wRE4U5gz+TP0DbRk+//qyuAQ1McDxBt1xNMBTaciFGvEmJvAZCg==", "dev": true, - "license": "MIT", "dependencies": { "@babel/runtime": "^7.13.10", "@radix-ui/react-compose-refs": "1.0.1", @@ -4116,7 +4075,6 @@ "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-1.0.3.tgz", "integrity": "sha512-yi58uVyoAcK/Nq1inRY56ZSjKypBNKTa/1mcL8qdl6oJeEaDbOldlzrGn7P6Q3Id5d+SYNGc5AJgc4vGhjs5+g==", "dev": true, - "license": "MIT", "dependencies": { "@babel/runtime": "^7.13.10", "@radix-ui/react-slot": "1.0.2" @@ -4141,7 +4099,6 @@ "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.0.2.tgz", "integrity": "sha512-YeTpuq4deV+6DusvVUW4ivBgnkHwECUu0BiN43L5UCDFgdhsRUWAghhTF5MbvNTPzmiFOx90asDSUjWuCNapwg==", "dev": true, - "license": "MIT", "dependencies": { "@babel/runtime": "^7.13.10", "@radix-ui/react-compose-refs": "1.0.1" @@ -4161,7 +4118,6 @@ "resolved": "https://registry.npmjs.org/@radix-ui/react-use-callback-ref/-/react-use-callback-ref-1.0.1.tgz", "integrity": "sha512-D94LjX4Sp0xJFVaoQOd3OO9k7tpBYNOXdVhkltUbGv2Qb9OXdrg/CpsjlZv7ia14Sylv398LswWBVVu5nqKzAQ==", "dev": true, - "license": "MIT", "dependencies": { "@babel/runtime": "^7.13.10" }, @@ -4180,7 +4136,6 @@ "resolved": "https://registry.npmjs.org/@radix-ui/react-use-controllable-state/-/react-use-controllable-state-1.0.1.tgz", "integrity": "sha512-Svl5GY5FQeN758fWKrjM6Qb7asvXeiZltlT4U2gVfl8Gx5UAv2sMR0LWo8yhsIZh2oQ0eFdZ59aoOOMV7b47VA==", "dev": true, - "license": "MIT", "dependencies": { "@babel/runtime": "^7.13.10", "@radix-ui/react-use-callback-ref": "1.0.1" @@ -4200,7 +4155,6 @@ "resolved": "https://registry.npmjs.org/@radix-ui/react-use-escape-keydown/-/react-use-escape-keydown-1.0.3.tgz", "integrity": "sha512-vyL82j40hcFicA+M4Ex7hVkB9vHgSse1ZWomAqV2Je3RleKGO5iM8KMOEtfoSB0PnIelMd2lATjTGMYqN5ylTg==", "dev": true, - "license": "MIT", "dependencies": { "@babel/runtime": "^7.13.10", "@radix-ui/react-use-callback-ref": "1.0.1" @@ -4220,7 +4174,6 @@ "resolved": "https://registry.npmjs.org/@radix-ui/react-use-layout-effect/-/react-use-layout-effect-1.0.1.tgz", "integrity": "sha512-v/5RegiJWYdoCvMnITBkNNx6bCj20fiaJnWtRkU18yITptraXjffz5Qbn05uOiQnOvi+dbkznkoaMltz1GnszQ==", "dev": true, - "license": "MIT", "dependencies": { "@babel/runtime": "^7.13.10" }, @@ -4501,6 +4454,28 @@ "@sinonjs/commons": "^3.0.0" } }, + "node_modules/@stylistic/stylelint-plugin": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@stylistic/stylelint-plugin/-/stylelint-plugin-3.1.1.tgz", + "integrity": "sha512-XagAHHIa528EvyGybv8EEYGK5zrVW74cHpsjhtovVATbhDRuJYfE+X4HCaAieW9lCkwbX6L+X0I4CiUG3w/hFw==", + "dev": true, + "dependencies": { + "@csstools/css-parser-algorithms": "^3.0.1", + "@csstools/css-tokenizer": "^3.0.1", + "@csstools/media-query-list-parser": "^3.0.1", + "is-plain-object": "^5.0.0", + "postcss-selector-parser": "^6.1.2", + "postcss-value-parser": "^4.2.0", + "style-search": "^0.1.0", + "stylelint": "^16.8.2" + }, + "engines": { + "node": "^18.12 || >=20.9" + }, + "peerDependencies": { + "stylelint": "^16.8.0" + } + }, "node_modules/@svgr/babel-plugin-add-jsx-attribute": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-8.0.0.tgz", @@ -4883,7 +4858,6 @@ "resolved": "https://registry.npmjs.org/@tannin/compile/-/compile-1.1.0.tgz", "integrity": "sha512-n8m9eNDfoNZoxdvWiTfW/hSPhehzLJ3zW7f8E7oT6mCROoMNWCB4TYtv041+2FMAxweiE0j7i1jubQU4MEC/Gg==", "dev": true, - "license": "MIT", "dependencies": { "@tannin/evaluate": "^1.2.0", "@tannin/postfix": "^1.1.0" @@ -4893,15 +4867,13 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/@tannin/evaluate/-/evaluate-1.2.0.tgz", "integrity": "sha512-3ioXvNowbO/wSrxsDG5DKIMxC81P0QrQTYai8zFNY+umuoHWRPbQ/TuuDEOju9E+jQDXmj6yI5GyejNuh8I+eg==", - "dev": true, - "license": "MIT" + "dev": true }, "node_modules/@tannin/plural-forms": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@tannin/plural-forms/-/plural-forms-1.1.0.tgz", "integrity": "sha512-xl9R2mDZO/qiHam1AgMnAES6IKIg7OBhcXqy6eDsRCdXuxAFPcjrej9HMjyCLE0DJ/8cHf0i5OQTstuBRhpbHw==", "dev": true, - "license": "MIT", "dependencies": { "@tannin/compile": "^1.1.0" } @@ -4910,8 +4882,7 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/@tannin/postfix/-/postfix-1.1.0.tgz", "integrity": "sha512-oocsqY7g0cR+Gur5jRQLSrX2OtpMLMse1I10JQBm8CdGMrDkh1Mg2gjsiquMHRtBs4Qwu5wgEp5GgIYHk4SNPw==", - "dev": true, - "license": "MIT" + "dev": true }, "node_modules/@testing-library/dom": { "version": "10.4.0", @@ -5464,8 +5435,7 @@ "version": "1.2.5", "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.5.tgz", "integrity": "sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==", - "dev": true, - "license": "MIT" + "dev": true }, "node_modules/@types/mousetrap": { "version": "1.6.15", @@ -5498,8 +5468,7 @@ "version": "2.4.4", "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz", "integrity": "sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==", - "dev": true, - "license": "MIT" + "dev": true }, "node_modules/@types/parse-json": { "version": "4.0.2", @@ -5611,7 +5580,6 @@ "resolved": "https://registry.npmjs.org/@types/simple-peer/-/simple-peer-9.11.8.tgz", "integrity": "sha512-rvqefdp2rvIA6wiomMgKWd2UZNPe6LM2EV5AuY3CPQJF+8TbdrL5TjYdMf0VAjGczzlkH4l1NjDkihwbj3Xodw==", "dev": true, - "license": "MIT", "dependencies": { "@types/node": "*" } @@ -6813,15 +6781,14 @@ } }, "node_modules/@wordpress/a11y": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/a11y/-/a11y-4.4.0.tgz", - "integrity": "sha512-7khdWHnKui8C3792D63FjDFSDflLc8DLY5s/i6b8aTeqz8GGvH7iD+5PJ+MQfmtU4OU5CwCnlSci3d90+DIVQQ==", + "version": "4.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/a11y/-/a11y-4.9.0.tgz", + "integrity": "sha512-OfM/wnB8ItmGM5I/u+4E4aJdqvy98kg24zrS+CqPLgq3eYG6MNkIQJZov/I3XcsyxGjLkkLsybEM5xEYUN0ZtA==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", - "@wordpress/dom-ready": "^4.4.0", - "@wordpress/i18n": "^5.4.0" + "@wordpress/dom-ready": "^4.9.0", + "@wordpress/i18n": "^5.9.0" }, "engines": { "node": ">=18.12.0", @@ -6829,15 +6796,14 @@ } }, "node_modules/@wordpress/api-fetch": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/api-fetch/-/api-fetch-7.4.0.tgz", - "integrity": "sha512-14cEYs04nxhWEL/TjDVx1rUmmkCZvAzkbWTd5Yzg0S1ETVJpTpdChnLLiQpr9jWMffjVPo711kG2sKpKqNmi6g==", + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/api-fetch/-/api-fetch-7.9.0.tgz", + "integrity": "sha512-iqH4lNiH8FnIkJ8Nxx4KQYQMd4c/4OwZfjrk0ITwMK5PaVJHnFZ7xZV6ncMbgXbf0VjuPjfKMRmPzxICXw08IQ==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", - "@wordpress/i18n": "^5.4.0", - "@wordpress/url": "^4.4.0" + "@wordpress/i18n": "^5.9.0", + "@wordpress/url": "^4.9.0" }, "engines": { "node": ">=18.12.0", @@ -6845,11 +6811,10 @@ } }, "node_modules/@wordpress/autop": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/autop/-/autop-4.4.0.tgz", - "integrity": "sha512-dM6tGSpQNpYL9lEVaJT8zt1JH2xDFjgucH2ZQeusRFMra4rBoz7n2EbX/Kk18215z4BwPAIxx/qyqo83nzsncg==", + "version": "4.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/autop/-/autop-4.9.0.tgz", + "integrity": "sha512-LkPzRV8MIm1Qmky8CllAm38J1wm5+3PLIdVsi3lEKc8B3IVEycx4W4K9bwkSFmbFGsD9WbpBKdIStszysif/aQ==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0" }, @@ -6859,11 +6824,10 @@ } }, "node_modules/@wordpress/babel-preset-default": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/babel-preset-default/-/babel-preset-default-8.4.0.tgz", - "integrity": "sha512-BIbHlZxXGG6gEDrTUJ3s7wU2mAPbHFCkc7QkeTD+7GMIixEzEPr7IBbrpHkcwLIRWqEvc9LB69YPrWklUKJZmg==", + "version": "8.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/babel-preset-default/-/babel-preset-default-8.9.0.tgz", + "integrity": "sha512-qkhnRyku8FeiUGXfcMYfr/u2SG6NIj/9hWoe5Ubpay7gpX2A1H9+rLrTvABRiip7zit88JJ6b4VUqLL9Cr23bg==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/core": "^7.16.0", "@babel/plugin-transform-react-jsx": "^7.16.0", @@ -6871,8 +6835,8 @@ "@babel/preset-env": "^7.16.0", "@babel/preset-typescript": "^7.16.0", "@babel/runtime": "^7.16.0", - "@wordpress/browserslist-config": "^6.4.0", - "@wordpress/warning": "^3.4.0", + "@wordpress/browserslist-config": "^6.9.0", + "@wordpress/warning": "^3.9.0", "browserslist": "^4.21.10", "core-js": "^3.31.0", "react": "^18.3.0" @@ -6883,22 +6847,20 @@ } }, "node_modules/@wordpress/base-styles": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/base-styles/-/base-styles-5.4.0.tgz", - "integrity": "sha512-W/Tazd2nhiMoUWtZD0rVRbByH2uXakOR6htnqM1NT2dbnwWS/NsT0AQVY5JMTIrGQ8p4BSgq68/+xb1r4DXxTw==", + "version": "5.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/base-styles/-/base-styles-5.9.0.tgz", + "integrity": "sha512-b0erDgc8I6NTjbHaPL4GTa3IbfHp4o1+Yx74oT6gLgV9i7Qd8UjBmsUDYIZTV1jqB/ch9DuaDqDaNYqW6tXpZg==", "dev": true, - "license": "GPL-2.0-or-later", "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" } }, "node_modules/@wordpress/blob": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/blob/-/blob-4.4.0.tgz", - "integrity": "sha512-f0NSYu6RSkJWwtLiyTn5NnQ2qFV9t9pXvjLANTRDphxnUl608dMWSGyoIC5+mCEDZPlprTSEY/VXeGOGe0FrkQ==", + "version": "4.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/blob/-/blob-4.9.0.tgz", + "integrity": "sha512-ygpupWynPx0u1zqVewqm6NOR9rmOEUrvfn0QzdH8Mt/O40P/SFX6kGrXpddTlawnayA0gfFB4ADUyXOrBuUhdA==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0" }, @@ -6908,45 +6870,45 @@ } }, "node_modules/@wordpress/block-editor": { - "version": "13.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/block-editor/-/block-editor-13.4.0.tgz", - "integrity": "sha512-J2XwsngpxLaue8EROloT6KyRFjCk8JCl/K9UalEkrpYFFj084z7/px6LT6300Maue0ejkN8I3X4/XOe0tgOdbQ==", + "version": "14.4.0", + "resolved": "https://registry.npmjs.org/@wordpress/block-editor/-/block-editor-14.4.0.tgz", + "integrity": "sha512-L6QCvHdUSvSSskIHOuLqk2c1CHAXs5mWwRKiv9oYx4MUONesyWpd88p8jCFbHMX8Jtoq55TQuJSTwKjFFS+sTA==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", "@emotion/react": "^11.7.1", "@emotion/styled": "^11.6.0", "@react-spring/web": "^9.4.5", - "@wordpress/a11y": "^4.4.0", - "@wordpress/api-fetch": "^7.4.0", - "@wordpress/blob": "^4.4.0", - "@wordpress/blocks": "^13.4.0", - "@wordpress/commands": "^1.4.0", - "@wordpress/components": "^28.4.0", - "@wordpress/compose": "^7.4.0", - "@wordpress/data": "^10.4.0", - "@wordpress/date": "^5.4.0", - "@wordpress/deprecated": "^4.4.0", - "@wordpress/dom": "^4.4.0", - "@wordpress/element": "^6.4.0", - "@wordpress/escape-html": "^3.4.0", - "@wordpress/hooks": "^4.4.0", - "@wordpress/html-entities": "^4.4.0", - "@wordpress/i18n": "^5.4.0", - "@wordpress/icons": "^10.4.0", - "@wordpress/is-shallow-equal": "^5.4.0", - "@wordpress/keyboard-shortcuts": "^5.4.0", - "@wordpress/keycodes": "^4.4.0", - "@wordpress/notices": "^5.4.0", - "@wordpress/preferences": "^4.4.0", - "@wordpress/private-apis": "^1.4.0", - "@wordpress/rich-text": "^7.4.0", - "@wordpress/style-engine": "^2.4.0", - "@wordpress/token-list": "^3.4.0", - "@wordpress/url": "^4.4.0", - "@wordpress/warning": "^3.4.0", - "@wordpress/wordcount": "^4.4.0", + "@wordpress/a11y": "^4.9.0", + "@wordpress/api-fetch": "^7.9.0", + "@wordpress/blob": "^4.9.0", + "@wordpress/block-serialization-default-parser": "^5.9.0", + "@wordpress/blocks": "^13.9.0", + "@wordpress/commands": "^1.9.0", + "@wordpress/components": "^28.9.0", + "@wordpress/compose": "^7.9.0", + "@wordpress/data": "^10.9.0", + "@wordpress/date": "^5.9.0", + "@wordpress/deprecated": "^4.9.0", + "@wordpress/dom": "^4.9.0", + "@wordpress/element": "^6.9.0", + "@wordpress/escape-html": "^3.9.0", + "@wordpress/hooks": "^4.9.0", + "@wordpress/html-entities": "^4.9.0", + "@wordpress/i18n": "^5.9.0", + "@wordpress/icons": "^10.9.0", + "@wordpress/is-shallow-equal": "^5.9.0", + "@wordpress/keyboard-shortcuts": "^5.9.0", + "@wordpress/keycodes": "^4.9.0", + "@wordpress/notices": "^5.9.0", + "@wordpress/preferences": "^4.9.0", + "@wordpress/private-apis": "^1.9.0", + "@wordpress/rich-text": "^7.9.0", + "@wordpress/style-engine": "^2.9.0", + "@wordpress/token-list": "^3.9.0", + "@wordpress/url": "^4.9.0", + "@wordpress/warning": "^3.9.0", + "@wordpress/wordcount": "^4.9.0", "change-case": "^4.1.2", "clsx": "^2.1.1", "colord": "^2.7.0", @@ -6954,8 +6916,9 @@ "diff": "^4.0.2", "fast-deep-equal": "^3.1.3", "memize": "^2.1.0", + "parsel-js": "^1.1.2", "postcss": "^8.4.21", - "postcss-prefixwrap": "^1.41.0", + "postcss-prefix-selector": "^1.16.0", "postcss-urlrebase": "^1.4.0", "react-autosize-textarea": "^7.1.0", "react-easy-crop": "^5.0.6", @@ -6971,46 +6934,45 @@ } }, "node_modules/@wordpress/block-library": { - "version": "9.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/block-library/-/block-library-9.4.0.tgz", - "integrity": "sha512-pWYrHQmVB8Jirbvf0NPeIB3kAYXvEE8kzTx48PahM1LQkvF8rtMOMeT48c+NT+SvjJe52+jVUEzYx+H4w2IKbg==", + "version": "9.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/block-library/-/block-library-9.9.0.tgz", + "integrity": "sha512-UWetp9fwocia8n17l2XwIUK6kGcm4PoWEGeBbdiShYNAKXc4mEa6QEuoOp8jOL26JQ21Ln1jFZYhkbhR7N/rTw==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", - "@wordpress/a11y": "^4.4.0", - "@wordpress/api-fetch": "^7.4.0", - "@wordpress/autop": "^4.4.0", - "@wordpress/blob": "^4.4.0", - "@wordpress/block-editor": "^13.4.0", - "@wordpress/blocks": "^13.4.0", - "@wordpress/components": "^28.4.0", - "@wordpress/compose": "^7.4.0", - "@wordpress/core-data": "^7.4.0", - "@wordpress/data": "^10.4.0", - "@wordpress/date": "^5.4.0", - "@wordpress/deprecated": "^4.4.0", - "@wordpress/dom": "^4.4.0", - "@wordpress/element": "^6.4.0", - "@wordpress/escape-html": "^3.4.0", - "@wordpress/hooks": "^4.4.0", - "@wordpress/html-entities": "^4.4.0", - "@wordpress/i18n": "^5.4.0", - "@wordpress/icons": "^10.4.0", - "@wordpress/interactivity": "^6.4.0", - "@wordpress/interactivity-router": "^2.4.0", - "@wordpress/keyboard-shortcuts": "^5.4.0", - "@wordpress/keycodes": "^4.4.0", - "@wordpress/notices": "^5.4.0", - "@wordpress/patterns": "^2.4.0", - "@wordpress/primitives": "^4.4.0", - "@wordpress/private-apis": "^1.4.0", - "@wordpress/reusable-blocks": "^5.4.0", - "@wordpress/rich-text": "^7.4.0", - "@wordpress/server-side-render": "^5.4.0", - "@wordpress/url": "^4.4.0", - "@wordpress/viewport": "^6.4.0", - "@wordpress/wordcount": "^4.4.0", + "@wordpress/a11y": "^4.9.0", + "@wordpress/api-fetch": "^7.9.0", + "@wordpress/autop": "^4.9.0", + "@wordpress/blob": "^4.9.0", + "@wordpress/block-editor": "^14.4.0", + "@wordpress/blocks": "^13.9.0", + "@wordpress/components": "^28.9.0", + "@wordpress/compose": "^7.9.0", + "@wordpress/core-data": "^7.9.0", + "@wordpress/data": "^10.9.0", + "@wordpress/date": "^5.9.0", + "@wordpress/deprecated": "^4.9.0", + "@wordpress/dom": "^4.9.0", + "@wordpress/element": "^6.9.0", + "@wordpress/escape-html": "^3.9.0", + "@wordpress/hooks": "^4.9.0", + "@wordpress/html-entities": "^4.9.0", + "@wordpress/i18n": "^5.9.0", + "@wordpress/icons": "^10.9.0", + "@wordpress/interactivity": "^6.9.0", + "@wordpress/interactivity-router": "^2.9.0", + "@wordpress/keyboard-shortcuts": "^5.9.0", + "@wordpress/keycodes": "^4.9.0", + "@wordpress/notices": "^5.9.0", + "@wordpress/patterns": "^2.9.0", + "@wordpress/primitives": "^4.9.0", + "@wordpress/private-apis": "^1.9.0", + "@wordpress/reusable-blocks": "^5.9.0", + "@wordpress/rich-text": "^7.9.0", + "@wordpress/server-side-render": "^5.9.0", + "@wordpress/url": "^4.9.0", + "@wordpress/viewport": "^6.9.0", + "@wordpress/wordcount": "^4.9.0", "change-case": "^4.1.2", "clsx": "^2.1.1", "colord": "^2.7.0", @@ -7031,11 +6993,10 @@ } }, "node_modules/@wordpress/block-serialization-default-parser": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/block-serialization-default-parser/-/block-serialization-default-parser-5.4.0.tgz", - "integrity": "sha512-FlJzVYE3EH4WOfcbdd2elG7scCHupWvssKIjxmXLMaIy032OjotlKemHXcKHE9oNI6EiUhmuQGqa+BFDAV1zNQ==", + "version": "5.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/block-serialization-default-parser/-/block-serialization-default-parser-5.9.0.tgz", + "integrity": "sha512-79jJeAocnmFzBPeSokjoa8ApsCdMO6DZB7d9mV41kRY9wuLMMPFmA6gxK0QqtsxBT8Qgl33ebxKCZVx9BZwvcQ==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0" }, @@ -7045,28 +7006,27 @@ } }, "node_modules/@wordpress/blocks": { - "version": "13.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/blocks/-/blocks-13.4.0.tgz", - "integrity": "sha512-//V6yfFHyWqEPeMHnsBDew3J2e9gITJlYi2UN/1LKwmNQFs0dWqGUI/PBXUU8vlkEG/ACJLdKe/HHrGga2nKeA==", + "version": "13.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/blocks/-/blocks-13.9.0.tgz", + "integrity": "sha512-j89EOfSoACFyVKUjZsIohJb/XW9rEJu0wbA1/SmZY2Wcg+dAPl+lojpK3Hi0or7Lks9/6oQov3DXHattgyZfaA==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", - "@wordpress/autop": "^4.4.0", - "@wordpress/blob": "^4.4.0", - "@wordpress/block-serialization-default-parser": "^5.4.0", - "@wordpress/data": "^10.4.0", - "@wordpress/deprecated": "^4.4.0", - "@wordpress/dom": "^4.4.0", - "@wordpress/element": "^6.4.0", - "@wordpress/hooks": "^4.4.0", - "@wordpress/html-entities": "^4.4.0", - "@wordpress/i18n": "^5.4.0", - "@wordpress/is-shallow-equal": "^5.4.0", - "@wordpress/private-apis": "^1.4.0", - "@wordpress/rich-text": "^7.4.0", - "@wordpress/shortcode": "^4.4.0", - "@wordpress/warning": "^3.4.0", + "@wordpress/autop": "^4.9.0", + "@wordpress/blob": "^4.9.0", + "@wordpress/block-serialization-default-parser": "^5.9.0", + "@wordpress/data": "^10.9.0", + "@wordpress/deprecated": "^4.9.0", + "@wordpress/dom": "^4.9.0", + "@wordpress/element": "^6.9.0", + "@wordpress/hooks": "^4.9.0", + "@wordpress/html-entities": "^4.9.0", + "@wordpress/i18n": "^5.9.0", + "@wordpress/is-shallow-equal": "^5.9.0", + "@wordpress/private-apis": "^1.9.0", + "@wordpress/rich-text": "^7.9.0", + "@wordpress/shortcode": "^4.9.0", + "@wordpress/warning": "^3.9.0", "change-case": "^4.1.2", "colord": "^2.7.0", "fast-deep-equal": "^3.1.3", @@ -7088,31 +7048,29 @@ } }, "node_modules/@wordpress/browserslist-config": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/browserslist-config/-/browserslist-config-6.4.0.tgz", - "integrity": "sha512-6Uvh++K+UCOSSlE589uHtxVWa7vJmcFjDYHT7/VsdrHkwpCRwJd0UAUrmTBqiekGYo3NQzZW/ikODxR+lkORjw==", + "version": "6.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/browserslist-config/-/browserslist-config-6.9.0.tgz", + "integrity": "sha512-yv8KJrMZTvhY+PNWQ6CQVTUs/6sAVgim7AxGpgTkVzDYKvTeJKuZqeHzAWtHKTOG+ORIj/29XtpIOU85R9dkng==", "dev": true, - "license": "GPL-2.0-or-later", "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" } }, "node_modules/@wordpress/commands": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/commands/-/commands-1.4.0.tgz", - "integrity": "sha512-7L8/bnFsxeuJMmyoKiyfOTrDEpJ9kPcWZXUimQcZQLeDEeyfPFSFenjzyqYm4v/R4rFLao0db5x/pnFcVB2IXw==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/commands/-/commands-1.9.0.tgz", + "integrity": "sha512-6A1ZJqsshaTz5WJa3UXr+hJOuM2zclr9sCaXyfamhuE2YurqGSGlOPL0oiRr/H1iLHEHp/mwYMIXd9UFKO8Qfg==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", - "@wordpress/components": "^28.4.0", - "@wordpress/data": "^10.4.0", - "@wordpress/element": "^6.4.0", - "@wordpress/i18n": "^5.4.0", - "@wordpress/icons": "^10.4.0", - "@wordpress/keyboard-shortcuts": "^5.4.0", - "@wordpress/private-apis": "^1.4.0", + "@wordpress/components": "^28.9.0", + "@wordpress/data": "^10.9.0", + "@wordpress/element": "^6.9.0", + "@wordpress/i18n": "^5.9.0", + "@wordpress/icons": "^10.9.0", + "@wordpress/keyboard-shortcuts": "^5.9.0", + "@wordpress/private-apis": "^1.9.0", "clsx": "^2.1.1", "cmdk": "^1.0.0" }, @@ -7126,13 +7084,12 @@ } }, "node_modules/@wordpress/components": { - "version": "28.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/components/-/components-28.4.0.tgz", - "integrity": "sha512-xtsUwaiV08be90cY4ERtXCprypldKymaeDuZMsL/P8nmBLLVpslUXpVsikBYRPpAARJxp9IAKYZ7FFNiHtJI+w==", + "version": "28.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/components/-/components-28.9.0.tgz", + "integrity": "sha512-/ept6OSWAh4bdZwlhU8TwJe9QM6rqjAXVA08H0wymtjdRbAQiuDsmMfLFKCF1M4hGZeeThAD5YF0ZkBK5iCeCA==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { - "@ariakit/react": "^0.3.12", + "@ariakit/react": "^0.4.10", "@babel/runtime": "^7.16.0", "@emotion/cache": "^11.7.1", "@emotion/css": "^11.7.1", @@ -7144,23 +7101,23 @@ "@types/gradient-parser": "0.1.3", "@types/highlight-words-core": "1.2.1", "@use-gesture/react": "^10.3.1", - "@wordpress/a11y": "^4.4.0", - "@wordpress/compose": "^7.4.0", - "@wordpress/date": "^5.4.0", - "@wordpress/deprecated": "^4.4.0", - "@wordpress/dom": "^4.4.0", - "@wordpress/element": "^6.4.0", - "@wordpress/escape-html": "^3.4.0", - "@wordpress/hooks": "^4.4.0", - "@wordpress/html-entities": "^4.4.0", - "@wordpress/i18n": "^5.4.0", - "@wordpress/icons": "^10.4.0", - "@wordpress/is-shallow-equal": "^5.4.0", - "@wordpress/keycodes": "^4.4.0", - "@wordpress/primitives": "^4.4.0", - "@wordpress/private-apis": "^1.4.0", - "@wordpress/rich-text": "^7.4.0", - "@wordpress/warning": "^3.4.0", + "@wordpress/a11y": "^4.9.0", + "@wordpress/compose": "^7.9.0", + "@wordpress/date": "^5.9.0", + "@wordpress/deprecated": "^4.9.0", + "@wordpress/dom": "^4.9.0", + "@wordpress/element": "^6.9.0", + "@wordpress/escape-html": "^3.9.0", + "@wordpress/hooks": "^4.9.0", + "@wordpress/html-entities": "^4.9.0", + "@wordpress/i18n": "^5.9.0", + "@wordpress/icons": "^10.9.0", + "@wordpress/is-shallow-equal": "^5.9.0", + "@wordpress/keycodes": "^4.9.0", + "@wordpress/primitives": "^4.9.0", + "@wordpress/private-apis": "^1.9.0", + "@wordpress/rich-text": "^7.9.0", + "@wordpress/warning": "^3.9.0", "change-case": "^4.1.2", "clsx": "^2.1.1", "colord": "^2.7.0", @@ -7176,7 +7133,6 @@ "re-resizable": "^6.4.0", "react-colorful": "^5.3.1", "remove-accents": "^0.5.0", - "use-lilius": "^2.0.5", "uuid": "^9.0.1" }, "engines": { @@ -7189,21 +7145,20 @@ } }, "node_modules/@wordpress/compose": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/compose/-/compose-7.4.0.tgz", - "integrity": "sha512-yIJwiFxzMlpbFCYgWdQgyhyE//9SF90bi1j7YUmUKqLg9tUN7/IIok2lSGrvZfjuSe8sVgd5MHt33Emmi13zsw==", + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/compose/-/compose-7.9.0.tgz", + "integrity": "sha512-6f1mZLwMD2woFSMLJ5JaCZQZz1kFD2X4gwT5c4IVnzpm+/9A0OqeTdncAi6I6wHRtKN9DzvaMQPuZitQz7HmNA==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", "@types/mousetrap": "^1.6.8", - "@wordpress/deprecated": "^4.4.0", - "@wordpress/dom": "^4.4.0", - "@wordpress/element": "^6.4.0", - "@wordpress/is-shallow-equal": "^5.4.0", - "@wordpress/keycodes": "^4.4.0", - "@wordpress/priority-queue": "^3.4.0", - "@wordpress/undo-manager": "^1.4.0", + "@wordpress/deprecated": "^4.9.0", + "@wordpress/dom": "^4.9.0", + "@wordpress/element": "^6.9.0", + "@wordpress/is-shallow-equal": "^5.9.0", + "@wordpress/keycodes": "^4.9.0", + "@wordpress/priority-queue": "^3.9.0", + "@wordpress/undo-manager": "^1.9.0", "change-case": "^4.1.2", "clipboard": "^2.0.11", "mousetrap": "^1.6.5", @@ -7218,25 +7173,25 @@ } }, "node_modules/@wordpress/core-commands": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/core-commands/-/core-commands-1.4.0.tgz", - "integrity": "sha512-wR2FKIvtCt7tSE/vMwqck8f20xfr+pFhxCogZt8HWWkwogb9fG8CKVBsjLdipfcVIfI13OrNkwDISm8l5h6RJA==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/core-commands/-/core-commands-1.9.0.tgz", + "integrity": "sha512-lRXJPtDvx3QYIWwKejJm7ZtDit0DrlSS4snbJ+dNMGzOUdv17QlAxNy5etVNnXkenY6AEa3WkXqNUqi9vK2HVA==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", - "@wordpress/block-editor": "^13.4.0", - "@wordpress/commands": "^1.4.0", - "@wordpress/compose": "^7.4.0", - "@wordpress/core-data": "^7.4.0", - "@wordpress/data": "^10.4.0", - "@wordpress/element": "^6.4.0", - "@wordpress/html-entities": "^4.4.0", - "@wordpress/i18n": "^5.4.0", - "@wordpress/icons": "^10.4.0", - "@wordpress/private-apis": "^1.4.0", - "@wordpress/router": "^1.4.0", - "@wordpress/url": "^4.4.0" + "@wordpress/block-editor": "^14.4.0", + "@wordpress/commands": "^1.9.0", + "@wordpress/compose": "^7.9.0", + "@wordpress/core-data": "^7.9.0", + "@wordpress/data": "^10.9.0", + "@wordpress/element": "^6.9.0", + "@wordpress/html-entities": "^4.9.0", + "@wordpress/i18n": "^5.9.0", + "@wordpress/icons": "^10.9.0", + "@wordpress/notices": "^5.9.0", + "@wordpress/private-apis": "^1.9.0", + "@wordpress/router": "^1.9.0", + "@wordpress/url": "^4.9.0" }, "engines": { "node": ">=18.12.0", @@ -7248,29 +7203,28 @@ } }, "node_modules/@wordpress/core-data": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/core-data/-/core-data-7.4.0.tgz", - "integrity": "sha512-q7uBoaq9hPYRq4+VMTcEX3a3kfjth//GgjSIMX3Q6UAXGdbF2M0kmVW6b39M3ZaGhRy67OvzhNU/sq7llzN+zA==", + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/core-data/-/core-data-7.9.0.tgz", + "integrity": "sha512-bvmTJXpMF7nooDCbkp59FsqP7upxae9U41j5uZBI91H9mzcWL53YrdE6yPVdExj55EKcdwdfGTrq8u/z1bkm5Q==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", - "@wordpress/api-fetch": "^7.4.0", - "@wordpress/block-editor": "^13.4.0", - "@wordpress/blocks": "^13.4.0", - "@wordpress/compose": "^7.4.0", - "@wordpress/data": "^10.4.0", - "@wordpress/deprecated": "^4.4.0", - "@wordpress/element": "^6.4.0", - "@wordpress/html-entities": "^4.4.0", - "@wordpress/i18n": "^5.4.0", - "@wordpress/is-shallow-equal": "^5.4.0", - "@wordpress/private-apis": "^1.4.0", - "@wordpress/rich-text": "^7.4.0", - "@wordpress/sync": "^1.4.0", - "@wordpress/undo-manager": "^1.4.0", - "@wordpress/url": "^4.4.0", - "@wordpress/warning": "^3.4.0", + "@wordpress/api-fetch": "^7.9.0", + "@wordpress/block-editor": "^14.4.0", + "@wordpress/blocks": "^13.9.0", + "@wordpress/compose": "^7.9.0", + "@wordpress/data": "^10.9.0", + "@wordpress/deprecated": "^4.9.0", + "@wordpress/element": "^6.9.0", + "@wordpress/html-entities": "^4.9.0", + "@wordpress/i18n": "^5.9.0", + "@wordpress/is-shallow-equal": "^5.9.0", + "@wordpress/private-apis": "^1.9.0", + "@wordpress/rich-text": "^7.9.0", + "@wordpress/sync": "^1.9.0", + "@wordpress/undo-manager": "^1.9.0", + "@wordpress/url": "^4.9.0", + "@wordpress/warning": "^3.9.0", "change-case": "^4.1.2", "equivalent-key-map": "^0.2.2", "fast-deep-equal": "^3.1.3", @@ -7287,20 +7241,19 @@ } }, "node_modules/@wordpress/data": { - "version": "10.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/data/-/data-10.4.0.tgz", - "integrity": "sha512-/KTzPP3SSwrrmBhcpn0P5ELuDT9anZ1+jSLHrDeoMyF0qKL+VHqSMyko2vNgIU3mqO8KQ8POKKJ1F+4RC+Zrmw==", + "version": "10.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/data/-/data-10.9.0.tgz", + "integrity": "sha512-hw8VYSPZuEqlEwRnQnKgqzbwCqoGY4U5kLCZA/1McOYspvkIceTVve4qBC17QUJhu2pLEXEc6p4zBpy+SXfToQ==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", - "@wordpress/compose": "^7.4.0", - "@wordpress/deprecated": "^4.4.0", - "@wordpress/element": "^6.4.0", - "@wordpress/is-shallow-equal": "^5.4.0", - "@wordpress/priority-queue": "^3.4.0", - "@wordpress/private-apis": "^1.4.0", - "@wordpress/redux-routine": "^5.4.0", + "@wordpress/compose": "^7.9.0", + "@wordpress/deprecated": "^4.9.0", + "@wordpress/element": "^6.9.0", + "@wordpress/is-shallow-equal": "^5.9.0", + "@wordpress/priority-queue": "^3.9.0", + "@wordpress/private-apis": "^1.9.0", + "@wordpress/redux-routine": "^5.9.0", "deepmerge": "^4.3.0", "equivalent-key-map": "^0.2.2", "is-plain-object": "^5.0.0", @@ -7318,22 +7271,22 @@ } }, "node_modules/@wordpress/dataviews": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@wordpress/dataviews/-/dataviews-4.0.0.tgz", - "integrity": "sha512-uWPd5nZ3wBrgCl6A100qT/r+nPglfzeFhXoGOnNcp6QJY5x7Zxd4kw276Q4YY/ney1CGDUbr/EnwgYlafKVXcQ==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/@wordpress/dataviews/-/dataviews-4.5.0.tgz", + "integrity": "sha512-3vZN6jFR6gFDvuAitpS/0D80ByWYkhRfuTAAmzptq6rC9CkC4VNRbIJZbxMsKEt2qh44T7TVYVR6yVm2p+8+oQ==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { - "@ariakit/react": "^0.3.12", + "@ariakit/react": "^0.4.10", "@babel/runtime": "^7.16.0", - "@wordpress/components": "^28.4.0", - "@wordpress/compose": "^7.4.0", - "@wordpress/data": "^10.4.0", - "@wordpress/element": "^6.4.0", - "@wordpress/i18n": "^5.4.0", - "@wordpress/icons": "^10.4.0", - "@wordpress/primitives": "^4.4.0", - "@wordpress/private-apis": "^1.4.0", + "@wordpress/components": "^28.9.0", + "@wordpress/compose": "^7.9.0", + "@wordpress/data": "^10.9.0", + "@wordpress/element": "^6.9.0", + "@wordpress/i18n": "^5.9.0", + "@wordpress/icons": "^10.9.0", + "@wordpress/primitives": "^4.9.0", + "@wordpress/private-apis": "^1.9.0", + "@wordpress/warning": "^3.9.0", "clsx": "^2.1.1", "remove-accents": "^0.5.0" }, @@ -7346,14 +7299,13 @@ } }, "node_modules/@wordpress/date": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/date/-/date-5.4.0.tgz", - "integrity": "sha512-TpX0c0rTZlgNQQBVExt8HPYgsHGvGHrlFzNrBoQw6ji8ucjEtpn8U47Uqqc9ikeS6MEUf5GA7G0fFBc8XRLYCw==", + "version": "5.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/date/-/date-5.9.0.tgz", + "integrity": "sha512-Iywz1bga3cPSrf7k4dh2mYVsACqzu0GXYhfu57ElAM9robGjcUxJdzgbWUZw90v473NOp2UpVYsWCuDEqNDcdw==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", - "@wordpress/deprecated": "^4.4.0", + "@wordpress/deprecated": "^4.9.0", "moment": "^2.29.4", "moment-timezone": "^0.5.40" }, @@ -7363,11 +7315,10 @@ } }, "node_modules/@wordpress/dependency-extraction-webpack-plugin": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/dependency-extraction-webpack-plugin/-/dependency-extraction-webpack-plugin-6.4.0.tgz", - "integrity": "sha512-9CmC+8SSQ4Oh/IghVg8YQjBIKpvuxn18m+Painq6SdJGseJhRgnFINVUwHCs1BRR1sB4BUTldnUlNiya43EK1w==", + "version": "6.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/dependency-extraction-webpack-plugin/-/dependency-extraction-webpack-plugin-6.9.0.tgz", + "integrity": "sha512-faWHIfJ8dSHjQmTEjl/Q6isLLHn0nBbBbTqztAKWtoImmtOLrz68fVxlUh8Fsboov8l6O4fiWv+6gXkWI5B75w==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "json2php": "^0.0.7" }, @@ -7380,14 +7331,13 @@ } }, "node_modules/@wordpress/deprecated": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/deprecated/-/deprecated-4.4.0.tgz", - "integrity": "sha512-/a1BzMcY7loLbNRvnHIEbOPMdBNA3pq5tsK895JJtW1Jj14FhX1AD7m+q7lV8Famb8iRSea/SDM/wjdlqHzKJg==", + "version": "4.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/deprecated/-/deprecated-4.9.0.tgz", + "integrity": "sha512-1PMCLULxTlI0iatsHxpPgtogMfvd/wvAqAOLGHUdkdbBtUEquGrRMo/h+TLU/ne2JDf5JKMA4ntQV6zDNO4+eg==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", - "@wordpress/hooks": "^4.4.0" + "@wordpress/hooks": "^4.9.0" }, "engines": { "node": ">=18.12.0", @@ -7395,14 +7345,13 @@ } }, "node_modules/@wordpress/dom": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/dom/-/dom-4.4.0.tgz", - "integrity": "sha512-9UyPq7lNoXgPy0l+gnEIMq1lbEgMC3DXjfrVx08cKzpn23Gbmg3ZFybBKtnWVd0u/V64frUtIc/IQxXyYk3Ttg==", + "version": "4.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/dom/-/dom-4.9.0.tgz", + "integrity": "sha512-g9jRTxOpSfygEbKNGwYwx21b5GktI2SkwQSAPKpG4mmFAvLbqIzjVc2nkudRO914DKgPWrBsfKsc4Smbtpbkig==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", - "@wordpress/deprecated": "^4.4.0" + "@wordpress/deprecated": "^4.9.0" }, "engines": { "node": ">=18.12.0", @@ -7410,11 +7359,10 @@ } }, "node_modules/@wordpress/dom-ready": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/dom-ready/-/dom-ready-4.4.0.tgz", - "integrity": "sha512-Kz/pOEnLKygk3CwYfowoNESzLX7ZL93CA8Xl17tFy70e0Xx241ZNE1WXhXHEcSeNuk2GafxMO0q+HHR7aLO1nw==", + "version": "4.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/dom-ready/-/dom-ready-4.9.0.tgz", + "integrity": "sha512-Kas5YaRl+HebAxFfv9ctB8bdmjbhISIBo747nXCK6KqojQ/Zn2Bctv2XTypR3GMb7OS7KqVMeyCJhjEpuc8Wlw==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0" }, @@ -7424,9 +7372,9 @@ } }, "node_modules/@wordpress/e2e-test-utils-playwright": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@wordpress/e2e-test-utils-playwright/-/e2e-test-utils-playwright-1.5.0.tgz", - "integrity": "sha512-gQuhdDMejum7a4hWW4ejIWSBv1xeeCFda5o7eq766evarU+HwcN+4GPiSYKj2iEHJ4dge1On2VXeg1RFLY3w5Q==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/e2e-test-utils-playwright/-/e2e-test-utils-playwright-1.9.0.tgz", + "integrity": "sha512-07k7LnkvEPIaMGgPvm+wgmBGAVI+pyH/jVXD3TEvKq2BLhZ7zUurV4RvOpiOs58rHvQOS+BzS+yXUwtXUrkQ4g==", "dev": true, "dependencies": { "change-case": "^4.1.2", @@ -7445,42 +7393,41 @@ } }, "node_modules/@wordpress/edit-post": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/edit-post/-/edit-post-8.4.0.tgz", - "integrity": "sha512-QurMK5FmRevUnejwiPJr+kvpAJFu0+TdOQlDzK+ZoEz8YKSSDGJuaMHc38lN2RW0NA1K7zl3rTVzSVpXDCMCaA==", + "version": "8.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/edit-post/-/edit-post-8.9.0.tgz", + "integrity": "sha512-jVQZo9Ldo3cVra3+W9BZGpF7yozTzr86mTeTr1C9SMV8fRrBjQ4pBOryFJQYFW47E0OyWz9Li9MzFx3PaeVADg==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", - "@wordpress/a11y": "^4.4.0", - "@wordpress/api-fetch": "^7.4.0", - "@wordpress/block-editor": "^13.4.0", - "@wordpress/block-library": "^9.4.0", - "@wordpress/blocks": "^13.4.0", - "@wordpress/commands": "^1.4.0", - "@wordpress/components": "^28.4.0", - "@wordpress/compose": "^7.4.0", - "@wordpress/core-commands": "^1.4.0", - "@wordpress/core-data": "^7.4.0", - "@wordpress/data": "^10.4.0", - "@wordpress/deprecated": "^4.4.0", - "@wordpress/dom": "^4.4.0", - "@wordpress/editor": "^14.4.0", - "@wordpress/element": "^6.4.0", - "@wordpress/hooks": "^4.4.0", - "@wordpress/html-entities": "^4.4.0", - "@wordpress/i18n": "^5.4.0", - "@wordpress/icons": "^10.4.0", - "@wordpress/keyboard-shortcuts": "^5.4.0", - "@wordpress/keycodes": "^4.4.0", - "@wordpress/notices": "^5.4.0", - "@wordpress/plugins": "^7.4.0", - "@wordpress/preferences": "^4.4.0", - "@wordpress/private-apis": "^1.4.0", - "@wordpress/url": "^4.4.0", - "@wordpress/viewport": "^6.4.0", - "@wordpress/warning": "^3.4.0", - "@wordpress/widgets": "^4.4.0", + "@wordpress/a11y": "^4.9.0", + "@wordpress/api-fetch": "^7.9.0", + "@wordpress/block-editor": "^14.4.0", + "@wordpress/block-library": "^9.9.0", + "@wordpress/blocks": "^13.9.0", + "@wordpress/commands": "^1.9.0", + "@wordpress/components": "^28.9.0", + "@wordpress/compose": "^7.9.0", + "@wordpress/core-commands": "^1.9.0", + "@wordpress/core-data": "^7.9.0", + "@wordpress/data": "^10.9.0", + "@wordpress/deprecated": "^4.9.0", + "@wordpress/dom": "^4.9.0", + "@wordpress/editor": "^14.9.0", + "@wordpress/element": "^6.9.0", + "@wordpress/hooks": "^4.9.0", + "@wordpress/html-entities": "^4.9.0", + "@wordpress/i18n": "^5.9.0", + "@wordpress/icons": "^10.9.0", + "@wordpress/keyboard-shortcuts": "^5.9.0", + "@wordpress/keycodes": "^4.9.0", + "@wordpress/notices": "^5.9.0", + "@wordpress/plugins": "^7.9.0", + "@wordpress/preferences": "^4.9.0", + "@wordpress/private-apis": "^1.9.0", + "@wordpress/url": "^4.9.0", + "@wordpress/viewport": "^6.9.0", + "@wordpress/warning": "^3.9.0", + "@wordpress/widgets": "^4.9.0", "clsx": "^2.1.1", "memize": "^2.1.0" }, @@ -7494,47 +7441,47 @@ } }, "node_modules/@wordpress/editor": { - "version": "14.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/editor/-/editor-14.4.0.tgz", - "integrity": "sha512-d249Cxnnxar77BOYlnQoRzfY2BTdNiKJ+rHfuP6/hQn2EZaXJP+UMLyt5WuuMaNAq5SwhDqJicK4gExpga5vqg==", + "version": "14.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/editor/-/editor-14.9.0.tgz", + "integrity": "sha512-9F71TPgPENsoaqhjIU8JJzNQqB8pCEntpS+YRzdEBiPZh+fgsO1fmiVhR3afimiW9WbO/Vh0XvfjbtFOjNZLRg==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", - "@wordpress/a11y": "^4.4.0", - "@wordpress/api-fetch": "^7.4.0", - "@wordpress/blob": "^4.4.0", - "@wordpress/block-editor": "^13.4.0", - "@wordpress/blocks": "^13.4.0", - "@wordpress/commands": "^1.4.0", - "@wordpress/components": "^28.4.0", - "@wordpress/compose": "^7.4.0", - "@wordpress/core-data": "^7.4.0", - "@wordpress/data": "^10.4.0", - "@wordpress/dataviews": "^4.0.0", - "@wordpress/date": "^5.4.0", - "@wordpress/deprecated": "^4.4.0", - "@wordpress/dom": "^4.4.0", - "@wordpress/element": "^6.4.0", - "@wordpress/hooks": "^4.4.0", - "@wordpress/html-entities": "^4.4.0", - "@wordpress/i18n": "^5.4.0", - "@wordpress/icons": "^10.4.0", - "@wordpress/interface": "^6.4.0", - "@wordpress/keyboard-shortcuts": "^5.4.0", - "@wordpress/keycodes": "^4.4.0", - "@wordpress/media-utils": "^5.4.0", - "@wordpress/notices": "^5.4.0", - "@wordpress/patterns": "^2.4.0", - "@wordpress/plugins": "^7.4.0", - "@wordpress/preferences": "^4.4.0", - "@wordpress/private-apis": "^1.4.0", - "@wordpress/reusable-blocks": "^5.4.0", - "@wordpress/rich-text": "^7.4.0", - "@wordpress/server-side-render": "^5.4.0", - "@wordpress/url": "^4.4.0", - "@wordpress/warning": "^3.4.0", - "@wordpress/wordcount": "^4.4.0", + "@wordpress/a11y": "^4.9.0", + "@wordpress/api-fetch": "^7.9.0", + "@wordpress/blob": "^4.9.0", + "@wordpress/block-editor": "^14.4.0", + "@wordpress/blocks": "^13.9.0", + "@wordpress/commands": "^1.9.0", + "@wordpress/components": "^28.9.0", + "@wordpress/compose": "^7.9.0", + "@wordpress/core-data": "^7.9.0", + "@wordpress/data": "^10.9.0", + "@wordpress/dataviews": "^4.5.0", + "@wordpress/date": "^5.9.0", + "@wordpress/deprecated": "^4.9.0", + "@wordpress/dom": "^4.9.0", + "@wordpress/element": "^6.9.0", + "@wordpress/fields": "^0.1.0", + "@wordpress/hooks": "^4.9.0", + "@wordpress/html-entities": "^4.9.0", + "@wordpress/i18n": "^5.9.0", + "@wordpress/icons": "^10.9.0", + "@wordpress/interface": "^6.9.0", + "@wordpress/keyboard-shortcuts": "^5.9.0", + "@wordpress/keycodes": "^4.9.0", + "@wordpress/media-utils": "^5.9.0", + "@wordpress/notices": "^5.9.0", + "@wordpress/patterns": "^2.9.0", + "@wordpress/plugins": "^7.9.0", + "@wordpress/preferences": "^4.9.0", + "@wordpress/private-apis": "^1.9.0", + "@wordpress/reusable-blocks": "^5.9.0", + "@wordpress/rich-text": "^7.9.0", + "@wordpress/server-side-render": "^5.9.0", + "@wordpress/url": "^4.9.0", + "@wordpress/warning": "^3.9.0", + "@wordpress/wordcount": "^4.9.0", "change-case": "^4.1.2", "client-zip": "^2.4.5", "clsx": "^2.1.1", @@ -7557,16 +7504,15 @@ } }, "node_modules/@wordpress/element": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-6.4.0.tgz", - "integrity": "sha512-SukWIkmVGA/5kF/54Y12YKX5DGQc5jXRwJtm0OYg6DiCk7fA+LYCwMS9xOvMHmRB/ymSxPsTAGaB3n/V3s7Pxw==", + "version": "6.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-6.9.0.tgz", + "integrity": "sha512-G5W29cxfAVc/JQBzkKoXh1t4T+G3HWa1kIgXCqIZksonlYHzCVON1Or+rD/YJZSxT6RDkBVDzdl9p0pGOrccTg==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", "@types/react": "^18.2.79", "@types/react-dom": "^18.2.25", - "@wordpress/escape-html": "^3.4.0", + "@wordpress/escape-html": "^3.9.0", "change-case": "^4.1.2", "is-plain-object": "^5.0.0", "react": "^18.3.0", @@ -7578,9 +7524,9 @@ } }, "node_modules/@wordpress/env": { - "version": "10.5.0", - "resolved": "https://registry.npmjs.org/@wordpress/env/-/env-10.5.0.tgz", - "integrity": "sha512-Hx+fi6qTEAuycznulkuMi4d5RDPZ6lPPAxaylpCwXNX2hgx5jrrpgnY4Zn0chBgZMpShO7BbA+zNDq2E6evvTw==", + "version": "10.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/env/-/env-10.9.0.tgz", + "integrity": "sha512-XS4dJY1jot25wNKnI8+wL1M4tHRIaiLW1ggwXQSyUUWinyG9kuyQA+jzIBnNGegy2pLgbSwTmovExHQNtfU2Hw==", "dev": true, "dependencies": { "chalk": "^4.0.0", @@ -7721,11 +7667,10 @@ } }, "node_modules/@wordpress/escape-html": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/escape-html/-/escape-html-3.4.0.tgz", - "integrity": "sha512-KcUv+s0J/LEZEEvd+E3IkNCeW8wde0TjO+1HrcfvqI8Rfuc0zOAZeS/6ZqIeX0m/mhQ0xS2Y3e8hsnU+wAG6Mw==", + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/escape-html/-/escape-html-3.9.0.tgz", + "integrity": "sha512-+/SnVUXzzr+0pgfAqK3pocGveSDS3SHrgJ1BTgV7DA1l6y9mbjnqKgFQkNW/nzca92ZuYg2vjLcq1dqDGz4v1Q==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0" }, @@ -7735,17 +7680,16 @@ } }, "node_modules/@wordpress/eslint-plugin": { - "version": "20.1.0", - "resolved": "https://registry.npmjs.org/@wordpress/eslint-plugin/-/eslint-plugin-20.1.0.tgz", - "integrity": "sha512-2FVQsdvG92qiKKnXhR0JO4RVyjrdRVY5vS6C6OZjp4M+O/kC/k5sx/BsjOX09qyUGletXJyQRmy11uoCE9lmAA==", + "version": "21.2.0", + "resolved": "https://registry.npmjs.org/@wordpress/eslint-plugin/-/eslint-plugin-21.2.0.tgz", + "integrity": "sha512-jsqi1C96FV4wTGPtPVP/bj/rQtDgu4dHP5pKqtwCuPs7AU4pnUJPHut67Ass8POD+c4EvjPVhS8UDpBs2MeSJg==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/eslint-parser": "^7.16.0", "@typescript-eslint/eslint-plugin": "^6.4.1", "@typescript-eslint/parser": "^6.4.1", - "@wordpress/babel-preset-default": "^8.4.0", - "@wordpress/prettier-config": "^4.4.0", + "@wordpress/babel-preset-default": "^8.9.0", + "@wordpress/prettier-config": "^4.9.0", "cosmiconfig": "^7.0.0", "eslint-config-prettier": "^8.3.0", "eslint-plugin-import": "^2.25.2", @@ -8143,12 +8087,48 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/@wordpress/fields": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@wordpress/fields/-/fields-0.1.0.tgz", + "integrity": "sha512-Kgpja8+OuYqH5TtdDu40djQRq31ubsXJ0WiXXxX2gIMsb8fH3F3al7kLjPpMQBuPDQm1Q0SfjhSwrPI2gZLl5Q==", + "dev": true, + "dependencies": { + "@babel/runtime": "^7.16.0", + "@wordpress/api-fetch": "^7.9.0", + "@wordpress/blob": "^4.9.0", + "@wordpress/blocks": "^13.9.0", + "@wordpress/components": "^28.9.0", + "@wordpress/compose": "^7.9.0", + "@wordpress/core-data": "^7.9.0", + "@wordpress/data": "^10.9.0", + "@wordpress/dataviews": "^4.5.0", + "@wordpress/element": "^6.9.0", + "@wordpress/hooks": "^4.9.0", + "@wordpress/html-entities": "^4.9.0", + "@wordpress/i18n": "^5.9.0", + "@wordpress/icons": "^10.9.0", + "@wordpress/notices": "^5.9.0", + "@wordpress/patterns": "^2.9.0", + "@wordpress/primitives": "^4.9.0", + "@wordpress/private-apis": "^1.9.0", + "@wordpress/url": "^4.9.0", + "@wordpress/warning": "^3.9.0", + "change-case": "4.1.2", + "client-zip": "^2.4.5" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "react": "^18.0.0" + } + }, "node_modules/@wordpress/hooks": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/hooks/-/hooks-4.4.0.tgz", - "integrity": "sha512-KO0gUx0KLhH3XCatg9ZOU1TH0fgyQUccAEIM8liErfgmrabHl8JhDoR2Uk5k0jNKZNPog7XxvKgPFVtCzvzQig==", + "version": "4.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/hooks/-/hooks-4.9.0.tgz", + "integrity": "sha512-nan2w5imPhTaJwWdKjm/0ZMDbWR3P6Vhl4OqnBZZcJqOyNSfwsnJ98I+BWjq0U6SmiCnZQERjN0SjVdmD1tCjw==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0" }, @@ -8158,11 +8138,10 @@ } }, "node_modules/@wordpress/html-entities": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/html-entities/-/html-entities-4.4.0.tgz", - "integrity": "sha512-EXOo+eBYeKKuBFgRleQYfK3fdXy5gzFdHtxbPPDunsETYkdapgX4pr/epDLmi9Uk3fcdFMwFre2o2s6LkLke4A==", + "version": "4.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/html-entities/-/html-entities-4.9.0.tgz", + "integrity": "sha512-RaiMecK8Igqb4yreJncSZEBl6DR1eAj8M3mHwrJASJLiiBLcaWg0oi8iiabUEmgGCsIu2pCeXmV+8WO0FRDO5Q==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0" }, @@ -8172,14 +8151,13 @@ } }, "node_modules/@wordpress/i18n": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/i18n/-/i18n-5.4.0.tgz", - "integrity": "sha512-nU4vpcBn5X+O/lUw2zhg44iTxh3smmBT6wLDFigGXpBKcVjJjlhVkwWLqpP/ZIc+mfhplgu4TJcTSbHyKsQLgg==", + "version": "5.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/i18n/-/i18n-5.9.0.tgz", + "integrity": "sha512-pKFV9S/l0TFlm0mlWLW51hAoRDNmZPGnfEpNXq43VKZkm1cco3Z1E54PHMGk8HdCECHqYNiJuQJOBOlqcYmnVQ==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", - "@wordpress/hooks": "^4.4.0", + "@wordpress/hooks": "^4.9.0", "gettext-parser": "^1.3.1", "memize": "^2.1.0", "sprintf-js": "^1.1.1", @@ -8194,15 +8172,14 @@ } }, "node_modules/@wordpress/icons": { - "version": "10.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/icons/-/icons-10.4.0.tgz", - "integrity": "sha512-1odn+v7Fr5n3+ZpdXb37zy/yr/4LQLvYcT0pPtQ6fnuKGoelnU5f2FEAWwFgJ+Nvt5GjzKAFV3XGk1Qr81z3Mw==", + "version": "10.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/icons/-/icons-10.9.0.tgz", + "integrity": "sha512-mAkqhlbbPiuR6yBOczunqyxQ2Pez1XB7gAZnnsP5DlTKsYnJQ12N0Ql4Oh8f1LI+UeF18VMtHes12sWK/1LQHQ==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", - "@wordpress/element": "^6.4.0", - "@wordpress/primitives": "^4.4.0" + "@wordpress/element": "^6.9.0", + "@wordpress/primitives": "^4.9.0" }, "engines": { "node": ">=18.12.0", @@ -8210,14 +8187,12 @@ } }, "node_modules/@wordpress/interactivity": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/interactivity/-/interactivity-6.4.0.tgz", - "integrity": "sha512-TCKGf3qt7nvK4E18LZQkZ7C/bHS2UhMM0RizExPZuZlo2rSqm7VHvsLl/1yumDOt7ZOP8I/5ZX8WjDIx5nyGpg==", + "version": "6.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/interactivity/-/interactivity-6.9.0.tgz", + "integrity": "sha512-8L+Tanr04FtJ8wGU9ykaasuU7h+9bOo6xwRscRUW4N5lia/CUSXJgJUWuaLeNLyeWFbarzhCNsj3UzRa5lbsJA==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@preact/signals": "^1.2.2", - "deepsignal": "^1.4.0", "preact": "^10.19.3" }, "engines": { @@ -8226,13 +8201,13 @@ } }, "node_modules/@wordpress/interactivity-router": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/interactivity-router/-/interactivity-router-2.4.0.tgz", - "integrity": "sha512-LcEC7k2N9TfLsW8HNlrB+399/ADcC80UHQRGTcGjlzSTvLvNNb+wKyALyzhE+7YUVzRNd/f8lJUHu3D0HOtSWw==", + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/interactivity-router/-/interactivity-router-2.9.0.tgz", + "integrity": "sha512-9F4IMBoWX3pcWHTjz1prThbEUI0Snomd5wAUJYfelanY5bZaaF5Tt15oolbEnlSSM5mEgwK26ftY7fRt0+B7SA==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { - "@wordpress/interactivity": "^6.4.0" + "@wordpress/a11y": "^4.9.0", + "@wordpress/interactivity": "^6.9.0" }, "engines": { "node": ">=18.12.0", @@ -8240,25 +8215,24 @@ } }, "node_modules/@wordpress/interface": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/interface/-/interface-6.4.0.tgz", - "integrity": "sha512-KjGRZDEU+c49o6Bb9/zcdWVLGvHPYYctytFWqhfrERGW012/hxPqzTpSYgHqEQDxCSZdjKajyyrIvQkzLKE3/Q==", + "version": "6.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/interface/-/interface-6.9.0.tgz", + "integrity": "sha512-yIFTqiAEZ/Ge9uI3cyWBuTuyTe6JW81OiC3mxyhtOUYU9IAPlfEerAUqYeR+2Rh6Ag9L2SAYJLgMSp6ypCHHNQ==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", - "@wordpress/a11y": "^4.4.0", - "@wordpress/components": "^28.4.0", - "@wordpress/compose": "^7.4.0", - "@wordpress/data": "^10.4.0", - "@wordpress/deprecated": "^4.4.0", - "@wordpress/element": "^6.4.0", - "@wordpress/i18n": "^5.4.0", - "@wordpress/icons": "^10.4.0", - "@wordpress/plugins": "^7.4.0", - "@wordpress/preferences": "^4.4.0", - "@wordpress/private-apis": "^1.4.0", - "@wordpress/viewport": "^6.4.0", + "@wordpress/a11y": "^4.9.0", + "@wordpress/components": "^28.9.0", + "@wordpress/compose": "^7.9.0", + "@wordpress/data": "^10.9.0", + "@wordpress/deprecated": "^4.9.0", + "@wordpress/element": "^6.9.0", + "@wordpress/i18n": "^5.9.0", + "@wordpress/icons": "^10.9.0", + "@wordpress/plugins": "^7.9.0", + "@wordpress/preferences": "^4.9.0", + "@wordpress/private-apis": "^1.9.0", + "@wordpress/viewport": "^6.9.0", "clsx": "^2.1.1" }, "engines": { @@ -8271,11 +8245,10 @@ } }, "node_modules/@wordpress/is-shallow-equal": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/is-shallow-equal/-/is-shallow-equal-5.4.0.tgz", - "integrity": "sha512-dby5FHzgasbTVw40HUsLKX68/+M8dBuf6LTqFm5n0KetdHUWoPRSAN/qun7Zu3p69jgqPtUhyjdwDdAgOtYamA==", + "version": "5.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/is-shallow-equal/-/is-shallow-equal-5.9.0.tgz", + "integrity": "sha512-cKqgI6RQ27ZZRo4Zc/jioG3qInDKQqcT3xg5YxsduX2f1b6vQV42p0L4waLFeJZQ8WDUsgsR53AQivdInkO8gA==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0" }, @@ -8285,11 +8258,10 @@ } }, "node_modules/@wordpress/jest-console": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/jest-console/-/jest-console-8.4.0.tgz", - "integrity": "sha512-vwfpSmCWpOx2IyCfjNJu8Ior4JK4D43T5YhPF6UpjHE+T+h3t3SwqriKYFbExDz+cdYwjJt4mpUEk8vh3lcfdQ==", + "version": "8.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/jest-console/-/jest-console-8.9.0.tgz", + "integrity": "sha512-0swK5WONAx7y5oPDMBbr38e1R7JR+jPCt6CGFoOEwsVGiSRGa5WqJo09/ysCVjDmJn8po/lBaUp9f+fJSVARDQ==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", "jest-matcher-utils": "^29.6.2" @@ -8303,13 +8275,12 @@ } }, "node_modules/@wordpress/jest-preset-default": { - "version": "12.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/jest-preset-default/-/jest-preset-default-12.4.0.tgz", - "integrity": "sha512-HJNzQEW2bdznObUcU3lbkPAYaNZlZkrP3+ye+GG/m/iy6xg2n9rvOqI1s2JieiWLCbCAiLLBm1zqTWtuEaf0BQ==", + "version": "12.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/jest-preset-default/-/jest-preset-default-12.9.0.tgz", + "integrity": "sha512-qWON30SuU9JVZg5+SjExbv8XZVYDCvHGCV3jf5DOtYFw9kfpDZqnePTlroRvUMiD3ksKsKiAAYOOnBOiJUR/bA==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { - "@wordpress/jest-console": "^8.4.0", + "@wordpress/jest-console": "^8.9.0", "babel-jest": "^29.6.2" }, "engines": { @@ -8322,16 +8293,15 @@ } }, "node_modules/@wordpress/keyboard-shortcuts": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/keyboard-shortcuts/-/keyboard-shortcuts-5.4.0.tgz", - "integrity": "sha512-onnrqmGqGibsxe1RK5owFTeQAWnrBI8Y8B9mCDG8yk0/8XmsIY66UYJCUXlvYbqCRC50P+53aGjBdmns7wm7oA==", + "version": "5.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/keyboard-shortcuts/-/keyboard-shortcuts-5.9.0.tgz", + "integrity": "sha512-4gwsrzBtBYEcfKTfJfDbul8bDDb8WiWaf4Ua0w3TDkAIO5l3hMUL/N6plw1a7Do/NcGFOmbm/RTjQkckSuRZ8A==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", - "@wordpress/data": "^10.4.0", - "@wordpress/element": "^6.4.0", - "@wordpress/keycodes": "^4.4.0" + "@wordpress/data": "^10.9.0", + "@wordpress/element": "^6.9.0", + "@wordpress/keycodes": "^4.9.0" }, "engines": { "node": ">=18.12.0", @@ -8342,14 +8312,13 @@ } }, "node_modules/@wordpress/keycodes": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/keycodes/-/keycodes-4.4.0.tgz", - "integrity": "sha512-aba6ofBeuAqAUt967G94+yP1TlZWwQOzrwmTNa5ErkXqXhyYv8a0IFBLaWuKWfCbmaT2DcjxX4jNzxaMTE+EXA==", + "version": "4.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/keycodes/-/keycodes-4.9.0.tgz", + "integrity": "sha512-WO4MPlO+uGaDP5jYB9f4hn0NgBwvlaUvj4MLOIDcQGE0ljElLGFeXvqjVH0KVtnZkIKiZNPK7eoQxTWnxWaTjw==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", - "@wordpress/i18n": "^5.4.0" + "@wordpress/i18n": "^5.9.0" }, "engines": { "node": ">=18.12.0", @@ -8357,17 +8326,16 @@ } }, "node_modules/@wordpress/media-utils": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/media-utils/-/media-utils-5.4.0.tgz", - "integrity": "sha512-eNQp+4fck4Z1p3Pg2ar+1VCMsJoMb5HRYC57zhAG4ojpRA5HCMLH59VxhSQDEQCKfi0X1TYodNSxwV7MzGZ3DA==", + "version": "5.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/media-utils/-/media-utils-5.9.0.tgz", + "integrity": "sha512-/mvHRc9g1q/uq9e4w2fwfPmetmEUhcDocSqqLYkx5ouwoNBXEEAmXgGvRzpOLT5F8G8zpOm4uIzDxNfJ9X9o6w==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", - "@wordpress/api-fetch": "^7.4.0", - "@wordpress/blob": "^4.4.0", - "@wordpress/element": "^6.4.0", - "@wordpress/i18n": "^5.4.0" + "@wordpress/api-fetch": "^7.9.0", + "@wordpress/blob": "^4.9.0", + "@wordpress/element": "^6.9.0", + "@wordpress/i18n": "^5.9.0" }, "engines": { "node": ">=18.12.0", @@ -8375,15 +8343,14 @@ } }, "node_modules/@wordpress/notices": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/notices/-/notices-5.4.0.tgz", - "integrity": "sha512-I3EH5CcGWasXkgjUbO2t+o3l3wmizYY6zxECYiyXgOI5iwBwHwhyA6lcspKx12b0yTUKGug/9R+jKGCdIkkQrg==", + "version": "5.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/notices/-/notices-5.9.0.tgz", + "integrity": "sha512-Tofu7sTCNsZYxnQeM4eRlxGKnN1PYBIbLJmxzjPeW0pqydDu0wQVNpr3ESfXKVCv1s7KD8gowoqon5npjpcI3g==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", - "@wordpress/a11y": "^4.4.0", - "@wordpress/data": "^10.4.0" + "@wordpress/a11y": "^4.9.0", + "@wordpress/data": "^10.9.0" }, "engines": { "node": ">=18.12.0", @@ -8394,11 +8361,10 @@ } }, "node_modules/@wordpress/npm-package-json-lint-config": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/npm-package-json-lint-config/-/npm-package-json-lint-config-5.4.0.tgz", - "integrity": "sha512-5ADmUubsY9HK9qat87DpjMIEiGfVIL2xbmZiOyzQ9fiLDFLg9i9snhjbxqEnTqc/WilRg0Fd66k+E6yHV7YDoA==", + "version": "5.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/npm-package-json-lint-config/-/npm-package-json-lint-config-5.9.0.tgz", + "integrity": "sha512-4sQBUlUzjtYtrM5OC5P4lcyyYbvTDBsPwBk+u11lUI1h/EOOl36TYioEvLut2AGylqzFJKsnbzlL873tfd/5aQ==", "dev": true, - "license": "GPL-2.0-or-later", "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" @@ -8408,27 +8374,26 @@ } }, "node_modules/@wordpress/patterns": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/patterns/-/patterns-2.4.0.tgz", - "integrity": "sha512-eQqjhJt3ZdwnHi/Bqxw86rwgO/oohC5maOJorJ/N0ZbC3o/Fg6tksvUY2hpPwKqOPFonqov5ZrRN3XmHLMu8lQ==", + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/patterns/-/patterns-2.9.0.tgz", + "integrity": "sha512-WFtiQGssRkrw9NX4eSVRsjbNRdL+KuOEb0IywWvW4DMa2x1L4OEafUBY4HYoRO27RSNNevI+9wWgM0mC3GYr6Q==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", - "@wordpress/a11y": "^4.4.0", - "@wordpress/block-editor": "^13.4.0", - "@wordpress/blocks": "^13.4.0", - "@wordpress/components": "^28.4.0", - "@wordpress/compose": "^7.4.0", - "@wordpress/core-data": "^7.4.0", - "@wordpress/data": "^10.4.0", - "@wordpress/element": "^6.4.0", - "@wordpress/html-entities": "^4.4.0", - "@wordpress/i18n": "^5.4.0", - "@wordpress/icons": "^10.4.0", - "@wordpress/notices": "^5.4.0", - "@wordpress/private-apis": "^1.4.0", - "@wordpress/url": "^4.4.0" + "@wordpress/a11y": "^4.9.0", + "@wordpress/block-editor": "^14.4.0", + "@wordpress/blocks": "^13.9.0", + "@wordpress/components": "^28.9.0", + "@wordpress/compose": "^7.9.0", + "@wordpress/core-data": "^7.9.0", + "@wordpress/data": "^10.9.0", + "@wordpress/element": "^6.9.0", + "@wordpress/html-entities": "^4.9.0", + "@wordpress/i18n": "^5.9.0", + "@wordpress/icons": "^10.9.0", + "@wordpress/notices": "^5.9.0", + "@wordpress/private-apis": "^1.9.0", + "@wordpress/url": "^4.9.0" }, "engines": { "node": ">=18.12.0", @@ -8440,19 +8405,18 @@ } }, "node_modules/@wordpress/plugins": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/plugins/-/plugins-7.4.0.tgz", - "integrity": "sha512-ndFbbSfDEzdCAlIQcXgYkXsdHpYne0V7/H0te4GpcpMWsYXrew8wXfcMclp4RbAzpds2L2GMuoW4bPf02EDnaw==", + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/plugins/-/plugins-7.9.0.tgz", + "integrity": "sha512-A2X1SwQ8uyLjmIorDFV4CqUYbzFpKuYU+sc85vbITwtyjQxDuEYR+jO/Al7KX8lO/NO9Io7WAhpVgGx6J0Qq5Q==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", - "@wordpress/components": "^28.4.0", - "@wordpress/compose": "^7.4.0", - "@wordpress/element": "^6.4.0", - "@wordpress/hooks": "^4.4.0", - "@wordpress/icons": "^10.4.0", - "@wordpress/is-shallow-equal": "^5.4.0", + "@wordpress/components": "^28.9.0", + "@wordpress/compose": "^7.9.0", + "@wordpress/element": "^6.9.0", + "@wordpress/hooks": "^4.9.0", + "@wordpress/icons": "^10.9.0", + "@wordpress/is-shallow-equal": "^5.9.0", "memize": "^2.0.1" }, "engines": { @@ -8465,13 +8429,12 @@ } }, "node_modules/@wordpress/postcss-plugins-preset": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/postcss-plugins-preset/-/postcss-plugins-preset-5.4.0.tgz", - "integrity": "sha512-nfH9yw1Xbzqf6/kKKXVl1gmuyqVs9vBoAuqyrVYMt2wxk6/G7EEHNqI141SVZ2+O7wlMc9UNZMAEcApTmQ9N8g==", + "version": "5.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/postcss-plugins-preset/-/postcss-plugins-preset-5.9.0.tgz", + "integrity": "sha512-OOK5UU2CG+9ilzo1b8ySwVvtZddF+q+PTTFHcxFrcK23sg5XT1DCBm3WU7bSfzOBF2cd4FIVOFVpwvb07mn8Iw==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { - "@wordpress/base-styles": "^5.4.0", + "@wordpress/base-styles": "^5.9.0", "autoprefixer": "^10.2.5" }, "engines": { @@ -8483,22 +8446,21 @@ } }, "node_modules/@wordpress/preferences": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/preferences/-/preferences-4.4.0.tgz", - "integrity": "sha512-M8nb/jf7GF+d95r0+3zHHMlkwWkjpBwV3+FyVGhmyqKXDo8Cd5vjb/XO/JRKANySMnvFNdBzDp6KRrvSf75n/g==", + "version": "4.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/preferences/-/preferences-4.9.0.tgz", + "integrity": "sha512-uZo7zNY0+9BUqMi7NaiSHd/URA2REqjl15JOkLGNcZerM9BmjHdjdArl4XXH47MQIs/cBMOR1nMOYHCDWqkGgQ==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", - "@wordpress/a11y": "^4.4.0", - "@wordpress/components": "^28.4.0", - "@wordpress/compose": "^7.4.0", - "@wordpress/data": "^10.4.0", - "@wordpress/deprecated": "^4.4.0", - "@wordpress/element": "^6.4.0", - "@wordpress/i18n": "^5.4.0", - "@wordpress/icons": "^10.4.0", - "@wordpress/private-apis": "^1.4.0", + "@wordpress/a11y": "^4.9.0", + "@wordpress/components": "^28.9.0", + "@wordpress/compose": "^7.9.0", + "@wordpress/data": "^10.9.0", + "@wordpress/deprecated": "^4.9.0", + "@wordpress/element": "^6.9.0", + "@wordpress/i18n": "^5.9.0", + "@wordpress/icons": "^10.9.0", + "@wordpress/private-apis": "^1.9.0", "clsx": "^2.1.1" }, "engines": { @@ -8511,11 +8473,10 @@ } }, "node_modules/@wordpress/prettier-config": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/prettier-config/-/prettier-config-4.4.0.tgz", - "integrity": "sha512-etguLCGd8r0solW9pkUeBHGuqrsCGL+d2JzCB3APhDo3mYD+TK2PUg3EfXKOvJzHsQwHg73h0eW9/C5DU+ll+Q==", + "version": "4.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/prettier-config/-/prettier-config-4.9.0.tgz", + "integrity": "sha512-kxBTL/UZS1JEqzWWHo+h3q+ErvCtkiHm6GozUDgX9UlZXHAx/XAc24s4UaYXmZpjuH5hWO4sbp3xbj2ZI+Ohkg==", "dev": true, - "license": "GPL-2.0-or-later", "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" @@ -8525,27 +8486,28 @@ } }, "node_modules/@wordpress/primitives": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.4.0.tgz", - "integrity": "sha512-QmIrB0EgrmrFrCEngvrE/4mN7CGQMeJNkbvYinNNpqv53RDYI6cYCoMRDvNNXlqb+Ja3rOzkef0/VZdvtv2PMw==", + "version": "4.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.9.0.tgz", + "integrity": "sha512-vroiqxd+MP/K1+KEJqMAR/B/++4oShY4CisvMOK3gn75DmUV2QB6iQmBSjHRALqw9rqeHf7S0jLHWiFrAR+Dkg==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", - "@wordpress/element": "^6.4.0", + "@wordpress/element": "^6.9.0", "clsx": "^2.1.1" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" + }, + "peerDependencies": { + "react": "^18.0.0" } }, "node_modules/@wordpress/priority-queue": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/priority-queue/-/priority-queue-3.4.0.tgz", - "integrity": "sha512-sMPNUeBiEaTGF+UH5RuAFc0SnzhWRmeKuNAzDJmQ0MezSbLq1oDUbIbeMR91kj717da8IWZsDOy0TKacyM5aOA==", + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/priority-queue/-/priority-queue-3.9.0.tgz", + "integrity": "sha512-QVfELUL4ei5Uf0DNG9wMVNBILasGWWWogVjVeP1xXqmfSDoeFpPzXpfL9zfANndE2S49DJP9ZoZsCaJHtMrYzA==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", "requestidlecallback": "^0.3.0" @@ -8556,11 +8518,10 @@ } }, "node_modules/@wordpress/private-apis": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/private-apis/-/private-apis-1.4.0.tgz", - "integrity": "sha512-RBOK0v+WTsiilb57ZlbVS39kp9KpHLdYVZaWA84UNq0Gd4pYfHqaXnmCD/Tk8c7sREsflkGFO6d7B4pBlkWX6g==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/private-apis/-/private-apis-1.9.0.tgz", + "integrity": "sha512-hZbKVSlo5yOpssMshXwNlUyk83Ev55ZKMfJMVU5nWxiIM9bMCuhpwU+AXQ0GKxOzn2oMayVmtJ00FRbJFg+AMg==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0" }, @@ -8570,11 +8531,10 @@ } }, "node_modules/@wordpress/redux-routine": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/redux-routine/-/redux-routine-5.4.0.tgz", - "integrity": "sha512-kmBWfMdRFgIfgMlA0dKn8vzDECME15hJtALfWL35jnhEfeZW2+xzSnq5uqK3awCfVg8UxClYIRo6BalqGDChdQ==", + "version": "5.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/redux-routine/-/redux-routine-5.9.0.tgz", + "integrity": "sha512-eEb/otHMhOwVUydb5kErV3X+1R8qQ2hrLmlWIh+kiiKwFJVCl3ge/xN8Tiy1kEBEqgGRgPqxuLvNPZDd0ySpNg==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", "is-plain-object": "^5.0.0", @@ -8590,24 +8550,23 @@ } }, "node_modules/@wordpress/reusable-blocks": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/reusable-blocks/-/reusable-blocks-5.4.0.tgz", - "integrity": "sha512-OHTl3oNJIxlEwXew2TyCW0ECWjAfYGa8wnJ5VgW9GtuBOu7Q3y+1qvvmKsRPkFiK7R/JBbHXULOcr0eLPqpszw==", + "version": "5.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/reusable-blocks/-/reusable-blocks-5.9.0.tgz", + "integrity": "sha512-qjeT5QC1GZ5otR94OlHMwwPX2GWKR9rh8Ojh0rsxljAl9VPU0amPV7fCffMrLvPkDgT/VApcUDE2CBxhvWz7Kw==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", - "@wordpress/block-editor": "^13.4.0", - "@wordpress/blocks": "^13.4.0", - "@wordpress/components": "^28.4.0", - "@wordpress/core-data": "^7.4.0", - "@wordpress/data": "^10.4.0", - "@wordpress/element": "^6.4.0", - "@wordpress/i18n": "^5.4.0", - "@wordpress/icons": "^10.4.0", - "@wordpress/notices": "^5.4.0", - "@wordpress/private-apis": "^1.4.0", - "@wordpress/url": "^4.4.0" + "@wordpress/block-editor": "^14.4.0", + "@wordpress/blocks": "^13.9.0", + "@wordpress/components": "^28.9.0", + "@wordpress/core-data": "^7.9.0", + "@wordpress/data": "^10.9.0", + "@wordpress/element": "^6.9.0", + "@wordpress/i18n": "^5.9.0", + "@wordpress/icons": "^10.9.0", + "@wordpress/notices": "^5.9.0", + "@wordpress/private-apis": "^1.9.0", + "@wordpress/url": "^4.9.0" }, "engines": { "node": ">=18.12.0", @@ -8619,21 +8578,20 @@ } }, "node_modules/@wordpress/rich-text": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/rich-text/-/rich-text-7.4.0.tgz", - "integrity": "sha512-JZs4kT1tyDVrX2eG2iJnocZbmbJa0MOjBc1wiG0GK8EsQ1urhpsMkZn07QSEUa1/2Kl1G6Ow6iyFau2mMaj6ZQ==", + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/rich-text/-/rich-text-7.9.0.tgz", + "integrity": "sha512-GN2SGz8bVkdCVVskvJSgul4wKyq/qaXRmEJSrk3LMHuAbxHL5FFkwRHaOhnHScNz+P1bdEehCqgP8DB3yv+IEw==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", - "@wordpress/a11y": "^4.4.0", - "@wordpress/compose": "^7.4.0", - "@wordpress/data": "^10.4.0", - "@wordpress/deprecated": "^4.4.0", - "@wordpress/element": "^6.4.0", - "@wordpress/escape-html": "^3.4.0", - "@wordpress/i18n": "^5.4.0", - "@wordpress/keycodes": "^4.4.0", + "@wordpress/a11y": "^4.9.0", + "@wordpress/compose": "^7.9.0", + "@wordpress/data": "^10.9.0", + "@wordpress/deprecated": "^4.9.0", + "@wordpress/element": "^6.9.0", + "@wordpress/escape-html": "^3.9.0", + "@wordpress/i18n": "^5.9.0", + "@wordpress/keycodes": "^4.9.0", "memize": "^2.1.0" }, "engines": { @@ -8645,16 +8603,15 @@ } }, "node_modules/@wordpress/router": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/router/-/router-1.4.0.tgz", - "integrity": "sha512-Lb+BFGJRNMw00Vcvi2Tdx8rns/5nJUpMe8ZMLR2tN7wocmzoizOLRtblZA4QnpljtN1cfJJTEzzMWg9vHaqLqA==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/router/-/router-1.9.0.tgz", + "integrity": "sha512-vbmFlsnQA7GgzvYw0B0L4WccG976sxTNihlgaAJHiu8un7ZHxj+aGwwOa6kkwH3uzcqaN6CmbKhjjb9gik6gzQ==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", - "@wordpress/element": "^6.4.0", - "@wordpress/private-apis": "^1.4.0", - "@wordpress/url": "^4.4.0", + "@wordpress/element": "^6.9.0", + "@wordpress/private-apis": "^1.9.0", + "@wordpress/url": "^4.9.0", "history": "^5.3.0" }, "engines": { @@ -8666,25 +8623,24 @@ } }, "node_modules/@wordpress/scripts": { - "version": "28.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/scripts/-/scripts-28.4.0.tgz", - "integrity": "sha512-z15ytMLQZdQRbpaUFkkhAmGFVzD/bBCClQ/1HOINbJu1j8y+WGTuP0HFn45I/+B+ynOKBQjisOCf8ZI3s290/g==", + "version": "30.1.0", + "resolved": "https://registry.npmjs.org/@wordpress/scripts/-/scripts-30.1.0.tgz", + "integrity": "sha512-Jzof5xtkjUIO9ybvx3S+W/Mox/fkI+7JOwsi0jdJV2CxTBfH6A9hEykHbX3BxuLGCKJIf55OkCdap6Jif9JojQ==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/core": "^7.16.0", "@pmmmwh/react-refresh-webpack-plugin": "^0.5.11", "@svgr/webpack": "^8.0.1", - "@wordpress/babel-preset-default": "^8.4.0", - "@wordpress/browserslist-config": "^6.4.0", - "@wordpress/dependency-extraction-webpack-plugin": "^6.4.0", - "@wordpress/e2e-test-utils-playwright": "^1.4.0", - "@wordpress/eslint-plugin": "^20.1.0", - "@wordpress/jest-preset-default": "^12.4.0", - "@wordpress/npm-package-json-lint-config": "^5.4.0", - "@wordpress/postcss-plugins-preset": "^5.4.0", - "@wordpress/prettier-config": "^4.4.0", - "@wordpress/stylelint-config": "^22.4.0", + "@wordpress/babel-preset-default": "^8.9.0", + "@wordpress/browserslist-config": "^6.9.0", + "@wordpress/dependency-extraction-webpack-plugin": "^6.9.0", + "@wordpress/e2e-test-utils-playwright": "^1.9.0", + "@wordpress/eslint-plugin": "^21.2.0", + "@wordpress/jest-preset-default": "^12.9.0", + "@wordpress/npm-package-json-lint-config": "^5.9.0", + "@wordpress/postcss-plugins-preset": "^5.9.0", + "@wordpress/prettier-config": "^4.9.0", + "@wordpress/stylelint-config": "^23.1.0", "adm-zip": "^0.5.9", "babel-jest": "^29.6.2", "babel-loader": "^8.2.3", @@ -8713,9 +8669,10 @@ "npm-package-json-lint": "^6.4.0", "npm-packlist": "^3.0.0", "postcss": "^8.4.5", + "postcss-import": "^16.1.0", "postcss-loader": "^6.2.1", "prettier": "npm:wp-prettier@3.0.3", - "puppeteer-core": "^13.2.0", + "puppeteer-core": "^23.1.0", "react-refresh": "^0.14.0", "read-pkg-up": "^7.0.1", "resolve-bin": "^0.4.0", @@ -8724,7 +8681,7 @@ "sass-loader": "^12.1.0", "schema-utils": "^4.2.0", "source-map-loader": "^3.0.0", - "stylelint": "^14.2.0", + "stylelint": "^16.8.2", "terser-webpack-plugin": "^5.3.9", "url-loader": "^4.1.1", "webpack": "^5.88.2", @@ -8740,88 +8697,36 @@ "npm": ">=8.19.2" }, "peerDependencies": { - "@playwright/test": "^1.45.1", + "@playwright/test": "^1.47.0", "react": "^18.0.0", "react-dom": "^18.0.0" } }, - "node_modules/@wordpress/scripts/node_modules/@csstools/selector-specificity": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-2.2.0.tgz", - "integrity": "sha512-+OJ9konv95ClSTOJCmMZqpd5+YGsB2S+x6w3E1oaM8UuR5j8nTNHYSz8c9BEPGDOCMQYIEEGlVPj/VY64iTbGw==", + "node_modules/@wordpress/scripts/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, - "license": "CC0-1.0", + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, "engines": { - "node": "^14 || ^16 || >=18" + "node": ">=8" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss-selector-parser": "^6.0.10" + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/@wordpress/scripts/node_modules/@wordpress/stylelint-config": { - "version": "22.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/stylelint-config/-/stylelint-config-22.4.0.tgz", - "integrity": "sha512-oi1+yLqyDU7zP1qLHm2iPihltSelSFzNb8UBvRdExsUROZF+xHxBBz5R1El+KSTTSBguRfvUMufJAMQTDAS7dA==", + "node_modules/@wordpress/scripts/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, "license": "MIT", "dependencies": { - "stylelint-config-recommended": "^6.0.0", - "stylelint-config-recommended-scss": "^5.0.2" - }, - "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" - }, - "peerDependencies": { - "stylelint": "^14.2" - } - }, - "node_modules/@wordpress/scripts/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@wordpress/scripts/node_modules/array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/@wordpress/scripts/node_modules/balanced-match": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-2.0.0.tgz", - "integrity": "sha512-1ugUSr8BHXRnK23KfuYS+gVMC3LB8QGH9W1iGtDPsNWoQbgtXSExkBu2aDR4epiGWZOjZsj6lDl/N/AqqTC3UA==", - "dev": true, - "license": "MIT" - }, - "node_modules/@wordpress/scripts/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { "node": ">=10" @@ -8886,55 +8791,6 @@ } } }, - "node_modules/@wordpress/scripts/node_modules/global-modules": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", - "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==", - "dev": true, - "license": "MIT", - "dependencies": { - "global-prefix": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@wordpress/scripts/node_modules/global-prefix": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", - "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", - "dev": true, - "license": "MIT", - "dependencies": { - "ini": "^1.3.5", - "kind-of": "^6.0.2", - "which": "^1.3.1" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@wordpress/scripts/node_modules/globby": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", - "dev": true, - "license": "MIT", - "dependencies": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/@wordpress/scripts/node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -8945,23 +8801,6 @@ "node": ">=8" } }, - "node_modules/@wordpress/scripts/node_modules/kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@wordpress/scripts/node_modules/known-css-properties": { - "version": "0.26.0", - "resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.26.0.tgz", - "integrity": "sha512-5FZRzrZzNTBruuurWpvZnvP9pum+fe0HcK8z/ooo+U+Hmp4vtbyp1/QDsqmufirXy4egGzbaH/y2uCZf+6W5Kg==", - "dev": true, - "license": "MIT" - }, "node_modules/@wordpress/scripts/node_modules/postcss-loader": { "version": "6.2.1", "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-6.2.1.tgz", @@ -8985,23 +8824,6 @@ "webpack": "^5.0.0" } }, - "node_modules/@wordpress/scripts/node_modules/postcss-safe-parser": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-6.0.0.tgz", - "integrity": "sha512-FARHN8pwH+WiS2OPCxJI8FuRJpTVnn6ZNFiqAM2aeW2LwTHWWmWgIyKC6cUo0L8aeKiF/14MNvnpls6R2PBeMQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - "peerDependencies": { - "postcss": "^8.3.3" - } - }, "node_modules/@wordpress/scripts/node_modules/prettier": { "name": "wp-prettier", "version": "3.0.3", @@ -9071,104 +8893,6 @@ "node": ">=10" } }, - "node_modules/@wordpress/scripts/node_modules/stylelint": { - "version": "14.16.1", - "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-14.16.1.tgz", - "integrity": "sha512-ErlzR/T3hhbV+a925/gbfc3f3Fep9/bnspMiJPorfGEmcBbXdS+oo6LrVtoUZ/w9fqD6o6k7PtUlCOsCRdjX/A==", - "dev": true, - "license": "MIT", - "dependencies": { - "@csstools/selector-specificity": "^2.0.2", - "balanced-match": "^2.0.0", - "colord": "^2.9.3", - "cosmiconfig": "^7.1.0", - "css-functions-list": "^3.1.0", - "debug": "^4.3.4", - "fast-glob": "^3.2.12", - "fastest-levenshtein": "^1.0.16", - "file-entry-cache": "^6.0.1", - "global-modules": "^2.0.0", - "globby": "^11.1.0", - "globjoin": "^0.1.4", - "html-tags": "^3.2.0", - "ignore": "^5.2.1", - "import-lazy": "^4.0.0", - "imurmurhash": "^0.1.4", - "is-plain-object": "^5.0.0", - "known-css-properties": "^0.26.0", - "mathml-tag-names": "^2.1.3", - "meow": "^9.0.0", - "micromatch": "^4.0.5", - "normalize-path": "^3.0.0", - "picocolors": "^1.0.0", - "postcss": "^8.4.19", - "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.11", - "postcss-value-parser": "^4.2.0", - "resolve-from": "^5.0.0", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "style-search": "^0.1.0", - "supports-hyperlinks": "^2.3.0", - "svg-tags": "^1.0.0", - "table": "^6.8.1", - "v8-compile-cache": "^2.3.0", - "write-file-atomic": "^4.0.2" - }, - "bin": { - "stylelint": "bin/stylelint.js" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/stylelint" - } - }, - "node_modules/@wordpress/scripts/node_modules/stylelint-config-recommended": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-6.0.0.tgz", - "integrity": "sha512-ZorSSdyMcxWpROYUvLEMm0vSZud2uB7tX1hzBZwvVY9SV/uly4AvvJPPhCcymZL3fcQhEQG5AELmrxWqtmzacw==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "stylelint": "^14.0.0" - } - }, - "node_modules/@wordpress/scripts/node_modules/stylelint-config-recommended-scss": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/stylelint-config-recommended-scss/-/stylelint-config-recommended-scss-5.0.2.tgz", - "integrity": "sha512-b14BSZjcwW0hqbzm9b0S/ScN2+3CO3O4vcMNOw2KGf8lfVSwJ4p5TbNEXKwKl1+0FMtgRXZj6DqVUe/7nGnuBg==", - "dev": true, - "license": "MIT", - "dependencies": { - "postcss-scss": "^4.0.2", - "stylelint-config-recommended": "^6.0.0", - "stylelint-scss": "^4.0.0" - }, - "peerDependencies": { - "stylelint": "^14.0.0" - } - }, - "node_modules/@wordpress/scripts/node_modules/stylelint-scss": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/stylelint-scss/-/stylelint-scss-4.7.0.tgz", - "integrity": "sha512-TSUgIeS0H3jqDZnby1UO1Qv3poi1N8wUYIJY6D1tuUq2MN3lwp/rITVo0wD+1SWTmRm0tNmGO0b7nKInnqF6Hg==", - "dev": true, - "license": "MIT", - "dependencies": { - "postcss-media-query-parser": "^0.2.3", - "postcss-resolve-nested-selector": "^0.1.1", - "postcss-selector-parser": "^6.0.11", - "postcss-value-parser": "^4.2.0" - }, - "peerDependencies": { - "stylelint": "^14.5.1 || ^15.0.0" - } - }, "node_modules/@wordpress/scripts/node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -9182,37 +8906,22 @@ "node": ">=8" } }, - "node_modules/@wordpress/scripts/node_modules/supports-hyperlinks": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz", - "integrity": "sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0", - "supports-color": "^7.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/@wordpress/server-side-render": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/server-side-render/-/server-side-render-5.4.0.tgz", - "integrity": "sha512-htEmyga1EMJTlRl8wii2vFu/9nJTwKcVhYKw3m7nCF9kGsXoUvpYQSRYRNJCVU2tQfBXVaMkSrKNDsDGcG7I2w==", + "version": "5.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/server-side-render/-/server-side-render-5.9.0.tgz", + "integrity": "sha512-0aq/nD6jdqe3aNI9gAmAMnAy6ghtUmvMon39AZH6WagoEqiPtNpRMHVZQ7QXWb1Ghng6ei+To7qyGKp/E19gdg==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", - "@wordpress/api-fetch": "^7.4.0", - "@wordpress/blocks": "^13.4.0", - "@wordpress/components": "^28.4.0", - "@wordpress/compose": "^7.4.0", - "@wordpress/data": "^10.4.0", - "@wordpress/deprecated": "^4.4.0", - "@wordpress/element": "^6.4.0", - "@wordpress/i18n": "^5.4.0", - "@wordpress/url": "^4.4.0", + "@wordpress/api-fetch": "^7.9.0", + "@wordpress/blocks": "^13.9.0", + "@wordpress/components": "^28.9.0", + "@wordpress/compose": "^7.9.0", + "@wordpress/data": "^10.9.0", + "@wordpress/deprecated": "^4.9.0", + "@wordpress/element": "^6.9.0", + "@wordpress/i18n": "^5.9.0", + "@wordpress/url": "^4.9.0", "fast-deep-equal": "^3.1.3" }, "engines": { @@ -9225,11 +8934,10 @@ } }, "node_modules/@wordpress/shortcode": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/shortcode/-/shortcode-4.4.0.tgz", - "integrity": "sha512-iHxwn9nM7yIc3q2JbQdwcM6eXeg40P82gIQM/HOI+D3P5spfg3gJFzv+MWQpkUVF5BJY537plCQxHt3fxzNkZw==", + "version": "4.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/shortcode/-/shortcode-4.9.0.tgz", + "integrity": "sha512-KprSoaeenLzYzOJt703KIfLqUIyVkVt1zm0k6V/AyW/f1yqn2BXxJHgcmyWn7aEMlgwY8yzaE3TkvRfw12q4DA==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", "memize": "^2.0.1" @@ -9240,11 +8948,10 @@ } }, "node_modules/@wordpress/style-engine": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/style-engine/-/style-engine-2.4.0.tgz", - "integrity": "sha512-BY5WwK79qKAkMt+OvsTt2thM8B07Eup8+Gb9xn0ZoE/uuLabzH1AMDIYWQ06nWBOGMDT7WFfSIDp43xWpnc3/g==", + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/style-engine/-/style-engine-2.9.0.tgz", + "integrity": "sha512-/rb7BHwvgu0hW7IG7/W6ONOJx78N5mLvqOoHk/C2Fd3L4rAiDl9HP3YnwpExFdqnBUSYg51jI3dGTUWEFFBOpw==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", "change-case": "^4.1.2" @@ -9254,16 +8961,33 @@ "npm": ">=8.19.2" } }, + "node_modules/@wordpress/stylelint-config": { + "version": "23.1.0", + "resolved": "https://registry.npmjs.org/@wordpress/stylelint-config/-/stylelint-config-23.1.0.tgz", + "integrity": "sha512-Sqli3HYBVaBpVVkNeEUonHcPeEmVF8N76MW5pvKgMyr4TjgVLxTEov9Gujzh4ArW7YCq/hWoS74HKok7xfUsJQ==", + "dev": true, + "dependencies": { + "@stylistic/stylelint-plugin": "^3.0.1", + "stylelint-config-recommended": "^14.0.1", + "stylelint-config-recommended-scss": "^14.1.0" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "stylelint": "^16.8.2" + } + }, "node_modules/@wordpress/sync": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/sync/-/sync-1.4.0.tgz", - "integrity": "sha512-PvUmCeQOGz8tFWEZkHIXas7cmo9Gd1PrvGcWIL2a6X2HdePZNBa67A7ykcUAZHOZjJTaJCyeZHtRhG6Vms0zig==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/sync/-/sync-1.9.0.tgz", + "integrity": "sha512-3gg7YU1m2tFm6sG68+UNIWctKXr9TDcC3sMwUyBNgBLrfv7tfZweiRawZc8s6Ty7+qs7lHUFCwOnS2BhtuvrTg==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", "@types/simple-peer": "^9.11.5", - "@wordpress/url": "^4.4.0", + "@wordpress/url": "^4.9.0", "import-locals": "^2.0.0", "lib0": "^0.2.42", "simple-peer": "^9.11.0", @@ -9278,11 +9002,10 @@ } }, "node_modules/@wordpress/token-list": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/token-list/-/token-list-3.4.0.tgz", - "integrity": "sha512-I1KAyiIBx9Ro9ilNk5u6rwWhplc5OkuFtOy1Nw9eytpVIICXyd/A6O19hTkmrFrlvfDepZFYTij+M//ONGDIrg==", + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/token-list/-/token-list-3.9.0.tgz", + "integrity": "sha512-mnwh8WcA9//DVwwZVfEaFHfIK1RaNQ8QvhD1fOtjJWjheS12QsQwjdlGTgvBVl66ErP65GdK7BM1pTv6NI0GwA==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0" }, @@ -9292,14 +9015,13 @@ } }, "node_modules/@wordpress/undo-manager": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/undo-manager/-/undo-manager-1.4.0.tgz", - "integrity": "sha512-Z48K9wqv/7h06Qqef979wDxINFbP1FFwsRweAdi6FiMznoZC5IyGPoVRAIoN6NVRHb8vh9/pkxubNIXBIsrF8Q==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/undo-manager/-/undo-manager-1.9.0.tgz", + "integrity": "sha512-JLrcmeCTqITbChkJy+PeXcE03+6ZgIfQ22cBg1+0mzLQxglx1gndTnhRcnCSebvsXnmOVmxvE4HmJ84lv7liCQ==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", - "@wordpress/is-shallow-equal": "^5.4.0" + "@wordpress/is-shallow-equal": "^5.9.0" }, "engines": { "node": ">=18.12.0", @@ -9307,11 +9029,10 @@ } }, "node_modules/@wordpress/url": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/url/-/url-4.4.0.tgz", - "integrity": "sha512-t9yPr+c/T/8y04Yktdb/URJrQCQ4xPM7M9dq6h63IZHSaz3Ndr94Sn/1T10rXFlOoBJ6pr6AdetecFRfLLbh4g==", + "version": "4.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/url/-/url-4.9.0.tgz", + "integrity": "sha512-PjfExLOzaagtDZ20CAaCMh4SzeHWzJC3fiRzX4eV0esfHr4K58duxIEHXwOZ69L8/Cn596OCjrFO+CHd16jYdQ==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", "remove-accents": "^0.5.0" @@ -9322,16 +9043,15 @@ } }, "node_modules/@wordpress/viewport": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/viewport/-/viewport-6.4.0.tgz", - "integrity": "sha512-hm5xv4jDQPGHlEkU0r0tO9SKEeVCcMeBDMH8h5dQAdvnyExKB1VUE1iZYLgRXvpPaXU/Ywa36YlnkMW2NVXSiw==", + "version": "6.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/viewport/-/viewport-6.9.0.tgz", + "integrity": "sha512-49rc47dYKuBRHHLhPBhmR19c8qjhlxrqR16mEUUf4f2oIdmsaBvxVMZxhaYL44kP6wfto/+E2cUdFJZHrx9Lpw==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", - "@wordpress/compose": "^7.4.0", - "@wordpress/data": "^10.4.0", - "@wordpress/element": "^6.4.0" + "@wordpress/compose": "^7.9.0", + "@wordpress/data": "^10.9.0", + "@wordpress/element": "^6.9.0" }, "engines": { "node": ">=18.12.0", @@ -9342,35 +9062,33 @@ } }, "node_modules/@wordpress/warning": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/warning/-/warning-3.4.0.tgz", - "integrity": "sha512-0LbBvyRLZVulwVcseH+WryDlnP//CFBwAq15+XzzoZc3s0ANlGsLPTlYamZ7eoyosGQZVKqG/yzP3DAlESj89w==", + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/warning/-/warning-3.9.0.tgz", + "integrity": "sha512-c+bEWwDjp3+Q7SAGb47CuZe56giBFNvutoyiAkn34pQZeO8pRjPElRABIkR7oyn4dEusjL1f6OQmU3dSYAMTpg==", "dev": true, - "license": "GPL-2.0-or-later", "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" } }, "node_modules/@wordpress/widgets": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/widgets/-/widgets-4.4.0.tgz", - "integrity": "sha512-nJe1OunsDH9L2chJAuNBQXYUIIncD79XqpoGn0Q276nMxgjCYB7GmogF2Gia5cvsEUAjLqExn8LQEctDsLJd7A==", + "version": "4.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/widgets/-/widgets-4.9.0.tgz", + "integrity": "sha512-lfifzKTKSz1sykspgw3I5cUEi7Y1JgWD4NARAjVH9j+K80I3dNykuHhmNXDbgOoWx6SKny88qBWhMapIO+rpGg==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", - "@wordpress/api-fetch": "^7.4.0", - "@wordpress/block-editor": "^13.4.0", - "@wordpress/blocks": "^13.4.0", - "@wordpress/components": "^28.4.0", - "@wordpress/compose": "^7.4.0", - "@wordpress/core-data": "^7.4.0", - "@wordpress/data": "^10.4.0", - "@wordpress/element": "^6.4.0", - "@wordpress/i18n": "^5.4.0", - "@wordpress/icons": "^10.4.0", - "@wordpress/notices": "^5.4.0", + "@wordpress/api-fetch": "^7.9.0", + "@wordpress/block-editor": "^14.4.0", + "@wordpress/blocks": "^13.9.0", + "@wordpress/components": "^28.9.0", + "@wordpress/compose": "^7.9.0", + "@wordpress/core-data": "^7.9.0", + "@wordpress/data": "^10.9.0", + "@wordpress/element": "^6.9.0", + "@wordpress/i18n": "^5.9.0", + "@wordpress/icons": "^10.9.0", + "@wordpress/notices": "^5.9.0", "clsx": "^2.1.1" }, "engines": { @@ -9383,11 +9101,10 @@ } }, "node_modules/@wordpress/wordcount": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/wordcount/-/wordcount-4.4.0.tgz", - "integrity": "sha512-CKaz6YzmO7BeYtiyvlDGvnBRfmrn3qDBYY3r91KomAQvHl6m3M8N4SYfCoKjOldbTMgYCah6EPn4vqCxs6DEeg==", + "version": "4.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/wordcount/-/wordcount-4.9.0.tgz", + "integrity": "sha512-DIvvJnsr4cmhQJBjv19ZfQlEmJF+0M0YCbx5JguUJAdN3FQ93LUpbTUzytl4LR+JllUuSsRmjZ53OopBTHAM7A==", "dev": true, - "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0" }, @@ -9723,7 +9440,6 @@ "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", "dev": true, - "license": "MIT", "peerDependencies": { "ajv": ">=5.0.0" } @@ -9901,7 +9617,6 @@ "resolved": "https://registry.npmjs.org/aria-hidden/-/aria-hidden-1.2.4.tgz", "integrity": "sha512-y+CcFFwelSXpLZk/7fMB2mUbGtX9lKycf1MWJ7CaTIERyitVlyQx6C+sxcROU2BAJ24OiZyK+8wj2i8AlBoS3A==", "dev": true, - "license": "MIT", "dependencies": { "tslib": "^2.0.0" }, @@ -10122,7 +9837,6 @@ "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", "dev": true, - "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -10165,9 +9879,9 @@ "license": "MIT" }, "node_modules/autoprefixer": { - "version": "10.4.19", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.19.tgz", - "integrity": "sha512-BaENR2+zBZ8xXhM4pUaKUxlVdxZ0EZhjvbopwnXmxRUfqDmwSpC2lAi/QXvx7NRdPCo1WKEcEF6mV64si1z4Ew==", + "version": "10.4.20", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.20.tgz", + "integrity": "sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g==", "dev": true, "funding": [ { @@ -10183,13 +9897,12 @@ "url": "https://github.com/sponsors/ai" } ], - "license": "MIT", "dependencies": { - "browserslist": "^4.23.0", - "caniuse-lite": "^1.0.30001599", + "browserslist": "^4.23.3", + "caniuse-lite": "^1.0.30001646", "fraction.js": "^4.3.7", "normalize-range": "^0.1.2", - "picocolors": "^1.0.0", + "picocolors": "^1.0.1", "postcss-value-parser": "^4.2.0" }, "bin": { @@ -10465,14 +10178,13 @@ } }, "node_modules/babel-plugin-polyfill-corejs3": { - "version": "0.10.4", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.10.4.tgz", - "integrity": "sha512-25J6I8NGfa5YkCDogHRID3fVCadIR8/pGl1/spvCkzb6lVn6SR3ojpx9nOn9iEBcUsjY24AmdKm5khcfKdylcg==", + "version": "0.10.6", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.10.6.tgz", + "integrity": "sha512-b37+KR2i/khY5sKmWNVQAnitvquQbNdWy6lJdsr0kmquCKEEUgMKK4SboVM3HtfnZilfjr4MMQ7vY58FVWDtIA==", "dev": true, - "license": "MIT", "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.6.1", - "core-js-compat": "^3.36.1" + "@babel/helper-define-polyfill-provider": "^0.6.2", + "core-js-compat": "^3.38.0" }, "peerDependencies": { "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" @@ -10574,6 +10286,46 @@ "license": "Apache-2.0", "optional": true }, + "node_modules/bare-fs": { + "version": "2.3.5", + "resolved": "https://registry.npmjs.org/bare-fs/-/bare-fs-2.3.5.tgz", + "integrity": "sha512-SlE9eTxifPDJrT6YgemQ1WGFleevzwY+XAP1Xqgl56HtcrisC2CHCZ2tq6dBpcH2TnNxwUEUGhweo+lrQtYuiw==", + "dev": true, + "optional": true, + "dependencies": { + "bare-events": "^2.0.0", + "bare-path": "^2.0.0", + "bare-stream": "^2.0.0" + } + }, + "node_modules/bare-os": { + "version": "2.4.4", + "resolved": "https://registry.npmjs.org/bare-os/-/bare-os-2.4.4.tgz", + "integrity": "sha512-z3UiI2yi1mK0sXeRdc4O1Kk8aOa/e+FNWZcTiPB/dfTWyLypuE99LibgRaQki914Jq//yAWylcAt+mknKdixRQ==", + "dev": true, + "optional": true + }, + "node_modules/bare-path": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/bare-path/-/bare-path-2.1.3.tgz", + "integrity": "sha512-lh/eITfU8hrj9Ru5quUp0Io1kJWIk1bTjzo7JH1P5dWmQ2EL4hFUlfI8FonAhSlgIfhn63p84CDY/x+PisgcXA==", + "dev": true, + "optional": true, + "dependencies": { + "bare-os": "^2.1.0" + } + }, + "node_modules/bare-stream": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/bare-stream/-/bare-stream-2.3.0.tgz", + "integrity": "sha512-pVRWciewGUeCyKEuRxwv06M079r+fRjAQjBEK2P6OYGrO43O+Z0LrPZZEjlc4mB6C2RpZ9AxJ1s7NLEtOHO6eA==", + "dev": true, + "optional": true, + "dependencies": { + "b4a": "^1.6.6", + "streamx": "^2.20.0" + } + }, "node_modules/base64-js": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", @@ -10635,43 +10387,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "dev": true, - "license": "MIT", - "dependencies": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, - "node_modules/bl/node_modules/buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, "node_modules/body-parser": { "version": "1.20.2", "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz", @@ -10780,9 +10495,9 @@ } }, "node_modules/browserslist": { - "version": "4.23.2", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.2.tgz", - "integrity": "sha512-qkqSyistMYdxAcw+CzbZwlBy8AGmS/eEWs+sEV5TnLRGDOL+C5M2EnH6tlZyg0YoAxGJAFKh61En9BR941GnHA==", + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.0.tgz", + "integrity": "sha512-Rmb62sR1Zpjql25eSanFGEhAxcFwfA1K0GuQcLoaJBAcENegrQut3hYdhXFF1obQfiDyqIW/cLM5HSJ/9k884A==", "dev": true, "funding": [ { @@ -10798,11 +10513,10 @@ "url": "https://github.com/sponsors/ai" } ], - "license": "MIT", "dependencies": { - "caniuse-lite": "^1.0.30001640", - "electron-to-chromium": "^1.4.820", - "node-releases": "^2.0.14", + "caniuse-lite": "^1.0.30001663", + "electron-to-chromium": "^1.5.28", + "node-releases": "^2.0.18", "update-browserslist-db": "^1.1.0" }, "bin": { @@ -10841,7 +10555,6 @@ "url": "https://feross.org/support" } ], - "license": "MIT", "dependencies": { "base64-js": "^1.3.1", "ieee754": "^1.2.1" @@ -10988,7 +10701,6 @@ "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz", "integrity": "sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==", "dev": true, - "license": "MIT", "dependencies": { "camelcase": "^5.3.1", "map-obj": "^4.0.0", @@ -11006,7 +10718,6 @@ "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", "dev": true, - "license": "MIT", "engines": { "node": ">=6" } @@ -11025,9 +10736,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001643", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001643.tgz", - "integrity": "sha512-ERgWGNleEilSrHM6iUz/zJNSQTP8Mr21wDWpdgvRwcTXGAq6jMtOUPP4dqFPTdKqZ2wKTdtB+uucZ3MRpAUSmg==", + "version": "1.0.30001667", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001667.tgz", + "integrity": "sha512-7LTwJjcRkzKFmtqGsibMeuXmvFDfZq/nzIjnmgCGzKKRVzjD72selLDK1oPF/Oxzmt4fNcPvTDvGqSDG4tCALw==", "dev": true, "funding": [ { @@ -11042,8 +10753,7 @@ "type": "github", "url": "https://github.com/sponsors/ai" } - ], - "license": "CC-BY-4.0" + ] }, "node_modules/capital-case": { "version": "1.0.4", @@ -11062,7 +10772,6 @@ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", "dev": true, - "license": "MIT", "dependencies": { "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", @@ -11077,7 +10786,6 @@ "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", "dev": true, - "license": "MIT", "engines": { "node": ">=0.8.0" } @@ -11251,13 +10959,6 @@ "node": ">= 6" } }, - "node_modules/chownr": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", - "dev": true, - "license": "ISC" - }, "node_modules/chrome-launcher": { "version": "0.15.2", "resolved": "https://registry.npmjs.org/chrome-launcher/-/chrome-launcher-0.15.2.tgz", @@ -11287,6 +10988,26 @@ "node": ">=6.0" } }, + "node_modules/chromium-bidi": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/chromium-bidi/-/chromium-bidi-0.8.0.tgz", + "integrity": "sha512-uJydbGdTw0DEUjhoogGveneJVWX/9YuqkWePzMmkBYwtdAqo5d3J/ovNKFr+/2hWXYmYCr6it8mSSTIj6SS6Ug==", + "dev": true, + "dependencies": { + "mitt": "3.0.1", + "urlpattern-polyfill": "10.0.0", + "zod": "3.23.8" + }, + "peerDependencies": { + "devtools-protocol": "*" + } + }, + "node_modules/chromium-bidi/node_modules/mitt": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mitt/-/mitt-3.0.1.tgz", + "integrity": "sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==", + "dev": true + }, "node_modules/ci-info": { "version": "3.9.0", "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", @@ -11371,8 +11092,7 @@ "version": "2.4.5", "resolved": "https://registry.npmjs.org/client-zip/-/client-zip-2.4.5.tgz", "integrity": "sha512-4y4d5ZeTH/szIAMQeC8ju67pxtvj+3u20wMGwOFrZk+pegy3aSEA2JkwgC8XVDTXP/Iqn1gyqNQXmkyBp4KLEQ==", - "dev": true, - "license": "MIT" + "dev": true }, "node_modules/clipboard": { "version": "2.0.11", @@ -11467,7 +11187,6 @@ "resolved": "https://registry.npmjs.org/cmdk/-/cmdk-1.0.0.tgz", "integrity": "sha512-gDzVf0a09TvoJ5jnuPvygTB77+XdOSwEmJ88L6XPFPlv7T3RxbP9jgenfylrAMD0+Le1aO0nVjQUzl2g+vjz5Q==", "dev": true, - "license": "MIT", "dependencies": { "@radix-ui/react-dialog": "1.0.5", "@radix-ui/react-primitive": "1.0.3" @@ -11824,25 +11543,23 @@ } }, "node_modules/core-js": { - "version": "3.37.1", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.37.1.tgz", - "integrity": "sha512-Xn6qmxrQZyB0FFY8E3bgRXei3lWDJHhvI+u0q9TKIYM49G8pAr0FgnnrFRAmsbptZL1yxRADVXn+x5AGsbBfyw==", + "version": "3.38.1", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.38.1.tgz", + "integrity": "sha512-OP35aUorbU3Zvlx7pjsFdu1rGNnD4pgw/CWoYzRY3t2EzoVT7shKHY1dlAy3f41cGIO7ZDPQimhGFTlEYkG/Hw==", "dev": true, "hasInstallScript": true, - "license": "MIT", "funding": { "type": "opencollective", "url": "https://opencollective.com/core-js" } }, "node_modules/core-js-compat": { - "version": "3.37.1", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.37.1.tgz", - "integrity": "sha512-9TNiImhKvQqSUkOvk/mMRZzOANTiEVC7WaBNhHcKM7x+/5E1l5NvsysR19zuDQScE8k+kfQXWRN3AtS/eOSHpg==", + "version": "3.38.1", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.38.1.tgz", + "integrity": "sha512-JRH6gfXxGmrzF3tZ57lFx97YARxCXPaMzPo6jELZhv88pBH5VXpQ+y0znKGlFnzuaihqhLbefxSJxWJMPtfDzw==", "dev": true, - "license": "MIT", "dependencies": { - "browserslist": "^4.23.0" + "browserslist": "^4.23.3" }, "funding": { "type": "opencollective", @@ -11983,16 +11700,6 @@ "node": ">=8" } }, - "node_modules/cross-fetch": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.5.tgz", - "integrity": "sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==", - "dev": true, - "license": "MIT", - "dependencies": { - "node-fetch": "2.6.7" - } - }, "node_modules/cross-spawn": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", @@ -12395,13 +12102,12 @@ "license": "MIT" }, "node_modules/debug": { - "version": "4.3.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.6.tgz", - "integrity": "sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg==", + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", + "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", "dev": true, - "license": "MIT", "dependencies": { - "ms": "2.1.2" + "ms": "^2.1.3" }, "engines": { "node": ">=6.0" @@ -12412,6 +12118,12 @@ } } }, + "node_modules/debug/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true + }, "node_modules/decamelize": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", @@ -12427,7 +12139,6 @@ "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.1.tgz", "integrity": "sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==", "dev": true, - "license": "MIT", "dependencies": { "decamelize": "^1.1.0", "map-obj": "^1.0.0" @@ -12444,7 +12155,6 @@ "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", "integrity": "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==", "dev": true, - "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -12558,33 +12268,6 @@ "node": ">=0.10.0" } }, - "node_modules/deepsignal": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/deepsignal/-/deepsignal-1.5.0.tgz", - "integrity": "sha512-bFywDpBUUWMs576H2dgLFLLFuQ/UWXbzHfKD98MZTfGsl7+twIzvz4ihCNrRrZ/Emz3kqJaNIAp5eBWUEWhnAw==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "@preact/signals": "^1.1.4", - "@preact/signals-core": "^1.5.1", - "@preact/signals-react": "^1.3.8 || ^2.0.0", - "preact": "^10.16.0" - }, - "peerDependenciesMeta": { - "@preact/signals": { - "optional": true - }, - "@preact/signals-core": { - "optional": true - }, - "@preact/signals-react": { - "optional": true - }, - "preact": { - "optional": true - } - } - }, "node_modules/default-gateway": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", @@ -12808,8 +12491,7 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/detect-node-es/-/detect-node-es-1.1.0.tgz", "integrity": "sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==", - "dev": true, - "license": "MIT" + "dev": true }, "node_modules/devtools-protocol": { "version": "0.0.1155343", @@ -13034,11 +12716,10 @@ "license": "MIT" }, "node_modules/electron-to-chromium": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.2.tgz", - "integrity": "sha512-kc4r3U3V3WLaaZqThjYz/Y6z8tJe+7K0bbjUVo3i+LWIypVdMx5nXCkwRe6SWbY6ILqLdc1rKcKmr3HoH7wjSQ==", - "dev": true, - "license": "ISC" + "version": "1.5.33", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.33.tgz", + "integrity": "sha512-+cYTcFB1QqD4j4LegwLfpCNxifb6dDFUAwk6RsLusCwIaZI6or2f+q8rs5tTB2YC53HhOlIbEaqHMAAC8IOIwA==", + "dev": true }, "node_modules/emittery": { "version": "0.13.1", @@ -13175,8 +12856,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/err-code/-/err-code-3.0.1.tgz", "integrity": "sha512-GiaH0KJUewYok+eeY05IIgjtAe4Yltygk9Wqp1V5yVWLdhf0hYZchRjNIT9bb0mSwRcIusT3cx7PJUf3zEIfUA==", - "dev": true, - "license": "MIT" + "dev": true }, "node_modules/error-ex": { "version": "1.3.2", @@ -14505,7 +14185,6 @@ "resolved": "https://registry.npmjs.org/fast-average-color/-/fast-average-color-9.4.0.tgz", "integrity": "sha512-bvM8vV6YwK07dPbzFz77zJaBcfF6ABVfgNwaxVgXc2G+o0e/tzLCF9WU8Ryp1r0Nkk6JuJNsWCzbb4cLOMlB+Q==", "dev": true, - "license": "MIT", "engines": { "node": ">= 12" } @@ -15046,7 +14725,6 @@ "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==", "dev": true, - "license": "MIT", "engines": { "node": "*" }, @@ -15091,13 +14769,6 @@ "node": ">= 0.6" } }, - "node_modules/fs-constants": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", - "dev": true, - "license": "MIT" - }, "node_modules/fs-exists-sync": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/fs-exists-sync/-/fs-exists-sync-0.1.0.tgz", @@ -15215,8 +14886,7 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/get-browser-rtc/-/get-browser-rtc-1.1.0.tgz", "integrity": "sha512-MghbMJ61EJrRsDe7w1Bvqt3ZsBuqhce5nrn/XAwgwOXhcsz53/ltdxOse1h/8eKXj5slzxdsz56g5rzOFSGwfQ==", - "dev": true, - "license": "MIT" + "dev": true }, "node_modules/get-caller-file": { "version": "2.0.5", @@ -15253,7 +14923,6 @@ "resolved": "https://registry.npmjs.org/get-nonce/-/get-nonce-1.0.1.tgz", "integrity": "sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==", "dev": true, - "license": "MIT", "engines": { "node": ">=6" } @@ -15346,7 +15015,6 @@ "resolved": "https://registry.npmjs.org/gettext-parser/-/gettext-parser-1.4.0.tgz", "integrity": "sha512-sedZYLHlHeBop/gZ1jdg59hlUEcpcZJofLq2JFwJT1zTqAU3l2wFv6IsuwFHGqbiT9DWzMUW4/em2+hspnmMMA==", "dev": true, - "license": "MIT", "dependencies": { "encoding": "^0.1.12", "safe-buffer": "^5.1.1" @@ -15591,7 +15259,6 @@ "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==", "dev": true, - "license": "MIT", "engines": { "node": ">=6" } @@ -15611,7 +15278,6 @@ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", "dev": true, - "license": "MIT", "engines": { "node": ">=4" } @@ -15707,7 +15373,6 @@ "resolved": "https://registry.npmjs.org/history/-/history-5.3.0.tgz", "integrity": "sha512-ZqaKwjjrAYUYfLG+htGaIIZ4nioX2L70ZUMIFysS3xvBsSG4x/n1V6TXV3N8ZYNuFGlDirFg32T7B6WOUPDYcQ==", "dev": true, - "license": "MIT", "dependencies": { "@babel/runtime": "^7.7.6" } @@ -15747,7 +15412,6 @@ "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", "dev": true, - "license": "ISC", "dependencies": { "lru-cache": "^6.0.0" }, @@ -15760,7 +15424,6 @@ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dev": true, - "license": "ISC", "dependencies": { "yallist": "^4.0.0" }, @@ -15772,8 +15435,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true, - "license": "ISC" + "dev": true }, "node_modules/hpack.js": { "version": "2.1.6", @@ -16137,11 +15799,10 @@ "license": "BSD-3-Clause" }, "node_modules/ignore": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", - "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", "dev": true, - "license": "MIT", "engines": { "node": ">= 4" } @@ -16200,16 +15861,6 @@ "node": ">=4" } }, - "node_modules/import-lazy": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-4.0.0.tgz", - "integrity": "sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, "node_modules/import-local": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.2.0.tgz", @@ -16234,8 +15885,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/import-locals/-/import-locals-2.0.0.tgz", "integrity": "sha512-1/bPE89IZhyf7dr5Pkz7b4UyVXy5pEt7PTEfye15UEn3AK8+2zwcDCfKk9Pwun4ltfhOSszOrReSsFcDKw/yoA==", - "dev": true, - "license": "MIT" + "dev": true }, "node_modules/imurmurhash": { "version": "0.1.4", @@ -16450,7 +16100,6 @@ "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", "dev": true, - "license": "MIT", "dependencies": { "loose-envify": "^1.0.0" } @@ -16484,7 +16133,6 @@ "resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-3.5.0.tgz", "integrity": "sha512-1ANGLZ+Nkv1ptFb2pa8oG8Lem4krflKuX/gINiHJHjJUKaJHk/SXk5x6K3J+39/p0h1RQ2saROclJJ+QLvETCQ==", "dev": true, - "license": "MIT", "engines": { "node": ">=8" } @@ -16922,8 +16570,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-4.0.0.tgz", "integrity": "sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ==", - "dev": true, - "license": "MIT" + "dev": true }, "node_modules/is-regex": { "version": "1.1.4", @@ -17044,7 +16691,6 @@ "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", "dev": true, - "license": "MIT", "engines": { "node": ">=10" }, @@ -17147,7 +16793,6 @@ "resolved": "https://registry.npmjs.org/isomorphic.js/-/isomorphic.js-0.2.5.tgz", "integrity": "sha512-PIeMbHqMt4DnUP3MA/Flc0HElYjMXArsw1qwJZcm9sqR8mq3l8NYizFMty0pWwE/tzIGH3EKK5+jes5mAr85yw==", "dev": true, - "license": "MIT", "funding": { "type": "GitHub Sponsors ❤", "url": "https://github.com/sponsors/dmonad" @@ -19460,16 +19105,15 @@ } }, "node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.0.2.tgz", + "integrity": "sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==", "dev": true, - "license": "MIT", "bin": { "jsesc": "bin/jsesc" }, "engines": { - "node": ">=4" + "node": ">=6" } }, "node_modules/json-buffer": { @@ -19504,8 +19148,7 @@ "version": "0.0.7", "resolved": "https://registry.npmjs.org/json2php/-/json2php-0.0.7.tgz", "integrity": "sha512-dnSoUiLAoVaMXxFsVi4CrPVYMKOuDBXTghXSmMINX44RZ8WM9cXlY7UqrQnlAcODCVO7FV3+8t/5nDKAjimLfg==", - "dev": true, - "license": "BSD" + "dev": true }, "node_modules/json5": { "version": "2.2.3", @@ -19689,11 +19332,10 @@ } }, "node_modules/lib0": { - "version": "0.2.94", - "resolved": "https://registry.npmjs.org/lib0/-/lib0-0.2.94.tgz", - "integrity": "sha512-hZ3p54jL4Wpu7IOg26uC7dnEWiMyNlUrb9KoG7+xYs45WkQwpVvKFndVq2+pqLYKe1u8Fp3+zAfZHVvTK34PvQ==", + "version": "0.2.98", + "resolved": "https://registry.npmjs.org/lib0/-/lib0-0.2.98.tgz", + "integrity": "sha512-XteTiNO0qEXqqweWx+b21p/fBnNHUA1NwAtJNJek1oPrewEZs2uiT4gWivHKr9GqCjDPAhchz0UQO8NwU3bBNA==", "dev": true, - "license": "MIT", "dependencies": { "isomorphic.js": "^0.2.4" }, @@ -20091,7 +19733,6 @@ "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", "dev": true, - "license": "MIT", "dependencies": { "chalk": "^4.1.0", "is-unicode-supported": "^0.1.0" @@ -20108,7 +19749,6 @@ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, - "license": "MIT", "dependencies": { "color-convert": "^2.0.1" }, @@ -20124,7 +19764,6 @@ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, - "license": "MIT", "dependencies": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -20141,7 +19780,6 @@ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, - "license": "MIT", "dependencies": { "color-name": "~1.1.4" }, @@ -20153,15 +19791,13 @@ "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, - "license": "MIT" + "dev": true }, "node_modules/log-symbols/node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, - "license": "MIT", "engines": { "node": ">=8" } @@ -20171,7 +19807,6 @@ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, - "license": "MIT", "dependencies": { "has-flag": "^4.0.0" }, @@ -20277,7 +19912,6 @@ "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz", "integrity": "sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==", "dev": true, - "license": "MIT", "engines": { "node": ">=8" }, @@ -20491,7 +20125,6 @@ "resolved": "https://registry.npmjs.org/meow/-/meow-9.0.0.tgz", "integrity": "sha512-+obSblOQmRhcyBt62furQqRAQpNyWXo8BuQ5bN7dG8wmwQ+vwHKp/rCFD4CrTP8CsDQD1sjoZ94K417XEUk8IQ==", "dev": true, - "license": "MIT", "dependencies": { "@types/minimist": "^1.2.0", "camelcase-keys": "^6.2.2", @@ -20518,7 +20151,6 @@ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz", "integrity": "sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==", "dev": true, - "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=10" }, @@ -20531,7 +20163,6 @@ "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", "dev": true, - "license": "ISC", "engines": { "node": ">=10" } @@ -20593,11 +20224,10 @@ } }, "node_modules/micromatch": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.7.tgz", - "integrity": "sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==", + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", "dev": true, - "license": "MIT", "dependencies": { "braces": "^3.0.3", "picomatch": "^2.3.1" @@ -20727,7 +20357,6 @@ "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz", "integrity": "sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==", "dev": true, - "license": "MIT", "dependencies": { "arrify": "^1.0.1", "is-plain-obj": "^1.1.0", @@ -20742,7 +20371,6 @@ "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", "dev": true, - "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -20752,7 +20380,6 @@ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", "dev": true, - "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -20938,52 +20565,6 @@ "tslib": "^2.0.3" } }, - "node_modules/node-fetch": { - "version": "2.6.7", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", - "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "whatwg-url": "^5.0.0" - }, - "engines": { - "node": "4.x || >=6.0.0" - }, - "peerDependencies": { - "encoding": "^0.1.0" - }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } - } - }, - "node_modules/node-fetch/node_modules/tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", - "dev": true, - "license": "MIT" - }, - "node_modules/node-fetch/node_modules/webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", - "dev": true, - "license": "BSD-2-Clause" - }, - "node_modules/node-fetch/node_modules/whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", - "dev": true, - "license": "MIT", - "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - }, "node_modules/node-forge": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", @@ -21013,7 +20594,6 @@ "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", "dev": true, - "license": "BSD-2-Clause", "dependencies": { "hosted-git-info": "^4.0.1", "is-core-module": "^2.5.0", @@ -21029,7 +20609,6 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", "dev": true, - "license": "ISC", "bin": { "semver": "bin/semver.js" }, @@ -21052,7 +20631,6 @@ "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", "dev": true, - "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -21098,7 +20676,6 @@ "resolved": "https://registry.npmjs.org/npm-package-json-lint/-/npm-package-json-lint-6.4.0.tgz", "integrity": "sha512-cuXAJJB1Rdqz0UO6w524matlBqDBjcNt7Ru+RDIu4y6RI1gVqiWBnylrK8sPRk81gGBA0X8hJbDXolVOoTc+sA==", "dev": true, - "license": "MIT", "dependencies": { "ajv": "^6.12.6", "ajv-errors": "^1.0.1", @@ -21131,7 +20708,6 @@ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, - "license": "MIT", "dependencies": { "color-convert": "^2.0.1" }, @@ -21146,15 +20722,13 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true, - "license": "Python-2.0" + "dev": true }, "node_modules/npm-package-json-lint/node_modules/array-union": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", "dev": true, - "license": "MIT", "engines": { "node": ">=8" } @@ -21164,7 +20738,6 @@ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, - "license": "MIT", "dependencies": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -21181,7 +20754,6 @@ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, - "license": "MIT", "dependencies": { "color-name": "~1.1.4" }, @@ -21193,15 +20765,13 @@ "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, - "license": "MIT" + "dev": true }, "node_modules/npm-package-json-lint/node_modules/cosmiconfig": { "version": "8.3.6", "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz", "integrity": "sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==", "dev": true, - "license": "MIT", "dependencies": { "import-fresh": "^3.3.0", "js-yaml": "^4.1.0", @@ -21228,7 +20798,6 @@ "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", "dev": true, - "license": "MIT", "dependencies": { "array-union": "^2.1.0", "dir-glob": "^3.0.1", @@ -21249,7 +20818,6 @@ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, - "license": "MIT", "engines": { "node": ">=8" } @@ -21259,7 +20827,6 @@ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", "dev": true, - "license": "MIT", "dependencies": { "argparse": "^2.0.1" }, @@ -21271,15 +20838,13 @@ "version": "3.3.1", "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.3.1.tgz", "integrity": "sha512-HUgH65KyejrUFPvHFPbqOY0rsFip3Bo5wb4ngvdi1EpCYWUQDC5V+Y7mZws+DLkr4M//zQJoanu1SP+87Dv1oQ==", - "dev": true, - "license": "MIT" + "dev": true }, "node_modules/npm-package-json-lint/node_modules/semver": { "version": "7.6.3", "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", "dev": true, - "license": "ISC", "bin": { "semver": "bin/semver.js" }, @@ -21292,7 +20857,6 @@ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, - "license": "MIT", "dependencies": { "has-flag": "^4.0.0" }, @@ -21305,7 +20869,6 @@ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.13.1.tgz", "integrity": "sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==", "dev": true, - "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=14.16" }, @@ -22036,6 +21599,12 @@ "url": "https://github.com/inikulin/parse5?sponsor=1" } }, + "node_modules/parsel-js": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/parsel-js/-/parsel-js-1.1.2.tgz", + "integrity": "sha512-D66DG2nKx4Yoq66TMEyCUHlR2STGqO7vsBrX7tgyS9cfQyO6XD5JyzOiflwmWN6a4wbUAqpmHqmrxlTQVGZcbA==", + "dev": true + }, "node_modules/parseurl": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", @@ -22137,11 +21706,10 @@ "license": "MIT" }, "node_modules/picocolors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", - "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==", - "dev": true, - "license": "ISC" + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.0.tgz", + "integrity": "sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==", + "dev": true }, "node_modules/picomatch": { "version": "2.3.1", @@ -22213,13 +21781,12 @@ } }, "node_modules/playwright": { - "version": "1.45.3", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.45.3.tgz", - "integrity": "sha512-QhVaS+lpluxCaioejDZ95l4Y4jSFCsBvl2UZkpeXlzxmqS+aABr5c82YmfMHrL6x27nvrvykJAFpkzT2eWdJww==", + "version": "1.47.2", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.47.2.tgz", + "integrity": "sha512-nx1cLMmQWqmA3UsnjaaokyoUpdVaaDhJhMoxX2qj3McpjnsqFHs516QAKYhqHAgOP+oCFTEOCOAaD1RgD/RQfA==", "dev": true, - "license": "Apache-2.0", "dependencies": { - "playwright-core": "1.45.3" + "playwright-core": "1.47.2" }, "bin": { "playwright": "cli.js" @@ -22232,11 +21799,10 @@ } }, "node_modules/playwright-core": { - "version": "1.45.3", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.45.3.tgz", - "integrity": "sha512-+ym0jNbcjikaOwwSZycFbwkWgfruWvYlJfThKYAlImbxUgdWFO2oW70ojPm4OpE4t6TAo2FY/smM+hpVTtkhDA==", + "version": "1.47.2", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.47.2.tgz", + "integrity": "sha512-3JvMfF+9LJfe16l7AbSmU555PaTl2tPyQsVInqm3id16pdDfvZ8TTZ/pyzmkbDrZTQefyzU7AIHlZqQnxpqHVQ==", "dev": true, - "license": "Apache-2.0", "bin": { "playwright-core": "cli.js" }, @@ -22264,7 +21830,6 @@ "resolved": "https://registry.npmjs.org/plur/-/plur-4.0.0.tgz", "integrity": "sha512-4UGewrYgqDFw9vV6zNV+ADmPAUAfJPKtGvb/VdpQAx25X5f3xXdGdyOEVFwkl8Hl/tl7+xbeHqSEM+D5/TirUg==", "dev": true, - "license": "MIT", "dependencies": { "irregular-plurals": "^3.2.0" }, @@ -22286,9 +21851,9 @@ } }, "node_modules/postcss": { - "version": "8.4.40", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.40.tgz", - "integrity": "sha512-YF2kKIUzAofPMpfH6hOi2cGnv/HrUlfucspc7pDyvv7kGdqXrfj8SCl/t8owkEgKEuu8ZcRjSOxFxVLqwChZ2Q==", + "version": "8.4.47", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.47.tgz", + "integrity": "sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ==", "dev": true, "funding": [ { @@ -22304,11 +21869,10 @@ "url": "https://github.com/sponsors/ai" } ], - "license": "MIT", "dependencies": { "nanoid": "^3.3.7", - "picocolors": "^1.0.1", - "source-map-js": "^1.2.0" + "picocolors": "^1.1.0", + "source-map-js": "^1.2.1" }, "engines": { "node": "^10 || ^12 || >=14" @@ -22419,6 +21983,23 @@ "postcss": "^8.4.31" } }, + "node_modules/postcss-import": { + "version": "16.1.0", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-16.1.0.tgz", + "integrity": "sha512-7hsAZ4xGXl4MW+OKEWCnF6T5jqBw80/EE9aXg1r2yyn1RsVEU8EtKXbijEODa+rg7iih4bKf7vlvTGYR4CnPNg==", + "dev": true, + "dependencies": { + "postcss-value-parser": "^4.0.0", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + }, + "engines": { + "node": ">=18.0.0" + }, + "peerDependencies": { + "postcss": "^8.0.0" + } + }, "node_modules/postcss-media-query-parser": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/postcss-media-query-parser/-/postcss-media-query-parser-0.2.3.tgz", @@ -22752,14 +22333,13 @@ "postcss": "^8.4.31" } }, - "node_modules/postcss-prefixwrap": { - "version": "1.50.0", - "resolved": "https://registry.npmjs.org/postcss-prefixwrap/-/postcss-prefixwrap-1.50.0.tgz", - "integrity": "sha512-lgPU+gE6l6/XTB0lCEyS+DB7FRYHEN1Jb3BGlwPNJO3xUudiorZAJuia+4C9xEGJbsKu4yGR2FDdwgtGY7iJLA==", + "node_modules/postcss-prefix-selector": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/postcss-prefix-selector/-/postcss-prefix-selector-1.16.1.tgz", + "integrity": "sha512-Umxu+FvKMwlY6TyDzGFoSUnzW+NOfMBLyC1tAkIjgX+Z/qGspJeRjVC903D7mx7TuBpJlwti2ibXtWuA7fKMeQ==", "dev": true, - "license": "MIT", "peerDependencies": { - "postcss": "*" + "postcss": ">4 <9" } }, "node_modules/postcss-reduce-initial": { @@ -22796,11 +22376,10 @@ } }, "node_modules/postcss-resolve-nested-selector": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/postcss-resolve-nested-selector/-/postcss-resolve-nested-selector-0.1.4.tgz", - "integrity": "sha512-R6vHqZWgVnTAPq0C+xjyHfEZqfIYboCBVSy24MjxEDm+tIh1BU4O6o7DP7AA7kHzf136d+Qc5duI4tlpHjixDw==", - "dev": true, - "license": "MIT" + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/postcss-resolve-nested-selector/-/postcss-resolve-nested-selector-0.1.6.tgz", + "integrity": "sha512-0sglIs9Wmkzbr8lQwEyIzlDOOC9bGmfVKcJTaxv3vMmd3uo4o4DerC3En0bnmgceeql9BfC8hRkp7cg0fjdVqw==", + "dev": true }, "node_modules/postcss-safe-parser": { "version": "7.0.0", @@ -22857,11 +22436,10 @@ } }, "node_modules/postcss-selector-parser": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.1.tgz", - "integrity": "sha512-b4dlw/9V8A71rLIDsSwVmak9z2DuBUB7CA1/wSdelNEzqsjoSPeADTWNO09lpH49Diy3/JIZ2bSPB1dI3LJCHg==", + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", "dev": true, - "license": "MIT", "dependencies": { "cssesc": "^3.0.0", "util-deprecate": "^1.0.2" @@ -22924,11 +22502,10 @@ "license": "MIT" }, "node_modules/preact": { - "version": "10.23.1", - "resolved": "https://registry.npmjs.org/preact/-/preact-10.23.1.tgz", - "integrity": "sha512-O5UdRsNh4vdZaTieWe3XOgSpdMAmkIYBCT3VhQDlKrzyCm8lUYsk0fmVEvoQQifoOjFRTaHZO69ylrzTW2BH+A==", + "version": "10.24.2", + "resolved": "https://registry.npmjs.org/preact/-/preact-10.24.2.tgz", + "integrity": "sha512-1cSoF0aCC8uaARATfrlz4VCBqE8LwZwRfLgkxJOQwAlQt6ayTmi0D9OF7nXid1POI5SZidFuG9CnlXbDfLqY/Q==", "dev": true, - "license": "MIT", "funding": { "type": "opencollective", "url": "https://opencollective.com/preact" @@ -23213,91 +22790,126 @@ } }, "node_modules/puppeteer-core": { - "version": "13.7.0", - "resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-13.7.0.tgz", - "integrity": "sha512-rXja4vcnAzFAP1OVLq/5dWNfwBGuzcOARJ6qGV7oAZhnLmVRU8G5MsdeQEAOy332ZhkIOnn9jp15R89LKHyp2Q==", + "version": "23.5.1", + "resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-23.5.1.tgz", + "integrity": "sha512-We6xKCSZaZ23+GAYckeNfeDeJIVuhxOBsh/gZkbULu/XLFJ3umSiiQ8Ey927h3g/XrCCr8CnSZ5fvP5v2vB5Yw==", "dev": true, - "license": "Apache-2.0", "dependencies": { - "cross-fetch": "3.1.5", - "debug": "4.3.4", - "devtools-protocol": "0.0.981744", - "extract-zip": "2.0.1", - "https-proxy-agent": "5.0.1", - "pkg-dir": "4.2.0", - "progress": "2.0.3", - "proxy-from-env": "1.1.0", - "rimraf": "3.0.2", - "tar-fs": "2.1.1", - "unbzip2-stream": "1.4.3", - "ws": "8.5.0" + "@puppeteer/browsers": "2.4.0", + "chromium-bidi": "0.8.0", + "debug": "^4.3.7", + "devtools-protocol": "0.0.1342118", + "typed-query-selector": "^2.12.0", + "ws": "^8.18.0" }, "engines": { - "node": ">=10.18.1" + "node": ">=18" } }, - "node_modules/puppeteer-core/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "node_modules/puppeteer-core/node_modules/@puppeteer/browsers": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@puppeteer/browsers/-/browsers-2.4.0.tgz", + "integrity": "sha512-x8J1csfIygOwf6D6qUAZ0ASk3z63zPb7wkNeHRerCMh82qWKUrOgkuP005AJC8lDL6/evtXETGEJVcwykKT4/g==", "dev": true, - "license": "MIT", "dependencies": { - "ms": "2.1.2" + "debug": "^4.3.6", + "extract-zip": "^2.0.1", + "progress": "^2.0.3", + "proxy-agent": "^6.4.0", + "semver": "^7.6.3", + "tar-fs": "^3.0.6", + "unbzip2-stream": "^1.4.3", + "yargs": "^17.7.2" + }, + "bin": { + "browsers": "lib/cjs/main-cli.js" }, "engines": { - "node": ">=6.0" + "node": ">=18" + } + }, + "node_modules/puppeteer-core/node_modules/agent-base": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", + "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", + "dev": true, + "dependencies": { + "debug": "^4.3.4" }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "engines": { + "node": ">= 14" } }, "node_modules/puppeteer-core/node_modules/devtools-protocol": { - "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, - "license": "BSD-3-Clause" + "version": "0.0.1342118", + "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1342118.tgz", + "integrity": "sha512-75fMas7PkYNDTmDyb6PRJCH7ILmHLp+BhrZGeMsa4bCh40DTxgCz2NRy5UDzII4C5KuD0oBMZ9vXKhEl6UD/3w==", + "dev": true }, - "node_modules/puppeteer-core/node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "deprecated": "Rimraf versions prior to v4 are no longer supported", + "node_modules/puppeteer-core/node_modules/http-proxy-agent": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz", + "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==", "dev": true, - "license": "ISC", "dependencies": { - "glob": "^7.1.3" + "agent-base": "^7.1.0", + "debug": "^4.3.4" }, - "bin": { - "rimraf": "bin.js" + "engines": { + "node": ">= 14" + } + }, + "node_modules/puppeteer-core/node_modules/https-proxy-agent": { + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz", + "integrity": "sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==", + "dev": true, + "dependencies": { + "agent-base": "^7.0.2", + "debug": "4" }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "engines": { + "node": ">= 14" } }, - "node_modules/puppeteer-core/node_modules/ws": { - "version": "8.5.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.5.0.tgz", - "integrity": "sha512-BWX0SWVgLPzYwF8lTzEy1egjhS4S4OEAHfsO8o65WOVsrnSRGaSiUaa9e0ggGlkMTtBlmOpEXiie9RUcBO86qg==", + "node_modules/puppeteer-core/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", "dev": true, - "license": "MIT", "engines": { - "node": ">=10.0.0" + "node": ">=12" + } + }, + "node_modules/puppeteer-core/node_modules/proxy-agent": { + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-6.4.0.tgz", + "integrity": "sha512-u0piLU+nCOHMgGjRbimiXmA9kM/L9EHh3zL81xCdp7m+Y2pHIsnmbdDoEDoAz5geaonNR6q6+yOPQs6n4T6sBQ==", + "dev": true, + "dependencies": { + "agent-base": "^7.0.2", + "debug": "^4.3.4", + "http-proxy-agent": "^7.0.1", + "https-proxy-agent": "^7.0.3", + "lru-cache": "^7.14.1", + "pac-proxy-agent": "^7.0.1", + "proxy-from-env": "^1.1.0", + "socks-proxy-agent": "^8.0.2" }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" + "engines": { + "node": ">= 14" + } + }, + "node_modules/puppeteer-core/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "dev": true, + "bin": { + "semver": "bin/semver.js" }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } + "engines": { + "node": ">=10" } }, "node_modules/pure-rand": { @@ -23373,7 +22985,6 @@ "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==", "dev": true, - "license": "MIT", "engines": { "node": ">=8" } @@ -23573,7 +23184,6 @@ "resolved": "https://registry.npmjs.org/react-remove-scroll/-/react-remove-scroll-2.5.5.tgz", "integrity": "sha512-ImKhrzJJsyXJfBZ4bzu8Bwpka14c/fQt0k+cyFp/PBhTfyDnU5hjOtM4AG/0AMyy8oKzOTR0lDgJIM7pYXI0kw==", "dev": true, - "license": "MIT", "dependencies": { "react-remove-scroll-bar": "^2.3.3", "react-style-singleton": "^2.2.1", @@ -23599,7 +23209,6 @@ "resolved": "https://registry.npmjs.org/react-remove-scroll-bar/-/react-remove-scroll-bar-2.3.6.tgz", "integrity": "sha512-DtSYaao4mBmX+HDo5YWYdBWQwYIQQshUV/dVxFxK+KM26Wjwp1gZ6rv6OC3oujI6Bfu6Xyg3TwK533AQutsn/g==", "dev": true, - "license": "MIT", "dependencies": { "react-style-singleton": "^2.2.1", "tslib": "^2.0.0" @@ -23622,7 +23231,6 @@ "resolved": "https://registry.npmjs.org/react-style-singleton/-/react-style-singleton-2.2.1.tgz", "integrity": "sha512-ZWj0fHEMyWkHzKYUr2Bs/4zU6XLmq9HsgBURm7g5pAVfyn49DgUiNgY2d4lXRlYSiCif9YBGpQleewkcqddc7g==", "dev": true, - "license": "MIT", "dependencies": { "get-nonce": "^1.0.0", "invariant": "^2.2.4", @@ -23656,12 +23264,29 @@ "react-dom": ">=16.14.0" } }, + "node_modules/read-cache": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", + "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", + "dev": true, + "dependencies": { + "pify": "^2.3.0" + } + }, + "node_modules/read-cache/node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/read-pkg": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", "dev": true, - "license": "MIT", "dependencies": { "@types/normalize-package-data": "^2.4.0", "normalize-package-data": "^2.5.0", @@ -23677,7 +23302,6 @@ "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", "dev": true, - "license": "MIT", "dependencies": { "find-up": "^4.1.0", "read-pkg": "^5.2.0", @@ -23695,7 +23319,6 @@ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", "dev": true, - "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=8" } @@ -23704,15 +23327,13 @@ "version": "2.8.9", "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", - "dev": true, - "license": "ISC" + "dev": true }, "node_modules/read-pkg/node_modules/normalize-package-data": { "version": "2.5.0", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", "dev": true, - "license": "BSD-2-Clause", "dependencies": { "hosted-git-info": "^2.1.4", "resolve": "^1.10.0", @@ -23725,7 +23346,6 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", "dev": true, - "license": "ISC", "bin": { "semver": "bin/semver" } @@ -23735,7 +23355,6 @@ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", "dev": true, - "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=8" } @@ -23800,7 +23419,6 @@ "resolved": "https://registry.npmjs.org/redux/-/redux-4.2.1.tgz", "integrity": "sha512-LAUYz4lc+Do8/g7aeRa8JkyDErK6ekstQaqWQrNRW//MY1TvCEpMtpTWvlQ+FPbWCx+Xixu/6SHt5N0HR+SB4w==", "dev": true, - "license": "MIT", "dependencies": { "@babel/runtime": "^7.9.2" } @@ -23941,8 +23559,7 @@ "version": "0.3.0", "resolved": "https://registry.npmjs.org/requestidlecallback/-/requestidlecallback-0.3.0.tgz", "integrity": "sha512-TWHFkT7S9p7IxLC5A1hYmAYQx2Eb9w1skrXmQ+dS1URyvR8tenMLl4lHbqEOUnpEYxNKpkVMXUgknVpBZWXXfQ==", - "dev": true, - "license": "MIT" + "dev": true }, "node_modules/require-directory": { "version": "2.1.1", @@ -24278,8 +23895,7 @@ "version": "0.3.2", "resolved": "https://registry.npmjs.org/rungen/-/rungen-0.3.2.tgz", "integrity": "sha512-zWl10xu2D7zoR8zSC2U6bg5bYF6T/Wk7rxwp8IPaJH7f0Ge21G03kNHVgHR7tyVkSSfAOG0Rqf/Cl38JftSmtw==", - "dev": true, - "license": "MIT" + "dev": true }, "node_modules/rxjs": { "version": "7.8.1", @@ -25074,7 +24690,6 @@ "url": "https://feross.org/support" } ], - "license": "MIT", "dependencies": { "buffer": "^6.0.3", "debug": "^4.3.2", @@ -25269,11 +24884,10 @@ } }, "node_modules/source-map-js": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz", - "integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", "dev": true, - "license": "BSD-3-Clause", "engines": { "node": ">=0.10.0" } @@ -25352,7 +24966,6 @@ "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==", "dev": true, - "license": "Apache-2.0", "dependencies": { "spdx-expression-parse": "^3.0.0", "spdx-license-ids": "^3.0.0" @@ -25363,7 +24976,6 @@ "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", "dev": true, - "license": "MIT", "dependencies": { "spdx-exceptions": "^2.1.0", "spdx-license-ids": "^3.0.0" @@ -25502,11 +25114,10 @@ } }, "node_modules/streamx": { - "version": "2.18.0", - "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.18.0.tgz", - "integrity": "sha512-LLUC1TWdjVdn1weXGcSxyTR3T4+acB6tVGXT95y0nGbca4t4o/ng1wKAGTljm9VicuCVLvRlqFYXYy5GwgM7sQ==", + "version": "2.20.1", + "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.20.1.tgz", + "integrity": "sha512-uTa0mU6WUC65iUvzKH4X9hEdvSW7rbPxPtwfWiLMSj3qTdQbAiUboZTxauKfpFuGIGa1C2BYijZ7wgdUXICJhA==", "dev": true, - "license": "MIT", "dependencies": { "fast-fifo": "^1.3.2", "queue-tick": "^1.0.1", @@ -25742,8 +25353,7 @@ "version": "0.1.0", "resolved": "https://registry.npmjs.org/style-search/-/style-search-0.1.0.tgz", "integrity": "sha512-Dj1Okke1C3uKKwQcetra4jSuk0DqbzbYtXipzFlFMZtowbF1x7BKJwB9AayVMyFARvU8EDrZdcax4At/452cAg==", - "dev": true, - "license": "ISC" + "dev": true }, "node_modules/style-to-js": { "version": "1.1.12", @@ -25783,9 +25393,9 @@ } }, "node_modules/stylelint": { - "version": "16.7.0", - "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-16.7.0.tgz", - "integrity": "sha512-Q1ATiXlz+wYr37a7TGsfvqYn2nSR3T/isw3IWlZQzFzCNoACHuGBb6xBplZXz56/uDRJHIygxjh7jbV/8isewA==", + "version": "16.9.0", + "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-16.9.0.tgz", + "integrity": "sha512-31Nm3WjxGOBGpQqF43o3wO9L5AC36TPIe6030Lnm13H3vDMTcS21DrLh69bMX+DBilKqMMVLian4iG6ybBoNRQ==", "dev": true, "funding": [ { @@ -25797,19 +25407,18 @@ "url": "https://github.com/sponsors/stylelint" } ], - "license": "MIT", "dependencies": { - "@csstools/css-parser-algorithms": "^2.7.1", - "@csstools/css-tokenizer": "^2.4.1", - "@csstools/media-query-list-parser": "^2.1.13", - "@csstools/selector-specificity": "^3.1.1", + "@csstools/css-parser-algorithms": "^3.0.1", + "@csstools/css-tokenizer": "^3.0.1", + "@csstools/media-query-list-parser": "^3.0.1", + "@csstools/selector-specificity": "^4.0.0", "@dual-bundle/import-meta-resolve": "^4.1.0", "balanced-match": "^2.0.0", "colord": "^2.9.3", "cosmiconfig": "^9.0.0", "css-functions-list": "^3.2.2", "css-tree": "^2.3.1", - "debug": "^4.3.5", + "debug": "^4.3.6", "fast-glob": "^3.3.2", "fastest-levenshtein": "^1.0.16", "file-entry-cache": "^9.0.0", @@ -25817,24 +25426,24 @@ "globby": "^11.1.0", "globjoin": "^0.1.4", "html-tags": "^3.3.1", - "ignore": "^5.3.1", + "ignore": "^5.3.2", "imurmurhash": "^0.1.4", "is-plain-object": "^5.0.0", "known-css-properties": "^0.34.0", "mathml-tag-names": "^2.1.3", "meow": "^13.2.0", - "micromatch": "^4.0.7", + "micromatch": "^4.0.8", "normalize-path": "^3.0.0", "picocolors": "^1.0.1", - "postcss": "^8.4.39", - "postcss-resolve-nested-selector": "^0.1.1", + "postcss": "^8.4.41", + "postcss-resolve-nested-selector": "^0.1.6", "postcss-safe-parser": "^7.0.0", - "postcss-selector-parser": "^6.1.0", + "postcss-selector-parser": "^6.1.2", "postcss-value-parser": "^4.2.0", "resolve-from": "^5.0.0", "string-width": "^4.2.3", "strip-ansi": "^7.1.0", - "supports-hyperlinks": "^3.0.0", + "supports-hyperlinks": "^3.1.0", "svg-tags": "^1.0.0", "table": "^6.8.2", "write-file-atomic": "^5.0.1" @@ -26193,7 +25802,6 @@ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "dev": true, - "license": "MIT", "dependencies": { "has-flag": "^3.0.0" }, @@ -26202,17 +25810,19 @@ } }, "node_modules/supports-hyperlinks": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-3.0.0.tgz", - "integrity": "sha512-QBDPHyPQDRTy9ku4URNGY5Lah8PAaXs6tAAwp55sL5WCsSW7GIfdf6W5ixfziW+t7wh3GVvHyHHyQ1ESsoRvaA==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-3.1.0.tgz", + "integrity": "sha512-2rn0BZ+/f7puLOHZm1HOJfwBggfaHXUpPUSSG/SWM4TWp5KCfmNYwnC3hruy2rZlMnmWZ+QAGpZfchu3f3695A==", "dev": true, - "license": "MIT", "dependencies": { "has-flag": "^4.0.0", "supports-color": "^7.0.0" }, "engines": { "node": ">=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/supports-hyperlinks/node_modules/has-flag": { @@ -26220,7 +25830,6 @@ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, - "license": "MIT", "engines": { "node": ">=8" } @@ -26230,7 +25839,6 @@ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, - "license": "MIT", "dependencies": { "has-flag": "^4.0.0" }, @@ -26370,7 +25978,6 @@ "resolved": "https://registry.npmjs.org/tannin/-/tannin-1.2.0.tgz", "integrity": "sha512-U7GgX/RcSeUETbV7gYgoz8PD7Ni4y95pgIP/Z6ayI3CfhSujwKEBlGFTCRN+Aqnuyf4AN2yHL+L8x+TCGjb9uA==", "dev": true, - "license": "MIT", "dependencies": { "@tannin/plural-forms": "^1.1.0" } @@ -26386,33 +25993,28 @@ } }, "node_modules/tar-fs": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz", - "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==", + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-3.0.6.tgz", + "integrity": "sha512-iokBDQQkUyeXhgPYaZxmczGPhnhXZ0CmrqI+MOb/WFGS9DW5wnfrLgtjUJBvz50vQ3qfRwJ62QVoCFu8mPVu5w==", "dev": true, - "license": "MIT", "dependencies": { - "chownr": "^1.1.1", - "mkdirp-classic": "^0.5.2", "pump": "^3.0.0", - "tar-stream": "^2.1.4" + "tar-stream": "^3.1.5" + }, + "optionalDependencies": { + "bare-fs": "^2.1.1", + "bare-path": "^2.1.0" } }, "node_modules/tar-stream": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", - "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.7.tgz", + "integrity": "sha512-qJj60CXt7IU1Ffyc3NJMjh6EkuCFej46zUqJ4J7pqYlThyd9bO0XBTmcOIhSzZJVWfsLks0+nle/j538YAW9RQ==", "dev": true, - "license": "MIT", "dependencies": { - "bl": "^4.0.3", - "end-of-stream": "^1.4.1", - "fs-constants": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1" - }, - "engines": { - "node": ">=6" + "b4a": "^1.6.4", + "fast-fifo": "^1.2.0", + "streamx": "^2.15.0" } }, "node_modules/terminal-link": { @@ -26773,7 +26375,6 @@ "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz", "integrity": "sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==", "dev": true, - "license": "MIT", "engines": { "node": ">=8" } @@ -27007,6 +26608,12 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/typed-query-selector": { + "version": "2.12.0", + "resolved": "https://registry.npmjs.org/typed-query-selector/-/typed-query-selector-2.12.0.tgz", + "integrity": "sha512-SbklCd1F0EiZOyPiW192rrHZzZ5sBijB6xM+cpmrwDqObvdtunOHHIk9fCGsoK5JVIYXoyEp4iEdE3upFH3PAg==", + "dev": true + }, "node_modules/typedarray": { "version": "0.0.6", "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", @@ -27300,12 +26907,17 @@ "requires-port": "^1.0.0" } }, + "node_modules/urlpattern-polyfill": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/urlpattern-polyfill/-/urlpattern-polyfill-10.0.0.tgz", + "integrity": "sha512-H/A06tKD7sS1O1X2SshBVeA5FLycRpjqiBeqGKmBwBDBy28EnRjORxTNe269KSSr5un5qyWi1iL61wLxpd+ZOg==", + "dev": true + }, "node_modules/use-callback-ref": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/use-callback-ref/-/use-callback-ref-1.3.2.tgz", "integrity": "sha512-elOQwe6Q8gqZgDA8mrh44qRTQqpIHDcZ3hXTLjBe1i4ph8XpNJnO+aQf3NaG+lriLopI4HMx9VjQLfPQ6vhnoA==", "dev": true, - "license": "MIT", "dependencies": { "tslib": "^2.0.0" }, @@ -27322,20 +26934,6 @@ } } }, - "node_modules/use-lilius": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/use-lilius/-/use-lilius-2.0.5.tgz", - "integrity": "sha512-IbPjJe4T6B0zQV6ahftVtHvCAxi6RAuDpEcO8TmnHh4nBtx7JbGdpbgXWOUj/9YjrzEbdT/lW7JWcBVbX3MbrA==", - "dev": true, - "license": "MIT", - "dependencies": { - "date-fns": "^3.6.0" - }, - "peerDependencies": { - "react": "*", - "react-dom": "*" - } - }, "node_modules/use-memo-one": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/use-memo-one/-/use-memo-one-1.1.3.tgz", @@ -27351,7 +26949,6 @@ "resolved": "https://registry.npmjs.org/use-sidecar/-/use-sidecar-1.1.2.tgz", "integrity": "sha512-epTbsLuzZ7lPClpz2TyryBfztm7m+28DlEv2ZCQ3MDr5ssiwyOwGH/e5F9CkfWjJ1t4clvI58yF822/GUkjjhw==", "dev": true, - "license": "MIT", "dependencies": { "detect-node-es": "^1.1.0", "tslib": "^2.0.0" @@ -27374,7 +26971,6 @@ "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.2.tgz", "integrity": "sha512-PElTlVMwpblvbNqQ82d2n6RjStvdSoNe9FG28kNfz3WiXilJm4DdNkEzRhCZuIDwY8U08WVihhGR5iRqAwfDiw==", "dev": true, - "license": "MIT", "peerDependencies": { "react": "^16.8.0 || ^17.0.0 || ^18.0.0" } @@ -27410,13 +27006,6 @@ "uuid": "dist/bin/uuid" } }, - "node_modules/v8-compile-cache": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.4.0.tgz", - "integrity": "sha512-ocyWc3bAHBB/guyqJQVI5o4BZkPhznPYUG2ea80Gond/BgNWpap8TOmLSeeQG7bnh2KMISxskdADG59j7zruhw==", - "dev": true, - "license": "MIT" - }, "node_modules/v8-to-istanbul": { "version": "9.3.0", "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.3.0.tgz", @@ -27437,7 +27026,6 @@ "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", "dev": true, - "license": "Apache-2.0", "dependencies": { "spdx-correct": "^3.0.0", "spdx-expression-parse": "^3.0.0" @@ -27448,7 +27036,6 @@ "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", "dev": true, - "license": "MIT", "dependencies": { "spdx-exceptions": "^2.1.0", "spdx-license-ids": "^3.0.0" @@ -27459,7 +27046,6 @@ "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.1.tgz", "integrity": "sha512-OljLrQ9SQdOUqTaQxqL5dEfZWrXExyyWsozYlAWFawPVNuD83igl7uJD2RTkNMbniIYgt8l81eCJGIdQF7avLQ==", "dev": true, - "license": "ISC", "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -28306,7 +27892,6 @@ "resolved": "https://registry.npmjs.org/y-indexeddb/-/y-indexeddb-9.0.12.tgz", "integrity": "sha512-9oCFRSPPzBK7/w5vOkJBaVCQZKHXB/v6SIT+WYhnJxlEC61juqG0hBrAf+y3gmSMLFLwICNH9nQ53uscuse6Hg==", "dev": true, - "license": "MIT", "dependencies": { "lib0": "^0.2.74" }, @@ -28327,7 +27912,6 @@ "resolved": "https://registry.npmjs.org/y-protocols/-/y-protocols-1.0.6.tgz", "integrity": "sha512-vHRF2L6iT3rwj1jub/K5tYcTT/mEYDUppgNPXwp8fmLpui9f7Yeq3OEtTLVF012j39QnV+KEQpNqoN7CWU7Y9Q==", "dev": true, - "license": "MIT", "dependencies": { "lib0": "^0.2.85" }, @@ -28348,7 +27932,6 @@ "resolved": "https://registry.npmjs.org/y-webrtc/-/y-webrtc-10.2.6.tgz", "integrity": "sha512-1kZ4YYwksFZi8+l8mTebVX9vW6Q5MnqxMkvNU700X5dBE38usurt/JgeXSIQRpK3NwUYYb9y63Jn9FMpMH6/vA==", "dev": true, - "license": "MIT", "dependencies": { "lib0": "^0.2.42", "simple-peer": "^9.11.0", @@ -28439,11 +28022,10 @@ } }, "node_modules/yjs": { - "version": "13.6.18", - "resolved": "https://registry.npmjs.org/yjs/-/yjs-13.6.18.tgz", - "integrity": "sha512-GBTjO4QCmv2HFKFkYIJl7U77hIB1o22vSCSQD1Ge8ZxWbIbn8AltI4gyXbtL+g5/GJep67HCMq3Y5AmNwDSyEg==", + "version": "13.6.19", + "resolved": "https://registry.npmjs.org/yjs/-/yjs-13.6.19.tgz", + "integrity": "sha512-GNKw4mEUn5yWU2QPHRx8jppxmCm9KzbBhB4qJLUJFiiYD0g/tDVgXQ7aPkyh01YO28kbs2J/BEbWBagjuWyejw==", "dev": true, - "license": "MIT", "dependencies": { "lib0": "^0.2.86" }, @@ -28468,6 +28050,15 @@ "funding": { "url": "https://github.com/sponsors/sindresorhus" } + }, + "node_modules/zod": { + "version": "3.23.8", + "resolved": "https://registry.npmjs.org/zod/-/zod-3.23.8.tgz", + "integrity": "sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/colinhacks" + } } } } diff --git a/package.json b/package.json index 37adaf591..c7181fae9 100644 --- a/package.json +++ b/package.json @@ -23,24 +23,24 @@ "@testing-library/jest-dom": "^6.4.8", "@testing-library/react": "^16.0.0", "@typescript-eslint/eslint-plugin": "^7.17.0", - "@wordpress/api-fetch": "^7.4.0", - "@wordpress/block-editor": "^13.4.0", - "@wordpress/blocks": "^13.4.0", - "@wordpress/components": "^28.4.0", - "@wordpress/compose": "^7.4.0", - "@wordpress/core-data": "^7.4.0", - "@wordpress/data": "^10.4.0", - "@wordpress/date": "^5.4.0", - "@wordpress/dom-ready": "^4.4.0", - "@wordpress/e2e-test-utils-playwright": "^1.5.0", - "@wordpress/edit-post": "^8.4.0", - "@wordpress/element": "^6.4.0", - "@wordpress/env": "^10.5.0", - "@wordpress/eslint-plugin": "^20.1.0", - "@wordpress/i18n": "^5.4.0", - "@wordpress/notices": "^5.4.0", - "@wordpress/plugins": "^7.4.0", - "@wordpress/scripts": "^28.4.0", + "@wordpress/api-fetch": "^7.9.0", + "@wordpress/block-editor": "^14.4.0", + "@wordpress/blocks": "^13.9.0", + "@wordpress/components": "^28.9.0", + "@wordpress/compose": "^7.9.0", + "@wordpress/core-data": "^7.9.0", + "@wordpress/data": "^10.9.0", + "@wordpress/date": "^5.9.0", + "@wordpress/dom-ready": "^4.9.0", + "@wordpress/e2e-test-utils-playwright": "^1.9.0", + "@wordpress/edit-post": "^8.9.0", + "@wordpress/element": "^6.9.0", + "@wordpress/env": "^10.9.0", + "@wordpress/eslint-plugin": "^21.2.0", + "@wordpress/i18n": "^5.9.0", + "@wordpress/notices": "^5.9.0", + "@wordpress/plugins": "^7.9.0", + "@wordpress/scripts": "^30.1.0", "@wp-playground/cli": "^0.9.32", "classnames": "^2.5.1", "clsx": "^2.1.1", From f8d255c5bf14699f7456d6c4670fe400a9d548ba Mon Sep 17 00:00:00 2001 From: Carsten Bach Date: Tue, 8 Oct 2024 00:30:20 +0200 Subject: [PATCH 103/103] BUILD --- build/272.js | 2 +- build/481.js | 2 +- build/535.js | 2 +- build/980.js | 2 +- build/blocks/add-to-calendar/index.asset.php | 2 +- build/blocks/add-to-calendar/index.js | 2 +- build/blocks/event-date/index.asset.php | 2 +- build/blocks/event-date/index.js | 4 ++-- build/blocks/events-list/index.asset.php | 2 +- build/blocks/events-list/index.js | 2 +- build/blocks/online-event/index.asset.php | 2 +- build/blocks/online-event/index.js | 2 +- build/blocks/rsvp-response/index.asset.php | 2 +- build/blocks/rsvp-response/index.js | 2 +- build/blocks/rsvp/index.asset.php | 2 +- build/blocks/rsvp/index.js | 2 +- build/blocks/venue/index.asset.php | 2 +- build/blocks/venue/index.js | 4 ++-- build/blocks/venue/venue.asset.php | 2 +- build/blocks/venue/venue.js | 4 ++-- build/profile_style.asset.php | 2 +- build/profile_style.js | 2 +- build/settings_style.asset.php | 2 +- build/settings_style.js | 2 +- 24 files changed, 27 insertions(+), 27 deletions(-) diff --git a/build/272.js b/build/272.js index 458d392fc..a1cc4c4e8 100644 --- a/build/272.js +++ b/build/272.js @@ -1 +1 @@ -"use strict";(globalThis.webpackChunkgatherpress=globalThis.webpackChunkgatherpress||[]).push([[272],{1272:(s,e,a)=>{s.exports=a.p+"images/marker-icon-2x.png"}}]); \ No newline at end of file +"use strict";(self.webpackChunkgatherpress=self.webpackChunkgatherpress||[]).push([[272],{1272:(e,s,p)=>{e.exports=p.p+"images/marker-icon-2x.png"}}]); \ No newline at end of file diff --git a/build/481.js b/build/481.js index cdd399f6b..c723c81d6 100644 --- a/build/481.js +++ b/build/481.js @@ -1 +1 @@ -(globalThis.webpackChunkgatherpress=globalThis.webpackChunkgatherpress||[]).push([[481],{3481:function(t,i){!function(t){"use strict";function i(t){var i,e,n,o;for(e=1,n=arguments.length;e0?Math.floor(t):Math.ceil(t)};function O(t,i,e){return t instanceof k?t:f(t)?new k(t[0],t[1]):null==t?t:"object"==typeof t&&"x"in t&&"y"in t?new k(t.x,t.y):new k(t,i,e)}function A(t,i){if(t)for(var e=i?[t,i]:t,n=0,o=e.length;n=this.min.x&&e.x<=this.max.x&&i.y>=this.min.y&&e.y<=this.max.y},intersects:function(t){t=B(t);var i=this.min,e=this.max,n=t.min,o=t.max,s=o.x>=i.x&&n.x<=e.x,r=o.y>=i.y&&n.y<=e.y;return s&&r},overlaps:function(t){t=B(t);var i=this.min,e=this.max,n=t.min,o=t.max,s=o.x>i.x&&n.xi.y&&n.y=n.lat&&e.lat<=o.lat&&i.lng>=n.lng&&e.lng<=o.lng},intersects:function(t){t=R(t);var i=this._southWest,e=this._northEast,n=t.getSouthWest(),o=t.getNorthEast(),s=o.lat>=i.lat&&n.lat<=e.lat,r=o.lng>=i.lng&&n.lng<=e.lng;return s&&r},overlaps:function(t){t=R(t);var i=this._southWest,e=this._northEast,n=t.getSouthWest(),o=t.getNorthEast(),s=o.lat>i.lat&&n.lati.lng&&n.lng1,Ct=function(){var t=!1;try{var i=Object.defineProperty({},"passive",{get:function(){t=!0}});window.addEventListener("testPassiveEventSupport",h,i),window.removeEventListener("testPassiveEventSupport",h,i)}catch(t){}return t}(),Zt=!!document.createElement("canvas").getContext,St=!(!document.createElementNS||!Y("svg").createSVGRect),kt=!!St&&((J=document.createElement("div")).innerHTML="","http://www.w3.org/2000/svg"===(J.firstChild&&J.firstChild.namespaceURI)),Et=!St&&function(){try{var t=document.createElement("div");t.innerHTML='';var i=t.firstChild;return i.style.behavior="url(#default#VML)",i&&"object"==typeof i.adj}catch(t){return!1}}();function Ot(t){return navigator.userAgent.toLowerCase().indexOf(t)>=0}var At={ie:Q,ielt9:tt,edge:it,webkit:et,android:nt,android23:ot,androidStock:rt,opera:at,chrome:ht,gecko:lt,safari:ut,phantom:ct,opera12:_t,win:dt,ie3d:pt,webkit3d:mt,gecko3d:ft,any3d:gt,mobile:vt,mobileWebkit:yt,mobileWebkit3d:xt,msPointer:wt,pointer:bt,touch:Lt,touchNative:Pt,mobileOpera:Tt,mobileGecko:Mt,retina:zt,passiveEvents:Ct,canvas:Zt,svg:St,vml:Et,inlineSvg:kt,mac:0===navigator.platform.indexOf("Mac"),linux:0===navigator.platform.indexOf("Linux")},Bt=At.msPointer?"MSPointerDown":"pointerdown",It=At.msPointer?"MSPointerMove":"pointermove",Rt=At.msPointer?"MSPointerUp":"pointerup",Nt=At.msPointer?"MSPointerCancel":"pointercancel",Dt={touchstart:Bt,touchmove:It,touchend:Rt,touchcancel:Nt},jt={touchstart:function(t,i){i.MSPOINTER_TYPE_TOUCH&&i.pointerType===i.MSPOINTER_TYPE_TOUCH&&Ni(i),Gt(t,i)},touchmove:Gt,touchend:Gt,touchcancel:Gt},Ht={},Wt=!1;function Ft(t,i,e){return"touchstart"===i&&(Wt||(document.addEventListener(Bt,Ut,!0),document.addEventListener(It,Vt,!0),document.addEventListener(Rt,qt,!0),document.addEventListener(Nt,qt,!0),Wt=!0)),jt[i]?(e=jt[i].bind(this,e),t.addEventListener(Dt[i],e,!1),e):(console.warn("wrong event specified:",i),h)}function Ut(t){Ht[t.pointerId]=t}function Vt(t){Ht[t.pointerId]&&(Ht[t.pointerId]=t)}function qt(t){delete Ht[t.pointerId]}function Gt(t,i){if(i.pointerType!==(i.MSPOINTER_TYPE_MOUSE||"mouse")){for(var e in i.touches=[],Ht)i.touches.push(Ht[e]);i.changedTouches=[i],t(i)}}var Kt=200;var Yt,Xt,Jt,$t,Qt,ti=fi(["transform","webkitTransform","OTransform","MozTransform","msTransform"]),ii=fi(["webkitTransition","transition","OTransition","MozTransition","msTransition"]),ei="webkitTransition"===ii||"OTransition"===ii?ii+"End":"transitionend";function ni(t){return"string"==typeof t?document.getElementById(t):t}function oi(t,i){var e=t.style[i]||t.currentStyle&&t.currentStyle[i];if((!e||"auto"===e)&&document.defaultView){var n=document.defaultView.getComputedStyle(t,null);e=n?n[i]:null}return"auto"===e?null:e}function si(t,i,e){var n=document.createElement(t);return n.className=i||"",e&&e.appendChild(n),n}function ri(t){var i=t.parentNode;i&&i.removeChild(t)}function ai(t){for(;t.firstChild;)t.removeChild(t.firstChild)}function hi(t){var i=t.parentNode;i&&i.lastChild!==t&&i.appendChild(t)}function li(t){var i=t.parentNode;i&&i.firstChild!==t&&i.insertBefore(t,i.firstChild)}function ui(t,i){if(void 0!==t.classList)return t.classList.contains(i);var e=pi(t);return e.length>0&&new RegExp("(^|\\s)"+i+"(\\s|$)").test(e)}function ci(t,i){if(void 0!==t.classList)for(var e=c(i),n=0,o=e.length;n0?2*window.devicePixelRatio:1;function Fi(t){return At.edge?t.wheelDeltaY/2:t.deltaY&&0===t.deltaMode?-t.deltaY/Wi:t.deltaY&&1===t.deltaMode?20*-t.deltaY:t.deltaY&&2===t.deltaMode?60*-t.deltaY:t.deltaX||t.deltaZ?0:t.wheelDelta?(t.wheelDeltaY||t.wheelDelta)/2:t.detail&&Math.abs(t.detail)<32765?20*-t.detail:t.detail?t.detail/-32765*60:0}function Ui(t,i){var e=i.relatedTarget;if(!e)return!0;try{for(;e&&e!==t;)e=e.parentNode}catch(t){return!1}return e!==t}var Vi={__proto__:null,on:Ci,off:Si,stopPropagation:Bi,disableScrollPropagation:Ii,disableClickPropagation:Ri,preventDefault:Ni,stop:Di,getPropagationPath:ji,getMousePosition:Hi,getWheelDelta:Fi,isExternalTarget:Ui,addListener:Ci,removeListener:Si},qi=S.extend({run:function(t,i,e,n){this.stop(),this._el=t,this._inProgress=!0,this._duration=e||.25,this._easeOutPower=1/Math.max(n||.5,.2),this._startPos=yi(t),this._offset=i.subtract(this._startPos),this._startTime=+new Date,this.fire("start"),this._animate()},stop:function(){this._inProgress&&(this._step(!0),this._complete())},_animate:function(){this._animId=T(this._animate,this),this._step()},_step:function(t){var i=+new Date-this._startTime,e=1e3*this._duration;ithis.options.maxZoom)?this.setZoom(t):this},panInsideBounds:function(t,i){this._enforcingBounds=!0;var e=this.getCenter(),n=this._limitCenter(e,this._zoom,R(t));return e.equals(n)||this.panTo(n,i),this._enforcingBounds=!1,this},panInside:function(t,i){var e=O((i=i||{}).paddingTopLeft||i.padding||[0,0]),n=O(i.paddingBottomRight||i.padding||[0,0]),o=this.project(this.getCenter()),s=this.project(t),r=this.getPixelBounds(),a=B([r.min.add(e),r.max.subtract(n)]),h=a.getSize();if(!a.contains(s)){this._enforcingBounds=!0;var l=s.subtract(a.getCenter()),u=a.extend(s).getSize().subtract(h);o.x+=l.x<0?-u.x:u.x,o.y+=l.y<0?-u.y:u.y,this.panTo(this.unproject(o),i),this._enforcingBounds=!1}return this},invalidateSize:function(t){if(!this._loaded)return this;t=i({animate:!1,pan:!0},!0===t?{animate:!0}:t);var e=this.getSize();this._sizeChanged=!0,this._lastCenter=null;var o=this.getSize(),s=e.divideBy(2).round(),r=o.divideBy(2).round(),a=s.subtract(r);return a.x||a.y?(t.animate&&t.pan?this.panBy(a):(t.pan&&this._rawPanBy(a),this.fire("move"),t.debounceMoveend?(clearTimeout(this._sizeTimer),this._sizeTimer=setTimeout(n(this.fire,this,"moveend"),200)):this.fire("moveend")),this.fire("resize",{oldSize:e,newSize:o})):this},stop:function(){return this.setZoom(this._limitZoom(this._zoom)),this.options.zoomSnap||this.fire("viewreset"),this._stop()},locate:function(t){if(t=this._locateOptions=i({timeout:1e4,watch:!1},t),!("geolocation"in navigator))return this._handleGeolocationError({code:0,message:"Geolocation not supported."}),this;var e=n(this._handleGeolocationResponse,this),o=n(this._handleGeolocationError,this);return t.watch?this._locationWatchId=navigator.geolocation.watchPosition(e,o,t):navigator.geolocation.getCurrentPosition(e,o,t),this},stopLocate:function(){return navigator.geolocation&&navigator.geolocation.clearWatch&&navigator.geolocation.clearWatch(this._locationWatchId),this._locateOptions&&(this._locateOptions.setView=!1),this},_handleGeolocationError:function(t){if(this._container._leaflet_id){var i=t.code,e=t.message||(1===i?"permission denied":2===i?"position unavailable":"timeout");this._locateOptions.setView&&!this._loaded&&this.fitWorld(),this.fire("locationerror",{code:i,message:"Geolocation error: "+e+"."})}},_handleGeolocationResponse:function(t){if(this._container._leaflet_id){var i=new N(t.coords.latitude,t.coords.longitude),e=i.toBounds(2*t.coords.accuracy),n=this._locateOptions;if(n.setView){var o=this.getBoundsZoom(e);this.setView(i,n.maxZoom?Math.min(o,n.maxZoom):o)}var s={latlng:i,bounds:e,timestamp:t.timestamp};for(var r in t.coords)"number"==typeof t.coords[r]&&(s[r]=t.coords[r]);this.fire("locationfound",s)}},addHandler:function(t,i){if(!i)return this;var e=this[t]=new i(this);return this._handlers.push(e),this.options[t]&&e.enable(),this},remove:function(){if(this._initEvents(!0),this.options.maxBounds&&this.off("moveend",this._panInsideMaxBounds),this._containerId!==this._container._leaflet_id)throw new Error("Map container is being reused by another instance");try{delete this._container._leaflet_id,delete this._containerId}catch(t){this._container._leaflet_id=void 0,this._containerId=void 0}var t;for(t in void 0!==this._locationWatchId&&this.stopLocate(),this._stop(),ri(this._mapPane),this._clearControlPos&&this._clearControlPos(),this._resizeRequest&&(M(this._resizeRequest),this._resizeRequest=null),this._clearHandlers(),this._loaded&&this.fire("unload"),this._layers)this._layers[t].remove();for(t in this._panes)ri(this._panes[t]);return this._layers=[],this._panes=[],delete this._mapPane,delete this._renderer,this},createPane:function(t,i){var e=si("div","leaflet-pane"+(t?" leaflet-"+t.replace("Pane","")+"-pane":""),i||this._mapPane);return t&&(this._panes[t]=e),e},getCenter:function(){return this._checkIfLoaded(),this._lastCenter&&!this._moved()?this._lastCenter.clone():this.layerPointToLatLng(this._getCenterLayerPoint())},getZoom:function(){return this._zoom},getBounds:function(){var t=this.getPixelBounds();return new I(this.unproject(t.getBottomLeft()),this.unproject(t.getTopRight()))},getMinZoom:function(){return void 0===this.options.minZoom?this._layersMinZoom||0:this.options.minZoom},getMaxZoom:function(){return void 0===this.options.maxZoom?void 0===this._layersMaxZoom?1/0:this._layersMaxZoom:this.options.maxZoom},getBoundsZoom:function(t,i,e){t=R(t),e=O(e||[0,0]);var n=this.getZoom()||0,o=this.getMinZoom(),s=this.getMaxZoom(),r=t.getNorthWest(),a=t.getSouthEast(),h=this.getSize().subtract(e),l=B(this.project(a,n),this.project(r,n)).getSize(),u=At.any3d?this.options.zoomSnap:1,c=h.x/l.x,_=h.y/l.y,d=i?Math.max(c,_):Math.min(c,_);return n=this.getScaleZoom(d,n),u&&(n=Math.round(n/(u/100))*(u/100),n=i?Math.ceil(n/u)*u:Math.floor(n/u)*u),Math.max(o,Math.min(s,n))},getSize:function(){return this._size&&!this._sizeChanged||(this._size=new k(this._container.clientWidth||0,this._container.clientHeight||0),this._sizeChanged=!1),this._size.clone()},getPixelBounds:function(t,i){var e=this._getTopLeftPoint(t,i);return new A(e,e.add(this.getSize()))},getPixelOrigin:function(){return this._checkIfLoaded(),this._pixelOrigin},getPixelWorldBounds:function(t){return this.options.crs.getProjectedBounds(void 0===t?this.getZoom():t)},getPane:function(t){return"string"==typeof t?this._panes[t]:t},getPanes:function(){return this._panes},getContainer:function(){return this._container},getZoomScale:function(t,i){var e=this.options.crs;return i=void 0===i?this._zoom:i,e.scale(t)/e.scale(i)},getScaleZoom:function(t,i){var e=this.options.crs;i=void 0===i?this._zoom:i;var n=e.zoom(t*e.scale(i));return isNaN(n)?1/0:n},project:function(t,i){return i=void 0===i?this._zoom:i,this.options.crs.latLngToPoint(D(t),i)},unproject:function(t,i){return i=void 0===i?this._zoom:i,this.options.crs.pointToLatLng(O(t),i)},layerPointToLatLng:function(t){var i=O(t).add(this.getPixelOrigin());return this.unproject(i)},latLngToLayerPoint:function(t){return this.project(D(t))._round()._subtract(this.getPixelOrigin())},wrapLatLng:function(t){return this.options.crs.wrapLatLng(D(t))},wrapLatLngBounds:function(t){return this.options.crs.wrapLatLngBounds(R(t))},distance:function(t,i){return this.options.crs.distance(D(t),D(i))},containerPointToLayerPoint:function(t){return O(t).subtract(this._getMapPanePos())},layerPointToContainerPoint:function(t){return O(t).add(this._getMapPanePos())},containerPointToLatLng:function(t){var i=this.containerPointToLayerPoint(O(t));return this.layerPointToLatLng(i)},latLngToContainerPoint:function(t){return this.layerPointToContainerPoint(this.latLngToLayerPoint(D(t)))},mouseEventToContainerPoint:function(t){return Hi(t,this._container)},mouseEventToLayerPoint:function(t){return this.containerPointToLayerPoint(this.mouseEventToContainerPoint(t))},mouseEventToLatLng:function(t){return this.layerPointToLatLng(this.mouseEventToLayerPoint(t))},_initContainer:function(t){var i=this._container=ni(t);if(!i)throw new Error("Map container not found.");if(i._leaflet_id)throw new Error("Map container is already initialized.");Ci(i,"scroll",this._onScroll,this),this._containerId=s(i)},_initLayout:function(){var t=this._container;this._fadeAnimated=this.options.fadeAnimation&&At.any3d,ci(t,"leaflet-container"+(At.touch?" leaflet-touch":"")+(At.retina?" leaflet-retina":"")+(At.ielt9?" leaflet-oldie":"")+(At.safari?" leaflet-safari":"")+(this._fadeAnimated?" leaflet-fade-anim":""));var i=oi(t,"position");"absolute"!==i&&"relative"!==i&&"fixed"!==i&&"sticky"!==i&&(t.style.position="relative"),this._initPanes(),this._initControlPos&&this._initControlPos()},_initPanes:function(){var t=this._panes={};this._paneRenderers={},this._mapPane=this.createPane("mapPane",this._container),vi(this._mapPane,new k(0,0)),this.createPane("tilePane"),this.createPane("overlayPane"),this.createPane("shadowPane"),this.createPane("markerPane"),this.createPane("tooltipPane"),this.createPane("popupPane"),this.options.markerZoomAnimation||(ci(t.markerPane,"leaflet-zoom-hide"),ci(t.shadowPane,"leaflet-zoom-hide"))},_resetView:function(t,i,e){vi(this._mapPane,new k(0,0));var n=!this._loaded;this._loaded=!0,i=this._limitZoom(i),this.fire("viewprereset");var o=this._zoom!==i;this._moveStart(o,e)._move(t,i)._moveEnd(o),this.fire("viewreset"),n&&this.fire("load")},_moveStart:function(t,i){return t&&this.fire("zoomstart"),i||this.fire("movestart"),this},_move:function(t,i,e,n){void 0===i&&(i=this._zoom);var o=this._zoom!==i;return this._zoom=i,this._lastCenter=t,this._pixelOrigin=this._getNewPixelOrigin(t),n?e&&e.pinch&&this.fire("zoom",e):((o||e&&e.pinch)&&this.fire("zoom",e),this.fire("move",e)),this},_moveEnd:function(t){return t&&this.fire("zoomend"),this.fire("moveend")},_stop:function(){return M(this._flyToFrame),this._panAnim&&this._panAnim.stop(),this},_rawPanBy:function(t){vi(this._mapPane,this._getMapPanePos().subtract(t))},_getZoomSpan:function(){return this.getMaxZoom()-this.getMinZoom()},_panInsideMaxBounds:function(){this._enforcingBounds||this.panInsideBounds(this.options.maxBounds)},_checkIfLoaded:function(){if(!this._loaded)throw new Error("Set map center and zoom first.")},_initEvents:function(t){this._targets={},this._targets[s(this._container)]=this;var i=t?Si:Ci;i(this._container,"click dblclick mousedown mouseup mouseover mouseout mousemove contextmenu keypress keydown keyup",this._handleDOMEvent,this),this.options.trackResize&&i(window,"resize",this._onResize,this),At.any3d&&this.options.transform3DLimit&&(t?this.off:this.on).call(this,"moveend",this._onMoveEnd)},_onResize:function(){M(this._resizeRequest),this._resizeRequest=T((function(){this.invalidateSize({debounceMoveend:!0})}),this)},_onScroll:function(){this._container.scrollTop=0,this._container.scrollLeft=0},_onMoveEnd:function(){var t=this._getMapPanePos();Math.max(Math.abs(t.x),Math.abs(t.y))>=this.options.transform3DLimit&&this._resetView(this.getCenter(),this.getZoom())},_findEventTargets:function(t,i){for(var e,n=[],o="mouseout"===i||"mouseover"===i,r=t.target||t.srcElement,a=!1;r;){if((e=this._targets[s(r)])&&("click"===i||"preclick"===i)&&this._draggableMoved(e)){a=!0;break}if(e&&e.listens(i,!0)){if(o&&!Ui(r,t))break;if(n.push(e),o)break}if(r===this._container)break;r=r.parentNode}return n.length||a||o||!this.listens(i,!0)||(n=[this]),n},_isClickDisabled:function(t){for(;t&&t!==this._container;){if(t._leaflet_disable_click)return!0;t=t.parentNode}},_handleDOMEvent:function(t){var i=t.target||t.srcElement;if(!(!this._loaded||i._leaflet_disable_events||"click"===t.type&&this._isClickDisabled(i))){var e=t.type;"mousedown"===e&&Pi(i),this._fireDOMEvent(t,e)}},_mouseEvents:["click","dblclick","mouseover","mouseout","contextmenu"],_fireDOMEvent:function(t,e,n){if("click"===t.type){var o=i({},t);o.type="preclick",this._fireDOMEvent(o,o.type,n)}var s=this._findEventTargets(t,e);if(n){for(var r=[],a=0;a0?Math.round(t-i)/2:Math.max(0,Math.ceil(t))-Math.max(0,Math.floor(i))},_limitZoom:function(t){var i=this.getMinZoom(),e=this.getMaxZoom(),n=At.any3d?this.options.zoomSnap:1;return n&&(t=Math.round(t/n)*n),Math.max(i,Math.min(e,t))},_onPanTransitionStep:function(){this.fire("move")},_onPanTransitionEnd:function(){_i(this._mapPane,"leaflet-pan-anim"),this.fire("moveend")},_tryAnimatedPan:function(t,i){var e=this._getCenterOffset(t)._trunc();return!(!0!==(i&&i.animate)&&!this.getSize().contains(e)||(this.panBy(e,i),0))},_createAnimProxy:function(){var t=this._proxy=si("div","leaflet-proxy leaflet-zoom-animated");this._panes.mapPane.appendChild(t),this.on("zoomanim",(function(t){var i=ti,e=this._proxy.style[i];gi(this._proxy,this.project(t.center,t.zoom),this.getZoomScale(t.zoom,1)),e===this._proxy.style[i]&&this._animatingZoom&&this._onZoomTransitionEnd()}),this),this.on("load moveend",this._animMoveEnd,this),this._on("unload",this._destroyAnimProxy,this)},_destroyAnimProxy:function(){ri(this._proxy),this.off("load moveend",this._animMoveEnd,this),delete this._proxy},_animMoveEnd:function(){var t=this.getCenter(),i=this.getZoom();gi(this._proxy,this.project(t,i),this.getZoomScale(i,1))},_catchTransitionEnd:function(t){this._animatingZoom&&t.propertyName.indexOf("transform")>=0&&this._onZoomTransitionEnd()},_nothingToAnimate:function(){return!this._container.getElementsByClassName("leaflet-zoom-animated").length},_tryAnimatedZoom:function(t,i,e){if(this._animatingZoom)return!0;if(e=e||{},!this._zoomAnimated||!1===e.animate||this._nothingToAnimate()||Math.abs(i-this._zoom)>this.options.zoomAnimationThreshold)return!1;var n=this.getZoomScale(i),o=this._getCenterOffset(t)._divideBy(1-1/n);return!(!0!==e.animate&&!this.getSize().contains(o)||(T((function(){this._moveStart(!0,e.noMoveStart||!1)._animateZoom(t,i,!0)}),this),0))},_animateZoom:function(t,i,e,o){this._mapPane&&(e&&(this._animatingZoom=!0,this._animateToCenter=t,this._animateToZoom=i,ci(this._mapPane,"leaflet-zoom-anim")),this.fire("zoomanim",{center:t,zoom:i,noUpdate:o}),this._tempFireZoomEvent||(this._tempFireZoomEvent=this._zoom!==this._animateToZoom),this._move(this._animateToCenter,this._animateToZoom,void 0,!0),setTimeout(n(this._onZoomTransitionEnd,this),250))},_onZoomTransitionEnd:function(){this._animatingZoom&&(this._mapPane&&_i(this._mapPane,"leaflet-zoom-anim"),this._animatingZoom=!1,this._move(this._animateToCenter,this._animateToZoom,void 0,!0),this._tempFireZoomEvent&&this.fire("zoom"),delete this._tempFireZoomEvent,this.fire("move"),this._moveEnd(!0))}});var Ki=C.extend({options:{position:"topright"},initialize:function(t){_(this,t)},getPosition:function(){return this.options.position},setPosition:function(t){var i=this._map;return i&&i.removeControl(this),this.options.position=t,i&&i.addControl(this),this},getContainer:function(){return this._container},addTo:function(t){this.remove(),this._map=t;var i=this._container=this.onAdd(t),e=this.getPosition(),n=t._controlCorners[e];return ci(i,"leaflet-control"),-1!==e.indexOf("bottom")?n.insertBefore(i,n.firstChild):n.appendChild(i),this._map.on("unload",this.remove,this),this},remove:function(){return this._map?(ri(this._container),this.onRemove&&this.onRemove(this._map),this._map.off("unload",this.remove,this),this._map=null,this):this},_refocusOnMap:function(t){this._map&&t&&t.screenX>0&&t.screenY>0&&this._map.getContainer().focus()}}),Yi=function(t){return new Ki(t)};Gi.include({addControl:function(t){return t.addTo(this),this},removeControl:function(t){return t.remove(),this},_initControlPos:function(){var t=this._controlCorners={},i="leaflet-",e=this._controlContainer=si("div",i+"control-container",this._container);function n(n,o){var s=i+n+" "+i+o;t[n+o]=si("div",s,e)}n("top","left"),n("top","right"),n("bottom","left"),n("bottom","right")},_clearControlPos:function(){for(var t in this._controlCorners)ri(this._controlCorners[t]);ri(this._controlContainer),delete this._controlCorners,delete this._controlContainer}});var Xi=Ki.extend({options:{collapsed:!0,position:"topright",autoZIndex:!0,hideSingleBase:!1,sortLayers:!1,sortFunction:function(t,i,e,n){return e1,this._baseLayersList.style.display=t?"":"none"),this._separator.style.display=i&&t?"":"none",this},_onLayerChange:function(t){this._handlingClick||this._update();var i=this._getLayer(s(t.target)),e=i.overlay?"add"===t.type?"overlayadd":"overlayremove":"add"===t.type?"baselayerchange":null;e&&this._map.fire(e,i)},_createRadioElement:function(t,i){var e='",n=document.createElement("div");return n.innerHTML=e,n.firstChild},_addItem:function(t){var i,e=document.createElement("label"),n=this._map.hasLayer(t.layer);t.overlay?((i=document.createElement("input")).type="checkbox",i.className="leaflet-control-layers-selector",i.defaultChecked=n):i=this._createRadioElement("leaflet-base-layers_"+s(this),n),this._layerControlInputs.push(i),i.layerId=s(t.layer),Ci(i,"click",this._onInputClick,this);var o=document.createElement("span");o.innerHTML=" "+t.name;var r=document.createElement("span");return e.appendChild(r),r.appendChild(i),r.appendChild(o),(t.overlay?this._overlaysList:this._baseLayersList).appendChild(e),this._checkDisabledLayers(),e},_onInputClick:function(){if(!this._preventClick){var t,i,e=this._layerControlInputs,n=[],o=[];this._handlingClick=!0;for(var s=e.length-1;s>=0;s--)t=e[s],i=this._getLayer(t.layerId).layer,t.checked?n.push(i):t.checked||o.push(i);for(s=0;s=0;o--)t=e[o],i=this._getLayer(t.layerId).layer,t.disabled=void 0!==i.options.minZoom&&ni.options.maxZoom},_expandIfNotCollapsed:function(){return this._map&&!this.options.collapsed&&this.expand(),this},_expandSafely:function(){var t=this._section;this._preventClick=!0,Ci(t,"click",Ni),this.expand();var i=this;setTimeout((function(){Si(t,"click",Ni),i._preventClick=!1}))}}),Ji=Ki.extend({options:{position:"topleft",zoomInText:'',zoomInTitle:"Zoom in",zoomOutText:'',zoomOutTitle:"Zoom out"},onAdd:function(t){var i="leaflet-control-zoom",e=si("div",i+" leaflet-bar"),n=this.options;return this._zoomInButton=this._createButton(n.zoomInText,n.zoomInTitle,i+"-in",e,this._zoomIn),this._zoomOutButton=this._createButton(n.zoomOutText,n.zoomOutTitle,i+"-out",e,this._zoomOut),this._updateDisabled(),t.on("zoomend zoomlevelschange",this._updateDisabled,this),e},onRemove:function(t){t.off("zoomend zoomlevelschange",this._updateDisabled,this)},disable:function(){return this._disabled=!0,this._updateDisabled(),this},enable:function(){return this._disabled=!1,this._updateDisabled(),this},_zoomIn:function(t){!this._disabled&&this._map._zoomthis._map.getMinZoom()&&this._map.zoomOut(this._map.options.zoomDelta*(t.shiftKey?3:1))},_createButton:function(t,i,e,n,o){var s=si("a",e,n);return s.innerHTML=t,s.href="#",s.title=i,s.setAttribute("role","button"),s.setAttribute("aria-label",i),Ri(s),Ci(s,"click",Di),Ci(s,"click",o,this),Ci(s,"click",this._refocusOnMap,this),s},_updateDisabled:function(){var t=this._map,i="leaflet-disabled";_i(this._zoomInButton,i),_i(this._zoomOutButton,i),this._zoomInButton.setAttribute("aria-disabled","false"),this._zoomOutButton.setAttribute("aria-disabled","false"),(this._disabled||t._zoom===t.getMinZoom())&&(ci(this._zoomOutButton,i),this._zoomOutButton.setAttribute("aria-disabled","true")),(this._disabled||t._zoom===t.getMaxZoom())&&(ci(this._zoomInButton,i),this._zoomInButton.setAttribute("aria-disabled","true"))}});Gi.mergeOptions({zoomControl:!0}),Gi.addInitHook((function(){this.options.zoomControl&&(this.zoomControl=new Ji,this.addControl(this.zoomControl))}));var $i=Ki.extend({options:{position:"bottomleft",maxWidth:100,metric:!0,imperial:!0},onAdd:function(t){var i="leaflet-control-scale",e=si("div",i),n=this.options;return this._addScales(n,i+"-line",e),t.on(n.updateWhenIdle?"moveend":"move",this._update,this),t.whenReady(this._update,this),e},onRemove:function(t){t.off(this.options.updateWhenIdle?"moveend":"move",this._update,this)},_addScales:function(t,i,e){t.metric&&(this._mScale=si("div",i,e)),t.imperial&&(this._iScale=si("div",i,e))},_update:function(){var t=this._map,i=t.getSize().y/2,e=t.distance(t.containerPointToLatLng([0,i]),t.containerPointToLatLng([this.options.maxWidth,i]));this._updateScales(e)},_updateScales:function(t){this.options.metric&&t&&this._updateMetric(t),this.options.imperial&&t&&this._updateImperial(t)},_updateMetric:function(t){var i=this._getRoundNum(t),e=i<1e3?i+" m":i/1e3+" km";this._updateScale(this._mScale,e,i/t)},_updateImperial:function(t){var i,e,n,o=3.2808399*t;o>5280?(i=o/5280,e=this._getRoundNum(i),this._updateScale(this._iScale,e+" mi",e/i)):(n=this._getRoundNum(o),this._updateScale(this._iScale,n+" ft",n/o))},_updateScale:function(t,i,e){t.style.width=Math.round(this.options.maxWidth*e)+"px",t.innerHTML=i},_getRoundNum:function(t){var i=Math.pow(10,(Math.floor(t)+"").length-1),e=t/i;return i*(e>=10?10:e>=5?5:e>=3?3:e>=2?2:1)}}),Qi=Ki.extend({options:{position:"bottomright",prefix:''+(At.inlineSvg?' ':"")+"Leaflet"},initialize:function(t){_(this,t),this._attributions={}},onAdd:function(t){for(var i in t.attributionControl=this,this._container=si("div","leaflet-control-attribution"),Ri(this._container),t._layers)t._layers[i].getAttribution&&this.addAttribution(t._layers[i].getAttribution());return this._update(),t.on("layeradd",this._addAttribution,this),this._container},onRemove:function(t){t.off("layeradd",this._addAttribution,this)},_addAttribution:function(t){t.layer.getAttribution&&(this.addAttribution(t.layer.getAttribution()),t.layer.once("remove",(function(){this.removeAttribution(t.layer.getAttribution())}),this))},setPrefix:function(t){return this.options.prefix=t,this._update(),this},addAttribution:function(t){return t?(this._attributions[t]||(this._attributions[t]=0),this._attributions[t]++,this._update(),this):this},removeAttribution:function(t){return t?(this._attributions[t]&&(this._attributions[t]--,this._update()),this):this},_update:function(){if(this._map){var t=[];for(var i in this._attributions)this._attributions[i]&&t.push(i);var e=[];this.options.prefix&&e.push(this.options.prefix),t.length&&e.push(t.join(", ")),this._container.innerHTML=e.join(' ')}}});Gi.mergeOptions({attributionControl:!0}),Gi.addInitHook((function(){this.options.attributionControl&&(new Qi).addTo(this)}));Ki.Layers=Xi,Ki.Zoom=Ji,Ki.Scale=$i,Ki.Attribution=Qi,Yi.layers=function(t,i,e){return new Xi(t,i,e)},Yi.zoom=function(t){return new Ji(t)},Yi.scale=function(t){return new $i(t)},Yi.attribution=function(t){return new Qi(t)};var te=C.extend({initialize:function(t){this._map=t},enable:function(){return this._enabled||(this._enabled=!0,this.addHooks()),this},disable:function(){return this._enabled?(this._enabled=!1,this.removeHooks(),this):this},enabled:function(){return!!this._enabled}});te.addTo=function(t,i){return t.addHandler(i,this),this};var ie={Events:Z},ee=At.touch?"touchstart mousedown":"mousedown",ne=S.extend({options:{clickTolerance:3},initialize:function(t,i,e,n){_(this,n),this._element=t,this._dragStartTarget=i||t,this._preventOutline=e},enable:function(){this._enabled||(Ci(this._dragStartTarget,ee,this._onDown,this),this._enabled=!0)},disable:function(){this._enabled&&(ne._dragging===this&&this.finishDrag(!0),Si(this._dragStartTarget,ee,this._onDown,this),this._enabled=!1,this._moved=!1)},_onDown:function(t){if(this._enabled&&(this._moved=!1,!ui(this._element,"leaflet-zoom-anim")))if(t.touches&&1!==t.touches.length)ne._dragging===this&&this.finishDrag();else if(!(ne._dragging||t.shiftKey||1!==t.which&&1!==t.button&&!t.touches||(ne._dragging=this,this._preventOutline&&Pi(this._element),wi(),Yt(),this._moving))){this.fire("down");var i=t.touches?t.touches[0]:t,e=Ti(this._element);this._startPoint=new k(i.clientX,i.clientY),this._startPos=yi(this._element),this._parentScale=Mi(e);var n="mousedown"===t.type;Ci(document,n?"mousemove":"touchmove",this._onMove,this),Ci(document,n?"mouseup":"touchend touchcancel",this._onUp,this)}},_onMove:function(t){if(this._enabled)if(t.touches&&t.touches.length>1)this._moved=!0;else{var i=t.touches&&1===t.touches.length?t.touches[0]:t,e=new k(i.clientX,i.clientY)._subtract(this._startPoint);(e.x||e.y)&&(Math.abs(e.x)+Math.abs(e.y)i&&(e.push(t[n]),o=n);return oh&&(s=r,h=a);h>e&&(i[s]=1,ce(t,i,e,n,s),ce(t,i,e,s,o))}function _e(t,i,e,n,o){var s,r,a,h=n?ae:pe(t,e),l=pe(i,e);for(ae=l;;){if(!(h|l))return[t,i];if(h&l)return!1;a=pe(r=de(t,i,s=h||l,e,o),e),s===h?(t=r,h=a):(i=r,l=a)}}function de(t,i,e,n,o){var s,r,a=i.x-t.x,h=i.y-t.y,l=n.min,u=n.max;return 8&e?(s=t.x+a*(u.y-t.y)/h,r=u.y):4&e?(s=t.x+a*(l.y-t.y)/h,r=l.y):2&e?(s=u.x,r=t.y+h*(u.x-t.x)/a):1&e&&(s=l.x,r=t.y+h*(l.x-t.x)/a),new k(s,r,o)}function pe(t,i){var e=0;return t.xi.max.x&&(e|=2),t.yi.max.y&&(e|=8),e}function me(t,i){var e=i.x-t.x,n=i.y-t.y;return e*e+n*n}function fe(t,i,e,n){var o,s=i.x,r=i.y,a=e.x-s,h=e.y-r,l=a*a+h*h;return l>0&&((o=((t.x-s)*a+(t.y-r)*h)/l)>1?(s=e.x,r=e.y):o>0&&(s+=a*o,r+=h*o)),a=t.x-s,h=t.y-r,n?a*a+h*h:new k(s,r)}function ge(t){return!f(t[0])||"object"!=typeof t[0][0]&&void 0!==t[0][0]}function ve(t){return console.warn("Deprecated use of _flat, please use L.LineUtil.isFlat instead."),ge(t)}function ye(t,i){var e,n,o,s,r,a,h,l;if(!t||0===t.length)throw new Error("latlngs not passed");ge(t)||(console.warn("latlngs are not flat! Only the first ring will be used"),t=t[0]);var u=D([0,0]),c=R(t);c.getNorthWest().distanceTo(c.getSouthWest())*c.getNorthEast().distanceTo(c.getNorthWest())<1700&&(u=re(t));var _=t.length,d=[];for(e=0;e<_;e++){var p=D(t[e]);d.push(i.project(D([p.lat-u.lat,p.lng-u.lng])))}for(e=0,n=0;e<_-1;e++)n+=d[e].distanceTo(d[e+1])/2;if(0===n)l=d[0];else for(e=0,s=0;e<_-1;e++)if(r=d[e],a=d[e+1],(s+=o=r.distanceTo(a))>n){h=(s-n)/o,l=[a.x-h*(a.x-r.x),a.y-h*(a.y-r.y)];break}var m=i.unproject(O(l));return D([m.lat+u.lat,m.lng+u.lng])}var xe={__proto__:null,simplify:le,pointToSegmentDistance:ue,closestPointOnSegment:function(t,i,e){return fe(t,i,e)},clipSegment:_e,_getEdgeIntersection:de,_getBitCode:pe,_sqClosestPointOnSegment:fe,isFlat:ge,_flat:ve,polylineCenter:ye},we={project:function(t){return new k(t.lng,t.lat)},unproject:function(t){return new N(t.y,t.x)},bounds:new A([-180,-90],[180,90])},be={R:6378137,R_MINOR:6356752.314245179,bounds:new A([-20037508.34279,-15496570.73972],[20037508.34279,18764656.23138]),project:function(t){var i=Math.PI/180,e=this.R,n=t.lat*i,o=this.R_MINOR/e,s=Math.sqrt(1-o*o),r=s*Math.sin(n),a=Math.tan(Math.PI/4-n/2)/Math.pow((1-r)/(1+r),s/2);return n=-e*Math.log(Math.max(a,1e-10)),new k(t.lng*i*e,n)},unproject:function(t){for(var i,e=180/Math.PI,n=this.R,o=this.R_MINOR/n,s=Math.sqrt(1-o*o),r=Math.exp(-t.y/n),a=Math.PI/2-2*Math.atan(r),h=0,l=.1;h<15&&Math.abs(l)>1e-7;h++)i=s*Math.sin(a),i=Math.pow((1-i)/(1+i),s/2),a+=l=Math.PI/2-2*Math.atan(r*i)-a;return new N(a*e,t.x*e/n)}},Pe={__proto__:null,LonLat:we,Mercator:be,SphericalMercator:U},Le=i({},W,{code:"EPSG:3395",projection:be,transformation:function(){var t=.5/(Math.PI*be.R);return q(t,.5,-t,.5)}()}),Te=i({},W,{code:"EPSG:4326",projection:we,transformation:q(1/180,1,-1/180,.5)}),Me=i({},H,{projection:we,transformation:q(1,0,-1,0),scale:function(t){return Math.pow(2,t)},zoom:function(t){return Math.log(t)/Math.LN2},distance:function(t,i){var e=i.lng-t.lng,n=i.lat-t.lat;return Math.sqrt(e*e+n*n)},infinite:!0});H.Earth=W,H.EPSG3395=Le,H.EPSG3857=G,H.EPSG900913=K,H.EPSG4326=Te,H.Simple=Me;var ze=S.extend({options:{pane:"overlayPane",attribution:null,bubblingMouseEvents:!0},addTo:function(t){return t.addLayer(this),this},remove:function(){return this.removeFrom(this._map||this._mapToAdd)},removeFrom:function(t){return t&&t.removeLayer(this),this},getPane:function(t){return this._map.getPane(t?this.options[t]||t:this.options.pane)},addInteractiveTarget:function(t){return this._map._targets[s(t)]=this,this},removeInteractiveTarget:function(t){return delete this._map._targets[s(t)],this},getAttribution:function(){return this.options.attribution},_layerAdd:function(t){var i=t.target;if(i.hasLayer(this)){if(this._map=i,this._zoomAnimated=i._zoomAnimated,this.getEvents){var e=this.getEvents();i.on(e,this),this.once("remove",(function(){i.off(e,this)}),this)}this.onAdd(i),this.fire("add"),i.fire("layeradd",{layer:this})}}});Gi.include({addLayer:function(t){if(!t._layerAdd)throw new Error("The provided object is not a Layer.");var i=s(t);return this._layers[i]||(this._layers[i]=t,t._mapToAdd=this,t.beforeAdd&&t.beforeAdd(this),this.whenReady(t._layerAdd,t)),this},removeLayer:function(t){var i=s(t);return this._layers[i]?(this._loaded&&t.onRemove(this),delete this._layers[i],this._loaded&&(this.fire("layerremove",{layer:t}),t.fire("remove")),t._map=t._mapToAdd=null,this):this},hasLayer:function(t){return s(t)in this._layers},eachLayer:function(t,i){for(var e in this._layers)t.call(i,this._layers[e]);return this},_addLayers:function(t){for(var i=0,e=(t=t?f(t)?t:[t]:[]).length;ithis._layersMaxZoom&&this.setZoom(this._layersMaxZoom),void 0===this.options.minZoom&&this._layersMinZoom&&this.getZoom()=2&&i[0]instanceof N&&i[0].equals(i[e-1])&&i.pop(),i},_setLatLngs:function(t){Re.prototype._setLatLngs.call(this,t),ge(this._latlngs)&&(this._latlngs=[this._latlngs])},_defaultShape:function(){return ge(this._latlngs[0])?this._latlngs[0]:this._latlngs[0][0]},_clipPoints:function(){var t=this._renderer._bounds,i=this.options.weight,e=new k(i,i);if(t=new A(t.min.subtract(e),t.max.add(e)),this._parts=[],this._pxBounds&&this._pxBounds.intersects(t))if(this.options.noClip)this._parts=this._rings;else for(var n,o=0,s=this._rings.length;ot.y!=n.y>t.y&&t.x<(n.x-e.x)*(t.y-e.y)/(n.y-e.y)+e.x&&(l=!l);return l||Re.prototype._containsPoint.call(this,t,!0)}});var De=Ze.extend({initialize:function(t,i){_(this,i),this._layers={},t&&this.addData(t)},addData:function(t){var i,e,n,o=f(t)?t:t.features;if(o){for(i=0,e=o.length;i0&&o.push(o[0].slice()),o}function qe(t,e){return t.feature?i({},t.feature,{geometry:e}):Ge(e)}function Ge(t){return"Feature"===t.type||"FeatureCollection"===t.type?t:{type:"Feature",properties:{},geometry:t}}var Ke={toGeoJSON:function(t){return qe(this,{type:"Point",coordinates:Ue(this.getLatLng(),t)})}};function Ye(t,i){return new De(t,i)}Oe.include(Ke),Ie.include(Ke),Be.include(Ke),Re.include({toGeoJSON:function(t){var i=!ge(this._latlngs);return qe(this,{type:(i?"Multi":"")+"LineString",coordinates:Ve(this._latlngs,i?1:0,!1,t)})}}),Ne.include({toGeoJSON:function(t){var i=!ge(this._latlngs),e=i&&!ge(this._latlngs[0]),n=Ve(this._latlngs,e?2:i?1:0,!0,t);return i||(n=[n]),qe(this,{type:(e?"Multi":"")+"Polygon",coordinates:n})}}),Ce.include({toMultiPoint:function(t){var i=[];return this.eachLayer((function(e){i.push(e.toGeoJSON(t).geometry.coordinates)})),qe(this,{type:"MultiPoint",coordinates:i})},toGeoJSON:function(t){var i=this.feature&&this.feature.geometry&&this.feature.geometry.type;if("MultiPoint"===i)return this.toMultiPoint(t);var e="GeometryCollection"===i,n=[];return this.eachLayer((function(i){if(i.toGeoJSON){var o=i.toGeoJSON(t);if(e)n.push(o.geometry);else{var s=Ge(o);"FeatureCollection"===s.type?n.push.apply(n,s.features):n.push(s)}}})),e?qe(this,{geometries:n,type:"GeometryCollection"}):{type:"FeatureCollection",features:n}}});var Xe=Ye,Je=ze.extend({options:{opacity:1,alt:"",interactive:!1,crossOrigin:!1,errorOverlayUrl:"",zIndex:1,className:""},initialize:function(t,i,e){this._url=t,this._bounds=R(i),_(this,e)},onAdd:function(){this._image||(this._initImage(),this.options.opacity<1&&this._updateOpacity()),this.options.interactive&&(ci(this._image,"leaflet-interactive"),this.addInteractiveTarget(this._image)),this.getPane().appendChild(this._image),this._reset()},onRemove:function(){ri(this._image),this.options.interactive&&this.removeInteractiveTarget(this._image)},setOpacity:function(t){return this.options.opacity=t,this._image&&this._updateOpacity(),this},setStyle:function(t){return t.opacity&&this.setOpacity(t.opacity),this},bringToFront:function(){return this._map&&hi(this._image),this},bringToBack:function(){return this._map&&li(this._image),this},setUrl:function(t){return this._url=t,this._image&&(this._image.src=t),this},setBounds:function(t){return this._bounds=R(t),this._map&&this._reset(),this},getEvents:function(){var t={zoom:this._reset,viewreset:this._reset};return this._zoomAnimated&&(t.zoomanim=this._animateZoom),t},setZIndex:function(t){return this.options.zIndex=t,this._updateZIndex(),this},getBounds:function(){return this._bounds},getElement:function(){return this._image},_initImage:function(){var t="IMG"===this._url.tagName,i=this._image=t?this._url:si("img");ci(i,"leaflet-image-layer"),this._zoomAnimated&&ci(i,"leaflet-zoom-animated"),this.options.className&&ci(i,this.options.className),i.onselectstart=h,i.onmousemove=h,i.onload=n(this.fire,this,"load"),i.onerror=n(this._overlayOnError,this,"error"),(this.options.crossOrigin||""===this.options.crossOrigin)&&(i.crossOrigin=!0===this.options.crossOrigin?"":this.options.crossOrigin),this.options.zIndex&&this._updateZIndex(),t?this._url=i.src:(i.src=this._url,i.alt=this.options.alt)},_animateZoom:function(t){var i=this._map.getZoomScale(t.zoom),e=this._map._latLngBoundsToNewLayerBounds(this._bounds,t.zoom,t.center).min;gi(this._image,e,i)},_reset:function(){var t=this._image,i=new A(this._map.latLngToLayerPoint(this._bounds.getNorthWest()),this._map.latLngToLayerPoint(this._bounds.getSouthEast())),e=i.getSize();vi(t,i.min),t.style.width=e.x+"px",t.style.height=e.y+"px"},_updateOpacity:function(){mi(this._image,this.options.opacity)},_updateZIndex:function(){this._image&&void 0!==this.options.zIndex&&null!==this.options.zIndex&&(this._image.style.zIndex=this.options.zIndex)},_overlayOnError:function(){this.fire("error");var t=this.options.errorOverlayUrl;t&&this._url!==t&&(this._url=t,this._image.src=t)},getCenter:function(){return this._bounds.getCenter()}}),$e=Je.extend({options:{autoplay:!0,loop:!0,keepAspectRatio:!0,muted:!1,playsInline:!0},_initImage:function(){var t="VIDEO"===this._url.tagName,i=this._image=t?this._url:si("video");if(ci(i,"leaflet-image-layer"),this._zoomAnimated&&ci(i,"leaflet-zoom-animated"),this.options.className&&ci(i,this.options.className),i.onselectstart=h,i.onmousemove=h,i.onloadeddata=n(this.fire,this,"load"),t){for(var e=i.getElementsByTagName("source"),o=[],s=0;s0?o:[i.src]}else{f(this._url)||(this._url=[this._url]),!this.options.keepAspectRatio&&Object.prototype.hasOwnProperty.call(i.style,"objectFit")&&(i.style.objectFit="fill"),i.autoplay=!!this.options.autoplay,i.loop=!!this.options.loop,i.muted=!!this.options.muted,i.playsInline=!!this.options.playsInline;for(var r=0;ro?(i.height=o+"px",ci(t,s)):_i(t,s),this._containerWidth=this._container.offsetWidth},_animateZoom:function(t){var i=this._map._latLngToNewLayerPoint(this._latlng,t.zoom,t.center),e=this._getAnchor();vi(this._container,i.add(e))},_adjustPan:function(){if(this.options.autoPan)if(this._map._panAnim&&this._map._panAnim.stop(),this._autopanning)this._autopanning=!1;else{var t=this._map,i=parseInt(oi(this._container,"marginBottom"),10)||0,e=this._container.offsetHeight+i,n=this._containerWidth,o=new k(this._containerLeft,-e-this._containerBottom);o._add(yi(this._container));var s=t.layerPointToContainerPoint(o),r=O(this.options.autoPanPadding),a=O(this.options.autoPanPaddingTopLeft||r),h=O(this.options.autoPanPaddingBottomRight||r),l=t.getSize(),u=0,c=0;s.x+n+h.x>l.x&&(u=s.x+n-l.x+h.x),s.x-u-a.x<0&&(u=s.x-a.x),s.y+e+h.y>l.y&&(c=s.y+e-l.y+h.y),s.y-c-a.y<0&&(c=s.y-a.y),(u||c)&&(this.options.keepInView&&(this._autopanning=!0),t.fire("autopanstart").panBy([u,c]))}},_getAnchor:function(){return O(this._source&&this._source._getPopupAnchor?this._source._getPopupAnchor():[0,0])}});Gi.mergeOptions({closePopupOnClick:!0}),Gi.include({openPopup:function(t,i,e){return this._initOverlay(en,t,i,e).openOn(this),this},closePopup:function(t){return(t=arguments.length?t:this._popup)&&t.close(),this}}),ze.include({bindPopup:function(t,i){return this._popup=this._initOverlay(en,this._popup,t,i),this._popupHandlersAdded||(this.on({click:this._openPopup,keypress:this._onKeyPress,remove:this.closePopup,move:this._movePopup}),this._popupHandlersAdded=!0),this},unbindPopup:function(){return this._popup&&(this.off({click:this._openPopup,keypress:this._onKeyPress,remove:this.closePopup,move:this._movePopup}),this._popupHandlersAdded=!1,this._popup=null),this},openPopup:function(t){return this._popup&&(this instanceof Ze||(this._popup._source=this),this._popup._prepareOpen(t||this._latlng)&&this._popup.openOn(this._map)),this},closePopup:function(){return this._popup&&this._popup.close(),this},togglePopup:function(){return this._popup&&this._popup.toggle(this),this},isPopupOpen:function(){return!!this._popup&&this._popup.isOpen()},setPopupContent:function(t){return this._popup&&this._popup.setContent(t),this},getPopup:function(){return this._popup},_openPopup:function(t){if(this._popup&&this._map){Di(t);var i=t.layer||t.target;this._popup._source!==i||i instanceof Ae?(this._popup._source=i,this.openPopup(t.latlng)):this._map.hasLayer(this._popup)?this.closePopup():this.openPopup(t.latlng)}},_movePopup:function(t){this._popup.setLatLng(t.latlng)},_onKeyPress:function(t){13===t.originalEvent.keyCode&&this._openPopup(t)}});var nn=tn.extend({options:{pane:"tooltipPane",offset:[0,0],direction:"auto",permanent:!1,sticky:!1,opacity:.9},onAdd:function(t){tn.prototype.onAdd.call(this,t),this.setOpacity(this.options.opacity),t.fire("tooltipopen",{tooltip:this}),this._source&&(this.addEventParent(this._source),this._source.fire("tooltipopen",{tooltip:this},!0))},onRemove:function(t){tn.prototype.onRemove.call(this,t),t.fire("tooltipclose",{tooltip:this}),this._source&&(this.removeEventParent(this._source),this._source.fire("tooltipclose",{tooltip:this},!0))},getEvents:function(){var t=tn.prototype.getEvents.call(this);return this.options.permanent||(t.preclick=this.close),t},_initLayout:function(){var t="leaflet-tooltip "+(this.options.className||"")+" leaflet-zoom-"+(this._zoomAnimated?"animated":"hide");this._contentNode=this._container=si("div",t),this._container.setAttribute("role","tooltip"),this._container.setAttribute("id","leaflet-tooltip-"+s(this))},_updateLayout:function(){},_adjustPan:function(){},_setPosition:function(t){var i,e,n=this._map,o=this._container,s=n.latLngToContainerPoint(n.getCenter()),r=n.layerPointToContainerPoint(t),a=this.options.direction,h=o.offsetWidth,l=o.offsetHeight,u=O(this.options.offset),c=this._getAnchor();"top"===a?(i=h/2,e=l):"bottom"===a?(i=h/2,e=0):"center"===a?(i=h/2,e=l/2):"right"===a?(i=0,e=l/2):"left"===a?(i=h,e=l/2):r.xthis.options.maxZoom||en&&this._retainParent(o,s,r,n))},_retainChildren:function(t,i,e,n){for(var o=2*t;o<2*t+2;o++)for(var s=2*i;s<2*i+2;s++){var r=new k(o,s);r.z=e+1;var a=this._tileCoordsToKey(r),h=this._tiles[a];h&&h.active?h.retain=!0:(h&&h.loaded&&(h.retain=!0),e+1this.options.maxZoom||void 0!==this.options.minZoom&&o1)this._setView(t,e);else{for(var c=o.min.y;c<=o.max.y;c++)for(var _=o.min.x;_<=o.max.x;_++){var d=new k(_,c);if(d.z=this._tileZoom,this._isValidTile(d)){var p=this._tiles[this._tileCoordsToKey(d)];p?p.current=!0:r.push(d)}}if(r.sort((function(t,i){return t.distanceTo(s)-i.distanceTo(s)})),0!==r.length){this._loading||(this._loading=!0,this.fire("loading"));var m=document.createDocumentFragment();for(_=0;_e.max.x)||!i.wrapLat&&(t.ye.max.y))return!1}if(!this.options.bounds)return!0;var n=this._tileCoordsToBounds(t);return R(this.options.bounds).overlaps(n)},_keyToBounds:function(t){return this._tileCoordsToBounds(this._keyToTileCoords(t))},_tileCoordsToNwSe:function(t){var i=this._map,e=this.getTileSize(),n=t.scaleBy(e),o=n.add(e);return[i.unproject(n,t.z),i.unproject(o,t.z)]},_tileCoordsToBounds:function(t){var i=this._tileCoordsToNwSe(t),e=new I(i[0],i[1]);return this.options.noWrap||(e=this._map.wrapLatLngBounds(e)),e},_tileCoordsToKey:function(t){return t.x+":"+t.y+":"+t.z},_keyToTileCoords:function(t){var i=t.split(":"),e=new k(+i[0],+i[1]);return e.z=+i[2],e},_removeTile:function(t){var i=this._tiles[t];i&&(ri(i.el),delete this._tiles[t],this.fire("tileunload",{tile:i.el,coords:this._keyToTileCoords(t)}))},_initTile:function(t){ci(t,"leaflet-tile");var i=this.getTileSize();t.style.width=i.x+"px",t.style.height=i.y+"px",t.onselectstart=h,t.onmousemove=h,At.ielt9&&this.options.opacity<1&&mi(t,this.options.opacity)},_addTile:function(t,i){var e=this._getTilePos(t),o=this._tileCoordsToKey(t),s=this.createTile(this._wrapCoords(t),n(this._tileReady,this,t));this._initTile(s),this.createTile.length<2&&T(n(this._tileReady,this,t,null,s)),vi(s,e),this._tiles[o]={el:s,coords:t,current:!0},i.appendChild(s),this.fire("tileloadstart",{tile:s,coords:t})},_tileReady:function(t,i,e){i&&this.fire("tileerror",{error:i,tile:e,coords:t});var o=this._tileCoordsToKey(t);(e=this._tiles[o])&&(e.loaded=+new Date,this._map._fadeAnimated?(mi(e.el,0),M(this._fadeFrame),this._fadeFrame=T(this._updateOpacity,this)):(e.active=!0,this._pruneTiles()),i||(ci(e.el,"leaflet-tile-loaded"),this.fire("tileload",{tile:e.el,coords:t})),this._noTilesToLoad()&&(this._loading=!1,this.fire("load"),At.ielt9||!this._map._fadeAnimated?T(this._pruneTiles,this):setTimeout(n(this._pruneTiles,this),250)))},_getTilePos:function(t){return t.scaleBy(this.getTileSize()).subtract(this._level.origin)},_wrapCoords:function(t){var i=new k(this._wrapX?a(t.x,this._wrapX):t.x,this._wrapY?a(t.y,this._wrapY):t.y);return i.z=t.z,i},_pxBoundsToTileRange:function(t){var i=this.getTileSize();return new A(t.min.unscaleBy(i).floor(),t.max.unscaleBy(i).ceil().subtract([1,1]))},_noTilesToLoad:function(){for(var t in this._tiles)if(!this._tiles[t].loaded)return!1;return!0}});var rn=sn.extend({options:{minZoom:0,maxZoom:18,subdomains:"abc",errorTileUrl:"",zoomOffset:0,tms:!1,zoomReverse:!1,detectRetina:!1,crossOrigin:!1,referrerPolicy:!1},initialize:function(t,i){this._url=t,(i=_(this,i)).detectRetina&&At.retina&&i.maxZoom>0?(i.tileSize=Math.floor(i.tileSize/2),i.zoomReverse?(i.zoomOffset--,i.minZoom=Math.min(i.maxZoom,i.minZoom+1)):(i.zoomOffset++,i.maxZoom=Math.max(i.minZoom,i.maxZoom-1)),i.minZoom=Math.max(0,i.minZoom)):i.zoomReverse?i.minZoom=Math.min(i.maxZoom,i.minZoom):i.maxZoom=Math.max(i.minZoom,i.maxZoom),"string"==typeof i.subdomains&&(i.subdomains=i.subdomains.split("")),this.on("tileunload",this._onTileRemove)},setUrl:function(t,i){return this._url===t&&void 0===i&&(i=!0),this._url=t,i||this.redraw(),this},createTile:function(t,i){var e=document.createElement("img");return Ci(e,"load",n(this._tileOnLoad,this,i,e)),Ci(e,"error",n(this._tileOnError,this,i,e)),(this.options.crossOrigin||""===this.options.crossOrigin)&&(e.crossOrigin=!0===this.options.crossOrigin?"":this.options.crossOrigin),"string"==typeof this.options.referrerPolicy&&(e.referrerPolicy=this.options.referrerPolicy),e.alt="",e.src=this.getTileUrl(t),e},getTileUrl:function(t){var e={r:At.retina?"@2x":"",s:this._getSubdomain(t),x:t.x,y:t.y,z:this._getZoomForUrl()};if(this._map&&!this._map.options.crs.infinite){var n=this._globalTileRange.max.y-t.y;this.options.tms&&(e.y=n),e["-y"]=n}return m(this._url,i(e,this.options))},_tileOnLoad:function(t,i){At.ielt9?setTimeout(n(t,this,null,i),0):t(null,i)},_tileOnError:function(t,i,e){var n=this.options.errorTileUrl;n&&i.getAttribute("src")!==n&&(i.src=n),t(e,i)},_onTileRemove:function(t){t.tile.onload=null},_getZoomForUrl:function(){var t=this._tileZoom,i=this.options.maxZoom;return this.options.zoomReverse&&(t=i-t),t+this.options.zoomOffset},_getSubdomain:function(t){var i=Math.abs(t.x+t.y)%this.options.subdomains.length;return this.options.subdomains[i]},_abortLoading:function(){var t,i;for(t in this._tiles)if(this._tiles[t].coords.z!==this._tileZoom&&((i=this._tiles[t].el).onload=h,i.onerror=h,!i.complete)){i.src=v;var e=this._tiles[t].coords;ri(i),delete this._tiles[t],this.fire("tileabort",{tile:i,coords:e})}},_removeTile:function(t){var i=this._tiles[t];if(i)return i.el.setAttribute("src",v),sn.prototype._removeTile.call(this,t)},_tileReady:function(t,i,e){if(this._map&&(!e||e.getAttribute("src")!==v))return sn.prototype._tileReady.call(this,t,i,e)}});function an(t,i){return new rn(t,i)}var hn=rn.extend({defaultWmsParams:{service:"WMS",request:"GetMap",layers:"",styles:"",format:"image/jpeg",transparent:!1,version:"1.1.1"},options:{crs:null,uppercase:!1},initialize:function(t,e){this._url=t;var n=i({},this.defaultWmsParams);for(var o in e)o in this.options||(n[o]=e[o]);var s=(e=_(this,e)).detectRetina&&At.retina?2:1,r=this.getTileSize();n.width=r.x*s,n.height=r.y*s,this.wmsParams=n},onAdd:function(t){this._crs=this.options.crs||t.options.crs,this._wmsVersion=parseFloat(this.wmsParams.version);var i=this._wmsVersion>=1.3?"crs":"srs";this.wmsParams[i]=this._crs.code,rn.prototype.onAdd.call(this,t)},getTileUrl:function(t){var i=this._tileCoordsToNwSe(t),e=this._crs,n=B(e.project(i[0]),e.project(i[1])),o=n.min,s=n.max,r=(this._wmsVersion>=1.3&&this._crs===Te?[o.y,o.x,s.y,s.x]:[o.x,o.y,s.x,s.y]).join(","),a=rn.prototype.getTileUrl.call(this,t);return a+d(this.wmsParams,a,this.options.uppercase)+(this.options.uppercase?"&BBOX=":"&bbox=")+r},setParams:function(t,e){return i(this.wmsParams,t),e||this.redraw(),this}});rn.WMS=hn,an.wms=function(t,i){return new hn(t,i)};var ln=ze.extend({options:{padding:.1},initialize:function(t){_(this,t),s(this),this._layers=this._layers||{}},onAdd:function(){this._container||(this._initContainer(),ci(this._container,"leaflet-zoom-animated")),this.getPane().appendChild(this._container),this._update(),this.on("update",this._updatePaths,this)},onRemove:function(){this.off("update",this._updatePaths,this),this._destroyContainer()},getEvents:function(){var t={viewreset:this._reset,zoom:this._onZoom,moveend:this._update,zoomend:this._onZoomEnd};return this._zoomAnimated&&(t.zoomanim=this._onAnimZoom),t},_onAnimZoom:function(t){this._updateTransform(t.center,t.zoom)},_onZoom:function(){this._updateTransform(this._map.getCenter(),this._map.getZoom())},_updateTransform:function(t,i){var e=this._map.getZoomScale(i,this._zoom),n=this._map.getSize().multiplyBy(.5+this.options.padding),o=this._map.project(this._center,i),s=n.multiplyBy(-e).add(o).subtract(this._map._getNewPixelOrigin(t,i));At.any3d?gi(this._container,s,e):vi(this._container,s)},_reset:function(){for(var t in this._update(),this._updateTransform(this._center,this._zoom),this._layers)this._layers[t]._reset()},_onZoomEnd:function(){for(var t in this._layers)this._layers[t]._project()},_updatePaths:function(){for(var t in this._layers)this._layers[t]._update()},_update:function(){var t=this.options.padding,i=this._map.getSize(),e=this._map.containerPointToLayerPoint(i.multiplyBy(-t)).round();this._bounds=new A(e,e.add(i.multiplyBy(1+2*t)).round()),this._center=this._map.getCenter(),this._zoom=this._map.getZoom()}}),un=ln.extend({options:{tolerance:0},getEvents:function(){var t=ln.prototype.getEvents.call(this);return t.viewprereset=this._onViewPreReset,t},_onViewPreReset:function(){this._postponeUpdatePaths=!0},onAdd:function(){ln.prototype.onAdd.call(this),this._draw()},_initContainer:function(){var t=this._container=document.createElement("canvas");Ci(t,"mousemove",this._onMouseMove,this),Ci(t,"click dblclick mousedown mouseup contextmenu",this._onClick,this),Ci(t,"mouseout",this._handleMouseOut,this),t._leaflet_disable_events=!0,this._ctx=t.getContext("2d")},_destroyContainer:function(){M(this._redrawRequest),delete this._ctx,ri(this._container),Si(this._container),delete this._container},_updatePaths:function(){if(!this._postponeUpdatePaths){for(var t in this._redrawBounds=null,this._layers)this._layers[t]._update();this._redraw()}},_update:function(){if(!this._map._animatingZoom||!this._bounds){ln.prototype._update.call(this);var t=this._bounds,i=this._container,e=t.getSize(),n=At.retina?2:1;vi(i,t.min),i.width=n*e.x,i.height=n*e.y,i.style.width=e.x+"px",i.style.height=e.y+"px",At.retina&&this._ctx.scale(2,2),this._ctx.translate(-t.min.x,-t.min.y),this.fire("update")}},_reset:function(){ln.prototype._reset.call(this),this._postponeUpdatePaths&&(this._postponeUpdatePaths=!1,this._updatePaths())},_initPath:function(t){this._updateDashArray(t),this._layers[s(t)]=t;var i=t._order={layer:t,prev:this._drawLast,next:null};this._drawLast&&(this._drawLast.next=i),this._drawLast=i,this._drawFirst=this._drawFirst||this._drawLast},_addPath:function(t){this._requestRedraw(t)},_removePath:function(t){var i=t._order,e=i.next,n=i.prev;e?e.prev=n:this._drawLast=n,n?n.next=e:this._drawFirst=e,delete t._order,delete this._layers[s(t)],this._requestRedraw(t)},_updatePath:function(t){this._extendRedrawBounds(t),t._project(),t._update(),this._requestRedraw(t)},_updateStyle:function(t){this._updateDashArray(t),this._requestRedraw(t)},_updateDashArray:function(t){if("string"==typeof t.options.dashArray){var i,e,n=t.options.dashArray.split(/[, ]+/),o=[];for(e=0;e')}}catch(t){}return function(t){return document.createElement("<"+t+' xmlns="urn:schemas-microsoft.com:vml" class="lvml">')}}(),pn={_initContainer:function(){this._container=si("div","leaflet-vml-container")},_update:function(){this._map._animatingZoom||(ln.prototype._update.call(this),this.fire("update"))},_initPath:function(t){var i=t._container=dn("shape");ci(i,"leaflet-vml-shape "+(this.options.className||"")),i.coordsize="1 1",t._path=dn("path"),i.appendChild(t._path),this._updateStyle(t),this._layers[s(t)]=t},_addPath:function(t){var i=t._container;this._container.appendChild(i),t.options.interactive&&t.addInteractiveTarget(i)},_removePath:function(t){var i=t._container;ri(i),t.removeInteractiveTarget(i),delete this._layers[s(t)]},_updateStyle:function(t){var i=t._stroke,e=t._fill,n=t.options,o=t._container;o.stroked=!!n.stroke,o.filled=!!n.fill,n.stroke?(i||(i=t._stroke=dn("stroke")),o.appendChild(i),i.weight=n.weight+"px",i.color=n.color,i.opacity=n.opacity,n.dashArray?i.dashStyle=f(n.dashArray)?n.dashArray.join(" "):n.dashArray.replace(/( *, *)/g," "):i.dashStyle="",i.endcap=n.lineCap.replace("butt","flat"),i.joinstyle=n.lineJoin):i&&(o.removeChild(i),t._stroke=null),n.fill?(e||(e=t._fill=dn("fill")),o.appendChild(e),e.color=n.fillColor||n.color,e.opacity=n.fillOpacity):e&&(o.removeChild(e),t._fill=null)},_updateCircle:function(t){var i=t._point.round(),e=Math.round(t._radius),n=Math.round(t._radiusY||e);this._setPath(t,t._empty()?"M0 0":"AL "+i.x+","+i.y+" "+e+","+n+" 0,23592600")},_setPath:function(t,i){t._path.v=i},_bringToFront:function(t){hi(t._container)},_bringToBack:function(t){li(t._container)}},mn=At.vml?dn:Y,fn=ln.extend({_initContainer:function(){this._container=mn("svg"),this._container.setAttribute("pointer-events","none"),this._rootGroup=mn("g"),this._container.appendChild(this._rootGroup)},_destroyContainer:function(){ri(this._container),Si(this._container),delete this._container,delete this._rootGroup,delete this._svgSize},_update:function(){if(!this._map._animatingZoom||!this._bounds){ln.prototype._update.call(this);var t=this._bounds,i=t.getSize(),e=this._container;this._svgSize&&this._svgSize.equals(i)||(this._svgSize=i,e.setAttribute("width",i.x),e.setAttribute("height",i.y)),vi(e,t.min),e.setAttribute("viewBox",[t.min.x,t.min.y,i.x,i.y].join(" ")),this.fire("update")}},_initPath:function(t){var i=t._path=mn("path");t.options.className&&ci(i,t.options.className),t.options.interactive&&ci(i,"leaflet-interactive"),this._updateStyle(t),this._layers[s(t)]=t},_addPath:function(t){this._rootGroup||this._initContainer(),this._rootGroup.appendChild(t._path),t.addInteractiveTarget(t._path)},_removePath:function(t){ri(t._path),t.removeInteractiveTarget(t._path),delete this._layers[s(t)]},_updatePath:function(t){t._project(),t._update()},_updateStyle:function(t){var i=t._path,e=t.options;i&&(e.stroke?(i.setAttribute("stroke",e.color),i.setAttribute("stroke-opacity",e.opacity),i.setAttribute("stroke-width",e.weight),i.setAttribute("stroke-linecap",e.lineCap),i.setAttribute("stroke-linejoin",e.lineJoin),e.dashArray?i.setAttribute("stroke-dasharray",e.dashArray):i.removeAttribute("stroke-dasharray"),e.dashOffset?i.setAttribute("stroke-dashoffset",e.dashOffset):i.removeAttribute("stroke-dashoffset")):i.setAttribute("stroke","none"),e.fill?(i.setAttribute("fill",e.fillColor||e.color),i.setAttribute("fill-opacity",e.fillOpacity),i.setAttribute("fill-rule",e.fillRule||"evenodd")):i.setAttribute("fill","none"))},_updatePoly:function(t,i){this._setPath(t,X(t._parts,i))},_updateCircle:function(t){var i=t._point,e=Math.max(Math.round(t._radius),1),n="a"+e+","+(Math.max(Math.round(t._radiusY),1)||e)+" 0 1,0 ",o=t._empty()?"M0 0":"M"+(i.x-e)+","+i.y+n+2*e+",0 "+n+2*-e+",0 ";this._setPath(t,o)},_setPath:function(t,i){t._path.setAttribute("d",i)},_bringToFront:function(t){hi(t._path)},_bringToBack:function(t){li(t._path)}});function gn(t){return At.svg||At.vml?new fn(t):null}At.vml&&fn.include(pn),Gi.include({getRenderer:function(t){var i=t.options.renderer||this._getPaneRenderer(t.options.pane)||this.options.renderer||this._renderer;return i||(i=this._renderer=this._createRenderer()),this.hasLayer(i)||this.addLayer(i),i},_getPaneRenderer:function(t){if("overlayPane"===t||void 0===t)return!1;var i=this._paneRenderers[t];return void 0===i&&(i=this._createRenderer({pane:t}),this._paneRenderers[t]=i),i},_createRenderer:function(t){return this.options.preferCanvas&&cn(t)||gn(t)}});var vn=Ne.extend({initialize:function(t,i){Ne.prototype.initialize.call(this,this._boundsToLatLngs(t),i)},setBounds:function(t){return this.setLatLngs(this._boundsToLatLngs(t))},_boundsToLatLngs:function(t){return[(t=R(t)).getSouthWest(),t.getNorthWest(),t.getNorthEast(),t.getSouthEast()]}});fn.create=mn,fn.pointsToPath=X,De.geometryToLayer=je,De.coordsToLatLng=We,De.coordsToLatLngs=Fe,De.latLngToCoords=Ue,De.latLngsToCoords=Ve,De.getFeature=qe,De.asFeature=Ge,Gi.mergeOptions({boxZoom:!0});var yn=te.extend({initialize:function(t){this._map=t,this._container=t._container,this._pane=t._panes.overlayPane,this._resetStateTimeout=0,t.on("unload",this._destroy,this)},addHooks:function(){Ci(this._container,"mousedown",this._onMouseDown,this)},removeHooks:function(){Si(this._container,"mousedown",this._onMouseDown,this)},moved:function(){return this._moved},_destroy:function(){ri(this._pane),delete this._pane},_resetState:function(){this._resetStateTimeout=0,this._moved=!1},_clearDeferredResetState:function(){0!==this._resetStateTimeout&&(clearTimeout(this._resetStateTimeout),this._resetStateTimeout=0)},_onMouseDown:function(t){if(!t.shiftKey||1!==t.which&&1!==t.button)return!1;this._clearDeferredResetState(),this._resetState(),Yt(),wi(),this._startPoint=this._map.mouseEventToContainerPoint(t),Ci(document,{contextmenu:Di,mousemove:this._onMouseMove,mouseup:this._onMouseUp,keydown:this._onKeyDown},this)},_onMouseMove:function(t){this._moved||(this._moved=!0,this._box=si("div","leaflet-zoom-box",this._container),ci(this._container,"leaflet-crosshair"),this._map.fire("boxzoomstart")),this._point=this._map.mouseEventToContainerPoint(t);var i=new A(this._point,this._startPoint),e=i.getSize();vi(this._box,i.min),this._box.style.width=e.x+"px",this._box.style.height=e.y+"px"},_finish:function(){this._moved&&(ri(this._box),_i(this._container,"leaflet-crosshair")),Xt(),bi(),Si(document,{contextmenu:Di,mousemove:this._onMouseMove,mouseup:this._onMouseUp,keydown:this._onKeyDown},this)},_onMouseUp:function(t){if((1===t.which||1===t.button)&&(this._finish(),this._moved)){this._clearDeferredResetState(),this._resetStateTimeout=setTimeout(n(this._resetState,this),0);var i=new I(this._map.containerPointToLatLng(this._startPoint),this._map.containerPointToLatLng(this._point));this._map.fitBounds(i).fire("boxzoomend",{boxZoomBounds:i})}},_onKeyDown:function(t){27===t.keyCode&&(this._finish(),this._clearDeferredResetState(),this._resetState())}});Gi.addInitHook("addHandler","boxZoom",yn),Gi.mergeOptions({doubleClickZoom:!0});var xn=te.extend({addHooks:function(){this._map.on("dblclick",this._onDoubleClick,this)},removeHooks:function(){this._map.off("dblclick",this._onDoubleClick,this)},_onDoubleClick:function(t){var i=this._map,e=i.getZoom(),n=i.options.zoomDelta,o=t.originalEvent.shiftKey?e-n:e+n;"center"===i.options.doubleClickZoom?i.setZoom(o):i.setZoomAround(t.containerPoint,o)}});Gi.addInitHook("addHandler","doubleClickZoom",xn),Gi.mergeOptions({dragging:!0,inertia:!0,inertiaDeceleration:3400,inertiaMaxSpeed:1/0,easeLinearity:.2,worldCopyJump:!1,maxBoundsViscosity:0});var wn=te.extend({addHooks:function(){if(!this._draggable){var t=this._map;this._draggable=new ne(t._mapPane,t._container),this._draggable.on({dragstart:this._onDragStart,drag:this._onDrag,dragend:this._onDragEnd},this),this._draggable.on("predrag",this._onPreDragLimit,this),t.options.worldCopyJump&&(this._draggable.on("predrag",this._onPreDragWrap,this),t.on("zoomend",this._onZoomEnd,this),t.whenReady(this._onZoomEnd,this))}ci(this._map._container,"leaflet-grab leaflet-touch-drag"),this._draggable.enable(),this._positions=[],this._times=[]},removeHooks:function(){_i(this._map._container,"leaflet-grab"),_i(this._map._container,"leaflet-touch-drag"),this._draggable.disable()},moved:function(){return this._draggable&&this._draggable._moved},moving:function(){return this._draggable&&this._draggable._moving},_onDragStart:function(){var t=this._map;if(t._stop(),this._map.options.maxBounds&&this._map.options.maxBoundsViscosity){var i=R(this._map.options.maxBounds);this._offsetLimit=B(this._map.latLngToContainerPoint(i.getNorthWest()).multiplyBy(-1),this._map.latLngToContainerPoint(i.getSouthEast()).multiplyBy(-1).add(this._map.getSize())),this._viscosity=Math.min(1,Math.max(0,this._map.options.maxBoundsViscosity))}else this._offsetLimit=null;t.fire("movestart").fire("dragstart"),t.options.inertia&&(this._positions=[],this._times=[])},_onDrag:function(t){if(this._map.options.inertia){var i=this._lastTime=+new Date,e=this._lastPos=this._draggable._absPos||this._draggable._newPos;this._positions.push(e),this._times.push(i),this._prunePositions(i)}this._map.fire("move",t).fire("drag",t)},_prunePositions:function(t){for(;this._positions.length>1&&t-this._times[0]>50;)this._positions.shift(),this._times.shift()},_onZoomEnd:function(){var t=this._map.getSize().divideBy(2),i=this._map.latLngToLayerPoint([0,0]);this._initialWorldOffset=i.subtract(t).x,this._worldWidth=this._map.getPixelWorldBounds().getSize().x},_viscousLimit:function(t,i){return t-(t-i)*this._viscosity},_onPreDragLimit:function(){if(this._viscosity&&this._offsetLimit){var t=this._draggable._newPos.subtract(this._draggable._startPos),i=this._offsetLimit;t.xi.max.x&&(t.x=this._viscousLimit(t.x,i.max.x)),t.y>i.max.y&&(t.y=this._viscousLimit(t.y,i.max.y)),this._draggable._newPos=this._draggable._startPos.add(t)}},_onPreDragWrap:function(){var t=this._worldWidth,i=Math.round(t/2),e=this._initialWorldOffset,n=this._draggable._newPos.x,o=(n-i+e)%t+i-e,s=(n+i+e)%t-i-e,r=Math.abs(o+e)0?s:-s))-i;this._delta=0,this._startTime=null,r&&("center"===t.options.scrollWheelZoom?t.setZoom(i+r):t.setZoomAround(this._lastMousePos,i+r))}});Gi.addInitHook("addHandler","scrollWheelZoom",Pn);Gi.mergeOptions({tapHold:At.touchNative&&At.safari&&At.mobile,tapTolerance:15});var Ln=te.extend({addHooks:function(){Ci(this._map._container,"touchstart",this._onDown,this)},removeHooks:function(){Si(this._map._container,"touchstart",this._onDown,this)},_onDown:function(t){if(clearTimeout(this._holdTimeout),1===t.touches.length){var i=t.touches[0];this._startPos=this._newPos=new k(i.clientX,i.clientY),this._holdTimeout=setTimeout(n((function(){this._cancel(),this._isTapValid()&&(Ci(document,"touchend",Ni),Ci(document,"touchend touchcancel",this._cancelClickPrevent),this._simulateEvent("contextmenu",i))}),this),600),Ci(document,"touchend touchcancel contextmenu",this._cancel,this),Ci(document,"touchmove",this._onMove,this)}},_cancelClickPrevent:function t(){Si(document,"touchend",Ni),Si(document,"touchend touchcancel",t)},_cancel:function(){clearTimeout(this._holdTimeout),Si(document,"touchend touchcancel contextmenu",this._cancel,this),Si(document,"touchmove",this._onMove,this)},_onMove:function(t){var i=t.touches[0];this._newPos=new k(i.clientX,i.clientY)},_isTapValid:function(){return this._newPos.distanceTo(this._startPos)<=this._map.options.tapTolerance},_simulateEvent:function(t,i){var e=new MouseEvent(t,{bubbles:!0,cancelable:!0,view:window,screenX:i.screenX,screenY:i.screenY,clientX:i.clientX,clientY:i.clientY});e._simulated=!0,i.target.dispatchEvent(e)}});Gi.addInitHook("addHandler","tapHold",Ln),Gi.mergeOptions({touchZoom:At.touch,bounceAtZoomLimits:!0});var Tn=te.extend({addHooks:function(){ci(this._map._container,"leaflet-touch-zoom"),Ci(this._map._container,"touchstart",this._onTouchStart,this)},removeHooks:function(){_i(this._map._container,"leaflet-touch-zoom"),Si(this._map._container,"touchstart",this._onTouchStart,this)},_onTouchStart:function(t){var i=this._map;if(t.touches&&2===t.touches.length&&!i._animatingZoom&&!this._zooming){var e=i.mouseEventToContainerPoint(t.touches[0]),n=i.mouseEventToContainerPoint(t.touches[1]);this._centerPoint=i.getSize()._divideBy(2),this._startLatLng=i.containerPointToLatLng(this._centerPoint),"center"!==i.options.touchZoom&&(this._pinchStartLatLng=i.containerPointToLatLng(e.add(n)._divideBy(2))),this._startDist=e.distanceTo(n),this._startZoom=i.getZoom(),this._moved=!1,this._zooming=!0,i._stop(),Ci(document,"touchmove",this._onTouchMove,this),Ci(document,"touchend touchcancel",this._onTouchEnd,this),Ni(t)}},_onTouchMove:function(t){if(t.touches&&2===t.touches.length&&this._zooming){var i=this._map,e=i.mouseEventToContainerPoint(t.touches[0]),o=i.mouseEventToContainerPoint(t.touches[1]),s=e.distanceTo(o)/this._startDist;if(this._zoom=i.getScaleZoom(s,this._startZoom),!i.options.bounceAtZoomLimits&&(this._zoomi.getMaxZoom()&&s>1)&&(this._zoom=i._limitZoom(this._zoom)),"center"===i.options.touchZoom){if(this._center=this._startLatLng,1===s)return}else{var r=e._add(o)._divideBy(2)._subtract(this._centerPoint);if(1===s&&0===r.x&&0===r.y)return;this._center=i.unproject(i.project(this._pinchStartLatLng,this._zoom).subtract(r),this._zoom)}this._moved||(i._moveStart(!0,!1),this._moved=!0),M(this._animRequest);var a=n(i._move,i,this._center,this._zoom,{pinch:!0,round:!1},void 0);this._animRequest=T(a,this,!0),Ni(t)}},_onTouchEnd:function(){this._moved&&this._zooming?(this._zooming=!1,M(this._animRequest),Si(document,"touchmove",this._onTouchMove,this),Si(document,"touchend touchcancel",this._onTouchEnd,this),this._map.options.zoomAnimation?this._map._animateZoom(this._center,this._map._limitZoom(this._zoom),!0,this._map.options.zoomSnap):this._map._resetView(this._center,this._map._limitZoom(this._zoom))):this._zooming=!1}});Gi.addInitHook("addHandler","touchZoom",Tn),Gi.BoxZoom=yn,Gi.DoubleClickZoom=xn,Gi.Drag=wn,Gi.Keyboard=bn,Gi.ScrollWheelZoom=Pn,Gi.TapHold=Ln,Gi.TouchZoom=Tn,t.Bounds=A,t.Browser=At,t.CRS=H,t.Canvas=un,t.Circle=Ie,t.CircleMarker=Be,t.Class=C,t.Control=Ki,t.DivIcon=on,t.DivOverlay=tn,t.DomEvent=Vi,t.DomUtil=zi,t.Draggable=ne,t.Evented=S,t.FeatureGroup=Ze,t.GeoJSON=De,t.GridLayer=sn,t.Handler=te,t.Icon=Se,t.ImageOverlay=Je,t.LatLng=N,t.LatLngBounds=I,t.Layer=ze,t.LayerGroup=Ce,t.LineUtil=xe,t.Map=Gi,t.Marker=Oe,t.Mixin=ie,t.Path=Ae,t.Point=k,t.PolyUtil=he,t.Polygon=Ne,t.Polyline=Re,t.Popup=en,t.PosAnimation=qi,t.Projection=Pe,t.Rectangle=vn,t.Renderer=ln,t.SVG=fn,t.SVGOverlay=Qe,t.TileLayer=rn,t.Tooltip=nn,t.Transformation=V,t.Util=z,t.VideoOverlay=$e,t.bind=n,t.bounds=B,t.canvas=cn,t.circle=function(t,i,e){return new Ie(t,i,e)},t.circleMarker=function(t,i){return new Be(t,i)},t.control=Yi,t.divIcon=function(t){return new on(t)},t.extend=i,t.featureGroup=function(t,i){return new Ze(t,i)},t.geoJSON=Ye,t.geoJson=Xe,t.gridLayer=function(t){return new sn(t)},t.icon=function(t){return new Se(t)},t.imageOverlay=function(t,i,e){return new Je(t,i,e)},t.latLng=D,t.latLngBounds=R,t.layerGroup=function(t,i){return new Ce(t,i)},t.map=function(t,i){return new Gi(t,i)},t.marker=function(t,i){return new Oe(t,i)},t.point=O,t.polygon=function(t,i){return new Ne(t,i)},t.polyline=function(t,i){return new Re(t,i)},t.popup=function(t,i){return new en(t,i)},t.rectangle=function(t,i){return new vn(t,i)},t.setOptions=_,t.stamp=s,t.svg=gn,t.svgOverlay=function(t,i,e){return new Qe(t,i,e)},t.tileLayer=an,t.tooltip=function(t,i){return new nn(t,i)},t.transformation=q,t.version="1.9.4",t.videoOverlay=function(t,i,e){return new $e(t,i,e)};var Mn=window.L;t.noConflict=function(){return window.L=Mn,this},window.L=t}(i)}}]); \ No newline at end of file +(self.webpackChunkgatherpress=self.webpackChunkgatherpress||[]).push([[481],{3481:function(t,i){!function(t){"use strict";function i(t){var i,e,n,o;for(e=1,n=arguments.length;e0?Math.floor(t):Math.ceil(t)};function O(t,i,e){return t instanceof k?t:f(t)?new k(t[0],t[1]):null==t?t:"object"==typeof t&&"x"in t&&"y"in t?new k(t.x,t.y):new k(t,i,e)}function A(t,i){if(t)for(var e=i?[t,i]:t,n=0,o=e.length;n=this.min.x&&e.x<=this.max.x&&i.y>=this.min.y&&e.y<=this.max.y},intersects:function(t){t=B(t);var i=this.min,e=this.max,n=t.min,o=t.max,s=o.x>=i.x&&n.x<=e.x,r=o.y>=i.y&&n.y<=e.y;return s&&r},overlaps:function(t){t=B(t);var i=this.min,e=this.max,n=t.min,o=t.max,s=o.x>i.x&&n.xi.y&&n.y=n.lat&&e.lat<=o.lat&&i.lng>=n.lng&&e.lng<=o.lng},intersects:function(t){t=R(t);var i=this._southWest,e=this._northEast,n=t.getSouthWest(),o=t.getNorthEast(),s=o.lat>=i.lat&&n.lat<=e.lat,r=o.lng>=i.lng&&n.lng<=e.lng;return s&&r},overlaps:function(t){t=R(t);var i=this._southWest,e=this._northEast,n=t.getSouthWest(),o=t.getNorthEast(),s=o.lat>i.lat&&n.lati.lng&&n.lng1,Ct=function(){var t=!1;try{var i=Object.defineProperty({},"passive",{get:function(){t=!0}});window.addEventListener("testPassiveEventSupport",h,i),window.removeEventListener("testPassiveEventSupport",h,i)}catch(t){}return t}(),Zt=!!document.createElement("canvas").getContext,St=!(!document.createElementNS||!Y("svg").createSVGRect),kt=!!St&&((J=document.createElement("div")).innerHTML="","http://www.w3.org/2000/svg"===(J.firstChild&&J.firstChild.namespaceURI)),Et=!St&&function(){try{var t=document.createElement("div");t.innerHTML='';var i=t.firstChild;return i.style.behavior="url(#default#VML)",i&&"object"==typeof i.adj}catch(t){return!1}}();function Ot(t){return navigator.userAgent.toLowerCase().indexOf(t)>=0}var At={ie:Q,ielt9:tt,edge:it,webkit:et,android:nt,android23:ot,androidStock:rt,opera:at,chrome:ht,gecko:lt,safari:ut,phantom:ct,opera12:_t,win:dt,ie3d:pt,webkit3d:mt,gecko3d:ft,any3d:gt,mobile:vt,mobileWebkit:yt,mobileWebkit3d:xt,msPointer:wt,pointer:bt,touch:Lt,touchNative:Pt,mobileOpera:Tt,mobileGecko:Mt,retina:zt,passiveEvents:Ct,canvas:Zt,svg:St,vml:Et,inlineSvg:kt,mac:0===navigator.platform.indexOf("Mac"),linux:0===navigator.platform.indexOf("Linux")},Bt=At.msPointer?"MSPointerDown":"pointerdown",It=At.msPointer?"MSPointerMove":"pointermove",Rt=At.msPointer?"MSPointerUp":"pointerup",Nt=At.msPointer?"MSPointerCancel":"pointercancel",Dt={touchstart:Bt,touchmove:It,touchend:Rt,touchcancel:Nt},jt={touchstart:function(t,i){i.MSPOINTER_TYPE_TOUCH&&i.pointerType===i.MSPOINTER_TYPE_TOUCH&&Ni(i),Gt(t,i)},touchmove:Gt,touchend:Gt,touchcancel:Gt},Ht={},Wt=!1;function Ft(t,i,e){return"touchstart"===i&&(Wt||(document.addEventListener(Bt,Ut,!0),document.addEventListener(It,Vt,!0),document.addEventListener(Rt,qt,!0),document.addEventListener(Nt,qt,!0),Wt=!0)),jt[i]?(e=jt[i].bind(this,e),t.addEventListener(Dt[i],e,!1),e):(console.warn("wrong event specified:",i),h)}function Ut(t){Ht[t.pointerId]=t}function Vt(t){Ht[t.pointerId]&&(Ht[t.pointerId]=t)}function qt(t){delete Ht[t.pointerId]}function Gt(t,i){if(i.pointerType!==(i.MSPOINTER_TYPE_MOUSE||"mouse")){for(var e in i.touches=[],Ht)i.touches.push(Ht[e]);i.changedTouches=[i],t(i)}}var Kt=200;var Yt,Xt,Jt,$t,Qt,ti=fi(["transform","webkitTransform","OTransform","MozTransform","msTransform"]),ii=fi(["webkitTransition","transition","OTransition","MozTransition","msTransition"]),ei="webkitTransition"===ii||"OTransition"===ii?ii+"End":"transitionend";function ni(t){return"string"==typeof t?document.getElementById(t):t}function oi(t,i){var e=t.style[i]||t.currentStyle&&t.currentStyle[i];if((!e||"auto"===e)&&document.defaultView){var n=document.defaultView.getComputedStyle(t,null);e=n?n[i]:null}return"auto"===e?null:e}function si(t,i,e){var n=document.createElement(t);return n.className=i||"",e&&e.appendChild(n),n}function ri(t){var i=t.parentNode;i&&i.removeChild(t)}function ai(t){for(;t.firstChild;)t.removeChild(t.firstChild)}function hi(t){var i=t.parentNode;i&&i.lastChild!==t&&i.appendChild(t)}function li(t){var i=t.parentNode;i&&i.firstChild!==t&&i.insertBefore(t,i.firstChild)}function ui(t,i){if(void 0!==t.classList)return t.classList.contains(i);var e=pi(t);return e.length>0&&new RegExp("(^|\\s)"+i+"(\\s|$)").test(e)}function ci(t,i){if(void 0!==t.classList)for(var e=c(i),n=0,o=e.length;n0?2*window.devicePixelRatio:1;function Fi(t){return At.edge?t.wheelDeltaY/2:t.deltaY&&0===t.deltaMode?-t.deltaY/Wi:t.deltaY&&1===t.deltaMode?20*-t.deltaY:t.deltaY&&2===t.deltaMode?60*-t.deltaY:t.deltaX||t.deltaZ?0:t.wheelDelta?(t.wheelDeltaY||t.wheelDelta)/2:t.detail&&Math.abs(t.detail)<32765?20*-t.detail:t.detail?t.detail/-32765*60:0}function Ui(t,i){var e=i.relatedTarget;if(!e)return!0;try{for(;e&&e!==t;)e=e.parentNode}catch(t){return!1}return e!==t}var Vi={__proto__:null,on:Ci,off:Si,stopPropagation:Bi,disableScrollPropagation:Ii,disableClickPropagation:Ri,preventDefault:Ni,stop:Di,getPropagationPath:ji,getMousePosition:Hi,getWheelDelta:Fi,isExternalTarget:Ui,addListener:Ci,removeListener:Si},qi=S.extend({run:function(t,i,e,n){this.stop(),this._el=t,this._inProgress=!0,this._duration=e||.25,this._easeOutPower=1/Math.max(n||.5,.2),this._startPos=yi(t),this._offset=i.subtract(this._startPos),this._startTime=+new Date,this.fire("start"),this._animate()},stop:function(){this._inProgress&&(this._step(!0),this._complete())},_animate:function(){this._animId=T(this._animate,this),this._step()},_step:function(t){var i=+new Date-this._startTime,e=1e3*this._duration;ithis.options.maxZoom)?this.setZoom(t):this},panInsideBounds:function(t,i){this._enforcingBounds=!0;var e=this.getCenter(),n=this._limitCenter(e,this._zoom,R(t));return e.equals(n)||this.panTo(n,i),this._enforcingBounds=!1,this},panInside:function(t,i){var e=O((i=i||{}).paddingTopLeft||i.padding||[0,0]),n=O(i.paddingBottomRight||i.padding||[0,0]),o=this.project(this.getCenter()),s=this.project(t),r=this.getPixelBounds(),a=B([r.min.add(e),r.max.subtract(n)]),h=a.getSize();if(!a.contains(s)){this._enforcingBounds=!0;var l=s.subtract(a.getCenter()),u=a.extend(s).getSize().subtract(h);o.x+=l.x<0?-u.x:u.x,o.y+=l.y<0?-u.y:u.y,this.panTo(this.unproject(o),i),this._enforcingBounds=!1}return this},invalidateSize:function(t){if(!this._loaded)return this;t=i({animate:!1,pan:!0},!0===t?{animate:!0}:t);var e=this.getSize();this._sizeChanged=!0,this._lastCenter=null;var o=this.getSize(),s=e.divideBy(2).round(),r=o.divideBy(2).round(),a=s.subtract(r);return a.x||a.y?(t.animate&&t.pan?this.panBy(a):(t.pan&&this._rawPanBy(a),this.fire("move"),t.debounceMoveend?(clearTimeout(this._sizeTimer),this._sizeTimer=setTimeout(n(this.fire,this,"moveend"),200)):this.fire("moveend")),this.fire("resize",{oldSize:e,newSize:o})):this},stop:function(){return this.setZoom(this._limitZoom(this._zoom)),this.options.zoomSnap||this.fire("viewreset"),this._stop()},locate:function(t){if(t=this._locateOptions=i({timeout:1e4,watch:!1},t),!("geolocation"in navigator))return this._handleGeolocationError({code:0,message:"Geolocation not supported."}),this;var e=n(this._handleGeolocationResponse,this),o=n(this._handleGeolocationError,this);return t.watch?this._locationWatchId=navigator.geolocation.watchPosition(e,o,t):navigator.geolocation.getCurrentPosition(e,o,t),this},stopLocate:function(){return navigator.geolocation&&navigator.geolocation.clearWatch&&navigator.geolocation.clearWatch(this._locationWatchId),this._locateOptions&&(this._locateOptions.setView=!1),this},_handleGeolocationError:function(t){if(this._container._leaflet_id){var i=t.code,e=t.message||(1===i?"permission denied":2===i?"position unavailable":"timeout");this._locateOptions.setView&&!this._loaded&&this.fitWorld(),this.fire("locationerror",{code:i,message:"Geolocation error: "+e+"."})}},_handleGeolocationResponse:function(t){if(this._container._leaflet_id){var i=new N(t.coords.latitude,t.coords.longitude),e=i.toBounds(2*t.coords.accuracy),n=this._locateOptions;if(n.setView){var o=this.getBoundsZoom(e);this.setView(i,n.maxZoom?Math.min(o,n.maxZoom):o)}var s={latlng:i,bounds:e,timestamp:t.timestamp};for(var r in t.coords)"number"==typeof t.coords[r]&&(s[r]=t.coords[r]);this.fire("locationfound",s)}},addHandler:function(t,i){if(!i)return this;var e=this[t]=new i(this);return this._handlers.push(e),this.options[t]&&e.enable(),this},remove:function(){if(this._initEvents(!0),this.options.maxBounds&&this.off("moveend",this._panInsideMaxBounds),this._containerId!==this._container._leaflet_id)throw new Error("Map container is being reused by another instance");try{delete this._container._leaflet_id,delete this._containerId}catch(t){this._container._leaflet_id=void 0,this._containerId=void 0}var t;for(t in void 0!==this._locationWatchId&&this.stopLocate(),this._stop(),ri(this._mapPane),this._clearControlPos&&this._clearControlPos(),this._resizeRequest&&(M(this._resizeRequest),this._resizeRequest=null),this._clearHandlers(),this._loaded&&this.fire("unload"),this._layers)this._layers[t].remove();for(t in this._panes)ri(this._panes[t]);return this._layers=[],this._panes=[],delete this._mapPane,delete this._renderer,this},createPane:function(t,i){var e=si("div","leaflet-pane"+(t?" leaflet-"+t.replace("Pane","")+"-pane":""),i||this._mapPane);return t&&(this._panes[t]=e),e},getCenter:function(){return this._checkIfLoaded(),this._lastCenter&&!this._moved()?this._lastCenter.clone():this.layerPointToLatLng(this._getCenterLayerPoint())},getZoom:function(){return this._zoom},getBounds:function(){var t=this.getPixelBounds();return new I(this.unproject(t.getBottomLeft()),this.unproject(t.getTopRight()))},getMinZoom:function(){return void 0===this.options.minZoom?this._layersMinZoom||0:this.options.minZoom},getMaxZoom:function(){return void 0===this.options.maxZoom?void 0===this._layersMaxZoom?1/0:this._layersMaxZoom:this.options.maxZoom},getBoundsZoom:function(t,i,e){t=R(t),e=O(e||[0,0]);var n=this.getZoom()||0,o=this.getMinZoom(),s=this.getMaxZoom(),r=t.getNorthWest(),a=t.getSouthEast(),h=this.getSize().subtract(e),l=B(this.project(a,n),this.project(r,n)).getSize(),u=At.any3d?this.options.zoomSnap:1,c=h.x/l.x,_=h.y/l.y,d=i?Math.max(c,_):Math.min(c,_);return n=this.getScaleZoom(d,n),u&&(n=Math.round(n/(u/100))*(u/100),n=i?Math.ceil(n/u)*u:Math.floor(n/u)*u),Math.max(o,Math.min(s,n))},getSize:function(){return this._size&&!this._sizeChanged||(this._size=new k(this._container.clientWidth||0,this._container.clientHeight||0),this._sizeChanged=!1),this._size.clone()},getPixelBounds:function(t,i){var e=this._getTopLeftPoint(t,i);return new A(e,e.add(this.getSize()))},getPixelOrigin:function(){return this._checkIfLoaded(),this._pixelOrigin},getPixelWorldBounds:function(t){return this.options.crs.getProjectedBounds(void 0===t?this.getZoom():t)},getPane:function(t){return"string"==typeof t?this._panes[t]:t},getPanes:function(){return this._panes},getContainer:function(){return this._container},getZoomScale:function(t,i){var e=this.options.crs;return i=void 0===i?this._zoom:i,e.scale(t)/e.scale(i)},getScaleZoom:function(t,i){var e=this.options.crs;i=void 0===i?this._zoom:i;var n=e.zoom(t*e.scale(i));return isNaN(n)?1/0:n},project:function(t,i){return i=void 0===i?this._zoom:i,this.options.crs.latLngToPoint(D(t),i)},unproject:function(t,i){return i=void 0===i?this._zoom:i,this.options.crs.pointToLatLng(O(t),i)},layerPointToLatLng:function(t){var i=O(t).add(this.getPixelOrigin());return this.unproject(i)},latLngToLayerPoint:function(t){return this.project(D(t))._round()._subtract(this.getPixelOrigin())},wrapLatLng:function(t){return this.options.crs.wrapLatLng(D(t))},wrapLatLngBounds:function(t){return this.options.crs.wrapLatLngBounds(R(t))},distance:function(t,i){return this.options.crs.distance(D(t),D(i))},containerPointToLayerPoint:function(t){return O(t).subtract(this._getMapPanePos())},layerPointToContainerPoint:function(t){return O(t).add(this._getMapPanePos())},containerPointToLatLng:function(t){var i=this.containerPointToLayerPoint(O(t));return this.layerPointToLatLng(i)},latLngToContainerPoint:function(t){return this.layerPointToContainerPoint(this.latLngToLayerPoint(D(t)))},mouseEventToContainerPoint:function(t){return Hi(t,this._container)},mouseEventToLayerPoint:function(t){return this.containerPointToLayerPoint(this.mouseEventToContainerPoint(t))},mouseEventToLatLng:function(t){return this.layerPointToLatLng(this.mouseEventToLayerPoint(t))},_initContainer:function(t){var i=this._container=ni(t);if(!i)throw new Error("Map container not found.");if(i._leaflet_id)throw new Error("Map container is already initialized.");Ci(i,"scroll",this._onScroll,this),this._containerId=s(i)},_initLayout:function(){var t=this._container;this._fadeAnimated=this.options.fadeAnimation&&At.any3d,ci(t,"leaflet-container"+(At.touch?" leaflet-touch":"")+(At.retina?" leaflet-retina":"")+(At.ielt9?" leaflet-oldie":"")+(At.safari?" leaflet-safari":"")+(this._fadeAnimated?" leaflet-fade-anim":""));var i=oi(t,"position");"absolute"!==i&&"relative"!==i&&"fixed"!==i&&"sticky"!==i&&(t.style.position="relative"),this._initPanes(),this._initControlPos&&this._initControlPos()},_initPanes:function(){var t=this._panes={};this._paneRenderers={},this._mapPane=this.createPane("mapPane",this._container),vi(this._mapPane,new k(0,0)),this.createPane("tilePane"),this.createPane("overlayPane"),this.createPane("shadowPane"),this.createPane("markerPane"),this.createPane("tooltipPane"),this.createPane("popupPane"),this.options.markerZoomAnimation||(ci(t.markerPane,"leaflet-zoom-hide"),ci(t.shadowPane,"leaflet-zoom-hide"))},_resetView:function(t,i,e){vi(this._mapPane,new k(0,0));var n=!this._loaded;this._loaded=!0,i=this._limitZoom(i),this.fire("viewprereset");var o=this._zoom!==i;this._moveStart(o,e)._move(t,i)._moveEnd(o),this.fire("viewreset"),n&&this.fire("load")},_moveStart:function(t,i){return t&&this.fire("zoomstart"),i||this.fire("movestart"),this},_move:function(t,i,e,n){void 0===i&&(i=this._zoom);var o=this._zoom!==i;return this._zoom=i,this._lastCenter=t,this._pixelOrigin=this._getNewPixelOrigin(t),n?e&&e.pinch&&this.fire("zoom",e):((o||e&&e.pinch)&&this.fire("zoom",e),this.fire("move",e)),this},_moveEnd:function(t){return t&&this.fire("zoomend"),this.fire("moveend")},_stop:function(){return M(this._flyToFrame),this._panAnim&&this._panAnim.stop(),this},_rawPanBy:function(t){vi(this._mapPane,this._getMapPanePos().subtract(t))},_getZoomSpan:function(){return this.getMaxZoom()-this.getMinZoom()},_panInsideMaxBounds:function(){this._enforcingBounds||this.panInsideBounds(this.options.maxBounds)},_checkIfLoaded:function(){if(!this._loaded)throw new Error("Set map center and zoom first.")},_initEvents:function(t){this._targets={},this._targets[s(this._container)]=this;var i=t?Si:Ci;i(this._container,"click dblclick mousedown mouseup mouseover mouseout mousemove contextmenu keypress keydown keyup",this._handleDOMEvent,this),this.options.trackResize&&i(window,"resize",this._onResize,this),At.any3d&&this.options.transform3DLimit&&(t?this.off:this.on).call(this,"moveend",this._onMoveEnd)},_onResize:function(){M(this._resizeRequest),this._resizeRequest=T((function(){this.invalidateSize({debounceMoveend:!0})}),this)},_onScroll:function(){this._container.scrollTop=0,this._container.scrollLeft=0},_onMoveEnd:function(){var t=this._getMapPanePos();Math.max(Math.abs(t.x),Math.abs(t.y))>=this.options.transform3DLimit&&this._resetView(this.getCenter(),this.getZoom())},_findEventTargets:function(t,i){for(var e,n=[],o="mouseout"===i||"mouseover"===i,r=t.target||t.srcElement,a=!1;r;){if((e=this._targets[s(r)])&&("click"===i||"preclick"===i)&&this._draggableMoved(e)){a=!0;break}if(e&&e.listens(i,!0)){if(o&&!Ui(r,t))break;if(n.push(e),o)break}if(r===this._container)break;r=r.parentNode}return n.length||a||o||!this.listens(i,!0)||(n=[this]),n},_isClickDisabled:function(t){for(;t&&t!==this._container;){if(t._leaflet_disable_click)return!0;t=t.parentNode}},_handleDOMEvent:function(t){var i=t.target||t.srcElement;if(!(!this._loaded||i._leaflet_disable_events||"click"===t.type&&this._isClickDisabled(i))){var e=t.type;"mousedown"===e&&Pi(i),this._fireDOMEvent(t,e)}},_mouseEvents:["click","dblclick","mouseover","mouseout","contextmenu"],_fireDOMEvent:function(t,e,n){if("click"===t.type){var o=i({},t);o.type="preclick",this._fireDOMEvent(o,o.type,n)}var s=this._findEventTargets(t,e);if(n){for(var r=[],a=0;a0?Math.round(t-i)/2:Math.max(0,Math.ceil(t))-Math.max(0,Math.floor(i))},_limitZoom:function(t){var i=this.getMinZoom(),e=this.getMaxZoom(),n=At.any3d?this.options.zoomSnap:1;return n&&(t=Math.round(t/n)*n),Math.max(i,Math.min(e,t))},_onPanTransitionStep:function(){this.fire("move")},_onPanTransitionEnd:function(){_i(this._mapPane,"leaflet-pan-anim"),this.fire("moveend")},_tryAnimatedPan:function(t,i){var e=this._getCenterOffset(t)._trunc();return!(!0!==(i&&i.animate)&&!this.getSize().contains(e)||(this.panBy(e,i),0))},_createAnimProxy:function(){var t=this._proxy=si("div","leaflet-proxy leaflet-zoom-animated");this._panes.mapPane.appendChild(t),this.on("zoomanim",(function(t){var i=ti,e=this._proxy.style[i];gi(this._proxy,this.project(t.center,t.zoom),this.getZoomScale(t.zoom,1)),e===this._proxy.style[i]&&this._animatingZoom&&this._onZoomTransitionEnd()}),this),this.on("load moveend",this._animMoveEnd,this),this._on("unload",this._destroyAnimProxy,this)},_destroyAnimProxy:function(){ri(this._proxy),this.off("load moveend",this._animMoveEnd,this),delete this._proxy},_animMoveEnd:function(){var t=this.getCenter(),i=this.getZoom();gi(this._proxy,this.project(t,i),this.getZoomScale(i,1))},_catchTransitionEnd:function(t){this._animatingZoom&&t.propertyName.indexOf("transform")>=0&&this._onZoomTransitionEnd()},_nothingToAnimate:function(){return!this._container.getElementsByClassName("leaflet-zoom-animated").length},_tryAnimatedZoom:function(t,i,e){if(this._animatingZoom)return!0;if(e=e||{},!this._zoomAnimated||!1===e.animate||this._nothingToAnimate()||Math.abs(i-this._zoom)>this.options.zoomAnimationThreshold)return!1;var n=this.getZoomScale(i),o=this._getCenterOffset(t)._divideBy(1-1/n);return!(!0!==e.animate&&!this.getSize().contains(o)||(T((function(){this._moveStart(!0,e.noMoveStart||!1)._animateZoom(t,i,!0)}),this),0))},_animateZoom:function(t,i,e,o){this._mapPane&&(e&&(this._animatingZoom=!0,this._animateToCenter=t,this._animateToZoom=i,ci(this._mapPane,"leaflet-zoom-anim")),this.fire("zoomanim",{center:t,zoom:i,noUpdate:o}),this._tempFireZoomEvent||(this._tempFireZoomEvent=this._zoom!==this._animateToZoom),this._move(this._animateToCenter,this._animateToZoom,void 0,!0),setTimeout(n(this._onZoomTransitionEnd,this),250))},_onZoomTransitionEnd:function(){this._animatingZoom&&(this._mapPane&&_i(this._mapPane,"leaflet-zoom-anim"),this._animatingZoom=!1,this._move(this._animateToCenter,this._animateToZoom,void 0,!0),this._tempFireZoomEvent&&this.fire("zoom"),delete this._tempFireZoomEvent,this.fire("move"),this._moveEnd(!0))}});var Ki=C.extend({options:{position:"topright"},initialize:function(t){_(this,t)},getPosition:function(){return this.options.position},setPosition:function(t){var i=this._map;return i&&i.removeControl(this),this.options.position=t,i&&i.addControl(this),this},getContainer:function(){return this._container},addTo:function(t){this.remove(),this._map=t;var i=this._container=this.onAdd(t),e=this.getPosition(),n=t._controlCorners[e];return ci(i,"leaflet-control"),-1!==e.indexOf("bottom")?n.insertBefore(i,n.firstChild):n.appendChild(i),this._map.on("unload",this.remove,this),this},remove:function(){return this._map?(ri(this._container),this.onRemove&&this.onRemove(this._map),this._map.off("unload",this.remove,this),this._map=null,this):this},_refocusOnMap:function(t){this._map&&t&&t.screenX>0&&t.screenY>0&&this._map.getContainer().focus()}}),Yi=function(t){return new Ki(t)};Gi.include({addControl:function(t){return t.addTo(this),this},removeControl:function(t){return t.remove(),this},_initControlPos:function(){var t=this._controlCorners={},i="leaflet-",e=this._controlContainer=si("div",i+"control-container",this._container);function n(n,o){var s=i+n+" "+i+o;t[n+o]=si("div",s,e)}n("top","left"),n("top","right"),n("bottom","left"),n("bottom","right")},_clearControlPos:function(){for(var t in this._controlCorners)ri(this._controlCorners[t]);ri(this._controlContainer),delete this._controlCorners,delete this._controlContainer}});var Xi=Ki.extend({options:{collapsed:!0,position:"topright",autoZIndex:!0,hideSingleBase:!1,sortLayers:!1,sortFunction:function(t,i,e,n){return e1,this._baseLayersList.style.display=t?"":"none"),this._separator.style.display=i&&t?"":"none",this},_onLayerChange:function(t){this._handlingClick||this._update();var i=this._getLayer(s(t.target)),e=i.overlay?"add"===t.type?"overlayadd":"overlayremove":"add"===t.type?"baselayerchange":null;e&&this._map.fire(e,i)},_createRadioElement:function(t,i){var e='",n=document.createElement("div");return n.innerHTML=e,n.firstChild},_addItem:function(t){var i,e=document.createElement("label"),n=this._map.hasLayer(t.layer);t.overlay?((i=document.createElement("input")).type="checkbox",i.className="leaflet-control-layers-selector",i.defaultChecked=n):i=this._createRadioElement("leaflet-base-layers_"+s(this),n),this._layerControlInputs.push(i),i.layerId=s(t.layer),Ci(i,"click",this._onInputClick,this);var o=document.createElement("span");o.innerHTML=" "+t.name;var r=document.createElement("span");return e.appendChild(r),r.appendChild(i),r.appendChild(o),(t.overlay?this._overlaysList:this._baseLayersList).appendChild(e),this._checkDisabledLayers(),e},_onInputClick:function(){if(!this._preventClick){var t,i,e=this._layerControlInputs,n=[],o=[];this._handlingClick=!0;for(var s=e.length-1;s>=0;s--)t=e[s],i=this._getLayer(t.layerId).layer,t.checked?n.push(i):t.checked||o.push(i);for(s=0;s=0;o--)t=e[o],i=this._getLayer(t.layerId).layer,t.disabled=void 0!==i.options.minZoom&&ni.options.maxZoom},_expandIfNotCollapsed:function(){return this._map&&!this.options.collapsed&&this.expand(),this},_expandSafely:function(){var t=this._section;this._preventClick=!0,Ci(t,"click",Ni),this.expand();var i=this;setTimeout((function(){Si(t,"click",Ni),i._preventClick=!1}))}}),Ji=Ki.extend({options:{position:"topleft",zoomInText:'',zoomInTitle:"Zoom in",zoomOutText:'',zoomOutTitle:"Zoom out"},onAdd:function(t){var i="leaflet-control-zoom",e=si("div",i+" leaflet-bar"),n=this.options;return this._zoomInButton=this._createButton(n.zoomInText,n.zoomInTitle,i+"-in",e,this._zoomIn),this._zoomOutButton=this._createButton(n.zoomOutText,n.zoomOutTitle,i+"-out",e,this._zoomOut),this._updateDisabled(),t.on("zoomend zoomlevelschange",this._updateDisabled,this),e},onRemove:function(t){t.off("zoomend zoomlevelschange",this._updateDisabled,this)},disable:function(){return this._disabled=!0,this._updateDisabled(),this},enable:function(){return this._disabled=!1,this._updateDisabled(),this},_zoomIn:function(t){!this._disabled&&this._map._zoomthis._map.getMinZoom()&&this._map.zoomOut(this._map.options.zoomDelta*(t.shiftKey?3:1))},_createButton:function(t,i,e,n,o){var s=si("a",e,n);return s.innerHTML=t,s.href="#",s.title=i,s.setAttribute("role","button"),s.setAttribute("aria-label",i),Ri(s),Ci(s,"click",Di),Ci(s,"click",o,this),Ci(s,"click",this._refocusOnMap,this),s},_updateDisabled:function(){var t=this._map,i="leaflet-disabled";_i(this._zoomInButton,i),_i(this._zoomOutButton,i),this._zoomInButton.setAttribute("aria-disabled","false"),this._zoomOutButton.setAttribute("aria-disabled","false"),(this._disabled||t._zoom===t.getMinZoom())&&(ci(this._zoomOutButton,i),this._zoomOutButton.setAttribute("aria-disabled","true")),(this._disabled||t._zoom===t.getMaxZoom())&&(ci(this._zoomInButton,i),this._zoomInButton.setAttribute("aria-disabled","true"))}});Gi.mergeOptions({zoomControl:!0}),Gi.addInitHook((function(){this.options.zoomControl&&(this.zoomControl=new Ji,this.addControl(this.zoomControl))}));var $i=Ki.extend({options:{position:"bottomleft",maxWidth:100,metric:!0,imperial:!0},onAdd:function(t){var i="leaflet-control-scale",e=si("div",i),n=this.options;return this._addScales(n,i+"-line",e),t.on(n.updateWhenIdle?"moveend":"move",this._update,this),t.whenReady(this._update,this),e},onRemove:function(t){t.off(this.options.updateWhenIdle?"moveend":"move",this._update,this)},_addScales:function(t,i,e){t.metric&&(this._mScale=si("div",i,e)),t.imperial&&(this._iScale=si("div",i,e))},_update:function(){var t=this._map,i=t.getSize().y/2,e=t.distance(t.containerPointToLatLng([0,i]),t.containerPointToLatLng([this.options.maxWidth,i]));this._updateScales(e)},_updateScales:function(t){this.options.metric&&t&&this._updateMetric(t),this.options.imperial&&t&&this._updateImperial(t)},_updateMetric:function(t){var i=this._getRoundNum(t),e=i<1e3?i+" m":i/1e3+" km";this._updateScale(this._mScale,e,i/t)},_updateImperial:function(t){var i,e,n,o=3.2808399*t;o>5280?(i=o/5280,e=this._getRoundNum(i),this._updateScale(this._iScale,e+" mi",e/i)):(n=this._getRoundNum(o),this._updateScale(this._iScale,n+" ft",n/o))},_updateScale:function(t,i,e){t.style.width=Math.round(this.options.maxWidth*e)+"px",t.innerHTML=i},_getRoundNum:function(t){var i=Math.pow(10,(Math.floor(t)+"").length-1),e=t/i;return i*(e>=10?10:e>=5?5:e>=3?3:e>=2?2:1)}}),Qi=Ki.extend({options:{position:"bottomright",prefix:''+(At.inlineSvg?' ':"")+"Leaflet"},initialize:function(t){_(this,t),this._attributions={}},onAdd:function(t){for(var i in t.attributionControl=this,this._container=si("div","leaflet-control-attribution"),Ri(this._container),t._layers)t._layers[i].getAttribution&&this.addAttribution(t._layers[i].getAttribution());return this._update(),t.on("layeradd",this._addAttribution,this),this._container},onRemove:function(t){t.off("layeradd",this._addAttribution,this)},_addAttribution:function(t){t.layer.getAttribution&&(this.addAttribution(t.layer.getAttribution()),t.layer.once("remove",(function(){this.removeAttribution(t.layer.getAttribution())}),this))},setPrefix:function(t){return this.options.prefix=t,this._update(),this},addAttribution:function(t){return t?(this._attributions[t]||(this._attributions[t]=0),this._attributions[t]++,this._update(),this):this},removeAttribution:function(t){return t?(this._attributions[t]&&(this._attributions[t]--,this._update()),this):this},_update:function(){if(this._map){var t=[];for(var i in this._attributions)this._attributions[i]&&t.push(i);var e=[];this.options.prefix&&e.push(this.options.prefix),t.length&&e.push(t.join(", ")),this._container.innerHTML=e.join(' ')}}});Gi.mergeOptions({attributionControl:!0}),Gi.addInitHook((function(){this.options.attributionControl&&(new Qi).addTo(this)}));Ki.Layers=Xi,Ki.Zoom=Ji,Ki.Scale=$i,Ki.Attribution=Qi,Yi.layers=function(t,i,e){return new Xi(t,i,e)},Yi.zoom=function(t){return new Ji(t)},Yi.scale=function(t){return new $i(t)},Yi.attribution=function(t){return new Qi(t)};var te=C.extend({initialize:function(t){this._map=t},enable:function(){return this._enabled||(this._enabled=!0,this.addHooks()),this},disable:function(){return this._enabled?(this._enabled=!1,this.removeHooks(),this):this},enabled:function(){return!!this._enabled}});te.addTo=function(t,i){return t.addHandler(i,this),this};var ie={Events:Z},ee=At.touch?"touchstart mousedown":"mousedown",ne=S.extend({options:{clickTolerance:3},initialize:function(t,i,e,n){_(this,n),this._element=t,this._dragStartTarget=i||t,this._preventOutline=e},enable:function(){this._enabled||(Ci(this._dragStartTarget,ee,this._onDown,this),this._enabled=!0)},disable:function(){this._enabled&&(ne._dragging===this&&this.finishDrag(!0),Si(this._dragStartTarget,ee,this._onDown,this),this._enabled=!1,this._moved=!1)},_onDown:function(t){if(this._enabled&&(this._moved=!1,!ui(this._element,"leaflet-zoom-anim")))if(t.touches&&1!==t.touches.length)ne._dragging===this&&this.finishDrag();else if(!(ne._dragging||t.shiftKey||1!==t.which&&1!==t.button&&!t.touches||(ne._dragging=this,this._preventOutline&&Pi(this._element),wi(),Yt(),this._moving))){this.fire("down");var i=t.touches?t.touches[0]:t,e=Ti(this._element);this._startPoint=new k(i.clientX,i.clientY),this._startPos=yi(this._element),this._parentScale=Mi(e);var n="mousedown"===t.type;Ci(document,n?"mousemove":"touchmove",this._onMove,this),Ci(document,n?"mouseup":"touchend touchcancel",this._onUp,this)}},_onMove:function(t){if(this._enabled)if(t.touches&&t.touches.length>1)this._moved=!0;else{var i=t.touches&&1===t.touches.length?t.touches[0]:t,e=new k(i.clientX,i.clientY)._subtract(this._startPoint);(e.x||e.y)&&(Math.abs(e.x)+Math.abs(e.y)i&&(e.push(t[n]),o=n);return oh&&(s=r,h=a);h>e&&(i[s]=1,ce(t,i,e,n,s),ce(t,i,e,s,o))}function _e(t,i,e,n,o){var s,r,a,h=n?ae:pe(t,e),l=pe(i,e);for(ae=l;;){if(!(h|l))return[t,i];if(h&l)return!1;a=pe(r=de(t,i,s=h||l,e,o),e),s===h?(t=r,h=a):(i=r,l=a)}}function de(t,i,e,n,o){var s,r,a=i.x-t.x,h=i.y-t.y,l=n.min,u=n.max;return 8&e?(s=t.x+a*(u.y-t.y)/h,r=u.y):4&e?(s=t.x+a*(l.y-t.y)/h,r=l.y):2&e?(s=u.x,r=t.y+h*(u.x-t.x)/a):1&e&&(s=l.x,r=t.y+h*(l.x-t.x)/a),new k(s,r,o)}function pe(t,i){var e=0;return t.xi.max.x&&(e|=2),t.yi.max.y&&(e|=8),e}function me(t,i){var e=i.x-t.x,n=i.y-t.y;return e*e+n*n}function fe(t,i,e,n){var o,s=i.x,r=i.y,a=e.x-s,h=e.y-r,l=a*a+h*h;return l>0&&((o=((t.x-s)*a+(t.y-r)*h)/l)>1?(s=e.x,r=e.y):o>0&&(s+=a*o,r+=h*o)),a=t.x-s,h=t.y-r,n?a*a+h*h:new k(s,r)}function ge(t){return!f(t[0])||"object"!=typeof t[0][0]&&void 0!==t[0][0]}function ve(t){return console.warn("Deprecated use of _flat, please use L.LineUtil.isFlat instead."),ge(t)}function ye(t,i){var e,n,o,s,r,a,h,l;if(!t||0===t.length)throw new Error("latlngs not passed");ge(t)||(console.warn("latlngs are not flat! Only the first ring will be used"),t=t[0]);var u=D([0,0]),c=R(t);c.getNorthWest().distanceTo(c.getSouthWest())*c.getNorthEast().distanceTo(c.getNorthWest())<1700&&(u=re(t));var _=t.length,d=[];for(e=0;e<_;e++){var p=D(t[e]);d.push(i.project(D([p.lat-u.lat,p.lng-u.lng])))}for(e=0,n=0;e<_-1;e++)n+=d[e].distanceTo(d[e+1])/2;if(0===n)l=d[0];else for(e=0,s=0;e<_-1;e++)if(r=d[e],a=d[e+1],(s+=o=r.distanceTo(a))>n){h=(s-n)/o,l=[a.x-h*(a.x-r.x),a.y-h*(a.y-r.y)];break}var m=i.unproject(O(l));return D([m.lat+u.lat,m.lng+u.lng])}var xe={__proto__:null,simplify:le,pointToSegmentDistance:ue,closestPointOnSegment:function(t,i,e){return fe(t,i,e)},clipSegment:_e,_getEdgeIntersection:de,_getBitCode:pe,_sqClosestPointOnSegment:fe,isFlat:ge,_flat:ve,polylineCenter:ye},we={project:function(t){return new k(t.lng,t.lat)},unproject:function(t){return new N(t.y,t.x)},bounds:new A([-180,-90],[180,90])},be={R:6378137,R_MINOR:6356752.314245179,bounds:new A([-20037508.34279,-15496570.73972],[20037508.34279,18764656.23138]),project:function(t){var i=Math.PI/180,e=this.R,n=t.lat*i,o=this.R_MINOR/e,s=Math.sqrt(1-o*o),r=s*Math.sin(n),a=Math.tan(Math.PI/4-n/2)/Math.pow((1-r)/(1+r),s/2);return n=-e*Math.log(Math.max(a,1e-10)),new k(t.lng*i*e,n)},unproject:function(t){for(var i,e=180/Math.PI,n=this.R,o=this.R_MINOR/n,s=Math.sqrt(1-o*o),r=Math.exp(-t.y/n),a=Math.PI/2-2*Math.atan(r),h=0,l=.1;h<15&&Math.abs(l)>1e-7;h++)i=s*Math.sin(a),i=Math.pow((1-i)/(1+i),s/2),a+=l=Math.PI/2-2*Math.atan(r*i)-a;return new N(a*e,t.x*e/n)}},Pe={__proto__:null,LonLat:we,Mercator:be,SphericalMercator:U},Le=i({},W,{code:"EPSG:3395",projection:be,transformation:function(){var t=.5/(Math.PI*be.R);return q(t,.5,-t,.5)}()}),Te=i({},W,{code:"EPSG:4326",projection:we,transformation:q(1/180,1,-1/180,.5)}),Me=i({},H,{projection:we,transformation:q(1,0,-1,0),scale:function(t){return Math.pow(2,t)},zoom:function(t){return Math.log(t)/Math.LN2},distance:function(t,i){var e=i.lng-t.lng,n=i.lat-t.lat;return Math.sqrt(e*e+n*n)},infinite:!0});H.Earth=W,H.EPSG3395=Le,H.EPSG3857=G,H.EPSG900913=K,H.EPSG4326=Te,H.Simple=Me;var ze=S.extend({options:{pane:"overlayPane",attribution:null,bubblingMouseEvents:!0},addTo:function(t){return t.addLayer(this),this},remove:function(){return this.removeFrom(this._map||this._mapToAdd)},removeFrom:function(t){return t&&t.removeLayer(this),this},getPane:function(t){return this._map.getPane(t?this.options[t]||t:this.options.pane)},addInteractiveTarget:function(t){return this._map._targets[s(t)]=this,this},removeInteractiveTarget:function(t){return delete this._map._targets[s(t)],this},getAttribution:function(){return this.options.attribution},_layerAdd:function(t){var i=t.target;if(i.hasLayer(this)){if(this._map=i,this._zoomAnimated=i._zoomAnimated,this.getEvents){var e=this.getEvents();i.on(e,this),this.once("remove",(function(){i.off(e,this)}),this)}this.onAdd(i),this.fire("add"),i.fire("layeradd",{layer:this})}}});Gi.include({addLayer:function(t){if(!t._layerAdd)throw new Error("The provided object is not a Layer.");var i=s(t);return this._layers[i]||(this._layers[i]=t,t._mapToAdd=this,t.beforeAdd&&t.beforeAdd(this),this.whenReady(t._layerAdd,t)),this},removeLayer:function(t){var i=s(t);return this._layers[i]?(this._loaded&&t.onRemove(this),delete this._layers[i],this._loaded&&(this.fire("layerremove",{layer:t}),t.fire("remove")),t._map=t._mapToAdd=null,this):this},hasLayer:function(t){return s(t)in this._layers},eachLayer:function(t,i){for(var e in this._layers)t.call(i,this._layers[e]);return this},_addLayers:function(t){for(var i=0,e=(t=t?f(t)?t:[t]:[]).length;ithis._layersMaxZoom&&this.setZoom(this._layersMaxZoom),void 0===this.options.minZoom&&this._layersMinZoom&&this.getZoom()=2&&i[0]instanceof N&&i[0].equals(i[e-1])&&i.pop(),i},_setLatLngs:function(t){Re.prototype._setLatLngs.call(this,t),ge(this._latlngs)&&(this._latlngs=[this._latlngs])},_defaultShape:function(){return ge(this._latlngs[0])?this._latlngs[0]:this._latlngs[0][0]},_clipPoints:function(){var t=this._renderer._bounds,i=this.options.weight,e=new k(i,i);if(t=new A(t.min.subtract(e),t.max.add(e)),this._parts=[],this._pxBounds&&this._pxBounds.intersects(t))if(this.options.noClip)this._parts=this._rings;else for(var n,o=0,s=this._rings.length;ot.y!=n.y>t.y&&t.x<(n.x-e.x)*(t.y-e.y)/(n.y-e.y)+e.x&&(l=!l);return l||Re.prototype._containsPoint.call(this,t,!0)}});var De=Ze.extend({initialize:function(t,i){_(this,i),this._layers={},t&&this.addData(t)},addData:function(t){var i,e,n,o=f(t)?t:t.features;if(o){for(i=0,e=o.length;i0&&o.push(o[0].slice()),o}function qe(t,e){return t.feature?i({},t.feature,{geometry:e}):Ge(e)}function Ge(t){return"Feature"===t.type||"FeatureCollection"===t.type?t:{type:"Feature",properties:{},geometry:t}}var Ke={toGeoJSON:function(t){return qe(this,{type:"Point",coordinates:Ue(this.getLatLng(),t)})}};function Ye(t,i){return new De(t,i)}Oe.include(Ke),Ie.include(Ke),Be.include(Ke),Re.include({toGeoJSON:function(t){var i=!ge(this._latlngs);return qe(this,{type:(i?"Multi":"")+"LineString",coordinates:Ve(this._latlngs,i?1:0,!1,t)})}}),Ne.include({toGeoJSON:function(t){var i=!ge(this._latlngs),e=i&&!ge(this._latlngs[0]),n=Ve(this._latlngs,e?2:i?1:0,!0,t);return i||(n=[n]),qe(this,{type:(e?"Multi":"")+"Polygon",coordinates:n})}}),Ce.include({toMultiPoint:function(t){var i=[];return this.eachLayer((function(e){i.push(e.toGeoJSON(t).geometry.coordinates)})),qe(this,{type:"MultiPoint",coordinates:i})},toGeoJSON:function(t){var i=this.feature&&this.feature.geometry&&this.feature.geometry.type;if("MultiPoint"===i)return this.toMultiPoint(t);var e="GeometryCollection"===i,n=[];return this.eachLayer((function(i){if(i.toGeoJSON){var o=i.toGeoJSON(t);if(e)n.push(o.geometry);else{var s=Ge(o);"FeatureCollection"===s.type?n.push.apply(n,s.features):n.push(s)}}})),e?qe(this,{geometries:n,type:"GeometryCollection"}):{type:"FeatureCollection",features:n}}});var Xe=Ye,Je=ze.extend({options:{opacity:1,alt:"",interactive:!1,crossOrigin:!1,errorOverlayUrl:"",zIndex:1,className:""},initialize:function(t,i,e){this._url=t,this._bounds=R(i),_(this,e)},onAdd:function(){this._image||(this._initImage(),this.options.opacity<1&&this._updateOpacity()),this.options.interactive&&(ci(this._image,"leaflet-interactive"),this.addInteractiveTarget(this._image)),this.getPane().appendChild(this._image),this._reset()},onRemove:function(){ri(this._image),this.options.interactive&&this.removeInteractiveTarget(this._image)},setOpacity:function(t){return this.options.opacity=t,this._image&&this._updateOpacity(),this},setStyle:function(t){return t.opacity&&this.setOpacity(t.opacity),this},bringToFront:function(){return this._map&&hi(this._image),this},bringToBack:function(){return this._map&&li(this._image),this},setUrl:function(t){return this._url=t,this._image&&(this._image.src=t),this},setBounds:function(t){return this._bounds=R(t),this._map&&this._reset(),this},getEvents:function(){var t={zoom:this._reset,viewreset:this._reset};return this._zoomAnimated&&(t.zoomanim=this._animateZoom),t},setZIndex:function(t){return this.options.zIndex=t,this._updateZIndex(),this},getBounds:function(){return this._bounds},getElement:function(){return this._image},_initImage:function(){var t="IMG"===this._url.tagName,i=this._image=t?this._url:si("img");ci(i,"leaflet-image-layer"),this._zoomAnimated&&ci(i,"leaflet-zoom-animated"),this.options.className&&ci(i,this.options.className),i.onselectstart=h,i.onmousemove=h,i.onload=n(this.fire,this,"load"),i.onerror=n(this._overlayOnError,this,"error"),(this.options.crossOrigin||""===this.options.crossOrigin)&&(i.crossOrigin=!0===this.options.crossOrigin?"":this.options.crossOrigin),this.options.zIndex&&this._updateZIndex(),t?this._url=i.src:(i.src=this._url,i.alt=this.options.alt)},_animateZoom:function(t){var i=this._map.getZoomScale(t.zoom),e=this._map._latLngBoundsToNewLayerBounds(this._bounds,t.zoom,t.center).min;gi(this._image,e,i)},_reset:function(){var t=this._image,i=new A(this._map.latLngToLayerPoint(this._bounds.getNorthWest()),this._map.latLngToLayerPoint(this._bounds.getSouthEast())),e=i.getSize();vi(t,i.min),t.style.width=e.x+"px",t.style.height=e.y+"px"},_updateOpacity:function(){mi(this._image,this.options.opacity)},_updateZIndex:function(){this._image&&void 0!==this.options.zIndex&&null!==this.options.zIndex&&(this._image.style.zIndex=this.options.zIndex)},_overlayOnError:function(){this.fire("error");var t=this.options.errorOverlayUrl;t&&this._url!==t&&(this._url=t,this._image.src=t)},getCenter:function(){return this._bounds.getCenter()}}),$e=Je.extend({options:{autoplay:!0,loop:!0,keepAspectRatio:!0,muted:!1,playsInline:!0},_initImage:function(){var t="VIDEO"===this._url.tagName,i=this._image=t?this._url:si("video");if(ci(i,"leaflet-image-layer"),this._zoomAnimated&&ci(i,"leaflet-zoom-animated"),this.options.className&&ci(i,this.options.className),i.onselectstart=h,i.onmousemove=h,i.onloadeddata=n(this.fire,this,"load"),t){for(var e=i.getElementsByTagName("source"),o=[],s=0;s0?o:[i.src]}else{f(this._url)||(this._url=[this._url]),!this.options.keepAspectRatio&&Object.prototype.hasOwnProperty.call(i.style,"objectFit")&&(i.style.objectFit="fill"),i.autoplay=!!this.options.autoplay,i.loop=!!this.options.loop,i.muted=!!this.options.muted,i.playsInline=!!this.options.playsInline;for(var r=0;ro?(i.height=o+"px",ci(t,s)):_i(t,s),this._containerWidth=this._container.offsetWidth},_animateZoom:function(t){var i=this._map._latLngToNewLayerPoint(this._latlng,t.zoom,t.center),e=this._getAnchor();vi(this._container,i.add(e))},_adjustPan:function(){if(this.options.autoPan)if(this._map._panAnim&&this._map._panAnim.stop(),this._autopanning)this._autopanning=!1;else{var t=this._map,i=parseInt(oi(this._container,"marginBottom"),10)||0,e=this._container.offsetHeight+i,n=this._containerWidth,o=new k(this._containerLeft,-e-this._containerBottom);o._add(yi(this._container));var s=t.layerPointToContainerPoint(o),r=O(this.options.autoPanPadding),a=O(this.options.autoPanPaddingTopLeft||r),h=O(this.options.autoPanPaddingBottomRight||r),l=t.getSize(),u=0,c=0;s.x+n+h.x>l.x&&(u=s.x+n-l.x+h.x),s.x-u-a.x<0&&(u=s.x-a.x),s.y+e+h.y>l.y&&(c=s.y+e-l.y+h.y),s.y-c-a.y<0&&(c=s.y-a.y),(u||c)&&(this.options.keepInView&&(this._autopanning=!0),t.fire("autopanstart").panBy([u,c]))}},_getAnchor:function(){return O(this._source&&this._source._getPopupAnchor?this._source._getPopupAnchor():[0,0])}});Gi.mergeOptions({closePopupOnClick:!0}),Gi.include({openPopup:function(t,i,e){return this._initOverlay(en,t,i,e).openOn(this),this},closePopup:function(t){return(t=arguments.length?t:this._popup)&&t.close(),this}}),ze.include({bindPopup:function(t,i){return this._popup=this._initOverlay(en,this._popup,t,i),this._popupHandlersAdded||(this.on({click:this._openPopup,keypress:this._onKeyPress,remove:this.closePopup,move:this._movePopup}),this._popupHandlersAdded=!0),this},unbindPopup:function(){return this._popup&&(this.off({click:this._openPopup,keypress:this._onKeyPress,remove:this.closePopup,move:this._movePopup}),this._popupHandlersAdded=!1,this._popup=null),this},openPopup:function(t){return this._popup&&(this instanceof Ze||(this._popup._source=this),this._popup._prepareOpen(t||this._latlng)&&this._popup.openOn(this._map)),this},closePopup:function(){return this._popup&&this._popup.close(),this},togglePopup:function(){return this._popup&&this._popup.toggle(this),this},isPopupOpen:function(){return!!this._popup&&this._popup.isOpen()},setPopupContent:function(t){return this._popup&&this._popup.setContent(t),this},getPopup:function(){return this._popup},_openPopup:function(t){if(this._popup&&this._map){Di(t);var i=t.layer||t.target;this._popup._source!==i||i instanceof Ae?(this._popup._source=i,this.openPopup(t.latlng)):this._map.hasLayer(this._popup)?this.closePopup():this.openPopup(t.latlng)}},_movePopup:function(t){this._popup.setLatLng(t.latlng)},_onKeyPress:function(t){13===t.originalEvent.keyCode&&this._openPopup(t)}});var nn=tn.extend({options:{pane:"tooltipPane",offset:[0,0],direction:"auto",permanent:!1,sticky:!1,opacity:.9},onAdd:function(t){tn.prototype.onAdd.call(this,t),this.setOpacity(this.options.opacity),t.fire("tooltipopen",{tooltip:this}),this._source&&(this.addEventParent(this._source),this._source.fire("tooltipopen",{tooltip:this},!0))},onRemove:function(t){tn.prototype.onRemove.call(this,t),t.fire("tooltipclose",{tooltip:this}),this._source&&(this.removeEventParent(this._source),this._source.fire("tooltipclose",{tooltip:this},!0))},getEvents:function(){var t=tn.prototype.getEvents.call(this);return this.options.permanent||(t.preclick=this.close),t},_initLayout:function(){var t="leaflet-tooltip "+(this.options.className||"")+" leaflet-zoom-"+(this._zoomAnimated?"animated":"hide");this._contentNode=this._container=si("div",t),this._container.setAttribute("role","tooltip"),this._container.setAttribute("id","leaflet-tooltip-"+s(this))},_updateLayout:function(){},_adjustPan:function(){},_setPosition:function(t){var i,e,n=this._map,o=this._container,s=n.latLngToContainerPoint(n.getCenter()),r=n.layerPointToContainerPoint(t),a=this.options.direction,h=o.offsetWidth,l=o.offsetHeight,u=O(this.options.offset),c=this._getAnchor();"top"===a?(i=h/2,e=l):"bottom"===a?(i=h/2,e=0):"center"===a?(i=h/2,e=l/2):"right"===a?(i=0,e=l/2):"left"===a?(i=h,e=l/2):r.xthis.options.maxZoom||en&&this._retainParent(o,s,r,n))},_retainChildren:function(t,i,e,n){for(var o=2*t;o<2*t+2;o++)for(var s=2*i;s<2*i+2;s++){var r=new k(o,s);r.z=e+1;var a=this._tileCoordsToKey(r),h=this._tiles[a];h&&h.active?h.retain=!0:(h&&h.loaded&&(h.retain=!0),e+1this.options.maxZoom||void 0!==this.options.minZoom&&o1)this._setView(t,e);else{for(var c=o.min.y;c<=o.max.y;c++)for(var _=o.min.x;_<=o.max.x;_++){var d=new k(_,c);if(d.z=this._tileZoom,this._isValidTile(d)){var p=this._tiles[this._tileCoordsToKey(d)];p?p.current=!0:r.push(d)}}if(r.sort((function(t,i){return t.distanceTo(s)-i.distanceTo(s)})),0!==r.length){this._loading||(this._loading=!0,this.fire("loading"));var m=document.createDocumentFragment();for(_=0;_e.max.x)||!i.wrapLat&&(t.ye.max.y))return!1}if(!this.options.bounds)return!0;var n=this._tileCoordsToBounds(t);return R(this.options.bounds).overlaps(n)},_keyToBounds:function(t){return this._tileCoordsToBounds(this._keyToTileCoords(t))},_tileCoordsToNwSe:function(t){var i=this._map,e=this.getTileSize(),n=t.scaleBy(e),o=n.add(e);return[i.unproject(n,t.z),i.unproject(o,t.z)]},_tileCoordsToBounds:function(t){var i=this._tileCoordsToNwSe(t),e=new I(i[0],i[1]);return this.options.noWrap||(e=this._map.wrapLatLngBounds(e)),e},_tileCoordsToKey:function(t){return t.x+":"+t.y+":"+t.z},_keyToTileCoords:function(t){var i=t.split(":"),e=new k(+i[0],+i[1]);return e.z=+i[2],e},_removeTile:function(t){var i=this._tiles[t];i&&(ri(i.el),delete this._tiles[t],this.fire("tileunload",{tile:i.el,coords:this._keyToTileCoords(t)}))},_initTile:function(t){ci(t,"leaflet-tile");var i=this.getTileSize();t.style.width=i.x+"px",t.style.height=i.y+"px",t.onselectstart=h,t.onmousemove=h,At.ielt9&&this.options.opacity<1&&mi(t,this.options.opacity)},_addTile:function(t,i){var e=this._getTilePos(t),o=this._tileCoordsToKey(t),s=this.createTile(this._wrapCoords(t),n(this._tileReady,this,t));this._initTile(s),this.createTile.length<2&&T(n(this._tileReady,this,t,null,s)),vi(s,e),this._tiles[o]={el:s,coords:t,current:!0},i.appendChild(s),this.fire("tileloadstart",{tile:s,coords:t})},_tileReady:function(t,i,e){i&&this.fire("tileerror",{error:i,tile:e,coords:t});var o=this._tileCoordsToKey(t);(e=this._tiles[o])&&(e.loaded=+new Date,this._map._fadeAnimated?(mi(e.el,0),M(this._fadeFrame),this._fadeFrame=T(this._updateOpacity,this)):(e.active=!0,this._pruneTiles()),i||(ci(e.el,"leaflet-tile-loaded"),this.fire("tileload",{tile:e.el,coords:t})),this._noTilesToLoad()&&(this._loading=!1,this.fire("load"),At.ielt9||!this._map._fadeAnimated?T(this._pruneTiles,this):setTimeout(n(this._pruneTiles,this),250)))},_getTilePos:function(t){return t.scaleBy(this.getTileSize()).subtract(this._level.origin)},_wrapCoords:function(t){var i=new k(this._wrapX?a(t.x,this._wrapX):t.x,this._wrapY?a(t.y,this._wrapY):t.y);return i.z=t.z,i},_pxBoundsToTileRange:function(t){var i=this.getTileSize();return new A(t.min.unscaleBy(i).floor(),t.max.unscaleBy(i).ceil().subtract([1,1]))},_noTilesToLoad:function(){for(var t in this._tiles)if(!this._tiles[t].loaded)return!1;return!0}});var rn=sn.extend({options:{minZoom:0,maxZoom:18,subdomains:"abc",errorTileUrl:"",zoomOffset:0,tms:!1,zoomReverse:!1,detectRetina:!1,crossOrigin:!1,referrerPolicy:!1},initialize:function(t,i){this._url=t,(i=_(this,i)).detectRetina&&At.retina&&i.maxZoom>0?(i.tileSize=Math.floor(i.tileSize/2),i.zoomReverse?(i.zoomOffset--,i.minZoom=Math.min(i.maxZoom,i.minZoom+1)):(i.zoomOffset++,i.maxZoom=Math.max(i.minZoom,i.maxZoom-1)),i.minZoom=Math.max(0,i.minZoom)):i.zoomReverse?i.minZoom=Math.min(i.maxZoom,i.minZoom):i.maxZoom=Math.max(i.minZoom,i.maxZoom),"string"==typeof i.subdomains&&(i.subdomains=i.subdomains.split("")),this.on("tileunload",this._onTileRemove)},setUrl:function(t,i){return this._url===t&&void 0===i&&(i=!0),this._url=t,i||this.redraw(),this},createTile:function(t,i){var e=document.createElement("img");return Ci(e,"load",n(this._tileOnLoad,this,i,e)),Ci(e,"error",n(this._tileOnError,this,i,e)),(this.options.crossOrigin||""===this.options.crossOrigin)&&(e.crossOrigin=!0===this.options.crossOrigin?"":this.options.crossOrigin),"string"==typeof this.options.referrerPolicy&&(e.referrerPolicy=this.options.referrerPolicy),e.alt="",e.src=this.getTileUrl(t),e},getTileUrl:function(t){var e={r:At.retina?"@2x":"",s:this._getSubdomain(t),x:t.x,y:t.y,z:this._getZoomForUrl()};if(this._map&&!this._map.options.crs.infinite){var n=this._globalTileRange.max.y-t.y;this.options.tms&&(e.y=n),e["-y"]=n}return m(this._url,i(e,this.options))},_tileOnLoad:function(t,i){At.ielt9?setTimeout(n(t,this,null,i),0):t(null,i)},_tileOnError:function(t,i,e){var n=this.options.errorTileUrl;n&&i.getAttribute("src")!==n&&(i.src=n),t(e,i)},_onTileRemove:function(t){t.tile.onload=null},_getZoomForUrl:function(){var t=this._tileZoom,i=this.options.maxZoom;return this.options.zoomReverse&&(t=i-t),t+this.options.zoomOffset},_getSubdomain:function(t){var i=Math.abs(t.x+t.y)%this.options.subdomains.length;return this.options.subdomains[i]},_abortLoading:function(){var t,i;for(t in this._tiles)if(this._tiles[t].coords.z!==this._tileZoom&&((i=this._tiles[t].el).onload=h,i.onerror=h,!i.complete)){i.src=v;var e=this._tiles[t].coords;ri(i),delete this._tiles[t],this.fire("tileabort",{tile:i,coords:e})}},_removeTile:function(t){var i=this._tiles[t];if(i)return i.el.setAttribute("src",v),sn.prototype._removeTile.call(this,t)},_tileReady:function(t,i,e){if(this._map&&(!e||e.getAttribute("src")!==v))return sn.prototype._tileReady.call(this,t,i,e)}});function an(t,i){return new rn(t,i)}var hn=rn.extend({defaultWmsParams:{service:"WMS",request:"GetMap",layers:"",styles:"",format:"image/jpeg",transparent:!1,version:"1.1.1"},options:{crs:null,uppercase:!1},initialize:function(t,e){this._url=t;var n=i({},this.defaultWmsParams);for(var o in e)o in this.options||(n[o]=e[o]);var s=(e=_(this,e)).detectRetina&&At.retina?2:1,r=this.getTileSize();n.width=r.x*s,n.height=r.y*s,this.wmsParams=n},onAdd:function(t){this._crs=this.options.crs||t.options.crs,this._wmsVersion=parseFloat(this.wmsParams.version);var i=this._wmsVersion>=1.3?"crs":"srs";this.wmsParams[i]=this._crs.code,rn.prototype.onAdd.call(this,t)},getTileUrl:function(t){var i=this._tileCoordsToNwSe(t),e=this._crs,n=B(e.project(i[0]),e.project(i[1])),o=n.min,s=n.max,r=(this._wmsVersion>=1.3&&this._crs===Te?[o.y,o.x,s.y,s.x]:[o.x,o.y,s.x,s.y]).join(","),a=rn.prototype.getTileUrl.call(this,t);return a+d(this.wmsParams,a,this.options.uppercase)+(this.options.uppercase?"&BBOX=":"&bbox=")+r},setParams:function(t,e){return i(this.wmsParams,t),e||this.redraw(),this}});rn.WMS=hn,an.wms=function(t,i){return new hn(t,i)};var ln=ze.extend({options:{padding:.1},initialize:function(t){_(this,t),s(this),this._layers=this._layers||{}},onAdd:function(){this._container||(this._initContainer(),ci(this._container,"leaflet-zoom-animated")),this.getPane().appendChild(this._container),this._update(),this.on("update",this._updatePaths,this)},onRemove:function(){this.off("update",this._updatePaths,this),this._destroyContainer()},getEvents:function(){var t={viewreset:this._reset,zoom:this._onZoom,moveend:this._update,zoomend:this._onZoomEnd};return this._zoomAnimated&&(t.zoomanim=this._onAnimZoom),t},_onAnimZoom:function(t){this._updateTransform(t.center,t.zoom)},_onZoom:function(){this._updateTransform(this._map.getCenter(),this._map.getZoom())},_updateTransform:function(t,i){var e=this._map.getZoomScale(i,this._zoom),n=this._map.getSize().multiplyBy(.5+this.options.padding),o=this._map.project(this._center,i),s=n.multiplyBy(-e).add(o).subtract(this._map._getNewPixelOrigin(t,i));At.any3d?gi(this._container,s,e):vi(this._container,s)},_reset:function(){for(var t in this._update(),this._updateTransform(this._center,this._zoom),this._layers)this._layers[t]._reset()},_onZoomEnd:function(){for(var t in this._layers)this._layers[t]._project()},_updatePaths:function(){for(var t in this._layers)this._layers[t]._update()},_update:function(){var t=this.options.padding,i=this._map.getSize(),e=this._map.containerPointToLayerPoint(i.multiplyBy(-t)).round();this._bounds=new A(e,e.add(i.multiplyBy(1+2*t)).round()),this._center=this._map.getCenter(),this._zoom=this._map.getZoom()}}),un=ln.extend({options:{tolerance:0},getEvents:function(){var t=ln.prototype.getEvents.call(this);return t.viewprereset=this._onViewPreReset,t},_onViewPreReset:function(){this._postponeUpdatePaths=!0},onAdd:function(){ln.prototype.onAdd.call(this),this._draw()},_initContainer:function(){var t=this._container=document.createElement("canvas");Ci(t,"mousemove",this._onMouseMove,this),Ci(t,"click dblclick mousedown mouseup contextmenu",this._onClick,this),Ci(t,"mouseout",this._handleMouseOut,this),t._leaflet_disable_events=!0,this._ctx=t.getContext("2d")},_destroyContainer:function(){M(this._redrawRequest),delete this._ctx,ri(this._container),Si(this._container),delete this._container},_updatePaths:function(){if(!this._postponeUpdatePaths){for(var t in this._redrawBounds=null,this._layers)this._layers[t]._update();this._redraw()}},_update:function(){if(!this._map._animatingZoom||!this._bounds){ln.prototype._update.call(this);var t=this._bounds,i=this._container,e=t.getSize(),n=At.retina?2:1;vi(i,t.min),i.width=n*e.x,i.height=n*e.y,i.style.width=e.x+"px",i.style.height=e.y+"px",At.retina&&this._ctx.scale(2,2),this._ctx.translate(-t.min.x,-t.min.y),this.fire("update")}},_reset:function(){ln.prototype._reset.call(this),this._postponeUpdatePaths&&(this._postponeUpdatePaths=!1,this._updatePaths())},_initPath:function(t){this._updateDashArray(t),this._layers[s(t)]=t;var i=t._order={layer:t,prev:this._drawLast,next:null};this._drawLast&&(this._drawLast.next=i),this._drawLast=i,this._drawFirst=this._drawFirst||this._drawLast},_addPath:function(t){this._requestRedraw(t)},_removePath:function(t){var i=t._order,e=i.next,n=i.prev;e?e.prev=n:this._drawLast=n,n?n.next=e:this._drawFirst=e,delete t._order,delete this._layers[s(t)],this._requestRedraw(t)},_updatePath:function(t){this._extendRedrawBounds(t),t._project(),t._update(),this._requestRedraw(t)},_updateStyle:function(t){this._updateDashArray(t),this._requestRedraw(t)},_updateDashArray:function(t){if("string"==typeof t.options.dashArray){var i,e,n=t.options.dashArray.split(/[, ]+/),o=[];for(e=0;e')}}catch(t){}return function(t){return document.createElement("<"+t+' xmlns="urn:schemas-microsoft.com:vml" class="lvml">')}}(),pn={_initContainer:function(){this._container=si("div","leaflet-vml-container")},_update:function(){this._map._animatingZoom||(ln.prototype._update.call(this),this.fire("update"))},_initPath:function(t){var i=t._container=dn("shape");ci(i,"leaflet-vml-shape "+(this.options.className||"")),i.coordsize="1 1",t._path=dn("path"),i.appendChild(t._path),this._updateStyle(t),this._layers[s(t)]=t},_addPath:function(t){var i=t._container;this._container.appendChild(i),t.options.interactive&&t.addInteractiveTarget(i)},_removePath:function(t){var i=t._container;ri(i),t.removeInteractiveTarget(i),delete this._layers[s(t)]},_updateStyle:function(t){var i=t._stroke,e=t._fill,n=t.options,o=t._container;o.stroked=!!n.stroke,o.filled=!!n.fill,n.stroke?(i||(i=t._stroke=dn("stroke")),o.appendChild(i),i.weight=n.weight+"px",i.color=n.color,i.opacity=n.opacity,n.dashArray?i.dashStyle=f(n.dashArray)?n.dashArray.join(" "):n.dashArray.replace(/( *, *)/g," "):i.dashStyle="",i.endcap=n.lineCap.replace("butt","flat"),i.joinstyle=n.lineJoin):i&&(o.removeChild(i),t._stroke=null),n.fill?(e||(e=t._fill=dn("fill")),o.appendChild(e),e.color=n.fillColor||n.color,e.opacity=n.fillOpacity):e&&(o.removeChild(e),t._fill=null)},_updateCircle:function(t){var i=t._point.round(),e=Math.round(t._radius),n=Math.round(t._radiusY||e);this._setPath(t,t._empty()?"M0 0":"AL "+i.x+","+i.y+" "+e+","+n+" 0,23592600")},_setPath:function(t,i){t._path.v=i},_bringToFront:function(t){hi(t._container)},_bringToBack:function(t){li(t._container)}},mn=At.vml?dn:Y,fn=ln.extend({_initContainer:function(){this._container=mn("svg"),this._container.setAttribute("pointer-events","none"),this._rootGroup=mn("g"),this._container.appendChild(this._rootGroup)},_destroyContainer:function(){ri(this._container),Si(this._container),delete this._container,delete this._rootGroup,delete this._svgSize},_update:function(){if(!this._map._animatingZoom||!this._bounds){ln.prototype._update.call(this);var t=this._bounds,i=t.getSize(),e=this._container;this._svgSize&&this._svgSize.equals(i)||(this._svgSize=i,e.setAttribute("width",i.x),e.setAttribute("height",i.y)),vi(e,t.min),e.setAttribute("viewBox",[t.min.x,t.min.y,i.x,i.y].join(" ")),this.fire("update")}},_initPath:function(t){var i=t._path=mn("path");t.options.className&&ci(i,t.options.className),t.options.interactive&&ci(i,"leaflet-interactive"),this._updateStyle(t),this._layers[s(t)]=t},_addPath:function(t){this._rootGroup||this._initContainer(),this._rootGroup.appendChild(t._path),t.addInteractiveTarget(t._path)},_removePath:function(t){ri(t._path),t.removeInteractiveTarget(t._path),delete this._layers[s(t)]},_updatePath:function(t){t._project(),t._update()},_updateStyle:function(t){var i=t._path,e=t.options;i&&(e.stroke?(i.setAttribute("stroke",e.color),i.setAttribute("stroke-opacity",e.opacity),i.setAttribute("stroke-width",e.weight),i.setAttribute("stroke-linecap",e.lineCap),i.setAttribute("stroke-linejoin",e.lineJoin),e.dashArray?i.setAttribute("stroke-dasharray",e.dashArray):i.removeAttribute("stroke-dasharray"),e.dashOffset?i.setAttribute("stroke-dashoffset",e.dashOffset):i.removeAttribute("stroke-dashoffset")):i.setAttribute("stroke","none"),e.fill?(i.setAttribute("fill",e.fillColor||e.color),i.setAttribute("fill-opacity",e.fillOpacity),i.setAttribute("fill-rule",e.fillRule||"evenodd")):i.setAttribute("fill","none"))},_updatePoly:function(t,i){this._setPath(t,X(t._parts,i))},_updateCircle:function(t){var i=t._point,e=Math.max(Math.round(t._radius),1),n="a"+e+","+(Math.max(Math.round(t._radiusY),1)||e)+" 0 1,0 ",o=t._empty()?"M0 0":"M"+(i.x-e)+","+i.y+n+2*e+",0 "+n+2*-e+",0 ";this._setPath(t,o)},_setPath:function(t,i){t._path.setAttribute("d",i)},_bringToFront:function(t){hi(t._path)},_bringToBack:function(t){li(t._path)}});function gn(t){return At.svg||At.vml?new fn(t):null}At.vml&&fn.include(pn),Gi.include({getRenderer:function(t){var i=t.options.renderer||this._getPaneRenderer(t.options.pane)||this.options.renderer||this._renderer;return i||(i=this._renderer=this._createRenderer()),this.hasLayer(i)||this.addLayer(i),i},_getPaneRenderer:function(t){if("overlayPane"===t||void 0===t)return!1;var i=this._paneRenderers[t];return void 0===i&&(i=this._createRenderer({pane:t}),this._paneRenderers[t]=i),i},_createRenderer:function(t){return this.options.preferCanvas&&cn(t)||gn(t)}});var vn=Ne.extend({initialize:function(t,i){Ne.prototype.initialize.call(this,this._boundsToLatLngs(t),i)},setBounds:function(t){return this.setLatLngs(this._boundsToLatLngs(t))},_boundsToLatLngs:function(t){return[(t=R(t)).getSouthWest(),t.getNorthWest(),t.getNorthEast(),t.getSouthEast()]}});fn.create=mn,fn.pointsToPath=X,De.geometryToLayer=je,De.coordsToLatLng=We,De.coordsToLatLngs=Fe,De.latLngToCoords=Ue,De.latLngsToCoords=Ve,De.getFeature=qe,De.asFeature=Ge,Gi.mergeOptions({boxZoom:!0});var yn=te.extend({initialize:function(t){this._map=t,this._container=t._container,this._pane=t._panes.overlayPane,this._resetStateTimeout=0,t.on("unload",this._destroy,this)},addHooks:function(){Ci(this._container,"mousedown",this._onMouseDown,this)},removeHooks:function(){Si(this._container,"mousedown",this._onMouseDown,this)},moved:function(){return this._moved},_destroy:function(){ri(this._pane),delete this._pane},_resetState:function(){this._resetStateTimeout=0,this._moved=!1},_clearDeferredResetState:function(){0!==this._resetStateTimeout&&(clearTimeout(this._resetStateTimeout),this._resetStateTimeout=0)},_onMouseDown:function(t){if(!t.shiftKey||1!==t.which&&1!==t.button)return!1;this._clearDeferredResetState(),this._resetState(),Yt(),wi(),this._startPoint=this._map.mouseEventToContainerPoint(t),Ci(document,{contextmenu:Di,mousemove:this._onMouseMove,mouseup:this._onMouseUp,keydown:this._onKeyDown},this)},_onMouseMove:function(t){this._moved||(this._moved=!0,this._box=si("div","leaflet-zoom-box",this._container),ci(this._container,"leaflet-crosshair"),this._map.fire("boxzoomstart")),this._point=this._map.mouseEventToContainerPoint(t);var i=new A(this._point,this._startPoint),e=i.getSize();vi(this._box,i.min),this._box.style.width=e.x+"px",this._box.style.height=e.y+"px"},_finish:function(){this._moved&&(ri(this._box),_i(this._container,"leaflet-crosshair")),Xt(),bi(),Si(document,{contextmenu:Di,mousemove:this._onMouseMove,mouseup:this._onMouseUp,keydown:this._onKeyDown},this)},_onMouseUp:function(t){if((1===t.which||1===t.button)&&(this._finish(),this._moved)){this._clearDeferredResetState(),this._resetStateTimeout=setTimeout(n(this._resetState,this),0);var i=new I(this._map.containerPointToLatLng(this._startPoint),this._map.containerPointToLatLng(this._point));this._map.fitBounds(i).fire("boxzoomend",{boxZoomBounds:i})}},_onKeyDown:function(t){27===t.keyCode&&(this._finish(),this._clearDeferredResetState(),this._resetState())}});Gi.addInitHook("addHandler","boxZoom",yn),Gi.mergeOptions({doubleClickZoom:!0});var xn=te.extend({addHooks:function(){this._map.on("dblclick",this._onDoubleClick,this)},removeHooks:function(){this._map.off("dblclick",this._onDoubleClick,this)},_onDoubleClick:function(t){var i=this._map,e=i.getZoom(),n=i.options.zoomDelta,o=t.originalEvent.shiftKey?e-n:e+n;"center"===i.options.doubleClickZoom?i.setZoom(o):i.setZoomAround(t.containerPoint,o)}});Gi.addInitHook("addHandler","doubleClickZoom",xn),Gi.mergeOptions({dragging:!0,inertia:!0,inertiaDeceleration:3400,inertiaMaxSpeed:1/0,easeLinearity:.2,worldCopyJump:!1,maxBoundsViscosity:0});var wn=te.extend({addHooks:function(){if(!this._draggable){var t=this._map;this._draggable=new ne(t._mapPane,t._container),this._draggable.on({dragstart:this._onDragStart,drag:this._onDrag,dragend:this._onDragEnd},this),this._draggable.on("predrag",this._onPreDragLimit,this),t.options.worldCopyJump&&(this._draggable.on("predrag",this._onPreDragWrap,this),t.on("zoomend",this._onZoomEnd,this),t.whenReady(this._onZoomEnd,this))}ci(this._map._container,"leaflet-grab leaflet-touch-drag"),this._draggable.enable(),this._positions=[],this._times=[]},removeHooks:function(){_i(this._map._container,"leaflet-grab"),_i(this._map._container,"leaflet-touch-drag"),this._draggable.disable()},moved:function(){return this._draggable&&this._draggable._moved},moving:function(){return this._draggable&&this._draggable._moving},_onDragStart:function(){var t=this._map;if(t._stop(),this._map.options.maxBounds&&this._map.options.maxBoundsViscosity){var i=R(this._map.options.maxBounds);this._offsetLimit=B(this._map.latLngToContainerPoint(i.getNorthWest()).multiplyBy(-1),this._map.latLngToContainerPoint(i.getSouthEast()).multiplyBy(-1).add(this._map.getSize())),this._viscosity=Math.min(1,Math.max(0,this._map.options.maxBoundsViscosity))}else this._offsetLimit=null;t.fire("movestart").fire("dragstart"),t.options.inertia&&(this._positions=[],this._times=[])},_onDrag:function(t){if(this._map.options.inertia){var i=this._lastTime=+new Date,e=this._lastPos=this._draggable._absPos||this._draggable._newPos;this._positions.push(e),this._times.push(i),this._prunePositions(i)}this._map.fire("move",t).fire("drag",t)},_prunePositions:function(t){for(;this._positions.length>1&&t-this._times[0]>50;)this._positions.shift(),this._times.shift()},_onZoomEnd:function(){var t=this._map.getSize().divideBy(2),i=this._map.latLngToLayerPoint([0,0]);this._initialWorldOffset=i.subtract(t).x,this._worldWidth=this._map.getPixelWorldBounds().getSize().x},_viscousLimit:function(t,i){return t-(t-i)*this._viscosity},_onPreDragLimit:function(){if(this._viscosity&&this._offsetLimit){var t=this._draggable._newPos.subtract(this._draggable._startPos),i=this._offsetLimit;t.xi.max.x&&(t.x=this._viscousLimit(t.x,i.max.x)),t.y>i.max.y&&(t.y=this._viscousLimit(t.y,i.max.y)),this._draggable._newPos=this._draggable._startPos.add(t)}},_onPreDragWrap:function(){var t=this._worldWidth,i=Math.round(t/2),e=this._initialWorldOffset,n=this._draggable._newPos.x,o=(n-i+e)%t+i-e,s=(n+i+e)%t-i-e,r=Math.abs(o+e)0?s:-s))-i;this._delta=0,this._startTime=null,r&&("center"===t.options.scrollWheelZoom?t.setZoom(i+r):t.setZoomAround(this._lastMousePos,i+r))}});Gi.addInitHook("addHandler","scrollWheelZoom",Pn);Gi.mergeOptions({tapHold:At.touchNative&&At.safari&&At.mobile,tapTolerance:15});var Ln=te.extend({addHooks:function(){Ci(this._map._container,"touchstart",this._onDown,this)},removeHooks:function(){Si(this._map._container,"touchstart",this._onDown,this)},_onDown:function(t){if(clearTimeout(this._holdTimeout),1===t.touches.length){var i=t.touches[0];this._startPos=this._newPos=new k(i.clientX,i.clientY),this._holdTimeout=setTimeout(n((function(){this._cancel(),this._isTapValid()&&(Ci(document,"touchend",Ni),Ci(document,"touchend touchcancel",this._cancelClickPrevent),this._simulateEvent("contextmenu",i))}),this),600),Ci(document,"touchend touchcancel contextmenu",this._cancel,this),Ci(document,"touchmove",this._onMove,this)}},_cancelClickPrevent:function t(){Si(document,"touchend",Ni),Si(document,"touchend touchcancel",t)},_cancel:function(){clearTimeout(this._holdTimeout),Si(document,"touchend touchcancel contextmenu",this._cancel,this),Si(document,"touchmove",this._onMove,this)},_onMove:function(t){var i=t.touches[0];this._newPos=new k(i.clientX,i.clientY)},_isTapValid:function(){return this._newPos.distanceTo(this._startPos)<=this._map.options.tapTolerance},_simulateEvent:function(t,i){var e=new MouseEvent(t,{bubbles:!0,cancelable:!0,view:window,screenX:i.screenX,screenY:i.screenY,clientX:i.clientX,clientY:i.clientY});e._simulated=!0,i.target.dispatchEvent(e)}});Gi.addInitHook("addHandler","tapHold",Ln),Gi.mergeOptions({touchZoom:At.touch,bounceAtZoomLimits:!0});var Tn=te.extend({addHooks:function(){ci(this._map._container,"leaflet-touch-zoom"),Ci(this._map._container,"touchstart",this._onTouchStart,this)},removeHooks:function(){_i(this._map._container,"leaflet-touch-zoom"),Si(this._map._container,"touchstart",this._onTouchStart,this)},_onTouchStart:function(t){var i=this._map;if(t.touches&&2===t.touches.length&&!i._animatingZoom&&!this._zooming){var e=i.mouseEventToContainerPoint(t.touches[0]),n=i.mouseEventToContainerPoint(t.touches[1]);this._centerPoint=i.getSize()._divideBy(2),this._startLatLng=i.containerPointToLatLng(this._centerPoint),"center"!==i.options.touchZoom&&(this._pinchStartLatLng=i.containerPointToLatLng(e.add(n)._divideBy(2))),this._startDist=e.distanceTo(n),this._startZoom=i.getZoom(),this._moved=!1,this._zooming=!0,i._stop(),Ci(document,"touchmove",this._onTouchMove,this),Ci(document,"touchend touchcancel",this._onTouchEnd,this),Ni(t)}},_onTouchMove:function(t){if(t.touches&&2===t.touches.length&&this._zooming){var i=this._map,e=i.mouseEventToContainerPoint(t.touches[0]),o=i.mouseEventToContainerPoint(t.touches[1]),s=e.distanceTo(o)/this._startDist;if(this._zoom=i.getScaleZoom(s,this._startZoom),!i.options.bounceAtZoomLimits&&(this._zoomi.getMaxZoom()&&s>1)&&(this._zoom=i._limitZoom(this._zoom)),"center"===i.options.touchZoom){if(this._center=this._startLatLng,1===s)return}else{var r=e._add(o)._divideBy(2)._subtract(this._centerPoint);if(1===s&&0===r.x&&0===r.y)return;this._center=i.unproject(i.project(this._pinchStartLatLng,this._zoom).subtract(r),this._zoom)}this._moved||(i._moveStart(!0,!1),this._moved=!0),M(this._animRequest);var a=n(i._move,i,this._center,this._zoom,{pinch:!0,round:!1},void 0);this._animRequest=T(a,this,!0),Ni(t)}},_onTouchEnd:function(){this._moved&&this._zooming?(this._zooming=!1,M(this._animRequest),Si(document,"touchmove",this._onTouchMove,this),Si(document,"touchend touchcancel",this._onTouchEnd,this),this._map.options.zoomAnimation?this._map._animateZoom(this._center,this._map._limitZoom(this._zoom),!0,this._map.options.zoomSnap):this._map._resetView(this._center,this._map._limitZoom(this._zoom))):this._zooming=!1}});Gi.addInitHook("addHandler","touchZoom",Tn),Gi.BoxZoom=yn,Gi.DoubleClickZoom=xn,Gi.Drag=wn,Gi.Keyboard=bn,Gi.ScrollWheelZoom=Pn,Gi.TapHold=Ln,Gi.TouchZoom=Tn,t.Bounds=A,t.Browser=At,t.CRS=H,t.Canvas=un,t.Circle=Ie,t.CircleMarker=Be,t.Class=C,t.Control=Ki,t.DivIcon=on,t.DivOverlay=tn,t.DomEvent=Vi,t.DomUtil=zi,t.Draggable=ne,t.Evented=S,t.FeatureGroup=Ze,t.GeoJSON=De,t.GridLayer=sn,t.Handler=te,t.Icon=Se,t.ImageOverlay=Je,t.LatLng=N,t.LatLngBounds=I,t.Layer=ze,t.LayerGroup=Ce,t.LineUtil=xe,t.Map=Gi,t.Marker=Oe,t.Mixin=ie,t.Path=Ae,t.Point=k,t.PolyUtil=he,t.Polygon=Ne,t.Polyline=Re,t.Popup=en,t.PosAnimation=qi,t.Projection=Pe,t.Rectangle=vn,t.Renderer=ln,t.SVG=fn,t.SVGOverlay=Qe,t.TileLayer=rn,t.Tooltip=nn,t.Transformation=V,t.Util=z,t.VideoOverlay=$e,t.bind=n,t.bounds=B,t.canvas=cn,t.circle=function(t,i,e){return new Ie(t,i,e)},t.circleMarker=function(t,i){return new Be(t,i)},t.control=Yi,t.divIcon=function(t){return new on(t)},t.extend=i,t.featureGroup=function(t,i){return new Ze(t,i)},t.geoJSON=Ye,t.geoJson=Xe,t.gridLayer=function(t){return new sn(t)},t.icon=function(t){return new Se(t)},t.imageOverlay=function(t,i,e){return new Je(t,i,e)},t.latLng=D,t.latLngBounds=R,t.layerGroup=function(t,i){return new Ce(t,i)},t.map=function(t,i){return new Gi(t,i)},t.marker=function(t,i){return new Oe(t,i)},t.point=O,t.polygon=function(t,i){return new Ne(t,i)},t.polyline=function(t,i){return new Re(t,i)},t.popup=function(t,i){return new en(t,i)},t.rectangle=function(t,i){return new vn(t,i)},t.setOptions=_,t.stamp=s,t.svg=gn,t.svgOverlay=function(t,i,e){return new Qe(t,i,e)},t.tileLayer=an,t.tooltip=function(t,i){return new nn(t,i)},t.transformation=q,t.version="1.9.4",t.videoOverlay=function(t,i,e){return new $e(t,i,e)};var Mn=window.L;t.noConflict=function(){return window.L=Mn,this},window.L=t}(i)}}]); \ No newline at end of file diff --git a/build/535.js b/build/535.js index 8fd7849a1..a6a9bf83e 100644 --- a/build/535.js +++ b/build/535.js @@ -1 +1 @@ -"use strict";(globalThis.webpackChunkgatherpress=globalThis.webpackChunkgatherpress||[]).push([[535],{1535:(s,e,h)=>{h.r(e)}}]); \ No newline at end of file +"use strict";(self.webpackChunkgatherpress=self.webpackChunkgatherpress||[]).push([[535],{1535:(e,s,r)=>{r.r(s)}}]); \ No newline at end of file diff --git a/build/980.js b/build/980.js index 081cd3caa..d1f13bab3 100644 --- a/build/980.js +++ b/build/980.js @@ -1 +1 @@ -"use strict";(globalThis.webpackChunkgatherpress=globalThis.webpackChunkgatherpress||[]).push([[980],{8980:(s,e,a)=>{s.exports=a.p+"images/marker-shadow.png"}}]); \ No newline at end of file +"use strict";(self.webpackChunkgatherpress=self.webpackChunkgatherpress||[]).push([[980],{8980:(e,s,p)=>{e.exports=p.p+"images/marker-shadow.png"}}]); \ No newline at end of file diff --git a/build/blocks/add-to-calendar/index.asset.php b/build/blocks/add-to-calendar/index.asset.php index f349cdb5b..18a74edbd 100644 --- a/build/blocks/add-to-calendar/index.asset.php +++ b/build/blocks/add-to-calendar/index.asset.php @@ -1 +1 @@ - array('react-jsx-runtime', 'wp-block-editor', 'wp-blocks', 'wp-components', 'wp-i18n'), 'version' => '754b4dfa4e592032751e'); + array('react-jsx-runtime', 'wp-block-editor', 'wp-blocks', 'wp-components', 'wp-i18n'), 'version' => 'd363e7f0b415ef3e95a3'); diff --git a/build/blocks/add-to-calendar/index.js b/build/blocks/add-to-calendar/index.js index fb807ba9d..712c440bd 100644 --- a/build/blocks/add-to-calendar/index.js +++ b/build/blocks/add-to-calendar/index.js @@ -1 +1 @@ -(()=>{"use strict";var e,r={6892:()=>{const e=window.wp.blocks,r=window.wp.i18n,t=window.wp.blockEditor,s=window.wp.components,n=window.ReactJSXRuntime,i=e=>{const{isSelected:r}=e,t=r?"none":"block";return(0,n.jsxs)("div",{style:{position:"relative"},children:[e.children,(0,n.jsx)("div",{style:{position:"absolute",top:"0",right:"0",bottom:"0",left:"0",display:t}})]})},o=JSON.parse('{"$schema":"https://schemas.wp.org/trunk/block.json","apiVersion":2,"name":"gatherpress/add-to-calendar","version":"1.0.2","title":"Add to Calendar","category":"gatherpress","icon":"calendar","example":{},"description":"Allows a member to add an event to their preferred calendar.","attributes":{"blockId":{"type":"string"}},"supports":{"html":false},"textdomain":"gatherpress","editorScript":"file:./index.js","style":"file:./style-index.css","viewScript":"file:./add-to-calendar.js","render":"file:./render.php"}');(0,e.registerBlockType)(o,{edit:()=>{const e=(0,t.useBlockProps)();return(0,n.jsx)("div",{...e,children:(0,n.jsx)(i,{children:(0,n.jsxs)(s.Flex,{justify:"normal",align:"center",gap:"4",children:[(0,n.jsx)(s.FlexItem,{display:"flex",className:"gatherpress-event-date__icon",children:(0,n.jsx)(s.Icon,{icon:"calendar"})}),(0,n.jsx)(s.FlexItem,{children:(0,n.jsx)("a",{href:"#",children:(0,r.__)("Add to calendar","gatherpress")})})]})})})},save:()=>null})}},t={};function s(e){var n=t[e];if(void 0!==n)return n.exports;var i=t[e]={exports:{}};return r[e](i,i.exports,s),i.exports}s.m=r,e=[],s.O=(r,t,n,i)=>{if(!t){var o=1/0;for(c=0;c=i)&&Object.keys(s.O).every((e=>s.O[e](t[l])))?t.splice(l--,1):(a=!1,i0&&e[c-1][2]>i;c--)e[c]=e[c-1];e[c]=[t,n,i]},s.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),(()=>{var e={181:0,129:0};s.O.j=r=>0===e[r];var r=(r,t)=>{var n,i,[o,a,l]=t,d=0;if(o.some((r=>0!==e[r]))){for(n in a)s.o(a,n)&&(s.m[n]=a[n]);if(l)var c=l(s)}for(r&&r(t);ds(6892)));n=s.O(n)})(); \ No newline at end of file +(()=>{"use strict";var e,r={6892:()=>{const e=window.wp.blocks,r=window.wp.i18n,t=window.wp.blockEditor,s=window.wp.components,n=window.ReactJSXRuntime,i=e=>{const{isSelected:r}=e,t=r?"none":"block";return(0,n.jsxs)("div",{style:{position:"relative"},children:[e.children,(0,n.jsx)("div",{style:{position:"absolute",top:"0",right:"0",bottom:"0",left:"0",display:t}})]})},o=JSON.parse('{"$schema":"https://schemas.wp.org/trunk/block.json","apiVersion":2,"name":"gatherpress/add-to-calendar","version":"1.0.2","title":"Add to Calendar","category":"gatherpress","icon":"calendar","example":{},"description":"Allows a member to add an event to their preferred calendar.","attributes":{"blockId":{"type":"string"}},"supports":{"html":false},"textdomain":"gatherpress","editorScript":"file:./index.js","style":"file:./style-index.css","viewScript":"file:./add-to-calendar.js","render":"file:./render.php"}');(0,e.registerBlockType)(o,{edit:()=>{const e=(0,t.useBlockProps)();return(0,n.jsx)("div",{...e,children:(0,n.jsx)(i,{children:(0,n.jsxs)(s.Flex,{justify:"normal",align:"center",gap:"4",children:[(0,n.jsx)(s.FlexItem,{display:"flex",className:"gatherpress-event-date__icon",children:(0,n.jsx)(s.Icon,{icon:"calendar"})}),(0,n.jsx)(s.FlexItem,{children:(0,n.jsx)("a",{href:"#",children:(0,r.__)("Add to calendar","gatherpress")})})]})})})},save:()=>null})}},t={};function s(e){var n=t[e];if(void 0!==n)return n.exports;var i=t[e]={exports:{}};return r[e](i,i.exports,s),i.exports}s.m=r,e=[],s.O=(r,t,n,i)=>{if(!t){var o=1/0;for(c=0;c=i)&&Object.keys(s.O).every((e=>s.O[e](t[l])))?t.splice(l--,1):(a=!1,i0&&e[c-1][2]>i;c--)e[c]=e[c-1];e[c]=[t,n,i]},s.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),(()=>{var e={181:0,129:0};s.O.j=r=>0===e[r];var r=(r,t)=>{var n,i,o=t[0],a=t[1],l=t[2],d=0;if(o.some((r=>0!==e[r]))){for(n in a)s.o(a,n)&&(s.m[n]=a[n]);if(l)var c=l(s)}for(r&&r(t);ds(6892)));n=s.O(n)})(); \ No newline at end of file diff --git a/build/blocks/event-date/index.asset.php b/build/blocks/event-date/index.asset.php index fb38a8c07..31e534b02 100644 --- a/build/blocks/event-date/index.asset.php +++ b/build/blocks/event-date/index.asset.php @@ -1 +1 @@ - array('moment', 'react-jsx-runtime', 'wp-block-editor', 'wp-blocks', 'wp-components', 'wp-data', 'wp-date', 'wp-element', 'wp-i18n'), 'version' => '2a87e9e9bf69563aeae1'); + array('moment', 'react-jsx-runtime', 'wp-block-editor', 'wp-blocks', 'wp-components', 'wp-data', 'wp-date', 'wp-element', 'wp-i18n'), 'version' => 'fbdfb147c6c684a7d803'); diff --git a/build/blocks/event-date/index.js b/build/blocks/event-date/index.js index 46ed97a5b..757439f21 100644 --- a/build/blocks/event-date/index.js +++ b/build/blocks/event-date/index.js @@ -1,2 +1,2 @@ -(()=>{"use strict";var e,t={750:(e,t,r)=>{const n=window.wp.blocks,a=window.moment;var s=r.n(a);function i(e){var t,r,n="";if("string"==typeof e||"number"==typeof e)n+=e;else if("object"==typeof e)if(Array.isArray(e)){var a=e.length;for(t=0;te&&e[t]),GatherPress)}function f(e,t){if("object"!=typeof GatherPress)return;const r=e.split("."),n=r.pop();r.reduce(((e,t)=>{var r;return null!==(r=e[t])&&void 0!==r?r:e[t]={}}),GatherPress)[n]=t}const x=window.wp.date,v=window.ReactJSXRuntime,_="YYYY-MM-DD HH:mm:ss",T=s().tz(b()).add(1,"day").set("hour",18).set("minute",0).set("second",0).format(_),D=(s().tz(T,b()).add(2,"hours").format(_),[{label:(0,l.__)("1 hour","gatherpress"),value:1},{label:(0,l.__)("1.5 hours","gatherpress"),value:1.5},{label:(0,l.__)("2 hours","gatherpress"),value:2},{label:(0,l.__)("3 hours","gatherpress"),value:3},{label:(0,l.__)("Set an end time…","gatherpress"),value:!1}]);function j(e){return s().tz(function(){let e=g("eventDetails.dateTime.datetime_start");return e=""!==e?s().tz(e,b()).format(_):T,f("eventDetails.dateTime.datetime_start",e),e}(),b()).add(e,"hours").format(_)}function z(){return k(g("settings.dateFormat"))+" "+k(g("settings.timeFormat"))}function b(e=g("eventDetails.dateTime.timezone")){return s().tz.zone(e)?e:(0,l.__)("GMT","gatherpress")}function w(e=""){const t=/^([+-])(\d{2}):(00|15|30|45)$/,r=e.replace(t,"$1");return r!==e?"UTC"+r+parseInt(e.replace(t,"$2")).toString()+e.replace(t,"$3").replace("00","").replace("15",".25").replace("30",".5").replace("45",".75"):e}function S(e,t=null,r=null){!function(e,t=null){const r=s().tz(g("eventDetails.dateTime.datetime_end"),b()).valueOf(),n=s().tz(e,b()).valueOf();n>=r&&y(s().tz(n,b()).add(2,"hours").format(_),t)}(e,r),f("eventDetails.dateTime.datetime_start",e),"function"==typeof t&&t(e),p()}function y(e,t=null,r=null){!function(e,t=null){const r=s().tz(g("eventDetails.dateTime.datetime_start"),b()).valueOf(),n=s().tz(e,b()).valueOf();n<=r&&S(s().tz(n,b()).subtract(2,"hours").format(_),t)}(e,r),f("eventDetails.dateTime.datetime_end",e),null!==t&&t(e),p()}function k(e){const t={d:"DD",D:"ddd",j:"D",l:"dddd",N:"E",S:"o",w:"e",z:"DDD",W:"W",F:"MMMM",m:"MM",M:"MMM",n:"M",t:"",L:"",o:"YYYY",Y:"YYYY",y:"YY",a:"a",A:"A",B:"",g:"h",G:"H",h:"hh",H:"HH",i:"mm",s:"ss",u:"SSS",e:"zz",I:"",O:"",P:"",T:"",Z:"",c:"",r:"",U:"X"};return String(e).split("").map(((e,r,n)=>{const a=n[r-1];return e in t&&"\\"!==a?t[e]:e})).join("")}function C(){const e="gatherpress_event_past",t=(0,m.dispatch)("core/notices");t.removeNotice(e),function(){const e=s().tz(g("eventDetails.dateTime.datetime_end"),b());return"gatherpress_event"===(0,m.select)("core/editor")?.getCurrentPostType()&&s().tz(b()).valueOf()>e.valueOf()}()&&t.createNotice("warning",(0,l.__)("This event has already passed.","gatherpress"),{id:e,isDismissible:!1})}const O=()=>{const{dateTimeStart:e,duration:t}=(0,m.useSelect)((e=>({dateTimeStart:e("gatherpress/datetime").getDateTimeStart(),duration:e("gatherpress/datetime").getDuration()})),[]),{setDateTimeStart:r,setDateTimeEnd:n}=(0,m.useDispatch)("gatherpress/datetime"),a=(0,x.getSettings)(),i=/a(?!\\)/i.test(a.formats.time.toLowerCase().replace(/\\\\/g,"").split("").reverse().join(""));return(0,u.useEffect)((()=>{r(s().tz(e,b()).format(_)),t&&n(j(t)),C()}),[e,t,r,n]),(0,v.jsx)(c.PanelRow,{children:(0,v.jsxs)(c.Flex,{direction:"column",gap:"1",children:[(0,v.jsx)(c.FlexItem,{children:(0,v.jsx)("h3",{style:{marginBottom:0},children:(0,v.jsx)("label",{htmlFor:"gatherpress-datetime-start",children:(0,l.__)("Date & time start","gatherpress")})})}),(0,v.jsx)(c.FlexItem,{children:(0,v.jsx)(c.Dropdown,{popoverProps:{placement:"bottom-end"},renderToggle:({isOpen:t,onToggle:r})=>(0,v.jsx)(c.Button,{id:"gatherpress-datetime-start",onClick:r,"aria-expanded":t,isLink:!0,children:s().tz(e,b()).format(z())}),renderContent:()=>(0,v.jsx)(c.DateTimePicker,{currentDate:e,onChange:e=>{S(e,r,n)},is12Hour:i})})})]})})},E=()=>{const{dateTimeEnd:e}=(0,m.useSelect)((e=>({dateTimeEnd:e("gatherpress/datetime").getDateTimeEnd()})),[]),{setDateTimeEnd:t,setDateTimeStart:r}=(0,m.useDispatch)("gatherpress/datetime"),n=(0,x.getSettings)(),a=/a(?!\\)/i.test(n.formats.time.toLowerCase().replace(/\\\\/g,"").split("").reverse().join(""));return(0,u.useEffect)((()=>{t(s().tz(e,b()).format(_)),C()})),(0,v.jsx)(c.PanelRow,{children:(0,v.jsxs)(c.Flex,{direction:"column",gap:"1",children:[(0,v.jsx)(c.FlexItem,{children:(0,v.jsx)("h3",{style:{marginBottom:0},children:(0,v.jsx)("label",{htmlFor:"gatherpress-datetime-end",children:(0,l.__)("Date & time end","gatherpress")})})}),(0,v.jsx)(c.FlexItem,{children:(0,v.jsx)(c.Dropdown,{popoverProps:{placement:"bottom-end"},renderToggle:({isOpen:t,onToggle:r})=>(0,v.jsx)(c.Button,{id:"gatherpress-datetime-end",onClick:r,"aria-expanded":t,isLink:!0,children:s().tz(e,b()).format(z())}),renderContent:()=>(0,v.jsx)(c.DateTimePicker,{currentDate:e,onChange:e=>y(e,t,r),is12Hour:a})})})]})})},P=()=>{const{timezone:e}=(0,m.useSelect)((e=>({timezone:e("gatherpress/datetime").getTimezone()})),[]),{setTimezone:t}=(0,m.useDispatch)("gatherpress/datetime"),r=g("misc.timezoneChoices");return(0,u.useEffect)((()=>{t(g("eventDetails.dateTime.timezone"))}),[t]),(0,v.jsx)(c.PanelRow,{children:(0,v.jsx)(c.SelectControl,{label:(0,l.__)("Time Zone","gatherpress"),value:w(e),onChange:e=>{e=function(e=""){const t=/^UTC([+-])(\d+)(.\d+)?$/,r=e.replace(t,"$1");if(r!==e){const n=e.replace(t,"$2").padStart(2,"0");let a=e.replace(t,"$3");return""===a&&(a=":00"),a=a.replace(".25",":15").replace(".5",":30").replace(".75",":45"),r+n+a}return e}(e),t(e),p()},__nexthasnomarginbottom:!0,children:Object.keys(r).map((e=>(0,v.jsx)("optgroup",{label:e,children:Object.keys(r[e]).map((t=>(0,v.jsx)("option",{value:t,children:r[e][t]},t)))},e)))})})},F=()=>{const{duration:e}=(0,m.useSelect)((e=>({duration:e("gatherpress/datetime").getDuration()})),[]),t=(0,m.useDispatch)(),{setDateTimeEnd:r,setDuration:n}=t("gatherpress/datetime");return(0,v.jsx)(c.SelectControl,{label:(0,l.__)("Duration","gatherpress"),value:!!D.some((t=>t.value===e))&&e,options:D,onChange:e=>{(e="false"!==e&&parseFloat(e))&&r(j(e)),n(e)},__nexthasnomarginbottom:!0})},M=()=>{const e=(0,m.useDispatch)("core/editor").editPost;let t=(0,m.useSelect)((e=>e("core/editor").getEditedPostAttribute("meta")?.gatherpress_datetime));try{t=t?JSON.parse(t):{}}catch(e){t={}}const{dateTimeStart:r,dateTimeEnd:n,duration:a,timezone:i}=(0,m.useSelect)((e=>({dateTimeStart:e("gatherpress/datetime").getDateTimeStart(),dateTimeEnd:e("gatherpress/datetime").getDateTimeEnd(),duration:e("gatherpress/datetime").getDuration(),timezone:e("gatherpress/datetime").getTimezone()})),[]),{setDuration:o}=(0,m.useDispatch)("gatherpress/datetime");return(0,u.useEffect)((()=>{const a=JSON.stringify({...t,dateTimeStart:s().tz(r,i).format(_),dateTimeEnd:s().tz(n,i).format(_),timezone:i});e({meta:{gatherpress_datetime:a}})}),[r,n,i,t,e,o,a]),(0,v.jsxs)(v.Fragment,{children:[(0,v.jsx)("section",{children:(0,v.jsx)(O,{})}),(0,v.jsx)("section",{children:a?(0,v.jsx)(F,{}):(0,v.jsx)(E,{})}),(0,v.jsx)("section",{children:(0,v.jsx)(P,{})})]})},Y=(e,t,r)=>{const n=k(g("settings.dateFormat")),a=k(g("settings.timeFormat")),i=g("settings.showTimezone")?"z":"",o=n+" "+a;r=b(r);let d=n+" "+a+" "+i;return s().tz(e,r).format(n)===s().tz(t,r).format(n)&&(d=a+" "+i),(0,l.sprintf)(/* translators: %1$s: datetime start, %2$s: datetime end, %3$s timezone. */ /* translators: %1$s: datetime start, %2$s: datetime end, %3$s timezone. */ -(0,l.__)("%1$s to %2$s %3$s","gatherpress"),s().tz(e,r).format(o),s().tz(t,r).format(d),function(e){return e=b(e),(0,l.__)("GMT","gatherpress")!==e?"":function(e=""){return e.replace(":","")}(g("eventDetails.dateTime.timezone"))}(r))},$=JSON.parse('{"$schema":"https://schemas.wp.org/trunk/block.json","apiVersion":3,"name":"gatherpress/event-date","version":"2.0.0","title":"Event Date","category":"gatherpress","icon":"clock","example":{"viewportWidth":350},"description":"Displays the date and time for an event.","attributes":{"eventEnd":{"type":"string"},"eventStart":{"type":"string"},"textAlign":{"type":"string"}},"supports":{"html":false,"color":{"gradients":true,"link":true,"__experimentalDefaultControls":{"background":true,"text":true,"link":true}},"spacing":{"margin":true,"padding":true},"typography":{"fontSize":true,"lineHeight":true,"__experimentalFontFamily":true,"__experimentalFontWeight":true,"__experimentalFontStyle":true,"__experimentalTextTransform":true,"__experimentalTextDecoration":true,"__experimentalLetterSpacing":true,"__experimentalDefaultControls":{"fontSize":true}},"interactivity":{"clientNavigation":true},"__experimentalBorder":{"radius":true,"color":true,"width":true,"style":true,"__experimentalDefaultControls":{"radius":true,"color":true,"width":true,"style":true}}},"textdomain":"gatherpress","editorScript":"file:./index.js","style":"file:./style-index.css","render":"file:./render.php"}');(0,n.registerBlockType)($,{edit:({attributes:{textAlign:e},setAttributes:t})=>{const r=(0,d.useBlockProps)({className:o({[`has-text-align-${e}`]:e})}),{dateTimeStart:n,dateTimeEnd:a,timezone:s}=(0,m.useSelect)((e=>({dateTimeStart:e("gatherpress/datetime").getDateTimeStart(),dateTimeEnd:e("gatherpress/datetime").getDateTimeEnd(),timezone:e("gatherpress/datetime").getTimezone()})),[]);return(0,v.jsxs)("div",{...r,children:[(0,v.jsx)(d.BlockControls,{children:(0,v.jsx)(d.AlignmentToolbar,{value:e,onChange:e=>t({textAlign:e})})}),Y(n,a,s),h()&&(0,v.jsx)(d.InspectorControls,{children:(0,v.jsx)(c.PanelBody,{children:(0,v.jsx)(c.__experimentalVStack,{spacing:4,children:(0,v.jsx)(M,{})})})})]})},save:()=>null})}},r={};function n(e){var a=r[e];if(void 0!==a)return a.exports;var s=r[e]={exports:{}};return t[e](s,s.exports,n),s.exports}n.m=t,e=[],n.O=(t,r,a,s)=>{if(!r){var i=1/0;for(c=0;c=s)&&Object.keys(n.O).every((e=>n.O[e](r[l])))?r.splice(l--,1):(o=!1,s0&&e[c-1][2]>s;c--)e[c]=e[c-1];e[c]=[r,a,s]},n.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return n.d(t,{a:t}),t},n.d=(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{var e={532:0,4:0};n.O.j=t=>0===e[t];var t=(t,r)=>{var a,s,[i,o,l]=r,d=0;if(i.some((t=>0!==e[t]))){for(a in o)n.o(o,a)&&(n.m[a]=o[a]);if(l)var c=l(n)}for(t&&t(r);dn(750)));a=n.O(a)})(); \ No newline at end of file +(()=>{"use strict";var e,t={750:(e,t,r)=>{const n=window.wp.blocks,a=window.moment;var s=r.n(a);function i(e){var t,r,n="";if("string"==typeof e||"number"==typeof e)n+=e;else if("object"==typeof e)if(Array.isArray(e)){var a=e.length;for(t=0;te&&e[t]),GatherPress)}function f(e,t){if("object"!=typeof GatherPress)return;const r=e.split("."),n=r.pop();r.reduce(((e,t)=>{var r;return null!==(r=e[t])&&void 0!==r?r:e[t]={}}),GatherPress)[n]=t}const x=window.wp.date,v=window.ReactJSXRuntime,_="YYYY-MM-DD HH:mm:ss",T=s().tz(w()).add(1,"day").set("hour",18).set("minute",0).set("second",0).format(_),D=(s().tz(T,w()).add(2,"hours").format(_),[{label:(0,l.__)("1 hour","gatherpress"),value:1},{label:(0,l.__)("1.5 hours","gatherpress"),value:1.5},{label:(0,l.__)("2 hours","gatherpress"),value:2},{label:(0,l.__)("3 hours","gatherpress"),value:3},{label:(0,l.__)("Set an end time…","gatherpress"),value:!1}]);function j(e){return s().tz(function(){let e=g("eventDetails.dateTime.datetime_start");return e=""!==e?s().tz(e,w()).format(_):T,f("eventDetails.dateTime.datetime_start",e),e}(),w()).add(e,"hours").format(_)}function z(){return k(g("settings.dateFormat"))+" "+k(g("settings.timeFormat"))}function w(e=g("eventDetails.dateTime.timezone")){return s().tz.zone(e)?e:(0,l.__)("GMT","gatherpress")}function S(e=""){const t=/^([+-])(\d{2}):(00|15|30|45)$/,r=e.replace(t,"$1");return r!==e?"UTC"+r+parseInt(e.replace(t,"$2")).toString()+e.replace(t,"$3").replace("00","").replace("15",".25").replace("30",".5").replace("45",".75"):e}function b(e,t=null,r=null){!function(e,t=null){const r=s().tz(g("eventDetails.dateTime.datetime_end"),w()).valueOf(),n=s().tz(e,w()).valueOf();n>=r&&y(s().tz(n,w()).add(2,"hours").format(_),t)}(e,r),f("eventDetails.dateTime.datetime_start",e),"function"==typeof t&&t(e),p()}function y(e,t=null,r=null){!function(e,t=null){const r=s().tz(g("eventDetails.dateTime.datetime_start"),w()).valueOf(),n=s().tz(e,w()).valueOf();n<=r&&b(s().tz(n,w()).subtract(2,"hours").format(_),t)}(e,r),f("eventDetails.dateTime.datetime_end",e),null!==t&&t(e),p()}function k(e){const t={d:"DD",D:"ddd",j:"D",l:"dddd",N:"E",S:"o",w:"e",z:"DDD",W:"W",F:"MMMM",m:"MM",M:"MMM",n:"M",t:"",L:"",o:"YYYY",Y:"YYYY",y:"YY",a:"a",A:"A",B:"",g:"h",G:"H",h:"hh",H:"HH",i:"mm",s:"ss",u:"SSS",e:"zz",I:"",O:"",P:"",T:"",Z:"",c:"",r:"",U:"X"};return String(e).split("").map(((e,r,n)=>{const a=n[r-1];return e in t&&"\\"!==a?t[e]:e})).join("")}function C(){const e="gatherpress_event_past",t=(0,m.dispatch)("core/notices");t.removeNotice(e),function(){const e=s().tz(g("eventDetails.dateTime.datetime_end"),w());return"gatherpress_event"===(0,m.select)("core/editor")?.getCurrentPostType()&&s().tz(w()).valueOf()>e.valueOf()}()&&t.createNotice("warning",(0,l.__)("This event has already passed.","gatherpress"),{id:e,isDismissible:!1})}const O=()=>{const{dateTimeStart:e,duration:t}=(0,m.useSelect)((e=>({dateTimeStart:e("gatherpress/datetime").getDateTimeStart(),duration:e("gatherpress/datetime").getDuration()})),[]),{setDateTimeStart:r,setDateTimeEnd:n}=(0,m.useDispatch)("gatherpress/datetime"),a=(0,x.getSettings)(),i=/a(?!\\)/i.test(a.formats.time.toLowerCase().replace(/\\\\/g,"").split("").reverse().join(""));return(0,u.useEffect)((()=>{r(s().tz(e,w()).format(_)),t&&n(j(t)),C()}),[e,t,r,n]),(0,v.jsx)(c.PanelRow,{children:(0,v.jsxs)(c.Flex,{direction:"column",gap:"1",children:[(0,v.jsx)(c.FlexItem,{children:(0,v.jsx)("h3",{style:{marginBottom:0},children:(0,v.jsx)("label",{htmlFor:"gatherpress-datetime-start",children:(0,l.__)("Date & time start","gatherpress")})})}),(0,v.jsx)(c.FlexItem,{children:(0,v.jsx)(c.Dropdown,{popoverProps:{placement:"bottom-end"},renderToggle:({isOpen:t,onToggle:r})=>(0,v.jsx)(c.Button,{id:"gatherpress-datetime-start",onClick:r,"aria-expanded":t,isLink:!0,children:s().tz(e,w()).format(z())}),renderContent:()=>(0,v.jsx)(c.DateTimePicker,{currentDate:e,onChange:e=>{b(e,r,n)},is12Hour:i})})})]})})},E=()=>{const{dateTimeEnd:e}=(0,m.useSelect)((e=>({dateTimeEnd:e("gatherpress/datetime").getDateTimeEnd()})),[]),{setDateTimeEnd:t,setDateTimeStart:r}=(0,m.useDispatch)("gatherpress/datetime"),n=(0,x.getSettings)(),a=/a(?!\\)/i.test(n.formats.time.toLowerCase().replace(/\\\\/g,"").split("").reverse().join(""));return(0,u.useEffect)((()=>{t(s().tz(e,w()).format(_)),C()})),(0,v.jsx)(c.PanelRow,{children:(0,v.jsxs)(c.Flex,{direction:"column",gap:"1",children:[(0,v.jsx)(c.FlexItem,{children:(0,v.jsx)("h3",{style:{marginBottom:0},children:(0,v.jsx)("label",{htmlFor:"gatherpress-datetime-end",children:(0,l.__)("Date & time end","gatherpress")})})}),(0,v.jsx)(c.FlexItem,{children:(0,v.jsx)(c.Dropdown,{popoverProps:{placement:"bottom-end"},renderToggle:({isOpen:t,onToggle:r})=>(0,v.jsx)(c.Button,{id:"gatherpress-datetime-end",onClick:r,"aria-expanded":t,isLink:!0,children:s().tz(e,w()).format(z())}),renderContent:()=>(0,v.jsx)(c.DateTimePicker,{currentDate:e,onChange:e=>y(e,t,r),is12Hour:a})})})]})})},P=()=>{const{timezone:e}=(0,m.useSelect)((e=>({timezone:e("gatherpress/datetime").getTimezone()})),[]),{setTimezone:t}=(0,m.useDispatch)("gatherpress/datetime"),r=g("misc.timezoneChoices");return(0,u.useEffect)((()=>{t(g("eventDetails.dateTime.timezone"))}),[t]),(0,v.jsx)(c.PanelRow,{children:(0,v.jsx)(c.SelectControl,{label:(0,l.__)("Time Zone","gatherpress"),value:S(e),onChange:e=>{e=function(e=""){const t=/^UTC([+-])(\d+)(.\d+)?$/,r=e.replace(t,"$1");if(r!==e){const n=e.replace(t,"$2").padStart(2,"0");let a=e.replace(t,"$3");return""===a&&(a=":00"),a=a.replace(".25",":15").replace(".5",":30").replace(".75",":45"),r+n+a}return e}(e),t(e),p()},__nexthasnomarginbottom:!0,children:Object.keys(r).map((e=>(0,v.jsx)("optgroup",{label:e,children:Object.keys(r[e]).map((t=>(0,v.jsx)("option",{value:t,children:r[e][t]},t)))},e)))})})},F=()=>{const{duration:e}=(0,m.useSelect)((e=>({duration:e("gatherpress/datetime").getDuration()})),[]),t=(0,m.useDispatch)(),{setDateTimeEnd:r,setDuration:n}=t("gatherpress/datetime");return(0,v.jsx)(c.SelectControl,{label:(0,l.__)("Duration","gatherpress"),value:!!D.some((t=>t.value===e))&&e,options:D,onChange:e=>{(e="false"!==e&&parseFloat(e))&&r(j(e)),n(e)},__nexthasnomarginbottom:!0})},M=()=>{const e=(0,m.useDispatch)("core/editor").editPost;let t=(0,m.useSelect)((e=>e("core/editor").getEditedPostAttribute("meta")?.gatherpress_datetime));try{t=t?JSON.parse(t):{}}catch(e){t={}}const{dateTimeStart:r,dateTimeEnd:n,duration:a,timezone:i}=(0,m.useSelect)((e=>({dateTimeStart:e("gatherpress/datetime").getDateTimeStart(),dateTimeEnd:e("gatherpress/datetime").getDateTimeEnd(),duration:e("gatherpress/datetime").getDuration(),timezone:e("gatherpress/datetime").getTimezone()})),[]),{setDuration:o}=(0,m.useDispatch)("gatherpress/datetime");return(0,u.useEffect)((()=>{const a=JSON.stringify({...t,dateTimeStart:s().tz(r,i).format(_),dateTimeEnd:s().tz(n,i).format(_),timezone:i});e({meta:{gatherpress_datetime:a}})}),[r,n,i,t,e,o,a]),(0,v.jsxs)(v.Fragment,{children:[(0,v.jsx)("section",{children:(0,v.jsx)(O,{})}),(0,v.jsx)("section",{children:a?(0,v.jsx)(F,{}):(0,v.jsx)(E,{})}),(0,v.jsx)("section",{children:(0,v.jsx)(P,{})})]})},Y=(e,t,r)=>{const n=k(g("settings.dateFormat")),a=k(g("settings.timeFormat")),i=g("settings.showTimezone")?"z":"",o=n+" "+a;r=w(r);let d=n+" "+a+" "+i;return s().tz(e,r).format(n)===s().tz(t,r).format(n)&&(d=a+" "+i),(0,l.sprintf)(/* translators: %1$s: datetime start, %2$s: datetime end, %3$s timezone. */ /* translators: %1$s: datetime start, %2$s: datetime end, %3$s timezone. */ +(0,l.__)("%1$s to %2$s %3$s","gatherpress"),s().tz(e,r).format(o),s().tz(t,r).format(d),function(e){return e=w(e),(0,l.__)("GMT","gatherpress")!==e?"":function(e=""){return e.replace(":","")}(g("eventDetails.dateTime.timezone"))}(r))},$=JSON.parse('{"$schema":"https://schemas.wp.org/trunk/block.json","apiVersion":3,"name":"gatherpress/event-date","version":"2.0.0","title":"Event Date","category":"gatherpress","icon":"clock","example":{"viewportWidth":350},"description":"Displays the date and time for an event.","attributes":{"eventEnd":{"type":"string"},"eventStart":{"type":"string"},"textAlign":{"type":"string"}},"supports":{"html":false,"color":{"gradients":true,"link":true,"__experimentalDefaultControls":{"background":true,"text":true,"link":true}},"spacing":{"margin":true,"padding":true},"typography":{"fontSize":true,"lineHeight":true,"__experimentalFontFamily":true,"__experimentalFontWeight":true,"__experimentalFontStyle":true,"__experimentalTextTransform":true,"__experimentalTextDecoration":true,"__experimentalLetterSpacing":true,"__experimentalDefaultControls":{"fontSize":true}},"interactivity":{"clientNavigation":true},"__experimentalBorder":{"radius":true,"color":true,"width":true,"style":true,"__experimentalDefaultControls":{"radius":true,"color":true,"width":true,"style":true}}},"textdomain":"gatherpress","editorScript":"file:./index.js","style":"file:./style-index.css","render":"file:./render.php"}');(0,n.registerBlockType)($,{edit:({attributes:{textAlign:e},setAttributes:t})=>{const r=(0,d.useBlockProps)({className:o({[`has-text-align-${e}`]:e})}),{dateTimeStart:n,dateTimeEnd:a,timezone:s}=(0,m.useSelect)((e=>({dateTimeStart:e("gatherpress/datetime").getDateTimeStart(),dateTimeEnd:e("gatherpress/datetime").getDateTimeEnd(),timezone:e("gatherpress/datetime").getTimezone()})),[]);return(0,v.jsxs)("div",{...r,children:[(0,v.jsx)(d.BlockControls,{children:(0,v.jsx)(d.AlignmentToolbar,{value:e,onChange:e=>t({textAlign:e})})}),Y(n,a,s),h()&&(0,v.jsx)(d.InspectorControls,{children:(0,v.jsx)(c.PanelBody,{children:(0,v.jsx)(c.__experimentalVStack,{spacing:4,children:(0,v.jsx)(M,{})})})})]})},save:()=>null})}},r={};function n(e){var a=r[e];if(void 0!==a)return a.exports;var s=r[e]={exports:{}};return t[e](s,s.exports,n),s.exports}n.m=t,e=[],n.O=(t,r,a,s)=>{if(!r){var i=1/0;for(c=0;c=s)&&Object.keys(n.O).every((e=>n.O[e](r[l])))?r.splice(l--,1):(o=!1,s0&&e[c-1][2]>s;c--)e[c]=e[c-1];e[c]=[r,a,s]},n.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return n.d(t,{a:t}),t},n.d=(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{var e={532:0,4:0};n.O.j=t=>0===e[t];var t=(t,r)=>{var a,s,i=r[0],o=r[1],l=r[2],d=0;if(i.some((t=>0!==e[t]))){for(a in o)n.o(o,a)&&(n.m[a]=o[a]);if(l)var c=l(n)}for(t&&t(r);dn(750)));a=n.O(a)})(); \ No newline at end of file diff --git a/build/blocks/events-list/index.asset.php b/build/blocks/events-list/index.asset.php index 0d568f953..4ff61ae4e 100644 --- a/build/blocks/events-list/index.asset.php +++ b/build/blocks/events-list/index.asset.php @@ -1 +1 @@ - array('lodash', 'react', 'react-dom', 'react-jsx-runtime', 'wp-api-fetch', 'wp-block-editor', 'wp-blocks', 'wp-components', 'wp-core-data', 'wp-data', 'wp-element', 'wp-i18n'), 'version' => '97b565c364ee272e7701'); + array('lodash', 'react', 'react-dom', 'react-jsx-runtime', 'wp-api-fetch', 'wp-block-editor', 'wp-blocks', 'wp-components', 'wp-core-data', 'wp-data', 'wp-element', 'wp-i18n'), 'version' => '5a8bd90dfac508ab2c54'); diff --git a/build/blocks/events-list/index.js b/build/blocks/events-list/index.js index 3d6d9f8e7..1d36eff56 100644 --- a/build/blocks/events-list/index.js +++ b/build/blocks/events-list/index.js @@ -2,4 +2,4 @@ (0,c.__)("You must %s to RSVP to events.","gatherpress"),`\n\t\t\t\t\t\t\t\t\t${(0,c._x)("Login","Context: You must ~ to RSVP to events.","gatherpress")}\n\t\t\t\t\t\t\t\t`))}),""!==ze("urls.registrationUrl")&&(0,We.jsx)("div",{className:"gatherpress-modal__text",children:l((0,c.sprintf)(/* translators: %s: 'Register' (hyperlinked) */ /* translators: %s: 'Register' (hyperlinked) */ (0,c.__)("%s if you do not have an account.","gatherpress"),`\n\t\t\t\t\t\t\t\t\t\t${(0,c._x)("Register","Context: ~ if you do not have an account.","gatherpress")}\n\t\t\t\t\t\t\t\t\t`))})]}),(0,We.jsx)(d.ButtonGroup,{className:"gatherpress-buttons wp-block-buttons",children:(0,We.jsx)("div",{className:"gatherpress-buttons__container wp-block-button",children:(0,We.jsx)("a",{href:"#",onClick:S,className:"gatherpress-buttons__button wp-block-button__link",children:(0,c.__)("Close","gatherpress")})})})]}),k=({status:e})=>{let t="",n="";return"not_attending"===e||"no_status"===e?(t="attending",n=(0,c.__)("Attend","gatherpress")):(t="not_attending",n=(0,c._x)("Not Attending","action of not attending","gatherpress")),(0,We.jsxs)("div",{className:"gatherpress-modal gatherpress-modal__rsvp",children:[(0,We.jsx)("div",{className:"gatherpress-modal__header",children:E(s)?E(s):(0,We.jsx)(d.Spinner,{})}),(0,We.jsxs)("div",{className:"gatherpress-modal__content",children:[(0,We.jsx)("div",{className:"gatherpress-modal__text",children:l((0,c.sprintf)(/* translators: %s: button label. */ /* translators: %s: button label. */ (0,c.__)("To set or change your attending status, simply click the %s button below.","gatherpress"),""+n+""))}),0{const t=Number(e.target.value);m(t),O(e,s,u,t,!1)},defaultValue:f})]}),o&&(0,We.jsxs)("div",{className:"gatherpress-modal__anonymous",children:[(0,We.jsx)("input",{id:"gatherpress-anonymous",type:"checkbox",onChange:e=>{const t=Number(e.target.checked);p(t),O(e,s,t,0,!1)},checked:u}),(0,We.jsx)("label",{htmlFor:"gatherpress-anonymous",tabIndex:"0",className:"gatherpress-tooltip","data-tooltip-id":"gatherpress-anonymous-tooltip","data-tooltip-content":(0,c.__)("Only admins will see your identity.","gatherpress"),children:(0,c.__)("List me as anonymous.","gatherpress")}),(0,We.jsx)(He,{id:"gatherpress-anonymous-tooltip"})]})]}),(0,We.jsxs)(d.ButtonGroup,{className:"gatherpress-buttons wp-block-buttons",children:[(0,We.jsx)("div",{className:"gatherpress-buttons__container wp-block-button is-style-outline",children:(0,We.jsx)("a",{href:"#",onClick:e=>O(e,t,u,"not_attending"!==t?f:0,"not_attending"===t),className:"gatherpress-buttons__button wp-block-button__link",children:n})}),(0,We.jsx)("div",{className:"gatherpress-buttons__container wp-block-button",children:(0,We.jsx)("a",{href:"#",onClick:S,className:"gatherpress-buttons__button wp-block-button__link",children:(0,c.__)("Close","gatherpress")})})]}),r&&"no_status"===s&&1!==u?(0,We.jsx)(d.ButtonGroup,{className:"gatherpress-buttons wp-block-buttons",children:(0,We.jsx)("div",{className:"gatherpress-buttons__container wp-block-button",children:(0,We.jsx)("a",{href:"#",onClick:e=>O(e,"not_attending",null),className:"gatherpress-buttons__text-link",children:(0,c._x)("Not Attending","Responded Status","gatherpress")})})}):(0,We.jsx)(We.Fragment,{})]})};return(0,We.jsxs)("div",{className:"gatherpress-rsvp",children:[(0,We.jsxs)(d.ButtonGroup,{className:"gatherpress-buttons wp-block-buttons",children:[(0,We.jsx)("div",{className:"gatherpress-buttons__container wp-block-button",children:(0,We.jsx)("a",{href:"#",className:"gatherpress-buttons__button wp-block-button__link wp-element-button","aria-expanded":b,tabIndex:"0",onKeyDown:e=>{13===e.keyCode&&(g("hidden"===y?"show":"hidden"),w("false"===b?"true":"false"))},onClick:e=>(e=>{e.preventDefault(),x(!0)})(e),children:(e=>{switch(e){case"attending":case"waiting_list":case"not_attending":return(0,c.__)("Edit RSVP","gatherpress")}return(0,c.__)("RSVP","gatherpress")})(s)})}),(0,We.jsxs)(v(),{isOpen:_,onRequestClose:S,style:{overlay:{zIndex:999999999},content:{top:"50%",left:"50%",right:"auto",bottom:"auto",marginRight:"-50%",transform:"translate(-50%, -50%)"}},contentLabel:(0,c.__)("Edit RSVP","gatherpress"),children:[0===t.length&&(0,We.jsx)(C,{}),0!==t.length&&(0,We.jsx)(k,{status:s})]})]}),"no_status"!==s&&(0,We.jsxs)("div",{className:"gatherpress-status",children:[(0,We.jsx)(Ve,{type:n,status:s}),0{const[r,i]=(0,h.useState)(o);((e,t="")=>{for(const[n,o]of Object.entries(e)){let e=n;t&&(e+="_"+String(t)),addEventListener(e,(e=>{o(e.detail)}),!1)}})({setRsvpResponse:i},e);let s="";return"object"==typeof r&&void 0!==r[t]&&(o=[...r[t].responses],n&&(o=o.splice(0,n)),s=o.map(((e,t)=>{const{name:n,photo:o}=e;return(0,We.jsx)("figure",{className:"gatherpress-rsvp-response__member-avatar",children:(0,We.jsx)("img",{alt:n,title:n,src:o})},t)}))),(0,We.jsx)(We.Fragment,{children:s})},Ge=e=>{const{type:t,event:n,eventOptions:o}=e,r="default"===o.imageSize?"featured_image":"featured_image_"+o.imageSize,i=l(n[r]),s="gatherpress-events-list";let a="location";const c=n.venue?.is_online_event;return c&&(a="video-alt2"),(0,We.jsxs)("div",{className:`${s}`,children:[(0,We.jsx)("div",{className:`${s}__header`,children:(0,We.jsxs)("div",{className:`${s}__info`,children:[o.showFeaturedImage&&(0,We.jsx)("figure",{className:`${s}__image`,children:(0,We.jsx)("a",{href:n.permalink,children:i})}),(0,We.jsx)("div",{className:`${s}__datetime`,children:(0,We.jsx)("strong",{children:n.datetime_start})}),(0,We.jsx)("div",{className:`${s}__title`,children:(0,We.jsx)("a",{href:n.permalink,children:l(n.title)})}),n.venue&&o.showVenue&&(0,We.jsxs)("div",{className:`${s}__venue`,children:[(0,We.jsx)("span",{className:`dashicons dashicons-${a}`}),!c&&(0,We.jsx)("a",{href:n.venue.permalink,children:l(n.venue.name)}),c&&(0,We.jsx)("span",{children:l(n.venue.name)})]}),o.showDescription&&(0,We.jsx)("div",{className:`${s}__content`,children:(0,We.jsx)("div",{className:`${s}__excerpt`,children:l((u=n.excerpt,u.split(" ").splice(0,parseInt(o.descriptionLimit)).join(" ")+"[…]"))})})]})}),(0,We.jsxs)("div",{className:`${s}__footer`,children:[o.showRsvpResponse&&(0,We.jsx)("div",{className:"gatherpress-rsvp-response__items",children:(0,We.jsx)($e,{postId:n.ID,value:"attending",responses:n.responses,limit:"3"})}),"upcoming"===t&&o.showRsvp&&(0,We.jsx)(qe,{postId:n.ID,currentUser:n.current_user,type:t,enableAnonymousRsvp:n.gatherpress_enable_anonymous_rsvp,enableInitialDecline:n.gatherpress_enable_initial_decline}),"past"===t&&o.showRsvp&&""!==n.current_user&&(0,We.jsx)(Ve,{type:t,status:n.current_user?.status})]})]});var u},Xe=e=>{const{eventOptions:t,maxNumberOfEvents:n,datetimeFormat:o,type:r,topics:i,venues:s}=e,[a,l]=(0,h.useState)([]),[u,p]=(0,h.useState)(!1),f=a.map((e=>(0,We.jsx)(Ge,{eventOptions:t,type:r,event:e},e.ID)));return(0,h.useEffect)((()=>{let e="",t="";"object"==typeof i&&(e=i.map((e=>e.slug))?.join(",")),"object"==typeof s&&(t=s.map((e=>e.slug))?.join(","));const a=ze("urls.eventRestApi")+`/events-list?event_list_type=${r}&max_number=${n}&datetime_format=${o}&topics=${e}&venues=${t}`;ze("misc.isUserLoggedIn")?Ue()({path:a}).then((e=>{p(!0),l(e)})):fetch(a).then((e=>e.json())).then((e=>{p(!0),l(e)}))}),[l,n,o,r,i,s]),(0,We.jsxs)("div",{className:`gatherpress-${r}-events-list`,children:[!u&&(0,We.jsx)(d.Spinner,{}),u&&0===a.length&&(()=>{const e="upcoming"===r?(0,c.__)("There are no upcoming events.","gatherpress"):(0,c.__)("There are no past events.","gatherpress");return(0,We.jsx)("div",{className:`gatherpress-${r}-events__no_events_message`,children:e})})(),u&&f]})},Ye=e=>{const{isSelected:t}=e,n=t?"none":"block";return(0,We.jsxs)("div",{style:{position:"relative"},children:[e.children,(0,We.jsx)("div",{style:{position:"absolute",top:"0",right:"0",bottom:"0",left:"0",display:n}})]})},Ke=JSON.parse('{"$schema":"https://schemas.wp.org/trunk/block.json","apiVersion":2,"name":"gatherpress/events-list","version":"1.0.1","title":"Events List","category":"gatherpress","icon":"list-view","example":{},"description":"Displays events that are either upcoming or have occurred in the past.","attributes":{"eventOptions":{"type":"object","default":{"descriptionLimit":55,"imageSize":"default","showRsvpResponse":true,"showFeaturedImage":true,"showDescription":true,"showRsvp":true,"showVenue":true}},"datetimeFormat":{"type":"string","default":"D, M j, Y, g:i a T"},"maxNumberOfEvents":{"type":"integer","default":5},"topics":{"type":"array","items":{"type":"object"}},"venues":{"type":"array","items":{"type":"object"}},"type":{"type":"string","default":"upcoming"}},"supports":{"html":false},"textdomain":"gatherpress","editorScript":"file:./index.js","style":"file:./style-index.css","viewScript":"file:./events-list.js","render":"file:./render.php"}');(0,o.registerBlockType)(Ke,{edit:e=>{var t,n,o;const{attributes:i,setAttributes:a}=e,h=(0,u.useBlockProps)(),{topics:m,venues:v}=i,{topicsList:y}=(0,f.useSelect)((e=>{const{getEntityRecords:t}=e(p.store);return{topicsList:t("taxonomy","gatherpress_topic",{per_page:-1,context:"view"})}}),[]),{venueList:g}=(0,f.useSelect)((e=>{const{getEntityRecords:t}=e(p.store);return{venueList:t("taxonomy","_gatherpress_venue",{per_page:-1,context:"view"})}}),[]),b=null!==(t=y?.reduce(((e,t)=>({...e,[t.name]:t})),{}))&&void 0!==t?t:{},w=null!==(n=g?.reduce(((e,t)=>({...e,[t.name]:t})),{}))&&void 0!==n?n:{};return(0,We.jsxs)(We.Fragment,{children:[(0,We.jsxs)(u.InspectorControls,{children:[(0,We.jsxs)(d.PanelBody,{children:[(0,We.jsx)("p",{children:(0,c.__)("Event List type","gatherpress")}),(0,We.jsxs)(d.ButtonGroup,{className:"block-editor-block-styles__variants",children:[(0,We.jsx)(d.Button,{className:s()("block-editor-block-styles__item",{"is-active":"upcoming"===i.type}),variant:"secondary",label:(0,c.__)("Upcoming","gatherpress"),onClick:()=>{a({type:"upcoming"})},children:(0,We.jsx)(d.__experimentalText,{as:"span",limit:12,ellipsizeMode:"tail",className:"block-editor-block-styles__item-text",truncate:!0,children:(0,c.__)("Upcoming","gatherpress")})}),(0,We.jsx)(d.Button,{className:s()("block-editor-block-styles__item",{"is-active":"past"===i.type}),variant:"secondary",label:(0,c.__)("Past","gatherpress"),onClick:()=>{a({type:"past"})},children:(0,We.jsx)(d.__experimentalText,{as:"span",limit:12,ellipsizeMode:"tail",className:"block-editor-block-styles__item-text",truncate:!0,children:(0,c.__)("Past","gatherpress")})})]})]}),(0,We.jsxs)(d.PanelBody,{children:[(0,We.jsx)(d.TextControl,{label:(0,c.__)("Date & time format","gatherpress"),value:i.datetimeFormat,help:l((0,c.__)('For more information read the Documentation on date and time formatting.',"gatherpress")),onChange:e=>a({datetimeFormat:e})}),(0,We.jsx)(d.RangeControl,{label:(0,c.__)("Maximum number of events to display","gatherpress"),min:1,max:10,value:parseInt(i.maxNumberOfEvents,10),onChange:e=>a({maxNumberOfEvents:e})}),(0,We.jsx)(d.FormTokenField,{label:(0,c.__)("Topics","gatherpress"),value:m&&m.map((e=>({id:e.id,slug:e.slug,value:e.name||e.value}))),suggestions:Object.keys(b),onChange:e=>{if(e.some((e=>"string"==typeof e&&!b[e])))return;const t=e.map((e=>"string"==typeof e?b[e]:e));if((0,r.includes)(t,null))return!1;a({topics:t})},maxSuggestions:20},"query-controls-topics-select"),(0,We.jsx)(d.FormTokenField,{label:(0,c.__)("Venues","gatherpress"),value:v&&v.map((e=>({id:e.id,slug:e.slug,value:e.name||e.value}))),suggestions:Object.keys(w),onChange:e=>{if(e.some((e=>"string"==typeof e&&!w[e])))return;const t=e.map((e=>"string"==typeof e?w[e]:e));if((0,r.includes)(t,null))return!1;a({venues:t})},maxSuggestions:20},"query-controls-venues-select")]}),(0,We.jsxs)(d.PanelBody,{children:[(0,We.jsx)(d.ToggleControl,{label:(0,c.__)("Show/Hide All RSVP Responses","gatherpress"),help:i.eventOptions.showRsvpResponse?(0,c.__)("Show All RSVP Responses","gatherpress"):(0,c.__)("Hide All RSVP Responses","gatherpress"),checked:null===(o=i.eventOptions.showRsvpResponse)||void 0===o||o,onChange:e=>{a({eventOptions:{...i.eventOptions,showRsvpResponse:e}})}}),(0,We.jsx)(d.ToggleControl,{label:(0,c.__)("Show/Hide My RSVP Response"),help:i.eventOptions.showRsvp?(0,c.__)("Show My RSVP Response"):(0,c.__)("Hide My RSVP Response"),checked:i.eventOptions.showRsvp,onChange:e=>{a({eventOptions:{...i.eventOptions,showRsvp:e}})}}),(0,We.jsx)(d.SelectControl,{label:(0,c.__)("Image Size Options","gatherpress"),value:i.eventOptions.imageSize,options:[{label:"Default",value:"default"},{label:"Thumbnail",value:"thumbnail"},{label:"Large",value:"large"}],onChange:e=>a({eventOptions:{...i.eventOptions,imageSize:e}})}),(0,We.jsx)(d.ToggleControl,{label:(0,c.__)("Show/Hide Featured Image","gatherpress"),help:i.eventOptions.showFeaturedImage?(0,c.__)("Show Featured Image","gatherpress"):(0,c.__)("Hide Featured Image","gatherpress"),checked:i.eventOptions.showFeaturedImage,onChange:e=>{a({eventOptions:{...i.eventOptions,showFeaturedImage:e}})}}),(0,We.jsx)(d.ToggleControl,{label:(0,c.__)("Show/Hide Description","gatherpress"),help:i.eventOptions.showDescription?(0,c.__)("Show Description","gatherpress"):(0,c.__)("Hide Description","gatherpress"),checked:i.eventOptions.showDescription,onChange:e=>{a({eventOptions:{...i.eventOptions,showDescription:e}})}}),(0,We.jsx)(d.TextControl,{label:(0,c.__)("Description Limit"),help:(0,c.__)("Limit the amount of words that display underneath the title of the event"),value:parseInt(i.eventOptions.descriptionLimit),onChange:e=>a({eventOptions:{...i.eventOptions,descriptionLimit:e}}),min:0,max:55,type:"number"}),(0,We.jsx)(d.ToggleControl,{label:(0,c.__)("Show/Event Venue"),help:i.eventOptions.showVenue?(0,c.__)("Show Event Venue"):(0,c.__)("Hide Event Venue"),checked:i.eventOptions.showVenue,onChange:e=>{a({eventOptions:{...i.eventOptions,showVenue:e}})}})]})]}),(0,We.jsx)("div",{...h,children:(0,We.jsx)(Ye,{children:(0,We.jsx)(Xe,{eventOptions:i.eventOptions,maxNumberOfEvents:i.maxNumberOfEvents,datetimeFormat:i.datetimeFormat,type:i.type,topics:i.topics,venues:i.venues})})})]})},save:()=>null})},5413:(e,t)=>{"use strict";var n;Object.defineProperty(t,"__esModule",{value:!0}),t.Doctype=t.CDATA=t.Tag=t.Style=t.Script=t.Comment=t.Directive=t.Text=t.Root=t.isTag=t.ElementType=void 0,function(e){e.Root="root",e.Text="text",e.Directive="directive",e.Comment="comment",e.Script="script",e.Style="style",e.Tag="tag",e.CDATA="cdata",e.Doctype="doctype"}(n=t.ElementType||(t.ElementType={})),t.isTag=function(e){return e.type===n.Tag||e.type===n.Script||e.type===n.Style},t.Root=n.Root,t.Text=n.Text,t.Directive=n.Directive,t.Comment=n.Comment,t.Script=n.Script,t.Style=n.Style,t.Tag=n.Tag,t.CDATA=n.CDATA,t.Doctype=n.Doctype},1141:function(e,t,n){"use strict";var o=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!("get"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,r)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||o(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),t.DomHandler=void 0;var i=n(5413),s=n(6957);r(n(6957),t);var a={withStartIndices:!1,withEndIndices:!1,xmlMode:!1},l=function(){function e(e,t,n){this.dom=[],this.root=new s.Document(this.dom),this.done=!1,this.tagStack=[this.root],this.lastNode=null,this.parser=null,"function"==typeof t&&(n=t,t=a),"object"==typeof e&&(t=e,e=void 0),this.callback=null!=e?e:null,this.options=null!=t?t:a,this.elementCB=null!=n?n:null}return e.prototype.onparserinit=function(e){this.parser=e},e.prototype.onreset=function(){this.dom=[],this.root=new s.Document(this.dom),this.done=!1,this.tagStack=[this.root],this.lastNode=null,this.parser=null},e.prototype.onend=function(){this.done||(this.done=!0,this.parser=null,this.handleCallback(null))},e.prototype.onerror=function(e){this.handleCallback(e)},e.prototype.onclosetag=function(){this.lastNode=null;var e=this.tagStack.pop();this.options.withEndIndices&&(e.endIndex=this.parser.endIndex),this.elementCB&&this.elementCB(e)},e.prototype.onopentag=function(e,t){var n=this.options.xmlMode?i.ElementType.Tag:void 0,o=new s.Element(e,t,void 0,n);this.addNode(o),this.tagStack.push(o)},e.prototype.ontext=function(e){var t=this.lastNode;if(t&&t.type===i.ElementType.Text)t.data+=e,this.options.withEndIndices&&(t.endIndex=this.parser.endIndex);else{var n=new s.Text(e);this.addNode(n),this.lastNode=n}},e.prototype.oncomment=function(e){if(this.lastNode&&this.lastNode.type===i.ElementType.Comment)this.lastNode.data+=e;else{var t=new s.Comment(e);this.addNode(t),this.lastNode=t}},e.prototype.oncommentend=function(){this.lastNode=null},e.prototype.oncdatastart=function(){var e=new s.Text(""),t=new s.CDATA([e]);this.addNode(t),e.parent=t,this.lastNode=e},e.prototype.oncdataend=function(){this.lastNode=null},e.prototype.onprocessinginstruction=function(e,t){var n=new s.ProcessingInstruction(e,t);this.addNode(n)},e.prototype.handleCallback=function(e){if("function"==typeof this.callback)this.callback(e,this.dom);else if(e)throw e},e.prototype.addNode=function(e){var t=this.tagStack[this.tagStack.length-1],n=t.children[t.children.length-1];this.options.withStartIndices&&(e.startIndex=this.parser.startIndex),this.options.withEndIndices&&(e.endIndex=this.parser.endIndex),t.children.push(e),n&&(e.prev=n,n.next=e),e.parent=t,this.lastNode=null},e}();t.DomHandler=l,t.default=l},6957:function(e,t,n){"use strict";var o,r=this&&this.__extends||(o=function(e,t){return o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},o(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function __(){this.constructor=e}o(e,t),e.prototype=null===t?Object.create(t):(__.prototype=t.prototype,new __)}),i=this&&this.__assign||function(){return i=Object.assign||function(e){for(var t,n=1,o=arguments.length;n0?this.children[this.children.length-1]:null},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"childNodes",{get:function(){return this.children},set:function(e){this.children=e},enumerable:!1,configurable:!0}),t}(a);t.NodeWithChildren=p;var f=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.type=s.ElementType.CDATA,t}return r(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 4},enumerable:!1,configurable:!0}),t}(p);t.CDATA=f;var h=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.type=s.ElementType.Root,t}return r(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 9},enumerable:!1,configurable:!0}),t}(p);t.Document=h;var m=function(e){function t(t,n,o,r){void 0===o&&(o=[]),void 0===r&&(r="script"===t?s.ElementType.Script:"style"===t?s.ElementType.Style:s.ElementType.Tag);var i=e.call(this,o)||this;return i.name=t,i.attribs=n,i.type=r,i}return r(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 1},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"tagName",{get:function(){return this.name},set:function(e){this.name=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"attributes",{get:function(){var e=this;return Object.keys(this.attribs).map((function(t){var n,o;return{name:t,value:e.attribs[t],namespace:null===(n=e["x-attribsNamespace"])||void 0===n?void 0:n[t],prefix:null===(o=e["x-attribsPrefix"])||void 0===o?void 0:o[t]}}))},enumerable:!1,configurable:!0}),t}(p);function v(e){return(0,s.isTag)(e)}function y(e){return e.type===s.ElementType.CDATA}function g(e){return e.type===s.ElementType.Text}function b(e){return e.type===s.ElementType.Comment}function w(e){return e.type===s.ElementType.Directive}function _(e){return e.type===s.ElementType.Root}function x(e,t){var n;if(void 0===t&&(t=!1),g(e))n=new c(e.data);else if(b(e))n=new u(e.data);else if(v(e)){var o=t?S(e.children):[],r=new m(e.name,i({},e.attribs),o);o.forEach((function(e){return e.parent=r})),null!=e.namespace&&(r.namespace=e.namespace),e["x-attribsNamespace"]&&(r["x-attribsNamespace"]=i({},e["x-attribsNamespace"])),e["x-attribsPrefix"]&&(r["x-attribsPrefix"]=i({},e["x-attribsPrefix"])),n=r}else if(y(e)){o=t?S(e.children):[];var s=new f(o);o.forEach((function(e){return e.parent=s})),n=s}else if(_(e)){o=t?S(e.children):[];var a=new h(o);o.forEach((function(e){return e.parent=a})),e["x-mode"]&&(a["x-mode"]=e["x-mode"]),n=a}else{if(!w(e))throw new Error("Not implemented yet: ".concat(e.type));var l=new d(e.name,e.data);null!=e["x-name"]&&(l["x-name"]=e["x-name"],l["x-publicId"]=e["x-publicId"],l["x-systemId"]=e["x-systemId"]),n=l}return n.startIndex=e.startIndex,n.endIndex=e.endIndex,null!=e.sourceCodeLocation&&(n.sourceCodeLocation=e.sourceCodeLocation),n}function S(e){for(var t=e.map((function(e){return x(e,!0)})),n=1;n{var o;!function(){"use strict";var r=!("undefined"==typeof window||!window.document||!window.document.createElement),i={canUseDOM:r,canUseWorkers:"undefined"!=typeof Worker,canUseEventListeners:r&&!(!window.addEventListener&&!window.attachEvent),canUseViewport:r&&!!window.screen};void 0===(o=function(){return i}.call(t,n,t,e))||(e.exports=o)}()},5270:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CASE_SENSITIVE_TAG_NAMES_MAP=t.CASE_SENSITIVE_TAG_NAMES=void 0,t.CASE_SENSITIVE_TAG_NAMES=["animateMotion","animateTransform","clipPath","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","foreignObject","linearGradient","radialGradient","textPath"],t.CASE_SENSITIVE_TAG_NAMES_MAP=t.CASE_SENSITIVE_TAG_NAMES.reduce((function(e,t){return e[t.toLowerCase()]=t,e}),{})},5496:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){var t,u,d=e.match(i),p=d&&d[1]?d[1].toLowerCase():"";switch(p){case n:var h=c(e);return s.test(e)||null===(t=null==(v=h.querySelector(o))?void 0:v.parentNode)||void 0===t||t.removeChild(v),a.test(e)||null===(u=null==(v=h.querySelector(r))?void 0:v.parentNode)||void 0===u||u.removeChild(v),h.querySelectorAll(n);case o:case r:var m=l(e).querySelectorAll(p);return a.test(e)&&s.test(e)?m[0].parentNode.childNodes:m;default:return f?f(e):(v=l(e,r).querySelector(r)).childNodes;var v}};var n="html",o="head",r="body",i=/<([a-zA-Z]+[0-9]?)/,s=//i,a=//i,l=function(e,t){throw new Error("This browser does not support `document.implementation.createHTMLDocument`")},c=function(e,t){throw new Error("This browser does not support `DOMParser.prototype.parseFromString`")},u="object"==typeof window&&window.DOMParser;if("function"==typeof u){var d=new u;l=c=function(e,t){return t&&(e="<".concat(t,">").concat(e,"")),d.parseFromString(e,"text/html")}}if("object"==typeof document&&document.implementation){var p=document.implementation.createHTMLDocument();l=function(e,t){if(t){var n=p.documentElement.querySelector(t);return n&&(n.innerHTML=e),p}return p.documentElement.innerHTML=e,p}}var f,h="object"==typeof document&&document.createElement("template");h&&h.content&&(f=function(e){return h.innerHTML=e,h.content.childNodes})},2471:function(e,t,n){"use strict";var o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){if("string"!=typeof e)throw new TypeError("First argument must be a string");if(!e)return[];var t=e.match(s),n=t?t[1]:void 0;return(0,i.formatDOM)((0,r.default)(e),null,n)};var r=o(n(5496)),i=n(7731),s=/<(![a-zA-Z\s]+)>/},7731:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.formatAttributes=i,t.formatDOM=function e(t,n,r){void 0===n&&(n=null);for(var a,l=[],c=0,u=t.length;c{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){void 0===e&&(e={});var n={},c=Boolean(e.type&&a[e.type]);for(var u in e){var d=e[u];if((0,o.isCustomAttribute)(u))n[u]=d;else{var p=u.toLowerCase(),f=l(p);if(f){var h=(0,o.getPropertyInfo)(f);switch(i.includes(f)&&s.includes(t)&&!c&&(f=l("default"+p)),n[f]=d,h&&h.type){case o.BOOLEAN:n[f]=!0;break;case o.OVERLOADED_BOOLEAN:""===d&&(n[f]=!0)}}else r.PRESERVE_CUSTOM_ATTRIBUTES&&(n[u]=d)}}return(0,r.setStyleProp)(e.style,n),n};var o=n(4210),r=n(4958),i=["checked","value"],s=["input","select","textarea"],a={reset:!0,submit:!0};function l(e){return o.possibleStandardNames[e]}},308:function(e,t,n){"use strict";var o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t,n){void 0===n&&(n={});for(var o=[],r="function"==typeof n.replace,c=n.transform||s.returnFirstArg,u=n.library||a,d=u.cloneElement,p=u.createElement,f=u.isValidElement,h=t.length,m=0;m1&&(y=d(y,{key:y.key||m})),o.push(c(y,v,m));continue}}if("text"!==v.type){var g=v,b={};l(g)?((0,s.setStyleProp)(g.attribs.style,g.attribs),b=g.attribs):g.attribs&&(b=(0,i.default)(g.attribs,g.name));var w=void 0;switch(v.type){case"script":case"style":v.children[0]&&(b.dangerouslySetInnerHTML={__html:v.children[0].data});break;case"tag":"textarea"===v.name&&v.children[0]?b.defaultValue=v.children[0].data:v.children&&v.children.length&&(w=e(v.children,n));break;default:continue}h>1&&(b.key=m),o.push(c(p(v.name,b,w),v,m))}else{var _=!v.data.trim().length;if(_&&v.parent&&!(0,s.canTextBeChildOfNode)(v.parent))continue;if(n.trim&&_)continue;o.push(c(v.data,v,m))}}return 1===o.length?o[0]:o};var r=n(1609),i=o(n(840)),s=n(4958),a={cloneElement:r.cloneElement,createElement:r.createElement,isValidElement:r.isValidElement};function l(e){return s.PRESERVE_CUSTOM_ATTRIBUTES&&"tag"===e.type&&(0,s.isCustomComponent)(e.name,e.attribs)}},442:function(e,t,n){"use strict";var o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.htmlToDOM=t.domToReact=t.attributesToProps=t.Text=t.ProcessingInstruction=t.Element=t.Comment=void 0,t.default=function(e,t){if("string"!=typeof e)throw new TypeError("First argument must be a string");return e?(0,s.default)((0,r.default)(e,(null==t?void 0:t.htmlparser2)||l),t):[]};var r=o(n(2471));t.htmlToDOM=r.default;var i=o(n(840));t.attributesToProps=i.default;var s=o(n(308));t.domToReact=s.default;var a=n(1141);Object.defineProperty(t,"Comment",{enumerable:!0,get:function(){return a.Comment}}),Object.defineProperty(t,"Element",{enumerable:!0,get:function(){return a.Element}}),Object.defineProperty(t,"ProcessingInstruction",{enumerable:!0,get:function(){return a.ProcessingInstruction}}),Object.defineProperty(t,"Text",{enumerable:!0,get:function(){return a.Text}});var l={lowerCaseAttributeNames:!1}},4958:function(e,t,n){"use strict";var o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.returnFirstArg=t.canTextBeChildOfNode=t.ELEMENTS_WITH_NO_TEXT_CHILDREN=t.PRESERVE_CUSTOM_ATTRIBUTES=void 0,t.isCustomComponent=function(e,t){return e.includes("-")?!s.has(e):Boolean(t&&"string"==typeof t.is)},t.setStyleProp=function(e,t){if("string"==typeof e)if(e.trim())try{t.style=(0,i.default)(e,a)}catch(e){t.style={}}else t.style={}};var r=n(1609),i=o(n(5229)),s=new Set(["annotation-xml","color-profile","font-face","font-face-src","font-face-uri","font-face-format","font-face-name","missing-glyph"]),a={reactCompat:!0};t.PRESERVE_CUSTOM_ATTRIBUTES=Number(r.version.split(".")[0])>=16,t.ELEMENTS_WITH_NO_TEXT_CHILDREN=new Set(["tr","tbody","thead","tfoot","colgroup","table","head","html","frameset"]),t.canTextBeChildOfNode=function(e){return!t.ELEMENTS_WITH_NO_TEXT_CHILDREN.has(e.name)},t.returnFirstArg=function(e){return e}},9788:e=>{var t=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,n=/\n/g,o=/^\s*/,r=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,i=/^:\s*/,s=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,a=/^[;\s]*/,l=/^\s+|\s+$/g,c="";function u(e){return e?e.replace(l,c):c}e.exports=function(e,l){if("string"!=typeof e)throw new TypeError("First argument must be a string");if(!e)return[];l=l||{};var d=1,p=1;function f(e){var t=e.match(n);t&&(d+=t.length);var o=e.lastIndexOf("\n");p=~o?e.length-o:p+e.length}function h(){var e={line:d,column:p};return function(t){return t.position=new m(e),b(),t}}function m(e){this.start=e,this.end={line:d,column:p},this.source=l.source}m.prototype.content=e;var v=[];function y(t){var n=new Error(l.source+":"+d+":"+p+": "+t);if(n.reason=t,n.filename=l.source,n.line=d,n.column=p,n.source=e,!l.silent)throw n;v.push(n)}function g(t){var n=t.exec(e);if(n){var o=n[0];return f(o),e=e.slice(o.length),n}}function b(){g(o)}function w(e){var t;for(e=e||[];t=_();)!1!==t&&e.push(t);return e}function _(){var t=h();if("/"==e.charAt(0)&&"*"==e.charAt(1)){for(var n=2;c!=e.charAt(n)&&("*"!=e.charAt(n)||"/"!=e.charAt(n+1));)++n;if(n+=2,c===e.charAt(n-1))return y("End of comment missing");var o=e.slice(2,n-2);return p+=2,f(o),e=e.slice(n),p+=2,t({type:"comment",comment:o})}}function x(){var e=h(),n=g(r);if(n){if(_(),!g(i))return y("property missing ':'");var o=g(s),l=e({type:"declaration",property:u(n[0].replace(t,c)),value:o?u(o[0].replace(t,c)):c});return g(a),l}}return b(),function(){var e,t=[];for(w(t);e=x();)!1!==e&&(t.push(e),w(t));return t}()}},2694:(e,t,n)=>{"use strict";var o=n(6925);function r(){}function i(){}i.resetWarningCache=r,e.exports=function(){function e(e,t,n,r,i,s){if(s!==o){var a=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw a.name="Invariant Violation",a}}function t(){return e}e.isRequired=e;var n={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:i,resetWarningCache:r};return n.PropTypes=n,n}},5556:(e,t,n)=>{e.exports=n(2694)()},6925:e=>{"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},1345:(e,t,n)=>{"use strict";function o(){var e=this.constructor.getDerivedStateFromProps(this.props,this.state);null!=e&&this.setState(e)}function r(e){this.setState(function(t){var n=this.constructor.getDerivedStateFromProps(e,t);return null!=n?n:null}.bind(this))}function i(e,t){try{var n=this.props,o=this.state;this.props=e,this.state=t,this.__reactInternalSnapshotFlag=!0,this.__reactInternalSnapshot=this.getSnapshotBeforeUpdate(n,o)}finally{this.props=n,this.state=o}}function s(e){var t=e.prototype;if(!t||!t.isReactComponent)throw new Error("Can only polyfill class components");if("function"!=typeof e.getDerivedStateFromProps&&"function"!=typeof t.getSnapshotBeforeUpdate)return e;var n=null,s=null,a=null;if("function"==typeof t.componentWillMount?n="componentWillMount":"function"==typeof t.UNSAFE_componentWillMount&&(n="UNSAFE_componentWillMount"),"function"==typeof t.componentWillReceiveProps?s="componentWillReceiveProps":"function"==typeof t.UNSAFE_componentWillReceiveProps&&(s="UNSAFE_componentWillReceiveProps"),"function"==typeof t.componentWillUpdate?a="componentWillUpdate":"function"==typeof t.UNSAFE_componentWillUpdate&&(a="UNSAFE_componentWillUpdate"),null!==n||null!==s||null!==a){var l=e.displayName||e.name,c="function"==typeof e.getDerivedStateFromProps?"getDerivedStateFromProps()":"getSnapshotBeforeUpdate()";throw Error("Unsafe legacy lifecycles will not be called for components using new component APIs.\n\n"+l+" uses "+c+" but also contains the following legacy lifecycles:"+(null!==n?"\n "+n:"")+(null!==s?"\n "+s:"")+(null!==a?"\n "+a:"")+"\n\nThe above lifecycles should be removed. Learn more about this warning here:\nhttps://fb.me/react-async-component-lifecycle-hooks")}if("function"==typeof e.getDerivedStateFromProps&&(t.componentWillMount=o,t.componentWillReceiveProps=r),"function"==typeof t.getSnapshotBeforeUpdate){if("function"!=typeof t.componentDidUpdate)throw new Error("Cannot polyfill getSnapshotBeforeUpdate() for components that do not define componentDidUpdate() on the prototype");t.componentWillUpdate=i;var u=t.componentDidUpdate;t.componentDidUpdate=function(e,t,n){var o=this.__reactInternalSnapshotFlag?this.__reactInternalSnapshot:n;u.call(this,e,t,o)}}return e}n.r(t),n.d(t,{polyfill:()=>s}),o.__suppressDeprecationWarning=!0,r.__suppressDeprecationWarning=!0,i.__suppressDeprecationWarning=!0},1720:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.bodyOpenClassName=t.portalClassName=void 0;var o=Object.assign||function(e){for(var t=1;t{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=Object.assign||function(e){for(var t=1;t0&&0==(g-=1)&&u.show(t),n.props.shouldFocusAfterRender&&(n.props.shouldReturnFocusAfterClose?(l.returnFocus(n.props.preventScroll),l.teardownScopedFocus()):l.popWithoutFocus()),n.props.onAfterClose&&n.props.onAfterClose(),h.default.deregister(n)},n.open=function(){n.beforeOpen(),n.state.afterOpen&&n.state.beforeClose?(clearTimeout(n.closeTimer),n.setState({beforeClose:!1})):(n.props.shouldFocusAfterRender&&(l.setupScopedFocus(n.node),l.markForFocusLater()),n.setState({isOpen:!0},(function(){n.openAnimationFrame=requestAnimationFrame((function(){n.setState({afterOpen:!0}),n.props.isOpen&&n.props.onAfterOpen&&n.props.onAfterOpen({overlayEl:n.overlay,contentEl:n.content})}))})))},n.close=function(){n.props.closeTimeoutMS>0?n.closeWithTimeout():n.closeWithoutTimeout()},n.focusContent=function(){return n.content&&!n.contentHasFocus()&&n.content.focus({preventScroll:!0})},n.closeWithTimeout=function(){var e=Date.now()+n.props.closeTimeoutMS;n.setState({beforeClose:!0,closesAt:e},(function(){n.closeTimer=setTimeout(n.closeWithoutTimeout,n.state.closesAt-Date.now())}))},n.closeWithoutTimeout=function(){n.setState({beforeClose:!1,isOpen:!1,afterOpen:!1,closesAt:null},n.afterClose)},n.handleKeyDown=function(e){(function(e){return"Tab"===e.code||9===e.keyCode})(e)&&(0,c.default)(n.content,e),n.props.shouldCloseOnEsc&&function(e){return"Escape"===e.code||27===e.keyCode}(e)&&(e.stopPropagation(),n.requestClose(e))},n.handleOverlayOnClick=function(e){null===n.shouldClose&&(n.shouldClose=!0),n.shouldClose&&n.props.shouldCloseOnOverlayClick&&(n.ownerHandlesClose()?n.requestClose(e):n.focusContent()),n.shouldClose=null},n.handleContentOnMouseUp=function(){n.shouldClose=!1},n.handleOverlayOnMouseDown=function(e){n.props.shouldCloseOnOverlayClick||e.target!=n.overlay||e.preventDefault()},n.handleContentOnClick=function(){n.shouldClose=!1},n.handleContentOnMouseDown=function(){n.shouldClose=!1},n.requestClose=function(e){return n.ownerHandlesClose()&&n.props.onRequestClose(e)},n.ownerHandlesClose=function(){return n.props.onRequestClose},n.shouldBeClosed=function(){return!n.state.isOpen&&!n.state.beforeClose},n.contentHasFocus=function(){return document.activeElement===n.content||n.content.contains(document.activeElement)},n.buildClassName=function(e,t){var o="object"===(void 0===t?"undefined":r(t))?t:{base:y[e],afterOpen:y[e]+"--after-open",beforeClose:y[e]+"--before-close"},i=o.base;return n.state.afterOpen&&(i=i+" "+o.afterOpen),n.state.beforeClose&&(i=i+" "+o.beforeClose),"string"==typeof t&&t?i+" "+t:i},n.attributesFromObject=function(e,t){return Object.keys(t).reduce((function(n,o){return n[e+"-"+o]=t[o],n}),{})},n.state={afterOpen:!1,beforeClose:!1},n.shouldClose=null,n.moveFromContentToOverlay=null,n}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,e),i(t,[{key:"componentDidMount",value:function(){this.props.isOpen&&this.open()}},{key:"componentDidUpdate",value:function(e,t){this.props.isOpen&&!e.isOpen?this.open():!this.props.isOpen&&e.isOpen&&this.close(),this.props.shouldFocusAfterRender&&this.state.isOpen&&!t.isOpen&&this.focusContent()}},{key:"componentWillUnmount",value:function(){this.state.isOpen&&this.afterClose(),clearTimeout(this.closeTimer),cancelAnimationFrame(this.openAnimationFrame)}},{key:"beforeOpen",value:function(){var e=this.props,t=e.appElement,n=e.ariaHideApp,o=e.htmlOpenClassName,r=e.bodyOpenClassName,i=e.parentSelector,s=i&&i().ownerDocument||document;r&&d.add(s.body,r),o&&d.add(s.getElementsByTagName("html")[0],o),n&&(g+=1,u.hide(t)),h.default.register(this)}},{key:"render",value:function(){var e=this.props,t=e.id,n=e.className,r=e.overlayClassName,i=e.defaultStyles,s=e.children,a=n?{}:i.content,l=r?{}:i.overlay;if(this.shouldBeClosed())return null;var c={ref:this.setOverlayRef,className:this.buildClassName("overlay",r),style:o({},l,this.props.style.overlay),onClick:this.handleOverlayOnClick,onMouseDown:this.handleOverlayOnMouseDown},u=o({id:t,ref:this.setContentRef,style:o({},a,this.props.style.content),className:this.buildClassName("content",n),tabIndex:"-1",onKeyDown:this.handleKeyDown,onMouseDown:this.handleContentOnMouseDown,onMouseUp:this.handleContentOnMouseUp,onClick:this.handleContentOnClick,role:this.props.role,"aria-label":this.props.contentLabel},this.attributesFromObject("aria",o({modal:!0},this.props.aria)),this.attributesFromObject("data",this.props.data||{}),{"data-testid":this.props.testId}),d=this.props.contentElement(u,s);return this.props.overlayElement(c,d)}}]),t}(s.Component);b.defaultProps={style:{overlay:{},content:{}},defaultStyles:{}},b.propTypes={isOpen:a.default.bool.isRequired,defaultStyles:a.default.shape({content:a.default.object,overlay:a.default.object}),style:a.default.shape({content:a.default.object,overlay:a.default.object}),className:a.default.oneOfType([a.default.string,a.default.object]),overlayClassName:a.default.oneOfType([a.default.string,a.default.object]),parentSelector:a.default.func,bodyOpenClassName:a.default.string,htmlOpenClassName:a.default.string,ariaHideApp:a.default.bool,appElement:a.default.oneOfType([a.default.instanceOf(f.default),a.default.instanceOf(p.SafeHTMLCollection),a.default.instanceOf(p.SafeNodeList),a.default.arrayOf(a.default.instanceOf(f.default))]),onAfterOpen:a.default.func,onAfterClose:a.default.func,onRequestClose:a.default.func,closeTimeoutMS:a.default.number,shouldFocusAfterRender:a.default.bool,shouldCloseOnOverlayClick:a.default.bool,shouldReturnFocusAfterClose:a.default.bool,preventScroll:a.default.bool,role:a.default.string,contentLabel:a.default.string,aria:a.default.object,data:a.default.object,children:a.default.node,shouldCloseOnEsc:a.default.bool,overlayRef:a.default.func,contentRef:a.default.func,id:a.default.string,overlayElement:a.default.func,contentElement:a.default.func,testId:a.default.string},t.default=b,e.exports=t.default},6462:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.resetState=function(){s&&(s.removeAttribute?s.removeAttribute("aria-hidden"):null!=s.length?s.forEach((function(e){return e.removeAttribute("aria-hidden")})):document.querySelectorAll(s).forEach((function(e){return e.removeAttribute("aria-hidden")}))),s=null},t.log=function(){},t.assertNodeList=a,t.setElement=function(e){var t=e;if("string"==typeof t&&i.canUseDOM){var n=document.querySelectorAll(t);a(n,t),t=n}return s=t||s},t.validateElement=l,t.hide=function(e){var t=!0,n=!1,o=void 0;try{for(var r,i=l(e)[Symbol.iterator]();!(t=(r=i.next()).done);t=!0)r.value.setAttribute("aria-hidden","true")}catch(e){n=!0,o=e}finally{try{!t&&i.return&&i.return()}finally{if(n)throw o}}},t.show=function(e){var t=!0,n=!1,o=void 0;try{for(var r,i=l(e)[Symbol.iterator]();!(t=(r=i.next()).done);t=!0)r.value.removeAttribute("aria-hidden")}catch(e){n=!0,o=e}finally{try{!t&&i.return&&i.return()}finally{if(n)throw o}}},t.documentNotReadyOrSSRTesting=function(){s=null};var o,r=(o=n(9771))&&o.__esModule?o:{default:o},i=n(834),s=null;function a(e,t){if(!e||!e.length)throw new Error("react-modal: No elements were found for selector "+t+".")}function l(e){var t=e||s;return t?Array.isArray(t)||t instanceof HTMLCollection||t instanceof NodeList?t:[t]:((0,r.default)(!1,["react-modal: App element is not defined.","Please use `Modal.setAppElement(el)` or set `appElement={el}`.","This is needed so screen readers don't see main content","when modal is opened. It is not recommended, but you can opt-out","by setting `ariaHideApp={false}`."].join(" ")),[])}},7727:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.resetState=function(){for(var e=[i,s],t=0;t0?(document.body.firstChild!==i&&document.body.insertBefore(i,document.body.firstChild),document.body.lastChild!==s&&document.body.appendChild(s)):(i.parentElement&&i.parentElement.removeChild(i),s.parentElement&&s.parentElement.removeChild(s))}))},4838:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.resetState=function(){var e=document.getElementsByTagName("html")[0];for(var t in n)r(e,n[t]);var i=document.body;for(var s in o)r(i,o[s]);n={},o={}},t.log=function(){};var n={},o={};function r(e,t){e.classList.remove(t)}t.add=function(e,t){return r=e.classList,i="html"==e.nodeName.toLowerCase()?n:o,void t.split(" ").forEach((function(e){!function(e,t){e[t]||(e[t]=0),e[t]+=1}(i,e),r.add(e)}));var r,i},t.remove=function(e,t){return r=e.classList,i="html"==e.nodeName.toLowerCase()?n:o,void t.split(" ").forEach((function(e){!function(e,t){e[t]&&(e[t]-=1)}(i,e),0===i[e]&&r.remove(e)}));var r,i}},7791:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.resetState=function(){i=[]},t.log=function(){},t.handleBlur=l,t.handleFocus=c,t.markForFocusLater=function(){i.push(document.activeElement)},t.returnFocus=function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=null;try{return void(0!==i.length&&(t=i.pop()).focus({preventScroll:e}))}catch(e){console.warn(["You tried to return focus to",t,"but it is not in the DOM anymore"].join(" "))}},t.popWithoutFocus=function(){i.length>0&&i.pop()},t.setupScopedFocus=function(e){s=e,window.addEventListener?(window.addEventListener("blur",l,!1),document.addEventListener("focus",c,!0)):(window.attachEvent("onBlur",l),document.attachEvent("onFocus",c))},t.teardownScopedFocus=function(){s=null,window.addEventListener?(window.removeEventListener("blur",l),document.removeEventListener("focus",c)):(window.detachEvent("onBlur",l),document.detachEvent("onFocus",c))};var o,r=(o=n(2411))&&o.__esModule?o:{default:o},i=[],s=null,a=!1;function l(){a=!0}function c(){if(a){if(a=!1,!s)return;setTimeout((function(){s.contains(document.activeElement)||((0,r.default)(s)[0]||s).focus()}),0)}}},9628:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.log=function(){console.log("portalOpenInstances ----------"),console.log(o.openInstances.length),o.openInstances.forEach((function(e){return console.log(e)})),console.log("end portalOpenInstances ----------")},t.resetState=function(){o=new n};var n=function e(){var t=this;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.register=function(e){-1===t.openInstances.indexOf(e)&&(t.openInstances.push(e),t.emit("register"))},this.deregister=function(e){var n=t.openInstances.indexOf(e);-1!==n&&(t.openInstances.splice(n,1),t.emit("deregister"))},this.subscribe=function(e){t.subscribers.push(e)},this.emit=function(e){t.subscribers.forEach((function(n){return n(e,t.openInstances.slice())}))},this.openInstances=[],this.subscribers=[]},o=new n;t.default=o},834:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.canUseDOM=t.SafeNodeList=t.SafeHTMLCollection=void 0;var o,r=((o=n(411))&&o.__esModule?o:{default:o}).default,i=r.canUseDOM?window.HTMLElement:{};t.SafeHTMLCollection=r.canUseDOM?window.HTMLCollection:{},t.SafeNodeList=r.canUseDOM?window.NodeList:{},t.canUseDOM=r.canUseDOM,t.default=i},7067:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){var n=(0,r.default)(e);if(n.length){var o=void 0,s=t.shiftKey,a=n[0],l=n[n.length-1],c=i();if(e===c){if(!s)return;o=l}if(l!==c||s||(o=a),a===c&&s&&(o=l),o)return t.preventDefault(),void o.focus();var u=/(\bChrome\b|\bSafari\b)\//.exec(navigator.userAgent);if(null!=u&&"Chrome"!=u[1]&&null==/\biPod\b|\biPad\b/g.exec(navigator.userAgent)){var d=n.indexOf(c);if(d>-1&&(d+=s?-1:1),void 0===(o=n[d]))return t.preventDefault(),void(o=s?l:a).focus();t.preventDefault(),o.focus()}}else t.preventDefault()};var o,r=(o=n(2411))&&o.__esModule?o:{default:o};function i(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:document;return e.activeElement.shadowRoot?i(e.activeElement.shadowRoot):e.activeElement}e.exports=t.default},2411:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t){return[].slice.call(t.querySelectorAll("*"),0).reduce((function(t,n){return t.concat(n.shadowRoot?e(n.shadowRoot):[n])}),[]).filter(s)};var n="none",o="contents",r=/input|select|textarea|button|object|iframe/;function i(e){var t=e.offsetWidth<=0&&e.offsetHeight<=0;if(t&&!e.innerHTML)return!0;try{var r=window.getComputedStyle(e),i=r.getPropertyValue("display");return t?i!==o&&function(e,t){return"visible"!==t.getPropertyValue("overflow")||e.scrollWidth<=0&&e.scrollHeight<=0}(e,r):i===n}catch(e){return console.warn("Failed to inspect element style"),!1}}function s(e){var t=e.getAttribute("tabindex");null===t&&(t=void 0);var n=isNaN(t);return(n||t>=0)&&function(e,t){var n=e.nodeName.toLowerCase();return(r.test(n)&&!e.disabled||"a"===n&&e.href||t)&&function(e){for(var t=e,n=e.getRootNode&&e.getRootNode();t&&t!==document.body;){if(n&&t===n&&(t=n.host.parentNode),i(t))return!1;t=t.parentNode}return!0}(e)}(e,!n)}e.exports=t.default},312:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o,r=(o=n(1720))&&o.__esModule?o:{default:o};t.default=r.default,e.exports=t.default},4210:(e,t,n)=>{"use strict";function o(e,t,n,o,r,i,s){this.acceptsBooleans=2===t||3===t||4===t,this.attributeName=o,this.attributeNamespace=r,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=i,this.removeEmptyString=s}const r={};["children","dangerouslySetInnerHTML","defaultValue","defaultChecked","innerHTML","suppressContentEditableWarning","suppressHydrationWarning","style"].forEach((e=>{r[e]=new o(e,0,!1,e,null,!1,!1)})),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach((([e,t])=>{r[e]=new o(e,1,!1,t,null,!1,!1)})),["contentEditable","draggable","spellCheck","value"].forEach((e=>{r[e]=new o(e,2,!1,e.toLowerCase(),null,!1,!1)})),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach((e=>{r[e]=new o(e,2,!1,e,null,!1,!1)})),["allowFullScreen","async","autoFocus","autoPlay","controls","default","defer","disabled","disablePictureInPicture","disableRemotePlayback","formNoValidate","hidden","loop","noModule","noValidate","open","playsInline","readOnly","required","reversed","scoped","seamless","itemScope"].forEach((e=>{r[e]=new o(e,3,!1,e.toLowerCase(),null,!1,!1)})),["checked","multiple","muted","selected"].forEach((e=>{r[e]=new o(e,3,!0,e,null,!1,!1)})),["capture","download"].forEach((e=>{r[e]=new o(e,4,!1,e,null,!1,!1)})),["cols","rows","size","span"].forEach((e=>{r[e]=new o(e,6,!1,e,null,!1,!1)})),["rowSpan","start"].forEach((e=>{r[e]=new o(e,5,!1,e.toLowerCase(),null,!1,!1)}));const i=/[\-\:]([a-z])/g,s=e=>e[1].toUpperCase();["accent-height","alignment-baseline","arabic-form","baseline-shift","cap-height","clip-path","clip-rule","color-interpolation","color-interpolation-filters","color-profile","color-rendering","dominant-baseline","enable-background","fill-opacity","fill-rule","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","glyph-name","glyph-orientation-horizontal","glyph-orientation-vertical","horiz-adv-x","horiz-origin-x","image-rendering","letter-spacing","lighting-color","marker-end","marker-mid","marker-start","overline-position","overline-thickness","paint-order","panose-1","pointer-events","rendering-intent","shape-rendering","stop-color","stop-opacity","strikethrough-position","strikethrough-thickness","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","text-anchor","text-decoration","text-rendering","underline-position","underline-thickness","unicode-bidi","unicode-range","units-per-em","v-alphabetic","v-hanging","v-ideographic","v-mathematical","vector-effect","vert-adv-y","vert-origin-x","vert-origin-y","word-spacing","writing-mode","xmlns:xlink","x-height"].forEach((e=>{const t=e.replace(i,s);r[t]=new o(t,1,!1,e,null,!1,!1)})),["xlink:actuate","xlink:arcrole","xlink:role","xlink:show","xlink:title","xlink:type"].forEach((e=>{const t=e.replace(i,s);r[t]=new o(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)})),["xml:base","xml:lang","xml:space"].forEach((e=>{const t=e.replace(i,s);r[t]=new o(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)})),["tabIndex","crossOrigin"].forEach((e=>{r[e]=new o(e,1,!1,e.toLowerCase(),null,!1,!1)})),r.xlinkHref=new o("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach((e=>{r[e]=new o(e,1,!1,e.toLowerCase(),null,!0,!0)}));const{CAMELCASE:a,SAME:l,possibleStandardNames:c}=n(6811),u=RegExp.prototype.test.bind(new RegExp("^(data|aria)-[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$")),d=Object.keys(c).reduce(((e,t)=>{const n=c[t];return n===l?e[t]=t:n===a?e[t.toLowerCase()]=t:e[t]=n,e}),{});t.BOOLEAN=3,t.BOOLEANISH_STRING=2,t.NUMERIC=5,t.OVERLOADED_BOOLEAN=4,t.POSITIVE_NUMERIC=6,t.RESERVED=0,t.STRING=1,t.getPropertyInfo=function(e){return r.hasOwnProperty(e)?r[e]:null},t.isCustomAttribute=u,t.possibleStandardNames=d},6811:(e,t)=>{t.SAME=0,t.CAMELCASE=1,t.possibleStandardNames={accept:0,acceptCharset:1,"accept-charset":"acceptCharset",accessKey:1,action:0,allowFullScreen:1,alt:0,as:0,async:0,autoCapitalize:1,autoComplete:1,autoCorrect:1,autoFocus:1,autoPlay:1,autoSave:1,capture:0,cellPadding:1,cellSpacing:1,challenge:0,charSet:1,checked:0,children:0,cite:0,class:"className",classID:1,className:1,cols:0,colSpan:1,content:0,contentEditable:1,contextMenu:1,controls:0,controlsList:1,coords:0,crossOrigin:1,dangerouslySetInnerHTML:1,data:0,dateTime:1,default:0,defaultChecked:1,defaultValue:1,defer:0,dir:0,disabled:0,disablePictureInPicture:1,disableRemotePlayback:1,download:0,draggable:0,encType:1,enterKeyHint:1,for:"htmlFor",form:0,formMethod:1,formAction:1,formEncType:1,formNoValidate:1,formTarget:1,frameBorder:1,headers:0,height:0,hidden:0,high:0,href:0,hrefLang:1,htmlFor:1,httpEquiv:1,"http-equiv":"httpEquiv",icon:0,id:0,innerHTML:1,inputMode:1,integrity:0,is:0,itemID:1,itemProp:1,itemRef:1,itemScope:1,itemType:1,keyParams:1,keyType:1,kind:0,label:0,lang:0,list:0,loop:0,low:0,manifest:0,marginWidth:1,marginHeight:1,max:0,maxLength:1,media:0,mediaGroup:1,method:0,min:0,minLength:1,multiple:0,muted:0,name:0,noModule:1,nonce:0,noValidate:1,open:0,optimum:0,pattern:0,placeholder:0,playsInline:1,poster:0,preload:0,profile:0,radioGroup:1,readOnly:1,referrerPolicy:1,rel:0,required:0,reversed:0,role:0,rows:0,rowSpan:1,sandbox:0,scope:0,scoped:0,scrolling:0,seamless:0,selected:0,shape:0,size:0,sizes:0,span:0,spellCheck:1,src:0,srcDoc:1,srcLang:1,srcSet:1,start:0,step:0,style:0,summary:0,tabIndex:1,target:0,title:0,type:0,useMap:1,value:0,width:0,wmode:0,wrap:0,about:0,accentHeight:1,"accent-height":"accentHeight",accumulate:0,additive:0,alignmentBaseline:1,"alignment-baseline":"alignmentBaseline",allowReorder:1,alphabetic:0,amplitude:0,arabicForm:1,"arabic-form":"arabicForm",ascent:0,attributeName:1,attributeType:1,autoReverse:1,azimuth:0,baseFrequency:1,baselineShift:1,"baseline-shift":"baselineShift",baseProfile:1,bbox:0,begin:0,bias:0,by:0,calcMode:1,capHeight:1,"cap-height":"capHeight",clip:0,clipPath:1,"clip-path":"clipPath",clipPathUnits:1,clipRule:1,"clip-rule":"clipRule",color:0,colorInterpolation:1,"color-interpolation":"colorInterpolation",colorInterpolationFilters:1,"color-interpolation-filters":"colorInterpolationFilters",colorProfile:1,"color-profile":"colorProfile",colorRendering:1,"color-rendering":"colorRendering",contentScriptType:1,contentStyleType:1,cursor:0,cx:0,cy:0,d:0,datatype:0,decelerate:0,descent:0,diffuseConstant:1,direction:0,display:0,divisor:0,dominantBaseline:1,"dominant-baseline":"dominantBaseline",dur:0,dx:0,dy:0,edgeMode:1,elevation:0,enableBackground:1,"enable-background":"enableBackground",end:0,exponent:0,externalResourcesRequired:1,fill:0,fillOpacity:1,"fill-opacity":"fillOpacity",fillRule:1,"fill-rule":"fillRule",filter:0,filterRes:1,filterUnits:1,floodOpacity:1,"flood-opacity":"floodOpacity",floodColor:1,"flood-color":"floodColor",focusable:0,fontFamily:1,"font-family":"fontFamily",fontSize:1,"font-size":"fontSize",fontSizeAdjust:1,"font-size-adjust":"fontSizeAdjust",fontStretch:1,"font-stretch":"fontStretch",fontStyle:1,"font-style":"fontStyle",fontVariant:1,"font-variant":"fontVariant",fontWeight:1,"font-weight":"fontWeight",format:0,from:0,fx:0,fy:0,g1:0,g2:0,glyphName:1,"glyph-name":"glyphName",glyphOrientationHorizontal:1,"glyph-orientation-horizontal":"glyphOrientationHorizontal",glyphOrientationVertical:1,"glyph-orientation-vertical":"glyphOrientationVertical",glyphRef:1,gradientTransform:1,gradientUnits:1,hanging:0,horizAdvX:1,"horiz-adv-x":"horizAdvX",horizOriginX:1,"horiz-origin-x":"horizOriginX",ideographic:0,imageRendering:1,"image-rendering":"imageRendering",in2:0,in:0,inlist:0,intercept:0,k1:0,k2:0,k3:0,k4:0,k:0,kernelMatrix:1,kernelUnitLength:1,kerning:0,keyPoints:1,keySplines:1,keyTimes:1,lengthAdjust:1,letterSpacing:1,"letter-spacing":"letterSpacing",lightingColor:1,"lighting-color":"lightingColor",limitingConeAngle:1,local:0,markerEnd:1,"marker-end":"markerEnd",markerHeight:1,markerMid:1,"marker-mid":"markerMid",markerStart:1,"marker-start":"markerStart",markerUnits:1,markerWidth:1,mask:0,maskContentUnits:1,maskUnits:1,mathematical:0,mode:0,numOctaves:1,offset:0,opacity:0,operator:0,order:0,orient:0,orientation:0,origin:0,overflow:0,overlinePosition:1,"overline-position":"overlinePosition",overlineThickness:1,"overline-thickness":"overlineThickness",paintOrder:1,"paint-order":"paintOrder",panose1:0,"panose-1":"panose1",pathLength:1,patternContentUnits:1,patternTransform:1,patternUnits:1,pointerEvents:1,"pointer-events":"pointerEvents",points:0,pointsAtX:1,pointsAtY:1,pointsAtZ:1,prefix:0,preserveAlpha:1,preserveAspectRatio:1,primitiveUnits:1,property:0,r:0,radius:0,refX:1,refY:1,renderingIntent:1,"rendering-intent":"renderingIntent",repeatCount:1,repeatDur:1,requiredExtensions:1,requiredFeatures:1,resource:0,restart:0,result:0,results:0,rotate:0,rx:0,ry:0,scale:0,security:0,seed:0,shapeRendering:1,"shape-rendering":"shapeRendering",slope:0,spacing:0,specularConstant:1,specularExponent:1,speed:0,spreadMethod:1,startOffset:1,stdDeviation:1,stemh:0,stemv:0,stitchTiles:1,stopColor:1,"stop-color":"stopColor",stopOpacity:1,"stop-opacity":"stopOpacity",strikethroughPosition:1,"strikethrough-position":"strikethroughPosition",strikethroughThickness:1,"strikethrough-thickness":"strikethroughThickness",string:0,stroke:0,strokeDasharray:1,"stroke-dasharray":"strokeDasharray",strokeDashoffset:1,"stroke-dashoffset":"strokeDashoffset",strokeLinecap:1,"stroke-linecap":"strokeLinecap",strokeLinejoin:1,"stroke-linejoin":"strokeLinejoin",strokeMiterlimit:1,"stroke-miterlimit":"strokeMiterlimit",strokeWidth:1,"stroke-width":"strokeWidth",strokeOpacity:1,"stroke-opacity":"strokeOpacity",suppressContentEditableWarning:1,suppressHydrationWarning:1,surfaceScale:1,systemLanguage:1,tableValues:1,targetX:1,targetY:1,textAnchor:1,"text-anchor":"textAnchor",textDecoration:1,"text-decoration":"textDecoration",textLength:1,textRendering:1,"text-rendering":"textRendering",to:0,transform:0,typeof:0,u1:0,u2:0,underlinePosition:1,"underline-position":"underlinePosition",underlineThickness:1,"underline-thickness":"underlineThickness",unicode:0,unicodeBidi:1,"unicode-bidi":"unicodeBidi",unicodeRange:1,"unicode-range":"unicodeRange",unitsPerEm:1,"units-per-em":"unitsPerEm",unselectable:0,vAlphabetic:1,"v-alphabetic":"vAlphabetic",values:0,vectorEffect:1,"vector-effect":"vectorEffect",version:0,vertAdvY:1,"vert-adv-y":"vertAdvY",vertOriginX:1,"vert-origin-x":"vertOriginX",vertOriginY:1,"vert-origin-y":"vertOriginY",vHanging:1,"v-hanging":"vHanging",vIdeographic:1,"v-ideographic":"vIdeographic",viewBox:1,viewTarget:1,visibility:0,vMathematical:1,"v-mathematical":"vMathematical",vocab:0,widths:0,wordSpacing:1,"word-spacing":"wordSpacing",writingMode:1,"writing-mode":"writingMode",x1:0,x2:0,x:0,xChannelSelector:1,xHeight:1,"x-height":"xHeight",xlinkActuate:1,"xlink:actuate":"xlinkActuate",xlinkArcrole:1,"xlink:arcrole":"xlinkArcrole",xlinkHref:1,"xlink:href":"xlinkHref",xlinkRole:1,"xlink:role":"xlinkRole",xlinkShow:1,"xlink:show":"xlinkShow",xlinkTitle:1,"xlink:title":"xlinkTitle",xlinkType:1,"xlink:type":"xlinkType",xmlBase:1,"xml:base":"xmlBase",xmlLang:1,"xml:lang":"xmlLang",xmlns:0,"xml:space":"xmlSpace",xmlnsXlink:1,"xmlns:xlink":"xmlnsXlink",xmlSpace:1,y1:0,y2:0,y:0,yChannelSelector:1,z:0,zoomAndPan:1}},5229:function(e,t,n){"use strict";var o=(this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}})(n(1133)),r=n(8917);function i(e,t){var n={};return e&&"string"==typeof e?((0,o.default)(e,(function(e,o){e&&o&&(n[(0,r.camelCase)(e,t)]=o)})),n):n}i.default=i,e.exports=i},8917:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.camelCase=void 0;var n=/^--[a-zA-Z0-9-]+$/,o=/-([a-z])/g,r=/^[^-]+$/,i=/^-(webkit|moz|ms|o|khtml)-/,s=/^-(ms)-/,a=function(e,t){return t.toUpperCase()},l=function(e,t){return"".concat(t,"-")};t.camelCase=function(e,t){return void 0===t&&(t={}),function(e){return!e||r.test(e)||n.test(e)}(e)?e:(e=e.toLowerCase(),(e=t.reactCompat?e.replace(s,l):e.replace(i,l)).replace(o,a))}},1133:function(e,t,n){"use strict";var o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var r=o(n(9788));t.default=function(e,t){var n=null;if(!e||"string"!=typeof e)return n;var o=(0,r.default)(e),i="function"==typeof t;return o.forEach((function(e){if("declaration"===e.type){var o=e.property,r=e.value;i?t(o,r,e):r&&((n=n||{})[o]=r)}})),n}},9771:e=>{"use strict";e.exports=function(){}},1609:e=>{"use strict";e.exports=window.React},5795:e=>{"use strict";e.exports=window.ReactDOM},6942:(e,t)=>{var n;!function(){"use strict";var o={}.hasOwnProperty;function r(){for(var e="",t=0;t{if(!n){var s=1/0;for(u=0;u=i)&&Object.keys(o.O).every((e=>o.O[e](n[l])))?n.splice(l--,1):(a=!1,i0&&e[u-1][2]>i;u--)e[u]=e[u-1];e[u]=[n,r,i]},o.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return o.d(t,{a:t}),t},o.d=(e,t)=>{for(var n in t)o.o(t,n)&&!o.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),o.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{var e={105:0,149:0};o.O.j=t=>0===e[t];var t=(t,n)=>{var r,i,[s,a,l]=n,c=0;if(s.some((t=>0!==e[t]))){for(r in a)o.o(a,r)&&(o.m[r]=a[r]);if(l)var u=l(o)}for(t&&t(n);co(8937)));r=o.O(r)})(); \ No newline at end of file +(0,c._n)("%d guest","%d guests",Number(f),"gatherpress"),Number(f))]})})]})]})},$e=({postId:e,value:t,limit:n,responses:o=[]})=>{const[r,i]=(0,h.useState)(o);((e,t="")=>{for(const[n,o]of Object.entries(e)){let e=n;t&&(e+="_"+String(t)),addEventListener(e,(e=>{o(e.detail)}),!1)}})({setRsvpResponse:i},e);let s="";return"object"==typeof r&&void 0!==r[t]&&(o=[...r[t].responses],n&&(o=o.splice(0,n)),s=o.map(((e,t)=>{const{name:n,photo:o}=e;return(0,We.jsx)("figure",{className:"gatherpress-rsvp-response__member-avatar",children:(0,We.jsx)("img",{alt:n,title:n,src:o})},t)}))),(0,We.jsx)(We.Fragment,{children:s})},Ge=e=>{const{type:t,event:n,eventOptions:o}=e,r="default"===o.imageSize?"featured_image":"featured_image_"+o.imageSize,i=l(n[r]),s="gatherpress-events-list";let a="location";const c=n.venue?.is_online_event;return c&&(a="video-alt2"),(0,We.jsxs)("div",{className:`${s}`,children:[(0,We.jsx)("div",{className:`${s}__header`,children:(0,We.jsxs)("div",{className:`${s}__info`,children:[o.showFeaturedImage&&(0,We.jsx)("figure",{className:`${s}__image`,children:(0,We.jsx)("a",{href:n.permalink,children:i})}),(0,We.jsx)("div",{className:`${s}__datetime`,children:(0,We.jsx)("strong",{children:n.datetime_start})}),(0,We.jsx)("div",{className:`${s}__title`,children:(0,We.jsx)("a",{href:n.permalink,children:l(n.title)})}),n.venue&&o.showVenue&&(0,We.jsxs)("div",{className:`${s}__venue`,children:[(0,We.jsx)("span",{className:`dashicons dashicons-${a}`}),!c&&(0,We.jsx)("a",{href:n.venue.permalink,children:l(n.venue.name)}),c&&(0,We.jsx)("span",{children:l(n.venue.name)})]}),o.showDescription&&(0,We.jsx)("div",{className:`${s}__content`,children:(0,We.jsx)("div",{className:`${s}__excerpt`,children:l((u=n.excerpt,u.split(" ").splice(0,parseInt(o.descriptionLimit)).join(" ")+"[…]"))})})]})}),(0,We.jsxs)("div",{className:`${s}__footer`,children:[o.showRsvpResponse&&(0,We.jsx)("div",{className:"gatherpress-rsvp-response__items",children:(0,We.jsx)($e,{postId:n.ID,value:"attending",responses:n.responses,limit:"3"})}),"upcoming"===t&&o.showRsvp&&(0,We.jsx)(qe,{postId:n.ID,currentUser:n.current_user,type:t,enableAnonymousRsvp:n.gatherpress_enable_anonymous_rsvp,enableInitialDecline:n.gatherpress_enable_initial_decline}),"past"===t&&o.showRsvp&&""!==n.current_user&&(0,We.jsx)(Ve,{type:t,status:n.current_user?.status})]})]});var u},Xe=e=>{const{eventOptions:t,maxNumberOfEvents:n,datetimeFormat:o,type:r,topics:i,venues:s}=e,[a,l]=(0,h.useState)([]),[u,p]=(0,h.useState)(!1),f=a.map((e=>(0,We.jsx)(Ge,{eventOptions:t,type:r,event:e},e.ID)));return(0,h.useEffect)((()=>{let e="",t="";"object"==typeof i&&(e=i.map((e=>e.slug))?.join(",")),"object"==typeof s&&(t=s.map((e=>e.slug))?.join(","));const a=ze("urls.eventRestApi")+`/events-list?event_list_type=${r}&max_number=${n}&datetime_format=${o}&topics=${e}&venues=${t}`;ze("misc.isUserLoggedIn")?Ue()({path:a}).then((e=>{p(!0),l(e)})):fetch(a).then((e=>e.json())).then((e=>{p(!0),l(e)}))}),[l,n,o,r,i,s]),(0,We.jsxs)("div",{className:`gatherpress-${r}-events-list`,children:[!u&&(0,We.jsx)(d.Spinner,{}),u&&0===a.length&&(()=>{const e="upcoming"===r?(0,c.__)("There are no upcoming events.","gatherpress"):(0,c.__)("There are no past events.","gatherpress");return(0,We.jsx)("div",{className:`gatherpress-${r}-events__no_events_message`,children:e})})(),u&&f]})},Ye=e=>{const{isSelected:t}=e,n=t?"none":"block";return(0,We.jsxs)("div",{style:{position:"relative"},children:[e.children,(0,We.jsx)("div",{style:{position:"absolute",top:"0",right:"0",bottom:"0",left:"0",display:n}})]})},Ke=JSON.parse('{"$schema":"https://schemas.wp.org/trunk/block.json","apiVersion":2,"name":"gatherpress/events-list","version":"1.0.1","title":"Events List","category":"gatherpress","icon":"list-view","example":{},"description":"Displays events that are either upcoming or have occurred in the past.","attributes":{"eventOptions":{"type":"object","default":{"descriptionLimit":55,"imageSize":"default","showRsvpResponse":true,"showFeaturedImage":true,"showDescription":true,"showRsvp":true,"showVenue":true}},"datetimeFormat":{"type":"string","default":"D, M j, Y, g:i a T"},"maxNumberOfEvents":{"type":"integer","default":5},"topics":{"type":"array","items":{"type":"object"}},"venues":{"type":"array","items":{"type":"object"}},"type":{"type":"string","default":"upcoming"}},"supports":{"html":false},"textdomain":"gatherpress","editorScript":"file:./index.js","style":"file:./style-index.css","viewScript":"file:./events-list.js","render":"file:./render.php"}');(0,o.registerBlockType)(Ke,{edit:e=>{var t,n,o;const{attributes:i,setAttributes:a}=e,h=(0,u.useBlockProps)(),{topics:m,venues:v}=i,{topicsList:y}=(0,f.useSelect)((e=>{const{getEntityRecords:t}=e(p.store);return{topicsList:t("taxonomy","gatherpress_topic",{per_page:-1,context:"view"})}}),[]),{venueList:g}=(0,f.useSelect)((e=>{const{getEntityRecords:t}=e(p.store);return{venueList:t("taxonomy","_gatherpress_venue",{per_page:-1,context:"view"})}}),[]),b=null!==(t=y?.reduce(((e,t)=>({...e,[t.name]:t})),{}))&&void 0!==t?t:{},w=null!==(n=g?.reduce(((e,t)=>({...e,[t.name]:t})),{}))&&void 0!==n?n:{};return(0,We.jsxs)(We.Fragment,{children:[(0,We.jsxs)(u.InspectorControls,{children:[(0,We.jsxs)(d.PanelBody,{children:[(0,We.jsx)("p",{children:(0,c.__)("Event List type","gatherpress")}),(0,We.jsxs)(d.ButtonGroup,{className:"block-editor-block-styles__variants",children:[(0,We.jsx)(d.Button,{className:s()("block-editor-block-styles__item",{"is-active":"upcoming"===i.type}),variant:"secondary",label:(0,c.__)("Upcoming","gatherpress"),onClick:()=>{a({type:"upcoming"})},children:(0,We.jsx)(d.__experimentalText,{as:"span",limit:12,ellipsizeMode:"tail",className:"block-editor-block-styles__item-text",truncate:!0,children:(0,c.__)("Upcoming","gatherpress")})}),(0,We.jsx)(d.Button,{className:s()("block-editor-block-styles__item",{"is-active":"past"===i.type}),variant:"secondary",label:(0,c.__)("Past","gatherpress"),onClick:()=>{a({type:"past"})},children:(0,We.jsx)(d.__experimentalText,{as:"span",limit:12,ellipsizeMode:"tail",className:"block-editor-block-styles__item-text",truncate:!0,children:(0,c.__)("Past","gatherpress")})})]})]}),(0,We.jsxs)(d.PanelBody,{children:[(0,We.jsx)(d.TextControl,{label:(0,c.__)("Date & time format","gatherpress"),value:i.datetimeFormat,help:l((0,c.__)('For more information read the Documentation on date and time formatting.',"gatherpress")),onChange:e=>a({datetimeFormat:e})}),(0,We.jsx)(d.RangeControl,{label:(0,c.__)("Maximum number of events to display","gatherpress"),min:1,max:10,value:parseInt(i.maxNumberOfEvents,10),onChange:e=>a({maxNumberOfEvents:e})}),(0,We.jsx)(d.FormTokenField,{label:(0,c.__)("Topics","gatherpress"),value:m&&m.map((e=>({id:e.id,slug:e.slug,value:e.name||e.value}))),suggestions:Object.keys(b),onChange:e=>{if(e.some((e=>"string"==typeof e&&!b[e])))return;const t=e.map((e=>"string"==typeof e?b[e]:e));if((0,r.includes)(t,null))return!1;a({topics:t})},maxSuggestions:20},"query-controls-topics-select"),(0,We.jsx)(d.FormTokenField,{label:(0,c.__)("Venues","gatherpress"),value:v&&v.map((e=>({id:e.id,slug:e.slug,value:e.name||e.value}))),suggestions:Object.keys(w),onChange:e=>{if(e.some((e=>"string"==typeof e&&!w[e])))return;const t=e.map((e=>"string"==typeof e?w[e]:e));if((0,r.includes)(t,null))return!1;a({venues:t})},maxSuggestions:20},"query-controls-venues-select")]}),(0,We.jsxs)(d.PanelBody,{children:[(0,We.jsx)(d.ToggleControl,{label:(0,c.__)("Show/Hide All RSVP Responses","gatherpress"),help:i.eventOptions.showRsvpResponse?(0,c.__)("Show All RSVP Responses","gatherpress"):(0,c.__)("Hide All RSVP Responses","gatherpress"),checked:null===(o=i.eventOptions.showRsvpResponse)||void 0===o||o,onChange:e=>{a({eventOptions:{...i.eventOptions,showRsvpResponse:e}})}}),(0,We.jsx)(d.ToggleControl,{label:(0,c.__)("Show/Hide My RSVP Response"),help:i.eventOptions.showRsvp?(0,c.__)("Show My RSVP Response"):(0,c.__)("Hide My RSVP Response"),checked:i.eventOptions.showRsvp,onChange:e=>{a({eventOptions:{...i.eventOptions,showRsvp:e}})}}),(0,We.jsx)(d.SelectControl,{label:(0,c.__)("Image Size Options","gatherpress"),value:i.eventOptions.imageSize,options:[{label:"Default",value:"default"},{label:"Thumbnail",value:"thumbnail"},{label:"Large",value:"large"}],onChange:e=>a({eventOptions:{...i.eventOptions,imageSize:e}})}),(0,We.jsx)(d.ToggleControl,{label:(0,c.__)("Show/Hide Featured Image","gatherpress"),help:i.eventOptions.showFeaturedImage?(0,c.__)("Show Featured Image","gatherpress"):(0,c.__)("Hide Featured Image","gatherpress"),checked:i.eventOptions.showFeaturedImage,onChange:e=>{a({eventOptions:{...i.eventOptions,showFeaturedImage:e}})}}),(0,We.jsx)(d.ToggleControl,{label:(0,c.__)("Show/Hide Description","gatherpress"),help:i.eventOptions.showDescription?(0,c.__)("Show Description","gatherpress"):(0,c.__)("Hide Description","gatherpress"),checked:i.eventOptions.showDescription,onChange:e=>{a({eventOptions:{...i.eventOptions,showDescription:e}})}}),(0,We.jsx)(d.TextControl,{label:(0,c.__)("Description Limit"),help:(0,c.__)("Limit the amount of words that display underneath the title of the event"),value:parseInt(i.eventOptions.descriptionLimit),onChange:e=>a({eventOptions:{...i.eventOptions,descriptionLimit:e}}),min:0,max:55,type:"number"}),(0,We.jsx)(d.ToggleControl,{label:(0,c.__)("Show/Event Venue"),help:i.eventOptions.showVenue?(0,c.__)("Show Event Venue"):(0,c.__)("Hide Event Venue"),checked:i.eventOptions.showVenue,onChange:e=>{a({eventOptions:{...i.eventOptions,showVenue:e}})}})]})]}),(0,We.jsx)("div",{...h,children:(0,We.jsx)(Ye,{children:(0,We.jsx)(Xe,{eventOptions:i.eventOptions,maxNumberOfEvents:i.maxNumberOfEvents,datetimeFormat:i.datetimeFormat,type:i.type,topics:i.topics,venues:i.venues})})})]})},save:()=>null})},5413:(e,t)=>{"use strict";var n;Object.defineProperty(t,"__esModule",{value:!0}),t.Doctype=t.CDATA=t.Tag=t.Style=t.Script=t.Comment=t.Directive=t.Text=t.Root=t.isTag=t.ElementType=void 0,function(e){e.Root="root",e.Text="text",e.Directive="directive",e.Comment="comment",e.Script="script",e.Style="style",e.Tag="tag",e.CDATA="cdata",e.Doctype="doctype"}(n=t.ElementType||(t.ElementType={})),t.isTag=function(e){return e.type===n.Tag||e.type===n.Script||e.type===n.Style},t.Root=n.Root,t.Text=n.Text,t.Directive=n.Directive,t.Comment=n.Comment,t.Script=n.Script,t.Style=n.Style,t.Tag=n.Tag,t.CDATA=n.CDATA,t.Doctype=n.Doctype},1141:function(e,t,n){"use strict";var o=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!("get"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,r)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||o(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),t.DomHandler=void 0;var i=n(5413),s=n(6957);r(n(6957),t);var a={withStartIndices:!1,withEndIndices:!1,xmlMode:!1},l=function(){function e(e,t,n){this.dom=[],this.root=new s.Document(this.dom),this.done=!1,this.tagStack=[this.root],this.lastNode=null,this.parser=null,"function"==typeof t&&(n=t,t=a),"object"==typeof e&&(t=e,e=void 0),this.callback=null!=e?e:null,this.options=null!=t?t:a,this.elementCB=null!=n?n:null}return e.prototype.onparserinit=function(e){this.parser=e},e.prototype.onreset=function(){this.dom=[],this.root=new s.Document(this.dom),this.done=!1,this.tagStack=[this.root],this.lastNode=null,this.parser=null},e.prototype.onend=function(){this.done||(this.done=!0,this.parser=null,this.handleCallback(null))},e.prototype.onerror=function(e){this.handleCallback(e)},e.prototype.onclosetag=function(){this.lastNode=null;var e=this.tagStack.pop();this.options.withEndIndices&&(e.endIndex=this.parser.endIndex),this.elementCB&&this.elementCB(e)},e.prototype.onopentag=function(e,t){var n=this.options.xmlMode?i.ElementType.Tag:void 0,o=new s.Element(e,t,void 0,n);this.addNode(o),this.tagStack.push(o)},e.prototype.ontext=function(e){var t=this.lastNode;if(t&&t.type===i.ElementType.Text)t.data+=e,this.options.withEndIndices&&(t.endIndex=this.parser.endIndex);else{var n=new s.Text(e);this.addNode(n),this.lastNode=n}},e.prototype.oncomment=function(e){if(this.lastNode&&this.lastNode.type===i.ElementType.Comment)this.lastNode.data+=e;else{var t=new s.Comment(e);this.addNode(t),this.lastNode=t}},e.prototype.oncommentend=function(){this.lastNode=null},e.prototype.oncdatastart=function(){var e=new s.Text(""),t=new s.CDATA([e]);this.addNode(t),e.parent=t,this.lastNode=e},e.prototype.oncdataend=function(){this.lastNode=null},e.prototype.onprocessinginstruction=function(e,t){var n=new s.ProcessingInstruction(e,t);this.addNode(n)},e.prototype.handleCallback=function(e){if("function"==typeof this.callback)this.callback(e,this.dom);else if(e)throw e},e.prototype.addNode=function(e){var t=this.tagStack[this.tagStack.length-1],n=t.children[t.children.length-1];this.options.withStartIndices&&(e.startIndex=this.parser.startIndex),this.options.withEndIndices&&(e.endIndex=this.parser.endIndex),t.children.push(e),n&&(e.prev=n,n.next=e),e.parent=t,this.lastNode=null},e}();t.DomHandler=l,t.default=l},6957:function(e,t,n){"use strict";var o,r=this&&this.__extends||(o=function(e,t){return o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},o(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function __(){this.constructor=e}o(e,t),e.prototype=null===t?Object.create(t):(__.prototype=t.prototype,new __)}),i=this&&this.__assign||function(){return i=Object.assign||function(e){for(var t,n=1,o=arguments.length;n0?this.children[this.children.length-1]:null},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"childNodes",{get:function(){return this.children},set:function(e){this.children=e},enumerable:!1,configurable:!0}),t}(a);t.NodeWithChildren=p;var f=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.type=s.ElementType.CDATA,t}return r(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 4},enumerable:!1,configurable:!0}),t}(p);t.CDATA=f;var h=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.type=s.ElementType.Root,t}return r(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 9},enumerable:!1,configurable:!0}),t}(p);t.Document=h;var m=function(e){function t(t,n,o,r){void 0===o&&(o=[]),void 0===r&&(r="script"===t?s.ElementType.Script:"style"===t?s.ElementType.Style:s.ElementType.Tag);var i=e.call(this,o)||this;return i.name=t,i.attribs=n,i.type=r,i}return r(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 1},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"tagName",{get:function(){return this.name},set:function(e){this.name=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"attributes",{get:function(){var e=this;return Object.keys(this.attribs).map((function(t){var n,o;return{name:t,value:e.attribs[t],namespace:null===(n=e["x-attribsNamespace"])||void 0===n?void 0:n[t],prefix:null===(o=e["x-attribsPrefix"])||void 0===o?void 0:o[t]}}))},enumerable:!1,configurable:!0}),t}(p);function v(e){return(0,s.isTag)(e)}function y(e){return e.type===s.ElementType.CDATA}function g(e){return e.type===s.ElementType.Text}function b(e){return e.type===s.ElementType.Comment}function w(e){return e.type===s.ElementType.Directive}function _(e){return e.type===s.ElementType.Root}function x(e,t){var n;if(void 0===t&&(t=!1),g(e))n=new c(e.data);else if(b(e))n=new u(e.data);else if(v(e)){var o=t?S(e.children):[],r=new m(e.name,i({},e.attribs),o);o.forEach((function(e){return e.parent=r})),null!=e.namespace&&(r.namespace=e.namespace),e["x-attribsNamespace"]&&(r["x-attribsNamespace"]=i({},e["x-attribsNamespace"])),e["x-attribsPrefix"]&&(r["x-attribsPrefix"]=i({},e["x-attribsPrefix"])),n=r}else if(y(e)){o=t?S(e.children):[];var s=new f(o);o.forEach((function(e){return e.parent=s})),n=s}else if(_(e)){o=t?S(e.children):[];var a=new h(o);o.forEach((function(e){return e.parent=a})),e["x-mode"]&&(a["x-mode"]=e["x-mode"]),n=a}else{if(!w(e))throw new Error("Not implemented yet: ".concat(e.type));var l=new d(e.name,e.data);null!=e["x-name"]&&(l["x-name"]=e["x-name"],l["x-publicId"]=e["x-publicId"],l["x-systemId"]=e["x-systemId"]),n=l}return n.startIndex=e.startIndex,n.endIndex=e.endIndex,null!=e.sourceCodeLocation&&(n.sourceCodeLocation=e.sourceCodeLocation),n}function S(e){for(var t=e.map((function(e){return x(e,!0)})),n=1;n{var o;!function(){"use strict";var r=!("undefined"==typeof window||!window.document||!window.document.createElement),i={canUseDOM:r,canUseWorkers:"undefined"!=typeof Worker,canUseEventListeners:r&&!(!window.addEventListener&&!window.attachEvent),canUseViewport:r&&!!window.screen};void 0===(o=function(){return i}.call(t,n,t,e))||(e.exports=o)}()},5270:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CASE_SENSITIVE_TAG_NAMES_MAP=t.CASE_SENSITIVE_TAG_NAMES=void 0,t.CASE_SENSITIVE_TAG_NAMES=["animateMotion","animateTransform","clipPath","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","foreignObject","linearGradient","radialGradient","textPath"],t.CASE_SENSITIVE_TAG_NAMES_MAP=t.CASE_SENSITIVE_TAG_NAMES.reduce((function(e,t){return e[t.toLowerCase()]=t,e}),{})},5496:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){var t,u,d=e.match(i),p=d&&d[1]?d[1].toLowerCase():"";switch(p){case n:var h=c(e);return s.test(e)||null===(t=null==(v=h.querySelector(o))?void 0:v.parentNode)||void 0===t||t.removeChild(v),a.test(e)||null===(u=null==(v=h.querySelector(r))?void 0:v.parentNode)||void 0===u||u.removeChild(v),h.querySelectorAll(n);case o:case r:var m=l(e).querySelectorAll(p);return a.test(e)&&s.test(e)?m[0].parentNode.childNodes:m;default:return f?f(e):(v=l(e,r).querySelector(r)).childNodes;var v}};var n="html",o="head",r="body",i=/<([a-zA-Z]+[0-9]?)/,s=//i,a=//i,l=function(e,t){throw new Error("This browser does not support `document.implementation.createHTMLDocument`")},c=function(e,t){throw new Error("This browser does not support `DOMParser.prototype.parseFromString`")},u="object"==typeof window&&window.DOMParser;if("function"==typeof u){var d=new u;l=c=function(e,t){return t&&(e="<".concat(t,">").concat(e,"")),d.parseFromString(e,"text/html")}}if("object"==typeof document&&document.implementation){var p=document.implementation.createHTMLDocument();l=function(e,t){if(t){var n=p.documentElement.querySelector(t);return n&&(n.innerHTML=e),p}return p.documentElement.innerHTML=e,p}}var f,h="object"==typeof document&&document.createElement("template");h&&h.content&&(f=function(e){return h.innerHTML=e,h.content.childNodes})},2471:function(e,t,n){"use strict";var o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){if("string"!=typeof e)throw new TypeError("First argument must be a string");if(!e)return[];var t=e.match(s),n=t?t[1]:void 0;return(0,i.formatDOM)((0,r.default)(e),null,n)};var r=o(n(5496)),i=n(7731),s=/<(![a-zA-Z\s]+)>/},7731:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.formatAttributes=i,t.formatDOM=function e(t,n,r){void 0===n&&(n=null);for(var a,l=[],c=0,u=t.length;c{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){void 0===e&&(e={});var n={},c=Boolean(e.type&&a[e.type]);for(var u in e){var d=e[u];if((0,o.isCustomAttribute)(u))n[u]=d;else{var p=u.toLowerCase(),f=l(p);if(f){var h=(0,o.getPropertyInfo)(f);switch(i.includes(f)&&s.includes(t)&&!c&&(f=l("default"+p)),n[f]=d,h&&h.type){case o.BOOLEAN:n[f]=!0;break;case o.OVERLOADED_BOOLEAN:""===d&&(n[f]=!0)}}else r.PRESERVE_CUSTOM_ATTRIBUTES&&(n[u]=d)}}return(0,r.setStyleProp)(e.style,n),n};var o=n(4210),r=n(4958),i=["checked","value"],s=["input","select","textarea"],a={reset:!0,submit:!0};function l(e){return o.possibleStandardNames[e]}},308:function(e,t,n){"use strict";var o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t,n){void 0===n&&(n={});for(var o=[],r="function"==typeof n.replace,c=n.transform||s.returnFirstArg,u=n.library||a,d=u.cloneElement,p=u.createElement,f=u.isValidElement,h=t.length,m=0;m1&&(y=d(y,{key:y.key||m})),o.push(c(y,v,m));continue}}if("text"!==v.type){var g=v,b={};l(g)?((0,s.setStyleProp)(g.attribs.style,g.attribs),b=g.attribs):g.attribs&&(b=(0,i.default)(g.attribs,g.name));var w=void 0;switch(v.type){case"script":case"style":v.children[0]&&(b.dangerouslySetInnerHTML={__html:v.children[0].data});break;case"tag":"textarea"===v.name&&v.children[0]?b.defaultValue=v.children[0].data:v.children&&v.children.length&&(w=e(v.children,n));break;default:continue}h>1&&(b.key=m),o.push(c(p(v.name,b,w),v,m))}else{var _=!v.data.trim().length;if(_&&v.parent&&!(0,s.canTextBeChildOfNode)(v.parent))continue;if(n.trim&&_)continue;o.push(c(v.data,v,m))}}return 1===o.length?o[0]:o};var r=n(1609),i=o(n(840)),s=n(4958),a={cloneElement:r.cloneElement,createElement:r.createElement,isValidElement:r.isValidElement};function l(e){return s.PRESERVE_CUSTOM_ATTRIBUTES&&"tag"===e.type&&(0,s.isCustomComponent)(e.name,e.attribs)}},442:function(e,t,n){"use strict";var o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.htmlToDOM=t.domToReact=t.attributesToProps=t.Text=t.ProcessingInstruction=t.Element=t.Comment=void 0,t.default=function(e,t){if("string"!=typeof e)throw new TypeError("First argument must be a string");return e?(0,s.default)((0,r.default)(e,(null==t?void 0:t.htmlparser2)||l),t):[]};var r=o(n(2471));t.htmlToDOM=r.default;var i=o(n(840));t.attributesToProps=i.default;var s=o(n(308));t.domToReact=s.default;var a=n(1141);Object.defineProperty(t,"Comment",{enumerable:!0,get:function(){return a.Comment}}),Object.defineProperty(t,"Element",{enumerable:!0,get:function(){return a.Element}}),Object.defineProperty(t,"ProcessingInstruction",{enumerable:!0,get:function(){return a.ProcessingInstruction}}),Object.defineProperty(t,"Text",{enumerable:!0,get:function(){return a.Text}});var l={lowerCaseAttributeNames:!1}},4958:function(e,t,n){"use strict";var o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.returnFirstArg=t.canTextBeChildOfNode=t.ELEMENTS_WITH_NO_TEXT_CHILDREN=t.PRESERVE_CUSTOM_ATTRIBUTES=void 0,t.isCustomComponent=function(e,t){return e.includes("-")?!s.has(e):Boolean(t&&"string"==typeof t.is)},t.setStyleProp=function(e,t){if("string"==typeof e)if(e.trim())try{t.style=(0,i.default)(e,a)}catch(e){t.style={}}else t.style={}};var r=n(1609),i=o(n(5229)),s=new Set(["annotation-xml","color-profile","font-face","font-face-src","font-face-uri","font-face-format","font-face-name","missing-glyph"]),a={reactCompat:!0};t.PRESERVE_CUSTOM_ATTRIBUTES=Number(r.version.split(".")[0])>=16,t.ELEMENTS_WITH_NO_TEXT_CHILDREN=new Set(["tr","tbody","thead","tfoot","colgroup","table","head","html","frameset"]),t.canTextBeChildOfNode=function(e){return!t.ELEMENTS_WITH_NO_TEXT_CHILDREN.has(e.name)},t.returnFirstArg=function(e){return e}},9788:e=>{var t=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,n=/\n/g,o=/^\s*/,r=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,i=/^:\s*/,s=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,a=/^[;\s]*/,l=/^\s+|\s+$/g,c="";function u(e){return e?e.replace(l,c):c}e.exports=function(e,l){if("string"!=typeof e)throw new TypeError("First argument must be a string");if(!e)return[];l=l||{};var d=1,p=1;function f(e){var t=e.match(n);t&&(d+=t.length);var o=e.lastIndexOf("\n");p=~o?e.length-o:p+e.length}function h(){var e={line:d,column:p};return function(t){return t.position=new m(e),b(),t}}function m(e){this.start=e,this.end={line:d,column:p},this.source=l.source}m.prototype.content=e;var v=[];function y(t){var n=new Error(l.source+":"+d+":"+p+": "+t);if(n.reason=t,n.filename=l.source,n.line=d,n.column=p,n.source=e,!l.silent)throw n;v.push(n)}function g(t){var n=t.exec(e);if(n){var o=n[0];return f(o),e=e.slice(o.length),n}}function b(){g(o)}function w(e){var t;for(e=e||[];t=_();)!1!==t&&e.push(t);return e}function _(){var t=h();if("/"==e.charAt(0)&&"*"==e.charAt(1)){for(var n=2;c!=e.charAt(n)&&("*"!=e.charAt(n)||"/"!=e.charAt(n+1));)++n;if(n+=2,c===e.charAt(n-1))return y("End of comment missing");var o=e.slice(2,n-2);return p+=2,f(o),e=e.slice(n),p+=2,t({type:"comment",comment:o})}}function x(){var e=h(),n=g(r);if(n){if(_(),!g(i))return y("property missing ':'");var o=g(s),l=e({type:"declaration",property:u(n[0].replace(t,c)),value:o?u(o[0].replace(t,c)):c});return g(a),l}}return b(),function(){var e,t=[];for(w(t);e=x();)!1!==e&&(t.push(e),w(t));return t}()}},2694:(e,t,n)=>{"use strict";var o=n(6925);function r(){}function i(){}i.resetWarningCache=r,e.exports=function(){function e(e,t,n,r,i,s){if(s!==o){var a=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw a.name="Invariant Violation",a}}function t(){return e}e.isRequired=e;var n={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:i,resetWarningCache:r};return n.PropTypes=n,n}},5556:(e,t,n)=>{e.exports=n(2694)()},6925:e=>{"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},1345:(e,t,n)=>{"use strict";function o(){var e=this.constructor.getDerivedStateFromProps(this.props,this.state);null!=e&&this.setState(e)}function r(e){this.setState(function(t){var n=this.constructor.getDerivedStateFromProps(e,t);return null!=n?n:null}.bind(this))}function i(e,t){try{var n=this.props,o=this.state;this.props=e,this.state=t,this.__reactInternalSnapshotFlag=!0,this.__reactInternalSnapshot=this.getSnapshotBeforeUpdate(n,o)}finally{this.props=n,this.state=o}}function s(e){var t=e.prototype;if(!t||!t.isReactComponent)throw new Error("Can only polyfill class components");if("function"!=typeof e.getDerivedStateFromProps&&"function"!=typeof t.getSnapshotBeforeUpdate)return e;var n=null,s=null,a=null;if("function"==typeof t.componentWillMount?n="componentWillMount":"function"==typeof t.UNSAFE_componentWillMount&&(n="UNSAFE_componentWillMount"),"function"==typeof t.componentWillReceiveProps?s="componentWillReceiveProps":"function"==typeof t.UNSAFE_componentWillReceiveProps&&(s="UNSAFE_componentWillReceiveProps"),"function"==typeof t.componentWillUpdate?a="componentWillUpdate":"function"==typeof t.UNSAFE_componentWillUpdate&&(a="UNSAFE_componentWillUpdate"),null!==n||null!==s||null!==a){var l=e.displayName||e.name,c="function"==typeof e.getDerivedStateFromProps?"getDerivedStateFromProps()":"getSnapshotBeforeUpdate()";throw Error("Unsafe legacy lifecycles will not be called for components using new component APIs.\n\n"+l+" uses "+c+" but also contains the following legacy lifecycles:"+(null!==n?"\n "+n:"")+(null!==s?"\n "+s:"")+(null!==a?"\n "+a:"")+"\n\nThe above lifecycles should be removed. Learn more about this warning here:\nhttps://fb.me/react-async-component-lifecycle-hooks")}if("function"==typeof e.getDerivedStateFromProps&&(t.componentWillMount=o,t.componentWillReceiveProps=r),"function"==typeof t.getSnapshotBeforeUpdate){if("function"!=typeof t.componentDidUpdate)throw new Error("Cannot polyfill getSnapshotBeforeUpdate() for components that do not define componentDidUpdate() on the prototype");t.componentWillUpdate=i;var u=t.componentDidUpdate;t.componentDidUpdate=function(e,t,n){var o=this.__reactInternalSnapshotFlag?this.__reactInternalSnapshot:n;u.call(this,e,t,o)}}return e}n.r(t),n.d(t,{polyfill:()=>s}),o.__suppressDeprecationWarning=!0,r.__suppressDeprecationWarning=!0,i.__suppressDeprecationWarning=!0},1720:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.bodyOpenClassName=t.portalClassName=void 0;var o=Object.assign||function(e){for(var t=1;t{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=Object.assign||function(e){for(var t=1;t0&&0==(g-=1)&&u.show(t),n.props.shouldFocusAfterRender&&(n.props.shouldReturnFocusAfterClose?(l.returnFocus(n.props.preventScroll),l.teardownScopedFocus()):l.popWithoutFocus()),n.props.onAfterClose&&n.props.onAfterClose(),h.default.deregister(n)},n.open=function(){n.beforeOpen(),n.state.afterOpen&&n.state.beforeClose?(clearTimeout(n.closeTimer),n.setState({beforeClose:!1})):(n.props.shouldFocusAfterRender&&(l.setupScopedFocus(n.node),l.markForFocusLater()),n.setState({isOpen:!0},(function(){n.openAnimationFrame=requestAnimationFrame((function(){n.setState({afterOpen:!0}),n.props.isOpen&&n.props.onAfterOpen&&n.props.onAfterOpen({overlayEl:n.overlay,contentEl:n.content})}))})))},n.close=function(){n.props.closeTimeoutMS>0?n.closeWithTimeout():n.closeWithoutTimeout()},n.focusContent=function(){return n.content&&!n.contentHasFocus()&&n.content.focus({preventScroll:!0})},n.closeWithTimeout=function(){var e=Date.now()+n.props.closeTimeoutMS;n.setState({beforeClose:!0,closesAt:e},(function(){n.closeTimer=setTimeout(n.closeWithoutTimeout,n.state.closesAt-Date.now())}))},n.closeWithoutTimeout=function(){n.setState({beforeClose:!1,isOpen:!1,afterOpen:!1,closesAt:null},n.afterClose)},n.handleKeyDown=function(e){(function(e){return"Tab"===e.code||9===e.keyCode})(e)&&(0,c.default)(n.content,e),n.props.shouldCloseOnEsc&&function(e){return"Escape"===e.code||27===e.keyCode}(e)&&(e.stopPropagation(),n.requestClose(e))},n.handleOverlayOnClick=function(e){null===n.shouldClose&&(n.shouldClose=!0),n.shouldClose&&n.props.shouldCloseOnOverlayClick&&(n.ownerHandlesClose()?n.requestClose(e):n.focusContent()),n.shouldClose=null},n.handleContentOnMouseUp=function(){n.shouldClose=!1},n.handleOverlayOnMouseDown=function(e){n.props.shouldCloseOnOverlayClick||e.target!=n.overlay||e.preventDefault()},n.handleContentOnClick=function(){n.shouldClose=!1},n.handleContentOnMouseDown=function(){n.shouldClose=!1},n.requestClose=function(e){return n.ownerHandlesClose()&&n.props.onRequestClose(e)},n.ownerHandlesClose=function(){return n.props.onRequestClose},n.shouldBeClosed=function(){return!n.state.isOpen&&!n.state.beforeClose},n.contentHasFocus=function(){return document.activeElement===n.content||n.content.contains(document.activeElement)},n.buildClassName=function(e,t){var o="object"===(void 0===t?"undefined":r(t))?t:{base:y[e],afterOpen:y[e]+"--after-open",beforeClose:y[e]+"--before-close"},i=o.base;return n.state.afterOpen&&(i=i+" "+o.afterOpen),n.state.beforeClose&&(i=i+" "+o.beforeClose),"string"==typeof t&&t?i+" "+t:i},n.attributesFromObject=function(e,t){return Object.keys(t).reduce((function(n,o){return n[e+"-"+o]=t[o],n}),{})},n.state={afterOpen:!1,beforeClose:!1},n.shouldClose=null,n.moveFromContentToOverlay=null,n}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,e),i(t,[{key:"componentDidMount",value:function(){this.props.isOpen&&this.open()}},{key:"componentDidUpdate",value:function(e,t){this.props.isOpen&&!e.isOpen?this.open():!this.props.isOpen&&e.isOpen&&this.close(),this.props.shouldFocusAfterRender&&this.state.isOpen&&!t.isOpen&&this.focusContent()}},{key:"componentWillUnmount",value:function(){this.state.isOpen&&this.afterClose(),clearTimeout(this.closeTimer),cancelAnimationFrame(this.openAnimationFrame)}},{key:"beforeOpen",value:function(){var e=this.props,t=e.appElement,n=e.ariaHideApp,o=e.htmlOpenClassName,r=e.bodyOpenClassName,i=e.parentSelector,s=i&&i().ownerDocument||document;r&&d.add(s.body,r),o&&d.add(s.getElementsByTagName("html")[0],o),n&&(g+=1,u.hide(t)),h.default.register(this)}},{key:"render",value:function(){var e=this.props,t=e.id,n=e.className,r=e.overlayClassName,i=e.defaultStyles,s=e.children,a=n?{}:i.content,l=r?{}:i.overlay;if(this.shouldBeClosed())return null;var c={ref:this.setOverlayRef,className:this.buildClassName("overlay",r),style:o({},l,this.props.style.overlay),onClick:this.handleOverlayOnClick,onMouseDown:this.handleOverlayOnMouseDown},u=o({id:t,ref:this.setContentRef,style:o({},a,this.props.style.content),className:this.buildClassName("content",n),tabIndex:"-1",onKeyDown:this.handleKeyDown,onMouseDown:this.handleContentOnMouseDown,onMouseUp:this.handleContentOnMouseUp,onClick:this.handleContentOnClick,role:this.props.role,"aria-label":this.props.contentLabel},this.attributesFromObject("aria",o({modal:!0},this.props.aria)),this.attributesFromObject("data",this.props.data||{}),{"data-testid":this.props.testId}),d=this.props.contentElement(u,s);return this.props.overlayElement(c,d)}}]),t}(s.Component);b.defaultProps={style:{overlay:{},content:{}},defaultStyles:{}},b.propTypes={isOpen:a.default.bool.isRequired,defaultStyles:a.default.shape({content:a.default.object,overlay:a.default.object}),style:a.default.shape({content:a.default.object,overlay:a.default.object}),className:a.default.oneOfType([a.default.string,a.default.object]),overlayClassName:a.default.oneOfType([a.default.string,a.default.object]),parentSelector:a.default.func,bodyOpenClassName:a.default.string,htmlOpenClassName:a.default.string,ariaHideApp:a.default.bool,appElement:a.default.oneOfType([a.default.instanceOf(f.default),a.default.instanceOf(p.SafeHTMLCollection),a.default.instanceOf(p.SafeNodeList),a.default.arrayOf(a.default.instanceOf(f.default))]),onAfterOpen:a.default.func,onAfterClose:a.default.func,onRequestClose:a.default.func,closeTimeoutMS:a.default.number,shouldFocusAfterRender:a.default.bool,shouldCloseOnOverlayClick:a.default.bool,shouldReturnFocusAfterClose:a.default.bool,preventScroll:a.default.bool,role:a.default.string,contentLabel:a.default.string,aria:a.default.object,data:a.default.object,children:a.default.node,shouldCloseOnEsc:a.default.bool,overlayRef:a.default.func,contentRef:a.default.func,id:a.default.string,overlayElement:a.default.func,contentElement:a.default.func,testId:a.default.string},t.default=b,e.exports=t.default},6462:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.resetState=function(){s&&(s.removeAttribute?s.removeAttribute("aria-hidden"):null!=s.length?s.forEach((function(e){return e.removeAttribute("aria-hidden")})):document.querySelectorAll(s).forEach((function(e){return e.removeAttribute("aria-hidden")}))),s=null},t.log=function(){},t.assertNodeList=a,t.setElement=function(e){var t=e;if("string"==typeof t&&i.canUseDOM){var n=document.querySelectorAll(t);a(n,t),t=n}return s=t||s},t.validateElement=l,t.hide=function(e){var t=!0,n=!1,o=void 0;try{for(var r,i=l(e)[Symbol.iterator]();!(t=(r=i.next()).done);t=!0)r.value.setAttribute("aria-hidden","true")}catch(e){n=!0,o=e}finally{try{!t&&i.return&&i.return()}finally{if(n)throw o}}},t.show=function(e){var t=!0,n=!1,o=void 0;try{for(var r,i=l(e)[Symbol.iterator]();!(t=(r=i.next()).done);t=!0)r.value.removeAttribute("aria-hidden")}catch(e){n=!0,o=e}finally{try{!t&&i.return&&i.return()}finally{if(n)throw o}}},t.documentNotReadyOrSSRTesting=function(){s=null};var o,r=(o=n(9771))&&o.__esModule?o:{default:o},i=n(834),s=null;function a(e,t){if(!e||!e.length)throw new Error("react-modal: No elements were found for selector "+t+".")}function l(e){var t=e||s;return t?Array.isArray(t)||t instanceof HTMLCollection||t instanceof NodeList?t:[t]:((0,r.default)(!1,["react-modal: App element is not defined.","Please use `Modal.setAppElement(el)` or set `appElement={el}`.","This is needed so screen readers don't see main content","when modal is opened. It is not recommended, but you can opt-out","by setting `ariaHideApp={false}`."].join(" ")),[])}},7727:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.resetState=function(){for(var e=[i,s],t=0;t0?(document.body.firstChild!==i&&document.body.insertBefore(i,document.body.firstChild),document.body.lastChild!==s&&document.body.appendChild(s)):(i.parentElement&&i.parentElement.removeChild(i),s.parentElement&&s.parentElement.removeChild(s))}))},4838:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.resetState=function(){var e=document.getElementsByTagName("html")[0];for(var t in n)r(e,n[t]);var i=document.body;for(var s in o)r(i,o[s]);n={},o={}},t.log=function(){};var n={},o={};function r(e,t){e.classList.remove(t)}t.add=function(e,t){return r=e.classList,i="html"==e.nodeName.toLowerCase()?n:o,void t.split(" ").forEach((function(e){!function(e,t){e[t]||(e[t]=0),e[t]+=1}(i,e),r.add(e)}));var r,i},t.remove=function(e,t){return r=e.classList,i="html"==e.nodeName.toLowerCase()?n:o,void t.split(" ").forEach((function(e){!function(e,t){e[t]&&(e[t]-=1)}(i,e),0===i[e]&&r.remove(e)}));var r,i}},7791:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.resetState=function(){i=[]},t.log=function(){},t.handleBlur=l,t.handleFocus=c,t.markForFocusLater=function(){i.push(document.activeElement)},t.returnFocus=function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=null;try{return void(0!==i.length&&(t=i.pop()).focus({preventScroll:e}))}catch(e){console.warn(["You tried to return focus to",t,"but it is not in the DOM anymore"].join(" "))}},t.popWithoutFocus=function(){i.length>0&&i.pop()},t.setupScopedFocus=function(e){s=e,window.addEventListener?(window.addEventListener("blur",l,!1),document.addEventListener("focus",c,!0)):(window.attachEvent("onBlur",l),document.attachEvent("onFocus",c))},t.teardownScopedFocus=function(){s=null,window.addEventListener?(window.removeEventListener("blur",l),document.removeEventListener("focus",c)):(window.detachEvent("onBlur",l),document.detachEvent("onFocus",c))};var o,r=(o=n(2411))&&o.__esModule?o:{default:o},i=[],s=null,a=!1;function l(){a=!0}function c(){if(a){if(a=!1,!s)return;setTimeout((function(){s.contains(document.activeElement)||((0,r.default)(s)[0]||s).focus()}),0)}}},9628:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.log=function(){console.log("portalOpenInstances ----------"),console.log(o.openInstances.length),o.openInstances.forEach((function(e){return console.log(e)})),console.log("end portalOpenInstances ----------")},t.resetState=function(){o=new n};var n=function e(){var t=this;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.register=function(e){-1===t.openInstances.indexOf(e)&&(t.openInstances.push(e),t.emit("register"))},this.deregister=function(e){var n=t.openInstances.indexOf(e);-1!==n&&(t.openInstances.splice(n,1),t.emit("deregister"))},this.subscribe=function(e){t.subscribers.push(e)},this.emit=function(e){t.subscribers.forEach((function(n){return n(e,t.openInstances.slice())}))},this.openInstances=[],this.subscribers=[]},o=new n;t.default=o},834:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.canUseDOM=t.SafeNodeList=t.SafeHTMLCollection=void 0;var o,r=((o=n(411))&&o.__esModule?o:{default:o}).default,i=r.canUseDOM?window.HTMLElement:{};t.SafeHTMLCollection=r.canUseDOM?window.HTMLCollection:{},t.SafeNodeList=r.canUseDOM?window.NodeList:{},t.canUseDOM=r.canUseDOM,t.default=i},7067:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){var n=(0,r.default)(e);if(n.length){var o=void 0,s=t.shiftKey,a=n[0],l=n[n.length-1],c=i();if(e===c){if(!s)return;o=l}if(l!==c||s||(o=a),a===c&&s&&(o=l),o)return t.preventDefault(),void o.focus();var u=/(\bChrome\b|\bSafari\b)\//.exec(navigator.userAgent);if(null!=u&&"Chrome"!=u[1]&&null==/\biPod\b|\biPad\b/g.exec(navigator.userAgent)){var d=n.indexOf(c);if(d>-1&&(d+=s?-1:1),void 0===(o=n[d]))return t.preventDefault(),void(o=s?l:a).focus();t.preventDefault(),o.focus()}}else t.preventDefault()};var o,r=(o=n(2411))&&o.__esModule?o:{default:o};function i(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:document;return e.activeElement.shadowRoot?i(e.activeElement.shadowRoot):e.activeElement}e.exports=t.default},2411:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t){return[].slice.call(t.querySelectorAll("*"),0).reduce((function(t,n){return t.concat(n.shadowRoot?e(n.shadowRoot):[n])}),[]).filter(s)};var n="none",o="contents",r=/input|select|textarea|button|object|iframe/;function i(e){var t=e.offsetWidth<=0&&e.offsetHeight<=0;if(t&&!e.innerHTML)return!0;try{var r=window.getComputedStyle(e),i=r.getPropertyValue("display");return t?i!==o&&function(e,t){return"visible"!==t.getPropertyValue("overflow")||e.scrollWidth<=0&&e.scrollHeight<=0}(e,r):i===n}catch(e){return console.warn("Failed to inspect element style"),!1}}function s(e){var t=e.getAttribute("tabindex");null===t&&(t=void 0);var n=isNaN(t);return(n||t>=0)&&function(e,t){var n=e.nodeName.toLowerCase();return(r.test(n)&&!e.disabled||"a"===n&&e.href||t)&&function(e){for(var t=e,n=e.getRootNode&&e.getRootNode();t&&t!==document.body;){if(n&&t===n&&(t=n.host.parentNode),i(t))return!1;t=t.parentNode}return!0}(e)}(e,!n)}e.exports=t.default},312:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o,r=(o=n(1720))&&o.__esModule?o:{default:o};t.default=r.default,e.exports=t.default},4210:(e,t,n)=>{"use strict";function o(e,t,n,o,r,i,s){this.acceptsBooleans=2===t||3===t||4===t,this.attributeName=o,this.attributeNamespace=r,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=i,this.removeEmptyString=s}const r={};["children","dangerouslySetInnerHTML","defaultValue","defaultChecked","innerHTML","suppressContentEditableWarning","suppressHydrationWarning","style"].forEach((e=>{r[e]=new o(e,0,!1,e,null,!1,!1)})),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach((([e,t])=>{r[e]=new o(e,1,!1,t,null,!1,!1)})),["contentEditable","draggable","spellCheck","value"].forEach((e=>{r[e]=new o(e,2,!1,e.toLowerCase(),null,!1,!1)})),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach((e=>{r[e]=new o(e,2,!1,e,null,!1,!1)})),["allowFullScreen","async","autoFocus","autoPlay","controls","default","defer","disabled","disablePictureInPicture","disableRemotePlayback","formNoValidate","hidden","loop","noModule","noValidate","open","playsInline","readOnly","required","reversed","scoped","seamless","itemScope"].forEach((e=>{r[e]=new o(e,3,!1,e.toLowerCase(),null,!1,!1)})),["checked","multiple","muted","selected"].forEach((e=>{r[e]=new o(e,3,!0,e,null,!1,!1)})),["capture","download"].forEach((e=>{r[e]=new o(e,4,!1,e,null,!1,!1)})),["cols","rows","size","span"].forEach((e=>{r[e]=new o(e,6,!1,e,null,!1,!1)})),["rowSpan","start"].forEach((e=>{r[e]=new o(e,5,!1,e.toLowerCase(),null,!1,!1)}));const i=/[\-\:]([a-z])/g,s=e=>e[1].toUpperCase();["accent-height","alignment-baseline","arabic-form","baseline-shift","cap-height","clip-path","clip-rule","color-interpolation","color-interpolation-filters","color-profile","color-rendering","dominant-baseline","enable-background","fill-opacity","fill-rule","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","glyph-name","glyph-orientation-horizontal","glyph-orientation-vertical","horiz-adv-x","horiz-origin-x","image-rendering","letter-spacing","lighting-color","marker-end","marker-mid","marker-start","overline-position","overline-thickness","paint-order","panose-1","pointer-events","rendering-intent","shape-rendering","stop-color","stop-opacity","strikethrough-position","strikethrough-thickness","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","text-anchor","text-decoration","text-rendering","underline-position","underline-thickness","unicode-bidi","unicode-range","units-per-em","v-alphabetic","v-hanging","v-ideographic","v-mathematical","vector-effect","vert-adv-y","vert-origin-x","vert-origin-y","word-spacing","writing-mode","xmlns:xlink","x-height"].forEach((e=>{const t=e.replace(i,s);r[t]=new o(t,1,!1,e,null,!1,!1)})),["xlink:actuate","xlink:arcrole","xlink:role","xlink:show","xlink:title","xlink:type"].forEach((e=>{const t=e.replace(i,s);r[t]=new o(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)})),["xml:base","xml:lang","xml:space"].forEach((e=>{const t=e.replace(i,s);r[t]=new o(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)})),["tabIndex","crossOrigin"].forEach((e=>{r[e]=new o(e,1,!1,e.toLowerCase(),null,!1,!1)})),r.xlinkHref=new o("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach((e=>{r[e]=new o(e,1,!1,e.toLowerCase(),null,!0,!0)}));const{CAMELCASE:a,SAME:l,possibleStandardNames:c}=n(6811),u=RegExp.prototype.test.bind(new RegExp("^(data|aria)-[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$")),d=Object.keys(c).reduce(((e,t)=>{const n=c[t];return n===l?e[t]=t:n===a?e[t.toLowerCase()]=t:e[t]=n,e}),{});t.BOOLEAN=3,t.BOOLEANISH_STRING=2,t.NUMERIC=5,t.OVERLOADED_BOOLEAN=4,t.POSITIVE_NUMERIC=6,t.RESERVED=0,t.STRING=1,t.getPropertyInfo=function(e){return r.hasOwnProperty(e)?r[e]:null},t.isCustomAttribute=u,t.possibleStandardNames=d},6811:(e,t)=>{t.SAME=0,t.CAMELCASE=1,t.possibleStandardNames={accept:0,acceptCharset:1,"accept-charset":"acceptCharset",accessKey:1,action:0,allowFullScreen:1,alt:0,as:0,async:0,autoCapitalize:1,autoComplete:1,autoCorrect:1,autoFocus:1,autoPlay:1,autoSave:1,capture:0,cellPadding:1,cellSpacing:1,challenge:0,charSet:1,checked:0,children:0,cite:0,class:"className",classID:1,className:1,cols:0,colSpan:1,content:0,contentEditable:1,contextMenu:1,controls:0,controlsList:1,coords:0,crossOrigin:1,dangerouslySetInnerHTML:1,data:0,dateTime:1,default:0,defaultChecked:1,defaultValue:1,defer:0,dir:0,disabled:0,disablePictureInPicture:1,disableRemotePlayback:1,download:0,draggable:0,encType:1,enterKeyHint:1,for:"htmlFor",form:0,formMethod:1,formAction:1,formEncType:1,formNoValidate:1,formTarget:1,frameBorder:1,headers:0,height:0,hidden:0,high:0,href:0,hrefLang:1,htmlFor:1,httpEquiv:1,"http-equiv":"httpEquiv",icon:0,id:0,innerHTML:1,inputMode:1,integrity:0,is:0,itemID:1,itemProp:1,itemRef:1,itemScope:1,itemType:1,keyParams:1,keyType:1,kind:0,label:0,lang:0,list:0,loop:0,low:0,manifest:0,marginWidth:1,marginHeight:1,max:0,maxLength:1,media:0,mediaGroup:1,method:0,min:0,minLength:1,multiple:0,muted:0,name:0,noModule:1,nonce:0,noValidate:1,open:0,optimum:0,pattern:0,placeholder:0,playsInline:1,poster:0,preload:0,profile:0,radioGroup:1,readOnly:1,referrerPolicy:1,rel:0,required:0,reversed:0,role:0,rows:0,rowSpan:1,sandbox:0,scope:0,scoped:0,scrolling:0,seamless:0,selected:0,shape:0,size:0,sizes:0,span:0,spellCheck:1,src:0,srcDoc:1,srcLang:1,srcSet:1,start:0,step:0,style:0,summary:0,tabIndex:1,target:0,title:0,type:0,useMap:1,value:0,width:0,wmode:0,wrap:0,about:0,accentHeight:1,"accent-height":"accentHeight",accumulate:0,additive:0,alignmentBaseline:1,"alignment-baseline":"alignmentBaseline",allowReorder:1,alphabetic:0,amplitude:0,arabicForm:1,"arabic-form":"arabicForm",ascent:0,attributeName:1,attributeType:1,autoReverse:1,azimuth:0,baseFrequency:1,baselineShift:1,"baseline-shift":"baselineShift",baseProfile:1,bbox:0,begin:0,bias:0,by:0,calcMode:1,capHeight:1,"cap-height":"capHeight",clip:0,clipPath:1,"clip-path":"clipPath",clipPathUnits:1,clipRule:1,"clip-rule":"clipRule",color:0,colorInterpolation:1,"color-interpolation":"colorInterpolation",colorInterpolationFilters:1,"color-interpolation-filters":"colorInterpolationFilters",colorProfile:1,"color-profile":"colorProfile",colorRendering:1,"color-rendering":"colorRendering",contentScriptType:1,contentStyleType:1,cursor:0,cx:0,cy:0,d:0,datatype:0,decelerate:0,descent:0,diffuseConstant:1,direction:0,display:0,divisor:0,dominantBaseline:1,"dominant-baseline":"dominantBaseline",dur:0,dx:0,dy:0,edgeMode:1,elevation:0,enableBackground:1,"enable-background":"enableBackground",end:0,exponent:0,externalResourcesRequired:1,fill:0,fillOpacity:1,"fill-opacity":"fillOpacity",fillRule:1,"fill-rule":"fillRule",filter:0,filterRes:1,filterUnits:1,floodOpacity:1,"flood-opacity":"floodOpacity",floodColor:1,"flood-color":"floodColor",focusable:0,fontFamily:1,"font-family":"fontFamily",fontSize:1,"font-size":"fontSize",fontSizeAdjust:1,"font-size-adjust":"fontSizeAdjust",fontStretch:1,"font-stretch":"fontStretch",fontStyle:1,"font-style":"fontStyle",fontVariant:1,"font-variant":"fontVariant",fontWeight:1,"font-weight":"fontWeight",format:0,from:0,fx:0,fy:0,g1:0,g2:0,glyphName:1,"glyph-name":"glyphName",glyphOrientationHorizontal:1,"glyph-orientation-horizontal":"glyphOrientationHorizontal",glyphOrientationVertical:1,"glyph-orientation-vertical":"glyphOrientationVertical",glyphRef:1,gradientTransform:1,gradientUnits:1,hanging:0,horizAdvX:1,"horiz-adv-x":"horizAdvX",horizOriginX:1,"horiz-origin-x":"horizOriginX",ideographic:0,imageRendering:1,"image-rendering":"imageRendering",in2:0,in:0,inlist:0,intercept:0,k1:0,k2:0,k3:0,k4:0,k:0,kernelMatrix:1,kernelUnitLength:1,kerning:0,keyPoints:1,keySplines:1,keyTimes:1,lengthAdjust:1,letterSpacing:1,"letter-spacing":"letterSpacing",lightingColor:1,"lighting-color":"lightingColor",limitingConeAngle:1,local:0,markerEnd:1,"marker-end":"markerEnd",markerHeight:1,markerMid:1,"marker-mid":"markerMid",markerStart:1,"marker-start":"markerStart",markerUnits:1,markerWidth:1,mask:0,maskContentUnits:1,maskUnits:1,mathematical:0,mode:0,numOctaves:1,offset:0,opacity:0,operator:0,order:0,orient:0,orientation:0,origin:0,overflow:0,overlinePosition:1,"overline-position":"overlinePosition",overlineThickness:1,"overline-thickness":"overlineThickness",paintOrder:1,"paint-order":"paintOrder",panose1:0,"panose-1":"panose1",pathLength:1,patternContentUnits:1,patternTransform:1,patternUnits:1,pointerEvents:1,"pointer-events":"pointerEvents",points:0,pointsAtX:1,pointsAtY:1,pointsAtZ:1,prefix:0,preserveAlpha:1,preserveAspectRatio:1,primitiveUnits:1,property:0,r:0,radius:0,refX:1,refY:1,renderingIntent:1,"rendering-intent":"renderingIntent",repeatCount:1,repeatDur:1,requiredExtensions:1,requiredFeatures:1,resource:0,restart:0,result:0,results:0,rotate:0,rx:0,ry:0,scale:0,security:0,seed:0,shapeRendering:1,"shape-rendering":"shapeRendering",slope:0,spacing:0,specularConstant:1,specularExponent:1,speed:0,spreadMethod:1,startOffset:1,stdDeviation:1,stemh:0,stemv:0,stitchTiles:1,stopColor:1,"stop-color":"stopColor",stopOpacity:1,"stop-opacity":"stopOpacity",strikethroughPosition:1,"strikethrough-position":"strikethroughPosition",strikethroughThickness:1,"strikethrough-thickness":"strikethroughThickness",string:0,stroke:0,strokeDasharray:1,"stroke-dasharray":"strokeDasharray",strokeDashoffset:1,"stroke-dashoffset":"strokeDashoffset",strokeLinecap:1,"stroke-linecap":"strokeLinecap",strokeLinejoin:1,"stroke-linejoin":"strokeLinejoin",strokeMiterlimit:1,"stroke-miterlimit":"strokeMiterlimit",strokeWidth:1,"stroke-width":"strokeWidth",strokeOpacity:1,"stroke-opacity":"strokeOpacity",suppressContentEditableWarning:1,suppressHydrationWarning:1,surfaceScale:1,systemLanguage:1,tableValues:1,targetX:1,targetY:1,textAnchor:1,"text-anchor":"textAnchor",textDecoration:1,"text-decoration":"textDecoration",textLength:1,textRendering:1,"text-rendering":"textRendering",to:0,transform:0,typeof:0,u1:0,u2:0,underlinePosition:1,"underline-position":"underlinePosition",underlineThickness:1,"underline-thickness":"underlineThickness",unicode:0,unicodeBidi:1,"unicode-bidi":"unicodeBidi",unicodeRange:1,"unicode-range":"unicodeRange",unitsPerEm:1,"units-per-em":"unitsPerEm",unselectable:0,vAlphabetic:1,"v-alphabetic":"vAlphabetic",values:0,vectorEffect:1,"vector-effect":"vectorEffect",version:0,vertAdvY:1,"vert-adv-y":"vertAdvY",vertOriginX:1,"vert-origin-x":"vertOriginX",vertOriginY:1,"vert-origin-y":"vertOriginY",vHanging:1,"v-hanging":"vHanging",vIdeographic:1,"v-ideographic":"vIdeographic",viewBox:1,viewTarget:1,visibility:0,vMathematical:1,"v-mathematical":"vMathematical",vocab:0,widths:0,wordSpacing:1,"word-spacing":"wordSpacing",writingMode:1,"writing-mode":"writingMode",x1:0,x2:0,x:0,xChannelSelector:1,xHeight:1,"x-height":"xHeight",xlinkActuate:1,"xlink:actuate":"xlinkActuate",xlinkArcrole:1,"xlink:arcrole":"xlinkArcrole",xlinkHref:1,"xlink:href":"xlinkHref",xlinkRole:1,"xlink:role":"xlinkRole",xlinkShow:1,"xlink:show":"xlinkShow",xlinkTitle:1,"xlink:title":"xlinkTitle",xlinkType:1,"xlink:type":"xlinkType",xmlBase:1,"xml:base":"xmlBase",xmlLang:1,"xml:lang":"xmlLang",xmlns:0,"xml:space":"xmlSpace",xmlnsXlink:1,"xmlns:xlink":"xmlnsXlink",xmlSpace:1,y1:0,y2:0,y:0,yChannelSelector:1,z:0,zoomAndPan:1}},5229:function(e,t,n){"use strict";var o=(this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}})(n(1133)),r=n(8917);function i(e,t){var n={};return e&&"string"==typeof e?((0,o.default)(e,(function(e,o){e&&o&&(n[(0,r.camelCase)(e,t)]=o)})),n):n}i.default=i,e.exports=i},8917:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.camelCase=void 0;var n=/^--[a-zA-Z0-9-]+$/,o=/-([a-z])/g,r=/^[^-]+$/,i=/^-(webkit|moz|ms|o|khtml)-/,s=/^-(ms)-/,a=function(e,t){return t.toUpperCase()},l=function(e,t){return"".concat(t,"-")};t.camelCase=function(e,t){return void 0===t&&(t={}),function(e){return!e||r.test(e)||n.test(e)}(e)?e:(e=e.toLowerCase(),(e=t.reactCompat?e.replace(s,l):e.replace(i,l)).replace(o,a))}},1133:function(e,t,n){"use strict";var o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var r=o(n(9788));t.default=function(e,t){var n=null;if(!e||"string"!=typeof e)return n;var o=(0,r.default)(e),i="function"==typeof t;return o.forEach((function(e){if("declaration"===e.type){var o=e.property,r=e.value;i?t(o,r,e):r&&((n=n||{})[o]=r)}})),n}},9771:e=>{"use strict";e.exports=function(){}},1609:e=>{"use strict";e.exports=window.React},5795:e=>{"use strict";e.exports=window.ReactDOM},6942:(e,t)=>{var n;!function(){"use strict";var o={}.hasOwnProperty;function r(){for(var e="",t=0;t{if(!n){var s=1/0;for(u=0;u=i)&&Object.keys(o.O).every((e=>o.O[e](n[l])))?n.splice(l--,1):(a=!1,i0&&e[u-1][2]>i;u--)e[u]=e[u-1];e[u]=[n,r,i]},o.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return o.d(t,{a:t}),t},o.d=(e,t)=>{for(var n in t)o.o(t,n)&&!o.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),o.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{var e={105:0,149:0};o.O.j=t=>0===e[t];var t=(t,n)=>{var r,i,s=n[0],a=n[1],l=n[2],c=0;if(s.some((t=>0!==e[t]))){for(r in a)o.o(a,r)&&(o.m[r]=a[r]);if(l)var u=l(o)}for(t&&t(n);co(8937)));r=o.O(r)})(); \ No newline at end of file diff --git a/build/blocks/online-event/index.asset.php b/build/blocks/online-event/index.asset.php index 96a236db2..f7700bbe5 100644 --- a/build/blocks/online-event/index.asset.php +++ b/build/blocks/online-event/index.asset.php @@ -1 +1 @@ - array('react', 'react-jsx-runtime', 'wp-block-editor', 'wp-blocks', 'wp-components', 'wp-data', 'wp-element', 'wp-i18n'), 'version' => '120d638313cd180d9338'); + array('react', 'react-jsx-runtime', 'wp-block-editor', 'wp-blocks', 'wp-components', 'wp-data', 'wp-element', 'wp-i18n'), 'version' => '6b29b724d454d963ac65'); diff --git a/build/blocks/online-event/index.js b/build/blocks/online-event/index.js index 7a10d905a..98a96ad95 100644 --- a/build/blocks/online-event/index.js +++ b/build/blocks/online-event/index.js @@ -1 +1 @@ -(()=>{var e,t={7520:(e,t,n)=>{"use strict";const o=window.wp.blocks,r=window.wp.blockEditor,l=window.wp.components,i=window.wp.data,s=window.React,c=Math.min,a=Math.max,u=Math.round,d=Math.floor,f=e=>({x:e,y:e}),p={left:"right",right:"left",bottom:"top",top:"bottom"},m={start:"end",end:"start"};function v(e,t,n){return a(e,c(t,n))}function h(e,t){return"function"==typeof e?e(t):e}function y(e){return e.split("-")[0]}function g(e){return e.split("-")[1]}function w(e){return"x"===e?"y":"x"}function b(e){return"y"===e?"height":"width"}function x(e){return["top","bottom"].includes(y(e))?"y":"x"}function _(e){return w(x(e))}function E(e){return e.replace(/start|end/g,(e=>m[e]))}function S(e){return e.replace(/left|right|bottom|top/g,(e=>p[e]))}function k(e){return"number"!=typeof e?function(e){return{top:0,right:0,bottom:0,left:0,...e}}(e):{top:e,right:e,bottom:e,left:e}}function A(e){const{x:t,y:n,width:o,height:r}=e;return{width:o,height:r,top:n,left:t,right:t+o,bottom:n+r,x:t,y:n}}function O(e,t,n){let{reference:o,floating:r}=e;const l=x(t),i=_(t),s=b(i),c=y(t),a="y"===l,u=o.x+o.width/2-r.width/2,d=o.y+o.height/2-r.height/2,f=o[s]/2-r[s]/2;let p;switch(c){case"top":p={x:u,y:o.y-r.height};break;case"bottom":p={x:u,y:o.y+o.height};break;case"right":p={x:o.x+o.width,y:d};break;case"left":p={x:o.x-r.width,y:d};break;default:p={x:o.x,y:o.y}}switch(g(t)){case"start":p[i]-=f*(n&&a?-1:1);break;case"end":p[i]+=f*(n&&a?-1:1)}return p}async function R(e,t){var n;void 0===t&&(t={});const{x:o,y:r,platform:l,rects:i,elements:s,strategy:c}=e,{boundary:a="clippingAncestors",rootBoundary:u="viewport",elementContext:d="floating",altBoundary:f=!1,padding:p=0}=h(t,e),m=k(p),v=s[f?"floating"===d?"reference":"floating":d],y=A(await l.getClippingRect({element:null==(n=await(null==l.isElement?void 0:l.isElement(v)))||n?v:v.contextElement||await(null==l.getDocumentElement?void 0:l.getDocumentElement(s.floating)),boundary:a,rootBoundary:u,strategy:c})),g="floating"===d?{x:o,y:r,width:i.floating.width,height:i.floating.height}:i.reference,w=await(null==l.getOffsetParent?void 0:l.getOffsetParent(s.floating)),b=await(null==l.isElement?void 0:l.isElement(w))&&await(null==l.getScale?void 0:l.getScale(w))||{x:1,y:1},x=A(l.convertOffsetParentRelativeRectToViewportRelativeRect?await l.convertOffsetParentRelativeRectToViewportRelativeRect({elements:s,rect:g,offsetParent:w,strategy:c}):g);return{top:(y.top-x.top+m.top)/b.y,bottom:(x.bottom-y.bottom+m.bottom)/b.y,left:(y.left-x.left+m.left)/b.x,right:(x.right-y.right+m.right)/b.x}}function T(e){return j(e)?(e.nodeName||"").toLowerCase():"#document"}function L(e){var t;return(null==e||null==(t=e.ownerDocument)?void 0:t.defaultView)||window}function C(e){var t;return null==(t=(j(e)?e.ownerDocument:e.document)||window.document)?void 0:t.documentElement}function j(e){return e instanceof Node||e instanceof L(e).Node}function D(e){return e instanceof Element||e instanceof L(e).Element}function N(e){return e instanceof HTMLElement||e instanceof L(e).HTMLElement}function P(e){return"undefined"!=typeof ShadowRoot&&(e instanceof ShadowRoot||e instanceof L(e).ShadowRoot)}function I(e){const{overflow:t,overflowX:n,overflowY:o,display:r}=W(e);return/auto|scroll|overlay|hidden|clip/.test(t+o+n)&&!["inline","contents"].includes(r)}function B(e){return["table","td","th"].includes(T(e))}function $(e){return[":popover-open",":modal"].some((t=>{try{return e.matches(t)}catch(e){return!1}}))}function F(e){const t=H(),n=D(e)?W(e):e;return"none"!==n.transform||"none"!==n.perspective||!!n.containerType&&"normal"!==n.containerType||!t&&!!n.backdropFilter&&"none"!==n.backdropFilter||!t&&!!n.filter&&"none"!==n.filter||["transform","perspective","filter"].some((e=>(n.willChange||"").includes(e)))||["paint","layout","strict","content"].some((e=>(n.contain||"").includes(e)))}function H(){return!("undefined"==typeof CSS||!CSS.supports)&&CSS.supports("-webkit-backdrop-filter","none")}function z(e){return["html","body","#document"].includes(T(e))}function W(e){return L(e).getComputedStyle(e)}function M(e){return D(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function V(e){if("html"===T(e))return e;const t=e.assignedSlot||e.parentNode||P(e)&&e.host||C(e);return P(t)?t.host:t}function q(e){const t=V(e);return z(t)?e.ownerDocument?e.ownerDocument.body:e.body:N(t)&&I(t)?t:q(t)}function K(e,t,n){var o;void 0===t&&(t=[]),void 0===n&&(n=!0);const r=q(e),l=r===(null==(o=e.ownerDocument)?void 0:o.body),i=L(r);return l?t.concat(i,i.visualViewport||[],I(r)?r:[],i.frameElement&&n?K(i.frameElement):[]):t.concat(r,K(r,[],n))}function X(e){const t=W(e);let n=parseFloat(t.width)||0,o=parseFloat(t.height)||0;const r=N(e),l=r?e.offsetWidth:n,i=r?e.offsetHeight:o,s=u(n)!==l||u(o)!==i;return s&&(n=l,o=i),{width:n,height:o,$:s}}function G(e){return D(e)?e:e.contextElement}function Y(e){const t=G(e);if(!N(t))return f(1);const n=t.getBoundingClientRect(),{width:o,height:r,$:l}=X(t);let i=(l?u(n.width):n.width)/o,s=(l?u(n.height):n.height)/r;return i&&Number.isFinite(i)||(i=1),s&&Number.isFinite(s)||(s=1),{x:i,y:s}}const J=f(0);function U(e){const t=L(e);return H()&&t.visualViewport?{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}:J}function Z(e,t,n,o){void 0===t&&(t=!1),void 0===n&&(n=!1);const r=e.getBoundingClientRect(),l=G(e);let i=f(1);t&&(o?D(o)&&(i=Y(o)):i=Y(e));const s=function(e,t,n){return void 0===t&&(t=!1),!(!n||t&&n!==L(e))&&t}(l,n,o)?U(l):f(0);let c=(r.left+s.x)/i.x,a=(r.top+s.y)/i.y,u=r.width/i.x,d=r.height/i.y;if(l){const e=L(l),t=o&&D(o)?L(o):o;let n=e,r=n.frameElement;for(;r&&o&&t!==n;){const e=Y(r),t=r.getBoundingClientRect(),o=W(r),l=t.left+(r.clientLeft+parseFloat(o.paddingLeft))*e.x,i=t.top+(r.clientTop+parseFloat(o.paddingTop))*e.y;c*=e.x,a*=e.y,u*=e.x,d*=e.y,c+=l,a+=i,n=L(r),r=n.frameElement}}return A({width:u,height:d,x:c,y:a})}function Q(e){return Z(C(e)).left+M(e).scrollLeft}function ee(e,t,n){let o;if("viewport"===t)o=function(e,t){const n=L(e),o=C(e),r=n.visualViewport;let l=o.clientWidth,i=o.clientHeight,s=0,c=0;if(r){l=r.width,i=r.height;const e=H();(!e||e&&"fixed"===t)&&(s=r.offsetLeft,c=r.offsetTop)}return{width:l,height:i,x:s,y:c}}(e,n);else if("document"===t)o=function(e){const t=C(e),n=M(e),o=e.ownerDocument.body,r=a(t.scrollWidth,t.clientWidth,o.scrollWidth,o.clientWidth),l=a(t.scrollHeight,t.clientHeight,o.scrollHeight,o.clientHeight);let i=-n.scrollLeft+Q(e);const s=-n.scrollTop;return"rtl"===W(o).direction&&(i+=a(t.clientWidth,o.clientWidth)-r),{width:r,height:l,x:i,y:s}}(C(e));else if(D(t))o=function(e,t){const n=Z(e,!0,"fixed"===t),o=n.top+e.clientTop,r=n.left+e.clientLeft,l=N(e)?Y(e):f(1);return{width:e.clientWidth*l.x,height:e.clientHeight*l.y,x:r*l.x,y:o*l.y}}(t,n);else{const n=U(e);o={...t,x:t.x-n.x,y:t.y-n.y}}return A(o)}function te(e,t){const n=V(e);return!(n===t||!D(n)||z(n))&&("fixed"===W(n).position||te(n,t))}function ne(e,t,n){const o=N(t),r=C(t),l="fixed"===n,i=Z(e,!0,l,t);let s={scrollLeft:0,scrollTop:0};const c=f(0);if(o||!o&&!l)if(("body"!==T(t)||I(r))&&(s=M(t)),o){const e=Z(t,!0,l,t);c.x=e.x+t.clientLeft,c.y=e.y+t.clientTop}else r&&(c.x=Q(r));return{x:i.left+s.scrollLeft-c.x,y:i.top+s.scrollTop-c.y,width:i.width,height:i.height}}function oe(e){return"static"===W(e).position}function re(e,t){return N(e)&&"fixed"!==W(e).position?t?t(e):e.offsetParent:null}function le(e,t){const n=L(e);if($(e))return n;if(!N(e)){let t=V(e);for(;t&&!z(t);){if(D(t)&&!oe(t))return t;t=V(t)}return n}let o=re(e,t);for(;o&&B(o)&&oe(o);)o=re(o,t);return o&&z(o)&&oe(o)&&!F(o)?n:o||function(e){let t=V(e);for(;N(t)&&!z(t);){if(F(t))return t;if($(t))return null;t=V(t)}return null}(e)||n}const ie={convertOffsetParentRelativeRectToViewportRelativeRect:function(e){let{elements:t,rect:n,offsetParent:o,strategy:r}=e;const l="fixed"===r,i=C(o),s=!!t&&$(t.floating);if(o===i||s&&l)return n;let c={scrollLeft:0,scrollTop:0},a=f(1);const u=f(0),d=N(o);if((d||!d&&!l)&&(("body"!==T(o)||I(i))&&(c=M(o)),N(o))){const e=Z(o);a=Y(o),u.x=e.x+o.clientLeft,u.y=e.y+o.clientTop}return{width:n.width*a.x,height:n.height*a.y,x:n.x*a.x-c.scrollLeft*a.x+u.x,y:n.y*a.y-c.scrollTop*a.y+u.y}},getDocumentElement:C,getClippingRect:function(e){let{element:t,boundary:n,rootBoundary:o,strategy:r}=e;const l=[..."clippingAncestors"===n?$(t)?[]:function(e,t){const n=t.get(e);if(n)return n;let o=K(e,[],!1).filter((e=>D(e)&&"body"!==T(e))),r=null;const l="fixed"===W(e).position;let i=l?V(e):e;for(;D(i)&&!z(i);){const t=W(i),n=F(i);n||"fixed"!==t.position||(r=null),(l?!n&&!r:!n&&"static"===t.position&&r&&["absolute","fixed"].includes(r.position)||I(i)&&!n&&te(e,i))?o=o.filter((e=>e!==i)):r=t,i=V(i)}return t.set(e,o),o}(t,this._c):[].concat(n),o],i=l[0],s=l.reduce(((e,n)=>{const o=ee(t,n,r);return e.top=a(o.top,e.top),e.right=c(o.right,e.right),e.bottom=c(o.bottom,e.bottom),e.left=a(o.left,e.left),e}),ee(t,i,r));return{width:s.right-s.left,height:s.bottom-s.top,x:s.left,y:s.top}},getOffsetParent:le,getElementRects:async function(e){const t=this.getOffsetParent||le,n=this.getDimensions,o=await n(e.floating);return{reference:ne(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:o.width,height:o.height}}},getClientRects:function(e){return Array.from(e.getClientRects())},getDimensions:function(e){const{width:t,height:n}=X(e);return{width:t,height:n}},getScale:Y,isElement:D,isRTL:function(e){return"rtl"===W(e).direction}};const se=function(e){return void 0===e&&(e=0),{name:"offset",options:e,async fn(t){var n,o;const{x:r,y:l,placement:i,middlewareData:s}=t,c=await async function(e,t){const{placement:n,platform:o,elements:r}=e,l=await(null==o.isRTL?void 0:o.isRTL(r.floating)),i=y(n),s=g(n),c="y"===x(n),a=["left","top"].includes(i)?-1:1,u=l&&c?-1:1,d=h(t,e);let{mainAxis:f,crossAxis:p,alignmentAxis:m}="number"==typeof d?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:0,crossAxis:0,alignmentAxis:null,...d};return s&&"number"==typeof m&&(p="end"===s?-1*m:m),c?{x:p*u,y:f*a}:{x:f*a,y:p*u}}(t,e);return i===(null==(n=s.offset)?void 0:n.placement)&&null!=(o=s.arrow)&&o.alignmentOffset?{}:{x:r+c.x,y:l+c.y,data:{...c,placement:i}}}}},ce=function(e){return void 0===e&&(e={}),{name:"shift",options:e,async fn(t){const{x:n,y:o,placement:r}=t,{mainAxis:l=!0,crossAxis:i=!1,limiter:s={fn:e=>{let{x:t,y:n}=e;return{x:t,y:n}}},...c}=h(e,t),a={x:n,y:o},u=await R(t,c),d=x(y(r)),f=w(d);let p=a[f],m=a[d];if(l){const e="y"===f?"bottom":"right";p=v(p+u["y"===f?"top":"left"],p,p-u[e])}if(i){const e="y"===d?"bottom":"right";m=v(m+u["y"===d?"top":"left"],m,m-u[e])}const g=s.fn({...t,[f]:p,[d]:m});return{...g,data:{x:g.x-n,y:g.y-o}}}}},ae=function(e){return void 0===e&&(e={}),{name:"flip",options:e,async fn(t){var n,o;const{placement:r,middlewareData:l,rects:i,initialPlacement:s,platform:c,elements:a}=t,{mainAxis:u=!0,crossAxis:d=!0,fallbackPlacements:f,fallbackStrategy:p="bestFit",fallbackAxisSideDirection:m="none",flipAlignment:v=!0,...w}=h(e,t);if(null!=(n=l.arrow)&&n.alignmentOffset)return{};const k=y(r),A=x(s),O=y(s)===s,T=await(null==c.isRTL?void 0:c.isRTL(a.floating)),L=f||(O||!v?[S(s)]:function(e){const t=S(e);return[E(e),t,E(t)]}(s)),C="none"!==m;!f&&C&&L.push(...function(e,t,n,o){const r=g(e);let l=function(e,t,n){const o=["left","right"],r=["right","left"],l=["top","bottom"],i=["bottom","top"];switch(e){case"top":case"bottom":return n?t?r:o:t?o:r;case"left":case"right":return t?l:i;default:return[]}}(y(e),"start"===n,o);return r&&(l=l.map((e=>e+"-"+r)),t&&(l=l.concat(l.map(E)))),l}(s,v,m,T));const j=[s,...L],D=await R(t,w),N=[];let P=(null==(o=l.flip)?void 0:o.overflows)||[];if(u&&N.push(D[k]),d){const e=function(e,t,n){void 0===n&&(n=!1);const o=g(e),r=_(e),l=b(r);let i="x"===r?o===(n?"end":"start")?"right":"left":"start"===o?"bottom":"top";return t.reference[l]>t.floating[l]&&(i=S(i)),[i,S(i)]}(r,i,T);N.push(D[e[0]],D[e[1]])}if(P=[...P,{placement:r,overflows:N}],!N.every((e=>e<=0))){var I,B;const e=((null==(I=l.flip)?void 0:I.index)||0)+1,t=j[e];if(t)return{data:{index:e,overflows:P},reset:{placement:t}};let n=null==(B=P.filter((e=>e.overflows[0]<=0)).sort(((e,t)=>e.overflows[1]-t.overflows[1]))[0])?void 0:B.placement;if(!n)switch(p){case"bestFit":{var $;const e=null==($=P.filter((e=>{if(C){const t=x(e.placement);return t===A||"y"===t}return!0})).map((e=>[e.placement,e.overflows.filter((e=>e>0)).reduce(((e,t)=>e+t),0)])).sort(((e,t)=>e[1]-t[1]))[0])?void 0:$[0];e&&(n=e);break}case"initialPlacement":n=s}if(r!==n)return{reset:{placement:n}}}return{}}}},ue=(e,t,n)=>{const o=new Map,r={platform:ie,...n},l={...r.platform,_c:o};return(async(e,t,n)=>{const{placement:o="bottom",strategy:r="absolute",middleware:l=[],platform:i}=n,s=l.filter(Boolean),c=await(null==i.isRTL?void 0:i.isRTL(t));let a=await i.getElementRects({reference:e,floating:t,strategy:r}),{x:u,y:d}=O(a,o,c),f=o,p={},m=0;for(let n=0;n{if(!e)return{tooltipStyles:{},tooltipArrowStyles:{},place:o};if(null===t)return{tooltipStyles:{},tooltipArrowStyles:{},place:o};const a=i;return n?(a.push({name:"arrow",options:u={element:n,padding:5},async fn(e){const{x:t,y:n,placement:o,rects:r,platform:l,elements:i,middlewareData:s}=e,{element:a,padding:d=0}=h(u,e)||{};if(null==a)return{};const f=k(d),p={x:t,y:n},m=_(o),y=b(m),w=await l.getDimensions(a),x="y"===m,E=x?"top":"left",S=x?"bottom":"right",A=x?"clientHeight":"clientWidth",O=r.reference[y]+r.reference[m]-p[m]-r.floating[y],R=p[m]-r.reference[m],T=await(null==l.getOffsetParent?void 0:l.getOffsetParent(a));let L=T?T[A]:0;L&&await(null==l.isElement?void 0:l.isElement(T))||(L=i.floating[A]||r.floating[y]);const C=O/2-R/2,j=L/2-w[y]/2-1,D=c(f[E],j),N=c(f[S],j),P=D,I=L-w[y]-N,B=L/2-w[y]/2+C,$=v(P,B,I),F=!s.arrow&&null!=g(o)&&B!==$&&r.reference[y]/2-(B{var r,l;const i={left:`${e}px`,top:`${t}px`,border:s},{x:c,y:a}=null!==(r=o.arrow)&&void 0!==r?r:{x:0,y:0},u=null!==(l={top:"bottom",right:"left",bottom:"top",left:"right"}[n.split("-")[0]])&&void 0!==l?l:"bottom",d=s&&{borderBottom:s,borderRight:s};let f=0;if(s){const e=`${s}`.match(/(\d+)px/);f=(null==e?void 0:e[1])?Number(e[1]):1}return{tooltipStyles:i,tooltipArrowStyles:{left:null!=c?`${c}px`:"",top:null!=a?`${a}px`:"",right:"",bottom:"",...d,[u]:`-${4+f}px`},place:n}}))):ue(e,t,{placement:"bottom",strategy:l,middleware:a}).then((({x:e,y:t,placement:n})=>({tooltipStyles:{left:`${e}px`,top:`${t}px`},tooltipArrowStyles:{},place:n})));var u},ve=(e,t)=>!("CSS"in window&&"supports"in window.CSS)||window.CSS.supports(e,t),he=(e,t,n)=>{let o=null;const r=function(...r){const l=()=>{o=null,n||e.apply(this,r)};n&&!o&&(e.apply(this,r),o=setTimeout(l,t)),n||(o&&clearTimeout(o),o=setTimeout(l,t))};return r.cancel=()=>{o&&(clearTimeout(o),o=null)},r},ye=e=>null!==e&&!Array.isArray(e)&&"object"==typeof e,ge=(e,t)=>{if(e===t)return!0;if(Array.isArray(e)&&Array.isArray(t))return e.length===t.length&&e.every(((e,n)=>ge(e,t[n])));if(Array.isArray(e)!==Array.isArray(t))return!1;if(!ye(e)||!ye(t))return e===t;const n=Object.keys(e),o=Object.keys(t);return n.length===o.length&&n.every((n=>ge(e[n],t[n])))},we=e=>{if(!(e instanceof HTMLElement||e instanceof SVGElement))return!1;const t=getComputedStyle(e);return["overflow","overflow-x","overflow-y"].some((e=>{const n=t.getPropertyValue(e);return"auto"===n||"scroll"===n}))},be=e=>{if(!e)return null;let t=e.parentElement;for(;t;){if(we(t))return t;t=t.parentElement}return document.scrollingElement||document.documentElement},xe="undefined"!=typeof window?s.useLayoutEffect:s.useEffect,_e=e=>{e.current&&(clearTimeout(e.current),e.current=null)},Ee={anchorRefs:new Set,activeAnchor:{current:null},attach:()=>{},detach:()=>{},setActiveAnchor:()=>{}},Se=(0,s.createContext)({getTooltipData:()=>Ee});function ke(e="DEFAULT_TOOLTIP_ID"){return(0,s.useContext)(Se).getTooltipData(e)}var Ae={tooltip:"core-styles-module_tooltip__3vRRp",fixed:"core-styles-module_fixed__pcSol",arrow:"core-styles-module_arrow__cvMwQ",noArrow:"core-styles-module_noArrow__xock6",clickable:"core-styles-module_clickable__ZuTTB",show:"core-styles-module_show__Nt9eE",closing:"core-styles-module_closing__sGnxF"},Oe={tooltip:"styles-module_tooltip__mnnfp",arrow:"styles-module_arrow__K0L3T",dark:"styles-module_dark__xNqje",light:"styles-module_light__Z6W-X",success:"styles-module_success__A2AKt",warning:"styles-module_warning__SCK0X",error:"styles-module_error__JvumD",info:"styles-module_info__BWdHW"};const Re=({forwardRef:e,id:t,className:n,classNameArrow:o,variant:r="dark",anchorId:l,anchorSelect:i,place:u="top",offset:f=10,events:p=["hover"],openOnClick:m=!1,positionStrategy:v="absolute",middlewares:h,wrapper:y,delayShow:g=0,delayHide:w=0,float:b=!1,hidden:x=!1,noArrow:_=!1,clickable:E=!1,closeOnEsc:S=!1,closeOnScroll:k=!1,closeOnResize:A=!1,openEvents:O,closeEvents:R,globalCloseEvents:T,imperativeModeOnly:L,style:j,position:D,afterShow:N,afterHide:P,content:I,contentWrapperRef:B,isOpen:$,defaultIsOpen:F=!1,setIsOpen:H,activeAnchor:z,setActiveAnchor:W,border:M,opacity:V,arrowColor:q,role:X="tooltip"})=>{var Y;const J=(0,s.useRef)(null),U=(0,s.useRef)(null),Q=(0,s.useRef)(null),ee=(0,s.useRef)(null),te=(0,s.useRef)(null),[ne,oe]=(0,s.useState)({tooltipStyles:{},tooltipArrowStyles:{},place:u}),[re,le]=(0,s.useState)(!1),[ie,se]=(0,s.useState)(!1),[ce,ae]=(0,s.useState)(null),ue=(0,s.useRef)(!1),fe=(0,s.useRef)(null),{anchorRefs:pe,setActiveAnchor:ve}=ke(t),ye=(0,s.useRef)(!1),[we,Ee]=(0,s.useState)([]),Se=(0,s.useRef)(!1),Re=m||p.includes("click"),Te=Re||(null==O?void 0:O.click)||(null==O?void 0:O.dblclick)||(null==O?void 0:O.mousedown),Le=O?{...O}:{mouseover:!0,focus:!0,mouseenter:!1,click:!1,dblclick:!1,mousedown:!1};!O&&Re&&Object.assign(Le,{mouseenter:!1,focus:!1,mouseover:!1,click:!0});const Ce=R?{...R}:{mouseout:!0,blur:!0,mouseleave:!1,click:!1,dblclick:!1,mouseup:!1};!R&&Re&&Object.assign(Ce,{mouseleave:!1,blur:!1,mouseout:!1});const je=T?{...T}:{escape:S||!1,scroll:k||!1,resize:A||!1,clickOutsideAnchor:Te||!1};L&&(Object.assign(Le,{mouseenter:!1,focus:!1,click:!1,dblclick:!1,mousedown:!1}),Object.assign(Ce,{mouseleave:!1,blur:!1,click:!1,dblclick:!1,mouseup:!1}),Object.assign(je,{escape:!1,scroll:!1,resize:!1,clickOutsideAnchor:!1})),xe((()=>(Se.current=!0,()=>{Se.current=!1})),[]);const De=e=>{Se.current&&(e&&se(!0),setTimeout((()=>{Se.current&&(null==H||H(e),void 0===$&&le(e))}),10))};(0,s.useEffect)((()=>{if(void 0===$)return()=>null;$&&se(!0);const e=setTimeout((()=>{le($)}),10);return()=>{clearTimeout(e)}}),[$]),(0,s.useEffect)((()=>{if(re!==ue.current)if(_e(te),ue.current=re,re)null==N||N();else{const e=(()=>{const e=getComputedStyle(document.body).getPropertyValue("--rt-transition-show-delay").match(/^([\d.]+)(ms|s)$/);if(!e)return 0;const[,t,n]=e;return Number(t)*("ms"===n?1:1e3)})();te.current=setTimeout((()=>{se(!1),ae(null),null==P||P()}),e+25)}}),[re]);const Ne=e=>{oe((t=>ge(t,e)?t:e))},Pe=(e=g)=>{_e(Q),ie?De(!0):Q.current=setTimeout((()=>{De(!0)}),e)},Ie=(e=w)=>{_e(ee),ee.current=setTimeout((()=>{ye.current||De(!1)}),e)},Be=e=>{var t;if(!e)return;const n=null!==(t=e.currentTarget)&&void 0!==t?t:e.target;if(!(null==n?void 0:n.isConnected))return W(null),void ve({current:null});g?Pe():De(!0),W(n),ve({current:n}),_e(ee)},$e=()=>{E?Ie(w||100):w?Ie():De(!1),_e(Q)},Fe=({x:e,y:t})=>{var n;const o={getBoundingClientRect:()=>({x:e,y:t,width:0,height:0,top:t,left:e,right:e,bottom:t})};me({place:null!==(n=null==ce?void 0:ce.place)&&void 0!==n?n:u,offset:f,elementReference:o,tooltipReference:J.current,tooltipArrowReference:U.current,strategy:v,middlewares:h,border:M}).then((e=>{Ne(e)}))},He=e=>{if(!e)return;const t=e,n={x:t.clientX,y:t.clientY};Fe(n),fe.current=n},ze=e=>{var t;if(!re)return;const n=e.target;n.isConnected&&((null===(t=J.current)||void 0===t?void 0:t.contains(n))||[document.querySelector(`[id='${l}']`),...we].some((e=>null==e?void 0:e.contains(n)))||(De(!1),_e(Q)))},We=he(Be,50,!0),Me=he($e,50,!0),Ve=e=>{Me.cancel(),We(e)},qe=()=>{We.cancel(),Me()},Ke=(0,s.useCallback)((()=>{var e,t;const n=null!==(e=null==ce?void 0:ce.position)&&void 0!==e?e:D;n?Fe(n):b?fe.current&&Fe(fe.current):(null==z?void 0:z.isConnected)&&me({place:null!==(t=null==ce?void 0:ce.place)&&void 0!==t?t:u,offset:f,elementReference:z,tooltipReference:J.current,tooltipArrowReference:U.current,strategy:v,middlewares:h,border:M}).then((e=>{Se.current&&Ne(e)}))}),[re,z,I,j,u,null==ce?void 0:ce.place,f,v,D,null==ce?void 0:ce.position,b]);(0,s.useEffect)((()=>{var e,t;const n=new Set(pe);we.forEach((e=>{n.add({current:e})}));const o=document.querySelector(`[id='${l}']`);o&&n.add({current:o});const r=()=>{De(!1)},i=be(z),s=be(J.current);je.scroll&&(window.addEventListener("scroll",r),null==i||i.addEventListener("scroll",r),null==s||s.addEventListener("scroll",r));let u=null;je.resize?window.addEventListener("resize",r):z&&J.current&&(u=function(e,t,n,o){void 0===o&&(o={});const{ancestorScroll:r=!0,ancestorResize:l=!0,elementResize:i="function"==typeof ResizeObserver,layoutShift:s="function"==typeof IntersectionObserver,animationFrame:u=!1}=o,f=G(e),p=r||l?[...f?K(f):[],...K(t)]:[];p.forEach((e=>{r&&e.addEventListener("scroll",n,{passive:!0}),l&&e.addEventListener("resize",n)}));const m=f&&s?function(e,t){let n,o=null;const r=C(e);function l(){var e;clearTimeout(n),null==(e=o)||e.disconnect(),o=null}return function i(s,u){void 0===s&&(s=!1),void 0===u&&(u=1),l();const{left:f,top:p,width:m,height:v}=e.getBoundingClientRect();if(s||t(),!m||!v)return;const h={rootMargin:-d(p)+"px "+-d(r.clientWidth-(f+m))+"px "+-d(r.clientHeight-(p+v))+"px "+-d(f)+"px",threshold:a(0,c(1,u))||1};let y=!0;function g(e){const t=e[0].intersectionRatio;if(t!==u){if(!y)return i();t?i(!1,t):n=setTimeout((()=>{i(!1,1e-7)}),1e3)}y=!1}try{o=new IntersectionObserver(g,{...h,root:r.ownerDocument})}catch(e){o=new IntersectionObserver(g,h)}o.observe(e)}(!0),l}(f,n):null;let v,h=-1,y=null;i&&(y=new ResizeObserver((e=>{let[o]=e;o&&o.target===f&&y&&(y.unobserve(t),cancelAnimationFrame(h),h=requestAnimationFrame((()=>{var e;null==(e=y)||e.observe(t)}))),n()})),f&&!u&&y.observe(f),y.observe(t));let g=u?Z(e):null;return u&&function t(){const o=Z(e);!g||o.x===g.x&&o.y===g.y&&o.width===g.width&&o.height===g.height||n(),g=o,v=requestAnimationFrame(t)}(),n(),()=>{var e;p.forEach((e=>{r&&e.removeEventListener("scroll",n),l&&e.removeEventListener("resize",n)})),null==m||m(),null==(e=y)||e.disconnect(),y=null,u&&cancelAnimationFrame(v)}}(z,J.current,Ke,{ancestorResize:!0,elementResize:!0,layoutShift:!0}));const f=e=>{"Escape"===e.key&&De(!1)};je.escape&&window.addEventListener("keydown",f),je.clickOutsideAnchor&&window.addEventListener("click",ze);const p=[],m=e=>{re&&(null==e?void 0:e.target)===z||Be(e)},v=e=>{re&&(null==e?void 0:e.target)===z&&$e()},h=["mouseover","mouseout","mouseenter","mouseleave","focus","blur"],y=["click","dblclick","mousedown","mouseup"];Object.entries(Le).forEach((([e,t])=>{t&&(h.includes(e)?p.push({event:e,listener:Ve}):y.includes(e)&&p.push({event:e,listener:m}))})),Object.entries(Ce).forEach((([e,t])=>{t&&(h.includes(e)?p.push({event:e,listener:qe}):y.includes(e)&&p.push({event:e,listener:v}))})),b&&p.push({event:"pointermove",listener:He});const g=()=>{ye.current=!0},w=()=>{ye.current=!1,$e()};return E&&!Te&&(null===(e=J.current)||void 0===e||e.addEventListener("mouseenter",g),null===(t=J.current)||void 0===t||t.addEventListener("mouseleave",w)),p.forEach((({event:e,listener:t})=>{n.forEach((n=>{var o;null===(o=n.current)||void 0===o||o.addEventListener(e,t)}))})),()=>{var e,t;je.scroll&&(window.removeEventListener("scroll",r),null==i||i.removeEventListener("scroll",r),null==s||s.removeEventListener("scroll",r)),je.resize?window.removeEventListener("resize",r):null==u||u(),je.clickOutsideAnchor&&window.removeEventListener("click",ze),je.escape&&window.removeEventListener("keydown",f),E&&!Te&&(null===(e=J.current)||void 0===e||e.removeEventListener("mouseenter",g),null===(t=J.current)||void 0===t||t.removeEventListener("mouseleave",w)),p.forEach((({event:e,listener:t})=>{n.forEach((n=>{var o;null===(o=n.current)||void 0===o||o.removeEventListener(e,t)}))}))}}),[z,Ke,ie,pe,we,O,R,T,Re,g,w]),(0,s.useEffect)((()=>{var e,n;let o=null!==(n=null!==(e=null==ce?void 0:ce.anchorSelect)&&void 0!==e?e:i)&&void 0!==n?n:"";!o&&t&&(o=`[data-tooltip-id='${t.replace(/'/g,"\\'")}']`);const r=new MutationObserver((e=>{const n=[],r=[];e.forEach((e=>{if("attributes"===e.type&&"data-tooltip-id"===e.attributeName&&(e.target.getAttribute("data-tooltip-id")===t?n.push(e.target):e.oldValue===t&&r.push(e.target)),"childList"===e.type){if(z){const t=[...e.removedNodes].filter((e=>1===e.nodeType));if(o)try{r.push(...t.filter((e=>e.matches(o)))),r.push(...t.flatMap((e=>[...e.querySelectorAll(o)])))}catch(e){}t.some((e=>{var t;return!!(null===(t=null==e?void 0:e.contains)||void 0===t?void 0:t.call(e,z))&&(se(!1),De(!1),W(null),_e(Q),_e(ee),!0)}))}if(o)try{const t=[...e.addedNodes].filter((e=>1===e.nodeType));n.push(...t.filter((e=>e.matches(o)))),n.push(...t.flatMap((e=>[...e.querySelectorAll(o)])))}catch(e){}}})),(n.length||r.length)&&Ee((e=>[...e.filter((e=>!r.includes(e))),...n]))}));return r.observe(document.body,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["data-tooltip-id"],attributeOldValue:!0}),()=>{r.disconnect()}}),[t,i,null==ce?void 0:ce.anchorSelect,z]),(0,s.useEffect)((()=>{Ke()}),[Ke]),(0,s.useEffect)((()=>{if(!(null==B?void 0:B.current))return()=>null;const e=new ResizeObserver((()=>{setTimeout((()=>Ke()))}));return e.observe(B.current),()=>{e.disconnect()}}),[I,null==B?void 0:B.current]),(0,s.useEffect)((()=>{var e;const t=document.querySelector(`[id='${l}']`),n=[...we,t];z&&n.includes(z)||W(null!==(e=we[0])&&void 0!==e?e:t)}),[l,we,z]),(0,s.useEffect)((()=>(F&&De(!0),()=>{_e(Q),_e(ee)})),[]),(0,s.useEffect)((()=>{var e;let n=null!==(e=null==ce?void 0:ce.anchorSelect)&&void 0!==e?e:i;if(!n&&t&&(n=`[data-tooltip-id='${t.replace(/'/g,"\\'")}']`),n)try{const e=Array.from(document.querySelectorAll(n));Ee(e)}catch(e){Ee([])}}),[t,i,null==ce?void 0:ce.anchorSelect]),(0,s.useEffect)((()=>{Q.current&&(_e(Q),Pe(g))}),[g]);const Xe=null!==(Y=null==ce?void 0:ce.content)&&void 0!==Y?Y:I,Ge=re&&Object.keys(ne.tooltipStyles).length>0;return(0,s.useImperativeHandle)(e,(()=>({open:e=>{if(null==e?void 0:e.anchorSelect)try{document.querySelector(e.anchorSelect)}catch(t){return void console.warn(`[react-tooltip] "${e.anchorSelect}" is not a valid CSS selector`)}ae(null!=e?e:null),(null==e?void 0:e.delay)?Pe(e.delay):De(!0)},close:e=>{(null==e?void 0:e.delay)?Ie(e.delay):De(!1)},activeAnchor:z,place:ne.place,isOpen:Boolean(ie&&!x&&Xe&&Ge)}))),ie&&!x&&Xe?s.createElement(y,{id:t,role:X,className:de("react-tooltip",Ae.tooltip,Oe.tooltip,Oe[r],n,`react-tooltip__place-${ne.place}`,Ae[Ge?"show":"closing"],Ge?"react-tooltip__show":"react-tooltip__closing","fixed"===v&&Ae.fixed,E&&Ae.clickable),onTransitionEnd:e=>{_e(te),re||"opacity"!==e.propertyName||(se(!1),ae(null),null==P||P())},style:{...j,...ne.tooltipStyles,opacity:void 0!==V&&Ge?V:void 0},ref:J},Xe,s.createElement(y,{className:de("react-tooltip-arrow",Ae.arrow,Oe.arrow,o,_&&Ae.noArrow),style:{...ne.tooltipArrowStyles,background:q?`linear-gradient(to right bottom, transparent 50%, ${q} 50%)`:void 0},ref:U})):null},Te=({content:e})=>s.createElement("span",{dangerouslySetInnerHTML:{__html:e}}),Le=s.forwardRef((({id:e,anchorId:t,anchorSelect:n,content:o,html:r,render:l,className:i,classNameArrow:c,variant:a="dark",place:u="top",offset:d=10,wrapper:f="div",children:p=null,events:m=["hover"],openOnClick:v=!1,positionStrategy:h="absolute",middlewares:y,delayShow:g=0,delayHide:w=0,float:b=!1,hidden:x=!1,noArrow:_=!1,clickable:E=!1,closeOnEsc:S=!1,closeOnScroll:k=!1,closeOnResize:A=!1,openEvents:O,closeEvents:R,globalCloseEvents:T,imperativeModeOnly:L=!1,style:C,position:j,isOpen:D,defaultIsOpen:N=!1,disableStyleInjection:P=!1,border:I,opacity:B,arrowColor:$,setIsOpen:F,afterShow:H,afterHide:z,role:W="tooltip"},M)=>{const[V,q]=(0,s.useState)(o),[K,X]=(0,s.useState)(r),[G,Y]=(0,s.useState)(u),[J,U]=(0,s.useState)(a),[Z,Q]=(0,s.useState)(d),[ee,te]=(0,s.useState)(g),[ne,oe]=(0,s.useState)(w),[re,le]=(0,s.useState)(b),[ie,se]=(0,s.useState)(x),[ce,ae]=(0,s.useState)(f),[ue,fe]=(0,s.useState)(m),[pe,me]=(0,s.useState)(h),[he,ye]=(0,s.useState)(null),[ge,we]=(0,s.useState)(null),be=(0,s.useRef)(P),{anchorRefs:xe,activeAnchor:_e}=ke(e),Ee=e=>null==e?void 0:e.getAttributeNames().reduce(((t,n)=>{var o;return n.startsWith("data-tooltip-")&&(t[n.replace(/^data-tooltip-/,"")]=null!==(o=null==e?void 0:e.getAttribute(n))&&void 0!==o?o:null),t}),{}),Se=e=>{const t={place:e=>{var t;Y(null!==(t=e)&&void 0!==t?t:u)},content:e=>{q(null!=e?e:o)},html:e=>{X(null!=e?e:r)},variant:e=>{var t;U(null!==(t=e)&&void 0!==t?t:a)},offset:e=>{Q(null===e?d:Number(e))},wrapper:e=>{var t;ae(null!==(t=e)&&void 0!==t?t:f)},events:e=>{const t=null==e?void 0:e.split(" ");fe(null!=t?t:m)},"position-strategy":e=>{var t;me(null!==(t=e)&&void 0!==t?t:h)},"delay-show":e=>{te(null===e?g:Number(e))},"delay-hide":e=>{oe(null===e?w:Number(e))},float:e=>{le(null===e?b:"true"===e)},hidden:e=>{se(null===e?x:"true"===e)},"class-name":e=>{ye(e)}};Object.values(t).forEach((e=>e(null))),Object.entries(e).forEach((([e,n])=>{var o;null===(o=t[e])||void 0===o||o.call(t,n)}))};(0,s.useEffect)((()=>{q(o)}),[o]),(0,s.useEffect)((()=>{X(r)}),[r]),(0,s.useEffect)((()=>{Y(u)}),[u]),(0,s.useEffect)((()=>{U(a)}),[a]),(0,s.useEffect)((()=>{Q(d)}),[d]),(0,s.useEffect)((()=>{te(g)}),[g]),(0,s.useEffect)((()=>{oe(w)}),[w]),(0,s.useEffect)((()=>{le(b)}),[b]),(0,s.useEffect)((()=>{se(x)}),[x]),(0,s.useEffect)((()=>{me(h)}),[h]),(0,s.useEffect)((()=>{be.current!==P&&console.warn("[react-tooltip] Do not change `disableStyleInjection` dynamically.")}),[P]),(0,s.useEffect)((()=>{"undefined"!=typeof window&&window.dispatchEvent(new CustomEvent("react-tooltip-inject-styles",{detail:{disableCore:"core"===P,disableBase:P}}))}),[]),(0,s.useEffect)((()=>{var o;const r=new Set(xe);let l=n;if(!l&&e&&(l=`[data-tooltip-id='${e.replace(/'/g,"\\'")}']`),l)try{document.querySelectorAll(l).forEach((e=>{r.add({current:e})}))}catch(o){console.warn(`[react-tooltip] "${l}" is not a valid CSS selector`)}const i=document.querySelector(`[id='${t}']`);if(i&&r.add({current:i}),!r.size)return()=>null;const s=null!==(o=null!=ge?ge:i)&&void 0!==o?o:_e.current,c=new MutationObserver((e=>{e.forEach((e=>{var t;if(!s||"attributes"!==e.type||!(null===(t=e.attributeName)||void 0===t?void 0:t.startsWith("data-tooltip-")))return;const n=Ee(s);Se(n)}))})),a={attributes:!0,childList:!1,subtree:!1};if(s){const e=Ee(s);Se(e),c.observe(s,a)}return()=>{c.disconnect()}}),[xe,_e,ge,t,n]),(0,s.useEffect)((()=>{(null==C?void 0:C.border)&&console.warn("[react-tooltip] Do not set `style.border`. Use `border` prop instead."),I&&!ve("border",`${I}`)&&console.warn(`[react-tooltip] "${I}" is not a valid \`border\`.`),(null==C?void 0:C.opacity)&&console.warn("[react-tooltip] Do not set `style.opacity`. Use `opacity` prop instead."),B&&!ve("opacity",`${B}`)&&console.warn(`[react-tooltip] "${B}" is not a valid \`opacity\`.`)}),[]);let Ae=p;const Oe=(0,s.useRef)(null);if(l){const e=l({content:(null==ge?void 0:ge.getAttribute("data-tooltip-content"))||V||null,activeAnchor:ge});Ae=e?s.createElement("div",{ref:Oe,className:"react-tooltip-content-wrapper"},e):null}else V&&(Ae=V);K&&(Ae=s.createElement(Te,{content:K}));const Le={forwardRef:M,id:e,anchorId:t,anchorSelect:n,className:de(i,he),classNameArrow:c,content:Ae,contentWrapperRef:Oe,place:G,variant:J,offset:Z,wrapper:ce,events:ue,openOnClick:v,positionStrategy:pe,middlewares:y,delayShow:ee,delayHide:ne,float:re,hidden:ie,noArrow:_,clickable:E,closeOnEsc:S,closeOnScroll:k,closeOnResize:A,openEvents:O,closeEvents:R,globalCloseEvents:T,imperativeModeOnly:L,style:C,position:j,isOpen:D,defaultIsOpen:N,border:I,opacity:B,arrowColor:$,setIsOpen:F,afterShow:H,afterHide:z,activeAnchor:ge,setActiveAnchor:e=>we(e),role:W};return s.createElement(Re,{...Le})}));"undefined"!=typeof window&&window.addEventListener("react-tooltip-inject-styles",(e=>{e.detail.disableCore||pe({css:":root{--rt-color-white:#fff;--rt-color-dark:#222;--rt-color-success:#8dc572;--rt-color-error:#be6464;--rt-color-warning:#f0ad4e;--rt-color-info:#337ab7;--rt-opacity:0.9;--rt-transition-show-delay:0.15s;--rt-transition-closing-delay:0.15s}.core-styles-module_tooltip__3vRRp{position:absolute;top:0;left:0;pointer-events:none;opacity:0;will-change:opacity}.core-styles-module_fixed__pcSol{position:fixed}.core-styles-module_arrow__cvMwQ{position:absolute;background:inherit}.core-styles-module_noArrow__xock6{display:none}.core-styles-module_clickable__ZuTTB{pointer-events:auto}.core-styles-module_show__Nt9eE{opacity:var(--rt-opacity);transition:opacity var(--rt-transition-show-delay)ease-out}.core-styles-module_closing__sGnxF{opacity:0;transition:opacity var(--rt-transition-closing-delay)ease-in}",type:"core"}),e.detail.disableBase||pe({css:"\n.styles-module_tooltip__mnnfp{padding:8px 16px;border-radius:3px;font-size:90%;width:max-content}.styles-module_arrow__K0L3T{width:8px;height:8px}[class*='react-tooltip__place-top']>.styles-module_arrow__K0L3T{transform:rotate(45deg)}[class*='react-tooltip__place-right']>.styles-module_arrow__K0L3T{transform:rotate(135deg)}[class*='react-tooltip__place-bottom']>.styles-module_arrow__K0L3T{transform:rotate(225deg)}[class*='react-tooltip__place-left']>.styles-module_arrow__K0L3T{transform:rotate(315deg)}.styles-module_dark__xNqje{background:var(--rt-color-dark);color:var(--rt-color-white)}.styles-module_light__Z6W-X{background-color:var(--rt-color-white);color:var(--rt-color-dark)}.styles-module_success__A2AKt{background-color:var(--rt-color-success);color:var(--rt-color-white)}.styles-module_warning__SCK0X{background-color:var(--rt-color-warning);color:var(--rt-color-white)}.styles-module_error__JvumD{background-color:var(--rt-color-error);color:var(--rt-color-white)}.styles-module_info__BWdHW{background-color:var(--rt-color-info);color:var(--rt-color-white)}",type:"base"})}));const Ce=window.wp.i18n,je=window.wp.element,De=(e,t="")=>{for(const[n,o]of Object.entries(e)){let e=n;t&&(e+="_"+String(t)),addEventListener(e,(e=>{o(e.detail)}),!1)}};function Ne(){const e=(0,i.select)("core/editor")?.getCurrentPostType();return"gatherpress_event"===e||"gatherpress_venue"===e}function Pe(e){if("object"==typeof GatherPress)return e.split(".").reduce(((e,t)=>e&&e[t]),GatherPress)}const Ie=window.ReactJSXRuntime,Be=({onlineEventLinkDefault:e=""})=>{const t=(0,Ce.__)("Online event","gatherpress"),[n,o]=(0,je.useState)(e);return De({setOnlineEventLink:o},Pe("eventDetails.postId")),(0,Ie.jsxs)(l.Flex,{justify:"normal",gap:"3",children:[(0,Ie.jsx)(l.FlexItem,{display:"flex",children:(0,Ie.jsx)(l.Icon,{icon:"video-alt2"})}),(0,Ie.jsxs)(l.FlexItem,{children:[!n&&(0,Ie.jsxs)(Ie.Fragment,{children:[(0,Ie.jsx)("span",{tabIndex:"0",className:"gatherpress-tooltip","data-tooltip-id":"gatherpress-online-event-tooltip","data-tooltip-content":(0,Ce.__)("Link available for attendees only.","gatherpress"),children:t}),(0,Ie.jsx)(Le,{id:"gatherpress-online-event-tooltip"})]}),n&&(0,Ie.jsx)("a",{href:n,rel:"noreferrer",target:"_blank",children:t})]})]})},$e=()=>{const{editPost:e,unlockPostSaving:t}=(0,i.useDispatch)("core/editor"),n=(0,i.useSelect)((e=>e("core/editor").getEditedPostAttribute("meta").gatherpress_online_event_link)),[o,r]=(0,je.useState)(n);return De({setOnlineEventLink:r},Pe("eventDetails.postId")),(0,Ie.jsx)(l.TextControl,{label:(0,Ce.__)("Online event link","gatherpress"),value:o,placeholder:(0,Ce.__)("Add link to online event","gatherpress"),onChange:n=>{(n=>{e({meta:{gatherpress_online_event_link:n}}),r(n),((e,t="")=>{for(const[n,o]of Object.entries(e)){let e=n;t&&(e+="_"+String(t));const r=new CustomEvent(e,{detail:o});dispatchEvent(r)}})({setOnlineEventLink:n},Pe("eventDetails.postId")),t()})(n)}})},Fe=e=>{const{isSelected:t}=e,n=t?"none":"block";return(0,Ie.jsxs)("div",{style:{position:"relative"},children:[e.children,(0,Ie.jsx)("div",{style:{position:"absolute",top:"0",right:"0",bottom:"0",left:"0",display:n}})]})},He=JSON.parse('{"$schema":"https://schemas.wp.org/trunk/block.json","apiVersion":2,"name":"gatherpress/online-event","version":"1.0.1","title":"Online Event","category":"gatherpress","icon":"video-alt2","example":{},"description":"Utilized for virtual events, offering the capability to share a direct link to an event.","attributes":{"blockId":{"type":"string"}},"supports":{"html":false},"textdomain":"gatherpress","editorScript":"file:./index.js","style":"file:./style-index.css","viewScript":"file:./online-event.js","render":"file:./render.php"}');(0,o.registerBlockType)(He,{edit:({isSelected:e})=>{const t=(0,r.useBlockProps)(),n=(0,i.useSelect)((e=>e("core/editor")?.getEditedPostAttribute("meta")?.gatherpress_online_event_link));return(0,Ie.jsxs)(Ie.Fragment,{children:[Ne()&&(0,Ie.jsx)(r.InspectorControls,{children:(0,Ie.jsx)(l.PanelBody,{children:(0,Ie.jsx)(l.PanelRow,{children:(0,Ie.jsx)($e,{})})})}),(0,Ie.jsx)("div",{...t,children:(0,Ie.jsx)(Fe,{isSelected:e,children:(0,Ie.jsx)(Be,{onlineEventLinkDefault:n})})})]})},save:()=>null})},6942:(e,t)=>{var n;!function(){"use strict";var o={}.hasOwnProperty;function r(){for(var e="",t=0;t{if(!n){var i=1/0;for(u=0;u=l)&&Object.keys(o.O).every((e=>o.O[e](n[c])))?n.splice(c--,1):(s=!1,l0&&e[u-1][2]>l;u--)e[u]=e[u-1];e[u]=[n,r,l]},o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{var e={495:0,791:0};o.O.j=t=>0===e[t];var t=(t,n)=>{var r,l,[i,s,c]=n,a=0;if(i.some((t=>0!==e[t]))){for(r in s)o.o(s,r)&&(o.m[r]=s[r]);if(c)var u=c(o)}for(t&&t(n);ao(7520)));r=o.O(r)})(); \ No newline at end of file +(()=>{var e,t={7520:(e,t,n)=>{"use strict";const o=window.wp.blocks,r=window.wp.blockEditor,l=window.wp.components,i=window.wp.data,s=window.React,c=Math.min,a=Math.max,u=Math.round,d=Math.floor,f=e=>({x:e,y:e}),p={left:"right",right:"left",bottom:"top",top:"bottom"},m={start:"end",end:"start"};function v(e,t,n){return a(e,c(t,n))}function h(e,t){return"function"==typeof e?e(t):e}function y(e){return e.split("-")[0]}function g(e){return e.split("-")[1]}function w(e){return"x"===e?"y":"x"}function b(e){return"y"===e?"height":"width"}function x(e){return["top","bottom"].includes(y(e))?"y":"x"}function _(e){return w(x(e))}function E(e){return e.replace(/start|end/g,(e=>m[e]))}function S(e){return e.replace(/left|right|bottom|top/g,(e=>p[e]))}function k(e){return"number"!=typeof e?function(e){return{top:0,right:0,bottom:0,left:0,...e}}(e):{top:e,right:e,bottom:e,left:e}}function A(e){const{x:t,y:n,width:o,height:r}=e;return{width:o,height:r,top:n,left:t,right:t+o,bottom:n+r,x:t,y:n}}function O(e,t,n){let{reference:o,floating:r}=e;const l=x(t),i=_(t),s=b(i),c=y(t),a="y"===l,u=o.x+o.width/2-r.width/2,d=o.y+o.height/2-r.height/2,f=o[s]/2-r[s]/2;let p;switch(c){case"top":p={x:u,y:o.y-r.height};break;case"bottom":p={x:u,y:o.y+o.height};break;case"right":p={x:o.x+o.width,y:d};break;case"left":p={x:o.x-r.width,y:d};break;default:p={x:o.x,y:o.y}}switch(g(t)){case"start":p[i]-=f*(n&&a?-1:1);break;case"end":p[i]+=f*(n&&a?-1:1)}return p}async function R(e,t){var n;void 0===t&&(t={});const{x:o,y:r,platform:l,rects:i,elements:s,strategy:c}=e,{boundary:a="clippingAncestors",rootBoundary:u="viewport",elementContext:d="floating",altBoundary:f=!1,padding:p=0}=h(t,e),m=k(p),v=s[f?"floating"===d?"reference":"floating":d],y=A(await l.getClippingRect({element:null==(n=await(null==l.isElement?void 0:l.isElement(v)))||n?v:v.contextElement||await(null==l.getDocumentElement?void 0:l.getDocumentElement(s.floating)),boundary:a,rootBoundary:u,strategy:c})),g="floating"===d?{x:o,y:r,width:i.floating.width,height:i.floating.height}:i.reference,w=await(null==l.getOffsetParent?void 0:l.getOffsetParent(s.floating)),b=await(null==l.isElement?void 0:l.isElement(w))&&await(null==l.getScale?void 0:l.getScale(w))||{x:1,y:1},x=A(l.convertOffsetParentRelativeRectToViewportRelativeRect?await l.convertOffsetParentRelativeRectToViewportRelativeRect({elements:s,rect:g,offsetParent:w,strategy:c}):g);return{top:(y.top-x.top+m.top)/b.y,bottom:(x.bottom-y.bottom+m.bottom)/b.y,left:(y.left-x.left+m.left)/b.x,right:(x.right-y.right+m.right)/b.x}}function T(e){return j(e)?(e.nodeName||"").toLowerCase():"#document"}function L(e){var t;return(null==e||null==(t=e.ownerDocument)?void 0:t.defaultView)||window}function C(e){var t;return null==(t=(j(e)?e.ownerDocument:e.document)||window.document)?void 0:t.documentElement}function j(e){return e instanceof Node||e instanceof L(e).Node}function D(e){return e instanceof Element||e instanceof L(e).Element}function N(e){return e instanceof HTMLElement||e instanceof L(e).HTMLElement}function P(e){return"undefined"!=typeof ShadowRoot&&(e instanceof ShadowRoot||e instanceof L(e).ShadowRoot)}function I(e){const{overflow:t,overflowX:n,overflowY:o,display:r}=W(e);return/auto|scroll|overlay|hidden|clip/.test(t+o+n)&&!["inline","contents"].includes(r)}function B(e){return["table","td","th"].includes(T(e))}function $(e){return[":popover-open",":modal"].some((t=>{try{return e.matches(t)}catch(e){return!1}}))}function F(e){const t=H(),n=D(e)?W(e):e;return"none"!==n.transform||"none"!==n.perspective||!!n.containerType&&"normal"!==n.containerType||!t&&!!n.backdropFilter&&"none"!==n.backdropFilter||!t&&!!n.filter&&"none"!==n.filter||["transform","perspective","filter"].some((e=>(n.willChange||"").includes(e)))||["paint","layout","strict","content"].some((e=>(n.contain||"").includes(e)))}function H(){return!("undefined"==typeof CSS||!CSS.supports)&&CSS.supports("-webkit-backdrop-filter","none")}function z(e){return["html","body","#document"].includes(T(e))}function W(e){return L(e).getComputedStyle(e)}function M(e){return D(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function V(e){if("html"===T(e))return e;const t=e.assignedSlot||e.parentNode||P(e)&&e.host||C(e);return P(t)?t.host:t}function q(e){const t=V(e);return z(t)?e.ownerDocument?e.ownerDocument.body:e.body:N(t)&&I(t)?t:q(t)}function K(e,t,n){var o;void 0===t&&(t=[]),void 0===n&&(n=!0);const r=q(e),l=r===(null==(o=e.ownerDocument)?void 0:o.body),i=L(r);return l?t.concat(i,i.visualViewport||[],I(r)?r:[],i.frameElement&&n?K(i.frameElement):[]):t.concat(r,K(r,[],n))}function X(e){const t=W(e);let n=parseFloat(t.width)||0,o=parseFloat(t.height)||0;const r=N(e),l=r?e.offsetWidth:n,i=r?e.offsetHeight:o,s=u(n)!==l||u(o)!==i;return s&&(n=l,o=i),{width:n,height:o,$:s}}function G(e){return D(e)?e:e.contextElement}function Y(e){const t=G(e);if(!N(t))return f(1);const n=t.getBoundingClientRect(),{width:o,height:r,$:l}=X(t);let i=(l?u(n.width):n.width)/o,s=(l?u(n.height):n.height)/r;return i&&Number.isFinite(i)||(i=1),s&&Number.isFinite(s)||(s=1),{x:i,y:s}}const J=f(0);function U(e){const t=L(e);return H()&&t.visualViewport?{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}:J}function Z(e,t,n,o){void 0===t&&(t=!1),void 0===n&&(n=!1);const r=e.getBoundingClientRect(),l=G(e);let i=f(1);t&&(o?D(o)&&(i=Y(o)):i=Y(e));const s=function(e,t,n){return void 0===t&&(t=!1),!(!n||t&&n!==L(e))&&t}(l,n,o)?U(l):f(0);let c=(r.left+s.x)/i.x,a=(r.top+s.y)/i.y,u=r.width/i.x,d=r.height/i.y;if(l){const e=L(l),t=o&&D(o)?L(o):o;let n=e,r=n.frameElement;for(;r&&o&&t!==n;){const e=Y(r),t=r.getBoundingClientRect(),o=W(r),l=t.left+(r.clientLeft+parseFloat(o.paddingLeft))*e.x,i=t.top+(r.clientTop+parseFloat(o.paddingTop))*e.y;c*=e.x,a*=e.y,u*=e.x,d*=e.y,c+=l,a+=i,n=L(r),r=n.frameElement}}return A({width:u,height:d,x:c,y:a})}function Q(e){return Z(C(e)).left+M(e).scrollLeft}function ee(e,t,n){let o;if("viewport"===t)o=function(e,t){const n=L(e),o=C(e),r=n.visualViewport;let l=o.clientWidth,i=o.clientHeight,s=0,c=0;if(r){l=r.width,i=r.height;const e=H();(!e||e&&"fixed"===t)&&(s=r.offsetLeft,c=r.offsetTop)}return{width:l,height:i,x:s,y:c}}(e,n);else if("document"===t)o=function(e){const t=C(e),n=M(e),o=e.ownerDocument.body,r=a(t.scrollWidth,t.clientWidth,o.scrollWidth,o.clientWidth),l=a(t.scrollHeight,t.clientHeight,o.scrollHeight,o.clientHeight);let i=-n.scrollLeft+Q(e);const s=-n.scrollTop;return"rtl"===W(o).direction&&(i+=a(t.clientWidth,o.clientWidth)-r),{width:r,height:l,x:i,y:s}}(C(e));else if(D(t))o=function(e,t){const n=Z(e,!0,"fixed"===t),o=n.top+e.clientTop,r=n.left+e.clientLeft,l=N(e)?Y(e):f(1);return{width:e.clientWidth*l.x,height:e.clientHeight*l.y,x:r*l.x,y:o*l.y}}(t,n);else{const n=U(e);o={...t,x:t.x-n.x,y:t.y-n.y}}return A(o)}function te(e,t){const n=V(e);return!(n===t||!D(n)||z(n))&&("fixed"===W(n).position||te(n,t))}function ne(e,t,n){const o=N(t),r=C(t),l="fixed"===n,i=Z(e,!0,l,t);let s={scrollLeft:0,scrollTop:0};const c=f(0);if(o||!o&&!l)if(("body"!==T(t)||I(r))&&(s=M(t)),o){const e=Z(t,!0,l,t);c.x=e.x+t.clientLeft,c.y=e.y+t.clientTop}else r&&(c.x=Q(r));return{x:i.left+s.scrollLeft-c.x,y:i.top+s.scrollTop-c.y,width:i.width,height:i.height}}function oe(e){return"static"===W(e).position}function re(e,t){return N(e)&&"fixed"!==W(e).position?t?t(e):e.offsetParent:null}function le(e,t){const n=L(e);if($(e))return n;if(!N(e)){let t=V(e);for(;t&&!z(t);){if(D(t)&&!oe(t))return t;t=V(t)}return n}let o=re(e,t);for(;o&&B(o)&&oe(o);)o=re(o,t);return o&&z(o)&&oe(o)&&!F(o)?n:o||function(e){let t=V(e);for(;N(t)&&!z(t);){if(F(t))return t;if($(t))return null;t=V(t)}return null}(e)||n}const ie={convertOffsetParentRelativeRectToViewportRelativeRect:function(e){let{elements:t,rect:n,offsetParent:o,strategy:r}=e;const l="fixed"===r,i=C(o),s=!!t&&$(t.floating);if(o===i||s&&l)return n;let c={scrollLeft:0,scrollTop:0},a=f(1);const u=f(0),d=N(o);if((d||!d&&!l)&&(("body"!==T(o)||I(i))&&(c=M(o)),N(o))){const e=Z(o);a=Y(o),u.x=e.x+o.clientLeft,u.y=e.y+o.clientTop}return{width:n.width*a.x,height:n.height*a.y,x:n.x*a.x-c.scrollLeft*a.x+u.x,y:n.y*a.y-c.scrollTop*a.y+u.y}},getDocumentElement:C,getClippingRect:function(e){let{element:t,boundary:n,rootBoundary:o,strategy:r}=e;const l=[..."clippingAncestors"===n?$(t)?[]:function(e,t){const n=t.get(e);if(n)return n;let o=K(e,[],!1).filter((e=>D(e)&&"body"!==T(e))),r=null;const l="fixed"===W(e).position;let i=l?V(e):e;for(;D(i)&&!z(i);){const t=W(i),n=F(i);n||"fixed"!==t.position||(r=null),(l?!n&&!r:!n&&"static"===t.position&&r&&["absolute","fixed"].includes(r.position)||I(i)&&!n&&te(e,i))?o=o.filter((e=>e!==i)):r=t,i=V(i)}return t.set(e,o),o}(t,this._c):[].concat(n),o],i=l[0],s=l.reduce(((e,n)=>{const o=ee(t,n,r);return e.top=a(o.top,e.top),e.right=c(o.right,e.right),e.bottom=c(o.bottom,e.bottom),e.left=a(o.left,e.left),e}),ee(t,i,r));return{width:s.right-s.left,height:s.bottom-s.top,x:s.left,y:s.top}},getOffsetParent:le,getElementRects:async function(e){const t=this.getOffsetParent||le,n=this.getDimensions,o=await n(e.floating);return{reference:ne(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:o.width,height:o.height}}},getClientRects:function(e){return Array.from(e.getClientRects())},getDimensions:function(e){const{width:t,height:n}=X(e);return{width:t,height:n}},getScale:Y,isElement:D,isRTL:function(e){return"rtl"===W(e).direction}};const se=function(e){return void 0===e&&(e=0),{name:"offset",options:e,async fn(t){var n,o;const{x:r,y:l,placement:i,middlewareData:s}=t,c=await async function(e,t){const{placement:n,platform:o,elements:r}=e,l=await(null==o.isRTL?void 0:o.isRTL(r.floating)),i=y(n),s=g(n),c="y"===x(n),a=["left","top"].includes(i)?-1:1,u=l&&c?-1:1,d=h(t,e);let{mainAxis:f,crossAxis:p,alignmentAxis:m}="number"==typeof d?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:0,crossAxis:0,alignmentAxis:null,...d};return s&&"number"==typeof m&&(p="end"===s?-1*m:m),c?{x:p*u,y:f*a}:{x:f*a,y:p*u}}(t,e);return i===(null==(n=s.offset)?void 0:n.placement)&&null!=(o=s.arrow)&&o.alignmentOffset?{}:{x:r+c.x,y:l+c.y,data:{...c,placement:i}}}}},ce=function(e){return void 0===e&&(e={}),{name:"shift",options:e,async fn(t){const{x:n,y:o,placement:r}=t,{mainAxis:l=!0,crossAxis:i=!1,limiter:s={fn:e=>{let{x:t,y:n}=e;return{x:t,y:n}}},...c}=h(e,t),a={x:n,y:o},u=await R(t,c),d=x(y(r)),f=w(d);let p=a[f],m=a[d];if(l){const e="y"===f?"bottom":"right";p=v(p+u["y"===f?"top":"left"],p,p-u[e])}if(i){const e="y"===d?"bottom":"right";m=v(m+u["y"===d?"top":"left"],m,m-u[e])}const g=s.fn({...t,[f]:p,[d]:m});return{...g,data:{x:g.x-n,y:g.y-o}}}}},ae=function(e){return void 0===e&&(e={}),{name:"flip",options:e,async fn(t){var n,o;const{placement:r,middlewareData:l,rects:i,initialPlacement:s,platform:c,elements:a}=t,{mainAxis:u=!0,crossAxis:d=!0,fallbackPlacements:f,fallbackStrategy:p="bestFit",fallbackAxisSideDirection:m="none",flipAlignment:v=!0,...w}=h(e,t);if(null!=(n=l.arrow)&&n.alignmentOffset)return{};const k=y(r),A=x(s),O=y(s)===s,T=await(null==c.isRTL?void 0:c.isRTL(a.floating)),L=f||(O||!v?[S(s)]:function(e){const t=S(e);return[E(e),t,E(t)]}(s)),C="none"!==m;!f&&C&&L.push(...function(e,t,n,o){const r=g(e);let l=function(e,t,n){const o=["left","right"],r=["right","left"],l=["top","bottom"],i=["bottom","top"];switch(e){case"top":case"bottom":return n?t?r:o:t?o:r;case"left":case"right":return t?l:i;default:return[]}}(y(e),"start"===n,o);return r&&(l=l.map((e=>e+"-"+r)),t&&(l=l.concat(l.map(E)))),l}(s,v,m,T));const j=[s,...L],D=await R(t,w),N=[];let P=(null==(o=l.flip)?void 0:o.overflows)||[];if(u&&N.push(D[k]),d){const e=function(e,t,n){void 0===n&&(n=!1);const o=g(e),r=_(e),l=b(r);let i="x"===r?o===(n?"end":"start")?"right":"left":"start"===o?"bottom":"top";return t.reference[l]>t.floating[l]&&(i=S(i)),[i,S(i)]}(r,i,T);N.push(D[e[0]],D[e[1]])}if(P=[...P,{placement:r,overflows:N}],!N.every((e=>e<=0))){var I,B;const e=((null==(I=l.flip)?void 0:I.index)||0)+1,t=j[e];if(t)return{data:{index:e,overflows:P},reset:{placement:t}};let n=null==(B=P.filter((e=>e.overflows[0]<=0)).sort(((e,t)=>e.overflows[1]-t.overflows[1]))[0])?void 0:B.placement;if(!n)switch(p){case"bestFit":{var $;const e=null==($=P.filter((e=>{if(C){const t=x(e.placement);return t===A||"y"===t}return!0})).map((e=>[e.placement,e.overflows.filter((e=>e>0)).reduce(((e,t)=>e+t),0)])).sort(((e,t)=>e[1]-t[1]))[0])?void 0:$[0];e&&(n=e);break}case"initialPlacement":n=s}if(r!==n)return{reset:{placement:n}}}return{}}}},ue=(e,t,n)=>{const o=new Map,r={platform:ie,...n},l={...r.platform,_c:o};return(async(e,t,n)=>{const{placement:o="bottom",strategy:r="absolute",middleware:l=[],platform:i}=n,s=l.filter(Boolean),c=await(null==i.isRTL?void 0:i.isRTL(t));let a=await i.getElementRects({reference:e,floating:t,strategy:r}),{x:u,y:d}=O(a,o,c),f=o,p={},m=0;for(let n=0;n{if(!e)return{tooltipStyles:{},tooltipArrowStyles:{},place:o};if(null===t)return{tooltipStyles:{},tooltipArrowStyles:{},place:o};const a=i;return n?(a.push({name:"arrow",options:u={element:n,padding:5},async fn(e){const{x:t,y:n,placement:o,rects:r,platform:l,elements:i,middlewareData:s}=e,{element:a,padding:d=0}=h(u,e)||{};if(null==a)return{};const f=k(d),p={x:t,y:n},m=_(o),y=b(m),w=await l.getDimensions(a),x="y"===m,E=x?"top":"left",S=x?"bottom":"right",A=x?"clientHeight":"clientWidth",O=r.reference[y]+r.reference[m]-p[m]-r.floating[y],R=p[m]-r.reference[m],T=await(null==l.getOffsetParent?void 0:l.getOffsetParent(a));let L=T?T[A]:0;L&&await(null==l.isElement?void 0:l.isElement(T))||(L=i.floating[A]||r.floating[y]);const C=O/2-R/2,j=L/2-w[y]/2-1,D=c(f[E],j),N=c(f[S],j),P=D,I=L-w[y]-N,B=L/2-w[y]/2+C,$=v(P,B,I),F=!s.arrow&&null!=g(o)&&B!==$&&r.reference[y]/2-(B{var r,l;const i={left:`${e}px`,top:`${t}px`,border:s},{x:c,y:a}=null!==(r=o.arrow)&&void 0!==r?r:{x:0,y:0},u=null!==(l={top:"bottom",right:"left",bottom:"top",left:"right"}[n.split("-")[0]])&&void 0!==l?l:"bottom",d=s&&{borderBottom:s,borderRight:s};let f=0;if(s){const e=`${s}`.match(/(\d+)px/);f=(null==e?void 0:e[1])?Number(e[1]):1}return{tooltipStyles:i,tooltipArrowStyles:{left:null!=c?`${c}px`:"",top:null!=a?`${a}px`:"",right:"",bottom:"",...d,[u]:`-${4+f}px`},place:n}}))):ue(e,t,{placement:"bottom",strategy:l,middleware:a}).then((({x:e,y:t,placement:n})=>({tooltipStyles:{left:`${e}px`,top:`${t}px`},tooltipArrowStyles:{},place:n})));var u},ve=(e,t)=>!("CSS"in window&&"supports"in window.CSS)||window.CSS.supports(e,t),he=(e,t,n)=>{let o=null;const r=function(...r){const l=()=>{o=null,n||e.apply(this,r)};n&&!o&&(e.apply(this,r),o=setTimeout(l,t)),n||(o&&clearTimeout(o),o=setTimeout(l,t))};return r.cancel=()=>{o&&(clearTimeout(o),o=null)},r},ye=e=>null!==e&&!Array.isArray(e)&&"object"==typeof e,ge=(e,t)=>{if(e===t)return!0;if(Array.isArray(e)&&Array.isArray(t))return e.length===t.length&&e.every(((e,n)=>ge(e,t[n])));if(Array.isArray(e)!==Array.isArray(t))return!1;if(!ye(e)||!ye(t))return e===t;const n=Object.keys(e),o=Object.keys(t);return n.length===o.length&&n.every((n=>ge(e[n],t[n])))},we=e=>{if(!(e instanceof HTMLElement||e instanceof SVGElement))return!1;const t=getComputedStyle(e);return["overflow","overflow-x","overflow-y"].some((e=>{const n=t.getPropertyValue(e);return"auto"===n||"scroll"===n}))},be=e=>{if(!e)return null;let t=e.parentElement;for(;t;){if(we(t))return t;t=t.parentElement}return document.scrollingElement||document.documentElement},xe="undefined"!=typeof window?s.useLayoutEffect:s.useEffect,_e=e=>{e.current&&(clearTimeout(e.current),e.current=null)},Ee={anchorRefs:new Set,activeAnchor:{current:null},attach:()=>{},detach:()=>{},setActiveAnchor:()=>{}},Se=(0,s.createContext)({getTooltipData:()=>Ee});function ke(e="DEFAULT_TOOLTIP_ID"){return(0,s.useContext)(Se).getTooltipData(e)}var Ae={tooltip:"core-styles-module_tooltip__3vRRp",fixed:"core-styles-module_fixed__pcSol",arrow:"core-styles-module_arrow__cvMwQ",noArrow:"core-styles-module_noArrow__xock6",clickable:"core-styles-module_clickable__ZuTTB",show:"core-styles-module_show__Nt9eE",closing:"core-styles-module_closing__sGnxF"},Oe={tooltip:"styles-module_tooltip__mnnfp",arrow:"styles-module_arrow__K0L3T",dark:"styles-module_dark__xNqje",light:"styles-module_light__Z6W-X",success:"styles-module_success__A2AKt",warning:"styles-module_warning__SCK0X",error:"styles-module_error__JvumD",info:"styles-module_info__BWdHW"};const Re=({forwardRef:e,id:t,className:n,classNameArrow:o,variant:r="dark",anchorId:l,anchorSelect:i,place:u="top",offset:f=10,events:p=["hover"],openOnClick:m=!1,positionStrategy:v="absolute",middlewares:h,wrapper:y,delayShow:g=0,delayHide:w=0,float:b=!1,hidden:x=!1,noArrow:_=!1,clickable:E=!1,closeOnEsc:S=!1,closeOnScroll:k=!1,closeOnResize:A=!1,openEvents:O,closeEvents:R,globalCloseEvents:T,imperativeModeOnly:L,style:j,position:D,afterShow:N,afterHide:P,content:I,contentWrapperRef:B,isOpen:$,defaultIsOpen:F=!1,setIsOpen:H,activeAnchor:z,setActiveAnchor:W,border:M,opacity:V,arrowColor:q,role:X="tooltip"})=>{var Y;const J=(0,s.useRef)(null),U=(0,s.useRef)(null),Q=(0,s.useRef)(null),ee=(0,s.useRef)(null),te=(0,s.useRef)(null),[ne,oe]=(0,s.useState)({tooltipStyles:{},tooltipArrowStyles:{},place:u}),[re,le]=(0,s.useState)(!1),[ie,se]=(0,s.useState)(!1),[ce,ae]=(0,s.useState)(null),ue=(0,s.useRef)(!1),fe=(0,s.useRef)(null),{anchorRefs:pe,setActiveAnchor:ve}=ke(t),ye=(0,s.useRef)(!1),[we,Ee]=(0,s.useState)([]),Se=(0,s.useRef)(!1),Re=m||p.includes("click"),Te=Re||(null==O?void 0:O.click)||(null==O?void 0:O.dblclick)||(null==O?void 0:O.mousedown),Le=O?{...O}:{mouseover:!0,focus:!0,mouseenter:!1,click:!1,dblclick:!1,mousedown:!1};!O&&Re&&Object.assign(Le,{mouseenter:!1,focus:!1,mouseover:!1,click:!0});const Ce=R?{...R}:{mouseout:!0,blur:!0,mouseleave:!1,click:!1,dblclick:!1,mouseup:!1};!R&&Re&&Object.assign(Ce,{mouseleave:!1,blur:!1,mouseout:!1});const je=T?{...T}:{escape:S||!1,scroll:k||!1,resize:A||!1,clickOutsideAnchor:Te||!1};L&&(Object.assign(Le,{mouseenter:!1,focus:!1,click:!1,dblclick:!1,mousedown:!1}),Object.assign(Ce,{mouseleave:!1,blur:!1,click:!1,dblclick:!1,mouseup:!1}),Object.assign(je,{escape:!1,scroll:!1,resize:!1,clickOutsideAnchor:!1})),xe((()=>(Se.current=!0,()=>{Se.current=!1})),[]);const De=e=>{Se.current&&(e&&se(!0),setTimeout((()=>{Se.current&&(null==H||H(e),void 0===$&&le(e))}),10))};(0,s.useEffect)((()=>{if(void 0===$)return()=>null;$&&se(!0);const e=setTimeout((()=>{le($)}),10);return()=>{clearTimeout(e)}}),[$]),(0,s.useEffect)((()=>{if(re!==ue.current)if(_e(te),ue.current=re,re)null==N||N();else{const e=(()=>{const e=getComputedStyle(document.body).getPropertyValue("--rt-transition-show-delay").match(/^([\d.]+)(ms|s)$/);if(!e)return 0;const[,t,n]=e;return Number(t)*("ms"===n?1:1e3)})();te.current=setTimeout((()=>{se(!1),ae(null),null==P||P()}),e+25)}}),[re]);const Ne=e=>{oe((t=>ge(t,e)?t:e))},Pe=(e=g)=>{_e(Q),ie?De(!0):Q.current=setTimeout((()=>{De(!0)}),e)},Ie=(e=w)=>{_e(ee),ee.current=setTimeout((()=>{ye.current||De(!1)}),e)},Be=e=>{var t;if(!e)return;const n=null!==(t=e.currentTarget)&&void 0!==t?t:e.target;if(!(null==n?void 0:n.isConnected))return W(null),void ve({current:null});g?Pe():De(!0),W(n),ve({current:n}),_e(ee)},$e=()=>{E?Ie(w||100):w?Ie():De(!1),_e(Q)},Fe=({x:e,y:t})=>{var n;const o={getBoundingClientRect:()=>({x:e,y:t,width:0,height:0,top:t,left:e,right:e,bottom:t})};me({place:null!==(n=null==ce?void 0:ce.place)&&void 0!==n?n:u,offset:f,elementReference:o,tooltipReference:J.current,tooltipArrowReference:U.current,strategy:v,middlewares:h,border:M}).then((e=>{Ne(e)}))},He=e=>{if(!e)return;const t=e,n={x:t.clientX,y:t.clientY};Fe(n),fe.current=n},ze=e=>{var t;if(!re)return;const n=e.target;n.isConnected&&((null===(t=J.current)||void 0===t?void 0:t.contains(n))||[document.querySelector(`[id='${l}']`),...we].some((e=>null==e?void 0:e.contains(n)))||(De(!1),_e(Q)))},We=he(Be,50,!0),Me=he($e,50,!0),Ve=e=>{Me.cancel(),We(e)},qe=()=>{We.cancel(),Me()},Ke=(0,s.useCallback)((()=>{var e,t;const n=null!==(e=null==ce?void 0:ce.position)&&void 0!==e?e:D;n?Fe(n):b?fe.current&&Fe(fe.current):(null==z?void 0:z.isConnected)&&me({place:null!==(t=null==ce?void 0:ce.place)&&void 0!==t?t:u,offset:f,elementReference:z,tooltipReference:J.current,tooltipArrowReference:U.current,strategy:v,middlewares:h,border:M}).then((e=>{Se.current&&Ne(e)}))}),[re,z,I,j,u,null==ce?void 0:ce.place,f,v,D,null==ce?void 0:ce.position,b]);(0,s.useEffect)((()=>{var e,t;const n=new Set(pe);we.forEach((e=>{n.add({current:e})}));const o=document.querySelector(`[id='${l}']`);o&&n.add({current:o});const r=()=>{De(!1)},i=be(z),s=be(J.current);je.scroll&&(window.addEventListener("scroll",r),null==i||i.addEventListener("scroll",r),null==s||s.addEventListener("scroll",r));let u=null;je.resize?window.addEventListener("resize",r):z&&J.current&&(u=function(e,t,n,o){void 0===o&&(o={});const{ancestorScroll:r=!0,ancestorResize:l=!0,elementResize:i="function"==typeof ResizeObserver,layoutShift:s="function"==typeof IntersectionObserver,animationFrame:u=!1}=o,f=G(e),p=r||l?[...f?K(f):[],...K(t)]:[];p.forEach((e=>{r&&e.addEventListener("scroll",n,{passive:!0}),l&&e.addEventListener("resize",n)}));const m=f&&s?function(e,t){let n,o=null;const r=C(e);function l(){var e;clearTimeout(n),null==(e=o)||e.disconnect(),o=null}return function i(s,u){void 0===s&&(s=!1),void 0===u&&(u=1),l();const{left:f,top:p,width:m,height:v}=e.getBoundingClientRect();if(s||t(),!m||!v)return;const h={rootMargin:-d(p)+"px "+-d(r.clientWidth-(f+m))+"px "+-d(r.clientHeight-(p+v))+"px "+-d(f)+"px",threshold:a(0,c(1,u))||1};let y=!0;function g(e){const t=e[0].intersectionRatio;if(t!==u){if(!y)return i();t?i(!1,t):n=setTimeout((()=>{i(!1,1e-7)}),1e3)}y=!1}try{o=new IntersectionObserver(g,{...h,root:r.ownerDocument})}catch(e){o=new IntersectionObserver(g,h)}o.observe(e)}(!0),l}(f,n):null;let v,h=-1,y=null;i&&(y=new ResizeObserver((e=>{let[o]=e;o&&o.target===f&&y&&(y.unobserve(t),cancelAnimationFrame(h),h=requestAnimationFrame((()=>{var e;null==(e=y)||e.observe(t)}))),n()})),f&&!u&&y.observe(f),y.observe(t));let g=u?Z(e):null;return u&&function t(){const o=Z(e);!g||o.x===g.x&&o.y===g.y&&o.width===g.width&&o.height===g.height||n(),g=o,v=requestAnimationFrame(t)}(),n(),()=>{var e;p.forEach((e=>{r&&e.removeEventListener("scroll",n),l&&e.removeEventListener("resize",n)})),null==m||m(),null==(e=y)||e.disconnect(),y=null,u&&cancelAnimationFrame(v)}}(z,J.current,Ke,{ancestorResize:!0,elementResize:!0,layoutShift:!0}));const f=e=>{"Escape"===e.key&&De(!1)};je.escape&&window.addEventListener("keydown",f),je.clickOutsideAnchor&&window.addEventListener("click",ze);const p=[],m=e=>{re&&(null==e?void 0:e.target)===z||Be(e)},v=e=>{re&&(null==e?void 0:e.target)===z&&$e()},h=["mouseover","mouseout","mouseenter","mouseleave","focus","blur"],y=["click","dblclick","mousedown","mouseup"];Object.entries(Le).forEach((([e,t])=>{t&&(h.includes(e)?p.push({event:e,listener:Ve}):y.includes(e)&&p.push({event:e,listener:m}))})),Object.entries(Ce).forEach((([e,t])=>{t&&(h.includes(e)?p.push({event:e,listener:qe}):y.includes(e)&&p.push({event:e,listener:v}))})),b&&p.push({event:"pointermove",listener:He});const g=()=>{ye.current=!0},w=()=>{ye.current=!1,$e()};return E&&!Te&&(null===(e=J.current)||void 0===e||e.addEventListener("mouseenter",g),null===(t=J.current)||void 0===t||t.addEventListener("mouseleave",w)),p.forEach((({event:e,listener:t})=>{n.forEach((n=>{var o;null===(o=n.current)||void 0===o||o.addEventListener(e,t)}))})),()=>{var e,t;je.scroll&&(window.removeEventListener("scroll",r),null==i||i.removeEventListener("scroll",r),null==s||s.removeEventListener("scroll",r)),je.resize?window.removeEventListener("resize",r):null==u||u(),je.clickOutsideAnchor&&window.removeEventListener("click",ze),je.escape&&window.removeEventListener("keydown",f),E&&!Te&&(null===(e=J.current)||void 0===e||e.removeEventListener("mouseenter",g),null===(t=J.current)||void 0===t||t.removeEventListener("mouseleave",w)),p.forEach((({event:e,listener:t})=>{n.forEach((n=>{var o;null===(o=n.current)||void 0===o||o.removeEventListener(e,t)}))}))}}),[z,Ke,ie,pe,we,O,R,T,Re,g,w]),(0,s.useEffect)((()=>{var e,n;let o=null!==(n=null!==(e=null==ce?void 0:ce.anchorSelect)&&void 0!==e?e:i)&&void 0!==n?n:"";!o&&t&&(o=`[data-tooltip-id='${t.replace(/'/g,"\\'")}']`);const r=new MutationObserver((e=>{const n=[],r=[];e.forEach((e=>{if("attributes"===e.type&&"data-tooltip-id"===e.attributeName&&(e.target.getAttribute("data-tooltip-id")===t?n.push(e.target):e.oldValue===t&&r.push(e.target)),"childList"===e.type){if(z){const t=[...e.removedNodes].filter((e=>1===e.nodeType));if(o)try{r.push(...t.filter((e=>e.matches(o)))),r.push(...t.flatMap((e=>[...e.querySelectorAll(o)])))}catch(e){}t.some((e=>{var t;return!!(null===(t=null==e?void 0:e.contains)||void 0===t?void 0:t.call(e,z))&&(se(!1),De(!1),W(null),_e(Q),_e(ee),!0)}))}if(o)try{const t=[...e.addedNodes].filter((e=>1===e.nodeType));n.push(...t.filter((e=>e.matches(o)))),n.push(...t.flatMap((e=>[...e.querySelectorAll(o)])))}catch(e){}}})),(n.length||r.length)&&Ee((e=>[...e.filter((e=>!r.includes(e))),...n]))}));return r.observe(document.body,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["data-tooltip-id"],attributeOldValue:!0}),()=>{r.disconnect()}}),[t,i,null==ce?void 0:ce.anchorSelect,z]),(0,s.useEffect)((()=>{Ke()}),[Ke]),(0,s.useEffect)((()=>{if(!(null==B?void 0:B.current))return()=>null;const e=new ResizeObserver((()=>{setTimeout((()=>Ke()))}));return e.observe(B.current),()=>{e.disconnect()}}),[I,null==B?void 0:B.current]),(0,s.useEffect)((()=>{var e;const t=document.querySelector(`[id='${l}']`),n=[...we,t];z&&n.includes(z)||W(null!==(e=we[0])&&void 0!==e?e:t)}),[l,we,z]),(0,s.useEffect)((()=>(F&&De(!0),()=>{_e(Q),_e(ee)})),[]),(0,s.useEffect)((()=>{var e;let n=null!==(e=null==ce?void 0:ce.anchorSelect)&&void 0!==e?e:i;if(!n&&t&&(n=`[data-tooltip-id='${t.replace(/'/g,"\\'")}']`),n)try{const e=Array.from(document.querySelectorAll(n));Ee(e)}catch(e){Ee([])}}),[t,i,null==ce?void 0:ce.anchorSelect]),(0,s.useEffect)((()=>{Q.current&&(_e(Q),Pe(g))}),[g]);const Xe=null!==(Y=null==ce?void 0:ce.content)&&void 0!==Y?Y:I,Ge=re&&Object.keys(ne.tooltipStyles).length>0;return(0,s.useImperativeHandle)(e,(()=>({open:e=>{if(null==e?void 0:e.anchorSelect)try{document.querySelector(e.anchorSelect)}catch(t){return void console.warn(`[react-tooltip] "${e.anchorSelect}" is not a valid CSS selector`)}ae(null!=e?e:null),(null==e?void 0:e.delay)?Pe(e.delay):De(!0)},close:e=>{(null==e?void 0:e.delay)?Ie(e.delay):De(!1)},activeAnchor:z,place:ne.place,isOpen:Boolean(ie&&!x&&Xe&&Ge)}))),ie&&!x&&Xe?s.createElement(y,{id:t,role:X,className:de("react-tooltip",Ae.tooltip,Oe.tooltip,Oe[r],n,`react-tooltip__place-${ne.place}`,Ae[Ge?"show":"closing"],Ge?"react-tooltip__show":"react-tooltip__closing","fixed"===v&&Ae.fixed,E&&Ae.clickable),onTransitionEnd:e=>{_e(te),re||"opacity"!==e.propertyName||(se(!1),ae(null),null==P||P())},style:{...j,...ne.tooltipStyles,opacity:void 0!==V&&Ge?V:void 0},ref:J},Xe,s.createElement(y,{className:de("react-tooltip-arrow",Ae.arrow,Oe.arrow,o,_&&Ae.noArrow),style:{...ne.tooltipArrowStyles,background:q?`linear-gradient(to right bottom, transparent 50%, ${q} 50%)`:void 0},ref:U})):null},Te=({content:e})=>s.createElement("span",{dangerouslySetInnerHTML:{__html:e}}),Le=s.forwardRef((({id:e,anchorId:t,anchorSelect:n,content:o,html:r,render:l,className:i,classNameArrow:c,variant:a="dark",place:u="top",offset:d=10,wrapper:f="div",children:p=null,events:m=["hover"],openOnClick:v=!1,positionStrategy:h="absolute",middlewares:y,delayShow:g=0,delayHide:w=0,float:b=!1,hidden:x=!1,noArrow:_=!1,clickable:E=!1,closeOnEsc:S=!1,closeOnScroll:k=!1,closeOnResize:A=!1,openEvents:O,closeEvents:R,globalCloseEvents:T,imperativeModeOnly:L=!1,style:C,position:j,isOpen:D,defaultIsOpen:N=!1,disableStyleInjection:P=!1,border:I,opacity:B,arrowColor:$,setIsOpen:F,afterShow:H,afterHide:z,role:W="tooltip"},M)=>{const[V,q]=(0,s.useState)(o),[K,X]=(0,s.useState)(r),[G,Y]=(0,s.useState)(u),[J,U]=(0,s.useState)(a),[Z,Q]=(0,s.useState)(d),[ee,te]=(0,s.useState)(g),[ne,oe]=(0,s.useState)(w),[re,le]=(0,s.useState)(b),[ie,se]=(0,s.useState)(x),[ce,ae]=(0,s.useState)(f),[ue,fe]=(0,s.useState)(m),[pe,me]=(0,s.useState)(h),[he,ye]=(0,s.useState)(null),[ge,we]=(0,s.useState)(null),be=(0,s.useRef)(P),{anchorRefs:xe,activeAnchor:_e}=ke(e),Ee=e=>null==e?void 0:e.getAttributeNames().reduce(((t,n)=>{var o;return n.startsWith("data-tooltip-")&&(t[n.replace(/^data-tooltip-/,"")]=null!==(o=null==e?void 0:e.getAttribute(n))&&void 0!==o?o:null),t}),{}),Se=e=>{const t={place:e=>{var t;Y(null!==(t=e)&&void 0!==t?t:u)},content:e=>{q(null!=e?e:o)},html:e=>{X(null!=e?e:r)},variant:e=>{var t;U(null!==(t=e)&&void 0!==t?t:a)},offset:e=>{Q(null===e?d:Number(e))},wrapper:e=>{var t;ae(null!==(t=e)&&void 0!==t?t:f)},events:e=>{const t=null==e?void 0:e.split(" ");fe(null!=t?t:m)},"position-strategy":e=>{var t;me(null!==(t=e)&&void 0!==t?t:h)},"delay-show":e=>{te(null===e?g:Number(e))},"delay-hide":e=>{oe(null===e?w:Number(e))},float:e=>{le(null===e?b:"true"===e)},hidden:e=>{se(null===e?x:"true"===e)},"class-name":e=>{ye(e)}};Object.values(t).forEach((e=>e(null))),Object.entries(e).forEach((([e,n])=>{var o;null===(o=t[e])||void 0===o||o.call(t,n)}))};(0,s.useEffect)((()=>{q(o)}),[o]),(0,s.useEffect)((()=>{X(r)}),[r]),(0,s.useEffect)((()=>{Y(u)}),[u]),(0,s.useEffect)((()=>{U(a)}),[a]),(0,s.useEffect)((()=>{Q(d)}),[d]),(0,s.useEffect)((()=>{te(g)}),[g]),(0,s.useEffect)((()=>{oe(w)}),[w]),(0,s.useEffect)((()=>{le(b)}),[b]),(0,s.useEffect)((()=>{se(x)}),[x]),(0,s.useEffect)((()=>{me(h)}),[h]),(0,s.useEffect)((()=>{be.current!==P&&console.warn("[react-tooltip] Do not change `disableStyleInjection` dynamically.")}),[P]),(0,s.useEffect)((()=>{"undefined"!=typeof window&&window.dispatchEvent(new CustomEvent("react-tooltip-inject-styles",{detail:{disableCore:"core"===P,disableBase:P}}))}),[]),(0,s.useEffect)((()=>{var o;const r=new Set(xe);let l=n;if(!l&&e&&(l=`[data-tooltip-id='${e.replace(/'/g,"\\'")}']`),l)try{document.querySelectorAll(l).forEach((e=>{r.add({current:e})}))}catch(o){console.warn(`[react-tooltip] "${l}" is not a valid CSS selector`)}const i=document.querySelector(`[id='${t}']`);if(i&&r.add({current:i}),!r.size)return()=>null;const s=null!==(o=null!=ge?ge:i)&&void 0!==o?o:_e.current,c=new MutationObserver((e=>{e.forEach((e=>{var t;if(!s||"attributes"!==e.type||!(null===(t=e.attributeName)||void 0===t?void 0:t.startsWith("data-tooltip-")))return;const n=Ee(s);Se(n)}))})),a={attributes:!0,childList:!1,subtree:!1};if(s){const e=Ee(s);Se(e),c.observe(s,a)}return()=>{c.disconnect()}}),[xe,_e,ge,t,n]),(0,s.useEffect)((()=>{(null==C?void 0:C.border)&&console.warn("[react-tooltip] Do not set `style.border`. Use `border` prop instead."),I&&!ve("border",`${I}`)&&console.warn(`[react-tooltip] "${I}" is not a valid \`border\`.`),(null==C?void 0:C.opacity)&&console.warn("[react-tooltip] Do not set `style.opacity`. Use `opacity` prop instead."),B&&!ve("opacity",`${B}`)&&console.warn(`[react-tooltip] "${B}" is not a valid \`opacity\`.`)}),[]);let Ae=p;const Oe=(0,s.useRef)(null);if(l){const e=l({content:(null==ge?void 0:ge.getAttribute("data-tooltip-content"))||V||null,activeAnchor:ge});Ae=e?s.createElement("div",{ref:Oe,className:"react-tooltip-content-wrapper"},e):null}else V&&(Ae=V);K&&(Ae=s.createElement(Te,{content:K}));const Le={forwardRef:M,id:e,anchorId:t,anchorSelect:n,className:de(i,he),classNameArrow:c,content:Ae,contentWrapperRef:Oe,place:G,variant:J,offset:Z,wrapper:ce,events:ue,openOnClick:v,positionStrategy:pe,middlewares:y,delayShow:ee,delayHide:ne,float:re,hidden:ie,noArrow:_,clickable:E,closeOnEsc:S,closeOnScroll:k,closeOnResize:A,openEvents:O,closeEvents:R,globalCloseEvents:T,imperativeModeOnly:L,style:C,position:j,isOpen:D,defaultIsOpen:N,border:I,opacity:B,arrowColor:$,setIsOpen:F,afterShow:H,afterHide:z,activeAnchor:ge,setActiveAnchor:e=>we(e),role:W};return s.createElement(Re,{...Le})}));"undefined"!=typeof window&&window.addEventListener("react-tooltip-inject-styles",(e=>{e.detail.disableCore||pe({css:":root{--rt-color-white:#fff;--rt-color-dark:#222;--rt-color-success:#8dc572;--rt-color-error:#be6464;--rt-color-warning:#f0ad4e;--rt-color-info:#337ab7;--rt-opacity:0.9;--rt-transition-show-delay:0.15s;--rt-transition-closing-delay:0.15s}.core-styles-module_tooltip__3vRRp{position:absolute;top:0;left:0;pointer-events:none;opacity:0;will-change:opacity}.core-styles-module_fixed__pcSol{position:fixed}.core-styles-module_arrow__cvMwQ{position:absolute;background:inherit}.core-styles-module_noArrow__xock6{display:none}.core-styles-module_clickable__ZuTTB{pointer-events:auto}.core-styles-module_show__Nt9eE{opacity:var(--rt-opacity);transition:opacity var(--rt-transition-show-delay)ease-out}.core-styles-module_closing__sGnxF{opacity:0;transition:opacity var(--rt-transition-closing-delay)ease-in}",type:"core"}),e.detail.disableBase||pe({css:"\n.styles-module_tooltip__mnnfp{padding:8px 16px;border-radius:3px;font-size:90%;width:max-content}.styles-module_arrow__K0L3T{width:8px;height:8px}[class*='react-tooltip__place-top']>.styles-module_arrow__K0L3T{transform:rotate(45deg)}[class*='react-tooltip__place-right']>.styles-module_arrow__K0L3T{transform:rotate(135deg)}[class*='react-tooltip__place-bottom']>.styles-module_arrow__K0L3T{transform:rotate(225deg)}[class*='react-tooltip__place-left']>.styles-module_arrow__K0L3T{transform:rotate(315deg)}.styles-module_dark__xNqje{background:var(--rt-color-dark);color:var(--rt-color-white)}.styles-module_light__Z6W-X{background-color:var(--rt-color-white);color:var(--rt-color-dark)}.styles-module_success__A2AKt{background-color:var(--rt-color-success);color:var(--rt-color-white)}.styles-module_warning__SCK0X{background-color:var(--rt-color-warning);color:var(--rt-color-white)}.styles-module_error__JvumD{background-color:var(--rt-color-error);color:var(--rt-color-white)}.styles-module_info__BWdHW{background-color:var(--rt-color-info);color:var(--rt-color-white)}",type:"base"})}));const Ce=window.wp.i18n,je=window.wp.element,De=(e,t="")=>{for(const[n,o]of Object.entries(e)){let e=n;t&&(e+="_"+String(t)),addEventListener(e,(e=>{o(e.detail)}),!1)}};function Ne(){const e=(0,i.select)("core/editor")?.getCurrentPostType();return"gatherpress_event"===e||"gatherpress_venue"===e}function Pe(e){if("object"==typeof GatherPress)return e.split(".").reduce(((e,t)=>e&&e[t]),GatherPress)}const Ie=window.ReactJSXRuntime,Be=({onlineEventLinkDefault:e=""})=>{const t=(0,Ce.__)("Online event","gatherpress"),[n,o]=(0,je.useState)(e);return De({setOnlineEventLink:o},Pe("eventDetails.postId")),(0,Ie.jsxs)(l.Flex,{justify:"normal",gap:"3",children:[(0,Ie.jsx)(l.FlexItem,{display:"flex",children:(0,Ie.jsx)(l.Icon,{icon:"video-alt2"})}),(0,Ie.jsxs)(l.FlexItem,{children:[!n&&(0,Ie.jsxs)(Ie.Fragment,{children:[(0,Ie.jsx)("span",{tabIndex:"0",className:"gatherpress-tooltip","data-tooltip-id":"gatherpress-online-event-tooltip","data-tooltip-content":(0,Ce.__)("Link available for attendees only.","gatherpress"),children:t}),(0,Ie.jsx)(Le,{id:"gatherpress-online-event-tooltip"})]}),n&&(0,Ie.jsx)("a",{href:n,rel:"noreferrer",target:"_blank",children:t})]})]})},$e=()=>{const{editPost:e,unlockPostSaving:t}=(0,i.useDispatch)("core/editor"),n=(0,i.useSelect)((e=>e("core/editor").getEditedPostAttribute("meta").gatherpress_online_event_link)),[o,r]=(0,je.useState)(n);return De({setOnlineEventLink:r},Pe("eventDetails.postId")),(0,Ie.jsx)(l.TextControl,{label:(0,Ce.__)("Online event link","gatherpress"),value:o,placeholder:(0,Ce.__)("Add link to online event","gatherpress"),onChange:n=>{(n=>{e({meta:{gatherpress_online_event_link:n}}),r(n),((e,t="")=>{for(const[n,o]of Object.entries(e)){let e=n;t&&(e+="_"+String(t));const r=new CustomEvent(e,{detail:o});dispatchEvent(r)}})({setOnlineEventLink:n},Pe("eventDetails.postId")),t()})(n)}})},Fe=e=>{const{isSelected:t}=e,n=t?"none":"block";return(0,Ie.jsxs)("div",{style:{position:"relative"},children:[e.children,(0,Ie.jsx)("div",{style:{position:"absolute",top:"0",right:"0",bottom:"0",left:"0",display:n}})]})},He=JSON.parse('{"$schema":"https://schemas.wp.org/trunk/block.json","apiVersion":2,"name":"gatherpress/online-event","version":"1.0.1","title":"Online Event","category":"gatherpress","icon":"video-alt2","example":{},"description":"Utilized for virtual events, offering the capability to share a direct link to an event.","attributes":{"blockId":{"type":"string"}},"supports":{"html":false},"textdomain":"gatherpress","editorScript":"file:./index.js","style":"file:./style-index.css","viewScript":"file:./online-event.js","render":"file:./render.php"}');(0,o.registerBlockType)(He,{edit:({isSelected:e})=>{const t=(0,r.useBlockProps)(),n=(0,i.useSelect)((e=>e("core/editor")?.getEditedPostAttribute("meta")?.gatherpress_online_event_link));return(0,Ie.jsxs)(Ie.Fragment,{children:[Ne()&&(0,Ie.jsx)(r.InspectorControls,{children:(0,Ie.jsx)(l.PanelBody,{children:(0,Ie.jsx)(l.PanelRow,{children:(0,Ie.jsx)($e,{})})})}),(0,Ie.jsx)("div",{...t,children:(0,Ie.jsx)(Fe,{isSelected:e,children:(0,Ie.jsx)(Be,{onlineEventLinkDefault:n})})})]})},save:()=>null})},6942:(e,t)=>{var n;!function(){"use strict";var o={}.hasOwnProperty;function r(){for(var e="",t=0;t{if(!n){var i=1/0;for(u=0;u=l)&&Object.keys(o.O).every((e=>o.O[e](n[c])))?n.splice(c--,1):(s=!1,l0&&e[u-1][2]>l;u--)e[u]=e[u-1];e[u]=[n,r,l]},o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{var e={495:0,791:0};o.O.j=t=>0===e[t];var t=(t,n)=>{var r,l,i=n[0],s=n[1],c=n[2],a=0;if(i.some((t=>0!==e[t]))){for(r in s)o.o(s,r)&&(o.m[r]=s[r]);if(c)var u=c(o)}for(t&&t(n);ao(7520)));r=o.O(r)})(); \ No newline at end of file diff --git a/build/blocks/rsvp-response/index.asset.php b/build/blocks/rsvp-response/index.asset.php index 0ea35d5a6..3265d3d78 100644 --- a/build/blocks/rsvp-response/index.asset.php +++ b/build/blocks/rsvp-response/index.asset.php @@ -1 +1 @@ - array('react-jsx-runtime', 'wp-api-fetch', 'wp-block-editor', 'wp-blocks', 'wp-components', 'wp-core-data', 'wp-data', 'wp-element', 'wp-i18n'), 'version' => '1dfd2576a31f517fef45'); + array('react-jsx-runtime', 'wp-api-fetch', 'wp-block-editor', 'wp-blocks', 'wp-components', 'wp-core-data', 'wp-data', 'wp-element', 'wp-i18n'), 'version' => '94657e92928e2e24a9d3'); diff --git a/build/blocks/rsvp-response/index.js b/build/blocks/rsvp-response/index.js index b53100347..3adac366f 100644 --- a/build/blocks/rsvp-response/index.js +++ b/build/blocks/rsvp-response/index.js @@ -1,2 +1,2 @@ (()=>{"use strict";var e,s={8474:(e,s,t)=>{const r=window.wp.blocks,n=window.wp.blockEditor,a=window.wp.components,i=window.wp.element,o=window.wp.i18n,l=window.wp.data,p=(e,s="")=>{for(const[t,r]of Object.entries(e)){let e=t;s&&(e+="_"+String(s)),addEventListener(e,(e=>{r(e.detail)}),!1)}};function c(e){if("object"==typeof GatherPress)return e.split(".").reduce(((e,s)=>e&&e[s]),GatherPress)}const d=window.ReactJSXRuntime,u=({item:e,activeItem:s=!1,count:t,onTitleClick:r,defaultLimit:n})=>{const{title:a,value:o}=e,l=!(0===t&&"attending"!==o),p=s?"span":"a",u=c("eventDetails.postId"),v=t>n;return(0,i.useEffect)((()=>{s&&((e,s="")=>{for(const[t,r]of Object.entries(e)){let e=t;s&&(e+="_"+String(s));const n=new CustomEvent(e,{detail:r});dispatchEvent(n)}})({setRsvpSeeAllLink:v},u)})),l?(0,d.jsxs)("div",{className:"gatherpress-rsvp-response__navigation-item",children:[(0,d.jsx)(p,{className:"gatherpress-rsvp-response__anchor","data-item":o,"data-toggle":"tab",href:"#",role:"tab","aria-controls":`#gatherpress-rsvp-${o}`,onClick:e=>r(e,o),children:a}),(0,d.jsxs)("span",{className:"gatherpress-rsvp-response__count",children:["(",t,")"]})]}):""},v=({items:e,activeValue:s,onTitleClick:r,defaultLimit:n})=>{var a;const o={all:0,attending:0,not_attending:0,waiting_list:0},l=null!==(a=c("eventDetails.responses"))&&void 0!==a?a:{};for(const[e,s]of Object.entries(l))o[e]=s.count;const[v,h]=(0,i.useState)(o),[g,m]=(0,i.useState)(!1),[_,f]=(0,i.useState)(!0),x=_?"span":"a";p({setRsvpCount:h},c("eventDetails.postId"));let j=0;const b=e.map(((e,t)=>{const a=e.value===s;return a&&(j=t),(0,d.jsx)(u,{item:e,count:v[e.value],activeItem:a,onTitleClick:r,defaultLimit:n},t)}));return(0,i.useEffect)((()=>{t.g.document.addEventListener("click",(({target:e})=>{e.closest(".gatherpress-rsvp-response__navigation-active")||m(!1)})),t.g.document.addEventListener("keydown",(({key:e})=>{"Escape"===e&&m(!1)}))})),(0,i.useEffect)((()=>{0===v.not_attending&&0===v.waiting_list?f(!0):f(!1)}),[v]),(0,d.jsxs)("div",{className:"gatherpress-rsvp-response__navigation-wrapper",children:[(0,d.jsxs)("div",{children:[(0,d.jsx)(x,{href:"#",className:"gatherpress-rsvp-response__navigation-active",onClick:e=>(e=>{e.preventDefault(),m(!g)})(e),children:e[j].title})," ",(0,d.jsxs)("span",{children:["(",v[s],")"]})]}),!_&&g&&(0,d.jsx)("nav",{className:"gatherpress-rsvp-response__navigation",children:b})]})},h=({items:e,activeValue:s,onTitleClick:t,rsvpLimit:r,setRsvpLimit:n,defaultLimit:a})=>{let l;l=!1===r?(0,o.__)("See fewer","gatherpress"):(0,o.__)("See all","gatherpress");let u=!1;const h=c("eventDetails.responses");var g;h&&h[s]&&(u=(null!==(g=c("eventDetails.responses")[s].count)&&void 0!==g?g:0)>a);const[m,_]=(0,i.useState)(u);return p({setRsvpSeeAllLink:_},c("eventDetails.postId")),(0,d.jsxs)("div",{className:"gatherpress-rsvp-response__header",children:[(0,d.jsx)("div",{className:"dashicons dashicons-groups"}),(0,d.jsx)(v,{items:e,activeValue:s,onTitleClick:t,defaultLimit:a}),m&&(0,d.jsx)("div",{className:"gatherpress-rsvp-response__see-all",children:(0,d.jsx)("a",{href:"#",onClick:e=>(e=>{e.preventDefault(),n(!1===r&&a)})(e),children:l})})]})},g=({value:e,limit:s,responses:t=[]})=>{let r="";return"object"==typeof t&&void 0!==t[e]&&(t=[...t[e].responses],s&&(t=t.splice(0,s)),r=t.map(((e,s)=>{const{profile:t,name:r,photo:n,role:a}=e,{guests:i}=e;return(0,d.jsxs)("div",{className:"gatherpress-rsvp-response__item",children:[(0,d.jsx)("figure",{className:"gatherpress-rsvp-response__member-avatar",children:""!==t?(0,d.jsx)("a",{href:t,children:(0,d.jsx)("img",{alt:r,title:r,src:n})}):(0,d.jsx)("img",{alt:r,title:r,src:n})}),(0,d.jsxs)("div",{className:"gatherpress-rsvp-response__member-info",children:[(0,d.jsx)("div",{className:"gatherpress-rsvp-response__member-name",children:""!==t?(0,d.jsx)("a",{href:t,title:r,children:r}):(0,d.jsx)("span",{children:r})}),(0,d.jsx)("div",{className:"gatherpress-rsvp-response__member-role",children:a}),0!==i&&(0,d.jsx)("small",{className:"gatherpress-rsvp-response__guests",children:(0,o.sprintf)(/* translators: %d: Number of guests. */ /* translators: %d: Number of guests. */ -(0,o._n)("+%d guest","+%d guests",i,"gatherpress"),i)})]})]},s)}))),(0,d.jsxs)(d.Fragment,{children:["attending"===e&&0===r.length&&(0,d.jsx)("div",{className:"gatherpress-rsvp-response__no-responses",children:!1===c("eventDetails.hasEventPast")?(0,o.__)("No one is attending this event yet.","gatherpress"):(0,o.__)("No one went to this event.","gatherpress")}),r]})},m=({items:e,activeValue:s,limit:t=!1})=>{const r=c("eventDetails.postId"),[n,a]=(0,i.useState)(c("eventDetails.responses"));p({setRsvpResponse:a},r);const o=e.map(((e,r)=>{const{value:a}=e;return a===s?(0,d.jsx)("div",{className:"gatherpress-rsvp-response__items",id:`gatherpress-rsvp-${a}`,role:"tabpanel","aria-labelledby":`gatherpress-rsvp-${a}-tab`,children:(0,d.jsx)(g,{value:a,limit:t,responses:n})},r):""}));return(0,d.jsx)("div",{className:"gatherpress-rsvp-response__content",children:o})},_=({defaultStatus:e="attending"})=>{const s=c("eventDetails.hasEventPast"),t=[{title:!1===s?(0,o._x)("Attending","Responded Status","gatherpress"):(0,o._x)("Went","Responded Status","gatherpress"),value:"attending"},{title:!1===s?(0,o._x)("Waiting List","Responded Status","gatherpress"):(0,o._x)("Wait Listed","Responded Status","gatherpress"),value:"waiting_list"},{title:!1===s?(0,o._x)("Not Attending","Responded Status","gatherpress"):(0,o._x)("Didn't Go","Responded Status","gatherpress"),value:"not_attending"}],[r,n]=(0,i.useState)(e),[a,l]=(0,i.useState)(8);return p({setRsvpStatus:n},c("eventDetails.postId")),t.some((e=>e.value===r))||n(e),(0,d.jsxs)("div",{className:"gatherpress-rsvp-response",children:[(0,d.jsx)(h,{items:t,activeValue:r,onTitleClick:(e,s)=>{e.preventDefault(),n(s)},rsvpLimit:a,setRsvpLimit:l,defaultLimit:8}),(0,d.jsx)(m,{items:t,activeValue:r,limit:a})]})},f=window.wp.apiFetch;var x=t.n(f);const j=window.wp.coreData,b=({defaultStatus:e,setDefaultStatus:s})=>{var t;const r=c("eventDetails.responses"),n=c("eventDetails.postId"),[p,u]=(0,i.useState)(r),v=p[e].responses,{userList:h}=(0,l.useSelect)((e=>{const{getEntityRecords:s}=e(j.store);return{userList:s("root","user",{per_page:-1})}}),[]),g=null!==(t=h?.reduce(((e,s)=>({...e,[s.username]:s})),{}))&&void 0!==t?t:{},m=(e,s="attending")=>{x()({path:c("urls.eventRestApi")+"/rsvp",method:"POST",data:{post_id:n,status:s,user_id:e,_wpnonce:c("misc.nonce")}}).then((e=>{u(e.responses),function(e,s){if("object"!=typeof GatherPress)return;const t="eventDetails.responses".split("."),r=t.pop();t.reduce(((e,s)=>{var t;return null!==(t=e[s])&&void 0!==t?t:e[s]={}}),GatherPress)[r]=s}(0,e.responses)}))};return(0,d.jsxs)("div",{className:"gatherpress-rsvp-response",children:[(0,d.jsx)(a.SelectControl,{label:(0,o.__)("Status","gatherpress"),value:e,options:[{label:(0,o._x)("Attending","List Status","gatherpress"),value:"attending"},{label:(0,o._x)("Waiting List","List Status","gatherpress"),value:"waiting_list"},{label:(0,o._x)("Not Attending","List Status","gatherpress"),value:"not_attending"}],onChange:e=>s(e)}),(0,d.jsx)(a.FormTokenField,{label:(0,o.__)("Members","gatherpress"),value:v&&v.map((e=>({id:e.id,value:e.name}))),tokenizeOnSpace:!0,onChange:async s=>{s.length>v.length?s.forEach((s=>{g[s]&&m(g[s].id,e)})):v.forEach((e=>{!1===s.some((s=>s.id===e.id))&&m(e.id,"no_status")}))},suggestions:Object.keys(g),maxSuggestions:20},"query-controls-topics-select")]})},w=e=>{const{isSelected:s}=e,t=s?"none":"block";return(0,d.jsxs)("div",{style:{position:"relative"},children:[e.children,(0,d.jsx)("div",{style:{position:"absolute",top:"0",right:"0",bottom:"0",left:"0",display:t}})]})},S=JSON.parse('{"$schema":"https://schemas.wp.org/trunk/block.json","apiVersion":2,"name":"gatherpress/rsvp-response","version":"1.0.1","title":"RSVP Response","category":"gatherpress","icon":"groups","example":{},"description":"Displays a list of members who have confirmed their attendance for an event.","attributes":{"blockId":{"type":"string"},"content":{"type":"string"},"color":{"type":"string"}},"supports":{"html":false},"textdomain":"gatherpress","editorScript":"file:./index.js","style":"file:./style-index.css","viewScript":"file:./rsvp-response.js","render":"file:./render.php"}');(0,r.registerBlockType)(S,{edit:()=>{const e=(0,l.select)("core").canUser("create","posts"),s=(0,n.useBlockProps)(),[t,r]=(0,i.useState)(!1),[p,c]=(0,i.useState)("attending");return(0,d.jsxs)("div",{...s,children:[t&&(0,d.jsx)(b,{defaultStatus:p,setDefaultStatus:c}),!t&&(0,d.jsx)(w,{children:(0,d.jsx)(_,{defaultStatus:p})}),e&&(0,d.jsx)(n.BlockControls,{children:(0,d.jsx)(a.ToolbarGroup,{children:(0,d.jsx)(a.ToolbarButton,{label:(0,o.__)("Edit","gatherpress"),text:t?(0,o.__)("Preview","gatherpress"):(0,o.__)("Edit","gatherpress"),onClick:e=>{e.preventDefault(),r(!t)}})})})]})},save:()=>null})}},t={};function r(e){var n=t[e];if(void 0!==n)return n.exports;var a=t[e]={exports:{}};return s[e](a,a.exports,r),a.exports}r.m=s,e=[],r.O=(s,t,n,a)=>{if(!t){var i=1/0;for(c=0;c=a)&&Object.keys(r.O).every((e=>r.O[e](t[l])))?t.splice(l--,1):(o=!1,a0&&e[c-1][2]>a;c--)e[c]=e[c-1];e[c]=[t,n,a]},r.n=e=>{var s=e&&e.__esModule?()=>e.default:()=>e;return r.d(s,{a:s}),s},r.d=(e,s)=>{for(var t in s)r.o(s,t)&&!r.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:s[t]})},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,s)=>Object.prototype.hasOwnProperty.call(e,s),(()=>{var e={788:0,556:0};r.O.j=s=>0===e[s];var s=(s,t)=>{var n,a,[i,o,l]=t,p=0;if(i.some((s=>0!==e[s]))){for(n in o)r.o(o,n)&&(r.m[n]=o[n]);if(l)var c=l(r)}for(s&&s(t);pr(8474)));n=r.O(n)})(); \ No newline at end of file +(0,o._n)("+%d guest","+%d guests",i,"gatherpress"),i)})]})]},s)}))),(0,d.jsxs)(d.Fragment,{children:["attending"===e&&0===r.length&&(0,d.jsx)("div",{className:"gatherpress-rsvp-response__no-responses",children:!1===c("eventDetails.hasEventPast")?(0,o.__)("No one is attending this event yet.","gatherpress"):(0,o.__)("No one went to this event.","gatherpress")}),r]})},m=({items:e,activeValue:s,limit:t=!1})=>{const r=c("eventDetails.postId"),[n,a]=(0,i.useState)(c("eventDetails.responses"));p({setRsvpResponse:a},r);const o=e.map(((e,r)=>{const{value:a}=e;return a===s?(0,d.jsx)("div",{className:"gatherpress-rsvp-response__items",id:`gatherpress-rsvp-${a}`,role:"tabpanel","aria-labelledby":`gatherpress-rsvp-${a}-tab`,children:(0,d.jsx)(g,{value:a,limit:t,responses:n})},r):""}));return(0,d.jsx)("div",{className:"gatherpress-rsvp-response__content",children:o})},_=({defaultStatus:e="attending"})=>{const s=c("eventDetails.hasEventPast"),t=[{title:!1===s?(0,o._x)("Attending","Responded Status","gatherpress"):(0,o._x)("Went","Responded Status","gatherpress"),value:"attending"},{title:!1===s?(0,o._x)("Waiting List","Responded Status","gatherpress"):(0,o._x)("Wait Listed","Responded Status","gatherpress"),value:"waiting_list"},{title:!1===s?(0,o._x)("Not Attending","Responded Status","gatherpress"):(0,o._x)("Didn't Go","Responded Status","gatherpress"),value:"not_attending"}],[r,n]=(0,i.useState)(e),[a,l]=(0,i.useState)(8);return p({setRsvpStatus:n},c("eventDetails.postId")),t.some((e=>e.value===r))||n(e),(0,d.jsxs)("div",{className:"gatherpress-rsvp-response",children:[(0,d.jsx)(h,{items:t,activeValue:r,onTitleClick:(e,s)=>{e.preventDefault(),n(s)},rsvpLimit:a,setRsvpLimit:l,defaultLimit:8}),(0,d.jsx)(m,{items:t,activeValue:r,limit:a})]})},f=window.wp.apiFetch;var x=t.n(f);const j=window.wp.coreData,b=({defaultStatus:e,setDefaultStatus:s})=>{var t;const r=c("eventDetails.responses"),n=c("eventDetails.postId"),[p,u]=(0,i.useState)(r),v=p[e].responses,{userList:h}=(0,l.useSelect)((e=>{const{getEntityRecords:s}=e(j.store);return{userList:s("root","user",{per_page:-1})}}),[]),g=null!==(t=h?.reduce(((e,s)=>({...e,[s.username]:s})),{}))&&void 0!==t?t:{},m=(e,s="attending")=>{x()({path:c("urls.eventRestApi")+"/rsvp",method:"POST",data:{post_id:n,status:s,user_id:e,_wpnonce:c("misc.nonce")}}).then((e=>{u(e.responses),function(e,s){if("object"!=typeof GatherPress)return;const t="eventDetails.responses".split("."),r=t.pop();t.reduce(((e,s)=>{var t;return null!==(t=e[s])&&void 0!==t?t:e[s]={}}),GatherPress)[r]=s}(0,e.responses)}))};return(0,d.jsxs)("div",{className:"gatherpress-rsvp-response",children:[(0,d.jsx)(a.SelectControl,{label:(0,o.__)("Status","gatherpress"),value:e,options:[{label:(0,o._x)("Attending","List Status","gatherpress"),value:"attending"},{label:(0,o._x)("Waiting List","List Status","gatherpress"),value:"waiting_list"},{label:(0,o._x)("Not Attending","List Status","gatherpress"),value:"not_attending"}],onChange:e=>s(e)}),(0,d.jsx)(a.FormTokenField,{label:(0,o.__)("Members","gatherpress"),value:v&&v.map((e=>({id:e.id,value:e.name}))),tokenizeOnSpace:!0,onChange:async s=>{s.length>v.length?s.forEach((s=>{g[s]&&m(g[s].id,e)})):v.forEach((e=>{!1===s.some((s=>s.id===e.id))&&m(e.id,"no_status")}))},suggestions:Object.keys(g),maxSuggestions:20},"query-controls-topics-select")]})},w=e=>{const{isSelected:s}=e,t=s?"none":"block";return(0,d.jsxs)("div",{style:{position:"relative"},children:[e.children,(0,d.jsx)("div",{style:{position:"absolute",top:"0",right:"0",bottom:"0",left:"0",display:t}})]})},S=JSON.parse('{"$schema":"https://schemas.wp.org/trunk/block.json","apiVersion":2,"name":"gatherpress/rsvp-response","version":"1.0.1","title":"RSVP Response","category":"gatherpress","icon":"groups","example":{},"description":"Displays a list of members who have confirmed their attendance for an event.","attributes":{"blockId":{"type":"string"},"content":{"type":"string"},"color":{"type":"string"}},"supports":{"html":false},"textdomain":"gatherpress","editorScript":"file:./index.js","style":"file:./style-index.css","viewScript":"file:./rsvp-response.js","render":"file:./render.php"}');(0,r.registerBlockType)(S,{edit:()=>{const e=(0,l.select)("core").canUser("create","posts"),s=(0,n.useBlockProps)(),[t,r]=(0,i.useState)(!1),[p,c]=(0,i.useState)("attending");return(0,d.jsxs)("div",{...s,children:[t&&(0,d.jsx)(b,{defaultStatus:p,setDefaultStatus:c}),!t&&(0,d.jsx)(w,{children:(0,d.jsx)(_,{defaultStatus:p})}),e&&(0,d.jsx)(n.BlockControls,{children:(0,d.jsx)(a.ToolbarGroup,{children:(0,d.jsx)(a.ToolbarButton,{label:(0,o.__)("Edit","gatherpress"),text:t?(0,o.__)("Preview","gatherpress"):(0,o.__)("Edit","gatherpress"),onClick:e=>{e.preventDefault(),r(!t)}})})})]})},save:()=>null})}},t={};function r(e){var n=t[e];if(void 0!==n)return n.exports;var a=t[e]={exports:{}};return s[e](a,a.exports,r),a.exports}r.m=s,e=[],r.O=(s,t,n,a)=>{if(!t){var i=1/0;for(c=0;c=a)&&Object.keys(r.O).every((e=>r.O[e](t[l])))?t.splice(l--,1):(o=!1,a0&&e[c-1][2]>a;c--)e[c]=e[c-1];e[c]=[t,n,a]},r.n=e=>{var s=e&&e.__esModule?()=>e.default:()=>e;return r.d(s,{a:s}),s},r.d=(e,s)=>{for(var t in s)r.o(s,t)&&!r.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:s[t]})},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,s)=>Object.prototype.hasOwnProperty.call(e,s),(()=>{var e={788:0,556:0};r.O.j=s=>0===e[s];var s=(s,t)=>{var n,a,i=t[0],o=t[1],l=t[2],p=0;if(i.some((s=>0!==e[s]))){for(n in o)r.o(o,n)&&(r.m[n]=o[n]);if(l)var c=l(r)}for(s&&s(t);pr(8474)));n=r.O(n)})(); \ No newline at end of file diff --git a/build/blocks/rsvp/index.asset.php b/build/blocks/rsvp/index.asset.php index 3780207d7..ca9f4dd03 100644 --- a/build/blocks/rsvp/index.asset.php +++ b/build/blocks/rsvp/index.asset.php @@ -1 +1 @@ - array('react', 'react-dom', 'react-jsx-runtime', 'wp-api-fetch', 'wp-block-editor', 'wp-blocks', 'wp-components', 'wp-data', 'wp-element', 'wp-i18n'), 'version' => '3b137897829338f9530a'); + array('react', 'react-dom', 'react-jsx-runtime', 'wp-api-fetch', 'wp-block-editor', 'wp-blocks', 'wp-components', 'wp-data', 'wp-element', 'wp-i18n'), 'version' => '4cc0d5b440604a182d58'); diff --git a/build/blocks/rsvp/index.js b/build/blocks/rsvp/index.js index 9e1f75786..e9ef574ad 100644 --- a/build/blocks/rsvp/index.js +++ b/build/blocks/rsvp/index.js @@ -2,4 +2,4 @@ (0,Me.__)("You must %s to RSVP to events.","gatherpress"),`\n\t\t\t\t\t\t\t\t\t${(0,Me._x)("Login","Context: You must ~ to RSVP to events.","gatherpress")}\n\t\t\t\t\t\t\t\t`))}),""!==He("urls.registrationUrl")&&(0,Fe.jsx)("div",{className:"gatherpress-modal__text",children:a((0,Me.sprintf)(/* translators: %s: 'Register' (hyperlinked) */ /* translators: %s: 'Register' (hyperlinked) */ (0,Me.__)("%s if you do not have an account.","gatherpress"),`\n\t\t\t\t\t\t\t\t\t\t${(0,Me._x)("Register","Context: ~ if you do not have an account.","gatherpress")}\n\t\t\t\t\t\t\t\t\t`))})]}),(0,Fe.jsx)(Le.ButtonGroup,{className:"gatherpress-buttons wp-block-buttons",children:(0,Fe.jsx)("div",{className:"gatherpress-buttons__container wp-block-button",children:(0,Fe.jsx)("a",{href:"#",onClick:w,className:"gatherpress-buttons__button wp-block-button__link",children:(0,Me.__)("Close","gatherpress")})})})]}),S=({status:e})=>{let t="",n="";return"not_attending"===e||"no_status"===e?(t="attending",n=(0,Me.__)("Attend","gatherpress")):(t="not_attending",n=(0,Me._x)("Not Attending","action of not attending","gatherpress")),(0,Fe.jsxs)("div",{className:"gatherpress-modal gatherpress-modal__rsvp",children:[(0,Fe.jsx)("div",{className:"gatherpress-modal__header",children:x(l)?x(l):(0,Fe.jsx)(Le.Spinner,{})}),(0,Fe.jsxs)("div",{className:"gatherpress-modal__content",children:[(0,Fe.jsx)("div",{className:"gatherpress-modal__text",children:a((0,Me.sprintf)(/* translators: %s: button label. */ /* translators: %s: button label. */ (0,Me.__)("To set or change your attending status, simply click the %s button below.","gatherpress"),""+n+""))}),0{const t=Number(e.target.value);f(t),_(e,l,u,t,!1)},defaultValue:p})]}),o&&(0,Fe.jsxs)("div",{className:"gatherpress-modal__anonymous",children:[(0,Fe.jsx)("input",{id:"gatherpress-anonymous",type:"checkbox",onChange:e=>{const t=Number(e.target.checked);d(t),_(e,l,t,0,!1)},checked:u}),(0,Fe.jsx)("label",{htmlFor:"gatherpress-anonymous",tabIndex:"0",className:"gatherpress-tooltip","data-tooltip-id":"gatherpress-anonymous-tooltip","data-tooltip-content":(0,Me.__)("Only admins will see your identity.","gatherpress"),children:(0,Me.__)("List me as anonymous.","gatherpress")}),(0,Fe.jsx)(Pe,{id:"gatherpress-anonymous-tooltip"})]})]}),(0,Fe.jsxs)(Le.ButtonGroup,{className:"gatherpress-buttons wp-block-buttons",children:[(0,Fe.jsx)("div",{className:"gatherpress-buttons__container wp-block-button is-style-outline",children:(0,Fe.jsx)("a",{href:"#",onClick:e=>_(e,t,u,"not_attending"!==t?p:0,"not_attending"===t),className:"gatherpress-buttons__button wp-block-button__link",children:n})}),(0,Fe.jsx)("div",{className:"gatherpress-buttons__container wp-block-button",children:(0,Fe.jsx)("a",{href:"#",onClick:w,className:"gatherpress-buttons__button wp-block-button__link",children:(0,Me.__)("Close","gatherpress")})})]}),r&&"no_status"===l&&1!==u?(0,Fe.jsx)(Le.ButtonGroup,{className:"gatherpress-buttons wp-block-buttons",children:(0,Fe.jsx)("div",{className:"gatherpress-buttons__container wp-block-button",children:(0,Fe.jsx)("a",{href:"#",onClick:e=>_(e,"not_attending",null),className:"gatherpress-buttons__text-link",children:(0,Me._x)("Not Attending","Responded Status","gatherpress")})})}):(0,Fe.jsx)(Fe.Fragment,{})]})};return(0,Fe.jsxs)("div",{className:"gatherpress-rsvp",children:[(0,Fe.jsxs)(Le.ButtonGroup,{className:"gatherpress-buttons wp-block-buttons",children:[(0,Fe.jsx)("div",{className:"gatherpress-buttons__container wp-block-button",children:(0,Fe.jsx)("a",{href:"#",className:"gatherpress-buttons__button wp-block-button__link wp-element-button","aria-expanded":y,tabIndex:"0",onKeyDown:e=>{13===e.keyCode&&(m("hidden"===h?"show":"hidden"),v("false"===y?"true":"false"))},onClick:e=>(e=>{e.preventDefault(),b(!0)})(e),children:(e=>{switch(e){case"attending":case"waiting_list":case"not_attending":return(0,Me.__)("Edit RSVP","gatherpress")}return(0,Me.__)("RSVP","gatherpress")})(l)})}),(0,Fe.jsxs)(s(),{isOpen:g,onRequestClose:w,style:{overlay:{zIndex:999999999},content:{top:"50%",left:"50%",right:"auto",bottom:"auto",marginRight:"-50%",transform:"translate(-50%, -50%)"}},contentLabel:(0,Me.__)("Edit RSVP","gatherpress"),children:[0===t.length&&(0,Fe.jsx)(E,{}),0!==t.length&&(0,Fe.jsx)(S,{status:l})]})]}),"no_status"!==l&&(0,Fe.jsxs)("div",{className:"gatherpress-status",children:[(0,Fe.jsx)(Be,{type:n,status:l}),0{const{isSelected:t}=e,n=t?"none":"block";return(0,Fe.jsxs)("div",{style:{position:"relative"},children:[e.children,(0,Fe.jsx)("div",{style:{position:"absolute",top:"0",right:"0",bottom:"0",left:"0",display:n}})]})},Ve=JSON.parse('{"$schema":"https://schemas.wp.org/trunk/block.json","apiVersion":2,"name":"gatherpress/rsvp","version":"1.0.1","title":"RSVP","category":"gatherpress","icon":"insert","example":{},"description":"Enables members to easily confirm their attendance for an event.","attributes":{"content":{"type":"string"},"color":{"type":"string"}},"supports":{"html":false},"textdomain":"gatherpress","editorScript":"file:./index.js","style":"file:./style-index.css","viewScript":"file:./rsvp.js","render":"file:./render.php"}');(0,o.registerBlockType)(Ve,{edit:()=>{const e=(0,r.useBlockProps)(),t=He("eventDetails.postId"),n=He("eventDetails.currentUser");return(0,Fe.jsx)("div",{...e,children:(0,Fe.jsx)(We,{children:(0,Fe.jsx)(Ue,{postId:t,currentUser:n,type:"upcoming"})})})},save:()=>null})},5413:(e,t)=>{"use strict";var n;Object.defineProperty(t,"__esModule",{value:!0}),t.Doctype=t.CDATA=t.Tag=t.Style=t.Script=t.Comment=t.Directive=t.Text=t.Root=t.isTag=t.ElementType=void 0,function(e){e.Root="root",e.Text="text",e.Directive="directive",e.Comment="comment",e.Script="script",e.Style="style",e.Tag="tag",e.CDATA="cdata",e.Doctype="doctype"}(n=t.ElementType||(t.ElementType={})),t.isTag=function(e){return e.type===n.Tag||e.type===n.Script||e.type===n.Style},t.Root=n.Root,t.Text=n.Text,t.Directive=n.Directive,t.Comment=n.Comment,t.Script=n.Script,t.Style=n.Style,t.Tag=n.Tag,t.CDATA=n.CDATA,t.Doctype=n.Doctype},1141:function(e,t,n){"use strict";var o=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!("get"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,r)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||o(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),t.DomHandler=void 0;var i=n(5413),s=n(6957);r(n(6957),t);var l={withStartIndices:!1,withEndIndices:!1,xmlMode:!1},a=function(){function e(e,t,n){this.dom=[],this.root=new s.Document(this.dom),this.done=!1,this.tagStack=[this.root],this.lastNode=null,this.parser=null,"function"==typeof t&&(n=t,t=l),"object"==typeof e&&(t=e,e=void 0),this.callback=null!=e?e:null,this.options=null!=t?t:l,this.elementCB=null!=n?n:null}return e.prototype.onparserinit=function(e){this.parser=e},e.prototype.onreset=function(){this.dom=[],this.root=new s.Document(this.dom),this.done=!1,this.tagStack=[this.root],this.lastNode=null,this.parser=null},e.prototype.onend=function(){this.done||(this.done=!0,this.parser=null,this.handleCallback(null))},e.prototype.onerror=function(e){this.handleCallback(e)},e.prototype.onclosetag=function(){this.lastNode=null;var e=this.tagStack.pop();this.options.withEndIndices&&(e.endIndex=this.parser.endIndex),this.elementCB&&this.elementCB(e)},e.prototype.onopentag=function(e,t){var n=this.options.xmlMode?i.ElementType.Tag:void 0,o=new s.Element(e,t,void 0,n);this.addNode(o),this.tagStack.push(o)},e.prototype.ontext=function(e){var t=this.lastNode;if(t&&t.type===i.ElementType.Text)t.data+=e,this.options.withEndIndices&&(t.endIndex=this.parser.endIndex);else{var n=new s.Text(e);this.addNode(n),this.lastNode=n}},e.prototype.oncomment=function(e){if(this.lastNode&&this.lastNode.type===i.ElementType.Comment)this.lastNode.data+=e;else{var t=new s.Comment(e);this.addNode(t),this.lastNode=t}},e.prototype.oncommentend=function(){this.lastNode=null},e.prototype.oncdatastart=function(){var e=new s.Text(""),t=new s.CDATA([e]);this.addNode(t),e.parent=t,this.lastNode=e},e.prototype.oncdataend=function(){this.lastNode=null},e.prototype.onprocessinginstruction=function(e,t){var n=new s.ProcessingInstruction(e,t);this.addNode(n)},e.prototype.handleCallback=function(e){if("function"==typeof this.callback)this.callback(e,this.dom);else if(e)throw e},e.prototype.addNode=function(e){var t=this.tagStack[this.tagStack.length-1],n=t.children[t.children.length-1];this.options.withStartIndices&&(e.startIndex=this.parser.startIndex),this.options.withEndIndices&&(e.endIndex=this.parser.endIndex),t.children.push(e),n&&(e.prev=n,n.next=e),e.parent=t,this.lastNode=null},e}();t.DomHandler=a,t.default=a},6957:function(e,t,n){"use strict";var o,r=this&&this.__extends||(o=function(e,t){return o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},o(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function __(){this.constructor=e}o(e,t),e.prototype=null===t?Object.create(t):(__.prototype=t.prototype,new __)}),i=this&&this.__assign||function(){return i=Object.assign||function(e){for(var t,n=1,o=arguments.length;n0?this.children[this.children.length-1]:null},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"childNodes",{get:function(){return this.children},set:function(e){this.children=e},enumerable:!1,configurable:!0}),t}(l);t.NodeWithChildren=p;var f=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.type=s.ElementType.CDATA,t}return r(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 4},enumerable:!1,configurable:!0}),t}(p);t.CDATA=f;var h=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.type=s.ElementType.Root,t}return r(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 9},enumerable:!1,configurable:!0}),t}(p);t.Document=h;var m=function(e){function t(t,n,o,r){void 0===o&&(o=[]),void 0===r&&(r="script"===t?s.ElementType.Script:"style"===t?s.ElementType.Style:s.ElementType.Tag);var i=e.call(this,o)||this;return i.name=t,i.attribs=n,i.type=r,i}return r(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 1},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"tagName",{get:function(){return this.name},set:function(e){this.name=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"attributes",{get:function(){var e=this;return Object.keys(this.attribs).map((function(t){var n,o;return{name:t,value:e.attribs[t],namespace:null===(n=e["x-attribsNamespace"])||void 0===n?void 0:n[t],prefix:null===(o=e["x-attribsPrefix"])||void 0===o?void 0:o[t]}}))},enumerable:!1,configurable:!0}),t}(p);function y(e){return(0,s.isTag)(e)}function v(e){return e.type===s.ElementType.CDATA}function g(e){return e.type===s.ElementType.Text}function b(e){return e.type===s.ElementType.Comment}function w(e){return e.type===s.ElementType.Directive}function _(e){return e.type===s.ElementType.Root}function x(e,t){var n;if(void 0===t&&(t=!1),g(e))n=new c(e.data);else if(b(e))n=new u(e.data);else if(y(e)){var o=t?E(e.children):[],r=new m(e.name,i({},e.attribs),o);o.forEach((function(e){return e.parent=r})),null!=e.namespace&&(r.namespace=e.namespace),e["x-attribsNamespace"]&&(r["x-attribsNamespace"]=i({},e["x-attribsNamespace"])),e["x-attribsPrefix"]&&(r["x-attribsPrefix"]=i({},e["x-attribsPrefix"])),n=r}else if(v(e)){o=t?E(e.children):[];var s=new f(o);o.forEach((function(e){return e.parent=s})),n=s}else if(_(e)){o=t?E(e.children):[];var l=new h(o);o.forEach((function(e){return e.parent=l})),e["x-mode"]&&(l["x-mode"]=e["x-mode"]),n=l}else{if(!w(e))throw new Error("Not implemented yet: ".concat(e.type));var a=new d(e.name,e.data);null!=e["x-name"]&&(a["x-name"]=e["x-name"],a["x-publicId"]=e["x-publicId"],a["x-systemId"]=e["x-systemId"]),n=a}return n.startIndex=e.startIndex,n.endIndex=e.endIndex,null!=e.sourceCodeLocation&&(n.sourceCodeLocation=e.sourceCodeLocation),n}function E(e){for(var t=e.map((function(e){return x(e,!0)})),n=1;n{var o;!function(){"use strict";var r=!("undefined"==typeof window||!window.document||!window.document.createElement),i={canUseDOM:r,canUseWorkers:"undefined"!=typeof Worker,canUseEventListeners:r&&!(!window.addEventListener&&!window.attachEvent),canUseViewport:r&&!!window.screen};void 0===(o=function(){return i}.call(t,n,t,e))||(e.exports=o)}()},5270:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CASE_SENSITIVE_TAG_NAMES_MAP=t.CASE_SENSITIVE_TAG_NAMES=void 0,t.CASE_SENSITIVE_TAG_NAMES=["animateMotion","animateTransform","clipPath","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","foreignObject","linearGradient","radialGradient","textPath"],t.CASE_SENSITIVE_TAG_NAMES_MAP=t.CASE_SENSITIVE_TAG_NAMES.reduce((function(e,t){return e[t.toLowerCase()]=t,e}),{})},5496:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){var t,u,d=e.match(i),p=d&&d[1]?d[1].toLowerCase():"";switch(p){case n:var h=c(e);return s.test(e)||null===(t=null==(y=h.querySelector(o))?void 0:y.parentNode)||void 0===t||t.removeChild(y),l.test(e)||null===(u=null==(y=h.querySelector(r))?void 0:y.parentNode)||void 0===u||u.removeChild(y),h.querySelectorAll(n);case o:case r:var m=a(e).querySelectorAll(p);return l.test(e)&&s.test(e)?m[0].parentNode.childNodes:m;default:return f?f(e):(y=a(e,r).querySelector(r)).childNodes;var y}};var n="html",o="head",r="body",i=/<([a-zA-Z]+[0-9]?)/,s=//i,l=//i,a=function(e,t){throw new Error("This browser does not support `document.implementation.createHTMLDocument`")},c=function(e,t){throw new Error("This browser does not support `DOMParser.prototype.parseFromString`")},u="object"==typeof window&&window.DOMParser;if("function"==typeof u){var d=new u;a=c=function(e,t){return t&&(e="<".concat(t,">").concat(e,"")),d.parseFromString(e,"text/html")}}if("object"==typeof document&&document.implementation){var p=document.implementation.createHTMLDocument();a=function(e,t){if(t){var n=p.documentElement.querySelector(t);return n&&(n.innerHTML=e),p}return p.documentElement.innerHTML=e,p}}var f,h="object"==typeof document&&document.createElement("template");h&&h.content&&(f=function(e){return h.innerHTML=e,h.content.childNodes})},2471:function(e,t,n){"use strict";var o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){if("string"!=typeof e)throw new TypeError("First argument must be a string");if(!e)return[];var t=e.match(s),n=t?t[1]:void 0;return(0,i.formatDOM)((0,r.default)(e),null,n)};var r=o(n(5496)),i=n(7731),s=/<(![a-zA-Z\s]+)>/},7731:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.formatAttributes=i,t.formatDOM=function e(t,n,r){void 0===n&&(n=null);for(var l,a=[],c=0,u=t.length;c{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){void 0===e&&(e={});var n={},c=Boolean(e.type&&l[e.type]);for(var u in e){var d=e[u];if((0,o.isCustomAttribute)(u))n[u]=d;else{var p=u.toLowerCase(),f=a(p);if(f){var h=(0,o.getPropertyInfo)(f);switch(i.includes(f)&&s.includes(t)&&!c&&(f=a("default"+p)),n[f]=d,h&&h.type){case o.BOOLEAN:n[f]=!0;break;case o.OVERLOADED_BOOLEAN:""===d&&(n[f]=!0)}}else r.PRESERVE_CUSTOM_ATTRIBUTES&&(n[u]=d)}}return(0,r.setStyleProp)(e.style,n),n};var o=n(4210),r=n(4958),i=["checked","value"],s=["input","select","textarea"],l={reset:!0,submit:!0};function a(e){return o.possibleStandardNames[e]}},308:function(e,t,n){"use strict";var o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t,n){void 0===n&&(n={});for(var o=[],r="function"==typeof n.replace,c=n.transform||s.returnFirstArg,u=n.library||l,d=u.cloneElement,p=u.createElement,f=u.isValidElement,h=t.length,m=0;m1&&(v=d(v,{key:v.key||m})),o.push(c(v,y,m));continue}}if("text"!==y.type){var g=y,b={};a(g)?((0,s.setStyleProp)(g.attribs.style,g.attribs),b=g.attribs):g.attribs&&(b=(0,i.default)(g.attribs,g.name));var w=void 0;switch(y.type){case"script":case"style":y.children[0]&&(b.dangerouslySetInnerHTML={__html:y.children[0].data});break;case"tag":"textarea"===y.name&&y.children[0]?b.defaultValue=y.children[0].data:y.children&&y.children.length&&(w=e(y.children,n));break;default:continue}h>1&&(b.key=m),o.push(c(p(y.name,b,w),y,m))}else{var _=!y.data.trim().length;if(_&&y.parent&&!(0,s.canTextBeChildOfNode)(y.parent))continue;if(n.trim&&_)continue;o.push(c(y.data,y,m))}}return 1===o.length?o[0]:o};var r=n(1609),i=o(n(840)),s=n(4958),l={cloneElement:r.cloneElement,createElement:r.createElement,isValidElement:r.isValidElement};function a(e){return s.PRESERVE_CUSTOM_ATTRIBUTES&&"tag"===e.type&&(0,s.isCustomComponent)(e.name,e.attribs)}},442:function(e,t,n){"use strict";var o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.htmlToDOM=t.domToReact=t.attributesToProps=t.Text=t.ProcessingInstruction=t.Element=t.Comment=void 0,t.default=function(e,t){if("string"!=typeof e)throw new TypeError("First argument must be a string");return e?(0,s.default)((0,r.default)(e,(null==t?void 0:t.htmlparser2)||a),t):[]};var r=o(n(2471));t.htmlToDOM=r.default;var i=o(n(840));t.attributesToProps=i.default;var s=o(n(308));t.domToReact=s.default;var l=n(1141);Object.defineProperty(t,"Comment",{enumerable:!0,get:function(){return l.Comment}}),Object.defineProperty(t,"Element",{enumerable:!0,get:function(){return l.Element}}),Object.defineProperty(t,"ProcessingInstruction",{enumerable:!0,get:function(){return l.ProcessingInstruction}}),Object.defineProperty(t,"Text",{enumerable:!0,get:function(){return l.Text}});var a={lowerCaseAttributeNames:!1}},4958:function(e,t,n){"use strict";var o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.returnFirstArg=t.canTextBeChildOfNode=t.ELEMENTS_WITH_NO_TEXT_CHILDREN=t.PRESERVE_CUSTOM_ATTRIBUTES=void 0,t.isCustomComponent=function(e,t){return e.includes("-")?!s.has(e):Boolean(t&&"string"==typeof t.is)},t.setStyleProp=function(e,t){if("string"==typeof e)if(e.trim())try{t.style=(0,i.default)(e,l)}catch(e){t.style={}}else t.style={}};var r=n(1609),i=o(n(5229)),s=new Set(["annotation-xml","color-profile","font-face","font-face-src","font-face-uri","font-face-format","font-face-name","missing-glyph"]),l={reactCompat:!0};t.PRESERVE_CUSTOM_ATTRIBUTES=Number(r.version.split(".")[0])>=16,t.ELEMENTS_WITH_NO_TEXT_CHILDREN=new Set(["tr","tbody","thead","tfoot","colgroup","table","head","html","frameset"]),t.canTextBeChildOfNode=function(e){return!t.ELEMENTS_WITH_NO_TEXT_CHILDREN.has(e.name)},t.returnFirstArg=function(e){return e}},9788:e=>{var t=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,n=/\n/g,o=/^\s*/,r=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,i=/^:\s*/,s=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,l=/^[;\s]*/,a=/^\s+|\s+$/g,c="";function u(e){return e?e.replace(a,c):c}e.exports=function(e,a){if("string"!=typeof e)throw new TypeError("First argument must be a string");if(!e)return[];a=a||{};var d=1,p=1;function f(e){var t=e.match(n);t&&(d+=t.length);var o=e.lastIndexOf("\n");p=~o?e.length-o:p+e.length}function h(){var e={line:d,column:p};return function(t){return t.position=new m(e),b(),t}}function m(e){this.start=e,this.end={line:d,column:p},this.source=a.source}m.prototype.content=e;var y=[];function v(t){var n=new Error(a.source+":"+d+":"+p+": "+t);if(n.reason=t,n.filename=a.source,n.line=d,n.column=p,n.source=e,!a.silent)throw n;y.push(n)}function g(t){var n=t.exec(e);if(n){var o=n[0];return f(o),e=e.slice(o.length),n}}function b(){g(o)}function w(e){var t;for(e=e||[];t=_();)!1!==t&&e.push(t);return e}function _(){var t=h();if("/"==e.charAt(0)&&"*"==e.charAt(1)){for(var n=2;c!=e.charAt(n)&&("*"!=e.charAt(n)||"/"!=e.charAt(n+1));)++n;if(n+=2,c===e.charAt(n-1))return v("End of comment missing");var o=e.slice(2,n-2);return p+=2,f(o),e=e.slice(n),p+=2,t({type:"comment",comment:o})}}function x(){var e=h(),n=g(r);if(n){if(_(),!g(i))return v("property missing ':'");var o=g(s),a=e({type:"declaration",property:u(n[0].replace(t,c)),value:o?u(o[0].replace(t,c)):c});return g(l),a}}return b(),function(){var e,t=[];for(w(t);e=x();)!1!==e&&(t.push(e),w(t));return t}()}},2694:(e,t,n)=>{"use strict";var o=n(6925);function r(){}function i(){}i.resetWarningCache=r,e.exports=function(){function e(e,t,n,r,i,s){if(s!==o){var l=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw l.name="Invariant Violation",l}}function t(){return e}e.isRequired=e;var n={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:i,resetWarningCache:r};return n.PropTypes=n,n}},5556:(e,t,n)=>{e.exports=n(2694)()},6925:e=>{"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},1345:(e,t,n)=>{"use strict";function o(){var e=this.constructor.getDerivedStateFromProps(this.props,this.state);null!=e&&this.setState(e)}function r(e){this.setState(function(t){var n=this.constructor.getDerivedStateFromProps(e,t);return null!=n?n:null}.bind(this))}function i(e,t){try{var n=this.props,o=this.state;this.props=e,this.state=t,this.__reactInternalSnapshotFlag=!0,this.__reactInternalSnapshot=this.getSnapshotBeforeUpdate(n,o)}finally{this.props=n,this.state=o}}function s(e){var t=e.prototype;if(!t||!t.isReactComponent)throw new Error("Can only polyfill class components");if("function"!=typeof e.getDerivedStateFromProps&&"function"!=typeof t.getSnapshotBeforeUpdate)return e;var n=null,s=null,l=null;if("function"==typeof t.componentWillMount?n="componentWillMount":"function"==typeof t.UNSAFE_componentWillMount&&(n="UNSAFE_componentWillMount"),"function"==typeof t.componentWillReceiveProps?s="componentWillReceiveProps":"function"==typeof t.UNSAFE_componentWillReceiveProps&&(s="UNSAFE_componentWillReceiveProps"),"function"==typeof t.componentWillUpdate?l="componentWillUpdate":"function"==typeof t.UNSAFE_componentWillUpdate&&(l="UNSAFE_componentWillUpdate"),null!==n||null!==s||null!==l){var a=e.displayName||e.name,c="function"==typeof e.getDerivedStateFromProps?"getDerivedStateFromProps()":"getSnapshotBeforeUpdate()";throw Error("Unsafe legacy lifecycles will not be called for components using new component APIs.\n\n"+a+" uses "+c+" but also contains the following legacy lifecycles:"+(null!==n?"\n "+n:"")+(null!==s?"\n "+s:"")+(null!==l?"\n "+l:"")+"\n\nThe above lifecycles should be removed. Learn more about this warning here:\nhttps://fb.me/react-async-component-lifecycle-hooks")}if("function"==typeof e.getDerivedStateFromProps&&(t.componentWillMount=o,t.componentWillReceiveProps=r),"function"==typeof t.getSnapshotBeforeUpdate){if("function"!=typeof t.componentDidUpdate)throw new Error("Cannot polyfill getSnapshotBeforeUpdate() for components that do not define componentDidUpdate() on the prototype");t.componentWillUpdate=i;var u=t.componentDidUpdate;t.componentDidUpdate=function(e,t,n){var o=this.__reactInternalSnapshotFlag?this.__reactInternalSnapshot:n;u.call(this,e,t,o)}}return e}n.r(t),n.d(t,{polyfill:()=>s}),o.__suppressDeprecationWarning=!0,r.__suppressDeprecationWarning=!0,i.__suppressDeprecationWarning=!0},1720:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.bodyOpenClassName=t.portalClassName=void 0;var o=Object.assign||function(e){for(var t=1;t{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=Object.assign||function(e){for(var t=1;t0&&0==(g-=1)&&u.show(t),n.props.shouldFocusAfterRender&&(n.props.shouldReturnFocusAfterClose?(a.returnFocus(n.props.preventScroll),a.teardownScopedFocus()):a.popWithoutFocus()),n.props.onAfterClose&&n.props.onAfterClose(),h.default.deregister(n)},n.open=function(){n.beforeOpen(),n.state.afterOpen&&n.state.beforeClose?(clearTimeout(n.closeTimer),n.setState({beforeClose:!1})):(n.props.shouldFocusAfterRender&&(a.setupScopedFocus(n.node),a.markForFocusLater()),n.setState({isOpen:!0},(function(){n.openAnimationFrame=requestAnimationFrame((function(){n.setState({afterOpen:!0}),n.props.isOpen&&n.props.onAfterOpen&&n.props.onAfterOpen({overlayEl:n.overlay,contentEl:n.content})}))})))},n.close=function(){n.props.closeTimeoutMS>0?n.closeWithTimeout():n.closeWithoutTimeout()},n.focusContent=function(){return n.content&&!n.contentHasFocus()&&n.content.focus({preventScroll:!0})},n.closeWithTimeout=function(){var e=Date.now()+n.props.closeTimeoutMS;n.setState({beforeClose:!0,closesAt:e},(function(){n.closeTimer=setTimeout(n.closeWithoutTimeout,n.state.closesAt-Date.now())}))},n.closeWithoutTimeout=function(){n.setState({beforeClose:!1,isOpen:!1,afterOpen:!1,closesAt:null},n.afterClose)},n.handleKeyDown=function(e){(function(e){return"Tab"===e.code||9===e.keyCode})(e)&&(0,c.default)(n.content,e),n.props.shouldCloseOnEsc&&function(e){return"Escape"===e.code||27===e.keyCode}(e)&&(e.stopPropagation(),n.requestClose(e))},n.handleOverlayOnClick=function(e){null===n.shouldClose&&(n.shouldClose=!0),n.shouldClose&&n.props.shouldCloseOnOverlayClick&&(n.ownerHandlesClose()?n.requestClose(e):n.focusContent()),n.shouldClose=null},n.handleContentOnMouseUp=function(){n.shouldClose=!1},n.handleOverlayOnMouseDown=function(e){n.props.shouldCloseOnOverlayClick||e.target!=n.overlay||e.preventDefault()},n.handleContentOnClick=function(){n.shouldClose=!1},n.handleContentOnMouseDown=function(){n.shouldClose=!1},n.requestClose=function(e){return n.ownerHandlesClose()&&n.props.onRequestClose(e)},n.ownerHandlesClose=function(){return n.props.onRequestClose},n.shouldBeClosed=function(){return!n.state.isOpen&&!n.state.beforeClose},n.contentHasFocus=function(){return document.activeElement===n.content||n.content.contains(document.activeElement)},n.buildClassName=function(e,t){var o="object"===(void 0===t?"undefined":r(t))?t:{base:v[e],afterOpen:v[e]+"--after-open",beforeClose:v[e]+"--before-close"},i=o.base;return n.state.afterOpen&&(i=i+" "+o.afterOpen),n.state.beforeClose&&(i=i+" "+o.beforeClose),"string"==typeof t&&t?i+" "+t:i},n.attributesFromObject=function(e,t){return Object.keys(t).reduce((function(n,o){return n[e+"-"+o]=t[o],n}),{})},n.state={afterOpen:!1,beforeClose:!1},n.shouldClose=null,n.moveFromContentToOverlay=null,n}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,e),i(t,[{key:"componentDidMount",value:function(){this.props.isOpen&&this.open()}},{key:"componentDidUpdate",value:function(e,t){this.props.isOpen&&!e.isOpen?this.open():!this.props.isOpen&&e.isOpen&&this.close(),this.props.shouldFocusAfterRender&&this.state.isOpen&&!t.isOpen&&this.focusContent()}},{key:"componentWillUnmount",value:function(){this.state.isOpen&&this.afterClose(),clearTimeout(this.closeTimer),cancelAnimationFrame(this.openAnimationFrame)}},{key:"beforeOpen",value:function(){var e=this.props,t=e.appElement,n=e.ariaHideApp,o=e.htmlOpenClassName,r=e.bodyOpenClassName,i=e.parentSelector,s=i&&i().ownerDocument||document;r&&d.add(s.body,r),o&&d.add(s.getElementsByTagName("html")[0],o),n&&(g+=1,u.hide(t)),h.default.register(this)}},{key:"render",value:function(){var e=this.props,t=e.id,n=e.className,r=e.overlayClassName,i=e.defaultStyles,s=e.children,l=n?{}:i.content,a=r?{}:i.overlay;if(this.shouldBeClosed())return null;var c={ref:this.setOverlayRef,className:this.buildClassName("overlay",r),style:o({},a,this.props.style.overlay),onClick:this.handleOverlayOnClick,onMouseDown:this.handleOverlayOnMouseDown},u=o({id:t,ref:this.setContentRef,style:o({},l,this.props.style.content),className:this.buildClassName("content",n),tabIndex:"-1",onKeyDown:this.handleKeyDown,onMouseDown:this.handleContentOnMouseDown,onMouseUp:this.handleContentOnMouseUp,onClick:this.handleContentOnClick,role:this.props.role,"aria-label":this.props.contentLabel},this.attributesFromObject("aria",o({modal:!0},this.props.aria)),this.attributesFromObject("data",this.props.data||{}),{"data-testid":this.props.testId}),d=this.props.contentElement(u,s);return this.props.overlayElement(c,d)}}]),t}(s.Component);b.defaultProps={style:{overlay:{},content:{}},defaultStyles:{}},b.propTypes={isOpen:l.default.bool.isRequired,defaultStyles:l.default.shape({content:l.default.object,overlay:l.default.object}),style:l.default.shape({content:l.default.object,overlay:l.default.object}),className:l.default.oneOfType([l.default.string,l.default.object]),overlayClassName:l.default.oneOfType([l.default.string,l.default.object]),parentSelector:l.default.func,bodyOpenClassName:l.default.string,htmlOpenClassName:l.default.string,ariaHideApp:l.default.bool,appElement:l.default.oneOfType([l.default.instanceOf(f.default),l.default.instanceOf(p.SafeHTMLCollection),l.default.instanceOf(p.SafeNodeList),l.default.arrayOf(l.default.instanceOf(f.default))]),onAfterOpen:l.default.func,onAfterClose:l.default.func,onRequestClose:l.default.func,closeTimeoutMS:l.default.number,shouldFocusAfterRender:l.default.bool,shouldCloseOnOverlayClick:l.default.bool,shouldReturnFocusAfterClose:l.default.bool,preventScroll:l.default.bool,role:l.default.string,contentLabel:l.default.string,aria:l.default.object,data:l.default.object,children:l.default.node,shouldCloseOnEsc:l.default.bool,overlayRef:l.default.func,contentRef:l.default.func,id:l.default.string,overlayElement:l.default.func,contentElement:l.default.func,testId:l.default.string},t.default=b,e.exports=t.default},6462:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.resetState=function(){s&&(s.removeAttribute?s.removeAttribute("aria-hidden"):null!=s.length?s.forEach((function(e){return e.removeAttribute("aria-hidden")})):document.querySelectorAll(s).forEach((function(e){return e.removeAttribute("aria-hidden")}))),s=null},t.log=function(){},t.assertNodeList=l,t.setElement=function(e){var t=e;if("string"==typeof t&&i.canUseDOM){var n=document.querySelectorAll(t);l(n,t),t=n}return s=t||s},t.validateElement=a,t.hide=function(e){var t=!0,n=!1,o=void 0;try{for(var r,i=a(e)[Symbol.iterator]();!(t=(r=i.next()).done);t=!0)r.value.setAttribute("aria-hidden","true")}catch(e){n=!0,o=e}finally{try{!t&&i.return&&i.return()}finally{if(n)throw o}}},t.show=function(e){var t=!0,n=!1,o=void 0;try{for(var r,i=a(e)[Symbol.iterator]();!(t=(r=i.next()).done);t=!0)r.value.removeAttribute("aria-hidden")}catch(e){n=!0,o=e}finally{try{!t&&i.return&&i.return()}finally{if(n)throw o}}},t.documentNotReadyOrSSRTesting=function(){s=null};var o,r=(o=n(9771))&&o.__esModule?o:{default:o},i=n(834),s=null;function l(e,t){if(!e||!e.length)throw new Error("react-modal: No elements were found for selector "+t+".")}function a(e){var t=e||s;return t?Array.isArray(t)||t instanceof HTMLCollection||t instanceof NodeList?t:[t]:((0,r.default)(!1,["react-modal: App element is not defined.","Please use `Modal.setAppElement(el)` or set `appElement={el}`.","This is needed so screen readers don't see main content","when modal is opened. It is not recommended, but you can opt-out","by setting `ariaHideApp={false}`."].join(" ")),[])}},7727:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.resetState=function(){for(var e=[i,s],t=0;t0?(document.body.firstChild!==i&&document.body.insertBefore(i,document.body.firstChild),document.body.lastChild!==s&&document.body.appendChild(s)):(i.parentElement&&i.parentElement.removeChild(i),s.parentElement&&s.parentElement.removeChild(s))}))},4838:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.resetState=function(){var e=document.getElementsByTagName("html")[0];for(var t in n)r(e,n[t]);var i=document.body;for(var s in o)r(i,o[s]);n={},o={}},t.log=function(){};var n={},o={};function r(e,t){e.classList.remove(t)}t.add=function(e,t){return r=e.classList,i="html"==e.nodeName.toLowerCase()?n:o,void t.split(" ").forEach((function(e){!function(e,t){e[t]||(e[t]=0),e[t]+=1}(i,e),r.add(e)}));var r,i},t.remove=function(e,t){return r=e.classList,i="html"==e.nodeName.toLowerCase()?n:o,void t.split(" ").forEach((function(e){!function(e,t){e[t]&&(e[t]-=1)}(i,e),0===i[e]&&r.remove(e)}));var r,i}},7791:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.resetState=function(){i=[]},t.log=function(){},t.handleBlur=a,t.handleFocus=c,t.markForFocusLater=function(){i.push(document.activeElement)},t.returnFocus=function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=null;try{return void(0!==i.length&&(t=i.pop()).focus({preventScroll:e}))}catch(e){console.warn(["You tried to return focus to",t,"but it is not in the DOM anymore"].join(" "))}},t.popWithoutFocus=function(){i.length>0&&i.pop()},t.setupScopedFocus=function(e){s=e,window.addEventListener?(window.addEventListener("blur",a,!1),document.addEventListener("focus",c,!0)):(window.attachEvent("onBlur",a),document.attachEvent("onFocus",c))},t.teardownScopedFocus=function(){s=null,window.addEventListener?(window.removeEventListener("blur",a),document.removeEventListener("focus",c)):(window.detachEvent("onBlur",a),document.detachEvent("onFocus",c))};var o,r=(o=n(2411))&&o.__esModule?o:{default:o},i=[],s=null,l=!1;function a(){l=!0}function c(){if(l){if(l=!1,!s)return;setTimeout((function(){s.contains(document.activeElement)||((0,r.default)(s)[0]||s).focus()}),0)}}},9628:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.log=function(){console.log("portalOpenInstances ----------"),console.log(o.openInstances.length),o.openInstances.forEach((function(e){return console.log(e)})),console.log("end portalOpenInstances ----------")},t.resetState=function(){o=new n};var n=function e(){var t=this;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.register=function(e){-1===t.openInstances.indexOf(e)&&(t.openInstances.push(e),t.emit("register"))},this.deregister=function(e){var n=t.openInstances.indexOf(e);-1!==n&&(t.openInstances.splice(n,1),t.emit("deregister"))},this.subscribe=function(e){t.subscribers.push(e)},this.emit=function(e){t.subscribers.forEach((function(n){return n(e,t.openInstances.slice())}))},this.openInstances=[],this.subscribers=[]},o=new n;t.default=o},834:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.canUseDOM=t.SafeNodeList=t.SafeHTMLCollection=void 0;var o,r=((o=n(411))&&o.__esModule?o:{default:o}).default,i=r.canUseDOM?window.HTMLElement:{};t.SafeHTMLCollection=r.canUseDOM?window.HTMLCollection:{},t.SafeNodeList=r.canUseDOM?window.NodeList:{},t.canUseDOM=r.canUseDOM,t.default=i},7067:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){var n=(0,r.default)(e);if(n.length){var o=void 0,s=t.shiftKey,l=n[0],a=n[n.length-1],c=i();if(e===c){if(!s)return;o=a}if(a!==c||s||(o=l),l===c&&s&&(o=a),o)return t.preventDefault(),void o.focus();var u=/(\bChrome\b|\bSafari\b)\//.exec(navigator.userAgent);if(null!=u&&"Chrome"!=u[1]&&null==/\biPod\b|\biPad\b/g.exec(navigator.userAgent)){var d=n.indexOf(c);if(d>-1&&(d+=s?-1:1),void 0===(o=n[d]))return t.preventDefault(),void(o=s?a:l).focus();t.preventDefault(),o.focus()}}else t.preventDefault()};var o,r=(o=n(2411))&&o.__esModule?o:{default:o};function i(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:document;return e.activeElement.shadowRoot?i(e.activeElement.shadowRoot):e.activeElement}e.exports=t.default},2411:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t){return[].slice.call(t.querySelectorAll("*"),0).reduce((function(t,n){return t.concat(n.shadowRoot?e(n.shadowRoot):[n])}),[]).filter(s)};var n="none",o="contents",r=/input|select|textarea|button|object|iframe/;function i(e){var t=e.offsetWidth<=0&&e.offsetHeight<=0;if(t&&!e.innerHTML)return!0;try{var r=window.getComputedStyle(e),i=r.getPropertyValue("display");return t?i!==o&&function(e,t){return"visible"!==t.getPropertyValue("overflow")||e.scrollWidth<=0&&e.scrollHeight<=0}(e,r):i===n}catch(e){return console.warn("Failed to inspect element style"),!1}}function s(e){var t=e.getAttribute("tabindex");null===t&&(t=void 0);var n=isNaN(t);return(n||t>=0)&&function(e,t){var n=e.nodeName.toLowerCase();return(r.test(n)&&!e.disabled||"a"===n&&e.href||t)&&function(e){for(var t=e,n=e.getRootNode&&e.getRootNode();t&&t!==document.body;){if(n&&t===n&&(t=n.host.parentNode),i(t))return!1;t=t.parentNode}return!0}(e)}(e,!n)}e.exports=t.default},312:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o,r=(o=n(1720))&&o.__esModule?o:{default:o};t.default=r.default,e.exports=t.default},4210:(e,t,n)=>{"use strict";function o(e,t,n,o,r,i,s){this.acceptsBooleans=2===t||3===t||4===t,this.attributeName=o,this.attributeNamespace=r,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=i,this.removeEmptyString=s}const r={};["children","dangerouslySetInnerHTML","defaultValue","defaultChecked","innerHTML","suppressContentEditableWarning","suppressHydrationWarning","style"].forEach((e=>{r[e]=new o(e,0,!1,e,null,!1,!1)})),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach((([e,t])=>{r[e]=new o(e,1,!1,t,null,!1,!1)})),["contentEditable","draggable","spellCheck","value"].forEach((e=>{r[e]=new o(e,2,!1,e.toLowerCase(),null,!1,!1)})),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach((e=>{r[e]=new o(e,2,!1,e,null,!1,!1)})),["allowFullScreen","async","autoFocus","autoPlay","controls","default","defer","disabled","disablePictureInPicture","disableRemotePlayback","formNoValidate","hidden","loop","noModule","noValidate","open","playsInline","readOnly","required","reversed","scoped","seamless","itemScope"].forEach((e=>{r[e]=new o(e,3,!1,e.toLowerCase(),null,!1,!1)})),["checked","multiple","muted","selected"].forEach((e=>{r[e]=new o(e,3,!0,e,null,!1,!1)})),["capture","download"].forEach((e=>{r[e]=new o(e,4,!1,e,null,!1,!1)})),["cols","rows","size","span"].forEach((e=>{r[e]=new o(e,6,!1,e,null,!1,!1)})),["rowSpan","start"].forEach((e=>{r[e]=new o(e,5,!1,e.toLowerCase(),null,!1,!1)}));const i=/[\-\:]([a-z])/g,s=e=>e[1].toUpperCase();["accent-height","alignment-baseline","arabic-form","baseline-shift","cap-height","clip-path","clip-rule","color-interpolation","color-interpolation-filters","color-profile","color-rendering","dominant-baseline","enable-background","fill-opacity","fill-rule","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","glyph-name","glyph-orientation-horizontal","glyph-orientation-vertical","horiz-adv-x","horiz-origin-x","image-rendering","letter-spacing","lighting-color","marker-end","marker-mid","marker-start","overline-position","overline-thickness","paint-order","panose-1","pointer-events","rendering-intent","shape-rendering","stop-color","stop-opacity","strikethrough-position","strikethrough-thickness","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","text-anchor","text-decoration","text-rendering","underline-position","underline-thickness","unicode-bidi","unicode-range","units-per-em","v-alphabetic","v-hanging","v-ideographic","v-mathematical","vector-effect","vert-adv-y","vert-origin-x","vert-origin-y","word-spacing","writing-mode","xmlns:xlink","x-height"].forEach((e=>{const t=e.replace(i,s);r[t]=new o(t,1,!1,e,null,!1,!1)})),["xlink:actuate","xlink:arcrole","xlink:role","xlink:show","xlink:title","xlink:type"].forEach((e=>{const t=e.replace(i,s);r[t]=new o(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)})),["xml:base","xml:lang","xml:space"].forEach((e=>{const t=e.replace(i,s);r[t]=new o(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)})),["tabIndex","crossOrigin"].forEach((e=>{r[e]=new o(e,1,!1,e.toLowerCase(),null,!1,!1)})),r.xlinkHref=new o("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach((e=>{r[e]=new o(e,1,!1,e.toLowerCase(),null,!0,!0)}));const{CAMELCASE:l,SAME:a,possibleStandardNames:c}=n(6811),u=RegExp.prototype.test.bind(new RegExp("^(data|aria)-[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$")),d=Object.keys(c).reduce(((e,t)=>{const n=c[t];return n===a?e[t]=t:n===l?e[t.toLowerCase()]=t:e[t]=n,e}),{});t.BOOLEAN=3,t.BOOLEANISH_STRING=2,t.NUMERIC=5,t.OVERLOADED_BOOLEAN=4,t.POSITIVE_NUMERIC=6,t.RESERVED=0,t.STRING=1,t.getPropertyInfo=function(e){return r.hasOwnProperty(e)?r[e]:null},t.isCustomAttribute=u,t.possibleStandardNames=d},6811:(e,t)=>{t.SAME=0,t.CAMELCASE=1,t.possibleStandardNames={accept:0,acceptCharset:1,"accept-charset":"acceptCharset",accessKey:1,action:0,allowFullScreen:1,alt:0,as:0,async:0,autoCapitalize:1,autoComplete:1,autoCorrect:1,autoFocus:1,autoPlay:1,autoSave:1,capture:0,cellPadding:1,cellSpacing:1,challenge:0,charSet:1,checked:0,children:0,cite:0,class:"className",classID:1,className:1,cols:0,colSpan:1,content:0,contentEditable:1,contextMenu:1,controls:0,controlsList:1,coords:0,crossOrigin:1,dangerouslySetInnerHTML:1,data:0,dateTime:1,default:0,defaultChecked:1,defaultValue:1,defer:0,dir:0,disabled:0,disablePictureInPicture:1,disableRemotePlayback:1,download:0,draggable:0,encType:1,enterKeyHint:1,for:"htmlFor",form:0,formMethod:1,formAction:1,formEncType:1,formNoValidate:1,formTarget:1,frameBorder:1,headers:0,height:0,hidden:0,high:0,href:0,hrefLang:1,htmlFor:1,httpEquiv:1,"http-equiv":"httpEquiv",icon:0,id:0,innerHTML:1,inputMode:1,integrity:0,is:0,itemID:1,itemProp:1,itemRef:1,itemScope:1,itemType:1,keyParams:1,keyType:1,kind:0,label:0,lang:0,list:0,loop:0,low:0,manifest:0,marginWidth:1,marginHeight:1,max:0,maxLength:1,media:0,mediaGroup:1,method:0,min:0,minLength:1,multiple:0,muted:0,name:0,noModule:1,nonce:0,noValidate:1,open:0,optimum:0,pattern:0,placeholder:0,playsInline:1,poster:0,preload:0,profile:0,radioGroup:1,readOnly:1,referrerPolicy:1,rel:0,required:0,reversed:0,role:0,rows:0,rowSpan:1,sandbox:0,scope:0,scoped:0,scrolling:0,seamless:0,selected:0,shape:0,size:0,sizes:0,span:0,spellCheck:1,src:0,srcDoc:1,srcLang:1,srcSet:1,start:0,step:0,style:0,summary:0,tabIndex:1,target:0,title:0,type:0,useMap:1,value:0,width:0,wmode:0,wrap:0,about:0,accentHeight:1,"accent-height":"accentHeight",accumulate:0,additive:0,alignmentBaseline:1,"alignment-baseline":"alignmentBaseline",allowReorder:1,alphabetic:0,amplitude:0,arabicForm:1,"arabic-form":"arabicForm",ascent:0,attributeName:1,attributeType:1,autoReverse:1,azimuth:0,baseFrequency:1,baselineShift:1,"baseline-shift":"baselineShift",baseProfile:1,bbox:0,begin:0,bias:0,by:0,calcMode:1,capHeight:1,"cap-height":"capHeight",clip:0,clipPath:1,"clip-path":"clipPath",clipPathUnits:1,clipRule:1,"clip-rule":"clipRule",color:0,colorInterpolation:1,"color-interpolation":"colorInterpolation",colorInterpolationFilters:1,"color-interpolation-filters":"colorInterpolationFilters",colorProfile:1,"color-profile":"colorProfile",colorRendering:1,"color-rendering":"colorRendering",contentScriptType:1,contentStyleType:1,cursor:0,cx:0,cy:0,d:0,datatype:0,decelerate:0,descent:0,diffuseConstant:1,direction:0,display:0,divisor:0,dominantBaseline:1,"dominant-baseline":"dominantBaseline",dur:0,dx:0,dy:0,edgeMode:1,elevation:0,enableBackground:1,"enable-background":"enableBackground",end:0,exponent:0,externalResourcesRequired:1,fill:0,fillOpacity:1,"fill-opacity":"fillOpacity",fillRule:1,"fill-rule":"fillRule",filter:0,filterRes:1,filterUnits:1,floodOpacity:1,"flood-opacity":"floodOpacity",floodColor:1,"flood-color":"floodColor",focusable:0,fontFamily:1,"font-family":"fontFamily",fontSize:1,"font-size":"fontSize",fontSizeAdjust:1,"font-size-adjust":"fontSizeAdjust",fontStretch:1,"font-stretch":"fontStretch",fontStyle:1,"font-style":"fontStyle",fontVariant:1,"font-variant":"fontVariant",fontWeight:1,"font-weight":"fontWeight",format:0,from:0,fx:0,fy:0,g1:0,g2:0,glyphName:1,"glyph-name":"glyphName",glyphOrientationHorizontal:1,"glyph-orientation-horizontal":"glyphOrientationHorizontal",glyphOrientationVertical:1,"glyph-orientation-vertical":"glyphOrientationVertical",glyphRef:1,gradientTransform:1,gradientUnits:1,hanging:0,horizAdvX:1,"horiz-adv-x":"horizAdvX",horizOriginX:1,"horiz-origin-x":"horizOriginX",ideographic:0,imageRendering:1,"image-rendering":"imageRendering",in2:0,in:0,inlist:0,intercept:0,k1:0,k2:0,k3:0,k4:0,k:0,kernelMatrix:1,kernelUnitLength:1,kerning:0,keyPoints:1,keySplines:1,keyTimes:1,lengthAdjust:1,letterSpacing:1,"letter-spacing":"letterSpacing",lightingColor:1,"lighting-color":"lightingColor",limitingConeAngle:1,local:0,markerEnd:1,"marker-end":"markerEnd",markerHeight:1,markerMid:1,"marker-mid":"markerMid",markerStart:1,"marker-start":"markerStart",markerUnits:1,markerWidth:1,mask:0,maskContentUnits:1,maskUnits:1,mathematical:0,mode:0,numOctaves:1,offset:0,opacity:0,operator:0,order:0,orient:0,orientation:0,origin:0,overflow:0,overlinePosition:1,"overline-position":"overlinePosition",overlineThickness:1,"overline-thickness":"overlineThickness",paintOrder:1,"paint-order":"paintOrder",panose1:0,"panose-1":"panose1",pathLength:1,patternContentUnits:1,patternTransform:1,patternUnits:1,pointerEvents:1,"pointer-events":"pointerEvents",points:0,pointsAtX:1,pointsAtY:1,pointsAtZ:1,prefix:0,preserveAlpha:1,preserveAspectRatio:1,primitiveUnits:1,property:0,r:0,radius:0,refX:1,refY:1,renderingIntent:1,"rendering-intent":"renderingIntent",repeatCount:1,repeatDur:1,requiredExtensions:1,requiredFeatures:1,resource:0,restart:0,result:0,results:0,rotate:0,rx:0,ry:0,scale:0,security:0,seed:0,shapeRendering:1,"shape-rendering":"shapeRendering",slope:0,spacing:0,specularConstant:1,specularExponent:1,speed:0,spreadMethod:1,startOffset:1,stdDeviation:1,stemh:0,stemv:0,stitchTiles:1,stopColor:1,"stop-color":"stopColor",stopOpacity:1,"stop-opacity":"stopOpacity",strikethroughPosition:1,"strikethrough-position":"strikethroughPosition",strikethroughThickness:1,"strikethrough-thickness":"strikethroughThickness",string:0,stroke:0,strokeDasharray:1,"stroke-dasharray":"strokeDasharray",strokeDashoffset:1,"stroke-dashoffset":"strokeDashoffset",strokeLinecap:1,"stroke-linecap":"strokeLinecap",strokeLinejoin:1,"stroke-linejoin":"strokeLinejoin",strokeMiterlimit:1,"stroke-miterlimit":"strokeMiterlimit",strokeWidth:1,"stroke-width":"strokeWidth",strokeOpacity:1,"stroke-opacity":"strokeOpacity",suppressContentEditableWarning:1,suppressHydrationWarning:1,surfaceScale:1,systemLanguage:1,tableValues:1,targetX:1,targetY:1,textAnchor:1,"text-anchor":"textAnchor",textDecoration:1,"text-decoration":"textDecoration",textLength:1,textRendering:1,"text-rendering":"textRendering",to:0,transform:0,typeof:0,u1:0,u2:0,underlinePosition:1,"underline-position":"underlinePosition",underlineThickness:1,"underline-thickness":"underlineThickness",unicode:0,unicodeBidi:1,"unicode-bidi":"unicodeBidi",unicodeRange:1,"unicode-range":"unicodeRange",unitsPerEm:1,"units-per-em":"unitsPerEm",unselectable:0,vAlphabetic:1,"v-alphabetic":"vAlphabetic",values:0,vectorEffect:1,"vector-effect":"vectorEffect",version:0,vertAdvY:1,"vert-adv-y":"vertAdvY",vertOriginX:1,"vert-origin-x":"vertOriginX",vertOriginY:1,"vert-origin-y":"vertOriginY",vHanging:1,"v-hanging":"vHanging",vIdeographic:1,"v-ideographic":"vIdeographic",viewBox:1,viewTarget:1,visibility:0,vMathematical:1,"v-mathematical":"vMathematical",vocab:0,widths:0,wordSpacing:1,"word-spacing":"wordSpacing",writingMode:1,"writing-mode":"writingMode",x1:0,x2:0,x:0,xChannelSelector:1,xHeight:1,"x-height":"xHeight",xlinkActuate:1,"xlink:actuate":"xlinkActuate",xlinkArcrole:1,"xlink:arcrole":"xlinkArcrole",xlinkHref:1,"xlink:href":"xlinkHref",xlinkRole:1,"xlink:role":"xlinkRole",xlinkShow:1,"xlink:show":"xlinkShow",xlinkTitle:1,"xlink:title":"xlinkTitle",xlinkType:1,"xlink:type":"xlinkType",xmlBase:1,"xml:base":"xmlBase",xmlLang:1,"xml:lang":"xmlLang",xmlns:0,"xml:space":"xmlSpace",xmlnsXlink:1,"xmlns:xlink":"xmlnsXlink",xmlSpace:1,y1:0,y2:0,y:0,yChannelSelector:1,z:0,zoomAndPan:1}},5229:function(e,t,n){"use strict";var o=(this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}})(n(1133)),r=n(8917);function i(e,t){var n={};return e&&"string"==typeof e?((0,o.default)(e,(function(e,o){e&&o&&(n[(0,r.camelCase)(e,t)]=o)})),n):n}i.default=i,e.exports=i},8917:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.camelCase=void 0;var n=/^--[a-zA-Z0-9-]+$/,o=/-([a-z])/g,r=/^[^-]+$/,i=/^-(webkit|moz|ms|o|khtml)-/,s=/^-(ms)-/,l=function(e,t){return t.toUpperCase()},a=function(e,t){return"".concat(t,"-")};t.camelCase=function(e,t){return void 0===t&&(t={}),function(e){return!e||r.test(e)||n.test(e)}(e)?e:(e=e.toLowerCase(),(e=t.reactCompat?e.replace(s,a):e.replace(i,a)).replace(o,l))}},1133:function(e,t,n){"use strict";var o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var r=o(n(9788));t.default=function(e,t){var n=null;if(!e||"string"!=typeof e)return n;var o=(0,r.default)(e),i="function"==typeof t;return o.forEach((function(e){if("declaration"===e.type){var o=e.property,r=e.value;i?t(o,r,e):r&&((n=n||{})[o]=r)}})),n}},9771:e=>{"use strict";e.exports=function(){}},1609:e=>{"use strict";e.exports=window.React},5795:e=>{"use strict";e.exports=window.ReactDOM},6942:(e,t)=>{var n;!function(){"use strict";var o={}.hasOwnProperty;function r(){for(var e="",t=0;t{if(!n){var s=1/0;for(u=0;u=i)&&Object.keys(o.O).every((e=>o.O[e](n[a])))?n.splice(a--,1):(l=!1,i0&&e[u-1][2]>i;u--)e[u]=e[u-1];e[u]=[n,r,i]},o.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return o.d(t,{a:t}),t},o.d=(e,t)=>{for(var n in t)o.o(t,n)&&!o.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),o.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{var e={662:0,394:0};o.O.j=t=>0===e[t];var t=(t,n)=>{var r,i,[s,l,a]=n,c=0;if(s.some((t=>0!==e[t]))){for(r in l)o.o(l,r)&&(o.m[r]=l[r]);if(a)var u=a(o)}for(t&&t(n);co(765)));r=o.O(r)})(); \ No newline at end of file +(0,Me._n)("%d guest","%d guests",Number(p),"gatherpress"),Number(p))]})})]})]})},We=e=>{const{isSelected:t}=e,n=t?"none":"block";return(0,Fe.jsxs)("div",{style:{position:"relative"},children:[e.children,(0,Fe.jsx)("div",{style:{position:"absolute",top:"0",right:"0",bottom:"0",left:"0",display:n}})]})},Ve=JSON.parse('{"$schema":"https://schemas.wp.org/trunk/block.json","apiVersion":2,"name":"gatherpress/rsvp","version":"1.0.1","title":"RSVP","category":"gatherpress","icon":"insert","example":{},"description":"Enables members to easily confirm their attendance for an event.","attributes":{"content":{"type":"string"},"color":{"type":"string"}},"supports":{"html":false},"textdomain":"gatherpress","editorScript":"file:./index.js","style":"file:./style-index.css","viewScript":"file:./rsvp.js","render":"file:./render.php"}');(0,o.registerBlockType)(Ve,{edit:()=>{const e=(0,r.useBlockProps)(),t=He("eventDetails.postId"),n=He("eventDetails.currentUser");return(0,Fe.jsx)("div",{...e,children:(0,Fe.jsx)(We,{children:(0,Fe.jsx)(Ue,{postId:t,currentUser:n,type:"upcoming"})})})},save:()=>null})},5413:(e,t)=>{"use strict";var n;Object.defineProperty(t,"__esModule",{value:!0}),t.Doctype=t.CDATA=t.Tag=t.Style=t.Script=t.Comment=t.Directive=t.Text=t.Root=t.isTag=t.ElementType=void 0,function(e){e.Root="root",e.Text="text",e.Directive="directive",e.Comment="comment",e.Script="script",e.Style="style",e.Tag="tag",e.CDATA="cdata",e.Doctype="doctype"}(n=t.ElementType||(t.ElementType={})),t.isTag=function(e){return e.type===n.Tag||e.type===n.Script||e.type===n.Style},t.Root=n.Root,t.Text=n.Text,t.Directive=n.Directive,t.Comment=n.Comment,t.Script=n.Script,t.Style=n.Style,t.Tag=n.Tag,t.CDATA=n.CDATA,t.Doctype=n.Doctype},1141:function(e,t,n){"use strict";var o=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!("get"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,r)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||o(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),t.DomHandler=void 0;var i=n(5413),s=n(6957);r(n(6957),t);var l={withStartIndices:!1,withEndIndices:!1,xmlMode:!1},a=function(){function e(e,t,n){this.dom=[],this.root=new s.Document(this.dom),this.done=!1,this.tagStack=[this.root],this.lastNode=null,this.parser=null,"function"==typeof t&&(n=t,t=l),"object"==typeof e&&(t=e,e=void 0),this.callback=null!=e?e:null,this.options=null!=t?t:l,this.elementCB=null!=n?n:null}return e.prototype.onparserinit=function(e){this.parser=e},e.prototype.onreset=function(){this.dom=[],this.root=new s.Document(this.dom),this.done=!1,this.tagStack=[this.root],this.lastNode=null,this.parser=null},e.prototype.onend=function(){this.done||(this.done=!0,this.parser=null,this.handleCallback(null))},e.prototype.onerror=function(e){this.handleCallback(e)},e.prototype.onclosetag=function(){this.lastNode=null;var e=this.tagStack.pop();this.options.withEndIndices&&(e.endIndex=this.parser.endIndex),this.elementCB&&this.elementCB(e)},e.prototype.onopentag=function(e,t){var n=this.options.xmlMode?i.ElementType.Tag:void 0,o=new s.Element(e,t,void 0,n);this.addNode(o),this.tagStack.push(o)},e.prototype.ontext=function(e){var t=this.lastNode;if(t&&t.type===i.ElementType.Text)t.data+=e,this.options.withEndIndices&&(t.endIndex=this.parser.endIndex);else{var n=new s.Text(e);this.addNode(n),this.lastNode=n}},e.prototype.oncomment=function(e){if(this.lastNode&&this.lastNode.type===i.ElementType.Comment)this.lastNode.data+=e;else{var t=new s.Comment(e);this.addNode(t),this.lastNode=t}},e.prototype.oncommentend=function(){this.lastNode=null},e.prototype.oncdatastart=function(){var e=new s.Text(""),t=new s.CDATA([e]);this.addNode(t),e.parent=t,this.lastNode=e},e.prototype.oncdataend=function(){this.lastNode=null},e.prototype.onprocessinginstruction=function(e,t){var n=new s.ProcessingInstruction(e,t);this.addNode(n)},e.prototype.handleCallback=function(e){if("function"==typeof this.callback)this.callback(e,this.dom);else if(e)throw e},e.prototype.addNode=function(e){var t=this.tagStack[this.tagStack.length-1],n=t.children[t.children.length-1];this.options.withStartIndices&&(e.startIndex=this.parser.startIndex),this.options.withEndIndices&&(e.endIndex=this.parser.endIndex),t.children.push(e),n&&(e.prev=n,n.next=e),e.parent=t,this.lastNode=null},e}();t.DomHandler=a,t.default=a},6957:function(e,t,n){"use strict";var o,r=this&&this.__extends||(o=function(e,t){return o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},o(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function __(){this.constructor=e}o(e,t),e.prototype=null===t?Object.create(t):(__.prototype=t.prototype,new __)}),i=this&&this.__assign||function(){return i=Object.assign||function(e){for(var t,n=1,o=arguments.length;n0?this.children[this.children.length-1]:null},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"childNodes",{get:function(){return this.children},set:function(e){this.children=e},enumerable:!1,configurable:!0}),t}(l);t.NodeWithChildren=p;var f=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.type=s.ElementType.CDATA,t}return r(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 4},enumerable:!1,configurable:!0}),t}(p);t.CDATA=f;var h=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.type=s.ElementType.Root,t}return r(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 9},enumerable:!1,configurable:!0}),t}(p);t.Document=h;var m=function(e){function t(t,n,o,r){void 0===o&&(o=[]),void 0===r&&(r="script"===t?s.ElementType.Script:"style"===t?s.ElementType.Style:s.ElementType.Tag);var i=e.call(this,o)||this;return i.name=t,i.attribs=n,i.type=r,i}return r(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 1},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"tagName",{get:function(){return this.name},set:function(e){this.name=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"attributes",{get:function(){var e=this;return Object.keys(this.attribs).map((function(t){var n,o;return{name:t,value:e.attribs[t],namespace:null===(n=e["x-attribsNamespace"])||void 0===n?void 0:n[t],prefix:null===(o=e["x-attribsPrefix"])||void 0===o?void 0:o[t]}}))},enumerable:!1,configurable:!0}),t}(p);function y(e){return(0,s.isTag)(e)}function v(e){return e.type===s.ElementType.CDATA}function g(e){return e.type===s.ElementType.Text}function b(e){return e.type===s.ElementType.Comment}function w(e){return e.type===s.ElementType.Directive}function _(e){return e.type===s.ElementType.Root}function x(e,t){var n;if(void 0===t&&(t=!1),g(e))n=new c(e.data);else if(b(e))n=new u(e.data);else if(y(e)){var o=t?E(e.children):[],r=new m(e.name,i({},e.attribs),o);o.forEach((function(e){return e.parent=r})),null!=e.namespace&&(r.namespace=e.namespace),e["x-attribsNamespace"]&&(r["x-attribsNamespace"]=i({},e["x-attribsNamespace"])),e["x-attribsPrefix"]&&(r["x-attribsPrefix"]=i({},e["x-attribsPrefix"])),n=r}else if(v(e)){o=t?E(e.children):[];var s=new f(o);o.forEach((function(e){return e.parent=s})),n=s}else if(_(e)){o=t?E(e.children):[];var l=new h(o);o.forEach((function(e){return e.parent=l})),e["x-mode"]&&(l["x-mode"]=e["x-mode"]),n=l}else{if(!w(e))throw new Error("Not implemented yet: ".concat(e.type));var a=new d(e.name,e.data);null!=e["x-name"]&&(a["x-name"]=e["x-name"],a["x-publicId"]=e["x-publicId"],a["x-systemId"]=e["x-systemId"]),n=a}return n.startIndex=e.startIndex,n.endIndex=e.endIndex,null!=e.sourceCodeLocation&&(n.sourceCodeLocation=e.sourceCodeLocation),n}function E(e){for(var t=e.map((function(e){return x(e,!0)})),n=1;n{var o;!function(){"use strict";var r=!("undefined"==typeof window||!window.document||!window.document.createElement),i={canUseDOM:r,canUseWorkers:"undefined"!=typeof Worker,canUseEventListeners:r&&!(!window.addEventListener&&!window.attachEvent),canUseViewport:r&&!!window.screen};void 0===(o=function(){return i}.call(t,n,t,e))||(e.exports=o)}()},5270:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CASE_SENSITIVE_TAG_NAMES_MAP=t.CASE_SENSITIVE_TAG_NAMES=void 0,t.CASE_SENSITIVE_TAG_NAMES=["animateMotion","animateTransform","clipPath","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","foreignObject","linearGradient","radialGradient","textPath"],t.CASE_SENSITIVE_TAG_NAMES_MAP=t.CASE_SENSITIVE_TAG_NAMES.reduce((function(e,t){return e[t.toLowerCase()]=t,e}),{})},5496:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){var t,u,d=e.match(i),p=d&&d[1]?d[1].toLowerCase():"";switch(p){case n:var h=c(e);return s.test(e)||null===(t=null==(y=h.querySelector(o))?void 0:y.parentNode)||void 0===t||t.removeChild(y),l.test(e)||null===(u=null==(y=h.querySelector(r))?void 0:y.parentNode)||void 0===u||u.removeChild(y),h.querySelectorAll(n);case o:case r:var m=a(e).querySelectorAll(p);return l.test(e)&&s.test(e)?m[0].parentNode.childNodes:m;default:return f?f(e):(y=a(e,r).querySelector(r)).childNodes;var y}};var n="html",o="head",r="body",i=/<([a-zA-Z]+[0-9]?)/,s=//i,l=//i,a=function(e,t){throw new Error("This browser does not support `document.implementation.createHTMLDocument`")},c=function(e,t){throw new Error("This browser does not support `DOMParser.prototype.parseFromString`")},u="object"==typeof window&&window.DOMParser;if("function"==typeof u){var d=new u;a=c=function(e,t){return t&&(e="<".concat(t,">").concat(e,"")),d.parseFromString(e,"text/html")}}if("object"==typeof document&&document.implementation){var p=document.implementation.createHTMLDocument();a=function(e,t){if(t){var n=p.documentElement.querySelector(t);return n&&(n.innerHTML=e),p}return p.documentElement.innerHTML=e,p}}var f,h="object"==typeof document&&document.createElement("template");h&&h.content&&(f=function(e){return h.innerHTML=e,h.content.childNodes})},2471:function(e,t,n){"use strict";var o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){if("string"!=typeof e)throw new TypeError("First argument must be a string");if(!e)return[];var t=e.match(s),n=t?t[1]:void 0;return(0,i.formatDOM)((0,r.default)(e),null,n)};var r=o(n(5496)),i=n(7731),s=/<(![a-zA-Z\s]+)>/},7731:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.formatAttributes=i,t.formatDOM=function e(t,n,r){void 0===n&&(n=null);for(var l,a=[],c=0,u=t.length;c{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){void 0===e&&(e={});var n={},c=Boolean(e.type&&l[e.type]);for(var u in e){var d=e[u];if((0,o.isCustomAttribute)(u))n[u]=d;else{var p=u.toLowerCase(),f=a(p);if(f){var h=(0,o.getPropertyInfo)(f);switch(i.includes(f)&&s.includes(t)&&!c&&(f=a("default"+p)),n[f]=d,h&&h.type){case o.BOOLEAN:n[f]=!0;break;case o.OVERLOADED_BOOLEAN:""===d&&(n[f]=!0)}}else r.PRESERVE_CUSTOM_ATTRIBUTES&&(n[u]=d)}}return(0,r.setStyleProp)(e.style,n),n};var o=n(4210),r=n(4958),i=["checked","value"],s=["input","select","textarea"],l={reset:!0,submit:!0};function a(e){return o.possibleStandardNames[e]}},308:function(e,t,n){"use strict";var o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t,n){void 0===n&&(n={});for(var o=[],r="function"==typeof n.replace,c=n.transform||s.returnFirstArg,u=n.library||l,d=u.cloneElement,p=u.createElement,f=u.isValidElement,h=t.length,m=0;m1&&(v=d(v,{key:v.key||m})),o.push(c(v,y,m));continue}}if("text"!==y.type){var g=y,b={};a(g)?((0,s.setStyleProp)(g.attribs.style,g.attribs),b=g.attribs):g.attribs&&(b=(0,i.default)(g.attribs,g.name));var w=void 0;switch(y.type){case"script":case"style":y.children[0]&&(b.dangerouslySetInnerHTML={__html:y.children[0].data});break;case"tag":"textarea"===y.name&&y.children[0]?b.defaultValue=y.children[0].data:y.children&&y.children.length&&(w=e(y.children,n));break;default:continue}h>1&&(b.key=m),o.push(c(p(y.name,b,w),y,m))}else{var _=!y.data.trim().length;if(_&&y.parent&&!(0,s.canTextBeChildOfNode)(y.parent))continue;if(n.trim&&_)continue;o.push(c(y.data,y,m))}}return 1===o.length?o[0]:o};var r=n(1609),i=o(n(840)),s=n(4958),l={cloneElement:r.cloneElement,createElement:r.createElement,isValidElement:r.isValidElement};function a(e){return s.PRESERVE_CUSTOM_ATTRIBUTES&&"tag"===e.type&&(0,s.isCustomComponent)(e.name,e.attribs)}},442:function(e,t,n){"use strict";var o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.htmlToDOM=t.domToReact=t.attributesToProps=t.Text=t.ProcessingInstruction=t.Element=t.Comment=void 0,t.default=function(e,t){if("string"!=typeof e)throw new TypeError("First argument must be a string");return e?(0,s.default)((0,r.default)(e,(null==t?void 0:t.htmlparser2)||a),t):[]};var r=o(n(2471));t.htmlToDOM=r.default;var i=o(n(840));t.attributesToProps=i.default;var s=o(n(308));t.domToReact=s.default;var l=n(1141);Object.defineProperty(t,"Comment",{enumerable:!0,get:function(){return l.Comment}}),Object.defineProperty(t,"Element",{enumerable:!0,get:function(){return l.Element}}),Object.defineProperty(t,"ProcessingInstruction",{enumerable:!0,get:function(){return l.ProcessingInstruction}}),Object.defineProperty(t,"Text",{enumerable:!0,get:function(){return l.Text}});var a={lowerCaseAttributeNames:!1}},4958:function(e,t,n){"use strict";var o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.returnFirstArg=t.canTextBeChildOfNode=t.ELEMENTS_WITH_NO_TEXT_CHILDREN=t.PRESERVE_CUSTOM_ATTRIBUTES=void 0,t.isCustomComponent=function(e,t){return e.includes("-")?!s.has(e):Boolean(t&&"string"==typeof t.is)},t.setStyleProp=function(e,t){if("string"==typeof e)if(e.trim())try{t.style=(0,i.default)(e,l)}catch(e){t.style={}}else t.style={}};var r=n(1609),i=o(n(5229)),s=new Set(["annotation-xml","color-profile","font-face","font-face-src","font-face-uri","font-face-format","font-face-name","missing-glyph"]),l={reactCompat:!0};t.PRESERVE_CUSTOM_ATTRIBUTES=Number(r.version.split(".")[0])>=16,t.ELEMENTS_WITH_NO_TEXT_CHILDREN=new Set(["tr","tbody","thead","tfoot","colgroup","table","head","html","frameset"]),t.canTextBeChildOfNode=function(e){return!t.ELEMENTS_WITH_NO_TEXT_CHILDREN.has(e.name)},t.returnFirstArg=function(e){return e}},9788:e=>{var t=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,n=/\n/g,o=/^\s*/,r=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,i=/^:\s*/,s=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,l=/^[;\s]*/,a=/^\s+|\s+$/g,c="";function u(e){return e?e.replace(a,c):c}e.exports=function(e,a){if("string"!=typeof e)throw new TypeError("First argument must be a string");if(!e)return[];a=a||{};var d=1,p=1;function f(e){var t=e.match(n);t&&(d+=t.length);var o=e.lastIndexOf("\n");p=~o?e.length-o:p+e.length}function h(){var e={line:d,column:p};return function(t){return t.position=new m(e),b(),t}}function m(e){this.start=e,this.end={line:d,column:p},this.source=a.source}m.prototype.content=e;var y=[];function v(t){var n=new Error(a.source+":"+d+":"+p+": "+t);if(n.reason=t,n.filename=a.source,n.line=d,n.column=p,n.source=e,!a.silent)throw n;y.push(n)}function g(t){var n=t.exec(e);if(n){var o=n[0];return f(o),e=e.slice(o.length),n}}function b(){g(o)}function w(e){var t;for(e=e||[];t=_();)!1!==t&&e.push(t);return e}function _(){var t=h();if("/"==e.charAt(0)&&"*"==e.charAt(1)){for(var n=2;c!=e.charAt(n)&&("*"!=e.charAt(n)||"/"!=e.charAt(n+1));)++n;if(n+=2,c===e.charAt(n-1))return v("End of comment missing");var o=e.slice(2,n-2);return p+=2,f(o),e=e.slice(n),p+=2,t({type:"comment",comment:o})}}function x(){var e=h(),n=g(r);if(n){if(_(),!g(i))return v("property missing ':'");var o=g(s),a=e({type:"declaration",property:u(n[0].replace(t,c)),value:o?u(o[0].replace(t,c)):c});return g(l),a}}return b(),function(){var e,t=[];for(w(t);e=x();)!1!==e&&(t.push(e),w(t));return t}()}},2694:(e,t,n)=>{"use strict";var o=n(6925);function r(){}function i(){}i.resetWarningCache=r,e.exports=function(){function e(e,t,n,r,i,s){if(s!==o){var l=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw l.name="Invariant Violation",l}}function t(){return e}e.isRequired=e;var n={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:i,resetWarningCache:r};return n.PropTypes=n,n}},5556:(e,t,n)=>{e.exports=n(2694)()},6925:e=>{"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},1345:(e,t,n)=>{"use strict";function o(){var e=this.constructor.getDerivedStateFromProps(this.props,this.state);null!=e&&this.setState(e)}function r(e){this.setState(function(t){var n=this.constructor.getDerivedStateFromProps(e,t);return null!=n?n:null}.bind(this))}function i(e,t){try{var n=this.props,o=this.state;this.props=e,this.state=t,this.__reactInternalSnapshotFlag=!0,this.__reactInternalSnapshot=this.getSnapshotBeforeUpdate(n,o)}finally{this.props=n,this.state=o}}function s(e){var t=e.prototype;if(!t||!t.isReactComponent)throw new Error("Can only polyfill class components");if("function"!=typeof e.getDerivedStateFromProps&&"function"!=typeof t.getSnapshotBeforeUpdate)return e;var n=null,s=null,l=null;if("function"==typeof t.componentWillMount?n="componentWillMount":"function"==typeof t.UNSAFE_componentWillMount&&(n="UNSAFE_componentWillMount"),"function"==typeof t.componentWillReceiveProps?s="componentWillReceiveProps":"function"==typeof t.UNSAFE_componentWillReceiveProps&&(s="UNSAFE_componentWillReceiveProps"),"function"==typeof t.componentWillUpdate?l="componentWillUpdate":"function"==typeof t.UNSAFE_componentWillUpdate&&(l="UNSAFE_componentWillUpdate"),null!==n||null!==s||null!==l){var a=e.displayName||e.name,c="function"==typeof e.getDerivedStateFromProps?"getDerivedStateFromProps()":"getSnapshotBeforeUpdate()";throw Error("Unsafe legacy lifecycles will not be called for components using new component APIs.\n\n"+a+" uses "+c+" but also contains the following legacy lifecycles:"+(null!==n?"\n "+n:"")+(null!==s?"\n "+s:"")+(null!==l?"\n "+l:"")+"\n\nThe above lifecycles should be removed. Learn more about this warning here:\nhttps://fb.me/react-async-component-lifecycle-hooks")}if("function"==typeof e.getDerivedStateFromProps&&(t.componentWillMount=o,t.componentWillReceiveProps=r),"function"==typeof t.getSnapshotBeforeUpdate){if("function"!=typeof t.componentDidUpdate)throw new Error("Cannot polyfill getSnapshotBeforeUpdate() for components that do not define componentDidUpdate() on the prototype");t.componentWillUpdate=i;var u=t.componentDidUpdate;t.componentDidUpdate=function(e,t,n){var o=this.__reactInternalSnapshotFlag?this.__reactInternalSnapshot:n;u.call(this,e,t,o)}}return e}n.r(t),n.d(t,{polyfill:()=>s}),o.__suppressDeprecationWarning=!0,r.__suppressDeprecationWarning=!0,i.__suppressDeprecationWarning=!0},1720:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.bodyOpenClassName=t.portalClassName=void 0;var o=Object.assign||function(e){for(var t=1;t{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=Object.assign||function(e){for(var t=1;t0&&0==(g-=1)&&u.show(t),n.props.shouldFocusAfterRender&&(n.props.shouldReturnFocusAfterClose?(a.returnFocus(n.props.preventScroll),a.teardownScopedFocus()):a.popWithoutFocus()),n.props.onAfterClose&&n.props.onAfterClose(),h.default.deregister(n)},n.open=function(){n.beforeOpen(),n.state.afterOpen&&n.state.beforeClose?(clearTimeout(n.closeTimer),n.setState({beforeClose:!1})):(n.props.shouldFocusAfterRender&&(a.setupScopedFocus(n.node),a.markForFocusLater()),n.setState({isOpen:!0},(function(){n.openAnimationFrame=requestAnimationFrame((function(){n.setState({afterOpen:!0}),n.props.isOpen&&n.props.onAfterOpen&&n.props.onAfterOpen({overlayEl:n.overlay,contentEl:n.content})}))})))},n.close=function(){n.props.closeTimeoutMS>0?n.closeWithTimeout():n.closeWithoutTimeout()},n.focusContent=function(){return n.content&&!n.contentHasFocus()&&n.content.focus({preventScroll:!0})},n.closeWithTimeout=function(){var e=Date.now()+n.props.closeTimeoutMS;n.setState({beforeClose:!0,closesAt:e},(function(){n.closeTimer=setTimeout(n.closeWithoutTimeout,n.state.closesAt-Date.now())}))},n.closeWithoutTimeout=function(){n.setState({beforeClose:!1,isOpen:!1,afterOpen:!1,closesAt:null},n.afterClose)},n.handleKeyDown=function(e){(function(e){return"Tab"===e.code||9===e.keyCode})(e)&&(0,c.default)(n.content,e),n.props.shouldCloseOnEsc&&function(e){return"Escape"===e.code||27===e.keyCode}(e)&&(e.stopPropagation(),n.requestClose(e))},n.handleOverlayOnClick=function(e){null===n.shouldClose&&(n.shouldClose=!0),n.shouldClose&&n.props.shouldCloseOnOverlayClick&&(n.ownerHandlesClose()?n.requestClose(e):n.focusContent()),n.shouldClose=null},n.handleContentOnMouseUp=function(){n.shouldClose=!1},n.handleOverlayOnMouseDown=function(e){n.props.shouldCloseOnOverlayClick||e.target!=n.overlay||e.preventDefault()},n.handleContentOnClick=function(){n.shouldClose=!1},n.handleContentOnMouseDown=function(){n.shouldClose=!1},n.requestClose=function(e){return n.ownerHandlesClose()&&n.props.onRequestClose(e)},n.ownerHandlesClose=function(){return n.props.onRequestClose},n.shouldBeClosed=function(){return!n.state.isOpen&&!n.state.beforeClose},n.contentHasFocus=function(){return document.activeElement===n.content||n.content.contains(document.activeElement)},n.buildClassName=function(e,t){var o="object"===(void 0===t?"undefined":r(t))?t:{base:v[e],afterOpen:v[e]+"--after-open",beforeClose:v[e]+"--before-close"},i=o.base;return n.state.afterOpen&&(i=i+" "+o.afterOpen),n.state.beforeClose&&(i=i+" "+o.beforeClose),"string"==typeof t&&t?i+" "+t:i},n.attributesFromObject=function(e,t){return Object.keys(t).reduce((function(n,o){return n[e+"-"+o]=t[o],n}),{})},n.state={afterOpen:!1,beforeClose:!1},n.shouldClose=null,n.moveFromContentToOverlay=null,n}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,e),i(t,[{key:"componentDidMount",value:function(){this.props.isOpen&&this.open()}},{key:"componentDidUpdate",value:function(e,t){this.props.isOpen&&!e.isOpen?this.open():!this.props.isOpen&&e.isOpen&&this.close(),this.props.shouldFocusAfterRender&&this.state.isOpen&&!t.isOpen&&this.focusContent()}},{key:"componentWillUnmount",value:function(){this.state.isOpen&&this.afterClose(),clearTimeout(this.closeTimer),cancelAnimationFrame(this.openAnimationFrame)}},{key:"beforeOpen",value:function(){var e=this.props,t=e.appElement,n=e.ariaHideApp,o=e.htmlOpenClassName,r=e.bodyOpenClassName,i=e.parentSelector,s=i&&i().ownerDocument||document;r&&d.add(s.body,r),o&&d.add(s.getElementsByTagName("html")[0],o),n&&(g+=1,u.hide(t)),h.default.register(this)}},{key:"render",value:function(){var e=this.props,t=e.id,n=e.className,r=e.overlayClassName,i=e.defaultStyles,s=e.children,l=n?{}:i.content,a=r?{}:i.overlay;if(this.shouldBeClosed())return null;var c={ref:this.setOverlayRef,className:this.buildClassName("overlay",r),style:o({},a,this.props.style.overlay),onClick:this.handleOverlayOnClick,onMouseDown:this.handleOverlayOnMouseDown},u=o({id:t,ref:this.setContentRef,style:o({},l,this.props.style.content),className:this.buildClassName("content",n),tabIndex:"-1",onKeyDown:this.handleKeyDown,onMouseDown:this.handleContentOnMouseDown,onMouseUp:this.handleContentOnMouseUp,onClick:this.handleContentOnClick,role:this.props.role,"aria-label":this.props.contentLabel},this.attributesFromObject("aria",o({modal:!0},this.props.aria)),this.attributesFromObject("data",this.props.data||{}),{"data-testid":this.props.testId}),d=this.props.contentElement(u,s);return this.props.overlayElement(c,d)}}]),t}(s.Component);b.defaultProps={style:{overlay:{},content:{}},defaultStyles:{}},b.propTypes={isOpen:l.default.bool.isRequired,defaultStyles:l.default.shape({content:l.default.object,overlay:l.default.object}),style:l.default.shape({content:l.default.object,overlay:l.default.object}),className:l.default.oneOfType([l.default.string,l.default.object]),overlayClassName:l.default.oneOfType([l.default.string,l.default.object]),parentSelector:l.default.func,bodyOpenClassName:l.default.string,htmlOpenClassName:l.default.string,ariaHideApp:l.default.bool,appElement:l.default.oneOfType([l.default.instanceOf(f.default),l.default.instanceOf(p.SafeHTMLCollection),l.default.instanceOf(p.SafeNodeList),l.default.arrayOf(l.default.instanceOf(f.default))]),onAfterOpen:l.default.func,onAfterClose:l.default.func,onRequestClose:l.default.func,closeTimeoutMS:l.default.number,shouldFocusAfterRender:l.default.bool,shouldCloseOnOverlayClick:l.default.bool,shouldReturnFocusAfterClose:l.default.bool,preventScroll:l.default.bool,role:l.default.string,contentLabel:l.default.string,aria:l.default.object,data:l.default.object,children:l.default.node,shouldCloseOnEsc:l.default.bool,overlayRef:l.default.func,contentRef:l.default.func,id:l.default.string,overlayElement:l.default.func,contentElement:l.default.func,testId:l.default.string},t.default=b,e.exports=t.default},6462:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.resetState=function(){s&&(s.removeAttribute?s.removeAttribute("aria-hidden"):null!=s.length?s.forEach((function(e){return e.removeAttribute("aria-hidden")})):document.querySelectorAll(s).forEach((function(e){return e.removeAttribute("aria-hidden")}))),s=null},t.log=function(){},t.assertNodeList=l,t.setElement=function(e){var t=e;if("string"==typeof t&&i.canUseDOM){var n=document.querySelectorAll(t);l(n,t),t=n}return s=t||s},t.validateElement=a,t.hide=function(e){var t=!0,n=!1,o=void 0;try{for(var r,i=a(e)[Symbol.iterator]();!(t=(r=i.next()).done);t=!0)r.value.setAttribute("aria-hidden","true")}catch(e){n=!0,o=e}finally{try{!t&&i.return&&i.return()}finally{if(n)throw o}}},t.show=function(e){var t=!0,n=!1,o=void 0;try{for(var r,i=a(e)[Symbol.iterator]();!(t=(r=i.next()).done);t=!0)r.value.removeAttribute("aria-hidden")}catch(e){n=!0,o=e}finally{try{!t&&i.return&&i.return()}finally{if(n)throw o}}},t.documentNotReadyOrSSRTesting=function(){s=null};var o,r=(o=n(9771))&&o.__esModule?o:{default:o},i=n(834),s=null;function l(e,t){if(!e||!e.length)throw new Error("react-modal: No elements were found for selector "+t+".")}function a(e){var t=e||s;return t?Array.isArray(t)||t instanceof HTMLCollection||t instanceof NodeList?t:[t]:((0,r.default)(!1,["react-modal: App element is not defined.","Please use `Modal.setAppElement(el)` or set `appElement={el}`.","This is needed so screen readers don't see main content","when modal is opened. It is not recommended, but you can opt-out","by setting `ariaHideApp={false}`."].join(" ")),[])}},7727:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.resetState=function(){for(var e=[i,s],t=0;t0?(document.body.firstChild!==i&&document.body.insertBefore(i,document.body.firstChild),document.body.lastChild!==s&&document.body.appendChild(s)):(i.parentElement&&i.parentElement.removeChild(i),s.parentElement&&s.parentElement.removeChild(s))}))},4838:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.resetState=function(){var e=document.getElementsByTagName("html")[0];for(var t in n)r(e,n[t]);var i=document.body;for(var s in o)r(i,o[s]);n={},o={}},t.log=function(){};var n={},o={};function r(e,t){e.classList.remove(t)}t.add=function(e,t){return r=e.classList,i="html"==e.nodeName.toLowerCase()?n:o,void t.split(" ").forEach((function(e){!function(e,t){e[t]||(e[t]=0),e[t]+=1}(i,e),r.add(e)}));var r,i},t.remove=function(e,t){return r=e.classList,i="html"==e.nodeName.toLowerCase()?n:o,void t.split(" ").forEach((function(e){!function(e,t){e[t]&&(e[t]-=1)}(i,e),0===i[e]&&r.remove(e)}));var r,i}},7791:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.resetState=function(){i=[]},t.log=function(){},t.handleBlur=a,t.handleFocus=c,t.markForFocusLater=function(){i.push(document.activeElement)},t.returnFocus=function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=null;try{return void(0!==i.length&&(t=i.pop()).focus({preventScroll:e}))}catch(e){console.warn(["You tried to return focus to",t,"but it is not in the DOM anymore"].join(" "))}},t.popWithoutFocus=function(){i.length>0&&i.pop()},t.setupScopedFocus=function(e){s=e,window.addEventListener?(window.addEventListener("blur",a,!1),document.addEventListener("focus",c,!0)):(window.attachEvent("onBlur",a),document.attachEvent("onFocus",c))},t.teardownScopedFocus=function(){s=null,window.addEventListener?(window.removeEventListener("blur",a),document.removeEventListener("focus",c)):(window.detachEvent("onBlur",a),document.detachEvent("onFocus",c))};var o,r=(o=n(2411))&&o.__esModule?o:{default:o},i=[],s=null,l=!1;function a(){l=!0}function c(){if(l){if(l=!1,!s)return;setTimeout((function(){s.contains(document.activeElement)||((0,r.default)(s)[0]||s).focus()}),0)}}},9628:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.log=function(){console.log("portalOpenInstances ----------"),console.log(o.openInstances.length),o.openInstances.forEach((function(e){return console.log(e)})),console.log("end portalOpenInstances ----------")},t.resetState=function(){o=new n};var n=function e(){var t=this;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.register=function(e){-1===t.openInstances.indexOf(e)&&(t.openInstances.push(e),t.emit("register"))},this.deregister=function(e){var n=t.openInstances.indexOf(e);-1!==n&&(t.openInstances.splice(n,1),t.emit("deregister"))},this.subscribe=function(e){t.subscribers.push(e)},this.emit=function(e){t.subscribers.forEach((function(n){return n(e,t.openInstances.slice())}))},this.openInstances=[],this.subscribers=[]},o=new n;t.default=o},834:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.canUseDOM=t.SafeNodeList=t.SafeHTMLCollection=void 0;var o,r=((o=n(411))&&o.__esModule?o:{default:o}).default,i=r.canUseDOM?window.HTMLElement:{};t.SafeHTMLCollection=r.canUseDOM?window.HTMLCollection:{},t.SafeNodeList=r.canUseDOM?window.NodeList:{},t.canUseDOM=r.canUseDOM,t.default=i},7067:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){var n=(0,r.default)(e);if(n.length){var o=void 0,s=t.shiftKey,l=n[0],a=n[n.length-1],c=i();if(e===c){if(!s)return;o=a}if(a!==c||s||(o=l),l===c&&s&&(o=a),o)return t.preventDefault(),void o.focus();var u=/(\bChrome\b|\bSafari\b)\//.exec(navigator.userAgent);if(null!=u&&"Chrome"!=u[1]&&null==/\biPod\b|\biPad\b/g.exec(navigator.userAgent)){var d=n.indexOf(c);if(d>-1&&(d+=s?-1:1),void 0===(o=n[d]))return t.preventDefault(),void(o=s?a:l).focus();t.preventDefault(),o.focus()}}else t.preventDefault()};var o,r=(o=n(2411))&&o.__esModule?o:{default:o};function i(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:document;return e.activeElement.shadowRoot?i(e.activeElement.shadowRoot):e.activeElement}e.exports=t.default},2411:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t){return[].slice.call(t.querySelectorAll("*"),0).reduce((function(t,n){return t.concat(n.shadowRoot?e(n.shadowRoot):[n])}),[]).filter(s)};var n="none",o="contents",r=/input|select|textarea|button|object|iframe/;function i(e){var t=e.offsetWidth<=0&&e.offsetHeight<=0;if(t&&!e.innerHTML)return!0;try{var r=window.getComputedStyle(e),i=r.getPropertyValue("display");return t?i!==o&&function(e,t){return"visible"!==t.getPropertyValue("overflow")||e.scrollWidth<=0&&e.scrollHeight<=0}(e,r):i===n}catch(e){return console.warn("Failed to inspect element style"),!1}}function s(e){var t=e.getAttribute("tabindex");null===t&&(t=void 0);var n=isNaN(t);return(n||t>=0)&&function(e,t){var n=e.nodeName.toLowerCase();return(r.test(n)&&!e.disabled||"a"===n&&e.href||t)&&function(e){for(var t=e,n=e.getRootNode&&e.getRootNode();t&&t!==document.body;){if(n&&t===n&&(t=n.host.parentNode),i(t))return!1;t=t.parentNode}return!0}(e)}(e,!n)}e.exports=t.default},312:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o,r=(o=n(1720))&&o.__esModule?o:{default:o};t.default=r.default,e.exports=t.default},4210:(e,t,n)=>{"use strict";function o(e,t,n,o,r,i,s){this.acceptsBooleans=2===t||3===t||4===t,this.attributeName=o,this.attributeNamespace=r,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=i,this.removeEmptyString=s}const r={};["children","dangerouslySetInnerHTML","defaultValue","defaultChecked","innerHTML","suppressContentEditableWarning","suppressHydrationWarning","style"].forEach((e=>{r[e]=new o(e,0,!1,e,null,!1,!1)})),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach((([e,t])=>{r[e]=new o(e,1,!1,t,null,!1,!1)})),["contentEditable","draggable","spellCheck","value"].forEach((e=>{r[e]=new o(e,2,!1,e.toLowerCase(),null,!1,!1)})),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach((e=>{r[e]=new o(e,2,!1,e,null,!1,!1)})),["allowFullScreen","async","autoFocus","autoPlay","controls","default","defer","disabled","disablePictureInPicture","disableRemotePlayback","formNoValidate","hidden","loop","noModule","noValidate","open","playsInline","readOnly","required","reversed","scoped","seamless","itemScope"].forEach((e=>{r[e]=new o(e,3,!1,e.toLowerCase(),null,!1,!1)})),["checked","multiple","muted","selected"].forEach((e=>{r[e]=new o(e,3,!0,e,null,!1,!1)})),["capture","download"].forEach((e=>{r[e]=new o(e,4,!1,e,null,!1,!1)})),["cols","rows","size","span"].forEach((e=>{r[e]=new o(e,6,!1,e,null,!1,!1)})),["rowSpan","start"].forEach((e=>{r[e]=new o(e,5,!1,e.toLowerCase(),null,!1,!1)}));const i=/[\-\:]([a-z])/g,s=e=>e[1].toUpperCase();["accent-height","alignment-baseline","arabic-form","baseline-shift","cap-height","clip-path","clip-rule","color-interpolation","color-interpolation-filters","color-profile","color-rendering","dominant-baseline","enable-background","fill-opacity","fill-rule","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","glyph-name","glyph-orientation-horizontal","glyph-orientation-vertical","horiz-adv-x","horiz-origin-x","image-rendering","letter-spacing","lighting-color","marker-end","marker-mid","marker-start","overline-position","overline-thickness","paint-order","panose-1","pointer-events","rendering-intent","shape-rendering","stop-color","stop-opacity","strikethrough-position","strikethrough-thickness","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","text-anchor","text-decoration","text-rendering","underline-position","underline-thickness","unicode-bidi","unicode-range","units-per-em","v-alphabetic","v-hanging","v-ideographic","v-mathematical","vector-effect","vert-adv-y","vert-origin-x","vert-origin-y","word-spacing","writing-mode","xmlns:xlink","x-height"].forEach((e=>{const t=e.replace(i,s);r[t]=new o(t,1,!1,e,null,!1,!1)})),["xlink:actuate","xlink:arcrole","xlink:role","xlink:show","xlink:title","xlink:type"].forEach((e=>{const t=e.replace(i,s);r[t]=new o(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)})),["xml:base","xml:lang","xml:space"].forEach((e=>{const t=e.replace(i,s);r[t]=new o(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)})),["tabIndex","crossOrigin"].forEach((e=>{r[e]=new o(e,1,!1,e.toLowerCase(),null,!1,!1)})),r.xlinkHref=new o("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach((e=>{r[e]=new o(e,1,!1,e.toLowerCase(),null,!0,!0)}));const{CAMELCASE:l,SAME:a,possibleStandardNames:c}=n(6811),u=RegExp.prototype.test.bind(new RegExp("^(data|aria)-[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$")),d=Object.keys(c).reduce(((e,t)=>{const n=c[t];return n===a?e[t]=t:n===l?e[t.toLowerCase()]=t:e[t]=n,e}),{});t.BOOLEAN=3,t.BOOLEANISH_STRING=2,t.NUMERIC=5,t.OVERLOADED_BOOLEAN=4,t.POSITIVE_NUMERIC=6,t.RESERVED=0,t.STRING=1,t.getPropertyInfo=function(e){return r.hasOwnProperty(e)?r[e]:null},t.isCustomAttribute=u,t.possibleStandardNames=d},6811:(e,t)=>{t.SAME=0,t.CAMELCASE=1,t.possibleStandardNames={accept:0,acceptCharset:1,"accept-charset":"acceptCharset",accessKey:1,action:0,allowFullScreen:1,alt:0,as:0,async:0,autoCapitalize:1,autoComplete:1,autoCorrect:1,autoFocus:1,autoPlay:1,autoSave:1,capture:0,cellPadding:1,cellSpacing:1,challenge:0,charSet:1,checked:0,children:0,cite:0,class:"className",classID:1,className:1,cols:0,colSpan:1,content:0,contentEditable:1,contextMenu:1,controls:0,controlsList:1,coords:0,crossOrigin:1,dangerouslySetInnerHTML:1,data:0,dateTime:1,default:0,defaultChecked:1,defaultValue:1,defer:0,dir:0,disabled:0,disablePictureInPicture:1,disableRemotePlayback:1,download:0,draggable:0,encType:1,enterKeyHint:1,for:"htmlFor",form:0,formMethod:1,formAction:1,formEncType:1,formNoValidate:1,formTarget:1,frameBorder:1,headers:0,height:0,hidden:0,high:0,href:0,hrefLang:1,htmlFor:1,httpEquiv:1,"http-equiv":"httpEquiv",icon:0,id:0,innerHTML:1,inputMode:1,integrity:0,is:0,itemID:1,itemProp:1,itemRef:1,itemScope:1,itemType:1,keyParams:1,keyType:1,kind:0,label:0,lang:0,list:0,loop:0,low:0,manifest:0,marginWidth:1,marginHeight:1,max:0,maxLength:1,media:0,mediaGroup:1,method:0,min:0,minLength:1,multiple:0,muted:0,name:0,noModule:1,nonce:0,noValidate:1,open:0,optimum:0,pattern:0,placeholder:0,playsInline:1,poster:0,preload:0,profile:0,radioGroup:1,readOnly:1,referrerPolicy:1,rel:0,required:0,reversed:0,role:0,rows:0,rowSpan:1,sandbox:0,scope:0,scoped:0,scrolling:0,seamless:0,selected:0,shape:0,size:0,sizes:0,span:0,spellCheck:1,src:0,srcDoc:1,srcLang:1,srcSet:1,start:0,step:0,style:0,summary:0,tabIndex:1,target:0,title:0,type:0,useMap:1,value:0,width:0,wmode:0,wrap:0,about:0,accentHeight:1,"accent-height":"accentHeight",accumulate:0,additive:0,alignmentBaseline:1,"alignment-baseline":"alignmentBaseline",allowReorder:1,alphabetic:0,amplitude:0,arabicForm:1,"arabic-form":"arabicForm",ascent:0,attributeName:1,attributeType:1,autoReverse:1,azimuth:0,baseFrequency:1,baselineShift:1,"baseline-shift":"baselineShift",baseProfile:1,bbox:0,begin:0,bias:0,by:0,calcMode:1,capHeight:1,"cap-height":"capHeight",clip:0,clipPath:1,"clip-path":"clipPath",clipPathUnits:1,clipRule:1,"clip-rule":"clipRule",color:0,colorInterpolation:1,"color-interpolation":"colorInterpolation",colorInterpolationFilters:1,"color-interpolation-filters":"colorInterpolationFilters",colorProfile:1,"color-profile":"colorProfile",colorRendering:1,"color-rendering":"colorRendering",contentScriptType:1,contentStyleType:1,cursor:0,cx:0,cy:0,d:0,datatype:0,decelerate:0,descent:0,diffuseConstant:1,direction:0,display:0,divisor:0,dominantBaseline:1,"dominant-baseline":"dominantBaseline",dur:0,dx:0,dy:0,edgeMode:1,elevation:0,enableBackground:1,"enable-background":"enableBackground",end:0,exponent:0,externalResourcesRequired:1,fill:0,fillOpacity:1,"fill-opacity":"fillOpacity",fillRule:1,"fill-rule":"fillRule",filter:0,filterRes:1,filterUnits:1,floodOpacity:1,"flood-opacity":"floodOpacity",floodColor:1,"flood-color":"floodColor",focusable:0,fontFamily:1,"font-family":"fontFamily",fontSize:1,"font-size":"fontSize",fontSizeAdjust:1,"font-size-adjust":"fontSizeAdjust",fontStretch:1,"font-stretch":"fontStretch",fontStyle:1,"font-style":"fontStyle",fontVariant:1,"font-variant":"fontVariant",fontWeight:1,"font-weight":"fontWeight",format:0,from:0,fx:0,fy:0,g1:0,g2:0,glyphName:1,"glyph-name":"glyphName",glyphOrientationHorizontal:1,"glyph-orientation-horizontal":"glyphOrientationHorizontal",glyphOrientationVertical:1,"glyph-orientation-vertical":"glyphOrientationVertical",glyphRef:1,gradientTransform:1,gradientUnits:1,hanging:0,horizAdvX:1,"horiz-adv-x":"horizAdvX",horizOriginX:1,"horiz-origin-x":"horizOriginX",ideographic:0,imageRendering:1,"image-rendering":"imageRendering",in2:0,in:0,inlist:0,intercept:0,k1:0,k2:0,k3:0,k4:0,k:0,kernelMatrix:1,kernelUnitLength:1,kerning:0,keyPoints:1,keySplines:1,keyTimes:1,lengthAdjust:1,letterSpacing:1,"letter-spacing":"letterSpacing",lightingColor:1,"lighting-color":"lightingColor",limitingConeAngle:1,local:0,markerEnd:1,"marker-end":"markerEnd",markerHeight:1,markerMid:1,"marker-mid":"markerMid",markerStart:1,"marker-start":"markerStart",markerUnits:1,markerWidth:1,mask:0,maskContentUnits:1,maskUnits:1,mathematical:0,mode:0,numOctaves:1,offset:0,opacity:0,operator:0,order:0,orient:0,orientation:0,origin:0,overflow:0,overlinePosition:1,"overline-position":"overlinePosition",overlineThickness:1,"overline-thickness":"overlineThickness",paintOrder:1,"paint-order":"paintOrder",panose1:0,"panose-1":"panose1",pathLength:1,patternContentUnits:1,patternTransform:1,patternUnits:1,pointerEvents:1,"pointer-events":"pointerEvents",points:0,pointsAtX:1,pointsAtY:1,pointsAtZ:1,prefix:0,preserveAlpha:1,preserveAspectRatio:1,primitiveUnits:1,property:0,r:0,radius:0,refX:1,refY:1,renderingIntent:1,"rendering-intent":"renderingIntent",repeatCount:1,repeatDur:1,requiredExtensions:1,requiredFeatures:1,resource:0,restart:0,result:0,results:0,rotate:0,rx:0,ry:0,scale:0,security:0,seed:0,shapeRendering:1,"shape-rendering":"shapeRendering",slope:0,spacing:0,specularConstant:1,specularExponent:1,speed:0,spreadMethod:1,startOffset:1,stdDeviation:1,stemh:0,stemv:0,stitchTiles:1,stopColor:1,"stop-color":"stopColor",stopOpacity:1,"stop-opacity":"stopOpacity",strikethroughPosition:1,"strikethrough-position":"strikethroughPosition",strikethroughThickness:1,"strikethrough-thickness":"strikethroughThickness",string:0,stroke:0,strokeDasharray:1,"stroke-dasharray":"strokeDasharray",strokeDashoffset:1,"stroke-dashoffset":"strokeDashoffset",strokeLinecap:1,"stroke-linecap":"strokeLinecap",strokeLinejoin:1,"stroke-linejoin":"strokeLinejoin",strokeMiterlimit:1,"stroke-miterlimit":"strokeMiterlimit",strokeWidth:1,"stroke-width":"strokeWidth",strokeOpacity:1,"stroke-opacity":"strokeOpacity",suppressContentEditableWarning:1,suppressHydrationWarning:1,surfaceScale:1,systemLanguage:1,tableValues:1,targetX:1,targetY:1,textAnchor:1,"text-anchor":"textAnchor",textDecoration:1,"text-decoration":"textDecoration",textLength:1,textRendering:1,"text-rendering":"textRendering",to:0,transform:0,typeof:0,u1:0,u2:0,underlinePosition:1,"underline-position":"underlinePosition",underlineThickness:1,"underline-thickness":"underlineThickness",unicode:0,unicodeBidi:1,"unicode-bidi":"unicodeBidi",unicodeRange:1,"unicode-range":"unicodeRange",unitsPerEm:1,"units-per-em":"unitsPerEm",unselectable:0,vAlphabetic:1,"v-alphabetic":"vAlphabetic",values:0,vectorEffect:1,"vector-effect":"vectorEffect",version:0,vertAdvY:1,"vert-adv-y":"vertAdvY",vertOriginX:1,"vert-origin-x":"vertOriginX",vertOriginY:1,"vert-origin-y":"vertOriginY",vHanging:1,"v-hanging":"vHanging",vIdeographic:1,"v-ideographic":"vIdeographic",viewBox:1,viewTarget:1,visibility:0,vMathematical:1,"v-mathematical":"vMathematical",vocab:0,widths:0,wordSpacing:1,"word-spacing":"wordSpacing",writingMode:1,"writing-mode":"writingMode",x1:0,x2:0,x:0,xChannelSelector:1,xHeight:1,"x-height":"xHeight",xlinkActuate:1,"xlink:actuate":"xlinkActuate",xlinkArcrole:1,"xlink:arcrole":"xlinkArcrole",xlinkHref:1,"xlink:href":"xlinkHref",xlinkRole:1,"xlink:role":"xlinkRole",xlinkShow:1,"xlink:show":"xlinkShow",xlinkTitle:1,"xlink:title":"xlinkTitle",xlinkType:1,"xlink:type":"xlinkType",xmlBase:1,"xml:base":"xmlBase",xmlLang:1,"xml:lang":"xmlLang",xmlns:0,"xml:space":"xmlSpace",xmlnsXlink:1,"xmlns:xlink":"xmlnsXlink",xmlSpace:1,y1:0,y2:0,y:0,yChannelSelector:1,z:0,zoomAndPan:1}},5229:function(e,t,n){"use strict";var o=(this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}})(n(1133)),r=n(8917);function i(e,t){var n={};return e&&"string"==typeof e?((0,o.default)(e,(function(e,o){e&&o&&(n[(0,r.camelCase)(e,t)]=o)})),n):n}i.default=i,e.exports=i},8917:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.camelCase=void 0;var n=/^--[a-zA-Z0-9-]+$/,o=/-([a-z])/g,r=/^[^-]+$/,i=/^-(webkit|moz|ms|o|khtml)-/,s=/^-(ms)-/,l=function(e,t){return t.toUpperCase()},a=function(e,t){return"".concat(t,"-")};t.camelCase=function(e,t){return void 0===t&&(t={}),function(e){return!e||r.test(e)||n.test(e)}(e)?e:(e=e.toLowerCase(),(e=t.reactCompat?e.replace(s,a):e.replace(i,a)).replace(o,l))}},1133:function(e,t,n){"use strict";var o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var r=o(n(9788));t.default=function(e,t){var n=null;if(!e||"string"!=typeof e)return n;var o=(0,r.default)(e),i="function"==typeof t;return o.forEach((function(e){if("declaration"===e.type){var o=e.property,r=e.value;i?t(o,r,e):r&&((n=n||{})[o]=r)}})),n}},9771:e=>{"use strict";e.exports=function(){}},1609:e=>{"use strict";e.exports=window.React},5795:e=>{"use strict";e.exports=window.ReactDOM},6942:(e,t)=>{var n;!function(){"use strict";var o={}.hasOwnProperty;function r(){for(var e="",t=0;t{if(!n){var s=1/0;for(u=0;u=i)&&Object.keys(o.O).every((e=>o.O[e](n[a])))?n.splice(a--,1):(l=!1,i0&&e[u-1][2]>i;u--)e[u]=e[u-1];e[u]=[n,r,i]},o.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return o.d(t,{a:t}),t},o.d=(e,t)=>{for(var n in t)o.o(t,n)&&!o.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),o.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{var e={662:0,394:0};o.O.j=t=>0===e[t];var t=(t,n)=>{var r,i,s=n[0],l=n[1],a=n[2],c=0;if(s.some((t=>0!==e[t]))){for(r in l)o.o(l,r)&&(o.m[r]=l[r]);if(a)var u=a(o)}for(t&&t(n);co(765)));r=o.O(r)})(); \ No newline at end of file diff --git a/build/blocks/venue/index.asset.php b/build/blocks/venue/index.asset.php index 324d0b56e..cea911406 100644 --- a/build/blocks/venue/index.asset.php +++ b/build/blocks/venue/index.asset.php @@ -1 +1 @@ - array('moment', 'react', 'react-jsx-runtime', 'wp-block-editor', 'wp-blocks', 'wp-components', 'wp-compose', 'wp-data', 'wp-date', 'wp-element', 'wp-i18n'), 'version' => '48c337124ea797af392b'); + array('moment', 'react', 'react-jsx-runtime', 'wp-block-editor', 'wp-blocks', 'wp-components', 'wp-compose', 'wp-data', 'wp-date', 'wp-element', 'wp-i18n'), 'version' => 'f3933860bba672e7e1a4'); diff --git a/build/blocks/venue/index.js b/build/blocks/venue/index.js index 8705ba9a9..33f25e2cc 100644 --- a/build/blocks/venue/index.js +++ b/build/blocks/venue/index.js @@ -1,3 +1,3 @@ (()=>{var e,t,n,r,o,i={7701:(e,t,n)=>{"use strict";const r=window.wp.blocks,o=window.wp.i18n,i=window.wp.blockEditor,l=window.wp.components,s=window.wp.data,a=window.wp.element,c=window.ReactJSXRuntime,u=e=>{const{zoom:t,type:n,className:r,location:o,height:i}=e,l={border:0,height:i,width:"100%"},s="https://maps.google.com/maps?"+new URLSearchParams({q:o,z:t||10,t:n||"m",output:"embed"}).toString();return(0,c.jsx)("iframe",{src:s,style:l,className:r,title:o})};function d(){const e=(0,s.select)("core/editor")?.getCurrentPostType();return"gatherpress_event"===e||"gatherpress_venue"===e}function p(e){if("object"==typeof GatherPress)return e.split(".").reduce(((e,t)=>e&&e[t]),GatherPress)}const f=e=>{const{zoom:t=10,className:r,location:i,height:l=300,latitude:s,longitude:u}=e,[d,f]=(0,a.useState)(null),h={height:l};return(0,a.useEffect)((()=>{(async()=>{const{default:e}=await n.e(481).then(n.t.bind(n,3481,23));await n.e(535).then(n.bind(n,1535)),await n.e(272).then(n.t.bind(n,1272,17)),await n.e(980).then(n.t.bind(n,8980,17)),f(e)})()}),[]),(0,a.useEffect)((()=>{if(!d||!s||!u)return;const e=d.map("map").setView([s,u],t);return d.Icon.Default.imagePath=p("urls.pluginUrl")+"build/images/",d.tileLayer("https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png",{attribution:(0,o.sprintf)(/* translators: %s: Link to OpenStreetMap contributors. */ /* translators: %s: Link to OpenStreetMap contributors. */ -(0,o.__)("© %s contributors","gatherpress"),'OpenStreetMap')}).addTo(e),d.marker([s,u]).addTo(e).bindPopup(i),()=>{e.remove()}}),[d,s,i,u,t]),d&&s&&u?(0,c.jsx)("div",{className:r,id:"map",style:h}):null},h=e=>{const t=(0,s.select)("core")?.canUser("create","posts"),n=Boolean((0,s.select)("core/edit-post")),{zoom:r,type:o,className:i,latitude:l,longitude:a}=e;let{location:d,height:h}=e;h||(h=300),!t||n||d||(d="660 4th Street #119 San Francisco CA 94107, USA");const m=p("settings.mapPlatform");return d&&m?"google"===m?(0,c.jsx)(u,{location:d,className:i,zoom:r,type:o,height:h}):"osm"===m?(0,c.jsx)(f,{location:d,latitude:l,longitude:a,className:i,zoom:r,height:h}):(0,c.jsx)(c.Fragment,{}):(0,c.jsx)(c.Fragment,{})};var m=n(1609);const g=Math.min,v=Math.max,y=Math.round,b=Math.floor,w=e=>({x:e,y:e}),x={left:"right",right:"left",bottom:"top",top:"bottom"},_={start:"end",end:"start"};function E(e,t,n){return v(e,g(t,n))}function S(e,t){return"function"==typeof e?e(t):e}function T(e){return e.split("-")[0]}function k(e){return e.split("-")[1]}function A(e){return"x"===e?"y":"x"}function O(e){return"y"===e?"height":"width"}function C(e){return["top","bottom"].includes(T(e))?"y":"x"}function j(e){return A(C(e))}function N(e){return e.replace(/start|end/g,(e=>_[e]))}function P(e){return e.replace(/left|right|bottom|top/g,(e=>x[e]))}function R(e){return"number"!=typeof e?function(e){return{top:0,right:0,bottom:0,left:0,...e}}(e):{top:e,right:e,bottom:e,left:e}}function L(e){const{x:t,y:n,width:r,height:o}=e;return{width:r,height:o,top:n,left:t,right:t+r,bottom:n+o,x:t,y:n}}function I(e,t,n){let{reference:r,floating:o}=e;const i=C(t),l=j(t),s=O(l),a=T(t),c="y"===i,u=r.x+r.width/2-o.width/2,d=r.y+r.height/2-o.height/2,p=r[s]/2-o[s]/2;let f;switch(a){case"top":f={x:u,y:r.y-o.height};break;case"bottom":f={x:u,y:r.y+r.height};break;case"right":f={x:r.x+r.width,y:d};break;case"left":f={x:r.x-o.width,y:d};break;default:f={x:r.x,y:r.y}}switch(k(t)){case"start":f[l]-=p*(n&&c?-1:1);break;case"end":f[l]+=p*(n&&c?-1:1)}return f}async function D(e,t){var n;void 0===t&&(t={});const{x:r,y:o,platform:i,rects:l,elements:s,strategy:a}=e,{boundary:c="clippingAncestors",rootBoundary:u="viewport",elementContext:d="floating",altBoundary:p=!1,padding:f=0}=S(t,e),h=R(f),m=s[p?"floating"===d?"reference":"floating":d],g=L(await i.getClippingRect({element:null==(n=await(null==i.isElement?void 0:i.isElement(m)))||n?m:m.contextElement||await(null==i.getDocumentElement?void 0:i.getDocumentElement(s.floating)),boundary:c,rootBoundary:u,strategy:a})),v="floating"===d?{x:r,y:o,width:l.floating.width,height:l.floating.height}:l.reference,y=await(null==i.getOffsetParent?void 0:i.getOffsetParent(s.floating)),b=await(null==i.isElement?void 0:i.isElement(y))&&await(null==i.getScale?void 0:i.getScale(y))||{x:1,y:1},w=L(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:s,rect:v,offsetParent:y,strategy:a}):v);return{top:(g.top-w.top+h.top)/b.y,bottom:(w.bottom-g.bottom+h.bottom)/b.y,left:(g.left-w.left+h.left)/b.x,right:(w.right-g.right+h.right)/b.x}}function M(e){return B(e)?(e.nodeName||"").toLowerCase():"#document"}function F(e){var t;return(null==e||null==(t=e.ownerDocument)?void 0:t.defaultView)||window}function z(e){var t;return null==(t=(B(e)?e.ownerDocument:e.document)||window.document)?void 0:t.documentElement}function B(e){return e instanceof Node||e instanceof F(e).Node}function H(e){return e instanceof Element||e instanceof F(e).Element}function V(e){return e instanceof HTMLElement||e instanceof F(e).HTMLElement}function W(e){return"undefined"!=typeof ShadowRoot&&(e instanceof ShadowRoot||e instanceof F(e).ShadowRoot)}function q(e){const{overflow:t,overflowX:n,overflowY:r,display:o}=K(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&!["inline","contents"].includes(o)}function $(e){return["table","td","th"].includes(M(e))}function U(e){return[":popover-open",":modal"].some((t=>{try{return e.matches(t)}catch(e){return!1}}))}function X(e){const t=G(),n=H(e)?K(e):e;return"none"!==n.transform||"none"!==n.perspective||!!n.containerType&&"normal"!==n.containerType||!t&&!!n.backdropFilter&&"none"!==n.backdropFilter||!t&&!!n.filter&&"none"!==n.filter||["transform","perspective","filter"].some((e=>(n.willChange||"").includes(e)))||["paint","layout","strict","content"].some((e=>(n.contain||"").includes(e)))}function G(){return!("undefined"==typeof CSS||!CSS.supports)&&CSS.supports("-webkit-backdrop-filter","none")}function Y(e){return["html","body","#document"].includes(M(e))}function K(e){return F(e).getComputedStyle(e)}function Z(e){return H(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function J(e){if("html"===M(e))return e;const t=e.assignedSlot||e.parentNode||W(e)&&e.host||z(e);return W(t)?t.host:t}function Q(e){const t=J(e);return Y(t)?e.ownerDocument?e.ownerDocument.body:e.body:V(t)&&q(t)?t:Q(t)}function ee(e,t,n){var r;void 0===t&&(t=[]),void 0===n&&(n=!0);const o=Q(e),i=o===(null==(r=e.ownerDocument)?void 0:r.body),l=F(o);return i?t.concat(l,l.visualViewport||[],q(o)?o:[],l.frameElement&&n?ee(l.frameElement):[]):t.concat(o,ee(o,[],n))}function te(e){const t=K(e);let n=parseFloat(t.width)||0,r=parseFloat(t.height)||0;const o=V(e),i=o?e.offsetWidth:n,l=o?e.offsetHeight:r,s=y(n)!==i||y(r)!==l;return s&&(n=i,r=l),{width:n,height:r,$:s}}function ne(e){return H(e)?e:e.contextElement}function re(e){const t=ne(e);if(!V(t))return w(1);const n=t.getBoundingClientRect(),{width:r,height:o,$:i}=te(t);let l=(i?y(n.width):n.width)/r,s=(i?y(n.height):n.height)/o;return l&&Number.isFinite(l)||(l=1),s&&Number.isFinite(s)||(s=1),{x:l,y:s}}const oe=w(0);function ie(e){const t=F(e);return G()&&t.visualViewport?{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}:oe}function le(e,t,n,r){void 0===t&&(t=!1),void 0===n&&(n=!1);const o=e.getBoundingClientRect(),i=ne(e);let l=w(1);t&&(r?H(r)&&(l=re(r)):l=re(e));const s=function(e,t,n){return void 0===t&&(t=!1),!(!n||t&&n!==F(e))&&t}(i,n,r)?ie(i):w(0);let a=(o.left+s.x)/l.x,c=(o.top+s.y)/l.y,u=o.width/l.x,d=o.height/l.y;if(i){const e=F(i),t=r&&H(r)?F(r):r;let n=e,o=n.frameElement;for(;o&&r&&t!==n;){const e=re(o),t=o.getBoundingClientRect(),r=K(o),i=t.left+(o.clientLeft+parseFloat(r.paddingLeft))*e.x,l=t.top+(o.clientTop+parseFloat(r.paddingTop))*e.y;a*=e.x,c*=e.y,u*=e.x,d*=e.y,a+=i,c+=l,n=F(o),o=n.frameElement}}return L({width:u,height:d,x:a,y:c})}function se(e){return le(z(e)).left+Z(e).scrollLeft}function ae(e,t,n){let r;if("viewport"===t)r=function(e,t){const n=F(e),r=z(e),o=n.visualViewport;let i=r.clientWidth,l=r.clientHeight,s=0,a=0;if(o){i=o.width,l=o.height;const e=G();(!e||e&&"fixed"===t)&&(s=o.offsetLeft,a=o.offsetTop)}return{width:i,height:l,x:s,y:a}}(e,n);else if("document"===t)r=function(e){const t=z(e),n=Z(e),r=e.ownerDocument.body,o=v(t.scrollWidth,t.clientWidth,r.scrollWidth,r.clientWidth),i=v(t.scrollHeight,t.clientHeight,r.scrollHeight,r.clientHeight);let l=-n.scrollLeft+se(e);const s=-n.scrollTop;return"rtl"===K(r).direction&&(l+=v(t.clientWidth,r.clientWidth)-o),{width:o,height:i,x:l,y:s}}(z(e));else if(H(t))r=function(e,t){const n=le(e,!0,"fixed"===t),r=n.top+e.clientTop,o=n.left+e.clientLeft,i=V(e)?re(e):w(1);return{width:e.clientWidth*i.x,height:e.clientHeight*i.y,x:o*i.x,y:r*i.y}}(t,n);else{const n=ie(e);r={...t,x:t.x-n.x,y:t.y-n.y}}return L(r)}function ce(e,t){const n=J(e);return!(n===t||!H(n)||Y(n))&&("fixed"===K(n).position||ce(n,t))}function ue(e,t,n){const r=V(t),o=z(t),i="fixed"===n,l=le(e,!0,i,t);let s={scrollLeft:0,scrollTop:0};const a=w(0);if(r||!r&&!i)if(("body"!==M(t)||q(o))&&(s=Z(t)),r){const e=le(t,!0,i,t);a.x=e.x+t.clientLeft,a.y=e.y+t.clientTop}else o&&(a.x=se(o));return{x:l.left+s.scrollLeft-a.x,y:l.top+s.scrollTop-a.y,width:l.width,height:l.height}}function de(e){return"static"===K(e).position}function pe(e,t){return V(e)&&"fixed"!==K(e).position?t?t(e):e.offsetParent:null}function fe(e,t){const n=F(e);if(U(e))return n;if(!V(e)){let t=J(e);for(;t&&!Y(t);){if(H(t)&&!de(t))return t;t=J(t)}return n}let r=pe(e,t);for(;r&&$(r)&&de(r);)r=pe(r,t);return r&&Y(r)&&de(r)&&!X(r)?n:r||function(e){let t=J(e);for(;V(t)&&!Y(t);){if(X(t))return t;if(U(t))return null;t=J(t)}return null}(e)||n}const he={convertOffsetParentRelativeRectToViewportRelativeRect:function(e){let{elements:t,rect:n,offsetParent:r,strategy:o}=e;const i="fixed"===o,l=z(r),s=!!t&&U(t.floating);if(r===l||s&&i)return n;let a={scrollLeft:0,scrollTop:0},c=w(1);const u=w(0),d=V(r);if((d||!d&&!i)&&(("body"!==M(r)||q(l))&&(a=Z(r)),V(r))){const e=le(r);c=re(r),u.x=e.x+r.clientLeft,u.y=e.y+r.clientTop}return{width:n.width*c.x,height:n.height*c.y,x:n.x*c.x-a.scrollLeft*c.x+u.x,y:n.y*c.y-a.scrollTop*c.y+u.y}},getDocumentElement:z,getClippingRect:function(e){let{element:t,boundary:n,rootBoundary:r,strategy:o}=e;const i=[..."clippingAncestors"===n?U(t)?[]:function(e,t){const n=t.get(e);if(n)return n;let r=ee(e,[],!1).filter((e=>H(e)&&"body"!==M(e))),o=null;const i="fixed"===K(e).position;let l=i?J(e):e;for(;H(l)&&!Y(l);){const t=K(l),n=X(l);n||"fixed"!==t.position||(o=null),(i?!n&&!o:!n&&"static"===t.position&&o&&["absolute","fixed"].includes(o.position)||q(l)&&!n&&ce(e,l))?r=r.filter((e=>e!==l)):o=t,l=J(l)}return t.set(e,r),r}(t,this._c):[].concat(n),r],l=i[0],s=i.reduce(((e,n)=>{const r=ae(t,n,o);return e.top=v(r.top,e.top),e.right=g(r.right,e.right),e.bottom=g(r.bottom,e.bottom),e.left=v(r.left,e.left),e}),ae(t,l,o));return{width:s.right-s.left,height:s.bottom-s.top,x:s.left,y:s.top}},getOffsetParent:fe,getElementRects:async function(e){const t=this.getOffsetParent||fe,n=this.getDimensions,r=await n(e.floating);return{reference:ue(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}},getClientRects:function(e){return Array.from(e.getClientRects())},getDimensions:function(e){const{width:t,height:n}=te(e);return{width:t,height:n}},getScale:re,isElement:H,isRTL:function(e){return"rtl"===K(e).direction}};const me=function(e){return void 0===e&&(e=0),{name:"offset",options:e,async fn(t){var n,r;const{x:o,y:i,placement:l,middlewareData:s}=t,a=await async function(e,t){const{placement:n,platform:r,elements:o}=e,i=await(null==r.isRTL?void 0:r.isRTL(o.floating)),l=T(n),s=k(n),a="y"===C(n),c=["left","top"].includes(l)?-1:1,u=i&&a?-1:1,d=S(t,e);let{mainAxis:p,crossAxis:f,alignmentAxis:h}="number"==typeof d?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:0,crossAxis:0,alignmentAxis:null,...d};return s&&"number"==typeof h&&(f="end"===s?-1*h:h),a?{x:f*u,y:p*c}:{x:p*c,y:f*u}}(t,e);return l===(null==(n=s.offset)?void 0:n.placement)&&null!=(r=s.arrow)&&r.alignmentOffset?{}:{x:o+a.x,y:i+a.y,data:{...a,placement:l}}}}},ge=function(e){return void 0===e&&(e={}),{name:"shift",options:e,async fn(t){const{x:n,y:r,placement:o}=t,{mainAxis:i=!0,crossAxis:l=!1,limiter:s={fn:e=>{let{x:t,y:n}=e;return{x:t,y:n}}},...a}=S(e,t),c={x:n,y:r},u=await D(t,a),d=C(T(o)),p=A(d);let f=c[p],h=c[d];if(i){const e="y"===p?"bottom":"right";f=E(f+u["y"===p?"top":"left"],f,f-u[e])}if(l){const e="y"===d?"bottom":"right";h=E(h+u["y"===d?"top":"left"],h,h-u[e])}const m=s.fn({...t,[p]:f,[d]:h});return{...m,data:{x:m.x-n,y:m.y-r}}}}},ve=function(e){return void 0===e&&(e={}),{name:"flip",options:e,async fn(t){var n,r;const{placement:o,middlewareData:i,rects:l,initialPlacement:s,platform:a,elements:c}=t,{mainAxis:u=!0,crossAxis:d=!0,fallbackPlacements:p,fallbackStrategy:f="bestFit",fallbackAxisSideDirection:h="none",flipAlignment:m=!0,...g}=S(e,t);if(null!=(n=i.arrow)&&n.alignmentOffset)return{};const v=T(o),y=C(s),b=T(s)===s,w=await(null==a.isRTL?void 0:a.isRTL(c.floating)),x=p||(b||!m?[P(s)]:function(e){const t=P(e);return[N(e),t,N(t)]}(s)),_="none"!==h;!p&&_&&x.push(...function(e,t,n,r){const o=k(e);let i=function(e,t,n){const r=["left","right"],o=["right","left"],i=["top","bottom"],l=["bottom","top"];switch(e){case"top":case"bottom":return n?t?o:r:t?r:o;case"left":case"right":return t?i:l;default:return[]}}(T(e),"start"===n,r);return o&&(i=i.map((e=>e+"-"+o)),t&&(i=i.concat(i.map(N)))),i}(s,m,h,w));const E=[s,...x],A=await D(t,g),R=[];let L=(null==(r=i.flip)?void 0:r.overflows)||[];if(u&&R.push(A[v]),d){const e=function(e,t,n){void 0===n&&(n=!1);const r=k(e),o=j(e),i=O(o);let l="x"===o?r===(n?"end":"start")?"right":"left":"start"===r?"bottom":"top";return t.reference[i]>t.floating[i]&&(l=P(l)),[l,P(l)]}(o,l,w);R.push(A[e[0]],A[e[1]])}if(L=[...L,{placement:o,overflows:R}],!R.every((e=>e<=0))){var I,M;const e=((null==(I=i.flip)?void 0:I.index)||0)+1,t=E[e];if(t)return{data:{index:e,overflows:L},reset:{placement:t}};let n=null==(M=L.filter((e=>e.overflows[0]<=0)).sort(((e,t)=>e.overflows[1]-t.overflows[1]))[0])?void 0:M.placement;if(!n)switch(f){case"bestFit":{var F;const e=null==(F=L.filter((e=>{if(_){const t=C(e.placement);return t===y||"y"===t}return!0})).map((e=>[e.placement,e.overflows.filter((e=>e>0)).reduce(((e,t)=>e+t),0)])).sort(((e,t)=>e[1]-t[1]))[0])?void 0:F[0];e&&(n=e);break}case"initialPlacement":n=s}if(o!==n)return{reset:{placement:n}}}return{}}}},ye=(e,t,n)=>{const r=new Map,o={platform:he,...n},i={...o.platform,_c:r};return(async(e,t,n)=>{const{placement:r="bottom",strategy:o="absolute",middleware:i=[],platform:l}=n,s=i.filter(Boolean),a=await(null==l.isRTL?void 0:l.isRTL(t));let c=await l.getElementRects({reference:e,floating:t,strategy:o}),{x:u,y:d}=I(c,r,a),p=r,f={},h=0;for(let n=0;n{if(!e)return{tooltipStyles:{},tooltipArrowStyles:{},place:r};if(null===t)return{tooltipStyles:{},tooltipArrowStyles:{},place:r};const a=l;return n?(a.push({name:"arrow",options:c={element:n,padding:5},async fn(e){const{x:t,y:n,placement:r,rects:o,platform:i,elements:l,middlewareData:s}=e,{element:a,padding:u=0}=S(c,e)||{};if(null==a)return{};const d=R(u),p={x:t,y:n},f=j(r),h=O(f),m=await i.getDimensions(a),v="y"===f,y=v?"top":"left",b=v?"bottom":"right",w=v?"clientHeight":"clientWidth",x=o.reference[h]+o.reference[f]-p[f]-o.floating[h],_=p[f]-o.reference[f],T=await(null==i.getOffsetParent?void 0:i.getOffsetParent(a));let A=T?T[w]:0;A&&await(null==i.isElement?void 0:i.isElement(T))||(A=l.floating[w]||o.floating[h]);const C=x/2-_/2,N=A/2-m[h]/2-1,P=g(d[y],N),L=g(d[b],N),I=P,D=A-m[h]-L,M=A/2-m[h]/2+C,F=E(I,M,D),z=!s.arrow&&null!=k(r)&&M!==F&&o.reference[h]/2-(M{var o,i;const l={left:`${e}px`,top:`${t}px`,border:s},{x:a,y:c}=null!==(o=r.arrow)&&void 0!==o?o:{x:0,y:0},u=null!==(i={top:"bottom",right:"left",bottom:"top",left:"right"}[n.split("-")[0]])&&void 0!==i?i:"bottom",d=s&&{borderBottom:s,borderRight:s};let p=0;if(s){const e=`${s}`.match(/(\d+)px/);p=(null==e?void 0:e[1])?Number(e[1]):1}return{tooltipStyles:l,tooltipArrowStyles:{left:null!=a?`${a}px`:"",top:null!=c?`${c}px`:"",right:"",bottom:"",...d,[u]:`-${4+p}px`},place:n}}))):ye(e,t,{placement:"bottom",strategy:i,middleware:a}).then((({x:e,y:t,placement:n})=>({tooltipStyles:{left:`${e}px`,top:`${t}px`},tooltipArrowStyles:{},place:n})));var c},Ee=(e,t)=>!("CSS"in window&&"supports"in window.CSS)||window.CSS.supports(e,t),Se=(e,t,n)=>{let r=null;const o=function(...o){const i=()=>{r=null,n||e.apply(this,o)};n&&!r&&(e.apply(this,o),r=setTimeout(i,t)),n||(r&&clearTimeout(r),r=setTimeout(i,t))};return o.cancel=()=>{r&&(clearTimeout(r),r=null)},o},Te=e=>null!==e&&!Array.isArray(e)&&"object"==typeof e,ke=(e,t)=>{if(e===t)return!0;if(Array.isArray(e)&&Array.isArray(t))return e.length===t.length&&e.every(((e,n)=>ke(e,t[n])));if(Array.isArray(e)!==Array.isArray(t))return!1;if(!Te(e)||!Te(t))return e===t;const n=Object.keys(e),r=Object.keys(t);return n.length===r.length&&n.every((n=>ke(e[n],t[n])))},Ae=e=>{if(!(e instanceof HTMLElement||e instanceof SVGElement))return!1;const t=getComputedStyle(e);return["overflow","overflow-x","overflow-y"].some((e=>{const n=t.getPropertyValue(e);return"auto"===n||"scroll"===n}))},Oe=e=>{if(!e)return null;let t=e.parentElement;for(;t;){if(Ae(t))return t;t=t.parentElement}return document.scrollingElement||document.documentElement},Ce="undefined"!=typeof window?m.useLayoutEffect:m.useEffect,je=e=>{e.current&&(clearTimeout(e.current),e.current=null)},Ne={anchorRefs:new Set,activeAnchor:{current:null},attach:()=>{},detach:()=>{},setActiveAnchor:()=>{}},Pe=(0,m.createContext)({getTooltipData:()=>Ne});function Re(e="DEFAULT_TOOLTIP_ID"){return(0,m.useContext)(Pe).getTooltipData(e)}var Le={tooltip:"core-styles-module_tooltip__3vRRp",fixed:"core-styles-module_fixed__pcSol",arrow:"core-styles-module_arrow__cvMwQ",noArrow:"core-styles-module_noArrow__xock6",clickable:"core-styles-module_clickable__ZuTTB",show:"core-styles-module_show__Nt9eE",closing:"core-styles-module_closing__sGnxF"},Ie={tooltip:"styles-module_tooltip__mnnfp",arrow:"styles-module_arrow__K0L3T",dark:"styles-module_dark__xNqje",light:"styles-module_light__Z6W-X",success:"styles-module_success__A2AKt",warning:"styles-module_warning__SCK0X",error:"styles-module_error__JvumD",info:"styles-module_info__BWdHW"};const De=({forwardRef:e,id:t,className:n,classNameArrow:r,variant:o="dark",anchorId:i,anchorSelect:l,place:s="top",offset:a=10,events:c=["hover"],openOnClick:u=!1,positionStrategy:d="absolute",middlewares:p,wrapper:f,delayShow:h=0,delayHide:y=0,float:w=!1,hidden:x=!1,noArrow:_=!1,clickable:E=!1,closeOnEsc:S=!1,closeOnScroll:T=!1,closeOnResize:k=!1,openEvents:A,closeEvents:O,globalCloseEvents:C,imperativeModeOnly:j,style:N,position:P,afterShow:R,afterHide:L,content:I,contentWrapperRef:D,isOpen:M,defaultIsOpen:F=!1,setIsOpen:B,activeAnchor:H,setActiveAnchor:V,border:W,opacity:q,arrowColor:$,role:U="tooltip"})=>{var X;const G=(0,m.useRef)(null),Y=(0,m.useRef)(null),K=(0,m.useRef)(null),Z=(0,m.useRef)(null),J=(0,m.useRef)(null),[Q,te]=(0,m.useState)({tooltipStyles:{},tooltipArrowStyles:{},place:s}),[re,oe]=(0,m.useState)(!1),[ie,se]=(0,m.useState)(!1),[ae,ce]=(0,m.useState)(null),ue=(0,m.useRef)(!1),de=(0,m.useRef)(null),{anchorRefs:pe,setActiveAnchor:fe}=Re(t),he=(0,m.useRef)(!1),[me,ge]=(0,m.useState)([]),ve=(0,m.useRef)(!1),ye=u||c.includes("click"),we=ye||(null==A?void 0:A.click)||(null==A?void 0:A.dblclick)||(null==A?void 0:A.mousedown),xe=A?{...A}:{mouseover:!0,focus:!0,mouseenter:!1,click:!1,dblclick:!1,mousedown:!1};!A&&ye&&Object.assign(xe,{mouseenter:!1,focus:!1,mouseover:!1,click:!0});const Ee=O?{...O}:{mouseout:!0,blur:!0,mouseleave:!1,click:!1,dblclick:!1,mouseup:!1};!O&&ye&&Object.assign(Ee,{mouseleave:!1,blur:!1,mouseout:!1});const Te=C?{...C}:{escape:S||!1,scroll:T||!1,resize:k||!1,clickOutsideAnchor:we||!1};j&&(Object.assign(xe,{mouseenter:!1,focus:!1,click:!1,dblclick:!1,mousedown:!1}),Object.assign(Ee,{mouseleave:!1,blur:!1,click:!1,dblclick:!1,mouseup:!1}),Object.assign(Te,{escape:!1,scroll:!1,resize:!1,clickOutsideAnchor:!1})),Ce((()=>(ve.current=!0,()=>{ve.current=!1})),[]);const Ae=e=>{ve.current&&(e&&se(!0),setTimeout((()=>{ve.current&&(null==B||B(e),void 0===M&&oe(e))}),10))};(0,m.useEffect)((()=>{if(void 0===M)return()=>null;M&&se(!0);const e=setTimeout((()=>{oe(M)}),10);return()=>{clearTimeout(e)}}),[M]),(0,m.useEffect)((()=>{if(re!==ue.current)if(je(J),ue.current=re,re)null==R||R();else{const e=(()=>{const e=getComputedStyle(document.body).getPropertyValue("--rt-transition-show-delay").match(/^([\d.]+)(ms|s)$/);if(!e)return 0;const[,t,n]=e;return Number(t)*("ms"===n?1:1e3)})();J.current=setTimeout((()=>{se(!1),ce(null),null==L||L()}),e+25)}}),[re]);const Ne=e=>{te((t=>ke(t,e)?t:e))},Pe=(e=h)=>{je(K),ie?Ae(!0):K.current=setTimeout((()=>{Ae(!0)}),e)},De=(e=y)=>{je(Z),Z.current=setTimeout((()=>{he.current||Ae(!1)}),e)},Me=e=>{var t;if(!e)return;const n=null!==(t=e.currentTarget)&&void 0!==t?t:e.target;if(!(null==n?void 0:n.isConnected))return V(null),void fe({current:null});h?Pe():Ae(!0),V(n),fe({current:n}),je(Z)},Fe=()=>{E?De(y||100):y?De():Ae(!1),je(K)},ze=({x:e,y:t})=>{var n;const r={getBoundingClientRect:()=>({x:e,y:t,width:0,height:0,top:t,left:e,right:e,bottom:t})};_e({place:null!==(n=null==ae?void 0:ae.place)&&void 0!==n?n:s,offset:a,elementReference:r,tooltipReference:G.current,tooltipArrowReference:Y.current,strategy:d,middlewares:p,border:W}).then((e=>{Ne(e)}))},Be=e=>{if(!e)return;const t=e,n={x:t.clientX,y:t.clientY};ze(n),de.current=n},He=e=>{var t;if(!re)return;const n=e.target;n.isConnected&&((null===(t=G.current)||void 0===t?void 0:t.contains(n))||[document.querySelector(`[id='${i}']`),...me].some((e=>null==e?void 0:e.contains(n)))||(Ae(!1),je(K)))},Ve=Se(Me,50,!0),We=Se(Fe,50,!0),qe=e=>{We.cancel(),Ve(e)},$e=()=>{Ve.cancel(),We()},Ue=(0,m.useCallback)((()=>{var e,t;const n=null!==(e=null==ae?void 0:ae.position)&&void 0!==e?e:P;n?ze(n):w?de.current&&ze(de.current):(null==H?void 0:H.isConnected)&&_e({place:null!==(t=null==ae?void 0:ae.place)&&void 0!==t?t:s,offset:a,elementReference:H,tooltipReference:G.current,tooltipArrowReference:Y.current,strategy:d,middlewares:p,border:W}).then((e=>{ve.current&&Ne(e)}))}),[re,H,I,N,s,null==ae?void 0:ae.place,a,d,P,null==ae?void 0:ae.position,w]);(0,m.useEffect)((()=>{var e,t;const n=new Set(pe);me.forEach((e=>{n.add({current:e})}));const r=document.querySelector(`[id='${i}']`);r&&n.add({current:r});const o=()=>{Ae(!1)},l=Oe(H),s=Oe(G.current);Te.scroll&&(window.addEventListener("scroll",o),null==l||l.addEventListener("scroll",o),null==s||s.addEventListener("scroll",o));let a=null;Te.resize?window.addEventListener("resize",o):H&&G.current&&(a=function(e,t,n,r){void 0===r&&(r={});const{ancestorScroll:o=!0,ancestorResize:i=!0,elementResize:l="function"==typeof ResizeObserver,layoutShift:s="function"==typeof IntersectionObserver,animationFrame:a=!1}=r,c=ne(e),u=o||i?[...c?ee(c):[],...ee(t)]:[];u.forEach((e=>{o&&e.addEventListener("scroll",n,{passive:!0}),i&&e.addEventListener("resize",n)}));const d=c&&s?function(e,t){let n,r=null;const o=z(e);function i(){var e;clearTimeout(n),null==(e=r)||e.disconnect(),r=null}return function l(s,a){void 0===s&&(s=!1),void 0===a&&(a=1),i();const{left:c,top:u,width:d,height:p}=e.getBoundingClientRect();if(s||t(),!d||!p)return;const f={rootMargin:-b(u)+"px "+-b(o.clientWidth-(c+d))+"px "+-b(o.clientHeight-(u+p))+"px "+-b(c)+"px",threshold:v(0,g(1,a))||1};let h=!0;function m(e){const t=e[0].intersectionRatio;if(t!==a){if(!h)return l();t?l(!1,t):n=setTimeout((()=>{l(!1,1e-7)}),1e3)}h=!1}try{r=new IntersectionObserver(m,{...f,root:o.ownerDocument})}catch(e){r=new IntersectionObserver(m,f)}r.observe(e)}(!0),i}(c,n):null;let p,f=-1,h=null;l&&(h=new ResizeObserver((e=>{let[r]=e;r&&r.target===c&&h&&(h.unobserve(t),cancelAnimationFrame(f),f=requestAnimationFrame((()=>{var e;null==(e=h)||e.observe(t)}))),n()})),c&&!a&&h.observe(c),h.observe(t));let m=a?le(e):null;return a&&function t(){const r=le(e);!m||r.x===m.x&&r.y===m.y&&r.width===m.width&&r.height===m.height||n(),m=r,p=requestAnimationFrame(t)}(),n(),()=>{var e;u.forEach((e=>{o&&e.removeEventListener("scroll",n),i&&e.removeEventListener("resize",n)})),null==d||d(),null==(e=h)||e.disconnect(),h=null,a&&cancelAnimationFrame(p)}}(H,G.current,Ue,{ancestorResize:!0,elementResize:!0,layoutShift:!0}));const c=e=>{"Escape"===e.key&&Ae(!1)};Te.escape&&window.addEventListener("keydown",c),Te.clickOutsideAnchor&&window.addEventListener("click",He);const u=[],d=e=>{re&&(null==e?void 0:e.target)===H||Me(e)},p=e=>{re&&(null==e?void 0:e.target)===H&&Fe()},f=["mouseover","mouseout","mouseenter","mouseleave","focus","blur"],h=["click","dblclick","mousedown","mouseup"];Object.entries(xe).forEach((([e,t])=>{t&&(f.includes(e)?u.push({event:e,listener:qe}):h.includes(e)&&u.push({event:e,listener:d}))})),Object.entries(Ee).forEach((([e,t])=>{t&&(f.includes(e)?u.push({event:e,listener:$e}):h.includes(e)&&u.push({event:e,listener:p}))})),w&&u.push({event:"pointermove",listener:Be});const m=()=>{he.current=!0},y=()=>{he.current=!1,Fe()};return E&&!we&&(null===(e=G.current)||void 0===e||e.addEventListener("mouseenter",m),null===(t=G.current)||void 0===t||t.addEventListener("mouseleave",y)),u.forEach((({event:e,listener:t})=>{n.forEach((n=>{var r;null===(r=n.current)||void 0===r||r.addEventListener(e,t)}))})),()=>{var e,t;Te.scroll&&(window.removeEventListener("scroll",o),null==l||l.removeEventListener("scroll",o),null==s||s.removeEventListener("scroll",o)),Te.resize?window.removeEventListener("resize",o):null==a||a(),Te.clickOutsideAnchor&&window.removeEventListener("click",He),Te.escape&&window.removeEventListener("keydown",c),E&&!we&&(null===(e=G.current)||void 0===e||e.removeEventListener("mouseenter",m),null===(t=G.current)||void 0===t||t.removeEventListener("mouseleave",y)),u.forEach((({event:e,listener:t})=>{n.forEach((n=>{var r;null===(r=n.current)||void 0===r||r.removeEventListener(e,t)}))}))}}),[H,Ue,ie,pe,me,A,O,C,ye,h,y]),(0,m.useEffect)((()=>{var e,n;let r=null!==(n=null!==(e=null==ae?void 0:ae.anchorSelect)&&void 0!==e?e:l)&&void 0!==n?n:"";!r&&t&&(r=`[data-tooltip-id='${t.replace(/'/g,"\\'")}']`);const o=new MutationObserver((e=>{const n=[],o=[];e.forEach((e=>{if("attributes"===e.type&&"data-tooltip-id"===e.attributeName&&(e.target.getAttribute("data-tooltip-id")===t?n.push(e.target):e.oldValue===t&&o.push(e.target)),"childList"===e.type){if(H){const t=[...e.removedNodes].filter((e=>1===e.nodeType));if(r)try{o.push(...t.filter((e=>e.matches(r)))),o.push(...t.flatMap((e=>[...e.querySelectorAll(r)])))}catch(e){}t.some((e=>{var t;return!!(null===(t=null==e?void 0:e.contains)||void 0===t?void 0:t.call(e,H))&&(se(!1),Ae(!1),V(null),je(K),je(Z),!0)}))}if(r)try{const t=[...e.addedNodes].filter((e=>1===e.nodeType));n.push(...t.filter((e=>e.matches(r)))),n.push(...t.flatMap((e=>[...e.querySelectorAll(r)])))}catch(e){}}})),(n.length||o.length)&&ge((e=>[...e.filter((e=>!o.includes(e))),...n]))}));return o.observe(document.body,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["data-tooltip-id"],attributeOldValue:!0}),()=>{o.disconnect()}}),[t,l,null==ae?void 0:ae.anchorSelect,H]),(0,m.useEffect)((()=>{Ue()}),[Ue]),(0,m.useEffect)((()=>{if(!(null==D?void 0:D.current))return()=>null;const e=new ResizeObserver((()=>{setTimeout((()=>Ue()))}));return e.observe(D.current),()=>{e.disconnect()}}),[I,null==D?void 0:D.current]),(0,m.useEffect)((()=>{var e;const t=document.querySelector(`[id='${i}']`),n=[...me,t];H&&n.includes(H)||V(null!==(e=me[0])&&void 0!==e?e:t)}),[i,me,H]),(0,m.useEffect)((()=>(F&&Ae(!0),()=>{je(K),je(Z)})),[]),(0,m.useEffect)((()=>{var e;let n=null!==(e=null==ae?void 0:ae.anchorSelect)&&void 0!==e?e:l;if(!n&&t&&(n=`[data-tooltip-id='${t.replace(/'/g,"\\'")}']`),n)try{const e=Array.from(document.querySelectorAll(n));ge(e)}catch(e){ge([])}}),[t,l,null==ae?void 0:ae.anchorSelect]),(0,m.useEffect)((()=>{K.current&&(je(K),Pe(h))}),[h]);const Xe=null!==(X=null==ae?void 0:ae.content)&&void 0!==X?X:I,Ge=re&&Object.keys(Q.tooltipStyles).length>0;return(0,m.useImperativeHandle)(e,(()=>({open:e=>{if(null==e?void 0:e.anchorSelect)try{document.querySelector(e.anchorSelect)}catch(t){return void console.warn(`[react-tooltip] "${e.anchorSelect}" is not a valid CSS selector`)}ce(null!=e?e:null),(null==e?void 0:e.delay)?Pe(e.delay):Ae(!0)},close:e=>{(null==e?void 0:e.delay)?De(e.delay):Ae(!1)},activeAnchor:H,place:Q.place,isOpen:Boolean(ie&&!x&&Xe&&Ge)}))),ie&&!x&&Xe?m.createElement(f,{id:t,role:U,className:be("react-tooltip",Le.tooltip,Ie.tooltip,Ie[o],n,`react-tooltip__place-${Q.place}`,Le[Ge?"show":"closing"],Ge?"react-tooltip__show":"react-tooltip__closing","fixed"===d&&Le.fixed,E&&Le.clickable),onTransitionEnd:e=>{je(J),re||"opacity"!==e.propertyName||(se(!1),ce(null),null==L||L())},style:{...N,...Q.tooltipStyles,opacity:void 0!==q&&Ge?q:void 0},ref:G},Xe,m.createElement(f,{className:be("react-tooltip-arrow",Le.arrow,Ie.arrow,r,_&&Le.noArrow),style:{...Q.tooltipArrowStyles,background:$?`linear-gradient(to right bottom, transparent 50%, ${$} 50%)`:void 0},ref:Y})):null},Me=({content:e})=>m.createElement("span",{dangerouslySetInnerHTML:{__html:e}}),Fe=m.forwardRef((({id:e,anchorId:t,anchorSelect:n,content:r,html:o,render:i,className:l,classNameArrow:s,variant:a="dark",place:c="top",offset:u=10,wrapper:d="div",children:p=null,events:f=["hover"],openOnClick:h=!1,positionStrategy:g="absolute",middlewares:v,delayShow:y=0,delayHide:b=0,float:w=!1,hidden:x=!1,noArrow:_=!1,clickable:E=!1,closeOnEsc:S=!1,closeOnScroll:T=!1,closeOnResize:k=!1,openEvents:A,closeEvents:O,globalCloseEvents:C,imperativeModeOnly:j=!1,style:N,position:P,isOpen:R,defaultIsOpen:L=!1,disableStyleInjection:I=!1,border:D,opacity:M,arrowColor:F,setIsOpen:z,afterShow:B,afterHide:H,role:V="tooltip"},W)=>{const[q,$]=(0,m.useState)(r),[U,X]=(0,m.useState)(o),[G,Y]=(0,m.useState)(c),[K,Z]=(0,m.useState)(a),[J,Q]=(0,m.useState)(u),[ee,te]=(0,m.useState)(y),[ne,re]=(0,m.useState)(b),[oe,ie]=(0,m.useState)(w),[le,se]=(0,m.useState)(x),[ae,ce]=(0,m.useState)(d),[ue,de]=(0,m.useState)(f),[pe,fe]=(0,m.useState)(g),[he,me]=(0,m.useState)(null),[ge,ve]=(0,m.useState)(null),ye=(0,m.useRef)(I),{anchorRefs:we,activeAnchor:xe}=Re(e),_e=e=>null==e?void 0:e.getAttributeNames().reduce(((t,n)=>{var r;return n.startsWith("data-tooltip-")&&(t[n.replace(/^data-tooltip-/,"")]=null!==(r=null==e?void 0:e.getAttribute(n))&&void 0!==r?r:null),t}),{}),Se=e=>{const t={place:e=>{var t;Y(null!==(t=e)&&void 0!==t?t:c)},content:e=>{$(null!=e?e:r)},html:e=>{X(null!=e?e:o)},variant:e=>{var t;Z(null!==(t=e)&&void 0!==t?t:a)},offset:e=>{Q(null===e?u:Number(e))},wrapper:e=>{var t;ce(null!==(t=e)&&void 0!==t?t:d)},events:e=>{const t=null==e?void 0:e.split(" ");de(null!=t?t:f)},"position-strategy":e=>{var t;fe(null!==(t=e)&&void 0!==t?t:g)},"delay-show":e=>{te(null===e?y:Number(e))},"delay-hide":e=>{re(null===e?b:Number(e))},float:e=>{ie(null===e?w:"true"===e)},hidden:e=>{se(null===e?x:"true"===e)},"class-name":e=>{me(e)}};Object.values(t).forEach((e=>e(null))),Object.entries(e).forEach((([e,n])=>{var r;null===(r=t[e])||void 0===r||r.call(t,n)}))};(0,m.useEffect)((()=>{$(r)}),[r]),(0,m.useEffect)((()=>{X(o)}),[o]),(0,m.useEffect)((()=>{Y(c)}),[c]),(0,m.useEffect)((()=>{Z(a)}),[a]),(0,m.useEffect)((()=>{Q(u)}),[u]),(0,m.useEffect)((()=>{te(y)}),[y]),(0,m.useEffect)((()=>{re(b)}),[b]),(0,m.useEffect)((()=>{ie(w)}),[w]),(0,m.useEffect)((()=>{se(x)}),[x]),(0,m.useEffect)((()=>{fe(g)}),[g]),(0,m.useEffect)((()=>{ye.current!==I&&console.warn("[react-tooltip] Do not change `disableStyleInjection` dynamically.")}),[I]),(0,m.useEffect)((()=>{"undefined"!=typeof window&&window.dispatchEvent(new CustomEvent("react-tooltip-inject-styles",{detail:{disableCore:"core"===I,disableBase:I}}))}),[]),(0,m.useEffect)((()=>{var r;const o=new Set(we);let i=n;if(!i&&e&&(i=`[data-tooltip-id='${e.replace(/'/g,"\\'")}']`),i)try{document.querySelectorAll(i).forEach((e=>{o.add({current:e})}))}catch(r){console.warn(`[react-tooltip] "${i}" is not a valid CSS selector`)}const l=document.querySelector(`[id='${t}']`);if(l&&o.add({current:l}),!o.size)return()=>null;const s=null!==(r=null!=ge?ge:l)&&void 0!==r?r:xe.current,a=new MutationObserver((e=>{e.forEach((e=>{var t;if(!s||"attributes"!==e.type||!(null===(t=e.attributeName)||void 0===t?void 0:t.startsWith("data-tooltip-")))return;const n=_e(s);Se(n)}))})),c={attributes:!0,childList:!1,subtree:!1};if(s){const e=_e(s);Se(e),a.observe(s,c)}return()=>{a.disconnect()}}),[we,xe,ge,t,n]),(0,m.useEffect)((()=>{(null==N?void 0:N.border)&&console.warn("[react-tooltip] Do not set `style.border`. Use `border` prop instead."),D&&!Ee("border",`${D}`)&&console.warn(`[react-tooltip] "${D}" is not a valid \`border\`.`),(null==N?void 0:N.opacity)&&console.warn("[react-tooltip] Do not set `style.opacity`. Use `opacity` prop instead."),M&&!Ee("opacity",`${M}`)&&console.warn(`[react-tooltip] "${M}" is not a valid \`opacity\`.`)}),[]);let Te=p;const ke=(0,m.useRef)(null);if(i){const e=i({content:(null==ge?void 0:ge.getAttribute("data-tooltip-content"))||q||null,activeAnchor:ge});Te=e?m.createElement("div",{ref:ke,className:"react-tooltip-content-wrapper"},e):null}else q&&(Te=q);U&&(Te=m.createElement(Me,{content:U}));const Ae={forwardRef:W,id:e,anchorId:t,anchorSelect:n,className:be(l,he),classNameArrow:s,content:Te,contentWrapperRef:ke,place:G,variant:K,offset:J,wrapper:ae,events:ue,openOnClick:h,positionStrategy:pe,middlewares:v,delayShow:ee,delayHide:ne,float:oe,hidden:le,noArrow:_,clickable:E,closeOnEsc:S,closeOnScroll:T,closeOnResize:k,openEvents:A,closeEvents:O,globalCloseEvents:C,imperativeModeOnly:j,style:N,position:P,isOpen:R,defaultIsOpen:L,border:D,opacity:M,arrowColor:F,setIsOpen:z,afterShow:B,afterHide:H,activeAnchor:ge,setActiveAnchor:e=>ve(e),role:V};return m.createElement(De,{...Ae})}));"undefined"!=typeof window&&window.addEventListener("react-tooltip-inject-styles",(e=>{e.detail.disableCore||xe({css:":root{--rt-color-white:#fff;--rt-color-dark:#222;--rt-color-success:#8dc572;--rt-color-error:#be6464;--rt-color-warning:#f0ad4e;--rt-color-info:#337ab7;--rt-opacity:0.9;--rt-transition-show-delay:0.15s;--rt-transition-closing-delay:0.15s}.core-styles-module_tooltip__3vRRp{position:absolute;top:0;left:0;pointer-events:none;opacity:0;will-change:opacity}.core-styles-module_fixed__pcSol{position:fixed}.core-styles-module_arrow__cvMwQ{position:absolute;background:inherit}.core-styles-module_noArrow__xock6{display:none}.core-styles-module_clickable__ZuTTB{pointer-events:auto}.core-styles-module_show__Nt9eE{opacity:var(--rt-opacity);transition:opacity var(--rt-transition-show-delay)ease-out}.core-styles-module_closing__sGnxF{opacity:0;transition:opacity var(--rt-transition-closing-delay)ease-in}",type:"core"}),e.detail.disableBase||xe({css:"\n.styles-module_tooltip__mnnfp{padding:8px 16px;border-radius:3px;font-size:90%;width:max-content}.styles-module_arrow__K0L3T{width:8px;height:8px}[class*='react-tooltip__place-top']>.styles-module_arrow__K0L3T{transform:rotate(45deg)}[class*='react-tooltip__place-right']>.styles-module_arrow__K0L3T{transform:rotate(135deg)}[class*='react-tooltip__place-bottom']>.styles-module_arrow__K0L3T{transform:rotate(225deg)}[class*='react-tooltip__place-left']>.styles-module_arrow__K0L3T{transform:rotate(315deg)}.styles-module_dark__xNqje{background:var(--rt-color-dark);color:var(--rt-color-white)}.styles-module_light__Z6W-X{background-color:var(--rt-color-white);color:var(--rt-color-dark)}.styles-module_success__A2AKt{background-color:var(--rt-color-success);color:var(--rt-color-white)}.styles-module_warning__SCK0X{background-color:var(--rt-color-warning);color:var(--rt-color-white)}.styles-module_error__JvumD{background-color:var(--rt-color-error);color:var(--rt-color-white)}.styles-module_info__BWdHW{background-color:var(--rt-color-info);color:var(--rt-color-white)}",type:"base"})}));const ze=(e,t="")=>{for(const[n,r]of Object.entries(e)){let e=n;t&&(e+="_"+String(t));const o=new CustomEvent(e,{detail:r});dispatchEvent(o)}},Be=(e,t="")=>{for(const[n,r]of Object.entries(e)){let e=n;t&&(e+="_"+String(t)),addEventListener(e,(e=>{r(e.detail)}),!1)}},He=({onlineEventLinkDefault:e=""})=>{const t=(0,o.__)("Online event","gatherpress"),[n,r]=(0,a.useState)(e);return Be({setOnlineEventLink:r},p("eventDetails.postId")),(0,c.jsxs)(l.Flex,{justify:"normal",gap:"3",children:[(0,c.jsx)(l.FlexItem,{display:"flex",children:(0,c.jsx)(l.Icon,{icon:"video-alt2"})}),(0,c.jsxs)(l.FlexItem,{children:[!n&&(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)("span",{tabIndex:"0",className:"gatherpress-tooltip","data-tooltip-id":"gatherpress-online-event-tooltip","data-tooltip-content":(0,o.__)("Link available for attendees only.","gatherpress"),children:t}),(0,c.jsx)(Fe,{id:"gatherpress-online-event-tooltip"})]}),n&&(0,c.jsx)("a",{href:n,rel:"noreferrer",target:"_blank",children:t})]})]})};var Ve=n(442);const We=Ve.default||Ve,qe=({name:e,fullAddress:t,phoneNumber:n,website:r})=>(0,c.jsxs)(c.Fragment,{children:[(e||t)&&(0,c.jsxs)(l.Flex,{justify:"normal",align:"flex-start",gap:"4",children:[(0,c.jsx)(l.FlexItem,{display:"flex",className:"gatherpress-venue__icon",children:(0,c.jsx)(l.Icon,{icon:"location"})}),(0,c.jsxs)(l.FlexItem,{children:[e&&(0,c.jsx)("div",{className:"gatherpress-venue__name",children:(0,c.jsx)("strong",{children:We(e)})}),t&&(0,c.jsx)("div",{className:"gatherpress-venue__full-address",children:We(t)})]})]}),(n||r)&&(0,c.jsxs)(l.Flex,{justify:"normal",gap:"8",children:[n&&(0,c.jsx)(l.FlexItem,{children:(0,c.jsxs)(l.Flex,{justify:"normal",gap:"4",children:[(0,c.jsx)(l.FlexItem,{display:"flex",className:"gatherpress-venue__icon",children:(0,c.jsx)(l.Icon,{icon:"phone"})}),(0,c.jsx)(l.FlexItem,{children:(0,c.jsx)("div",{className:"gatherpress-venue__phone-number",children:n})})]})}),r&&(0,c.jsx)(l.FlexItem,{children:(0,c.jsxs)(l.Flex,{justify:"normal",gap:"4",children:[(0,c.jsx)(l.FlexItem,{display:"flex",className:"gatherpress-venue__icon",children:(0,c.jsx)(l.Icon,{icon:"admin-site-alt3"})}),(0,c.jsx)(l.FlexItem,{children:(0,c.jsx)("div",{className:"gatherpress-venue__website",children:(0,c.jsx)("a",{href:r,target:"_blank",rel:"noreferrer noopener",children:r})})})]})})]})]}),$e=({name:e="",fullAddress:t,phoneNumber:n,website:r,isOnlineEventTerm:o=!1,onlineEventLink:i=""})=>(0,c.jsxs)(c.Fragment,{children:[!o&&(0,c.jsx)(qe,{name:e,fullAddress:t,phoneNumber:n,website:r}),o&&(0,c.jsx)(He,{onlineEventLinkDefault:i})]}),Ue=e=>{const{isSelected:t}=e,n=t?"none":"block";return(0,c.jsxs)("div",{style:{position:"relative"},children:[e.children,(0,c.jsx)("div",{style:{position:"absolute",top:"0",right:"0",bottom:"0",left:"0",display:n}})]})};function Xe(){return"gatherpress_venue"===(0,s.select)("core/editor")?.getCurrentPostType()}const Ge=()=>{const[e,t]=(0,a.useState)(""),[n,r]=(0,a.useState)(""),[i,u]=(0,a.useState)(""),[d,p]=(0,a.useState)(""),[f,h]=(0,a.useState)(!1),[m,g]=(0,a.useState)(""),[v,y]=(0,a.useState)(""),[b,w]=(0,a.useState)(""),x=(0,s.useDispatch)("core/editor").editPost,{unlockPostSaving:_}=(0,s.useDispatch)("core/editor"),E=(0,s.useSelect)((e=>e("core/editor").getEditedPostAttribute("_gatherpress_venue"))),S=(0,s.useSelect)((e=>e("core").getEntityRecord("taxonomy","_gatherpress_venue",E))),T=S?.slug.replace(/^_/,""),[k,A]=(0,a.useState)(""),O=E+":"+k,C=(0,s.useSelect)((e=>e("core").getEntityRecords("postType","gatherpress_venue",{per_page:1,slug:k})));(0,a.useEffect)((()=>{var e,n,i,l,s,a;let c={};if(k&&Array.isArray(C)){var d;const e=null!==(d=C[0]?.meta?.gatherpress_venue_information)&&void 0!==d?d:"{}";var f;e&&(c=JSON.parse(e),c.name=null!==(f=C[0]?.title.rendered)&&void 0!==f?f:"")}const h=null!==(e=c?.name)&&void 0!==e?e:(0,o.__)("No venue selected.","gatherpress"),m=null!==(n=c?.fullAddress)&&void 0!==n?n:"",v=null!==(i=c?.phoneNumber)&&void 0!==i?i:"",b=null!==(l=c?.website)&&void 0!==l?l:"",x=null!==(s=c?.latitude)&&void 0!==s?s:"0",_=null!==(a=c?.longitude)&&void 0!==a?a:"0";T&&A(T),w(O?String(O):""),t(h),r(m),u(v),p(b),g(x),y(_),ze({setName:h,setFullAddress:m,setPhoneNumber:v,setWebsite:b,setLatitude:x,setLongitude:_,setIsOnlineEventTerm:"online-event"===k})}),[k,C,T,O]);let j=(0,s.useSelect)((e=>e("core").getEntityRecords("taxonomy","_gatherpress_venue",{per_page:-1,context:"view"})),[]);return j?(j=j.map((e=>({label:e.name,value:e.id+":"+e.slug.replace(/^_/,"")}))),j.unshift({value:":",label:(0,o.__)("Choose a venue","gatherpress")})):j=[],(0,c.jsx)(l.PanelRow,{children:(0,c.jsx)(l.SelectControl,{label:(0,o.__)("Venue Selector","gatherpress"),value:b,onChange:e=>{(e=>{w(e);const t=""!==(e=e.split(":"))[0]?[e[0]]:[];x({_gatherpress_venue:t}),A(e[1]),_()})(e)},options:j})})},Ye=window.wp.compose,Ke=()=>{var e,t,n;const r=(0,s.useDispatch)("core/editor").editPost,i=e=>{const t=JSON.stringify({...u,...e});r({meta:{gatherpress_venue_information:t}})};let u=(0,s.useSelect)((e=>e("core/editor").getEditedPostAttribute("meta").gatherpress_venue_information));u=u?JSON.parse(u):{};const[d,p]=(0,a.useState)(null!==(e=u.fullAddress)&&void 0!==e?e:""),[f,h]=(0,a.useState)(null!==(t=u.phoneNumber)&&void 0!==t?t:""),[m,g]=(0,a.useState)(null!==(n=u.website)&&void 0!==n?n:"");Be({setFullAddress:p,setPhoneNumber:h,setWebsite:g});const v=(0,a.useRef)(i),y=(0,a.useCallback)((()=>{let e=null,t=null;fetch(`https://nominatim.openstreetmap.org/search?q=${d}&format=geojson`).then((e=>{if(!e.ok)throw new Error((0,o.sprintf)(/* translators: %s: Error message */ /* translators: %s: Error message */ -(0,o.__)("Network response was not ok %s","gatherpress"),e.statusText));return e.json()})).then((n=>{n.features.length>0&&(e=n.features[0].geometry.coordinates[1],t=n.features[0].geometry.coordinates[0]),v.current({latitude:e,longitude:t})}))}),[d]),b=(0,Ye.useDebounce)(y,300);return(0,a.useEffect)((()=>{v.current=i}),[i]),(0,a.useEffect)((()=>{b()}),[d,b]),(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(l.TextControl,{label:(0,o.__)("Full Address","gatherpress"),value:d,onChange:e=>{ze({setFullAddress:e}),i({fullAddress:e})}}),(0,c.jsx)(l.TextControl,{label:(0,o.__)("Phone Number","gatherpress"),value:f,onChange:e=>{ze({setPhoneNumber:e}),i({phoneNumber:e})}}),(0,c.jsx)(l.TextControl,{label:(0,o.__)("Website","gatherpress"),value:m,type:"url",onChange:e=>{ze({setWebsite:e}),i({website:e})}})]})},Ze=()=>(0,c.jsx)("section",{children:(0,c.jsx)(Ke,{})}),Je=()=>{const{editPost:e,unlockPostSaving:t}=(0,s.useDispatch)("core/editor"),n=(0,s.useSelect)((e=>e("core/editor").getEditedPostAttribute("meta").gatherpress_online_event_link)),[r,i]=(0,a.useState)(n);return Be({setOnlineEventLink:i},p("eventDetails.postId")),(0,c.jsx)(l.TextControl,{label:(0,o.__)("Online event link","gatherpress"),value:r,placeholder:(0,o.__)("Add link to online event","gatherpress"),onChange:n=>{(n=>{e({meta:{gatherpress_online_event_link:n}}),i(n),ze({setOnlineEventLink:n},p("eventDetails.postId")),t()})(n)}})},Qe=window.moment;var et=n.n(Qe);window.wp.date;const tt="YYYY-MM-DD HH:mm:ss",nt=et().tz(rt()).add(1,"day").set("hour",18).set("minute",0).set("second",0).format(tt);function rt(e=p("eventDetails.dateTime.timezone")){return et().tz.zone(e)?e:(0,o.__)("GMT","gatherpress")}et().tz(nt,rt()).add(2,"hours").format(tt),(0,o.__)("1 hour","gatherpress"),(0,o.__)("1.5 hours","gatherpress"),(0,o.__)("2 hours","gatherpress"),(0,o.__)("3 hours","gatherpress"),(0,o.__)("Set an end time…","gatherpress");const ot=JSON.parse('{"$schema":"https://schemas.wp.org/trunk/block.json","apiVersion":2,"name":"gatherpress/venue","version":"1.1.0","title":"Venue","category":"gatherpress","icon":"location","example":{},"description":"Provides information about an event venue.","attributes":{"mapShow":{"type":"boolean","default":true},"mapAlign":{"type":"string","default":""},"mapZoomLevel":{"type":"number","default":10},"mapType":{"type":"string","default":"m"},"mapHeight":{"type":"number","default":300}},"supports":{"align":["wide"],"html":false},"textdomain":"gatherpress","editorScript":"file:./index.js","editorStyle":"file:./index.css","style":"file:./style-index.css","viewScript":"file:./venue.js","viewStyle":"file:./venue.css","render":"file:./render.php"}');(0,r.registerBlockType)(ot,{edit:({attributes:e,setAttributes:t,isSelected:n})=>{const{mapZoomLevel:r,mapType:u,mapHeight:f}=e,[m,g]=(0,a.useState)(""),[v,y]=(0,a.useState)(""),[b,w]=(0,a.useState)(""),[x,_]=(0,a.useState)(""),[E,S]=(0,a.useState)(""),[T,k]=(0,a.useState)(""),[A,O]=(0,a.useState)(!1),C=(0,i.useBlockProps)(),j=p("settings.mapPlatform"),N=(0,s.useSelect)((e=>e("core/editor")?.getEditedPostAttribute("meta")?.gatherpress_online_event_link));let{mapShow:P}=e,R=(0,s.useSelect)((e=>e("core/editor")?.getEditedPostAttribute("meta")?.gatherpress_venue_information));return R=R?JSON.parse(R):{},P&&v&&(P=!0),P&&!d()&&(P=!0),Be({setName:g,setFullAddress:y,setPhoneNumber:S,setWebsite:k,setIsOnlineEventTerm:O,setLatitude:w,setLongitude:_}),(0,a.useEffect)((()=>{Xe()&&(y(R.fullAddress),S(R.phoneNumber),k(R.website),w(R.latitude),_(R.longitude),g(v||E||T?"":(0,o.__)("Add venue information.","gatherpress"))),"gatherpress_event"!==(0,s.select)("core/editor")?.getCurrentPostType()&&d()||g(v||E||T?"":(0,o.__)("No venue selected.","gatherpress"))}),[R.fullAddress,R.phoneNumber,R.website,R.latitude,R.longitude,v,E,T,b,x]),(0,a.useEffect)((()=>{const e=new Event("resize");window.dispatchEvent(e)}),[f]),(0,c.jsxs)(c.Fragment,{children:[(0,c.jsxs)(i.InspectorControls,{children:[d()&&(0,c.jsxs)(l.PanelBody,{title:(0,o.__)("Venue settings","gatherpress"),initialOpen:!0,children:[(0,c.jsxs)(l.PanelRow,{children:[!Xe()&&(0,c.jsx)(Ge,{}),Xe()&&(0,c.jsx)(Ze,{})]}),A&&(0,c.jsx)(l.PanelRow,{children:(0,c.jsx)(Je,{})})]}),!A&&(0,c.jsxs)(l.PanelBody,{title:(0,o.__)("Map settings","gatherpress"),initialOpen:!0,children:[(0,c.jsx)(l.PanelRow,{children:(0,o.__)("Show map on venue","gatherpress")}),(0,c.jsx)(l.PanelRow,{children:(0,c.jsx)(l.ToggleControl,{label:P?(0,o.__)("Display the map","gatherpress"):(0,o.__)("Hide the map","gatherpress"),checked:P,onChange:e=>{t({mapShow:e})}})}),(0,c.jsx)(l.RangeControl,{label:(0,o.__)("Zoom level","gatherpress"),beforeIcon:"search",value:r,onChange:e=>t({mapZoomLevel:e}),min:1,max:22}),"google"===j&&(0,c.jsx)(l.RadioControl,{label:(0,o.__)("Map type","gatherpress"),selected:u,options:[{label:(0,o.__)("Roadmap","gatherpress"),value:"m"},{label:(0,o.__)("Satellite","gatherpress"),value:"k"}],onChange:e=>{t({mapType:e})}}),(0,c.jsx)(l.RangeControl,{label:(0,o.__)("Map height","gatherpress"),beforeIcon:"location",value:f,onChange:e=>t({mapHeight:e}),min:100,max:1e3})]})]}),(0,c.jsx)("div",{...C,children:(0,c.jsx)(Ue,{isSelected:n,children:(0,c.jsxs)("div",{className:"gatherpress-venue",children:[(0,c.jsx)($e,{name:m,fullAddress:v,phoneNumber:E,website:T,isOnlineEventTerm:A,onlineEventLink:N}),P&&!A&&(0,c.jsx)(h,{location:v,latitude:b,longitude:x,zoom:r,type:u,height:f})]})})})]})},save:()=>{}})},5413:(e,t)=>{"use strict";var n;Object.defineProperty(t,"__esModule",{value:!0}),t.Doctype=t.CDATA=t.Tag=t.Style=t.Script=t.Comment=t.Directive=t.Text=t.Root=t.isTag=t.ElementType=void 0,function(e){e.Root="root",e.Text="text",e.Directive="directive",e.Comment="comment",e.Script="script",e.Style="style",e.Tag="tag",e.CDATA="cdata",e.Doctype="doctype"}(n=t.ElementType||(t.ElementType={})),t.isTag=function(e){return e.type===n.Tag||e.type===n.Script||e.type===n.Style},t.Root=n.Root,t.Text=n.Text,t.Directive=n.Directive,t.Comment=n.Comment,t.Script=n.Script,t.Style=n.Style,t.Tag=n.Tag,t.CDATA=n.CDATA,t.Doctype=n.Doctype},1141:function(e,t,n){"use strict";var r=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n);var o=Object.getOwnPropertyDescriptor(t,n);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,o)}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),o=this&&this.__exportStar||function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||r(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),t.DomHandler=void 0;var i=n(5413),l=n(6957);o(n(6957),t);var s={withStartIndices:!1,withEndIndices:!1,xmlMode:!1},a=function(){function e(e,t,n){this.dom=[],this.root=new l.Document(this.dom),this.done=!1,this.tagStack=[this.root],this.lastNode=null,this.parser=null,"function"==typeof t&&(n=t,t=s),"object"==typeof e&&(t=e,e=void 0),this.callback=null!=e?e:null,this.options=null!=t?t:s,this.elementCB=null!=n?n:null}return e.prototype.onparserinit=function(e){this.parser=e},e.prototype.onreset=function(){this.dom=[],this.root=new l.Document(this.dom),this.done=!1,this.tagStack=[this.root],this.lastNode=null,this.parser=null},e.prototype.onend=function(){this.done||(this.done=!0,this.parser=null,this.handleCallback(null))},e.prototype.onerror=function(e){this.handleCallback(e)},e.prototype.onclosetag=function(){this.lastNode=null;var e=this.tagStack.pop();this.options.withEndIndices&&(e.endIndex=this.parser.endIndex),this.elementCB&&this.elementCB(e)},e.prototype.onopentag=function(e,t){var n=this.options.xmlMode?i.ElementType.Tag:void 0,r=new l.Element(e,t,void 0,n);this.addNode(r),this.tagStack.push(r)},e.prototype.ontext=function(e){var t=this.lastNode;if(t&&t.type===i.ElementType.Text)t.data+=e,this.options.withEndIndices&&(t.endIndex=this.parser.endIndex);else{var n=new l.Text(e);this.addNode(n),this.lastNode=n}},e.prototype.oncomment=function(e){if(this.lastNode&&this.lastNode.type===i.ElementType.Comment)this.lastNode.data+=e;else{var t=new l.Comment(e);this.addNode(t),this.lastNode=t}},e.prototype.oncommentend=function(){this.lastNode=null},e.prototype.oncdatastart=function(){var e=new l.Text(""),t=new l.CDATA([e]);this.addNode(t),e.parent=t,this.lastNode=e},e.prototype.oncdataend=function(){this.lastNode=null},e.prototype.onprocessinginstruction=function(e,t){var n=new l.ProcessingInstruction(e,t);this.addNode(n)},e.prototype.handleCallback=function(e){if("function"==typeof this.callback)this.callback(e,this.dom);else if(e)throw e},e.prototype.addNode=function(e){var t=this.tagStack[this.tagStack.length-1],n=t.children[t.children.length-1];this.options.withStartIndices&&(e.startIndex=this.parser.startIndex),this.options.withEndIndices&&(e.endIndex=this.parser.endIndex),t.children.push(e),n&&(e.prev=n,n.next=e),e.parent=t,this.lastNode=null},e}();t.DomHandler=a,t.default=a},6957:function(e,t,n){"use strict";var r,o=this&&this.__extends||(r=function(e,t){return r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},r(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function __(){this.constructor=e}r(e,t),e.prototype=null===t?Object.create(t):(__.prototype=t.prototype,new __)}),i=this&&this.__assign||function(){return i=Object.assign||function(e){for(var t,n=1,r=arguments.length;n0?this.children[this.children.length-1]:null},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"childNodes",{get:function(){return this.children},set:function(e){this.children=e},enumerable:!1,configurable:!0}),t}(s);t.NodeWithChildren=p;var f=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.type=l.ElementType.CDATA,t}return o(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 4},enumerable:!1,configurable:!0}),t}(p);t.CDATA=f;var h=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.type=l.ElementType.Root,t}return o(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 9},enumerable:!1,configurable:!0}),t}(p);t.Document=h;var m=function(e){function t(t,n,r,o){void 0===r&&(r=[]),void 0===o&&(o="script"===t?l.ElementType.Script:"style"===t?l.ElementType.Style:l.ElementType.Tag);var i=e.call(this,r)||this;return i.name=t,i.attribs=n,i.type=o,i}return o(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 1},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"tagName",{get:function(){return this.name},set:function(e){this.name=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"attributes",{get:function(){var e=this;return Object.keys(this.attribs).map((function(t){var n,r;return{name:t,value:e.attribs[t],namespace:null===(n=e["x-attribsNamespace"])||void 0===n?void 0:n[t],prefix:null===(r=e["x-attribsPrefix"])||void 0===r?void 0:r[t]}}))},enumerable:!1,configurable:!0}),t}(p);function g(e){return(0,l.isTag)(e)}function v(e){return e.type===l.ElementType.CDATA}function y(e){return e.type===l.ElementType.Text}function b(e){return e.type===l.ElementType.Comment}function w(e){return e.type===l.ElementType.Directive}function x(e){return e.type===l.ElementType.Root}function _(e,t){var n;if(void 0===t&&(t=!1),y(e))n=new c(e.data);else if(b(e))n=new u(e.data);else if(g(e)){var r=t?E(e.children):[],o=new m(e.name,i({},e.attribs),r);r.forEach((function(e){return e.parent=o})),null!=e.namespace&&(o.namespace=e.namespace),e["x-attribsNamespace"]&&(o["x-attribsNamespace"]=i({},e["x-attribsNamespace"])),e["x-attribsPrefix"]&&(o["x-attribsPrefix"]=i({},e["x-attribsPrefix"])),n=o}else if(v(e)){r=t?E(e.children):[];var l=new f(r);r.forEach((function(e){return e.parent=l})),n=l}else if(x(e)){r=t?E(e.children):[];var s=new h(r);r.forEach((function(e){return e.parent=s})),e["x-mode"]&&(s["x-mode"]=e["x-mode"]),n=s}else{if(!w(e))throw new Error("Not implemented yet: ".concat(e.type));var a=new d(e.name,e.data);null!=e["x-name"]&&(a["x-name"]=e["x-name"],a["x-publicId"]=e["x-publicId"],a["x-systemId"]=e["x-systemId"]),n=a}return n.startIndex=e.startIndex,n.endIndex=e.endIndex,null!=e.sourceCodeLocation&&(n.sourceCodeLocation=e.sourceCodeLocation),n}function E(e){for(var t=e.map((function(e){return _(e,!0)})),n=1;n{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CASE_SENSITIVE_TAG_NAMES_MAP=t.CASE_SENSITIVE_TAG_NAMES=void 0,t.CASE_SENSITIVE_TAG_NAMES=["animateMotion","animateTransform","clipPath","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","foreignObject","linearGradient","radialGradient","textPath"],t.CASE_SENSITIVE_TAG_NAMES_MAP=t.CASE_SENSITIVE_TAG_NAMES.reduce((function(e,t){return e[t.toLowerCase()]=t,e}),{})},5496:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){var t,u,d=e.match(i),p=d&&d[1]?d[1].toLowerCase():"";switch(p){case n:var h=c(e);return l.test(e)||null===(t=null==(g=h.querySelector(r))?void 0:g.parentNode)||void 0===t||t.removeChild(g),s.test(e)||null===(u=null==(g=h.querySelector(o))?void 0:g.parentNode)||void 0===u||u.removeChild(g),h.querySelectorAll(n);case r:case o:var m=a(e).querySelectorAll(p);return s.test(e)&&l.test(e)?m[0].parentNode.childNodes:m;default:return f?f(e):(g=a(e,o).querySelector(o)).childNodes;var g}};var n="html",r="head",o="body",i=/<([a-zA-Z]+[0-9]?)/,l=//i,s=//i,a=function(e,t){throw new Error("This browser does not support `document.implementation.createHTMLDocument`")},c=function(e,t){throw new Error("This browser does not support `DOMParser.prototype.parseFromString`")},u="object"==typeof window&&window.DOMParser;if("function"==typeof u){var d=new u;a=c=function(e,t){return t&&(e="<".concat(t,">").concat(e,"")),d.parseFromString(e,"text/html")}}if("object"==typeof document&&document.implementation){var p=document.implementation.createHTMLDocument();a=function(e,t){if(t){var n=p.documentElement.querySelector(t);return n&&(n.innerHTML=e),p}return p.documentElement.innerHTML=e,p}}var f,h="object"==typeof document&&document.createElement("template");h&&h.content&&(f=function(e){return h.innerHTML=e,h.content.childNodes})},2471:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){if("string"!=typeof e)throw new TypeError("First argument must be a string");if(!e)return[];var t=e.match(l),n=t?t[1]:void 0;return(0,i.formatDOM)((0,o.default)(e),null,n)};var o=r(n(5496)),i=n(7731),l=/<(![a-zA-Z\s]+)>/},7731:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.formatAttributes=i,t.formatDOM=function e(t,n,o){void 0===n&&(n=null);for(var s,a=[],c=0,u=t.length;c{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){void 0===e&&(e={});var n={},c=Boolean(e.type&&s[e.type]);for(var u in e){var d=e[u];if((0,r.isCustomAttribute)(u))n[u]=d;else{var p=u.toLowerCase(),f=a(p);if(f){var h=(0,r.getPropertyInfo)(f);switch(i.includes(f)&&l.includes(t)&&!c&&(f=a("default"+p)),n[f]=d,h&&h.type){case r.BOOLEAN:n[f]=!0;break;case r.OVERLOADED_BOOLEAN:""===d&&(n[f]=!0)}}else o.PRESERVE_CUSTOM_ATTRIBUTES&&(n[u]=d)}}return(0,o.setStyleProp)(e.style,n),n};var r=n(4210),o=n(4958),i=["checked","value"],l=["input","select","textarea"],s={reset:!0,submit:!0};function a(e){return r.possibleStandardNames[e]}},308:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t,n){void 0===n&&(n={});for(var r=[],o="function"==typeof n.replace,c=n.transform||l.returnFirstArg,u=n.library||s,d=u.cloneElement,p=u.createElement,f=u.isValidElement,h=t.length,m=0;m1&&(v=d(v,{key:v.key||m})),r.push(c(v,g,m));continue}}if("text"!==g.type){var y=g,b={};a(y)?((0,l.setStyleProp)(y.attribs.style,y.attribs),b=y.attribs):y.attribs&&(b=(0,i.default)(y.attribs,y.name));var w=void 0;switch(g.type){case"script":case"style":g.children[0]&&(b.dangerouslySetInnerHTML={__html:g.children[0].data});break;case"tag":"textarea"===g.name&&g.children[0]?b.defaultValue=g.children[0].data:g.children&&g.children.length&&(w=e(g.children,n));break;default:continue}h>1&&(b.key=m),r.push(c(p(g.name,b,w),g,m))}else{var x=!g.data.trim().length;if(x&&g.parent&&!(0,l.canTextBeChildOfNode)(g.parent))continue;if(n.trim&&x)continue;r.push(c(g.data,g,m))}}return 1===r.length?r[0]:r};var o=n(1609),i=r(n(840)),l=n(4958),s={cloneElement:o.cloneElement,createElement:o.createElement,isValidElement:o.isValidElement};function a(e){return l.PRESERVE_CUSTOM_ATTRIBUTES&&"tag"===e.type&&(0,l.isCustomComponent)(e.name,e.attribs)}},442:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.htmlToDOM=t.domToReact=t.attributesToProps=t.Text=t.ProcessingInstruction=t.Element=t.Comment=void 0,t.default=function(e,t){if("string"!=typeof e)throw new TypeError("First argument must be a string");return e?(0,l.default)((0,o.default)(e,(null==t?void 0:t.htmlparser2)||a),t):[]};var o=r(n(2471));t.htmlToDOM=o.default;var i=r(n(840));t.attributesToProps=i.default;var l=r(n(308));t.domToReact=l.default;var s=n(1141);Object.defineProperty(t,"Comment",{enumerable:!0,get:function(){return s.Comment}}),Object.defineProperty(t,"Element",{enumerable:!0,get:function(){return s.Element}}),Object.defineProperty(t,"ProcessingInstruction",{enumerable:!0,get:function(){return s.ProcessingInstruction}}),Object.defineProperty(t,"Text",{enumerable:!0,get:function(){return s.Text}});var a={lowerCaseAttributeNames:!1}},4958:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.returnFirstArg=t.canTextBeChildOfNode=t.ELEMENTS_WITH_NO_TEXT_CHILDREN=t.PRESERVE_CUSTOM_ATTRIBUTES=void 0,t.isCustomComponent=function(e,t){return e.includes("-")?!l.has(e):Boolean(t&&"string"==typeof t.is)},t.setStyleProp=function(e,t){if("string"==typeof e)if(e.trim())try{t.style=(0,i.default)(e,s)}catch(e){t.style={}}else t.style={}};var o=n(1609),i=r(n(5229)),l=new Set(["annotation-xml","color-profile","font-face","font-face-src","font-face-uri","font-face-format","font-face-name","missing-glyph"]),s={reactCompat:!0};t.PRESERVE_CUSTOM_ATTRIBUTES=Number(o.version.split(".")[0])>=16,t.ELEMENTS_WITH_NO_TEXT_CHILDREN=new Set(["tr","tbody","thead","tfoot","colgroup","table","head","html","frameset"]),t.canTextBeChildOfNode=function(e){return!t.ELEMENTS_WITH_NO_TEXT_CHILDREN.has(e.name)},t.returnFirstArg=function(e){return e}},9788:e=>{var t=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,n=/\n/g,r=/^\s*/,o=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,i=/^:\s*/,l=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,s=/^[;\s]*/,a=/^\s+|\s+$/g,c="";function u(e){return e?e.replace(a,c):c}e.exports=function(e,a){if("string"!=typeof e)throw new TypeError("First argument must be a string");if(!e)return[];a=a||{};var d=1,p=1;function f(e){var t=e.match(n);t&&(d+=t.length);var r=e.lastIndexOf("\n");p=~r?e.length-r:p+e.length}function h(){var e={line:d,column:p};return function(t){return t.position=new m(e),b(),t}}function m(e){this.start=e,this.end={line:d,column:p},this.source=a.source}m.prototype.content=e;var g=[];function v(t){var n=new Error(a.source+":"+d+":"+p+": "+t);if(n.reason=t,n.filename=a.source,n.line=d,n.column=p,n.source=e,!a.silent)throw n;g.push(n)}function y(t){var n=t.exec(e);if(n){var r=n[0];return f(r),e=e.slice(r.length),n}}function b(){y(r)}function w(e){var t;for(e=e||[];t=x();)!1!==t&&e.push(t);return e}function x(){var t=h();if("/"==e.charAt(0)&&"*"==e.charAt(1)){for(var n=2;c!=e.charAt(n)&&("*"!=e.charAt(n)||"/"!=e.charAt(n+1));)++n;if(n+=2,c===e.charAt(n-1))return v("End of comment missing");var r=e.slice(2,n-2);return p+=2,f(r),e=e.slice(n),p+=2,t({type:"comment",comment:r})}}function _(){var e=h(),n=y(o);if(n){if(x(),!y(i))return v("property missing ':'");var r=y(l),a=e({type:"declaration",property:u(n[0].replace(t,c)),value:r?u(r[0].replace(t,c)):c});return y(s),a}}return b(),function(){var e,t=[];for(w(t);e=_();)!1!==e&&(t.push(e),w(t));return t}()}},4210:(e,t,n)=>{"use strict";function r(e,t,n,r,o,i,l){this.acceptsBooleans=2===t||3===t||4===t,this.attributeName=r,this.attributeNamespace=o,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=i,this.removeEmptyString=l}const o={};["children","dangerouslySetInnerHTML","defaultValue","defaultChecked","innerHTML","suppressContentEditableWarning","suppressHydrationWarning","style"].forEach((e=>{o[e]=new r(e,0,!1,e,null,!1,!1)})),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach((([e,t])=>{o[e]=new r(e,1,!1,t,null,!1,!1)})),["contentEditable","draggable","spellCheck","value"].forEach((e=>{o[e]=new r(e,2,!1,e.toLowerCase(),null,!1,!1)})),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach((e=>{o[e]=new r(e,2,!1,e,null,!1,!1)})),["allowFullScreen","async","autoFocus","autoPlay","controls","default","defer","disabled","disablePictureInPicture","disableRemotePlayback","formNoValidate","hidden","loop","noModule","noValidate","open","playsInline","readOnly","required","reversed","scoped","seamless","itemScope"].forEach((e=>{o[e]=new r(e,3,!1,e.toLowerCase(),null,!1,!1)})),["checked","multiple","muted","selected"].forEach((e=>{o[e]=new r(e,3,!0,e,null,!1,!1)})),["capture","download"].forEach((e=>{o[e]=new r(e,4,!1,e,null,!1,!1)})),["cols","rows","size","span"].forEach((e=>{o[e]=new r(e,6,!1,e,null,!1,!1)})),["rowSpan","start"].forEach((e=>{o[e]=new r(e,5,!1,e.toLowerCase(),null,!1,!1)}));const i=/[\-\:]([a-z])/g,l=e=>e[1].toUpperCase();["accent-height","alignment-baseline","arabic-form","baseline-shift","cap-height","clip-path","clip-rule","color-interpolation","color-interpolation-filters","color-profile","color-rendering","dominant-baseline","enable-background","fill-opacity","fill-rule","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","glyph-name","glyph-orientation-horizontal","glyph-orientation-vertical","horiz-adv-x","horiz-origin-x","image-rendering","letter-spacing","lighting-color","marker-end","marker-mid","marker-start","overline-position","overline-thickness","paint-order","panose-1","pointer-events","rendering-intent","shape-rendering","stop-color","stop-opacity","strikethrough-position","strikethrough-thickness","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","text-anchor","text-decoration","text-rendering","underline-position","underline-thickness","unicode-bidi","unicode-range","units-per-em","v-alphabetic","v-hanging","v-ideographic","v-mathematical","vector-effect","vert-adv-y","vert-origin-x","vert-origin-y","word-spacing","writing-mode","xmlns:xlink","x-height"].forEach((e=>{const t=e.replace(i,l);o[t]=new r(t,1,!1,e,null,!1,!1)})),["xlink:actuate","xlink:arcrole","xlink:role","xlink:show","xlink:title","xlink:type"].forEach((e=>{const t=e.replace(i,l);o[t]=new r(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)})),["xml:base","xml:lang","xml:space"].forEach((e=>{const t=e.replace(i,l);o[t]=new r(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)})),["tabIndex","crossOrigin"].forEach((e=>{o[e]=new r(e,1,!1,e.toLowerCase(),null,!1,!1)})),o.xlinkHref=new r("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach((e=>{o[e]=new r(e,1,!1,e.toLowerCase(),null,!0,!0)}));const{CAMELCASE:s,SAME:a,possibleStandardNames:c}=n(6811),u=RegExp.prototype.test.bind(new RegExp("^(data|aria)-[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$")),d=Object.keys(c).reduce(((e,t)=>{const n=c[t];return n===a?e[t]=t:n===s?e[t.toLowerCase()]=t:e[t]=n,e}),{});t.BOOLEAN=3,t.BOOLEANISH_STRING=2,t.NUMERIC=5,t.OVERLOADED_BOOLEAN=4,t.POSITIVE_NUMERIC=6,t.RESERVED=0,t.STRING=1,t.getPropertyInfo=function(e){return o.hasOwnProperty(e)?o[e]:null},t.isCustomAttribute=u,t.possibleStandardNames=d},6811:(e,t)=>{t.SAME=0,t.CAMELCASE=1,t.possibleStandardNames={accept:0,acceptCharset:1,"accept-charset":"acceptCharset",accessKey:1,action:0,allowFullScreen:1,alt:0,as:0,async:0,autoCapitalize:1,autoComplete:1,autoCorrect:1,autoFocus:1,autoPlay:1,autoSave:1,capture:0,cellPadding:1,cellSpacing:1,challenge:0,charSet:1,checked:0,children:0,cite:0,class:"className",classID:1,className:1,cols:0,colSpan:1,content:0,contentEditable:1,contextMenu:1,controls:0,controlsList:1,coords:0,crossOrigin:1,dangerouslySetInnerHTML:1,data:0,dateTime:1,default:0,defaultChecked:1,defaultValue:1,defer:0,dir:0,disabled:0,disablePictureInPicture:1,disableRemotePlayback:1,download:0,draggable:0,encType:1,enterKeyHint:1,for:"htmlFor",form:0,formMethod:1,formAction:1,formEncType:1,formNoValidate:1,formTarget:1,frameBorder:1,headers:0,height:0,hidden:0,high:0,href:0,hrefLang:1,htmlFor:1,httpEquiv:1,"http-equiv":"httpEquiv",icon:0,id:0,innerHTML:1,inputMode:1,integrity:0,is:0,itemID:1,itemProp:1,itemRef:1,itemScope:1,itemType:1,keyParams:1,keyType:1,kind:0,label:0,lang:0,list:0,loop:0,low:0,manifest:0,marginWidth:1,marginHeight:1,max:0,maxLength:1,media:0,mediaGroup:1,method:0,min:0,minLength:1,multiple:0,muted:0,name:0,noModule:1,nonce:0,noValidate:1,open:0,optimum:0,pattern:0,placeholder:0,playsInline:1,poster:0,preload:0,profile:0,radioGroup:1,readOnly:1,referrerPolicy:1,rel:0,required:0,reversed:0,role:0,rows:0,rowSpan:1,sandbox:0,scope:0,scoped:0,scrolling:0,seamless:0,selected:0,shape:0,size:0,sizes:0,span:0,spellCheck:1,src:0,srcDoc:1,srcLang:1,srcSet:1,start:0,step:0,style:0,summary:0,tabIndex:1,target:0,title:0,type:0,useMap:1,value:0,width:0,wmode:0,wrap:0,about:0,accentHeight:1,"accent-height":"accentHeight",accumulate:0,additive:0,alignmentBaseline:1,"alignment-baseline":"alignmentBaseline",allowReorder:1,alphabetic:0,amplitude:0,arabicForm:1,"arabic-form":"arabicForm",ascent:0,attributeName:1,attributeType:1,autoReverse:1,azimuth:0,baseFrequency:1,baselineShift:1,"baseline-shift":"baselineShift",baseProfile:1,bbox:0,begin:0,bias:0,by:0,calcMode:1,capHeight:1,"cap-height":"capHeight",clip:0,clipPath:1,"clip-path":"clipPath",clipPathUnits:1,clipRule:1,"clip-rule":"clipRule",color:0,colorInterpolation:1,"color-interpolation":"colorInterpolation",colorInterpolationFilters:1,"color-interpolation-filters":"colorInterpolationFilters",colorProfile:1,"color-profile":"colorProfile",colorRendering:1,"color-rendering":"colorRendering",contentScriptType:1,contentStyleType:1,cursor:0,cx:0,cy:0,d:0,datatype:0,decelerate:0,descent:0,diffuseConstant:1,direction:0,display:0,divisor:0,dominantBaseline:1,"dominant-baseline":"dominantBaseline",dur:0,dx:0,dy:0,edgeMode:1,elevation:0,enableBackground:1,"enable-background":"enableBackground",end:0,exponent:0,externalResourcesRequired:1,fill:0,fillOpacity:1,"fill-opacity":"fillOpacity",fillRule:1,"fill-rule":"fillRule",filter:0,filterRes:1,filterUnits:1,floodOpacity:1,"flood-opacity":"floodOpacity",floodColor:1,"flood-color":"floodColor",focusable:0,fontFamily:1,"font-family":"fontFamily",fontSize:1,"font-size":"fontSize",fontSizeAdjust:1,"font-size-adjust":"fontSizeAdjust",fontStretch:1,"font-stretch":"fontStretch",fontStyle:1,"font-style":"fontStyle",fontVariant:1,"font-variant":"fontVariant",fontWeight:1,"font-weight":"fontWeight",format:0,from:0,fx:0,fy:0,g1:0,g2:0,glyphName:1,"glyph-name":"glyphName",glyphOrientationHorizontal:1,"glyph-orientation-horizontal":"glyphOrientationHorizontal",glyphOrientationVertical:1,"glyph-orientation-vertical":"glyphOrientationVertical",glyphRef:1,gradientTransform:1,gradientUnits:1,hanging:0,horizAdvX:1,"horiz-adv-x":"horizAdvX",horizOriginX:1,"horiz-origin-x":"horizOriginX",ideographic:0,imageRendering:1,"image-rendering":"imageRendering",in2:0,in:0,inlist:0,intercept:0,k1:0,k2:0,k3:0,k4:0,k:0,kernelMatrix:1,kernelUnitLength:1,kerning:0,keyPoints:1,keySplines:1,keyTimes:1,lengthAdjust:1,letterSpacing:1,"letter-spacing":"letterSpacing",lightingColor:1,"lighting-color":"lightingColor",limitingConeAngle:1,local:0,markerEnd:1,"marker-end":"markerEnd",markerHeight:1,markerMid:1,"marker-mid":"markerMid",markerStart:1,"marker-start":"markerStart",markerUnits:1,markerWidth:1,mask:0,maskContentUnits:1,maskUnits:1,mathematical:0,mode:0,numOctaves:1,offset:0,opacity:0,operator:0,order:0,orient:0,orientation:0,origin:0,overflow:0,overlinePosition:1,"overline-position":"overlinePosition",overlineThickness:1,"overline-thickness":"overlineThickness",paintOrder:1,"paint-order":"paintOrder",panose1:0,"panose-1":"panose1",pathLength:1,patternContentUnits:1,patternTransform:1,patternUnits:1,pointerEvents:1,"pointer-events":"pointerEvents",points:0,pointsAtX:1,pointsAtY:1,pointsAtZ:1,prefix:0,preserveAlpha:1,preserveAspectRatio:1,primitiveUnits:1,property:0,r:0,radius:0,refX:1,refY:1,renderingIntent:1,"rendering-intent":"renderingIntent",repeatCount:1,repeatDur:1,requiredExtensions:1,requiredFeatures:1,resource:0,restart:0,result:0,results:0,rotate:0,rx:0,ry:0,scale:0,security:0,seed:0,shapeRendering:1,"shape-rendering":"shapeRendering",slope:0,spacing:0,specularConstant:1,specularExponent:1,speed:0,spreadMethod:1,startOffset:1,stdDeviation:1,stemh:0,stemv:0,stitchTiles:1,stopColor:1,"stop-color":"stopColor",stopOpacity:1,"stop-opacity":"stopOpacity",strikethroughPosition:1,"strikethrough-position":"strikethroughPosition",strikethroughThickness:1,"strikethrough-thickness":"strikethroughThickness",string:0,stroke:0,strokeDasharray:1,"stroke-dasharray":"strokeDasharray",strokeDashoffset:1,"stroke-dashoffset":"strokeDashoffset",strokeLinecap:1,"stroke-linecap":"strokeLinecap",strokeLinejoin:1,"stroke-linejoin":"strokeLinejoin",strokeMiterlimit:1,"stroke-miterlimit":"strokeMiterlimit",strokeWidth:1,"stroke-width":"strokeWidth",strokeOpacity:1,"stroke-opacity":"strokeOpacity",suppressContentEditableWarning:1,suppressHydrationWarning:1,surfaceScale:1,systemLanguage:1,tableValues:1,targetX:1,targetY:1,textAnchor:1,"text-anchor":"textAnchor",textDecoration:1,"text-decoration":"textDecoration",textLength:1,textRendering:1,"text-rendering":"textRendering",to:0,transform:0,typeof:0,u1:0,u2:0,underlinePosition:1,"underline-position":"underlinePosition",underlineThickness:1,"underline-thickness":"underlineThickness",unicode:0,unicodeBidi:1,"unicode-bidi":"unicodeBidi",unicodeRange:1,"unicode-range":"unicodeRange",unitsPerEm:1,"units-per-em":"unitsPerEm",unselectable:0,vAlphabetic:1,"v-alphabetic":"vAlphabetic",values:0,vectorEffect:1,"vector-effect":"vectorEffect",version:0,vertAdvY:1,"vert-adv-y":"vertAdvY",vertOriginX:1,"vert-origin-x":"vertOriginX",vertOriginY:1,"vert-origin-y":"vertOriginY",vHanging:1,"v-hanging":"vHanging",vIdeographic:1,"v-ideographic":"vIdeographic",viewBox:1,viewTarget:1,visibility:0,vMathematical:1,"v-mathematical":"vMathematical",vocab:0,widths:0,wordSpacing:1,"word-spacing":"wordSpacing",writingMode:1,"writing-mode":"writingMode",x1:0,x2:0,x:0,xChannelSelector:1,xHeight:1,"x-height":"xHeight",xlinkActuate:1,"xlink:actuate":"xlinkActuate",xlinkArcrole:1,"xlink:arcrole":"xlinkArcrole",xlinkHref:1,"xlink:href":"xlinkHref",xlinkRole:1,"xlink:role":"xlinkRole",xlinkShow:1,"xlink:show":"xlinkShow",xlinkTitle:1,"xlink:title":"xlinkTitle",xlinkType:1,"xlink:type":"xlinkType",xmlBase:1,"xml:base":"xmlBase",xmlLang:1,"xml:lang":"xmlLang",xmlns:0,"xml:space":"xmlSpace",xmlnsXlink:1,"xmlns:xlink":"xmlnsXlink",xmlSpace:1,y1:0,y2:0,y:0,yChannelSelector:1,z:0,zoomAndPan:1}},5229:function(e,t,n){"use strict";var r=(this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}})(n(1133)),o=n(8917);function i(e,t){var n={};return e&&"string"==typeof e?((0,r.default)(e,(function(e,r){e&&r&&(n[(0,o.camelCase)(e,t)]=r)})),n):n}i.default=i,e.exports=i},8917:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.camelCase=void 0;var n=/^--[a-zA-Z0-9-]+$/,r=/-([a-z])/g,o=/^[^-]+$/,i=/^-(webkit|moz|ms|o|khtml)-/,l=/^-(ms)-/,s=function(e,t){return t.toUpperCase()},a=function(e,t){return"".concat(t,"-")};t.camelCase=function(e,t){return void 0===t&&(t={}),function(e){return!e||o.test(e)||n.test(e)}(e)?e:(e=e.toLowerCase(),(e=t.reactCompat?e.replace(l,a):e.replace(i,a)).replace(r,s))}},1133:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=r(n(9788));t.default=function(e,t){var n=null;if(!e||"string"!=typeof e)return n;var r=(0,o.default)(e),i="function"==typeof t;return r.forEach((function(e){if("declaration"===e.type){var r=e.property,o=e.value;i?t(r,o,e):o&&((n=n||{})[r]=o)}})),n}},1609:e=>{"use strict";e.exports=window.React},6942:(e,t)=>{var n;!function(){"use strict";var r={}.hasOwnProperty;function o(){for(var e="",t=0;t{if(!n){var i=1/0;for(u=0;u=o)&&Object.keys(s.O).every((e=>s.O[e](n[a])))?n.splice(a--,1):(l=!1,o0&&e[u-1][2]>o;u--)e[u]=e[u-1];e[u]=[n,r,o]},s.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return s.d(t,{a:t}),t},n=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,s.t=function(e,r){if(1&r&&(e=this(e)),8&r)return e;if("object"==typeof e&&e){if(4&r&&e.__esModule)return e;if(16&r&&"function"==typeof e.then)return e}var o=Object.create(null);s.r(o);var i={};t=t||[null,n({}),n([]),n(n)];for(var l=2&r&&e;"object"==typeof l&&!~t.indexOf(l);l=n(l))Object.getOwnPropertyNames(l).forEach((t=>i[t]=()=>e[t]));return i.default=()=>e,s.d(o,i),o},s.d=(e,t)=>{for(var n in t)s.o(t,n)&&!s.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},s.f={},s.e=e=>Promise.all(Object.keys(s.f).reduce(((t,n)=>(s.f[n](e,t),t)),[])),s.u=e=>e+".js",s.miniCssF=e=>e+".css",s.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),s.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r={},o="gatherpress:",s.l=(e,t,n,i)=>{if(r[e])r[e].push(t);else{var l,a;if(void 0!==n)for(var c=document.getElementsByTagName("script"),u=0;u{l.onerror=l.onload=null,clearTimeout(f);var o=r[e];if(delete r[e],l.parentNode&&l.parentNode.removeChild(l),o&&o.forEach((e=>e(n))),t)return t(n)},f=setTimeout(p.bind(null,void 0,{type:"timeout",target:l}),12e4);l.onerror=p.bind(null,l.onerror),l.onload=p.bind(null,l.onload),a&&document.head.appendChild(l)}},s.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{var e;s.g.importScripts&&(e=s.g.location+"");var t=s.g.document;if(!e&&t&&(t.currentScript&&"SCRIPT"===t.currentScript.tagName.toUpperCase()&&(e=t.currentScript.src),!e)){var n=t.getElementsByTagName("script");if(n.length)for(var r=n.length-1;r>-1&&(!e||!/^http(s?):/.test(e));)e=n[r--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),s.p=e+"../../"})(),(()=>{if("undefined"!=typeof document){var e={908:0};s.f.miniCss=(t,n)=>{e[t]?n.push(e[t]):0!==e[t]&&{535:1}[t]&&n.push(e[t]=(e=>new Promise(((t,n)=>{var r=s.miniCssF(e),o=s.p+r;if(((e,t)=>{for(var n=document.getElementsByTagName("link"),r=0;r{var i=document.createElement("link");i.rel="stylesheet",i.type="text/css",s.nc&&(i.nonce=s.nc),i.onerror=i.onload=n=>{if(i.onerror=i.onload=null,"load"===n.type)r();else{var l=n&&n.type,s=n&&n.target&&n.target.href||t,a=new Error("Loading CSS chunk "+e+" failed.\n("+l+": "+s+")");a.name="ChunkLoadError",a.code="CSS_CHUNK_LOAD_FAILED",a.type=l,a.request=s,i.parentNode&&i.parentNode.removeChild(i),o(a)}},i.href=t,document.head.appendChild(i)})(e,o,0,t,n)})))(t).then((()=>{e[t]=0}),(n=>{throw delete e[t],n})))}}})(),(()=>{var e={908:0,812:0};s.f.j=(t,n)=>{var r=s.o(e,t)?e[t]:void 0;if(0!==r)if(r)n.push(r[2]);else if(812!=t){var o=new Promise(((n,o)=>r=e[t]=[n,o]));n.push(r[2]=o);var i=s.p+s.u(t),l=new Error;s.l(i,(n=>{if(s.o(e,t)&&(0!==(r=e[t])&&(e[t]=void 0),r)){var o=n&&("load"===n.type?"missing":n.type),i=n&&n.target&&n.target.src;l.message="Loading chunk "+t+" failed.\n("+o+": "+i+")",l.name="ChunkLoadError",l.type=o,l.request=i,r[1](l)}}),"chunk-"+t,t)}else e[t]=0},s.O.j=t=>0===e[t];var t=(t,n)=>{var r,o,[i,l,a]=n,c=0;if(i.some((t=>0!==e[t]))){for(r in l)s.o(l,r)&&(s.m[r]=l[r]);if(a)var u=a(s)}for(t&&t(n);cs(7701)));a=s.O(a)})(); \ No newline at end of file +(0,o.__)("© %s contributors","gatherpress"),'OpenStreetMap')}).addTo(e),d.marker([s,u]).addTo(e).bindPopup(i),()=>{e.remove()}}),[d,s,i,u,t]),d&&s&&u?(0,c.jsx)("div",{className:r,id:"map",style:h}):null},h=e=>{const t=(0,s.select)("core")?.canUser("create","posts"),n=Boolean((0,s.select)("core/edit-post")),{zoom:r,type:o,className:i,latitude:l,longitude:a}=e;let{location:d,height:h}=e;h||(h=300),!t||n||d||(d="660 4th Street #119 San Francisco CA 94107, USA");const m=p("settings.mapPlatform");return d&&m?"google"===m?(0,c.jsx)(u,{location:d,className:i,zoom:r,type:o,height:h}):"osm"===m?(0,c.jsx)(f,{location:d,latitude:l,longitude:a,className:i,zoom:r,height:h}):(0,c.jsx)(c.Fragment,{}):(0,c.jsx)(c.Fragment,{})};var m=n(1609);const g=Math.min,v=Math.max,y=Math.round,b=Math.floor,w=e=>({x:e,y:e}),x={left:"right",right:"left",bottom:"top",top:"bottom"},_={start:"end",end:"start"};function E(e,t,n){return v(e,g(t,n))}function S(e,t){return"function"==typeof e?e(t):e}function k(e){return e.split("-")[0]}function T(e){return e.split("-")[1]}function A(e){return"x"===e?"y":"x"}function O(e){return"y"===e?"height":"width"}function C(e){return["top","bottom"].includes(k(e))?"y":"x"}function j(e){return A(C(e))}function N(e){return e.replace(/start|end/g,(e=>_[e]))}function P(e){return e.replace(/left|right|bottom|top/g,(e=>x[e]))}function R(e){return"number"!=typeof e?function(e){return{top:0,right:0,bottom:0,left:0,...e}}(e):{top:e,right:e,bottom:e,left:e}}function L(e){const{x:t,y:n,width:r,height:o}=e;return{width:r,height:o,top:n,left:t,right:t+r,bottom:n+o,x:t,y:n}}function I(e,t,n){let{reference:r,floating:o}=e;const i=C(t),l=j(t),s=O(l),a=k(t),c="y"===i,u=r.x+r.width/2-o.width/2,d=r.y+r.height/2-o.height/2,p=r[s]/2-o[s]/2;let f;switch(a){case"top":f={x:u,y:r.y-o.height};break;case"bottom":f={x:u,y:r.y+r.height};break;case"right":f={x:r.x+r.width,y:d};break;case"left":f={x:r.x-o.width,y:d};break;default:f={x:r.x,y:r.y}}switch(T(t)){case"start":f[l]-=p*(n&&c?-1:1);break;case"end":f[l]+=p*(n&&c?-1:1)}return f}async function D(e,t){var n;void 0===t&&(t={});const{x:r,y:o,platform:i,rects:l,elements:s,strategy:a}=e,{boundary:c="clippingAncestors",rootBoundary:u="viewport",elementContext:d="floating",altBoundary:p=!1,padding:f=0}=S(t,e),h=R(f),m=s[p?"floating"===d?"reference":"floating":d],g=L(await i.getClippingRect({element:null==(n=await(null==i.isElement?void 0:i.isElement(m)))||n?m:m.contextElement||await(null==i.getDocumentElement?void 0:i.getDocumentElement(s.floating)),boundary:c,rootBoundary:u,strategy:a})),v="floating"===d?{x:r,y:o,width:l.floating.width,height:l.floating.height}:l.reference,y=await(null==i.getOffsetParent?void 0:i.getOffsetParent(s.floating)),b=await(null==i.isElement?void 0:i.isElement(y))&&await(null==i.getScale?void 0:i.getScale(y))||{x:1,y:1},w=L(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:s,rect:v,offsetParent:y,strategy:a}):v);return{top:(g.top-w.top+h.top)/b.y,bottom:(w.bottom-g.bottom+h.bottom)/b.y,left:(g.left-w.left+h.left)/b.x,right:(w.right-g.right+h.right)/b.x}}function M(e){return B(e)?(e.nodeName||"").toLowerCase():"#document"}function F(e){var t;return(null==e||null==(t=e.ownerDocument)?void 0:t.defaultView)||window}function z(e){var t;return null==(t=(B(e)?e.ownerDocument:e.document)||window.document)?void 0:t.documentElement}function B(e){return e instanceof Node||e instanceof F(e).Node}function H(e){return e instanceof Element||e instanceof F(e).Element}function V(e){return e instanceof HTMLElement||e instanceof F(e).HTMLElement}function W(e){return"undefined"!=typeof ShadowRoot&&(e instanceof ShadowRoot||e instanceof F(e).ShadowRoot)}function q(e){const{overflow:t,overflowX:n,overflowY:r,display:o}=K(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&!["inline","contents"].includes(o)}function $(e){return["table","td","th"].includes(M(e))}function U(e){return[":popover-open",":modal"].some((t=>{try{return e.matches(t)}catch(e){return!1}}))}function X(e){const t=G(),n=H(e)?K(e):e;return"none"!==n.transform||"none"!==n.perspective||!!n.containerType&&"normal"!==n.containerType||!t&&!!n.backdropFilter&&"none"!==n.backdropFilter||!t&&!!n.filter&&"none"!==n.filter||["transform","perspective","filter"].some((e=>(n.willChange||"").includes(e)))||["paint","layout","strict","content"].some((e=>(n.contain||"").includes(e)))}function G(){return!("undefined"==typeof CSS||!CSS.supports)&&CSS.supports("-webkit-backdrop-filter","none")}function Y(e){return["html","body","#document"].includes(M(e))}function K(e){return F(e).getComputedStyle(e)}function Z(e){return H(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function J(e){if("html"===M(e))return e;const t=e.assignedSlot||e.parentNode||W(e)&&e.host||z(e);return W(t)?t.host:t}function Q(e){const t=J(e);return Y(t)?e.ownerDocument?e.ownerDocument.body:e.body:V(t)&&q(t)?t:Q(t)}function ee(e,t,n){var r;void 0===t&&(t=[]),void 0===n&&(n=!0);const o=Q(e),i=o===(null==(r=e.ownerDocument)?void 0:r.body),l=F(o);return i?t.concat(l,l.visualViewport||[],q(o)?o:[],l.frameElement&&n?ee(l.frameElement):[]):t.concat(o,ee(o,[],n))}function te(e){const t=K(e);let n=parseFloat(t.width)||0,r=parseFloat(t.height)||0;const o=V(e),i=o?e.offsetWidth:n,l=o?e.offsetHeight:r,s=y(n)!==i||y(r)!==l;return s&&(n=i,r=l),{width:n,height:r,$:s}}function ne(e){return H(e)?e:e.contextElement}function re(e){const t=ne(e);if(!V(t))return w(1);const n=t.getBoundingClientRect(),{width:r,height:o,$:i}=te(t);let l=(i?y(n.width):n.width)/r,s=(i?y(n.height):n.height)/o;return l&&Number.isFinite(l)||(l=1),s&&Number.isFinite(s)||(s=1),{x:l,y:s}}const oe=w(0);function ie(e){const t=F(e);return G()&&t.visualViewport?{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}:oe}function le(e,t,n,r){void 0===t&&(t=!1),void 0===n&&(n=!1);const o=e.getBoundingClientRect(),i=ne(e);let l=w(1);t&&(r?H(r)&&(l=re(r)):l=re(e));const s=function(e,t,n){return void 0===t&&(t=!1),!(!n||t&&n!==F(e))&&t}(i,n,r)?ie(i):w(0);let a=(o.left+s.x)/l.x,c=(o.top+s.y)/l.y,u=o.width/l.x,d=o.height/l.y;if(i){const e=F(i),t=r&&H(r)?F(r):r;let n=e,o=n.frameElement;for(;o&&r&&t!==n;){const e=re(o),t=o.getBoundingClientRect(),r=K(o),i=t.left+(o.clientLeft+parseFloat(r.paddingLeft))*e.x,l=t.top+(o.clientTop+parseFloat(r.paddingTop))*e.y;a*=e.x,c*=e.y,u*=e.x,d*=e.y,a+=i,c+=l,n=F(o),o=n.frameElement}}return L({width:u,height:d,x:a,y:c})}function se(e){return le(z(e)).left+Z(e).scrollLeft}function ae(e,t,n){let r;if("viewport"===t)r=function(e,t){const n=F(e),r=z(e),o=n.visualViewport;let i=r.clientWidth,l=r.clientHeight,s=0,a=0;if(o){i=o.width,l=o.height;const e=G();(!e||e&&"fixed"===t)&&(s=o.offsetLeft,a=o.offsetTop)}return{width:i,height:l,x:s,y:a}}(e,n);else if("document"===t)r=function(e){const t=z(e),n=Z(e),r=e.ownerDocument.body,o=v(t.scrollWidth,t.clientWidth,r.scrollWidth,r.clientWidth),i=v(t.scrollHeight,t.clientHeight,r.scrollHeight,r.clientHeight);let l=-n.scrollLeft+se(e);const s=-n.scrollTop;return"rtl"===K(r).direction&&(l+=v(t.clientWidth,r.clientWidth)-o),{width:o,height:i,x:l,y:s}}(z(e));else if(H(t))r=function(e,t){const n=le(e,!0,"fixed"===t),r=n.top+e.clientTop,o=n.left+e.clientLeft,i=V(e)?re(e):w(1);return{width:e.clientWidth*i.x,height:e.clientHeight*i.y,x:o*i.x,y:r*i.y}}(t,n);else{const n=ie(e);r={...t,x:t.x-n.x,y:t.y-n.y}}return L(r)}function ce(e,t){const n=J(e);return!(n===t||!H(n)||Y(n))&&("fixed"===K(n).position||ce(n,t))}function ue(e,t,n){const r=V(t),o=z(t),i="fixed"===n,l=le(e,!0,i,t);let s={scrollLeft:0,scrollTop:0};const a=w(0);if(r||!r&&!i)if(("body"!==M(t)||q(o))&&(s=Z(t)),r){const e=le(t,!0,i,t);a.x=e.x+t.clientLeft,a.y=e.y+t.clientTop}else o&&(a.x=se(o));return{x:l.left+s.scrollLeft-a.x,y:l.top+s.scrollTop-a.y,width:l.width,height:l.height}}function de(e){return"static"===K(e).position}function pe(e,t){return V(e)&&"fixed"!==K(e).position?t?t(e):e.offsetParent:null}function fe(e,t){const n=F(e);if(U(e))return n;if(!V(e)){let t=J(e);for(;t&&!Y(t);){if(H(t)&&!de(t))return t;t=J(t)}return n}let r=pe(e,t);for(;r&&$(r)&&de(r);)r=pe(r,t);return r&&Y(r)&&de(r)&&!X(r)?n:r||function(e){let t=J(e);for(;V(t)&&!Y(t);){if(X(t))return t;if(U(t))return null;t=J(t)}return null}(e)||n}const he={convertOffsetParentRelativeRectToViewportRelativeRect:function(e){let{elements:t,rect:n,offsetParent:r,strategy:o}=e;const i="fixed"===o,l=z(r),s=!!t&&U(t.floating);if(r===l||s&&i)return n;let a={scrollLeft:0,scrollTop:0},c=w(1);const u=w(0),d=V(r);if((d||!d&&!i)&&(("body"!==M(r)||q(l))&&(a=Z(r)),V(r))){const e=le(r);c=re(r),u.x=e.x+r.clientLeft,u.y=e.y+r.clientTop}return{width:n.width*c.x,height:n.height*c.y,x:n.x*c.x-a.scrollLeft*c.x+u.x,y:n.y*c.y-a.scrollTop*c.y+u.y}},getDocumentElement:z,getClippingRect:function(e){let{element:t,boundary:n,rootBoundary:r,strategy:o}=e;const i=[..."clippingAncestors"===n?U(t)?[]:function(e,t){const n=t.get(e);if(n)return n;let r=ee(e,[],!1).filter((e=>H(e)&&"body"!==M(e))),o=null;const i="fixed"===K(e).position;let l=i?J(e):e;for(;H(l)&&!Y(l);){const t=K(l),n=X(l);n||"fixed"!==t.position||(o=null),(i?!n&&!o:!n&&"static"===t.position&&o&&["absolute","fixed"].includes(o.position)||q(l)&&!n&&ce(e,l))?r=r.filter((e=>e!==l)):o=t,l=J(l)}return t.set(e,r),r}(t,this._c):[].concat(n),r],l=i[0],s=i.reduce(((e,n)=>{const r=ae(t,n,o);return e.top=v(r.top,e.top),e.right=g(r.right,e.right),e.bottom=g(r.bottom,e.bottom),e.left=v(r.left,e.left),e}),ae(t,l,o));return{width:s.right-s.left,height:s.bottom-s.top,x:s.left,y:s.top}},getOffsetParent:fe,getElementRects:async function(e){const t=this.getOffsetParent||fe,n=this.getDimensions,r=await n(e.floating);return{reference:ue(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}},getClientRects:function(e){return Array.from(e.getClientRects())},getDimensions:function(e){const{width:t,height:n}=te(e);return{width:t,height:n}},getScale:re,isElement:H,isRTL:function(e){return"rtl"===K(e).direction}};const me=function(e){return void 0===e&&(e=0),{name:"offset",options:e,async fn(t){var n,r;const{x:o,y:i,placement:l,middlewareData:s}=t,a=await async function(e,t){const{placement:n,platform:r,elements:o}=e,i=await(null==r.isRTL?void 0:r.isRTL(o.floating)),l=k(n),s=T(n),a="y"===C(n),c=["left","top"].includes(l)?-1:1,u=i&&a?-1:1,d=S(t,e);let{mainAxis:p,crossAxis:f,alignmentAxis:h}="number"==typeof d?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:0,crossAxis:0,alignmentAxis:null,...d};return s&&"number"==typeof h&&(f="end"===s?-1*h:h),a?{x:f*u,y:p*c}:{x:p*c,y:f*u}}(t,e);return l===(null==(n=s.offset)?void 0:n.placement)&&null!=(r=s.arrow)&&r.alignmentOffset?{}:{x:o+a.x,y:i+a.y,data:{...a,placement:l}}}}},ge=function(e){return void 0===e&&(e={}),{name:"shift",options:e,async fn(t){const{x:n,y:r,placement:o}=t,{mainAxis:i=!0,crossAxis:l=!1,limiter:s={fn:e=>{let{x:t,y:n}=e;return{x:t,y:n}}},...a}=S(e,t),c={x:n,y:r},u=await D(t,a),d=C(k(o)),p=A(d);let f=c[p],h=c[d];if(i){const e="y"===p?"bottom":"right";f=E(f+u["y"===p?"top":"left"],f,f-u[e])}if(l){const e="y"===d?"bottom":"right";h=E(h+u["y"===d?"top":"left"],h,h-u[e])}const m=s.fn({...t,[p]:f,[d]:h});return{...m,data:{x:m.x-n,y:m.y-r}}}}},ve=function(e){return void 0===e&&(e={}),{name:"flip",options:e,async fn(t){var n,r;const{placement:o,middlewareData:i,rects:l,initialPlacement:s,platform:a,elements:c}=t,{mainAxis:u=!0,crossAxis:d=!0,fallbackPlacements:p,fallbackStrategy:f="bestFit",fallbackAxisSideDirection:h="none",flipAlignment:m=!0,...g}=S(e,t);if(null!=(n=i.arrow)&&n.alignmentOffset)return{};const v=k(o),y=C(s),b=k(s)===s,w=await(null==a.isRTL?void 0:a.isRTL(c.floating)),x=p||(b||!m?[P(s)]:function(e){const t=P(e);return[N(e),t,N(t)]}(s)),_="none"!==h;!p&&_&&x.push(...function(e,t,n,r){const o=T(e);let i=function(e,t,n){const r=["left","right"],o=["right","left"],i=["top","bottom"],l=["bottom","top"];switch(e){case"top":case"bottom":return n?t?o:r:t?r:o;case"left":case"right":return t?i:l;default:return[]}}(k(e),"start"===n,r);return o&&(i=i.map((e=>e+"-"+o)),t&&(i=i.concat(i.map(N)))),i}(s,m,h,w));const E=[s,...x],A=await D(t,g),R=[];let L=(null==(r=i.flip)?void 0:r.overflows)||[];if(u&&R.push(A[v]),d){const e=function(e,t,n){void 0===n&&(n=!1);const r=T(e),o=j(e),i=O(o);let l="x"===o?r===(n?"end":"start")?"right":"left":"start"===r?"bottom":"top";return t.reference[i]>t.floating[i]&&(l=P(l)),[l,P(l)]}(o,l,w);R.push(A[e[0]],A[e[1]])}if(L=[...L,{placement:o,overflows:R}],!R.every((e=>e<=0))){var I,M;const e=((null==(I=i.flip)?void 0:I.index)||0)+1,t=E[e];if(t)return{data:{index:e,overflows:L},reset:{placement:t}};let n=null==(M=L.filter((e=>e.overflows[0]<=0)).sort(((e,t)=>e.overflows[1]-t.overflows[1]))[0])?void 0:M.placement;if(!n)switch(f){case"bestFit":{var F;const e=null==(F=L.filter((e=>{if(_){const t=C(e.placement);return t===y||"y"===t}return!0})).map((e=>[e.placement,e.overflows.filter((e=>e>0)).reduce(((e,t)=>e+t),0)])).sort(((e,t)=>e[1]-t[1]))[0])?void 0:F[0];e&&(n=e);break}case"initialPlacement":n=s}if(o!==n)return{reset:{placement:n}}}return{}}}},ye=(e,t,n)=>{const r=new Map,o={platform:he,...n},i={...o.platform,_c:r};return(async(e,t,n)=>{const{placement:r="bottom",strategy:o="absolute",middleware:i=[],platform:l}=n,s=i.filter(Boolean),a=await(null==l.isRTL?void 0:l.isRTL(t));let c=await l.getElementRects({reference:e,floating:t,strategy:o}),{x:u,y:d}=I(c,r,a),p=r,f={},h=0;for(let n=0;n{if(!e)return{tooltipStyles:{},tooltipArrowStyles:{},place:r};if(null===t)return{tooltipStyles:{},tooltipArrowStyles:{},place:r};const a=l;return n?(a.push({name:"arrow",options:c={element:n,padding:5},async fn(e){const{x:t,y:n,placement:r,rects:o,platform:i,elements:l,middlewareData:s}=e,{element:a,padding:u=0}=S(c,e)||{};if(null==a)return{};const d=R(u),p={x:t,y:n},f=j(r),h=O(f),m=await i.getDimensions(a),v="y"===f,y=v?"top":"left",b=v?"bottom":"right",w=v?"clientHeight":"clientWidth",x=o.reference[h]+o.reference[f]-p[f]-o.floating[h],_=p[f]-o.reference[f],k=await(null==i.getOffsetParent?void 0:i.getOffsetParent(a));let A=k?k[w]:0;A&&await(null==i.isElement?void 0:i.isElement(k))||(A=l.floating[w]||o.floating[h]);const C=x/2-_/2,N=A/2-m[h]/2-1,P=g(d[y],N),L=g(d[b],N),I=P,D=A-m[h]-L,M=A/2-m[h]/2+C,F=E(I,M,D),z=!s.arrow&&null!=T(r)&&M!==F&&o.reference[h]/2-(M{var o,i;const l={left:`${e}px`,top:`${t}px`,border:s},{x:a,y:c}=null!==(o=r.arrow)&&void 0!==o?o:{x:0,y:0},u=null!==(i={top:"bottom",right:"left",bottom:"top",left:"right"}[n.split("-")[0]])&&void 0!==i?i:"bottom",d=s&&{borderBottom:s,borderRight:s};let p=0;if(s){const e=`${s}`.match(/(\d+)px/);p=(null==e?void 0:e[1])?Number(e[1]):1}return{tooltipStyles:l,tooltipArrowStyles:{left:null!=a?`${a}px`:"",top:null!=c?`${c}px`:"",right:"",bottom:"",...d,[u]:`-${4+p}px`},place:n}}))):ye(e,t,{placement:"bottom",strategy:i,middleware:a}).then((({x:e,y:t,placement:n})=>({tooltipStyles:{left:`${e}px`,top:`${t}px`},tooltipArrowStyles:{},place:n})));var c},Ee=(e,t)=>!("CSS"in window&&"supports"in window.CSS)||window.CSS.supports(e,t),Se=(e,t,n)=>{let r=null;const o=function(...o){const i=()=>{r=null,n||e.apply(this,o)};n&&!r&&(e.apply(this,o),r=setTimeout(i,t)),n||(r&&clearTimeout(r),r=setTimeout(i,t))};return o.cancel=()=>{r&&(clearTimeout(r),r=null)},o},ke=e=>null!==e&&!Array.isArray(e)&&"object"==typeof e,Te=(e,t)=>{if(e===t)return!0;if(Array.isArray(e)&&Array.isArray(t))return e.length===t.length&&e.every(((e,n)=>Te(e,t[n])));if(Array.isArray(e)!==Array.isArray(t))return!1;if(!ke(e)||!ke(t))return e===t;const n=Object.keys(e),r=Object.keys(t);return n.length===r.length&&n.every((n=>Te(e[n],t[n])))},Ae=e=>{if(!(e instanceof HTMLElement||e instanceof SVGElement))return!1;const t=getComputedStyle(e);return["overflow","overflow-x","overflow-y"].some((e=>{const n=t.getPropertyValue(e);return"auto"===n||"scroll"===n}))},Oe=e=>{if(!e)return null;let t=e.parentElement;for(;t;){if(Ae(t))return t;t=t.parentElement}return document.scrollingElement||document.documentElement},Ce="undefined"!=typeof window?m.useLayoutEffect:m.useEffect,je=e=>{e.current&&(clearTimeout(e.current),e.current=null)},Ne={anchorRefs:new Set,activeAnchor:{current:null},attach:()=>{},detach:()=>{},setActiveAnchor:()=>{}},Pe=(0,m.createContext)({getTooltipData:()=>Ne});function Re(e="DEFAULT_TOOLTIP_ID"){return(0,m.useContext)(Pe).getTooltipData(e)}var Le={tooltip:"core-styles-module_tooltip__3vRRp",fixed:"core-styles-module_fixed__pcSol",arrow:"core-styles-module_arrow__cvMwQ",noArrow:"core-styles-module_noArrow__xock6",clickable:"core-styles-module_clickable__ZuTTB",show:"core-styles-module_show__Nt9eE",closing:"core-styles-module_closing__sGnxF"},Ie={tooltip:"styles-module_tooltip__mnnfp",arrow:"styles-module_arrow__K0L3T",dark:"styles-module_dark__xNqje",light:"styles-module_light__Z6W-X",success:"styles-module_success__A2AKt",warning:"styles-module_warning__SCK0X",error:"styles-module_error__JvumD",info:"styles-module_info__BWdHW"};const De=({forwardRef:e,id:t,className:n,classNameArrow:r,variant:o="dark",anchorId:i,anchorSelect:l,place:s="top",offset:a=10,events:c=["hover"],openOnClick:u=!1,positionStrategy:d="absolute",middlewares:p,wrapper:f,delayShow:h=0,delayHide:y=0,float:w=!1,hidden:x=!1,noArrow:_=!1,clickable:E=!1,closeOnEsc:S=!1,closeOnScroll:k=!1,closeOnResize:T=!1,openEvents:A,closeEvents:O,globalCloseEvents:C,imperativeModeOnly:j,style:N,position:P,afterShow:R,afterHide:L,content:I,contentWrapperRef:D,isOpen:M,defaultIsOpen:F=!1,setIsOpen:B,activeAnchor:H,setActiveAnchor:V,border:W,opacity:q,arrowColor:$,role:U="tooltip"})=>{var X;const G=(0,m.useRef)(null),Y=(0,m.useRef)(null),K=(0,m.useRef)(null),Z=(0,m.useRef)(null),J=(0,m.useRef)(null),[Q,te]=(0,m.useState)({tooltipStyles:{},tooltipArrowStyles:{},place:s}),[re,oe]=(0,m.useState)(!1),[ie,se]=(0,m.useState)(!1),[ae,ce]=(0,m.useState)(null),ue=(0,m.useRef)(!1),de=(0,m.useRef)(null),{anchorRefs:pe,setActiveAnchor:fe}=Re(t),he=(0,m.useRef)(!1),[me,ge]=(0,m.useState)([]),ve=(0,m.useRef)(!1),ye=u||c.includes("click"),we=ye||(null==A?void 0:A.click)||(null==A?void 0:A.dblclick)||(null==A?void 0:A.mousedown),xe=A?{...A}:{mouseover:!0,focus:!0,mouseenter:!1,click:!1,dblclick:!1,mousedown:!1};!A&&ye&&Object.assign(xe,{mouseenter:!1,focus:!1,mouseover:!1,click:!0});const Ee=O?{...O}:{mouseout:!0,blur:!0,mouseleave:!1,click:!1,dblclick:!1,mouseup:!1};!O&&ye&&Object.assign(Ee,{mouseleave:!1,blur:!1,mouseout:!1});const ke=C?{...C}:{escape:S||!1,scroll:k||!1,resize:T||!1,clickOutsideAnchor:we||!1};j&&(Object.assign(xe,{mouseenter:!1,focus:!1,click:!1,dblclick:!1,mousedown:!1}),Object.assign(Ee,{mouseleave:!1,blur:!1,click:!1,dblclick:!1,mouseup:!1}),Object.assign(ke,{escape:!1,scroll:!1,resize:!1,clickOutsideAnchor:!1})),Ce((()=>(ve.current=!0,()=>{ve.current=!1})),[]);const Ae=e=>{ve.current&&(e&&se(!0),setTimeout((()=>{ve.current&&(null==B||B(e),void 0===M&&oe(e))}),10))};(0,m.useEffect)((()=>{if(void 0===M)return()=>null;M&&se(!0);const e=setTimeout((()=>{oe(M)}),10);return()=>{clearTimeout(e)}}),[M]),(0,m.useEffect)((()=>{if(re!==ue.current)if(je(J),ue.current=re,re)null==R||R();else{const e=(()=>{const e=getComputedStyle(document.body).getPropertyValue("--rt-transition-show-delay").match(/^([\d.]+)(ms|s)$/);if(!e)return 0;const[,t,n]=e;return Number(t)*("ms"===n?1:1e3)})();J.current=setTimeout((()=>{se(!1),ce(null),null==L||L()}),e+25)}}),[re]);const Ne=e=>{te((t=>Te(t,e)?t:e))},Pe=(e=h)=>{je(K),ie?Ae(!0):K.current=setTimeout((()=>{Ae(!0)}),e)},De=(e=y)=>{je(Z),Z.current=setTimeout((()=>{he.current||Ae(!1)}),e)},Me=e=>{var t;if(!e)return;const n=null!==(t=e.currentTarget)&&void 0!==t?t:e.target;if(!(null==n?void 0:n.isConnected))return V(null),void fe({current:null});h?Pe():Ae(!0),V(n),fe({current:n}),je(Z)},Fe=()=>{E?De(y||100):y?De():Ae(!1),je(K)},ze=({x:e,y:t})=>{var n;const r={getBoundingClientRect:()=>({x:e,y:t,width:0,height:0,top:t,left:e,right:e,bottom:t})};_e({place:null!==(n=null==ae?void 0:ae.place)&&void 0!==n?n:s,offset:a,elementReference:r,tooltipReference:G.current,tooltipArrowReference:Y.current,strategy:d,middlewares:p,border:W}).then((e=>{Ne(e)}))},Be=e=>{if(!e)return;const t=e,n={x:t.clientX,y:t.clientY};ze(n),de.current=n},He=e=>{var t;if(!re)return;const n=e.target;n.isConnected&&((null===(t=G.current)||void 0===t?void 0:t.contains(n))||[document.querySelector(`[id='${i}']`),...me].some((e=>null==e?void 0:e.contains(n)))||(Ae(!1),je(K)))},Ve=Se(Me,50,!0),We=Se(Fe,50,!0),qe=e=>{We.cancel(),Ve(e)},$e=()=>{Ve.cancel(),We()},Ue=(0,m.useCallback)((()=>{var e,t;const n=null!==(e=null==ae?void 0:ae.position)&&void 0!==e?e:P;n?ze(n):w?de.current&&ze(de.current):(null==H?void 0:H.isConnected)&&_e({place:null!==(t=null==ae?void 0:ae.place)&&void 0!==t?t:s,offset:a,elementReference:H,tooltipReference:G.current,tooltipArrowReference:Y.current,strategy:d,middlewares:p,border:W}).then((e=>{ve.current&&Ne(e)}))}),[re,H,I,N,s,null==ae?void 0:ae.place,a,d,P,null==ae?void 0:ae.position,w]);(0,m.useEffect)((()=>{var e,t;const n=new Set(pe);me.forEach((e=>{n.add({current:e})}));const r=document.querySelector(`[id='${i}']`);r&&n.add({current:r});const o=()=>{Ae(!1)},l=Oe(H),s=Oe(G.current);ke.scroll&&(window.addEventListener("scroll",o),null==l||l.addEventListener("scroll",o),null==s||s.addEventListener("scroll",o));let a=null;ke.resize?window.addEventListener("resize",o):H&&G.current&&(a=function(e,t,n,r){void 0===r&&(r={});const{ancestorScroll:o=!0,ancestorResize:i=!0,elementResize:l="function"==typeof ResizeObserver,layoutShift:s="function"==typeof IntersectionObserver,animationFrame:a=!1}=r,c=ne(e),u=o||i?[...c?ee(c):[],...ee(t)]:[];u.forEach((e=>{o&&e.addEventListener("scroll",n,{passive:!0}),i&&e.addEventListener("resize",n)}));const d=c&&s?function(e,t){let n,r=null;const o=z(e);function i(){var e;clearTimeout(n),null==(e=r)||e.disconnect(),r=null}return function l(s,a){void 0===s&&(s=!1),void 0===a&&(a=1),i();const{left:c,top:u,width:d,height:p}=e.getBoundingClientRect();if(s||t(),!d||!p)return;const f={rootMargin:-b(u)+"px "+-b(o.clientWidth-(c+d))+"px "+-b(o.clientHeight-(u+p))+"px "+-b(c)+"px",threshold:v(0,g(1,a))||1};let h=!0;function m(e){const t=e[0].intersectionRatio;if(t!==a){if(!h)return l();t?l(!1,t):n=setTimeout((()=>{l(!1,1e-7)}),1e3)}h=!1}try{r=new IntersectionObserver(m,{...f,root:o.ownerDocument})}catch(e){r=new IntersectionObserver(m,f)}r.observe(e)}(!0),i}(c,n):null;let p,f=-1,h=null;l&&(h=new ResizeObserver((e=>{let[r]=e;r&&r.target===c&&h&&(h.unobserve(t),cancelAnimationFrame(f),f=requestAnimationFrame((()=>{var e;null==(e=h)||e.observe(t)}))),n()})),c&&!a&&h.observe(c),h.observe(t));let m=a?le(e):null;return a&&function t(){const r=le(e);!m||r.x===m.x&&r.y===m.y&&r.width===m.width&&r.height===m.height||n(),m=r,p=requestAnimationFrame(t)}(),n(),()=>{var e;u.forEach((e=>{o&&e.removeEventListener("scroll",n),i&&e.removeEventListener("resize",n)})),null==d||d(),null==(e=h)||e.disconnect(),h=null,a&&cancelAnimationFrame(p)}}(H,G.current,Ue,{ancestorResize:!0,elementResize:!0,layoutShift:!0}));const c=e=>{"Escape"===e.key&&Ae(!1)};ke.escape&&window.addEventListener("keydown",c),ke.clickOutsideAnchor&&window.addEventListener("click",He);const u=[],d=e=>{re&&(null==e?void 0:e.target)===H||Me(e)},p=e=>{re&&(null==e?void 0:e.target)===H&&Fe()},f=["mouseover","mouseout","mouseenter","mouseleave","focus","blur"],h=["click","dblclick","mousedown","mouseup"];Object.entries(xe).forEach((([e,t])=>{t&&(f.includes(e)?u.push({event:e,listener:qe}):h.includes(e)&&u.push({event:e,listener:d}))})),Object.entries(Ee).forEach((([e,t])=>{t&&(f.includes(e)?u.push({event:e,listener:$e}):h.includes(e)&&u.push({event:e,listener:p}))})),w&&u.push({event:"pointermove",listener:Be});const m=()=>{he.current=!0},y=()=>{he.current=!1,Fe()};return E&&!we&&(null===(e=G.current)||void 0===e||e.addEventListener("mouseenter",m),null===(t=G.current)||void 0===t||t.addEventListener("mouseleave",y)),u.forEach((({event:e,listener:t})=>{n.forEach((n=>{var r;null===(r=n.current)||void 0===r||r.addEventListener(e,t)}))})),()=>{var e,t;ke.scroll&&(window.removeEventListener("scroll",o),null==l||l.removeEventListener("scroll",o),null==s||s.removeEventListener("scroll",o)),ke.resize?window.removeEventListener("resize",o):null==a||a(),ke.clickOutsideAnchor&&window.removeEventListener("click",He),ke.escape&&window.removeEventListener("keydown",c),E&&!we&&(null===(e=G.current)||void 0===e||e.removeEventListener("mouseenter",m),null===(t=G.current)||void 0===t||t.removeEventListener("mouseleave",y)),u.forEach((({event:e,listener:t})=>{n.forEach((n=>{var r;null===(r=n.current)||void 0===r||r.removeEventListener(e,t)}))}))}}),[H,Ue,ie,pe,me,A,O,C,ye,h,y]),(0,m.useEffect)((()=>{var e,n;let r=null!==(n=null!==(e=null==ae?void 0:ae.anchorSelect)&&void 0!==e?e:l)&&void 0!==n?n:"";!r&&t&&(r=`[data-tooltip-id='${t.replace(/'/g,"\\'")}']`);const o=new MutationObserver((e=>{const n=[],o=[];e.forEach((e=>{if("attributes"===e.type&&"data-tooltip-id"===e.attributeName&&(e.target.getAttribute("data-tooltip-id")===t?n.push(e.target):e.oldValue===t&&o.push(e.target)),"childList"===e.type){if(H){const t=[...e.removedNodes].filter((e=>1===e.nodeType));if(r)try{o.push(...t.filter((e=>e.matches(r)))),o.push(...t.flatMap((e=>[...e.querySelectorAll(r)])))}catch(e){}t.some((e=>{var t;return!!(null===(t=null==e?void 0:e.contains)||void 0===t?void 0:t.call(e,H))&&(se(!1),Ae(!1),V(null),je(K),je(Z),!0)}))}if(r)try{const t=[...e.addedNodes].filter((e=>1===e.nodeType));n.push(...t.filter((e=>e.matches(r)))),n.push(...t.flatMap((e=>[...e.querySelectorAll(r)])))}catch(e){}}})),(n.length||o.length)&&ge((e=>[...e.filter((e=>!o.includes(e))),...n]))}));return o.observe(document.body,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["data-tooltip-id"],attributeOldValue:!0}),()=>{o.disconnect()}}),[t,l,null==ae?void 0:ae.anchorSelect,H]),(0,m.useEffect)((()=>{Ue()}),[Ue]),(0,m.useEffect)((()=>{if(!(null==D?void 0:D.current))return()=>null;const e=new ResizeObserver((()=>{setTimeout((()=>Ue()))}));return e.observe(D.current),()=>{e.disconnect()}}),[I,null==D?void 0:D.current]),(0,m.useEffect)((()=>{var e;const t=document.querySelector(`[id='${i}']`),n=[...me,t];H&&n.includes(H)||V(null!==(e=me[0])&&void 0!==e?e:t)}),[i,me,H]),(0,m.useEffect)((()=>(F&&Ae(!0),()=>{je(K),je(Z)})),[]),(0,m.useEffect)((()=>{var e;let n=null!==(e=null==ae?void 0:ae.anchorSelect)&&void 0!==e?e:l;if(!n&&t&&(n=`[data-tooltip-id='${t.replace(/'/g,"\\'")}']`),n)try{const e=Array.from(document.querySelectorAll(n));ge(e)}catch(e){ge([])}}),[t,l,null==ae?void 0:ae.anchorSelect]),(0,m.useEffect)((()=>{K.current&&(je(K),Pe(h))}),[h]);const Xe=null!==(X=null==ae?void 0:ae.content)&&void 0!==X?X:I,Ge=re&&Object.keys(Q.tooltipStyles).length>0;return(0,m.useImperativeHandle)(e,(()=>({open:e=>{if(null==e?void 0:e.anchorSelect)try{document.querySelector(e.anchorSelect)}catch(t){return void console.warn(`[react-tooltip] "${e.anchorSelect}" is not a valid CSS selector`)}ce(null!=e?e:null),(null==e?void 0:e.delay)?Pe(e.delay):Ae(!0)},close:e=>{(null==e?void 0:e.delay)?De(e.delay):Ae(!1)},activeAnchor:H,place:Q.place,isOpen:Boolean(ie&&!x&&Xe&&Ge)}))),ie&&!x&&Xe?m.createElement(f,{id:t,role:U,className:be("react-tooltip",Le.tooltip,Ie.tooltip,Ie[o],n,`react-tooltip__place-${Q.place}`,Le[Ge?"show":"closing"],Ge?"react-tooltip__show":"react-tooltip__closing","fixed"===d&&Le.fixed,E&&Le.clickable),onTransitionEnd:e=>{je(J),re||"opacity"!==e.propertyName||(se(!1),ce(null),null==L||L())},style:{...N,...Q.tooltipStyles,opacity:void 0!==q&&Ge?q:void 0},ref:G},Xe,m.createElement(f,{className:be("react-tooltip-arrow",Le.arrow,Ie.arrow,r,_&&Le.noArrow),style:{...Q.tooltipArrowStyles,background:$?`linear-gradient(to right bottom, transparent 50%, ${$} 50%)`:void 0},ref:Y})):null},Me=({content:e})=>m.createElement("span",{dangerouslySetInnerHTML:{__html:e}}),Fe=m.forwardRef((({id:e,anchorId:t,anchorSelect:n,content:r,html:o,render:i,className:l,classNameArrow:s,variant:a="dark",place:c="top",offset:u=10,wrapper:d="div",children:p=null,events:f=["hover"],openOnClick:h=!1,positionStrategy:g="absolute",middlewares:v,delayShow:y=0,delayHide:b=0,float:w=!1,hidden:x=!1,noArrow:_=!1,clickable:E=!1,closeOnEsc:S=!1,closeOnScroll:k=!1,closeOnResize:T=!1,openEvents:A,closeEvents:O,globalCloseEvents:C,imperativeModeOnly:j=!1,style:N,position:P,isOpen:R,defaultIsOpen:L=!1,disableStyleInjection:I=!1,border:D,opacity:M,arrowColor:F,setIsOpen:z,afterShow:B,afterHide:H,role:V="tooltip"},W)=>{const[q,$]=(0,m.useState)(r),[U,X]=(0,m.useState)(o),[G,Y]=(0,m.useState)(c),[K,Z]=(0,m.useState)(a),[J,Q]=(0,m.useState)(u),[ee,te]=(0,m.useState)(y),[ne,re]=(0,m.useState)(b),[oe,ie]=(0,m.useState)(w),[le,se]=(0,m.useState)(x),[ae,ce]=(0,m.useState)(d),[ue,de]=(0,m.useState)(f),[pe,fe]=(0,m.useState)(g),[he,me]=(0,m.useState)(null),[ge,ve]=(0,m.useState)(null),ye=(0,m.useRef)(I),{anchorRefs:we,activeAnchor:xe}=Re(e),_e=e=>null==e?void 0:e.getAttributeNames().reduce(((t,n)=>{var r;return n.startsWith("data-tooltip-")&&(t[n.replace(/^data-tooltip-/,"")]=null!==(r=null==e?void 0:e.getAttribute(n))&&void 0!==r?r:null),t}),{}),Se=e=>{const t={place:e=>{var t;Y(null!==(t=e)&&void 0!==t?t:c)},content:e=>{$(null!=e?e:r)},html:e=>{X(null!=e?e:o)},variant:e=>{var t;Z(null!==(t=e)&&void 0!==t?t:a)},offset:e=>{Q(null===e?u:Number(e))},wrapper:e=>{var t;ce(null!==(t=e)&&void 0!==t?t:d)},events:e=>{const t=null==e?void 0:e.split(" ");de(null!=t?t:f)},"position-strategy":e=>{var t;fe(null!==(t=e)&&void 0!==t?t:g)},"delay-show":e=>{te(null===e?y:Number(e))},"delay-hide":e=>{re(null===e?b:Number(e))},float:e=>{ie(null===e?w:"true"===e)},hidden:e=>{se(null===e?x:"true"===e)},"class-name":e=>{me(e)}};Object.values(t).forEach((e=>e(null))),Object.entries(e).forEach((([e,n])=>{var r;null===(r=t[e])||void 0===r||r.call(t,n)}))};(0,m.useEffect)((()=>{$(r)}),[r]),(0,m.useEffect)((()=>{X(o)}),[o]),(0,m.useEffect)((()=>{Y(c)}),[c]),(0,m.useEffect)((()=>{Z(a)}),[a]),(0,m.useEffect)((()=>{Q(u)}),[u]),(0,m.useEffect)((()=>{te(y)}),[y]),(0,m.useEffect)((()=>{re(b)}),[b]),(0,m.useEffect)((()=>{ie(w)}),[w]),(0,m.useEffect)((()=>{se(x)}),[x]),(0,m.useEffect)((()=>{fe(g)}),[g]),(0,m.useEffect)((()=>{ye.current!==I&&console.warn("[react-tooltip] Do not change `disableStyleInjection` dynamically.")}),[I]),(0,m.useEffect)((()=>{"undefined"!=typeof window&&window.dispatchEvent(new CustomEvent("react-tooltip-inject-styles",{detail:{disableCore:"core"===I,disableBase:I}}))}),[]),(0,m.useEffect)((()=>{var r;const o=new Set(we);let i=n;if(!i&&e&&(i=`[data-tooltip-id='${e.replace(/'/g,"\\'")}']`),i)try{document.querySelectorAll(i).forEach((e=>{o.add({current:e})}))}catch(r){console.warn(`[react-tooltip] "${i}" is not a valid CSS selector`)}const l=document.querySelector(`[id='${t}']`);if(l&&o.add({current:l}),!o.size)return()=>null;const s=null!==(r=null!=ge?ge:l)&&void 0!==r?r:xe.current,a=new MutationObserver((e=>{e.forEach((e=>{var t;if(!s||"attributes"!==e.type||!(null===(t=e.attributeName)||void 0===t?void 0:t.startsWith("data-tooltip-")))return;const n=_e(s);Se(n)}))})),c={attributes:!0,childList:!1,subtree:!1};if(s){const e=_e(s);Se(e),a.observe(s,c)}return()=>{a.disconnect()}}),[we,xe,ge,t,n]),(0,m.useEffect)((()=>{(null==N?void 0:N.border)&&console.warn("[react-tooltip] Do not set `style.border`. Use `border` prop instead."),D&&!Ee("border",`${D}`)&&console.warn(`[react-tooltip] "${D}" is not a valid \`border\`.`),(null==N?void 0:N.opacity)&&console.warn("[react-tooltip] Do not set `style.opacity`. Use `opacity` prop instead."),M&&!Ee("opacity",`${M}`)&&console.warn(`[react-tooltip] "${M}" is not a valid \`opacity\`.`)}),[]);let ke=p;const Te=(0,m.useRef)(null);if(i){const e=i({content:(null==ge?void 0:ge.getAttribute("data-tooltip-content"))||q||null,activeAnchor:ge});ke=e?m.createElement("div",{ref:Te,className:"react-tooltip-content-wrapper"},e):null}else q&&(ke=q);U&&(ke=m.createElement(Me,{content:U}));const Ae={forwardRef:W,id:e,anchorId:t,anchorSelect:n,className:be(l,he),classNameArrow:s,content:ke,contentWrapperRef:Te,place:G,variant:K,offset:J,wrapper:ae,events:ue,openOnClick:h,positionStrategy:pe,middlewares:v,delayShow:ee,delayHide:ne,float:oe,hidden:le,noArrow:_,clickable:E,closeOnEsc:S,closeOnScroll:k,closeOnResize:T,openEvents:A,closeEvents:O,globalCloseEvents:C,imperativeModeOnly:j,style:N,position:P,isOpen:R,defaultIsOpen:L,border:D,opacity:M,arrowColor:F,setIsOpen:z,afterShow:B,afterHide:H,activeAnchor:ge,setActiveAnchor:e=>ve(e),role:V};return m.createElement(De,{...Ae})}));"undefined"!=typeof window&&window.addEventListener("react-tooltip-inject-styles",(e=>{e.detail.disableCore||xe({css:":root{--rt-color-white:#fff;--rt-color-dark:#222;--rt-color-success:#8dc572;--rt-color-error:#be6464;--rt-color-warning:#f0ad4e;--rt-color-info:#337ab7;--rt-opacity:0.9;--rt-transition-show-delay:0.15s;--rt-transition-closing-delay:0.15s}.core-styles-module_tooltip__3vRRp{position:absolute;top:0;left:0;pointer-events:none;opacity:0;will-change:opacity}.core-styles-module_fixed__pcSol{position:fixed}.core-styles-module_arrow__cvMwQ{position:absolute;background:inherit}.core-styles-module_noArrow__xock6{display:none}.core-styles-module_clickable__ZuTTB{pointer-events:auto}.core-styles-module_show__Nt9eE{opacity:var(--rt-opacity);transition:opacity var(--rt-transition-show-delay)ease-out}.core-styles-module_closing__sGnxF{opacity:0;transition:opacity var(--rt-transition-closing-delay)ease-in}",type:"core"}),e.detail.disableBase||xe({css:"\n.styles-module_tooltip__mnnfp{padding:8px 16px;border-radius:3px;font-size:90%;width:max-content}.styles-module_arrow__K0L3T{width:8px;height:8px}[class*='react-tooltip__place-top']>.styles-module_arrow__K0L3T{transform:rotate(45deg)}[class*='react-tooltip__place-right']>.styles-module_arrow__K0L3T{transform:rotate(135deg)}[class*='react-tooltip__place-bottom']>.styles-module_arrow__K0L3T{transform:rotate(225deg)}[class*='react-tooltip__place-left']>.styles-module_arrow__K0L3T{transform:rotate(315deg)}.styles-module_dark__xNqje{background:var(--rt-color-dark);color:var(--rt-color-white)}.styles-module_light__Z6W-X{background-color:var(--rt-color-white);color:var(--rt-color-dark)}.styles-module_success__A2AKt{background-color:var(--rt-color-success);color:var(--rt-color-white)}.styles-module_warning__SCK0X{background-color:var(--rt-color-warning);color:var(--rt-color-white)}.styles-module_error__JvumD{background-color:var(--rt-color-error);color:var(--rt-color-white)}.styles-module_info__BWdHW{background-color:var(--rt-color-info);color:var(--rt-color-white)}",type:"base"})}));const ze=(e,t="")=>{for(const[n,r]of Object.entries(e)){let e=n;t&&(e+="_"+String(t));const o=new CustomEvent(e,{detail:r});dispatchEvent(o)}},Be=(e,t="")=>{for(const[n,r]of Object.entries(e)){let e=n;t&&(e+="_"+String(t)),addEventListener(e,(e=>{r(e.detail)}),!1)}},He=({onlineEventLinkDefault:e=""})=>{const t=(0,o.__)("Online event","gatherpress"),[n,r]=(0,a.useState)(e);return Be({setOnlineEventLink:r},p("eventDetails.postId")),(0,c.jsxs)(l.Flex,{justify:"normal",gap:"3",children:[(0,c.jsx)(l.FlexItem,{display:"flex",children:(0,c.jsx)(l.Icon,{icon:"video-alt2"})}),(0,c.jsxs)(l.FlexItem,{children:[!n&&(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)("span",{tabIndex:"0",className:"gatherpress-tooltip","data-tooltip-id":"gatherpress-online-event-tooltip","data-tooltip-content":(0,o.__)("Link available for attendees only.","gatherpress"),children:t}),(0,c.jsx)(Fe,{id:"gatherpress-online-event-tooltip"})]}),n&&(0,c.jsx)("a",{href:n,rel:"noreferrer",target:"_blank",children:t})]})]})};var Ve=n(442);const We=Ve.default||Ve,qe=({name:e,fullAddress:t,phoneNumber:n,website:r})=>(0,c.jsxs)(c.Fragment,{children:[(e||t)&&(0,c.jsxs)(l.Flex,{justify:"normal",align:"flex-start",gap:"4",children:[(0,c.jsx)(l.FlexItem,{display:"flex",className:"gatherpress-venue__icon",children:(0,c.jsx)(l.Icon,{icon:"location"})}),(0,c.jsxs)(l.FlexItem,{children:[e&&(0,c.jsx)("div",{className:"gatherpress-venue__name",children:(0,c.jsx)("strong",{children:We(e)})}),t&&(0,c.jsx)("div",{className:"gatherpress-venue__full-address",children:We(t)})]})]}),(n||r)&&(0,c.jsxs)(l.Flex,{justify:"normal",gap:"8",children:[n&&(0,c.jsx)(l.FlexItem,{children:(0,c.jsxs)(l.Flex,{justify:"normal",gap:"4",children:[(0,c.jsx)(l.FlexItem,{display:"flex",className:"gatherpress-venue__icon",children:(0,c.jsx)(l.Icon,{icon:"phone"})}),(0,c.jsx)(l.FlexItem,{children:(0,c.jsx)("div",{className:"gatherpress-venue__phone-number",children:n})})]})}),r&&(0,c.jsx)(l.FlexItem,{children:(0,c.jsxs)(l.Flex,{justify:"normal",gap:"4",children:[(0,c.jsx)(l.FlexItem,{display:"flex",className:"gatherpress-venue__icon",children:(0,c.jsx)(l.Icon,{icon:"admin-site-alt3"})}),(0,c.jsx)(l.FlexItem,{children:(0,c.jsx)("div",{className:"gatherpress-venue__website",children:(0,c.jsx)("a",{href:r,target:"_blank",rel:"noreferrer noopener",children:r})})})]})})]})]}),$e=({name:e="",fullAddress:t,phoneNumber:n,website:r,isOnlineEventTerm:o=!1,onlineEventLink:i=""})=>(0,c.jsxs)(c.Fragment,{children:[!o&&(0,c.jsx)(qe,{name:e,fullAddress:t,phoneNumber:n,website:r}),o&&(0,c.jsx)(He,{onlineEventLinkDefault:i})]}),Ue=e=>{const{isSelected:t}=e,n=t?"none":"block";return(0,c.jsxs)("div",{style:{position:"relative"},children:[e.children,(0,c.jsx)("div",{style:{position:"absolute",top:"0",right:"0",bottom:"0",left:"0",display:n}})]})};function Xe(){return"gatherpress_venue"===(0,s.select)("core/editor")?.getCurrentPostType()}const Ge=()=>{const[e,t]=(0,a.useState)(""),[n,r]=(0,a.useState)(""),[i,u]=(0,a.useState)(""),[d,p]=(0,a.useState)(""),[f,h]=(0,a.useState)(!1),[m,g]=(0,a.useState)(""),[v,y]=(0,a.useState)(""),[b,w]=(0,a.useState)(""),x=(0,s.useDispatch)("core/editor").editPost,{unlockPostSaving:_}=(0,s.useDispatch)("core/editor"),E=(0,s.useSelect)((e=>e("core/editor").getEditedPostAttribute("_gatherpress_venue"))),S=(0,s.useSelect)((e=>e("core").getEntityRecord("taxonomy","_gatherpress_venue",E))),k=S?.slug.replace(/^_/,""),[T,A]=(0,a.useState)(""),O=E+":"+T,C=(0,s.useSelect)((e=>e("core").getEntityRecords("postType","gatherpress_venue",{per_page:1,slug:T})));(0,a.useEffect)((()=>{var e,n,i,l,s,a;let c={};if(T&&Array.isArray(C)){var d;const e=null!==(d=C[0]?.meta?.gatherpress_venue_information)&&void 0!==d?d:"{}";var f;e&&(c=JSON.parse(e),c.name=null!==(f=C[0]?.title.rendered)&&void 0!==f?f:"")}const h=null!==(e=c?.name)&&void 0!==e?e:(0,o.__)("No venue selected.","gatherpress"),m=null!==(n=c?.fullAddress)&&void 0!==n?n:"",v=null!==(i=c?.phoneNumber)&&void 0!==i?i:"",b=null!==(l=c?.website)&&void 0!==l?l:"",x=null!==(s=c?.latitude)&&void 0!==s?s:"0",_=null!==(a=c?.longitude)&&void 0!==a?a:"0";k&&A(k),w(O?String(O):""),t(h),r(m),u(v),p(b),g(x),y(_),ze({setName:h,setFullAddress:m,setPhoneNumber:v,setWebsite:b,setLatitude:x,setLongitude:_,setIsOnlineEventTerm:"online-event"===T})}),[T,C,k,O]);let j=(0,s.useSelect)((e=>e("core").getEntityRecords("taxonomy","_gatherpress_venue",{per_page:-1,context:"view"})),[]);return j?(j=j.map((e=>({label:e.name,value:e.id+":"+e.slug.replace(/^_/,"")}))),j.unshift({value:":",label:(0,o.__)("Choose a venue","gatherpress")})):j=[],(0,c.jsx)(l.PanelRow,{children:(0,c.jsx)(l.SelectControl,{label:(0,o.__)("Venue Selector","gatherpress"),value:b,onChange:e=>{(e=>{w(e);const t=""!==(e=e.split(":"))[0]?[e[0]]:[];x({_gatherpress_venue:t}),A(e[1]),_()})(e)},options:j})})},Ye=window.wp.compose,Ke=()=>{var e,t,n;const r=(0,s.useDispatch)("core/editor").editPost,i=e=>{const t=JSON.stringify({...u,...e});r({meta:{gatherpress_venue_information:t}})};let u=(0,s.useSelect)((e=>e("core/editor").getEditedPostAttribute("meta").gatherpress_venue_information));u=u?JSON.parse(u):{};const[d,p]=(0,a.useState)(null!==(e=u.fullAddress)&&void 0!==e?e:""),[f,h]=(0,a.useState)(null!==(t=u.phoneNumber)&&void 0!==t?t:""),[m,g]=(0,a.useState)(null!==(n=u.website)&&void 0!==n?n:"");Be({setFullAddress:p,setPhoneNumber:h,setWebsite:g});const v=(0,a.useRef)(i),y=(0,a.useCallback)((()=>{let e=null,t=null;fetch(`https://nominatim.openstreetmap.org/search?q=${d}&format=geojson`).then((e=>{if(!e.ok)throw new Error((0,o.sprintf)(/* translators: %s: Error message */ /* translators: %s: Error message */ +(0,o.__)("Network response was not ok %s","gatherpress"),e.statusText));return e.json()})).then((n=>{n.features.length>0&&(e=n.features[0].geometry.coordinates[1],t=n.features[0].geometry.coordinates[0]),v.current({latitude:e,longitude:t})}))}),[d]),b=(0,Ye.useDebounce)(y,300);return(0,a.useEffect)((()=>{v.current=i}),[i]),(0,a.useEffect)((()=>{b()}),[d,b]),(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(l.TextControl,{label:(0,o.__)("Full Address","gatherpress"),value:d,onChange:e=>{ze({setFullAddress:e}),i({fullAddress:e})}}),(0,c.jsx)(l.TextControl,{label:(0,o.__)("Phone Number","gatherpress"),value:f,onChange:e=>{ze({setPhoneNumber:e}),i({phoneNumber:e})}}),(0,c.jsx)(l.TextControl,{label:(0,o.__)("Website","gatherpress"),value:m,type:"url",onChange:e=>{ze({setWebsite:e}),i({website:e})}})]})},Ze=()=>(0,c.jsx)("section",{children:(0,c.jsx)(Ke,{})}),Je=()=>{const{editPost:e,unlockPostSaving:t}=(0,s.useDispatch)("core/editor"),n=(0,s.useSelect)((e=>e("core/editor").getEditedPostAttribute("meta").gatherpress_online_event_link)),[r,i]=(0,a.useState)(n);return Be({setOnlineEventLink:i},p("eventDetails.postId")),(0,c.jsx)(l.TextControl,{label:(0,o.__)("Online event link","gatherpress"),value:r,placeholder:(0,o.__)("Add link to online event","gatherpress"),onChange:n=>{(n=>{e({meta:{gatherpress_online_event_link:n}}),i(n),ze({setOnlineEventLink:n},p("eventDetails.postId")),t()})(n)}})},Qe=window.moment;var et=n.n(Qe);window.wp.date;const tt="YYYY-MM-DD HH:mm:ss",nt=et().tz(rt()).add(1,"day").set("hour",18).set("minute",0).set("second",0).format(tt);function rt(e=p("eventDetails.dateTime.timezone")){return et().tz.zone(e)?e:(0,o.__)("GMT","gatherpress")}et().tz(nt,rt()).add(2,"hours").format(tt),(0,o.__)("1 hour","gatherpress"),(0,o.__)("1.5 hours","gatherpress"),(0,o.__)("2 hours","gatherpress"),(0,o.__)("3 hours","gatherpress"),(0,o.__)("Set an end time…","gatherpress");const ot=JSON.parse('{"$schema":"https://schemas.wp.org/trunk/block.json","apiVersion":2,"name":"gatherpress/venue","version":"1.1.0","title":"Venue","category":"gatherpress","icon":"location","example":{},"description":"Provides information about an event venue.","attributes":{"mapShow":{"type":"boolean","default":true},"mapAlign":{"type":"string","default":""},"mapZoomLevel":{"type":"number","default":10},"mapType":{"type":"string","default":"m"},"mapHeight":{"type":"number","default":300}},"supports":{"align":["wide"],"html":false},"textdomain":"gatherpress","editorScript":"file:./index.js","editorStyle":"file:./index.css","style":"file:./style-index.css","viewScript":"file:./venue.js","viewStyle":"file:./venue.css","render":"file:./render.php"}');(0,r.registerBlockType)(ot,{edit:({attributes:e,setAttributes:t,isSelected:n})=>{const{mapZoomLevel:r,mapType:u,mapHeight:f}=e,[m,g]=(0,a.useState)(""),[v,y]=(0,a.useState)(""),[b,w]=(0,a.useState)(""),[x,_]=(0,a.useState)(""),[E,S]=(0,a.useState)(""),[k,T]=(0,a.useState)(""),[A,O]=(0,a.useState)(!1),C=(0,i.useBlockProps)(),j=p("settings.mapPlatform"),N=(0,s.useSelect)((e=>e("core/editor")?.getEditedPostAttribute("meta")?.gatherpress_online_event_link));let{mapShow:P}=e,R=(0,s.useSelect)((e=>e("core/editor")?.getEditedPostAttribute("meta")?.gatherpress_venue_information));return R=R?JSON.parse(R):{},P&&v&&(P=!0),P&&!d()&&(P=!0),Be({setName:g,setFullAddress:y,setPhoneNumber:S,setWebsite:T,setIsOnlineEventTerm:O,setLatitude:w,setLongitude:_}),(0,a.useEffect)((()=>{Xe()&&(y(R.fullAddress),S(R.phoneNumber),T(R.website),w(R.latitude),_(R.longitude),g(v||E||k?"":(0,o.__)("Add venue information.","gatherpress"))),"gatherpress_event"!==(0,s.select)("core/editor")?.getCurrentPostType()&&d()||g(v||E||k?"":(0,o.__)("No venue selected.","gatherpress"))}),[R.fullAddress,R.phoneNumber,R.website,R.latitude,R.longitude,v,E,k,b,x]),(0,a.useEffect)((()=>{const e=new Event("resize");window.dispatchEvent(e)}),[f]),(0,c.jsxs)(c.Fragment,{children:[(0,c.jsxs)(i.InspectorControls,{children:[d()&&(0,c.jsxs)(l.PanelBody,{title:(0,o.__)("Venue settings","gatherpress"),initialOpen:!0,children:[(0,c.jsxs)(l.PanelRow,{children:[!Xe()&&(0,c.jsx)(Ge,{}),Xe()&&(0,c.jsx)(Ze,{})]}),A&&(0,c.jsx)(l.PanelRow,{children:(0,c.jsx)(Je,{})})]}),!A&&(0,c.jsxs)(l.PanelBody,{title:(0,o.__)("Map settings","gatherpress"),initialOpen:!0,children:[(0,c.jsx)(l.PanelRow,{children:(0,o.__)("Show map on venue","gatherpress")}),(0,c.jsx)(l.PanelRow,{children:(0,c.jsx)(l.ToggleControl,{label:P?(0,o.__)("Display the map","gatherpress"):(0,o.__)("Hide the map","gatherpress"),checked:P,onChange:e=>{t({mapShow:e})}})}),(0,c.jsx)(l.RangeControl,{label:(0,o.__)("Zoom level","gatherpress"),beforeIcon:"search",value:r,onChange:e=>t({mapZoomLevel:e}),min:1,max:22}),"google"===j&&(0,c.jsx)(l.RadioControl,{label:(0,o.__)("Map type","gatherpress"),selected:u,options:[{label:(0,o.__)("Roadmap","gatherpress"),value:"m"},{label:(0,o.__)("Satellite","gatherpress"),value:"k"}],onChange:e=>{t({mapType:e})}}),(0,c.jsx)(l.RangeControl,{label:(0,o.__)("Map height","gatherpress"),beforeIcon:"location",value:f,onChange:e=>t({mapHeight:e}),min:100,max:1e3})]})]}),(0,c.jsx)("div",{...C,children:(0,c.jsx)(Ue,{isSelected:n,children:(0,c.jsxs)("div",{className:"gatherpress-venue",children:[(0,c.jsx)($e,{name:m,fullAddress:v,phoneNumber:E,website:k,isOnlineEventTerm:A,onlineEventLink:N}),P&&!A&&(0,c.jsx)(h,{location:v,latitude:b,longitude:x,zoom:r,type:u,height:f})]})})})]})},save:()=>{}})},5413:(e,t)=>{"use strict";var n;Object.defineProperty(t,"__esModule",{value:!0}),t.Doctype=t.CDATA=t.Tag=t.Style=t.Script=t.Comment=t.Directive=t.Text=t.Root=t.isTag=t.ElementType=void 0,function(e){e.Root="root",e.Text="text",e.Directive="directive",e.Comment="comment",e.Script="script",e.Style="style",e.Tag="tag",e.CDATA="cdata",e.Doctype="doctype"}(n=t.ElementType||(t.ElementType={})),t.isTag=function(e){return e.type===n.Tag||e.type===n.Script||e.type===n.Style},t.Root=n.Root,t.Text=n.Text,t.Directive=n.Directive,t.Comment=n.Comment,t.Script=n.Script,t.Style=n.Style,t.Tag=n.Tag,t.CDATA=n.CDATA,t.Doctype=n.Doctype},1141:function(e,t,n){"use strict";var r=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n);var o=Object.getOwnPropertyDescriptor(t,n);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,o)}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),o=this&&this.__exportStar||function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||r(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),t.DomHandler=void 0;var i=n(5413),l=n(6957);o(n(6957),t);var s={withStartIndices:!1,withEndIndices:!1,xmlMode:!1},a=function(){function e(e,t,n){this.dom=[],this.root=new l.Document(this.dom),this.done=!1,this.tagStack=[this.root],this.lastNode=null,this.parser=null,"function"==typeof t&&(n=t,t=s),"object"==typeof e&&(t=e,e=void 0),this.callback=null!=e?e:null,this.options=null!=t?t:s,this.elementCB=null!=n?n:null}return e.prototype.onparserinit=function(e){this.parser=e},e.prototype.onreset=function(){this.dom=[],this.root=new l.Document(this.dom),this.done=!1,this.tagStack=[this.root],this.lastNode=null,this.parser=null},e.prototype.onend=function(){this.done||(this.done=!0,this.parser=null,this.handleCallback(null))},e.prototype.onerror=function(e){this.handleCallback(e)},e.prototype.onclosetag=function(){this.lastNode=null;var e=this.tagStack.pop();this.options.withEndIndices&&(e.endIndex=this.parser.endIndex),this.elementCB&&this.elementCB(e)},e.prototype.onopentag=function(e,t){var n=this.options.xmlMode?i.ElementType.Tag:void 0,r=new l.Element(e,t,void 0,n);this.addNode(r),this.tagStack.push(r)},e.prototype.ontext=function(e){var t=this.lastNode;if(t&&t.type===i.ElementType.Text)t.data+=e,this.options.withEndIndices&&(t.endIndex=this.parser.endIndex);else{var n=new l.Text(e);this.addNode(n),this.lastNode=n}},e.prototype.oncomment=function(e){if(this.lastNode&&this.lastNode.type===i.ElementType.Comment)this.lastNode.data+=e;else{var t=new l.Comment(e);this.addNode(t),this.lastNode=t}},e.prototype.oncommentend=function(){this.lastNode=null},e.prototype.oncdatastart=function(){var e=new l.Text(""),t=new l.CDATA([e]);this.addNode(t),e.parent=t,this.lastNode=e},e.prototype.oncdataend=function(){this.lastNode=null},e.prototype.onprocessinginstruction=function(e,t){var n=new l.ProcessingInstruction(e,t);this.addNode(n)},e.prototype.handleCallback=function(e){if("function"==typeof this.callback)this.callback(e,this.dom);else if(e)throw e},e.prototype.addNode=function(e){var t=this.tagStack[this.tagStack.length-1],n=t.children[t.children.length-1];this.options.withStartIndices&&(e.startIndex=this.parser.startIndex),this.options.withEndIndices&&(e.endIndex=this.parser.endIndex),t.children.push(e),n&&(e.prev=n,n.next=e),e.parent=t,this.lastNode=null},e}();t.DomHandler=a,t.default=a},6957:function(e,t,n){"use strict";var r,o=this&&this.__extends||(r=function(e,t){return r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},r(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function __(){this.constructor=e}r(e,t),e.prototype=null===t?Object.create(t):(__.prototype=t.prototype,new __)}),i=this&&this.__assign||function(){return i=Object.assign||function(e){for(var t,n=1,r=arguments.length;n0?this.children[this.children.length-1]:null},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"childNodes",{get:function(){return this.children},set:function(e){this.children=e},enumerable:!1,configurable:!0}),t}(s);t.NodeWithChildren=p;var f=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.type=l.ElementType.CDATA,t}return o(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 4},enumerable:!1,configurable:!0}),t}(p);t.CDATA=f;var h=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.type=l.ElementType.Root,t}return o(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 9},enumerable:!1,configurable:!0}),t}(p);t.Document=h;var m=function(e){function t(t,n,r,o){void 0===r&&(r=[]),void 0===o&&(o="script"===t?l.ElementType.Script:"style"===t?l.ElementType.Style:l.ElementType.Tag);var i=e.call(this,r)||this;return i.name=t,i.attribs=n,i.type=o,i}return o(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 1},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"tagName",{get:function(){return this.name},set:function(e){this.name=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"attributes",{get:function(){var e=this;return Object.keys(this.attribs).map((function(t){var n,r;return{name:t,value:e.attribs[t],namespace:null===(n=e["x-attribsNamespace"])||void 0===n?void 0:n[t],prefix:null===(r=e["x-attribsPrefix"])||void 0===r?void 0:r[t]}}))},enumerable:!1,configurable:!0}),t}(p);function g(e){return(0,l.isTag)(e)}function v(e){return e.type===l.ElementType.CDATA}function y(e){return e.type===l.ElementType.Text}function b(e){return e.type===l.ElementType.Comment}function w(e){return e.type===l.ElementType.Directive}function x(e){return e.type===l.ElementType.Root}function _(e,t){var n;if(void 0===t&&(t=!1),y(e))n=new c(e.data);else if(b(e))n=new u(e.data);else if(g(e)){var r=t?E(e.children):[],o=new m(e.name,i({},e.attribs),r);r.forEach((function(e){return e.parent=o})),null!=e.namespace&&(o.namespace=e.namespace),e["x-attribsNamespace"]&&(o["x-attribsNamespace"]=i({},e["x-attribsNamespace"])),e["x-attribsPrefix"]&&(o["x-attribsPrefix"]=i({},e["x-attribsPrefix"])),n=o}else if(v(e)){r=t?E(e.children):[];var l=new f(r);r.forEach((function(e){return e.parent=l})),n=l}else if(x(e)){r=t?E(e.children):[];var s=new h(r);r.forEach((function(e){return e.parent=s})),e["x-mode"]&&(s["x-mode"]=e["x-mode"]),n=s}else{if(!w(e))throw new Error("Not implemented yet: ".concat(e.type));var a=new d(e.name,e.data);null!=e["x-name"]&&(a["x-name"]=e["x-name"],a["x-publicId"]=e["x-publicId"],a["x-systemId"]=e["x-systemId"]),n=a}return n.startIndex=e.startIndex,n.endIndex=e.endIndex,null!=e.sourceCodeLocation&&(n.sourceCodeLocation=e.sourceCodeLocation),n}function E(e){for(var t=e.map((function(e){return _(e,!0)})),n=1;n{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CASE_SENSITIVE_TAG_NAMES_MAP=t.CASE_SENSITIVE_TAG_NAMES=void 0,t.CASE_SENSITIVE_TAG_NAMES=["animateMotion","animateTransform","clipPath","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","foreignObject","linearGradient","radialGradient","textPath"],t.CASE_SENSITIVE_TAG_NAMES_MAP=t.CASE_SENSITIVE_TAG_NAMES.reduce((function(e,t){return e[t.toLowerCase()]=t,e}),{})},5496:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){var t,u,d=e.match(i),p=d&&d[1]?d[1].toLowerCase():"";switch(p){case n:var h=c(e);return l.test(e)||null===(t=null==(g=h.querySelector(r))?void 0:g.parentNode)||void 0===t||t.removeChild(g),s.test(e)||null===(u=null==(g=h.querySelector(o))?void 0:g.parentNode)||void 0===u||u.removeChild(g),h.querySelectorAll(n);case r:case o:var m=a(e).querySelectorAll(p);return s.test(e)&&l.test(e)?m[0].parentNode.childNodes:m;default:return f?f(e):(g=a(e,o).querySelector(o)).childNodes;var g}};var n="html",r="head",o="body",i=/<([a-zA-Z]+[0-9]?)/,l=//i,s=//i,a=function(e,t){throw new Error("This browser does not support `document.implementation.createHTMLDocument`")},c=function(e,t){throw new Error("This browser does not support `DOMParser.prototype.parseFromString`")},u="object"==typeof window&&window.DOMParser;if("function"==typeof u){var d=new u;a=c=function(e,t){return t&&(e="<".concat(t,">").concat(e,"")),d.parseFromString(e,"text/html")}}if("object"==typeof document&&document.implementation){var p=document.implementation.createHTMLDocument();a=function(e,t){if(t){var n=p.documentElement.querySelector(t);return n&&(n.innerHTML=e),p}return p.documentElement.innerHTML=e,p}}var f,h="object"==typeof document&&document.createElement("template");h&&h.content&&(f=function(e){return h.innerHTML=e,h.content.childNodes})},2471:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){if("string"!=typeof e)throw new TypeError("First argument must be a string");if(!e)return[];var t=e.match(l),n=t?t[1]:void 0;return(0,i.formatDOM)((0,o.default)(e),null,n)};var o=r(n(5496)),i=n(7731),l=/<(![a-zA-Z\s]+)>/},7731:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.formatAttributes=i,t.formatDOM=function e(t,n,o){void 0===n&&(n=null);for(var s,a=[],c=0,u=t.length;c{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){void 0===e&&(e={});var n={},c=Boolean(e.type&&s[e.type]);for(var u in e){var d=e[u];if((0,r.isCustomAttribute)(u))n[u]=d;else{var p=u.toLowerCase(),f=a(p);if(f){var h=(0,r.getPropertyInfo)(f);switch(i.includes(f)&&l.includes(t)&&!c&&(f=a("default"+p)),n[f]=d,h&&h.type){case r.BOOLEAN:n[f]=!0;break;case r.OVERLOADED_BOOLEAN:""===d&&(n[f]=!0)}}else o.PRESERVE_CUSTOM_ATTRIBUTES&&(n[u]=d)}}return(0,o.setStyleProp)(e.style,n),n};var r=n(4210),o=n(4958),i=["checked","value"],l=["input","select","textarea"],s={reset:!0,submit:!0};function a(e){return r.possibleStandardNames[e]}},308:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t,n){void 0===n&&(n={});for(var r=[],o="function"==typeof n.replace,c=n.transform||l.returnFirstArg,u=n.library||s,d=u.cloneElement,p=u.createElement,f=u.isValidElement,h=t.length,m=0;m1&&(v=d(v,{key:v.key||m})),r.push(c(v,g,m));continue}}if("text"!==g.type){var y=g,b={};a(y)?((0,l.setStyleProp)(y.attribs.style,y.attribs),b=y.attribs):y.attribs&&(b=(0,i.default)(y.attribs,y.name));var w=void 0;switch(g.type){case"script":case"style":g.children[0]&&(b.dangerouslySetInnerHTML={__html:g.children[0].data});break;case"tag":"textarea"===g.name&&g.children[0]?b.defaultValue=g.children[0].data:g.children&&g.children.length&&(w=e(g.children,n));break;default:continue}h>1&&(b.key=m),r.push(c(p(g.name,b,w),g,m))}else{var x=!g.data.trim().length;if(x&&g.parent&&!(0,l.canTextBeChildOfNode)(g.parent))continue;if(n.trim&&x)continue;r.push(c(g.data,g,m))}}return 1===r.length?r[0]:r};var o=n(1609),i=r(n(840)),l=n(4958),s={cloneElement:o.cloneElement,createElement:o.createElement,isValidElement:o.isValidElement};function a(e){return l.PRESERVE_CUSTOM_ATTRIBUTES&&"tag"===e.type&&(0,l.isCustomComponent)(e.name,e.attribs)}},442:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.htmlToDOM=t.domToReact=t.attributesToProps=t.Text=t.ProcessingInstruction=t.Element=t.Comment=void 0,t.default=function(e,t){if("string"!=typeof e)throw new TypeError("First argument must be a string");return e?(0,l.default)((0,o.default)(e,(null==t?void 0:t.htmlparser2)||a),t):[]};var o=r(n(2471));t.htmlToDOM=o.default;var i=r(n(840));t.attributesToProps=i.default;var l=r(n(308));t.domToReact=l.default;var s=n(1141);Object.defineProperty(t,"Comment",{enumerable:!0,get:function(){return s.Comment}}),Object.defineProperty(t,"Element",{enumerable:!0,get:function(){return s.Element}}),Object.defineProperty(t,"ProcessingInstruction",{enumerable:!0,get:function(){return s.ProcessingInstruction}}),Object.defineProperty(t,"Text",{enumerable:!0,get:function(){return s.Text}});var a={lowerCaseAttributeNames:!1}},4958:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.returnFirstArg=t.canTextBeChildOfNode=t.ELEMENTS_WITH_NO_TEXT_CHILDREN=t.PRESERVE_CUSTOM_ATTRIBUTES=void 0,t.isCustomComponent=function(e,t){return e.includes("-")?!l.has(e):Boolean(t&&"string"==typeof t.is)},t.setStyleProp=function(e,t){if("string"==typeof e)if(e.trim())try{t.style=(0,i.default)(e,s)}catch(e){t.style={}}else t.style={}};var o=n(1609),i=r(n(5229)),l=new Set(["annotation-xml","color-profile","font-face","font-face-src","font-face-uri","font-face-format","font-face-name","missing-glyph"]),s={reactCompat:!0};t.PRESERVE_CUSTOM_ATTRIBUTES=Number(o.version.split(".")[0])>=16,t.ELEMENTS_WITH_NO_TEXT_CHILDREN=new Set(["tr","tbody","thead","tfoot","colgroup","table","head","html","frameset"]),t.canTextBeChildOfNode=function(e){return!t.ELEMENTS_WITH_NO_TEXT_CHILDREN.has(e.name)},t.returnFirstArg=function(e){return e}},9788:e=>{var t=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,n=/\n/g,r=/^\s*/,o=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,i=/^:\s*/,l=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,s=/^[;\s]*/,a=/^\s+|\s+$/g,c="";function u(e){return e?e.replace(a,c):c}e.exports=function(e,a){if("string"!=typeof e)throw new TypeError("First argument must be a string");if(!e)return[];a=a||{};var d=1,p=1;function f(e){var t=e.match(n);t&&(d+=t.length);var r=e.lastIndexOf("\n");p=~r?e.length-r:p+e.length}function h(){var e={line:d,column:p};return function(t){return t.position=new m(e),b(),t}}function m(e){this.start=e,this.end={line:d,column:p},this.source=a.source}m.prototype.content=e;var g=[];function v(t){var n=new Error(a.source+":"+d+":"+p+": "+t);if(n.reason=t,n.filename=a.source,n.line=d,n.column=p,n.source=e,!a.silent)throw n;g.push(n)}function y(t){var n=t.exec(e);if(n){var r=n[0];return f(r),e=e.slice(r.length),n}}function b(){y(r)}function w(e){var t;for(e=e||[];t=x();)!1!==t&&e.push(t);return e}function x(){var t=h();if("/"==e.charAt(0)&&"*"==e.charAt(1)){for(var n=2;c!=e.charAt(n)&&("*"!=e.charAt(n)||"/"!=e.charAt(n+1));)++n;if(n+=2,c===e.charAt(n-1))return v("End of comment missing");var r=e.slice(2,n-2);return p+=2,f(r),e=e.slice(n),p+=2,t({type:"comment",comment:r})}}function _(){var e=h(),n=y(o);if(n){if(x(),!y(i))return v("property missing ':'");var r=y(l),a=e({type:"declaration",property:u(n[0].replace(t,c)),value:r?u(r[0].replace(t,c)):c});return y(s),a}}return b(),function(){var e,t=[];for(w(t);e=_();)!1!==e&&(t.push(e),w(t));return t}()}},4210:(e,t,n)=>{"use strict";function r(e,t,n,r,o,i,l){this.acceptsBooleans=2===t||3===t||4===t,this.attributeName=r,this.attributeNamespace=o,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=i,this.removeEmptyString=l}const o={};["children","dangerouslySetInnerHTML","defaultValue","defaultChecked","innerHTML","suppressContentEditableWarning","suppressHydrationWarning","style"].forEach((e=>{o[e]=new r(e,0,!1,e,null,!1,!1)})),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach((([e,t])=>{o[e]=new r(e,1,!1,t,null,!1,!1)})),["contentEditable","draggable","spellCheck","value"].forEach((e=>{o[e]=new r(e,2,!1,e.toLowerCase(),null,!1,!1)})),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach((e=>{o[e]=new r(e,2,!1,e,null,!1,!1)})),["allowFullScreen","async","autoFocus","autoPlay","controls","default","defer","disabled","disablePictureInPicture","disableRemotePlayback","formNoValidate","hidden","loop","noModule","noValidate","open","playsInline","readOnly","required","reversed","scoped","seamless","itemScope"].forEach((e=>{o[e]=new r(e,3,!1,e.toLowerCase(),null,!1,!1)})),["checked","multiple","muted","selected"].forEach((e=>{o[e]=new r(e,3,!0,e,null,!1,!1)})),["capture","download"].forEach((e=>{o[e]=new r(e,4,!1,e,null,!1,!1)})),["cols","rows","size","span"].forEach((e=>{o[e]=new r(e,6,!1,e,null,!1,!1)})),["rowSpan","start"].forEach((e=>{o[e]=new r(e,5,!1,e.toLowerCase(),null,!1,!1)}));const i=/[\-\:]([a-z])/g,l=e=>e[1].toUpperCase();["accent-height","alignment-baseline","arabic-form","baseline-shift","cap-height","clip-path","clip-rule","color-interpolation","color-interpolation-filters","color-profile","color-rendering","dominant-baseline","enable-background","fill-opacity","fill-rule","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","glyph-name","glyph-orientation-horizontal","glyph-orientation-vertical","horiz-adv-x","horiz-origin-x","image-rendering","letter-spacing","lighting-color","marker-end","marker-mid","marker-start","overline-position","overline-thickness","paint-order","panose-1","pointer-events","rendering-intent","shape-rendering","stop-color","stop-opacity","strikethrough-position","strikethrough-thickness","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","text-anchor","text-decoration","text-rendering","underline-position","underline-thickness","unicode-bidi","unicode-range","units-per-em","v-alphabetic","v-hanging","v-ideographic","v-mathematical","vector-effect","vert-adv-y","vert-origin-x","vert-origin-y","word-spacing","writing-mode","xmlns:xlink","x-height"].forEach((e=>{const t=e.replace(i,l);o[t]=new r(t,1,!1,e,null,!1,!1)})),["xlink:actuate","xlink:arcrole","xlink:role","xlink:show","xlink:title","xlink:type"].forEach((e=>{const t=e.replace(i,l);o[t]=new r(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)})),["xml:base","xml:lang","xml:space"].forEach((e=>{const t=e.replace(i,l);o[t]=new r(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)})),["tabIndex","crossOrigin"].forEach((e=>{o[e]=new r(e,1,!1,e.toLowerCase(),null,!1,!1)})),o.xlinkHref=new r("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach((e=>{o[e]=new r(e,1,!1,e.toLowerCase(),null,!0,!0)}));const{CAMELCASE:s,SAME:a,possibleStandardNames:c}=n(6811),u=RegExp.prototype.test.bind(new RegExp("^(data|aria)-[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$")),d=Object.keys(c).reduce(((e,t)=>{const n=c[t];return n===a?e[t]=t:n===s?e[t.toLowerCase()]=t:e[t]=n,e}),{});t.BOOLEAN=3,t.BOOLEANISH_STRING=2,t.NUMERIC=5,t.OVERLOADED_BOOLEAN=4,t.POSITIVE_NUMERIC=6,t.RESERVED=0,t.STRING=1,t.getPropertyInfo=function(e){return o.hasOwnProperty(e)?o[e]:null},t.isCustomAttribute=u,t.possibleStandardNames=d},6811:(e,t)=>{t.SAME=0,t.CAMELCASE=1,t.possibleStandardNames={accept:0,acceptCharset:1,"accept-charset":"acceptCharset",accessKey:1,action:0,allowFullScreen:1,alt:0,as:0,async:0,autoCapitalize:1,autoComplete:1,autoCorrect:1,autoFocus:1,autoPlay:1,autoSave:1,capture:0,cellPadding:1,cellSpacing:1,challenge:0,charSet:1,checked:0,children:0,cite:0,class:"className",classID:1,className:1,cols:0,colSpan:1,content:0,contentEditable:1,contextMenu:1,controls:0,controlsList:1,coords:0,crossOrigin:1,dangerouslySetInnerHTML:1,data:0,dateTime:1,default:0,defaultChecked:1,defaultValue:1,defer:0,dir:0,disabled:0,disablePictureInPicture:1,disableRemotePlayback:1,download:0,draggable:0,encType:1,enterKeyHint:1,for:"htmlFor",form:0,formMethod:1,formAction:1,formEncType:1,formNoValidate:1,formTarget:1,frameBorder:1,headers:0,height:0,hidden:0,high:0,href:0,hrefLang:1,htmlFor:1,httpEquiv:1,"http-equiv":"httpEquiv",icon:0,id:0,innerHTML:1,inputMode:1,integrity:0,is:0,itemID:1,itemProp:1,itemRef:1,itemScope:1,itemType:1,keyParams:1,keyType:1,kind:0,label:0,lang:0,list:0,loop:0,low:0,manifest:0,marginWidth:1,marginHeight:1,max:0,maxLength:1,media:0,mediaGroup:1,method:0,min:0,minLength:1,multiple:0,muted:0,name:0,noModule:1,nonce:0,noValidate:1,open:0,optimum:0,pattern:0,placeholder:0,playsInline:1,poster:0,preload:0,profile:0,radioGroup:1,readOnly:1,referrerPolicy:1,rel:0,required:0,reversed:0,role:0,rows:0,rowSpan:1,sandbox:0,scope:0,scoped:0,scrolling:0,seamless:0,selected:0,shape:0,size:0,sizes:0,span:0,spellCheck:1,src:0,srcDoc:1,srcLang:1,srcSet:1,start:0,step:0,style:0,summary:0,tabIndex:1,target:0,title:0,type:0,useMap:1,value:0,width:0,wmode:0,wrap:0,about:0,accentHeight:1,"accent-height":"accentHeight",accumulate:0,additive:0,alignmentBaseline:1,"alignment-baseline":"alignmentBaseline",allowReorder:1,alphabetic:0,amplitude:0,arabicForm:1,"arabic-form":"arabicForm",ascent:0,attributeName:1,attributeType:1,autoReverse:1,azimuth:0,baseFrequency:1,baselineShift:1,"baseline-shift":"baselineShift",baseProfile:1,bbox:0,begin:0,bias:0,by:0,calcMode:1,capHeight:1,"cap-height":"capHeight",clip:0,clipPath:1,"clip-path":"clipPath",clipPathUnits:1,clipRule:1,"clip-rule":"clipRule",color:0,colorInterpolation:1,"color-interpolation":"colorInterpolation",colorInterpolationFilters:1,"color-interpolation-filters":"colorInterpolationFilters",colorProfile:1,"color-profile":"colorProfile",colorRendering:1,"color-rendering":"colorRendering",contentScriptType:1,contentStyleType:1,cursor:0,cx:0,cy:0,d:0,datatype:0,decelerate:0,descent:0,diffuseConstant:1,direction:0,display:0,divisor:0,dominantBaseline:1,"dominant-baseline":"dominantBaseline",dur:0,dx:0,dy:0,edgeMode:1,elevation:0,enableBackground:1,"enable-background":"enableBackground",end:0,exponent:0,externalResourcesRequired:1,fill:0,fillOpacity:1,"fill-opacity":"fillOpacity",fillRule:1,"fill-rule":"fillRule",filter:0,filterRes:1,filterUnits:1,floodOpacity:1,"flood-opacity":"floodOpacity",floodColor:1,"flood-color":"floodColor",focusable:0,fontFamily:1,"font-family":"fontFamily",fontSize:1,"font-size":"fontSize",fontSizeAdjust:1,"font-size-adjust":"fontSizeAdjust",fontStretch:1,"font-stretch":"fontStretch",fontStyle:1,"font-style":"fontStyle",fontVariant:1,"font-variant":"fontVariant",fontWeight:1,"font-weight":"fontWeight",format:0,from:0,fx:0,fy:0,g1:0,g2:0,glyphName:1,"glyph-name":"glyphName",glyphOrientationHorizontal:1,"glyph-orientation-horizontal":"glyphOrientationHorizontal",glyphOrientationVertical:1,"glyph-orientation-vertical":"glyphOrientationVertical",glyphRef:1,gradientTransform:1,gradientUnits:1,hanging:0,horizAdvX:1,"horiz-adv-x":"horizAdvX",horizOriginX:1,"horiz-origin-x":"horizOriginX",ideographic:0,imageRendering:1,"image-rendering":"imageRendering",in2:0,in:0,inlist:0,intercept:0,k1:0,k2:0,k3:0,k4:0,k:0,kernelMatrix:1,kernelUnitLength:1,kerning:0,keyPoints:1,keySplines:1,keyTimes:1,lengthAdjust:1,letterSpacing:1,"letter-spacing":"letterSpacing",lightingColor:1,"lighting-color":"lightingColor",limitingConeAngle:1,local:0,markerEnd:1,"marker-end":"markerEnd",markerHeight:1,markerMid:1,"marker-mid":"markerMid",markerStart:1,"marker-start":"markerStart",markerUnits:1,markerWidth:1,mask:0,maskContentUnits:1,maskUnits:1,mathematical:0,mode:0,numOctaves:1,offset:0,opacity:0,operator:0,order:0,orient:0,orientation:0,origin:0,overflow:0,overlinePosition:1,"overline-position":"overlinePosition",overlineThickness:1,"overline-thickness":"overlineThickness",paintOrder:1,"paint-order":"paintOrder",panose1:0,"panose-1":"panose1",pathLength:1,patternContentUnits:1,patternTransform:1,patternUnits:1,pointerEvents:1,"pointer-events":"pointerEvents",points:0,pointsAtX:1,pointsAtY:1,pointsAtZ:1,prefix:0,preserveAlpha:1,preserveAspectRatio:1,primitiveUnits:1,property:0,r:0,radius:0,refX:1,refY:1,renderingIntent:1,"rendering-intent":"renderingIntent",repeatCount:1,repeatDur:1,requiredExtensions:1,requiredFeatures:1,resource:0,restart:0,result:0,results:0,rotate:0,rx:0,ry:0,scale:0,security:0,seed:0,shapeRendering:1,"shape-rendering":"shapeRendering",slope:0,spacing:0,specularConstant:1,specularExponent:1,speed:0,spreadMethod:1,startOffset:1,stdDeviation:1,stemh:0,stemv:0,stitchTiles:1,stopColor:1,"stop-color":"stopColor",stopOpacity:1,"stop-opacity":"stopOpacity",strikethroughPosition:1,"strikethrough-position":"strikethroughPosition",strikethroughThickness:1,"strikethrough-thickness":"strikethroughThickness",string:0,stroke:0,strokeDasharray:1,"stroke-dasharray":"strokeDasharray",strokeDashoffset:1,"stroke-dashoffset":"strokeDashoffset",strokeLinecap:1,"stroke-linecap":"strokeLinecap",strokeLinejoin:1,"stroke-linejoin":"strokeLinejoin",strokeMiterlimit:1,"stroke-miterlimit":"strokeMiterlimit",strokeWidth:1,"stroke-width":"strokeWidth",strokeOpacity:1,"stroke-opacity":"strokeOpacity",suppressContentEditableWarning:1,suppressHydrationWarning:1,surfaceScale:1,systemLanguage:1,tableValues:1,targetX:1,targetY:1,textAnchor:1,"text-anchor":"textAnchor",textDecoration:1,"text-decoration":"textDecoration",textLength:1,textRendering:1,"text-rendering":"textRendering",to:0,transform:0,typeof:0,u1:0,u2:0,underlinePosition:1,"underline-position":"underlinePosition",underlineThickness:1,"underline-thickness":"underlineThickness",unicode:0,unicodeBidi:1,"unicode-bidi":"unicodeBidi",unicodeRange:1,"unicode-range":"unicodeRange",unitsPerEm:1,"units-per-em":"unitsPerEm",unselectable:0,vAlphabetic:1,"v-alphabetic":"vAlphabetic",values:0,vectorEffect:1,"vector-effect":"vectorEffect",version:0,vertAdvY:1,"vert-adv-y":"vertAdvY",vertOriginX:1,"vert-origin-x":"vertOriginX",vertOriginY:1,"vert-origin-y":"vertOriginY",vHanging:1,"v-hanging":"vHanging",vIdeographic:1,"v-ideographic":"vIdeographic",viewBox:1,viewTarget:1,visibility:0,vMathematical:1,"v-mathematical":"vMathematical",vocab:0,widths:0,wordSpacing:1,"word-spacing":"wordSpacing",writingMode:1,"writing-mode":"writingMode",x1:0,x2:0,x:0,xChannelSelector:1,xHeight:1,"x-height":"xHeight",xlinkActuate:1,"xlink:actuate":"xlinkActuate",xlinkArcrole:1,"xlink:arcrole":"xlinkArcrole",xlinkHref:1,"xlink:href":"xlinkHref",xlinkRole:1,"xlink:role":"xlinkRole",xlinkShow:1,"xlink:show":"xlinkShow",xlinkTitle:1,"xlink:title":"xlinkTitle",xlinkType:1,"xlink:type":"xlinkType",xmlBase:1,"xml:base":"xmlBase",xmlLang:1,"xml:lang":"xmlLang",xmlns:0,"xml:space":"xmlSpace",xmlnsXlink:1,"xmlns:xlink":"xmlnsXlink",xmlSpace:1,y1:0,y2:0,y:0,yChannelSelector:1,z:0,zoomAndPan:1}},5229:function(e,t,n){"use strict";var r=(this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}})(n(1133)),o=n(8917);function i(e,t){var n={};return e&&"string"==typeof e?((0,r.default)(e,(function(e,r){e&&r&&(n[(0,o.camelCase)(e,t)]=r)})),n):n}i.default=i,e.exports=i},8917:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.camelCase=void 0;var n=/^--[a-zA-Z0-9-]+$/,r=/-([a-z])/g,o=/^[^-]+$/,i=/^-(webkit|moz|ms|o|khtml)-/,l=/^-(ms)-/,s=function(e,t){return t.toUpperCase()},a=function(e,t){return"".concat(t,"-")};t.camelCase=function(e,t){return void 0===t&&(t={}),function(e){return!e||o.test(e)||n.test(e)}(e)?e:(e=e.toLowerCase(),(e=t.reactCompat?e.replace(l,a):e.replace(i,a)).replace(r,s))}},1133:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=r(n(9788));t.default=function(e,t){var n=null;if(!e||"string"!=typeof e)return n;var r=(0,o.default)(e),i="function"==typeof t;return r.forEach((function(e){if("declaration"===e.type){var r=e.property,o=e.value;i?t(r,o,e):o&&((n=n||{})[r]=o)}})),n}},1609:e=>{"use strict";e.exports=window.React},6942:(e,t)=>{var n;!function(){"use strict";var r={}.hasOwnProperty;function o(){for(var e="",t=0;t{if(!n){var i=1/0;for(u=0;u=o)&&Object.keys(s.O).every((e=>s.O[e](n[a])))?n.splice(a--,1):(l=!1,o0&&e[u-1][2]>o;u--)e[u]=e[u-1];e[u]=[n,r,o]},s.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return s.d(t,{a:t}),t},n=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,s.t=function(e,r){if(1&r&&(e=this(e)),8&r)return e;if("object"==typeof e&&e){if(4&r&&e.__esModule)return e;if(16&r&&"function"==typeof e.then)return e}var o=Object.create(null);s.r(o);var i={};t=t||[null,n({}),n([]),n(n)];for(var l=2&r&&e;"object"==typeof l&&!~t.indexOf(l);l=n(l))Object.getOwnPropertyNames(l).forEach((t=>i[t]=()=>e[t]));return i.default=()=>e,s.d(o,i),o},s.d=(e,t)=>{for(var n in t)s.o(t,n)&&!s.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},s.f={},s.e=e=>Promise.all(Object.keys(s.f).reduce(((t,n)=>(s.f[n](e,t),t)),[])),s.u=e=>e+".js?v="+{272:"7b6373c512f3bb5eb044",481:"a968101984c679f26a2a",535:"c63b5b1be20bab84ea05",980:"1fbfc3d3cbdb36085f75"}[e],s.miniCssF=e=>e+".css",s.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),s.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r={},o="gatherpress:",s.l=(e,t,n,i)=>{if(r[e])r[e].push(t);else{var l,a;if(void 0!==n)for(var c=document.getElementsByTagName("script"),u=0;u{l.onerror=l.onload=null,clearTimeout(f);var o=r[e];if(delete r[e],l.parentNode&&l.parentNode.removeChild(l),o&&o.forEach((e=>e(n))),t)return t(n)},f=setTimeout(p.bind(null,void 0,{type:"timeout",target:l}),12e4);l.onerror=p.bind(null,l.onerror),l.onload=p.bind(null,l.onload),a&&document.head.appendChild(l)}},s.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{var e;s.g.importScripts&&(e=s.g.location+"");var t=s.g.document;if(!e&&t&&(t.currentScript&&"SCRIPT"===t.currentScript.tagName.toUpperCase()&&(e=t.currentScript.src),!e)){var n=t.getElementsByTagName("script");if(n.length)for(var r=n.length-1;r>-1&&(!e||!/^http(s?):/.test(e));)e=n[r--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),s.p=e+"../../"})(),(()=>{if("undefined"!=typeof document){var e={908:0};s.f.miniCss=(t,n)=>{e[t]?n.push(e[t]):0!==e[t]&&{535:1}[t]&&n.push(e[t]=(e=>new Promise(((t,n)=>{var r=s.miniCssF(e),o=s.p+r;if(((e,t)=>{for(var n=document.getElementsByTagName("link"),r=0;r{var i=document.createElement("link");i.rel="stylesheet",i.type="text/css",s.nc&&(i.nonce=s.nc),i.onerror=i.onload=n=>{if(i.onerror=i.onload=null,"load"===n.type)r();else{var l=n&&n.type,s=n&&n.target&&n.target.href||t,a=new Error("Loading CSS chunk "+e+" failed.\n("+l+": "+s+")");a.name="ChunkLoadError",a.code="CSS_CHUNK_LOAD_FAILED",a.type=l,a.request=s,i.parentNode&&i.parentNode.removeChild(i),o(a)}},i.href=t,document.head.appendChild(i)})(e,o,0,t,n)})))(t).then((()=>{e[t]=0}),(n=>{throw delete e[t],n})))}}})(),(()=>{var e={908:0,812:0};s.f.j=(t,n)=>{var r=s.o(e,t)?e[t]:void 0;if(0!==r)if(r)n.push(r[2]);else if(812!=t){var o=new Promise(((n,o)=>r=e[t]=[n,o]));n.push(r[2]=o);var i=s.p+s.u(t),l=new Error;s.l(i,(n=>{if(s.o(e,t)&&(0!==(r=e[t])&&(e[t]=void 0),r)){var o=n&&("load"===n.type?"missing":n.type),i=n&&n.target&&n.target.src;l.message="Loading chunk "+t+" failed.\n("+o+": "+i+")",l.name="ChunkLoadError",l.type=o,l.request=i,r[1](l)}}),"chunk-"+t,t)}else e[t]=0},s.O.j=t=>0===e[t];var t=(t,n)=>{var r,o,i=n[0],l=n[1],a=n[2],c=0;if(i.some((t=>0!==e[t]))){for(r in l)s.o(l,r)&&(s.m[r]=l[r]);if(a)var u=a(s)}for(t&&t(n);cs(7701)));a=s.O(a)})(); \ No newline at end of file diff --git a/build/blocks/venue/venue.asset.php b/build/blocks/venue/venue.asset.php index d414962aa..5a96eccef 100644 --- a/build/blocks/venue/venue.asset.php +++ b/build/blocks/venue/venue.asset.php @@ -1 +1 @@ - array('react', 'react-jsx-runtime', 'wp-components', 'wp-data', 'wp-dom-ready', 'wp-element', 'wp-i18n'), 'version' => 'ac43be418ed67d7ea96a'); + array('react', 'react-jsx-runtime', 'wp-components', 'wp-data', 'wp-dom-ready', 'wp-element', 'wp-i18n'), 'version' => '89d91ebaf0fd30f8cda6'); diff --git a/build/blocks/venue/venue.js b/build/blocks/venue/venue.js index 442308f79..0ea063614 100644 --- a/build/blocks/venue/venue.js +++ b/build/blocks/venue/venue.js @@ -1,2 +1,2 @@ -(()=>{var e,t,n,r,o={5413:(e,t)=>{"use strict";var n;Object.defineProperty(t,"__esModule",{value:!0}),t.Doctype=t.CDATA=t.Tag=t.Style=t.Script=t.Comment=t.Directive=t.Text=t.Root=t.isTag=t.ElementType=void 0,function(e){e.Root="root",e.Text="text",e.Directive="directive",e.Comment="comment",e.Script="script",e.Style="style",e.Tag="tag",e.CDATA="cdata",e.Doctype="doctype"}(n=t.ElementType||(t.ElementType={})),t.isTag=function(e){return e.type===n.Tag||e.type===n.Script||e.type===n.Style},t.Root=n.Root,t.Text=n.Text,t.Directive=n.Directive,t.Comment=n.Comment,t.Script=n.Script,t.Style=n.Style,t.Tag=n.Tag,t.CDATA=n.CDATA,t.Doctype=n.Doctype},1141:function(e,t,n){"use strict";var r=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n);var o=Object.getOwnPropertyDescriptor(t,n);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,o)}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),o=this&&this.__exportStar||function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||r(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),t.DomHandler=void 0;var i=n(5413),l=n(6957);o(n(6957),t);var a={withStartIndices:!1,withEndIndices:!1,xmlMode:!1},s=function(){function e(e,t,n){this.dom=[],this.root=new l.Document(this.dom),this.done=!1,this.tagStack=[this.root],this.lastNode=null,this.parser=null,"function"==typeof t&&(n=t,t=a),"object"==typeof e&&(t=e,e=void 0),this.callback=null!=e?e:null,this.options=null!=t?t:a,this.elementCB=null!=n?n:null}return e.prototype.onparserinit=function(e){this.parser=e},e.prototype.onreset=function(){this.dom=[],this.root=new l.Document(this.dom),this.done=!1,this.tagStack=[this.root],this.lastNode=null,this.parser=null},e.prototype.onend=function(){this.done||(this.done=!0,this.parser=null,this.handleCallback(null))},e.prototype.onerror=function(e){this.handleCallback(e)},e.prototype.onclosetag=function(){this.lastNode=null;var e=this.tagStack.pop();this.options.withEndIndices&&(e.endIndex=this.parser.endIndex),this.elementCB&&this.elementCB(e)},e.prototype.onopentag=function(e,t){var n=this.options.xmlMode?i.ElementType.Tag:void 0,r=new l.Element(e,t,void 0,n);this.addNode(r),this.tagStack.push(r)},e.prototype.ontext=function(e){var t=this.lastNode;if(t&&t.type===i.ElementType.Text)t.data+=e,this.options.withEndIndices&&(t.endIndex=this.parser.endIndex);else{var n=new l.Text(e);this.addNode(n),this.lastNode=n}},e.prototype.oncomment=function(e){if(this.lastNode&&this.lastNode.type===i.ElementType.Comment)this.lastNode.data+=e;else{var t=new l.Comment(e);this.addNode(t),this.lastNode=t}},e.prototype.oncommentend=function(){this.lastNode=null},e.prototype.oncdatastart=function(){var e=new l.Text(""),t=new l.CDATA([e]);this.addNode(t),e.parent=t,this.lastNode=e},e.prototype.oncdataend=function(){this.lastNode=null},e.prototype.onprocessinginstruction=function(e,t){var n=new l.ProcessingInstruction(e,t);this.addNode(n)},e.prototype.handleCallback=function(e){if("function"==typeof this.callback)this.callback(e,this.dom);else if(e)throw e},e.prototype.addNode=function(e){var t=this.tagStack[this.tagStack.length-1],n=t.children[t.children.length-1];this.options.withStartIndices&&(e.startIndex=this.parser.startIndex),this.options.withEndIndices&&(e.endIndex=this.parser.endIndex),t.children.push(e),n&&(e.prev=n,n.next=e),e.parent=t,this.lastNode=null},e}();t.DomHandler=s,t.default=s},6957:function(e,t,n){"use strict";var r,o=this&&this.__extends||(r=function(e,t){return r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},r(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function __(){this.constructor=e}r(e,t),e.prototype=null===t?Object.create(t):(__.prototype=t.prototype,new __)}),i=this&&this.__assign||function(){return i=Object.assign||function(e){for(var t,n=1,r=arguments.length;n0?this.children[this.children.length-1]:null},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"childNodes",{get:function(){return this.children},set:function(e){this.children=e},enumerable:!1,configurable:!0}),t}(a);t.NodeWithChildren=f;var p=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.type=l.ElementType.CDATA,t}return o(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 4},enumerable:!1,configurable:!0}),t}(f);t.CDATA=p;var h=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.type=l.ElementType.Root,t}return o(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 9},enumerable:!1,configurable:!0}),t}(f);t.Document=h;var m=function(e){function t(t,n,r,o){void 0===r&&(r=[]),void 0===o&&(o="script"===t?l.ElementType.Script:"style"===t?l.ElementType.Style:l.ElementType.Tag);var i=e.call(this,r)||this;return i.name=t,i.attribs=n,i.type=o,i}return o(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 1},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"tagName",{get:function(){return this.name},set:function(e){this.name=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"attributes",{get:function(){var e=this;return Object.keys(this.attribs).map((function(t){var n,r;return{name:t,value:e.attribs[t],namespace:null===(n=e["x-attribsNamespace"])||void 0===n?void 0:n[t],prefix:null===(r=e["x-attribsPrefix"])||void 0===r?void 0:r[t]}}))},enumerable:!1,configurable:!0}),t}(f);function y(e){return(0,l.isTag)(e)}function g(e){return e.type===l.ElementType.CDATA}function v(e){return e.type===l.ElementType.Text}function b(e){return e.type===l.ElementType.Comment}function w(e){return e.type===l.ElementType.Directive}function x(e){return e.type===l.ElementType.Root}function E(e,t){var n;if(void 0===t&&(t=!1),v(e))n=new c(e.data);else if(b(e))n=new u(e.data);else if(y(e)){var r=t?_(e.children):[],o=new m(e.name,i({},e.attribs),r);r.forEach((function(e){return e.parent=o})),null!=e.namespace&&(o.namespace=e.namespace),e["x-attribsNamespace"]&&(o["x-attribsNamespace"]=i({},e["x-attribsNamespace"])),e["x-attribsPrefix"]&&(o["x-attribsPrefix"]=i({},e["x-attribsPrefix"])),n=o}else if(g(e)){r=t?_(e.children):[];var l=new p(r);r.forEach((function(e){return e.parent=l})),n=l}else if(x(e)){r=t?_(e.children):[];var a=new h(r);r.forEach((function(e){return e.parent=a})),e["x-mode"]&&(a["x-mode"]=e["x-mode"]),n=a}else{if(!w(e))throw new Error("Not implemented yet: ".concat(e.type));var s=new d(e.name,e.data);null!=e["x-name"]&&(s["x-name"]=e["x-name"],s["x-publicId"]=e["x-publicId"],s["x-systemId"]=e["x-systemId"]),n=s}return n.startIndex=e.startIndex,n.endIndex=e.endIndex,null!=e.sourceCodeLocation&&(n.sourceCodeLocation=e.sourceCodeLocation),n}function _(e){for(var t=e.map((function(e){return E(e,!0)})),n=1;n{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CASE_SENSITIVE_TAG_NAMES_MAP=t.CASE_SENSITIVE_TAG_NAMES=void 0,t.CASE_SENSITIVE_TAG_NAMES=["animateMotion","animateTransform","clipPath","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","foreignObject","linearGradient","radialGradient","textPath"],t.CASE_SENSITIVE_TAG_NAMES_MAP=t.CASE_SENSITIVE_TAG_NAMES.reduce((function(e,t){return e[t.toLowerCase()]=t,e}),{})},5496:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){var t,u,d=e.match(i),f=d&&d[1]?d[1].toLowerCase():"";switch(f){case n:var h=c(e);return l.test(e)||null===(t=null==(y=h.querySelector(r))?void 0:y.parentNode)||void 0===t||t.removeChild(y),a.test(e)||null===(u=null==(y=h.querySelector(o))?void 0:y.parentNode)||void 0===u||u.removeChild(y),h.querySelectorAll(n);case r:case o:var m=s(e).querySelectorAll(f);return a.test(e)&&l.test(e)?m[0].parentNode.childNodes:m;default:return p?p(e):(y=s(e,o).querySelector(o)).childNodes;var y}};var n="html",r="head",o="body",i=/<([a-zA-Z]+[0-9]?)/,l=//i,a=//i,s=function(e,t){throw new Error("This browser does not support `document.implementation.createHTMLDocument`")},c=function(e,t){throw new Error("This browser does not support `DOMParser.prototype.parseFromString`")},u="object"==typeof window&&window.DOMParser;if("function"==typeof u){var d=new u;s=c=function(e,t){return t&&(e="<".concat(t,">").concat(e,"")),d.parseFromString(e,"text/html")}}if("object"==typeof document&&document.implementation){var f=document.implementation.createHTMLDocument();s=function(e,t){if(t){var n=f.documentElement.querySelector(t);return n&&(n.innerHTML=e),f}return f.documentElement.innerHTML=e,f}}var p,h="object"==typeof document&&document.createElement("template");h&&h.content&&(p=function(e){return h.innerHTML=e,h.content.childNodes})},2471:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){if("string"!=typeof e)throw new TypeError("First argument must be a string");if(!e)return[];var t=e.match(l),n=t?t[1]:void 0;return(0,i.formatDOM)((0,o.default)(e),null,n)};var o=r(n(5496)),i=n(7731),l=/<(![a-zA-Z\s]+)>/},7731:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.formatAttributes=i,t.formatDOM=function e(t,n,o){void 0===n&&(n=null);for(var a,s=[],c=0,u=t.length;c{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){void 0===e&&(e={});var n={},c=Boolean(e.type&&a[e.type]);for(var u in e){var d=e[u];if((0,r.isCustomAttribute)(u))n[u]=d;else{var f=u.toLowerCase(),p=s(f);if(p){var h=(0,r.getPropertyInfo)(p);switch(i.includes(p)&&l.includes(t)&&!c&&(p=s("default"+f)),n[p]=d,h&&h.type){case r.BOOLEAN:n[p]=!0;break;case r.OVERLOADED_BOOLEAN:""===d&&(n[p]=!0)}}else o.PRESERVE_CUSTOM_ATTRIBUTES&&(n[u]=d)}}return(0,o.setStyleProp)(e.style,n),n};var r=n(4210),o=n(4958),i=["checked","value"],l=["input","select","textarea"],a={reset:!0,submit:!0};function s(e){return r.possibleStandardNames[e]}},308:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t,n){void 0===n&&(n={});for(var r=[],o="function"==typeof n.replace,c=n.transform||l.returnFirstArg,u=n.library||a,d=u.cloneElement,f=u.createElement,p=u.isValidElement,h=t.length,m=0;m1&&(g=d(g,{key:g.key||m})),r.push(c(g,y,m));continue}}if("text"!==y.type){var v=y,b={};s(v)?((0,l.setStyleProp)(v.attribs.style,v.attribs),b=v.attribs):v.attribs&&(b=(0,i.default)(v.attribs,v.name));var w=void 0;switch(y.type){case"script":case"style":y.children[0]&&(b.dangerouslySetInnerHTML={__html:y.children[0].data});break;case"tag":"textarea"===y.name&&y.children[0]?b.defaultValue=y.children[0].data:y.children&&y.children.length&&(w=e(y.children,n));break;default:continue}h>1&&(b.key=m),r.push(c(f(y.name,b,w),y,m))}else{var x=!y.data.trim().length;if(x&&y.parent&&!(0,l.canTextBeChildOfNode)(y.parent))continue;if(n.trim&&x)continue;r.push(c(y.data,y,m))}}return 1===r.length?r[0]:r};var o=n(1609),i=r(n(840)),l=n(4958),a={cloneElement:o.cloneElement,createElement:o.createElement,isValidElement:o.isValidElement};function s(e){return l.PRESERVE_CUSTOM_ATTRIBUTES&&"tag"===e.type&&(0,l.isCustomComponent)(e.name,e.attribs)}},442:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.htmlToDOM=t.domToReact=t.attributesToProps=t.Text=t.ProcessingInstruction=t.Element=t.Comment=void 0,t.default=function(e,t){if("string"!=typeof e)throw new TypeError("First argument must be a string");return e?(0,l.default)((0,o.default)(e,(null==t?void 0:t.htmlparser2)||s),t):[]};var o=r(n(2471));t.htmlToDOM=o.default;var i=r(n(840));t.attributesToProps=i.default;var l=r(n(308));t.domToReact=l.default;var a=n(1141);Object.defineProperty(t,"Comment",{enumerable:!0,get:function(){return a.Comment}}),Object.defineProperty(t,"Element",{enumerable:!0,get:function(){return a.Element}}),Object.defineProperty(t,"ProcessingInstruction",{enumerable:!0,get:function(){return a.ProcessingInstruction}}),Object.defineProperty(t,"Text",{enumerable:!0,get:function(){return a.Text}});var s={lowerCaseAttributeNames:!1}},4958:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.returnFirstArg=t.canTextBeChildOfNode=t.ELEMENTS_WITH_NO_TEXT_CHILDREN=t.PRESERVE_CUSTOM_ATTRIBUTES=void 0,t.isCustomComponent=function(e,t){return e.includes("-")?!l.has(e):Boolean(t&&"string"==typeof t.is)},t.setStyleProp=function(e,t){if("string"==typeof e)if(e.trim())try{t.style=(0,i.default)(e,a)}catch(e){t.style={}}else t.style={}};var o=n(1609),i=r(n(5229)),l=new Set(["annotation-xml","color-profile","font-face","font-face-src","font-face-uri","font-face-format","font-face-name","missing-glyph"]),a={reactCompat:!0};t.PRESERVE_CUSTOM_ATTRIBUTES=Number(o.version.split(".")[0])>=16,t.ELEMENTS_WITH_NO_TEXT_CHILDREN=new Set(["tr","tbody","thead","tfoot","colgroup","table","head","html","frameset"]),t.canTextBeChildOfNode=function(e){return!t.ELEMENTS_WITH_NO_TEXT_CHILDREN.has(e.name)},t.returnFirstArg=function(e){return e}},9788:e=>{var t=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,n=/\n/g,r=/^\s*/,o=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,i=/^:\s*/,l=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,a=/^[;\s]*/,s=/^\s+|\s+$/g,c="";function u(e){return e?e.replace(s,c):c}e.exports=function(e,s){if("string"!=typeof e)throw new TypeError("First argument must be a string");if(!e)return[];s=s||{};var d=1,f=1;function p(e){var t=e.match(n);t&&(d+=t.length);var r=e.lastIndexOf("\n");f=~r?e.length-r:f+e.length}function h(){var e={line:d,column:f};return function(t){return t.position=new m(e),b(),t}}function m(e){this.start=e,this.end={line:d,column:f},this.source=s.source}m.prototype.content=e;var y=[];function g(t){var n=new Error(s.source+":"+d+":"+f+": "+t);if(n.reason=t,n.filename=s.source,n.line=d,n.column=f,n.source=e,!s.silent)throw n;y.push(n)}function v(t){var n=t.exec(e);if(n){var r=n[0];return p(r),e=e.slice(r.length),n}}function b(){v(r)}function w(e){var t;for(e=e||[];t=x();)!1!==t&&e.push(t);return e}function x(){var t=h();if("/"==e.charAt(0)&&"*"==e.charAt(1)){for(var n=2;c!=e.charAt(n)&&("*"!=e.charAt(n)||"/"!=e.charAt(n+1));)++n;if(n+=2,c===e.charAt(n-1))return g("End of comment missing");var r=e.slice(2,n-2);return f+=2,p(r),e=e.slice(n),f+=2,t({type:"comment",comment:r})}}function E(){var e=h(),n=v(o);if(n){if(x(),!v(i))return g("property missing ':'");var r=v(l),s=e({type:"declaration",property:u(n[0].replace(t,c)),value:r?u(r[0].replace(t,c)):c});return v(a),s}}return b(),function(){var e,t=[];for(w(t);e=E();)!1!==e&&(t.push(e),w(t));return t}()}},4210:(e,t,n)=>{"use strict";function r(e,t,n,r,o,i,l){this.acceptsBooleans=2===t||3===t||4===t,this.attributeName=r,this.attributeNamespace=o,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=i,this.removeEmptyString=l}const o={};["children","dangerouslySetInnerHTML","defaultValue","defaultChecked","innerHTML","suppressContentEditableWarning","suppressHydrationWarning","style"].forEach((e=>{o[e]=new r(e,0,!1,e,null,!1,!1)})),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach((([e,t])=>{o[e]=new r(e,1,!1,t,null,!1,!1)})),["contentEditable","draggable","spellCheck","value"].forEach((e=>{o[e]=new r(e,2,!1,e.toLowerCase(),null,!1,!1)})),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach((e=>{o[e]=new r(e,2,!1,e,null,!1,!1)})),["allowFullScreen","async","autoFocus","autoPlay","controls","default","defer","disabled","disablePictureInPicture","disableRemotePlayback","formNoValidate","hidden","loop","noModule","noValidate","open","playsInline","readOnly","required","reversed","scoped","seamless","itemScope"].forEach((e=>{o[e]=new r(e,3,!1,e.toLowerCase(),null,!1,!1)})),["checked","multiple","muted","selected"].forEach((e=>{o[e]=new r(e,3,!0,e,null,!1,!1)})),["capture","download"].forEach((e=>{o[e]=new r(e,4,!1,e,null,!1,!1)})),["cols","rows","size","span"].forEach((e=>{o[e]=new r(e,6,!1,e,null,!1,!1)})),["rowSpan","start"].forEach((e=>{o[e]=new r(e,5,!1,e.toLowerCase(),null,!1,!1)}));const i=/[\-\:]([a-z])/g,l=e=>e[1].toUpperCase();["accent-height","alignment-baseline","arabic-form","baseline-shift","cap-height","clip-path","clip-rule","color-interpolation","color-interpolation-filters","color-profile","color-rendering","dominant-baseline","enable-background","fill-opacity","fill-rule","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","glyph-name","glyph-orientation-horizontal","glyph-orientation-vertical","horiz-adv-x","horiz-origin-x","image-rendering","letter-spacing","lighting-color","marker-end","marker-mid","marker-start","overline-position","overline-thickness","paint-order","panose-1","pointer-events","rendering-intent","shape-rendering","stop-color","stop-opacity","strikethrough-position","strikethrough-thickness","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","text-anchor","text-decoration","text-rendering","underline-position","underline-thickness","unicode-bidi","unicode-range","units-per-em","v-alphabetic","v-hanging","v-ideographic","v-mathematical","vector-effect","vert-adv-y","vert-origin-x","vert-origin-y","word-spacing","writing-mode","xmlns:xlink","x-height"].forEach((e=>{const t=e.replace(i,l);o[t]=new r(t,1,!1,e,null,!1,!1)})),["xlink:actuate","xlink:arcrole","xlink:role","xlink:show","xlink:title","xlink:type"].forEach((e=>{const t=e.replace(i,l);o[t]=new r(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)})),["xml:base","xml:lang","xml:space"].forEach((e=>{const t=e.replace(i,l);o[t]=new r(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)})),["tabIndex","crossOrigin"].forEach((e=>{o[e]=new r(e,1,!1,e.toLowerCase(),null,!1,!1)})),o.xlinkHref=new r("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach((e=>{o[e]=new r(e,1,!1,e.toLowerCase(),null,!0,!0)}));const{CAMELCASE:a,SAME:s,possibleStandardNames:c}=n(6811),u=RegExp.prototype.test.bind(new RegExp("^(data|aria)-[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$")),d=Object.keys(c).reduce(((e,t)=>{const n=c[t];return n===s?e[t]=t:n===a?e[t.toLowerCase()]=t:e[t]=n,e}),{});t.BOOLEAN=3,t.BOOLEANISH_STRING=2,t.NUMERIC=5,t.OVERLOADED_BOOLEAN=4,t.POSITIVE_NUMERIC=6,t.RESERVED=0,t.STRING=1,t.getPropertyInfo=function(e){return o.hasOwnProperty(e)?o[e]:null},t.isCustomAttribute=u,t.possibleStandardNames=d},6811:(e,t)=>{t.SAME=0,t.CAMELCASE=1,t.possibleStandardNames={accept:0,acceptCharset:1,"accept-charset":"acceptCharset",accessKey:1,action:0,allowFullScreen:1,alt:0,as:0,async:0,autoCapitalize:1,autoComplete:1,autoCorrect:1,autoFocus:1,autoPlay:1,autoSave:1,capture:0,cellPadding:1,cellSpacing:1,challenge:0,charSet:1,checked:0,children:0,cite:0,class:"className",classID:1,className:1,cols:0,colSpan:1,content:0,contentEditable:1,contextMenu:1,controls:0,controlsList:1,coords:0,crossOrigin:1,dangerouslySetInnerHTML:1,data:0,dateTime:1,default:0,defaultChecked:1,defaultValue:1,defer:0,dir:0,disabled:0,disablePictureInPicture:1,disableRemotePlayback:1,download:0,draggable:0,encType:1,enterKeyHint:1,for:"htmlFor",form:0,formMethod:1,formAction:1,formEncType:1,formNoValidate:1,formTarget:1,frameBorder:1,headers:0,height:0,hidden:0,high:0,href:0,hrefLang:1,htmlFor:1,httpEquiv:1,"http-equiv":"httpEquiv",icon:0,id:0,innerHTML:1,inputMode:1,integrity:0,is:0,itemID:1,itemProp:1,itemRef:1,itemScope:1,itemType:1,keyParams:1,keyType:1,kind:0,label:0,lang:0,list:0,loop:0,low:0,manifest:0,marginWidth:1,marginHeight:1,max:0,maxLength:1,media:0,mediaGroup:1,method:0,min:0,minLength:1,multiple:0,muted:0,name:0,noModule:1,nonce:0,noValidate:1,open:0,optimum:0,pattern:0,placeholder:0,playsInline:1,poster:0,preload:0,profile:0,radioGroup:1,readOnly:1,referrerPolicy:1,rel:0,required:0,reversed:0,role:0,rows:0,rowSpan:1,sandbox:0,scope:0,scoped:0,scrolling:0,seamless:0,selected:0,shape:0,size:0,sizes:0,span:0,spellCheck:1,src:0,srcDoc:1,srcLang:1,srcSet:1,start:0,step:0,style:0,summary:0,tabIndex:1,target:0,title:0,type:0,useMap:1,value:0,width:0,wmode:0,wrap:0,about:0,accentHeight:1,"accent-height":"accentHeight",accumulate:0,additive:0,alignmentBaseline:1,"alignment-baseline":"alignmentBaseline",allowReorder:1,alphabetic:0,amplitude:0,arabicForm:1,"arabic-form":"arabicForm",ascent:0,attributeName:1,attributeType:1,autoReverse:1,azimuth:0,baseFrequency:1,baselineShift:1,"baseline-shift":"baselineShift",baseProfile:1,bbox:0,begin:0,bias:0,by:0,calcMode:1,capHeight:1,"cap-height":"capHeight",clip:0,clipPath:1,"clip-path":"clipPath",clipPathUnits:1,clipRule:1,"clip-rule":"clipRule",color:0,colorInterpolation:1,"color-interpolation":"colorInterpolation",colorInterpolationFilters:1,"color-interpolation-filters":"colorInterpolationFilters",colorProfile:1,"color-profile":"colorProfile",colorRendering:1,"color-rendering":"colorRendering",contentScriptType:1,contentStyleType:1,cursor:0,cx:0,cy:0,d:0,datatype:0,decelerate:0,descent:0,diffuseConstant:1,direction:0,display:0,divisor:0,dominantBaseline:1,"dominant-baseline":"dominantBaseline",dur:0,dx:0,dy:0,edgeMode:1,elevation:0,enableBackground:1,"enable-background":"enableBackground",end:0,exponent:0,externalResourcesRequired:1,fill:0,fillOpacity:1,"fill-opacity":"fillOpacity",fillRule:1,"fill-rule":"fillRule",filter:0,filterRes:1,filterUnits:1,floodOpacity:1,"flood-opacity":"floodOpacity",floodColor:1,"flood-color":"floodColor",focusable:0,fontFamily:1,"font-family":"fontFamily",fontSize:1,"font-size":"fontSize",fontSizeAdjust:1,"font-size-adjust":"fontSizeAdjust",fontStretch:1,"font-stretch":"fontStretch",fontStyle:1,"font-style":"fontStyle",fontVariant:1,"font-variant":"fontVariant",fontWeight:1,"font-weight":"fontWeight",format:0,from:0,fx:0,fy:0,g1:0,g2:0,glyphName:1,"glyph-name":"glyphName",glyphOrientationHorizontal:1,"glyph-orientation-horizontal":"glyphOrientationHorizontal",glyphOrientationVertical:1,"glyph-orientation-vertical":"glyphOrientationVertical",glyphRef:1,gradientTransform:1,gradientUnits:1,hanging:0,horizAdvX:1,"horiz-adv-x":"horizAdvX",horizOriginX:1,"horiz-origin-x":"horizOriginX",ideographic:0,imageRendering:1,"image-rendering":"imageRendering",in2:0,in:0,inlist:0,intercept:0,k1:0,k2:0,k3:0,k4:0,k:0,kernelMatrix:1,kernelUnitLength:1,kerning:0,keyPoints:1,keySplines:1,keyTimes:1,lengthAdjust:1,letterSpacing:1,"letter-spacing":"letterSpacing",lightingColor:1,"lighting-color":"lightingColor",limitingConeAngle:1,local:0,markerEnd:1,"marker-end":"markerEnd",markerHeight:1,markerMid:1,"marker-mid":"markerMid",markerStart:1,"marker-start":"markerStart",markerUnits:1,markerWidth:1,mask:0,maskContentUnits:1,maskUnits:1,mathematical:0,mode:0,numOctaves:1,offset:0,opacity:0,operator:0,order:0,orient:0,orientation:0,origin:0,overflow:0,overlinePosition:1,"overline-position":"overlinePosition",overlineThickness:1,"overline-thickness":"overlineThickness",paintOrder:1,"paint-order":"paintOrder",panose1:0,"panose-1":"panose1",pathLength:1,patternContentUnits:1,patternTransform:1,patternUnits:1,pointerEvents:1,"pointer-events":"pointerEvents",points:0,pointsAtX:1,pointsAtY:1,pointsAtZ:1,prefix:0,preserveAlpha:1,preserveAspectRatio:1,primitiveUnits:1,property:0,r:0,radius:0,refX:1,refY:1,renderingIntent:1,"rendering-intent":"renderingIntent",repeatCount:1,repeatDur:1,requiredExtensions:1,requiredFeatures:1,resource:0,restart:0,result:0,results:0,rotate:0,rx:0,ry:0,scale:0,security:0,seed:0,shapeRendering:1,"shape-rendering":"shapeRendering",slope:0,spacing:0,specularConstant:1,specularExponent:1,speed:0,spreadMethod:1,startOffset:1,stdDeviation:1,stemh:0,stemv:0,stitchTiles:1,stopColor:1,"stop-color":"stopColor",stopOpacity:1,"stop-opacity":"stopOpacity",strikethroughPosition:1,"strikethrough-position":"strikethroughPosition",strikethroughThickness:1,"strikethrough-thickness":"strikethroughThickness",string:0,stroke:0,strokeDasharray:1,"stroke-dasharray":"strokeDasharray",strokeDashoffset:1,"stroke-dashoffset":"strokeDashoffset",strokeLinecap:1,"stroke-linecap":"strokeLinecap",strokeLinejoin:1,"stroke-linejoin":"strokeLinejoin",strokeMiterlimit:1,"stroke-miterlimit":"strokeMiterlimit",strokeWidth:1,"stroke-width":"strokeWidth",strokeOpacity:1,"stroke-opacity":"strokeOpacity",suppressContentEditableWarning:1,suppressHydrationWarning:1,surfaceScale:1,systemLanguage:1,tableValues:1,targetX:1,targetY:1,textAnchor:1,"text-anchor":"textAnchor",textDecoration:1,"text-decoration":"textDecoration",textLength:1,textRendering:1,"text-rendering":"textRendering",to:0,transform:0,typeof:0,u1:0,u2:0,underlinePosition:1,"underline-position":"underlinePosition",underlineThickness:1,"underline-thickness":"underlineThickness",unicode:0,unicodeBidi:1,"unicode-bidi":"unicodeBidi",unicodeRange:1,"unicode-range":"unicodeRange",unitsPerEm:1,"units-per-em":"unitsPerEm",unselectable:0,vAlphabetic:1,"v-alphabetic":"vAlphabetic",values:0,vectorEffect:1,"vector-effect":"vectorEffect",version:0,vertAdvY:1,"vert-adv-y":"vertAdvY",vertOriginX:1,"vert-origin-x":"vertOriginX",vertOriginY:1,"vert-origin-y":"vertOriginY",vHanging:1,"v-hanging":"vHanging",vIdeographic:1,"v-ideographic":"vIdeographic",viewBox:1,viewTarget:1,visibility:0,vMathematical:1,"v-mathematical":"vMathematical",vocab:0,widths:0,wordSpacing:1,"word-spacing":"wordSpacing",writingMode:1,"writing-mode":"writingMode",x1:0,x2:0,x:0,xChannelSelector:1,xHeight:1,"x-height":"xHeight",xlinkActuate:1,"xlink:actuate":"xlinkActuate",xlinkArcrole:1,"xlink:arcrole":"xlinkArcrole",xlinkHref:1,"xlink:href":"xlinkHref",xlinkRole:1,"xlink:role":"xlinkRole",xlinkShow:1,"xlink:show":"xlinkShow",xlinkTitle:1,"xlink:title":"xlinkTitle",xlinkType:1,"xlink:type":"xlinkType",xmlBase:1,"xml:base":"xmlBase",xmlLang:1,"xml:lang":"xmlLang",xmlns:0,"xml:space":"xmlSpace",xmlnsXlink:1,"xmlns:xlink":"xmlnsXlink",xmlSpace:1,y1:0,y2:0,y:0,yChannelSelector:1,z:0,zoomAndPan:1}},5229:function(e,t,n){"use strict";var r=(this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}})(n(1133)),o=n(8917);function i(e,t){var n={};return e&&"string"==typeof e?((0,r.default)(e,(function(e,r){e&&r&&(n[(0,o.camelCase)(e,t)]=r)})),n):n}i.default=i,e.exports=i},8917:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.camelCase=void 0;var n=/^--[a-zA-Z0-9-]+$/,r=/-([a-z])/g,o=/^[^-]+$/,i=/^-(webkit|moz|ms|o|khtml)-/,l=/^-(ms)-/,a=function(e,t){return t.toUpperCase()},s=function(e,t){return"".concat(t,"-")};t.camelCase=function(e,t){return void 0===t&&(t={}),function(e){return!e||o.test(e)||n.test(e)}(e)?e:(e=e.toLowerCase(),(e=t.reactCompat?e.replace(l,s):e.replace(i,s)).replace(r,a))}},1133:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=r(n(9788));t.default=function(e,t){var n=null;if(!e||"string"!=typeof e)return n;var r=(0,o.default)(e),i="function"==typeof t;return r.forEach((function(e){if("declaration"===e.type){var r=e.property,o=e.value;i?t(r,o,e):o&&((n=n||{})[r]=o)}})),n}},1609:e=>{"use strict";e.exports=window.React},6942:(e,t)=>{var n;!function(){"use strict";var r={}.hasOwnProperty;function o(){for(var e="",t=0;t{var t=e&&e.__esModule?()=>e.default:()=>e;return l.d(t,{a:t}),t},t=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,l.t=function(n,r){if(1&r&&(n=this(n)),8&r)return n;if("object"==typeof n&&n){if(4&r&&n.__esModule)return n;if(16&r&&"function"==typeof n.then)return n}var o=Object.create(null);l.r(o);var i={};e=e||[null,t({}),t([]),t(t)];for(var a=2&r&&n;"object"==typeof a&&!~e.indexOf(a);a=t(a))Object.getOwnPropertyNames(a).forEach((e=>i[e]=()=>n[e]));return i.default=()=>n,l.d(o,i),o},l.d=(e,t)=>{for(var n in t)l.o(t,n)&&!l.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},l.f={},l.e=e=>Promise.all(Object.keys(l.f).reduce(((t,n)=>(l.f[n](e,t),t)),[])),l.u=e=>e+".js",l.miniCssF=e=>e+".css",l.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),l.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n={},r="gatherpress:",l.l=(e,t,o,i)=>{if(n[e])n[e].push(t);else{var a,s;if(void 0!==o)for(var c=document.getElementsByTagName("script"),u=0;u{a.onerror=a.onload=null,clearTimeout(p);var o=n[e];if(delete n[e],a.parentNode&&a.parentNode.removeChild(a),o&&o.forEach((e=>e(r))),t)return t(r)},p=setTimeout(f.bind(null,void 0,{type:"timeout",target:a}),12e4);a.onerror=f.bind(null,a.onerror),a.onload=f.bind(null,a.onload),s&&document.head.appendChild(a)}},l.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{var e;l.g.importScripts&&(e=l.g.location+"");var t=l.g.document;if(!e&&t&&(t.currentScript&&"SCRIPT"===t.currentScript.tagName.toUpperCase()&&(e=t.currentScript.src),!e)){var n=t.getElementsByTagName("script");if(n.length)for(var r=n.length-1;r>-1&&(!e||!/^http(s?):/.test(e));)e=n[r--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),l.p=e+"../../"})(),(()=>{if("undefined"!=typeof document){var e={233:0};l.f.miniCss=(t,n)=>{e[t]?n.push(e[t]):0!==e[t]&&{535:1}[t]&&n.push(e[t]=(e=>new Promise(((t,n)=>{var r=l.miniCssF(e),o=l.p+r;if(((e,t)=>{for(var n=document.getElementsByTagName("link"),r=0;r{var i=document.createElement("link");i.rel="stylesheet",i.type="text/css",l.nc&&(i.nonce=l.nc),i.onerror=i.onload=n=>{if(i.onerror=i.onload=null,"load"===n.type)r();else{var l=n&&n.type,a=n&&n.target&&n.target.href||t,s=new Error("Loading CSS chunk "+e+" failed.\n("+l+": "+a+")");s.name="ChunkLoadError",s.code="CSS_CHUNK_LOAD_FAILED",s.type=l,s.request=a,i.parentNode&&i.parentNode.removeChild(i),o(s)}},i.href=t,document.head.appendChild(i)})(e,o,0,t,n)})))(t).then((()=>{e[t]=0}),(n=>{throw delete e[t],n})))}}})(),(()=>{var e={233:0};l.f.j=(t,n)=>{var r=l.o(e,t)?e[t]:void 0;if(0!==r)if(r)n.push(r[2]);else{var o=new Promise(((n,o)=>r=e[t]=[n,o]));n.push(r[2]=o);var i=l.p+l.u(t),a=new Error;l.l(i,(n=>{if(l.o(e,t)&&(0!==(r=e[t])&&(e[t]=void 0),r)){var o=n&&("load"===n.type?"missing":n.type),i=n&&n.target&&n.target.src;a.message="Loading chunk "+t+" failed.\n("+o+": "+i+")",a.name="ChunkLoadError",a.type=o,a.request=i,r[1](a)}}),"chunk-"+t,t)}};var t=(t,n)=>{var r,o,[i,a,s]=n,c=0;if(i.some((t=>0!==e[t]))){for(r in a)l.o(a,r)&&(l.m[r]=a[r]);s&&s(l)}for(t&&t(n);c{"use strict";const e=window.wp.domReady;var t=l.n(e);const n=window.wp.element,r=window.wp.data,o=window.ReactJSXRuntime,i=e=>{const{zoom:t,type:n,className:r,location:i,height:l}=e,a={border:0,height:l,width:"100%"},s="https://maps.google.com/maps?"+new URLSearchParams({q:i,z:t||10,t:n||"m",output:"embed"}).toString();return(0,o.jsx)("iframe",{src:s,style:a,className:r,title:i})},a=window.wp.i18n;function s(e){if("object"==typeof GatherPress)return e.split(".").reduce(((e,t)=>e&&e[t]),GatherPress)}const c=e=>{const{zoom:t=10,className:r,location:i,height:c=300,latitude:u,longitude:d}=e,[f,p]=(0,n.useState)(null),h={height:c};return(0,n.useEffect)((()=>{(async()=>{const{default:e}=await l.e(481).then(l.t.bind(l,3481,23));await l.e(535).then(l.bind(l,1535)),await l.e(272).then(l.t.bind(l,1272,17)),await l.e(980).then(l.t.bind(l,8980,17)),p(e)})()}),[]),(0,n.useEffect)((()=>{if(!f||!u||!d)return;const e=f.map("map").setView([u,d],t);return f.Icon.Default.imagePath=s("urls.pluginUrl")+"build/images/",f.tileLayer("https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png",{attribution:(0,a.sprintf)(/* translators: %s: Link to OpenStreetMap contributors. */ /* translators: %s: Link to OpenStreetMap contributors. */ -(0,a.__)("© %s contributors","gatherpress"),'OpenStreetMap')}).addTo(e),f.marker([u,d]).addTo(e).bindPopup(i),()=>{e.remove()}}),[f,u,i,d,t]),f&&u&&d?(0,o.jsx)("div",{className:r,id:"map",style:h}):null},u=e=>{const t=(0,r.select)("core")?.canUser("create","posts"),n=Boolean((0,r.select)("core/edit-post")),{zoom:l,type:a,className:u,latitude:d,longitude:f}=e;let{location:p,height:h}=e;h||(h=300),!t||n||p||(p="660 4th Street #119 San Francisco CA 94107, USA");const m=s("settings.mapPlatform");return p&&m?"google"===m?(0,o.jsx)(i,{location:p,className:u,zoom:l,type:a,height:h}):"osm"===m?(0,o.jsx)(c,{location:p,latitude:d,longitude:f,className:u,zoom:l,height:h}):(0,o.jsx)(o.Fragment,{}):(0,o.jsx)(o.Fragment,{})};var d=l(1609);const f=Math.min,p=Math.max,h=Math.round,m=Math.floor,y=e=>({x:e,y:e}),g={left:"right",right:"left",bottom:"top",top:"bottom"},v={start:"end",end:"start"};function b(e,t,n){return p(e,f(t,n))}function w(e,t){return"function"==typeof e?e(t):e}function x(e){return e.split("-")[0]}function E(e){return e.split("-")[1]}function _(e){return"x"===e?"y":"x"}function S(e){return"y"===e?"height":"width"}function T(e){return["top","bottom"].includes(x(e))?"y":"x"}function k(e){return _(T(e))}function A(e){return e.replace(/start|end/g,(e=>v[e]))}function O(e){return e.replace(/left|right|bottom|top/g,(e=>g[e]))}function C(e){return"number"!=typeof e?function(e){return{top:0,right:0,bottom:0,left:0,...e}}(e):{top:e,right:e,bottom:e,left:e}}function N(e){const{x:t,y:n,width:r,height:o}=e;return{width:r,height:o,top:n,left:t,right:t+r,bottom:n+o,x:t,y:n}}function R(e,t,n){let{reference:r,floating:o}=e;const i=T(t),l=k(t),a=S(l),s=x(t),c="y"===i,u=r.x+r.width/2-o.width/2,d=r.y+r.height/2-o.height/2,f=r[a]/2-o[a]/2;let p;switch(s){case"top":p={x:u,y:r.y-o.height};break;case"bottom":p={x:u,y:r.y+r.height};break;case"right":p={x:r.x+r.width,y:d};break;case"left":p={x:r.x-o.width,y:d};break;default:p={x:r.x,y:r.y}}switch(E(t)){case"start":p[l]-=f*(n&&c?-1:1);break;case"end":p[l]+=f*(n&&c?-1:1)}return p}async function L(e,t){var n;void 0===t&&(t={});const{x:r,y:o,platform:i,rects:l,elements:a,strategy:s}=e,{boundary:c="clippingAncestors",rootBoundary:u="viewport",elementContext:d="floating",altBoundary:f=!1,padding:p=0}=w(t,e),h=C(p),m=a[f?"floating"===d?"reference":"floating":d],y=N(await i.getClippingRect({element:null==(n=await(null==i.isElement?void 0:i.isElement(m)))||n?m:m.contextElement||await(null==i.getDocumentElement?void 0:i.getDocumentElement(a.floating)),boundary:c,rootBoundary:u,strategy:s})),g="floating"===d?{x:r,y:o,width:l.floating.width,height:l.floating.height}:l.reference,v=await(null==i.getOffsetParent?void 0:i.getOffsetParent(a.floating)),b=await(null==i.isElement?void 0:i.isElement(v))&&await(null==i.getScale?void 0:i.getScale(v))||{x:1,y:1},x=N(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:a,rect:g,offsetParent:v,strategy:s}):g);return{top:(y.top-x.top+h.top)/b.y,bottom:(x.bottom-y.bottom+h.bottom)/b.y,left:(y.left-x.left+h.left)/b.x,right:(x.right-y.right+h.right)/b.x}}function j(e){return D(e)?(e.nodeName||"").toLowerCase():"#document"}function P(e){var t;return(null==e||null==(t=e.ownerDocument)?void 0:t.defaultView)||window}function I(e){var t;return null==(t=(D(e)?e.ownerDocument:e.document)||window.document)?void 0:t.documentElement}function D(e){return e instanceof Node||e instanceof P(e).Node}function M(e){return e instanceof Element||e instanceof P(e).Element}function F(e){return e instanceof HTMLElement||e instanceof P(e).HTMLElement}function z(e){return"undefined"!=typeof ShadowRoot&&(e instanceof ShadowRoot||e instanceof P(e).ShadowRoot)}function B(e){const{overflow:t,overflowX:n,overflowY:r,display:o}=$(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&!["inline","contents"].includes(o)}function H(e){return["table","td","th"].includes(j(e))}function V(e){return[":popover-open",":modal"].some((t=>{try{return e.matches(t)}catch(e){return!1}}))}function q(e){const t=W(),n=M(e)?$(e):e;return"none"!==n.transform||"none"!==n.perspective||!!n.containerType&&"normal"!==n.containerType||!t&&!!n.backdropFilter&&"none"!==n.backdropFilter||!t&&!!n.filter&&"none"!==n.filter||["transform","perspective","filter"].some((e=>(n.willChange||"").includes(e)))||["paint","layout","strict","content"].some((e=>(n.contain||"").includes(e)))}function W(){return!("undefined"==typeof CSS||!CSS.supports)&&CSS.supports("-webkit-backdrop-filter","none")}function U(e){return["html","body","#document"].includes(j(e))}function $(e){return P(e).getComputedStyle(e)}function X(e){return M(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function G(e){if("html"===j(e))return e;const t=e.assignedSlot||e.parentNode||z(e)&&e.host||I(e);return z(t)?t.host:t}function K(e){const t=G(e);return U(t)?e.ownerDocument?e.ownerDocument.body:e.body:F(t)&&B(t)?t:K(t)}function Y(e,t,n){var r;void 0===t&&(t=[]),void 0===n&&(n=!0);const o=K(e),i=o===(null==(r=e.ownerDocument)?void 0:r.body),l=P(o);return i?t.concat(l,l.visualViewport||[],B(o)?o:[],l.frameElement&&n?Y(l.frameElement):[]):t.concat(o,Y(o,[],n))}function Z(e){const t=$(e);let n=parseFloat(t.width)||0,r=parseFloat(t.height)||0;const o=F(e),i=o?e.offsetWidth:n,l=o?e.offsetHeight:r,a=h(n)!==i||h(r)!==l;return a&&(n=i,r=l),{width:n,height:r,$:a}}function J(e){return M(e)?e:e.contextElement}function Q(e){const t=J(e);if(!F(t))return y(1);const n=t.getBoundingClientRect(),{width:r,height:o,$:i}=Z(t);let l=(i?h(n.width):n.width)/r,a=(i?h(n.height):n.height)/o;return l&&Number.isFinite(l)||(l=1),a&&Number.isFinite(a)||(a=1),{x:l,y:a}}const ee=y(0);function te(e){const t=P(e);return W()&&t.visualViewport?{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}:ee}function ne(e,t,n,r){void 0===t&&(t=!1),void 0===n&&(n=!1);const o=e.getBoundingClientRect(),i=J(e);let l=y(1);t&&(r?M(r)&&(l=Q(r)):l=Q(e));const a=function(e,t,n){return void 0===t&&(t=!1),!(!n||t&&n!==P(e))&&t}(i,n,r)?te(i):y(0);let s=(o.left+a.x)/l.x,c=(o.top+a.y)/l.y,u=o.width/l.x,d=o.height/l.y;if(i){const e=P(i),t=r&&M(r)?P(r):r;let n=e,o=n.frameElement;for(;o&&r&&t!==n;){const e=Q(o),t=o.getBoundingClientRect(),r=$(o),i=t.left+(o.clientLeft+parseFloat(r.paddingLeft))*e.x,l=t.top+(o.clientTop+parseFloat(r.paddingTop))*e.y;s*=e.x,c*=e.y,u*=e.x,d*=e.y,s+=i,c+=l,n=P(o),o=n.frameElement}}return N({width:u,height:d,x:s,y:c})}function re(e){return ne(I(e)).left+X(e).scrollLeft}function oe(e,t,n){let r;if("viewport"===t)r=function(e,t){const n=P(e),r=I(e),o=n.visualViewport;let i=r.clientWidth,l=r.clientHeight,a=0,s=0;if(o){i=o.width,l=o.height;const e=W();(!e||e&&"fixed"===t)&&(a=o.offsetLeft,s=o.offsetTop)}return{width:i,height:l,x:a,y:s}}(e,n);else if("document"===t)r=function(e){const t=I(e),n=X(e),r=e.ownerDocument.body,o=p(t.scrollWidth,t.clientWidth,r.scrollWidth,r.clientWidth),i=p(t.scrollHeight,t.clientHeight,r.scrollHeight,r.clientHeight);let l=-n.scrollLeft+re(e);const a=-n.scrollTop;return"rtl"===$(r).direction&&(l+=p(t.clientWidth,r.clientWidth)-o),{width:o,height:i,x:l,y:a}}(I(e));else if(M(t))r=function(e,t){const n=ne(e,!0,"fixed"===t),r=n.top+e.clientTop,o=n.left+e.clientLeft,i=F(e)?Q(e):y(1);return{width:e.clientWidth*i.x,height:e.clientHeight*i.y,x:o*i.x,y:r*i.y}}(t,n);else{const n=te(e);r={...t,x:t.x-n.x,y:t.y-n.y}}return N(r)}function ie(e,t){const n=G(e);return!(n===t||!M(n)||U(n))&&("fixed"===$(n).position||ie(n,t))}function le(e,t,n){const r=F(t),o=I(t),i="fixed"===n,l=ne(e,!0,i,t);let a={scrollLeft:0,scrollTop:0};const s=y(0);if(r||!r&&!i)if(("body"!==j(t)||B(o))&&(a=X(t)),r){const e=ne(t,!0,i,t);s.x=e.x+t.clientLeft,s.y=e.y+t.clientTop}else o&&(s.x=re(o));return{x:l.left+a.scrollLeft-s.x,y:l.top+a.scrollTop-s.y,width:l.width,height:l.height}}function ae(e){return"static"===$(e).position}function se(e,t){return F(e)&&"fixed"!==$(e).position?t?t(e):e.offsetParent:null}function ce(e,t){const n=P(e);if(V(e))return n;if(!F(e)){let t=G(e);for(;t&&!U(t);){if(M(t)&&!ae(t))return t;t=G(t)}return n}let r=se(e,t);for(;r&&H(r)&&ae(r);)r=se(r,t);return r&&U(r)&&ae(r)&&!q(r)?n:r||function(e){let t=G(e);for(;F(t)&&!U(t);){if(q(t))return t;if(V(t))return null;t=G(t)}return null}(e)||n}const ue={convertOffsetParentRelativeRectToViewportRelativeRect:function(e){let{elements:t,rect:n,offsetParent:r,strategy:o}=e;const i="fixed"===o,l=I(r),a=!!t&&V(t.floating);if(r===l||a&&i)return n;let s={scrollLeft:0,scrollTop:0},c=y(1);const u=y(0),d=F(r);if((d||!d&&!i)&&(("body"!==j(r)||B(l))&&(s=X(r)),F(r))){const e=ne(r);c=Q(r),u.x=e.x+r.clientLeft,u.y=e.y+r.clientTop}return{width:n.width*c.x,height:n.height*c.y,x:n.x*c.x-s.scrollLeft*c.x+u.x,y:n.y*c.y-s.scrollTop*c.y+u.y}},getDocumentElement:I,getClippingRect:function(e){let{element:t,boundary:n,rootBoundary:r,strategy:o}=e;const i=[..."clippingAncestors"===n?V(t)?[]:function(e,t){const n=t.get(e);if(n)return n;let r=Y(e,[],!1).filter((e=>M(e)&&"body"!==j(e))),o=null;const i="fixed"===$(e).position;let l=i?G(e):e;for(;M(l)&&!U(l);){const t=$(l),n=q(l);n||"fixed"!==t.position||(o=null),(i?!n&&!o:!n&&"static"===t.position&&o&&["absolute","fixed"].includes(o.position)||B(l)&&!n&&ie(e,l))?r=r.filter((e=>e!==l)):o=t,l=G(l)}return t.set(e,r),r}(t,this._c):[].concat(n),r],l=i[0],a=i.reduce(((e,n)=>{const r=oe(t,n,o);return e.top=p(r.top,e.top),e.right=f(r.right,e.right),e.bottom=f(r.bottom,e.bottom),e.left=p(r.left,e.left),e}),oe(t,l,o));return{width:a.right-a.left,height:a.bottom-a.top,x:a.left,y:a.top}},getOffsetParent:ce,getElementRects:async function(e){const t=this.getOffsetParent||ce,n=this.getDimensions,r=await n(e.floating);return{reference:le(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}},getClientRects:function(e){return Array.from(e.getClientRects())},getDimensions:function(e){const{width:t,height:n}=Z(e);return{width:t,height:n}},getScale:Q,isElement:M,isRTL:function(e){return"rtl"===$(e).direction}};const de=function(e){return void 0===e&&(e=0),{name:"offset",options:e,async fn(t){var n,r;const{x:o,y:i,placement:l,middlewareData:a}=t,s=await async function(e,t){const{placement:n,platform:r,elements:o}=e,i=await(null==r.isRTL?void 0:r.isRTL(o.floating)),l=x(n),a=E(n),s="y"===T(n),c=["left","top"].includes(l)?-1:1,u=i&&s?-1:1,d=w(t,e);let{mainAxis:f,crossAxis:p,alignmentAxis:h}="number"==typeof d?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:0,crossAxis:0,alignmentAxis:null,...d};return a&&"number"==typeof h&&(p="end"===a?-1*h:h),s?{x:p*u,y:f*c}:{x:f*c,y:p*u}}(t,e);return l===(null==(n=a.offset)?void 0:n.placement)&&null!=(r=a.arrow)&&r.alignmentOffset?{}:{x:o+s.x,y:i+s.y,data:{...s,placement:l}}}}},fe=function(e){return void 0===e&&(e={}),{name:"shift",options:e,async fn(t){const{x:n,y:r,placement:o}=t,{mainAxis:i=!0,crossAxis:l=!1,limiter:a={fn:e=>{let{x:t,y:n}=e;return{x:t,y:n}}},...s}=w(e,t),c={x:n,y:r},u=await L(t,s),d=T(x(o)),f=_(d);let p=c[f],h=c[d];if(i){const e="y"===f?"bottom":"right";p=b(p+u["y"===f?"top":"left"],p,p-u[e])}if(l){const e="y"===d?"bottom":"right";h=b(h+u["y"===d?"top":"left"],h,h-u[e])}const m=a.fn({...t,[f]:p,[d]:h});return{...m,data:{x:m.x-n,y:m.y-r}}}}},pe=function(e){return void 0===e&&(e={}),{name:"flip",options:e,async fn(t){var n,r;const{placement:o,middlewareData:i,rects:l,initialPlacement:a,platform:s,elements:c}=t,{mainAxis:u=!0,crossAxis:d=!0,fallbackPlacements:f,fallbackStrategy:p="bestFit",fallbackAxisSideDirection:h="none",flipAlignment:m=!0,...y}=w(e,t);if(null!=(n=i.arrow)&&n.alignmentOffset)return{};const g=x(o),v=T(a),b=x(a)===a,_=await(null==s.isRTL?void 0:s.isRTL(c.floating)),C=f||(b||!m?[O(a)]:function(e){const t=O(e);return[A(e),t,A(t)]}(a)),N="none"!==h;!f&&N&&C.push(...function(e,t,n,r){const o=E(e);let i=function(e,t,n){const r=["left","right"],o=["right","left"],i=["top","bottom"],l=["bottom","top"];switch(e){case"top":case"bottom":return n?t?o:r:t?r:o;case"left":case"right":return t?i:l;default:return[]}}(x(e),"start"===n,r);return o&&(i=i.map((e=>e+"-"+o)),t&&(i=i.concat(i.map(A)))),i}(a,m,h,_));const R=[a,...C],j=await L(t,y),P=[];let I=(null==(r=i.flip)?void 0:r.overflows)||[];if(u&&P.push(j[g]),d){const e=function(e,t,n){void 0===n&&(n=!1);const r=E(e),o=k(e),i=S(o);let l="x"===o?r===(n?"end":"start")?"right":"left":"start"===r?"bottom":"top";return t.reference[i]>t.floating[i]&&(l=O(l)),[l,O(l)]}(o,l,_);P.push(j[e[0]],j[e[1]])}if(I=[...I,{placement:o,overflows:P}],!P.every((e=>e<=0))){var D,M;const e=((null==(D=i.flip)?void 0:D.index)||0)+1,t=R[e];if(t)return{data:{index:e,overflows:I},reset:{placement:t}};let n=null==(M=I.filter((e=>e.overflows[0]<=0)).sort(((e,t)=>e.overflows[1]-t.overflows[1]))[0])?void 0:M.placement;if(!n)switch(p){case"bestFit":{var F;const e=null==(F=I.filter((e=>{if(N){const t=T(e.placement);return t===v||"y"===t}return!0})).map((e=>[e.placement,e.overflows.filter((e=>e>0)).reduce(((e,t)=>e+t),0)])).sort(((e,t)=>e[1]-t[1]))[0])?void 0:F[0];e&&(n=e);break}case"initialPlacement":n=a}if(o!==n)return{reset:{placement:n}}}return{}}}},he=(e,t,n)=>{const r=new Map,o={platform:ue,...n},i={...o.platform,_c:r};return(async(e,t,n)=>{const{placement:r="bottom",strategy:o="absolute",middleware:i=[],platform:l}=n,a=i.filter(Boolean),s=await(null==l.isRTL?void 0:l.isRTL(t));let c=await l.getElementRects({reference:e,floating:t,strategy:o}),{x:u,y:d}=R(c,r,s),f=r,p={},h=0;for(let n=0;n{if(!e)return{tooltipStyles:{},tooltipArrowStyles:{},place:r};if(null===t)return{tooltipStyles:{},tooltipArrowStyles:{},place:r};const s=l;return n?(s.push({name:"arrow",options:c={element:n,padding:5},async fn(e){const{x:t,y:n,placement:r,rects:o,platform:i,elements:l,middlewareData:a}=e,{element:s,padding:u=0}=w(c,e)||{};if(null==s)return{};const d=C(u),p={x:t,y:n},h=k(r),m=S(h),y=await i.getDimensions(s),g="y"===h,v=g?"top":"left",x=g?"bottom":"right",_=g?"clientHeight":"clientWidth",T=o.reference[m]+o.reference[h]-p[h]-o.floating[m],A=p[h]-o.reference[h],O=await(null==i.getOffsetParent?void 0:i.getOffsetParent(s));let N=O?O[_]:0;N&&await(null==i.isElement?void 0:i.isElement(O))||(N=l.floating[_]||o.floating[m]);const R=T/2-A/2,L=N/2-y[m]/2-1,j=f(d[v],L),P=f(d[x],L),I=j,D=N-y[m]-P,M=N/2-y[m]/2+R,F=b(I,M,D),z=!a.arrow&&null!=E(r)&&M!==F&&o.reference[m]/2-(M{var o,i;const l={left:`${e}px`,top:`${t}px`,border:a},{x:s,y:c}=null!==(o=r.arrow)&&void 0!==o?o:{x:0,y:0},u=null!==(i={top:"bottom",right:"left",bottom:"top",left:"right"}[n.split("-")[0]])&&void 0!==i?i:"bottom",d=a&&{borderBottom:a,borderRight:a};let f=0;if(a){const e=`${a}`.match(/(\d+)px/);f=(null==e?void 0:e[1])?Number(e[1]):1}return{tooltipStyles:l,tooltipArrowStyles:{left:null!=s?`${s}px`:"",top:null!=c?`${c}px`:"",right:"",bottom:"",...d,[u]:`-${4+f}px`},place:n}}))):he(e,t,{placement:"bottom",strategy:i,middleware:s}).then((({x:e,y:t,placement:n})=>({tooltipStyles:{left:`${e}px`,top:`${t}px`},tooltipArrowStyles:{},place:n})));var c},be=(e,t)=>!("CSS"in window&&"supports"in window.CSS)||window.CSS.supports(e,t),we=(e,t,n)=>{let r=null;const o=function(...o){const i=()=>{r=null,n||e.apply(this,o)};n&&!r&&(e.apply(this,o),r=setTimeout(i,t)),n||(r&&clearTimeout(r),r=setTimeout(i,t))};return o.cancel=()=>{r&&(clearTimeout(r),r=null)},o},xe=e=>null!==e&&!Array.isArray(e)&&"object"==typeof e,Ee=(e,t)=>{if(e===t)return!0;if(Array.isArray(e)&&Array.isArray(t))return e.length===t.length&&e.every(((e,n)=>Ee(e,t[n])));if(Array.isArray(e)!==Array.isArray(t))return!1;if(!xe(e)||!xe(t))return e===t;const n=Object.keys(e),r=Object.keys(t);return n.length===r.length&&n.every((n=>Ee(e[n],t[n])))},_e=e=>{if(!(e instanceof HTMLElement||e instanceof SVGElement))return!1;const t=getComputedStyle(e);return["overflow","overflow-x","overflow-y"].some((e=>{const n=t.getPropertyValue(e);return"auto"===n||"scroll"===n}))},Se=e=>{if(!e)return null;let t=e.parentElement;for(;t;){if(_e(t))return t;t=t.parentElement}return document.scrollingElement||document.documentElement},Te="undefined"!=typeof window?d.useLayoutEffect:d.useEffect,ke=e=>{e.current&&(clearTimeout(e.current),e.current=null)},Ae={anchorRefs:new Set,activeAnchor:{current:null},attach:()=>{},detach:()=>{},setActiveAnchor:()=>{}},Oe=(0,d.createContext)({getTooltipData:()=>Ae});function Ce(e="DEFAULT_TOOLTIP_ID"){return(0,d.useContext)(Oe).getTooltipData(e)}var Ne={tooltip:"core-styles-module_tooltip__3vRRp",fixed:"core-styles-module_fixed__pcSol",arrow:"core-styles-module_arrow__cvMwQ",noArrow:"core-styles-module_noArrow__xock6",clickable:"core-styles-module_clickable__ZuTTB",show:"core-styles-module_show__Nt9eE",closing:"core-styles-module_closing__sGnxF"},Re={tooltip:"styles-module_tooltip__mnnfp",arrow:"styles-module_arrow__K0L3T",dark:"styles-module_dark__xNqje",light:"styles-module_light__Z6W-X",success:"styles-module_success__A2AKt",warning:"styles-module_warning__SCK0X",error:"styles-module_error__JvumD",info:"styles-module_info__BWdHW"};const Le=({forwardRef:e,id:t,className:n,classNameArrow:r,variant:o="dark",anchorId:i,anchorSelect:l,place:a="top",offset:s=10,events:c=["hover"],openOnClick:u=!1,positionStrategy:h="absolute",middlewares:y,wrapper:g,delayShow:v=0,delayHide:b=0,float:w=!1,hidden:x=!1,noArrow:E=!1,clickable:_=!1,closeOnEsc:S=!1,closeOnScroll:T=!1,closeOnResize:k=!1,openEvents:A,closeEvents:O,globalCloseEvents:C,imperativeModeOnly:N,style:R,position:L,afterShow:j,afterHide:P,content:D,contentWrapperRef:M,isOpen:F,defaultIsOpen:z=!1,setIsOpen:B,activeAnchor:H,setActiveAnchor:V,border:q,opacity:W,arrowColor:U,role:$="tooltip"})=>{var X;const G=(0,d.useRef)(null),K=(0,d.useRef)(null),Z=(0,d.useRef)(null),Q=(0,d.useRef)(null),ee=(0,d.useRef)(null),[te,re]=(0,d.useState)({tooltipStyles:{},tooltipArrowStyles:{},place:a}),[oe,ie]=(0,d.useState)(!1),[le,ae]=(0,d.useState)(!1),[se,ce]=(0,d.useState)(null),ue=(0,d.useRef)(!1),de=(0,d.useRef)(null),{anchorRefs:fe,setActiveAnchor:pe}=Ce(t),he=(0,d.useRef)(!1),[ye,ge]=(0,d.useState)([]),be=(0,d.useRef)(!1),xe=u||c.includes("click"),_e=xe||(null==A?void 0:A.click)||(null==A?void 0:A.dblclick)||(null==A?void 0:A.mousedown),Ae=A?{...A}:{mouseover:!0,focus:!0,mouseenter:!1,click:!1,dblclick:!1,mousedown:!1};!A&&xe&&Object.assign(Ae,{mouseenter:!1,focus:!1,mouseover:!1,click:!0});const Oe=O?{...O}:{mouseout:!0,blur:!0,mouseleave:!1,click:!1,dblclick:!1,mouseup:!1};!O&&xe&&Object.assign(Oe,{mouseleave:!1,blur:!1,mouseout:!1});const Le=C?{...C}:{escape:S||!1,scroll:T||!1,resize:k||!1,clickOutsideAnchor:_e||!1};N&&(Object.assign(Ae,{mouseenter:!1,focus:!1,click:!1,dblclick:!1,mousedown:!1}),Object.assign(Oe,{mouseleave:!1,blur:!1,click:!1,dblclick:!1,mouseup:!1}),Object.assign(Le,{escape:!1,scroll:!1,resize:!1,clickOutsideAnchor:!1})),Te((()=>(be.current=!0,()=>{be.current=!1})),[]);const je=e=>{be.current&&(e&&ae(!0),setTimeout((()=>{be.current&&(null==B||B(e),void 0===F&&ie(e))}),10))};(0,d.useEffect)((()=>{if(void 0===F)return()=>null;F&&ae(!0);const e=setTimeout((()=>{ie(F)}),10);return()=>{clearTimeout(e)}}),[F]),(0,d.useEffect)((()=>{if(oe!==ue.current)if(ke(ee),ue.current=oe,oe)null==j||j();else{const e=(()=>{const e=getComputedStyle(document.body).getPropertyValue("--rt-transition-show-delay").match(/^([\d.]+)(ms|s)$/);if(!e)return 0;const[,t,n]=e;return Number(t)*("ms"===n?1:1e3)})();ee.current=setTimeout((()=>{ae(!1),ce(null),null==P||P()}),e+25)}}),[oe]);const Pe=e=>{re((t=>Ee(t,e)?t:e))},Ie=(e=v)=>{ke(Z),le?je(!0):Z.current=setTimeout((()=>{je(!0)}),e)},De=(e=b)=>{ke(Q),Q.current=setTimeout((()=>{he.current||je(!1)}),e)},Me=e=>{var t;if(!e)return;const n=null!==(t=e.currentTarget)&&void 0!==t?t:e.target;if(!(null==n?void 0:n.isConnected))return V(null),void pe({current:null});v?Ie():je(!0),V(n),pe({current:n}),ke(Q)},Fe=()=>{_?De(b||100):b?De():je(!1),ke(Z)},ze=({x:e,y:t})=>{var n;const r={getBoundingClientRect:()=>({x:e,y:t,width:0,height:0,top:t,left:e,right:e,bottom:t})};ve({place:null!==(n=null==se?void 0:se.place)&&void 0!==n?n:a,offset:s,elementReference:r,tooltipReference:G.current,tooltipArrowReference:K.current,strategy:h,middlewares:y,border:q}).then((e=>{Pe(e)}))},Be=e=>{if(!e)return;const t=e,n={x:t.clientX,y:t.clientY};ze(n),de.current=n},He=e=>{var t;if(!oe)return;const n=e.target;n.isConnected&&((null===(t=G.current)||void 0===t?void 0:t.contains(n))||[document.querySelector(`[id='${i}']`),...ye].some((e=>null==e?void 0:e.contains(n)))||(je(!1),ke(Z)))},Ve=we(Me,50,!0),qe=we(Fe,50,!0),We=e=>{qe.cancel(),Ve(e)},Ue=()=>{Ve.cancel(),qe()},$e=(0,d.useCallback)((()=>{var e,t;const n=null!==(e=null==se?void 0:se.position)&&void 0!==e?e:L;n?ze(n):w?de.current&&ze(de.current):(null==H?void 0:H.isConnected)&&ve({place:null!==(t=null==se?void 0:se.place)&&void 0!==t?t:a,offset:s,elementReference:H,tooltipReference:G.current,tooltipArrowReference:K.current,strategy:h,middlewares:y,border:q}).then((e=>{be.current&&Pe(e)}))}),[oe,H,D,R,a,null==se?void 0:se.place,s,h,L,null==se?void 0:se.position,w]);(0,d.useEffect)((()=>{var e,t;const n=new Set(fe);ye.forEach((e=>{n.add({current:e})}));const r=document.querySelector(`[id='${i}']`);r&&n.add({current:r});const o=()=>{je(!1)},l=Se(H),a=Se(G.current);Le.scroll&&(window.addEventListener("scroll",o),null==l||l.addEventListener("scroll",o),null==a||a.addEventListener("scroll",o));let s=null;Le.resize?window.addEventListener("resize",o):H&&G.current&&(s=function(e,t,n,r){void 0===r&&(r={});const{ancestorScroll:o=!0,ancestorResize:i=!0,elementResize:l="function"==typeof ResizeObserver,layoutShift:a="function"==typeof IntersectionObserver,animationFrame:s=!1}=r,c=J(e),u=o||i?[...c?Y(c):[],...Y(t)]:[];u.forEach((e=>{o&&e.addEventListener("scroll",n,{passive:!0}),i&&e.addEventListener("resize",n)}));const d=c&&a?function(e,t){let n,r=null;const o=I(e);function i(){var e;clearTimeout(n),null==(e=r)||e.disconnect(),r=null}return function l(a,s){void 0===a&&(a=!1),void 0===s&&(s=1),i();const{left:c,top:u,width:d,height:h}=e.getBoundingClientRect();if(a||t(),!d||!h)return;const y={rootMargin:-m(u)+"px "+-m(o.clientWidth-(c+d))+"px "+-m(o.clientHeight-(u+h))+"px "+-m(c)+"px",threshold:p(0,f(1,s))||1};let g=!0;function v(e){const t=e[0].intersectionRatio;if(t!==s){if(!g)return l();t?l(!1,t):n=setTimeout((()=>{l(!1,1e-7)}),1e3)}g=!1}try{r=new IntersectionObserver(v,{...y,root:o.ownerDocument})}catch(e){r=new IntersectionObserver(v,y)}r.observe(e)}(!0),i}(c,n):null;let h,y=-1,g=null;l&&(g=new ResizeObserver((e=>{let[r]=e;r&&r.target===c&&g&&(g.unobserve(t),cancelAnimationFrame(y),y=requestAnimationFrame((()=>{var e;null==(e=g)||e.observe(t)}))),n()})),c&&!s&&g.observe(c),g.observe(t));let v=s?ne(e):null;return s&&function t(){const r=ne(e);!v||r.x===v.x&&r.y===v.y&&r.width===v.width&&r.height===v.height||n(),v=r,h=requestAnimationFrame(t)}(),n(),()=>{var e;u.forEach((e=>{o&&e.removeEventListener("scroll",n),i&&e.removeEventListener("resize",n)})),null==d||d(),null==(e=g)||e.disconnect(),g=null,s&&cancelAnimationFrame(h)}}(H,G.current,$e,{ancestorResize:!0,elementResize:!0,layoutShift:!0}));const c=e=>{"Escape"===e.key&&je(!1)};Le.escape&&window.addEventListener("keydown",c),Le.clickOutsideAnchor&&window.addEventListener("click",He);const u=[],d=e=>{oe&&(null==e?void 0:e.target)===H||Me(e)},h=e=>{oe&&(null==e?void 0:e.target)===H&&Fe()},y=["mouseover","mouseout","mouseenter","mouseleave","focus","blur"],g=["click","dblclick","mousedown","mouseup"];Object.entries(Ae).forEach((([e,t])=>{t&&(y.includes(e)?u.push({event:e,listener:We}):g.includes(e)&&u.push({event:e,listener:d}))})),Object.entries(Oe).forEach((([e,t])=>{t&&(y.includes(e)?u.push({event:e,listener:Ue}):g.includes(e)&&u.push({event:e,listener:h}))})),w&&u.push({event:"pointermove",listener:Be});const v=()=>{he.current=!0},b=()=>{he.current=!1,Fe()};return _&&!_e&&(null===(e=G.current)||void 0===e||e.addEventListener("mouseenter",v),null===(t=G.current)||void 0===t||t.addEventListener("mouseleave",b)),u.forEach((({event:e,listener:t})=>{n.forEach((n=>{var r;null===(r=n.current)||void 0===r||r.addEventListener(e,t)}))})),()=>{var e,t;Le.scroll&&(window.removeEventListener("scroll",o),null==l||l.removeEventListener("scroll",o),null==a||a.removeEventListener("scroll",o)),Le.resize?window.removeEventListener("resize",o):null==s||s(),Le.clickOutsideAnchor&&window.removeEventListener("click",He),Le.escape&&window.removeEventListener("keydown",c),_&&!_e&&(null===(e=G.current)||void 0===e||e.removeEventListener("mouseenter",v),null===(t=G.current)||void 0===t||t.removeEventListener("mouseleave",b)),u.forEach((({event:e,listener:t})=>{n.forEach((n=>{var r;null===(r=n.current)||void 0===r||r.removeEventListener(e,t)}))}))}}),[H,$e,le,fe,ye,A,O,C,xe,v,b]),(0,d.useEffect)((()=>{var e,n;let r=null!==(n=null!==(e=null==se?void 0:se.anchorSelect)&&void 0!==e?e:l)&&void 0!==n?n:"";!r&&t&&(r=`[data-tooltip-id='${t.replace(/'/g,"\\'")}']`);const o=new MutationObserver((e=>{const n=[],o=[];e.forEach((e=>{if("attributes"===e.type&&"data-tooltip-id"===e.attributeName&&(e.target.getAttribute("data-tooltip-id")===t?n.push(e.target):e.oldValue===t&&o.push(e.target)),"childList"===e.type){if(H){const t=[...e.removedNodes].filter((e=>1===e.nodeType));if(r)try{o.push(...t.filter((e=>e.matches(r)))),o.push(...t.flatMap((e=>[...e.querySelectorAll(r)])))}catch(e){}t.some((e=>{var t;return!!(null===(t=null==e?void 0:e.contains)||void 0===t?void 0:t.call(e,H))&&(ae(!1),je(!1),V(null),ke(Z),ke(Q),!0)}))}if(r)try{const t=[...e.addedNodes].filter((e=>1===e.nodeType));n.push(...t.filter((e=>e.matches(r)))),n.push(...t.flatMap((e=>[...e.querySelectorAll(r)])))}catch(e){}}})),(n.length||o.length)&&ge((e=>[...e.filter((e=>!o.includes(e))),...n]))}));return o.observe(document.body,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["data-tooltip-id"],attributeOldValue:!0}),()=>{o.disconnect()}}),[t,l,null==se?void 0:se.anchorSelect,H]),(0,d.useEffect)((()=>{$e()}),[$e]),(0,d.useEffect)((()=>{if(!(null==M?void 0:M.current))return()=>null;const e=new ResizeObserver((()=>{setTimeout((()=>$e()))}));return e.observe(M.current),()=>{e.disconnect()}}),[D,null==M?void 0:M.current]),(0,d.useEffect)((()=>{var e;const t=document.querySelector(`[id='${i}']`),n=[...ye,t];H&&n.includes(H)||V(null!==(e=ye[0])&&void 0!==e?e:t)}),[i,ye,H]),(0,d.useEffect)((()=>(z&&je(!0),()=>{ke(Z),ke(Q)})),[]),(0,d.useEffect)((()=>{var e;let n=null!==(e=null==se?void 0:se.anchorSelect)&&void 0!==e?e:l;if(!n&&t&&(n=`[data-tooltip-id='${t.replace(/'/g,"\\'")}']`),n)try{const e=Array.from(document.querySelectorAll(n));ge(e)}catch(e){ge([])}}),[t,l,null==se?void 0:se.anchorSelect]),(0,d.useEffect)((()=>{Z.current&&(ke(Z),Ie(v))}),[v]);const Xe=null!==(X=null==se?void 0:se.content)&&void 0!==X?X:D,Ge=oe&&Object.keys(te.tooltipStyles).length>0;return(0,d.useImperativeHandle)(e,(()=>({open:e=>{if(null==e?void 0:e.anchorSelect)try{document.querySelector(e.anchorSelect)}catch(t){return void console.warn(`[react-tooltip] "${e.anchorSelect}" is not a valid CSS selector`)}ce(null!=e?e:null),(null==e?void 0:e.delay)?Ie(e.delay):je(!0)},close:e=>{(null==e?void 0:e.delay)?De(e.delay):je(!1)},activeAnchor:H,place:te.place,isOpen:Boolean(le&&!x&&Xe&&Ge)}))),le&&!x&&Xe?d.createElement(g,{id:t,role:$,className:me("react-tooltip",Ne.tooltip,Re.tooltip,Re[o],n,`react-tooltip__place-${te.place}`,Ne[Ge?"show":"closing"],Ge?"react-tooltip__show":"react-tooltip__closing","fixed"===h&&Ne.fixed,_&&Ne.clickable),onTransitionEnd:e=>{ke(ee),oe||"opacity"!==e.propertyName||(ae(!1),ce(null),null==P||P())},style:{...R,...te.tooltipStyles,opacity:void 0!==W&&Ge?W:void 0},ref:G},Xe,d.createElement(g,{className:me("react-tooltip-arrow",Ne.arrow,Re.arrow,r,E&&Ne.noArrow),style:{...te.tooltipArrowStyles,background:U?`linear-gradient(to right bottom, transparent 50%, ${U} 50%)`:void 0},ref:K})):null},je=({content:e})=>d.createElement("span",{dangerouslySetInnerHTML:{__html:e}}),Pe=d.forwardRef((({id:e,anchorId:t,anchorSelect:n,content:r,html:o,render:i,className:l,classNameArrow:a,variant:s="dark",place:c="top",offset:u=10,wrapper:f="div",children:p=null,events:h=["hover"],openOnClick:m=!1,positionStrategy:y="absolute",middlewares:g,delayShow:v=0,delayHide:b=0,float:w=!1,hidden:x=!1,noArrow:E=!1,clickable:_=!1,closeOnEsc:S=!1,closeOnScroll:T=!1,closeOnResize:k=!1,openEvents:A,closeEvents:O,globalCloseEvents:C,imperativeModeOnly:N=!1,style:R,position:L,isOpen:j,defaultIsOpen:P=!1,disableStyleInjection:I=!1,border:D,opacity:M,arrowColor:F,setIsOpen:z,afterShow:B,afterHide:H,role:V="tooltip"},q)=>{const[W,U]=(0,d.useState)(r),[$,X]=(0,d.useState)(o),[G,K]=(0,d.useState)(c),[Y,Z]=(0,d.useState)(s),[J,Q]=(0,d.useState)(u),[ee,te]=(0,d.useState)(v),[ne,re]=(0,d.useState)(b),[oe,ie]=(0,d.useState)(w),[le,ae]=(0,d.useState)(x),[se,ce]=(0,d.useState)(f),[ue,de]=(0,d.useState)(h),[fe,pe]=(0,d.useState)(y),[he,ye]=(0,d.useState)(null),[ge,ve]=(0,d.useState)(null),we=(0,d.useRef)(I),{anchorRefs:xe,activeAnchor:Ee}=Ce(e),_e=e=>null==e?void 0:e.getAttributeNames().reduce(((t,n)=>{var r;return n.startsWith("data-tooltip-")&&(t[n.replace(/^data-tooltip-/,"")]=null!==(r=null==e?void 0:e.getAttribute(n))&&void 0!==r?r:null),t}),{}),Se=e=>{const t={place:e=>{var t;K(null!==(t=e)&&void 0!==t?t:c)},content:e=>{U(null!=e?e:r)},html:e=>{X(null!=e?e:o)},variant:e=>{var t;Z(null!==(t=e)&&void 0!==t?t:s)},offset:e=>{Q(null===e?u:Number(e))},wrapper:e=>{var t;ce(null!==(t=e)&&void 0!==t?t:f)},events:e=>{const t=null==e?void 0:e.split(" ");de(null!=t?t:h)},"position-strategy":e=>{var t;pe(null!==(t=e)&&void 0!==t?t:y)},"delay-show":e=>{te(null===e?v:Number(e))},"delay-hide":e=>{re(null===e?b:Number(e))},float:e=>{ie(null===e?w:"true"===e)},hidden:e=>{ae(null===e?x:"true"===e)},"class-name":e=>{ye(e)}};Object.values(t).forEach((e=>e(null))),Object.entries(e).forEach((([e,n])=>{var r;null===(r=t[e])||void 0===r||r.call(t,n)}))};(0,d.useEffect)((()=>{U(r)}),[r]),(0,d.useEffect)((()=>{X(o)}),[o]),(0,d.useEffect)((()=>{K(c)}),[c]),(0,d.useEffect)((()=>{Z(s)}),[s]),(0,d.useEffect)((()=>{Q(u)}),[u]),(0,d.useEffect)((()=>{te(v)}),[v]),(0,d.useEffect)((()=>{re(b)}),[b]),(0,d.useEffect)((()=>{ie(w)}),[w]),(0,d.useEffect)((()=>{ae(x)}),[x]),(0,d.useEffect)((()=>{pe(y)}),[y]),(0,d.useEffect)((()=>{we.current!==I&&console.warn("[react-tooltip] Do not change `disableStyleInjection` dynamically.")}),[I]),(0,d.useEffect)((()=>{"undefined"!=typeof window&&window.dispatchEvent(new CustomEvent("react-tooltip-inject-styles",{detail:{disableCore:"core"===I,disableBase:I}}))}),[]),(0,d.useEffect)((()=>{var r;const o=new Set(xe);let i=n;if(!i&&e&&(i=`[data-tooltip-id='${e.replace(/'/g,"\\'")}']`),i)try{document.querySelectorAll(i).forEach((e=>{o.add({current:e})}))}catch(r){console.warn(`[react-tooltip] "${i}" is not a valid CSS selector`)}const l=document.querySelector(`[id='${t}']`);if(l&&o.add({current:l}),!o.size)return()=>null;const a=null!==(r=null!=ge?ge:l)&&void 0!==r?r:Ee.current,s=new MutationObserver((e=>{e.forEach((e=>{var t;if(!a||"attributes"!==e.type||!(null===(t=e.attributeName)||void 0===t?void 0:t.startsWith("data-tooltip-")))return;const n=_e(a);Se(n)}))})),c={attributes:!0,childList:!1,subtree:!1};if(a){const e=_e(a);Se(e),s.observe(a,c)}return()=>{s.disconnect()}}),[xe,Ee,ge,t,n]),(0,d.useEffect)((()=>{(null==R?void 0:R.border)&&console.warn("[react-tooltip] Do not set `style.border`. Use `border` prop instead."),D&&!be("border",`${D}`)&&console.warn(`[react-tooltip] "${D}" is not a valid \`border\`.`),(null==R?void 0:R.opacity)&&console.warn("[react-tooltip] Do not set `style.opacity`. Use `opacity` prop instead."),M&&!be("opacity",`${M}`)&&console.warn(`[react-tooltip] "${M}" is not a valid \`opacity\`.`)}),[]);let Te=p;const ke=(0,d.useRef)(null);if(i){const e=i({content:(null==ge?void 0:ge.getAttribute("data-tooltip-content"))||W||null,activeAnchor:ge});Te=e?d.createElement("div",{ref:ke,className:"react-tooltip-content-wrapper"},e):null}else W&&(Te=W);$&&(Te=d.createElement(je,{content:$}));const Ae={forwardRef:q,id:e,anchorId:t,anchorSelect:n,className:me(l,he),classNameArrow:a,content:Te,contentWrapperRef:ke,place:G,variant:Y,offset:J,wrapper:se,events:ue,openOnClick:m,positionStrategy:fe,middlewares:g,delayShow:ee,delayHide:ne,float:oe,hidden:le,noArrow:E,clickable:_,closeOnEsc:S,closeOnScroll:T,closeOnResize:k,openEvents:A,closeEvents:O,globalCloseEvents:C,imperativeModeOnly:N,style:R,position:L,isOpen:j,defaultIsOpen:P,border:D,opacity:M,arrowColor:F,setIsOpen:z,afterShow:B,afterHide:H,activeAnchor:ge,setActiveAnchor:e=>ve(e),role:V};return d.createElement(Le,{...Ae})}));"undefined"!=typeof window&&window.addEventListener("react-tooltip-inject-styles",(e=>{e.detail.disableCore||ge({css:":root{--rt-color-white:#fff;--rt-color-dark:#222;--rt-color-success:#8dc572;--rt-color-error:#be6464;--rt-color-warning:#f0ad4e;--rt-color-info:#337ab7;--rt-opacity:0.9;--rt-transition-show-delay:0.15s;--rt-transition-closing-delay:0.15s}.core-styles-module_tooltip__3vRRp{position:absolute;top:0;left:0;pointer-events:none;opacity:0;will-change:opacity}.core-styles-module_fixed__pcSol{position:fixed}.core-styles-module_arrow__cvMwQ{position:absolute;background:inherit}.core-styles-module_noArrow__xock6{display:none}.core-styles-module_clickable__ZuTTB{pointer-events:auto}.core-styles-module_show__Nt9eE{opacity:var(--rt-opacity);transition:opacity var(--rt-transition-show-delay)ease-out}.core-styles-module_closing__sGnxF{opacity:0;transition:opacity var(--rt-transition-closing-delay)ease-in}",type:"core"}),e.detail.disableBase||ge({css:"\n.styles-module_tooltip__mnnfp{padding:8px 16px;border-radius:3px;font-size:90%;width:max-content}.styles-module_arrow__K0L3T{width:8px;height:8px}[class*='react-tooltip__place-top']>.styles-module_arrow__K0L3T{transform:rotate(45deg)}[class*='react-tooltip__place-right']>.styles-module_arrow__K0L3T{transform:rotate(135deg)}[class*='react-tooltip__place-bottom']>.styles-module_arrow__K0L3T{transform:rotate(225deg)}[class*='react-tooltip__place-left']>.styles-module_arrow__K0L3T{transform:rotate(315deg)}.styles-module_dark__xNqje{background:var(--rt-color-dark);color:var(--rt-color-white)}.styles-module_light__Z6W-X{background-color:var(--rt-color-white);color:var(--rt-color-dark)}.styles-module_success__A2AKt{background-color:var(--rt-color-success);color:var(--rt-color-white)}.styles-module_warning__SCK0X{background-color:var(--rt-color-warning);color:var(--rt-color-white)}.styles-module_error__JvumD{background-color:var(--rt-color-error);color:var(--rt-color-white)}.styles-module_info__BWdHW{background-color:var(--rt-color-info);color:var(--rt-color-white)}",type:"base"})}));const Ie=window.wp.components,De=({onlineEventLinkDefault:e=""})=>{const t=(0,a.__)("Online event","gatherpress"),[r,i]=(0,n.useState)(e);return((e,t="")=>{for(const[n,r]of Object.entries(e)){let e=n;t&&(e+="_"+String(t)),addEventListener(e,(e=>{r(e.detail)}),!1)}})({setOnlineEventLink:i},s("eventDetails.postId")),(0,o.jsxs)(Ie.Flex,{justify:"normal",gap:"3",children:[(0,o.jsx)(Ie.FlexItem,{display:"flex",children:(0,o.jsx)(Ie.Icon,{icon:"video-alt2"})}),(0,o.jsxs)(Ie.FlexItem,{children:[!r&&(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)("span",{tabIndex:"0",className:"gatherpress-tooltip","data-tooltip-id":"gatherpress-online-event-tooltip","data-tooltip-content":(0,a.__)("Link available for attendees only.","gatherpress"),children:t}),(0,o.jsx)(Pe,{id:"gatherpress-online-event-tooltip"})]}),r&&(0,o.jsx)("a",{href:r,rel:"noreferrer",target:"_blank",children:t})]})]})};var Me=l(442);const Fe=Me.default||Me,ze=({name:e,fullAddress:t,phoneNumber:n,website:r})=>(0,o.jsxs)(o.Fragment,{children:[(e||t)&&(0,o.jsxs)(Ie.Flex,{justify:"normal",align:"flex-start",gap:"4",children:[(0,o.jsx)(Ie.FlexItem,{display:"flex",className:"gatherpress-venue__icon",children:(0,o.jsx)(Ie.Icon,{icon:"location"})}),(0,o.jsxs)(Ie.FlexItem,{children:[e&&(0,o.jsx)("div",{className:"gatherpress-venue__name",children:(0,o.jsx)("strong",{children:Fe(e)})}),t&&(0,o.jsx)("div",{className:"gatherpress-venue__full-address",children:Fe(t)})]})]}),(n||r)&&(0,o.jsxs)(Ie.Flex,{justify:"normal",gap:"8",children:[n&&(0,o.jsx)(Ie.FlexItem,{children:(0,o.jsxs)(Ie.Flex,{justify:"normal",gap:"4",children:[(0,o.jsx)(Ie.FlexItem,{display:"flex",className:"gatherpress-venue__icon",children:(0,o.jsx)(Ie.Icon,{icon:"phone"})}),(0,o.jsx)(Ie.FlexItem,{children:(0,o.jsx)("div",{className:"gatherpress-venue__phone-number",children:n})})]})}),r&&(0,o.jsx)(Ie.FlexItem,{children:(0,o.jsxs)(Ie.Flex,{justify:"normal",gap:"4",children:[(0,o.jsx)(Ie.FlexItem,{display:"flex",className:"gatherpress-venue__icon",children:(0,o.jsx)(Ie.Icon,{icon:"admin-site-alt3"})}),(0,o.jsx)(Ie.FlexItem,{children:(0,o.jsx)("div",{className:"gatherpress-venue__website",children:(0,o.jsx)("a",{href:r,target:"_blank",rel:"noreferrer noopener",children:r})})})]})})]})]}),Be=({name:e="",fullAddress:t,phoneNumber:n,website:r,isOnlineEventTerm:i=!1,onlineEventLink:l=""})=>(0,o.jsxs)(o.Fragment,{children:[!i&&(0,o.jsx)(ze,{name:e,fullAddress:t,phoneNumber:n,website:r}),i&&(0,o.jsx)(De,{onlineEventLinkDefault:l})]});t()((()=>{let e=document.querySelectorAll('[data-gatherpress_block_name="venue"]');for(let c=0;c{var e,t,n,r,o={5413:(e,t)=>{"use strict";var n;Object.defineProperty(t,"__esModule",{value:!0}),t.Doctype=t.CDATA=t.Tag=t.Style=t.Script=t.Comment=t.Directive=t.Text=t.Root=t.isTag=t.ElementType=void 0,function(e){e.Root="root",e.Text="text",e.Directive="directive",e.Comment="comment",e.Script="script",e.Style="style",e.Tag="tag",e.CDATA="cdata",e.Doctype="doctype"}(n=t.ElementType||(t.ElementType={})),t.isTag=function(e){return e.type===n.Tag||e.type===n.Script||e.type===n.Style},t.Root=n.Root,t.Text=n.Text,t.Directive=n.Directive,t.Comment=n.Comment,t.Script=n.Script,t.Style=n.Style,t.Tag=n.Tag,t.CDATA=n.CDATA,t.Doctype=n.Doctype},1141:function(e,t,n){"use strict";var r=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n);var o=Object.getOwnPropertyDescriptor(t,n);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,o)}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),o=this&&this.__exportStar||function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||r(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),t.DomHandler=void 0;var i=n(5413),l=n(6957);o(n(6957),t);var a={withStartIndices:!1,withEndIndices:!1,xmlMode:!1},s=function(){function e(e,t,n){this.dom=[],this.root=new l.Document(this.dom),this.done=!1,this.tagStack=[this.root],this.lastNode=null,this.parser=null,"function"==typeof t&&(n=t,t=a),"object"==typeof e&&(t=e,e=void 0),this.callback=null!=e?e:null,this.options=null!=t?t:a,this.elementCB=null!=n?n:null}return e.prototype.onparserinit=function(e){this.parser=e},e.prototype.onreset=function(){this.dom=[],this.root=new l.Document(this.dom),this.done=!1,this.tagStack=[this.root],this.lastNode=null,this.parser=null},e.prototype.onend=function(){this.done||(this.done=!0,this.parser=null,this.handleCallback(null))},e.prototype.onerror=function(e){this.handleCallback(e)},e.prototype.onclosetag=function(){this.lastNode=null;var e=this.tagStack.pop();this.options.withEndIndices&&(e.endIndex=this.parser.endIndex),this.elementCB&&this.elementCB(e)},e.prototype.onopentag=function(e,t){var n=this.options.xmlMode?i.ElementType.Tag:void 0,r=new l.Element(e,t,void 0,n);this.addNode(r),this.tagStack.push(r)},e.prototype.ontext=function(e){var t=this.lastNode;if(t&&t.type===i.ElementType.Text)t.data+=e,this.options.withEndIndices&&(t.endIndex=this.parser.endIndex);else{var n=new l.Text(e);this.addNode(n),this.lastNode=n}},e.prototype.oncomment=function(e){if(this.lastNode&&this.lastNode.type===i.ElementType.Comment)this.lastNode.data+=e;else{var t=new l.Comment(e);this.addNode(t),this.lastNode=t}},e.prototype.oncommentend=function(){this.lastNode=null},e.prototype.oncdatastart=function(){var e=new l.Text(""),t=new l.CDATA([e]);this.addNode(t),e.parent=t,this.lastNode=e},e.prototype.oncdataend=function(){this.lastNode=null},e.prototype.onprocessinginstruction=function(e,t){var n=new l.ProcessingInstruction(e,t);this.addNode(n)},e.prototype.handleCallback=function(e){if("function"==typeof this.callback)this.callback(e,this.dom);else if(e)throw e},e.prototype.addNode=function(e){var t=this.tagStack[this.tagStack.length-1],n=t.children[t.children.length-1];this.options.withStartIndices&&(e.startIndex=this.parser.startIndex),this.options.withEndIndices&&(e.endIndex=this.parser.endIndex),t.children.push(e),n&&(e.prev=n,n.next=e),e.parent=t,this.lastNode=null},e}();t.DomHandler=s,t.default=s},6957:function(e,t,n){"use strict";var r,o=this&&this.__extends||(r=function(e,t){return r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},r(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function __(){this.constructor=e}r(e,t),e.prototype=null===t?Object.create(t):(__.prototype=t.prototype,new __)}),i=this&&this.__assign||function(){return i=Object.assign||function(e){for(var t,n=1,r=arguments.length;n0?this.children[this.children.length-1]:null},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"childNodes",{get:function(){return this.children},set:function(e){this.children=e},enumerable:!1,configurable:!0}),t}(a);t.NodeWithChildren=f;var p=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.type=l.ElementType.CDATA,t}return o(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 4},enumerable:!1,configurable:!0}),t}(f);t.CDATA=p;var h=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.type=l.ElementType.Root,t}return o(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 9},enumerable:!1,configurable:!0}),t}(f);t.Document=h;var m=function(e){function t(t,n,r,o){void 0===r&&(r=[]),void 0===o&&(o="script"===t?l.ElementType.Script:"style"===t?l.ElementType.Style:l.ElementType.Tag);var i=e.call(this,r)||this;return i.name=t,i.attribs=n,i.type=o,i}return o(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 1},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"tagName",{get:function(){return this.name},set:function(e){this.name=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"attributes",{get:function(){var e=this;return Object.keys(this.attribs).map((function(t){var n,r;return{name:t,value:e.attribs[t],namespace:null===(n=e["x-attribsNamespace"])||void 0===n?void 0:n[t],prefix:null===(r=e["x-attribsPrefix"])||void 0===r?void 0:r[t]}}))},enumerable:!1,configurable:!0}),t}(f);function y(e){return(0,l.isTag)(e)}function v(e){return e.type===l.ElementType.CDATA}function g(e){return e.type===l.ElementType.Text}function b(e){return e.type===l.ElementType.Comment}function w(e){return e.type===l.ElementType.Directive}function x(e){return e.type===l.ElementType.Root}function E(e,t){var n;if(void 0===t&&(t=!1),g(e))n=new c(e.data);else if(b(e))n=new u(e.data);else if(y(e)){var r=t?_(e.children):[],o=new m(e.name,i({},e.attribs),r);r.forEach((function(e){return e.parent=o})),null!=e.namespace&&(o.namespace=e.namespace),e["x-attribsNamespace"]&&(o["x-attribsNamespace"]=i({},e["x-attribsNamespace"])),e["x-attribsPrefix"]&&(o["x-attribsPrefix"]=i({},e["x-attribsPrefix"])),n=o}else if(v(e)){r=t?_(e.children):[];var l=new p(r);r.forEach((function(e){return e.parent=l})),n=l}else if(x(e)){r=t?_(e.children):[];var a=new h(r);r.forEach((function(e){return e.parent=a})),e["x-mode"]&&(a["x-mode"]=e["x-mode"]),n=a}else{if(!w(e))throw new Error("Not implemented yet: ".concat(e.type));var s=new d(e.name,e.data);null!=e["x-name"]&&(s["x-name"]=e["x-name"],s["x-publicId"]=e["x-publicId"],s["x-systemId"]=e["x-systemId"]),n=s}return n.startIndex=e.startIndex,n.endIndex=e.endIndex,null!=e.sourceCodeLocation&&(n.sourceCodeLocation=e.sourceCodeLocation),n}function _(e){for(var t=e.map((function(e){return E(e,!0)})),n=1;n{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CASE_SENSITIVE_TAG_NAMES_MAP=t.CASE_SENSITIVE_TAG_NAMES=void 0,t.CASE_SENSITIVE_TAG_NAMES=["animateMotion","animateTransform","clipPath","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","foreignObject","linearGradient","radialGradient","textPath"],t.CASE_SENSITIVE_TAG_NAMES_MAP=t.CASE_SENSITIVE_TAG_NAMES.reduce((function(e,t){return e[t.toLowerCase()]=t,e}),{})},5496:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){var t,u,d=e.match(i),f=d&&d[1]?d[1].toLowerCase():"";switch(f){case n:var h=c(e);return l.test(e)||null===(t=null==(y=h.querySelector(r))?void 0:y.parentNode)||void 0===t||t.removeChild(y),a.test(e)||null===(u=null==(y=h.querySelector(o))?void 0:y.parentNode)||void 0===u||u.removeChild(y),h.querySelectorAll(n);case r:case o:var m=s(e).querySelectorAll(f);return a.test(e)&&l.test(e)?m[0].parentNode.childNodes:m;default:return p?p(e):(y=s(e,o).querySelector(o)).childNodes;var y}};var n="html",r="head",o="body",i=/<([a-zA-Z]+[0-9]?)/,l=//i,a=//i,s=function(e,t){throw new Error("This browser does not support `document.implementation.createHTMLDocument`")},c=function(e,t){throw new Error("This browser does not support `DOMParser.prototype.parseFromString`")},u="object"==typeof window&&window.DOMParser;if("function"==typeof u){var d=new u;s=c=function(e,t){return t&&(e="<".concat(t,">").concat(e,"")),d.parseFromString(e,"text/html")}}if("object"==typeof document&&document.implementation){var f=document.implementation.createHTMLDocument();s=function(e,t){if(t){var n=f.documentElement.querySelector(t);return n&&(n.innerHTML=e),f}return f.documentElement.innerHTML=e,f}}var p,h="object"==typeof document&&document.createElement("template");h&&h.content&&(p=function(e){return h.innerHTML=e,h.content.childNodes})},2471:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){if("string"!=typeof e)throw new TypeError("First argument must be a string");if(!e)return[];var t=e.match(l),n=t?t[1]:void 0;return(0,i.formatDOM)((0,o.default)(e),null,n)};var o=r(n(5496)),i=n(7731),l=/<(![a-zA-Z\s]+)>/},7731:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.formatAttributes=i,t.formatDOM=function e(t,n,o){void 0===n&&(n=null);for(var a,s=[],c=0,u=t.length;c{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){void 0===e&&(e={});var n={},c=Boolean(e.type&&a[e.type]);for(var u in e){var d=e[u];if((0,r.isCustomAttribute)(u))n[u]=d;else{var f=u.toLowerCase(),p=s(f);if(p){var h=(0,r.getPropertyInfo)(p);switch(i.includes(p)&&l.includes(t)&&!c&&(p=s("default"+f)),n[p]=d,h&&h.type){case r.BOOLEAN:n[p]=!0;break;case r.OVERLOADED_BOOLEAN:""===d&&(n[p]=!0)}}else o.PRESERVE_CUSTOM_ATTRIBUTES&&(n[u]=d)}}return(0,o.setStyleProp)(e.style,n),n};var r=n(4210),o=n(4958),i=["checked","value"],l=["input","select","textarea"],a={reset:!0,submit:!0};function s(e){return r.possibleStandardNames[e]}},308:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t,n){void 0===n&&(n={});for(var r=[],o="function"==typeof n.replace,c=n.transform||l.returnFirstArg,u=n.library||a,d=u.cloneElement,f=u.createElement,p=u.isValidElement,h=t.length,m=0;m1&&(v=d(v,{key:v.key||m})),r.push(c(v,y,m));continue}}if("text"!==y.type){var g=y,b={};s(g)?((0,l.setStyleProp)(g.attribs.style,g.attribs),b=g.attribs):g.attribs&&(b=(0,i.default)(g.attribs,g.name));var w=void 0;switch(y.type){case"script":case"style":y.children[0]&&(b.dangerouslySetInnerHTML={__html:y.children[0].data});break;case"tag":"textarea"===y.name&&y.children[0]?b.defaultValue=y.children[0].data:y.children&&y.children.length&&(w=e(y.children,n));break;default:continue}h>1&&(b.key=m),r.push(c(f(y.name,b,w),y,m))}else{var x=!y.data.trim().length;if(x&&y.parent&&!(0,l.canTextBeChildOfNode)(y.parent))continue;if(n.trim&&x)continue;r.push(c(y.data,y,m))}}return 1===r.length?r[0]:r};var o=n(1609),i=r(n(840)),l=n(4958),a={cloneElement:o.cloneElement,createElement:o.createElement,isValidElement:o.isValidElement};function s(e){return l.PRESERVE_CUSTOM_ATTRIBUTES&&"tag"===e.type&&(0,l.isCustomComponent)(e.name,e.attribs)}},442:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.htmlToDOM=t.domToReact=t.attributesToProps=t.Text=t.ProcessingInstruction=t.Element=t.Comment=void 0,t.default=function(e,t){if("string"!=typeof e)throw new TypeError("First argument must be a string");return e?(0,l.default)((0,o.default)(e,(null==t?void 0:t.htmlparser2)||s),t):[]};var o=r(n(2471));t.htmlToDOM=o.default;var i=r(n(840));t.attributesToProps=i.default;var l=r(n(308));t.domToReact=l.default;var a=n(1141);Object.defineProperty(t,"Comment",{enumerable:!0,get:function(){return a.Comment}}),Object.defineProperty(t,"Element",{enumerable:!0,get:function(){return a.Element}}),Object.defineProperty(t,"ProcessingInstruction",{enumerable:!0,get:function(){return a.ProcessingInstruction}}),Object.defineProperty(t,"Text",{enumerable:!0,get:function(){return a.Text}});var s={lowerCaseAttributeNames:!1}},4958:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.returnFirstArg=t.canTextBeChildOfNode=t.ELEMENTS_WITH_NO_TEXT_CHILDREN=t.PRESERVE_CUSTOM_ATTRIBUTES=void 0,t.isCustomComponent=function(e,t){return e.includes("-")?!l.has(e):Boolean(t&&"string"==typeof t.is)},t.setStyleProp=function(e,t){if("string"==typeof e)if(e.trim())try{t.style=(0,i.default)(e,a)}catch(e){t.style={}}else t.style={}};var o=n(1609),i=r(n(5229)),l=new Set(["annotation-xml","color-profile","font-face","font-face-src","font-face-uri","font-face-format","font-face-name","missing-glyph"]),a={reactCompat:!0};t.PRESERVE_CUSTOM_ATTRIBUTES=Number(o.version.split(".")[0])>=16,t.ELEMENTS_WITH_NO_TEXT_CHILDREN=new Set(["tr","tbody","thead","tfoot","colgroup","table","head","html","frameset"]),t.canTextBeChildOfNode=function(e){return!t.ELEMENTS_WITH_NO_TEXT_CHILDREN.has(e.name)},t.returnFirstArg=function(e){return e}},9788:e=>{var t=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,n=/\n/g,r=/^\s*/,o=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,i=/^:\s*/,l=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,a=/^[;\s]*/,s=/^\s+|\s+$/g,c="";function u(e){return e?e.replace(s,c):c}e.exports=function(e,s){if("string"!=typeof e)throw new TypeError("First argument must be a string");if(!e)return[];s=s||{};var d=1,f=1;function p(e){var t=e.match(n);t&&(d+=t.length);var r=e.lastIndexOf("\n");f=~r?e.length-r:f+e.length}function h(){var e={line:d,column:f};return function(t){return t.position=new m(e),b(),t}}function m(e){this.start=e,this.end={line:d,column:f},this.source=s.source}m.prototype.content=e;var y=[];function v(t){var n=new Error(s.source+":"+d+":"+f+": "+t);if(n.reason=t,n.filename=s.source,n.line=d,n.column=f,n.source=e,!s.silent)throw n;y.push(n)}function g(t){var n=t.exec(e);if(n){var r=n[0];return p(r),e=e.slice(r.length),n}}function b(){g(r)}function w(e){var t;for(e=e||[];t=x();)!1!==t&&e.push(t);return e}function x(){var t=h();if("/"==e.charAt(0)&&"*"==e.charAt(1)){for(var n=2;c!=e.charAt(n)&&("*"!=e.charAt(n)||"/"!=e.charAt(n+1));)++n;if(n+=2,c===e.charAt(n-1))return v("End of comment missing");var r=e.slice(2,n-2);return f+=2,p(r),e=e.slice(n),f+=2,t({type:"comment",comment:r})}}function E(){var e=h(),n=g(o);if(n){if(x(),!g(i))return v("property missing ':'");var r=g(l),s=e({type:"declaration",property:u(n[0].replace(t,c)),value:r?u(r[0].replace(t,c)):c});return g(a),s}}return b(),function(){var e,t=[];for(w(t);e=E();)!1!==e&&(t.push(e),w(t));return t}()}},4210:(e,t,n)=>{"use strict";function r(e,t,n,r,o,i,l){this.acceptsBooleans=2===t||3===t||4===t,this.attributeName=r,this.attributeNamespace=o,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=i,this.removeEmptyString=l}const o={};["children","dangerouslySetInnerHTML","defaultValue","defaultChecked","innerHTML","suppressContentEditableWarning","suppressHydrationWarning","style"].forEach((e=>{o[e]=new r(e,0,!1,e,null,!1,!1)})),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach((([e,t])=>{o[e]=new r(e,1,!1,t,null,!1,!1)})),["contentEditable","draggable","spellCheck","value"].forEach((e=>{o[e]=new r(e,2,!1,e.toLowerCase(),null,!1,!1)})),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach((e=>{o[e]=new r(e,2,!1,e,null,!1,!1)})),["allowFullScreen","async","autoFocus","autoPlay","controls","default","defer","disabled","disablePictureInPicture","disableRemotePlayback","formNoValidate","hidden","loop","noModule","noValidate","open","playsInline","readOnly","required","reversed","scoped","seamless","itemScope"].forEach((e=>{o[e]=new r(e,3,!1,e.toLowerCase(),null,!1,!1)})),["checked","multiple","muted","selected"].forEach((e=>{o[e]=new r(e,3,!0,e,null,!1,!1)})),["capture","download"].forEach((e=>{o[e]=new r(e,4,!1,e,null,!1,!1)})),["cols","rows","size","span"].forEach((e=>{o[e]=new r(e,6,!1,e,null,!1,!1)})),["rowSpan","start"].forEach((e=>{o[e]=new r(e,5,!1,e.toLowerCase(),null,!1,!1)}));const i=/[\-\:]([a-z])/g,l=e=>e[1].toUpperCase();["accent-height","alignment-baseline","arabic-form","baseline-shift","cap-height","clip-path","clip-rule","color-interpolation","color-interpolation-filters","color-profile","color-rendering","dominant-baseline","enable-background","fill-opacity","fill-rule","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","glyph-name","glyph-orientation-horizontal","glyph-orientation-vertical","horiz-adv-x","horiz-origin-x","image-rendering","letter-spacing","lighting-color","marker-end","marker-mid","marker-start","overline-position","overline-thickness","paint-order","panose-1","pointer-events","rendering-intent","shape-rendering","stop-color","stop-opacity","strikethrough-position","strikethrough-thickness","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","text-anchor","text-decoration","text-rendering","underline-position","underline-thickness","unicode-bidi","unicode-range","units-per-em","v-alphabetic","v-hanging","v-ideographic","v-mathematical","vector-effect","vert-adv-y","vert-origin-x","vert-origin-y","word-spacing","writing-mode","xmlns:xlink","x-height"].forEach((e=>{const t=e.replace(i,l);o[t]=new r(t,1,!1,e,null,!1,!1)})),["xlink:actuate","xlink:arcrole","xlink:role","xlink:show","xlink:title","xlink:type"].forEach((e=>{const t=e.replace(i,l);o[t]=new r(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)})),["xml:base","xml:lang","xml:space"].forEach((e=>{const t=e.replace(i,l);o[t]=new r(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)})),["tabIndex","crossOrigin"].forEach((e=>{o[e]=new r(e,1,!1,e.toLowerCase(),null,!1,!1)})),o.xlinkHref=new r("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach((e=>{o[e]=new r(e,1,!1,e.toLowerCase(),null,!0,!0)}));const{CAMELCASE:a,SAME:s,possibleStandardNames:c}=n(6811),u=RegExp.prototype.test.bind(new RegExp("^(data|aria)-[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$")),d=Object.keys(c).reduce(((e,t)=>{const n=c[t];return n===s?e[t]=t:n===a?e[t.toLowerCase()]=t:e[t]=n,e}),{});t.BOOLEAN=3,t.BOOLEANISH_STRING=2,t.NUMERIC=5,t.OVERLOADED_BOOLEAN=4,t.POSITIVE_NUMERIC=6,t.RESERVED=0,t.STRING=1,t.getPropertyInfo=function(e){return o.hasOwnProperty(e)?o[e]:null},t.isCustomAttribute=u,t.possibleStandardNames=d},6811:(e,t)=>{t.SAME=0,t.CAMELCASE=1,t.possibleStandardNames={accept:0,acceptCharset:1,"accept-charset":"acceptCharset",accessKey:1,action:0,allowFullScreen:1,alt:0,as:0,async:0,autoCapitalize:1,autoComplete:1,autoCorrect:1,autoFocus:1,autoPlay:1,autoSave:1,capture:0,cellPadding:1,cellSpacing:1,challenge:0,charSet:1,checked:0,children:0,cite:0,class:"className",classID:1,className:1,cols:0,colSpan:1,content:0,contentEditable:1,contextMenu:1,controls:0,controlsList:1,coords:0,crossOrigin:1,dangerouslySetInnerHTML:1,data:0,dateTime:1,default:0,defaultChecked:1,defaultValue:1,defer:0,dir:0,disabled:0,disablePictureInPicture:1,disableRemotePlayback:1,download:0,draggable:0,encType:1,enterKeyHint:1,for:"htmlFor",form:0,formMethod:1,formAction:1,formEncType:1,formNoValidate:1,formTarget:1,frameBorder:1,headers:0,height:0,hidden:0,high:0,href:0,hrefLang:1,htmlFor:1,httpEquiv:1,"http-equiv":"httpEquiv",icon:0,id:0,innerHTML:1,inputMode:1,integrity:0,is:0,itemID:1,itemProp:1,itemRef:1,itemScope:1,itemType:1,keyParams:1,keyType:1,kind:0,label:0,lang:0,list:0,loop:0,low:0,manifest:0,marginWidth:1,marginHeight:1,max:0,maxLength:1,media:0,mediaGroup:1,method:0,min:0,minLength:1,multiple:0,muted:0,name:0,noModule:1,nonce:0,noValidate:1,open:0,optimum:0,pattern:0,placeholder:0,playsInline:1,poster:0,preload:0,profile:0,radioGroup:1,readOnly:1,referrerPolicy:1,rel:0,required:0,reversed:0,role:0,rows:0,rowSpan:1,sandbox:0,scope:0,scoped:0,scrolling:0,seamless:0,selected:0,shape:0,size:0,sizes:0,span:0,spellCheck:1,src:0,srcDoc:1,srcLang:1,srcSet:1,start:0,step:0,style:0,summary:0,tabIndex:1,target:0,title:0,type:0,useMap:1,value:0,width:0,wmode:0,wrap:0,about:0,accentHeight:1,"accent-height":"accentHeight",accumulate:0,additive:0,alignmentBaseline:1,"alignment-baseline":"alignmentBaseline",allowReorder:1,alphabetic:0,amplitude:0,arabicForm:1,"arabic-form":"arabicForm",ascent:0,attributeName:1,attributeType:1,autoReverse:1,azimuth:0,baseFrequency:1,baselineShift:1,"baseline-shift":"baselineShift",baseProfile:1,bbox:0,begin:0,bias:0,by:0,calcMode:1,capHeight:1,"cap-height":"capHeight",clip:0,clipPath:1,"clip-path":"clipPath",clipPathUnits:1,clipRule:1,"clip-rule":"clipRule",color:0,colorInterpolation:1,"color-interpolation":"colorInterpolation",colorInterpolationFilters:1,"color-interpolation-filters":"colorInterpolationFilters",colorProfile:1,"color-profile":"colorProfile",colorRendering:1,"color-rendering":"colorRendering",contentScriptType:1,contentStyleType:1,cursor:0,cx:0,cy:0,d:0,datatype:0,decelerate:0,descent:0,diffuseConstant:1,direction:0,display:0,divisor:0,dominantBaseline:1,"dominant-baseline":"dominantBaseline",dur:0,dx:0,dy:0,edgeMode:1,elevation:0,enableBackground:1,"enable-background":"enableBackground",end:0,exponent:0,externalResourcesRequired:1,fill:0,fillOpacity:1,"fill-opacity":"fillOpacity",fillRule:1,"fill-rule":"fillRule",filter:0,filterRes:1,filterUnits:1,floodOpacity:1,"flood-opacity":"floodOpacity",floodColor:1,"flood-color":"floodColor",focusable:0,fontFamily:1,"font-family":"fontFamily",fontSize:1,"font-size":"fontSize",fontSizeAdjust:1,"font-size-adjust":"fontSizeAdjust",fontStretch:1,"font-stretch":"fontStretch",fontStyle:1,"font-style":"fontStyle",fontVariant:1,"font-variant":"fontVariant",fontWeight:1,"font-weight":"fontWeight",format:0,from:0,fx:0,fy:0,g1:0,g2:0,glyphName:1,"glyph-name":"glyphName",glyphOrientationHorizontal:1,"glyph-orientation-horizontal":"glyphOrientationHorizontal",glyphOrientationVertical:1,"glyph-orientation-vertical":"glyphOrientationVertical",glyphRef:1,gradientTransform:1,gradientUnits:1,hanging:0,horizAdvX:1,"horiz-adv-x":"horizAdvX",horizOriginX:1,"horiz-origin-x":"horizOriginX",ideographic:0,imageRendering:1,"image-rendering":"imageRendering",in2:0,in:0,inlist:0,intercept:0,k1:0,k2:0,k3:0,k4:0,k:0,kernelMatrix:1,kernelUnitLength:1,kerning:0,keyPoints:1,keySplines:1,keyTimes:1,lengthAdjust:1,letterSpacing:1,"letter-spacing":"letterSpacing",lightingColor:1,"lighting-color":"lightingColor",limitingConeAngle:1,local:0,markerEnd:1,"marker-end":"markerEnd",markerHeight:1,markerMid:1,"marker-mid":"markerMid",markerStart:1,"marker-start":"markerStart",markerUnits:1,markerWidth:1,mask:0,maskContentUnits:1,maskUnits:1,mathematical:0,mode:0,numOctaves:1,offset:0,opacity:0,operator:0,order:0,orient:0,orientation:0,origin:0,overflow:0,overlinePosition:1,"overline-position":"overlinePosition",overlineThickness:1,"overline-thickness":"overlineThickness",paintOrder:1,"paint-order":"paintOrder",panose1:0,"panose-1":"panose1",pathLength:1,patternContentUnits:1,patternTransform:1,patternUnits:1,pointerEvents:1,"pointer-events":"pointerEvents",points:0,pointsAtX:1,pointsAtY:1,pointsAtZ:1,prefix:0,preserveAlpha:1,preserveAspectRatio:1,primitiveUnits:1,property:0,r:0,radius:0,refX:1,refY:1,renderingIntent:1,"rendering-intent":"renderingIntent",repeatCount:1,repeatDur:1,requiredExtensions:1,requiredFeatures:1,resource:0,restart:0,result:0,results:0,rotate:0,rx:0,ry:0,scale:0,security:0,seed:0,shapeRendering:1,"shape-rendering":"shapeRendering",slope:0,spacing:0,specularConstant:1,specularExponent:1,speed:0,spreadMethod:1,startOffset:1,stdDeviation:1,stemh:0,stemv:0,stitchTiles:1,stopColor:1,"stop-color":"stopColor",stopOpacity:1,"stop-opacity":"stopOpacity",strikethroughPosition:1,"strikethrough-position":"strikethroughPosition",strikethroughThickness:1,"strikethrough-thickness":"strikethroughThickness",string:0,stroke:0,strokeDasharray:1,"stroke-dasharray":"strokeDasharray",strokeDashoffset:1,"stroke-dashoffset":"strokeDashoffset",strokeLinecap:1,"stroke-linecap":"strokeLinecap",strokeLinejoin:1,"stroke-linejoin":"strokeLinejoin",strokeMiterlimit:1,"stroke-miterlimit":"strokeMiterlimit",strokeWidth:1,"stroke-width":"strokeWidth",strokeOpacity:1,"stroke-opacity":"strokeOpacity",suppressContentEditableWarning:1,suppressHydrationWarning:1,surfaceScale:1,systemLanguage:1,tableValues:1,targetX:1,targetY:1,textAnchor:1,"text-anchor":"textAnchor",textDecoration:1,"text-decoration":"textDecoration",textLength:1,textRendering:1,"text-rendering":"textRendering",to:0,transform:0,typeof:0,u1:0,u2:0,underlinePosition:1,"underline-position":"underlinePosition",underlineThickness:1,"underline-thickness":"underlineThickness",unicode:0,unicodeBidi:1,"unicode-bidi":"unicodeBidi",unicodeRange:1,"unicode-range":"unicodeRange",unitsPerEm:1,"units-per-em":"unitsPerEm",unselectable:0,vAlphabetic:1,"v-alphabetic":"vAlphabetic",values:0,vectorEffect:1,"vector-effect":"vectorEffect",version:0,vertAdvY:1,"vert-adv-y":"vertAdvY",vertOriginX:1,"vert-origin-x":"vertOriginX",vertOriginY:1,"vert-origin-y":"vertOriginY",vHanging:1,"v-hanging":"vHanging",vIdeographic:1,"v-ideographic":"vIdeographic",viewBox:1,viewTarget:1,visibility:0,vMathematical:1,"v-mathematical":"vMathematical",vocab:0,widths:0,wordSpacing:1,"word-spacing":"wordSpacing",writingMode:1,"writing-mode":"writingMode",x1:0,x2:0,x:0,xChannelSelector:1,xHeight:1,"x-height":"xHeight",xlinkActuate:1,"xlink:actuate":"xlinkActuate",xlinkArcrole:1,"xlink:arcrole":"xlinkArcrole",xlinkHref:1,"xlink:href":"xlinkHref",xlinkRole:1,"xlink:role":"xlinkRole",xlinkShow:1,"xlink:show":"xlinkShow",xlinkTitle:1,"xlink:title":"xlinkTitle",xlinkType:1,"xlink:type":"xlinkType",xmlBase:1,"xml:base":"xmlBase",xmlLang:1,"xml:lang":"xmlLang",xmlns:0,"xml:space":"xmlSpace",xmlnsXlink:1,"xmlns:xlink":"xmlnsXlink",xmlSpace:1,y1:0,y2:0,y:0,yChannelSelector:1,z:0,zoomAndPan:1}},5229:function(e,t,n){"use strict";var r=(this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}})(n(1133)),o=n(8917);function i(e,t){var n={};return e&&"string"==typeof e?((0,r.default)(e,(function(e,r){e&&r&&(n[(0,o.camelCase)(e,t)]=r)})),n):n}i.default=i,e.exports=i},8917:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.camelCase=void 0;var n=/^--[a-zA-Z0-9-]+$/,r=/-([a-z])/g,o=/^[^-]+$/,i=/^-(webkit|moz|ms|o|khtml)-/,l=/^-(ms)-/,a=function(e,t){return t.toUpperCase()},s=function(e,t){return"".concat(t,"-")};t.camelCase=function(e,t){return void 0===t&&(t={}),function(e){return!e||o.test(e)||n.test(e)}(e)?e:(e=e.toLowerCase(),(e=t.reactCompat?e.replace(l,s):e.replace(i,s)).replace(r,a))}},1133:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=r(n(9788));t.default=function(e,t){var n=null;if(!e||"string"!=typeof e)return n;var r=(0,o.default)(e),i="function"==typeof t;return r.forEach((function(e){if("declaration"===e.type){var r=e.property,o=e.value;i?t(r,o,e):o&&((n=n||{})[r]=o)}})),n}},1609:e=>{"use strict";e.exports=window.React},6942:(e,t)=>{var n;!function(){"use strict";var r={}.hasOwnProperty;function o(){for(var e="",t=0;t{var t=e&&e.__esModule?()=>e.default:()=>e;return l.d(t,{a:t}),t},t=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,l.t=function(n,r){if(1&r&&(n=this(n)),8&r)return n;if("object"==typeof n&&n){if(4&r&&n.__esModule)return n;if(16&r&&"function"==typeof n.then)return n}var o=Object.create(null);l.r(o);var i={};e=e||[null,t({}),t([]),t(t)];for(var a=2&r&&n;"object"==typeof a&&!~e.indexOf(a);a=t(a))Object.getOwnPropertyNames(a).forEach((e=>i[e]=()=>n[e]));return i.default=()=>n,l.d(o,i),o},l.d=(e,t)=>{for(var n in t)l.o(t,n)&&!l.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},l.f={},l.e=e=>Promise.all(Object.keys(l.f).reduce(((t,n)=>(l.f[n](e,t),t)),[])),l.u=e=>e+".js?v="+{272:"7b6373c512f3bb5eb044",481:"a968101984c679f26a2a",535:"c63b5b1be20bab84ea05",980:"1fbfc3d3cbdb36085f75"}[e],l.miniCssF=e=>e+".css",l.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),l.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n={},r="gatherpress:",l.l=(e,t,o,i)=>{if(n[e])n[e].push(t);else{var a,s;if(void 0!==o)for(var c=document.getElementsByTagName("script"),u=0;u{a.onerror=a.onload=null,clearTimeout(p);var o=n[e];if(delete n[e],a.parentNode&&a.parentNode.removeChild(a),o&&o.forEach((e=>e(r))),t)return t(r)},p=setTimeout(f.bind(null,void 0,{type:"timeout",target:a}),12e4);a.onerror=f.bind(null,a.onerror),a.onload=f.bind(null,a.onload),s&&document.head.appendChild(a)}},l.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{var e;l.g.importScripts&&(e=l.g.location+"");var t=l.g.document;if(!e&&t&&(t.currentScript&&"SCRIPT"===t.currentScript.tagName.toUpperCase()&&(e=t.currentScript.src),!e)){var n=t.getElementsByTagName("script");if(n.length)for(var r=n.length-1;r>-1&&(!e||!/^http(s?):/.test(e));)e=n[r--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),l.p=e+"../../"})(),(()=>{if("undefined"!=typeof document){var e={233:0};l.f.miniCss=(t,n)=>{e[t]?n.push(e[t]):0!==e[t]&&{535:1}[t]&&n.push(e[t]=(e=>new Promise(((t,n)=>{var r=l.miniCssF(e),o=l.p+r;if(((e,t)=>{for(var n=document.getElementsByTagName("link"),r=0;r{var i=document.createElement("link");i.rel="stylesheet",i.type="text/css",l.nc&&(i.nonce=l.nc),i.onerror=i.onload=n=>{if(i.onerror=i.onload=null,"load"===n.type)r();else{var l=n&&n.type,a=n&&n.target&&n.target.href||t,s=new Error("Loading CSS chunk "+e+" failed.\n("+l+": "+a+")");s.name="ChunkLoadError",s.code="CSS_CHUNK_LOAD_FAILED",s.type=l,s.request=a,i.parentNode&&i.parentNode.removeChild(i),o(s)}},i.href=t,document.head.appendChild(i)})(e,o,0,t,n)})))(t).then((()=>{e[t]=0}),(n=>{throw delete e[t],n})))}}})(),(()=>{var e={233:0};l.f.j=(t,n)=>{var r=l.o(e,t)?e[t]:void 0;if(0!==r)if(r)n.push(r[2]);else{var o=new Promise(((n,o)=>r=e[t]=[n,o]));n.push(r[2]=o);var i=l.p+l.u(t),a=new Error;l.l(i,(n=>{if(l.o(e,t)&&(0!==(r=e[t])&&(e[t]=void 0),r)){var o=n&&("load"===n.type?"missing":n.type),i=n&&n.target&&n.target.src;a.message="Loading chunk "+t+" failed.\n("+o+": "+i+")",a.name="ChunkLoadError",a.type=o,a.request=i,r[1](a)}}),"chunk-"+t,t)}};var t=(t,n)=>{var r,o,i=n[0],a=n[1],s=n[2],c=0;if(i.some((t=>0!==e[t]))){for(r in a)l.o(a,r)&&(l.m[r]=a[r]);s&&s(l)}for(t&&t(n);c{"use strict";const e=window.wp.domReady;var t=l.n(e);const n=window.wp.element,r=window.wp.data,o=window.ReactJSXRuntime,i=e=>{const{zoom:t,type:n,className:r,location:i,height:l}=e,a={border:0,height:l,width:"100%"},s="https://maps.google.com/maps?"+new URLSearchParams({q:i,z:t||10,t:n||"m",output:"embed"}).toString();return(0,o.jsx)("iframe",{src:s,style:a,className:r,title:i})},a=window.wp.i18n;function s(e){if("object"==typeof GatherPress)return e.split(".").reduce(((e,t)=>e&&e[t]),GatherPress)}const c=e=>{const{zoom:t=10,className:r,location:i,height:c=300,latitude:u,longitude:d}=e,[f,p]=(0,n.useState)(null),h={height:c};return(0,n.useEffect)((()=>{(async()=>{const{default:e}=await l.e(481).then(l.t.bind(l,3481,23));await l.e(535).then(l.bind(l,1535)),await l.e(272).then(l.t.bind(l,1272,17)),await l.e(980).then(l.t.bind(l,8980,17)),p(e)})()}),[]),(0,n.useEffect)((()=>{if(!f||!u||!d)return;const e=f.map("map").setView([u,d],t);return f.Icon.Default.imagePath=s("urls.pluginUrl")+"build/images/",f.tileLayer("https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png",{attribution:(0,a.sprintf)(/* translators: %s: Link to OpenStreetMap contributors. */ /* translators: %s: Link to OpenStreetMap contributors. */ +(0,a.__)("© %s contributors","gatherpress"),'OpenStreetMap')}).addTo(e),f.marker([u,d]).addTo(e).bindPopup(i),()=>{e.remove()}}),[f,u,i,d,t]),f&&u&&d?(0,o.jsx)("div",{className:r,id:"map",style:h}):null},u=e=>{const t=(0,r.select)("core")?.canUser("create","posts"),n=Boolean((0,r.select)("core/edit-post")),{zoom:l,type:a,className:u,latitude:d,longitude:f}=e;let{location:p,height:h}=e;h||(h=300),!t||n||p||(p="660 4th Street #119 San Francisco CA 94107, USA");const m=s("settings.mapPlatform");return p&&m?"google"===m?(0,o.jsx)(i,{location:p,className:u,zoom:l,type:a,height:h}):"osm"===m?(0,o.jsx)(c,{location:p,latitude:d,longitude:f,className:u,zoom:l,height:h}):(0,o.jsx)(o.Fragment,{}):(0,o.jsx)(o.Fragment,{})};var d=l(1609);const f=Math.min,p=Math.max,h=Math.round,m=Math.floor,y=e=>({x:e,y:e}),v={left:"right",right:"left",bottom:"top",top:"bottom"},g={start:"end",end:"start"};function b(e,t,n){return p(e,f(t,n))}function w(e,t){return"function"==typeof e?e(t):e}function x(e){return e.split("-")[0]}function E(e){return e.split("-")[1]}function _(e){return"x"===e?"y":"x"}function S(e){return"y"===e?"height":"width"}function T(e){return["top","bottom"].includes(x(e))?"y":"x"}function k(e){return _(T(e))}function A(e){return e.replace(/start|end/g,(e=>g[e]))}function O(e){return e.replace(/left|right|bottom|top/g,(e=>v[e]))}function C(e){return"number"!=typeof e?function(e){return{top:0,right:0,bottom:0,left:0,...e}}(e):{top:e,right:e,bottom:e,left:e}}function N(e){const{x:t,y:n,width:r,height:o}=e;return{width:r,height:o,top:n,left:t,right:t+r,bottom:n+o,x:t,y:n}}function R(e,t,n){let{reference:r,floating:o}=e;const i=T(t),l=k(t),a=S(l),s=x(t),c="y"===i,u=r.x+r.width/2-o.width/2,d=r.y+r.height/2-o.height/2,f=r[a]/2-o[a]/2;let p;switch(s){case"top":p={x:u,y:r.y-o.height};break;case"bottom":p={x:u,y:r.y+r.height};break;case"right":p={x:r.x+r.width,y:d};break;case"left":p={x:r.x-o.width,y:d};break;default:p={x:r.x,y:r.y}}switch(E(t)){case"start":p[l]-=f*(n&&c?-1:1);break;case"end":p[l]+=f*(n&&c?-1:1)}return p}async function L(e,t){var n;void 0===t&&(t={});const{x:r,y:o,platform:i,rects:l,elements:a,strategy:s}=e,{boundary:c="clippingAncestors",rootBoundary:u="viewport",elementContext:d="floating",altBoundary:f=!1,padding:p=0}=w(t,e),h=C(p),m=a[f?"floating"===d?"reference":"floating":d],y=N(await i.getClippingRect({element:null==(n=await(null==i.isElement?void 0:i.isElement(m)))||n?m:m.contextElement||await(null==i.getDocumentElement?void 0:i.getDocumentElement(a.floating)),boundary:c,rootBoundary:u,strategy:s})),v="floating"===d?{x:r,y:o,width:l.floating.width,height:l.floating.height}:l.reference,g=await(null==i.getOffsetParent?void 0:i.getOffsetParent(a.floating)),b=await(null==i.isElement?void 0:i.isElement(g))&&await(null==i.getScale?void 0:i.getScale(g))||{x:1,y:1},x=N(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:a,rect:v,offsetParent:g,strategy:s}):v);return{top:(y.top-x.top+h.top)/b.y,bottom:(x.bottom-y.bottom+h.bottom)/b.y,left:(y.left-x.left+h.left)/b.x,right:(x.right-y.right+h.right)/b.x}}function j(e){return D(e)?(e.nodeName||"").toLowerCase():"#document"}function P(e){var t;return(null==e||null==(t=e.ownerDocument)?void 0:t.defaultView)||window}function I(e){var t;return null==(t=(D(e)?e.ownerDocument:e.document)||window.document)?void 0:t.documentElement}function D(e){return e instanceof Node||e instanceof P(e).Node}function M(e){return e instanceof Element||e instanceof P(e).Element}function F(e){return e instanceof HTMLElement||e instanceof P(e).HTMLElement}function z(e){return"undefined"!=typeof ShadowRoot&&(e instanceof ShadowRoot||e instanceof P(e).ShadowRoot)}function B(e){const{overflow:t,overflowX:n,overflowY:r,display:o}=$(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&!["inline","contents"].includes(o)}function H(e){return["table","td","th"].includes(j(e))}function V(e){return[":popover-open",":modal"].some((t=>{try{return e.matches(t)}catch(e){return!1}}))}function q(e){const t=W(),n=M(e)?$(e):e;return"none"!==n.transform||"none"!==n.perspective||!!n.containerType&&"normal"!==n.containerType||!t&&!!n.backdropFilter&&"none"!==n.backdropFilter||!t&&!!n.filter&&"none"!==n.filter||["transform","perspective","filter"].some((e=>(n.willChange||"").includes(e)))||["paint","layout","strict","content"].some((e=>(n.contain||"").includes(e)))}function W(){return!("undefined"==typeof CSS||!CSS.supports)&&CSS.supports("-webkit-backdrop-filter","none")}function U(e){return["html","body","#document"].includes(j(e))}function $(e){return P(e).getComputedStyle(e)}function X(e){return M(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function G(e){if("html"===j(e))return e;const t=e.assignedSlot||e.parentNode||z(e)&&e.host||I(e);return z(t)?t.host:t}function K(e){const t=G(e);return U(t)?e.ownerDocument?e.ownerDocument.body:e.body:F(t)&&B(t)?t:K(t)}function Y(e,t,n){var r;void 0===t&&(t=[]),void 0===n&&(n=!0);const o=K(e),i=o===(null==(r=e.ownerDocument)?void 0:r.body),l=P(o);return i?t.concat(l,l.visualViewport||[],B(o)?o:[],l.frameElement&&n?Y(l.frameElement):[]):t.concat(o,Y(o,[],n))}function Z(e){const t=$(e);let n=parseFloat(t.width)||0,r=parseFloat(t.height)||0;const o=F(e),i=o?e.offsetWidth:n,l=o?e.offsetHeight:r,a=h(n)!==i||h(r)!==l;return a&&(n=i,r=l),{width:n,height:r,$:a}}function J(e){return M(e)?e:e.contextElement}function Q(e){const t=J(e);if(!F(t))return y(1);const n=t.getBoundingClientRect(),{width:r,height:o,$:i}=Z(t);let l=(i?h(n.width):n.width)/r,a=(i?h(n.height):n.height)/o;return l&&Number.isFinite(l)||(l=1),a&&Number.isFinite(a)||(a=1),{x:l,y:a}}const ee=y(0);function te(e){const t=P(e);return W()&&t.visualViewport?{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}:ee}function ne(e,t,n,r){void 0===t&&(t=!1),void 0===n&&(n=!1);const o=e.getBoundingClientRect(),i=J(e);let l=y(1);t&&(r?M(r)&&(l=Q(r)):l=Q(e));const a=function(e,t,n){return void 0===t&&(t=!1),!(!n||t&&n!==P(e))&&t}(i,n,r)?te(i):y(0);let s=(o.left+a.x)/l.x,c=(o.top+a.y)/l.y,u=o.width/l.x,d=o.height/l.y;if(i){const e=P(i),t=r&&M(r)?P(r):r;let n=e,o=n.frameElement;for(;o&&r&&t!==n;){const e=Q(o),t=o.getBoundingClientRect(),r=$(o),i=t.left+(o.clientLeft+parseFloat(r.paddingLeft))*e.x,l=t.top+(o.clientTop+parseFloat(r.paddingTop))*e.y;s*=e.x,c*=e.y,u*=e.x,d*=e.y,s+=i,c+=l,n=P(o),o=n.frameElement}}return N({width:u,height:d,x:s,y:c})}function re(e){return ne(I(e)).left+X(e).scrollLeft}function oe(e,t,n){let r;if("viewport"===t)r=function(e,t){const n=P(e),r=I(e),o=n.visualViewport;let i=r.clientWidth,l=r.clientHeight,a=0,s=0;if(o){i=o.width,l=o.height;const e=W();(!e||e&&"fixed"===t)&&(a=o.offsetLeft,s=o.offsetTop)}return{width:i,height:l,x:a,y:s}}(e,n);else if("document"===t)r=function(e){const t=I(e),n=X(e),r=e.ownerDocument.body,o=p(t.scrollWidth,t.clientWidth,r.scrollWidth,r.clientWidth),i=p(t.scrollHeight,t.clientHeight,r.scrollHeight,r.clientHeight);let l=-n.scrollLeft+re(e);const a=-n.scrollTop;return"rtl"===$(r).direction&&(l+=p(t.clientWidth,r.clientWidth)-o),{width:o,height:i,x:l,y:a}}(I(e));else if(M(t))r=function(e,t){const n=ne(e,!0,"fixed"===t),r=n.top+e.clientTop,o=n.left+e.clientLeft,i=F(e)?Q(e):y(1);return{width:e.clientWidth*i.x,height:e.clientHeight*i.y,x:o*i.x,y:r*i.y}}(t,n);else{const n=te(e);r={...t,x:t.x-n.x,y:t.y-n.y}}return N(r)}function ie(e,t){const n=G(e);return!(n===t||!M(n)||U(n))&&("fixed"===$(n).position||ie(n,t))}function le(e,t,n){const r=F(t),o=I(t),i="fixed"===n,l=ne(e,!0,i,t);let a={scrollLeft:0,scrollTop:0};const s=y(0);if(r||!r&&!i)if(("body"!==j(t)||B(o))&&(a=X(t)),r){const e=ne(t,!0,i,t);s.x=e.x+t.clientLeft,s.y=e.y+t.clientTop}else o&&(s.x=re(o));return{x:l.left+a.scrollLeft-s.x,y:l.top+a.scrollTop-s.y,width:l.width,height:l.height}}function ae(e){return"static"===$(e).position}function se(e,t){return F(e)&&"fixed"!==$(e).position?t?t(e):e.offsetParent:null}function ce(e,t){const n=P(e);if(V(e))return n;if(!F(e)){let t=G(e);for(;t&&!U(t);){if(M(t)&&!ae(t))return t;t=G(t)}return n}let r=se(e,t);for(;r&&H(r)&&ae(r);)r=se(r,t);return r&&U(r)&&ae(r)&&!q(r)?n:r||function(e){let t=G(e);for(;F(t)&&!U(t);){if(q(t))return t;if(V(t))return null;t=G(t)}return null}(e)||n}const ue={convertOffsetParentRelativeRectToViewportRelativeRect:function(e){let{elements:t,rect:n,offsetParent:r,strategy:o}=e;const i="fixed"===o,l=I(r),a=!!t&&V(t.floating);if(r===l||a&&i)return n;let s={scrollLeft:0,scrollTop:0},c=y(1);const u=y(0),d=F(r);if((d||!d&&!i)&&(("body"!==j(r)||B(l))&&(s=X(r)),F(r))){const e=ne(r);c=Q(r),u.x=e.x+r.clientLeft,u.y=e.y+r.clientTop}return{width:n.width*c.x,height:n.height*c.y,x:n.x*c.x-s.scrollLeft*c.x+u.x,y:n.y*c.y-s.scrollTop*c.y+u.y}},getDocumentElement:I,getClippingRect:function(e){let{element:t,boundary:n,rootBoundary:r,strategy:o}=e;const i=[..."clippingAncestors"===n?V(t)?[]:function(e,t){const n=t.get(e);if(n)return n;let r=Y(e,[],!1).filter((e=>M(e)&&"body"!==j(e))),o=null;const i="fixed"===$(e).position;let l=i?G(e):e;for(;M(l)&&!U(l);){const t=$(l),n=q(l);n||"fixed"!==t.position||(o=null),(i?!n&&!o:!n&&"static"===t.position&&o&&["absolute","fixed"].includes(o.position)||B(l)&&!n&&ie(e,l))?r=r.filter((e=>e!==l)):o=t,l=G(l)}return t.set(e,r),r}(t,this._c):[].concat(n),r],l=i[0],a=i.reduce(((e,n)=>{const r=oe(t,n,o);return e.top=p(r.top,e.top),e.right=f(r.right,e.right),e.bottom=f(r.bottom,e.bottom),e.left=p(r.left,e.left),e}),oe(t,l,o));return{width:a.right-a.left,height:a.bottom-a.top,x:a.left,y:a.top}},getOffsetParent:ce,getElementRects:async function(e){const t=this.getOffsetParent||ce,n=this.getDimensions,r=await n(e.floating);return{reference:le(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}},getClientRects:function(e){return Array.from(e.getClientRects())},getDimensions:function(e){const{width:t,height:n}=Z(e);return{width:t,height:n}},getScale:Q,isElement:M,isRTL:function(e){return"rtl"===$(e).direction}};const de=function(e){return void 0===e&&(e=0),{name:"offset",options:e,async fn(t){var n,r;const{x:o,y:i,placement:l,middlewareData:a}=t,s=await async function(e,t){const{placement:n,platform:r,elements:o}=e,i=await(null==r.isRTL?void 0:r.isRTL(o.floating)),l=x(n),a=E(n),s="y"===T(n),c=["left","top"].includes(l)?-1:1,u=i&&s?-1:1,d=w(t,e);let{mainAxis:f,crossAxis:p,alignmentAxis:h}="number"==typeof d?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:0,crossAxis:0,alignmentAxis:null,...d};return a&&"number"==typeof h&&(p="end"===a?-1*h:h),s?{x:p*u,y:f*c}:{x:f*c,y:p*u}}(t,e);return l===(null==(n=a.offset)?void 0:n.placement)&&null!=(r=a.arrow)&&r.alignmentOffset?{}:{x:o+s.x,y:i+s.y,data:{...s,placement:l}}}}},fe=function(e){return void 0===e&&(e={}),{name:"shift",options:e,async fn(t){const{x:n,y:r,placement:o}=t,{mainAxis:i=!0,crossAxis:l=!1,limiter:a={fn:e=>{let{x:t,y:n}=e;return{x:t,y:n}}},...s}=w(e,t),c={x:n,y:r},u=await L(t,s),d=T(x(o)),f=_(d);let p=c[f],h=c[d];if(i){const e="y"===f?"bottom":"right";p=b(p+u["y"===f?"top":"left"],p,p-u[e])}if(l){const e="y"===d?"bottom":"right";h=b(h+u["y"===d?"top":"left"],h,h-u[e])}const m=a.fn({...t,[f]:p,[d]:h});return{...m,data:{x:m.x-n,y:m.y-r}}}}},pe=function(e){return void 0===e&&(e={}),{name:"flip",options:e,async fn(t){var n,r;const{placement:o,middlewareData:i,rects:l,initialPlacement:a,platform:s,elements:c}=t,{mainAxis:u=!0,crossAxis:d=!0,fallbackPlacements:f,fallbackStrategy:p="bestFit",fallbackAxisSideDirection:h="none",flipAlignment:m=!0,...y}=w(e,t);if(null!=(n=i.arrow)&&n.alignmentOffset)return{};const v=x(o),g=T(a),b=x(a)===a,_=await(null==s.isRTL?void 0:s.isRTL(c.floating)),C=f||(b||!m?[O(a)]:function(e){const t=O(e);return[A(e),t,A(t)]}(a)),N="none"!==h;!f&&N&&C.push(...function(e,t,n,r){const o=E(e);let i=function(e,t,n){const r=["left","right"],o=["right","left"],i=["top","bottom"],l=["bottom","top"];switch(e){case"top":case"bottom":return n?t?o:r:t?r:o;case"left":case"right":return t?i:l;default:return[]}}(x(e),"start"===n,r);return o&&(i=i.map((e=>e+"-"+o)),t&&(i=i.concat(i.map(A)))),i}(a,m,h,_));const R=[a,...C],j=await L(t,y),P=[];let I=(null==(r=i.flip)?void 0:r.overflows)||[];if(u&&P.push(j[v]),d){const e=function(e,t,n){void 0===n&&(n=!1);const r=E(e),o=k(e),i=S(o);let l="x"===o?r===(n?"end":"start")?"right":"left":"start"===r?"bottom":"top";return t.reference[i]>t.floating[i]&&(l=O(l)),[l,O(l)]}(o,l,_);P.push(j[e[0]],j[e[1]])}if(I=[...I,{placement:o,overflows:P}],!P.every((e=>e<=0))){var D,M;const e=((null==(D=i.flip)?void 0:D.index)||0)+1,t=R[e];if(t)return{data:{index:e,overflows:I},reset:{placement:t}};let n=null==(M=I.filter((e=>e.overflows[0]<=0)).sort(((e,t)=>e.overflows[1]-t.overflows[1]))[0])?void 0:M.placement;if(!n)switch(p){case"bestFit":{var F;const e=null==(F=I.filter((e=>{if(N){const t=T(e.placement);return t===g||"y"===t}return!0})).map((e=>[e.placement,e.overflows.filter((e=>e>0)).reduce(((e,t)=>e+t),0)])).sort(((e,t)=>e[1]-t[1]))[0])?void 0:F[0];e&&(n=e);break}case"initialPlacement":n=a}if(o!==n)return{reset:{placement:n}}}return{}}}},he=(e,t,n)=>{const r=new Map,o={platform:ue,...n},i={...o.platform,_c:r};return(async(e,t,n)=>{const{placement:r="bottom",strategy:o="absolute",middleware:i=[],platform:l}=n,a=i.filter(Boolean),s=await(null==l.isRTL?void 0:l.isRTL(t));let c=await l.getElementRects({reference:e,floating:t,strategy:o}),{x:u,y:d}=R(c,r,s),f=r,p={},h=0;for(let n=0;n{if(!e)return{tooltipStyles:{},tooltipArrowStyles:{},place:r};if(null===t)return{tooltipStyles:{},tooltipArrowStyles:{},place:r};const s=l;return n?(s.push({name:"arrow",options:c={element:n,padding:5},async fn(e){const{x:t,y:n,placement:r,rects:o,platform:i,elements:l,middlewareData:a}=e,{element:s,padding:u=0}=w(c,e)||{};if(null==s)return{};const d=C(u),p={x:t,y:n},h=k(r),m=S(h),y=await i.getDimensions(s),v="y"===h,g=v?"top":"left",x=v?"bottom":"right",_=v?"clientHeight":"clientWidth",T=o.reference[m]+o.reference[h]-p[h]-o.floating[m],A=p[h]-o.reference[h],O=await(null==i.getOffsetParent?void 0:i.getOffsetParent(s));let N=O?O[_]:0;N&&await(null==i.isElement?void 0:i.isElement(O))||(N=l.floating[_]||o.floating[m]);const R=T/2-A/2,L=N/2-y[m]/2-1,j=f(d[g],L),P=f(d[x],L),I=j,D=N-y[m]-P,M=N/2-y[m]/2+R,F=b(I,M,D),z=!a.arrow&&null!=E(r)&&M!==F&&o.reference[m]/2-(M{var o,i;const l={left:`${e}px`,top:`${t}px`,border:a},{x:s,y:c}=null!==(o=r.arrow)&&void 0!==o?o:{x:0,y:0},u=null!==(i={top:"bottom",right:"left",bottom:"top",left:"right"}[n.split("-")[0]])&&void 0!==i?i:"bottom",d=a&&{borderBottom:a,borderRight:a};let f=0;if(a){const e=`${a}`.match(/(\d+)px/);f=(null==e?void 0:e[1])?Number(e[1]):1}return{tooltipStyles:l,tooltipArrowStyles:{left:null!=s?`${s}px`:"",top:null!=c?`${c}px`:"",right:"",bottom:"",...d,[u]:`-${4+f}px`},place:n}}))):he(e,t,{placement:"bottom",strategy:i,middleware:s}).then((({x:e,y:t,placement:n})=>({tooltipStyles:{left:`${e}px`,top:`${t}px`},tooltipArrowStyles:{},place:n})));var c},be=(e,t)=>!("CSS"in window&&"supports"in window.CSS)||window.CSS.supports(e,t),we=(e,t,n)=>{let r=null;const o=function(...o){const i=()=>{r=null,n||e.apply(this,o)};n&&!r&&(e.apply(this,o),r=setTimeout(i,t)),n||(r&&clearTimeout(r),r=setTimeout(i,t))};return o.cancel=()=>{r&&(clearTimeout(r),r=null)},o},xe=e=>null!==e&&!Array.isArray(e)&&"object"==typeof e,Ee=(e,t)=>{if(e===t)return!0;if(Array.isArray(e)&&Array.isArray(t))return e.length===t.length&&e.every(((e,n)=>Ee(e,t[n])));if(Array.isArray(e)!==Array.isArray(t))return!1;if(!xe(e)||!xe(t))return e===t;const n=Object.keys(e),r=Object.keys(t);return n.length===r.length&&n.every((n=>Ee(e[n],t[n])))},_e=e=>{if(!(e instanceof HTMLElement||e instanceof SVGElement))return!1;const t=getComputedStyle(e);return["overflow","overflow-x","overflow-y"].some((e=>{const n=t.getPropertyValue(e);return"auto"===n||"scroll"===n}))},Se=e=>{if(!e)return null;let t=e.parentElement;for(;t;){if(_e(t))return t;t=t.parentElement}return document.scrollingElement||document.documentElement},Te="undefined"!=typeof window?d.useLayoutEffect:d.useEffect,ke=e=>{e.current&&(clearTimeout(e.current),e.current=null)},Ae={anchorRefs:new Set,activeAnchor:{current:null},attach:()=>{},detach:()=>{},setActiveAnchor:()=>{}},Oe=(0,d.createContext)({getTooltipData:()=>Ae});function Ce(e="DEFAULT_TOOLTIP_ID"){return(0,d.useContext)(Oe).getTooltipData(e)}var Ne={tooltip:"core-styles-module_tooltip__3vRRp",fixed:"core-styles-module_fixed__pcSol",arrow:"core-styles-module_arrow__cvMwQ",noArrow:"core-styles-module_noArrow__xock6",clickable:"core-styles-module_clickable__ZuTTB",show:"core-styles-module_show__Nt9eE",closing:"core-styles-module_closing__sGnxF"},Re={tooltip:"styles-module_tooltip__mnnfp",arrow:"styles-module_arrow__K0L3T",dark:"styles-module_dark__xNqje",light:"styles-module_light__Z6W-X",success:"styles-module_success__A2AKt",warning:"styles-module_warning__SCK0X",error:"styles-module_error__JvumD",info:"styles-module_info__BWdHW"};const Le=({forwardRef:e,id:t,className:n,classNameArrow:r,variant:o="dark",anchorId:i,anchorSelect:l,place:a="top",offset:s=10,events:c=["hover"],openOnClick:u=!1,positionStrategy:h="absolute",middlewares:y,wrapper:v,delayShow:g=0,delayHide:b=0,float:w=!1,hidden:x=!1,noArrow:E=!1,clickable:_=!1,closeOnEsc:S=!1,closeOnScroll:T=!1,closeOnResize:k=!1,openEvents:A,closeEvents:O,globalCloseEvents:C,imperativeModeOnly:N,style:R,position:L,afterShow:j,afterHide:P,content:D,contentWrapperRef:M,isOpen:F,defaultIsOpen:z=!1,setIsOpen:B,activeAnchor:H,setActiveAnchor:V,border:q,opacity:W,arrowColor:U,role:$="tooltip"})=>{var X;const G=(0,d.useRef)(null),K=(0,d.useRef)(null),Z=(0,d.useRef)(null),Q=(0,d.useRef)(null),ee=(0,d.useRef)(null),[te,re]=(0,d.useState)({tooltipStyles:{},tooltipArrowStyles:{},place:a}),[oe,ie]=(0,d.useState)(!1),[le,ae]=(0,d.useState)(!1),[se,ce]=(0,d.useState)(null),ue=(0,d.useRef)(!1),de=(0,d.useRef)(null),{anchorRefs:fe,setActiveAnchor:pe}=Ce(t),he=(0,d.useRef)(!1),[ye,ve]=(0,d.useState)([]),be=(0,d.useRef)(!1),xe=u||c.includes("click"),_e=xe||(null==A?void 0:A.click)||(null==A?void 0:A.dblclick)||(null==A?void 0:A.mousedown),Ae=A?{...A}:{mouseover:!0,focus:!0,mouseenter:!1,click:!1,dblclick:!1,mousedown:!1};!A&&xe&&Object.assign(Ae,{mouseenter:!1,focus:!1,mouseover:!1,click:!0});const Oe=O?{...O}:{mouseout:!0,blur:!0,mouseleave:!1,click:!1,dblclick:!1,mouseup:!1};!O&&xe&&Object.assign(Oe,{mouseleave:!1,blur:!1,mouseout:!1});const Le=C?{...C}:{escape:S||!1,scroll:T||!1,resize:k||!1,clickOutsideAnchor:_e||!1};N&&(Object.assign(Ae,{mouseenter:!1,focus:!1,click:!1,dblclick:!1,mousedown:!1}),Object.assign(Oe,{mouseleave:!1,blur:!1,click:!1,dblclick:!1,mouseup:!1}),Object.assign(Le,{escape:!1,scroll:!1,resize:!1,clickOutsideAnchor:!1})),Te((()=>(be.current=!0,()=>{be.current=!1})),[]);const je=e=>{be.current&&(e&&ae(!0),setTimeout((()=>{be.current&&(null==B||B(e),void 0===F&&ie(e))}),10))};(0,d.useEffect)((()=>{if(void 0===F)return()=>null;F&&ae(!0);const e=setTimeout((()=>{ie(F)}),10);return()=>{clearTimeout(e)}}),[F]),(0,d.useEffect)((()=>{if(oe!==ue.current)if(ke(ee),ue.current=oe,oe)null==j||j();else{const e=(()=>{const e=getComputedStyle(document.body).getPropertyValue("--rt-transition-show-delay").match(/^([\d.]+)(ms|s)$/);if(!e)return 0;const[,t,n]=e;return Number(t)*("ms"===n?1:1e3)})();ee.current=setTimeout((()=>{ae(!1),ce(null),null==P||P()}),e+25)}}),[oe]);const Pe=e=>{re((t=>Ee(t,e)?t:e))},Ie=(e=g)=>{ke(Z),le?je(!0):Z.current=setTimeout((()=>{je(!0)}),e)},De=(e=b)=>{ke(Q),Q.current=setTimeout((()=>{he.current||je(!1)}),e)},Me=e=>{var t;if(!e)return;const n=null!==(t=e.currentTarget)&&void 0!==t?t:e.target;if(!(null==n?void 0:n.isConnected))return V(null),void pe({current:null});g?Ie():je(!0),V(n),pe({current:n}),ke(Q)},Fe=()=>{_?De(b||100):b?De():je(!1),ke(Z)},ze=({x:e,y:t})=>{var n;const r={getBoundingClientRect:()=>({x:e,y:t,width:0,height:0,top:t,left:e,right:e,bottom:t})};ge({place:null!==(n=null==se?void 0:se.place)&&void 0!==n?n:a,offset:s,elementReference:r,tooltipReference:G.current,tooltipArrowReference:K.current,strategy:h,middlewares:y,border:q}).then((e=>{Pe(e)}))},Be=e=>{if(!e)return;const t=e,n={x:t.clientX,y:t.clientY};ze(n),de.current=n},He=e=>{var t;if(!oe)return;const n=e.target;n.isConnected&&((null===(t=G.current)||void 0===t?void 0:t.contains(n))||[document.querySelector(`[id='${i}']`),...ye].some((e=>null==e?void 0:e.contains(n)))||(je(!1),ke(Z)))},Ve=we(Me,50,!0),qe=we(Fe,50,!0),We=e=>{qe.cancel(),Ve(e)},Ue=()=>{Ve.cancel(),qe()},$e=(0,d.useCallback)((()=>{var e,t;const n=null!==(e=null==se?void 0:se.position)&&void 0!==e?e:L;n?ze(n):w?de.current&&ze(de.current):(null==H?void 0:H.isConnected)&&ge({place:null!==(t=null==se?void 0:se.place)&&void 0!==t?t:a,offset:s,elementReference:H,tooltipReference:G.current,tooltipArrowReference:K.current,strategy:h,middlewares:y,border:q}).then((e=>{be.current&&Pe(e)}))}),[oe,H,D,R,a,null==se?void 0:se.place,s,h,L,null==se?void 0:se.position,w]);(0,d.useEffect)((()=>{var e,t;const n=new Set(fe);ye.forEach((e=>{n.add({current:e})}));const r=document.querySelector(`[id='${i}']`);r&&n.add({current:r});const o=()=>{je(!1)},l=Se(H),a=Se(G.current);Le.scroll&&(window.addEventListener("scroll",o),null==l||l.addEventListener("scroll",o),null==a||a.addEventListener("scroll",o));let s=null;Le.resize?window.addEventListener("resize",o):H&&G.current&&(s=function(e,t,n,r){void 0===r&&(r={});const{ancestorScroll:o=!0,ancestorResize:i=!0,elementResize:l="function"==typeof ResizeObserver,layoutShift:a="function"==typeof IntersectionObserver,animationFrame:s=!1}=r,c=J(e),u=o||i?[...c?Y(c):[],...Y(t)]:[];u.forEach((e=>{o&&e.addEventListener("scroll",n,{passive:!0}),i&&e.addEventListener("resize",n)}));const d=c&&a?function(e,t){let n,r=null;const o=I(e);function i(){var e;clearTimeout(n),null==(e=r)||e.disconnect(),r=null}return function l(a,s){void 0===a&&(a=!1),void 0===s&&(s=1),i();const{left:c,top:u,width:d,height:h}=e.getBoundingClientRect();if(a||t(),!d||!h)return;const y={rootMargin:-m(u)+"px "+-m(o.clientWidth-(c+d))+"px "+-m(o.clientHeight-(u+h))+"px "+-m(c)+"px",threshold:p(0,f(1,s))||1};let v=!0;function g(e){const t=e[0].intersectionRatio;if(t!==s){if(!v)return l();t?l(!1,t):n=setTimeout((()=>{l(!1,1e-7)}),1e3)}v=!1}try{r=new IntersectionObserver(g,{...y,root:o.ownerDocument})}catch(e){r=new IntersectionObserver(g,y)}r.observe(e)}(!0),i}(c,n):null;let h,y=-1,v=null;l&&(v=new ResizeObserver((e=>{let[r]=e;r&&r.target===c&&v&&(v.unobserve(t),cancelAnimationFrame(y),y=requestAnimationFrame((()=>{var e;null==(e=v)||e.observe(t)}))),n()})),c&&!s&&v.observe(c),v.observe(t));let g=s?ne(e):null;return s&&function t(){const r=ne(e);!g||r.x===g.x&&r.y===g.y&&r.width===g.width&&r.height===g.height||n(),g=r,h=requestAnimationFrame(t)}(),n(),()=>{var e;u.forEach((e=>{o&&e.removeEventListener("scroll",n),i&&e.removeEventListener("resize",n)})),null==d||d(),null==(e=v)||e.disconnect(),v=null,s&&cancelAnimationFrame(h)}}(H,G.current,$e,{ancestorResize:!0,elementResize:!0,layoutShift:!0}));const c=e=>{"Escape"===e.key&&je(!1)};Le.escape&&window.addEventListener("keydown",c),Le.clickOutsideAnchor&&window.addEventListener("click",He);const u=[],d=e=>{oe&&(null==e?void 0:e.target)===H||Me(e)},h=e=>{oe&&(null==e?void 0:e.target)===H&&Fe()},y=["mouseover","mouseout","mouseenter","mouseleave","focus","blur"],v=["click","dblclick","mousedown","mouseup"];Object.entries(Ae).forEach((([e,t])=>{t&&(y.includes(e)?u.push({event:e,listener:We}):v.includes(e)&&u.push({event:e,listener:d}))})),Object.entries(Oe).forEach((([e,t])=>{t&&(y.includes(e)?u.push({event:e,listener:Ue}):v.includes(e)&&u.push({event:e,listener:h}))})),w&&u.push({event:"pointermove",listener:Be});const g=()=>{he.current=!0},b=()=>{he.current=!1,Fe()};return _&&!_e&&(null===(e=G.current)||void 0===e||e.addEventListener("mouseenter",g),null===(t=G.current)||void 0===t||t.addEventListener("mouseleave",b)),u.forEach((({event:e,listener:t})=>{n.forEach((n=>{var r;null===(r=n.current)||void 0===r||r.addEventListener(e,t)}))})),()=>{var e,t;Le.scroll&&(window.removeEventListener("scroll",o),null==l||l.removeEventListener("scroll",o),null==a||a.removeEventListener("scroll",o)),Le.resize?window.removeEventListener("resize",o):null==s||s(),Le.clickOutsideAnchor&&window.removeEventListener("click",He),Le.escape&&window.removeEventListener("keydown",c),_&&!_e&&(null===(e=G.current)||void 0===e||e.removeEventListener("mouseenter",g),null===(t=G.current)||void 0===t||t.removeEventListener("mouseleave",b)),u.forEach((({event:e,listener:t})=>{n.forEach((n=>{var r;null===(r=n.current)||void 0===r||r.removeEventListener(e,t)}))}))}}),[H,$e,le,fe,ye,A,O,C,xe,g,b]),(0,d.useEffect)((()=>{var e,n;let r=null!==(n=null!==(e=null==se?void 0:se.anchorSelect)&&void 0!==e?e:l)&&void 0!==n?n:"";!r&&t&&(r=`[data-tooltip-id='${t.replace(/'/g,"\\'")}']`);const o=new MutationObserver((e=>{const n=[],o=[];e.forEach((e=>{if("attributes"===e.type&&"data-tooltip-id"===e.attributeName&&(e.target.getAttribute("data-tooltip-id")===t?n.push(e.target):e.oldValue===t&&o.push(e.target)),"childList"===e.type){if(H){const t=[...e.removedNodes].filter((e=>1===e.nodeType));if(r)try{o.push(...t.filter((e=>e.matches(r)))),o.push(...t.flatMap((e=>[...e.querySelectorAll(r)])))}catch(e){}t.some((e=>{var t;return!!(null===(t=null==e?void 0:e.contains)||void 0===t?void 0:t.call(e,H))&&(ae(!1),je(!1),V(null),ke(Z),ke(Q),!0)}))}if(r)try{const t=[...e.addedNodes].filter((e=>1===e.nodeType));n.push(...t.filter((e=>e.matches(r)))),n.push(...t.flatMap((e=>[...e.querySelectorAll(r)])))}catch(e){}}})),(n.length||o.length)&&ve((e=>[...e.filter((e=>!o.includes(e))),...n]))}));return o.observe(document.body,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["data-tooltip-id"],attributeOldValue:!0}),()=>{o.disconnect()}}),[t,l,null==se?void 0:se.anchorSelect,H]),(0,d.useEffect)((()=>{$e()}),[$e]),(0,d.useEffect)((()=>{if(!(null==M?void 0:M.current))return()=>null;const e=new ResizeObserver((()=>{setTimeout((()=>$e()))}));return e.observe(M.current),()=>{e.disconnect()}}),[D,null==M?void 0:M.current]),(0,d.useEffect)((()=>{var e;const t=document.querySelector(`[id='${i}']`),n=[...ye,t];H&&n.includes(H)||V(null!==(e=ye[0])&&void 0!==e?e:t)}),[i,ye,H]),(0,d.useEffect)((()=>(z&&je(!0),()=>{ke(Z),ke(Q)})),[]),(0,d.useEffect)((()=>{var e;let n=null!==(e=null==se?void 0:se.anchorSelect)&&void 0!==e?e:l;if(!n&&t&&(n=`[data-tooltip-id='${t.replace(/'/g,"\\'")}']`),n)try{const e=Array.from(document.querySelectorAll(n));ve(e)}catch(e){ve([])}}),[t,l,null==se?void 0:se.anchorSelect]),(0,d.useEffect)((()=>{Z.current&&(ke(Z),Ie(g))}),[g]);const Xe=null!==(X=null==se?void 0:se.content)&&void 0!==X?X:D,Ge=oe&&Object.keys(te.tooltipStyles).length>0;return(0,d.useImperativeHandle)(e,(()=>({open:e=>{if(null==e?void 0:e.anchorSelect)try{document.querySelector(e.anchorSelect)}catch(t){return void console.warn(`[react-tooltip] "${e.anchorSelect}" is not a valid CSS selector`)}ce(null!=e?e:null),(null==e?void 0:e.delay)?Ie(e.delay):je(!0)},close:e=>{(null==e?void 0:e.delay)?De(e.delay):je(!1)},activeAnchor:H,place:te.place,isOpen:Boolean(le&&!x&&Xe&&Ge)}))),le&&!x&&Xe?d.createElement(v,{id:t,role:$,className:me("react-tooltip",Ne.tooltip,Re.tooltip,Re[o],n,`react-tooltip__place-${te.place}`,Ne[Ge?"show":"closing"],Ge?"react-tooltip__show":"react-tooltip__closing","fixed"===h&&Ne.fixed,_&&Ne.clickable),onTransitionEnd:e=>{ke(ee),oe||"opacity"!==e.propertyName||(ae(!1),ce(null),null==P||P())},style:{...R,...te.tooltipStyles,opacity:void 0!==W&&Ge?W:void 0},ref:G},Xe,d.createElement(v,{className:me("react-tooltip-arrow",Ne.arrow,Re.arrow,r,E&&Ne.noArrow),style:{...te.tooltipArrowStyles,background:U?`linear-gradient(to right bottom, transparent 50%, ${U} 50%)`:void 0},ref:K})):null},je=({content:e})=>d.createElement("span",{dangerouslySetInnerHTML:{__html:e}}),Pe=d.forwardRef((({id:e,anchorId:t,anchorSelect:n,content:r,html:o,render:i,className:l,classNameArrow:a,variant:s="dark",place:c="top",offset:u=10,wrapper:f="div",children:p=null,events:h=["hover"],openOnClick:m=!1,positionStrategy:y="absolute",middlewares:v,delayShow:g=0,delayHide:b=0,float:w=!1,hidden:x=!1,noArrow:E=!1,clickable:_=!1,closeOnEsc:S=!1,closeOnScroll:T=!1,closeOnResize:k=!1,openEvents:A,closeEvents:O,globalCloseEvents:C,imperativeModeOnly:N=!1,style:R,position:L,isOpen:j,defaultIsOpen:P=!1,disableStyleInjection:I=!1,border:D,opacity:M,arrowColor:F,setIsOpen:z,afterShow:B,afterHide:H,role:V="tooltip"},q)=>{const[W,U]=(0,d.useState)(r),[$,X]=(0,d.useState)(o),[G,K]=(0,d.useState)(c),[Y,Z]=(0,d.useState)(s),[J,Q]=(0,d.useState)(u),[ee,te]=(0,d.useState)(g),[ne,re]=(0,d.useState)(b),[oe,ie]=(0,d.useState)(w),[le,ae]=(0,d.useState)(x),[se,ce]=(0,d.useState)(f),[ue,de]=(0,d.useState)(h),[fe,pe]=(0,d.useState)(y),[he,ye]=(0,d.useState)(null),[ve,ge]=(0,d.useState)(null),we=(0,d.useRef)(I),{anchorRefs:xe,activeAnchor:Ee}=Ce(e),_e=e=>null==e?void 0:e.getAttributeNames().reduce(((t,n)=>{var r;return n.startsWith("data-tooltip-")&&(t[n.replace(/^data-tooltip-/,"")]=null!==(r=null==e?void 0:e.getAttribute(n))&&void 0!==r?r:null),t}),{}),Se=e=>{const t={place:e=>{var t;K(null!==(t=e)&&void 0!==t?t:c)},content:e=>{U(null!=e?e:r)},html:e=>{X(null!=e?e:o)},variant:e=>{var t;Z(null!==(t=e)&&void 0!==t?t:s)},offset:e=>{Q(null===e?u:Number(e))},wrapper:e=>{var t;ce(null!==(t=e)&&void 0!==t?t:f)},events:e=>{const t=null==e?void 0:e.split(" ");de(null!=t?t:h)},"position-strategy":e=>{var t;pe(null!==(t=e)&&void 0!==t?t:y)},"delay-show":e=>{te(null===e?g:Number(e))},"delay-hide":e=>{re(null===e?b:Number(e))},float:e=>{ie(null===e?w:"true"===e)},hidden:e=>{ae(null===e?x:"true"===e)},"class-name":e=>{ye(e)}};Object.values(t).forEach((e=>e(null))),Object.entries(e).forEach((([e,n])=>{var r;null===(r=t[e])||void 0===r||r.call(t,n)}))};(0,d.useEffect)((()=>{U(r)}),[r]),(0,d.useEffect)((()=>{X(o)}),[o]),(0,d.useEffect)((()=>{K(c)}),[c]),(0,d.useEffect)((()=>{Z(s)}),[s]),(0,d.useEffect)((()=>{Q(u)}),[u]),(0,d.useEffect)((()=>{te(g)}),[g]),(0,d.useEffect)((()=>{re(b)}),[b]),(0,d.useEffect)((()=>{ie(w)}),[w]),(0,d.useEffect)((()=>{ae(x)}),[x]),(0,d.useEffect)((()=>{pe(y)}),[y]),(0,d.useEffect)((()=>{we.current!==I&&console.warn("[react-tooltip] Do not change `disableStyleInjection` dynamically.")}),[I]),(0,d.useEffect)((()=>{"undefined"!=typeof window&&window.dispatchEvent(new CustomEvent("react-tooltip-inject-styles",{detail:{disableCore:"core"===I,disableBase:I}}))}),[]),(0,d.useEffect)((()=>{var r;const o=new Set(xe);let i=n;if(!i&&e&&(i=`[data-tooltip-id='${e.replace(/'/g,"\\'")}']`),i)try{document.querySelectorAll(i).forEach((e=>{o.add({current:e})}))}catch(r){console.warn(`[react-tooltip] "${i}" is not a valid CSS selector`)}const l=document.querySelector(`[id='${t}']`);if(l&&o.add({current:l}),!o.size)return()=>null;const a=null!==(r=null!=ve?ve:l)&&void 0!==r?r:Ee.current,s=new MutationObserver((e=>{e.forEach((e=>{var t;if(!a||"attributes"!==e.type||!(null===(t=e.attributeName)||void 0===t?void 0:t.startsWith("data-tooltip-")))return;const n=_e(a);Se(n)}))})),c={attributes:!0,childList:!1,subtree:!1};if(a){const e=_e(a);Se(e),s.observe(a,c)}return()=>{s.disconnect()}}),[xe,Ee,ve,t,n]),(0,d.useEffect)((()=>{(null==R?void 0:R.border)&&console.warn("[react-tooltip] Do not set `style.border`. Use `border` prop instead."),D&&!be("border",`${D}`)&&console.warn(`[react-tooltip] "${D}" is not a valid \`border\`.`),(null==R?void 0:R.opacity)&&console.warn("[react-tooltip] Do not set `style.opacity`. Use `opacity` prop instead."),M&&!be("opacity",`${M}`)&&console.warn(`[react-tooltip] "${M}" is not a valid \`opacity\`.`)}),[]);let Te=p;const ke=(0,d.useRef)(null);if(i){const e=i({content:(null==ve?void 0:ve.getAttribute("data-tooltip-content"))||W||null,activeAnchor:ve});Te=e?d.createElement("div",{ref:ke,className:"react-tooltip-content-wrapper"},e):null}else W&&(Te=W);$&&(Te=d.createElement(je,{content:$}));const Ae={forwardRef:q,id:e,anchorId:t,anchorSelect:n,className:me(l,he),classNameArrow:a,content:Te,contentWrapperRef:ke,place:G,variant:Y,offset:J,wrapper:se,events:ue,openOnClick:m,positionStrategy:fe,middlewares:v,delayShow:ee,delayHide:ne,float:oe,hidden:le,noArrow:E,clickable:_,closeOnEsc:S,closeOnScroll:T,closeOnResize:k,openEvents:A,closeEvents:O,globalCloseEvents:C,imperativeModeOnly:N,style:R,position:L,isOpen:j,defaultIsOpen:P,border:D,opacity:M,arrowColor:F,setIsOpen:z,afterShow:B,afterHide:H,activeAnchor:ve,setActiveAnchor:e=>ge(e),role:V};return d.createElement(Le,{...Ae})}));"undefined"!=typeof window&&window.addEventListener("react-tooltip-inject-styles",(e=>{e.detail.disableCore||ve({css:":root{--rt-color-white:#fff;--rt-color-dark:#222;--rt-color-success:#8dc572;--rt-color-error:#be6464;--rt-color-warning:#f0ad4e;--rt-color-info:#337ab7;--rt-opacity:0.9;--rt-transition-show-delay:0.15s;--rt-transition-closing-delay:0.15s}.core-styles-module_tooltip__3vRRp{position:absolute;top:0;left:0;pointer-events:none;opacity:0;will-change:opacity}.core-styles-module_fixed__pcSol{position:fixed}.core-styles-module_arrow__cvMwQ{position:absolute;background:inherit}.core-styles-module_noArrow__xock6{display:none}.core-styles-module_clickable__ZuTTB{pointer-events:auto}.core-styles-module_show__Nt9eE{opacity:var(--rt-opacity);transition:opacity var(--rt-transition-show-delay)ease-out}.core-styles-module_closing__sGnxF{opacity:0;transition:opacity var(--rt-transition-closing-delay)ease-in}",type:"core"}),e.detail.disableBase||ve({css:"\n.styles-module_tooltip__mnnfp{padding:8px 16px;border-radius:3px;font-size:90%;width:max-content}.styles-module_arrow__K0L3T{width:8px;height:8px}[class*='react-tooltip__place-top']>.styles-module_arrow__K0L3T{transform:rotate(45deg)}[class*='react-tooltip__place-right']>.styles-module_arrow__K0L3T{transform:rotate(135deg)}[class*='react-tooltip__place-bottom']>.styles-module_arrow__K0L3T{transform:rotate(225deg)}[class*='react-tooltip__place-left']>.styles-module_arrow__K0L3T{transform:rotate(315deg)}.styles-module_dark__xNqje{background:var(--rt-color-dark);color:var(--rt-color-white)}.styles-module_light__Z6W-X{background-color:var(--rt-color-white);color:var(--rt-color-dark)}.styles-module_success__A2AKt{background-color:var(--rt-color-success);color:var(--rt-color-white)}.styles-module_warning__SCK0X{background-color:var(--rt-color-warning);color:var(--rt-color-white)}.styles-module_error__JvumD{background-color:var(--rt-color-error);color:var(--rt-color-white)}.styles-module_info__BWdHW{background-color:var(--rt-color-info);color:var(--rt-color-white)}",type:"base"})}));const Ie=window.wp.components,De=({onlineEventLinkDefault:e=""})=>{const t=(0,a.__)("Online event","gatherpress"),[r,i]=(0,n.useState)(e);return((e,t="")=>{for(const[n,r]of Object.entries(e)){let e=n;t&&(e+="_"+String(t)),addEventListener(e,(e=>{r(e.detail)}),!1)}})({setOnlineEventLink:i},s("eventDetails.postId")),(0,o.jsxs)(Ie.Flex,{justify:"normal",gap:"3",children:[(0,o.jsx)(Ie.FlexItem,{display:"flex",children:(0,o.jsx)(Ie.Icon,{icon:"video-alt2"})}),(0,o.jsxs)(Ie.FlexItem,{children:[!r&&(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)("span",{tabIndex:"0",className:"gatherpress-tooltip","data-tooltip-id":"gatherpress-online-event-tooltip","data-tooltip-content":(0,a.__)("Link available for attendees only.","gatherpress"),children:t}),(0,o.jsx)(Pe,{id:"gatherpress-online-event-tooltip"})]}),r&&(0,o.jsx)("a",{href:r,rel:"noreferrer",target:"_blank",children:t})]})]})};var Me=l(442);const Fe=Me.default||Me,ze=({name:e,fullAddress:t,phoneNumber:n,website:r})=>(0,o.jsxs)(o.Fragment,{children:[(e||t)&&(0,o.jsxs)(Ie.Flex,{justify:"normal",align:"flex-start",gap:"4",children:[(0,o.jsx)(Ie.FlexItem,{display:"flex",className:"gatherpress-venue__icon",children:(0,o.jsx)(Ie.Icon,{icon:"location"})}),(0,o.jsxs)(Ie.FlexItem,{children:[e&&(0,o.jsx)("div",{className:"gatherpress-venue__name",children:(0,o.jsx)("strong",{children:Fe(e)})}),t&&(0,o.jsx)("div",{className:"gatherpress-venue__full-address",children:Fe(t)})]})]}),(n||r)&&(0,o.jsxs)(Ie.Flex,{justify:"normal",gap:"8",children:[n&&(0,o.jsx)(Ie.FlexItem,{children:(0,o.jsxs)(Ie.Flex,{justify:"normal",gap:"4",children:[(0,o.jsx)(Ie.FlexItem,{display:"flex",className:"gatherpress-venue__icon",children:(0,o.jsx)(Ie.Icon,{icon:"phone"})}),(0,o.jsx)(Ie.FlexItem,{children:(0,o.jsx)("div",{className:"gatherpress-venue__phone-number",children:n})})]})}),r&&(0,o.jsx)(Ie.FlexItem,{children:(0,o.jsxs)(Ie.Flex,{justify:"normal",gap:"4",children:[(0,o.jsx)(Ie.FlexItem,{display:"flex",className:"gatherpress-venue__icon",children:(0,o.jsx)(Ie.Icon,{icon:"admin-site-alt3"})}),(0,o.jsx)(Ie.FlexItem,{children:(0,o.jsx)("div",{className:"gatherpress-venue__website",children:(0,o.jsx)("a",{href:r,target:"_blank",rel:"noreferrer noopener",children:r})})})]})})]})]}),Be=({name:e="",fullAddress:t,phoneNumber:n,website:r,isOnlineEventTerm:i=!1,onlineEventLink:l=""})=>(0,o.jsxs)(o.Fragment,{children:[!i&&(0,o.jsx)(ze,{name:e,fullAddress:t,phoneNumber:n,website:r}),i&&(0,o.jsx)(De,{onlineEventLinkDefault:l})]});t()((()=>{let e=document.querySelectorAll('[data-gatherpress_block_name="venue"]');for(let c=0;c array(), 'version' => '15d01c9dc99209264b1e'); + array(), 'version' => '5ad55e96c95a60dea038'); diff --git a/build/profile_style.js b/build/profile_style.js index a1d338b51..8b92555f2 100644 --- a/build/profile_style.js +++ b/build/profile_style.js @@ -1 +1 @@ -(()=>{"use strict";var r,e={9724:()=>{}},o={};function t(r){var a=o[r];if(void 0!==a)return a.exports;var n=o[r]={exports:{}};return e[r](n,n.exports,t),n.exports}t.m=e,r=[],t.O=(e,o,a,n)=>{if(!o){var s=1/0;for(p=0;p=n)&&Object.keys(t.O).every((r=>t.O[r](o[l])))?o.splice(l--,1):(i=!1,n0&&r[p-1][2]>n;p--)r[p]=r[p-1];r[p]=[o,a,n]},t.o=(r,e)=>Object.prototype.hasOwnProperty.call(r,e),(()=>{var r={604:0,739:0};t.O.j=e=>0===r[e];var e=(e,o)=>{var a,n,[s,i,l]=o,v=0;if(s.some((e=>0!==r[e]))){for(a in i)t.o(i,a)&&(t.m[a]=i[a]);if(l)var p=l(t)}for(e&&e(o);vt(9724)));a=t.O(a)})(); \ No newline at end of file +(()=>{"use strict";var r,e={9724:()=>{}},t={};function o(r){var a=t[r];if(void 0!==a)return a.exports;var n=t[r]={exports:{}};return e[r](n,n.exports,o),n.exports}o.m=e,r=[],o.O=(e,t,a,n)=>{if(!t){var s=1/0;for(f=0;f=n)&&Object.keys(o.O).every((r=>o.O[r](t[v])))?t.splice(v--,1):(i=!1,n0&&r[f-1][2]>n;f--)r[f]=r[f-1];r[f]=[t,a,n]},o.o=(r,e)=>Object.prototype.hasOwnProperty.call(r,e),(()=>{var r={604:0,739:0};o.O.j=e=>0===r[e];var e=(e,t)=>{var a,n,s=t[0],i=t[1],v=t[2],p=0;if(s.some((e=>0!==r[e]))){for(a in i)o.o(i,a)&&(o.m[a]=i[a]);if(v)var f=v(o)}for(e&&e(t);po(9724)));a=o.O(a)})(); \ No newline at end of file diff --git a/build/settings_style.asset.php b/build/settings_style.asset.php index fabc2e186..868082a70 100644 --- a/build/settings_style.asset.php +++ b/build/settings_style.asset.php @@ -1 +1 @@ - array(), 'version' => '9c37901c158173551201'); + array(), 'version' => 'c56489ba63321625e127'); diff --git a/build/settings_style.js b/build/settings_style.js index 98f6063f1..d56d51b74 100644 --- a/build/settings_style.js +++ b/build/settings_style.js @@ -1 +1 @@ -(()=>{"use strict";var r,e={4818:()=>{}},o={};function t(r){var a=o[r];if(void 0!==a)return a.exports;var n=o[r]={exports:{}};return e[r](n,n.exports,t),n.exports}t.m=e,r=[],t.O=(e,o,a,n)=>{if(!o){var s=1/0;for(p=0;p=n)&&Object.keys(t.O).every((r=>t.O[r](o[l])))?o.splice(l--,1):(i=!1,n0&&r[p-1][2]>n;p--)r[p]=r[p-1];r[p]=[o,a,n]},t.o=(r,e)=>Object.prototype.hasOwnProperty.call(r,e),(()=>{var r={506:0,835:0};t.O.j=e=>0===r[e];var e=(e,o)=>{var a,n,[s,i,l]=o,v=0;if(s.some((e=>0!==r[e]))){for(a in i)t.o(i,a)&&(t.m[a]=i[a]);if(l)var p=l(t)}for(e&&e(o);vt(4818)));a=t.O(a)})(); \ No newline at end of file +(()=>{"use strict";var r,e={4818:()=>{}},t={};function o(r){var a=t[r];if(void 0!==a)return a.exports;var n=t[r]={exports:{}};return e[r](n,n.exports,o),n.exports}o.m=e,r=[],o.O=(e,t,a,n)=>{if(!t){var s=1/0;for(f=0;f=n)&&Object.keys(o.O).every((r=>o.O[r](t[v])))?t.splice(v--,1):(i=!1,n0&&r[f-1][2]>n;f--)r[f]=r[f-1];r[f]=[t,a,n]},o.o=(r,e)=>Object.prototype.hasOwnProperty.call(r,e),(()=>{var r={506:0,835:0};o.O.j=e=>0===r[e];var e=(e,t)=>{var a,n,s=t[0],i=t[1],v=t[2],p=0;if(s.some((e=>0!==r[e]))){for(a in i)o.o(i,a)&&(o.m[a]=i[a]);if(v)var f=v(o)}for(e&&e(t);po(4818)));a=o.O(a)})(); \ No newline at end of file