aboutsummaryrefslogtreecommitdiffstats
path: root/dist/9064-9064.js.map
blob: 48489ed78a0fd2e5e87f7c8015876511b9e49566 (plain)
1
{"version":3,"file":"9064-9064.js?v=8552ff7551ed1b088266","mappings":"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","sources":["webpack:///nextcloud/node_modules/@nextcloud/vue/dist/assets/NcSettingsSelectGroup-0d38d76b.css","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/assets/index-24f6c355.css","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/assets/index-34dfc54e.css","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/assets/index-5fa0ac5a.css","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/assets/index-6416f636.css","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/assets/index-6c47e88a.css","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/assets/index-8aa4712e.css","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/assets/index-93ad846c.css","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/assets/index-93bc89ef.css","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/assets/index-ab715d82.css","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/assets/index-c221fe05.css","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/assets/index-e7eadba7.css","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/assets/index-fc61f2d8.css","webpack://nextcloud/./node_modules/@nextcloud/vue/dist/assets/index-5fa0ac5a.css?cafc","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/Components/NcActionButtonGroup.mjs","webpack://nextcloud/./node_modules/@nextcloud/vue/dist/assets/index-24f6c355.css?1739","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/Components/NcActionRadio.mjs","webpack://nextcloud/./node_modules/@nextcloud/vue/dist/assets/index-93ad846c.css?b403","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/Components/NcActionTextEditable.mjs","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/Components/NcAppContentDetails.mjs","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/Components/NcAppContentList.mjs","webpack://nextcloud/./node_modules/@nextcloud/vue/dist/assets/index-fc61f2d8.css?f860","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/Components/NcAppNavigationIconBullet.mjs","webpack://nextcloud/./node_modules/@nextcloud/vue/dist/assets/index-93bc89ef.css?ee5f","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/Components/NcAppNavigationNewItem.mjs","webpack://nextcloud/./node_modules/@nextcloud/vue/dist/assets/index-34dfc54e.css?3ad0","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/Components/NcAppNavigationSettings.mjs","webpack://nextcloud/./node_modules/@nextcloud/vue/dist/assets/index-6416f636.css?9b06","webpack://nextcloud/./node_modules/@nextcloud/vue/dist/assets/index-e7eadba7.css?79db","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/Components/NcDashboardWidgetItem.mjs","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/Components/NcDashboardWidget.mjs","webpack://nextcloud/./node_modules/@nextcloud/vue/dist/assets/index-8aa4712e.css?e653","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/Components/NcGuestContent.mjs","webpack://nextcloud/./node_modules/@nextcloud/vue/dist/assets/index-ab715d82.css?da3a","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/Components/NcRelatedResourcesPanel.mjs","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/Components/NcSavingIndicatorIcon.mjs","webpack://nextcloud/./node_modules/@nextcloud/vue/dist/assets/index-6c47e88a.css?d9ac","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/Components/NcSettingsInputText.mjs","webpack://nextcloud/./node_modules/@nextcloud/vue/dist/assets/NcSettingsSelectGroup-0d38d76b.css?c6e5","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/chunks/NcSettingsSelectGroup-ae323579.mjs","webpack://nextcloud/./node_modules/@nextcloud/vue/dist/assets/index-c221fe05.css?4d04","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/Components/NcUserBubble.mjs","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/index.mjs","webpack:///nextcloud/node_modules/@nextcloud/dialogs/dist/chunks/FilePicker-5074f4ba.mjs","webpack:///nextcloud/node_modules/@nextcloud/files/dist/index.mjs","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/Components/NcRichContenteditable.mjs","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/chunks/NcRichText-1e8fd02d.mjs","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/chunks/referencePickerModal-6bc8f6b9.mjs"],"sourcesContent":["// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `@charset \"UTF-8\";\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n.material-design-icon[data-v-5a35ccce] {\n  display: flex;\n  align-self: center;\n  justify-self: center;\n  align-items: center;\n  justify-content: center;\n}\n.select-group-error[data-v-5a35ccce] {\n  color: var(--color-error);\n  font-size: 13px;\n  padding-inline-start: var(--border-radius-large);\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./node_modules/@nextcloud/vue/dist/assets/NcSettingsSelectGroup-0d38d76b.css\"],\"names\":[],\"mappings\":\"AAAA,gBAAgB;AAChB;;;;;;;;;;;;;;;;;;;;EAoBE;AACF;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,yBAAyB;EACzB,eAAe;EACf,gDAAgD;AAClD\",\"sourcesContent\":[\"@charset \\\"UTF-8\\\";\\n/**\\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @author John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @license GNU AGPL version 3 or any later version\\n *\\n * This program is free software: you can redistribute it and/or modify\\n * it under the terms of the GNU Affero General Public License as\\n * published by the Free Software Foundation, either version 3 of the\\n * License, or (at your option) any later version.\\n *\\n * This program is distributed in the hope that it will be useful,\\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\\n * GNU Affero General Public License for more details.\\n *\\n * You should have received a copy of the GNU Affero General Public License\\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\\n *\\n */\\n.material-design-icon[data-v-5a35ccce] {\\n  display: flex;\\n  align-self: center;\\n  justify-self: center;\\n  align-items: center;\\n  justify-content: center;\\n}\\n.select-group-error[data-v-5a35ccce] {\\n  color: var(--color-error);\\n  font-size: 13px;\\n  padding-inline-start: var(--border-radius-large);\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `@charset \"UTF-8\";\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n.material-design-icon[data-v-b5f9046e] {\n  display: flex;\n  align-self: center;\n  justify-self: center;\n  align-items: center;\n  justify-content: center;\n}\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Marco Ambrosini <marcoambrosini@icloud.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nli.active[data-v-b5f9046e] {\n  background-color: var(--color-background-hover);\n  border-radius: 6px;\n  padding: 0;\n}\n.action--disabled[data-v-b5f9046e] {\n  pointer-events: none;\n  opacity: .5;\n}\n.action--disabled[data-v-b5f9046e]:hover,\n.action--disabled[data-v-b5f9046e]:focus {\n  cursor: default;\n  opacity: .5;\n}\n.action--disabled *[data-v-b5f9046e] {\n  opacity: 1 !important;\n}\n.action-radio[data-v-b5f9046e] {\n  display: flex;\n  align-items: flex-start;\n  width: 100%;\n  height: auto;\n  margin: 0;\n  padding: 0;\n  cursor: pointer;\n  white-space: nowrap;\n  color: var(--color-main-text);\n  border: 0;\n  border-radius: 0;\n  background-color: transparent;\n  box-shadow: none;\n  font-weight: 400;\n  line-height: 44px;\n}\n.action-radio__radio[data-v-b5f9046e] {\n  position: absolute;\n  top: auto;\n  left: -10000px;\n  overflow: hidden;\n  width: 1px;\n  height: 1px;\n}\n.action-radio__label[data-v-b5f9046e] {\n  display: flex;\n  align-items: center;\n  width: 100%;\n  padding: 0 14px 0 0 !important;\n}\n.action-radio__label[data-v-b5f9046e]:before {\n  margin: 0 14px !important;\n}\n.action-radio--disabled[data-v-b5f9046e],\n.action-radio--disabled .action-radio__label[data-v-b5f9046e] {\n  cursor: pointer;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./node_modules/@nextcloud/vue/dist/assets/index-24f6c355.css\"],\"names\":[],\"mappings\":\"AAAA,gBAAgB;AAChB;;;;;;;;;;;;;;;;;;;;EAoBE;AACF;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;;;;;;;;;;;;;;;;;;;;;EAqBE;AACF;EACE,+CAA+C;EAC/C,kBAAkB;EAClB,UAAU;AACZ;AACA;EACE,oBAAoB;EACpB,WAAW;AACb;AACA;;EAEE,eAAe;EACf,WAAW;AACb;AACA;EACE,qBAAqB;AACvB;AACA;EACE,aAAa;EACb,uBAAuB;EACvB,WAAW;EACX,YAAY;EACZ,SAAS;EACT,UAAU;EACV,eAAe;EACf,mBAAmB;EACnB,6BAA6B;EAC7B,SAAS;EACT,gBAAgB;EAChB,6BAA6B;EAC7B,gBAAgB;EAChB,gBAAgB;EAChB,iBAAiB;AACnB;AACA;EACE,kBAAkB;EAClB,SAAS;EACT,cAAc;EACd,gBAAgB;EAChB,UAAU;EACV,WAAW;AACb;AACA;EACE,aAAa;EACb,mBAAmB;EACnB,WAAW;EACX,8BAA8B;AAChC;AACA;EACE,yBAAyB;AAC3B;AACA;;EAEE,eAAe;AACjB\",\"sourcesContent\":[\"@charset \\\"UTF-8\\\";\\n/**\\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @author John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @license GNU AGPL version 3 or any later version\\n *\\n * This program is free software: you can redistribute it and/or modify\\n * it under the terms of the GNU Affero General Public License as\\n * published by the Free Software Foundation, either version 3 of the\\n * License, or (at your option) any later version.\\n *\\n * This program is distributed in the hope that it will be useful,\\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\\n * GNU Affero General Public License for more details.\\n *\\n * You should have received a copy of the GNU Affero General Public License\\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\\n *\\n */\\n.material-design-icon[data-v-b5f9046e] {\\n  display: flex;\\n  align-self: center;\\n  justify-self: center;\\n  align-items: center;\\n  justify-content: center;\\n}\\n/**\\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @author John Molakvoæ <skjnldsv@protonmail.com>\\n * @author Marco Ambrosini <marcoambrosini@icloud.com>\\n *\\n * @license GNU AGPL version 3 or any later version\\n *\\n * This program is free software: you can redistribute it and/or modify\\n * it under the terms of the GNU Affero General Public License as\\n * published by the Free Software Foundation, either version 3 of the\\n * License, or (at your option) any later version.\\n *\\n * This program is distributed in the hope that it will be useful,\\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\\n * GNU Affero General Public License for more details.\\n *\\n * You should have received a copy of the GNU Affero General Public License\\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\\n *\\n */\\nli.active[data-v-b5f9046e] {\\n  background-color: var(--color-background-hover);\\n  border-radius: 6px;\\n  padding: 0;\\n}\\n.action--disabled[data-v-b5f9046e] {\\n  pointer-events: none;\\n  opacity: .5;\\n}\\n.action--disabled[data-v-b5f9046e]:hover,\\n.action--disabled[data-v-b5f9046e]:focus {\\n  cursor: default;\\n  opacity: .5;\\n}\\n.action--disabled *[data-v-b5f9046e] {\\n  opacity: 1 !important;\\n}\\n.action-radio[data-v-b5f9046e] {\\n  display: flex;\\n  align-items: flex-start;\\n  width: 100%;\\n  height: auto;\\n  margin: 0;\\n  padding: 0;\\n  cursor: pointer;\\n  white-space: nowrap;\\n  color: var(--color-main-text);\\n  border: 0;\\n  border-radius: 0;\\n  background-color: transparent;\\n  box-shadow: none;\\n  font-weight: 400;\\n  line-height: 44px;\\n}\\n.action-radio__radio[data-v-b5f9046e] {\\n  position: absolute;\\n  top: auto;\\n  left: -10000px;\\n  overflow: hidden;\\n  width: 1px;\\n  height: 1px;\\n}\\n.action-radio__label[data-v-b5f9046e] {\\n  display: flex;\\n  align-items: center;\\n  width: 100%;\\n  padding: 0 14px 0 0 !important;\\n}\\n.action-radio__label[data-v-b5f9046e]:before {\\n  margin: 0 14px !important;\\n}\\n.action-radio--disabled[data-v-b5f9046e],\\n.action-radio--disabled .action-radio__label[data-v-b5f9046e] {\\n  cursor: pointer;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `@charset \"UTF-8\";\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n.material-design-icon[data-v-db4cc195] {\n  display: flex;\n  align-self: center;\n  justify-self: center;\n  align-items: center;\n  justify-content: center;\n}\n#app-settings[data-v-db4cc195] {\n  margin-top: auto;\n  padding: 3px;\n}\n#app-settings__header[data-v-db4cc195] {\n  box-sizing: border-box;\n  margin: 0 3px 3px;\n}\n#app-settings__header .settings-button[data-v-db4cc195] {\n  display: flex;\n  flex: 1 1 0;\n  height: 44px;\n  width: 100%;\n  padding: 0 14px 0 0;\n  margin: 0;\n  background-color: var(--color-main-background);\n  box-shadow: none;\n  border: 0;\n  border-radius: var(--border-radius-pill);\n  text-align: left;\n  font-weight: 400;\n  font-size: 100%;\n  color: var(--color-main-text);\n  line-height: 44px;\n}\n#app-settings__header .settings-button[data-v-db4cc195]:hover,\n#app-settings__header .settings-button[data-v-db4cc195]:focus {\n  background-color: var(--color-background-hover);\n}\n#app-settings__header .settings-button__icon[data-v-db4cc195] {\n  width: 44px;\n  height: 44px;\n  min-width: 44px;\n}\n#app-settings__header .settings-button__label[data-v-db4cc195] {\n  overflow: hidden;\n  max-width: 100%;\n  white-space: nowrap;\n  text-overflow: ellipsis;\n}\n#app-settings__content[data-v-db4cc195] {\n  display: block;\n  padding: 10px;\n  margin-bottom: -3px;\n  max-height: 300px;\n  overflow-y: auto;\n  box-sizing: border-box;\n}\n.slide-up-leave-active[data-v-db4cc195],\n.slide-up-enter-active[data-v-db4cc195] {\n  transition-duration: var(--animation-slow);\n  transition-property: max-height, padding;\n  overflow-y: hidden !important;\n}\n.slide-up-enter[data-v-db4cc195],\n.slide-up-leave-to[data-v-db4cc195] {\n  max-height: 0 !important;\n  padding: 0 10px !important;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./node_modules/@nextcloud/vue/dist/assets/index-34dfc54e.css\"],\"names\":[],\"mappings\":\"AAAA,gBAAgB;AAChB;;;;;;;;;;;;;;;;;;;;EAoBE;AACF;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,gBAAgB;EAChB,YAAY;AACd;AACA;EACE,sBAAsB;EACtB,iBAAiB;AACnB;AACA;EACE,aAAa;EACb,WAAW;EACX,YAAY;EACZ,WAAW;EACX,mBAAmB;EACnB,SAAS;EACT,8CAA8C;EAC9C,gBAAgB;EAChB,SAAS;EACT,wCAAwC;EACxC,gBAAgB;EAChB,gBAAgB;EAChB,eAAe;EACf,6BAA6B;EAC7B,iBAAiB;AACnB;AACA;;EAEE,+CAA+C;AACjD;AACA;EACE,WAAW;EACX,YAAY;EACZ,eAAe;AACjB;AACA;EACE,gBAAgB;EAChB,eAAe;EACf,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,cAAc;EACd,aAAa;EACb,mBAAmB;EACnB,iBAAiB;EACjB,gBAAgB;EAChB,sBAAsB;AACxB;AACA;;EAEE,0CAA0C;EAC1C,wCAAwC;EACxC,6BAA6B;AAC/B;AACA;;EAEE,wBAAwB;EACxB,0BAA0B;AAC5B\",\"sourcesContent\":[\"@charset \\\"UTF-8\\\";\\n/**\\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @author John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @license GNU AGPL version 3 or any later version\\n *\\n * This program is free software: you can redistribute it and/or modify\\n * it under the terms of the GNU Affero General Public License as\\n * published by the Free Software Foundation, either version 3 of the\\n * License, or (at your option) any later version.\\n *\\n * This program is distributed in the hope that it will be useful,\\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\\n * GNU Affero General Public License for more details.\\n *\\n * You should have received a copy of the GNU Affero General Public License\\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\\n *\\n */\\n.material-design-icon[data-v-db4cc195] {\\n  display: flex;\\n  align-self: center;\\n  justify-self: center;\\n  align-items: center;\\n  justify-content: center;\\n}\\n#app-settings[data-v-db4cc195] {\\n  margin-top: auto;\\n  padding: 3px;\\n}\\n#app-settings__header[data-v-db4cc195] {\\n  box-sizing: border-box;\\n  margin: 0 3px 3px;\\n}\\n#app-settings__header .settings-button[data-v-db4cc195] {\\n  display: flex;\\n  flex: 1 1 0;\\n  height: 44px;\\n  width: 100%;\\n  padding: 0 14px 0 0;\\n  margin: 0;\\n  background-color: var(--color-main-background);\\n  box-shadow: none;\\n  border: 0;\\n  border-radius: var(--border-radius-pill);\\n  text-align: left;\\n  font-weight: 400;\\n  font-size: 100%;\\n  color: var(--color-main-text);\\n  line-height: 44px;\\n}\\n#app-settings__header .settings-button[data-v-db4cc195]:hover,\\n#app-settings__header .settings-button[data-v-db4cc195]:focus {\\n  background-color: var(--color-background-hover);\\n}\\n#app-settings__header .settings-button__icon[data-v-db4cc195] {\\n  width: 44px;\\n  height: 44px;\\n  min-width: 44px;\\n}\\n#app-settings__header .settings-button__label[data-v-db4cc195] {\\n  overflow: hidden;\\n  max-width: 100%;\\n  white-space: nowrap;\\n  text-overflow: ellipsis;\\n}\\n#app-settings__content[data-v-db4cc195] {\\n  display: block;\\n  padding: 10px;\\n  margin-bottom: -3px;\\n  max-height: 300px;\\n  overflow-y: auto;\\n  box-sizing: border-box;\\n}\\n.slide-up-leave-active[data-v-db4cc195],\\n.slide-up-enter-active[data-v-db4cc195] {\\n  transition-duration: var(--animation-slow);\\n  transition-property: max-height, padding;\\n  overflow-y: hidden !important;\\n}\\n.slide-up-enter[data-v-db4cc195],\\n.slide-up-leave-to[data-v-db4cc195] {\\n  max-height: 0 !important;\\n  padding: 0 10px !important;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `@charset \"UTF-8\";\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n.material-design-icon {\n  display: flex;\n  align-self: center;\n  justify-self: center;\n  align-items: center;\n  justify-content: center;\n}\n.nc-button-group-base > div {\n  text-align: center;\n  color: var(--color-text-maxcontrast);\n}\n.nc-button-group-base ul.nc-button-group-content {\n  display: flex;\n  justify-content: space-between;\n}\n.nc-button-group-base ul.nc-button-group-content li {\n  flex: 1 1;\n}\n.nc-button-group-base ul.nc-button-group-content .action-button {\n  padding: 0 !important;\n  width: 100%;\n  display: flex;\n  justify-content: center;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./node_modules/@nextcloud/vue/dist/assets/index-5fa0ac5a.css\"],\"names\":[],\"mappings\":\"AAAA,gBAAgB;AAChB;;;;;;;;;;;;;;;;;;;;EAoBE;AACF;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,kBAAkB;EAClB,oCAAoC;AACtC;AACA;EACE,aAAa;EACb,8BAA8B;AAChC;AACA;EACE,SAAS;AACX;AACA;EACE,qBAAqB;EACrB,WAAW;EACX,aAAa;EACb,uBAAuB;AACzB\",\"sourcesContent\":[\"@charset \\\"UTF-8\\\";\\n/**\\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @author John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @license GNU AGPL version 3 or any later version\\n *\\n * This program is free software: you can redistribute it and/or modify\\n * it under the terms of the GNU Affero General Public License as\\n * published by the Free Software Foundation, either version 3 of the\\n * License, or (at your option) any later version.\\n *\\n * This program is distributed in the hope that it will be useful,\\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\\n * GNU Affero General Public License for more details.\\n *\\n * You should have received a copy of the GNU Affero General Public License\\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\\n *\\n */\\n.material-design-icon {\\n  display: flex;\\n  align-self: center;\\n  justify-self: center;\\n  align-items: center;\\n  justify-content: center;\\n}\\n.nc-button-group-base > div {\\n  text-align: center;\\n  color: var(--color-text-maxcontrast);\\n}\\n.nc-button-group-base ul.nc-button-group-content {\\n  display: flex;\\n  justify-content: space-between;\\n}\\n.nc-button-group-base ul.nc-button-group-content li {\\n  flex: 1 1;\\n}\\n.nc-button-group-base ul.nc-button-group-content .action-button {\\n  padding: 0 !important;\\n  width: 100%;\\n  display: flex;\\n  justify-content: center;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `@charset \"UTF-8\";\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n.material-design-icon[data-v-1efcbeee] {\n  display: flex;\n  align-self: center;\n  justify-self: center;\n  align-items: center;\n  justify-content: center;\n}\n.dashboard-widget[data-v-1efcbeee] .empty-content {\n  text-align: center;\n  padding-top: 5vh;\n}\n.dashboard-widget[data-v-1efcbeee] .empty-content.half-screen {\n  padding-top: 0;\n  margin-bottom: 1vh;\n}\n.more[data-v-1efcbeee] {\n  display: block;\n  text-align: center;\n  color: var(--color-text-maxcontrast);\n  line-height: 60px;\n  cursor: pointer;\n}\n.more[data-v-1efcbeee]:hover,\n.more[data-v-1efcbeee]:focus {\n  background-color: var(--color-background-hover);\n  border-radius: var(--border-radius-large);\n  color: var(--color-main-text);\n}\n.item-list__entry[data-v-1efcbeee] {\n  display: flex;\n  align-items: flex-start;\n  padding: 8px;\n}\n.item-list__entry .item-avatar[data-v-1efcbeee] {\n  position: relative;\n  margin-top: auto;\n  margin-bottom: auto;\n  background-color: var(--color-background-dark) !important;\n}\n.item-list__entry .item__details[data-v-1efcbeee] {\n  padding-left: 8px;\n  max-height: 44px;\n  flex-grow: 1;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n}\n.item-list__entry .item__details h3[data-v-1efcbeee],\n.item-list__entry .item__details .message[data-v-1efcbeee] {\n  white-space: nowrap;\n  background-color: var(--color-background-dark);\n}\n.item-list__entry .item__details h3[data-v-1efcbeee] {\n  font-size: 100%;\n  margin: 0;\n}\n.item-list__entry .item__details .message[data-v-1efcbeee] {\n  width: 80%;\n  height: 15px;\n  margin-top: 5px;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./node_modules/@nextcloud/vue/dist/assets/index-6416f636.css\"],\"names\":[],\"mappings\":\"AAAA,gBAAgB;AAChB;;;;;;;;;;;;;;;;;;;;EAoBE;AACF;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,kBAAkB;EAClB,gBAAgB;AAClB;AACA;EACE,cAAc;EACd,kBAAkB;AACpB;AACA;EACE,cAAc;EACd,kBAAkB;EAClB,oCAAoC;EACpC,iBAAiB;EACjB,eAAe;AACjB;AACA;;EAEE,+CAA+C;EAC/C,yCAAyC;EACzC,6BAA6B;AAC/B;AACA;EACE,aAAa;EACb,uBAAuB;EACvB,YAAY;AACd;AACA;EACE,kBAAkB;EAClB,gBAAgB;EAChB,mBAAmB;EACnB,yDAAyD;AAC3D;AACA;EACE,iBAAiB;EACjB,gBAAgB;EAChB,YAAY;EACZ,gBAAgB;EAChB,aAAa;EACb,sBAAsB;AACxB;AACA;;EAEE,mBAAmB;EACnB,8CAA8C;AAChD;AACA;EACE,eAAe;EACf,SAAS;AACX;AACA;EACE,UAAU;EACV,YAAY;EACZ,eAAe;AACjB\",\"sourcesContent\":[\"@charset \\\"UTF-8\\\";\\n/**\\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @author John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @license GNU AGPL version 3 or any later version\\n *\\n * This program is free software: you can redistribute it and/or modify\\n * it under the terms of the GNU Affero General Public License as\\n * published by the Free Software Foundation, either version 3 of the\\n * License, or (at your option) any later version.\\n *\\n * This program is distributed in the hope that it will be useful,\\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\\n * GNU Affero General Public License for more details.\\n *\\n * You should have received a copy of the GNU Affero General Public License\\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\\n *\\n */\\n.material-design-icon[data-v-1efcbeee] {\\n  display: flex;\\n  align-self: center;\\n  justify-self: center;\\n  align-items: center;\\n  justify-content: center;\\n}\\n.dashboard-widget[data-v-1efcbeee] .empty-content {\\n  text-align: center;\\n  padding-top: 5vh;\\n}\\n.dashboard-widget[data-v-1efcbeee] .empty-content.half-screen {\\n  padding-top: 0;\\n  margin-bottom: 1vh;\\n}\\n.more[data-v-1efcbeee] {\\n  display: block;\\n  text-align: center;\\n  color: var(--color-text-maxcontrast);\\n  line-height: 60px;\\n  cursor: pointer;\\n}\\n.more[data-v-1efcbeee]:hover,\\n.more[data-v-1efcbeee]:focus {\\n  background-color: var(--color-background-hover);\\n  border-radius: var(--border-radius-large);\\n  color: var(--color-main-text);\\n}\\n.item-list__entry[data-v-1efcbeee] {\\n  display: flex;\\n  align-items: flex-start;\\n  padding: 8px;\\n}\\n.item-list__entry .item-avatar[data-v-1efcbeee] {\\n  position: relative;\\n  margin-top: auto;\\n  margin-bottom: auto;\\n  background-color: var(--color-background-dark) !important;\\n}\\n.item-list__entry .item__details[data-v-1efcbeee] {\\n  padding-left: 8px;\\n  max-height: 44px;\\n  flex-grow: 1;\\n  overflow: hidden;\\n  display: flex;\\n  flex-direction: column;\\n}\\n.item-list__entry .item__details h3[data-v-1efcbeee],\\n.item-list__entry .item__details .message[data-v-1efcbeee] {\\n  white-space: nowrap;\\n  background-color: var(--color-background-dark);\\n}\\n.item-list__entry .item__details h3[data-v-1efcbeee] {\\n  font-size: 100%;\\n  margin: 0;\\n}\\n.item-list__entry .item__details .message[data-v-1efcbeee] {\\n  width: 80%;\\n  height: 15px;\\n  margin-top: 5px;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `@charset \"UTF-8\";\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n.material-design-icon[data-v-5b140fb6] {\n  display: flex;\n  align-self: center;\n  justify-self: center;\n  align-items: center;\n  justify-content: center;\n}\n.input-wrapper[data-v-5b140fb6] {\n  display: flex;\n  align-items: center;\n  flex-wrap: wrap;\n  width: 100%;\n  max-width: 400px;\n}\n.input-wrapper .action-input__label[data-v-5b140fb6] {\n  margin-right: 12px;\n}\n.input-wrapper[data-v-5b140fb6]:disabled {\n  cursor: default;\n}\n.input-wrapper .hint[data-v-5b140fb6] {\n  color: var(--color-text-maxcontrast);\n  margin-left: 8px;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./node_modules/@nextcloud/vue/dist/assets/index-6c47e88a.css\"],\"names\":[],\"mappings\":\"AAAA,gBAAgB;AAChB;;;;;;;;;;;;;;;;;;;;EAoBE;AACF;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,aAAa;EACb,mBAAmB;EACnB,eAAe;EACf,WAAW;EACX,gBAAgB;AAClB;AACA;EACE,kBAAkB;AACpB;AACA;EACE,eAAe;AACjB;AACA;EACE,oCAAoC;EACpC,gBAAgB;AAClB\",\"sourcesContent\":[\"@charset \\\"UTF-8\\\";\\n/**\\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @author John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @license GNU AGPL version 3 or any later version\\n *\\n * This program is free software: you can redistribute it and/or modify\\n * it under the terms of the GNU Affero General Public License as\\n * published by the Free Software Foundation, either version 3 of the\\n * License, or (at your option) any later version.\\n *\\n * This program is distributed in the hope that it will be useful,\\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\\n * GNU Affero General Public License for more details.\\n *\\n * You should have received a copy of the GNU Affero General Public License\\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\\n *\\n */\\n.material-design-icon[data-v-5b140fb6] {\\n  display: flex;\\n  align-self: center;\\n  justify-self: center;\\n  align-items: center;\\n  justify-content: center;\\n}\\n.input-wrapper[data-v-5b140fb6] {\\n  display: flex;\\n  align-items: center;\\n  flex-wrap: wrap;\\n  width: 100%;\\n  max-width: 400px;\\n}\\n.input-wrapper .action-input__label[data-v-5b140fb6] {\\n  margin-right: 12px;\\n}\\n.input-wrapper[data-v-5b140fb6]:disabled {\\n  cursor: default;\\n}\\n.input-wrapper .hint[data-v-5b140fb6] {\\n  color: var(--color-text-maxcontrast);\\n  margin-left: 8px;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `@charset \"UTF-8\";\n.material-design-icon[data-v-36ad47ca] {\n  display: flex;\n  align-self: center;\n  justify-self: center;\n  align-items: center;\n  justify-content: center;\n}\n#guest-content-vue[data-v-36ad47ca] {\n  color: var(--color-main-text);\n  background-color: var(--color-main-background);\n  min-width: 0;\n  border-radius: var(--border-radius-large);\n  box-shadow: 0 0 10px var(--color-box-shadow);\n  height: fit-content;\n  padding: 15px;\n  margin: 20px auto;\n}\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n.material-design-icon {\n  display: flex;\n  align-self: center;\n  justify-self: center;\n  align-items: center;\n  justify-content: center;\n}\n#content.nc-guest-content {\n  overflow: auto;\n  margin-bottom: 0;\n  height: calc(var(--body-height) + var(--body-container-margin));\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./node_modules/@nextcloud/vue/dist/assets/index-8aa4712e.css\"],\"names\":[],\"mappings\":\"AAAA,gBAAgB;AAChB;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,6BAA6B;EAC7B,8CAA8C;EAC9C,YAAY;EACZ,yCAAyC;EACzC,4CAA4C;EAC5C,mBAAmB;EACnB,aAAa;EACb,iBAAiB;AACnB;AACA;;;;;;;;;;;;;;;;;;;;EAoBE;AACF;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,cAAc;EACd,gBAAgB;EAChB,+DAA+D;AACjE\",\"sourcesContent\":[\"@charset \\\"UTF-8\\\";\\n.material-design-icon[data-v-36ad47ca] {\\n  display: flex;\\n  align-self: center;\\n  justify-self: center;\\n  align-items: center;\\n  justify-content: center;\\n}\\n#guest-content-vue[data-v-36ad47ca] {\\n  color: var(--color-main-text);\\n  background-color: var(--color-main-background);\\n  min-width: 0;\\n  border-radius: var(--border-radius-large);\\n  box-shadow: 0 0 10px var(--color-box-shadow);\\n  height: fit-content;\\n  padding: 15px;\\n  margin: 20px auto;\\n}\\n/**\\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @author John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @license GNU AGPL version 3 or any later version\\n *\\n * This program is free software: you can redistribute it and/or modify\\n * it under the terms of the GNU Affero General Public License as\\n * published by the Free Software Foundation, either version 3 of the\\n * License, or (at your option) any later version.\\n *\\n * This program is distributed in the hope that it will be useful,\\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\\n * GNU Affero General Public License for more details.\\n *\\n * You should have received a copy of the GNU Affero General Public License\\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\\n *\\n */\\n.material-design-icon {\\n  display: flex;\\n  align-self: center;\\n  justify-self: center;\\n  align-items: center;\\n  justify-content: center;\\n}\\n#content.nc-guest-content {\\n  overflow: auto;\\n  margin-bottom: 0;\\n  height: calc(var(--body-height) + var(--body-container-margin));\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `@charset \"UTF-8\";\n.material-design-icon[data-v-b0b05af8] {\n  display: flex;\n  align-self: center;\n  justify-self: center;\n  align-items: center;\n  justify-content: center;\n}\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nbutton[data-v-b0b05af8]:not(.button-vue),\ninput[data-v-b0b05af8]:not([type=range]),\ntextarea[data-v-b0b05af8] {\n  margin: 0;\n  padding: 7px 6px;\n  cursor: text;\n  color: var(--color-text-lighter);\n  border: 1px solid var(--color-border-dark);\n  border-radius: var(--border-radius);\n  outline: none;\n  background-color: var(--color-main-background);\n  font-size: 13px;\n}\nbutton[data-v-b0b05af8]:not(.button-vue):not(:disabled):not(.primary):hover,\nbutton[data-v-b0b05af8]:not(.button-vue):not(:disabled):not(.primary):focus,\nbutton:not(.button-vue):not(:disabled):not(.primary).active[data-v-b0b05af8],\ninput[data-v-b0b05af8]:not([type=range]):not(:disabled):not(.primary):hover,\ninput[data-v-b0b05af8]:not([type=range]):not(:disabled):not(.primary):focus,\ninput:not([type=range]):not(:disabled):not(.primary).active[data-v-b0b05af8],\ntextarea[data-v-b0b05af8]:not(:disabled):not(.primary):hover,\ntextarea[data-v-b0b05af8]:not(:disabled):not(.primary):focus,\ntextarea:not(:disabled):not(.primary).active[data-v-b0b05af8] {\n  border-color: var(--color-primary-element);\n  outline: none;\n}\nbutton[data-v-b0b05af8]:not(.button-vue):not(:disabled):not(.primary):active,\ninput[data-v-b0b05af8]:not([type=range]):not(:disabled):not(.primary):active,\ntextarea[data-v-b0b05af8]:not(:disabled):not(.primary):active {\n  color: var(--color-text-light);\n  outline: none;\n  background-color: var(--color-main-background);\n}\nbutton[data-v-b0b05af8]:not(.button-vue):disabled,\ninput[data-v-b0b05af8]:not([type=range]):disabled,\ntextarea[data-v-b0b05af8]:disabled {\n  cursor: default;\n  opacity: .5;\n  color: var(--color-text-maxcontrast);\n  background-color: var(--color-background-dark);\n}\nbutton[data-v-b0b05af8]:not(.button-vue):required,\ninput[data-v-b0b05af8]:not([type=range]):required,\ntextarea[data-v-b0b05af8]:required {\n  box-shadow: none;\n}\nbutton[data-v-b0b05af8]:not(.button-vue):invalid,\ninput[data-v-b0b05af8]:not([type=range]):invalid,\ntextarea[data-v-b0b05af8]:invalid {\n  border-color: var(--color-error);\n  box-shadow: none !important;\n}\nbutton:not(.button-vue).primary[data-v-b0b05af8],\ninput:not([type=range]).primary[data-v-b0b05af8],\ntextarea.primary[data-v-b0b05af8] {\n  cursor: pointer;\n  color: var(--color-primary-element-text);\n  border-color: var(--color-primary-element);\n  background-color: var(--color-primary-element);\n}\nbutton:not(.button-vue).primary[data-v-b0b05af8]:not(:disabled):hover,\nbutton:not(.button-vue).primary[data-v-b0b05af8]:not(:disabled):focus,\nbutton:not(.button-vue).primary[data-v-b0b05af8]:not(:disabled):active,\ninput:not([type=range]).primary[data-v-b0b05af8]:not(:disabled):hover,\ninput:not([type=range]).primary[data-v-b0b05af8]:not(:disabled):focus,\ninput:not([type=range]).primary[data-v-b0b05af8]:not(:disabled):active,\ntextarea.primary[data-v-b0b05af8]:not(:disabled):hover,\ntextarea.primary[data-v-b0b05af8]:not(:disabled):focus,\ntextarea.primary[data-v-b0b05af8]:not(:disabled):active {\n  border-color: var(--color-primary-element-light);\n  background-color: var(--color-primary-element-light);\n}\nbutton:not(.button-vue).primary[data-v-b0b05af8]:not(:disabled):active,\ninput:not([type=range]).primary[data-v-b0b05af8]:not(:disabled):active,\ntextarea.primary[data-v-b0b05af8]:not(:disabled):active {\n  color: var(--color-primary-element-text-dark);\n}\nbutton:not(.button-vue).primary[data-v-b0b05af8]:disabled,\ninput:not([type=range]).primary[data-v-b0b05af8]:disabled,\ntextarea.primary[data-v-b0b05af8]:disabled {\n  cursor: default;\n  color: var(--color-primary-element-text-dark);\n  background-color: var(--color-primary-element);\n}\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Marco Ambrosini <marcoambrosini@icloud.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nli.active[data-v-b0b05af8] {\n  background-color: var(--color-background-hover);\n  border-radius: 6px;\n  padding: 0;\n}\n.action--disabled[data-v-b0b05af8] {\n  pointer-events: none;\n  opacity: .5;\n}\n.action--disabled[data-v-b0b05af8]:hover,\n.action--disabled[data-v-b0b05af8]:focus {\n  cursor: default;\n  opacity: .5;\n}\n.action--disabled *[data-v-b0b05af8] {\n  opacity: 1 !important;\n}\n.action-text-editable[data-v-b0b05af8] {\n  display: flex;\n  align-items: flex-start;\n  width: 100%;\n  height: auto;\n  margin: 0;\n  padding: 0;\n  cursor: pointer;\n  white-space: nowrap;\n  color: var(--color-main-text);\n  border: 0;\n  border-radius: 0;\n  background-color: transparent;\n  box-shadow: none;\n  font-weight: 400;\n  line-height: 44px;\n}\n.action-text-editable > span[data-v-b0b05af8] {\n  cursor: pointer;\n  white-space: nowrap;\n}\n.action-text-editable__icon[data-v-b0b05af8] {\n  min-width: 0;\n  min-height: 0;\n  padding: 22px 0 22px 44px;\n  background-position: 14px center;\n  background-size: 16px;\n}\n.action-text-editable[data-v-b0b05af8] .material-design-icon {\n  width: 44px;\n  height: 44px;\n  opacity: 1;\n}\n.action-text-editable[data-v-b0b05af8] .material-design-icon .material-design-icon__svg {\n  vertical-align: middle;\n}\n.action-text-editable__form[data-v-b0b05af8] {\n  display: flex;\n  flex: 1 1 auto;\n  flex-direction: column;\n  position: relative;\n  margin: 4px 0;\n  padding-right: 14px;\n}\n.action-text-editable__submit[data-v-b0b05af8] {\n  position: absolute;\n  left: -10000px;\n  top: auto;\n  width: 1px;\n  height: 1px;\n  overflow: hidden;\n}\n.action-text-editable__label[data-v-b0b05af8] {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: absolute;\n  right: 15px;\n  bottom: 1px;\n  width: 36px;\n  height: 36px;\n  box-sizing: border-box;\n  margin: 0;\n  padding: 7px 6px;\n  border: 0;\n  border-radius: 50%;\n  background-color: var(--color-main-background);\n  background-clip: padding-box;\n}\n.action-text-editable__label[data-v-b0b05af8],\n.action-text-editable__label *[data-v-b0b05af8] {\n  cursor: pointer;\n}\n.action-text-editable__textarea[data-v-b0b05af8] {\n  flex: 1 1 auto;\n  color: inherit;\n  border-color: var(--color-border-maxcontrast);\n  min-height: 80px;\n  max-height: 124px;\n  min-width: 176px;\n  width: 100% !important;\n  margin: 0;\n}\n.action-text-editable__textarea[data-v-b0b05af8]:disabled {\n  cursor: default;\n}\n.action-text-editable__textarea:not(:active):not(:hover):not(:focus):invalid + .action-text-editable__label[data-v-b0b05af8] {\n  background-color: var(--color-error);\n}\n.action-text-editable__textarea:not(:active):not(:hover):not(:focus):not(:disabled) + .action-text-editable__label[data-v-b0b05af8]:active,\n.action-text-editable__textarea:not(:active):not(:hover):not(:focus):not(:disabled) + .action-text-editable__label[data-v-b0b05af8]:hover,\n.action-text-editable__textarea:not(:active):not(:hover):not(:focus):not(:disabled) + .action-text-editable__label[data-v-b0b05af8]:focus {\n  background-color: var(--color-primary-element);\n  color: var(--color-primary-element-text);\n}\n.action-text-editable__textarea:active:not(:disabled) + .action-text-editable__label[data-v-b0b05af8],\n.action-text-editable__textarea:hover:not(:disabled) + .action-text-editable__label[data-v-b0b05af8],\n.action-text-editable__textarea:focus:not(:disabled) + .action-text-editable__label[data-v-b0b05af8] {\n  z-index: 2;\n  border-color: var(--color-primary-element);\n  border-left-color: transparent;\n}\nli:last-child > .action-text-editable[data-v-b0b05af8] {\n  margin-bottom: 10px;\n}\nli:first-child > .action-text-editable[data-v-b0b05af8] {\n  margin-top: 10px;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./node_modules/@nextcloud/vue/dist/assets/index-93ad846c.css\"],\"names\":[],\"mappings\":\"AAAA,gBAAgB;AAChB;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;;;;;;;;;;;;;;;;;;;;EAoBE;AACF;;;EAGE,SAAS;EACT,gBAAgB;EAChB,YAAY;EACZ,gCAAgC;EAChC,0CAA0C;EAC1C,mCAAmC;EACnC,aAAa;EACb,8CAA8C;EAC9C,eAAe;AACjB;AACA;;;;;;;;;EASE,0CAA0C;EAC1C,aAAa;AACf;AACA;;;EAGE,8BAA8B;EAC9B,aAAa;EACb,8CAA8C;AAChD;AACA;;;EAGE,eAAe;EACf,WAAW;EACX,oCAAoC;EACpC,8CAA8C;AAChD;AACA;;;EAGE,gBAAgB;AAClB;AACA;;;EAGE,gCAAgC;EAChC,2BAA2B;AAC7B;AACA;;;EAGE,eAAe;EACf,wCAAwC;EACxC,0CAA0C;EAC1C,8CAA8C;AAChD;AACA;;;;;;;;;EASE,gDAAgD;EAChD,oDAAoD;AACtD;AACA;;;EAGE,6CAA6C;AAC/C;AACA;;;EAGE,eAAe;EACf,6CAA6C;EAC7C,8CAA8C;AAChD;AACA;;;;;;;;;;;;;;;;;;;;;EAqBE;AACF;EACE,+CAA+C;EAC/C,kBAAkB;EAClB,UAAU;AACZ;AACA;EACE,oBAAoB;EACpB,WAAW;AACb;AACA;;EAEE,eAAe;EACf,WAAW;AACb;AACA;EACE,qBAAqB;AACvB;AACA;EACE,aAAa;EACb,uBAAuB;EACvB,WAAW;EACX,YAAY;EACZ,SAAS;EACT,UAAU;EACV,eAAe;EACf,mBAAmB;EACnB,6BAA6B;EAC7B,SAAS;EACT,gBAAgB;EAChB,6BAA6B;EAC7B,gBAAgB;EAChB,gBAAgB;EAChB,iBAAiB;AACnB;AACA;EACE,eAAe;EACf,mBAAmB;AACrB;AACA;EACE,YAAY;EACZ,aAAa;EACb,yBAAyB;EACzB,gCAAgC;EAChC,qBAAqB;AACvB;AACA;EACE,WAAW;EACX,YAAY;EACZ,UAAU;AACZ;AACA;EACE,sBAAsB;AACxB;AACA;EACE,aAAa;EACb,cAAc;EACd,sBAAsB;EACtB,kBAAkB;EAClB,aAAa;EACb,mBAAmB;AACrB;AACA;EACE,kBAAkB;EAClB,cAAc;EACd,SAAS;EACT,UAAU;EACV,WAAW;EACX,gBAAgB;AAClB;AACA;EACE,aAAa;EACb,mBAAmB;EACnB,uBAAuB;EACvB,kBAAkB;EAClB,WAAW;EACX,WAAW;EACX,WAAW;EACX,YAAY;EACZ,sBAAsB;EACtB,SAAS;EACT,gBAAgB;EAChB,SAAS;EACT,kBAAkB;EAClB,8CAA8C;EAC9C,4BAA4B;AAC9B;AACA;;EAEE,eAAe;AACjB;AACA;EACE,cAAc;EACd,cAAc;EACd,6CAA6C;EAC7C,gBAAgB;EAChB,iBAAiB;EACjB,gBAAgB;EAChB,sBAAsB;EACtB,SAAS;AACX;AACA;EACE,eAAe;AACjB;AACA;EACE,oCAAoC;AACtC;AACA;;;EAGE,8CAA8C;EAC9C,wCAAwC;AAC1C;AACA;;;EAGE,UAAU;EACV,0CAA0C;EAC1C,8BAA8B;AAChC;AACA;EACE,mBAAmB;AACrB;AACA;EACE,gBAAgB;AAClB\",\"sourcesContent\":[\"@charset \\\"UTF-8\\\";\\n.material-design-icon[data-v-b0b05af8] {\\n  display: flex;\\n  align-self: center;\\n  justify-self: center;\\n  align-items: center;\\n  justify-content: center;\\n}\\n/**\\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @author John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @license GNU AGPL version 3 or any later version\\n *\\n * This program is free software: you can redistribute it and/or modify\\n * it under the terms of the GNU Affero General Public License as\\n * published by the Free Software Foundation, either version 3 of the\\n * License, or (at your option) any later version.\\n *\\n * This program is distributed in the hope that it will be useful,\\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\\n * GNU Affero General Public License for more details.\\n *\\n * You should have received a copy of the GNU Affero General Public License\\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\\n *\\n */\\nbutton[data-v-b0b05af8]:not(.button-vue),\\ninput[data-v-b0b05af8]:not([type=range]),\\ntextarea[data-v-b0b05af8] {\\n  margin: 0;\\n  padding: 7px 6px;\\n  cursor: text;\\n  color: var(--color-text-lighter);\\n  border: 1px solid var(--color-border-dark);\\n  border-radius: var(--border-radius);\\n  outline: none;\\n  background-color: var(--color-main-background);\\n  font-size: 13px;\\n}\\nbutton[data-v-b0b05af8]:not(.button-vue):not(:disabled):not(.primary):hover,\\nbutton[data-v-b0b05af8]:not(.button-vue):not(:disabled):not(.primary):focus,\\nbutton:not(.button-vue):not(:disabled):not(.primary).active[data-v-b0b05af8],\\ninput[data-v-b0b05af8]:not([type=range]):not(:disabled):not(.primary):hover,\\ninput[data-v-b0b05af8]:not([type=range]):not(:disabled):not(.primary):focus,\\ninput:not([type=range]):not(:disabled):not(.primary).active[data-v-b0b05af8],\\ntextarea[data-v-b0b05af8]:not(:disabled):not(.primary):hover,\\ntextarea[data-v-b0b05af8]:not(:disabled):not(.primary):focus,\\ntextarea:not(:disabled):not(.primary).active[data-v-b0b05af8] {\\n  border-color: var(--color-primary-element);\\n  outline: none;\\n}\\nbutton[data-v-b0b05af8]:not(.button-vue):not(:disabled):not(.primary):active,\\ninput[data-v-b0b05af8]:not([type=range]):not(:disabled):not(.primary):active,\\ntextarea[data-v-b0b05af8]:not(:disabled):not(.primary):active {\\n  color: var(--color-text-light);\\n  outline: none;\\n  background-color: var(--color-main-background);\\n}\\nbutton[data-v-b0b05af8]:not(.button-vue):disabled,\\ninput[data-v-b0b05af8]:not([type=range]):disabled,\\ntextarea[data-v-b0b05af8]:disabled {\\n  cursor: default;\\n  opacity: .5;\\n  color: var(--color-text-maxcontrast);\\n  background-color: var(--color-background-dark);\\n}\\nbutton[data-v-b0b05af8]:not(.button-vue):required,\\ninput[data-v-b0b05af8]:not([type=range]):required,\\ntextarea[data-v-b0b05af8]:required {\\n  box-shadow: none;\\n}\\nbutton[data-v-b0b05af8]:not(.button-vue):invalid,\\ninput[data-v-b0b05af8]:not([type=range]):invalid,\\ntextarea[data-v-b0b05af8]:invalid {\\n  border-color: var(--color-error);\\n  box-shadow: none !important;\\n}\\nbutton:not(.button-vue).primary[data-v-b0b05af8],\\ninput:not([type=range]).primary[data-v-b0b05af8],\\ntextarea.primary[data-v-b0b05af8] {\\n  cursor: pointer;\\n  color: var(--color-primary-element-text);\\n  border-color: var(--color-primary-element);\\n  background-color: var(--color-primary-element);\\n}\\nbutton:not(.button-vue).primary[data-v-b0b05af8]:not(:disabled):hover,\\nbutton:not(.button-vue).primary[data-v-b0b05af8]:not(:disabled):focus,\\nbutton:not(.button-vue).primary[data-v-b0b05af8]:not(:disabled):active,\\ninput:not([type=range]).primary[data-v-b0b05af8]:not(:disabled):hover,\\ninput:not([type=range]).primary[data-v-b0b05af8]:not(:disabled):focus,\\ninput:not([type=range]).primary[data-v-b0b05af8]:not(:disabled):active,\\ntextarea.primary[data-v-b0b05af8]:not(:disabled):hover,\\ntextarea.primary[data-v-b0b05af8]:not(:disabled):focus,\\ntextarea.primary[data-v-b0b05af8]:not(:disabled):active {\\n  border-color: var(--color-primary-element-light);\\n  background-color: var(--color-primary-element-light);\\n}\\nbutton:not(.button-vue).primary[data-v-b0b05af8]:not(:disabled):active,\\ninput:not([type=range]).primary[data-v-b0b05af8]:not(:disabled):active,\\ntextarea.primary[data-v-b0b05af8]:not(:disabled):active {\\n  color: var(--color-primary-element-text-dark);\\n}\\nbutton:not(.button-vue).primary[data-v-b0b05af8]:disabled,\\ninput:not([type=range]).primary[data-v-b0b05af8]:disabled,\\ntextarea.primary[data-v-b0b05af8]:disabled {\\n  cursor: default;\\n  color: var(--color-primary-element-text-dark);\\n  background-color: var(--color-primary-element);\\n}\\n/**\\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @author John Molakvoæ <skjnldsv@protonmail.com>\\n * @author Marco Ambrosini <marcoambrosini@icloud.com>\\n *\\n * @license GNU AGPL version 3 or any later version\\n *\\n * This program is free software: you can redistribute it and/or modify\\n * it under the terms of the GNU Affero General Public License as\\n * published by the Free Software Foundation, either version 3 of the\\n * License, or (at your option) any later version.\\n *\\n * This program is distributed in the hope that it will be useful,\\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\\n * GNU Affero General Public License for more details.\\n *\\n * You should have received a copy of the GNU Affero General Public License\\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\\n *\\n */\\nli.active[data-v-b0b05af8] {\\n  background-color: var(--color-background-hover);\\n  border-radius: 6px;\\n  padding: 0;\\n}\\n.action--disabled[data-v-b0b05af8] {\\n  pointer-events: none;\\n  opacity: .5;\\n}\\n.action--disabled[data-v-b0b05af8]:hover,\\n.action--disabled[data-v-b0b05af8]:focus {\\n  cursor: default;\\n  opacity: .5;\\n}\\n.action--disabled *[data-v-b0b05af8] {\\n  opacity: 1 !important;\\n}\\n.action-text-editable[data-v-b0b05af8] {\\n  display: flex;\\n  align-items: flex-start;\\n  width: 100%;\\n  height: auto;\\n  margin: 0;\\n  padding: 0;\\n  cursor: pointer;\\n  white-space: nowrap;\\n  color: var(--color-main-text);\\n  border: 0;\\n  border-radius: 0;\\n  background-color: transparent;\\n  box-shadow: none;\\n  font-weight: 400;\\n  line-height: 44px;\\n}\\n.action-text-editable > span[data-v-b0b05af8] {\\n  cursor: pointer;\\n  white-space: nowrap;\\n}\\n.action-text-editable__icon[data-v-b0b05af8] {\\n  min-width: 0;\\n  min-height: 0;\\n  padding: 22px 0 22px 44px;\\n  background-position: 14px center;\\n  background-size: 16px;\\n}\\n.action-text-editable[data-v-b0b05af8] .material-design-icon {\\n  width: 44px;\\n  height: 44px;\\n  opacity: 1;\\n}\\n.action-text-editable[data-v-b0b05af8] .material-design-icon .material-design-icon__svg {\\n  vertical-align: middle;\\n}\\n.action-text-editable__form[data-v-b0b05af8] {\\n  display: flex;\\n  flex: 1 1 auto;\\n  flex-direction: column;\\n  position: relative;\\n  margin: 4px 0;\\n  padding-right: 14px;\\n}\\n.action-text-editable__submit[data-v-b0b05af8] {\\n  position: absolute;\\n  left: -10000px;\\n  top: auto;\\n  width: 1px;\\n  height: 1px;\\n  overflow: hidden;\\n}\\n.action-text-editable__label[data-v-b0b05af8] {\\n  display: flex;\\n  align-items: center;\\n  justify-content: center;\\n  position: absolute;\\n  right: 15px;\\n  bottom: 1px;\\n  width: 36px;\\n  height: 36px;\\n  box-sizing: border-box;\\n  margin: 0;\\n  padding: 7px 6px;\\n  border: 0;\\n  border-radius: 50%;\\n  background-color: var(--color-main-background);\\n  background-clip: padding-box;\\n}\\n.action-text-editable__label[data-v-b0b05af8],\\n.action-text-editable__label *[data-v-b0b05af8] {\\n  cursor: pointer;\\n}\\n.action-text-editable__textarea[data-v-b0b05af8] {\\n  flex: 1 1 auto;\\n  color: inherit;\\n  border-color: var(--color-border-maxcontrast);\\n  min-height: 80px;\\n  max-height: 124px;\\n  min-width: 176px;\\n  width: 100% !important;\\n  margin: 0;\\n}\\n.action-text-editable__textarea[data-v-b0b05af8]:disabled {\\n  cursor: default;\\n}\\n.action-text-editable__textarea:not(:active):not(:hover):not(:focus):invalid + .action-text-editable__label[data-v-b0b05af8] {\\n  background-color: var(--color-error);\\n}\\n.action-text-editable__textarea:not(:active):not(:hover):not(:focus):not(:disabled) + .action-text-editable__label[data-v-b0b05af8]:active,\\n.action-text-editable__textarea:not(:active):not(:hover):not(:focus):not(:disabled) + .action-text-editable__label[data-v-b0b05af8]:hover,\\n.action-text-editable__textarea:not(:active):not(:hover):not(:focus):not(:disabled) + .action-text-editable__label[data-v-b0b05af8]:focus {\\n  background-color: var(--color-primary-element);\\n  color: var(--color-primary-element-text);\\n}\\n.action-text-editable__textarea:active:not(:disabled) + .action-text-editable__label[data-v-b0b05af8],\\n.action-text-editable__textarea:hover:not(:disabled) + .action-text-editable__label[data-v-b0b05af8],\\n.action-text-editable__textarea:focus:not(:disabled) + .action-text-editable__label[data-v-b0b05af8] {\\n  z-index: 2;\\n  border-color: var(--color-primary-element);\\n  border-left-color: transparent;\\n}\\nli:last-child > .action-text-editable[data-v-b0b05af8] {\\n  margin-bottom: 10px;\\n}\\nli:first-child > .action-text-editable[data-v-b0b05af8] {\\n  margin-top: 10px;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `@charset \"UTF-8\";\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n.material-design-icon[data-v-8950be04] {\n  display: flex;\n  align-self: center;\n  justify-self: center;\n  align-items: center;\n  justify-content: center;\n}\n.app-navigation-entry[data-v-8950be04] {\n  position: relative;\n  display: flex;\n  flex-shrink: 0;\n  flex-wrap: wrap;\n  box-sizing: border-box;\n  width: 100%;\n  min-height: 44px;\n  transition: background-color var(--animation-quick) ease-in-out;\n  transition: background-color .2s ease-in-out;\n  border-radius: var(--border-radius-pill);\n}\n.app-navigation-entry-wrapper[data-v-8950be04] {\n  position: relative;\n  display: flex;\n  flex-shrink: 0;\n  flex-wrap: wrap;\n  box-sizing: border-box;\n  width: 100%;\n}\n.app-navigation-entry-wrapper.app-navigation-entry--collapsible:not(.app-navigation-entry--opened) > ul[data-v-8950be04] {\n  display: none;\n}\n.app-navigation-entry.active[data-v-8950be04] {\n  background-color: var(--color-primary-element) !important;\n}\n.app-navigation-entry.active .app-navigation-entry-link[data-v-8950be04],\n.app-navigation-entry.active .app-navigation-entry-button[data-v-8950be04] {\n  color: var(--color-primary-element-text) !important;\n}\n.app-navigation-entry[data-v-8950be04]:focus-within,\n.app-navigation-entry[data-v-8950be04]:hover {\n  background-color: var(--color-background-hover);\n}\n.app-navigation-entry.active .app-navigation-entry__children[data-v-8950be04],\n.app-navigation-entry:focus-within .app-navigation-entry__children[data-v-8950be04],\n.app-navigation-entry:hover .app-navigation-entry__children[data-v-8950be04] {\n  background-color: var(--color-main-background);\n}\n.app-navigation-entry.active .app-navigation-entry__utils .app-navigation-entry__actions[data-v-8950be04],\n.app-navigation-entry.app-navigation-entry--deleted .app-navigation-entry__utils .app-navigation-entry__actions[data-v-8950be04],\n.app-navigation-entry:focus .app-navigation-entry__utils .app-navigation-entry__actions[data-v-8950be04],\n.app-navigation-entry:focus-within .app-navigation-entry__utils .app-navigation-entry__actions[data-v-8950be04],\n.app-navigation-entry:hover .app-navigation-entry__utils .app-navigation-entry__actions[data-v-8950be04] {\n  display: inline-block;\n}\n.app-navigation-entry.app-navigation-entry--deleted > ul[data-v-8950be04] {\n  display: none;\n}\n.app-navigation-entry:not(.app-navigation-entry--editing) .app-navigation-entry-link[data-v-8950be04],\n.app-navigation-entry:not(.app-navigation-entry--editing) .app-navigation-entry-button[data-v-8950be04] {\n  padding-right: 14px;\n}\n.app-navigation-entry .app-navigation-entry-link[data-v-8950be04],\n.app-navigation-entry .app-navigation-entry-button[data-v-8950be04] {\n  z-index: 100;\n  display: flex;\n  overflow: hidden;\n  flex: 1 1 0;\n  box-sizing: border-box;\n  min-height: 44px;\n  padding: 0;\n  white-space: nowrap;\n  color: var(--color-main-text);\n  background-repeat: no-repeat;\n  background-position: 14px center;\n  background-size: 16px 16px;\n  line-height: 44px;\n}\n.app-navigation-entry .app-navigation-entry-link .app-navigation-entry-icon[data-v-8950be04],\n.app-navigation-entry .app-navigation-entry-button .app-navigation-entry-icon[data-v-8950be04] {\n  display: flex;\n  align-items: center;\n  flex: 0 0 44px;\n  justify-content: center;\n  width: 44px;\n  height: 44px;\n  background-size: 16px 16px;\n  background-repeat: no-repeat;\n  background-position: 14px center;\n}\n.app-navigation-entry .app-navigation-entry-link .app-navigation-entry__name[data-v-8950be04],\n.app-navigation-entry .app-navigation-entry-button .app-navigation-entry__name[data-v-8950be04] {\n  overflow: hidden;\n  max-width: 100%;\n  white-space: nowrap;\n  text-overflow: ellipsis;\n}\n.app-navigation-entry .app-navigation-entry-link .editingContainer[data-v-8950be04],\n.app-navigation-entry .app-navigation-entry-button .editingContainer[data-v-8950be04] {\n  width: calc(100% - 44px);\n  margin: auto;\n}\n.app-navigation-entry__children[data-v-8950be04] {\n  position: relative;\n  display: flex;\n  flex: 0 1 auto;\n  flex-direction: column;\n  width: 100%;\n  gap: var(--default-grid-baseline, 4px);\n}\n.app-navigation-entry__children .app-navigation-entry[data-v-8950be04] {\n  display: inline-flex;\n  flex-wrap: wrap;\n  padding-left: 16px;\n}\n.app-navigation-entry__deleted[data-v-8950be04] {\n  display: inline-flex;\n  flex: 1 1 0;\n  padding-left: 30px !important;\n}\n.app-navigation-entry__deleted .app-navigation-entry__deleted-description[data-v-8950be04] {\n  position: relative;\n  overflow: hidden;\n  flex: 1 1 0;\n  white-space: nowrap;\n  text-overflow: ellipsis;\n  line-height: 44px;\n}\n.app-navigation-entry__utils[data-v-8950be04] {\n  display: flex;\n  min-width: 44px;\n  align-items: center;\n  flex: 0 1 auto;\n  justify-content: flex-end;\n}\n.app-navigation-entry__utils.app-navigation-entry__utils--display-actions .action-item.app-navigation-entry__actions[data-v-8950be04] {\n  display: inline-block;\n}\n.app-navigation-entry__utils .app-navigation-entry__counter-wrapper[data-v-8950be04] {\n  margin-right: calc(var(--default-grid-baseline) * 3);\n  display: flex;\n  align-items: center;\n  flex: 0 1 auto;\n}\n.app-navigation-entry__utils .action-item.app-navigation-entry__actions[data-v-8950be04] {\n  display: none;\n}\n.app-navigation-entry--editing .app-navigation-entry-edit[data-v-8950be04] {\n  z-index: 250;\n  opacity: 1;\n}\n.app-navigation-entry--deleted .app-navigation-entry-deleted[data-v-8950be04] {\n  z-index: 250;\n  transform: translate(0);\n}\n.app-navigation-entry--pinned[data-v-8950be04] {\n  order: 2;\n  margin-top: auto;\n}\n.app-navigation-entry--pinned ~ .app-navigation-entry--pinned[data-v-8950be04] {\n  margin-top: 0;\n}\n[data-themes*=highcontrast] .app-navigation-entry[data-v-8950be04]:active {\n  background-color: var(--color-primary-element-light-hover) !important;\n}\n.app-navigation-new-item__name[data-v-8950be04] {\n  overflow: hidden;\n  max-width: 100%;\n  white-space: nowrap;\n  text-overflow: ellipsis;\n  padding-left: 7px;\n  font-size: 14px;\n}\n.newItemContainer[data-v-8950be04] {\n  width: calc(100% - 44px);\n  margin: auto;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./node_modules/@nextcloud/vue/dist/assets/index-93bc89ef.css\"],\"names\":[],\"mappings\":\"AAAA,gBAAgB;AAChB;;;;;;;;;;;;;;;;;;;;EAoBE;AACF;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,kBAAkB;EAClB,aAAa;EACb,cAAc;EACd,eAAe;EACf,sBAAsB;EACtB,WAAW;EACX,gBAAgB;EAChB,+DAA+D;EAC/D,4CAA4C;EAC5C,wCAAwC;AAC1C;AACA;EACE,kBAAkB;EAClB,aAAa;EACb,cAAc;EACd,eAAe;EACf,sBAAsB;EACtB,WAAW;AACb;AACA;EACE,aAAa;AACf;AACA;EACE,yDAAyD;AAC3D;AACA;;EAEE,mDAAmD;AACrD;AACA;;EAEE,+CAA+C;AACjD;AACA;;;EAGE,8CAA8C;AAChD;AACA;;;;;EAKE,qBAAqB;AACvB;AACA;EACE,aAAa;AACf;AACA;;EAEE,mBAAmB;AACrB;AACA;;EAEE,YAAY;EACZ,aAAa;EACb,gBAAgB;EAChB,WAAW;EACX,sBAAsB;EACtB,gBAAgB;EAChB,UAAU;EACV,mBAAmB;EACnB,6BAA6B;EAC7B,4BAA4B;EAC5B,gCAAgC;EAChC,0BAA0B;EAC1B,iBAAiB;AACnB;AACA;;EAEE,aAAa;EACb,mBAAmB;EACnB,cAAc;EACd,uBAAuB;EACvB,WAAW;EACX,YAAY;EACZ,0BAA0B;EAC1B,4BAA4B;EAC5B,gCAAgC;AAClC;AACA;;EAEE,gBAAgB;EAChB,eAAe;EACf,mBAAmB;EACnB,uBAAuB;AACzB;AACA;;EAEE,wBAAwB;EACxB,YAAY;AACd;AACA;EACE,kBAAkB;EAClB,aAAa;EACb,cAAc;EACd,sBAAsB;EACtB,WAAW;EACX,sCAAsC;AACxC;AACA;EACE,oBAAoB;EACpB,eAAe;EACf,kBAAkB;AACpB;AACA;EACE,oBAAoB;EACpB,WAAW;EACX,6BAA6B;AAC/B;AACA;EACE,kBAAkB;EAClB,gBAAgB;EAChB,WAAW;EACX,mBAAmB;EACnB,uBAAuB;EACvB,iBAAiB;AACnB;AACA;EACE,aAAa;EACb,eAAe;EACf,mBAAmB;EACnB,cAAc;EACd,yBAAyB;AAC3B;AACA;EACE,qBAAqB;AACvB;AACA;EACE,oDAAoD;EACpD,aAAa;EACb,mBAAmB;EACnB,cAAc;AAChB;AACA;EACE,aAAa;AACf;AACA;EACE,YAAY;EACZ,UAAU;AACZ;AACA;EACE,YAAY;EACZ,uBAAuB;AACzB;AACA;EACE,QAAQ;EACR,gBAAgB;AAClB;AACA;EACE,aAAa;AACf;AACA;EACE,qEAAqE;AACvE;AACA;EACE,gBAAgB;EAChB,eAAe;EACf,mBAAmB;EACnB,uBAAuB;EACvB,iBAAiB;EACjB,eAAe;AACjB;AACA;EACE,wBAAwB;EACxB,YAAY;AACd\",\"sourcesContent\":[\"@charset \\\"UTF-8\\\";\\n/**\\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @author John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @license GNU AGPL version 3 or any later version\\n *\\n * This program is free software: you can redistribute it and/or modify\\n * it under the terms of the GNU Affero General Public License as\\n * published by the Free Software Foundation, either version 3 of the\\n * License, or (at your option) any later version.\\n *\\n * This program is distributed in the hope that it will be useful,\\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\\n * GNU Affero General Public License for more details.\\n *\\n * You should have received a copy of the GNU Affero General Public License\\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\\n *\\n */\\n.material-design-icon[data-v-8950be04] {\\n  display: flex;\\n  align-self: center;\\n  justify-self: center;\\n  align-items: center;\\n  justify-content: center;\\n}\\n.app-navigation-entry[data-v-8950be04] {\\n  position: relative;\\n  display: flex;\\n  flex-shrink: 0;\\n  flex-wrap: wrap;\\n  box-sizing: border-box;\\n  width: 100%;\\n  min-height: 44px;\\n  transition: background-color var(--animation-quick) ease-in-out;\\n  transition: background-color .2s ease-in-out;\\n  border-radius: var(--border-radius-pill);\\n}\\n.app-navigation-entry-wrapper[data-v-8950be04] {\\n  position: relative;\\n  display: flex;\\n  flex-shrink: 0;\\n  flex-wrap: wrap;\\n  box-sizing: border-box;\\n  width: 100%;\\n}\\n.app-navigation-entry-wrapper.app-navigation-entry--collapsible:not(.app-navigation-entry--opened) > ul[data-v-8950be04] {\\n  display: none;\\n}\\n.app-navigation-entry.active[data-v-8950be04] {\\n  background-color: var(--color-primary-element) !important;\\n}\\n.app-navigation-entry.active .app-navigation-entry-link[data-v-8950be04],\\n.app-navigation-entry.active .app-navigation-entry-button[data-v-8950be04] {\\n  color: var(--color-primary-element-text) !important;\\n}\\n.app-navigation-entry[data-v-8950be04]:focus-within,\\n.app-navigation-entry[data-v-8950be04]:hover {\\n  background-color: var(--color-background-hover);\\n}\\n.app-navigation-entry.active .app-navigation-entry__children[data-v-8950be04],\\n.app-navigation-entry:focus-within .app-navigation-entry__children[data-v-8950be04],\\n.app-navigation-entry:hover .app-navigation-entry__children[data-v-8950be04] {\\n  background-color: var(--color-main-background);\\n}\\n.app-navigation-entry.active .app-navigation-entry__utils .app-navigation-entry__actions[data-v-8950be04],\\n.app-navigation-entry.app-navigation-entry--deleted .app-navigation-entry__utils .app-navigation-entry__actions[data-v-8950be04],\\n.app-navigation-entry:focus .app-navigation-entry__utils .app-navigation-entry__actions[data-v-8950be04],\\n.app-navigation-entry:focus-within .app-navigation-entry__utils .app-navigation-entry__actions[data-v-8950be04],\\n.app-navigation-entry:hover .app-navigation-entry__utils .app-navigation-entry__actions[data-v-8950be04] {\\n  display: inline-block;\\n}\\n.app-navigation-entry.app-navigation-entry--deleted > ul[data-v-8950be04] {\\n  display: none;\\n}\\n.app-navigation-entry:not(.app-navigation-entry--editing) .app-navigation-entry-link[data-v-8950be04],\\n.app-navigation-entry:not(.app-navigation-entry--editing) .app-navigation-entry-button[data-v-8950be04] {\\n  padding-right: 14px;\\n}\\n.app-navigation-entry .app-navigation-entry-link[data-v-8950be04],\\n.app-navigation-entry .app-navigation-entry-button[data-v-8950be04] {\\n  z-index: 100;\\n  display: flex;\\n  overflow: hidden;\\n  flex: 1 1 0;\\n  box-sizing: border-box;\\n  min-height: 44px;\\n  padding: 0;\\n  white-space: nowrap;\\n  color: var(--color-main-text);\\n  background-repeat: no-repeat;\\n  background-position: 14px center;\\n  background-size: 16px 16px;\\n  line-height: 44px;\\n}\\n.app-navigation-entry .app-navigation-entry-link .app-navigation-entry-icon[data-v-8950be04],\\n.app-navigation-entry .app-navigation-entry-button .app-navigation-entry-icon[data-v-8950be04] {\\n  display: flex;\\n  align-items: center;\\n  flex: 0 0 44px;\\n  justify-content: center;\\n  width: 44px;\\n  height: 44px;\\n  background-size: 16px 16px;\\n  background-repeat: no-repeat;\\n  background-position: 14px center;\\n}\\n.app-navigation-entry .app-navigation-entry-link .app-navigation-entry__name[data-v-8950be04],\\n.app-navigation-entry .app-navigation-entry-button .app-navigation-entry__name[data-v-8950be04] {\\n  overflow: hidden;\\n  max-width: 100%;\\n  white-space: nowrap;\\n  text-overflow: ellipsis;\\n}\\n.app-navigation-entry .app-navigation-entry-link .editingContainer[data-v-8950be04],\\n.app-navigation-entry .app-navigation-entry-button .editingContainer[data-v-8950be04] {\\n  width: calc(100% - 44px);\\n  margin: auto;\\n}\\n.app-navigation-entry__children[data-v-8950be04] {\\n  position: relative;\\n  display: flex;\\n  flex: 0 1 auto;\\n  flex-direction: column;\\n  width: 100%;\\n  gap: var(--default-grid-baseline, 4px);\\n}\\n.app-navigation-entry__children .app-navigation-entry[data-v-8950be04] {\\n  display: inline-flex;\\n  flex-wrap: wrap;\\n  padding-left: 16px;\\n}\\n.app-navigation-entry__deleted[data-v-8950be04] {\\n  display: inline-flex;\\n  flex: 1 1 0;\\n  padding-left: 30px !important;\\n}\\n.app-navigation-entry__deleted .app-navigation-entry__deleted-description[data-v-8950be04] {\\n  position: relative;\\n  overflow: hidden;\\n  flex: 1 1 0;\\n  white-space: nowrap;\\n  text-overflow: ellipsis;\\n  line-height: 44px;\\n}\\n.app-navigation-entry__utils[data-v-8950be04] {\\n  display: flex;\\n  min-width: 44px;\\n  align-items: center;\\n  flex: 0 1 auto;\\n  justify-content: flex-end;\\n}\\n.app-navigation-entry__utils.app-navigation-entry__utils--display-actions .action-item.app-navigation-entry__actions[data-v-8950be04] {\\n  display: inline-block;\\n}\\n.app-navigation-entry__utils .app-navigation-entry__counter-wrapper[data-v-8950be04] {\\n  margin-right: calc(var(--default-grid-baseline) * 3);\\n  display: flex;\\n  align-items: center;\\n  flex: 0 1 auto;\\n}\\n.app-navigation-entry__utils .action-item.app-navigation-entry__actions[data-v-8950be04] {\\n  display: none;\\n}\\n.app-navigation-entry--editing .app-navigation-entry-edit[data-v-8950be04] {\\n  z-index: 250;\\n  opacity: 1;\\n}\\n.app-navigation-entry--deleted .app-navigation-entry-deleted[data-v-8950be04] {\\n  z-index: 250;\\n  transform: translate(0);\\n}\\n.app-navigation-entry--pinned[data-v-8950be04] {\\n  order: 2;\\n  margin-top: auto;\\n}\\n.app-navigation-entry--pinned ~ .app-navigation-entry--pinned[data-v-8950be04] {\\n  margin-top: 0;\\n}\\n[data-themes*=highcontrast] .app-navigation-entry[data-v-8950be04]:active {\\n  background-color: var(--color-primary-element-light-hover) !important;\\n}\\n.app-navigation-new-item__name[data-v-8950be04] {\\n  overflow: hidden;\\n  max-width: 100%;\\n  white-space: nowrap;\\n  text-overflow: ellipsis;\\n  padding-left: 7px;\\n  font-size: 14px;\\n}\\n.newItemContainer[data-v-8950be04] {\\n  width: calc(100% - 44px);\\n  margin: auto;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `@charset \"UTF-8\";\n.material-design-icon[data-v-1a960bef] {\n  display: flex;\n  align-self: center;\n  justify-self: center;\n  align-items: center;\n  justify-content: center;\n}\n.resource[data-v-1a960bef] {\n  display: flex;\n  align-items: center;\n  height: 44px;\n}\n.resource__button[data-v-1a960bef] {\n  width: 100% !important;\n  justify-content: flex-start !important;\n  padding: 0 !important;\n}\n.resource__button[data-v-1a960bef] .button-vue__wrapper {\n  justify-content: flex-start !important;\n}\n.resource__button[data-v-1a960bef] .button-vue__wrapper .button-vue__text {\n  font-weight: 400 !important;\n  margin-left: 2px !important;\n}\n.resource__icon[data-v-1a960bef] {\n  width: 32px;\n  height: 32px;\n  background-color: var(--color-text-maxcontrast);\n  border-radius: 50%;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n}\n.resource__icon img[data-v-1a960bef] {\n  width: 16px;\n  height: 16px;\n  filter: var(--background-invert-if-dark);\n}\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n.material-design-icon[data-v-19300848] {\n  display: flex;\n  align-self: center;\n  justify-self: center;\n  align-items: center;\n  justify-content: center;\n}\n.related-resources__header[data-v-19300848] {\n  margin: 0 0 10px 46px;\n}\n.related-resources__header h5[data-v-19300848] {\n  font-weight: 700;\n}\n.related-resources__header p[data-v-19300848] {\n  color: var(--color-text-maxcontrast);\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./node_modules/@nextcloud/vue/dist/assets/index-ab715d82.css\"],\"names\":[],\"mappings\":\"AAAA,gBAAgB;AAChB;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,aAAa;EACb,mBAAmB;EACnB,YAAY;AACd;AACA;EACE,sBAAsB;EACtB,sCAAsC;EACtC,qBAAqB;AACvB;AACA;EACE,sCAAsC;AACxC;AACA;EACE,2BAA2B;EAC3B,2BAA2B;AAC7B;AACA;EACE,WAAW;EACX,YAAY;EACZ,+CAA+C;EAC/C,kBAAkB;EAClB,aAAa;EACb,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,WAAW;EACX,YAAY;EACZ,wCAAwC;AAC1C;AACA;;;;;;;;;;;;;;;;;;;;EAoBE;AACF;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,qBAAqB;AACvB;AACA;EACE,gBAAgB;AAClB;AACA;EACE,oCAAoC;AACtC\",\"sourcesContent\":[\"@charset \\\"UTF-8\\\";\\n.material-design-icon[data-v-1a960bef] {\\n  display: flex;\\n  align-self: center;\\n  justify-self: center;\\n  align-items: center;\\n  justify-content: center;\\n}\\n.resource[data-v-1a960bef] {\\n  display: flex;\\n  align-items: center;\\n  height: 44px;\\n}\\n.resource__button[data-v-1a960bef] {\\n  width: 100% !important;\\n  justify-content: flex-start !important;\\n  padding: 0 !important;\\n}\\n.resource__button[data-v-1a960bef] .button-vue__wrapper {\\n  justify-content: flex-start !important;\\n}\\n.resource__button[data-v-1a960bef] .button-vue__wrapper .button-vue__text {\\n  font-weight: 400 !important;\\n  margin-left: 2px !important;\\n}\\n.resource__icon[data-v-1a960bef] {\\n  width: 32px;\\n  height: 32px;\\n  background-color: var(--color-text-maxcontrast);\\n  border-radius: 50%;\\n  display: flex;\\n  align-items: center;\\n  justify-content: center;\\n}\\n.resource__icon img[data-v-1a960bef] {\\n  width: 16px;\\n  height: 16px;\\n  filter: var(--background-invert-if-dark);\\n}\\n/**\\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @author John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @license GNU AGPL version 3 or any later version\\n *\\n * This program is free software: you can redistribute it and/or modify\\n * it under the terms of the GNU Affero General Public License as\\n * published by the Free Software Foundation, either version 3 of the\\n * License, or (at your option) any later version.\\n *\\n * This program is distributed in the hope that it will be useful,\\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\\n * GNU Affero General Public License for more details.\\n *\\n * You should have received a copy of the GNU Affero General Public License\\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\\n *\\n */\\n.material-design-icon[data-v-19300848] {\\n  display: flex;\\n  align-self: center;\\n  justify-self: center;\\n  align-items: center;\\n  justify-content: center;\\n}\\n.related-resources__header[data-v-19300848] {\\n  margin: 0 0 10px 46px;\\n}\\n.related-resources__header h5[data-v-19300848] {\\n  font-weight: 700;\\n}\\n.related-resources__header p[data-v-19300848] {\\n  color: var(--color-text-maxcontrast);\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `@charset \"UTF-8\";\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n.material-design-icon[data-v-55ab76f1] {\n  display: flex;\n  align-self: center;\n  justify-self: center;\n  align-items: center;\n  justify-content: center;\n}\n.user-bubble__wrapper[data-v-55ab76f1] {\n  display: inline-block;\n  vertical-align: middle;\n  min-width: 0;\n  max-width: 100%;\n}\n.user-bubble__content[data-v-55ab76f1] {\n  display: inline-flex;\n  max-width: 100%;\n  background-color: var(--color-background-dark);\n}\n.user-bubble__content--primary[data-v-55ab76f1] {\n  color: var(--color-primary-element-text);\n  background-color: var(--color-primary-element);\n}\n.user-bubble__content[data-v-55ab76f1] > :last-child {\n  padding-right: 8px;\n}\n.user-bubble__avatar[data-v-55ab76f1] {\n  align-self: center;\n}\n.user-bubble__name[data-v-55ab76f1] {\n  overflow: hidden;\n  white-space: nowrap;\n  text-overflow: ellipsis;\n}\n.user-bubble__name[data-v-55ab76f1],\n.user-bubble__secondary[data-v-55ab76f1] {\n  padding: 0 0 0 4px;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./node_modules/@nextcloud/vue/dist/assets/index-c221fe05.css\"],\"names\":[],\"mappings\":\"AAAA,gBAAgB;AAChB;;;;;;;;;;;;;;;;;;;;EAoBE;AACF;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,qBAAqB;EACrB,sBAAsB;EACtB,YAAY;EACZ,eAAe;AACjB;AACA;EACE,oBAAoB;EACpB,eAAe;EACf,8CAA8C;AAChD;AACA;EACE,wCAAwC;EACxC,8CAA8C;AAChD;AACA;EACE,kBAAkB;AACpB;AACA;EACE,kBAAkB;AACpB;AACA;EACE,gBAAgB;EAChB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;;EAEE,kBAAkB;AACpB\",\"sourcesContent\":[\"@charset \\\"UTF-8\\\";\\n/**\\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @author John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @license GNU AGPL version 3 or any later version\\n *\\n * This program is free software: you can redistribute it and/or modify\\n * it under the terms of the GNU Affero General Public License as\\n * published by the Free Software Foundation, either version 3 of the\\n * License, or (at your option) any later version.\\n *\\n * This program is distributed in the hope that it will be useful,\\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\\n * GNU Affero General Public License for more details.\\n *\\n * You should have received a copy of the GNU Affero General Public License\\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\\n *\\n */\\n.material-design-icon[data-v-55ab76f1] {\\n  display: flex;\\n  align-self: center;\\n  justify-self: center;\\n  align-items: center;\\n  justify-content: center;\\n}\\n.user-bubble__wrapper[data-v-55ab76f1] {\\n  display: inline-block;\\n  vertical-align: middle;\\n  min-width: 0;\\n  max-width: 100%;\\n}\\n.user-bubble__content[data-v-55ab76f1] {\\n  display: inline-flex;\\n  max-width: 100%;\\n  background-color: var(--color-background-dark);\\n}\\n.user-bubble__content--primary[data-v-55ab76f1] {\\n  color: var(--color-primary-element-text);\\n  background-color: var(--color-primary-element);\\n}\\n.user-bubble__content[data-v-55ab76f1] > :last-child {\\n  padding-right: 8px;\\n}\\n.user-bubble__avatar[data-v-55ab76f1] {\\n  align-self: center;\\n}\\n.user-bubble__name[data-v-55ab76f1] {\\n  overflow: hidden;\\n  white-space: nowrap;\\n  text-overflow: ellipsis;\\n}\\n.user-bubble__name[data-v-55ab76f1],\\n.user-bubble__secondary[data-v-55ab76f1] {\\n  padding: 0 0 0 4px;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `@charset \"UTF-8\";\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n.material-design-icon[data-v-00e861ef] {\n  display: flex;\n  align-self: center;\n  justify-self: center;\n  align-items: center;\n  justify-content: center;\n}\n.item-list__entry[data-v-00e861ef] {\n  display: flex;\n  align-items: flex-start;\n  position: relative;\n  padding: 8px;\n}\n.item-list__entry[data-v-00e861ef]:hover,\n.item-list__entry[data-v-00e861ef]:focus {\n  background-color: var(--color-background-hover);\n  border-radius: var(--border-radius-large);\n}\n.item-list__entry .item-avatar[data-v-00e861ef] {\n  position: relative;\n  margin-top: auto;\n  margin-bottom: auto;\n}\n.item-list__entry .item__details[data-v-00e861ef] {\n  padding-left: 8px;\n  max-height: 44px;\n  flex-grow: 1;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n}\n.item-list__entry .item__details h3[data-v-00e861ef],\n.item-list__entry .item__details .message[data-v-00e861ef] {\n  white-space: nowrap;\n  overflow: hidden;\n  text-overflow: ellipsis;\n}\n.item-list__entry .item__details .message span[data-v-00e861ef] {\n  width: 10px;\n  display: inline-block;\n  margin-bottom: -3px;\n}\n.item-list__entry .item__details h3[data-v-00e861ef] {\n  font-size: 100%;\n  margin: 0;\n}\n.item-list__entry .item__details .message[data-v-00e861ef] {\n  width: 100%;\n  color: var(--color-text-maxcontrast);\n}\n.item-list__entry .item-icon[data-v-00e861ef] {\n  position: relative;\n  width: 14px;\n  height: 14px;\n  margin: 27px -3px 0 -7px;\n}\n.item-list__entry button.primary[data-v-00e861ef] {\n  padding: 21px;\n  margin: 0;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./node_modules/@nextcloud/vue/dist/assets/index-e7eadba7.css\"],\"names\":[],\"mappings\":\"AAAA,gBAAgB;AAChB;;;;;;;;;;;;;;;;;;;;EAoBE;AACF;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,aAAa;EACb,uBAAuB;EACvB,kBAAkB;EAClB,YAAY;AACd;AACA;;EAEE,+CAA+C;EAC/C,yCAAyC;AAC3C;AACA;EACE,kBAAkB;EAClB,gBAAgB;EAChB,mBAAmB;AACrB;AACA;EACE,iBAAiB;EACjB,gBAAgB;EAChB,YAAY;EACZ,gBAAgB;EAChB,aAAa;EACb,sBAAsB;AACxB;AACA;;EAEE,mBAAmB;EACnB,gBAAgB;EAChB,uBAAuB;AACzB;AACA;EACE,WAAW;EACX,qBAAqB;EACrB,mBAAmB;AACrB;AACA;EACE,eAAe;EACf,SAAS;AACX;AACA;EACE,WAAW;EACX,oCAAoC;AACtC;AACA;EACE,kBAAkB;EAClB,WAAW;EACX,YAAY;EACZ,wBAAwB;AAC1B;AACA;EACE,aAAa;EACb,SAAS;AACX\",\"sourcesContent\":[\"@charset \\\"UTF-8\\\";\\n/**\\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @author John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @license GNU AGPL version 3 or any later version\\n *\\n * This program is free software: you can redistribute it and/or modify\\n * it under the terms of the GNU Affero General Public License as\\n * published by the Free Software Foundation, either version 3 of the\\n * License, or (at your option) any later version.\\n *\\n * This program is distributed in the hope that it will be useful,\\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\\n * GNU Affero General Public License for more details.\\n *\\n * You should have received a copy of the GNU Affero General Public License\\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\\n *\\n */\\n.material-design-icon[data-v-00e861ef] {\\n  display: flex;\\n  align-self: center;\\n  justify-self: center;\\n  align-items: center;\\n  justify-content: center;\\n}\\n.item-list__entry[data-v-00e861ef] {\\n  display: flex;\\n  align-items: flex-start;\\n  position: relative;\\n  padding: 8px;\\n}\\n.item-list__entry[data-v-00e861ef]:hover,\\n.item-list__entry[data-v-00e861ef]:focus {\\n  background-color: var(--color-background-hover);\\n  border-radius: var(--border-radius-large);\\n}\\n.item-list__entry .item-avatar[data-v-00e861ef] {\\n  position: relative;\\n  margin-top: auto;\\n  margin-bottom: auto;\\n}\\n.item-list__entry .item__details[data-v-00e861ef] {\\n  padding-left: 8px;\\n  max-height: 44px;\\n  flex-grow: 1;\\n  overflow: hidden;\\n  display: flex;\\n  flex-direction: column;\\n}\\n.item-list__entry .item__details h3[data-v-00e861ef],\\n.item-list__entry .item__details .message[data-v-00e861ef] {\\n  white-space: nowrap;\\n  overflow: hidden;\\n  text-overflow: ellipsis;\\n}\\n.item-list__entry .item__details .message span[data-v-00e861ef] {\\n  width: 10px;\\n  display: inline-block;\\n  margin-bottom: -3px;\\n}\\n.item-list__entry .item__details h3[data-v-00e861ef] {\\n  font-size: 100%;\\n  margin: 0;\\n}\\n.item-list__entry .item__details .message[data-v-00e861ef] {\\n  width: 100%;\\n  color: var(--color-text-maxcontrast);\\n}\\n.item-list__entry .item-icon[data-v-00e861ef] {\\n  position: relative;\\n  width: 14px;\\n  height: 14px;\\n  margin: 27px -3px 0 -7px;\\n}\\n.item-list__entry button.primary[data-v-00e861ef] {\\n  padding: 21px;\\n  margin: 0;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `@charset \"UTF-8\";\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n.material-design-icon[data-v-91580127] {\n  display: flex;\n  align-self: center;\n  justify-self: center;\n  align-items: center;\n  justify-content: center;\n}\n.app-navigation-entry__icon-bullet[data-v-91580127] {\n  display: block;\n  padding: 15px;\n}\n.app-navigation-entry__icon-bullet div[data-v-91580127] {\n  width: 14px;\n  height: 14px;\n  cursor: pointer;\n  transition: background .1s ease-in-out;\n  border: none;\n  border-radius: 50%;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./node_modules/@nextcloud/vue/dist/assets/index-fc61f2d8.css\"],\"names\":[],\"mappings\":\"AAAA,gBAAgB;AAChB;;;;;;;;;;;;;;;;;;;;EAoBE;AACF;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,cAAc;EACd,aAAa;AACf;AACA;EACE,WAAW;EACX,YAAY;EACZ,eAAe;EACf,sCAAsC;EACtC,YAAY;EACZ,kBAAkB;AACpB\",\"sourcesContent\":[\"@charset \\\"UTF-8\\\";\\n/**\\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @author John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @license GNU AGPL version 3 or any later version\\n *\\n * This program is free software: you can redistribute it and/or modify\\n * it under the terms of the GNU Affero General Public License as\\n * published by the Free Software Foundation, either version 3 of the\\n * License, or (at your option) any later version.\\n *\\n * This program is distributed in the hope that it will be useful,\\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\\n * GNU Affero General Public License for more details.\\n *\\n * You should have received a copy of the GNU Affero General Public License\\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\\n *\\n */\\n.material-design-icon[data-v-91580127] {\\n  display: flex;\\n  align-self: center;\\n  justify-self: center;\\n  align-items: center;\\n  justify-content: center;\\n}\\n.app-navigation-entry__icon-bullet[data-v-91580127] {\\n  display: block;\\n  padding: 15px;\\n}\\n.app-navigation-entry__icon-bullet div[data-v-91580127] {\\n  width: 14px;\\n  height: 14px;\\n  cursor: pointer;\\n  transition: background .1s ease-in-out;\\n  border: none;\\n  border-radius: 50%;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n      import API from \"!../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../../style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../../style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../../style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../../style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../../css-loader/dist/cjs.js!./index-5fa0ac5a.css\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n      options.insert = insertFn.bind(null, \"head\");\n    \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../css-loader/dist/cjs.js!./index-5fa0ac5a.css\";\n       export default content && content.locals ? content.locals : undefined;\n","import \"../assets/index-5fa0ac5a.css\";\nimport { defineComponent as e } from \"vue\";\nimport { n as o } from \"../chunks/_plugin-vue2_normalizer-71e2aa87.mjs\";\nconst r = e({\n  name: \"NcActionButtonGroup\",\n  props: {\n    /**\n     * Optional text shown below the button group\n     */\n    name: {\n      required: !1,\n      default: void 0,\n      type: String\n    }\n  }\n});\nvar s = function() {\n  var n = this, t = n._self._c;\n  return n._self._setupProxy, t(\"li\", { staticClass: \"nc-button-group-base\" }, [n.name ? t(\"div\", [n._v(\" \" + n._s(n.name) + \" \")]) : n._e(), t(\"ul\", { staticClass: \"nc-button-group-content\" }, [n._t(\"default\")], 2)]);\n}, _ = [], u = /* @__PURE__ */ o(\n  r,\n  s,\n  _,\n  !1,\n  null,\n  null,\n  null,\n  null\n);\nconst p = u.exports;\nexport {\n  p as default\n};\n","\n      import API from \"!../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../../style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../../style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../../style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../../style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../../css-loader/dist/cjs.js!./index-24f6c355.css\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n      options.insert = insertFn.bind(null, \"head\");\n    \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../css-loader/dist/cjs.js!./index-24f6c355.css\";\n       export default content && content.locals ? content.locals : undefined;\n","import \"../assets/index-24f6c355.css\";\nimport { A as n } from \"../chunks/actionGlobal-8c1c28c9.mjs\";\nimport { G as s } from \"../chunks/GenRandomId-cb9ccebe.mjs\";\nimport { n as o } from \"../chunks/_plugin-vue2_normalizer-71e2aa87.mjs\";\nconst l = {\n  name: \"NcActionRadio\",\n  mixins: [n],\n  props: {\n    /**\n     * id attribute of the radio element\n     */\n    id: {\n      type: String,\n      default: () => \"action-\" + s(),\n      validator: (t) => t.trim() !== \"\"\n    },\n    /**\n     * checked state of the the radio element\n     */\n    checked: {\n      type: Boolean,\n      default: !1\n    },\n    /**\n     * Define if this radio is part of a set.\n     * Checking the radio will disable all the\n     * others with the same name.\n     */\n    name: {\n      type: String,\n      required: !0\n    },\n    /**\n     * value of the radio input\n     */\n    value: {\n      type: [String, Number],\n      default: \"\"\n    },\n    /**\n     * disabled state of the radio element\n     */\n    disabled: {\n      type: Boolean,\n      default: !1\n    }\n  },\n  emits: [\n    \"update:checked\",\n    \"change\"\n  ],\n  computed: {\n    /**\n     * determines if the action is focusable\n     *\n     * @return {boolean} is the action focusable ?\n     */\n    isFocusable() {\n      return !this.disabled;\n    }\n  },\n  methods: {\n    toggleInput(t) {\n      this.$refs.label.click();\n    },\n    onChange(t) {\n      this.$emit(\"update:checked\", this.$refs.radio.checked), this.$emit(\"change\", t);\n    }\n  }\n};\nvar r = function() {\n  var e = this, i = e._self._c;\n  return i(\"li\", { staticClass: \"action\", class: { \"action--disabled\": e.disabled } }, [i(\"span\", { staticClass: \"action-radio\" }, [i(\"input\", { ref: \"radio\", staticClass: \"radio action-radio__radio\", class: { focusable: e.isFocusable }, attrs: { id: e.id, disabled: e.disabled, name: e.name, type: \"radio\" }, domProps: { checked: e.checked, value: e.value }, on: { keydown: function(a) {\n    return !a.type.indexOf(\"key\") && e._k(a.keyCode, \"enter\", 13, a.key, \"Enter\") || a.ctrlKey || a.shiftKey || a.altKey || a.metaKey ? null : (a.preventDefault(), e.toggleInput.apply(null, arguments));\n  }, change: e.onChange } }), i(\"label\", { ref: \"label\", staticClass: \"action-radio__label\", attrs: { for: e.id } }, [e._v(e._s(e.text))]), e._e()], 2)]);\n}, d = [], c = /* @__PURE__ */ o(\n  l,\n  r,\n  d,\n  !1,\n  null,\n  \"b5f9046e\",\n  null,\n  null\n);\nconst m = c.exports;\nexport {\n  m as default\n};\n","\n      import API from \"!../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../../style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../../style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../../style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../../style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../../css-loader/dist/cjs.js!./index-93ad846c.css\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n      options.insert = insertFn.bind(null, \"head\");\n    \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../css-loader/dist/cjs.js!./index-93ad846c.css\";\n       export default content && content.locals ? content.locals : undefined;\n","import \"../assets/index-93ad846c.css\";\nimport { A as n } from \"../chunks/actionText-a64be267.mjs\";\nimport { G as i } from \"../chunks/GenRandomId-cb9ccebe.mjs\";\nimport { A as l } from \"../chunks/ArrowRight-74a9fcb2.mjs\";\nimport { n as o } from \"../chunks/_plugin-vue2_normalizer-71e2aa87.mjs\";\nconst r = {\n  name: \"NcActionTextEditable\",\n  components: {\n    ArrowRight: l\n  },\n  mixins: [n],\n  props: {\n    /**\n     * id attribute of the checkbox element\n     */\n    id: {\n      type: String,\n      default: () => \"action-\" + i(),\n      validator: (e) => e.trim() !== \"\"\n    },\n    /**\n     * disabled state of the text area\n     */\n    disabled: {\n      type: Boolean,\n      default: !1\n    },\n    /**\n     * value attribute of the input field\n     */\n    value: {\n      type: String,\n      default: \"\"\n    }\n  },\n  emits: [\n    \"input\",\n    \"update:value\",\n    \"submit\"\n  ],\n  computed: {\n    /**\n     * determines if the action is focusable\n     *\n     * @return {boolean} is the action focusable ?\n     */\n    isFocusable() {\n      return !this.disabled;\n    },\n    computedId() {\n      return i();\n    }\n  },\n  methods: {\n    onInput(e) {\n      this.$emit(\"input\", e), this.$emit(\"update:value\", e.target.value);\n    },\n    onSubmit(e) {\n      if (e.preventDefault(), e.stopPropagation(), !this.disabled)\n        this.$emit(\"submit\", e);\n      else\n        return !1;\n    }\n  }\n};\nvar d = function() {\n  var t = this, a = t._self._c;\n  return a(\"li\", { staticClass: \"action\", class: { \"action--disabled\": t.disabled } }, [a(\"span\", { staticClass: \"action-text-editable\", on: { click: t.onClick } }, [t._t(\"icon\", function() {\n    return [a(\"span\", { staticClass: \"action-text-editable__icon\", class: [t.isIconUrl ? \"action-text-editable__icon--url\" : t.icon], style: { backgroundImage: t.isIconUrl ? `url(${t.icon})` : null } })];\n  }), a(\"form\", { ref: \"form\", staticClass: \"action-text-editable__form\", attrs: { disabled: t.disabled }, on: { submit: function(s) {\n    return s.preventDefault(), t.onSubmit.apply(null, arguments);\n  } } }, [a(\"input\", { staticClass: \"action-text-editable__submit\", attrs: { id: t.id, type: \"submit\" } }), t.name ? a(\"label\", { staticClass: \"action-text-editable__name\", attrs: { for: t.computedId } }, [t._v(\" \" + t._s(t.name) + \" \")]) : t._e(), a(\"textarea\", t._b({ class: [\"action-text-editable__textarea\", { focusable: t.isFocusable }], attrs: { id: t.computedId, disabled: t.disabled }, domProps: { value: t.value }, on: { input: t.onInput } }, \"textarea\", t.$attrs, !1)), a(\"label\", { directives: [{ name: \"show\", rawName: \"v-show\", value: !t.disabled, expression: \"!disabled\" }], staticClass: \"action-text-editable__label\", attrs: { for: t.id } }, [a(\"ArrowRight\", { attrs: { size: 20 } })], 1)])], 2)]);\n}, c = [], u = /* @__PURE__ */ o(\n  r,\n  d,\n  c,\n  !1,\n  null,\n  \"b0b05af8\",\n  null,\n  null\n);\nconst x = u.exports;\nexport {\n  x as default\n};\n","import { n as e } from \"../chunks/_plugin-vue2_normalizer-71e2aa87.mjs\";\nconst a = {\n  name: \"NcAppContentDetails\"\n};\nvar s = function() {\n  var n = this, t = n._self._c;\n  return t(\"div\", { staticClass: \"app-content-details\" }, [n._t(\"default\")], 2);\n}, l = [], r = /* @__PURE__ */ e(\n  a,\n  s,\n  l,\n  !1,\n  null,\n  null,\n  null,\n  null\n);\nconst c = r.exports;\nexport {\n  c as default\n};\n","import { n as s } from \"../chunks/_plugin-vue2_normalizer-71e2aa87.mjs\";\nconst n = {\n  name: \"NcAppContentList\",\n  props: {\n    selection: {\n      type: Boolean,\n      default: !1\n    },\n    showDetails: {\n      type: Boolean,\n      default: !1\n    }\n  }\n};\nvar l = function() {\n  var e = this, t = e._self._c;\n  return t(\"div\", { staticClass: \"app-content-list\", class: { selection: e.selection, showdetails: e.showDetails } }, [e._t(\"default\")], 2);\n}, a = [], o = /* @__PURE__ */ s(\n  n,\n  l,\n  a,\n  !1,\n  null,\n  null,\n  null,\n  null\n);\nconst r = o.exports;\nexport {\n  r as default\n};\n","\n      import API from \"!../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../../style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../../style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../../style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../../style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../../css-loader/dist/cjs.js!./index-fc61f2d8.css\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n      options.insert = insertFn.bind(null, \"head\");\n    \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../css-loader/dist/cjs.js!./index-fc61f2d8.css\";\n       export default content && content.locals ? content.locals : undefined;\n","import \"../assets/index-fc61f2d8.css\";\nimport { n } from \"../chunks/_plugin-vue2_normalizer-71e2aa87.mjs\";\nconst r = {\n  name: \"NcAppNavigationIconBullet\",\n  props: {\n    color: {\n      type: String,\n      required: !0,\n      validator(t) {\n        return /^#?([0-9A-F]{3}){1,2}$/i.test(t);\n      }\n    }\n  },\n  emits: [\"click\"],\n  computed: {\n    formattedColor() {\n      return this.color.startsWith(\"#\") ? this.color : \"#\" + this.color;\n    }\n  },\n  methods: {\n    onClick(t) {\n      this.$emit(\"click\", t);\n    }\n  }\n};\nvar i = function() {\n  var o = this, e = o._self._c;\n  return e(\"div\", { staticClass: \"app-navigation-entry__icon-bullet\", on: { click: o.onClick } }, [e(\"div\", { style: { backgroundColor: o.formattedColor } })]);\n}, l = [], c = /* @__PURE__ */ n(\n  r,\n  i,\n  l,\n  !1,\n  null,\n  \"91580127\",\n  null,\n  null\n);\nconst _ = c.exports;\nexport {\n  _ as default\n};\n","\n      import API from \"!../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../../style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../../style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../../style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../../style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../../css-loader/dist/cjs.js!./index-93bc89ef.css\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n      options.insert = insertFn.bind(null, \"head\");\n    \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../css-loader/dist/cjs.js!./index-93bc89ef.css\";\n       export default content && content.locals ? content.locals : undefined;\n","import \"../assets/index-93bc89ef.css\";\nimport { N as a } from \"../chunks/NcInputConfirmCancel-906c7816.mjs\";\nimport i from \"./NcLoadingIcon.mjs\";\nimport { n as l } from \"../chunks/_plugin-vue2_normalizer-71e2aa87.mjs\";\nconst o = {\n  name: \"NcAppNavigationNewItem\",\n  components: {\n    NcInputConfirmCancel: a,\n    NcLoadingIcon: i\n  },\n  props: {\n    /**\n     * The name of the element.\n     */\n    name: {\n      type: String,\n      required: !0\n    },\n    /**\n     * Refers to the icon on the left, this prop accepts a class\n     * like 'icon-category-enabled'.\n     */\n    icon: {\n      type: String,\n      default: \"\"\n    },\n    /**\n     * Displays a loading animated icon on the left of the element\n     * instead of the icon.\n     */\n    loading: {\n      type: Boolean,\n      default: !1\n    },\n    /**\n     * Only for 'editable' items, sets label for the edit action button.\n     */\n    editLabel: {\n      type: String,\n      default: \"\"\n    },\n    /**\n     * Sets the placeholder text for the editing form.\n     */\n    editPlaceholder: {\n      type: String,\n      default: \"\"\n    }\n  },\n  emits: [\"new-item\"],\n  data() {\n    return {\n      newItemValue: \"\",\n      newItemActive: !1\n    };\n  },\n  methods: {\n    handleNewItem() {\n      this.loading || (this.newItemActive = !0, this.$nextTick(() => {\n        this.$refs.newItemInput.focusInput();\n      }));\n    },\n    cancelNewItem() {\n      this.newItemActive = !1;\n    },\n    handleNewItemDone() {\n      this.$emit(\"new-item\", this.newItemValue), this.newItemValue = \"\", this.newItemActive = !1;\n    }\n  }\n};\nvar s = function() {\n  var e = this, t = e._self._c;\n  return t(\"li\", { staticClass: \"app-navigation-entry\", class: {\n    \"app-navigation-entry--newItemActive\": e.newItemActive\n  } }, [t(\"button\", { staticClass: \"app-navigation-entry-button\", on: { click: e.handleNewItem } }, [t(\"span\", { staticClass: \"app-navigation-entry-icon\", class: { [e.icon]: !e.loading } }, [e.loading ? t(\"NcLoadingIcon\") : e._t(\"icon\")], 2), e.newItemActive ? e._e() : t(\"span\", { staticClass: \"app-navigation-new-item__name\", attrs: { title: e.name } }, [e._v(\" \" + e._s(e.name) + \" \")]), e.newItemActive ? t(\"span\", { staticClass: \"newItemContainer\" }, [t(\"NcInputConfirmCancel\", { ref: \"newItemInput\", attrs: { placeholder: e.editPlaceholder !== \"\" ? e.editPlaceholder : e.name }, on: { cancel: e.cancelNewItem, confirm: e.handleNewItemDone }, model: { value: e.newItemValue, callback: function(n) {\n    e.newItemValue = n;\n  }, expression: \"newItemValue\" } })], 1) : e._e()])]);\n}, c = [], m = /* @__PURE__ */ l(\n  o,\n  s,\n  c,\n  !1,\n  null,\n  \"8950be04\",\n  null,\n  null\n);\nconst _ = m.exports;\nexport {\n  _ as default\n};\n","\n      import API from \"!../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../../style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../../style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../../style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../../style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../../css-loader/dist/cjs.js!./index-34dfc54e.css\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n      options.insert = insertFn.bind(null, \"head\");\n    \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../css-loader/dist/cjs.js!./index-34dfc54e.css\";\n       export default content && content.locals ? content.locals : undefined;\n","import \"../assets/index-34dfc54e.css\";\nimport { t as i } from \"../chunks/l10n-f692947e.mjs\";\nimport o from \"../Mixins/clickOutsideOptions.mjs\";\nimport \"vue\";\nimport \"@nextcloud/router\";\n/* empty css                                                                                   */import { n as s } from \"../chunks/_plugin-vue2_normalizer-71e2aa87.mjs\";\nimport \"linkify-string\";\nimport \"escape-html\";\nimport \"striptags\";\nimport \"@nextcloud/auth\";\nimport \"@nextcloud/axios\";\nimport \"@nextcloud/capabilities\";\nimport { vOnClickOutside as r } from \"@vueuse/components\";\nconst l = {\n  name: \"CogIcon\",\n  emits: [\"click\"],\n  props: {\n    title: {\n      type: String\n    },\n    fillColor: {\n      type: String,\n      default: \"currentColor\"\n    },\n    size: {\n      type: Number,\n      default: 24\n    }\n  }\n};\nvar c = function() {\n  var t = this, e = t._self._c;\n  return e(\"span\", t._b({ staticClass: \"material-design-icon cog-icon\", attrs: { \"aria-hidden\": !t.title, \"aria-label\": t.title, role: \"img\" }, on: { click: function(a) {\n    return t.$emit(\"click\", a);\n  } } }, \"span\", t.$attrs, !1), [e(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { fill: t.fillColor, width: t.size, height: t.size, viewBox: \"0 0 24 24\" } }, [e(\"path\", { attrs: { d: \"M12,15.5A3.5,3.5 0 0,1 8.5,12A3.5,3.5 0 0,1 12,8.5A3.5,3.5 0 0,1 15.5,12A3.5,3.5 0 0,1 12,15.5M19.43,12.97C19.47,12.65 19.5,12.33 19.5,12C19.5,11.67 19.47,11.34 19.43,11L21.54,9.37C21.73,9.22 21.78,8.95 21.66,8.73L19.66,5.27C19.54,5.05 19.27,4.96 19.05,5.05L16.56,6.05C16.04,5.66 15.5,5.32 14.87,5.07L14.5,2.42C14.46,2.18 14.25,2 14,2H10C9.75,2 9.54,2.18 9.5,2.42L9.13,5.07C8.5,5.32 7.96,5.66 7.44,6.05L4.95,5.05C4.73,4.96 4.46,5.05 4.34,5.27L2.34,8.73C2.21,8.95 2.27,9.22 2.46,9.37L4.57,11C4.53,11.34 4.5,11.67 4.5,12C4.5,12.33 4.53,12.65 4.57,12.97L2.46,14.63C2.27,14.78 2.21,15.05 2.34,15.27L4.34,18.73C4.46,18.95 4.73,19.03 4.95,18.95L7.44,17.94C7.96,18.34 8.5,18.68 9.13,18.93L9.5,21.58C9.54,21.82 9.75,22 10,22H14C14.25,22 14.46,21.82 14.5,21.58L14.87,18.93C15.5,18.67 16.04,18.34 16.56,17.94L19.05,18.95C19.27,19.03 19.54,18.95 19.66,18.73L21.66,15.27C21.78,15.05 21.73,14.78 21.54,14.63L19.43,12.97Z\" } }, [t.title ? e(\"title\", [t._v(t._s(t.title))]) : t._e()])])]);\n}, p = [], _ = /* @__PURE__ */ s(\n  l,\n  c,\n  p,\n  !1,\n  null,\n  null,\n  null,\n  null\n);\nconst u = _.exports;\nconst d = {\n  directives: {\n    ClickOutside: r\n  },\n  components: {\n    Cog: u\n  },\n  mixins: [\n    o\n  ],\n  props: {\n    name: {\n      type: String,\n      required: !1,\n      default: i(\"Settings\")\n    }\n  },\n  data() {\n    return {\n      open: !1\n    };\n  },\n  computed: {\n    clickOutsideConfig() {\n      return [\n        this.closeMenu,\n        this.clickOutsideOptions\n      ];\n    },\n    ariaLabel() {\n      return i(\"Open settings menu\");\n    }\n  },\n  methods: {\n    toggleMenu() {\n      this.open = !this.open;\n    },\n    closeMenu() {\n      this.open = !1;\n    }\n  }\n};\nvar m = function() {\n  var t = this, e = t._self._c;\n  return e(\"div\", { directives: [{ name: \"click-outside\", rawName: \"v-click-outside\", value: t.clickOutsideConfig, expression: \"clickOutsideConfig\" }], class: { open: t.open }, attrs: { id: \"app-settings\" } }, [e(\"div\", { attrs: { id: \"app-settings__header\" } }, [e(\"button\", { staticClass: \"settings-button\", attrs: { type: \"button\", \"aria-expanded\": t.open ? \"true\" : \"false\", \"aria-controls\": \"app-settings__content\", \"aria-label\": t.ariaLabel }, on: { click: t.toggleMenu } }, [e(\"Cog\", { staticClass: \"settings-button__icon\", attrs: { size: 20 } }), e(\"span\", { staticClass: \"settings-button__label\" }, [t._v(t._s(t.name))])], 1)]), e(\"transition\", { attrs: { name: \"slide-up\" } }, [e(\"div\", { directives: [{ name: \"show\", rawName: \"v-show\", value: t.open, expression: \"open\" }], attrs: { id: \"app-settings__content\" } }, [t._t(\"default\")], 2)])], 1);\n}, C = [], g = /* @__PURE__ */ s(\n  d,\n  m,\n  C,\n  !1,\n  null,\n  \"db4cc195\",\n  null,\n  null\n);\nconst $ = g.exports;\nexport {\n  $ as default\n};\n","\n      import API from \"!../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../../style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../../style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../../style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../../style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../../css-loader/dist/cjs.js!./index-6416f636.css\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n      options.insert = insertFn.bind(null, \"head\");\n    \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../css-loader/dist/cjs.js!./index-6416f636.css\";\n       export default content && content.locals ? content.locals : undefined;\n","\n      import API from \"!../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../../style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../../style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../../style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../../style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../../css-loader/dist/cjs.js!./index-e7eadba7.css\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n      options.insert = insertFn.bind(null, \"head\");\n    \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../css-loader/dist/cjs.js!./index-e7eadba7.css\";\n       export default content && content.locals ? content.locals : undefined;\n","import \"../assets/index-e7eadba7.css\";\nimport { N as i } from \"../chunks/index-fbf943b3.mjs\";\nimport o from \"./NcActions.mjs\";\nimport l from \"./NcActionButton.mjs\";\nimport { n as u } from \"../chunks/_plugin-vue2_normalizer-71e2aa87.mjs\";\nconst c = {\n  name: \"NcDashboardWidgetItem\",\n  components: {\n    NcAvatar: i,\n    NcActions: o,\n    NcActionButton: l\n  },\n  props: {\n    /**\n     * The item id (optional)\n     */\n    id: {\n      type: [String, Number],\n      default: void 0\n    },\n    /**\n     * The item element is a link to this URL (optional)\n     */\n    targetUrl: {\n      type: String,\n      default: void 0\n    },\n    /**\n     * Where to get the avatar image. (optional) Used if avatarUsername is not defined.\n     */\n    avatarUrl: {\n      type: String,\n      default: void 0\n    },\n    /**\n     * Name to provide to the Avatar. (optional) Used if avatarUrl is not defined.\n     */\n    avatarUsername: {\n      type: String,\n      default: void 0\n    },\n    /**\n     * Is the avatarUsername not a user's name? (optional, false by default)\n     */\n    avatarIsNoUser: {\n      type: Boolean,\n      default: !1\n    },\n    /**\n     * Small icon to display on the bottom-right corner of the avatar (optional)\n     */\n    overlayIconUrl: {\n      type: String,\n      default: void 0\n    },\n    /**\n     * Item main text (mandatory)\n     */\n    mainText: {\n      type: String,\n      required: !0\n    },\n    /**\n     * Item subline text (optional)\n     */\n    subText: {\n      type: String,\n      default: \"\"\n    },\n    /**\n     * An object containing context menu entries that will be displayed for each items (optional)\n     */\n    itemMenu: {\n      type: Object,\n      default: () => ({})\n    },\n    /**\n     * Specify whether the 3 dot menu is forced when only one action is present\n     */\n    forceMenu: {\n      type: Boolean,\n      default: !0\n    }\n  },\n  data() {\n    return {\n      hovered: !1\n    };\n  },\n  computed: {\n    item() {\n      return {\n        id: this.id,\n        targetUrl: this.targetUrl,\n        avatarUrl: this.avatarUrl,\n        avatarUsername: this.avatarUsername,\n        overlayIconUrl: this.overlayIconUrl,\n        mainText: this.mainText,\n        subText: this.subText\n      };\n    },\n    gotMenu() {\n      return Object.keys(this.itemMenu).length !== 0 || !!this.$slots.actions;\n    },\n    gotOverlayIcon() {\n      return this.overlayIconUrl && this.overlayIconUrl !== \"\";\n    }\n  },\n  methods: {\n    onLinkClick(r) {\n      r.target.closest(\".action-item\") && r.preventDefault();\n    }\n  }\n};\nvar m = function() {\n  var t = this, e = t._self._c;\n  return e(\"div\", { on: { mouseover: function(a) {\n    t.hovered = !0;\n  }, mouseleave: function(a) {\n    t.hovered = !1;\n  } } }, [e(t.targetUrl ? \"a\" : \"div\", { tag: \"component\", class: { \"item-list__entry\": !0, \"item-list__entry--has-actions-menu\": t.gotMenu }, attrs: { href: t.targetUrl || void 0, target: t.targetUrl ? \"_blank\" : void 0 }, on: { click: t.onLinkClick } }, [t._t(\"avatar\", function() {\n    return [e(\"NcAvatar\", { staticClass: \"item-avatar\", attrs: { size: 44, url: t.avatarUrl, user: t.avatarUsername, \"is-no-user\": t.avatarIsNoUser, \"show-user-status\": !t.gotOverlayIcon } })];\n  }, { avatarUrl: t.avatarUrl, avatarUsername: t.avatarUsername }), t.overlayIconUrl ? e(\"img\", { staticClass: \"item-icon\", attrs: { alt: \"\", src: t.overlayIconUrl } }) : t._e(), e(\"div\", { staticClass: \"item__details\" }, [e(\"h3\", { attrs: { title: t.mainText } }, [t._v(\" \" + t._s(t.mainText) + \" \")]), e(\"span\", { staticClass: \"message\", attrs: { title: t.subText } }, [t._v(\" \" + t._s(t.subText) + \" \")])]), t.gotMenu ? e(\"NcActions\", { attrs: { \"force-menu\": t.forceMenu } }, [t._t(\"actions\", function() {\n    return t._l(t.itemMenu, function(a, n) {\n      return e(\"NcActionButton\", { key: n, attrs: { icon: a.icon, \"close-after-click\": !0 }, on: { click: function(s) {\n        return s.preventDefault(), s.stopPropagation(), t.$emit(n, t.item);\n      } } }, [t._v(\" \" + t._s(a.text) + \" \")]);\n    });\n  })], 2) : t._e()], 2)], 1);\n}, d = [], v = /* @__PURE__ */ u(\n  c,\n  m,\n  d,\n  !1,\n  null,\n  \"00e861ef\",\n  null,\n  null\n);\nconst y = v.exports;\nexport {\n  y as default\n};\n","import \"../assets/index-6416f636.css\";\nimport { N as r } from \"../chunks/index-fbf943b3.mjs\";\nimport o from \"./NcDashboardWidgetItem.mjs\";\nimport a from \"./NcEmptyContent.mjs\";\nimport { C as i } from \"../chunks/Check-2ea0a88a.mjs\";\nimport { t as m } from \"../chunks/l10n-f692947e.mjs\";\nimport { n as l } from \"../chunks/_plugin-vue2_normalizer-71e2aa87.mjs\";\nconst c = {\n  name: \"NcDashboardWidget\",\n  components: {\n    NcAvatar: r,\n    NcDashboardWidgetItem: o,\n    NcEmptyContent: a,\n    Check: i\n  },\n  props: {\n    /**\n     * An array containing the items to show (specific structure must be respected,\n     * except if you override item rendering in the default slot).\n     */\n    items: {\n      type: Array,\n      default: () => []\n    },\n    /**\n     * If this is set, a \"show more\" text is displayed on the widget's bottom.\n     * It's a link pointing to this URL.\n     */\n    showMoreUrl: {\n      type: String,\n      default: \"\"\n    },\n    /**\n     * The text of show more button.\n     *\n     * Expected to be in the form \"More {itemName} …\"\n     */\n    showMoreLabel: {\n      type: String,\n      default: m(\"More items …\")\n    },\n    /**\n     * A boolean to put the widget in a loading state.\n     */\n    loading: {\n      type: Boolean,\n      default: !1\n    },\n    /**\n     * An object containing context menu entries that will be displayed for each item.\n     */\n    itemMenu: {\n      type: Object,\n      default: () => ({})\n    },\n    /**\n     * Whether both the items and the empty content message are shown.\n     * Usefull for e.g. showing \"No mentions\" and a list of elements.\n     */\n    showItemsAndEmptyContent: {\n      type: Boolean,\n      default: !1\n    },\n    /**\n     * The text to show in the empty content area.\n     */\n    emptyContentMessage: {\n      type: String,\n      default: \"\"\n    },\n    /**\n     * The text to show in the half empty content area.\n     */\n    halfEmptyContentMessage: {\n      type: String,\n      default: \"\"\n    }\n  },\n  computed: {\n    // forward menu events to my parent\n    handlers() {\n      const n = {};\n      for (const t in this.itemMenu)\n        n[t] = (e) => {\n          this.$emit(t, e);\n        };\n      return n;\n    },\n    displayedItems() {\n      const n = this.showMoreUrl && this.items.length >= this.maxItemNumber ? this.maxItemNumber - 1 : this.maxItemNumber;\n      return this.items.slice(0, n);\n    },\n    showHalfEmptyContentArea() {\n      return this.showItemsAndEmptyContent && this.halfEmptyContentString && this.items.length !== 0;\n    },\n    halfEmptyContentString() {\n      return this.halfEmptyContentMessage || this.emptyContentMessage;\n    },\n    maxItemNumber() {\n      return this.showItemsAndEmptyContent ? 5 : 7;\n    },\n    showMore() {\n      return this.showMoreUrl && this.items.length >= this.maxItemNumber;\n    }\n  }\n};\nvar u = function() {\n  var t = this, e = t._self._c;\n  return e(\"div\", { staticClass: \"dashboard-widget\" }, [t.showHalfEmptyContentArea ? e(\"NcEmptyContent\", { staticClass: \"half-screen\", attrs: { description: t.halfEmptyContentString }, scopedSlots: t._u([{ key: \"icon\", fn: function() {\n    return [t._t(\"halfEmptyContentIcon\", function() {\n      return [e(\"Check\")];\n    })];\n  }, proxy: !0 }], null, !0) }) : t._e(), e(\"ul\", t._l(t.displayedItems, function(s) {\n    return e(\"li\", { key: s.id }, [t._t(\"default\", function() {\n      return [e(\"NcDashboardWidgetItem\", t._g(t._b({ attrs: { \"item-menu\": t.itemMenu } }, \"NcDashboardWidgetItem\", s, !1), t.handlers))];\n    }, { item: s })], 2);\n  }), 0), t.loading ? e(\"div\", t._l(7, function(s) {\n    return e(\"div\", { key: s, staticClass: \"item-list__entry\" }, [e(\"NcAvatar\", { staticClass: \"item-avatar\", attrs: { size: 44 } }), t._m(0, !0)], 1);\n  }), 0) : t.items.length === 0 ? t._t(\"empty-content\", function() {\n    return [t.emptyContentMessage ? e(\"NcEmptyContent\", { attrs: { description: t.emptyContentMessage }, scopedSlots: t._u([{ key: \"icon\", fn: function() {\n      return [t._t(\"emptyContentIcon\")];\n    }, proxy: !0 }], null, !0) }) : t._e()];\n  }) : t.showMore ? e(\"a\", { staticClass: \"more\", attrs: { href: t.showMoreUrl, target: \"_blank\", tabindex: \"0\" } }, [t._v(\" \" + t._s(t.showMoreLabel) + \" \")]) : t._e()], 2);\n}, h = [function() {\n  var n = this, t = n._self._c;\n  return t(\"div\", { staticClass: \"item__details\" }, [t(\"h3\", [n._v(\" \")]), t(\"p\", { staticClass: \"message\" }, [n._v(\"   \")])]);\n}], p = /* @__PURE__ */ l(\n  c,\n  u,\n  h,\n  !1,\n  null,\n  \"1efcbeee\",\n  null,\n  null\n);\nconst v = p.exports;\nexport {\n  v as default\n};\n","\n      import API from \"!../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../../style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../../style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../../style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../../style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../../css-loader/dist/cjs.js!./index-8aa4712e.css\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n      options.insert = insertFn.bind(null, \"head\");\n    \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../css-loader/dist/cjs.js!./index-8aa4712e.css\";\n       export default content && content.locals ? content.locals : undefined;\n","import \"../assets/index-8aa4712e.css\";\nimport { n } from \"../chunks/_plugin-vue2_normalizer-71e2aa87.mjs\";\nconst s = {\n  name: \"NcGuestContent\",\n  mounted() {\n    document.getElementById(\"content\").classList.add(\"nc-guest-content\");\n  },\n  destroyed() {\n    document.getElementById(\"content\").classList.remove(\"nc-guest-content\");\n  }\n};\nvar _ = function() {\n  var t = this, e = t._self._c;\n  return e(\"div\", { attrs: { id: \"guest-content-vue\" } }, [t._t(\"default\")], 2);\n}, c = [], o = /* @__PURE__ */ n(\n  s,\n  _,\n  c,\n  !1,\n  null,\n  \"36ad47ca\",\n  null,\n  null\n);\nconst r = o.exports;\nexport {\n  r as default\n};\n","\n      import API from \"!../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../../style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../../style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../../style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../../style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../../css-loader/dist/cjs.js!./index-ab715d82.css\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n      options.insert = insertFn.bind(null, \"head\");\n    \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../css-loader/dist/cjs.js!./index-ab715d82.css\";\n       export default content && content.locals ? content.locals : undefined;\n","import \"../assets/index-ab715d82.css\";\nimport o from \"@nextcloud/axios\";\nimport { generateOcsUrl as l } from \"@nextcloud/router\";\nimport a from \"./NcButton.mjs\";\nimport { t as s } from \"../chunks/l10n-f692947e.mjs\";\nimport { n } from \"../chunks/_plugin-vue2_normalizer-71e2aa87.mjs\";\nconst u = {\n  name: \"NcResource\",\n  components: {\n    NcButton: a\n  },\n  props: {\n    icon: {\n      type: String,\n      required: !0\n    },\n    name: {\n      type: String,\n      required: !0\n    },\n    url: {\n      type: String,\n      required: !0\n    }\n  },\n  data() {\n    return {\n      labelTranslated: s('Open link to \"{resourceName}\"', { resourceName: this.name })\n    };\n  },\n  methods: {\n    t: s\n  }\n};\nvar c = function() {\n  var e = this, t = e._self._c;\n  return t(\"li\", { staticClass: \"resource\" }, [t(\"NcButton\", { staticClass: \"resource__button\", attrs: { \"aria-label\": e.labelTranslated, type: \"tertiary\", href: e.url }, scopedSlots: e._u([{ key: \"icon\", fn: function() {\n    return [t(\"div\", { staticClass: \"resource__icon\" }, [t(\"img\", { attrs: { src: e.icon } })])];\n  }, proxy: !0 }]) }, [e._v(\" \" + e._s(e.name) + \" \")])], 1);\n}, d = [], p = /* @__PURE__ */ n(\n  u,\n  c,\n  d,\n  !1,\n  null,\n  \"1a960bef\",\n  null,\n  null\n);\nconst f = p.exports;\nconst _ = {\n  name: \"NcRelatedResourcesPanel\",\n  components: {\n    NcResource: f\n  },\n  props: {\n    /**\n     * The provider id implemented with `\\OCA\\RelatedResources\\IRelatedResourceProvider::getProviderId()`\n     */\n    providerId: {\n      type: String,\n      default: null\n    },\n    /**\n     * The item id which uniquely identities the e.g. Calendar event, Deck board, file, Talk room, etc.\n     */\n    itemId: {\n      type: [String, Number],\n      default: null\n    },\n    /**\n     * Limits to specific resource type. i.e. any provider id implemented with `\\OCA\\RelatedResources\\IRelatedResourceProvider::getProviderId()`\n     */\n    resourceType: {\n      type: String,\n      default: null\n    },\n    /**\n     * Set the maximum number of resources to load\n     */\n    limit: {\n      type: Number,\n      default: null\n    },\n    /**\n     * Only used by the files sidebar\n     *\n     * File info is passed when registered with `OCA.Sharing.ShareTabSections.registerSection()`\n     */\n    fileInfo: {\n      type: Object,\n      default: null\n    },\n    /**\n     * Make the header name dynamic\n     */\n    header: {\n      type: String,\n      default: s(\"Related resources\")\n    },\n    description: {\n      type: String,\n      default: s(\"Anything shared with the same group of people will show up here\")\n    },\n    /**\n     * If this element is used on a primary element set to true for primary styling.\n     */\n    primary: {\n      type: Boolean,\n      default: !1\n    }\n  },\n  emits: [\n    \"has-error\",\n    \"has-resources\"\n  ],\n  data() {\n    var r;\n    return {\n      appEnabled: ((r = OC == null ? void 0 : OC.appswebroots) == null ? void 0 : r.related_resources) !== void 0,\n      loading: !1,\n      error: null,\n      resources: []\n    };\n  },\n  computed: {\n    isVisible() {\n      var r;\n      return this.loading ? !1 : (r = this.error) != null ? r : this.resources.length > 0;\n    },\n    subline() {\n      return this.error ? s(\"Error getting related resources. Please contact your system administrator if you have any questions.\") : this.description;\n    },\n    hasResourceInfo() {\n      return this.providerId !== null && this.itemId !== null || this.fileInfo !== null;\n    },\n    isFiles() {\n      var r;\n      return ((r = this.fileInfo) == null ? void 0 : r.id) !== void 0;\n    },\n    url() {\n      let r = null, e = null;\n      return this.isFiles ? (r = \"files\", e = this.fileInfo.id) : (r = this.providerId, e = this.itemId), l(\"/apps/related_resources/related/{providerId}?itemId={itemId}&resourceType={resourceType}&limit={limit}&format=json\", {\n        providerId: r,\n        itemId: e,\n        resourceType: this.resourceType,\n        limit: this.limit\n      });\n    }\n  },\n  watch: {\n    providerId() {\n      this.fetchRelatedResources();\n    },\n    itemId() {\n      this.fetchRelatedResources();\n    },\n    fileInfo() {\n      this.fetchRelatedResources();\n    },\n    error(r) {\n      this.$emit(\"has-error\", !!r);\n    },\n    resources(r) {\n      this.$emit(\"has-resources\", r.length > 0);\n    }\n  },\n  created() {\n    this.fetchRelatedResources();\n  },\n  methods: {\n    t: s,\n    async fetchRelatedResources() {\n      var r;\n      if (!(!this.appEnabled || !this.hasResourceInfo)) {\n        this.loading = !0, this.error = null, this.resources = [];\n        try {\n          const e = await o.get(this.url);\n          this.resources = (r = e.data.ocs) == null ? void 0 : r.data;\n        } catch (e) {\n          this.error = e, console.error(e);\n        } finally {\n          this.loading = !1;\n        }\n      }\n    }\n  }\n};\nvar h = function() {\n  var e = this, t = e._self._c;\n  return e.appEnabled && e.isVisible ? t(\"div\", { staticClass: \"related-resources\" }, [t(\"div\", { staticClass: \"related-resources__header\" }, [t(\"h5\", [e._v(e._s(e.header))]), t(\"p\", [e._v(e._s(e.subline))])]), e._l(e.resources, function(i) {\n    return t(\"NcResource\", { key: i.itemId, staticClass: \"related-resources__entry\", attrs: { icon: i.icon, name: i.title, url: i.url } });\n  })], 2) : e._e();\n}, m = [], y = /* @__PURE__ */ n(\n  _,\n  h,\n  m,\n  !1,\n  null,\n  \"19300848\",\n  null,\n  null\n);\nconst S = y.exports;\nexport {\n  S as default\n};\n","import { defineComponent as a } from \"vue\";\nimport { n } from \"../chunks/_plugin-vue2_normalizer-71e2aa87.mjs\";\nconst i = a({\n  name: \"NcSavingIndicatorIcon\",\n  props: {\n    /**\n     * Specify the size of the saving icon.\n     */\n    size: {\n      type: Number,\n      default: 20\n    },\n    /**\n     * Specify what is saved.\n     */\n    name: {\n      type: String,\n      default: \"\"\n    },\n    /**\n     * Set to true when saving is in progress.\n     */\n    saving: {\n      type: Boolean,\n      default: !1,\n      required: !1\n    },\n    /**\n     * Set to true if an error occured while saving.\n     */\n    error: {\n      type: Boolean,\n      default: !1,\n      required: !1\n    }\n  },\n  emits: [\"click\"],\n  computed: {\n    indicatorColor() {\n      return this.error ? \"var(--color-error)\" : this.saving ? \"var(--color-primary-element)\" : \"none\";\n    }\n  }\n});\nvar o = function() {\n  var e = this, r = e._self._c;\n  return e._self._setupProxy, r(\"span\", { staticClass: \"material-design-icon\", attrs: { \"aria-label\": e.name, role: \"img\" }, on: { click: function(t) {\n    return e.$emit(\"click\", t);\n  } } }, [r(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { fill: e.fillColor, width: e.size, height: e.size, viewBox: \"0 0 24 24\" } }, [r(\"path\", { attrs: { fill: e.indicatorColor, d: \"m19 15a4 4 0 0 0-4 4 4 4 0 0 0 4 4 4 4 0 0 0 4-4 4 4 0 0 0-4-4z\" } }), r(\"path\", { attrs: { fill: \"currentColor\", d: \"M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z\" } }, [e.name ? r(\"title\", [e._v(e._s(e.name))]) : e._e()])])]);\n}, l = [], s = /* @__PURE__ */ n(\n  i,\n  o,\n  l,\n  !1,\n  null,\n  null,\n  null,\n  null\n);\nconst d = s.exports;\nexport {\n  d as default\n};\n","\n      import API from \"!../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../../style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../../style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../../style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../../style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../../css-loader/dist/cjs.js!./index-6c47e88a.css\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n      options.insert = insertFn.bind(null, \"head\");\n    \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../css-loader/dist/cjs.js!./index-6c47e88a.css\";\n       export default content && content.locals ? content.locals : undefined;\n","import \"../assets/index-6c47e88a.css\";\nimport { t as a } from \"../chunks/l10n-f692947e.mjs\";\nimport { G as s } from \"../chunks/GenRandomId-cb9ccebe.mjs\";\nimport { n as u } from \"../chunks/_plugin-vue2_normalizer-71e2aa87.mjs\";\nconst r = {\n  name: \"NcSettingsInputText\",\n  props: {\n    /**\n     * label of the select group element\n     */\n    label: {\n      type: String,\n      required: !0\n    },\n    /**\n     * hint of the select group input\n     */\n    hint: {\n      type: String,\n      default: \"\"\n    },\n    /**\n     * value of the select group input\n     */\n    value: {\n      type: String,\n      default: \"\"\n    },\n    /**\n     * disabled state of the settings select group input\n     */\n    disabled: {\n      type: Boolean,\n      default: !1\n    },\n    /**\n     * id attribute of the select group element\n     */\n    id: {\n      type: String,\n      default: () => \"settings-input-text-\" + s(),\n      validator: (e) => e.trim() !== \"\"\n    }\n  },\n  emits: [\n    \"update:value\",\n    \"input\",\n    \"submit\",\n    \"change\"\n  ],\n  data() {\n    return {\n      submitTranslated: a(\"Submit\")\n    };\n  },\n  computed: {\n    /**\n     * @return {string}\n     */\n    idSubmit() {\n      return this.id + \"-submit\";\n    }\n  },\n  methods: {\n    onInput(e) {\n      this.$emit(\"input\", e), this.$emit(\"update:value\", e.target.value);\n    },\n    onSubmit(e) {\n      this.disabled || this.$emit(\"submit\", e);\n    },\n    onChange(e) {\n      this.$emit(\"change\", e);\n    }\n  }\n};\nvar l = function() {\n  var t = this, i = t._self._c;\n  return i(\"form\", { ref: \"form\", attrs: { disabled: t.disabled }, on: { submit: function(n) {\n    return n.preventDefault(), n.stopPropagation(), t.onSubmit.apply(null, arguments);\n  } } }, [i(\"div\", { staticClass: \"input-wrapper\" }, [i(\"label\", { staticClass: \"action-input__label\", attrs: { for: t.id } }, [t._v(t._s(t.label))]), i(\"input\", { attrs: { id: t.id, type: \"text\", disabled: t.disabled }, domProps: { value: t.value }, on: { input: t.onInput, change: t.onChange } }), i(\"input\", { staticClass: \"action-input__submit\", attrs: { id: t.idSubmit, type: \"submit\" }, domProps: { value: t.submitTranslated } }), t.hint ? i(\"p\", { staticClass: \"hint\" }, [t._v(\" \" + t._s(t.hint) + \" \")]) : t._e()])]);\n}, o = [], p = /* @__PURE__ */ u(\n  r,\n  l,\n  o,\n  !1,\n  null,\n  \"5b140fb6\",\n  null,\n  null\n);\nconst c = p.exports;\nexport {\n  c as default\n};\n","\n      import API from \"!../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../../style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../../style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../../style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../../style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../../css-loader/dist/cjs.js!./NcSettingsSelectGroup-0d38d76b.css\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n      options.insert = insertFn.bind(null, \"head\");\n    \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../css-loader/dist/cjs.js!./NcSettingsSelectGroup-0d38d76b.css\";\n       export default content && content.locals ? content.locals : undefined;\n","import \"../assets/NcSettingsSelectGroup-0d38d76b.css\";\nimport a from \"../Components/NcSelect.mjs\";\nimport { t as i } from \"./l10n-f692947e.mjs\";\nimport { l } from \"./l10n-9fc9974f.mjs\";\nimport { G as o } from \"./GenRandomId-cb9ccebe.mjs\";\nimport n from \"@nextcloud/axios\";\nimport { generateOcsUrl as u } from \"@nextcloud/router\";\nimport { debounce as p } from \"debounce\";\nimport { n as c } from \"./_plugin-vue2_normalizer-71e2aa87.mjs\";\nconst d = {\n  name: \"NcSettingsSelectGroup\",\n  components: {\n    NcSelect: a\n  },\n  mixins: [l],\n  props: {\n    /**\n     * The text of the label element of the select group input\n     */\n    label: {\n      type: String,\n      required: !0\n    },\n    /**\n     * Placeholder for the input element\n     * For backwards compatibility it falls back to the `label` value\n     */\n    placeholder: {\n      type: String,\n      default: \"\"\n    },\n    /**\n     * id attribute of the select group element\n     */\n    id: {\n      type: String,\n      default: () => \"action-\" + o(),\n      validator: (r) => r.trim() !== \"\"\n    },\n    /**\n     * value of the select group input\n     * A list of group IDs can be provided\n     */\n    value: {\n      type: Array,\n      default: () => []\n    },\n    /**\n     * disabled state of the settings select group input\n     */\n    disabled: {\n      type: Boolean,\n      default: !1\n    }\n  },\n  emits: [\n    \"input\",\n    \"error\"\n  ],\n  data() {\n    return {\n      /** Temporary store to cache groups */\n      groups: {},\n      randId: o(),\n      errorMessage: \"\"\n    };\n  },\n  computed: {\n    /**\n     * If the error message should be shown\n     */\n    hasError() {\n      return this.errorMessage !== \"\";\n    },\n    /**\n     * Validate input value and only return valid strings (group IDs)\n     *\n     * @return {string[]}\n     */\n    filteredValue() {\n      return this.value.filter((r) => r !== \"\" && typeof r == \"string\");\n    },\n    /**\n     * value property converted to an array of group objects used as input for the NcSelect\n     */\n    inputValue() {\n      return this.filteredValue.map(\n        (r) => typeof this.groups[r] > \"u\" ? {\n          id: r,\n          displayname: r\n        } : this.groups[r]\n      );\n    },\n    /**\n     * Convert groups object to array of groups required for NcSelect.options\n     * Filter out currently selected values\n     *\n     * @return {object[]}\n     */\n    groupsArray() {\n      return Object.values(this.groups).filter((r) => !this.value.includes(r.id));\n    }\n  },\n  watch: {\n    /**\n     * If the value is changed, check that all groups are loaded so we show the correct display name\n     */\n    value: {\n      handler() {\n        const r = Object.keys(this.groups);\n        this.filteredValue.filter((t) => !r.includes(t)).forEach((t) => {\n          this.loadGroup(t);\n        });\n      },\n      // Run the watch handler also when the component is initially mounted\n      immediate: !0\n    }\n  },\n  /**\n   * Load groups matching the empty query to reduce API calls\n   */\n  async mounted() {\n    const r = `${appName}:${appVersion}/initialGroups`;\n    let e = window.sessionStorage.getItem(r);\n    e ? (e = Object.fromEntries(JSON.parse(e).map((t) => [t.id, t])), this.groups = { ...this.groups, ...e }) : (await this.loadGroup(\"\"), window.sessionStorage.setItem(r, JSON.stringify(Object.values(this.groups))));\n  },\n  methods: {\n    /**\n     * Called when a new group is selected or previous group is deselected to emit the update event\n     *\n     * @param {object[]} updatedValue Array of selected groups\n     */\n    update(r) {\n      const e = r.map((t) => t.id);\n      this.$emit(\"input\", e);\n    },\n    /**\n     * Use provisioning API to search for given group and save it in the groups object\n     *\n     * @param {string} query The query like parts of the id oder display name\n     * @return {boolean}\n     */\n    async loadGroup(r) {\n      try {\n        r = typeof r == \"string\" ? encodeURI(r) : \"\";\n        const e = await n.get(u(`cloud/groups/details?search=${r}&limit=10`, 2));\n        if (this.errorMessage !== \"\" && window.setTimeout(() => {\n          this.errorMessage = \"\";\n        }, 5e3), Object.keys(e.data.ocs.data.groups).length > 0) {\n          const t = Object.fromEntries(e.data.ocs.data.groups.map((s) => [s.id, s]));\n          return this.groups = { ...this.groups, ...t }, !0;\n        }\n      } catch (e) {\n        this.$emit(\"error\", e), this.errorMessage = i(\"Unable to search the group\");\n      }\n      return !1;\n    },\n    /**\n     * Custom filter function for `NcSelect` to filter by ID *and* display name\n     *\n     * @param {object} option One of the groups\n     * @param {string} label The label property of the group\n     * @param {string} search The current search string\n     */\n    filterGroups(r, e, t) {\n      return `${e || \"\"} ${r.id}`.toLocaleLowerCase().indexOf(t.toLocaleLowerCase()) > -1;\n    },\n    /**\n     * Debounce the group search (reduce API calls)\n     */\n    onSearch: p(function(r) {\n      this.loadGroup(r);\n    }, 200)\n  }\n};\nvar m = function() {\n  var e = this, t = e._self._c;\n  return t(\"div\", [e.label ? t(\"label\", { staticClass: \"hidden-visually\", attrs: { for: e.id } }, [e._v(e._s(e.label))]) : e._e(), t(\"NcSelect\", { attrs: { value: e.inputValue, options: e.groupsArray, placeholder: e.placeholder || e.label, \"filter-by\": e.filterGroups, \"input-id\": e.id, limit: 5, label: \"displayname\", multiple: !0, \"close-on-select\": !1, disabled: e.disabled }, on: { input: e.update, search: e.onSearch } }), t(\"div\", { directives: [{ name: \"show\", rawName: \"v-show\", value: e.hasError, expression: \"hasError\" }], staticClass: \"select-group-error\" }, [e._v(\" \" + e._s(e.errorMessage) + \" \")])], 1);\n}, f = [], h = /* @__PURE__ */ c(\n  d,\n  m,\n  f,\n  !1,\n  null,\n  \"5a35ccce\",\n  null,\n  null\n);\nconst O = h.exports;\nexport {\n  O as N\n};\n","\n      import API from \"!../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../../style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../../style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../../style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../../style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../../css-loader/dist/cjs.js!./index-c221fe05.css\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n      options.insert = insertFn.bind(null, \"head\");\n    \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../css-loader/dist/cjs.js!./index-c221fe05.css\";\n       export default content && content.locals ? content.locals : undefined;\n","import \"../assets/index-c221fe05.css\";\nimport { n as s } from \"../chunks/_plugin-vue2_normalizer-71e2aa87.mjs\";\nimport { N as a } from \"../chunks/index-fbf943b3.mjs\";\nimport n from \"./NcPopover.mjs\";\nimport i from \"vue\";\nconst o = {\n  name: \"NcUserBubbleDiv\"\n};\nvar l = function() {\n  var e = this, r = e._self._c;\n  return r(\"div\", [e._t(\"trigger\")], 2);\n}, u = [], p = /* @__PURE__ */ s(\n  o,\n  l,\n  u,\n  !1,\n  null,\n  null,\n  null,\n  null\n);\nconst c = p.exports;\nconst m = {\n  name: \"NcUserBubble\",\n  components: {\n    NcAvatar: a,\n    NcPopover: n,\n    NcUserBubbleDiv: c\n  },\n  props: {\n    /**\n     * Override generated avatar, can be an url or an icon class\n     */\n    avatarImage: {\n      type: String,\n      default: void 0\n    },\n    /**\n     * Provide the user id if this is a user\n     */\n    user: {\n      type: String,\n      default: void 0\n    },\n    /**\n     * Displayed label\n     */\n    displayName: {\n      type: String,\n      default: void 0\n    },\n    /**\n     * Whether or not to display the user-status\n     */\n    showUserStatus: {\n      type: Boolean,\n      default: !1\n    },\n    /**\n     * Define the whole bubble as a link\n     */\n    url: {\n      type: String,\n      default: void 0,\n      validator: (t) => {\n        var e;\n        try {\n          return t = new URL(t, (e = t == null ? void 0 : t.startsWith) != null && e.call(t, \"/\") ? window.location.href : void 0), !0;\n        } catch {\n          return !1;\n        }\n      }\n    },\n    /**\n     * Default popover state. Requires the UserBubble\n     * to have some content to render inside the popover\n     */\n    open: {\n      type: Boolean,\n      default: !1\n    },\n    /**\n     * Use the primary colour\n     */\n    primary: {\n      type: Boolean,\n      default: !1\n    },\n    /**\n     * This is the height of the component\n     */\n    size: {\n      type: Number,\n      default: 20\n    },\n    /**\n     * This is the margin of the avatar (size - margin = avatar size)\n     */\n    margin: {\n      type: Number,\n      default: 2\n    }\n  },\n  emits: [\n    \"click\",\n    \"update:open\"\n  ],\n  computed: {\n    /**\n     * If userbubble is empty, let's NOT\n     * use the Popover component\n     * We need a component instead of a simple div here,\n     * because otherwise the trigger template will not be shown.\n     *\n     * @return {string} 'Popover' or 'UserBubbleDiv'\n     */\n    isPopoverComponent() {\n      return this.popoverEmpty ? \"NcUserBubbleDiv\" : \"NcPopover\";\n    },\n    /**\n     * Is the provided avatar url valid or not\n     *\n     * @return {boolean}\n     */\n    isAvatarUrl() {\n      if (!this.avatarImage)\n        return !1;\n      try {\n        return !!new URL(this.avatarImage);\n      } catch {\n        return !1;\n      }\n    },\n    /**\n     * Do we have a custom avatar or not\n     *\n     * @return {boolean}\n     */\n    isCustomAvatar() {\n      return !!this.avatarImage;\n    },\n    hasUrl() {\n      return this.url && this.url.trim() !== \"\";\n    },\n    isLinkComponent() {\n      return this.hasUrl ? \"a\" : \"div\";\n    },\n    popoverEmpty() {\n      return !(\"default\" in this.$slots);\n    },\n    styles() {\n      return {\n        content: {\n          height: this.size + \"px\",\n          lineHeight: this.size + \"px\",\n          borderRadius: this.size / 2 + \"px\"\n        },\n        avatar: {\n          marginLeft: this.margin + \"px\"\n        }\n      };\n    }\n  },\n  mounted() {\n    !this.displayName && !this.user && i.util.warn(\"[NcUserBubble] At least `displayName` or `user` property should be set.\");\n  },\n  methods: {\n    onOpenChange(t) {\n      this.$emit(\"update:open\", t);\n    },\n    /**\n     * Catch and forward click event to parent\n     *\n     * @param {Event} event the click event\n     */\n    onClick(t) {\n      this.$emit(\"click\", t);\n    }\n  }\n};\nvar d = function() {\n  var e = this, r = e._self._c;\n  return r(e.isPopoverComponent, { tag: \"component\", staticClass: \"user-bubble__wrapper\", attrs: { trigger: \"hover focus\", shown: e.open }, on: { \"update:open\": e.onOpenChange }, scopedSlots: e._u([{ key: \"trigger\", fn: function() {\n    return [r(e.isLinkComponent, { tag: \"component\", staticClass: \"user-bubble__content\", class: { \"user-bubble__content--primary\": e.primary }, style: e.styles.content, attrs: { href: e.hasUrl ? e.url : null }, on: { click: e.onClick } }, [r(\"NcAvatar\", { staticClass: \"user-bubble__avatar\", style: e.styles.avatar, attrs: { url: e.isCustomAvatar && e.isAvatarUrl ? e.avatarImage : void 0, \"icon-class\": e.isCustomAvatar && !e.isAvatarUrl ? e.avatarImage : void 0, user: e.user, \"display-name\": e.displayName, size: e.size - e.margin * 2, \"disable-tooltip\": !0, \"disable-menu\": !0, \"show-user-status\": e.showUserStatus } }), r(\"span\", { staticClass: \"user-bubble__name\" }, [e._v(\" \" + e._s(e.displayName || e.user) + \" \")]), e.$slots.name ? r(\"span\", { staticClass: \"user-bubble__secondary\" }, [e._t(\"name\")], 2) : e._e()], 1)];\n  }, proxy: !0 }], null, !0) }, [e._t(\"default\")], 2);\n}, _ = [], f = /* @__PURE__ */ s(\n  m,\n  d,\n  _,\n  !1,\n  null,\n  \"55ab76f1\",\n  null,\n  null\n);\nconst N = f.exports;\nexport {\n  N as default\n};\n","import i from \"./Components/NcActionButton.mjs\";\nimport m from \"./Components/NcActionButtonGroup.mjs\";\nimport e from \"./Components/NcActionCaption.mjs\";\nimport p from \"./Components/NcActionCheckbox.mjs\";\nimport c from \"./Components/NcActionInput.mjs\";\nimport f from \"./Components/NcActionLink.mjs\";\nimport n from \"./Components/NcActionRadio.mjs\";\nimport N from \"./Components/NcActionRouter.mjs\";\nimport a from \"./Components/NcActions.mjs\";\nimport s from \"./Components/NcActionSeparator.mjs\";\nimport l from \"./Components/NcActionText.mjs\";\nimport u from \"./Components/NcActionTextEditable.mjs\";\nimport d from \"./Components/NcAppContent.mjs\";\nimport A from \"./Components/NcAppContentDetails.mjs\";\nimport g from \"./Components/NcAppContentList.mjs\";\nimport b from \"./Components/NcAppNavigation.mjs\";\nimport S from \"./Components/NcAppNavigationCaption.mjs\";\nimport v from \"./Components/NcAppNavigationIconBullet.mjs\";\nimport T from \"./Components/NcAppNavigationItem.mjs\";\nimport x from \"./Components/NcAppNavigationNew.mjs\";\nimport C from \"./Components/NcAppNavigationNewItem.mjs\";\nimport k from \"./Components/NcAppNavigationSettings.mjs\";\nimport h from \"./Components/NcAppNavigationSpacer.mjs\";\nimport I from \"./Components/NcAppSettingsDialog.mjs\";\nimport y from \"./Components/NcAppSettingsSection.mjs\";\nimport P from \"./Components/NcAppSidebar.mjs\";\nimport B from \"./Components/NcAppSidebarTab.mjs\";\nimport { N as D } from \"./chunks/index-fbf943b3.mjs\";\nimport { u as tt } from \"./chunks/index-fbf943b3.mjs\";\nimport j from \"./Components/NcBreadcrumb.mjs\";\nimport R from \"./Components/NcBreadcrumbs.mjs\";\nimport O from \"./Components/NcButton.mjs\";\nimport _ from \"./Components/NcCheckboxRadioSwitch.mjs\";\nimport E from \"./Components/NcColorPicker.mjs\";\nimport L from \"./Components/NcContent.mjs\";\nimport M from \"./Components/NcCounterBubble.mjs\";\nimport w from \"./Components/NcDashboardWidget.mjs\";\nimport F from \"./Components/NcDashboardWidgetItem.mjs\";\nimport z from \"./Components/NcDateTime.mjs\";\nimport G from \"./Components/NcDateTimePicker.mjs\";\nimport W from \"./Components/NcDateTimePickerNative.mjs\";\nimport H from \"./Components/NcDialog.mjs\";\nimport V from \"./Components/NcDialogButton.mjs\";\nimport U from \"./Components/NcEmojiPicker.mjs\";\nimport $ from \"./Components/NcEmptyContent.mjs\";\nimport q from \"./Components/NcGuestContent.mjs\";\nimport J from \"./Components/NcHeaderMenu.mjs\";\nimport { N as K } from \"./chunks/index-20a9ace9.mjs\";\nimport Q from \"./Components/NcIconSvgWrapper.mjs\";\nimport X from \"./Components/NcListItem.mjs\";\nimport Y from \"./Components/NcListItemIcon.mjs\";\nimport Z from \"./Components/NcLoadingIcon.mjs\";\nimport oo from \"./Components/NcModal.mjs\";\nimport ro from \"./Components/NcNoteCard.mjs\";\nimport to from \"./Components/NcPasswordField.mjs\";\nimport io from \"./Components/NcPopover.mjs\";\nimport mo from \"./Components/NcProgressBar.mjs\";\nimport eo from \"./Components/NcRelatedResourcesPanel.mjs\";\nimport { N as po } from \"./chunks/index-5f2a5f57.mjs\";\nimport { r as mt } from \"./chunks/index-5f2a5f57.mjs\";\nimport co, { NcAutoCompleteResult as fo } from \"./Components/NcRichContenteditable.mjs\";\nimport { N as no } from \"./chunks/NcRichText-1e8fd02d.mjs\";\nimport \"./chunks/referencePickerModal-6bc8f6b9.mjs\";\nimport \"@nextcloud/axios\";\nimport \"@nextcloud/router\";\nimport No from \"./Components/NcSelect.mjs\";\nimport \"./chunks/l10n-f692947e.mjs\";\nimport ao from \"./Components/NcTextField.mjs\";\nimport \"@nextcloud/event-bus\";\nimport \"vue\";\nimport so from \"./Components/NcSavingIndicatorIcon.mjs\";\nimport lo from \"./Components/NcSelectTags.mjs\";\nimport uo from \"./Components/NcSettingsInputText.mjs\";\nimport Ao from \"./Components/NcSettingsSection.mjs\";\nimport { N as go } from \"./chunks/NcSettingsSelectGroup-ae323579.mjs\";\nimport bo from \"./Components/NcTimezonePicker.mjs\";\nimport So from \"./Components/NcUserBubble.mjs\";\nimport vo from \"./Components/NcTextArea.mjs\";\nimport { emojiAddRecent as pt, emojiSearch as ct } from \"./Functions/emoji.mjs\";\nimport { default as nt } from \"./Functions/usernameToColor.mjs\";\nimport { directive as To } from \"./Directives/Focus.mjs\";\nimport { directive as xo } from \"./Directives/Linkify.mjs\";\nimport \"./Directives/Tooltip.mjs\";\nimport { default as at } from \"./Mixins/clickOutsideOptions.mjs\";\nimport { default as lt } from \"./Mixins/isFullscreen.mjs\";\nimport { default as dt } from \"./Mixins/isMobile.mjs\";\nimport { VTooltip as Co } from \"floating-vue\";\nimport { VTooltip as gt } from \"floating-vue\";\n/**\n * @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nconst ko = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({\n  __proto__: null,\n  NcActionButton: i,\n  NcActionButtonGroup: m,\n  NcActionCaption: e,\n  NcActionCheckbox: p,\n  NcActionInput: c,\n  NcActionLink: f,\n  NcActionRadio: n,\n  NcActionRouter: N,\n  NcActionSeparator: s,\n  NcActionText: l,\n  NcActionTextEditable: u,\n  NcActions: a,\n  NcAppContent: d,\n  NcAppContentDetails: A,\n  NcAppContentList: g,\n  NcAppNavigation: b,\n  NcAppNavigationCaption: S,\n  NcAppNavigationIconBullet: v,\n  NcAppNavigationItem: T,\n  NcAppNavigationNew: x,\n  NcAppNavigationNewItem: C,\n  NcAppNavigationSettings: k,\n  NcAppNavigationSpacer: h,\n  NcAppSettingsDialog: I,\n  NcAppSettingsSection: y,\n  NcAppSidebar: P,\n  NcAppSidebarTab: B,\n  NcAutoCompleteResult: fo,\n  NcAvatar: D,\n  NcBreadcrumb: j,\n  NcBreadcrumbs: R,\n  NcButton: O,\n  NcCheckboxRadioSwitch: _,\n  NcColorPicker: E,\n  NcContent: L,\n  NcCounterBubble: M,\n  NcDashboardWidget: w,\n  NcDashboardWidgetItem: F,\n  NcDateTime: z,\n  NcDateTimePicker: G,\n  NcDateTimePickerNative: W,\n  NcDialog: H,\n  NcDialogButton: V,\n  NcEmojiPicker: U,\n  NcEmptyContent: $,\n  NcGuestContent: q,\n  NcHeaderMenu: J,\n  NcHighlight: K,\n  NcIconSvgWrapper: Q,\n  NcListItem: X,\n  NcListItemIcon: Y,\n  NcLoadingIcon: Z,\n  NcMentionBubble: po,\n  NcModal: oo,\n  NcNoteCard: ro,\n  NcPasswordField: to,\n  NcPopover: io,\n  NcProgressBar: mo,\n  NcRelatedResourcesPanel: eo,\n  NcRichContenteditable: co,\n  NcRichText: no,\n  NcSavingIndicatorIcon: so,\n  NcSelect: No,\n  NcSelectTags: lo,\n  NcSettingsInputText: uo,\n  NcSettingsSection: Ao,\n  NcSettingsSelectGroup: go,\n  NcTextArea: vo,\n  NcTextField: ao,\n  NcTimezonePicker: bo,\n  NcUserBubble: So\n}, Symbol.toStringTag, { value: \"Module\" }));\n/**\n * @copyright 2022 Christopher Ng <chrng8@gmail.com>\n *\n * @author Christopher Ng <chrng8@gmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nconst Yr = (o) => o.type === \"click\" || o.type === \"keydown\" && o.key === \"Enter\";\n/**\n * @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nconst ho = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({\n  __proto__: null,\n  Focus: To,\n  Linkify: xo,\n  Tooltip: Co\n}, Symbol.toStringTag, { value: \"Module\" })), Zr = {\n  install(o) {\n    Object.entries(ko).forEach(([t, r]) => {\n      o.component(r.name || t, r);\n    }), Object.entries(ho).forEach(([t, r]) => {\n      o.directive(t, r);\n    });\n  }\n};\nexport {\n  To as Focus,\n  xo as Linkify,\n  i as NcActionButton,\n  m as NcActionButtonGroup,\n  e as NcActionCaption,\n  p as NcActionCheckbox,\n  c as NcActionInput,\n  f as NcActionLink,\n  n as NcActionRadio,\n  N as NcActionRouter,\n  s as NcActionSeparator,\n  l as NcActionText,\n  u as NcActionTextEditable,\n  a as NcActions,\n  d as NcAppContent,\n  A as NcAppContentDetails,\n  g as NcAppContentList,\n  b as NcAppNavigation,\n  S as NcAppNavigationCaption,\n  v as NcAppNavigationIconBullet,\n  T as NcAppNavigationItem,\n  x as NcAppNavigationNew,\n  C as NcAppNavigationNewItem,\n  k as NcAppNavigationSettings,\n  h as NcAppNavigationSpacer,\n  I as NcAppSettingsDialog,\n  y as NcAppSettingsSection,\n  P as NcAppSidebar,\n  B as NcAppSidebarTab,\n  fo as NcAutoCompleteResult,\n  D as NcAvatar,\n  j as NcBreadcrumb,\n  R as NcBreadcrumbs,\n  O as NcButton,\n  _ as NcCheckboxRadioSwitch,\n  E as NcColorPicker,\n  L as NcContent,\n  M as NcCounterBubble,\n  w as NcDashboardWidget,\n  F as NcDashboardWidgetItem,\n  z as NcDateTime,\n  G as NcDateTimePicker,\n  W as NcDateTimePickerNative,\n  H as NcDialog,\n  V as NcDialogButton,\n  U as NcEmojiPicker,\n  $ as NcEmptyContent,\n  q as NcGuestContent,\n  J as NcHeaderMenu,\n  K as NcHighlight,\n  Q as NcIconSvgWrapper,\n  X as NcListItem,\n  Y as NcListItemIcon,\n  Z as NcLoadingIcon,\n  po as NcMentionBubble,\n  oo as NcModal,\n  ro as NcNoteCard,\n  to as NcPasswordField,\n  io as NcPopover,\n  mo as NcProgressBar,\n  eo as NcRelatedResourcesPanel,\n  co as NcRichContenteditable,\n  no as NcRichText,\n  so as NcSavingIndicatorIcon,\n  No as NcSelect,\n  lo as NcSelectTags,\n  uo as NcSettingsInputText,\n  Ao as NcSettingsSection,\n  go as NcSettingsSelectGroup,\n  vo as NcTextArea,\n  ao as NcTextField,\n  bo as NcTimezonePicker,\n  So as NcUserBubble,\n  Zr as NextcloudVuePlugin,\n  gt as Tooltip,\n  at as clickOutsideOptions,\n  pt as emojiAddRecent,\n  ct as emojiSearch,\n  Yr as isA11yActivation,\n  lt as isFullscreen,\n  dt as isMobile,\n  mt as richEditor,\n  tt as userStatus,\n  nt as usernameToColor\n};\n","import { ref as y, onMounted as V, computed as m, defineComponent as B, watch as ie, onUnmounted as ue, nextTick as de, toRef as _e } from \"vue\";\nimport { FileType as I, formatFileSize as fe, davGetClient as pe, davResultToNode as R, davRootPath as M, getFavoriteNodes as ve, davGetRecentSearch as me, davGetDefaultPropfind as ge } from \"@nextcloud/files\";\nimport { getCanonicalLocale as he } from \"@nextcloud/l10n\";\nimport { NcCheckboxRadioSwitch as ne, NcDateTime as ye, NcButton as le, NcActions as we, NcActionInput as ke, NcBreadcrumbs as be, NcBreadcrumb as Ce, NcSelect as Fe, NcTextField as Se, NcDialog as $e, NcEmptyContent as xe } from \"@nextcloud/vue\";\nimport { join as se } from \"path\";\nimport { loadState as re } from \"@nextcloud/initial-state\";\nimport ae from \"@nextcloud/axios\";\nimport { generateUrl as D } from \"@nextcloud/router\";\nimport { toValue as te } from \"@vueuse/core\";\nimport { t as w, k as Ne } from \"./toast-0a4f3235.mjs\";\nimport { Fragment as Le } from \"vue-frag\";\nimport { emit as Pe } from \"@nextcloud/event-bus\";\nfunction b(s, e, i, t, n, l, u, o) {\n  var r = typeof s == \"function\" ? s.options : s;\n  e && (r.render = e, r.staticRenderFns = i, r._compiled = !0), t && (r.functional = !0), l && (r._scopeId = \"data-v-\" + l);\n  var d;\n  if (u ? (d = function(_) {\n    _ = _ || // cached call\n    this.$vnode && this.$vnode.ssrContext || // stateful\n    this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext, !_ && typeof __VUE_SSR_CONTEXT__ < \"u\" && (_ = __VUE_SSR_CONTEXT__), n && n.call(this, _), _ && _._registeredComponents && _._registeredComponents.add(u);\n  }, r._ssrRegister = d) : n && (d = o ? function() {\n    n.call(\n      this,\n      (r.functional ? this.parent : this).$root.$options.shadowRoot\n    );\n  } : n), d)\n    if (r.functional) {\n      r._injectStyles = d;\n      var v = r.render;\n      r.render = function(h, f) {\n        return d.call(f), v(h, f);\n      };\n    } else {\n      var k = r.beforeCreate;\n      r.beforeCreate = k ? [].concat(k, d) : [d];\n    }\n  return {\n    exports: s,\n    options: r\n  };\n}\nconst ze = {\n  name: \"FileIcon\",\n  emits: [\"click\"],\n  props: {\n    title: {\n      type: String\n    },\n    fillColor: {\n      type: String,\n      default: \"currentColor\"\n    },\n    size: {\n      type: Number,\n      default: 24\n    }\n  }\n};\nvar Be = function() {\n  var e = this, i = e._self._c;\n  return i(\"span\", e._b({ staticClass: \"material-design-icon file-icon\", attrs: { \"aria-hidden\": !e.title, \"aria-label\": e.title, role: \"img\" }, on: { click: function(t) {\n    return e.$emit(\"click\", t);\n  } } }, \"span\", e.$attrs, !1), [i(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { fill: e.fillColor, width: e.size, height: e.size, viewBox: \"0 0 24 24\" } }, [i(\"path\", { attrs: { d: \"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\" } }, [e.title ? i(\"title\", [e._v(e._s(e.title))]) : e._e()])])]);\n}, Ie = [], Ve = /* @__PURE__ */ b(\n  ze,\n  Be,\n  Ie,\n  !1,\n  null,\n  null,\n  null,\n  null\n);\nconst oe = Ve.exports;\n/**\n * @copyright Copyright (c) 2023 Ferdinand Thiessen <opensource@fthiessen.de>\n *\n * @author Ferdinand Thiessen <opensource@fthiessen.de>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n */\nconst H = () => {\n  var s, e, i;\n  const t = re(\"files\", \"config\", null), n = y((s = t == null ? void 0 : t.show_hidden) != null ? s : !1), l = y((e = t == null ? void 0 : t.sort_favorites_first) != null ? e : !0), u = y((i = t == null ? void 0 : t.crop_image_previews) != null ? i : !0);\n  return V(() => {\n    ae.get(D(\"/apps/files/api/v1/configs\")).then((o) => {\n      var r, d, v, k, _, h, f, F, S;\n      n.value = (v = (d = (r = o.data) == null ? void 0 : r.data) == null ? void 0 : d.show_hidden) != null ? v : !1, l.value = (h = (_ = (k = o.data) == null ? void 0 : k.data) == null ? void 0 : _.sort_favorites_first) != null ? h : !0, u.value = (S = (F = (f = o.data) == null ? void 0 : f.data) == null ? void 0 : F.crop_image_previews) != null ? S : !0;\n    });\n  }), {\n    showHiddenFiles: n,\n    sortFavoritesFirst: l,\n    cropImagePreviews: u\n  };\n}, Re = (s) => {\n  var e, i, t, n, l, u, o, r, d, v, k, _;\n  const h = (p) => p === \"asc\" ? \"ascending\" : p === \"desc\" ? \"descending\" : \"none\", f = re(\"files\", \"viewConfigs\", null), F = y({\n    sortBy: (i = (e = f == null ? void 0 : f.files) == null ? void 0 : e.sorting_mode) != null ? i : \"basename\",\n    order: h((n = (t = f == null ? void 0 : f.files) == null ? void 0 : t.sorting_direction) != null ? n : \"asc\")\n  }), S = y({\n    sortBy: (u = (l = f == null ? void 0 : f.recent) == null ? void 0 : l.sorting_mode) != null ? u : \"basename\",\n    order: h((r = (o = f == null ? void 0 : f.recent) == null ? void 0 : o.sorting_direction) != null ? r : \"asc\")\n  }), L = y({\n    sortBy: (v = (d = f == null ? void 0 : f.favorites) == null ? void 0 : d.sorting_mode) != null ? v : \"basename\",\n    order: h((_ = (k = f == null ? void 0 : f.favorites) == null ? void 0 : k.sorting_direction) != null ? _ : \"asc\")\n  });\n  V(() => {\n    ae.get(D(\"/apps/files/api/v1/views\")).then((p) => {\n      var a, c, C, N, P, z, T, E, U, Z, O, j, G, W, q, K, X, J, Q, Y, ee;\n      F.value = {\n        sortBy: (N = (C = (c = (a = p.data) == null ? void 0 : a.data) == null ? void 0 : c.files) == null ? void 0 : C.sorting_mode) != null ? N : \"basename\",\n        order: h((T = (z = (P = p.data) == null ? void 0 : P.data) == null ? void 0 : z.files) == null ? void 0 : T.sorting_direction)\n      }, L.value = {\n        sortBy: (O = (Z = (U = (E = p.data) == null ? void 0 : E.data) == null ? void 0 : U.favorites) == null ? void 0 : Z.sorting_mode) != null ? O : \"basename\",\n        order: h((W = (G = (j = p.data) == null ? void 0 : j.data) == null ? void 0 : G.favorites) == null ? void 0 : W.sorting_direction)\n      }, S.value = {\n        sortBy: (J = (X = (K = (q = p.data) == null ? void 0 : q.data) == null ? void 0 : K.recent) == null ? void 0 : X.sorting_mode) != null ? J : \"basename\",\n        order: h((ee = (Y = (Q = p.data) == null ? void 0 : Q.data) == null ? void 0 : Y.recent) == null ? void 0 : ee.sorting_direction)\n      };\n    });\n  });\n  const $ = m(() => te(s || \"files\") === \"files\" ? F.value : te(s) === \"recent\" ? S.value : L.value), g = m(() => $.value.sortBy), x = m(() => $.value.order);\n  return {\n    filesViewConfig: F,\n    favoritesViewConfig: L,\n    recentViewConfig: S,\n    currentConfig: $,\n    sortBy: g,\n    order: x\n  };\n}, Me = {\n  name: \"MenuUpIcon\",\n  emits: [\"click\"],\n  props: {\n    title: {\n      type: String\n    },\n    fillColor: {\n      type: String,\n      default: \"currentColor\"\n    },\n    size: {\n      type: Number,\n      default: 24\n    }\n  }\n};\nvar De = function() {\n  var e = this, i = e._self._c;\n  return i(\"span\", e._b({ staticClass: \"material-design-icon menu-up-icon\", attrs: { \"aria-hidden\": !e.title, \"aria-label\": e.title, role: \"img\" }, on: { click: function(t) {\n    return e.$emit(\"click\", t);\n  } } }, \"span\", e.$attrs, !1), [i(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { fill: e.fillColor, width: e.size, height: e.size, viewBox: \"0 0 24 24\" } }, [i(\"path\", { attrs: { d: \"M7,15L12,10L17,15H7Z\" } }, [e.title ? i(\"title\", [e._v(e._s(e.title))]) : e._e()])])]);\n}, He = [], Ae = /* @__PURE__ */ b(\n  Me,\n  De,\n  He,\n  !1,\n  null,\n  null,\n  null,\n  null\n);\nconst Te = Ae.exports, Ee = {\n  name: \"MenuDownIcon\",\n  emits: [\"click\"],\n  props: {\n    title: {\n      type: String\n    },\n    fillColor: {\n      type: String,\n      default: \"currentColor\"\n    },\n    size: {\n      type: Number,\n      default: 24\n    }\n  }\n};\nvar Ue = function() {\n  var e = this, i = e._self._c;\n  return i(\"span\", e._b({ staticClass: \"material-design-icon menu-down-icon\", attrs: { \"aria-hidden\": !e.title, \"aria-label\": e.title, role: \"img\" }, on: { click: function(t) {\n    return e.$emit(\"click\", t);\n  } } }, \"span\", e.$attrs, !1), [i(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { fill: e.fillColor, width: e.size, height: e.size, viewBox: \"0 0 24 24\" } }, [i(\"path\", { attrs: { d: \"M7,10L12,15L17,10H7Z\" } }, [e.title ? i(\"title\", [e._v(e._s(e.title))]) : e._e()])])]);\n}, Ze = [], Oe = /* @__PURE__ */ b(\n  Ee,\n  Ue,\n  Ze,\n  !1,\n  null,\n  null,\n  null,\n  null\n);\nconst je = Oe.exports, ce = {\n  \"file-picker__file-icon\": \"_file-picker__file-icon_1vgv4_5\"\n}, Ge = /* @__PURE__ */ B({\n  __name: \"LoadingTableRow\",\n  props: {\n    showCheckbox: { type: Boolean }\n  },\n  setup(s) {\n    return { __sfc: !0, fileListIconStyles: ce };\n  }\n});\nvar We = function() {\n  var e = this, i = e._self._c, t = e._self._setupProxy;\n  return i(\"tr\", { staticClass: \"file-picker__row loading-row\", attrs: { \"aria-hidden\": \"true\" } }, [e.showCheckbox ? i(\"td\", { staticClass: \"row-checkbox\" }, [i(\"span\")]) : e._e(), i(\"td\", { staticClass: \"row-name\" }, [i(\"div\", { staticClass: \"row-wrapper\" }, [i(\"span\", { class: t.fileListIconStyles[\"file-picker__file-icon\"] }), i(\"span\")])]), e._m(0), e._m(1)]);\n}, qe = [function() {\n  var s = this, e = s._self._c;\n  return s._self._setupProxy, e(\"td\", { staticClass: \"row-size\" }, [e(\"span\")]);\n}, function() {\n  var s = this, e = s._self._c;\n  return s._self._setupProxy, e(\"td\", { staticClass: \"row-modified\" }, [e(\"span\")]);\n}], Ke = /* @__PURE__ */ b(\n  Ge,\n  We,\n  qe,\n  !1,\n  null,\n  \"6aded0d9\",\n  null,\n  null\n);\nconst Xe = Ke.exports;\n/**\n * @copyright Copyright (c) 2023 Ferdinand Thiessen <opensource@fthiessen.de>\n *\n * @author Ferdinand Thiessen <opensource@fthiessen.de>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n */\nfunction Je(s, e = {}) {\n  var i;\n  e = { size: 32, cropPreview: !1, mimeFallback: !0, ...e };\n  try {\n    const t = ((i = s.attributes) == null ? void 0 : i.previewUrl) || D(\"/core/preview?fileId={fileid}\", {\n      fileid: s.fileid\n    });\n    let n;\n    try {\n      n = new URL(t);\n    } catch {\n      n = new URL(t, window.location.origin);\n    }\n    return n.searchParams.set(\"x\", \"\".concat(e.size)), n.searchParams.set(\"y\", \"\".concat(e.size)), n.searchParams.set(\"mimeFallback\", \"\".concat(e.mimeFallback)), n.searchParams.set(\"a\", e.cropPreview === !0 ? \"0\" : \"1\"), n.searchParams.set(\"c\", \"\".concat(s.attributes.etag)), n;\n  } catch {\n    return null;\n  }\n}\nconst Qe = {\n  name: \"FolderIcon\",\n  emits: [\"click\"],\n  props: {\n    title: {\n      type: String\n    },\n    fillColor: {\n      type: String,\n      default: \"currentColor\"\n    },\n    size: {\n      type: Number,\n      default: 24\n    }\n  }\n};\nvar Ye = function() {\n  var e = this, i = e._self._c;\n  return i(\"span\", e._b({ staticClass: \"material-design-icon folder-icon\", attrs: { \"aria-hidden\": !e.title, \"aria-label\": e.title, role: \"img\" }, on: { click: function(t) {\n    return e.$emit(\"click\", t);\n  } } }, \"span\", e.$attrs, !1), [i(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { fill: e.fillColor, width: e.size, height: e.size, viewBox: \"0 0 24 24\" } }, [i(\"path\", { attrs: { d: \"M10,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V8C22,6.89 21.1,6 20,6H12L10,4Z\" } }, [e.title ? i(\"title\", [e._v(e._s(e.title))]) : e._e()])])]);\n}, et = [], tt = /* @__PURE__ */ b(\n  Qe,\n  Ye,\n  et,\n  !1,\n  null,\n  null,\n  null,\n  null\n);\nconst A = tt.exports, it = {\n  name: \"FilePreview\"\n}, nt = /* @__PURE__ */ B({\n  ...it,\n  props: {\n    node: null\n  },\n  setup(s) {\n    const e = s, i = y(ce), { cropImagePreviews: t } = H(), n = m(() => Je(e.node, { cropPreview: t.value })), l = m(() => e.node.type === I.File), u = y(!1);\n    return ie(n, () => {\n      if (u.value = !1, n.value) {\n        const o = document.createElement(\"img\");\n        o.src = n.value.href, o.onerror = () => o.remove(), o.onload = () => {\n          u.value = !0, o.remove();\n        }, document.body.appendChild(o);\n      }\n    }, { immediate: !0 }), { __sfc: !0, fileListIconStyles: i, props: e, cropImagePreviews: t, previewURL: n, isFile: l, canLoadPreview: u, t: w, IconFile: oe, IconFolder: A };\n  }\n});\nvar lt = function() {\n  var e = this, i = e._self._c, t = e._self._setupProxy;\n  return i(\"div\", { class: t.fileListIconStyles[\"file-picker__file-icon\"], style: t.canLoadPreview ? { backgroundImage: \"url(\".concat(t.previewURL, \")\") } : void 0, attrs: { \"aria-label\": t.t(\"MIME type {mime}\", { mime: e.node.mime || t.t(\"unknown\") }) } }, [t.canLoadPreview ? e._e() : [t.isFile ? i(t.IconFile, { attrs: { size: 20 } }) : i(t.IconFolder, { attrs: { size: 20 } })]], 2);\n}, st = [], rt = /* @__PURE__ */ b(\n  nt,\n  lt,\n  st,\n  !1,\n  null,\n  null,\n  null,\n  null\n);\nconst at = rt.exports, ot = /* @__PURE__ */ B({\n  __name: \"FileListRow\",\n  props: {\n    allowPickDirectory: { type: Boolean },\n    selected: { type: Boolean },\n    showCheckbox: { type: Boolean },\n    canPick: { type: Boolean },\n    node: null\n  },\n  emits: [\"update:selected\", \"enter-directory\"],\n  setup(s, { emit: e }) {\n    const i = s, t = m(() => {\n      var v;\n      return ((v = i.node.attributes) == null ? void 0 : v.displayName) || i.node.basename.slice(0, i.node.extension ? -i.node.extension.length : void 0);\n    }), n = m(() => i.node.extension), l = m(() => i.node.type === I.Folder), u = m(() => i.canPick && (i.allowPickDirectory || !l.value));\n    function o() {\n      e(\"update:selected\", !i.selected);\n    }\n    function r() {\n      l.value ? e(\"enter-directory\", i.node) : o();\n    }\n    function d(v) {\n      v.key === \"Enter\" && r();\n    }\n    return { __sfc: !0, props: i, emit: e, displayName: t, fileExtension: n, isDirectory: l, isPickable: u, toggleSelected: o, handleClick: r, handleKeyDown: d, formatFileSize: fe, NcCheckboxRadioSwitch: ne, NcDateTime: ye, t: w, FilePreview: at };\n  }\n});\nvar ct = function() {\n  var e = this, i = e._self._c, t = e._self._setupProxy;\n  return i(\"tr\", e._g(\n    { class: [\"file-picker__row\", {\n      \"file-picker__row--selected\": e.selected && !e.showCheckbox\n    }], attrs: { tabindex: e.showCheckbox && !t.isDirectory ? void 0 : 0, \"aria-selected\": t.isPickable ? e.selected : void 0, \"data-filename\": e.node.basename, \"data-testid\": \"file-list-row\" }, on: { click: t.handleClick } },\n    /* same as tabindex -> if we hide the checkbox or this is a directory we need keyboard access to enter the directory or select the node */\n    !e.showCheckbox || t.isDirectory ? { keydown: t.handleKeyDown } : {}\n  ), [e.showCheckbox ? i(\"td\", { staticClass: \"row-checkbox\" }, [i(t.NcCheckboxRadioSwitch, { attrs: { disabled: !t.isPickable, checked: e.selected, \"aria-label\": t.t(\"Select the row for {nodename}\", { nodename: t.displayName }), \"data-testid\": \"row-checkbox\" }, on: { click: function(n) {\n    n.stopPropagation();\n  }, \"update:checked\": t.toggleSelected } })], 1) : e._e(), i(\"td\", { staticClass: \"row-name\" }, [i(\"div\", { staticClass: \"file-picker__name-container\", attrs: { \"data-testid\": \"row-name\" } }, [i(t.FilePreview, { attrs: { node: e.node } }), i(\"div\", { staticClass: \"file-picker__file-name\", attrs: { title: t.displayName }, domProps: { textContent: e._s(t.displayName) } }), i(\"div\", { staticClass: \"file-picker__file-extension\", domProps: { textContent: e._s(t.fileExtension) } })], 1)]), i(\"td\", { staticClass: \"row-size\" }, [e._v(\" \" + e._s(t.formatFileSize(e.node.size || 0)) + \" \")]), i(\"td\", { staticClass: \"row-modified\" }, [i(t.NcDateTime, { attrs: { timestamp: e.node.mtime, \"ignore-seconds\": !0 } })], 1)]);\n}, ut = [], dt = /* @__PURE__ */ b(\n  ot,\n  ct,\n  ut,\n  !1,\n  null,\n  \"d337ebac\",\n  null,\n  null\n);\nconst _t = dt.exports, ft = /* @__PURE__ */ B({\n  __name: \"FileList\",\n  props: {\n    currentView: null,\n    multiselect: { type: Boolean },\n    allowPickDirectory: { type: Boolean },\n    loading: { type: Boolean },\n    files: null,\n    selectedFiles: null,\n    path: null\n  },\n  emits: [\"update:path\", \"update:selectedFiles\"],\n  setup(s, { emit: e }) {\n    const i = s, t = y(), { currentConfig: n } = Re(i.currentView), l = m(() => {\n      var g;\n      return (g = t.value) != null ? g : n.value;\n    }), u = m(() => l.value.sortBy === \"basename\" ? l.value.order === \"none\" ? void 0 : l.value.order : void 0), o = m(() => l.value.sortBy === \"size\" ? l.value.order === \"none\" ? void 0 : l.value.order : void 0), r = m(() => l.value.sortBy === \"mtime\" ? l.value.order === \"none\" ? void 0 : l.value.order : void 0), d = (g) => {\n      l.value.sortBy === g ? l.value.order === \"ascending\" ? t.value = { sortBy: l.value.sortBy, order: \"descending\" } : t.value = { sortBy: l.value.sortBy, order: \"ascending\" } : t.value = { sortBy: g, order: \"ascending\" };\n    }, { sortFavoritesFirst: v } = H(), k = m(\n      () => {\n        const g = {\n          ascending: (p, a, c) => c(p, a),\n          descending: (p, a, c) => c(a, p),\n          // eslint-disable-next-line @typescript-eslint/no-unused-vars\n          none: (p, a, c) => 0\n        }, x = {\n          basename: (p, a) => {\n            var c, C;\n            return (((c = p.attributes) == null ? void 0 : c.displayName) || p.basename).localeCompare(((C = a.attributes) == null ? void 0 : C.displayName) || a.basename, he());\n          },\n          size: (p, a) => (p.size || 0) - (a.size || 0),\n          // reverted because \"young\" is smaller than \"old\"\n          mtime: (p, a) => {\n            var c, C, N, P;\n            return (((C = (c = a.mtime) == null ? void 0 : c.getTime) == null ? void 0 : C.call(c)) || 0) - (((P = (N = p.mtime) == null ? void 0 : N.getTime) == null ? void 0 : P.call(N)) || 0);\n          }\n        };\n        return [...i.files].sort(\n          (p, a) => (\n            // Folders always come above the files\n            (a.type === I.Folder ? 1 : 0) - (p.type === I.Folder ? 1 : 0) || (v ? (a.attributes.favorite ? 1 : 0) - (p.attributes.favorite ? 1 : 0) : 0) || g[l.value.order](p, a, x[l.value.sortBy])\n          )\n        );\n      }\n    ), _ = m(() => i.files.filter((g) => i.allowPickDirectory || g.type !== I.Folder)), h = m(() => !i.loading && i.selectedFiles.length > 0 && i.selectedFiles.length >= _.value.length);\n    function f() {\n      i.selectedFiles.length < _.value.length ? e(\"update:selectedFiles\", _.value) : e(\"update:selectedFiles\", []);\n    }\n    function F(g) {\n      i.selectedFiles.includes(g) ? e(\"update:selectedFiles\", i.selectedFiles.filter((x) => x.path !== g.path)) : i.multiselect ? e(\"update:selectedFiles\", [...i.selectedFiles, g]) : e(\"update:selectedFiles\", [g]);\n    }\n    function S(g) {\n      e(\"update:path\", se(i.path, g.basename));\n    }\n    const L = y(4), $ = y();\n    {\n      const g = () => de(() => {\n        var x, p, a, c, C;\n        const N = ((p = (x = $.value) == null ? void 0 : x.parentElement) == null ? void 0 : p.children) || [];\n        let P = ((c = (a = $.value) == null ? void 0 : a.parentElement) == null ? void 0 : c.clientHeight) || 450;\n        for (let z = 0; z < N.length; z++)\n          (C = $.value) != null && C.isSameNode(N[z]) || (P -= N[z].clientHeight);\n        L.value = Math.floor((P - 50) / 50);\n      });\n      V(() => {\n        window.addEventListener(\"resize\", g), g();\n      }), ue(() => {\n        window.removeEventListener(\"resize\", g);\n      });\n    }\n    return { __sfc: !0, props: i, emit: e, customSortingConfig: t, filesAppSorting: n, sortingConfig: l, sortByName: u, sortBySize: o, sortByModified: r, toggleSorting: d, sortFavoritesFirst: v, sortedFiles: k, selectableFiles: _, allSelected: h, onSelectAll: f, onNodeSelected: F, onChangeDirectory: S, skeletonNumber: L, fileContainer: $, NcButton: le, NcCheckboxRadioSwitch: ne, t: w, IconSortAscending: Te, IconSortDescending: je, LoadingTableRow: Xe, FileListRow: _t };\n  }\n});\nvar pt = function() {\n  var e = this, i = e._self._c, t = e._self._setupProxy;\n  return i(\"div\", { ref: \"fileContainer\", staticClass: \"file-picker__files\" }, [i(\"table\", [i(\"thead\", [i(\"tr\", [e.multiselect ? i(\"th\", { staticClass: \"row-checkbox\" }, [i(\"span\", { staticClass: \"hidden-visually\" }, [e._v(\" \" + e._s(t.t(\"Select entry\")) + \" \")]), e.multiselect ? i(t.NcCheckboxRadioSwitch, { attrs: { \"aria-label\": t.t(\"Select all entries\"), checked: t.allSelected, \"data-testid\": \"select-all-checkbox\" }, on: { \"update:checked\": t.onSelectAll } }) : e._e()], 1) : e._e(), i(\"th\", { staticClass: \"row-name\", attrs: { \"aria-sort\": t.sortByName } }, [i(\"div\", { staticClass: \"header-wrapper\" }, [i(\"span\", { staticClass: \"file-picker__header-preview\" }), i(t.NcButton, { attrs: { wide: !0, type: \"tertiary\", \"data-test\": \"file-picker_sort-name\" }, on: { click: function(n) {\n    return t.toggleSorting(\"basename\");\n  } }, scopedSlots: e._u([{ key: \"icon\", fn: function() {\n    return [t.sortByName === \"ascending\" ? i(t.IconSortAscending, { attrs: { size: 20 } }) : t.sortByName === \"descending\" ? i(t.IconSortDescending, { attrs: { size: 20 } }) : i(\"span\", { staticStyle: { width: \"44px\" } })];\n  }, proxy: !0 }]) }, [e._v(\" \" + e._s(t.t(\"Name\")) + \" \")])], 1)]), i(\"th\", { staticClass: \"row-size\", attrs: { \"aria-sort\": t.sortBySize } }, [i(t.NcButton, { attrs: { wide: !0, type: \"tertiary\" }, on: { click: function(n) {\n    return t.toggleSorting(\"size\");\n  } }, scopedSlots: e._u([{ key: \"icon\", fn: function() {\n    return [t.sortBySize === \"ascending\" ? i(t.IconSortAscending, { attrs: { size: 20 } }) : t.sortBySize === \"descending\" ? i(t.IconSortDescending, { attrs: { size: 20 } }) : i(\"span\", { staticStyle: { width: \"44px\" } })];\n  }, proxy: !0 }]) }, [e._v(\" \" + e._s(t.t(\"Size\")) + \" \")])], 1), i(\"th\", { staticClass: \"row-modified\", attrs: { \"aria-sort\": t.sortByModified } }, [i(t.NcButton, { attrs: { wide: !0, type: \"tertiary\" }, on: { click: function(n) {\n    return t.toggleSorting(\"mtime\");\n  } }, scopedSlots: e._u([{ key: \"icon\", fn: function() {\n    return [t.sortByModified === \"ascending\" ? i(t.IconSortAscending, { attrs: { size: 20 } }) : t.sortByModified === \"descending\" ? i(t.IconSortDescending, { attrs: { size: 20 } }) : i(\"span\", { staticStyle: { width: \"44px\" } })];\n  }, proxy: !0 }]) }, [e._v(\" \" + e._s(t.t(\"Modified\")) + \" \")])], 1)])]), i(\"tbody\", [e.loading ? e._l(t.skeletonNumber, function(n) {\n    return i(t.LoadingTableRow, { key: n, attrs: { \"show-checkbox\": e.multiselect } });\n  }) : e._l(t.sortedFiles, function(n) {\n    return i(t.FileListRow, { key: n.fileid || n.path, attrs: { \"allow-pick-directory\": e.allowPickDirectory, \"show-checkbox\": e.multiselect, \"can-pick\": e.multiselect || e.selectedFiles.length === 0 || e.selectedFiles.includes(n), selected: e.selectedFiles.includes(n), node: n }, on: { \"update:selected\": function(l) {\n      return t.onNodeSelected(n);\n    }, \"enter-directory\": t.onChangeDirectory } });\n  })], 2)])]);\n}, vt = [], mt = /* @__PURE__ */ b(\n  ft,\n  pt,\n  vt,\n  !1,\n  null,\n  \"ecc68c3c\",\n  null,\n  null\n);\nconst gt = mt.exports, ht = {\n  name: \"HomeIcon\",\n  emits: [\"click\"],\n  props: {\n    title: {\n      type: String\n    },\n    fillColor: {\n      type: String,\n      default: \"currentColor\"\n    },\n    size: {\n      type: Number,\n      default: 24\n    }\n  }\n};\nvar yt = function() {\n  var e = this, i = e._self._c;\n  return i(\"span\", e._b({ staticClass: \"material-design-icon home-icon\", attrs: { \"aria-hidden\": !e.title, \"aria-label\": e.title, role: \"img\" }, on: { click: function(t) {\n    return e.$emit(\"click\", t);\n  } } }, \"span\", e.$attrs, !1), [i(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { fill: e.fillColor, width: e.size, height: e.size, viewBox: \"0 0 24 24\" } }, [i(\"path\", { attrs: { d: \"M10,20V14H14V20H19V12H22L12,3L2,12H5V20H10Z\" } }, [e.title ? i(\"title\", [e._v(e._s(e.title))]) : e._e()])])]);\n}, wt = [], kt = /* @__PURE__ */ b(\n  ht,\n  yt,\n  wt,\n  !1,\n  null,\n  null,\n  null,\n  null\n);\nconst bt = kt.exports, Ct = {\n  name: \"PlusIcon\",\n  emits: [\"click\"],\n  props: {\n    title: {\n      type: String\n    },\n    fillColor: {\n      type: String,\n      default: \"currentColor\"\n    },\n    size: {\n      type: Number,\n      default: 24\n    }\n  }\n};\nvar Ft = function() {\n  var e = this, i = e._self._c;\n  return i(\"span\", e._b({ staticClass: \"material-design-icon plus-icon\", attrs: { \"aria-hidden\": !e.title, \"aria-label\": e.title, role: \"img\" }, on: { click: function(t) {\n    return e.$emit(\"click\", t);\n  } } }, \"span\", e.$attrs, !1), [i(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { fill: e.fillColor, width: e.size, height: e.size, viewBox: \"0 0 24 24\" } }, [i(\"path\", { attrs: { d: \"M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z\" } }, [e.title ? i(\"title\", [e._v(e._s(e.title))]) : e._e()])])]);\n}, St = [], $t = /* @__PURE__ */ b(\n  Ct,\n  Ft,\n  St,\n  !1,\n  null,\n  null,\n  null,\n  null\n);\nconst xt = $t.exports, Nt = /* @__PURE__ */ B({\n  __name: \"FilePickerBreadcrumbs\",\n  props: {\n    path: null,\n    showMenu: { type: Boolean }\n  },\n  emits: [\"update:path\", \"create-node\"],\n  setup(s, { emit: e }) {\n    const i = s, t = y(\"\"), n = y();\n    function l() {\n      var r, d, v, k;\n      const _ = t.value.trim(), h = (d = (r = n.value) == null ? void 0 : r.$el) == null ? void 0 : d.querySelector(\"input\");\n      let f = \"\";\n      return _.length === 0 ? f = w(\"Folder name cannot be empty.\") : _.includes(\"/\") ? f = w('\"/\" is not allowed inside a folder name.') : [\"..\", \".\"].includes(_) ? f = w('\"{name}\" is an invalid folder name.', { name: _ }) : (v = window.OC.config) != null && v.blacklist_files_regex && _.match((k = window.OC.config) == null ? void 0 : k.blacklist_files_regex) && (f = w('\"{name}\" is not an allowed folder name', { name: _ })), h && h.setCustomValidity(f), f === \"\";\n    }\n    const u = function() {\n      const r = t.value.trim();\n      l() && (e(\"create-node\", r), t.value = \"\");\n    }, o = m(\n      () => i.path.split(\"/\").filter((r) => r !== \"\").map((r, d, v) => ({\n        name: r,\n        path: \"/\" + v.slice(0, d + 1).join(\"/\")\n      }))\n    );\n    return { __sfc: !0, props: i, emit: e, newNodeName: t, nameInput: n, validateInput: l, onSubmit: u, pathElements: o, IconFolder: A, IconHome: bt, IconPlus: xt, NcActions: we, NcActionInput: ke, NcBreadcrumbs: be, NcBreadcrumb: Ce, t: w };\n  }\n});\nvar Lt = function() {\n  var e = this, i = e._self._c, t = e._self._setupProxy;\n  return i(t.NcBreadcrumbs, { staticClass: \"file-picker__breadcrumbs\", scopedSlots: e._u([{ key: \"default\", fn: function() {\n    return [i(t.NcBreadcrumb, { attrs: { name: t.t(\"Home\"), title: t.t(\"Home\") }, on: { click: function(n) {\n      return t.emit(\"update:path\", \"/\");\n    } }, scopedSlots: e._u([{ key: \"icon\", fn: function() {\n      return [i(t.IconHome, { attrs: { size: 20 } })];\n    }, proxy: !0 }]) }), e._l(t.pathElements, function(n) {\n      return i(t.NcBreadcrumb, { key: n.path, attrs: { name: n.name, title: n.path }, on: { click: function(l) {\n        return t.emit(\"update:path\", n.path);\n      } } });\n    })];\n  }, proxy: !0 }, e.showMenu ? { key: \"actions\", fn: function() {\n    return [i(t.NcActions, { attrs: { \"aria-label\": t.t(\"Create directory\"), \"force-menu\": !0, \"force-name\": !0, \"menu-name\": t.t(\"New\"), type: \"secondary\" }, on: { close: function(n) {\n      t.newNodeName = \"\";\n    } }, scopedSlots: e._u([{ key: \"icon\", fn: function() {\n      return [i(t.IconPlus, { attrs: { size: 20 } })];\n    }, proxy: !0 }], null, !1, 2971667417) }, [i(t.NcActionInput, { ref: \"nameInput\", attrs: { value: t.newNodeName, label: t.t(\"New folder\"), placeholder: t.t(\"New folder name\") }, on: { \"update:value\": function(n) {\n      t.newNodeName = n;\n    }, submit: t.onSubmit, input: t.validateInput }, scopedSlots: e._u([{ key: \"icon\", fn: function() {\n      return [i(t.IconFolder, { attrs: { size: 20 } })];\n    }, proxy: !0 }], null, !1, 1614167509) })], 1)];\n  }, proxy: !0 } : null], null, !0) });\n}, Pt = [], zt = /* @__PURE__ */ b(\n  Nt,\n  Lt,\n  Pt,\n  !1,\n  null,\n  \"3bc9efa5\",\n  null,\n  null\n);\nconst Bt = zt.exports, It = {\n  name: \"ClockIcon\",\n  emits: [\"click\"],\n  props: {\n    title: {\n      type: String\n    },\n    fillColor: {\n      type: String,\n      default: \"currentColor\"\n    },\n    size: {\n      type: Number,\n      default: 24\n    }\n  }\n};\nvar Vt = function() {\n  var e = this, i = e._self._c;\n  return i(\"span\", e._b({ staticClass: \"material-design-icon clock-icon\", attrs: { \"aria-hidden\": !e.title, \"aria-label\": e.title, role: \"img\" }, on: { click: function(t) {\n    return e.$emit(\"click\", t);\n  } } }, \"span\", e.$attrs, !1), [i(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { fill: e.fillColor, width: e.size, height: e.size, viewBox: \"0 0 24 24\" } }, [i(\"path\", { attrs: { d: \"M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M16.2,16.2L11,13V7H12.5V12.2L17,14.9L16.2,16.2Z\" } }, [e.title ? i(\"title\", [e._v(e._s(e.title))]) : e._e()])])]);\n}, Rt = [], Mt = /* @__PURE__ */ b(\n  It,\n  Vt,\n  Rt,\n  !1,\n  null,\n  null,\n  null,\n  null\n);\nconst Dt = Mt.exports, Ht = {\n  name: \"CloseIcon\",\n  emits: [\"click\"],\n  props: {\n    title: {\n      type: String\n    },\n    fillColor: {\n      type: String,\n      default: \"currentColor\"\n    },\n    size: {\n      type: Number,\n      default: 24\n    }\n  }\n};\nvar At = function() {\n  var e = this, i = e._self._c;\n  return i(\"span\", e._b({ staticClass: \"material-design-icon close-icon\", attrs: { \"aria-hidden\": !e.title, \"aria-label\": e.title, role: \"img\" }, on: { click: function(t) {\n    return e.$emit(\"click\", t);\n  } } }, \"span\", e.$attrs, !1), [i(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { fill: e.fillColor, width: e.size, height: e.size, viewBox: \"0 0 24 24\" } }, [i(\"path\", { attrs: { d: \"M19,6.41L17.59,5L12,10.59L6.41,5L5,6.41L10.59,12L5,17.59L6.41,19L12,13.41L17.59,19L19,17.59L13.41,12L19,6.41Z\" } }, [e.title ? i(\"title\", [e._v(e._s(e.title))]) : e._e()])])]);\n}, Tt = [], Et = /* @__PURE__ */ b(\n  Ht,\n  At,\n  Tt,\n  !1,\n  null,\n  null,\n  null,\n  null\n);\nconst Ut = Et.exports, Zt = {\n  name: \"MagnifyIcon\",\n  emits: [\"click\"],\n  props: {\n    title: {\n      type: String\n    },\n    fillColor: {\n      type: String,\n      default: \"currentColor\"\n    },\n    size: {\n      type: Number,\n      default: 24\n    }\n  }\n};\nvar Ot = function() {\n  var e = this, i = e._self._c;\n  return i(\"span\", e._b({ staticClass: \"material-design-icon magnify-icon\", attrs: { \"aria-hidden\": !e.title, \"aria-label\": e.title, role: \"img\" }, on: { click: function(t) {\n    return e.$emit(\"click\", t);\n  } } }, \"span\", e.$attrs, !1), [i(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { fill: e.fillColor, width: e.size, height: e.size, viewBox: \"0 0 24 24\" } }, [i(\"path\", { attrs: { d: \"M9.5,3A6.5,6.5 0 0,1 16,9.5C16,11.11 15.41,12.59 14.44,13.73L14.71,14H15.5L20.5,19L19,20.5L14,15.5V14.71L13.73,14.44C12.59,15.41 11.11,16 9.5,16A6.5,6.5 0 0,1 3,9.5A6.5,6.5 0 0,1 9.5,3M9.5,5C7,5 5,7 5,9.5C5,12 7,14 9.5,14C12,14 14,12 14,9.5C14,7 12,5 9.5,5Z\" } }, [e.title ? i(\"title\", [e._v(e._s(e.title))]) : e._e()])])]);\n}, jt = [], Gt = /* @__PURE__ */ b(\n  Zt,\n  Ot,\n  jt,\n  !1,\n  null,\n  null,\n  null,\n  null\n);\nconst Wt = Gt.exports, qt = {\n  name: \"StarIcon\",\n  emits: [\"click\"],\n  props: {\n    title: {\n      type: String\n    },\n    fillColor: {\n      type: String,\n      default: \"currentColor\"\n    },\n    size: {\n      type: Number,\n      default: 24\n    }\n  }\n};\nvar Kt = function() {\n  var e = this, i = e._self._c;\n  return i(\"span\", e._b({ staticClass: \"material-design-icon star-icon\", attrs: { \"aria-hidden\": !e.title, \"aria-label\": e.title, role: \"img\" }, on: { click: function(t) {\n    return e.$emit(\"click\", t);\n  } } }, \"span\", e.$attrs, !1), [i(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { fill: e.fillColor, width: e.size, height: e.size, viewBox: \"0 0 24 24\" } }, [i(\"path\", { attrs: { d: \"M12,17.27L18.18,21L16.54,13.97L22,9.24L14.81,8.62L12,2L9.19,8.62L2,9.24L7.45,13.97L5.82,21L12,17.27Z\" } }, [e.title ? i(\"title\", [e._v(e._s(e.title))]) : e._e()])])]);\n}, Xt = [], Jt = /* @__PURE__ */ b(\n  qt,\n  Kt,\n  Xt,\n  !1,\n  null,\n  null,\n  null,\n  null\n);\nconst Qt = Jt.exports, Yt = /* @__PURE__ */ B({\n  __name: \"FilePickerNavigation\",\n  props: {\n    currentView: null,\n    filterString: null,\n    isCollapsed: { type: Boolean }\n  },\n  emits: [\"update:currentView\", \"update:filterString\"],\n  setup(s, { emit: e }) {\n    const i = s, t = [{\n      id: \"files\",\n      label: w(\"All files\"),\n      icon: A\n    }, {\n      id: \"recent\",\n      label: w(\"Recent\"),\n      icon: Dt\n    }, {\n      id: \"favorites\",\n      label: w(\"Favorites\"),\n      icon: Qt\n    }], n = m(() => t.filter((u) => u.id === i.currentView)[0]);\n    return { __sfc: !0, allViews: t, props: i, emit: e, currentViewObject: n, updateFilterValue: (u) => e(\"update:filterString\", u), IconClose: Ut, IconMagnify: Wt, NcButton: le, NcSelect: Fe, NcTextField: Se, t: w, Fragment: Le };\n  }\n});\nvar ei = function() {\n  var e = this, i = e._self._c, t = e._self._setupProxy;\n  return i(t.Fragment, [i(t.NcTextField, { staticClass: \"file-picker__filter-input\", attrs: { value: e.filterString, label: t.t(\"Filter file list\"), \"show-trailing-button\": !!e.filterString }, on: { \"update:value\": t.updateFilterValue, \"trailing-button-click\": function(n) {\n    return t.updateFilterValue(\"\");\n  } }, scopedSlots: e._u([{ key: \"trailing-button-icon\", fn: function() {\n    return [i(t.IconClose, { attrs: { size: 16 } })];\n  }, proxy: !0 }]) }, [i(t.IconMagnify, { attrs: { size: 16 } })], 1), e.isCollapsed ? i(t.NcSelect, { attrs: { \"aria-label\": t.t(\"Current view selector\"), clearable: !1, searchable: !1, options: t.allViews, value: t.currentViewObject }, on: { input: (n) => t.emit(\"update:currentView\", n.id) } }) : i(\"ul\", { staticClass: \"file-picker__side\", attrs: { role: \"tablist\", \"aria-label\": t.t(\"Filepicker sections\") } }, e._l(t.allViews, function(n) {\n    return i(\"li\", { key: n.id }, [i(t.NcButton, { attrs: { \"aria-selected\": e.currentView === n.id, type: e.currentView === n.id ? \"primary\" : \"tertiary\", wide: !0, role: \"tab\" }, on: { click: function(l) {\n      return e.$emit(\"update:currentView\", n.id);\n    } }, scopedSlots: e._u([{ key: \"icon\", fn: function() {\n      return [i(n.icon, { tag: \"component\", attrs: { size: 20 } })];\n    }, proxy: !0 }], null, !0) }, [e._v(\" \" + e._s(n.label) + \" \")])], 1);\n  }), 0)], 1);\n}, ti = [], ii = /* @__PURE__ */ b(\n  Yt,\n  ei,\n  ti,\n  !1,\n  null,\n  \"fcfd0f23\",\n  null,\n  null\n);\nconst ni = ii.exports;\n/**\n * @copyright Copyright (c) 2023 Ferdinand Thiessen <opensource@fthiessen.de>\n *\n * @author Ferdinand Thiessen <opensource@fthiessen.de>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nconst li = function(s, e) {\n  const i = pe(), t = y([]), n = y(!0);\n  async function l(o, r = M) {\n    const d = await i.stat(\"\".concat(r).concat(o), {\n      details: !0\n    });\n    return R(d.data);\n  }\n  async function u() {\n    if (n.value = !0, s.value === \"favorites\")\n      t.value = await ve(i, e.value);\n    else if (s.value === \"recent\") {\n      const o = Math.round(Date.now() / 1e3) - 1209600, { data: r } = await i.search(\"/\", {\n        details: !0,\n        data: me(o)\n      });\n      t.value = r.results.map((d) => R(d));\n    } else {\n      const o = await i.getDirectoryContents(\"\".concat(M).concat(e.value), {\n        details: !0,\n        data: ge()\n      });\n      t.value = o.data.map((r) => R(r));\n    }\n    n.value = !1;\n  }\n  return ie([s, e], () => u()), V(() => u()), {\n    isLoading: n,\n    files: t,\n    loadFiles: u,\n    getFile: l,\n    client: i\n  };\n};\n/**\n * @copyright Copyright (c) 2023 Ferdinand Thiessen <opensource@fthiessen.de>\n *\n * @author Ferdinand Thiessen <opensource@fthiessen.de>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nconst si = function(s) {\n  const e = m(() => s.value.map((t) => t.split(\"/\")));\n  return {\n    isSupportedMimeType: (t) => {\n      const n = t.split(\"/\");\n      return e.value.some(\n        ([l, u]) => (\n          // check mime type matches or is wildcard\n          (n[0] === l || l === \"*\") && (n[1] === u || u === \"*\")\n        )\n      );\n    }\n  };\n}, ri = {\n  name: \"FilePicker\"\n}, ai = /* @__PURE__ */ B({\n  ...ri,\n  props: {\n    buttons: null,\n    name: null,\n    allowPickDirectory: { type: Boolean, default: !1 },\n    container: { default: \"body\" },\n    filterFn: { default: void 0 },\n    mimetypeFilter: { default: () => [] },\n    multiselect: { type: Boolean, default: !0 },\n    path: { default: \"/\" }\n  },\n  emits: [\"close\"],\n  setup(s, { emit: e }) {\n    const i = s, t = m(() => ({\n      container: i.container,\n      name: i.name,\n      buttons: n.value,\n      size: \"large\",\n      contentClasses: [\"file-picker__content\"],\n      dialogClasses: [\"file-picker\"],\n      navigationClasses: [\"file-picker__navigation\"]\n    })), n = m(() => (typeof i.buttons == \"function\" ? i.buttons(o.value, v.value, l.value) : i.buttons).map((c) => ({\n      ...c,\n      callback: async () => {\n        const C = o.value.length === 0 && i.allowPickDirectory ? [await S(v.value)] : o.value;\n        c.callback(C), e(\"close\", o.value);\n      }\n    }))), l = y(\"files\"), u = m(() => l.value === \"favorites\" ? w(\"Favorites\") : l.value === \"recent\" ? w(\"Recent\") : \"\"), o = y([]), r = y((window == null ? void 0 : window.sessionStorage.getItem(\"NC.FilePicker.LastPath\")) || \"/\"), d = y(), v = m({\n      // Only use the path for the files view as favorites and recent only works on the root\n      get: () => l.value === \"files\" ? d.value || i.path || r.value : \"/\",\n      /**\n       * Navigate to the new path and save it to the session storage\n       *\n       * @param path The new path\n       */\n      set: (a) => {\n        i.path === void 0 && window.sessionStorage.setItem(\"NC.FilePicker.LastPath\", a), d.value = a, o.value = [];\n      }\n    }), k = y(\"\"), { isSupportedMimeType: _ } = si(_e(i, \"mimetypeFilter\")), { files: h, isLoading: f, loadFiles: F, getFile: S, client: L } = li(l, v);\n    V(() => F());\n    const { showHiddenFiles: $ } = H(), g = m(() => {\n      let a = h.value;\n      return $.value || (a = a.filter((c) => !c.basename.startsWith(\".\"))), i.mimetypeFilter.length > 0 && (a = a.filter((c) => c.type === \"folder\" || c.mime && _(c.mime))), k.value && (a = a.filter((c) => c.basename.toLowerCase().includes(k.value.toLowerCase()))), i.filterFn && (a = a.filter((c) => i.filterFn(c))), a;\n    }), x = m(() => l.value === \"files\" ? w(\"Upload some content or sync with your devices!\") : l.value === \"recent\" ? w(\"Files and folders you recently modified will show up here.\") : w(\"Files and folders you mark as favorite will show up here.\"));\n    return { __sfc: !0, props: i, emit: e, dialogProps: t, dialogButtons: n, currentView: l, viewHeadline: u, selectedFiles: o, savedPath: r, navigatedPath: d, currentPath: v, filterString: k, isSupportedMimeType: _, files: h, isLoading: f, loadFiles: F, getFile: S, client: L, showHiddenFiles: $, filteredFiles: g, noFilesDescription: x, onCreateFolder: async (a) => {\n      try {\n        await L.createDirectory(se(M, v.value, a)), await F(), Pe(\"files:node:created\", h.value.filter((c) => c.basename === a)[0]);\n      } catch (c) {\n        console.warn(\"Could not create new folder\", { name: a, error: c }), Ne(w(\"Could not create the new folder\"));\n      }\n    }, IconFile: oe, FileList: gt, FilePickerBreadcrumbs: Bt, FilePickerNavigation: ni, NcDialog: $e, NcEmptyContent: xe, t: w };\n  }\n});\nvar oi = function() {\n  var e = this, i = e._self._c, t = e._self._setupProxy;\n  return i(t.NcDialog, e._b({ on: { close: function(n) {\n    return t.emit(\"close\");\n  } }, scopedSlots: e._u([{ key: \"navigation\", fn: function({ isCollapsed: n }) {\n    return [i(t.FilePickerNavigation, { attrs: { \"is-collapsed\": n, \"current-view\": t.currentView, \"filter-string\": t.filterString }, on: { \"update:currentView\": function(l) {\n      t.currentView = l;\n    }, \"update:current-view\": function(l) {\n      t.currentView = l;\n    }, \"update:filterString\": function(l) {\n      t.filterString = l;\n    }, \"update:filter-string\": function(l) {\n      t.filterString = l;\n    } } })];\n  } }]) }, \"NcDialog\", t.dialogProps, !1), [i(\"div\", { staticClass: \"file-picker__main\" }, [t.currentView === \"files\" ? i(t.FilePickerBreadcrumbs, { attrs: { path: t.currentPath, \"show-menu\": e.allowPickDirectory }, on: { \"update:path\": function(n) {\n    t.currentPath = n;\n  }, \"create-node\": t.onCreateFolder } }) : i(\"div\", { staticClass: \"file-picker__view\" }, [i(\"h3\", [e._v(e._s(t.viewHeadline))])]), t.isLoading || t.filteredFiles.length > 0 ? i(t.FileList, { attrs: { \"allow-pick-directory\": e.allowPickDirectory, \"current-view\": t.currentView, files: t.filteredFiles, multiselect: e.multiselect, loading: t.isLoading, path: t.currentPath, \"selected-files\": t.selectedFiles, name: t.viewHeadline }, on: { \"update:path\": [function(n) {\n    t.currentPath = n;\n  }, function(n) {\n    t.currentView = \"files\";\n  }], \"update:selectedFiles\": function(n) {\n    t.selectedFiles = n;\n  }, \"update:selected-files\": function(n) {\n    t.selectedFiles = n;\n  } } }) : t.filterString ? i(t.NcEmptyContent, { attrs: { name: t.t(\"No matching files\"), description: t.t(\"No files matching your filter were found.\") }, scopedSlots: e._u([{ key: \"icon\", fn: function() {\n    return [i(t.IconFile)];\n  }, proxy: !0 }]) }) : i(t.NcEmptyContent, { attrs: { name: t.t(\"No files in here\"), description: t.noFilesDescription }, scopedSlots: e._u([{ key: \"icon\", fn: function() {\n    return [i(t.IconFile)];\n  }, proxy: !0 }]) })], 1)]);\n}, ci = [], ui = /* @__PURE__ */ b(\n  ai,\n  oi,\n  ci,\n  !1,\n  null,\n  \"11d85233\",\n  null,\n  null\n);\nconst Ci = ui.exports;\nexport {\n  Ci as default\n};\n","import { getCurrentUser as A, onRequestTokenUpdate as ue, getRequestToken as de } from \"@nextcloud/auth\";\nimport { getLoggerBuilder as q } from \"@nextcloud/logger\";\nimport { getCanonicalLocale as ae } from \"@nextcloud/l10n\";\nimport { join as le, basename as fe, extname as ce, dirname as I } from \"path\";\nimport { encodePath as he } from \"@nextcloud/paths\";\nimport { generateRemoteUrl as pe } from \"@nextcloud/router\";\nimport { createClient as ge, getPatcher as we } from \"webdav\";\n/**\n * @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>\n *\n * @author Christoph Wurst <christoph@winzerhof-wurst.at>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nconst me = (e) => e === null ? q().setApp(\"files\").build() : q().setApp(\"files\").setUid(e.uid).build(), m = me(A());\n/**\n * @copyright Copyright (c) 2021 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nclass Ne {\n  _entries = [];\n  registerEntry(t) {\n    this.validateEntry(t), this._entries.push(t);\n  }\n  unregisterEntry(t) {\n    const r = typeof t == \"string\" ? this.getEntryIndex(t) : this.getEntryIndex(t.id);\n    if (r === -1) {\n      m.warn(\"Entry not found, nothing removed\", { entry: t, entries: this.getEntries() });\n      return;\n    }\n    this._entries.splice(r, 1);\n  }\n  /**\n   * Get the list of registered entries\n   *\n   * @param {Folder} context the creation context. Usually the current folder\n   */\n  getEntries(t) {\n    return t ? this._entries.filter((r) => typeof r.enabled == \"function\" ? r.enabled(t) : !0) : this._entries;\n  }\n  getEntryIndex(t) {\n    return this._entries.findIndex((r) => r.id === t);\n  }\n  validateEntry(t) {\n    if (!t.id || !t.displayName || !(t.iconSvgInline || t.iconClass) || !t.handler)\n      throw new Error(\"Invalid entry\");\n    if (typeof t.id != \"string\" || typeof t.displayName != \"string\")\n      throw new Error(\"Invalid id or displayName property\");\n    if (t.iconClass && typeof t.iconClass != \"string\" || t.iconSvgInline && typeof t.iconSvgInline != \"string\")\n      throw new Error(\"Invalid icon provided\");\n    if (t.enabled !== void 0 && typeof t.enabled != \"function\")\n      throw new Error(\"Invalid enabled property\");\n    if (typeof t.handler != \"function\")\n      throw new Error(\"Invalid handler property\");\n    if (\"order\" in t && typeof t.order != \"number\")\n      throw new Error(\"Invalid order property\");\n    if (this.getEntryIndex(t.id) !== -1)\n      throw new Error(\"Duplicate entry\");\n  }\n}\nconst F = function() {\n  return typeof window._nc_newfilemenu > \"u\" && (window._nc_newfilemenu = new Ne(), m.debug(\"NewFileMenu initialized\")), window._nc_newfilemenu;\n};\n/**\n * @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>\n *\n * @author Christoph Wurst <christoph@winzerhof-wurst.at>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nconst C = [\"B\", \"KB\", \"MB\", \"GB\", \"TB\", \"PB\"], P = [\"B\", \"KiB\", \"MiB\", \"GiB\", \"TiB\", \"PiB\"];\nfunction Yt(e, t = !1, r = !1, s = !1) {\n  r = r && !s, typeof e == \"string\" && (e = Number(e));\n  let n = e > 0 ? Math.floor(Math.log(e) / Math.log(s ? 1e3 : 1024)) : 0;\n  n = Math.min((r ? P.length : C.length) - 1, n);\n  const i = r ? P[n] : C[n];\n  let d = (e / Math.pow(s ? 1e3 : 1024, n)).toFixed(1);\n  return t === !0 && n === 0 ? (d !== \"0.0\" ? \"< 1 \" : \"0 \") + (r ? P[1] : C[1]) : (n < 2 ? d = parseFloat(d).toFixed(0) : d = parseFloat(d).toLocaleString(ae()), d + \" \" + i);\n}\nfunction Jt(e, t = !1) {\n  try {\n    e = `${e}`.toLocaleLowerCase().replaceAll(/\\s+/g, \"\").replaceAll(\",\", \".\");\n  } catch {\n    return null;\n  }\n  const r = e.match(/^([0-9]*(\\.[0-9]*)?)([kmgtp]?)(i?)b?$/);\n  if (r === null || r[1] === \".\" || r[1] === \"\")\n    return null;\n  const s = {\n    \"\": 0,\n    k: 1,\n    m: 2,\n    g: 3,\n    t: 4,\n    p: 5,\n    e: 6\n  }, n = `${r[1]}`, i = r[4] === \"i\" || t ? 1024 : 1e3;\n  return Math.round(Number.parseFloat(n) * i ** s[r[3]]);\n}\n/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nvar Z = /* @__PURE__ */ ((e) => (e.DEFAULT = \"default\", e.HIDDEN = \"hidden\", e))(Z || {});\nclass Qt {\n  _action;\n  constructor(t) {\n    this.validateAction(t), this._action = t;\n  }\n  get id() {\n    return this._action.id;\n  }\n  get displayName() {\n    return this._action.displayName;\n  }\n  get title() {\n    return this._action.title;\n  }\n  get iconSvgInline() {\n    return this._action.iconSvgInline;\n  }\n  get enabled() {\n    return this._action.enabled;\n  }\n  get exec() {\n    return this._action.exec;\n  }\n  get execBatch() {\n    return this._action.execBatch;\n  }\n  get order() {\n    return this._action.order;\n  }\n  get parent() {\n    return this._action.parent;\n  }\n  get default() {\n    return this._action.default;\n  }\n  get inline() {\n    return this._action.inline;\n  }\n  get renderInline() {\n    return this._action.renderInline;\n  }\n  validateAction(t) {\n    if (!t.id || typeof t.id != \"string\")\n      throw new Error(\"Invalid id\");\n    if (!t.displayName || typeof t.displayName != \"function\")\n      throw new Error(\"Invalid displayName function\");\n    if (\"title\" in t && typeof t.title != \"function\")\n      throw new Error(\"Invalid title function\");\n    if (!t.iconSvgInline || typeof t.iconSvgInline != \"function\")\n      throw new Error(\"Invalid iconSvgInline function\");\n    if (!t.exec || typeof t.exec != \"function\")\n      throw new Error(\"Invalid exec function\");\n    if (\"enabled\" in t && typeof t.enabled != \"function\")\n      throw new Error(\"Invalid enabled function\");\n    if (\"execBatch\" in t && typeof t.execBatch != \"function\")\n      throw new Error(\"Invalid execBatch function\");\n    if (\"order\" in t && typeof t.order != \"number\")\n      throw new Error(\"Invalid order\");\n    if (\"parent\" in t && typeof t.parent != \"string\")\n      throw new Error(\"Invalid parent\");\n    if (t.default && !Object.values(Z).includes(t.default))\n      throw new Error(\"Invalid default\");\n    if (\"inline\" in t && typeof t.inline != \"function\")\n      throw new Error(\"Invalid inline function\");\n    if (\"renderInline\" in t && typeof t.renderInline != \"function\")\n      throw new Error(\"Invalid renderInline function\");\n  }\n}\nconst Dt = function(e) {\n  if (typeof window._nc_fileactions > \"u\" && (window._nc_fileactions = [], m.debug(\"FileActions initialized\")), window._nc_fileactions.find((t) => t.id === e.id)) {\n    m.error(`FileAction ${e.id} already registered`, { action: e });\n    return;\n  }\n  window._nc_fileactions.push(e);\n}, er = function() {\n  return typeof window._nc_fileactions > \"u\" && (window._nc_fileactions = [], m.debug(\"FileActions initialized\")), window._nc_fileactions;\n};\n/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nclass tr {\n  _header;\n  constructor(t) {\n    this.validateHeader(t), this._header = t;\n  }\n  get id() {\n    return this._header.id;\n  }\n  get order() {\n    return this._header.order;\n  }\n  get enabled() {\n    return this._header.enabled;\n  }\n  get render() {\n    return this._header.render;\n  }\n  get updated() {\n    return this._header.updated;\n  }\n  validateHeader(t) {\n    if (!t.id || !t.render || !t.updated)\n      throw new Error(\"Invalid header: id, render and updated are required\");\n    if (typeof t.id != \"string\")\n      throw new Error(\"Invalid id property\");\n    if (t.enabled !== void 0 && typeof t.enabled != \"function\")\n      throw new Error(\"Invalid enabled property\");\n    if (t.render && typeof t.render != \"function\")\n      throw new Error(\"Invalid render property\");\n    if (t.updated && typeof t.updated != \"function\")\n      throw new Error(\"Invalid updated property\");\n  }\n}\nconst rr = function(e) {\n  if (typeof window._nc_filelistheader > \"u\" && (window._nc_filelistheader = [], m.debug(\"FileListHeaders initialized\")), window._nc_filelistheader.find((t) => t.id === e.id)) {\n    m.error(`Header ${e.id} already registered`, { header: e });\n    return;\n  }\n  window._nc_filelistheader.push(e);\n}, nr = function() {\n  return typeof window._nc_filelistheader > \"u\" && (window._nc_filelistheader = [], m.debug(\"FileListHeaders initialized\")), window._nc_filelistheader;\n};\n/**\n * @copyright Copyright (c) 2022 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nvar N = /* @__PURE__ */ ((e) => (e[e.NONE = 0] = \"NONE\", e[e.CREATE = 4] = \"CREATE\", e[e.READ = 1] = \"READ\", e[e.UPDATE = 2] = \"UPDATE\", e[e.DELETE = 8] = \"DELETE\", e[e.SHARE = 16] = \"SHARE\", e[e.ALL = 31] = \"ALL\", e))(N || {});\n/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Ferdinand Thiessen <opensource@fthiessen.de>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nconst j = [\n  \"d:getcontentlength\",\n  \"d:getcontenttype\",\n  \"d:getetag\",\n  \"d:getlastmodified\",\n  \"d:quota-available-bytes\",\n  \"d:resourcetype\",\n  \"nc:has-preview\",\n  \"nc:is-encrypted\",\n  \"nc:mount-type\",\n  \"nc:share-attributes\",\n  \"oc:comments-unread\",\n  \"oc:favorite\",\n  \"oc:fileid\",\n  \"oc:owner-display-name\",\n  \"oc:owner-id\",\n  \"oc:permissions\",\n  \"oc:share-types\",\n  \"oc:size\",\n  \"ocs:share-permissions\"\n], Y = {\n  d: \"DAV:\",\n  nc: \"http://nextcloud.org/ns\",\n  oc: \"http://owncloud.org/ns\",\n  ocs: \"http://open-collaboration-services.org/ns\"\n}, ir = function(e, t = { nc: \"http://nextcloud.org/ns\" }) {\n  typeof window._nc_dav_properties > \"u\" && (window._nc_dav_properties = [...j], window._nc_dav_namespaces = { ...Y });\n  const r = { ...window._nc_dav_namespaces, ...t };\n  if (window._nc_dav_properties.find((n) => n === e))\n    return m.error(`${e} already registered`, { prop: e }), !1;\n  if (e.startsWith(\"<\") || e.split(\":\").length !== 2)\n    return m.error(`${e} is not valid. See example: 'oc:fileid'`, { prop: e }), !1;\n  const s = e.split(\":\")[0];\n  return r[s] ? (window._nc_dav_properties.push(e), window._nc_dav_namespaces = r, !0) : (m.error(`${e} namespace unknown`, { prop: e, namespaces: r }), !1);\n}, V = function() {\n  return typeof window._nc_dav_properties > \"u\" && (window._nc_dav_properties = [...j]), window._nc_dav_properties.map((e) => `<${e} />`).join(\" \");\n}, L = function() {\n  return typeof window._nc_dav_namespaces > \"u\" && (window._nc_dav_namespaces = { ...Y }), Object.keys(window._nc_dav_namespaces).map((e) => `xmlns:${e}=\"${window._nc_dav_namespaces?.[e]}\"`).join(\" \");\n}, sr = function() {\n  return `<?xml version=\"1.0\"?>\n\t\t<d:propfind ${L()}>\n\t\t\t<d:prop>\n\t\t\t\t${V()}\n\t\t\t</d:prop>\n\t\t</d:propfind>`;\n}, Ee = function() {\n  return `<?xml version=\"1.0\"?>\n\t\t<oc:filter-files ${L()}>\n\t\t\t<d:prop>\n\t\t\t\t${V()}\n\t\t\t</d:prop>\n\t\t\t<oc:filter-rules>\n\t\t\t\t<oc:favorite>1</oc:favorite>\n\t\t\t</oc:filter-rules>\n\t\t</oc:filter-files>`;\n}, or = function(e) {\n  return `<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<d:searchrequest ${L()}\n\txmlns:ns=\"https://github.com/icewind1991/SearchDAV/ns\">\n\t<d:basicsearch>\n\t\t<d:select>\n\t\t\t<d:prop>\n\t\t\t\t${V()}\n\t\t\t</d:prop>\n\t\t</d:select>\n\t\t<d:from>\n\t\t\t<d:scope>\n\t\t\t\t<d:href>/files/${A()?.uid}/</d:href>\n\t\t\t\t<d:depth>infinity</d:depth>\n\t\t\t</d:scope>\n\t\t</d:from>\n\t\t<d:where>\n\t\t\t<d:and>\n\t\t\t\t<d:or>\n\t\t\t\t\t<d:not>\n\t\t\t\t\t\t<d:eq>\n\t\t\t\t\t\t\t<d:prop>\n\t\t\t\t\t\t\t\t<d:getcontenttype/>\n\t\t\t\t\t\t\t</d:prop>\n\t\t\t\t\t\t\t<d:literal>httpd/unix-directory</d:literal>\n\t\t\t\t\t\t</d:eq>\n\t\t\t\t\t</d:not>\n\t\t\t\t\t<d:eq>\n\t\t\t\t\t\t<d:prop>\n\t\t\t\t\t\t\t<oc:size/>\n\t\t\t\t\t\t</d:prop>\n\t\t\t\t\t\t<d:literal>0</d:literal>\n\t\t\t\t\t</d:eq>\n\t\t\t\t</d:or>\n\t\t\t\t<d:gt>\n\t\t\t\t\t<d:prop>\n\t\t\t\t\t\t<d:getlastmodified/>\n\t\t\t\t\t</d:prop>\n\t\t\t\t\t<d:literal>${e}</d:literal>\n\t\t\t\t</d:gt>\n\t\t\t</d:and>\n\t\t</d:where>\n\t\t<d:orderby>\n\t\t\t<d:order>\n\t\t\t\t<d:prop>\n\t\t\t\t\t<d:getlastmodified/>\n\t\t\t\t</d:prop>\n\t\t\t\t<d:descending/>\n\t\t\t</d:order>\n\t\t</d:orderby>\n\t\t<d:limit>\n\t\t\t<d:nresults>100</d:nresults>\n\t\t\t<ns:firstresult>0</ns:firstresult>\n\t\t</d:limit>\n\t</d:basicsearch>\n</d:searchrequest>`;\n};\n/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Ferdinand Thiessen <opensource@fthiessen.de>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nconst be = function(e = \"\") {\n  let t = N.NONE;\n  return e && ((e.includes(\"C\") || e.includes(\"K\")) && (t |= N.CREATE), e.includes(\"G\") && (t |= N.READ), (e.includes(\"W\") || e.includes(\"N\") || e.includes(\"V\")) && (t |= N.UPDATE), e.includes(\"D\") && (t |= N.DELETE), e.includes(\"R\") && (t |= N.SHARE)), t;\n};\n/**\n * @copyright Copyright (c) 2022 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nvar R = /* @__PURE__ */ ((e) => (e.Folder = \"folder\", e.File = \"file\", e))(R || {});\n/**\n * @copyright Copyright (c) 2022 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nconst J = function(e, t) {\n  return e.match(t) !== null;\n}, X = (e, t) => {\n  if (e.id && typeof e.id != \"number\")\n    throw new Error(\"Invalid id type of value\");\n  if (!e.source)\n    throw new Error(\"Missing mandatory source\");\n  try {\n    new URL(e.source);\n  } catch {\n    throw new Error(\"Invalid source format, source must be a valid URL\");\n  }\n  if (!e.source.startsWith(\"http\"))\n    throw new Error(\"Invalid source format, only http(s) is supported\");\n  if (e.mtime && !(e.mtime instanceof Date))\n    throw new Error(\"Invalid mtime type\");\n  if (e.crtime && !(e.crtime instanceof Date))\n    throw new Error(\"Invalid crtime type\");\n  if (!e.mime || typeof e.mime != \"string\" || !e.mime.match(/^[-\\w.]+\\/[-+\\w.]+$/gi))\n    throw new Error(\"Missing or invalid mandatory mime\");\n  if (\"size\" in e && typeof e.size != \"number\" && e.size !== void 0)\n    throw new Error(\"Invalid size type\");\n  if (\"permissions\" in e && e.permissions !== void 0 && !(typeof e.permissions == \"number\" && e.permissions >= N.NONE && e.permissions <= N.ALL))\n    throw new Error(\"Invalid permissions\");\n  if (e.owner && e.owner !== null && typeof e.owner != \"string\")\n    throw new Error(\"Invalid owner type\");\n  if (e.attributes && typeof e.attributes != \"object\")\n    throw new Error(\"Invalid attributes type\");\n  if (e.root && typeof e.root != \"string\")\n    throw new Error(\"Invalid root type\");\n  if (e.root && !e.root.startsWith(\"/\"))\n    throw new Error(\"Root must start with a leading slash\");\n  if (e.root && !e.source.includes(e.root))\n    throw new Error(\"Root must be part of the source\");\n  if (e.root && J(e.source, t)) {\n    const r = e.source.match(t)[0];\n    if (!e.source.includes(le(r, e.root)))\n      throw new Error(\"The root must be relative to the service. e.g /files/emma\");\n  }\n  if (e.status && !Object.values(Q).includes(e.status))\n    throw new Error(\"Status must be a valid NodeStatus\");\n};\n/**\n * @copyright Copyright (c) 2022 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nvar Q = /* @__PURE__ */ ((e) => (e.NEW = \"new\", e.FAILED = \"failed\", e.LOADING = \"loading\", e.LOCKED = \"locked\", e))(Q || {});\nclass D {\n  _data;\n  _attributes;\n  _knownDavService = /(remote|public)\\.php\\/(web)?dav/i;\n  constructor(t, r) {\n    X(t, r || this._knownDavService), this._data = t;\n    const s = {\n      // eslint-disable-next-line @typescript-eslint/no-explicit-any\n      set: (n, i, d) => (this.updateMtime(), Reflect.set(n, i, d)),\n      deleteProperty: (n, i) => (this.updateMtime(), Reflect.deleteProperty(n, i))\n      // eslint-disable-next-line @typescript-eslint/no-explicit-any\n    };\n    this._attributes = new Proxy(t.attributes || {}, s), delete this._data.attributes, r && (this._knownDavService = r);\n  }\n  /**\n   * Get the source url to this object\n   */\n  get source() {\n    return this._data.source.replace(/\\/$/i, \"\");\n  }\n  /**\n   * Get the encoded source url to this object for requests purposes\n   */\n  get encodedSource() {\n    const { origin: t } = new URL(this.source);\n    return t + he(this.source.slice(t.length));\n  }\n  /**\n   * Get this object name\n   */\n  get basename() {\n    return fe(this.source);\n  }\n  /**\n   * Get this object's extension\n   */\n  get extension() {\n    return ce(this.source);\n  }\n  /**\n   * Get the directory path leading to this object\n   * Will use the relative path to root if available\n   */\n  get dirname() {\n    if (this.root) {\n      const r = this.source.indexOf(this.root);\n      return I(this.source.slice(r + this.root.length) || \"/\");\n    }\n    const t = new URL(this.source);\n    return I(t.pathname);\n  }\n  /**\n   * Get the file mime\n   */\n  get mime() {\n    return this._data.mime;\n  }\n  /**\n   * Get the file modification time\n   */\n  get mtime() {\n    return this._data.mtime;\n  }\n  /**\n   * Get the file creation time\n   */\n  get crtime() {\n    return this._data.crtime;\n  }\n  /**\n   * Get the file size\n   */\n  get size() {\n    return this._data.size;\n  }\n  /**\n   * Get the file attribute\n   */\n  get attributes() {\n    return this._attributes;\n  }\n  /**\n   * Get the file permissions\n   */\n  get permissions() {\n    return this.owner === null && !this.isDavRessource ? N.READ : this._data.permissions !== void 0 ? this._data.permissions : N.NONE;\n  }\n  /**\n   * Get the file owner\n   */\n  get owner() {\n    return this.isDavRessource ? this._data.owner : null;\n  }\n  /**\n   * Is this a dav-related ressource ?\n   */\n  get isDavRessource() {\n    return J(this.source, this._knownDavService);\n  }\n  /**\n   * Get the dav root of this object\n   */\n  get root() {\n    return this._data.root ? this._data.root.replace(/^(.+)\\/$/, \"$1\") : this.isDavRessource && I(this.source).split(this._knownDavService).pop() || null;\n  }\n  /**\n   * Get the absolute path of this object relative to the root\n   */\n  get path() {\n    if (this.root) {\n      const t = this.source.indexOf(this.root);\n      return this.source.slice(t + this.root.length) || \"/\";\n    }\n    return (this.dirname + \"/\" + this.basename).replace(/\\/\\//g, \"/\");\n  }\n  /**\n   * Get the node id if defined.\n   * Will look for the fileid in attributes if undefined.\n   */\n  get fileid() {\n    return this._data?.id || this.attributes?.fileid;\n  }\n  /**\n   * Get the node status.\n   */\n  get status() {\n    return this._data?.status;\n  }\n  /**\n   * Set the node status.\n   */\n  set status(t) {\n    this._data.status = t;\n  }\n  /**\n   * Move the node to a new destination\n   *\n   * @param {string} destination the new source.\n   * e.g. https://cloud.domain.com/remote.php/dav/files/emma/Photos/picture.jpg\n   */\n  move(t) {\n    X({ ...this._data, source: t }, this._knownDavService), this._data.source = t, this.updateMtime();\n  }\n  /**\n   * Rename the node\n   * This aliases the move method for easier usage\n   *\n   * @param basename The new name of the node\n   */\n  rename(t) {\n    if (t.includes(\"/\"))\n      throw new Error(\"Invalid basename\");\n    this.move(I(this.source) + \"/\" + t);\n  }\n  /**\n   * Update the mtime if exists.\n   */\n  updateMtime() {\n    this._data.mtime && (this._data.mtime = /* @__PURE__ */ new Date());\n  }\n}\n/**\n * @copyright Copyright (c) 2022 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nclass ye extends D {\n  get type() {\n    return R.File;\n  }\n}\n/**\n * @copyright Copyright (c) 2022 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nclass _e extends D {\n  constructor(t) {\n    super({\n      ...t,\n      mime: \"httpd/unix-directory\"\n    });\n  }\n  get type() {\n    return R.Folder;\n  }\n  get extension() {\n    return null;\n  }\n  get mime() {\n    return \"httpd/unix-directory\";\n  }\n}\n/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Ferdinand Thiessen <opensource@fthiessen.de>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nconst ee = `/files/${A()?.uid}`, te = pe(\"dav\"), ur = function(e = te) {\n  const t = ge(e);\n  function r(n) {\n    t.setHeaders({\n      // Add this so the server knows it is an request from the browser\n      \"X-Requested-With\": \"XMLHttpRequest\",\n      // Inject user auth\n      requesttoken: n ?? \"\"\n    });\n  }\n  return ue(r), r(de()), we().patch(\"fetch\", (n, i) => {\n    const d = i.headers;\n    return d?.method && (i.method = d.method, delete d.method), fetch(n, i);\n  }), t;\n}, dr = async (e, t = \"/\", r = ee) => (await e.getDirectoryContents(`${r}${t}`, {\n  details: !0,\n  data: Ee(),\n  headers: {\n    // see davGetClient for patched webdav client\n    method: \"REPORT\"\n  },\n  includeSelf: !0\n})).data.filter((n) => n.filename !== t).map((n) => ve(n, r)), ve = function(e, t = ee, r = te) {\n  const s = e.props, n = be(s?.permissions), i = A()?.uid, d = {\n    id: s?.fileid || 0,\n    source: `${r}${e.filename}`,\n    mtime: new Date(Date.parse(e.lastmod)),\n    mime: e.mime,\n    size: s?.size || Number.parseInt(s.getcontentlength || \"0\"),\n    permissions: n,\n    owner: i,\n    root: t,\n    attributes: {\n      ...e,\n      ...s,\n      hasPreview: s?.[\"has-preview\"]\n    }\n  };\n  return delete d.attributes?.props, e.type === \"file\" ? new ye(d) : new _e(d);\n};\n/**\n * @copyright Copyright (c) 2022 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nclass Te {\n  _views = [];\n  _currentView = null;\n  register(t) {\n    if (this._views.find((r) => r.id === t.id))\n      throw new Error(`View id ${t.id} is already registered`);\n    this._views.push(t);\n  }\n  remove(t) {\n    const r = this._views.findIndex((s) => s.id === t);\n    r !== -1 && this._views.splice(r, 1);\n  }\n  get views() {\n    return this._views;\n  }\n  setActive(t) {\n    this._currentView = t;\n  }\n  get active() {\n    return this._currentView;\n  }\n}\nconst ar = function() {\n  return typeof window._nc_navigation > \"u\" && (window._nc_navigation = new Te(), m.debug(\"Navigation service initialized\")), window._nc_navigation;\n};\n/**\n * @copyright Copyright (c) 2022 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nclass Ie {\n  _column;\n  constructor(t) {\n    Ae(t), this._column = t;\n  }\n  get id() {\n    return this._column.id;\n  }\n  get title() {\n    return this._column.title;\n  }\n  get render() {\n    return this._column.render;\n  }\n  get sort() {\n    return this._column.sort;\n  }\n  get summary() {\n    return this._column.summary;\n  }\n}\nconst Ae = function(e) {\n  if (!e.id || typeof e.id != \"string\")\n    throw new Error(\"A column id is required\");\n  if (!e.title || typeof e.title != \"string\")\n    throw new Error(\"A column title is required\");\n  if (!e.render || typeof e.render != \"function\")\n    throw new Error(\"A render function is required\");\n  if (e.sort && typeof e.sort != \"function\")\n    throw new Error(\"Column sortFunction must be a function\");\n  if (e.summary && typeof e.summary != \"function\")\n    throw new Error(\"Column summary must be a function\");\n  return !0;\n};\nvar S = {}, O = {};\n(function(e) {\n  const t = \":A-Za-z_\\\\u00C0-\\\\u00D6\\\\u00D8-\\\\u00F6\\\\u00F8-\\\\u02FF\\\\u0370-\\\\u037D\\\\u037F-\\\\u1FFF\\\\u200C-\\\\u200D\\\\u2070-\\\\u218F\\\\u2C00-\\\\u2FEF\\\\u3001-\\\\uD7FF\\\\uF900-\\\\uFDCF\\\\uFDF0-\\\\uFFFD\", r = t + \"\\\\-.\\\\d\\\\u00B7\\\\u0300-\\\\u036F\\\\u203F-\\\\u2040\", s = \"[\" + t + \"][\" + r + \"]*\", n = new RegExp(\"^\" + s + \"$\"), i = function(u, o) {\n    const a = [];\n    let l = o.exec(u);\n    for (; l; ) {\n      const f = [];\n      f.startIndex = o.lastIndex - l[0].length;\n      const c = l.length;\n      for (let g = 0; g < c; g++)\n        f.push(l[g]);\n      a.push(f), l = o.exec(u);\n    }\n    return a;\n  }, d = function(u) {\n    const o = n.exec(u);\n    return !(o === null || typeof o > \"u\");\n  };\n  e.isExist = function(u) {\n    return typeof u < \"u\";\n  }, e.isEmptyObject = function(u) {\n    return Object.keys(u).length === 0;\n  }, e.merge = function(u, o, a) {\n    if (o) {\n      const l = Object.keys(o), f = l.length;\n      for (let c = 0; c < f; c++)\n        a === \"strict\" ? u[l[c]] = [o[l[c]]] : u[l[c]] = o[l[c]];\n    }\n  }, e.getValue = function(u) {\n    return e.isExist(u) ? u : \"\";\n  }, e.isName = d, e.getAllMatches = i, e.nameRegexp = s;\n})(O);\nconst M = O, Oe = {\n  allowBooleanAttributes: !1,\n  //A tag can have attributes without any value\n  unpairedTags: []\n};\nS.validate = function(e, t) {\n  t = Object.assign({}, Oe, t);\n  const r = [];\n  let s = !1, n = !1;\n  e[0] === \"\\uFEFF\" && (e = e.substr(1));\n  for (let i = 0; i < e.length; i++)\n    if (e[i] === \"<\" && e[i + 1] === \"?\") {\n      if (i += 2, i = G(e, i), i.err)\n        return i;\n    } else if (e[i] === \"<\") {\n      let d = i;\n      if (i++, e[i] === \"!\") {\n        i = z(e, i);\n        continue;\n      } else {\n        let u = !1;\n        e[i] === \"/\" && (u = !0, i++);\n        let o = \"\";\n        for (; i < e.length && e[i] !== \">\" && e[i] !== \" \" && e[i] !== \"\t\" && e[i] !== `\n` && e[i] !== \"\\r\"; i++)\n          o += e[i];\n        if (o = o.trim(), o[o.length - 1] === \"/\" && (o = o.substring(0, o.length - 1), i--), !Re(o)) {\n          let f;\n          return o.trim().length === 0 ? f = \"Invalid space after '<'.\" : f = \"Tag '\" + o + \"' is an invalid name.\", p(\"InvalidTag\", f, w(e, i));\n        }\n        const a = xe(e, i);\n        if (a === !1)\n          return p(\"InvalidAttr\", \"Attributes for '\" + o + \"' have open quote.\", w(e, i));\n        let l = a.value;\n        if (i = a.index, l[l.length - 1] === \"/\") {\n          const f = i - l.length;\n          l = l.substring(0, l.length - 1);\n          const c = H(l, t);\n          if (c === !0)\n            s = !0;\n          else\n            return p(c.err.code, c.err.msg, w(e, f + c.err.line));\n        } else if (u)\n          if (a.tagClosed) {\n            if (l.trim().length > 0)\n              return p(\"InvalidTag\", \"Closing tag '\" + o + \"' can't have attributes or invalid starting.\", w(e, d));\n            {\n              const f = r.pop();\n              if (o !== f.tagName) {\n                let c = w(e, f.tagStartPos);\n                return p(\n                  \"InvalidTag\",\n                  \"Expected closing tag '\" + f.tagName + \"' (opened in line \" + c.line + \", col \" + c.col + \") instead of closing tag '\" + o + \"'.\",\n                  w(e, d)\n                );\n              }\n              r.length == 0 && (n = !0);\n            }\n          } else\n            return p(\"InvalidTag\", \"Closing tag '\" + o + \"' doesn't have proper closing.\", w(e, i));\n        else {\n          const f = H(l, t);\n          if (f !== !0)\n            return p(f.err.code, f.err.msg, w(e, i - l.length + f.err.line));\n          if (n === !0)\n            return p(\"InvalidXml\", \"Multiple possible root nodes found.\", w(e, i));\n          t.unpairedTags.indexOf(o) !== -1 || r.push({ tagName: o, tagStartPos: d }), s = !0;\n        }\n        for (i++; i < e.length; i++)\n          if (e[i] === \"<\")\n            if (e[i + 1] === \"!\") {\n              i++, i = z(e, i);\n              continue;\n            } else if (e[i + 1] === \"?\") {\n              if (i = G(e, ++i), i.err)\n                return i;\n            } else\n              break;\n          else if (e[i] === \"&\") {\n            const f = Ve(e, i);\n            if (f == -1)\n              return p(\"InvalidChar\", \"char '&' is not expected.\", w(e, i));\n            i = f;\n          } else if (n === !0 && !U(e[i]))\n            return p(\"InvalidXml\", \"Extra text at the end\", w(e, i));\n        e[i] === \"<\" && i--;\n      }\n    } else {\n      if (U(e[i]))\n        continue;\n      return p(\"InvalidChar\", \"char '\" + e[i] + \"' is not expected.\", w(e, i));\n    }\n  if (s) {\n    if (r.length == 1)\n      return p(\"InvalidTag\", \"Unclosed tag '\" + r[0].tagName + \"'.\", w(e, r[0].tagStartPos));\n    if (r.length > 0)\n      return p(\"InvalidXml\", \"Invalid '\" + JSON.stringify(r.map((i) => i.tagName), null, 4).replace(/\\r?\\n/g, \"\") + \"' found.\", { line: 1, col: 1 });\n  } else\n    return p(\"InvalidXml\", \"Start tag expected.\", 1);\n  return !0;\n};\nfunction U(e) {\n  return e === \" \" || e === \"\t\" || e === `\n` || e === \"\\r\";\n}\nfunction G(e, t) {\n  const r = t;\n  for (; t < e.length; t++)\n    if (e[t] == \"?\" || e[t] == \" \") {\n      const s = e.substr(r, t - r);\n      if (t > 5 && s === \"xml\")\n        return p(\"InvalidXml\", \"XML declaration allowed only at the start of the document.\", w(e, t));\n      if (e[t] == \"?\" && e[t + 1] == \">\") {\n        t++;\n        break;\n      } else\n        continue;\n    }\n  return t;\n}\nfunction z(e, t) {\n  if (e.length > t + 5 && e[t + 1] === \"-\" && e[t + 2] === \"-\") {\n    for (t += 3; t < e.length; t++)\n      if (e[t] === \"-\" && e[t + 1] === \"-\" && e[t + 2] === \">\") {\n        t += 2;\n        break;\n      }\n  } else if (e.length > t + 8 && e[t + 1] === \"D\" && e[t + 2] === \"O\" && e[t + 3] === \"C\" && e[t + 4] === \"T\" && e[t + 5] === \"Y\" && e[t + 6] === \"P\" && e[t + 7] === \"E\") {\n    let r = 1;\n    for (t += 8; t < e.length; t++)\n      if (e[t] === \"<\")\n        r++;\n      else if (e[t] === \">\" && (r--, r === 0))\n        break;\n  } else if (e.length > t + 9 && e[t + 1] === \"[\" && e[t + 2] === \"C\" && e[t + 3] === \"D\" && e[t + 4] === \"A\" && e[t + 5] === \"T\" && e[t + 6] === \"A\" && e[t + 7] === \"[\") {\n    for (t += 8; t < e.length; t++)\n      if (e[t] === \"]\" && e[t + 1] === \"]\" && e[t + 2] === \">\") {\n        t += 2;\n        break;\n      }\n  }\n  return t;\n}\nconst Ce = '\"', Pe = \"'\";\nfunction xe(e, t) {\n  let r = \"\", s = \"\", n = !1;\n  for (; t < e.length; t++) {\n    if (e[t] === Ce || e[t] === Pe)\n      s === \"\" ? s = e[t] : s !== e[t] || (s = \"\");\n    else if (e[t] === \">\" && s === \"\") {\n      n = !0;\n      break;\n    }\n    r += e[t];\n  }\n  return s !== \"\" ? !1 : {\n    value: r,\n    index: t,\n    tagClosed: n\n  };\n}\nconst $e = new RegExp(`(\\\\s*)([^\\\\s=]+)(\\\\s*=)?(\\\\s*(['\"])(([\\\\s\\\\S])*?)\\\\5)?`, \"g\");\nfunction H(e, t) {\n  const r = M.getAllMatches(e, $e), s = {};\n  for (let n = 0; n < r.length; n++) {\n    if (r[n][1].length === 0)\n      return p(\"InvalidAttr\", \"Attribute '\" + r[n][2] + \"' has no space in starting.\", v(r[n]));\n    if (r[n][3] !== void 0 && r[n][4] === void 0)\n      return p(\"InvalidAttr\", \"Attribute '\" + r[n][2] + \"' is without value.\", v(r[n]));\n    if (r[n][3] === void 0 && !t.allowBooleanAttributes)\n      return p(\"InvalidAttr\", \"boolean attribute '\" + r[n][2] + \"' is not allowed.\", v(r[n]));\n    const i = r[n][2];\n    if (!Le(i))\n      return p(\"InvalidAttr\", \"Attribute '\" + i + \"' is an invalid name.\", v(r[n]));\n    if (!s.hasOwnProperty(i))\n      s[i] = 1;\n    else\n      return p(\"InvalidAttr\", \"Attribute '\" + i + \"' is repeated.\", v(r[n]));\n  }\n  return !0;\n}\nfunction Fe(e, t) {\n  let r = /\\d/;\n  for (e[t] === \"x\" && (t++, r = /[\\da-fA-F]/); t < e.length; t++) {\n    if (e[t] === \";\")\n      return t;\n    if (!e[t].match(r))\n      break;\n  }\n  return -1;\n}\nfunction Ve(e, t) {\n  if (t++, e[t] === \";\")\n    return -1;\n  if (e[t] === \"#\")\n    return t++, Fe(e, t);\n  let r = 0;\n  for (; t < e.length; t++, r++)\n    if (!(e[t].match(/\\w/) && r < 20)) {\n      if (e[t] === \";\")\n        break;\n      return -1;\n    }\n  return t;\n}\nfunction p(e, t, r) {\n  return {\n    err: {\n      code: e,\n      msg: t,\n      line: r.line || r,\n      col: r.col\n    }\n  };\n}\nfunction Le(e) {\n  return M.isName(e);\n}\nfunction Re(e) {\n  return M.isName(e);\n}\nfunction w(e, t) {\n  const r = e.substring(0, t).split(/\\r?\\n/);\n  return {\n    line: r.length,\n    // column number is last line's length + 1, because column numbering starts at 1:\n    col: r[r.length - 1].length + 1\n  };\n}\nfunction v(e) {\n  return e.startIndex + e[1].length;\n}\nvar B = {};\nconst re = {\n  preserveOrder: !1,\n  attributeNamePrefix: \"@_\",\n  attributesGroupName: !1,\n  textNodeName: \"#text\",\n  ignoreAttributes: !0,\n  removeNSPrefix: !1,\n  // remove NS from tag name or attribute name if true\n  allowBooleanAttributes: !1,\n  //a tag can have attributes without any value\n  //ignoreRootElement : false,\n  parseTagValue: !0,\n  parseAttributeValue: !1,\n  trimValues: !0,\n  //Trim string values of tag and attributes\n  cdataPropName: !1,\n  numberParseOptions: {\n    hex: !0,\n    leadingZeros: !0,\n    eNotation: !0\n  },\n  tagValueProcessor: function(e, t) {\n    return t;\n  },\n  attributeValueProcessor: function(e, t) {\n    return t;\n  },\n  stopNodes: [],\n  //nested tags will not be parsed even for errors\n  alwaysCreateTextNode: !1,\n  isArray: () => !1,\n  commentPropName: !1,\n  unpairedTags: [],\n  processEntities: !0,\n  htmlEntities: !1,\n  ignoreDeclaration: !1,\n  ignorePiTags: !1,\n  transformTagName: !1,\n  transformAttributeName: !1,\n  updateTag: function(e, t, r) {\n    return e;\n  }\n  // skipEmptyListItem: false\n}, Se = function(e) {\n  return Object.assign({}, re, e);\n};\nB.buildOptions = Se;\nB.defaultOptions = re;\nclass Me {\n  constructor(t) {\n    this.tagname = t, this.child = [], this[\":@\"] = {};\n  }\n  add(t, r) {\n    t === \"__proto__\" && (t = \"#__proto__\"), this.child.push({ [t]: r });\n  }\n  addChild(t) {\n    t.tagname === \"__proto__\" && (t.tagname = \"#__proto__\"), t[\":@\"] && Object.keys(t[\":@\"]).length > 0 ? this.child.push({ [t.tagname]: t.child, \":@\": t[\":@\"] }) : this.child.push({ [t.tagname]: t.child });\n  }\n}\nvar Be = Me;\nconst ke = O;\nfunction qe(e, t) {\n  const r = {};\n  if (e[t + 3] === \"O\" && e[t + 4] === \"C\" && e[t + 5] === \"T\" && e[t + 6] === \"Y\" && e[t + 7] === \"P\" && e[t + 8] === \"E\") {\n    t = t + 9;\n    let s = 1, n = !1, i = !1, d = \"\";\n    for (; t < e.length; t++)\n      if (e[t] === \"<\" && !i) {\n        if (n && Ge(e, t))\n          t += 7, [entityName, val, t] = Xe(e, t + 1), val.indexOf(\"&\") === -1 && (r[We(entityName)] = {\n            regx: RegExp(`&${entityName};`, \"g\"),\n            val\n          });\n        else if (n && ze(e, t))\n          t += 8;\n        else if (n && He(e, t))\n          t += 8;\n        else if (n && Ke(e, t))\n          t += 9;\n        else if (Ue)\n          i = !0;\n        else\n          throw new Error(\"Invalid DOCTYPE\");\n        s++, d = \"\";\n      } else if (e[t] === \">\") {\n        if (i ? e[t - 1] === \"-\" && e[t - 2] === \"-\" && (i = !1, s--) : s--, s === 0)\n          break;\n      } else\n        e[t] === \"[\" ? n = !0 : d += e[t];\n    if (s !== 0)\n      throw new Error(\"Unclosed DOCTYPE\");\n  } else\n    throw new Error(\"Invalid Tag instead of DOCTYPE\");\n  return { entities: r, i: t };\n}\nfunction Xe(e, t) {\n  let r = \"\";\n  for (; t < e.length && e[t] !== \"'\" && e[t] !== '\"'; t++)\n    r += e[t];\n  if (r = r.trim(), r.indexOf(\" \") !== -1)\n    throw new Error(\"External entites are not supported\");\n  const s = e[t++];\n  let n = \"\";\n  for (; t < e.length && e[t] !== s; t++)\n    n += e[t];\n  return [r, n, t];\n}\nfunction Ue(e, t) {\n  return e[t + 1] === \"!\" && e[t + 2] === \"-\" && e[t + 3] === \"-\";\n}\nfunction Ge(e, t) {\n  return e[t + 1] === \"!\" && e[t + 2] === \"E\" && e[t + 3] === \"N\" && e[t + 4] === \"T\" && e[t + 5] === \"I\" && e[t + 6] === \"T\" && e[t + 7] === \"Y\";\n}\nfunction ze(e, t) {\n  return e[t + 1] === \"!\" && e[t + 2] === \"E\" && e[t + 3] === \"L\" && e[t + 4] === \"E\" && e[t + 5] === \"M\" && e[t + 6] === \"E\" && e[t + 7] === \"N\" && e[t + 8] === \"T\";\n}\nfunction He(e, t) {\n  return e[t + 1] === \"!\" && e[t + 2] === \"A\" && e[t + 3] === \"T\" && e[t + 4] === \"T\" && e[t + 5] === \"L\" && e[t + 6] === \"I\" && e[t + 7] === \"S\" && e[t + 8] === \"T\";\n}\nfunction Ke(e, t) {\n  return e[t + 1] === \"!\" && e[t + 2] === \"N\" && e[t + 3] === \"O\" && e[t + 4] === \"T\" && e[t + 5] === \"A\" && e[t + 6] === \"T\" && e[t + 7] === \"I\" && e[t + 8] === \"O\" && e[t + 9] === \"N\";\n}\nfunction We(e) {\n  if (ke.isName(e))\n    return e;\n  throw new Error(`Invalid entity name ${e}`);\n}\nvar Ze = qe;\nconst je = /^[-+]?0x[a-fA-F0-9]+$/, Ye = /^([\\-\\+])?(0*)(\\.[0-9]+([eE]\\-?[0-9]+)?|[0-9]+(\\.[0-9]+([eE]\\-?[0-9]+)?)?)$/;\n!Number.parseInt && window.parseInt && (Number.parseInt = window.parseInt);\n!Number.parseFloat && window.parseFloat && (Number.parseFloat = window.parseFloat);\nconst Je = {\n  hex: !0,\n  leadingZeros: !0,\n  decimalPoint: \".\",\n  eNotation: !0\n  //skipLike: /regex/\n};\nfunction Qe(e, t = {}) {\n  if (t = Object.assign({}, Je, t), !e || typeof e != \"string\")\n    return e;\n  let r = e.trim();\n  if (t.skipLike !== void 0 && t.skipLike.test(r))\n    return e;\n  if (t.hex && je.test(r))\n    return Number.parseInt(r, 16);\n  {\n    const s = Ye.exec(r);\n    if (s) {\n      const n = s[1], i = s[2];\n      let d = De(s[3]);\n      const u = s[4] || s[6];\n      if (!t.leadingZeros && i.length > 0 && n && r[2] !== \".\")\n        return e;\n      if (!t.leadingZeros && i.length > 0 && !n && r[1] !== \".\")\n        return e;\n      {\n        const o = Number(r), a = \"\" + o;\n        return a.search(/[eE]/) !== -1 || u ? t.eNotation ? o : e : r.indexOf(\".\") !== -1 ? a === \"0\" && d === \"\" || a === d || n && a === \"-\" + d ? o : e : i ? d === a || n + d === a ? o : e : r === a || r === n + a ? o : e;\n      }\n    } else\n      return e;\n  }\n}\nfunction De(e) {\n  return e && e.indexOf(\".\") !== -1 && (e = e.replace(/0+$/, \"\"), e === \".\" ? e = \"0\" : e[0] === \".\" ? e = \"0\" + e : e[e.length - 1] === \".\" && (e = e.substr(0, e.length - 1))), e;\n}\nvar et = Qe;\nconst k = O, T = Be, tt = Ze, rt = et;\n\"<((!\\\\[CDATA\\\\[([\\\\s\\\\S]*?)(]]>))|((NAME:)?(NAME))([^>]*)>|((\\\\/)(NAME)\\\\s*>))([^<]*)\".replace(/NAME/g, k.nameRegexp);\nlet nt = class {\n  constructor(t) {\n    this.options = t, this.currentNode = null, this.tagsNodeStack = [], this.docTypeEntities = {}, this.lastEntities = {\n      apos: { regex: /&(apos|#39|#x27);/g, val: \"'\" },\n      gt: { regex: /&(gt|#62|#x3E);/g, val: \">\" },\n      lt: { regex: /&(lt|#60|#x3C);/g, val: \"<\" },\n      quot: { regex: /&(quot|#34|#x22);/g, val: '\"' }\n    }, this.ampEntity = { regex: /&(amp|#38|#x26);/g, val: \"&\" }, this.htmlEntities = {\n      space: { regex: /&(nbsp|#160);/g, val: \" \" },\n      // \"lt\" : { regex: /&(lt|#60);/g, val: \"<\" },\n      // \"gt\" : { regex: /&(gt|#62);/g, val: \">\" },\n      // \"amp\" : { regex: /&(amp|#38);/g, val: \"&\" },\n      // \"quot\" : { regex: /&(quot|#34);/g, val: \"\\\"\" },\n      // \"apos\" : { regex: /&(apos|#39);/g, val: \"'\" },\n      cent: { regex: /&(cent|#162);/g, val: \"¢\" },\n      pound: { regex: /&(pound|#163);/g, val: \"£\" },\n      yen: { regex: /&(yen|#165);/g, val: \"¥\" },\n      euro: { regex: /&(euro|#8364);/g, val: \"€\" },\n      copyright: { regex: /&(copy|#169);/g, val: \"©\" },\n      reg: { regex: /&(reg|#174);/g, val: \"®\" },\n      inr: { regex: /&(inr|#8377);/g, val: \"₹\" }\n    }, this.addExternalEntities = it, this.parseXml = at, this.parseTextData = st, this.resolveNameSpace = ot, this.buildAttributesMap = dt, this.isItStopNode = ht, this.replaceEntitiesValue = ft, this.readStopNodeData = gt, this.saveTextToParentTag = ct, this.addChild = lt;\n  }\n};\nfunction it(e) {\n  const t = Object.keys(e);\n  for (let r = 0; r < t.length; r++) {\n    const s = t[r];\n    this.lastEntities[s] = {\n      regex: new RegExp(\"&\" + s + \";\", \"g\"),\n      val: e[s]\n    };\n  }\n}\nfunction st(e, t, r, s, n, i, d) {\n  if (e !== void 0 && (this.options.trimValues && !s && (e = e.trim()), e.length > 0)) {\n    d || (e = this.replaceEntitiesValue(e));\n    const u = this.options.tagValueProcessor(t, e, r, n, i);\n    return u == null ? e : typeof u != typeof e || u !== e ? u : this.options.trimValues ? $(e, this.options.parseTagValue, this.options.numberParseOptions) : e.trim() === e ? $(e, this.options.parseTagValue, this.options.numberParseOptions) : e;\n  }\n}\nfunction ot(e) {\n  if (this.options.removeNSPrefix) {\n    const t = e.split(\":\"), r = e.charAt(0) === \"/\" ? \"/\" : \"\";\n    if (t[0] === \"xmlns\")\n      return \"\";\n    t.length === 2 && (e = r + t[1]);\n  }\n  return e;\n}\nconst ut = new RegExp(`([^\\\\s=]+)\\\\s*(=\\\\s*(['\"])([\\\\s\\\\S]*?)\\\\3)?`, \"gm\");\nfunction dt(e, t, r) {\n  if (!this.options.ignoreAttributes && typeof e == \"string\") {\n    const s = k.getAllMatches(e, ut), n = s.length, i = {};\n    for (let d = 0; d < n; d++) {\n      const u = this.resolveNameSpace(s[d][1]);\n      let o = s[d][4], a = this.options.attributeNamePrefix + u;\n      if (u.length)\n        if (this.options.transformAttributeName && (a = this.options.transformAttributeName(a)), a === \"__proto__\" && (a = \"#__proto__\"), o !== void 0) {\n          this.options.trimValues && (o = o.trim()), o = this.replaceEntitiesValue(o);\n          const l = this.options.attributeValueProcessor(u, o, t);\n          l == null ? i[a] = o : typeof l != typeof o || l !== o ? i[a] = l : i[a] = $(\n            o,\n            this.options.parseAttributeValue,\n            this.options.numberParseOptions\n          );\n        } else\n          this.options.allowBooleanAttributes && (i[a] = !0);\n    }\n    if (!Object.keys(i).length)\n      return;\n    if (this.options.attributesGroupName) {\n      const d = {};\n      return d[this.options.attributesGroupName] = i, d;\n    }\n    return i;\n  }\n}\nconst at = function(e) {\n  e = e.replace(/\\r\\n?/g, `\n`);\n  const t = new T(\"!xml\");\n  let r = t, s = \"\", n = \"\";\n  for (let i = 0; i < e.length; i++)\n    if (e[i] === \"<\")\n      if (e[i + 1] === \"/\") {\n        const u = y(e, \">\", i, \"Closing Tag is not closed.\");\n        let o = e.substring(i + 2, u).trim();\n        if (this.options.removeNSPrefix) {\n          const f = o.indexOf(\":\");\n          f !== -1 && (o = o.substr(f + 1));\n        }\n        this.options.transformTagName && (o = this.options.transformTagName(o)), r && (s = this.saveTextToParentTag(s, r, n));\n        const a = n.substring(n.lastIndexOf(\".\") + 1);\n        if (o && this.options.unpairedTags.indexOf(o) !== -1)\n          throw new Error(`Unpaired tag can not be used as closing tag: </${o}>`);\n        let l = 0;\n        a && this.options.unpairedTags.indexOf(a) !== -1 ? (l = n.lastIndexOf(\".\", n.lastIndexOf(\".\") - 1), this.tagsNodeStack.pop()) : l = n.lastIndexOf(\".\"), n = n.substring(0, l), r = this.tagsNodeStack.pop(), s = \"\", i = u;\n      } else if (e[i + 1] === \"?\") {\n        let u = x(e, i, !1, \"?>\");\n        if (!u)\n          throw new Error(\"Pi Tag is not closed.\");\n        if (s = this.saveTextToParentTag(s, r, n), !(this.options.ignoreDeclaration && u.tagName === \"?xml\" || this.options.ignorePiTags)) {\n          const o = new T(u.tagName);\n          o.add(this.options.textNodeName, \"\"), u.tagName !== u.tagExp && u.attrExpPresent && (o[\":@\"] = this.buildAttributesMap(u.tagExp, n, u.tagName)), this.addChild(r, o, n);\n        }\n        i = u.closeIndex + 1;\n      } else if (e.substr(i + 1, 3) === \"!--\") {\n        const u = y(e, \"-->\", i + 4, \"Comment is not closed.\");\n        if (this.options.commentPropName) {\n          const o = e.substring(i + 4, u - 2);\n          s = this.saveTextToParentTag(s, r, n), r.add(this.options.commentPropName, [{ [this.options.textNodeName]: o }]);\n        }\n        i = u;\n      } else if (e.substr(i + 1, 2) === \"!D\") {\n        const u = tt(e, i);\n        this.docTypeEntities = u.entities, i = u.i;\n      } else if (e.substr(i + 1, 2) === \"![\") {\n        const u = y(e, \"]]>\", i, \"CDATA is not closed.\") - 2, o = e.substring(i + 9, u);\n        if (s = this.saveTextToParentTag(s, r, n), this.options.cdataPropName)\n          r.add(this.options.cdataPropName, [{ [this.options.textNodeName]: o }]);\n        else {\n          let a = this.parseTextData(o, r.tagname, n, !0, !1, !0);\n          a == null && (a = \"\"), r.add(this.options.textNodeName, a);\n        }\n        i = u + 2;\n      } else {\n        let u = x(e, i, this.options.removeNSPrefix), o = u.tagName;\n        const a = u.rawTagName;\n        let l = u.tagExp, f = u.attrExpPresent, c = u.closeIndex;\n        this.options.transformTagName && (o = this.options.transformTagName(o)), r && s && r.tagname !== \"!xml\" && (s = this.saveTextToParentTag(s, r, n, !1));\n        const g = r;\n        if (g && this.options.unpairedTags.indexOf(g.tagname) !== -1 && (r = this.tagsNodeStack.pop(), n = n.substring(0, n.lastIndexOf(\".\"))), o !== t.tagname && (n += n ? \".\" + o : o), this.isItStopNode(this.options.stopNodes, n, o)) {\n          let h = \"\";\n          if (l.length > 0 && l.lastIndexOf(\"/\") === l.length - 1)\n            i = u.closeIndex;\n          else if (this.options.unpairedTags.indexOf(o) !== -1)\n            i = u.closeIndex;\n          else {\n            const E = this.readStopNodeData(e, a, c + 1);\n            if (!E)\n              throw new Error(`Unexpected end of ${a}`);\n            i = E.i, h = E.tagContent;\n          }\n          const _ = new T(o);\n          o !== l && f && (_[\":@\"] = this.buildAttributesMap(l, n, o)), h && (h = this.parseTextData(h, o, n, !0, f, !0, !0)), n = n.substr(0, n.lastIndexOf(\".\")), _.add(this.options.textNodeName, h), this.addChild(r, _, n);\n        } else {\n          if (l.length > 0 && l.lastIndexOf(\"/\") === l.length - 1) {\n            o[o.length - 1] === \"/\" ? (o = o.substr(0, o.length - 1), n = n.substr(0, n.length - 1), l = o) : l = l.substr(0, l.length - 1), this.options.transformTagName && (o = this.options.transformTagName(o));\n            const h = new T(o);\n            o !== l && f && (h[\":@\"] = this.buildAttributesMap(l, n, o)), this.addChild(r, h, n), n = n.substr(0, n.lastIndexOf(\".\"));\n          } else {\n            const h = new T(o);\n            this.tagsNodeStack.push(r), o !== l && f && (h[\":@\"] = this.buildAttributesMap(l, n, o)), this.addChild(r, h, n), r = h;\n          }\n          s = \"\", i = c;\n        }\n      }\n    else\n      s += e[i];\n  return t.child;\n};\nfunction lt(e, t, r) {\n  const s = this.options.updateTag(t.tagname, r, t[\":@\"]);\n  s === !1 || (typeof s == \"string\" && (t.tagname = s), e.addChild(t));\n}\nconst ft = function(e) {\n  if (this.options.processEntities) {\n    for (let t in this.docTypeEntities) {\n      const r = this.docTypeEntities[t];\n      e = e.replace(r.regx, r.val);\n    }\n    for (let t in this.lastEntities) {\n      const r = this.lastEntities[t];\n      e = e.replace(r.regex, r.val);\n    }\n    if (this.options.htmlEntities)\n      for (let t in this.htmlEntities) {\n        const r = this.htmlEntities[t];\n        e = e.replace(r.regex, r.val);\n      }\n    e = e.replace(this.ampEntity.regex, this.ampEntity.val);\n  }\n  return e;\n};\nfunction ct(e, t, r, s) {\n  return e && (s === void 0 && (s = Object.keys(t.child).length === 0), e = this.parseTextData(\n    e,\n    t.tagname,\n    r,\n    !1,\n    t[\":@\"] ? Object.keys(t[\":@\"]).length !== 0 : !1,\n    s\n  ), e !== void 0 && e !== \"\" && t.add(this.options.textNodeName, e), e = \"\"), e;\n}\nfunction ht(e, t, r) {\n  const s = \"*.\" + r;\n  for (const n in e) {\n    const i = e[n];\n    if (s === i || t === i)\n      return !0;\n  }\n  return !1;\n}\nfunction pt(e, t, r = \">\") {\n  let s, n = \"\";\n  for (let i = t; i < e.length; i++) {\n    let d = e[i];\n    if (s)\n      d === s && (s = \"\");\n    else if (d === '\"' || d === \"'\")\n      s = d;\n    else if (d === r[0])\n      if (r[1]) {\n        if (e[i + 1] === r[1])\n          return {\n            data: n,\n            index: i\n          };\n      } else\n        return {\n          data: n,\n          index: i\n        };\n    else\n      d === \"\t\" && (d = \" \");\n    n += d;\n  }\n}\nfunction y(e, t, r, s) {\n  const n = e.indexOf(t, r);\n  if (n === -1)\n    throw new Error(s);\n  return n + t.length - 1;\n}\nfunction x(e, t, r, s = \">\") {\n  const n = pt(e, t + 1, s);\n  if (!n)\n    return;\n  let i = n.data;\n  const d = n.index, u = i.search(/\\s/);\n  let o = i, a = !0;\n  u !== -1 && (o = i.substr(0, u).replace(/\\s\\s*$/, \"\"), i = i.substr(u + 1));\n  const l = o;\n  if (r) {\n    const f = o.indexOf(\":\");\n    f !== -1 && (o = o.substr(f + 1), a = o !== n.data.substr(f + 1));\n  }\n  return {\n    tagName: o,\n    tagExp: i,\n    closeIndex: d,\n    attrExpPresent: a,\n    rawTagName: l\n  };\n}\nfunction gt(e, t, r) {\n  const s = r;\n  let n = 1;\n  for (; r < e.length; r++)\n    if (e[r] === \"<\")\n      if (e[r + 1] === \"/\") {\n        const i = y(e, \">\", r, `${t} is not closed`);\n        if (e.substring(r + 2, i).trim() === t && (n--, n === 0))\n          return {\n            tagContent: e.substring(s, r),\n            i\n          };\n        r = i;\n      } else if (e[r + 1] === \"?\")\n        r = y(e, \"?>\", r + 1, \"StopNode is not closed.\");\n      else if (e.substr(r + 1, 3) === \"!--\")\n        r = y(e, \"-->\", r + 3, \"StopNode is not closed.\");\n      else if (e.substr(r + 1, 2) === \"![\")\n        r = y(e, \"]]>\", r, \"StopNode is not closed.\") - 2;\n      else {\n        const i = x(e, r, \">\");\n        i && ((i && i.tagName) === t && i.tagExp[i.tagExp.length - 1] !== \"/\" && n++, r = i.closeIndex);\n      }\n}\nfunction $(e, t, r) {\n  if (t && typeof e == \"string\") {\n    const s = e.trim();\n    return s === \"true\" ? !0 : s === \"false\" ? !1 : rt(e, r);\n  } else\n    return k.isExist(e) ? e : \"\";\n}\nvar wt = nt, ne = {};\nfunction mt(e, t) {\n  return ie(e, t);\n}\nfunction ie(e, t, r) {\n  let s;\n  const n = {};\n  for (let i = 0; i < e.length; i++) {\n    const d = e[i], u = Nt(d);\n    let o = \"\";\n    if (r === void 0 ? o = u : o = r + \".\" + u, u === t.textNodeName)\n      s === void 0 ? s = d[u] : s += \"\" + d[u];\n    else {\n      if (u === void 0)\n        continue;\n      if (d[u]) {\n        let a = ie(d[u], t, o);\n        const l = bt(a, t);\n        d[\":@\"] ? Et(a, d[\":@\"], o, t) : Object.keys(a).length === 1 && a[t.textNodeName] !== void 0 && !t.alwaysCreateTextNode ? a = a[t.textNodeName] : Object.keys(a).length === 0 && (t.alwaysCreateTextNode ? a[t.textNodeName] = \"\" : a = \"\"), n[u] !== void 0 && n.hasOwnProperty(u) ? (Array.isArray(n[u]) || (n[u] = [n[u]]), n[u].push(a)) : t.isArray(u, o, l) ? n[u] = [a] : n[u] = a;\n      }\n    }\n  }\n  return typeof s == \"string\" ? s.length > 0 && (n[t.textNodeName] = s) : s !== void 0 && (n[t.textNodeName] = s), n;\n}\nfunction Nt(e) {\n  const t = Object.keys(e);\n  for (let r = 0; r < t.length; r++) {\n    const s = t[r];\n    if (s !== \":@\")\n      return s;\n  }\n}\nfunction Et(e, t, r, s) {\n  if (t) {\n    const n = Object.keys(t), i = n.length;\n    for (let d = 0; d < i; d++) {\n      const u = n[d];\n      s.isArray(u, r + \".\" + u, !0, !0) ? e[u] = [t[u]] : e[u] = t[u];\n    }\n  }\n}\nfunction bt(e, t) {\n  const { textNodeName: r } = t, s = Object.keys(e).length;\n  return !!(s === 0 || s === 1 && (e[r] || typeof e[r] == \"boolean\" || e[r] === 0));\n}\nne.prettify = mt;\nconst { buildOptions: yt } = B, _t = wt, { prettify: vt } = ne, Tt = S;\nlet It = class {\n  constructor(t) {\n    this.externalEntities = {}, this.options = yt(t);\n  }\n  /**\n   * Parse XML dats to JS object \n   * @param {string|Buffer} xmlData \n   * @param {boolean|Object} validationOption \n   */\n  parse(t, r) {\n    if (typeof t != \"string\")\n      if (t.toString)\n        t = t.toString();\n      else\n        throw new Error(\"XML data is accepted in String or Bytes[] form.\");\n    if (r) {\n      r === !0 && (r = {});\n      const i = Tt.validate(t, r);\n      if (i !== !0)\n        throw Error(`${i.err.msg}:${i.err.line}:${i.err.col}`);\n    }\n    const s = new _t(this.options);\n    s.addExternalEntities(this.externalEntities);\n    const n = s.parseXml(t);\n    return this.options.preserveOrder || n === void 0 ? n : vt(n, this.options);\n  }\n  /**\n   * Add Entity which is not by default supported by this library\n   * @param {string} key \n   * @param {string} value \n   */\n  addEntity(t, r) {\n    if (r.indexOf(\"&\") !== -1)\n      throw new Error(\"Entity value can't have '&'\");\n    if (t.indexOf(\"&\") !== -1 || t.indexOf(\";\") !== -1)\n      throw new Error(\"An entity must be set without '&' and ';'. Eg. use '#xD' for '&#xD;'\");\n    if (r === \"&\")\n      throw new Error(\"An entity with value '&' is not permitted\");\n    this.externalEntities[t] = r;\n  }\n};\nvar At = It;\nconst Ot = `\n`;\nfunction Ct(e, t) {\n  let r = \"\";\n  return t.format && t.indentBy.length > 0 && (r = Ot), se(e, t, \"\", r);\n}\nfunction se(e, t, r, s) {\n  let n = \"\", i = !1;\n  for (let d = 0; d < e.length; d++) {\n    const u = e[d], o = Pt(u);\n    if (o === void 0)\n      continue;\n    let a = \"\";\n    if (r.length === 0 ? a = o : a = `${r}.${o}`, o === t.textNodeName) {\n      let h = u[o];\n      xt(a, t) || (h = t.tagValueProcessor(o, h), h = oe(h, t)), i && (n += s), n += h, i = !1;\n      continue;\n    } else if (o === t.cdataPropName) {\n      i && (n += s), n += `<![CDATA[${u[o][0][t.textNodeName]}]]>`, i = !1;\n      continue;\n    } else if (o === t.commentPropName) {\n      n += s + `<!--${u[o][0][t.textNodeName]}-->`, i = !0;\n      continue;\n    } else if (o[0] === \"?\") {\n      const h = K(u[\":@\"], t), _ = o === \"?xml\" ? \"\" : s;\n      let E = u[o][0][t.textNodeName];\n      E = E.length !== 0 ? \" \" + E : \"\", n += _ + `<${o}${E}${h}?>`, i = !0;\n      continue;\n    }\n    let l = s;\n    l !== \"\" && (l += t.indentBy);\n    const f = K(u[\":@\"], t), c = s + `<${o}${f}`, g = se(u[o], t, a, l);\n    t.unpairedTags.indexOf(o) !== -1 ? t.suppressUnpairedNode ? n += c + \">\" : n += c + \"/>\" : (!g || g.length === 0) && t.suppressEmptyNode ? n += c + \"/>\" : g && g.endsWith(\">\") ? n += c + `>${g}${s}</${o}>` : (n += c + \">\", g && s !== \"\" && (g.includes(\"/>\") || g.includes(\"</\")) ? n += s + t.indentBy + g + s : n += g, n += `</${o}>`), i = !0;\n  }\n  return n;\n}\nfunction Pt(e) {\n  const t = Object.keys(e);\n  for (let r = 0; r < t.length; r++) {\n    const s = t[r];\n    if (e.hasOwnProperty(s) && s !== \":@\")\n      return s;\n  }\n}\nfunction K(e, t) {\n  let r = \"\";\n  if (e && !t.ignoreAttributes)\n    for (let s in e) {\n      if (!e.hasOwnProperty(s))\n        continue;\n      let n = t.attributeValueProcessor(s, e[s]);\n      n = oe(n, t), n === !0 && t.suppressBooleanAttributes ? r += ` ${s.substr(t.attributeNamePrefix.length)}` : r += ` ${s.substr(t.attributeNamePrefix.length)}=\"${n}\"`;\n    }\n  return r;\n}\nfunction xt(e, t) {\n  e = e.substr(0, e.length - t.textNodeName.length - 1);\n  let r = e.substr(e.lastIndexOf(\".\") + 1);\n  for (let s in t.stopNodes)\n    if (t.stopNodes[s] === e || t.stopNodes[s] === \"*.\" + r)\n      return !0;\n  return !1;\n}\nfunction oe(e, t) {\n  if (e && e.length > 0 && t.processEntities)\n    for (let r = 0; r < t.entities.length; r++) {\n      const s = t.entities[r];\n      e = e.replace(s.regex, s.val);\n    }\n  return e;\n}\nvar $t = Ct;\nconst Ft = $t, Vt = {\n  attributeNamePrefix: \"@_\",\n  attributesGroupName: !1,\n  textNodeName: \"#text\",\n  ignoreAttributes: !0,\n  cdataPropName: !1,\n  format: !1,\n  indentBy: \"  \",\n  suppressEmptyNode: !1,\n  suppressUnpairedNode: !0,\n  suppressBooleanAttributes: !0,\n  tagValueProcessor: function(e, t) {\n    return t;\n  },\n  attributeValueProcessor: function(e, t) {\n    return t;\n  },\n  preserveOrder: !1,\n  commentPropName: !1,\n  unpairedTags: [],\n  entities: [\n    { regex: new RegExp(\"&\", \"g\"), val: \"&amp;\" },\n    //it must be on top\n    { regex: new RegExp(\">\", \"g\"), val: \"&gt;\" },\n    { regex: new RegExp(\"<\", \"g\"), val: \"&lt;\" },\n    { regex: new RegExp(\"'\", \"g\"), val: \"&apos;\" },\n    { regex: new RegExp('\"', \"g\"), val: \"&quot;\" }\n  ],\n  processEntities: !0,\n  stopNodes: [],\n  // transformTagName: false,\n  // transformAttributeName: false,\n  oneListGroup: !1\n};\nfunction b(e) {\n  this.options = Object.assign({}, Vt, e), this.options.ignoreAttributes || this.options.attributesGroupName ? this.isAttribute = function() {\n    return !1;\n  } : (this.attrPrefixLen = this.options.attributeNamePrefix.length, this.isAttribute = St), this.processTextOrObjNode = Lt, this.options.format ? (this.indentate = Rt, this.tagEndChar = `>\n`, this.newLine = `\n`) : (this.indentate = function() {\n    return \"\";\n  }, this.tagEndChar = \">\", this.newLine = \"\");\n}\nb.prototype.build = function(e) {\n  return this.options.preserveOrder ? Ft(e, this.options) : (Array.isArray(e) && this.options.arrayNodeName && this.options.arrayNodeName.length > 1 && (e = {\n    [this.options.arrayNodeName]: e\n  }), this.j2x(e, 0).val);\n};\nb.prototype.j2x = function(e, t) {\n  let r = \"\", s = \"\";\n  for (let n in e)\n    if (Object.prototype.hasOwnProperty.call(e, n))\n      if (typeof e[n] > \"u\")\n        this.isAttribute(n) && (s += \"\");\n      else if (e[n] === null)\n        this.isAttribute(n) ? s += \"\" : n[0] === \"?\" ? s += this.indentate(t) + \"<\" + n + \"?\" + this.tagEndChar : s += this.indentate(t) + \"<\" + n + \"/\" + this.tagEndChar;\n      else if (e[n] instanceof Date)\n        s += this.buildTextValNode(e[n], n, \"\", t);\n      else if (typeof e[n] != \"object\") {\n        const i = this.isAttribute(n);\n        if (i)\n          r += this.buildAttrPairStr(i, \"\" + e[n]);\n        else if (n === this.options.textNodeName) {\n          let d = this.options.tagValueProcessor(n, \"\" + e[n]);\n          s += this.replaceEntitiesValue(d);\n        } else\n          s += this.buildTextValNode(e[n], n, \"\", t);\n      } else if (Array.isArray(e[n])) {\n        const i = e[n].length;\n        let d = \"\";\n        for (let u = 0; u < i; u++) {\n          const o = e[n][u];\n          typeof o > \"u\" || (o === null ? n[0] === \"?\" ? s += this.indentate(t) + \"<\" + n + \"?\" + this.tagEndChar : s += this.indentate(t) + \"<\" + n + \"/\" + this.tagEndChar : typeof o == \"object\" ? this.options.oneListGroup ? d += this.j2x(o, t + 1).val : d += this.processTextOrObjNode(o, n, t) : d += this.buildTextValNode(o, n, \"\", t));\n        }\n        this.options.oneListGroup && (d = this.buildObjectNode(d, n, \"\", t)), s += d;\n      } else if (this.options.attributesGroupName && n === this.options.attributesGroupName) {\n        const i = Object.keys(e[n]), d = i.length;\n        for (let u = 0; u < d; u++)\n          r += this.buildAttrPairStr(i[u], \"\" + e[n][i[u]]);\n      } else\n        s += this.processTextOrObjNode(e[n], n, t);\n  return { attrStr: r, val: s };\n};\nb.prototype.buildAttrPairStr = function(e, t) {\n  return t = this.options.attributeValueProcessor(e, \"\" + t), t = this.replaceEntitiesValue(t), this.options.suppressBooleanAttributes && t === \"true\" ? \" \" + e : \" \" + e + '=\"' + t + '\"';\n};\nfunction Lt(e, t, r) {\n  const s = this.j2x(e, r + 1);\n  return e[this.options.textNodeName] !== void 0 && Object.keys(e).length === 1 ? this.buildTextValNode(e[this.options.textNodeName], t, s.attrStr, r) : this.buildObjectNode(s.val, t, s.attrStr, r);\n}\nb.prototype.buildObjectNode = function(e, t, r, s) {\n  if (e === \"\")\n    return t[0] === \"?\" ? this.indentate(s) + \"<\" + t + r + \"?\" + this.tagEndChar : this.indentate(s) + \"<\" + t + r + this.closeTag(t) + this.tagEndChar;\n  {\n    let n = \"</\" + t + this.tagEndChar, i = \"\";\n    return t[0] === \"?\" && (i = \"?\", n = \"\"), (r || r === \"\") && e.indexOf(\"<\") === -1 ? this.indentate(s) + \"<\" + t + r + i + \">\" + e + n : this.options.commentPropName !== !1 && t === this.options.commentPropName && i.length === 0 ? this.indentate(s) + `<!--${e}-->` + this.newLine : this.indentate(s) + \"<\" + t + r + i + this.tagEndChar + e + this.indentate(s) + n;\n  }\n};\nb.prototype.closeTag = function(e) {\n  let t = \"\";\n  return this.options.unpairedTags.indexOf(e) !== -1 ? this.options.suppressUnpairedNode || (t = \"/\") : this.options.suppressEmptyNode ? t = \"/\" : t = `></${e}`, t;\n};\nb.prototype.buildTextValNode = function(e, t, r, s) {\n  if (this.options.cdataPropName !== !1 && t === this.options.cdataPropName)\n    return this.indentate(s) + `<![CDATA[${e}]]>` + this.newLine;\n  if (this.options.commentPropName !== !1 && t === this.options.commentPropName)\n    return this.indentate(s) + `<!--${e}-->` + this.newLine;\n  if (t[0] === \"?\")\n    return this.indentate(s) + \"<\" + t + r + \"?\" + this.tagEndChar;\n  {\n    let n = this.options.tagValueProcessor(t, e);\n    return n = this.replaceEntitiesValue(n), n === \"\" ? this.indentate(s) + \"<\" + t + r + this.closeTag(t) + this.tagEndChar : this.indentate(s) + \"<\" + t + r + \">\" + n + \"</\" + t + this.tagEndChar;\n  }\n};\nb.prototype.replaceEntitiesValue = function(e) {\n  if (e && e.length > 0 && this.options.processEntities)\n    for (let t = 0; t < this.options.entities.length; t++) {\n      const r = this.options.entities[t];\n      e = e.replace(r.regex, r.val);\n    }\n  return e;\n};\nfunction Rt(e) {\n  return this.options.indentBy.repeat(e);\n}\nfunction St(e) {\n  return e.startsWith(this.options.attributeNamePrefix) && e !== this.options.textNodeName ? e.substr(this.attrPrefixLen) : !1;\n}\nvar Mt = b;\nconst Bt = S, kt = At, qt = Mt;\nvar W = {\n  XMLParser: kt,\n  XMLValidator: Bt,\n  XMLBuilder: qt\n};\nfunction Xt(e) {\n  if (typeof e != \"string\")\n    throw new TypeError(`Expected a \\`string\\`, got \\`${typeof e}\\``);\n  if (e = e.trim(), e.length === 0 || W.XMLValidator.validate(e) !== !0)\n    return !1;\n  let t;\n  const r = new W.XMLParser();\n  try {\n    t = r.parse(e);\n  } catch {\n    return !1;\n  }\n  return !(!t || !(\"svg\" in t));\n}\n/**\n * @copyright Copyright (c) 2022 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nclass cr {\n  _view;\n  constructor(t) {\n    Ut(t), this._view = t;\n  }\n  get id() {\n    return this._view.id;\n  }\n  get name() {\n    return this._view.name;\n  }\n  get caption() {\n    return this._view.caption;\n  }\n  get emptyTitle() {\n    return this._view.emptyTitle;\n  }\n  get emptyCaption() {\n    return this._view.emptyCaption;\n  }\n  get getContents() {\n    return this._view.getContents;\n  }\n  get icon() {\n    return this._view.icon;\n  }\n  set icon(t) {\n    this._view.icon = t;\n  }\n  get order() {\n    return this._view.order;\n  }\n  set order(t) {\n    this._view.order = t;\n  }\n  get params() {\n    return this._view.params;\n  }\n  set params(t) {\n    this._view.params = t;\n  }\n  get columns() {\n    return this._view.columns;\n  }\n  get emptyView() {\n    return this._view.emptyView;\n  }\n  get parent() {\n    return this._view.parent;\n  }\n  get sticky() {\n    return this._view.sticky;\n  }\n  get expanded() {\n    return this._view.expanded;\n  }\n  set expanded(t) {\n    this._view.expanded = t;\n  }\n  get defaultSortKey() {\n    return this._view.defaultSortKey;\n  }\n}\nconst Ut = function(e) {\n  if (!e.id || typeof e.id != \"string\")\n    throw new Error(\"View id is required and must be a string\");\n  if (!e.name || typeof e.name != \"string\")\n    throw new Error(\"View name is required and must be a string\");\n  if (e.columns && e.columns.length > 0 && (!e.caption || typeof e.caption != \"string\"))\n    throw new Error(\"View caption is required for top-level views and must be a string\");\n  if (!e.getContents || typeof e.getContents != \"function\")\n    throw new Error(\"View getContents is required and must be a function\");\n  if (!e.icon || typeof e.icon != \"string\" || !Xt(e.icon))\n    throw new Error(\"View icon is required and must be a valid svg string\");\n  if (!(\"order\" in e) || typeof e.order != \"number\")\n    throw new Error(\"View order is required and must be a number\");\n  if (e.columns && e.columns.forEach((t) => {\n    if (!(t instanceof Ie))\n      throw new Error(\"View columns must be an array of Column. Invalid column found\");\n  }), e.emptyView && typeof e.emptyView != \"function\")\n    throw new Error(\"View emptyView must be a function\");\n  if (e.parent && typeof e.parent != \"string\")\n    throw new Error(\"View parent must be a string\");\n  if (\"sticky\" in e && typeof e.sticky != \"boolean\")\n    throw new Error(\"View sticky must be a boolean\");\n  if (\"expanded\" in e && typeof e.expanded != \"boolean\")\n    throw new Error(\"View expanded must be a boolean\");\n  if (e.defaultSortKey && typeof e.defaultSortKey != \"string\")\n    throw new Error(\"View defaultSortKey must be a string\");\n  return !0;\n};\n/**\n * @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>\n *\n * @author Christoph Wurst <christoph@winzerhof-wurst.at>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nconst hr = function(e) {\n  return F().registerEntry(e);\n}, pr = function(e) {\n  return F().unregisterEntry(e);\n}, gr = function(e) {\n  return F().getEntries(e).sort((r, s) => r.order !== void 0 && s.order !== void 0 && r.order !== s.order ? r.order - s.order : r.displayName.localeCompare(s.displayName, void 0, { numeric: !0, sensitivity: \"base\" }));\n};\nexport {\n  Ie as Column,\n  Z as DefaultType,\n  ye as File,\n  Qt as FileAction,\n  R as FileType,\n  _e as Folder,\n  tr as Header,\n  Te as Navigation,\n  D as Node,\n  Q as NodeStatus,\n  N as Permission,\n  cr as View,\n  hr as addNewFileMenuEntry,\n  ur as davGetClient,\n  sr as davGetDefaultPropfind,\n  Ee as davGetFavoritesReport,\n  or as davGetRecentSearch,\n  be as davParsePermissions,\n  te as davRemoteURL,\n  ve as davResultToNode,\n  ee as davRootPath,\n  Y as defaultDavNamespaces,\n  j as defaultDavProperties,\n  Yt as formatFileSize,\n  L as getDavNameSpaces,\n  V as getDavProperties,\n  dr as getFavoriteNodes,\n  er as getFileActions,\n  nr as getFileListHeaders,\n  ar as getNavigation,\n  gr as getNewFileMenuEntries,\n  Jt as parseFileSize,\n  ir as registerDavProperty,\n  Dt as registerFileAction,\n  rr as registerFileListHeaders,\n  pr as removeNewFileMenuEntry\n};\n","import \"../assets/index-d9ae9479.css\";\nimport { r as c } from \"../chunks/index-5f2a5f57.mjs\";\nimport { N as rt } from \"../chunks/index-5f2a5f57.mjs\";\nimport { generateUrl as p } from \"@nextcloud/router\";\nimport { n as u } from \"../chunks/_plugin-vue2_normalizer-71e2aa87.mjs\";\nimport { t as o } from \"../chunks/l10n-f692947e.mjs\";\nimport \"../Directives/Tooltip.mjs\";\nimport { emojiAddRecent as m, emojiSearch as d } from \"../Functions/emoji.mjs\";\nimport { n as h, j as f } from \"../chunks/referencePickerModal-6bc8f6b9.mjs\";\nimport \"@nextcloud/axios\";\nimport \"unist-util-visit\";\nimport \"unist-builder\";\nimport \"unified\";\nimport \"remark-parse\";\nimport \"remark-breaks\";\nimport \"remark-rehype\";\nimport \"rehype-react\";\nimport \"rehype-external-links\";\nimport \"./NcEmptyContent.mjs\";\nimport \"./NcSelect.mjs\";\nimport \"./NcLoadingIcon.mjs\";\nimport \"./NcTextField.mjs\";\nimport \"./NcButton.mjs\";\nimport \"./NcModal.mjs\";\nimport \"@nextcloud/event-bus\";\nimport l from \"tributejs/dist/tribute.esm.js\";\nimport _ from \"debounce\";\nimport g from \"string-length\";\nimport { VTooltip as b } from \"floating-vue\";\nconst y = {\n  name: \"NcAutoCompleteResult\",\n  props: {\n    title: {\n      type: String,\n      required: !0\n    },\n    subline: {\n      type: String,\n      default: null\n    },\n    id: {\n      type: String,\n      default: null\n    },\n    icon: {\n      type: String,\n      required: !0\n    },\n    iconUrl: {\n      type: String,\n      default: null\n    },\n    source: {\n      type: String,\n      required: !0\n    },\n    status: {\n      type: [Object, Array],\n      default: () => ({})\n    }\n  },\n  computed: {\n    avatarUrl() {\n      return this.iconUrl ? this.iconUrl : this.id && this.source === \"users\" ? this.getAvatarUrl(this.id, 44) : null;\n    },\n    haveStatus() {\n      var e, t, n;\n      return ((e = this.status) == null ? void 0 : e.icon) || ((t = this.status) == null ? void 0 : t.status) && ((n = this.status) == null ? void 0 : n.status) !== \"offline\";\n    }\n  },\n  methods: {\n    getAvatarUrl(e, t) {\n      return p(\"/avatar/{user}/{size}\", {\n        user: e,\n        size: t\n      });\n    }\n  }\n};\nvar C = function() {\n  var t = this, n = t._self._c;\n  return n(\"div\", { staticClass: \"autocomplete-result\" }, [n(\"div\", { staticClass: \"autocomplete-result__icon\", class: [t.icon, `autocomplete-result__icon--${t.avatarUrl ? \"with-avatar\" : \"\"}`], style: t.avatarUrl ? { backgroundImage: `url(${t.avatarUrl})` } : null }, [t.haveStatus ? n(\"div\", { staticClass: \"autocomplete-result__status\", class: [`autocomplete-result__status--${t.status && t.status.icon ? \"icon\" : t.status.status}`] }, [t._v(\" \" + t._s(t.status && t.status.icon || \"\") + \" \")]) : t._e()]), n(\"span\", { staticClass: \"autocomplete-result__content\" }, [n(\"span\", { staticClass: \"autocomplete-result__title\", attrs: { title: t.title } }, [t._v(\" \" + t._s(t.title) + \" \")]), t.subline ? n(\"span\", { staticClass: \"autocomplete-result__subline\" }, [t._v(\" \" + t._s(t.subline) + \" \")]) : t._e()])]);\n}, v = [], k = /* @__PURE__ */ u(\n  y,\n  C,\n  v,\n  !1,\n  null,\n  \"25cf09d8\",\n  null,\n  null\n);\nconst x = k.exports;\nconst T = {\n  name: \"NcRichContenteditable\",\n  directives: {\n    tooltip: b\n  },\n  mixins: [c],\n  props: {\n    value: {\n      type: String,\n      default: \"\",\n      required: !0\n    },\n    placeholder: {\n      type: String,\n      default: o(\"Write a message …\")\n    },\n    autoComplete: {\n      type: Function,\n      default: () => []\n    },\n    menuContainer: {\n      type: Element,\n      default: () => document.body\n    },\n    /**\n     * Make the contenteditable looks like a textarea or not.\n     * Default looks like a single-line input.\n     * This also handle the default enter/shift+enter behaviour.\n     * if multiline, enter = newline; otherwise enter = submit\n     * shift+enter always add a new line. ctrl+enter always submits\n     */\n    multiline: {\n      type: Boolean,\n      default: !1\n    },\n    /**\n     * Is the content editable ?\n     */\n    contenteditable: {\n      type: Boolean,\n      default: !0\n    },\n    /**\n     * Disable the editing and show specific disabled design\n     */\n    disabled: {\n      type: Boolean,\n      default: !1\n    },\n    /**\n     * Max allowed length\n     */\n    maxlength: {\n      type: Number,\n      default: null\n    },\n    /**\n     * Enable or disable emoji autocompletion\n     */\n    emojiAutocomplete: {\n      type: Boolean,\n      default: !0\n    },\n    /**\n     * Enable or disable link autocompletion\n     */\n    linkAutocomplete: {\n      type: Boolean,\n      default: !0\n    }\n  },\n  emits: [\n    \"submit\",\n    \"paste\",\n    \"update:value\",\n    \"smart-picker-submit\"\n  ],\n  data() {\n    return {\n      textSmiles: [],\n      tribute: null,\n      autocompleteOptions: {\n        // Allow spaces in the middle of mentions\n        allowSpaces: !0,\n        fillAttr: \"id\",\n        // Search against id and title (display name)\n        lookup: (e) => `${e.id} ${e.title}`,\n        // Where to inject the menu popup\n        menuContainer: this.menuContainer,\n        // Popup mention autocompletion templates\n        menuItemTemplate: (e) => this.renderComponentHtml(e.original, x),\n        // Hide if no results\n        noMatchTemplate: () => '<span class=\"hidden\"></span>',\n        // Inner display of mentions\n        selectTemplate: (e) => {\n          var t;\n          return this.genSelectTemplate((t = e == null ? void 0 : e.original) == null ? void 0 : t.id);\n        },\n        // Autocompletion results\n        values: this.debouncedAutoComplete\n      },\n      emojiOptions: {\n        trigger: \":\",\n        // Don't use the tribute search function at all\n        // We pass search results as values (see below)\n        lookup: (e, t) => t,\n        // Where to inject the menu popup\n        menuContainer: this.menuContainer,\n        // Popup mention autocompletion templates\n        menuItemTemplate: (e) => this.textSmiles.includes(e.original) ? e.original : `<span class=\"tribute-container-emoji__item__emoji\">${e.original.native}</span> :${e.original.short_name}`,\n        // Hide if no results\n        noMatchTemplate: () => o(\"No emoji found\"),\n        // Display raw emoji along with its name\n        selectTemplate: (e) => this.textSmiles.includes(e.original) ? e.original : (m(e.original), e.original.native),\n        // Pass the search results as values\n        values: (e, t) => {\n          const n = d(e);\n          this.textSmiles.includes(\":\" + e) && n.unshift(\":\" + e), t(n);\n        },\n        // Class added to the menu container\n        containerClass: \"tribute-container-emoji\",\n        // Class added to each list item\n        itemClass: \"tribute-container-emoji__item\"\n      },\n      linkOptions: {\n        trigger: \"/\",\n        // Don't use the tribute search function at all\n        // We pass search results as values (see below)\n        lookup: (e, t) => t,\n        // Where to inject the menu popup\n        menuContainer: this.menuContainer,\n        // Popup mention autocompletion templates\n        menuItemTemplate: (e) => `<img class=\"tribute-container-link__item__icon\" src=\"${e.original.icon_url}\"> <span class=\"tribute-container-link__item__title\">${e.original.title}</span>`,\n        // Hide if no results\n        noMatchTemplate: () => o(\"No link provider found\"),\n        selectTemplate: this.getLink,\n        // Pass the search results as values\n        values: (e, t) => t(h(e)),\n        // Class added to the menu container\n        containerClass: \"tribute-container-link\",\n        // Class added to each list item\n        itemClass: \"tribute-container-link__item\"\n      },\n      // Represent the raw untrimmed text of the contenteditable\n      // serves no other purpose than to check whether the\n      // content is empty or not\n      localValue: this.value,\n      // Is in text composition session in IME\n      isComposing: !1\n    };\n  },\n  computed: {\n    /**\n     * Is the current trimmed value empty?\n     *\n     * @return {boolean}\n     */\n    isEmptyValue() {\n      return !this.localValue || this.localValue && this.localValue.trim() === \"\";\n    },\n    /**\n     * Is this Firefox? 🙄\n     *\n     * @return {boolean}\n     */\n    isFF() {\n      return !!navigator.userAgent.match(/firefox/i);\n    },\n    /**\n     * Is the current value over maxlength?\n     *\n     * @return {boolean}\n     */\n    isOverMaxlength() {\n      return this.isEmptyValue || !this.maxlength ? !1 : g(this.localValue) > this.maxlength;\n    },\n    /**\n     * Tooltip to show if characters count is over limit\n     *\n     * @return {string}\n     */\n    tooltipString() {\n      return this.isOverMaxlength ? {\n        content: o(\"Message limit of {count} characters reached\", { count: this.maxlength }),\n        shown: !0,\n        trigger: \"manual\"\n      } : null;\n    },\n    /**\n     * Edit is only allowed when contenteditableis true and disabled is false\n     *\n     * @return {boolean}\n     */\n    canEdit() {\n      return this.contenteditable && !this.disabled;\n    },\n    /**\n     * Proxied native event handlers without custom event handlers\n     *\n     * @return {Record<string, Function>}\n     */\n    listeners() {\n      const e = { ...this.$listeners };\n      return delete e.paste, e;\n    }\n  },\n  watch: {\n    /**\n     * If the parent value change, we compare the plain text rendering\n     * If it's different, we render everything and update the main content\n     */\n    value() {\n      const e = this.$refs.contenteditable.innerHTML;\n      this.value.trim() !== this.parseContent(e).trim() && this.updateContent(this.value);\n    }\n  },\n  mounted() {\n    const e = [\"d\", \"D\", \"p\", \"P\", \"s\", \"S\", \"x\", \"X\", \")\", \"(\", \"|\", \"/\"];\n    this.textSmiles = [], e.forEach((t) => {\n      this.textSmiles.push(\":\" + t), this.textSmiles.push(\":-\" + t);\n    }), this.autocompleteTribute = new l(this.autocompleteOptions), this.autocompleteTribute.attach(this.$el), this.emojiAutocomplete && (this.emojiTribute = new l(this.emojiOptions), this.emojiTribute.attach(this.$el)), this.linkAutocomplete && (this.linkTribute = new l(this.linkOptions), this.linkTribute.attach(this.$el)), this.updateContent(this.value), this.$refs.contenteditable.contentEditable = this.canEdit;\n  },\n  beforeDestroy() {\n    this.autocompleteTribute && this.autocompleteTribute.detach(this.$el), this.emojiTribute && this.emojiTribute.detach(this.$el), this.linkTribute && this.linkTribute.detach(this.$el);\n  },\n  methods: {\n    /**\n     * Focus the richContenteditable\n     *\n     * @public\n     */\n    focus() {\n      this.$refs.contenteditable.focus();\n    },\n    getLink(e) {\n      return f(e.original.id).then((t) => {\n        const n = document.getElementById(\"tmp-smart-picker-result-node\"), i = {\n          result: t,\n          insertText: !0\n        };\n        if (this.$emit(\"smart-picker-submit\", i), i.insertText) {\n          const s = document.createTextNode(t);\n          n.replaceWith(s), this.setCursorAfter(s), this.updateValue(this.$refs.contenteditable.innerHTML);\n        } else\n          n.remove();\n      }).catch((t) => {\n        console.debug(\"Smart picker promise rejected:\", t);\n        const n = document.getElementById(\"tmp-smart-picker-result-node\");\n        this.setCursorAfter(n), n.remove();\n      }), '<span id=\"tmp-smart-picker-result-node\"></span>';\n    },\n    setCursorAfter(e) {\n      const t = document.createRange();\n      t.setEndAfter(e), t.collapse();\n      const n = window.getSelection();\n      n.removeAllRanges(), n.addRange(t);\n    },\n    /**\n     * Re-emit the input event to the parent\n     *\n     * @param {Event} event the input event\n     */\n    onInput(e) {\n      this.updateValue(e.target.innerHTML);\n    },\n    /**\n     * When pasting, sanitize the content, extract text\n     * and render it again\n     *\n     * @param {Event} event the paste event\n     * @fires Event paste the original paste event\n     */\n    onPaste(e) {\n      if (!this.canEdit)\n        return;\n      e.preventDefault();\n      const t = e.clipboardData;\n      if (this.$emit(\"paste\", e), t.files.length !== 0 || !Object.values(t.items).find((a) => a == null ? void 0 : a.type.startsWith(\"text\")))\n        return;\n      const n = t.getData(\"text\"), i = window.getSelection();\n      if (!i.rangeCount) {\n        this.updateValue(n);\n        return;\n      }\n      const s = i.getRangeAt(0);\n      i.deleteFromDocument(), s.insertNode(document.createTextNode(n));\n      const r = document.createRange();\n      r.setStart(e.target, s.endOffset), r.collapse(!0), i.removeAllRanges(), i.addRange(r), this.updateValue(this.$refs.contenteditable.innerHTML);\n    },\n    /**\n     * Update the value text from the provided html\n     *\n     * @param {string} htmlOrText the html content (or raw text with @mentions)\n     */\n    updateValue(e) {\n      const t = this.parseContent(e);\n      this.localValue = t, this.$emit(\"update:value\", t);\n    },\n    /**\n     * Update content and local value\n     *\n     * @param {string} value the message value\n     */\n    updateContent(e) {\n      const t = this.renderContent(e);\n      this.$refs.contenteditable.innerHTML = t, this.localValue = e;\n    },\n    /**\n     * Because FF have a decade old bug preventing contenteditable=false\n     * to properly be deleted on backspace, we have to hack 👀\n     * https://stackoverflow.com/a/59383394/3885878\n     * https://stackoverflow.com/a/30574622\n     *\n     * @param {Event} event the delete keydown event\n     */\n    onDelete(e) {\n      if (!this.isFF || !window.getSelection || !this.canEdit)\n        return;\n      const t = window.getSelection(), n = e.target;\n      if (!t.isCollapsed || !t.rangeCount)\n        return;\n      const i = t.getRangeAt(t.rangeCount - 1);\n      if (i.commonAncestorContainer.nodeType === 3 && i.startOffset > 0)\n        return;\n      const s = document.createRange();\n      if (t.anchorNode !== n)\n        s.selectNodeContents(n), s.setEndBefore(t.anchorNode);\n      else if (t.anchorOffset > 0)\n        s.setEnd(n, t.anchorOffset);\n      else\n        return;\n      s.setStart(n, s.endOffset - 1);\n      const r = s.cloneContents().lastChild;\n      r && r.contentEditable === \"false\" && (s.deleteContents(), e.preventDefault());\n    },\n    /**\n     * Enter key pressed. Submits if not multiline\n     *\n     * @param {Event} event the keydown event\n     */\n    onEnter(e) {\n      this.multiline || this.isOverMaxlength || this.autocompleteTribute.isActive || this.emojiTribute.isActive || this.linkTribute.isActive || this.isComposing || (e.preventDefault(), e.stopPropagation(), this.$emit(\"submit\", e));\n    },\n    /**\n     * Ctrl + Enter key pressed is used to submit\n     *\n     * @param {Event} event the keydown event\n     */\n    onCtrlEnter(e) {\n      this.isOverMaxlength || this.$emit(\"submit\", e);\n    },\n    /**\n     * Debounce the autocomplete function\n     */\n    debouncedAutoComplete: _(async function(e, t) {\n      this.autoComplete(e, t);\n    }, 100),\n    onKeyUp(e) {\n      e.stopImmediatePropagation();\n    }\n  }\n};\nvar S = function() {\n  var t = this, n = t._self._c;\n  return n(\"div\", t._g({ directives: [{ name: \"tooltip\", rawName: \"v-tooltip\", value: t.tooltipString, expression: \"tooltipString\" }], ref: \"contenteditable\", staticClass: \"rich-contenteditable__input\", class: {\n    \"rich-contenteditable__input--empty\": t.isEmptyValue,\n    \"rich-contenteditable__input--multiline\": t.multiline,\n    \"rich-contenteditable__input--overflow\": t.isOverMaxlength,\n    \"rich-contenteditable__input--disabled\": t.disabled\n  }, attrs: { contenteditable: t.canEdit, placeholder: t.placeholder, \"aria-placeholder\": t.placeholder, \"aria-multiline\": \"true\", role: \"textbox\" }, on: { input: t.onInput, compositionstart: function(i) {\n    t.isComposing = !0;\n  }, compositionend: function(i) {\n    t.isComposing = !1;\n  }, keydown: [function(i) {\n    return !i.type.indexOf(\"key\") && t._k(i.keyCode, \"delete\", [8, 46], i.key, [\"Backspace\", \"Delete\", \"Del\"]) ? null : t.onDelete.apply(null, arguments);\n  }, function(i) {\n    return !i.type.indexOf(\"key\") && t._k(i.keyCode, \"enter\", 13, i.key, \"Enter\") || i.ctrlKey || i.shiftKey || i.altKey || i.metaKey ? null : t.onEnter.apply(null, arguments);\n  }, function(i) {\n    return !i.type.indexOf(\"key\") && t._k(i.keyCode, \"enter\", 13, i.key, \"Enter\") || !i.ctrlKey || i.shiftKey || i.altKey || i.metaKey ? null : (i.stopPropagation(), i.preventDefault(), t.onCtrlEnter.apply(null, arguments));\n  }], paste: t.onPaste, \"!keyup\": function(i) {\n    return i.stopPropagation(), i.preventDefault(), t.onKeyUp.apply(null, arguments);\n  } } }, t.listeners));\n}, A = [], E = /* @__PURE__ */ u(\n  T,\n  S,\n  A,\n  !1,\n  null,\n  \"599f92d5\",\n  null,\n  null\n);\nconst it = E.exports;\nexport {\n  x as NcAutoCompleteResult,\n  rt as NcMentionBubble,\n  it as default\n};\n","import { N as b } from \"./referencePickerModal-6bc8f6b9.mjs\";\nimport h from \"@nextcloud/axios\";\nimport { generateOcsUrl as d } from \"@nextcloud/router\";\nimport { n as g } from \"./_plugin-vue2_normalizer-71e2aa87.mjs\";\nimport { visit as _, SKIP as v } from \"unist-util-visit\";\nimport { u as l } from \"unist-builder\";\nimport { unified as y } from \"unified\";\nimport w from \"remark-parse\";\nimport R from \"remark-breaks\";\nimport N from \"remark-rehype\";\nimport A from \"rehype-react\";\nimport L from \"rehype-external-links\";\nconst m = /(\\s|^)(https?:\\/\\/)((?:[-A-Z0-9+_]+\\.)+[-A-Z]+(?:\\/[-A-Z0-9+&@#%?=~_|!:,.;()]*)*)(\\s|$)/ig, x = /(\\s|\\(|^)((https?:\\/\\/)((?:[-A-Z0-9+_]+\\.)+[-A-Z0-9]+(?::[0-9]+)?(?:\\/[-A-Z0-9+&@#%?=~_|!:,.;()]*)*))(?=\\s|\\)|$)/ig, $ = {\n  name: \"NcReferenceList\",\n  components: {\n    NcReferenceWidget: b\n  },\n  props: {\n    text: {\n      type: String,\n      default: \"\"\n    },\n    referenceData: {\n      type: Object,\n      default: null\n    },\n    limit: {\n      type: Number,\n      default: 1\n    }\n  },\n  data() {\n    return {\n      references: null,\n      loading: !0\n    };\n  },\n  computed: {\n    isVisible() {\n      return this.loading || this.displayedReferences;\n    },\n    values() {\n      return this.referenceData ? this.referenceData : this.references ? Object.values(this.references) : [];\n    },\n    firstReference() {\n      var e;\n      return (e = this.values[0]) != null ? e : null;\n    },\n    displayedReferences() {\n      return this.values.slice(0, this.limit);\n    }\n  },\n  watch: {\n    text: \"fetch\"\n  },\n  mounted() {\n    this.fetch();\n  },\n  methods: {\n    fetch() {\n      if (this.loading = !0, this.referenceData) {\n        this.loading = !1;\n        return;\n      }\n      if (!new RegExp(m).exec(this.text)) {\n        this.loading = !1;\n        return;\n      }\n      this.resolve().then((e) => {\n        this.references = e.data.ocs.data.references, this.loading = !1;\n      }).catch((e) => {\n        console.error(\"Failed to extract references\", e), this.loading = !1;\n      });\n    },\n    resolve() {\n      const e = new RegExp(m).exec(this.text.trim());\n      return this.limit === 1 && e ? h.get(d(\"references/resolve\", 2) + `?reference=${encodeURIComponent(e[0])}`) : h.post(d(\"references/extract\", 2), {\n        text: this.text,\n        resolve: !0,\n        limit: this.limit\n      });\n    }\n  }\n};\nvar j = function() {\n  var s = this, t = s._self._c;\n  return s.isVisible ? t(\"div\", { staticClass: \"widgets--list\", class: { \"icon-loading\": s.loading } }, s._l(s.displayedReferences, function(r) {\n    var i;\n    return t(\"div\", { key: (i = r == null ? void 0 : r.openGraphObject) == null ? void 0 : i.id }, [t(\"NcReferenceWidget\", { attrs: { reference: r } })], 1);\n  }), 0) : s._e();\n}, T = [], O = /* @__PURE__ */ g(\n  $,\n  j,\n  T,\n  !1,\n  null,\n  \"bd1fbb02\",\n  null,\n  null\n);\nconst f = O.exports, C = {\n  name: \"NcLink\",\n  props: {\n    href: {\n      type: String,\n      required: !0\n    }\n  },\n  render(e) {\n    return e(\"a\", {\n      attrs: {\n        href: this.href,\n        rel: \"noopener noreferrer\",\n        target: \"_blank\",\n        class: \"rich-text--external-link\"\n      }\n    }, [this.href.trim()]);\n  }\n}, M = function({ autolink: e, useMarkdown: s }) {\n  return function(t) {\n    !s || !e || _(t, (r) => r.type === \"text\", (r, i, n) => {\n      let c = k(r.value);\n      return c = c.map((a) => typeof a == \"string\" ? l(\"text\", a) : l(\"link\", {\n        url: a.props.href\n      }, [l(\"text\", a.props.href)])).filter((a) => a), n.children.splice(i, 1, ...c.flat()), [v, i + c.flat().length];\n    });\n  };\n}, k = (e) => {\n  let s = x.exec(e);\n  const t = [];\n  let r = 0;\n  for (; s !== null; ) {\n    let n = s[2], c, a = e.substring(r, s.index + s[1].length);\n    n[0] === \" \" && (a += n[0], n = n.substring(1).trim());\n    const o = n[n.length - 1];\n    (o === \".\" || o === \",\" || o === \";\" || s[0][0] === \"(\" && o === \")\") && (n = n.substring(0, n.length - 1), c = o), t.push(a), t.push({ component: C, props: { href: n } }), c && t.push(c), r = s.index + s[0].length, s = x.exec(e);\n  }\n  t.push(e.substring(r));\n  const i = t.map((n) => typeof n == \"string\" ? n : n.props.href).join(\"\");\n  return e === i ? t : (console.error(\"Failed to reassemble the chunked text: \" + e), e);\n}, D = function() {\n  return function(e) {\n    _(e, (t) => t.type === \"text\", s);\n    function s(t, r, i) {\n      const n = t.value.split(/(\\{[a-z\\-_.0-9]+\\})/ig).map((c, a, o) => {\n        const p = c.match(/^\\{([a-z\\-_.0-9]+)\\}$/i);\n        if (!p)\n          return l(\"text\", c);\n        const [, u] = p;\n        return l(\"element\", {\n          tagName: `#${u}`\n        });\n      });\n      i.children.splice(r, 1, ...n);\n    }\n  };\n}, E = ({ h: e, context: s }, t) => (s.autolink && (t = k(t)), Array.isArray(t) ? t.map((r) => {\n  if (typeof r == \"string\")\n    return r;\n  const { component: i, props: n } = r, c = i.name === \"NcLink\" ? void 0 : \"rich-text--component\";\n  return e(i, {\n    props: n,\n    class: c\n  });\n}) : t), P = {\n  name: \"NcRichText\",\n  components: {\n    NcReferenceList: f\n  },\n  props: {\n    text: {\n      type: String,\n      default: \"\"\n    },\n    arguments: {\n      type: Object,\n      default: () => ({})\n    },\n    referenceLimit: {\n      type: Number,\n      default: 0\n    },\n    /** Provide data upfront to avoid extra http request */\n    references: {\n      type: Object,\n      default: null\n    },\n    markdownCssClasses: {\n      type: Object,\n      default: () => ({\n        a: \"rich-text--external-link\",\n        ol: \"rich-text--ordered-list\",\n        ul: \"rich-text--un-ordered-list\",\n        li: \"rich-text--list-item\",\n        strong: \"rich-text--strong\",\n        em: \"rich-text--italic\",\n        h1: \"rich-text--heading rich-text--heading-1\",\n        h2: \"rich-text--heading rich-text--heading-2\",\n        h3: \"rich-text--heading rich-text--heading-3\",\n        h4: \"rich-text--heading rich-text--heading-4\",\n        h5: \"rich-text--heading rich-text--heading-5\",\n        h6: \"rich-text--heading rich-text--heading-6\",\n        hr: \"rich-text--hr\",\n        table: \"rich-text--table\",\n        pre: \"rich-text--pre\",\n        code: \"rich-text--code\",\n        blockquote: \"rich-text--blockquote\"\n      })\n    },\n    useMarkdown: {\n      type: Boolean,\n      default: !1\n    },\n    autolink: {\n      type: Boolean,\n      default: !0\n    }\n  },\n  methods: {\n    renderPlaintext(e) {\n      const s = this, t = this.text.split(/(\\{[a-z\\-_.0-9]+\\})/ig).map(function(r, i, n) {\n        const c = r.match(/^\\{([a-z\\-_.0-9]+)\\}$/i);\n        if (!c)\n          return E({ h: e, context: s }, r);\n        const a = c[1], o = s.arguments[a];\n        if (typeof o == \"object\") {\n          const { component: p, props: u } = o;\n          return e(p, {\n            props: u,\n            class: \"rich-text--component\"\n          });\n        }\n        return o ? e(\"span\", { class: \"rich-text--fallback\" }, o) : r;\n      });\n      return e(\"div\", { class: \"rich-text--wrapper\" }, [\n        e(\"div\", {}, t.flat()),\n        this.referenceLimit > 0 ? e(\"div\", { class: \"rich-text--reference-widget\" }, [\n          e(f, { props: { text: this.text, referenceData: this.references } })\n        ]) : null\n      ]);\n    },\n    renderMarkdown(e) {\n      const s = y().use(w).use(M, {\n        autolink: this.autolink,\n        useMarkdown: this.useMarkdown\n      }).use(R).use(N, {\n        handlers: {\n          component(t, r) {\n            return t(r, r.component, { value: r.value });\n          }\n        }\n      }).use(D).use(L, {\n        target: \"_blank\",\n        rel: [\"noopener noreferrer\"]\n      }).use(A, {\n        createElement: (t, r, i) => {\n          if (i = i == null ? void 0 : i.map(\n            (c) => typeof c == \"string\" ? c.replace(/&lt;/gmi, \"<\") : c\n          ), !t.startsWith(\"#\"))\n            return e(t, r, i);\n          const n = this.arguments[t.slice(1)];\n          return n ? n.component ? e(\n            n.component,\n            {\n              attrs: r,\n              props: n.props,\n              class: \"rich-text--component\"\n            },\n            i\n          ) : e(\"span\", r, [n]) : e(\"span\", { attrs: r, class: \"rich-text--fallback\" }, [`{${t.slice(1)}}`]);\n        },\n        prefix: !1\n      }).processSync(\n        this.text.replace(/</gmi, \"&lt;\").replace(/&gt;/gmi, \">\")\n      ).result;\n      return e(\"div\", { class: \"rich-text--wrapper rich-text--wrapper-markdown\" }, [\n        s,\n        this.referenceLimit > 0 ? e(\"div\", { class: \"rich-text--reference-widget\" }, [\n          e(f, { props: { text: this.text, referenceData: this.references } })\n        ]) : null\n      ]);\n    }\n  },\n  render(e) {\n    return this.useMarkdown ? this.renderMarkdown(e) : this.renderPlaintext(e);\n  }\n}, U = null, Z = null;\nvar z = /* @__PURE__ */ g(\n  P,\n  U,\n  Z,\n  !1,\n  null,\n  \"5f33f45b\",\n  null,\n  null\n);\nconst X = z.exports;\nexport {\n  X as N,\n  f as a\n};\n","import \"../assets/referencePickerModal-3a127978.css\";\nimport { n as c } from \"./_plugin-vue2_normalizer-71e2aa87.mjs\";\nimport { t as n } from \"./l10n-f692947e.mjs\";\nimport p from \"@nextcloud/axios\";\nimport { loadState as C } from \"@nextcloud/initial-state\";\nimport { imagePath as L, generateOcsUrl as _ } from \"@nextcloud/router\";\nimport m from \"../Components/NcEmptyContent.mjs\";\nimport { N as P } from \"./index-20a9ace9.mjs\";\nimport w from \"../Components/NcSelect.mjs\";\nimport N from \"../Components/NcLoadingIcon.mjs\";\nimport E from \"../Components/NcTextField.mjs\";\nimport { D as I } from \"./DotsHorizontal-0ee7d901.mjs\";\nimport O from \"../Components/NcButton.mjs\";\nimport B from \"../Components/NcModal.mjs\";\nimport { emit as M } from \"@nextcloud/event-bus\";\nimport { A as V } from \"./ArrowLeft-3779ba88.mjs\";\nimport { C as W } from \"./Close-271f72e2.mjs\";\nimport q from \"vue\";\nwindow._vue_richtext_widgets || (window._vue_richtext_widgets = {});\nconst T = (t) => !!window._vue_richtext_widgets[t], j = (t, e, r = (s) => {\n}) => {\n  if (window._vue_richtext_widgets[t]) {\n    console.error(\"Widget for id \" + t + \" already registered\");\n    return;\n  }\n  window._vue_richtext_widgets[t] = {\n    id: t,\n    callback: e,\n    onDestroy: r\n  };\n}, z = (t, { richObjectType: e, richObject: r, accessible: s }) => {\n  if (e !== \"open-graph\") {\n    if (!window._vue_richtext_widgets[e]) {\n      console.error(\"Widget for rich object type \" + e + \" not registered\");\n      return;\n    }\n    window._vue_richtext_widgets[e].callback(t, { richObjectType: e, richObject: r, accessible: s });\n  }\n}, D = (t, e) => {\n  t !== \"open-graph\" && window._vue_richtext_widgets[t] && window._vue_richtext_widgets[t].onDestroy(e);\n};\nwindow._registerWidget = j;\nconst A = {\n  name: \"NcReferenceWidget\",\n  props: {\n    reference: {\n      type: Object,\n      required: !0\n    }\n  },\n  data() {\n    return {\n      compact: 3\n    };\n  },\n  computed: {\n    hasCustomWidget() {\n      return T(this.reference.richObjectType);\n    },\n    noAccess() {\n      return this.reference && !this.reference.accessible;\n    },\n    descriptionStyle() {\n      if (this.compact === 0)\n        return {\n          display: \"none\"\n        };\n      const t = this.compact < 4 ? this.compact : 3;\n      return {\n        lineClamp: t,\n        webkitLineClamp: t\n      };\n    },\n    compactLink() {\n      const t = this.reference.openGraphObject.link;\n      return t ? t.startsWith(\"https://\") ? t.substring(8) : t.startsWith(\"http://\") ? t.substring(7) : t : \"\";\n    }\n  },\n  mounted() {\n    this.renderWidget(), this.observer = new ResizeObserver((t) => {\n      t[0].contentRect.width < 450 ? this.compact = 0 : t[0].contentRect.width < 550 ? this.compact = 1 : t[0].contentRect.width < 650 ? this.compact = 2 : this.compact = 3;\n    }), this.observer.observe(this.$el);\n  },\n  beforeDestroy() {\n    this.observer.disconnect(), D(this.reference.richObjectType, this.$el);\n  },\n  methods: {\n    renderWidget() {\n      var t;\n      this.$refs.customWidget && (this.$refs.customWidget.innerHTML = \"\"), ((t = this == null ? void 0 : this.reference) == null ? void 0 : t.richObjectType) !== \"open-graph\" && this.$nextTick(() => {\n        z(this.$refs.customWidget, this.reference);\n      });\n    }\n  }\n};\nvar F = function() {\n  var e = this, r = e._self._c;\n  return r(\"div\", [e.reference && e.hasCustomWidget ? r(\"div\", { staticClass: \"widget-custom\" }, [r(\"div\", { ref: \"customWidget\" })]) : !e.noAccess && e.reference && e.reference.openGraphObject && !e.hasCustomWidget ? r(\"a\", { staticClass: \"widget-default\", attrs: { href: e.reference.openGraphObject.link, rel: \"noopener noreferrer\", target: \"_blank\" } }, [e.reference.openGraphObject.thumb ? r(\"img\", { staticClass: \"widget-default--image\", attrs: { src: e.reference.openGraphObject.thumb } }) : e._e(), r(\"div\", { staticClass: \"widget-default--details\" }, [r(\"p\", { staticClass: \"widget-default--name\" }, [e._v(e._s(e.reference.openGraphObject.name))]), r(\"p\", { staticClass: \"widget-default--description\", style: e.descriptionStyle }, [e._v(e._s(e.reference.openGraphObject.description))]), r(\"p\", { staticClass: \"widget-default--link\" }, [e._v(e._s(e.compactLink))])])]) : e._e()]);\n}, U = [], Q = /* @__PURE__ */ c(\n  A,\n  F,\n  U,\n  !1,\n  null,\n  \"b1c5a80f\",\n  null,\n  null\n);\nconst G = Q.exports;\nwindow._vue_richtext_custom_picker_elements || (window._vue_richtext_custom_picker_elements = {});\nclass nt {\n  /**\n   * @param {HTMLElement} element The HTML element\n   * @param {object} object The object\n   */\n  constructor(e, r) {\n    this.element = e, this.object = r;\n  }\n}\nconst h = (t) => !!window._vue_richtext_custom_picker_elements[t], H = (t) => {\n  var r;\n  const e = (r = window._vue_richtext_custom_picker_elements[t]) == null ? void 0 : r.size;\n  return [\"small\", \"normal\", \"large\", \"full\"].includes(e) ? e : null;\n}, Z = (t, e, r = (i) => {\n}, s = \"large\") => {\n  if (window._vue_richtext_custom_picker_elements[t]) {\n    console.error(\"Custom reference picker element for id \" + t + \" already registered\");\n    return;\n  }\n  window._vue_richtext_custom_picker_elements[t] = {\n    id: t,\n    callback: e,\n    onDestroy: r,\n    size: s\n  };\n}, J = (t, { providerId: e, accessible: r }) => {\n  if (!window._vue_richtext_custom_picker_elements[e]) {\n    console.error(\"Custom reference picker element for reference provider ID \" + e + \" not registered\");\n    return;\n  }\n  return window._vue_richtext_custom_picker_elements[e].callback(t, { providerId: e, accessible: r });\n}, K = (t, e, r) => {\n  window._vue_richtext_custom_picker_elements[t] && window._vue_richtext_custom_picker_elements[t].onDestroy(e, r);\n};\nwindow._registerCustomPickerElement = Z;\nconst X = {\n  name: \"NcCustomPickerElement\",\n  props: {\n    /**\n     * The reference provider\n     */\n    provider: {\n      type: Object,\n      required: !0\n    }\n  },\n  emits: [\n    \"cancel\",\n    \"submit\"\n  ],\n  data() {\n    return {\n      isRegistered: h(this.provider.id),\n      renderResult: null\n    };\n  },\n  mounted() {\n    this.isRegistered && this.renderElement();\n  },\n  beforeDestroy() {\n    this.isRegistered && K(this.provider.id, this.$el, this.renderResult);\n  },\n  methods: {\n    renderElement() {\n      this.$refs.domElement && (this.$refs.domElement.innerHTML = \"\");\n      const t = J(this.$refs.domElement, { providerId: this.provider.id, accessible: !1 });\n      Promise.resolve(t).then((e) => {\n        var r, s;\n        this.renderResult = e, (r = this.renderResult.object) != null && r._isVue && ((s = this.renderResult.object) != null && s.$on) && (this.renderResult.object.$on(\"submit\", this.onSubmit), this.renderResult.object.$on(\"cancel\", this.onCancel)), this.renderResult.element.addEventListener(\"submit\", (i) => {\n          this.onSubmit(i.detail);\n        }), this.renderResult.element.addEventListener(\"cancel\", this.onCancel);\n      });\n    },\n    onSubmit(t) {\n      this.$emit(\"submit\", t);\n    },\n    onCancel() {\n      this.$emit(\"cancel\");\n    }\n  }\n};\nvar Y = function() {\n  var e = this, r = e._self._c;\n  return r(\"div\", { ref: \"domElement\" });\n}, ee = [], te = /* @__PURE__ */ c(\n  X,\n  Y,\n  ee,\n  !1,\n  null,\n  \"cf695ff9\",\n  null,\n  null\n);\nconst re = te.exports, b = \"any-link\", S = {\n  id: b,\n  title: n(\"Any link\"),\n  icon_url: L(\"core\", \"filetypes/link.svg\")\n};\nwindow._vue_richtext_reference_providers || (window._vue_richtext_reference_providers = C(\"core\", \"reference-provider-list\", []));\nwindow._vue_richtext_reference_provider_timestamps || (window._vue_richtext_reference_provider_timestamps = C(\"core\", \"reference-provider-timestamps\", {}));\nfunction se(t) {\n  return t === b ? S : R().find((e) => e.id === t);\n}\nfunction R() {\n  return window._vue_richtext_reference_providers.filter((t) => {\n    const e = !!t.search_providers_ids && t.search_providers_ids.length > 0 || h(t.id);\n    return e || console.debug(\"[smart picker]\", t.id, \"reference provider is discoverable but does not have any related search provider or custom picker component registered\"), e;\n  });\n}\nfunction ie(t) {\n  const e = window._vue_richtext_reference_provider_timestamps;\n  return t.sort((r, s) => r.order === s.order ? 0 : r.order > s.order ? 1 : -1).sort((r, s) => {\n    const i = e[r.id], o = e[s.id];\n    return i === o ? 0 : o === void 0 ? -1 : i === void 0 ? 1 : i > o ? -1 : 1;\n  });\n}\nfunction ne(t, e = null) {\n  const r = R(), s = t.replace(/[/\\-\\\\^$*+?.()|[\\]{}]/g, \"\\\\$&\"), i = new RegExp(s, \"i\"), l = ie(r).filter((a) => a.title.match(i)), u = e ? l.slice(0, e) : l;\n  return (t === \"\" || u.length === 0) && u.push(S), u;\n}\nfunction oe(t) {\n  const e = Math.floor(Date.now() / 1e3), r = {\n    timestamp: e\n  }, s = _(\"references/provider/{providerId}\", { providerId: t });\n  p.put(s, r).then((i) => {\n    window._vue_richtext_reference_provider_timestamps[t] = e;\n  });\n}\nlet y = 0;\nfunction x(t, e) {\n  return function() {\n    const r = this, s = arguments;\n    clearTimeout(y), y = setTimeout(function() {\n      t.apply(r, s);\n    }, e || 0);\n  };\n}\nfunction f(t) {\n  try {\n    return !!new URL(t);\n  } catch {\n    return !1;\n  }\n}\nconst ce = {\n  name: \"LinkVariantIcon\",\n  emits: [\"click\"],\n  props: {\n    title: {\n      type: String\n    },\n    fillColor: {\n      type: String,\n      default: \"currentColor\"\n    },\n    size: {\n      type: Number,\n      default: 24\n    }\n  }\n};\nvar le = function() {\n  var e = this, r = e._self._c;\n  return r(\"span\", e._b({ staticClass: \"material-design-icon link-variant-icon\", attrs: { \"aria-hidden\": !e.title, \"aria-label\": e.title, role: \"img\" }, on: { click: function(s) {\n    return e.$emit(\"click\", s);\n  } } }, \"span\", e.$attrs, !1), [r(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { fill: e.fillColor, width: e.size, height: e.size, viewBox: \"0 0 24 24\" } }, [r(\"path\", { attrs: { d: \"M10.59,13.41C11,13.8 11,14.44 10.59,14.83C10.2,15.22 9.56,15.22 9.17,14.83C7.22,12.88 7.22,9.71 9.17,7.76V7.76L12.71,4.22C14.66,2.27 17.83,2.27 19.78,4.22C21.73,6.17 21.73,9.34 19.78,11.29L18.29,12.78C18.3,11.96 18.17,11.14 17.89,10.36L18.36,9.88C19.54,8.71 19.54,6.81 18.36,5.64C17.19,4.46 15.29,4.46 14.12,5.64L10.59,9.17C9.41,10.34 9.41,12.24 10.59,13.41M13.41,9.17C13.8,8.78 14.44,8.78 14.83,9.17C16.78,11.12 16.78,14.29 14.83,16.24V16.24L11.29,19.78C9.34,21.73 6.17,21.73 4.22,19.78C2.27,17.83 2.27,14.66 4.22,12.71L5.71,11.22C5.7,12.04 5.83,12.86 6.11,13.65L5.64,14.12C4.46,15.29 4.46,17.19 5.64,18.36C6.81,19.54 8.71,19.54 9.88,18.36L13.41,14.83C14.59,13.66 14.59,11.76 13.41,10.59C13,10.2 13,9.56 13.41,9.17Z\" } }, [e.title ? r(\"title\", [e._v(e._s(e.title))]) : e._e()])])]);\n}, ae = [], ue = /* @__PURE__ */ c(\n  ce,\n  le,\n  ae,\n  !1,\n  null,\n  null,\n  null,\n  null\n);\nconst v = ue.exports;\nconst de = {\n  name: \"NcProviderList\",\n  components: {\n    NcSelect: w,\n    NcHighlight: P,\n    NcEmptyContent: m,\n    LinkVariantIcon: v\n  },\n  emits: [\n    \"select-provider\",\n    \"submit\"\n  ],\n  data() {\n    return {\n      selectedProvider: null,\n      query: \"\",\n      multiselectPlaceholder: n(\"Select provider\"),\n      providerIconAlt: n(\"Provider icon\")\n    };\n  },\n  computed: {\n    options() {\n      const t = [];\n      return this.query !== \"\" && f(this.query) && t.push({\n        id: this.query,\n        title: this.query,\n        isLink: !0\n      }), t.push(...ne(this.query)), t;\n    }\n  },\n  methods: {\n    focus() {\n      setTimeout(() => {\n        var t, e, r;\n        (r = (e = (t = this.$refs[\"provider-select\"]) == null ? void 0 : t.$el) == null ? void 0 : e.querySelector(\"#provider-select-input\")) == null || r.focus();\n      }, 300);\n    },\n    onProviderSelected(t) {\n      t !== null && (t.isLink ? this.$emit(\"submit\", t.title) : this.$emit(\"select-provider\", t), this.selectedProvider = null);\n    },\n    onSearch(t, e) {\n      this.query = t;\n    }\n  }\n};\nvar he = function() {\n  var e = this, r = e._self._c;\n  return r(\"div\", { staticClass: \"provider-list\" }, [r(\"NcSelect\", { ref: \"provider-select\", staticClass: \"provider-list--select\", attrs: { \"input-id\": \"provider-select-input\", label: \"title\", placeholder: e.multiselectPlaceholder, options: e.options, \"append-to-body\": !1, \"clear-search-on-select\": !0, \"clear-search-on-blur\": () => !1, filterable: !1 }, on: { search: e.onSearch, input: e.onProviderSelected }, scopedSlots: e._u([{ key: \"option\", fn: function(s) {\n    return [s.isLink ? r(\"div\", { staticClass: \"provider\" }, [r(\"LinkVariantIcon\", { staticClass: \"link-icon\", attrs: { size: 20 } }), r(\"span\", [e._v(e._s(s.title))])], 1) : r(\"div\", { staticClass: \"provider\" }, [r(\"img\", { staticClass: \"provider-icon\", attrs: { src: s.icon_url, alt: e.providerIconAlt } }), r(\"NcHighlight\", { staticClass: \"option-text\", attrs: { search: e.query, text: s.title } })], 1)];\n  } }]), model: { value: e.selectedProvider, callback: function(s) {\n    e.selectedProvider = s;\n  }, expression: \"selectedProvider\" } }), r(\"NcEmptyContent\", { staticClass: \"provider-list--empty-content\", scopedSlots: e._u([{ key: \"icon\", fn: function() {\n    return [r(\"LinkVariantIcon\")];\n  }, proxy: !0 }]) })], 1);\n}, _e = [], pe = /* @__PURE__ */ c(\n  de,\n  he,\n  _e,\n  !1,\n  null,\n  \"9d850ea5\",\n  null,\n  null\n);\nconst me = pe.exports;\nconst fe = {\n  name: \"NcRawLinkInput\",\n  components: {\n    LinkVariantIcon: v,\n    NcEmptyContent: m,\n    NcLoadingIcon: N,\n    NcReferenceWidget: G,\n    NcTextField: E\n  },\n  props: {\n    /**\n     * The reference provider\n     */\n    provider: {\n      type: Object,\n      required: !0\n    }\n  },\n  emits: [\n    \"submit\"\n  ],\n  data() {\n    return {\n      inputValue: \"\",\n      loading: !1,\n      reference: null,\n      abortController: null,\n      inputPlaceholder: n(\"Enter link\")\n    };\n  },\n  computed: {\n    isLinkValid() {\n      return f(this.inputValue);\n    }\n  },\n  methods: {\n    focus() {\n      var t;\n      (t = this.$refs[\"url-input\"].$el.getElementsByTagName(\"input\")[0]) == null || t.focus();\n    },\n    onSubmit(t) {\n      const e = t.target.value;\n      this.isLinkValid && this.$emit(\"submit\", e);\n    },\n    onClear() {\n      this.inputValue = \"\", this.reference = null;\n    },\n    onInput() {\n      this.reference = null, this.abortController && this.abortController.abort(), this.isLinkValid && x(() => {\n        this.updateReference();\n      }, 500)();\n    },\n    updateReference() {\n      this.loading = !0, this.abortController = new AbortController(), p.get(_(\"references/resolve\", 2) + \"?reference=\" + encodeURIComponent(this.inputValue), {\n        signal: this.abortController.signal\n      }).then((t) => {\n        this.reference = t.data.ocs.data.references[this.inputValue];\n      }).catch((t) => {\n        console.error(t);\n      }).then(() => {\n        this.loading = !1;\n      });\n    }\n  }\n};\nvar ve = function() {\n  var e = this, r = e._self._c;\n  return r(\"div\", { staticClass: \"raw-link\" }, [r(\"div\", { staticClass: \"input-wrapper\" }, [r(\"NcTextField\", { ref: \"url-input\", attrs: { value: e.inputValue, \"show-trailing-button\": e.inputValue !== \"\", label: e.inputPlaceholder }, on: { \"update:value\": [function(s) {\n    e.inputValue = s;\n  }, e.onInput], \"trailing-button-click\": e.onClear }, nativeOn: { keyup: function(s) {\n    return !s.type.indexOf(\"key\") && e._k(s.keyCode, \"enter\", 13, s.key, \"Enter\") ? null : e.onSubmit.apply(null, arguments);\n  } } }, [e.loading ? r(\"NcLoadingIcon\", { attrs: { size: 16 } }) : r(\"LinkVariantIcon\", { attrs: { size: 16 } })], 1)], 1), e.reference !== null ? r(\"NcReferenceWidget\", { staticClass: \"reference-widget\", attrs: { reference: e.reference } }) : r(\"NcEmptyContent\", { staticClass: \"raw-link--empty-content\", scopedSlots: e._u([{ key: \"icon\", fn: function() {\n    return [e.provider.icon_url ? r(\"img\", { staticClass: \"provider-icon\", attrs: { src: e.provider.icon_url } }) : r(\"LinkVariantIcon\")];\n  }, proxy: !0 }]) })], 1);\n}, ge = [], ye = /* @__PURE__ */ c(\n  fe,\n  ve,\n  ge,\n  !1,\n  null,\n  \"d0ba247a\",\n  null,\n  null\n);\nconst ke = ye.exports;\nconst Ce = {\n  name: \"NcSearchResult\",\n  components: {\n    NcHighlight: P\n  },\n  props: {\n    /**\n     * Unified search result entry\n     */\n    entry: {\n      type: Object,\n      required: !0\n    },\n    /**\n     * The query that led to getting this result\n     * Used to highlight the entry text\n     */\n    query: {\n      type: String,\n      required: !0\n    }\n  }\n};\nvar Pe = function() {\n  var e = this, r = e._self._c;\n  return r(\"div\", { staticClass: \"result\" }, [e.entry.icon ? r(\"div\", { staticClass: \"result--icon-class\", class: { [e.entry.icon]: !0, rounded: e.entry.rounded } }) : r(\"img\", { staticClass: \"result--image\", class: { rounded: e.entry.rounded }, attrs: { src: e.entry.thumbnailUrl } }), r(\"div\", { staticClass: \"result--content\" }, [r(\"span\", { staticClass: \"result--content--name\" }, [r(\"NcHighlight\", { attrs: { search: e.query, text: e.entry.title } })], 1), r(\"span\", { staticClass: \"result--content--subline\" }, [r(\"NcHighlight\", { attrs: { search: e.query, text: e.entry.subline } })], 1)])]);\n}, we = [], be = /* @__PURE__ */ c(\n  Ce,\n  Pe,\n  we,\n  !1,\n  null,\n  \"7a394a58\",\n  null,\n  null\n);\nconst Se = be.exports;\nconst k = 5, Re = {\n  name: \"NcSearch\",\n  components: {\n    LinkVariantIcon: v,\n    DotsHorizontalIcon: I,\n    NcEmptyContent: m,\n    NcSelect: w,\n    NcSearchResult: Se\n  },\n  props: {\n    /**\n     * The selected reference provider\n     */\n    provider: {\n      type: Object,\n      required: !0\n    },\n    showEmptyContent: {\n      type: Boolean,\n      default: !0\n    },\n    searchPlaceholder: {\n      type: String,\n      default: null\n    }\n  },\n  emits: [\n    \"submit\"\n  ],\n  data() {\n    return {\n      searchQuery: \"\",\n      selectedResult: null,\n      resultsBySearchProvider: {},\n      searching: !1,\n      searchingMoreOf: null,\n      abortController: null,\n      noOptionsText: n(\"Start typing to search\"),\n      providerIconAlt: n(\"Provider icon\")\n    };\n  },\n  computed: {\n    mySearchPlaceholder() {\n      return this.searchPlaceholder || n(\"Search\");\n    },\n    searchProviderIds() {\n      return this.provider.search_providers_ids;\n    },\n    options() {\n      if (this.searchQuery === \"\")\n        return [];\n      const t = [];\n      return f(this.searchQuery) && t.push(this.rawLinkEntry), t.push(...this.formattedSearchResults), t;\n    },\n    rawLinkEntry() {\n      return {\n        id: \"rawLinkEntry\",\n        resourceUrl: this.searchQuery,\n        isRawLink: !0\n      };\n    },\n    formattedSearchResults() {\n      const t = [];\n      return this.searchProviderIds.forEach((e) => {\n        if (this.resultsBySearchProvider[e].entries.length > 0) {\n          (this.searchProviderIds.length > 1 || this.resultsBySearchProvider[e].entries.length > 1) && t.push({\n            id: \"groupTitle-\" + e,\n            name: this.resultsBySearchProvider[e].name,\n            isCustomGroupTitle: !0,\n            providerId: e\n          });\n          const r = this.resultsBySearchProvider[e].entries.map((s, i) => ({\n            id: \"provider-\" + e + \"-entry-\" + i,\n            ...s\n          }));\n          t.push(...r), this.resultsBySearchProvider[e].isPaginated && t.push({\n            id: \"moreOf-\" + e,\n            name: this.resultsBySearchProvider[e].name,\n            isMore: !0,\n            providerId: e,\n            isLoading: this.searchingMoreOf === e\n          });\n        }\n      }), t;\n    }\n  },\n  mounted() {\n    this.resetResults();\n  },\n  beforeDestroy() {\n    this.cancelSearchRequests();\n  },\n  methods: {\n    t: n,\n    resetResults() {\n      const t = {};\n      this.searchProviderIds.forEach((e) => {\n        t[e] = {\n          entries: []\n        };\n      }), this.resultsBySearchProvider = t;\n    },\n    focus() {\n      setTimeout(() => {\n        var t, e, r;\n        (r = (e = (t = this.$refs[\"search-select\"]) == null ? void 0 : t.$el) == null ? void 0 : e.querySelector(\"#search-select-input\")) == null || r.focus();\n      }, 300);\n    },\n    cancelSearchRequests() {\n      this.abortController && this.abortController.abort();\n    },\n    onSearchInput(t, e) {\n      this.searchQuery = t, x(() => {\n        this.updateSearch();\n      }, 500)();\n    },\n    onSelectResultSelected(t) {\n      t !== null && (t.resourceUrl ? (this.cancelSearchRequests(), this.$emit(\"submit\", t.resourceUrl)) : t.isMore && this.searchMoreOf(t.providerId).then(() => {\n        this.selectedResult = null;\n      }));\n    },\n    searchMoreOf(t) {\n      return this.searchingMoreOf = t, this.cancelSearchRequests(), this.searchProviders(t);\n    },\n    updateSearch() {\n      if (this.cancelSearchRequests(), this.resetResults(), this.searchQuery === \"\") {\n        this.searching = !1;\n        return;\n      }\n      return this.searchProviders();\n    },\n    searchProviders(t = null) {\n      var r, s;\n      this.abortController = new AbortController(), this.searching = !0;\n      const e = t === null ? [...this.searchProviderIds].map((i) => this.searchOneProvider(i)) : [this.searchOneProvider(t, (s = (r = this.resultsBySearchProvider[t]) == null ? void 0 : r.cursor) != null ? s : null)];\n      return Promise.allSettled(e).then((i) => {\n        !!i.find((l) => l.status === \"rejected\" && (l.reason.name === \"CanceledError\" || l.reason.code === \"ERR_CANCELED\")) || (this.searching = !1, this.searchingMoreOf = null);\n      });\n    },\n    searchOneProvider(t, e = null) {\n      const r = e === null ? _(\"search/providers/{providerId}/search?term={term}&limit={limit}\", { providerId: t, term: this.searchQuery, limit: k }) : _(\"search/providers/{providerId}/search?term={term}&limit={limit}&cursor={cursor}\", { providerId: t, term: this.searchQuery, limit: k, cursor: e });\n      return p.get(r, {\n        signal: this.abortController.signal\n      }).then((s) => {\n        const i = s.data.ocs.data;\n        this.resultsBySearchProvider[t].name = i.name, this.resultsBySearchProvider[t].cursor = i.cursor, this.resultsBySearchProvider[t].isPaginated = i.isPaginated, this.resultsBySearchProvider[t].entries.push(...i.entries);\n      });\n    }\n  }\n};\nvar xe = function() {\n  var e = this, r = e._self._c;\n  return r(\"div\", { staticClass: \"smart-picker-search\", class: { \"with-empty-content\": e.showEmptyContent } }, [r(\"NcSelect\", { ref: \"search-select\", staticClass: \"smart-picker-search--select\", attrs: { \"input-id\": \"search-select-input\", label: \"name\", placeholder: e.mySearchPlaceholder, options: e.options, \"append-to-body\": !1, \"close-on-select\": !1, \"clear-search-on-select\": !1, \"clear-search-on-blur\": () => !1, \"reset-focus-on-options-change\": !1, filterable: !1, autoscroll: !0, \"reset-on-options-change\": !1, loading: e.searching }, on: { search: e.onSearchInput, input: e.onSelectResultSelected }, scopedSlots: e._u([{ key: \"option\", fn: function(s) {\n    return [s.isRawLink ? r(\"div\", { staticClass: \"custom-option\" }, [r(\"LinkVariantIcon\", { staticClass: \"option-simple-icon\", attrs: { size: 20 } }), r(\"span\", { staticClass: \"option-text\" }, [e._v(\" \" + e._s(e.t(\"Raw link {options}\", { options: s.resourceUrl })) + \" \")])], 1) : s.resourceUrl ? r(\"NcSearchResult\", { staticClass: \"search-result\", attrs: { entry: s, query: e.searchQuery } }) : s.isCustomGroupTitle ? r(\"span\", { staticClass: \"custom-option group-name\" }, [e.provider.icon_url ? r(\"img\", { staticClass: \"provider-icon group-name-icon\", attrs: { src: e.provider.icon_url } }) : e._e(), r(\"span\", { staticClass: \"option-text\" }, [r(\"strong\", [e._v(e._s(s.name))])])]) : s.isMore ? r(\"span\", { class: { \"custom-option\": !0 } }, [s.isLoading ? r(\"span\", { staticClass: \"option-simple-icon icon-loading-small\" }) : r(\"DotsHorizontalIcon\", { staticClass: \"option-simple-icon\", attrs: { size: 20 } }), r(\"span\", { staticClass: \"option-text\" }, [e._v(\" \" + e._s(e.t('Load more \"{options}\"', { options: s.name })) + \" \")])], 1) : e._e()];\n  } }, { key: \"no-options\", fn: function() {\n    return [e._v(\" \" + e._s(e.noOptionsText) + \" \")];\n  }, proxy: !0 }]), model: { value: e.selectedResult, callback: function(s) {\n    e.selectedResult = s;\n  }, expression: \"selectedResult\" } }), e.showEmptyContent ? r(\"NcEmptyContent\", { staticClass: \"smart-picker-search--empty-content\", scopedSlots: e._u([{ key: \"icon\", fn: function() {\n    return [e.provider.icon_url ? r(\"img\", { staticClass: \"provider-icon\", attrs: { alt: e.providerIconAlt, src: e.provider.icon_url } }) : r(\"LinkVariantIcon\")];\n  }, proxy: !0 }], null, !1, 2922132592) }) : e._e()], 1);\n}, $e = [], Le = /* @__PURE__ */ c(\n  Re,\n  xe,\n  $e,\n  !1,\n  null,\n  \"97d196f0\",\n  null,\n  null\n);\nconst Ne = Le.exports;\nconst d = {\n  providerList: 1,\n  standardLinkInput: 2,\n  searchInput: 3,\n  customElement: 4\n}, Ee = {\n  name: \"NcReferencePicker\",\n  components: {\n    NcCustomPickerElement: re,\n    NcProviderList: me,\n    NcRawLinkInput: ke,\n    NcSearch: Ne\n  },\n  props: {\n    /**\n     * Provider to select on creation\n     * Default: null. Show the provider list\n     */\n    initialProvider: {\n      type: Object,\n      default: () => null\n    },\n    /**\n     * Optional width in pixels\n     * Default: 100%\n     */\n    width: {\n      type: Number,\n      default: null\n    },\n    /**\n     * Focus on the provider list select input on creation\n     * Default: true\n     */\n    focusOnCreate: {\n      type: Boolean,\n      default: !0\n    }\n  },\n  emits: [\n    \"cancel\",\n    \"cancel-raw-link\",\n    \"cancel-search\",\n    \"provider-selected\",\n    \"submit\"\n  ],\n  data() {\n    return {\n      MODES: d,\n      selectedProvider: this.initialProvider\n    };\n  },\n  computed: {\n    mode() {\n      return this.selectedProvider === null ? d.providerList : h(this.selectedProvider.id) ? d.customElement : this.selectedProvider.search_providers_ids ? d.searchInput : d.standardLinkInput;\n    },\n    pickerWrapperStyle() {\n      return {\n        width: this.width ? this.width + \"px\" : void 0\n      };\n    }\n  },\n  mounted() {\n    this.focusOnCreate && (this.initialProvider ? setTimeout(() => {\n      var t;\n      (t = this.$refs[\"url-input\"]) == null || t.focus();\n    }, 300) : this.$nextTick(() => {\n      var t;\n      (t = this.$refs[\"provider-list\"]) == null || t.focus();\n    }));\n  },\n  methods: {\n    onEscapePressed() {\n      this.selectedProvider !== null ? this.deselectProvider() : this.cancelProviderSelection();\n    },\n    onProviderSelected(t) {\n      this.selectedProvider = t, this.$emit(\"provider-selected\", t), this.$nextTick(() => {\n        var e;\n        (e = this.$refs[\"url-input\"]) == null || e.focus();\n      });\n    },\n    cancelCustomElement() {\n      this.deselectProvider();\n    },\n    cancelSearch() {\n      var t;\n      this.$emit(\"cancel-search\", (t = this.selectedProvider) == null ? void 0 : t.title), this.deselectProvider();\n    },\n    cancelRawLinkInput() {\n      var t;\n      this.$emit(\"cancel-raw-link\", (t = this.selectedProvider) == null ? void 0 : t.title), this.deselectProvider();\n    },\n    cancelProviderSelection() {\n      this.$emit(\"cancel\");\n    },\n    submitLink(t) {\n      this.selectedProvider !== null && oe(this.selectedProvider.id), this.$emit(\"submit\", t), this.deselectProvider();\n    },\n    deselectProvider() {\n      this.selectedProvider = null, this.$emit(\"provider-selected\", null), setTimeout(() => {\n        var t;\n        (t = this.$refs[\"provider-list\"]) == null || t.focus();\n      }, 300);\n    }\n  }\n};\nvar Ie = function() {\n  var e = this, r = e._self._c;\n  return r(\"div\", { staticClass: \"reference-picker\", style: e.pickerWrapperStyle, attrs: { tabindex: \"-1\" }, on: { keydown: function(s) {\n    return !s.type.indexOf(\"key\") && e._k(s.keyCode, \"esc\", 27, s.key, [\"Esc\", \"Escape\"]) ? null : (s.stopPropagation(), s.preventDefault(), e.onEscapePressed.apply(null, arguments));\n  } } }, [e.mode === e.MODES.providerList ? r(\"NcProviderList\", { ref: \"provider-list\", on: { \"select-provider\": e.onProviderSelected, submit: e.submitLink, cancel: e.cancelProviderSelection } }) : e.mode === e.MODES.standardLinkInput ? r(\"NcRawLinkInput\", { ref: \"url-input\", attrs: { provider: e.selectedProvider }, on: { submit: e.submitLink, cancel: e.cancelRawLinkInput } }) : e.mode === e.MODES.searchInput ? r(\"NcSearch\", { ref: \"url-input\", attrs: { provider: e.selectedProvider }, on: { cancel: e.cancelSearch, submit: e.submitLink } }) : e.mode === e.MODES.customElement ? r(\"div\", { staticClass: \"custom-element-wrapper\" }, [r(\"NcCustomPickerElement\", { attrs: { provider: e.selectedProvider }, on: { submit: e.submitLink, cancel: e.cancelCustomElement } })], 1) : e._e()], 1);\n}, Oe = [], Be = /* @__PURE__ */ c(\n  Ee,\n  Ie,\n  Oe,\n  !1,\n  null,\n  \"aa77d0d3\",\n  null,\n  null\n);\nconst Me = Be.exports;\nconst Ve = {\n  name: \"NcReferencePickerModal\",\n  components: {\n    NcReferencePicker: Me,\n    NcModal: B,\n    NcButton: O,\n    ArrowLeftIcon: V,\n    CloseIcon: W\n  },\n  props: {\n    /**\n     * Provider to select on creation\n     * Show the provider list if no initial one is provided\n     */\n    initialProvider: {\n      type: Object,\n      default: () => null\n    },\n    /**\n     * Focus on the input item on create\n     */\n    focusOnCreate: {\n      type: Boolean,\n      default: !0\n    },\n    /**\n     * If true, add the modal content to the Viewer trap elements via the event-bus\n     */\n    isInsideViewer: {\n      type: Boolean,\n      default: !1\n    }\n  },\n  emits: [\n    \"cancel\",\n    \"submit\"\n  ],\n  data() {\n    return {\n      show: !0,\n      selectedProvider: this.initialProvider,\n      backButtonTitle: n(\"Back to provider selection\"),\n      closeButtonTitle: n(\"Close\"),\n      closeButtonLabel: n(\"Close Smart Picker\")\n    };\n  },\n  computed: {\n    isProviderSelected() {\n      return this.selectedProvider !== null;\n    },\n    showBackButton() {\n      return this.initialProvider === null && this.isProviderSelected;\n    },\n    modalSize() {\n      var t;\n      return this.isProviderSelected && h(this.selectedProvider.id) ? (t = H(this.selectedProvider.id)) != null ? t : \"large\" : \"normal\";\n    },\n    showModalName() {\n      return !this.isProviderSelected || !h(this.selectedProvider.id);\n    },\n    modalName() {\n      return this.isProviderSelected ? this.selectedProvider.title : n(\"Smart Picker\");\n    }\n  },\n  mounted() {\n    if (this.isInsideViewer) {\n      const t = this.$refs.modal_content;\n      M(\"viewer:trapElements:changed\", t);\n    }\n  },\n  methods: {\n    onCancel() {\n      this.show = !1, this.$emit(\"cancel\");\n    },\n    onSubmit(t) {\n      this.show = !1, this.$emit(\"submit\", t);\n    },\n    onProviderSelect(t) {\n      this.selectedProvider = t, t === null && this.initialProvider !== null && this.onCancel();\n    },\n    onBackClicked() {\n      this.$refs.referencePicker.deselectProvider();\n    }\n  }\n};\nvar We = function() {\n  var e = this, r = e._self._c;\n  return e.show ? r(\"NcModal\", { staticClass: \"reference-picker-modal\", attrs: { size: e.modalSize, \"can-close\": !1 }, on: { close: e.onCancel } }, [r(\"div\", { ref: \"modal_content\", staticClass: \"reference-picker-modal--content\" }, [e.showBackButton ? r(\"NcButton\", { staticClass: \"back-button\", attrs: { \"aria-label\": e.backButtonTitle, title: e.backButtonTitle }, on: { click: e.onBackClicked }, scopedSlots: e._u([{ key: \"icon\", fn: function() {\n    return [r(\"ArrowLeftIcon\")];\n  }, proxy: !0 }], null, !1, 3001860362) }) : e._e(), r(\"NcButton\", { staticClass: \"close-button\", attrs: { \"aria-label\": e.closeButtonLabel, title: e.closeButtonTitle, type: \"tertiary\" }, on: { click: e.onCancel }, scopedSlots: e._u([{ key: \"icon\", fn: function() {\n    return [r(\"CloseIcon\")];\n  }, proxy: !0 }], null, !1, 2491825086) }), e.showModalName ? r(\"h2\", [e._v(\" \" + e._s(e.modalName) + \" \")]) : e._e(), r(\"NcReferencePicker\", { ref: \"referencePicker\", attrs: { \"initial-provider\": e.initialProvider, \"focus-on-create\": e.focusOnCreate }, on: { \"provider-selected\": e.onProviderSelect, submit: e.onSubmit, cancel: e.onCancel } })], 1)]) : e._e();\n}, qe = [], Te = /* @__PURE__ */ c(\n  Ve,\n  We,\n  qe,\n  !1,\n  null,\n  \"3f1a4ac7\",\n  null,\n  null\n);\nconst je = Te.exports;\nasync function ot(t = null, e = void 0) {\n  return await new Promise((r, s) => {\n    var g;\n    const i = \"referencePickerModal\", o = document.createElement(\"div\");\n    o.id = i, document.body.append(o);\n    const l = t === null ? null : (g = se(t)) != null ? g : null, u = q.extend(je), a = new u({\n      propsData: {\n        initialProvider: l,\n        isInsideViewer: e\n      }\n    }).$mount(o);\n    a.$on(\"cancel\", () => {\n      a.$destroy(), s(new Error(\"User cancellation\"));\n    }), a.$on(\"submit\", ($) => {\n      a.$destroy(), r($);\n    });\n  });\n}\nexport {\n  G as N,\n  Me as a,\n  je as b,\n  Ne as c,\n  z as d,\n  nt as e,\n  Z as f,\n  J as g,\n  h,\n  T as i,\n  ot as j,\n  b as k,\n  se as l,\n  R as m,\n  ne as n,\n  j as r,\n  ie as s\n};\n"],"names":["___CSS_LOADER_EXPORT___","push","module","id","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","r","name","props","required","default","type","String","s","n","this","t","_self","_c","_setupProxy","staticClass","_v","_s","_e","_t","_","exports","l","mixins","validator","trim","checked","Boolean","value","Number","disabled","emits","computed","isFocusable","methods","toggleInput","$refs","label","click","onChange","$emit","radio","e","i","class","ref","focusable","attrs","domProps","on","keydown","a","indexOf","_k","keyCode","key","ctrlKey","shiftKey","altKey","metaKey","preventDefault","apply","arguments","change","for","text","d","components","ArrowRight","computedId","onInput","target","onSubmit","stopPropagation","onClick","isIconUrl","icon","style","backgroundImage","submit","_b","input","$attrs","directives","rawName","expression","size","selection","showDetails","showdetails","color","test","formattedColor","startsWith","o","backgroundColor","NcInputConfirmCancel","NcLoadingIcon","loading","editLabel","editPlaceholder","data","newItemValue","newItemActive","handleNewItem","$nextTick","newItemInput","focusInput","cancelNewItem","handleNewItemDone","title","placeholder","cancel","confirm","model","callback","fillColor","role","fill","width","height","viewBox","ClickOutside","Cog","open","clickOutsideConfig","closeMenu","clickOutsideOptions","ariaLabel","toggleMenu","C","NcAvatar","NcActions","NcActionButton","targetUrl","avatarUrl","avatarUsername","avatarIsNoUser","overlayIconUrl","mainText","subText","itemMenu","Object","forceMenu","hovered","item","gotMenu","keys","length","$slots","actions","gotOverlayIcon","onLinkClick","closest","mouseover","mouseleave","tag","href","url","user","alt","src","_l","y","NcDashboardWidgetItem","NcEmptyContent","Check","items","Array","showMoreUrl","showMoreLabel","showItemsAndEmptyContent","emptyContentMessage","halfEmptyContentMessage","handlers","displayedItems","maxItemNumber","slice","showHalfEmptyContentArea","halfEmptyContentString","showMore","description","scopedSlots","_u","fn","proxy","_g","_m","tabindex","h","mounted","document","getElementById","classList","add","destroyed","remove","NcButton","labelTranslated","resourceName","NcResource","providerId","itemId","resourceType","limit","fileInfo","header","primary","appEnabled","OC","appswebroots","related_resources","error","resources","isVisible","subline","hasResourceInfo","isFiles","watch","fetchRelatedResources","created","get","ocs","console","saving","indicatorColor","hint","submitTranslated","idSubmit","NcSelect","groups","randId","errorMessage","hasError","filteredValue","filter","inputValue","map","displayname","groupsArray","values","includes","handler","forEach","loadGroup","immediate","appName","appVersion","window","sessionStorage","getItem","fromEntries","JSON","parse","setItem","stringify","update","encodeURI","setTimeout","filterGroups","toLocaleLowerCase","onSearch","multiple","search","NcPopover","NcUserBubbleDiv","avatarImage","displayName","showUserStatus","URL","call","location","margin","isPopoverComponent","popoverEmpty","isAvatarUrl","isCustomAvatar","hasUrl","isLinkComponent","styles","content","lineHeight","borderRadius","avatar","marginLeft","util","warn","onOpenChange","trigger","shown","Z","Symbol","toStringTag","b","u","render","staticRenderFns","_compiled","functional","_scopeId","$vnode","ssrContext","parent","__VUE_SSR_CONTEXT__","_registeredComponents","_ssrRegister","$root","$options","shadowRoot","_injectStyles","v","f","k","beforeCreate","concat","Be","oe","H","show_hidden","sort_favorites_first","crop_image_previews","then","F","S","showHiddenFiles","sortFavoritesFirst","cropImagePreviews","De","Te","Ue","je","ce","We","showCheckbox","fileListIconStyles","qe","Xe","__name","setup","__sfc","Ye","A","nt","node","cropPreview","mimeFallback","attributes","previewUrl","fileid","origin","searchParams","set","etag","Je","File","createElement","onerror","onload","body","appendChild","previewURL","isFile","canLoadPreview","IconFile","IconFolder","lt","mime","at","ot","allowPickDirectory","selected","canPick","emit","basename","extension","Folder","fileExtension","isDirectory","isPickable","toggleSelected","handleClick","handleKeyDown","formatFileSize","NcCheckboxRadioSwitch","NcDateTime","FilePreview","ct","nodename","textContent","timestamp","mtime","ft","currentView","multiselect","files","selectedFiles","path","currentConfig","p","sortBy","sorting_mode","order","sorting_direction","recent","L","favorites","c","N","P","z","T","E","U","O","j","G","W","q","K","X","J","Q","Y","ee","$","g","x","filesViewConfig","favoritesViewConfig","recentViewConfig","Re","ascending","descending","none","localeCompare","getTime","sort","favorite","parentElement","children","clientHeight","isSameNode","Math","floor","addEventListener","removeEventListener","customSortingConfig","filesAppSorting","sortingConfig","sortByName","sortBySize","sortByModified","toggleSorting","sortedFiles","selectableFiles","allSelected","onSelectAll","onNodeSelected","onChangeDirectory","skeletonNumber","fileContainer","IconSortAscending","IconSortDescending","LoadingTableRow","FileListRow","pt","wide","staticStyle","gt","yt","bt","Ft","xt","Nt","showMenu","$el","querySelector","config","blacklist_files_regex","match","setCustomValidity","split","join","newNodeName","nameInput","validateInput","pathElements","IconHome","IconPlus","NcActionInput","NcBreadcrumbs","NcBreadcrumb","Lt","close","Bt","Vt","Dt","At","Ut","Ot","Wt","Kt","Qt","Yt","filterString","isCollapsed","allViews","currentViewObject","updateFilterValue","IconClose","IconMagnify","NcTextField","Fragment","ei","clearable","searchable","ni","ai","buttons","container","filterFn","mimetypeFilter","contentClasses","dialogClasses","navigationClasses","async","isSupportedMimeType","some","si","isLoading","loadFiles","getFile","client","round","Date","now","details","results","getDirectoryContents","stat","li","toLowerCase","dialogProps","dialogButtons","viewHeadline","savedPath","navigatedPath","currentPath","filteredFiles","noFilesDescription","onCreateFolder","createDirectory","FileList","FilePickerBreadcrumbs","FilePickerNavigation","NcDialog","oi","Ci","m","setApp","build","setUid","uid","Ne","_entries","registerEntry","validateEntry","unregisterEntry","getEntryIndex","splice","entry","entries","getEntries","enabled","findIndex","iconSvgInline","iconClass","Error","_nc_newfilemenu","debug","log","min","pow","toFixed","parseFloat","toLocaleString","DEFAULT","HIDDEN","_action","constructor","validateAction","exec","execBatch","inline","renderInline","_nc_fileactions","find","action","er","nr","_nc_filelistheader","NONE","CREATE","READ","UPDATE","DELETE","SHARE","ALL","nc","oc","ir","_nc_dav_properties","_nc_dav_namespaces","prop","namespaces","V","sr","or","be","R","source","crtime","permissions","owner","root","status","NEW","FAILED","LOADING","LOCKED","D","_data","_attributes","_knownDavService","updateMtime","Reflect","deleteProperty","Proxy","replace","encodedSource","dirname","pathname","isDavRessource","pop","move","rename","ye","super","te","ur","setHeaders","requesttoken","patch","headers","method","fetch","dr","includeSelf","filename","ve","lastmod","parseInt","getcontentlength","hasPreview","_views","_currentView","register","views","setActive","active","ar","_nc_navigation","Ie","_column","Ae","summary","RegExp","isExist","isEmptyObject","merge","getValue","isName","getAllMatches","startIndex","lastIndex","nameRegexp","M","Oe","allowBooleanAttributes","unpairedTags","substr","w","validate","assign","err","substring","xe","index","code","msg","line","tagClosed","tagName","tagStartPos","col","Ve","Ce","Pe","$e","Le","hasOwnProperty","Fe","B","re","preserveOrder","attributeNamePrefix","attributesGroupName","textNodeName","ignoreAttributes","removeNSPrefix","parseTagValue","parseAttributeValue","trimValues","cdataPropName","numberParseOptions","hex","leadingZeros","eNotation","tagValueProcessor","attributeValueProcessor","stopNodes","alwaysCreateTextNode","isArray","commentPropName","processEntities","htmlEntities","ignoreDeclaration","ignorePiTags","transformTagName","transformAttributeName","updateTag","buildOptions","defaultOptions","ke","Ge","ze","He","Ke","decimalPoint","tagname","child","addChild","tt","entityName","val","regx","entities","rt","skipLike","it","lastEntities","regex","st","replaceEntitiesValue","charAt","ut","dt","resolveNameSpace","saveTextToParentTag","lastIndexOf","tagsNodeStack","tagExp","attrExpPresent","buildAttributesMap","closeIndex","docTypeEntities","parseTextData","rawTagName","isItStopNode","readStopNodeData","tagContent","ampEntity","ht","ne","ie","Et","prettify","currentNode","apos","quot","space","cent","pound","yen","euro","copyright","reg","inr","addExternalEntities","parseXml","vt","Tt","se","Pt","indentBy","suppressUnpairedNode","suppressEmptyNode","endsWith","suppressBooleanAttributes","format","oneListGroup","isAttribute","attrPrefixLen","St","processTextOrObjNode","indentate","Rt","tagEndChar","newLine","j2x","buildTextValNode","attrStr","buildObjectNode","repeat","prototype","arrayNodeName","buildAttrPairStr","closeTag","XMLParser","externalEntities","toString","addEntity","XMLValidator","XMLBuilder","cr","_view","caption","emptyTitle","emptyCaption","getContents","params","columns","emptyView","sticky","expanded","defaultSortKey","TypeError","Xt","hr","pr","gr","numeric","sensitivity","iconUrl","getAvatarUrl","haveStatus","tooltip","autoComplete","Function","menuContainer","Element","multiline","contenteditable","maxlength","emojiAutocomplete","linkAutocomplete","textSmiles","tribute","autocompleteOptions","allowSpaces","fillAttr","lookup","menuItemTemplate","renderComponentHtml","original","noMatchTemplate","selectTemplate","genSelectTemplate","debouncedAutoComplete","emojiOptions","native","short_name","unshift","containerClass","itemClass","linkOptions","icon_url","getLink","localValue","isComposing","isEmptyValue","isFF","navigator","userAgent","isOverMaxlength","tooltipString","count","canEdit","listeners","$listeners","paste","innerHTML","parseContent","updateContent","autocompleteTribute","attach","emojiTribute","linkTribute","contentEditable","beforeDestroy","detach","focus","result","insertText","createTextNode","replaceWith","setCursorAfter","updateValue","catch","createRange","setEndAfter","collapse","getSelection","removeAllRanges","addRange","onPaste","clipboardData","getData","rangeCount","getRangeAt","deleteFromDocument","insertNode","setStart","endOffset","renderContent","onDelete","commonAncestorContainer","nodeType","startOffset","anchorNode","selectNodeContents","setEndBefore","anchorOffset","setEnd","cloneContents","lastChild","deleteContents","onEnter","isActive","onCtrlEnter","onKeyUp","stopImmediatePropagation","compositionstart","compositionend","NcReferenceWidget","referenceData","references","displayedReferences","firstReference","resolve","encodeURIComponent","post","openGraphObject","reference","rel","autolink","useMarkdown","flat","component","NcReferenceList","referenceLimit","markdownCssClasses","ol","ul","strong","em","h1","h2","h3","h4","h5","h6","table","pre","blockquote","renderPlaintext","context","renderMarkdown","use","prefix","processSync","_vue_richtext_widgets","onDestroy","_registerWidget","compact","hasCustomWidget","richObjectType","noAccess","accessible","descriptionStyle","display","lineClamp","webkitLineClamp","compactLink","link","renderWidget","observer","ResizeObserver","contentRect","observe","disconnect","customWidget","richObject","thumb","_vue_richtext_custom_picker_elements","element","object","_registerCustomPickerElement","provider","isRegistered","renderResult","renderElement","domElement","Promise","_isVue","$on","onCancel","detail","_vue_richtext_reference_providers","search_providers_ids","_vue_richtext_reference_provider_timestamps","clearTimeout","le","ae","de","NcHighlight","LinkVariantIcon","selectedProvider","query","multiselectPlaceholder","providerIconAlt","isLink","onProviderSelected","he","filterable","me","fe","abortController","inputPlaceholder","isLinkValid","getElementsByTagName","onClear","abort","updateReference","AbortController","signal","nativeOn","keyup","ge","rounded","thumbnailUrl","we","Se","DotsHorizontalIcon","NcSearchResult","showEmptyContent","searchPlaceholder","searchQuery","selectedResult","resultsBySearchProvider","searching","searchingMoreOf","noOptionsText","mySearchPlaceholder","searchProviderIds","rawLinkEntry","formattedSearchResults","resourceUrl","isRawLink","isCustomGroupTitle","isPaginated","isMore","resetResults","cancelSearchRequests","onSearchInput","updateSearch","onSelectResultSelected","searchMoreOf","searchProviders","searchOneProvider","cursor","allSettled","reason","term","autoscroll","providerList","standardLinkInput","searchInput","customElement","Ee","NcCustomPickerElement","NcProviderList","NcRawLinkInput","NcSearch","initialProvider","focusOnCreate","MODES","mode","pickerWrapperStyle","onEscapePressed","deselectProvider","cancelProviderSelection","cancelCustomElement","cancelSearch","cancelRawLinkInput","submitLink","put","NcReferencePicker","NcModal","ArrowLeftIcon","CloseIcon","isInsideViewer","show","backButtonTitle","closeButtonTitle","closeButtonLabel","isProviderSelected","showBackButton","modalSize","showModalName","modalName","modal_content","onProviderSelect","onBackClicked","referencePicker","append","extend","propsData","$mount","$destroy"],"sourceRoot":""}